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