作家
登录

使用python+机器学习方法进行情感分析(详细步骤)

作者: 来源: 2018-01-04 17:36:48 阅读 我要评论

【限时免费】岁尾最强一次云计算大年夜会,看传统、社区、互联网企业若何碰撞?


不是有词典匹配的办法了吗?怎么还搞多个机械进修办法。

因为词典办法和机械进修办法各有所长。

机械进修的办法精确度更高,因为词典匹配会因为语义表达的丰富性而出现很大年夜误差,而机械进修办法不会。并且它可应用的场景更多样。无论是主客不雅分类照样正负面情感分类,机械进修都可以完成义务。而无需像词典匹配那样要深刻到词语、句子、语法这些层面。

而词典办法实用的语料范围更广,无论是手机、电脑这些商品,照样书评、影评这些语料,都可以实用。但机械进修则极端依附语料,把手机语料练习出来的的分类器拿去给书评分类,那是注定要掉败的。

最后分类结不雅如下图:

\

应用机械进修进行情感分析,可以换一个相赞成思的说法,就是用有监督的(须要人工标注类别)机械进修办法来对文本进行分类。

这点与词典匹配有着本质的差别。词典匹配是直接计算文本中的情感词,得出它们的情感偏向分值。而机械进修办法的思路是先选出一部分表达积极情感的文本和一部分表达消极情感的文本,用机械进修办法进行练习,获得一个情感分类器。再经由过程这个情感分类器对所有文本进行积极和消极的二分分类。最终的分类可认为文本给出0或1如许的类别,也可以给出一个概率值,比如”这个文本的积极概率是90%,消极概率是10%“。

然后须要对find_best_words 赋值,如下:

NLTK 当然不只是处理情感分析,NLTK 有着整套天然说话处理的对象,大年夜分词到实体辨认,大年夜情感分类到句法分析,完全而丰富,功能强大年夜。实乃居家观光,越货杀人之必备良药。

两本NLTK 的参考书,异常好用。一本是《Python 天然说话处理》,这是《Natural Language Processing with Python》的中文翻译版,是自愿者翻译没有出版社出版的,开源精力万岁!另一本是《Python Text Processing with NLTK 2.0 Cookbook》,这本书写得清楚清楚明了,固然是英文版的,看起来也很舒畅。特别值得一提的是,该书作者Jacob 就是NLTK 包的重要供献者之一。并且他的博客中有一系列的文┞仿是关于应用机械进修进行情感分类的,我的代码可以说是完全基于他的,在此表示我的感激。

第三步,付邮攀类标签。

其实还有国外作者也被他启发,用Python 来处理情感分类。比如这篇文┞仿,写得特别具体卖力,也是我重点参考的文┞仿,他的代码我也有所借用。

Python 有优胜的法度榜样包可以进行情感分类,那就是Python 天然说话处理包,Natural Language Toolkit ,简称NLTK 。

Jacob 在文┞仿中也有提到,近段时光NLTK 新增的scikit-learn 的接口,使得它的分类功能更为强大年夜好用了,可以用很多高妒攀冷艳的分类算法了。于是我又滚以前看scikit-learn 。的确是天赐我好对象,妈妈再也不消担心我用不了机械进修啦!

有了scikit-learn 的接口,NLTK 做分类变得比之前更简单快捷,然则相干的结合NLTK 和 sciki-learn 的文┞仿实袈溱少,这篇文┞仿是仅有的讲得比较具体的把两者浇忧⒛,在此也表示感激。

但对于我而言照样有点不敷的,因为中文和英文有必定的差别,并且膳绫擎提到的一些博客琅绫擎的代码也是须要修改的。终于把一份代码啃完之后,能写出一个跑得通的中文情感分类代码了。接下来会介绍它的实现思路和具体代码。

在这个系列的文┞仿琅绫擎,机械进修都可以认为是有监督的分类办法。

总体流程如图:

\
图1:机械进修的流程和构造(摘自《Natural Language Processing with Python》)

一、有监督意味着须要人工标注,须要工资的给文本一个类标签。

比如我有5000条商批评论,如不雅我要把这些评论分成积极和消极两类。那我就可以先大年夜琅绫擎选2000条评论,然后对这2000条数据进行人工标注,把这2000条评论标为“积极”或“消极”。这“积极”和“消极”就是类标签。

假设有1000条评论被标为“积极”,有1000条评论被标为“消极”。(两者数量雷同对练习分类器是有效的,如不雅实际中数量不雷同,应当削减和增长数据以使得它们数量雷同)

二、之后就要选择特点。

特点就是分类对象所展示的部分特点,是实现分类的根据。我们经常会做出分类的行动,那我们根据些什么进行分类呢?

举个例子,如不雅我看到一个年青人,穿戴新的┞俘装,提着极新的公函包,快步行走,那我就会认为他是一个刚入职的职场新人。在这琅绫擎,“极新”,“正装”,“公函包”,“快步行走”都是这小我所展示出的特点,也是我用来断定这小我属于哪一类的根据。这些特点和根据就是特点。可能有些特点对我断定更有效,有些对我断定没什么竽暌姑,有些可能会让我断定缺点,但这些都是我分类的根据。

我们没办法发明一小我的所有特点,所以我们没办法客不雅的选择所有特点,我们只能主不雅的选择一部分特点来作为我分类的根据。这也是特点选择的特点,须要工资的进行必定选择。

而在情感分类中,一般大年夜“词”这个层次来选择特点。

比如这句话“手机异常好用!”,我给了它一个类标签“Positive”。琅绫擎有四个词(把感慨号也算上),“手机”,“异常”,“好用”,“!”。我可以认为这4个词都对分类产生了影响,都是分类的根据。也就是无论什么处所出现了这四个词典个中之一,文本都可以被分类为“积极”。这个是把所有词都作为分类特点。

同样的,对这句话,我也可以选择它的双词搭配(Bigrams)作为特点。比如“手机 异常”,“异常 好用”,“好用 !”这三个搭配作为分类的特点。以词攀类推,三词搭配(Trigrams),四词搭配都是可以被作为特点的。

 1/10    1 2 3 4 5 6 下一页 尾页

  推荐阅读

  Linux下使用sudo进行赋权

进修怎么在保护 root 暗码的安然性的同时,为可托用户付与所治理的收集功能和特定办事的权限。我比来写了一个简短的 Bash 法度榜样来将 MP3 文件大年夜一台收集主机的 USB 盘中拷贝到另一台收集主机上去。拷贝出来的>>>详细阅读


本文标题:使用python+机器学习方法进行情感分析(详细步骤)

地址:http://www.17bianji.com/lsqh/40229.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)