CN107229610B - 一种情感数据的分析方法及装置 - Google Patents
一种情感数据的分析方法及装置 Download PDFInfo
- Publication number
- CN107229610B CN107229610B CN201710162111.6A CN201710162111A CN107229610B CN 107229610 B CN107229610 B CN 107229610B CN 201710162111 A CN201710162111 A CN 201710162111A CN 107229610 B CN107229610 B CN 107229610B
- Authority
- CN
- China
- Prior art keywords
- data
- word
- vector
- analyzed
- words
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004458 analytical method Methods 0.000 title abstract description 18
- 239000013598 vector Substances 0.000 claims abstract description 228
- 230000011218 segmentation Effects 0.000 claims abstract description 116
- 238000012545 processing Methods 0.000 claims abstract description 86
- 230000008451 emotion Effects 0.000 claims abstract description 43
- 238000012706 support-vector machine Methods 0.000 claims description 67
- 230000006870 function Effects 0.000 claims description 51
- 238000000034 method Methods 0.000 claims description 49
- 230000002996 emotional effect Effects 0.000 claims description 46
- 238000004364 calculation method Methods 0.000 claims description 45
- 238000012549 training Methods 0.000 claims description 26
- 238000004422 calculation algorithm Methods 0.000 claims description 19
- 238000002790 cross-validation Methods 0.000 claims description 14
- 238000001914 filtration Methods 0.000 claims description 10
- 230000008030 elimination Effects 0.000 claims description 7
- 238000003379 elimination reaction Methods 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 2
- 239000003607 modifier Substances 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 16
- 238000009826 distribution Methods 0.000 description 12
- 230000014509 gene expression Effects 0.000 description 10
- 238000013507 mapping Methods 0.000 description 9
- 238000007405 data analysis Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000012552 review Methods 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000000717 retained effect Effects 0.000 description 3
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 2
- 241000989913 Gunnera petaloidea Species 0.000 description 2
- 238000013398 bayesian method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000016507 interphase Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000003997 social interaction Effects 0.000 description 1
- 230000002269 spontaneous effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种情感数据的分析方法,所述方法包括:获取待分析数据;对所述待分析数据进行分词处理,得到分词特征数据;将所述分词特征数据生成用于确定所述分词特征数据中各词之间语义关系的分布式词向量;根据所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量;根据学习模型对所述完整数据向量进行分类计算,得到用于确定所述待分析数据的情感属性。本发明还同时公开了一种情感数据的分析装置。
Description
技术领域
本发明涉及数据分析技术,具体涉及一种情感数据的分析方法及装置。
背景技术
随着移动互联网的快速发展,促使着人们的生活、工作、娱乐等方方面面的行为方式也发生着改变。例如,对于各大电商、社交、阅读等平台提供的产品、内容或服务,用户自发的评论分享产生的内容呈现出爆发式增长。
例如,在图书阅读平台中,每天产生的书评文本就有千万条,而这千万条书评文本中包含有读者对各图书相关内容的评价、对作者的评价、对阅读产品的性能与服务质量的反馈以及读者自身的需求或期望等价值信息,如果所述图书阅读平台能够根据这些书评文本确定出读者对该图书的情感属性(好评或差评),则将会对所述图书阅读平台满足用户的需求以及产品的改进带来极大的便利。
现有技术中确定图书情感的方法通常包括以下四种:
(1)人工搜索统计;
(2)基于特征向量表示进行情感分类;
(3)贝叶斯方法对文本特征进行分类;
(4)最大熵算法。
而上述四种确定图书情感的方法多是适用于短文本评论的情感分析,而在处理大数据量级的长文本评论时,无论在数据特征表示还是处理效率方面都会严重影响最终分析结果,具体如下:
针对人工搜索统计的方法:在处理大数据量级的长文本评论时,不仅会消耗巨大的精力与时间,而且也难保证结果的时效性与准确性。
针对基于特征向量表示进行情感分类的方法:在处理大数据量级的长文本评论时,由于其特征学习与分类识别均存在局限性。例如,基于向量空间模型 (VSM,VectorSpace Model)在处理数据量与维度较小的短评论时尚可发挥其优势,但在处理大量级长文本评论数据时,依靠大量孤立词集表示的词向量特征维度可达上万级,该模型表示的高维特征向量语义缺失且存在矩阵稀疏问题,因此,在特征处理时会占用大量存储与计算资源,影响文本处理效率。
针对文本特征分类常用的贝叶斯方法:在处理情感分析问题时容易受到其算法自身的限制。具体地,由于贝叶斯要求文本特征属性独立且不相关,较少考虑各词间的语义联系,而文本情感分析中的各特征词间受上下文语境影响较大,情感极性与各词联系密切,因此,分词偏差直接影响特征词概率分布计算从而导致极性分类结果欠佳。
针对最大熵算法:虽然在文本情感分析中考虑了上下文丰富的语义信息,但对长文本各词间概率统计的方式无疑需要花费大量的训练时间与空间,其语义联系的计算是以消耗的巨大的资源成本为代价。然而,通过降维或特征选择方法降低计算复杂度,所获取的特征数量并没有明显降低向量表示维度。例如,通过信息检索与数据挖掘的常用加权技术(TF-IDF,Term Frequency-Inverse Document Frequency)所选择的某一长评特征词同样多达几百甚至上千条,而通过特征词聚类的方式降维所得的词簇主题以实词为主,而对于反映情感的特征词却无法表示整条评论,个别出现的情感词片段存在语义缺失的问题。
发明内容
为解决现有存在的技术问题,本发明实施例期望提供一种情感数据的分析方法及装置,能够提高对图书评论文本进行情感属性分析的准确性。
本发明实施例的技术方案是这样实现的:
根据本发明实施例的一方面,提供一种情感数据的分析方法,所述方法包括:
获取待分析数据;
对所述待分析数据进行分词处理,得到分词特征数据;
将所述分词特征数据生成用于确定所述分词特征数据中各词之间语义关系的分布式词向量;
根据所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量;
根据学习模型对所述完整数据向量进行分类计算,得到用于确定所述待分析数据的情感属性。
上述方案中,在对所述待分析数据进行分词处理之前,所述方法还包括:
对所述待分析数据进行噪声过滤与重复评论去重,得到第一待分析数据;
对所述第一待分析数据进行分词处理,得到所述分词特征数据。
上述方案中,在得到所述分词特征数据之后,所述方法还包括:
对所述分词特征数据进行重复词或重复字去重,得到第一分词特征数据;
将所述第一分词特征数据生成所述分布式词向量。
上述方案中,根据所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量,包括:
根据所述分布式词向量确定各词之间的词窗口大小数据和词向量维度数据;
根据所述词窗口大小数据和所述词向量维度数据,确定所述待分析数据的语义关系词向量;
根据所述语义关系词向量中各词的特征数据,对所述语义关系词向量进行加权平均计算,得到所述待分析数据的完整数据向量。
上述方案中,所述根据学习模型对所述完整数据向量进行分类计算,包括:
将所述完整数据向量转换成支持向量机(SVM,Support Vector Machine) 格式文件,并对所述SVM格式文件进行标准化处理,得到用于进行交叉验证的SVM参数;
在所述SVM参数中选择径向基核函数(RBF,Radial Basis Function)和第一参数、第二参数进行交叉验证,得到用于在训练语料中获取SVM模型的第一最佳参数和第二最佳参数;
根据所述第一最佳参数和所述第二最佳参数确定出的SVM模型对所述完整数据向量进行分类计算。
上述方案中,所述得到用于确定所述待分析数据的情感属性,包括:
根据所述学习模型确定所述待分析数据的情感属性的分类概率,
根据所述分类概率得到所述待分析数据的情感属性的分值;
根据所述分值确定所述待分析数据的情感属性。
根据本发明实施例的另一方面,提供一种情感数据的分析装置,所述装置包括:数据获取单元、分词处理单元、数据生成单元、第一计算单元和第二计算单元;其中,
所述数据获取单元,用于获取待分析数据;
所述分词处理单元,用于对所述数据获取单元获取的所述待分析数据进行分词处理,得到分词特征数据;
所述数据生成单元,用于将所述分词处理单元得到的所述分词特征数据生成用于确定所述分词特征数据中各词之间语义关系的分布式词向量;
所述第一计算单元,用于根据所述数据生成单元生成的所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量;
所述第二计算单元,用于根据学习模型对所述第一计算单元得到的所述完整数据向量进行分类计算,得到用于确定所述待分析数据的情感属性。
上述方案中,所述装置还包括:
第一处理单元,用于对所述数据获取单元获取的所述待分析数据进行噪声过滤与重复评论去重,得到第一待分析数据;
所述分词处理单元,具体用于对所述第一处理单元得到的所述第一待分析数据进行分词处理,得到所述分词特征数据。
上述方案中,所述装置还包括:
第二处理单元,用于对所述分词处理单元得到的所述分词特征数据进行重复词或重复字去重,得到第一分词特征数据;
所述数据生成单元,具体用于将所述第二处理单元得到的所述第一分词特征数据生成所述分布式词向量。
上述方案中,所述第一计算单元,具体用于根据所述数据生成单元生成的所述分布式词向量确定各词之间的词窗口大小数据和词向量维度数据;根据所述词窗口大小数据和所述词向量维度数据,确定所述待分析数据的语义关系词向量;根据所述语义关系词向量中各词的特征数据,对所述语义关系词向量进行加权平均计算,得到所述待分析数据的完整数据向量。
上述方案中,所述第二计算单元,具体用于将所述第一计算单元得到的所述完整数据向量转换成SVM格式文件,对所述SVM格式文件进行标准化处理,得到用于进行交叉验证的SVM参数;在所述SVM参数中选择RBF和第一参数、第二参数进行交叉验证,得到用于在训练语料中获取SVM模型的第一最佳参数和第二最佳参数;根据所述第一最佳参数和所述第二最佳参数确定出的 SVM模型对所述完整数据向量进行分类计算。
上述方案中,所述第二计算单元,具体还用于根据所述学习模型确定所述待分析数据的情感属性的分类概率,根据所述分类概率得到所述待分析数据的情感属性的分值;根据所述分值确定所述待分析数据的情感属性。
本发明实施例提供一种情感数据的分析方法及装置,获取待分析数据;对所述待分析数据进行分词处理,得到分词特征数据;将所述分词特征数据生成用于确定所述分词特征数据中各词之间语义关系的分布式词向量;根据所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量;根据学习模型对所述完整数据向量进行分类计算,得到用于确定所述待分析数据的情感属性。通过结合语义关系的分布式词向量,得到待分析数据的完整数据向量,并基于SVM算法对完整数据向量进行计算,确定出所述待分析数据属于好评数据或差评数据。如此,能够在所述待分析数据的字数长短不齐的情况下,提高情感数据的分析效率和分析结果的准确性。
附图说明
图1为本发明实施例一种情感数据的分析方法流程示意图;
图2为本发明实施例中不同窗口下分布式词向量中语义特征表示准确度的示意图;
图3为本发明实施例中基于Word2Vec词向量表示的词特征数据间相的系数的示意图;
图4为本发明实施例中基于SVM训练拟合模型的示意图;
图5为本发明实施例中对待分析数据进行预处理的方法流程示意图;
图6为本发明实施例一种情感数据的分析装置的结构组成示意图。
具体实施方式
下面结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
图1为本发明实施例一种情感数据的分析方法流程示意图;如图1所示,所述方法包括:
步骤101,获取待分析数据;
这里,所述方法主要应用于情感评论数据的分析装置,其中,所述装置获取到的所述待分析数据的表现形式不限,可以是文字、符号、表情等表现形式。
步骤102,对所述待分析数据进行分词处理,得到分词特征数据;
这里,所述装置在获取到所述待分析数据后,采用分词工具对所述待分析数据进行分词处理。例如,采用Ansj分词工具中的条件随机场算法(CRF, Conditional RandomField algorithm)模型对所述待分析数据进行自定义词典加载,对所述待分析数据中部分自定义歧义词组与停用词有监督地进行最大长度的词划分,以得到分词特征数据,并通过隐马尔可夫模型(HMM,Hidden Markov Model)对得到的所述分词特征数据进行词性标注。这里,歧义词组是指同样的一句话,有两种或者更多的切分方法。例如:我喜欢,因为“我喜”和“喜欢”都是词,那么这个短语就可以分成“我喜欢”和“我喜欢”。停用词(Stop Words)是指文本中出现频率很高,但实际意义又不大的词。这一类的词主要包括了语气助词、副词、介词、连词等,通常自身并无明确意义,只有将其放入一个完整的句子中才有一定作用的词语。如常见的“的”、“在”、“和”、“接着”之类,比如“**研究院是原创的**博客”这句话中的“是”、“的”就是两个停用词。停用词的目的是为了节省存储空间和提高搜索效率,所以搜索引擎在索引页面或处理搜索请求时会自动忽略某些字或词,这些字或词即被称为停用词。
步骤103,将所述分词特征数据生成用于确定所述分词特征数据中各词之间语义关系的分布式词向量;
这里,由于分布式词向量特征表示具有较强的文本语义表示能力,能避免高维孤立的词向量二元表示所带来的维数灾难计算困难及词语间相关性无法表达和特征稀疏等问题。所以当所述装置对所述待分析数据进行分词处理,得到所述待分析数据的分词特征数据后,将所述分词特征数据生成用于确定所述分词特征数据中各词之间语义关系的分布式词向量。具体地,所述装置使用 Word2vec词向量表示所述分词特征数据。由于Word2vec是利用深度文本表示模型以深度学习为基础,通过训练把对文本内容的处理简化为K维向量空间中的向量运算(K一般为模型中的超参数),而向量空间上的相似度可以用来表示文本语义上的相似度。所以,Word2vec输出的词向量可以被用来做很多神经语言程序学(NLP,Neuro-Linguistic Programming)的相关工作,比如聚类、找同义词、词性分析等等。或者,利用神经网络将词作为特征,Word2vec就可以把特征映射到K维向量空间(K一般为模型中的超参数),通过词之间的距离(比如余弦(cosine)相似度、欧氏距离等)来判断它们之间的语义相似度。
Word2vec具体采用输入层-隐层-输出层的三层神经网络,对文本词进行哈夫曼编码(Huffman Coding)建模后,使得所有词频相似的词和隐藏层激活的内容基本一致,同时将每个词在层次Huffman树结构上进行多种编码求和,深度表示该词内包含的不同语义。如此能够使得出现频率越高的词语,激活的隐藏层数目越少,有效的降低了计算复杂度。具体整个神经网络语言模型函数与条件概率公式如下:
f(wt,wt-1,…,wt-n+1)=P(wt|wt-1)
f(i,wt-1,wt-2,…,wt-n+1)=g(I,C(wt-1),C(wt-2),…,C(wt-n+1))
y=b+U(C(wt-1),C(wt-2),…,C(wt-n+1))+Vtanh(d+H(C(wt-1),C(wt-2),…,C(wt- n+1)))
其中,wt为输入层词语,C为词语的映射矩阵,行为对应的各个词语|v|,列为词语的特征向量,维数为K,i为|v|中某个词语,通过条件概率似然最大化估计P,并对P作归一化处理。yi为输入层wt的特征向量映射输出的各自未规范的概率,U为输入到输出的权重参数,b为输出层的偏置向量,V为隐层到输出层参数,H为隐层参数,d为隐层偏置向量。
步骤104,根据所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量;
这里,所述装置具体使用Word2vec中的CBOW和skip-gram两种模型对得到的分词特征数据进行词向量表示。其中,CBOW和skip-gram均利用 Huffman树动态构建由隐藏层至输出层的二叉树,并且,在语料中的词由每个相应的叶节点唯一表示,词向量由相应节点边权值表示。具体地,CBOW使用 Huffman树将所述分词特征数据中的每个词w从根节点到词节点n(w,i)沿唯一访问路径编码(i为节点位置),并采用层次log-linear(Soft Max)模型对当前词w进行词性标注,然后,读取特定大小的窗口词作为当前词w的上下文语义词。
在本发明实施例中,所述根据所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量,包括:
根据所述分布式词向量确定各词之间的词窗口大小数据和词向量维度数据;
根据所述词窗口大小数据和所述词向量维度数据,确定所述待分析数据的语义关系词向量;
根据所述语义关系词向量中各词的特征数据,对所述语义关系词向量进行加权平均计算,得到所述待分析数据的完整数据向量。
这里,具体不同窗口下分布式词向量中语义特征表示准确度如图2所示。
图2为本发明实施例中不同窗口下分布式词向量中语义特征表示准确度的示意图。如图2所示:
当前词的窗口过小会影响当前词语义表示的丰富度,当前词的窗口过大会因引入过多的语义关系不强的噪声而影响词特征的表示。而当前词的窗口大小为上下200字时,分布式词向量的语义特征表示的准确度为最高。因此,本发明实施例中,将当前词的语义关系的窗口设为上下200字,分布式词向量的向量维度设为30向量,如此,能够提高分布式词向量的语义特征表示的准确度。
当所述装置根据当前词的语义窗口确定当前词的向量表示为准确时,再根据分布式词向量中各词的特征数据,对分布式词向量进行加权平均计算,得到所述待分析数据的完整数据向量,并将完整数据向量映射至隐藏层。具体由上下文预测下一个词为w_t的公式如下:
p(w_t|context)=p(w_t|w_(t-i),w_(t-i+1),…,w_(t-1),w_(t+1),…,w_(t+i-1), w_(t+i))
其中,CBOW的计算可以用层次Softmax算法,这种算法结合了Huffman 编码,每个词w都可以从树的根结点root沿着唯一一条路径被访问到,其路径也就形成了其编码code。假设n(w,j)为这条路径上的第j个结点,且L(w)为这条路径的长度,j从1开始编码,即n(w,1)=root,n(w,L(w))=w。对于第j个结点,层次Softmax定义的Label为1-code[j]。
取一个适当大小的窗口当作语境,输入层读入窗口内的词,将它们的向量 (K维,初始随机)加和在一起,形成隐藏层K个节点。输出层是一个巨大的二叉树,叶节点代表语料里所有的词(语料含有V个独立的词,则二叉树有|V| 个叶节点)。而这整颗二叉树构建的算法就是Huffman树。这样,对于叶节点的每一个词,就会有一个全局唯一的编码,形如"010011",不妨记左子树为1,右子树为0。接下来,隐层的每一个节点都会跟二叉树的内节点有连边,于是对于二叉树的每一个内节点都会有K条连边,每条边上也会有权值。
对于语料库中的某个词w_t,对应着二叉树的某个叶子节点,因此必然有一个二进制编码,如"010011"。在训练阶段,当给定上下文,要预测后面的词 w_t的时候,就从二叉树的根节点开始遍历,这里的目标就是预测这个词的二进制编号的每一位。即对于给定的上下文,目标是使得预测词的二进制编码概率最大。在根节点中,词向量与根节点相连经过logistic计算得到bit=1的概率尽量接近0,在第二层,其bit=1的概率接近1,然后再将计算得到的所有概率相乘,即得到目标词w_t在当前网络下的概率P(w_t),对于当前这个sample的残差就是1-P(w_t),于是就可以使用梯度下降法训练这个网络得到所有的参数值了。显而易见,按照目标词的二进制编码计算到最后的概率值就是归一化的。
skip-gram模型与CBOW模型不同,skip-gram则是通过当前词特征映射预测上下文周围词向量。其思想是获取语料库各词向量,将获取到的词向量输入至投影层线性分类器,通过训练词向量预测各词定长窗口内的周围词分布,使得相似语境下各词的上下文词条件概率最大化,将上下文各词的概率连乘,选取概率高于某阈值的最大语句,确定最大语句中最大化词与语境间对应的关系,得出该语境下各词的向量,表示该词相关的语义联系。具体基于Word2Vec词向量表示的词特征数据间相近系数如图3所示。
图3为本发明实施例中基于Word2Vec词向量表示的词特征数据间相的系数的示意图;如图3所示:
例如,抽取待分析数据中涉及到的人物(小白)和情感词(不喜欢)分别进行聚类表示,发现基于分布式词向量表示的词特征与受语义词影响较大,而自身特征表示却不明显,如情感词(不喜欢)偏向于贬义词,而采用常规的特征表示却会将带有情感特征的相关词划为一类,其中夹杂大量明显褒义的词,如“喜欢”。
为了更准确地表示情感词的属性倾向且不脱离上下文语境,本发明实施例在对图书评论、主题内容进行精简表示的同时,结合分布式词向量中的各词的特征数据,例如,各词的词性、句法和情感等特征数据对所述分布式词向量进行加权计算。具体地,对于待分析数据中的名词+形容词,动词+形容词,名词 +动词+形容词等主干组合词以及相应的连词、副词分别乘以相应的权值,而其中带有情感色彩的动词、形容词等则通过正负情感词库识别其情感倾向,并使用1,0,-1对各类情感词进行词性标注,作为词向量的特征列,最后待评论语句通过对分布式词向量中的各词进行加权后再进行向量表示,具体如下:
①评论句:c={w1,w2,…wn}由各词组成的集合,识别各词的词性与依存关系。如书评示例{不错情节的错落与安排以及人物的刻画也比较细腻比较接地气使人读了感觉蛮感兴趣的有看下去的兴趣},对应的词性与依存关系为 {a/ATT,n/ATT,u/RAD,v/ATT,c/LAD,v/COO,c/LAD,n/COO,u/RAD,v/SBV,d/ADV,d/ ADV,a/ATT,d/ADV,v/ATT,n/ATT,n/SBV,v/HED,u/RAD,n/SBV,d/ADV,v/SBV,n/VO B,u/RAD,v/COO,v/ATT,v/CMP,u/RAD,n/VOB}。
②主干词与情感词的权值计算。对于①评论句中修饰关系(ATT)、主谓关系(SBV)、并列关系(COO)、动宾关系(VOB)等所涉及到的主干词乘以权值2,即符合ATT、COO、SBV、VOB等句法关系的词,如“不错”“情节”“安排”“感兴趣”等,对于连词及副词等修饰词乘以权值1.5或2,对于各词正负情感倾向判断标注特征值,如“不错”、“细腻”“感兴趣”等褒义词特征属性值为1,“垃圾”“难看”等贬义词特征属性值为-1,其它未明显倾向的词则标为0,各词的倾向值则作为情感维度加入原有的词向量列。这里,具体的权值大小可根据实际需要进行调整。
③根据所得的词向量表示评论句向量。将每条评论包含的n个词向量加权平均,即通过公式(Vec(c)=1/nΣvec(w)),得到每条评论的完整数据向量。
步骤105,根据学习模型对所述完整数据向量进行分类计算,得到用于确定所述待分析数据的情感属性。
这里,可以根据SVM对所述完整数据向量进行分类计算。具体地,所述 SVM是一个有监督的学习模型,通常用来解决向量二分类问题基于结构风险最小和VC维(Vapnik-Chervonenkis Dimension)理论提出的分类方法,是针对线性可分情况进行分析,对于线性不可分的情况,通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能。其中,线性问题可通过拉格朗日及引入松弛变量对偶求解方法求最优分类超平面,当距离超平面最近的各类别间隔为最大值时,超平面最优。非线性分类可通过训练非线性样本引入核函数将其映射至高维或无限维向量空间转为线性可分,构造分类超平面,将非线性问题转为线性最优解的问题。非线性映射主要采用 Mercer定理核函数,所述Mercer定理是指:任何半正定的函数都可以作为核函数。包括:线性核函数、多项式核函数、Sigmoid核函数、高斯径向基核函数和复合核函数。具体Mercer定理核函数见公式:核函数的最优函数公式为:f(x)=sgn(∑lambdai*ykk(x,xk)+b*),其中,阶跃函数(sgn())为正负符号函数,ai*为分离平面最优解,b*为分类距离界定的阈值。
在本发明实施例中,所述根据学习模型对所述完整数据向量进行分类计算,包括:
将所述完整数据向量转换成SVM格式文件,并对所述SVM格式文件进行标准化处理,得到用于进行交叉验证的SVM参数;
在所述SVM参数中选择RBF和第一参数、第二参数进行交叉验证,得到用于在训练语料中获取SVM模型的第一最佳参数和第二最佳参数;
根据所述第一最佳参数和所述第二最佳参数确定出的SVM模型对所述完整数据向量进行分类计算。
这里,所述装置将得到的完整数据向量转换成SVM格式的数据后,根据 SVM参数确定核函数的类型以及第一参数C和第二参数G。本发明实施例中默认为RBF核函数。然后,根据确定的RBF核函数和第一参数C和第二参数G 进行交叉验证,确定出用于在训练语料中获取SVM模型的第一最佳参数c和第二最佳参数g。这里,以小写c和小写g代表最佳参数C和最佳参数G。
具体地Svmtrain(训练建模)的用法为:svmtrain[options]training_set_file[model_file];
Options:可用的选项即表示的涵义如下:
-s svm类型:SVM设置类型(默认0);
0--C-SVC;
1--v-SVC;
2–一类SVM;
3--e–SVR;
4--v-SVR;
-t核函数类型:核函数设置类型(默认2);
0–线性:u'v;
1–多项式:(r*u'v+coef0)^degree;
2–RBF函数:exp(-r|u-v|^2);
3–sigmoid:tanh(r*u'v+coef0);
-ddegree:核函数中的degree设置(针对多项式核函数)(默认3);
-gr(gama):核函数中的gamma函数设置(针对多项式/rbf/sigmoid核函数) (默认1/k);
-rcoef0:核函数中的coef0设置(针对多项式/sigmoid核函数)((默认0);
-ccost:设置C-SVC,e-SVR和v-SVR的参数(损失函数)(默认1);
-nnu:设置v-SVC,一类SVM和v-SVR的参数(默认0.5);
-pp:设置e-SVR中损失函数p的值(默认0.1);
-mcachesize:设置cache内存大小,以MB为单位(默认40);
-eeps:设置允许的终止判据(默认0.001);
-hshrinking:是否使用启发式,0或1(默认1);
-wiweight:设置第几类的参数C为weight*C(C-SVC中的C)(默认1);
-vn:n-fold交互检验模式,n为fold的个数,必须大于等于2。
其中-g选项中的k是指输入数据中的属性数。option-v随机地将数据剖分为n部分并计算交互检验准确度和均方根误差。以上这些参数设置可以按照 SVM的类型和核函数所支持的参数进行任意组合,如果设置的参数在函数或 SVM类型中没有也不会产生影响,程序不会接受该参数;如果应有的参数设置不正确,参数将采用默认值。
training_set_file是要进行训练的数据集;model_file是训练结束后产生的模型文件,文件中包括支持向量样本数、支持向量样本以及lagrange系数等必须的参数;该参数如果不设置将采用默认的文件名,也可以设置成自己惯用的文件名。
在本发明实施例中,所述得到用于确定所述待分析数据的情感属性,包括:
根据所述学习模型确定所述待分析数据的情感属性的分类概率,
根据所述分类概率得到所述待分析数据的情感属性的分值;
根据所述分值确定所述待分析数据的情感属性。
具体地,所述装置根据所述第一最佳参数c和所述第二最佳参数g对SVM 模型进行概率估计设定,输出所述待分析数据中各评论C的分类结果概率,即所述待分析数据属于好评评论的概率P(G|C)与属于差评评论的概率P(B|C),基于两个分类概率进行加权计算后,确定所述待分析数据的属性分值,具体公式如下:
在本发明实施例中,针对每一条图书评论均可以通过上述公式计算得到一个属性分值,该属性分值的取值范围为[1,200],其中,评论的分值越高,代表该评论属于好评的程度越高。通常,可以将分值在[1,100]范围内的评论确定为差评,将分值在[100,200]范围内的评论确定为好评。
在本发明实施例中,基于SVM对待分析数据进行好评训练与测试的具体步骤为:
(1)在训练语料中选取待评论数,例如选取25132条评论,其中11505条为正向评论,13627条为负向评论,并基于分布式词向量对所述待评论数进行加权计算后得到所述待评论数中每条完整评论向量,再将完整评论向量转换成SVM格式文件并进行Scale标准化。具体选取的语料情况如下:
正向评论样本:
负向评论样本:
将完整评论向量转换成SVM格式文件并进行Scale标准化后的Scale文件为:
(2)SVM参数模型优化
通过参数选择及语料不断地训练,选择最佳参数进行模型拟合,同时,经过测试拟合进行效果比较。
图4为本发明实施例中基于SVM训练拟合模型的示意图;如图4所示,包括横向数值“Log2(C)”和纵向数值“Log2(gamma)”,其中不同线条分别代表数值“Log2(C)”和数值“Log2(gamma)”在不同数值的情况下输出分类概率值的准确度。由图4可知,当数值“Log2(C)”中设定C=0.5,数值“Log2 (gamma)”中设定gamma=2,并同时加载模型时,输出的分类概率值的准确度最高。
具体通过SVM对待分析数据进行训练生成的模型文件如下:
(3)通过加载SVM模型,对随机选择的3040条评论进行好评分类,结果如下:
测试结果:
……………………………··
Total:3040Correct:2812Accuracy:92.5%
Precion:91.25%
Recall:95.3%
F:93.23103%
根据上述测试结果得知,通过各词加权标注相对于人工标注的结果,本申请输出的分类概率值的准确度为92.5%(本申请的评论结果与人工标注结果的交集与总评论数的比值),F值为93.23%,后期由于词模型有限,及不同处理样本数据特征的差异,语料模型限制等,分类概率值的准确率会有稍微波动。
本发明实施例与现有技术中采用贝叶斯算法相比,采用结合语境的语义词向量特征WORD2VEC表示,通过词向量加权表示整条评论向量,再基于SVM 模型对整条评论向量进行评论好差的分类训练,可以提高对图书评论进行分析的效率和准确度。例如,在处理数据量为790895的评论数据时,贝叶斯算法需10.5个小时,而本申请中的算法仅需3分,本申请相比现有技术,处理数据的效率提升了200多倍,同时,贝叶斯算法分类的准确度优化后最高达75.02%,而本申请中的算法可达92.5%,本申请相比现有技术,数据处理的精度明显提升约17%。
在本发明实施例中,在所述对所述待分析数据进行分词处理之前,所述方法还包括:
对所述待分析数据进行噪声过滤与重复评论去重,得到第一待分析数据;
对所述第一待分析数据进行分词处理,得到所述分词特征数据。
这里,主要是对所述待分析数据中的噪声如邮箱、超链接、无意义符号、重复的标点利用正则表达式进行过滤,保留有意义的汉字、英文及数字,对重复的评论进行标记,并只取其中一条进行处理,例如,待分析数据的评论为:“我们找不到任何符合"dreamlovenovel@gmail.com"的人物。。。。。。。。我来打个小广告这是写给十四夜和倾泠月的诗啦!!!!~~~~~~~这是网址: www.jjwxc.net/onebook.php?novelid=820331~~~~~~~~~~~”,则所述装置先将该评论中的邮箱、广告链接、无意义符号~~~~去除,并对标点。。。。!!!去重,得到精简后第一待分析数据。同时对所述第一待分析数据中的(汉语&英文&数字) 字数<1的评论去除,如评论为“+++++”去除,对评论如“666”等进行保留。这里,“+++++”表示无感情的符号,“666”表示具备感情含义的符号,例如,某一读者想对某一图书进行评论,表示该图书写的很好,但为了节省打字时间和空间,以评论为“666”代替,此时,该符号的意思为称赞该图书写的很好,即为“牛牛牛”的谐音。
当所述装置在得到精简后的第一待分析数据后,再对所述第一待分析数据进行分词处理,得到所述分词特征数据。
在本发明实施例中,在所述得到分词特征数据之后,所述方法还包括:
对所述分词特征数据进行重复词或重复字去重,得到第一分词特征数据;
将所述第一分词特征数据生成所述分布式词向量。
这里,所述装置在得到所述待分析数据的分词特征数据后,对该分词特征数据中的评论语句词分布及长词字分布进行多样性统计,然后对于不重复词数/ 总词数<0.2丰富度低的评论进行重复词去重,同时对长词内重复的字或词去重,如“哈哈哈哈哈哈哈哈哈哈哈哈”或“谢谢谢谢谢谢”等,去除后得到单个词的“哈”或单个词“谢”。通过以上过滤去重去噪得到精简后的第一分词特征数据,并将所述第一分词特征数据用所述分布式词向量表示。
图5为本发明实施例中对待分析数据进行预处理的方法流程示意图;如图 5所示:
步骤501,噪声过滤;
这里是指:对待分析数据中的邮箱、超链接、无意义符号、重复的标点利用正则表达式进行过滤,保留有意义的汉字、英文及数字。
步骤502,重复标记;
这里是指:将待分析数据中重复的评论进行标记,只取其中一条数据进行后续处理。
步骤503,评论分词;
这里是指:采用Ansj工具中的CRF模型对待分析数据进行分词处理。具体地,对所述待分析数据进行自定义词典加载,并对所述待分析数据的部分自定义歧义词组与停用词有监督地进行最大长度的词划分,并通过HMM模型对所分词进行词性标注。
步骤504,词分布及长词字分布统计;
这里是指,在得到所述待分析数据的分词特征数据后,对所述分词特征数据中的词分布及长词字分布进行统计。
步骤505.,评论词去重;
这里是指,对进行词分布统计后的分词特征数据中,不重复词数/总词数<0.2 丰富度低的评论进行重复词去重。
步骤506,长词字去重;
这里是指,对进行长词字分布统计后的分词特征数据中,重复的字或词进行去重。
步骤507,得到精简后的待分析数据。
图6为本发明实施例一种情感数据的分析装置的结构组成示意图;如图6 所示,所述装置包括:数据获取单元601、分词处理单元602、数据生成单元 603、第一计算单元604和第二计算单元605;其中,
所述数据获取单元601,用于获取待分析数据;
所述分词处理单元602,用于对所述数据获取单元601获取的所述待分析数据进行分词处理,得到分词特征数据;
所述数据生成单元603,用于将所述分词处理单元602得到的所述分词特征数据生成用于确定所述分词特征数据中各词之间语义关系的分布式词向量;
所述第一计算单元604,用于根据所述数据生成单元603生成的所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量;
所述第二计算单元605,用于根据学习模型对所述第一计算单元604得到的所述完整数据向量进行分类计算,得到用于确定所述待分析数据的情感属性。
这里,所述数据获取单元601获取到待分析数据后,触发所述分词处理单元602,由所述分词处理单元602采用分词工具对所述数据获取单元601获取到的所述待分析数据进行分词处理。具体,所述分词处理单元602采用Ansj 分词工具中的CRF模型对所述待分析数据进行自定义词典加载,对所述待分析数据中部分自定义歧义词组与停用词有监督地进行最大长度的词划分,以得到分词特征数据,并通过HMM对得到的所述分词特征数据进行词性标注,得到所述待分析数据的分词特征数据。并由所述分词处理单元602触发所述数据生成单元603,由所述数据生成单元603将所述分词特征数据生成使用Word2vec 词向量表示的数据。由于Word2vec是利用深度文本表示模型以深度学习为基础,通过训练把对文本内容的处理简化为K维向量空间中的向量运算(K一般为模型中的超参数),而向量空间上的相似度可以用来表示文本语义上的相似度。所以,Word2vec输出的词向量可以被用来做很多NLP的相关工作,比如聚类、找同义词、词性分析等等。或者,利用神经网络将词作为特征,Word2vec就可以把特征映射到K维向量空间(K一般为模型中的超参数),通过词之间的距离(比如cosine相似度、欧氏距离等)来判断它们之间的语义相似度。
Word2vec具体采用输入层-隐层-输出层的三层神经网络,对文本词进行 HuffmanCoding建模后,使得所有词频相似的词和隐藏层激活的内容基本一致,同时将每个词在层次Huffman树结构上进行多种编码求和,深度表示该词内包含的不同语义。如此能够使得出现频率越高的词语,激活的隐藏层数目越少,有效的降低了计算复杂度。
所述数据生成单元603将所述分词特征数据生成所述分布式词向量后,触发所述第一计算单元604,由所述第一计算单元604根据所述分布式词向量中当前词的语义窗口确定当前词的向量表示为准确时,再根据分布式词向量中各词的特征数据,对分布式词向量进行加权平均计算,得到所述待分析数据的完整数据向量,并将完整数据向量映射至隐藏层。具体地,为了更准确地表示情感词的属性倾向且不脱离上下文语境,本发明实施例在对图书评论、主题内容进行精简表示的同时,结合分布式词向量中的各词的特征数据,例如,各词的词性、句法和情感等特征数据对所述分布式词向量进行加权计算。具体地,对于待分析数据中的名词+形容词,动词+形容词,名词+动词+形容词等主干组合词以及相应的连词、副词分别乘以相应的权值,而其中带有情感色彩的动词、形容词等则通过正负情感词库识别其情感倾向,并使用1,0,-1对各类情感词进行词性标注,作为词向量的特征列,最后待评论语句通过对分布式词向量中的各词进行加权后再进行向量表示,具体如下:
①评论句:c={w1,w2,…wn}由各词组成的集合,识别各词的词性与依存关系。如书评示例{不错情节的错落与安排以及人物的刻画也比较细腻比较接地气使人读了感觉蛮感兴趣的有看下去的兴趣},对应的词性与依存关系为 {a/ATT,n/ATT,u/RAD,v/ATT,c/LAD,v/COO,c/LAD,n/COO,u/RAD,v/SBV,d/ADV,d/ ADV,a/ATT,d/ADV,v/ATT,n/ATT,n/SBV,v/HED,u/RAD,n/SBV,d/ADV,v/SBV,n/VO B,u/RAD,v/COO,v/ATT,v/CMP,u/RAD,n/VOB}。
②主干词与情感词的权值计算。对于上述评论句中修饰关系(ATT)、主谓关系(SBV)、并列关系(COO)、动宾关系(VOB)等所涉及到的主干词乘以权值2,即符合ATT、COO、SBV、VOB等句法关系的词,如“不错”“情节”“安排”“感兴趣”等,对于连词及副词等修饰词乘以权值1.5或2,对于各词正负情感倾向判断并标注特征值,如“不错”、“细腻”“感兴趣”等褒义词特征属性值为1,“垃圾”“难看”等贬义词特征属性值为-1,其它未明显倾向的词则标为0,各词的倾向值则作为情感维度加入原有的词向量列。这里,具体的权值大小可根据实际需要进行调整。
③根据所得的词向量表示评论句向量。将每条评论包含的n个词向量进行加权平均,通过公式(Vec(c)=1/nΣvec(w)),得到每条评论向量。
在本发明实施例中,所述第一计算单元604,具体用于根据所述数据生成单元603生成的所述分布式词向量确定各词之间的词窗口大小数据和词向量维度数据;根据所述词窗口大小数据和所述词向量维度数据,确定所述待分析数据的语义关系词向量;根据所述语义关系词向量中各词的特征数据,对所述语义关系词向量进行加权平均计算,得到所述待分析数据的完整数据向量。
这里,当所述第一计算单元604根据所述数据生成单元603生成的所述分布式词向量确定各词之间的词窗口大小为200,分布式词向量的向量维度设为 30向量时,再根据分布式词向量中各词的特征数据,对分布式词向量进行加权平均计算,得到所述待分析数据的完整数据向量,并将完整数据向量映射至隐藏层。
之后所述第一计算单元604触发所述第二计算单元605,并由所述第二计算单元605根据SVM对所述完整数据向量进行分类计算。具体地,所述SVM 是一个有监督的学习模型,通常用来解决向量二分类问题基于结构风险最小和 VC维理论提出的分类方法,是针对线性可分情况进行分析,对于线性不可分的情况,通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能。其中,线性问题可通过拉格朗日及引入松弛变量对偶求解方法求最优分类超平面,当距离超平面最近的各类别间隔为最大值时,超平面最优。非线性分类可通过训练非线性样本引入核函数将其映射至高维或无限维向量空间转为线性可分,构造分类超平面,将非线性问题转为线性最优解的问题。非线性映射主要采用Mercer定理核函数,所述Mercer定理是指:任何半正定的函数都可以作为核函数。包括:线性核函数、多项式核函数、 Sigmoid核函数、高斯径向基核函数和复合核函数。具体Mercer定理核函数见公式:核函数的最优函数公式为: f(x)=sgn(∑lambdai*ykk(x,xk)+b*),其中,阶跃函数(sgn())为正负符号函数, ai*为分离平面最优解,b*为分类距离界定的阈值。
在本发明实施例中,所述第二计算单元605,具体用于将所述第一计算单元604得到的所述完整数据向量转换成SVM格式文件,对所述SVM格式文件进行标准化处理,得到用于进行交叉验证的SVM参数;在所述SVM参数中选择RBF核函数和第一参数、第二参数进行交叉验证,得到用于在训练语料中获取SVM模型的第一最佳参数和第二最佳参数;根据所述第一最佳参数和所述第二最佳参数确定出的SVM模型对所述完整数据向量进行分类计算。
这里,所述第二计算单元605将得到的完整数据向量转换成SVM格式的数据后,根据SVM参数确定核函数的类型以及第一参数C和第二参数G。本发明实施例中默认为RBF核函数。然后,根据确定的RBF核函数和第一参数C 和第二参数G进行交叉验证,确定出用于在训练语料中获取SVM模型的第一最佳参数c和第二最佳参数g。这里,以小写c和小写g代表最佳参数C和最佳参数G。具体SVM参数设置参照方法实施中的描述。
在本发明实施例中,所述第二计算单元,具体还用于根据所述学习模型确定所述待分析数据的情感属性的分类概率,根据所述分类概率得到所述待分析数据的情感属性的分值;根据所述分值确定所述待分析数据的情感属性。
具体地,所述第二计算单元605根据所述第一最佳参数c和所述第二最佳参数g对SVM模型进行概率估计设定,输出待分析数据中各评论C的分类结果概率,即所述待分析数据属于好评评论的概率P(G|C)与属于差评评论的概率P(B|C),基于两个分类概率进行加权计算后,确定所述待分析数据的属性分值,具体公式如下:
在本发明实施例中,针对每一条图书评论均可以通过上述公式计算得到一个分值,该分值的取值范围[1,200],其中,评论的分值越高,代表该评论属于好评的程度越高。通常,可以将分值在[1,100]范围内的评论确定为差评,将分值在[100,200]范围内的评论确定为好评。
在本发明实施例中,所述装置还包括:第一处理单元606,用于对所述数据获取单元601获取的所述待分析数据进行噪声过滤与重复评论去重,得到第一待分析数据;
所述分词处理单元602,具体用于对所述第一处理单元606得到的所述第一待分析数据进行分词处理,得到所述分词特征数据。
这里,所述第一处理单元606主要用于对所述待分析数据中的噪声如邮箱、超链接、无意义符号、重复的标点利用正则表达式进行过滤,保留有意义的汉字、英文及数字,重复的评论进行标记只取其中一条进行处理,例如,待分析数据的评论为:“我们找不到任何符合"dreamlovenovel@gmail.com"的人物。。。。。。。。我来打个小广告这是写给十四夜和倾泠月的诗啦!!!!~~~~~~~这是网址:www.jjwxc.net/onebook.php?novelid=820331~~~~~~~~~~~”,则所述装置先将该评论中的邮箱、广告链接、无意义符号~~~~去除,并对标点。。。。!!!去重,得到精简后第一待分析数据。同时对所述第一待分析数据中的(汉语& 英文&数字)字数<1的评论去除,如评论为“+++++”去除,对评论如“666”等进行保留。这里,“+++++”表示无感情的符号,“666”表示具备感情含义的符号,例如,某一读者想对某一图书进行评论,表示该图书写的很好,但为了节省打字时间和空间,以评论为“666”代替,此时,该符号的意思为称赞该图书写的很好,即为“牛牛牛”的谐音。当所述第一处理单元606对所述待分析数据进行处理过滤得到精简后的第一待分析数据后,再由所述分词处理单元 602对所述第一待分析数据进行分词处理。
在本发明实施例中,所述装置还包括:第二处理单元607,用于对所述分词处理单元602得到的所述分词特征数据进行重复词或重复字去重,得到第一分词特征数据;
所述数据生成单元603,具体用于将所述第二处理单元607得到的所述第一分词特征数据生成所述分布式词向量。
这里,在所述分词处理单元602得到所述待分析数据的分词特征数据后,触发所述第二处理单元607,由所述第二处理单元607对所述分词特征数据中的评论语句词分布及长词字分布进行多样性统计,然后对于不重复词数/总词数 <0.2丰富度低的评论进行重复词去重,同时对长词内重复的字或词去重,如“哈哈哈哈哈哈哈哈哈哈哈哈”或“谢谢谢谢谢谢”等,去除后得到单个词的“哈”或单个词“谢”。通过以上过滤去重去噪得到精简后的第一分词特征数据,并触发所述数据生成单元603,由所述数据生成单元603对所述第一分词特征数据用所述分布式词向量表示。
本发明实施例与现有技术相比,充分考虑了图书评论中的内容长短不齐的情况,并采用结合评论内容的上下文语义关系的分布式词向量特征,进行加权计算得到整条评论向量后,基于SVM算法对得到的整条评论向量进行分析训练,确定该评论的情感属性,如此,大大提高了图书评论中的情感属性分析效率以及分析结果的准确性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装所设置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (12)
1.一种情感数据的分析方法,其特征在于,所述方法包括:
获取待分析数据;
采用Ansj工具中的条件随机场算法CRF模型对所述待分析数据进行分词处理,得到分词特征数据;
将所述分词特征数据生成用于确定所述分词特征数据中各词之间语义关系的分布式词向量;
根据所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量;具体包括:确定各词之间的词窗口大小数据为上下200字,词向量维度数据为30向量;根据所述词窗口大小数据和所述词向量维度数据,确定所述待分析数据的语义关系词向量;识别所述语义关系词向量中各词的词性与依存关系;对于其中的主干词与修饰词分别乘以相应的权值;对于情感词通过正负情感词库识别其情感倾向,并使用1,0,-1对各类情感词进行词性标注,作为词向量的特征列;通过对分布式词向量中的各词进行加权后再进行向量表示;
根据学习模型对所述完整数据向量进行分类计算,得到用于确定所述待分析数据的情感属性。
2.根据权利要求1所述的方法,其特征在于,在对所述待分析数据进行分词处理之前,所述方法还包括:
对所述待分析数据进行噪声过滤与重复评论去重,得到第一待分析数据;
对所述第一待分析数据进行分词处理,得到所述分词特征数据。
3.根据权利要求2所述的方法,其特征在于,在得到所述分词特征数据之后,所述方法还包括:
对所述分词特征数据进行重复词或重复字去重,得到第一分词特征数据;
将所述第一分词特征数据生成所述分布式词向量。
4.根据权利要求1所述的方法,其特征在于,根据所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量,包括:
根据所述分布式词向量确定各词之间的词窗口大小数据和词向量维度数据;
根据所述词窗口大小数据和所述词向量维度数据,确定所述待分析数据的语义关系词向量;
根据所述语义关系词向量中各词的特征数据,对所述语义关系词向量进行加权平均计算,得到所述待分析数据的完整数据向量。
5.根据权利要求1所述的方法,其特征在于,所述根据学习模型对所述完整数据向量进行分类计算,包括:
将所述完整数据向量转换成支持向量机SVM格式文件,并对所述SVM格式文件进行标准化处理,得到用于进行交叉验证的SVM参数;
在所述SVM参数中选择径向基核函数RBF和第一参数、第二参数进行交叉验证,得到用于在训练语料中获取SVM模型的第一最佳参数和第二最佳参数;
根据所述第一最佳参数和所述第二最佳参数确定出的SVM模型对所述完整数据向量进行分类计算。
6.根据权利要求1所述的方法,其特征在于,所述得到用于确定所述待分析数据的情感属性,包括:
根据所述学习模型确定所述待分析数据的情感属性的分类概率,
根据所述分类概率得到所述待分析数据的情感属性的分值;
根据所述分值确定所述待分析数据的情感属性。
7.一种情感数据的分析装置,其特征在于,所述装置包括:数据获取单元、分词处理单元、数据生成单元、第一计算单元和第二计算单元;其中,
所述数据获取单元,用于获取待分析数据;
所述分词处理单元,用于采用Ansj工具中的条件随机场算法CRF模型对所述数据获取单元获取的所述待分析数据进行分词处理,得到分词特征数据;
所述数据生成单元,用于将所述分词处理单元得到的所述分词特征数据生成用于确定所述分词特征数据中各词之间语义关系的分布式词向量;
所述第一计算单元,用于根据所述数据生成单元生成的所述分布式词向量中各词的特征数据,得到所述待分析数据的完整数据向量;具体用于:确定各词之间的词窗口大小数据为上下200字,词向量维度数据为30向量;根据所述词窗口大小数据和所述词向量维度数据,确定所述待分析数据的语义关系词向量;识别所述语义关系词向量中各词的词性与依存关系;对于其中的主干词与修饰词分别乘以相应的权值;对于情感词通过正负情感词库识别其情感倾向,并使用1,0,-1对各类情感词进行词性标注,作为词向量的特征列;通过对分布式词向量中的各词进行加权后再进行向量表示;
所述第二计算单元,用于根据学习模型对所述第一计算单元得到的所述完整数据向量进行分类计算,得到用于确定所述待分析数据的情感属性。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第一处理单元,用于对所述数据获取单元获取的所述待分析数据进行噪声过滤与重复评论去重,得到第一待分析数据;
所述分词处理单元,具体用于对所述第一处理单元得到的所述第一待分析数据进行分词处理,得到所述分词特征数据。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第二处理单元,用于对所述分词处理单元得到的所述分词特征数据进行重复词或重复字去重,得到第一分词特征数据;
所述数据生成单元,具体用于将所述第二处理单元得到的所述第一分词特征数据生成所述分布式词向量。
10.根据权利要求7所述的装置,其特征在于,所述第一计算单元,具体用于根据所述数据生成单元生成的所述分布式词向量确定各词之间的词窗口大小数据和词向量维度数据;根据所述词窗口大小数据和所述词向量维度数据,确定所述待分析数据的语义关系词向量;根据所述语义关系词向量中各词的特征数据,对所述语义关系词向量进行加权平均计算,得到所述待分析数据的完整数据向量。
11.根据权利要求7所述的装置,其特征在于,所述第二计算单元,具体用于将所述第一计算单元得到的所述完整数据向量转换成SVM格式文件,对所述SVM格式文件进行标准化处理,得到用于进行交叉验证的SVM参数;在所述SVM参数中选择RBF和第一参数、第二参数进行交叉验证,得到用于在训练语料中获取SVM模型的第一最佳参数和第二最佳参数;根据所述第一最佳参数和所述第二最佳参数确定出的SVM模型对所述完整数据向量进行分类计算。
12.根据权利要求7所述的装置,其特征在于,所述第二计算单元,具体还用于根据所述学习模型确定所述待分析数据的情感属性的分类概率,根据所述分类概率得到所述待分析数据的情感属性的分值;根据所述分值确定所述待分析数据的情感属性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710162111.6A CN107229610B (zh) | 2017-03-17 | 2017-03-17 | 一种情感数据的分析方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710162111.6A CN107229610B (zh) | 2017-03-17 | 2017-03-17 | 一种情感数据的分析方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107229610A CN107229610A (zh) | 2017-10-03 |
CN107229610B true CN107229610B (zh) | 2019-06-21 |
Family
ID=59933056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710162111.6A Active CN107229610B (zh) | 2017-03-17 | 2017-03-17 | 一种情感数据的分析方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107229610B (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107679144B (zh) * | 2017-09-25 | 2021-07-16 | 平安科技(深圳)有限公司 | 基于语义相似度的新闻语句聚类方法、装置及存储介质 |
CN107967258B (zh) * | 2017-11-23 | 2021-09-17 | 广州艾媒数聚信息咨询股份有限公司 | 文本信息的情感分析方法和系统 |
CN107943790A (zh) * | 2017-11-23 | 2018-04-20 | 中译语通科技股份有限公司 | 一种基于最大熵模型和tf‑idf特征的情感分析方法 |
CN107832304A (zh) * | 2017-11-23 | 2018-03-23 | 珠海金山网络游戏科技有限公司 | 一种基于消息文本判断用户性别的方法和系统 |
CN108108351B (zh) * | 2017-12-05 | 2020-05-22 | 华南理工大学 | 一种基于深度学习组合模型的文本情感分类方法 |
CN109933775B (zh) * | 2017-12-15 | 2022-02-18 | 腾讯科技(深圳)有限公司 | Ugc内容处理方法及装置 |
CN108133014B (zh) * | 2017-12-22 | 2022-03-22 | 广州数说故事信息科技有限公司 | 基于句法分析和聚类的三元组生成方法、装置及用户终端 |
CN110019809B (zh) * | 2018-01-02 | 2021-11-19 | 中国移动通信有限公司研究院 | 一种分类确定方法、装置及网络设备 |
CN108363699A (zh) * | 2018-03-21 | 2018-08-03 | 浙江大学城市学院 | 一种基于百度贴吧的网民学业情绪分析方法 |
CN108563731A (zh) * | 2018-04-08 | 2018-09-21 | 北京奇艺世纪科技有限公司 | 一种情感分类方法及装置 |
CN109002473B (zh) * | 2018-06-13 | 2022-02-11 | 天津大学 | 一种基于词向量与词性的情感分析方法 |
CN108875024B (zh) * | 2018-06-20 | 2020-10-20 | 清华大学深圳研究生院 | 文本分类方法、系统、可读存储介质及电子设备 |
CN112765442A (zh) * | 2018-06-25 | 2021-05-07 | 中译语通科技股份有限公司 | 基于新闻大数据的网络情绪波动指数监测分析方法及系统 |
CN109189919B (zh) * | 2018-07-27 | 2020-11-13 | 广州市香港科大霍英东研究院 | 文本多视角情感分类的方法、系统、终端及存储介质 |
CN109190118A (zh) * | 2018-08-16 | 2019-01-11 | 云南大学 | 基于流水线式神经网络的短语层次情感强度预测方法 |
CN109522544A (zh) * | 2018-09-27 | 2019-03-26 | 厦门快商通信息技术有限公司 | 基于卡方检验的句向量计算方法、文本分类方法及系统 |
CN109388801B (zh) * | 2018-09-30 | 2023-07-14 | 创新先进技术有限公司 | 相似词集合的确定方法、装置和电子设备 |
CN109726391B (zh) * | 2018-12-11 | 2024-01-09 | 中科恒运股份有限公司 | 对文本进行情感分类的方法、装置及终端 |
CN109829042B (zh) * | 2018-12-28 | 2021-04-20 | 北京科技大学 | 一种基于生物医学文献的知识问答系统及方法 |
CN109800307B (zh) * | 2019-01-18 | 2022-08-02 | 深圳壹账通智能科技有限公司 | 产品评价的分析方法、装置、计算机设备及存储介质 |
CN111597329B (zh) * | 2019-02-19 | 2023-09-19 | 新方正控股发展有限责任公司 | 一种基于多语种的情感分类方法及系统 |
CN109977414B (zh) * | 2019-04-01 | 2023-03-14 | 中科天玑数据科技股份有限公司 | 一种互联网金融平台用户评论主题分析系统及方法 |
CN112052306B (zh) * | 2019-06-06 | 2023-11-03 | 北京京东振世信息技术有限公司 | 识别数据的方法和装置 |
CN110609896B (zh) * | 2019-07-19 | 2022-03-22 | 中国人民解放军国防科技大学 | 基于二次解码的军事想定文本事件信息抽取方法及装置 |
CN111160022B (zh) * | 2019-12-10 | 2024-06-14 | 国网冀北电力有限公司 | 一种基于改进skip-gram模型的电网调度日志词向量提取方法 |
CN111563164B (zh) * | 2020-05-07 | 2022-06-28 | 成都信息工程大学 | 一种基于图神经网络的特定目标情感分类方法 |
CN111737456A (zh) * | 2020-05-15 | 2020-10-02 | 恩亿科(北京)数据科技有限公司 | 一种语料信息的处理方法和装置 |
CN111783427B (zh) * | 2020-06-30 | 2024-04-02 | 北京百度网讯科技有限公司 | 用于训练模型与输出信息的方法、装置、设备及存储介质 |
CN113591462A (zh) * | 2021-07-28 | 2021-11-02 | 咪咕数字传媒有限公司 | 弹幕回复生成方法、装置及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102033865A (zh) * | 2009-09-25 | 2011-04-27 | 日电(中国)有限公司 | 基于子句关联的文本情感分类系统和方法 |
CN102663046A (zh) * | 2012-03-29 | 2012-09-12 | 中国科学院自动化研究所 | 一种面向微博短文本的情感分析方法 |
CN105389379A (zh) * | 2015-11-20 | 2016-03-09 | 重庆邮电大学 | 一种基于文本分布式特征表示的垃圾稿件分类方法 |
CN105740349A (zh) * | 2016-01-25 | 2016-07-06 | 重庆邮电大学 | 一种结合Doc2vec和卷积神经网络的情感分类方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8589231B2 (en) * | 2010-01-28 | 2013-11-19 | Yahoo! Inc. | Sensitivity categorization of web pages |
CN103678278A (zh) * | 2013-12-16 | 2014-03-26 | 中国科学院计算机网络信息中心 | 一种中文文本情感识别方法 |
CN106055673B (zh) * | 2016-06-06 | 2019-09-13 | 中国人民解放军国防科学技术大学 | 一种基于文本特征嵌入的中文短文本情感分类方法 |
-
2017
- 2017-03-17 CN CN201710162111.6A patent/CN107229610B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102033865A (zh) * | 2009-09-25 | 2011-04-27 | 日电(中国)有限公司 | 基于子句关联的文本情感分类系统和方法 |
CN102663046A (zh) * | 2012-03-29 | 2012-09-12 | 中国科学院自动化研究所 | 一种面向微博短文本的情感分析方法 |
CN105389379A (zh) * | 2015-11-20 | 2016-03-09 | 重庆邮电大学 | 一种基于文本分布式特征表示的垃圾稿件分类方法 |
CN105740349A (zh) * | 2016-01-25 | 2016-07-06 | 重庆邮电大学 | 一种结合Doc2vec和卷积神经网络的情感分类方法 |
Non-Patent Citations (1)
Title |
---|
基于文档分布式表达的新浪微博情感分类研究;杨宇婷 等;《情报杂志》;20160229;第35卷(第2期);第151-156页 |
Also Published As
Publication number | Publication date |
---|---|
CN107229610A (zh) | 2017-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107229610B (zh) | 一种情感数据的分析方法及装置 | |
CN113011533B (zh) | 文本分类方法、装置、计算机设备和存储介质 | |
US9613024B1 (en) | System and methods for creating datasets representing words and objects | |
RU2665239C2 (ru) | Автоматическое извлечение именованных сущностей из текста | |
Kaur | Incorporating sentimental analysis into development of a hybrid classification model: A comprehensive study | |
CN114254653A (zh) | 一种科技项目文本语义抽取与表示分析方法 | |
CN113961685A (zh) | 信息抽取方法及装置 | |
Toshevska et al. | Comparative analysis of word embeddings for capturing word similarities | |
CN112667782A (zh) | 一种文本分类方法、装置、设备及存储介质 | |
CN115952292B (zh) | 多标签分类方法、装置及计算机可读介质 | |
CN112860896A (zh) | 语料泛化方法及用于工业领域的人机对话情感分析方法 | |
CN111507093A (zh) | 一种基于相似字典的文本攻击方法、装置及存储介质 | |
Chang et al. | A METHOD OF FINE-GRAINED SHORT TEXT SENTIMENT ANALYSIS BASED ON MACHINE LEARNING. | |
CN114997288A (zh) | 一种设计资源关联方法 | |
KR102376489B1 (ko) | 단어 랭킹 기반의 텍스트 문서 군집 및 주제 생성 장치 및 그 방법 | |
CN111930936A (zh) | 一种平台留言文本挖掘方法及系统 | |
CN115481219A (zh) | 一种基于语法序列嵌入模型的售电公司评价情感分类方法 | |
CN113486143A (zh) | 一种基于多层级文本表示及模型融合的用户画像生成方法 | |
CN117149955A (zh) | 一种保险条款咨询自动回答的方法、介质及系统 | |
CN115017260A (zh) | 一种基于子主题建模的关键词生成方法 | |
CN113590768B (zh) | 一种文本关联度模型的训练方法及装置、问答方法及装置 | |
CN113516202A (zh) | Cbl特征提取与去噪的网页精准分类方法 | |
CN114595324A (zh) | 电网业务数据分域的方法、装置、终端和非暂时性存储介质 | |
Liu et al. | Suggestion mining from online reviews usingrandom multimodel deep learning | |
CN114003706A (zh) | 关键词组合生成模型训练方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |