当前位置: 首页 > 科技观察

大观数据:基于深度学习的情感分析架构演进

时间:2023-03-14 11:06:35 科技观察

随着互联网的日益发达,很多消费者会去品牌官网或者一些专业网站甚至社交媒体发布产品评价。对于买家来说,购买前查看评论是了解商品真实情况的重要途径。对于商家来说,阅读评论是了解客户反馈、产品优势和潜在问题的第一渠道。然而,评论数据的挖掘并不是那么简单,可以轻松获得。首先,一个产品往往会有大量的评论,买卖双方不可能仔细阅读每一条评论,从而对一个产品有一个整体的了解。使用计算机和算法自动分析和挖掘评论是解决这个问题最有效的方法。这些评论将涉及产品属性的方方面面。有些用户说它很好,有些则说不好。即使表达相同的意思,也会有不同的表达方式。根据我们的经验,需要一个高复杂度的系统架构来完全解决评论挖掘的问题。大观数据基于在自然语言处理、机器学习算法和文本挖掘领域多年的技术积累,融合文本标签提取、文本分类和情感分析,打造商品评论概念挖掘服务,帮助用户从海量评论数据中提取.核心观点,让产品的真实情况一目了然。图1大观汽车评论意见挖掘1.意见挖掘的基础——情感分析情感分析是文本挖掘的一个重要基础分支,是评论挖掘的关键技术。无论是买家还是卖家,他们都想先了解评论。就是产品好不好,比例是多少。本文将重点介绍大观情感分析的实现结构和心得体会。情感分析可以看作是一个二元分类问题,即将表达积极情绪的文本视为类别“1”,表达消极情绪的文本视为类别“0”。2.规则算法——简单思路的启发情感分析最简单的实现是基于情感词典和规则,大致分为三个步骤:分词:分词是中文自然语言处理的基础,即对准确地将一个句子分割成一个句子词。中文分词长期以来一直是文本挖掘领域的重要研究方向,因为一旦分词错误,将直接导致上层文本挖掘功能的性能下降。大观目前采用的是自主研发的内分词系统,经过长时间的打磨,为上层文字功能提供基本的效果保障。因为分词算法不是本文的重点,这里就不展开了。设置情感词典:情感词典一般包括5个词典,即正面情感词典、负面情感词典、否定词典、程度副词词典和行业情感词典。正负情绪的字典很好理解,比如“高兴”、“悲伤”等等。负面词汇,如“不”反转情绪。程度副词,如“非常”、“极其”等,可以增强情感,最终影响整个词组或句子的整体情感倾向。此外,还有一个行业情感词典,即只在某些特定领域具有情感倾向的词。比如对于汽车,“塑料感”、“硬底盘”其实表达的是负面情绪。基于规则的匹配:基于分词和情感词典,可以根据人们平时的语言表达习惯设置一些规则来计算文本的情感倾向,例如每个积极的情感词+1分,-1分消极情绪词遇到消极词时,乘以-1反转情绪,遇到程度副词时,情绪分值乘以一个放大系数。***根据计算出的分数,判断情绪倾向。如果得分为正,则判断为积极情绪。如果得分为负,则判断为负性情绪。图2Rule-based情感分析Rule-based方法的优点是不需要很好标记的训练数据,但是可扩展性很差,需要人工将字典和规则一一匹配才能识别足够情感倾向,需要完全准确匹配,所以召回率比较差。同一个意思可以有多种表达方式。特别是在情感分析领域,经常出现双重否定等复杂句型,规则必须设计得足够复杂才能被识别。另外,当匹配规则较多时,不同的规则往往会相互冲突。这时候情感分析的结果是不可控的,会导致准确率下降。3、特征工程+机器学习——长期以来的行业标杆鉴于规则算法的明显缺陷,过去很长一段时间,主流的情感分析算法都是基于机器学习算法,如LogisticRegression、SVM,随机森林等经典算法。机器学习可行的先决条件是收集和标记训练数据集。Internet上也有许多公共语料库。与基于规则的方法相比,机器学习算法多了两个步骤:特征提取和模型训练。图3特征工程+机器学习方法特征提取:文本挖掘领域最常用也是最简单的特征是词袋模型(bagofwords),它将文本转化为基于词的向量,而每个维度的向量是一个词,词可以基于分词得到,也可以基于N-Gram模型得到。每个维度的特征值也可以通过多种方式计算,比如经典的one-hotencoding和tf-idfvalue。模型训练:基于文本标注类别和提取的特征向量,可以使用机器学习算法进行训练。模型训练完成后,可以用来判断文本的情感倾向。图4词袋模型的特征提取与基于规则的方法相比,机器学习方法在可扩展性和适应性方面有了质的飞跃。它只需要准备好标记数据和设计特征提取方法,模型就可以自动从数据中学习。开发用于情感分析的复杂高维分类模型。但是,基于传统机器学习的情感分析方法也有一定的局限性,其效果主要取决于特征工程,即提取的特征是否能够很好地区分正面和负面情绪。在相同的特征下,如果只使用简单的分类器,选择不同的分类算法效果不会有太大差异。做好特征工程,非常依赖于人的先验知识,即我们需要对数据进行足够深入的观察和分析,找出对区分正面和负面情绪最有用的特征。深度特征工程也需要依赖情感词典和规则方法,但不是直接判断文本的情感倾向,而是将规则分析的结果作为一维或多维特征,进行融合在一种更“灵活”的方法中进行情感分析,扩展我们的词袋模型。在大观的文本挖掘服务中,传统的机器学习方法仍然占据了一定的比例,尤其是在数据量比较小的情况下。目前,我们针对多个行业的文本数据都有相应的行业词典和特征工程算法。而且在分类算法方面,采用了大观自主研发的多模型融合算法,情感分析的效果可以达到业界较高水平,相比单模型算法可以提升10%.图5大观文本挖掘技术框架4.深度学习——大数据时代的生力军一般而言,传统的机器学习方法耗时耗力。常用的词袋模型隐含地假设词的语义是相互独立的,从而丢失了文本的上下文信息。但真实情况往往不是这样,同一个词在不同的语义环境下可以有不同的语义。bag-of-words模型还导致向量空间特别大,一般有几十万维。对于评论等短文本,转换后的向量会特别稀疏,这也会造成模型的不稳定。当今炙手可热的深度学习技术代表了当前文本挖掘领域的前沿技术,能够很好地解决上述问题。目前大观情感分析包括其他文本挖掘系统,深度学习已经全面布局。与传统的机器学习方法相比,深度学习至少具有三个直接优势:不需要特征工程:深度学习可以自动从数据中学习特征和模型参数,节省了大量复杂的特征工程工作,并且需要行业先验知识依赖关系也是减少到最低限度。考虑语义上下文:当深度学习处理文本数据时,它通常会在计算之前将单词转换为单词向量。词向量的生成考虑了词的语义上下文信息,解决了词袋模型的局限性。显着降低输入特征维度:由于使用了词向量,特征维度大大降低,可以降到一百数量级。同时,文本向量变得“密集”,模型变得更加稳定。深度学习主要包括两个步骤:词转化为词向量:谷歌的word2vec算法是目前使用最广泛的词向量生成算法,实践证明其效果非常可靠,尤其是在衡量两个词之间的相似度方面。Word2vec算法包括CBOW(ContinuousBag-of-Word)模型和Skip-gram(ContinuousSkip-gram)模型。简单来说,CBOW模型的作用就是通过知道当前词Wt(Wt-2,Wt-1,Wt+1,Wt+2)的上下文来预测当前词,而Skip-gram模型是根据当前词Wt预测当前词来预测上下文(Wt-2,Wt-1,Wt+1,Wt+2)。因此,初级词向量实际上是根据词的上下文生成的,具有词袋模型所不具备的表达能力。图6使用深度学习框架训练基于词向量的CNN模型:将词转化为固定维度的词向量后,文本可以自然地形成一个矩阵,如图6所示。矩阵作为输入,首先想到的自然是在图像识别领域取得成功的卷积神经网络(CNN)。但是CNN在文本挖掘领域的应用有一定的局限性,因为每一层的节点之间没有连接,也就是词与词之间的连接丢失了。之前已经多次强调,词的上下文关系对于文本挖掘,尤其是情感分析至关重要。情感词(“喜欢”)与否定词(“不”)、程度词(“非常”)的搭配会对情感倾向产生根本性的影响。因此,LSTM(LongShort-TermMemory,长短期记忆)目前被广泛使用。LSTM可以“记住”更远距离范围内的上下文对当前节点的影响。图7LSTM模型五、总结基于深度学习的文本情感分析,与传统机器学习相比,效果可提升15%左右,省去复杂的特征工程工作,将人工依赖降到最低。借助深度学习技术,大观的文本挖掘架构也在不断更新迭代,不断升级完善。【本文为专栏作者“大观数据”原创稿件,如需转载可通过专栏取得联系】点此查看该作者更多好文