3.4 领域情感词典的构建
(1) 确定种子词集合。根据所选领域的特点, 制定
相应的选择标准, 抽取语料库中的词语作为种子词,
加入到种子词集合中;
(2) 确定候选情感词集合。首先将种子词转换成
对应的词向量, 根据相似度计算公式(向量的余弦计算
公式)求得与每个种子词最相似的n个词语作为候选情
感词集合;
(3) 利用训练好的情感分类器判断每个候选词的
情感极性。最后整合上述分类器输出的带有情感极性
的候选词语, 添加到面向特定领域的情感词典中。
4 实验及结果分析
为了验证该方法的有效性, 本文设计实验进行验
证, 主要验证以下两点假设:
假设 1: 本文提出以词向量训练分类器判断词语
情感极性的方法优于直接利用词向量的语义相似度判
断词语情感极性。
在情感分析领域, 大部分常规机器学习方法, 如
决策树、支持向量机等, 都能够构建分类器来判断词
语的情感极性。由于自然语言的特殊性(直接特征不足,
需要转换成词向量进行分析, 特征数即为词向量的维
度), 使得支持向量机的表现优于其他机器学习算法。
假设 2: 深度学习中, 神经网络训练的分类器在
判断词语情感极性任务中的性能优于支持向量机
(SVM)训练的分类器。
4.1 实验 1: 构建基于词向量的神经网络分类器
实验使用的语义知识库包括 NTUSD; 清华大学
李军情感词典; HowNet情感词典中的正负情感词语以
及 DUTIR。语料库的获取主要借助 Python 所编写的
爬虫程序, 采集 2017 年 4 月 19 日–2017 年 10 月 9 日
的新浪财经新闻, 共计 9 422 篇, 每篇新闻均以 txt 的
形式进行存储。
对语料库进行数据预处理(去停用词、去无关符
号)与分词(构建自定义词典: 将所有股票名称和股票
代码作为一个词典, 防止分词时被切分)。抽取融合词
典与语料库的交集词汇作为训练语料, 结果如表 2 所
示。最后以语料库为对象, 使用 Word2Vec 方法生成词
向量模型, 其中每个词向量的维度为 100。
表 2 词典中的词出现在语料库中的情况表
交集的积极词数量 交集的消极词数量 总计
3 128 2 850 5 978
基于准备好的训练语料, 按照实验设计方案构建
神经网络分类器。经过 6 700 次训练后, 得到训练集准
确度为 95.02%, 预测集准确度为 95.00%。显然, 模型
的效果良好, 并没有出现过拟合和欠拟合的现象。
接着确定种子词集合。由于本文重点不在于研究
种子词抽取规则, 因此不作深入探讨。通过信息检索,
参考相关论文及结合本文语料库, 选择 20个能够代表
金融领域的词汇作为种子词集合, 如表 3 所示。
表 3 金融领域种子词集合
金融领域种子词集合
大涨, 大跌, 股票, 平仓, 牛市, 熊市, 走高, 拉升, 雄起, 利好,
利空, 清仓, 套牢, 抄底, 反弹, 减持, 乏力, 退市, 撤离, 亏
词向量最大的特点是将语义信息用向量的形式进
行分布式表示。词向量之间的余弦值能够表示词语之
间的相关性程度。通常直接利用词向量构建情感词典
的方式为: 判断种子词的情感极性, 利用词向量找出
与种子词最相似的词语集合, 与积极种子词相似的词
语被认为是积极情感词, 与消极种子词相似的词语被
认为是消极情感词, 从而构建情感词典。本文对上述
种子词集合中的种子词的情感极性进行人工判断, 找
出与每个种子词最相似的词语(取相似度最高的前 10
个词语)。对金融语料的研究发现, 绝大部分金融领域
的情感词词性为形容词或者动词, 因此在取相似度最
高的词语的过程中加入词性过滤, 仅选择形容词和动
词, 最后对积极和消极的词语分别去重, 得到情感词
典(消极词语 61 个, 积极词语 41 个)。
笔者认为仅根据词向量的相似度判断词语情感极
性的判断并不准确。因为词向量仅仅保留语义信息,
而语义信息并不能代表情感信息, 存在情感极性相反
的词语在语义关系比较相似, 如“跌”显然表示消极情
1