当前位置:   article > 正文

NLP对数据集进行(词性标注):将所有的词性进行汇总并且编号;将所有的英文词对应的词性转换成编号,得到list_词性标注数据集

词性标注数据集

我最近在做一个自然语言处理的作业,词性标注

首先对词性标注的数据集进行处理

直接上代码,我再解释一下

  1. # -*- coding: utf-8 -*-
  2. import nltk
  3. def trans_chaToNum(tagged):
  4. pred = []
  5. for tag in tagged:
  6. result = tag[1]
  7. pred.append(result)
  8. # 2.把字符编号,不同的字符对应不同的编号
  9. mylist = set(pred)
  10. mylist = list(mylist)
  11. Pred = {}
  12. for i in range(len(mylist)):
  13. Pred[mylist[i]] = i
  14. # 3.把刚刚那个形式里面的字符都替换成 编号
  15. trans_pred = []
  16. for i in pred:
  17. trans_pred.append(Pred[i])
  18. return Pred, trans_pred
  19. if __name__ == '__main__':
  20. A = open('D:/pythonProject/CwsPosNerCNNRNNLSTM-master/CwsPosNerCNNRNNLSTM-master/traindata.txt', "r",
  21. encoding='utf-8').readlines()
  22. tagged_sent = [] # [('to', 'TO'), ('hold', 'VB'), ('on', 'RP'), ('to', 'TO'), ('its', 'PRP$'), ('paper', 'NN'), ('.', '.')]
  23. for a in A:
  24. sent = a.split() # ['./.']
  25. for item in sent:
  26. pair = nltk.str2tuple(item) # ('.', '.')
  27. tagged_sent.append(pair)
  28. tagged_dict, trans_tagged_sent = trans_chaToNum(tagged_sent)

我打开的赋给A的文件的样子长这样子:

这个格式就是: 英文词/词性

sent和pair的格式样子,已经在后面标好了

最后得到的tagged_sent的格式也已经在后面标好了

最后把这个格式送进 trans_chaToNum函数里面。

最后输出的结果是这样子的:

tagged_dict=

{'NNP': 0, 'CD': 1,..., 'VBG|NN': 45, 'RB|IN': 46, 'CC': 47,  'VBD': 51, 'EX': 52, 'NN|NNS': 53}

大致长这个样子,就是会把每个词性给编号,可以看到我这个数据集里面有53种词性,每个词性给予了自己的编号,包括标点符号也给编号了

trans_tagged_sent=

[0, 3, 41, 19, 49, 25, 30,...,19, 34, 25, 14]

把所有的前面的数据集的英文词 对应的 词性进行编号,因此这个list很长很长

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/281653
推荐阅读
相关标签
  

闽ICP备14008679号