黑马程序员技术交流社区

标题: 深度学习新算法,完成字里行间的情绪识别 [打印本页]

作者: Justinv587    时间: 2013-10-15 09:03
标题: 深度学习新算法,完成字里行间的情绪识别
深度学习是近几年也被归入了过分吹嘘的技术之一,究其原因在于还没有成熟的算法和应用。然而学术界一直没有停止这方面的研究,近日,斯坦福大学研究开发的深度学习新算法NaSent,或为这个领域带来一线曙光。                                深度学习领域是计算机科学一个新兴领域,通俗说来就是构建像人脑一样处理数据的计算机程序。深度学习首先发起于学术界,目前各大互联网巨头也纷纷投入研究,如Google的猫脸识别以及Facebook的深度学习团队

每天,数百万人在使用Twitter、Facebook和其它社交网络来就各类热点话题互相交流。大量的个人信息被汇集到这里,对于Google、Facebook、Amazon和Twitter等大型互联网公司来说,如果拥有较为实用的深度学习技术,这些数据就可以转化为财富。但是说起来容易做起来难,对这些数据的处理能力很大程度上取决于他们的计算机算法是否成熟。
近日,斯担福大学的研究生Richard Socher和Andrew Ng(Google深度学习项目工程师之一),以及一位语言学及人工智能领域的专家Chris Manning,共同研究开发了一个深度学习的新算法,这个算法被称为Neural Analysis of Sentiment,缩写为NaSent。NaSent算法从人脑中得到灵感,旨在改善当前书面语言的分析方法。
Socher介绍说NaSent的目的是开发一种可在无人监督的情况下运行的算法。“过去感知分析主要聚焦于模型,忽略了词序,而且依赖人工干预,并且只适用于简单的例子,永远不会达到人类的理解能力。因为词义会随语境变化,就算是语言专家也不能准确定义语言中感情的微妙之处。我们的深度学习模型就是为了解决这些问题”。
目前,应用最广的情绪分析是“词袋(bag of wodrds)”模型,并没有将词序列入考虑范围。词袋中的词汇被标记为正面或负面的,通过计数来评估整个句子或段落的含义是正面还是负面。
AlchemyAPI(一家将深度学习用于情绪分析的公司)CEO说将词汇单独分析的方法并不准确,必须将其放入到越来越大的结构中。
Socher和他的团队从影评网站Rotten Tomatoes抽取了12000个句子,并将其粗略分割为214000个词组,每个词组被标记为负面、中立或正面(数字表示),计算机科学家称这些数字化的表述为“特征表示”,类似于人脑理解概念和定义的方式。
如何分析和组织这些被标记的数据才是NaSent算法的核心。以下通过对两个句子的分析来理解这个算法:


这两个句子中使用的词汇完全相同,“词袋”模型分析显然不会得到正确的结果。NaSent算法首先会为每个句子构造文法树,如下图所示:

在分析句子时,红色的节点代表这个词汇或短语带有负面情绪,例如“weird”虽然是一个负面词汇,但短语“is weird but likeable”被正确理解为正面情绪。
如上图所示“surreal but likeable Leon”是一个正面词组,但“this movie is weird”是负面的,整个句子得到的分析结果也是负面的。
相比之前模型80%的准确率,NaSent的准确率达到了85%。这个系统还没有授权给外部组织,但是据Socher说已经有几个初创公司联系他们表示对NaSent算法很感兴趣。
但遇到没有被统计的词汇或短语,这个系统就会失效。Socher和他的团队已经开始通过Twitter和网上的电影数据库,扩充系统的词汇库。他们还允许外部人员对这个词汇库进行扩充。短短几周内,就收到了14000份词汇库的提交。






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2