生若直木,不语斧凿.

读书报告-社会化情境下用户在线评论数据挖掘模型构建研究

Posted on By xiaoyongsheng
Email: xiaoyongsheng@hotmail.com
Views:

阅读文献:姜霖. 社会信息化情境下用户在线评论数据挖掘模型构建研究——以汽车行业负面观点评论自动抽取系统为例[J]. 情报科学, 2016 (8): 143-147 170.
关键词:观点评论挖掘


1. 引言

  • 观点评论的信息功能:
    1. 透露事物的自在信息,即事物自我显示的信息;
    2. 揭示事物的本质信息;
    3. 期待信息反馈;
  • 评论信息挖掘的研究意义:
    1. 从信息的角度:当今网络环境信息量巨大,在许多情况下尤其是博客和论坛当中,大量文本中仅有极少部分文字才是真正具有实际意义的;
    2. 从应用的角度:数据分析能力越强,对决策的支持能力就越强,负面评论的挖掘可以及时提供舆情预警,最大程度的减少损失;

2. 中文网络评论观点抽取现状

  • 对新闻报道的褒贬分类研究
    Tsou B K Y, Yuen R W M, Kwong O Y, et al. Polarity classification of celebrity coverage in the Chinese press[C]//Proceedings of International Conference on Intelligence Analysis. 2005.

  • BBS热门话题挖掘
    邱立坤, 龙志祎, 钟华, 等. 层次化话题发现与跟踪方法及系统实现[J]. 廣西師範大學學報 (自然科學版), 2007, 25(2): 157-160.
    邱立坤, 程葳, 龙志稀. 面向 BBS 的话题挖掘初探 [C][J]. 自然语言理解与大规模内容计算. 北京: 清华大学出版社, 2005: 401-407.

  • 汽车论坛评论挖掘系统
    姚天昉, 聂青阳, 李建超, 等. 一个用于汉语汽车评论的意见挖掘系统 [C][C]//中文信息处理前沿进展-中国中文信息学会二十五周年学术会议论文集. 北京: 清华大学出版社, 2006: 260-281.

作者研究的重点是:语义极性分析 和观点抽取;
本文的创新之处是:通过Google的graph propagation算法进行词极性分类;

3. 系统模型构建

数据来源:爬虫获取汽车论坛和新浪微博中有关汽车的用户评论;
技术:自然语言处理;
目标:构建汽车行业负面观点评论的自动抽取系统;

3.1 技术路线

  1. 采集数据:通过爬虫从新浪微博和汽车论坛获取数据并存储到数据库;
  2. 过滤信息:对数据库中的数据进行过滤,仅保留产品信息;
  3. 观点抽取:通过机器学习方法进行观点抽取,保留产品观点信息;
  4. 极性分类:采用graph propagation进行词极性分类;
  5. 可视化:根据以上负面信息进行可视化;

3.2 实施方法

3.2.1 数据的采集和过滤

  • 数据采集
    爬虫以汽车品牌和汽车型号作为关键词,获取15万条新浪微博信息、15万条汽车论坛信息;

  • 初步过滤
    抽取内容中含有汽车品牌名和汽车型号名的句子以减少噪声干扰;

  • 再次过滤
    采用朴素贝叶斯方法进行二元分类(广告和招聘等无关信息、产品有关信息),仅保留产品信息做分类;

3.2.2 观点抽取

  • 工具
    中文自然语言处理工具包:FudanNLP
    结构化句法分析工具:Stanford parser

  • 指代消解

    采用FudanNLP提供的中文指代消解接口进行指代消解,使句子的意义更加完整和清晰;

    好歹是SCI,作者发表的文章此处把FudanNLP写成了FundanNLP,这就尴尬了。。。

  • 句子切割

    根据汽车品牌名和型号以及标点符号,将长句切割为短句,并尽量保持句子原有句法结构;

    这里的句子切割,感觉模棱两可,并没有详细介绍,也未举例,可能需要笔者经历过NLP的项目才可以有一些直观的理解;

  • 特征评价抽取

    • 分词
      使用IKAnalyzer(一个很久没更新的中文分词器)进行分词

    • 名词替换
      Stanford parser中文处理有缺陷,所以为避免混乱,需要将句子中的汽车品牌名用CAR替换、型号名用TYPE替换、特征词用近似词表(每个评价特征会有一堆近似词,可以理解为映射表,每个特征会用一个独有代码表示)的代码编号来替换;

    • 句法分析
      调用Stanford parser的句法分析算法接口,将句子转换为句法树;

    • 信息抽取
      编写信息抽取程序,找到句法树中离特征词最近的形容词,就是对该特征的评价;

3.2.3 词极性分类

词极性分类:将评价词分为正极性和负极性并判断其趋向程度。本文采用图传播算法[9]进行词极性分类,并找出其中的负面信息。
图传播算法示例:

  • 训练文本集:文本集中的特征评价也是经过转换处理的。

    {“噪音”, “小”}
    {“噪音”, “大”}
    {“动力”, “大”}
    {“动力”, “还可以”}

  • 词共线性矩阵
  噪音 动力 小 大 还可以
噪音 0 0 1 1 0
动力 0 0 0 1 1
小 1 0 0 0 0
大 1 1 0 0 0
还可以 0 1 0 0 0
  • 词余弦相似度矩阵
  噪音 动力 小 大 还可以
噪音 1.000 0.500 0.000 0.000 0.000
动力 0.500 1.000 0.000 0.000 0.000
小 0.000 0.000 1.000 0.707 0.000
大 0.000 0.000 0.707 1.000 0.707
还可以 0.000 0.000 0.000 0.707 1.000
  • 图传播算法求极性

    小=0.35
    大=-0.20
    噪音=0.0
    还可以=-0.15
    动力=0.0

需要注意,每个评价指标所需的正负极性是不同的,比如:大,在噪音中,这就是负面词,但若是描述空间,那就是正极性,所以对不同的评价指标需要设置不同的正负极性词集。

据本人猜测,这里的graph propagation应该和page rank的算法类似,但也只是猜测,所以后续会根据Google发表的graph propagation的论文进行详细介绍,

3.3 可视化界面

建立web页面以供可视化;

4. 结语

本文主要研究了产品评论挖掘中的产品特征词抽取以及用户观点抽取和词极性分类技术,提出了基于统计的产品特征词抽取方法和基于句法关系的特征和观点关联对的抽取算法。
本文不足之处在于总体性能存在问题(归咎于Stanford parser中文词性辨识不准)和样本数量不足;

写在后面叫跋

这篇文章第一遍看的时候感觉,这什么水准,这么垃圾,前面虚头巴脑的把各个理论介绍了一遍,介绍那么详细,结果到了最后,最关键的一步连个图传播都描述不清,看了半天也没明白这什么意思,所以颇有一种虎头蛇尾的观感。

但是在写本文的时候,才算认真读了这篇文章,其实很明显作者的重点就是观点抽取和词极性分类,所以会用超多篇幅对这两步进行描述,图传播算法吸引了我过多的注意力(可能是因为它是Google发表的,所以感觉会很牛逼,也可能是因为这是最后一步,是文章收尾的地方)导致我忽视了前面一整套思路。现在理一下整个项目思路:

本来想用流程图来描述下整个项目流程,但是github flavored markdown并不支持flowchart,暂时没有找到合适的解决办法,所以只能用文字来体现。

  • 以品牌名和型号名称为关键词,使用 爬虫 获取评论数据;
  • 抽取包含关键词的句子;
  • 采用朴素贝叶斯方法做分类,过滤掉广告等垃圾信息;
  • 采用FudanNLP做 指代消解,使句子语义更完整清晰;
  • 按关键词和标点符号 将长句切割为短句,并努力保持句子原有句法;
  • 构建 近似词映射表 ,每个特征对应一个标准编码;
  • 使用IKAnalyzer做 分词 处理;
  • 采用 特征名词替换 来提升Stanford parser的中文处理性能;
  • 对每个句子进行如下操作:
    • 使用Stanford parser将句子转换为 句法树 ;
    • 找到距离特征词最近的形容词记为该 特征评价;
    • 采用图传播算法进行 词极性分类;
  • 统计分析可视化

参考文献

【1】姜霖. 社会信息化情境下用户在线评论数据挖掘模型构建研究——以汽车行业负面观点评论自动抽取系统为例[J]. 情报科学, 2016 (8): 143-147 170.
【2】Tsou B K Y, Yuen R W M, Kwong O Y, et al. Polarity classification of celebrity coverage in the Chinese press[C][J]//Proceedings of International Conference on Intelligence Analysis. 2005.
【3】邱立坤, 龙志祎, 钟华, 等. 层次化话题发现与跟踪方法及系统实现[J]. 廣西師範大學學報 (自然科學版), 2007, 25(2): 157-160.
【4】邱立坤, 程葳, 龙志稀. 面向 BBS 的话题挖掘初探 [C]. 自然语言理解与大规模内容计算. 北京: 清华大学出版社, 2005: 401-407.
【5】姚天昉, 聂青阳, 李建超, 等. 一个用于汉语汽车评论的意见挖掘系统 [C][C]//中文信息处理前沿进展-中国中文信息学会二十五周年学术会议论文集. 北京: 清华大学出版社, 2006: 260-281.
【6】https://github.com/FudanNLP/fnlp
【7】https://nlp.stanford.edu/software/lex-parser.shtml
【8】https://code.google.com/archive/p/ik-analyzer/
【9】Velikovich L, Blair-Goldensohn S, Hannan K, et al. The viability of web-derived polarity lexicons[C]//Human Language Technologies: The 2010 Annual Conference of the North American Chapter of the Association for Computational Linguistics. Association for Computational Linguistics, 2010: 777-785.