当前位置:   article > 正文

燃爆!17行Python代码做情感分析?你也可以的_python用senta模型实现中文情感分析

python用senta模型实现中文情感分析

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

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

实验代码

  • 来自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'])) 
  27. PYthon学习企鹅裙:88198-2657 领取python自动化编程资料教程

详细测评

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

闽ICP备14008679号