加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

燃爆!17行Python代码做情感分析?你也可以的

发布时间:2019-06-29 04:55:49 所属栏目:建站 来源:IT世界圈
导读:17行代码跑最新NLP模型?你也可以! 本次作者评测所需(防吓退) 一台可以上网的电脑 基本的python代码阅读能力,用于修改几个模型参数 对百度中文NLP最新成果的浓烈兴趣 训练模型:Senta情感分析模型基本简介 Senta是百度NLP开放的中文情感分析模型,可以用于
副标题[/!--empirenews.page--]

17行代码跑最新NLP模型?你也可以!

  • 本次作者评测所需(防吓退)
  1. 一台可以上网的电脑
  2. 基本的python代码阅读能力,用于修改几个模型参数
  3. 对百度中文NLP最新成果的浓烈兴趣
  • 训练模型:Senta情感分析模型基本简介
  1. Senta是百度NLP开放的中文情感分析模型,可以用于进行中文句子的情感分析,输出结果为{正向/中性/负向}中的一个,关于模型的结构细节,请查看Senta----github.com/PaddlePaddle/Paddlehub/demo/senta 
  • 本示例代码选择的是Senta-BiLSTM模型。
  • 模型来源:Paddlehub简介
  1. PaddleHub是基于PaddlePaddle开发的预训练模型管理工具,可以借助预训练模型更便捷地开展迁移学习工作。 
  • 本次评测中只使用了预训练模型,没有进行fine-tune
  • 代码运行环境:百度 AI studio
燃爆!17行Python代码做情感分析?你也可以的

实验代码

  • 来自paddlehub/senta_demo.py

github:https://github.com/PaddlePaddle/PaddleHub/blob/release/v0.5.0/demo/senta/senta_demo.py

  1. from __future__ import print_function 
  2. import json 
  3. import os 
  4. import six 
  5. import paddlehub as hub 
  6. if __name__ == "__main__": 
  7.  # 加载senta模型 
  8.  senta = hub.Module(name="senta_bilstm") 
  9.  # 把要测试的短文本以str格式放到这个列表里 
  10.  test_text = [ 
  11.  "这家餐厅不是很好吃", 
  12.  "这部电影差强人意", 
  13.  ] 
  14.  # 指定模型输入 
  15.  input_dict = {"text": test_text} 
  16.  # 把数据喂给senta模型的文本分类函数 
  17.  results = senta.sentiment_classify(data=input_dict) 
  18.  # 遍历分析每个短文本 
  19.  for index, text in enumerate(test_text): 
  20.  results[index]["text"] = text 
  21.  for index, result in enumerate(results): 
  22.  if six.PY2: 
  23.  print( 
  24.  json.dumps(results[index], encoding="utf8", ensure_ascii=False)) 
  25.  else: 
  26.  print('text: {},    predict: {}'.format(results[index]['text'],results[index]['sentiment_key'])) 

详细测评

成语情感分析

input

  1. test_text = [ 
  2.  '沧海桑田', # 中型,世事变化很大 
  3.  '下里巴人', # 褒义,通俗的文学艺术 
  4.  '有口皆碑', # 褒义,对突出的好人好事一致颂扬 
  5.  '危言危行', # 褒义,说正直的话,做正直的事 
  6.  '鬼斧神工', # 褒义,指大自然美景 
  7.  '不赞一词', # 褒义,不能再添一句话,表示写的很好 
  8.  '文不加点', # 褒义,指写作技巧高超 
  9.  '差强人意', # 褒义,大体还能使人满意 
  10.  '无微不至', # 褒义,指细心周到 
  11.  '事倍功半', # 褒义,指不费力就有好的效果 
  12.  '事半功倍', # 贬义,指浪费了力气却没有好效果 
  13.  '蠢蠢欲动', # 贬义,指要干坏事 
  14.  '面目全非', # 贬义,指大破坏 
  15.  '江河日下', # 贬义,指事物日渐衰落 
  16.  '评头论足', # 贬义,指小节过分挑剔 
  17.  '生灵涂炭', # 贬义,指人民极端困苦 
  18.  '始作俑者', # 贬义,第一个做坏事的人 
  19.  '无所不为', # 贬义,什么坏事都干 
  20.  '无所不至', # 贬义,什么坏事都干 
  21.  '阳春白雪', # 贬义,高深不容易理解的艺术 
  22.  ]

output

  1. 运行耗时: 4秒480毫秒 
  2. text: 沧海桑田, positive_prob: 0.3838, predict: negative # 错误 
  3. text: 下里巴人, positive_prob: 0.7957, predict: positive  
  4. text: 有口皆碑, positive_prob: 0.906, predict: positive 
  5. text: 危言危行, positive_prob: 0.588, predict: positive 
  6. text: 鬼斧神工, positive_prob: 0.657, predict: positive 
  7. text: 不赞一词, positive_prob: 0.9698, predict: positive 
  8. text: 文不加点, positive_prob: 0.1284, predict: negative # 错误 
  9. text: 差强人意, positive_prob: 0.0429, predict: negative # 错误 
  10. text: 无微不至, positive_prob: 0.8997, predict: positive 
  11. text: 事倍功半, positive_prob: 0.6181, predict: positive 
  12. text: 事半功倍, positive_prob: 0.8558, predict: positive # 错误 
  13. text: 蠢蠢欲动, positive_prob: 0.7353, predict: positive # 错误 
  14. text: 面目全非, positive_prob: 0.2186, predict: negative 
  15. text: 江河日下, positive_prob: 0.2753, predict: negative 
  16. text: 评头论足, positive_prob: 0.6737, predict: positive # 错误 
  17. text: 生灵涂炭, positive_prob: 0.4661, predict: neutral # 错误 
  18. text: 始作俑者, positive_prob: 0.247, predict: negative 
  19. text: 无所不为, positive_prob: 0.5948, predict: positive # 错误 
  20. text: 无所不至, positive_prob: 0.553, predict: positive # 错误 
  21. text: 阳春白雪, positive_prob: 0.7552, predict: positive # 错误 

正确率:10/20 = 50%

转折复句情绪分析

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读