Algorithm 1:特征观点对抽取算法 |
1.begin |
2. Input:corpus |
3. featureopinionpair=[] |
4. for sentence in corpus: |
5. for word in sentence: |
6. if word not in Key library: |
7. continue |
8. if word.relation in [‘SBV’,’CMP’,’ATT’] and word.parent.postags in [‘a’]: |
9. if word.relation in [‘ADV’] |
10. featureopinionpair.append([word,word.parent,word.adv]) |
11. else: |
12. featureopinionpair.append([word,word.parent,word,null]) |
13. if word.relation in [‘SBV’] and word.parent.postags not in [‘a’]:#间接 |
14. if word.parent.relation not in [‘VOB’,’ADV’,’CMP’] or |
word.parent.parent.postags in [‘a’]: |
15. continue |
16. if word.parent.relation in [‘ADV’] |
17. featureopinionpair.append([word,word.parent.parent,word.parent.adv]) |
18. else: |
19. featureopinionpair.append([word,word.parent.parent,null]) |
20. if word.relation in [‘COO’] |
21. featureopinionpair.append([word.coo,word.parent,word.adv]) |
22. return featureopinionpair |
23. output: featureopinionpair |
24. End |