版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
WiththedevelopmentoftheInternet,anincreasingnumberofpeoplesharetheirscaleofdataontheIntalsobedetectedsothatorganizationsorgovernTextsentimentanalysisisabasicresearchareainnaturallapresentmostofsentimentanalyzingalgorithmsbuildsupervisedmachinelearningmodelsbyoftexts,soitisnecessarytoselectfeWhenselectingmachinelearningmodels,itisalsoimInthispaperasentimentanalysisalgorithmadaLDAtopicmodelandSVRmachinelearningmethod.Givendecidethesentimentpolaranddegree,SVRmodelFinally,avisualizingapplicationisdesignedandimpwhosesentimentattitudehasbeenlabeled.UserscanknowaboutanalyzingatopicoruKeywords:publicopinionmonitoring,sentimen 1.1选题背景及意义 1 2 2 5 6 62相关概念和理论 82.1支持向量机 8 8 2.2.1文档生成过程 2.2.2参数估计 2.3分词算法 2.3.1基于词典的分词算法 2.3.2统计分词算法 2.4本章小结 203情感分析算法 3.1算法概述 3.2算法过程 3.2.1整体框架 3.2.3特征抽取与LDA模型的应用 303.3.1数据集 3.3.2实验结果及分析 3.3.3结论 3.4本章小结 4.1需求概述 4.2相关技术 4.3设计实现 4.3.1数据分析接口实现 4.3.2应用实现 404.4系统效果 4.5本章小结 47 49 北京航空航天大学毕业设计(论文)态度。就在线社交网站的数据而言,通过情感分析,我们可以得出单个用户情感走向、北京航空航天大学毕业设计(论文)社会对此主题支持或反对的态度,从而有助于对特定话题的负面情绪做出及时的预警,工作都是围绕解决这样一个问题而展开的。对于这样一个分类(或回归)问题,大量的的自然语言分析技术中,词频常常被认为是反映北京航空航天大学毕业设计(论文)的标记,将句子分解归纳为不同的模式,并将这些模式作为n使用这样的特征比使用普通n元词模型得到的特征分类准确率高出10%。析问题(如分词)都没有得到很好的解决,所以许多情感分析模型尽管被提出了,却都是在基于分词等问题已经得到解决的前提下进行理论论证,缺随着互联网的发展,网络上有了越来越多包含情感倾向的语料(如,新闻评论、社交网站内容等),同时也出现了许多更为通用的语言数据库(如WordNet),情感分析的包含有显式的情感特征(如电影评论中的用户评分),因而也就不需要人工标注数据了。北京航空航天大学毕业设计(论文)建。文本包含的情感受领域的影响已在许多实验中得到证实。Dave等人利用一种特定领域的语料去训练分类模型[13],并将其应用于另一领域的语料分类,得到的实验效果出了一些领域无关的特征[23],利用这些特征可以构建领域无关的情感分类模型。而Blitzer等人也基于相似的思想,从不同的领域中提取共同的特征[24],于基准算法相比准确率提高了46%:北京航空航天大学毕业设计(论文)此外,还有一些研究者针对中文语料数据提出了效果更好的情感分析算法。2002年朱嫣岚等人利用HowNet的语义相似度和语义相关场等功能提出了一种中文无监督情感分析算法[32]。而在2008年Zagibalov等人在Turn早在1997年,Hatzivassiloglou等人就提出了其他自然语言学资源(如,WordNet等),或者基于其他启发式规则(如,同情感倾向北京航空航天大学毕业设计(论文)监督学习的方法构建新的分类模型,从而标注更多的词语。Rioff等人采用这种思想对形容词的语言特征进行了研究[9],Ka本文共分为5个章节,包括绪论、相关概念和理论、情感分析算法、可视化分析系北京航空航天大学毕业设计(论文)第二章详细介绍了本文提出的情感分析算法的理论基础。主要介绍了支持向量机北京航空航天大学毕业设计(论文)2相关概念和理论支持向量机(SVM)[51]是数据实验室研究小组在1995年提出。当时的统计学习理论的实现和神经网络等机器学习方类算法进行分类。当数据点在特征空间中线性可分(即,存在一个超平面将数据点分为两部分,使得两类数据点分别位于超平面的两侧,如图2.1(a))时,称这样的分类问题将数据点分开(如图2.1(b)),这时候就需要对数据点进行变换,将其映射到另一个线北京航空航天大学毕业设计(论文)(a)线性可分的数据(b)线性不可分的数据对于线性SVM分类模型而言,给定若干n维空间中的数据点,存在很多超平面将其划分为两部分。我们希望找到一个最佳的超平面,使得所有数据点离超平面的距离尽量大,这样是使得两类数据点尽量相互远离的需求的反映。为此,首先定义分类函数(超平面):分类预测的确信或准确程度。在超平面确定的情况下,|w·x+b|可以相对的表示点到超平面的远近,由此定义函数间隔:其中y代表类别,通常用+1和-1表示。进而可以推导得出点到超平面的几何距离:为了方便,不妨将P设为1,它的取值并不影响整个问题的求解。根据支持向量机的分类问题要求,现在我们可以定义将问题如下优化问题:为了将这个问题转化为凸二次规划问题求解,可将目标函数做如下变形:将问题转化为这样的形式后,利用拉格朗日乘数法,可使用通用的计算机优化问题求解算法来求解。最终结论可以表示为这样的训练向量的线性组合:北京航空航天大学毕业设计(论文)对于其中大于0的α,对应的x;就是支持向量(如图2.2),对于那些α₁为0对应的x;,图2.2特征空间中的支持向量这种情况下需要支持向量机模型通过一个映射函数将输入的数据点映射到一个高维特假定存在这样一个映射φ,将n维空间中的点x;映射到高维空间中的点φ(xi),使得北京航空航天大学毕业设计(论文)可以看到,在这样的分类模型中,数据点之间的运算均为内积运算。此时从理论上来说问题已经可以求解,但在实际计算中会发现直接计算的复杂度将会非常高。加入原数据点在二维空间中,映射函数为所有维度的乘积的组合,那么新的特征空间将会是一个五维空间。如果使用类似的方法进行映射,那么对于原始空间是三维的情况下,映射后的空间将高达19维。这种映射后维度的迅速增长,使得新空间中数据点之间的内积运算变得极为复杂。这时候就需要一种能够简化内积运算的方法。这种情况下,支持向量机模型引入了核函数的概念。核函数K是这样一种函数,它将高维空间中的内积运算转化为原低维空间中的内积运算,即:这样一来,就避免了直接在高维空间中进行内积计算时带来的极高复杂度。核函数的实质是一种隐式映射,它将变换后的高维空间中的内积隐式映射到原空间中,从而使得内积可以直接在原低维空间中计算,而不需要显示写出空间变换结果后进行计算。实际上,在较为简单的情况下,核函数可以直接推导得出。然而对于任意一个空间映射,手工构造核函数是十分困难的事情。因而在实际情况中,核函数通常是从几个常用的核函数中进行选择,然后根据具体的问题选择不同的函数参数,这是构造核函数的常用方法。常用的核函数有许多[52],常用的核函数包括:线性核函数K(x₁,x₂)=x₁·x₂+c多项式核函数K(x₁,x₂)=(ax₁·x₂+c)⁴高斯核函数双曲正切核函数K(x₁,x₂)=tanh(ax₁·x₂+c)这些核函数有各自不同的特点。如高斯核函数会将原始空间映射到无穷维空间,同时可以通过调节参数来调节高次项的衰减速度,从而在无区分和过拟合之间寻找平衡。而双曲正切函数来源于神经网络理论,当SVM模型使用此核函数时,整个模型实际上相当于一个两层的可感知神经网络,其在实际应用中有较好的效果。支持向量机分类是一种类别有限的分类模型,而对于支持向量回归(SVR)模型而言,其本质是类型集合无限的支持向量分类模型。所谓支持向量回归问题,就是给定若干n维空间中的数据点,模型试图找到一个超平面,使得尽量多的数据点落在超平面上,北京航空航天大学毕业设计(论文)第12页或者平均分布在超平面的两侧,并且使得数据点离超平面的距离尽量靠近。类比于支持向量分类模型,可以定义如下支持向量回归问题:而对于支持向量模型而言,我们总希望调整超平面的斜率w使得超平面与所有点的距离都尽量大,这与分类模型的目标是一致的,因此回归模型具有与分类模型相同的目标函对于支持向量回归模型而言,同样存在非线性问题。在数据点所处的特征空间中,有时很难用一个超平面将所有点拟合,这时候就需要用一个空间变换函数将数据点映射到高维空间中。同样地,为了简化高维空间中的内积运算,引入核函数进行隐式内积变换。实际上,这里处理非线性问题的方法与支持向量分类模型所采用的方法是一致的。在实际应用中,可以通过灵活控制核函数的参数使得训练出的模型取得较好的效果且不支持向量机模型以寻找划分特征空间的最优的超平面为目标,并使用非线性映射增强了模型的学习能力。同时,模型通过定义核函数简化映射后的空间中的内积运算。因而,支持向量机具有以下优势:·训练得到的模型仅仅由支持向量决定,因而在实际应用过程中储存模型的开销很小,而整个计算过程的复杂度也仅由支持向量的数量决定,与特征空间的维度无关,因此很大程度上避免了由于数据点维数过高而导致的计算复杂度的增加。·训练模型所需要的样本数量较少。由于支持向量模型不依赖于大数定律等概率理论,而是通过解决优化问题直接求解支持向量构建模型,因而对于小样本数据而言支持向量机模型往往能取得较好的效果。由于训练得到的最终模型仅由少数支持向量决定,因而剔除非支持向量的数据样本对整个模型没有任何影响,这在一定程度上反映了支持向量机模型的鲁棒性。此外,其鲁棒性还体现在,在一些应用中,支持向量机模型对核函数的选择并不敏感。尽管支持向量机模型具有很多优点,但仍有许多不足之处。其中一个制约其发展的不足就是面临大规模数据时,其训练模型的计算复杂度非常高。基于SMO等方法求解北京航空航天大学毕业设计(论文)第13页模型目前仍然被广泛应用,但其最快情况下的时间复杂度与训练样本数的平方成正比。2003年Blei等人提出了LDA(LatentDirichletAllocation)模型[54],它是一种主题模型。主题模型是自然语言处理领域一种用于发现文档背后所包含的主题的统计模型。档的生成过程,即文档是由词语按照怎样的方式组成的。LDA模型的文档生成过程基形式化地讲,在一个包含若干文档的数据集中,每一篇文北京航空航天大学毕业设计(论文)第14页对应记该分布为φ,由于狄利克雷分布是多项式分布的共轭先验概率分布,故设θ和φ分别有一个包含超参数α和β的狄利克雷先验分布。据此LDA模型所定义的文档生成模型可概括为如下过程:·根据狄利克雷分布α生成文档i关于主题的一个分布0·反复上述步骤直至生成文档中的每一个词语ββNM图2.3LDA模型定义的文档生成过程整个文档生成过程如图2.3所示。整个模型中所有变量的关系可由如下联合概率分布定义:p(wiz₁θφ₂₄|a,β)=}-₁p(θ|a)p(z,|0,)p(φa₁|β)n(w|那么可将整个文档生成过程视为一篇文档的单词分布,即:p(w|a,β)=J₀I₀Eap(w,z₁,θ₁φ₂最终根据p(w;|a,β)的极大似然估计,估算出模型中的参数,即可求解模型。北京航空航天大学毕业设计(论文)第15页(1)EM算法在上一部分中提到,模型中的参数可以根据文档单词分布的极大似然估计求解。对于这样一个问题,可以使用EM算法求解。在EM算法中,给定一个联合分布p(X,Z|θ),其中X为观测变量,Z为隐含变量,θ为参数,算法将求解似然函数p(X|θ)的极大值。对于LDA模型而言,给定的联合分布为文档的单词分布p(wi,Z|a,β),待估计参数为a和β,似然函数达到极大时的参数值即为估计值:整个算法的求解步骤如下:·M步骤:计算新的参数值(anew,βnew)=argmax·判断似然函数或参数值是否收敛,若不收敛则使用新的参数值重复上述步骤计算然而在实际计算过程中,E步骤中的后验概率计算非常困难。为了计算这一概率,通常采用变分推理来进行近似计算。在这一过程中,通过计算y和φ来近似似然函数:这样一来,整个模型就可以求解了。(2)Gibbs采样算法EM算法虽然可以求解LDA模型,但是算法十分复杂,因而现在更为普遍的参数估计算法是Gibbs采样。Gibbs采样省去了繁琐的似然函数计算,而是通过迭代的方式不断更新参数,最终构建模型。其基本过程如下:·初始时对所有文档中的每个词语进行遍历,并为每个词语随机分配一个主题,对于其中K代表主题的总数。设n),nm,n(P),nk分别表示文档m中主题k出现的次数,文档m中主题的数量之和,k主题对应的t词的北京航空航天大学毕业设计(论文)遍历过程中统计它们的数值。·之后反复进行迭代:对所有文档中的每个词进行遍历,若当前文档m的词t对应的主题为k,则对nm),nm,,ng分别减1,之后根据LDA中主题采样的概率分布采样得到新的主题,并在对应的1,nm,n8),ng上+1。并且有:Gibbs采样使得求解LDA模型的计算复杂度大幅度降低,计算效率得到了提高。但Gibbs采样也有其不足之处。其最重要的不足之处在于无法自动停止迭代,也就是迭代过程不收敛,因而必须人工给定迭代次数。在实际应用时,往往根据模型效果选择最合适的迭代次数。分词是自然语言处理中一项基本任务,它是将文章或句子分解为一个个单词的过程。而对于文本情感分析而言,对语料进行正确的分词,是后续研究过程中重要的基础。分词的算法因为语言的不同而大不相同。在一些以词语为句子构成的基本成分的语言(如英语)中,分词只需要根据单词间的空格将单词分开即可,而由于中文是以汉字为单位构成句子的,因而对于中文分词而言,根据空格分词是不现实的,分词必须使用一些更为高级的算法来实现。现阶段中文分词的算法多种多样,并且已经较为成熟。常用的分词算法主要分为两大类,即基于词典的分词算法和统计分词算法。下面将对这两种分词算法进行简要的介绍。2.3.1基于词典的分词算法基于词典的分词算法实质上就是通过匹配文本中的字符串和词典中的词来实现分词。简单地说,就是扫描字符串,如果发现字符串的子串和词相同,就算匹配。通常这类分词算法会加入一些启发式规则来提高算法的精度,比如“正向最大匹配”、“反向最北京航空航天大学毕业设计(论文)北京航空航天大学毕业设计(论文)第18页形式化地来说,信息熵可被认为是系统不确定性(混乱程度)的度量,熵值越大,其中E为期望函数,I为个体X的信息量。信息量是用来衡量单一随即变量发生时所含信息的多少,随机变量发生的概率越低,其发生后消除系统不确定性的能力越强,所含信息量就越大。所以信息量与随即变量概率成反比:带入信息熵的定义式有:H(X)=E(I(X))=-ExexP(信息熵满足如下不等式:|X|是X的取值个数,上式仅当X满足均匀分布(如图2.4所示)时,等号成立。图2.4X的均匀分布因而识别新词的问题,就成为求得可使信息熵最大化的X的概率分布。总体上来说,基于词典的分词算法基于字符串的匹配,虽然能够在线性时间复杂度内产生分词结果,但分词所采用的启发规则往往影响着算法的分词效果,而不同的启发式规则应用在不同的语料中,其所产生的结果也可能迥异。因而算法的稳定性较差。而在歧义和未登录词识别问题上,这类算法普遍无法取得较好的效果,甚至在很多情况下完全无法应对,这是由于词典本身的局限性所导致的。而这样的问题,也推动了新的分北京航空航天大学毕业设计(论文)过程中需要大量的人力。此外,这种算法训练模型所消耗的时间往往较多,实现复杂,时,研究随机场才有实际的意义。若随机变量x如果给定一个马尔可夫随机场,其中每个随机变量y下面还有观察值x,我们要确布形式,只不过多了一个观察集合X。所以条件随机场的本质上是给定了观察值集合的中X表示输入的单个字符组成的序列(观测序列),Y表示对应输出的分词序列(状态序列),并且有:北京航空航天大学毕业设计(论文)马尔科夫模型(HMM)使一种概率模型,可以表示为μ=(S,V,A,B,π),其中:此外,定义Q和O分别是隐藏状态集合S和观测符号V有关于时序t的输出序列。其前一时刻的状态qt-1,与其他时刻的隐藏状态和观测无关,也与时刻t无关。这测序列O出现的可能性,即求P(O|μ)。使得在该模型下O出现的可能性最大,即使用最大似然法求P(Olμ)。·预测结果。已知模型μ=(A,B,π)和观测序列O(o₁,0₂,…,o₁),求使得给定观测序列的条件概率P(Olμ)最大的隐藏状态序列Q。的介绍,在实际应用中需要选择和调整的参数可以被确定了。此外本章还介绍了LDA北京航空航天大学毕业设计(论文)第21页这一主题模型。LDA模型在自然语言处理领域中有着广泛的应用,为了确定其在实际北京航空航天大学毕业设计(论文)北京航空航天大学毕业设计(论文)第23页选择一部分数据作为训练集,对于训练集中的所有文档数据,构建文档-词语矩此矩阵的每一行代表一篇文档,每一列代表构成所有文每个元素为0或1,代表列所对应的词语是否出现在行所对应的文档中。然后建立微博文本微博文本情感倾向、程度词语集食LDA模型文本向量图3.1算法流程的语言(如英语)中,分词只需要根据单词间的空格将单词分开即可,而在这样的分词中文是以汉字为单位构成句子的,因而对于中文分词而言,根北京航空航天大学毕业设计(论文)第24页基于词典的分词算法实质上就是通过匹配文本中的字符串和词典中的词来实现分词的,目前匹配算法包括正向最小匹配、正向最大匹配、反向匹配、双向匹配等算法,采用ICTCLAS汉语分词系统进行分词。该分词系统利用的是基于隐马尔科夫模型对于所使用的数据而言,有一些类型的词语或语言成分显然不包含任何有用信北京航空航天大学毕业设计(论文)为了能够进一步确定哪些类型的词语对文本分类有用,这里基于词袋模型构建了一个简单的情感分类系统进行测试。词袋模型是文本分类中的一个常用模型,它认为一篇文档是这样构成的:每次从组成所有文档的词语集合中抽取一个单词,这样反复抽取构成一篇文档。在词袋模型中,词语是不分先后顺序的。在这里,每篇文档被视为一个词语集合,每个词语的出现与否作为文档的分类特征,从而将文档转化为多维空间中的向量。然后使用朴素贝叶斯分类器对文档的情感进行分类。在对不同词性进行测试时,首先使用没有去掉任何词语的数据进行情感分类,并计算分类的准确率。然后使用相同的数据,每次去掉某一种词性的所有词语,然后使用剩余的文本数据进行分类,并重新计算分类准确率。将这些准确率与没有去掉任何词语时的准确率进行对比,对于那些准确率变化很小的实验中所去掉的词语,认为这种词性与文本的情感关系不大,将其过滤掉,不作为后续步骤中的文本特征。这里定义准确率的实验结果如表3.1所示。名词量词时间词副词处所词介词方位词连词动词叹词形容词语气词区别词拟声词状态词前缀代词数词北京航空航天大学毕业设计(论文)总体上来说,去掉单独一种词语对准确率的影响的绝对值都没有超过15%。这主要是由构特征。除此之外,文本的一些统计特征,如词语的tf-idf值、卡方检验等特征,以及新浪微博数据的一个重要特点就是每篇文档(微博)都在140字以内。对于这样的短文主题模型,也就是说,LDA模型将文档与词语之间的概率分布,转化为文上反映了文本的语义特征。现在如果使用包含情感倾向的文本建立LDA模型,得到文档-主题的概率分布,那么就将词语集合与情感的联系转化为主题与情感的联系。日常经验告诉我们,主题与情感往往有着密不可分的联系,因而这样的变换是符合经验的。通过这样的变换,高维稀疏的文本向量也就映射成为维度统一、分布密集的向量了。根据以上的叙述,可以定义使用LDA模型抽取文本特征的形式化过程。对于一个文档集合D={d₁,d₂,…,dn}而言,每篇文档均可用一个词语序列来表示,即d₁=(w₁,w₂,…,W)。因此可以得到所有词语的集合W={w|w∈dj,i=1,2,…,n},设集合W的大小为m,则有如下的文档-词语矩阵:然后将此矩阵用于LDA模型的构建,即可得到n×k的文档-主题矩阵,其中k为主在实际实现过程中,本算法使用Gibbs采样对LDA模型进行求解。在Gibbs采样过程中,需要预先确定两个参数:主题数量k和迭代次数δ。经过实验发现,当迭代次数达到1000时,得到的文档-主题矩阵变化已经不大,趋于收敛。因而在实验过程中迭代次数δ设为1000。而对于主题数量,在后续的实验中发现,它虽然直接对应于产生的向量的维度,但却与分类(回归)效果关系不大,因此这里不妨将主题数量k设为默认值得到文档-主题矩阵后,取矩阵的每一行为对应文档的分类特征向量。需要指出的是,得到的文本向量的每一维特征表示文档属于某个主题的概率,或者说文档中某主题所占的比例,这并不是文本结构、统计特征等具体直观的分类特征,而是经过LDA模型计算得出的具有具体意义的抽象特征。这样的抽象特征反映了文本所蕴含的主题与其所蕴含的情感之间的联系。得到文本向量后,便可以训练支持向量回归模型并进行情感分析。在第二章中提到,支持向量回归问题实际上是这样一个优化问题:第28页在实际应用过程中,对于线性不可分的情况,将向量映射到高维空间后,允许数据点不在超平面上,且距离超平面的距离可能大于ε,也就是允许存在部分错误的数据点。这时引入松弛变量ξ,那么问题就变为:is.t.|w·φ(xi)+b-yl≤ɛ+5i,i=1,2,…,n,ξi≥0(3.使用朗格朗日乘数法求解该问题,同时将问题转化为对偶型,于是问题转化为如下形式:s.t.ZI=₁(a₁-a₁)=0,O≤最后就可以构造回归函数,即训练后的回归模型:其中K是核函数。在实际求解过程中,首先需要确定使用何种核函数。对此,这里对线性核函数、多项式核函数、高斯核函数、双曲正切核函数进行了测试。测试结果表明,在本算法中,回归效果对核函数并不敏感。因此本算法最终选择了较为常用的高斯核函数。在核函数的参数选择方面,,此参数作为高斯核函数的未知参数,需要在实验中选择以使得实验效果最优。此外由于求解过程中松弛变量的引入,因而需要确定参数C,此参数反映了对错误或偏差数据的容忍程度,它同样需要根据实验结果进行调整以使得回归效果达到最优。在实验过程中,使用网格搜索(GridSearch)算法对回归模型的参数进行搜索,从而得到最优参数。网格搜索算法的实质还是遍历参数的每种可能情况的组合。这里网格搜索实验选择的参数设置如表3.2所示:北京航空航天大学毕业设计(论文)第29页C的搜索范围s的搜索范围搜索间隔评价函数中,CC代表相关系数(CorrelationCoefficient),RRSE表示相对标准差(RootRelativeSquaredError),RAE(RootAbsoluteError)表示绝对标准差。最终实验结果如图3.2所示。可以得到,回归模型效果最优时,C=0.1,g=0.1。01234012345第30页北京航空航天大学毕业设计(论文)第30页3.3实验本实验采用的数据集全部来源于新浪微博数据。在使用爬虫爬取这些数据的过程中,从随机选取的种子节点开始,不断爬取其好友用户的微博数据,最终获取了大规模的、具有随机性的数据。在本实验中,所用到的数据格式如下:其中微博的内容包括原内容和转发内容。在本实验中,收集到的微博的发布时间为2009-2012年,数据总量为随机抽取的151个用户共计42万多条微博。此外,对于每个用户而言,本数据集仅涵盖了其从2009年到2012年间发布的部分微博,这些微博是随机抽取出来的。在开始实验之前,还需要对采集到的数据的情感进行标注。由于微博数据本身不包含情感属性,而鉴于微博短文本的特点,自动标注情感的算法无法取得较好的标注效果。此外,由于这里要进行的是回归分析,这要求数据点不仅仅具有正面或负面的情感类别,北京航空航天大学毕业设计(论文)第31页还需要有一个连续的值来表示情感的强烈程度。综合以上这些原因,本实验人工标注了2000条数据的情感。这些数据是随机抽取的,对于每一条数据而言,其将被人工赋予一个处于区间[-5,5]上的数值。这个数值的若为负值,表示微博所包含的情感为负面的,若为正值,则表示所包含的情感为正面的。这个数值的绝对值表示情感的强烈程度。被标注的数据集的情感分布如表3.4所示。02345从表中可以看出,大量的微博情感集中在[-2,2]之间,而情感越强烈,微博的数量就越少。实际上,在标注数据的过程中发现,大量的微博并没有表现出非常强烈的情感,甚至许多微博虽然包含情感,但情感表达得非常含蓄,有时必须结合语境甚至用户的性格特点才能判断出。另外,微博的情感程度为0表示此条微博不包含情感。这些微博通常是一些诸如新闻、公告等阐述客观事物的微博。为了更直观地反映微博的情感分布,这里做出了微博的情感分布曲线。北京航空航天大学毕业设计(论文)图3.3标注数据的情感分布图在接下来的实验中,将使用这2000条数据进行实验,来检验算法的效果。而在最终实现应用的过程中,将采用这2000条数据作为训练集,训练支持向量回归模型,然后采用此模型对全部42万多条数据的情感进行标注。的算法,这里首先使用隐马尔科夫模型对微博文本进行分词处理,然后构建文档-词语需要指出的是,这里构建LDA模型所用的数据是全部42万多条数据,而非回归用的2000条数据。这样做的好处是使得构建的LDA模型具有较强的通用性,同时更大规模北京航空航天大学毕业设计(论文)第33页为基线算法。所谓词袋模型,就是使用相同的数据,将每条与否用相应特征位置上的0或1表示,通过这样的方法可以构仅仅使用2000条标注的数据作为实验数据集。在训练并测试模型时,采用交叉验证的方法,将数据集平均分为10份,每次实验使用9份数据作为训练集,1份数据作为测试集进行实验验证。表3.5所示的是这10份数据的一些文本属性。表3.5实验数据的文本属性1283545676899实验结果如表3.6所示。北京航空航天大学毕业设计(论文)第34页基于LDA模型的算法(本文提出)基于词袋模型的算法(基线算法)123456789这里取两个算法最好的实验结果进行比较分析。通过实验结果可以看出,本文提出的算法训练出的回归模型的相关系数最好为0.6489%,好于词袋模型算法的0.4732%。而在相对标准差和绝对标准差这两项上,本文提出的算法也要稍优于词袋模型算法,但两者差距不大,并且就绝对值而言偏差都较大。从图3.4所示的曲线中也可以很直观地看出两种算法的优劣。北京航空航天大学毕业设计(论文)第35页(b)两种算法的相对标准差(c)两种算法的绝对标准差图3.4两种算法的综合比较北京航空航天大学毕业设计(论文)本分类特征和一些需要长文本支持的统计特征,另一方面联系北京航空航天大学毕业设计(论文)4可视化分析系统设计与实现综合、抽象等操作,然后使用图形、图标等视觉表现形式呈现出来。借助数据可视化,对于指定的主题,系统将搜索所有相关的微博,然后将这些微博用两种方式展示出来。坐标由-5~5共11个离散坐标点组成,纵坐标表示微博的数量,这样可以很清楚的表现用户分析功能则更为简单明了。系统可以对指定的微博用户(需要输入用户ID)北京航空航天大学毕业设计(论文)Web技术和文档搜索技术,而前端主要涉及JavaWeb是用Java语言及相关技术来解决Web领域问题的技术总和。JavaWeb技矢量图形内容。它是W3C所制定的开放性网络标准之一。SVG具有诸多优点,包括图北京航空航天大学毕业设计(论文)4.3设计实现voiddoseWriter0vectorWiter(Strngflename)eintwriteLDAVector(LintwriteSVMVector(intpolar,Stringvector)图4.1I/O类的类图Bufferedwnterresultvin0北京航空航天大学毕业设计(论文),analyzer.FeatureExMap<String,Integer>wordsIndex□EmotionDictionaryemoDicEmotionDictionarygetEm图4.2分析类的类图在图4.2所示的类图中,详细阐述了与数据分析相关的每个类的具体实现。每个类或用户ID,进行计算和搜索,并返回相应的数据。前端主要负责发送数据请求,以及对收到的数据进行可视化处理。整个系统的框架如图4.3所示。北京航空航天大学毕业设计(论文)第41页图4.3系统架构图完成数据的情感分析之后,需要将分析好的情感数据存入数据务,即数据存入数据库和建立文本索引。这一部分功能模块主要由三个类组成,即在图4.4所示的类图中,详细阐述了数据预处理相关的几个类的具体实现。每个类Cpreprocess.DatabaCpreprocess.Databa北京航空航天大学毕业设计(论文)oBufferedReaderpola图4.4数据预处理类的类图的Servlet将响应请求,然后通过查询索引取得需要的微博ID,博;或是直接在数据库中动态查询出某用户的所有微博。取得数据后,再通过Servlet后进行数据查询、封装的类分别是SearchTopic、Analyz查询索引或数据库,然后取出相应的数据。最后数据通过Servlet传回客户端。vaiddoGet(HttpServetRequestrequest,HitpServletResponseresp北京航空航天大学毕业设计(论文)第43页voiddoGet(HttpServetRequestrequest,HUst<DeObject>searchindex(St对于前端而言,其页面采用HTML静态页面,同时采用Ajax技术异步请求数据。为了简化数据的编码和解码过程,也为了减少通信产生的数据量,这里的Ajax请求直接使用GET方式获取数据,请求参数包含在URL中。前后端通信则采用JSON数据格式,这样既便于后端封装数据,而JavaScript对JSON的原生支持也使得数据处理更为方便。就这里的应用而言,对于话题分析和用户分析两个功能,对应的数据格式如下所"tid":微博ID,"uid":用户ID,"Sdate":"yyyy-MM-ddThh:mm:ssZ"//微博发布时间]北京航空航天大学毕业设计(论文)第44页"Sdate":"yyyy-MM-ddThh:mm:ssZ"//每个月的第一天,以区分不同月份"pos":正面情感值"neg":负面情感值."negNum":负面情感微博数量]得到数据后,前端将执行JavaScript代码,结合D3.js库,实现可视化的展现。前端的可视化代码主要在SentimentMinerjs文件中。4.4系统效果最终的分析系统分为3个页面。在支持HTML5的浏览器中输入站点地址,首先打开的是欢迎页面,这个页面上简要介绍了系统的用途、数据来源、分析方法等。之后可以通过页面顶端的导航栏进入主题分析页面或用户分析页面。在主题分析页面中,输入任何想要了解的主题,即可得到两种相关微博的可视化展现方式,如图4.6所示。在气泡图中,每个气泡代表一条微博,橙色气泡表示正面情感,蓝色气泡表示负面情感,气泡的大小表示微博的情感强烈程度。当鼠标移动到某个气泡上时,会出现此气泡对应的微博内容。此外在此图中还是可以使用鼠标进行拖拽、缩放操作,便于进行局部分析。而在折线图中,横坐标表示微博情感,纵坐标表示微博的数量,这样可以看出相关微博不同情感程度的数量。北京航空航天大学毕业设计(论文)第45页(b)折线图在用户分析页面中,输入任何想要了解的用户ID,即可得到如图4.7所示的图表。图中灰色的条代表用户在对应时间内发表的微博数量,橙色折线代表其正面情感的波动情况,蓝色折线代表其负面情感的波动情况。可以用鼠标点击右上角的图例,以便过滤掉不想看到的数据,仅对感兴趣的数据进行单独分析。北京航空航天大学毕业设计(论文)图4.7用户分析可视化效果北京航空航天大学毕业设计(论文)第47页结束语对情感强烈程度的研究则较少。另一方面,情感分析算法往北京航空航天大学毕业设计(论文)有两个原因。其一是特征抽取仅仅基于LDA模型,对语义的考虑不够充分;其二是训北京航空航天大学毕业设计(论文)致谢师兄师姐和同学们的帮助下顺利度过了。在此,我向所有给予过我指导和关心的老师、北京航空航天大学毕业设计(论文)第50页参考文献[2]PangB,LeeL,Vaithlearningtechniques[C]/Proceedin[3]WiebeJ,WilsonT,BruceR,etal.Lreviews[C]/ProceedingsoftheCOLING/ACLonMainconferenceposterAssociationforComputationalLinguistics,200analysis[C]/Proceedingsofthe2006ConferenceonEmpiricalMethodsinNaturalLanguageProcessing.AssociationforComputationalLingu[6]AiroldiE,BaiX,PadmanR.Markovextractionfromunstructuredtexts[M]//AdvancesiAnalysis.SpringerBerlinHeidelberg,2006:167-187.[8]KennedyA,InkpenD.Sentimentclassificationofmoviereviewsusingcontextualvalenceshifters[J].ComputationalIntelligence,2006,22(2):110-125.expressions[C]/Proceedingsofthe2003conferenceonEmpiricalmethodsilanguageprocessing.AssociationforComputationalLinguis[11]MullenT,CollierN.SentimInformationSources[C]/EMNLP.2004,4:412-418.[12]KimSM,HovyWeb[C]/EMNLP-CoNLL.2007:1056-1064.北京航空航天大学毕业设计(论文)semanticclassificationofproductreviews[C]/Proceedingsofthe12thinternationalconferenceonWorldWideWeb.ACM,2vectors,andtheroleoflinguisticanalysis[C]/Proceedingsofthe20thinternationalconferenceonComputationalLinguistics.AssociationforComputationa2004:841.[15]MatsumotoS,TakamuraH,OkumuraM.SentimenDataMining.SpringerBerlinHeidelberg,2005:301-311.[16]GoldbergAB,ZhuX.Seeingstarswhesemi-supervisedlearningforsentimentcategorizationWorkshoponGraphBasedMethodsforNaturalLanguageProcessing.AssociationforComputationalLinguistics,2006:45-52.[17]MaoY,LebanonG.IsotonicconditiAdvancesinneuralinformationprocessingsystems,2007,19:withrespecttoratingscales[C]//ProceedingsofthforComputationalLinguistics.AssociationforComputationalLiclauses[C]//aaai.2004,4:761-769.[20]EngströmC.TopicdependenceDissertation.UniversityofCambridge,2004.[21]OwsleyS,SoodDocuments[C]//AAAISpringSymposium:ComputationalApproaWeblogs.2006:181-183.[22]AueA,GamonM.Custostudy[C]/Proceedingsofrecentadvancesinnaturallanguageprocessing(RANLP).2005,BlogTrack[C]/TREC.2006.北京航空航天大学毕业设计(论文)[24]BlitzerJ,DredzeM,PereiraF.Biographies,bollywood,boomDomainadaptationforsentimentclassification[C]//ACL.2007,7[25]HurstMF,NigamK.Retrievi[26]EguchiK,LavrenkoV.SentimentretrievalusinggeneratiforComputationalLinguistics,2006ACM,2007:171-180.[28]EguchiK,ShahC.OpinionRetrievalExperimentsfortheTRE[29]HatzivassiloglouV,Wsentencesubjectivity[C]/Proceedingsolinguistics-Volume1.Associaclassificationofreviews[C]/Proceedingsofthe40thannualmeetingoncomputationallinguistics.AssociationforComputatio[31]YuH,HatzivassiloglouV.Towardsansweringopinionqopinionsandidentifyingthepolarityofopinionsentences[CComputationalLinguistics,2003:129-136.[33]ZagibalovT,CclassificationofChinesetext[C]//Proceedingsofthe22ndInternatioComputationalLinguistics-Volume1.AssociationforC[34]LiT,ZhangY,SindhwaniV.Anon-negativsentimentclassificationwithlexicalpriorknowledge[C]/ProConferenceofthe47thAnnualMeetingoftheACLan北京航空航天大学毕业设计(论文)第53页AssociationforComputationalLinguistics,2[35]HuettnerA,SubasicP.Fuzzytypingfordocumentmanagement[CompanionVolume:TutorialAbstractsandDemonstrationNotes,2000:26-27.[36]TongRM.Anoperationaldiscussion[C]//WorkingNotesoftheACMSIGIR2001Classification.2001,1:6.[37]HatzivassiloglouV,McKeownKR.Predictingthesemanticorientatadjectives[C]//Proceedingsofthe35thAnnualMeetingoftheAssociatComputationalLinguisticsandEighthConferenceoftheEuropeanChapteroftheAssociationforComputationalLinguistics.As[38]AntweilerW,FrankMZ.Isallthattalkjustnoise?Theinformationcontentofinternetstockmessageboards[J].TheJournalofFinance,2004,59(3):1259-1294.[39]GamonM,AueA.Automaticidentificationofsentiassociationwithknownsentimentterms[C]/ProceedingsoftheFeatureEngineeringforMachineLearninginNaturalLanguageProcessing.Associationfor
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 肺部并发症预测模型
- 行政复议授权委托书
- 健康与生态保护承诺书7篇范文
- 用户体验升级优化承诺函3篇
- 企业人力资源招聘面试技巧提升十要诀手册
- 企业品牌推广计划模板(行业)
- 餐饮业食品安全检查与整改方案指南
- 教育培训服务承诺书保障教育服务(5篇)
- 电气设备维修保养标准指南
- 制造业质量控制与工艺标准手册
- 《工厂布局》课件
- DB11T 695-2025 建筑工程资料管理规程
- 弱电劳务分包合同
- 《沥青拌合站管理制度》
- 精通JTGT3660-2020:公路隧道施工技术规范
- 04S519小型排水构筑物(含隔油池)图集
- 八年级下册生命与健康教案
- 湖南省长沙市湖南师大附中教育集团2023-2024学年七年级下学期期中数学试题
- 口才与演讲实训教程智慧树知到期末考试答案2024年
- 【生物】激素调节课件 2023-2024学年人教版生物七年级下册
- 重大危险源检查记录表
评论
0/150
提交评论