搭建情感分析系统,tf-idf,word2vec

本文介绍了情感分析的应用场景,如量化投资和竞品分析,并详细阐述了文本预处理的步骤,包括分词、单词过滤。讨论了jieba分词的使用,以及停用词库的构建。接着,文章深入探讨了文本表示方法,如布尔、计数和tf-idf,强调了tf-idf的重要性。最后,提到了分布式表示法Word2vec,及其在计算单词语义相似度中的作用。
摘要由CSDN通过智能技术生成

情感分析问题

给定一个文本并输出它的情感值,情感值无非是正面、负面或者中性。

我们希望通过使用一种算法去识别一个文本的情感,这个问题本身属于文本分类问题。 如果只是正面或者负面,就是二分类问题;但如果是正面、负面和中性,则是三分类问题。

应用场景:

1)量化投资,就是通过AI技术去做投资比如股票买卖。在量化投资里,我们一般使用模型对未来的股市做预测,然后再进行买卖的决策。在这个任务上,我们一般会采用多因子模型, 时序预测模型等算法。

另外,很多公司通过情感分析的技术去实时监控是否有大量的负面消息在产生。一旦发现,需要公关部门去处理。比如一家金融公司,会实时抓取跟公司有关的公众号、论坛的文本信息然后自动判断是否有大量的负面情感在里面。

 

2)竞品分析也是很重要的一部分。通过情感分析技术来判断竞品推出了哪些产品,舆论对此产品的评价是怎么样的。通过这些信息,我们可以做到了解竞争对手,并做出及时的调整。

 

文本的预处理工作

1)分词,这是最基本的第一步。无论对于英文文本,还是中文文本都离不开分词。英文的分词相对比较简单,因为一般的英文写法里通过空格来隔开不同单词的。但对于中文,我们不得不采用一些算法去做分词。

使用jieba分词的例子:

1)在Anaconda3 中安装jieba :

conda install -c conda-forge jieba

或者一下命令:

conda install --channel https://conda.anaconda.org/conda-forge jieba

如果无法连上conda-forge可以尝试一下方式:

https://blog.csdn.net/zhaohaibo_/article/details/79253740

但是该方式安装的jieba无法在vscode中被识别

https://blog.csdn.net/a857553315/article/details/81410142

python文件名不能和jieba库名字重名,否则也无法正常运行。

一个使用jieba分词的例子,并加入关键词:

# encoding-utf-8
# reference : https://github.com/fxsjy/jieba
import jieba

# base on jieba segment reference: https://github.com/fxsjy/jieba
seg_list = jieba.cut("贪心学院是国内最专业的人工智能在线教育品牌", cut_all=False)
print("Default Mode: " + "/ ".join(seg_list))


# TODO: 在jieba中加入"贪心学院"关键词, hint: 通过.add_word函数
# 
jieba.add_word("贪心学院")
seg_list = jieba.cut("贪心学院是国内最专业的人工智能在线教育品牌", cut_all=False)
print("Default Mode: " + "/ ".join(seg_list)) 
Building prefix dict from the default dictionary ...
Loading model from cache C:\Users\admin\AppData\Local\Temp\jieba.cache
Loading model cost 0.848 seconds.
Prefix dict has been built succesfully.
Default Mode: 贪心/ 学院/ 是/ 国内/ 最/ 专业/ 的/ 人工智能/ 在线教育/ 品牌
Default Mode: 贪心学院/ 是/ 国内/ 最/ 专业/ 的/ 人工智能/ 在线教育/ 品牌

我们还是要定义属于自己的专有名词的。如果我们考虑的是医疗领域,则需要把医疗领域我们比较关注的词先加入到词库里,再通过结巴工具做分词,毕竟很多的专有词汇并不存在于结巴的词库里。

 

大部分情况下只需要使用工具去分词就可以了,没必要自己造轮子。但有一些特殊情况,比如这些开源工具的效果很一般,或者它们缺少某些方面的考虑,则可能需要自己写一个分词工具。

实际上,自己

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值