舆情分析中自然语言处理的研究
2020-12-15杜芳
杜芳
【摘要】舆情来源于网页内容,对网页内容的理解程度,即对自然语言处理的能力,在一定程度上决定了对网络军事舆情分析的准确性及有效性。自然语言处理属于文本挖掘领域,随着人工智能的发展,自然语言处理成为人工智能与语言学领域的交叉学科,对该学科的研究有着重要的现实意义,包括文本分类、信息检索、智能摘要、机器翻译等行业,因此,大量的专家和学者均对该课题进行了深入的探索。
【关键词】自然语言处理;中文分词;词向量
自然语言处理通常包括了词向量,文本向量,文本压缩,模型预测四个方面。对自然语言进行处理,第一步是对文本进行词向量,词向量算法中,不仅要考虑词本身的准确识别,同时还应考虑语义距离,使得对单词的识别能够结合上下文语义。第二步是文本向量,大多数自然语言处理问题面对的不是单个词语,而是通篇的文章,根据词向量的结果,将整个文章编码为矩阵模型。第三步文本压缩,也称为注意力机制,将文本向量矩阵压缩为向量表示,即对高纬度信息进行降维。第四步为模型预测,将压缩好的文本向量輸入预测模型中,输出相应的预测标签。
一、中文分词
在自然语言处理,尤其是对舆情信息进行分析前,需要对大量的文本信息进行处理,文本信息主要是抽象的非结构化信息,对于人类来说非常容易理解,但是对于机器而言,很难结合句子上下文,对整个文本的意见进行识别,挖掘文本中的话题、事件及情感倾向。
(1)中文分词
中文分词的主要难点包括歧义消除和未录入词语,分词歧义的产生主要是由于分词粒度难以标准化产生的,具体的包括词语组合产生的歧义,单词共用产生的歧义。如对于“军事网络舆情”为例,粗粒度的划分可以直接识别出这个词语是“军事网络舆情”,细粒度划分可以识别为“军事”,“网络”,“舆情”三个词。中文分词在搜索引擎中属于很重要的一个科学分支,通常的做法是,为保证搜索的召回率,在构建索引时使用细粒度分词,为保证精度,在查询的时候使用粗粒度分词。
分词算法主要包括基于词典的分词和基于机器学习的分词,基于词典的使用了传统的基于字符串匹配的方法,以预先写好的正则表达式作为策略,将待分词的文本信息与一个类似词典的知识库进行匹配,若词典中包含了该词条,则识别为匹配,由于汉字固有特性,通常出现一个单词属于词典中多个单词的子集,出现一对多的关系,造成歧义,因此需要制定相关的匹配粒度,常使用的包括正向最大匹配法,在一些文章中也称之为最长词有限匹配法,双向匹配法等。随着机器学习和人工智能的兴起,单纯的使用正则匹配策略无法达到分词应有的准确率和召回率。现阶段,通常使用机器学习与词典算法相结合的方式,在保证精确度的前提下,提升领域适应性。
二、词向量
语言作为人类进化过程中总结、传承知识的载体,具有极高的抽象性,仅根据字面意义,机器几乎无法判定两个词语之间的关系,因此,如何对文本数据进行合理的划分,即特征工程,使得文本数据能够被神经网络等机器学习模型使用,变得尤为重要,常见的词向量模型包括独热表示和分布式表示。
单词的独热表示,是根据其英文含义one-hot representation翻译而来的,独热表示在处理结构化数据的过程中表现了优异的性能,将数据进行符号化,在用户推荐等领域占到了主导的地位[29]。设机器学习模型所有的输入集合为N,定义一个列向量,V=[P1,P2,P3,……,PN],其维度为N,且每个维度上的取值仅有0和1两种选项,每个位置均描述了输入的一种可能条件是否存在,如果存在,则置1,如果不存在,则为0,因此,为了描述单个节点的输入内容,任何时刻,一个列向量中只可能有一位为1。以“机器学习”,“军事”,“网络”,“舆情”,“分析”这五个词为例,其输入集合N=5,则器编码为:“分析”:[0,0,0,0,1]
当输入情况较多时,为了避免向量维度过高产生的不必要运算,使用Hash表为每个单词分配编号。这种表示方法在进行一般的二分类或多分类的过程中,极大地解决了计算机语言与实际情况之间的映射问题,如MINIST数据集中,对于手写数字的识别只可能为0到9中的一个,共计10中可能,使用独热编码完全可以满足要求,而面对文本识别的问题时,文本中的单词量非常大,以在“中华军事网”2018年3月1日发布的文章“中国空军发布歼-16宣传片,飞行画面披露”为例,其中共有498个字,使用中科院计算所的NLPIR的分词器得到了共计169个单词,为了能够描述这篇短文,需要构建169维的列向量对每个单词进行表示,随着文章的篇幅不断增加,这个数字会不断扩充,最终由于维度过大导致计算量过载。在自然语言处理方面,独热编码的缺点主要包括:一是使用独热编码表示自然语言维度过大,难以计算;二是任意词语之间是孤立的,无法结合上下文对语义进行分析,即无法解决词汇鸿沟问题。
通过分析独热编码的缺点,明确了在对自然语言进行处理时,单词向量化的目标包括纬度不能过大,否则会出现计算过载的问题,同时,需要不仅要刻画目标词本身的含义,还需要刻画其上下文的关系。根据Harris与1954年提出的分布假设,表明单个单词的语义需要由其上下文决定。其核心思想为:通过对语言进行训练,得出每个词的低纬向量表示,通常维度为50到100之间,这里所谈及的低纬度是相对于独热编码动辄成百上千维度而言的,可以得到一个向量空间,该语言所有的词语都可以在向量空间中进行定位,通过训练,可以得到空间点的距离,在对语义进行相似度判定是,可以引入空间距离,很好的结合了上下文。将单词映射到三维空间中,基于对已经人工标记文章的训练,可以通过模型将所有单词均映射在同一个三维空间中,亦可以得到其距离。根据建模方式的不同,将分布式表示分为基于矩阵的分布式表示、基于聚类的分布式表示和基于神经网络的分布式表示。
综上,词向量在自然语言处理中扮演着重要的角色,使用机器学习、深度学习等模型能够有效地对单词进行分词和向量化,为下一步的文本分析和话题识别提供适用于模型的优质数据。
参考文献:
[1]朱丹浩,杨蕾,王东波.基于深度学习的中文机构名识别研究一种汉字级别的循环神经网络方法[J].数据分析与知识发现,2017,32(12):36-43.
[2]牛耘,潘明慧,魏欧,等.基于词典的中文微博情绪识别[J].计算机科学,2014,41(9):253-258.