本文来源:《中国计算机学会通讯》 2015年第3期《专题》。作者:刘挺,丁效,赵森栋,段俊文。
引言
社会媒体已经迅速发展成为具有重大影响力的新媒体,并为预测技术提供了新的数据源。基于社会媒体的预测技术是指通过对社会媒体数据的挖掘与分析,汇集大众的群体智慧,运用科学的知识、方法和手段,对事物未来发展趋势和状态做出科学的估计和评价。
在社会媒体环境中,广大用户相互交流、协作,激发创造性思维,通过思想的碰撞与交融使隐性知识资源得到开发和利用。如果能够有效地挖掘和分析社会媒体的群体智慧,对人们广泛参与的事件的未来走势的预测将有很大帮助。
目录
1.基于社会媒体的预测技术
2.基于消费意图挖掘的预测
- 基于社会媒体的消费意图挖掘
- 基于消费意图挖掘的电影票房预测
3.基于事件抽取的预测
4.基于因果分析的预测
- 因果关系概述
- 因果关系抽取
- 由因导果
- 执果溯因
1.基于社会媒体的预测技术
社会媒体对预测的作用有两方面:一是社会信号的采集。例如,如果发现社会媒体上某一特定区域的人群都在发布信息说:“我感冒了”,那么,这一区域很有可能正在传播流行性疾病,且有爆发的趋势。二是大众预测的融合。例如,美国大选期间,推特(Twitter)和脸谱(Facebook)在网上掀起预测热潮,很多网友在社会媒体上发布自己的预测结果,这种预测反映了社会媒体的群体智慧。
准确的预测结果对于人们在生活中的趋利避害、工作计划决策起着至关重要的作用。一个决策产生的结果与该决策本身有着时间上的滞后关系,“利”与“害”总是存在于未来的时间与空间中,任何决策都不可避免地要依赖于预测。对未来趋势提前做出判断,有利于适时地调整计划以及采取措施实施调控。
人类的预测活动分为自然预测和社会预测,分别面向自然界和人类社会。二者又存在较大差异,主要表现在主客体关系、规律性质、复杂程度和不确定性程度等几个方面,如表1所示。
自然预测的客体是自然现象,自然现象对人类的预测毫无感知能力,其运行轨迹不会因为预测而受到任何干扰。而社会预测的客体本身也是人,人会对预测结果产生因应行为。所谓因应行为,是指被预测的客体根据预测结果调整自己的行为,使得预测结果不准。相对而言,社会要比自然的“受力面”多得多,因而不确定性也大得多,对其进行预测也愈加困难。社会作为一个由大量子系统组成的非线性动态系统,在特定情况下会对某些微小的变量极为敏感。基于社会媒体的预测是指研究人类广泛参与并与社会发展变化有关的预测问题。
这种预测研究在许多领域都有着广泛的应用,例如金融市场的走势预测[1]、产品的销售情况预测[2]、政治大选结果预测[3]、自然灾害的传播预测[4]等。以往基于社会媒体的预测研究工作主要关注的是相关关系的发现和使用,通过找到一个现象的良好关联物来帮助了解现在和预测未来。例如,根据“微博声量”以及用户的情感分析可以预测股票的涨跌、电影票房的收入以及大选结果等。
本文将站在一个全新的视角,介绍基于消费意图挖掘的预测以及基于事件抽取的预测,并通过挖掘影响预测客体未来走势的本质原因进一步提高预测精度,研究框架详见图1。
在图1中,基于社会媒体的预测技术需要相关关系和因果关系的共同支撑,相关关系可以从微博声量统计、情感倾向性分析、话题抽取等方面考虑,也可以运用更复杂的自然语言处理技术,从相关事件的抽取和消费意图的挖掘方面进行研究。因果关系对预测的帮助包括“由因导果”和“执果溯因”两方面,前者是正向地利用因果关系进行预测,后者是在预测失效时逆向找出失效的原因。
2.基于消费意图挖掘的预测
基于社会媒体的消费意图挖掘
消费意图是指消费者通过显式或隐式的方式来表达对于某一产品或服务的购买意愿。社会媒体用户多,发布的信息量大。在这些信息中,用户会表达各种各样的需求和兴趣爱好。从大量的观测数据中,我们发现相当比例的社会媒体文本直接包含了用户的某种消费意图,例如:
- “体感游戏还不错,考虑入手。”
- “好想看《匆匆那年》啊!”
- “我儿子1岁了,医生说有点缺钙,需要给孩子吃点什么呢?”
- “天气转冷,换衣的季节到了,今年流行什么款式和颜色?”
第1条表达了用户想买体感游戏机,第2条表达了用户想去看电影《匆匆那年》,第3条要买补钙产品,第4条想买冬装。如果能够很好地挖掘出社会媒体用户对于某一产品的购买意愿,那么对于预测该产品的销量将有重要意义。
消费意图可分成“显式消费意图”和“隐式消费意图”两大类。显式消费意图是指在用户所发布的微博文本中,显式地指出想要购买的商品,如第1、2两个例子。而隐式消费意图是指用户不会在所发布的微博文本当中显式地指出想要购买的商品,需要阅读者通过对文本语义的理解和进一步推理才能够猜测到用户想要购买的商品,如第3、4两个例子。
对于显式消费意图,很多学者通过模式匹配的方法识别。例如,在识别观影意图时,基于依存句法分析结果构建模板,识别对某部电影具有显式观影意图的微博,其准确率可以达到80%左右。而隐式消费意图的识别则难得多,难点包括:(1)如何理解用户的语义文本,进而理解用户的消费意图。这需要我们能够很好地理解和整合词汇级的语义特征以及句子级的语义特征。例如:要想识别出“我儿子1岁了,医生说有点缺钙,需要给孩子吃点什么呢”这句话包含的消费意图,需要理解关键词“儿子”、“缺钙”以及整个句子的含义。(2)用户消费意图的挖掘任务是领域相关的,因此构建的模型需要具有领域自适应能力。
为了解决以上难点,文献[5]首次提出了基于领域自适应卷积神经网络的社会媒体用户消费意图挖掘方法。卷积神经网络对于解决该任务有以下两方面的优势:
- 卷积神经网络中的卷积层可以以滑动窗口的方式捕捉词汇级语义特征,而马克斯池(max pooling)层则可以很好地将词汇级特征整合成句子级语义特征;
- 卷积神经网络可以学习不同层次的特征表示,而一些特征表示则可以在不同领域间迁移。
消费意图毕竟还只是停留在个人意愿层面,有多少用户会真正将消费意图转化成消费行为,这是我们更加关心的话题,也是对于预测更有效的特征。消费意图识别的研究分成显式消费意图、隐式消费意图和能够转化成行为的意图三个层次。如图2所示,显式消费意图是用户消费意图这座冰山中露出水面的一角,大部分是隐式意图。而无论是显式意图,还是隐式意图,都只有一部分能够转化为购买行为。
基于消费意图挖掘的电影票房预测
消费意图挖掘在很多方面都有重要应用,如推荐系统、产品销量预测等。电影票房预测正是消费意图研究的一个成功应用:
- 很多与电影相关的数据可以方便地获取到。互联网上有很多与电影主题相关的网站,例如美国电影资料库(Internet Movie Database, IMDB)、中国时光网、豆瓣网等。新浪微博每周至少会有1000万条以上的消息讨论与电影相关的内容。因此,有足够的数据用于分析影响电影票房的因素。
- 电影的总票房、周票房甚至是每天的票房都可以比较容易地从IMBD或网票网上获得,这有助于我们评价实验结果的好坏,并不断提高预测准确率。
- 社会媒体的消费意图数据与电影票房有清晰的逻辑相关性。社会媒体用户在某部电影上映前发布了关于某部电影的消息,说明他对这部电影感兴趣并且很有可能会去电影院观看这部电影。上映前一周的社会媒体数据相对于其他时间段的数据来讲,与电影票房的关联性最强。电影上映之后,带有情感倾向性的社会媒体内容变得至关重要。因为这类信息的传播可以看成是一种口碑营销,它将很大程度影响潜在消费者。
基于消费意图理解的电影票房预测相对于传统的电影票房预测而言,可以说是站在一个全新的角度进行研究。传统电影票房预测始于20世纪80年代末,美国电影经济学家巴瑞·利特曼(Barry Litman)在其论文《电影经济成功预测:基于80年代人的经验》(Predicting Financial Success of Motion Pictures: The 80’s Experience)[6]中首次提出了电影票房研究的基本模型和方法。总体来讲,传统电影票房预测主要是基于电影相关的特定的结构化数据,比如影片类型、美国电影协会分级、上映时间、是否有续集等。然而,这些方法要么预测效果不佳,要么需要一些时间点之后的数据才能得出合理的预测结果,很难被应用于实践中。
近几年,一些工作向人们展示了社会媒体在预测方面惊人的力量。例如,基于社会媒体的选举结果预测[3]、流行病预测[4]、奥斯卡获奖预测[7]、足球比赛结果预测[8]等。美国惠普实验室首先在基于社会媒体的电影票房研究中进行了尝试[2],在他们的研究中有两个重要的假设:一个是电影在社会媒体中被提及的次数(声量)越多,电影票房会越高;另一个是社会媒体用户对电影的评价越高,电影票房越高。但是,我们仔细分析后发现这两个假设并不成立。因为电影的媒体声量大并不一定意味着电影的口碑好;电影的口碑好,看的人不一定就多,口碑差,看的人不一定就少。真正能够做到口碑与票房双赢的电影并不多。例如,《三枪拍案惊奇》、《画壁》等电影的口碑较低(豆瓣评分4.6分),但是票房收入不错(票房收入分别是2.6亿元和1.6亿元)。本文认为,无论某个产品在社会媒体上被讨论得多么热烈,评价多么好,最终有多少人愿意购买才是影响产品销量最本质的因素。另外,对于像电影票房这样的预测对象,是需要在产品发布之前给出预测结果的。然而,在产品发布之前没有产品的口碑数据,我们只能获得大众对该产品的消费意图数据(购买意愿)。因此,基于消费意图的电影票房预测打破了以往的格局限制,从最根本的因素出发来预测电影票房收入。
电影票房预测的主流模型可分为线性预测模型和非线性预测模型。这两个模型都存在一个前提,即认为电影票房收入与预测影响因素之间存在线性或非线性关系。在首周票房预测实验中,线性回归模型实验结果要好于非线性回归模型,而在总票房预测研究中,非线性回归模型效果要优于线性回归模型。这表明电影上映前一周的数据与首周票房线性关系比较明显,这时线性回归模型的预测能力要高于非线性回归模型。随着时间的推移,各种新的因素不断加入以及一些偶然情况的发生,使得电影上映前一周的数据与总票房之间的线性关系越来越不明显,而这时线性回归模型的预测能力就要低于非线性回归模型。将线性回归模型和非线性回归模型相结合是该课题未来的一项重要工作。
3.基于事件抽取的预测
基于消费意图的预测是从人的主观角度出发进行预测,而基于事件的预测则是从客观的事实角度出发进行预测。社会媒体中报道的一些事件会对人们的决策产生影响,而人们的决策又会影响到他们的交易行为,这种交易行为最终会导致金融市场的波动。例如,脸谱公司2014年第三季度业绩超出预期水平,股价数小时内大涨10%。重要事件会导致股票市场的剧烈震荡,如果能够及时准确地获取这些重要事件,势必会有助于对金融市场波动的预测。
金融市场的预测研究可以追溯到1937年前后,即约翰·梅纳德·凯恩斯(John Maynard Keynes)[9]在研究不确定性问题时提出的选美理论。在金融市场投资问题上,不要买自己认为能够赚钱的金融品种,而是要买大家普遍认为能够赚钱的品种,哪怕那个品种根本不值钱。投机行为是建立在对大众心理猜测的基础上的。1965年,尤金·法玛(Eugene F. Fama)提出了有效市场假说(efficient market hypothesis)[10]。他认为金融产品的价格应该能够充分反映关于该资产可获得的所有信息,即“信息有效”,而且每个人都可以在一定程度上获得这些信息。这一假设可以作为基于事件抽取的股市预测的理论基础,原因在于与企业最相关的信息是它每天发生的各种事件,而且这些事件可以通过新闻渠道被大众普遍获取。
金融市场的预测研究可分成时间序列交易数据驱动和文本驱动两个不同方向。
时间序列交易数据是最早用于建立预测模型的一类数据,主要包括股票历史价格数据、历史交易量数据、历史涨跌数据等。传统的金融市场预测研究中,金融领域学者多从计量经济学的角度出发进行时间序列分析,进而预测市场的波动情况。
文本驱动的金融市场预测主要是挖掘新闻报道和社会媒体中报道的客观事实以及大众的情感波动。前人的很多研究工作表明,金融领域的新闻在一定程度上会影响股票价格的波动。大卫·卡特勒(David M Cutler)[11]是最早研究新闻报道文本与股票价格之间关系的学者之一,之后自然语言处理技术逐渐被引入到金融市场预测中。而早期被应用在文本表示的技术主要是基于词袋模型(bag-of-words)。文献[12,13]指出,基于词袋模型的文本表示方法并不是最优方案。文献[12]尝试抽取文本中的命名实体和名词短语来扩展词袋模型,文献[13]提出基于语义框架挖掘出更加丰富的文本特征。
以上工作存在一个共性的问题,即没有提取文本中的结构化信息,而这一信息对于股票涨跌预测非常重要。例如,“甲骨文公司诉讼谷歌公司侵权”,如果用词袋模型表示,其形式为{“甲骨文”,“诉讼”,“谷歌”,“侵权”,⋯⋯}。我们从中并不能判断出是甲骨文公司诉讼谷歌公司,还是谷歌公司诉讼甲骨文公司,也就很难判断出哪个公司的股价会上涨或下跌。文献[14]提出了利用结构化的事件预测股票的涨跌。对于上面的例子,如果利用结构化的事件,则可以表示成{(施事:“甲骨文”),(行为:“诉讼”),(受事:“谷歌”)}。由此,我们能够清楚地知道是甲骨文公司诉讼谷歌公司。在此基础上可预测谷歌公司的股价有可能受影响而下跌,而甲骨文公司的股价可能会上涨。
除了从文本中挖掘客观事实外,有些学者还尝试对文本内容进行情感分析。文献[1]是较早利用社会媒体上大众的情绪波动来预测股市波动的文章。文献[15]通过对文本内容表现出来的积极情感和消极情感对股市波动进行预测。基于情感分析的金融市场预测主要是从主观情感角度出发进行预测,而基于事件的金融市场预测则是从客观事实角度出发进行预测,二者可以相互结合,优势互补,取得更加精准的预测结果。
4.基于因果分析的预测
对于许多预测问题来说,因果分析是十分重要并且高效的。与相关性相比,因果的确定性更强。例如疾病预测、行为预测和政策效用预测等。对于某些事件来说,当没有过多的相关性数据可用时,因果是最有效的预测指南。例如稀有事件预测、新闻事件预测等。当基于相关性的预测失效时,因果更是预测的唯一指南。因此,当我们对于某一事物预测不准或者认识不准时,一个合理的做法是分析因果并使用因果进行再认识。
因果关系概述
原因与结果是重要的哲学范畴。对事物间因果关系的探索,人类自诞生以来就开始了。因果关系也是人类在漫长的社会实践中逐步总结出来的一个基本法则,成为人们推理事实和认识未知的指南。本文把因果视为关系、知识和逻辑。
因果是关系 作为一种语义关系,因果关系是语义理解和篇章分析的重要资源。
因果是知识 因果作为一种重要的知识形式,是问答系统和决策的重要依据和资源。要回答“是什么导致肿瘤缩小”这类问题,一个大型的因果关系知识库是必要的[16]。对于一个现象或者状况的出现,我们只有知道导致它出现的原因,才能根据原因做出相应的对策。作为决策依据的因果是区别于相关的本质特性。
因果是逻辑 作为逻辑的因果,是因果最重要的方面。作为科学逻辑中最重要的组成部分,因果逻辑体现在预测逻辑和解释逻辑两个方面。因果与相关是两个不同的重要概念,尽管在很多科学研究中因果比相关更重要,但是目前大数据侧重于相关性研究。相关性分析得到的结论有时是不可靠的,甚至是错误的。无因果关系的两个变量之间可能会表现出虚假的相关性。很多例子可以说明虚假相关性,如张三和李四的手表上的时间具有很强的相关性,但是人为地改变张三的手表时间,不会引起李四的手表时间的变化。统计上的研究表明,小学生的阅读能力与鞋的尺寸有很强的相关性[17],但是很明显它们没有因果关系,人为地改变鞋的尺寸,不会提高小学生的阅读能力。普林斯顿大学发表了一篇论文,称用谷歌搜索关键词来预测脸谱,将在2017年丧失80%的用户。随后脸谱的数据科学家马上发表博文进行反驳,说“谷歌搜索”关键词并不能代表实际趋势,相关关系并不等于因果关系。随后,哈佛大学的戴维·拉泽(David Lazer)在《科学》(Science)上发文,质疑2009年《自然》(Nature)上发表的用“谷歌搜索”关键词预测美国流感的研究工作,因为谷歌在2013年7月份的预测结果超出了实际值的两倍。
因果关系也可能表现出虚假的独立性。统计表明:练太极拳的人平均寿命等于或者低于不练太极拳的人。事实上,太极拳确实可以强身健体、延长寿命,但练太极拳的人往往是体弱多病的人,所以表现出虚假的独立性。因此,表面上相关的事情,实质上可能并无关联,更没有因果的必然性;表面上不相关,但可能背后有因果关系。大数据分析不能只考虑相关性,也应该考虑因果关系。
如图3所示,A代表“气温”,B代表“冰激凌销量”,C代表“游泳馆客流量”。A是B和C的共同原因,A升高会导致B和C的增加。虽然B与C存在统计相关性,但如果想提高B显然不能通过干预C来达到,而能通过A的升高来达到。
因果关系抽取
因果关系抽取是一个非常基础且重要的工作。抽取出的因果关系或因果知识可用于预测、问答等。在文本中进行因果抽取就要用到自然语言的处理技术和方法,如词性标注、句法分析、短语抽取等。对于因果关系抽取和检测任务来说,前人的工作所使用的线索可以粗略地分为四类:
Lexico-syntactic模板[18]利用Lexico-syntactic模板是一个很直观的想法。在含有因果关系触发词的因果句子中,原因和结果在句子中的词性和句法角色是有一定规律性的。基于词性和句法角色的规律性来抽取因果关系触发“词对”,是利用Lexico-syntactic模板抽取因果方法的共性。
上下文词信息[19] 在自然语言文本中,相同或相似的句法结构对应不同的语义关系,上下文信息对区别这种相同或相似句法结构的不同语义关系具有重要意义。文献[20]指出,丰富的上下文信息对提高因果抽取的准确率是非常必要的。获得含有因果提及的句子,尤其是含有显式因果提及的句子是相对容易的。
词之间的关联信息[21] 虽然使用因果关系触发词能覆盖大多数情况,但如果从含有因果提及的句子中抽取出真正存在因果关系的“词对”或者“事件对”是比较困难的。文献[20]认为因果提及中的名词之间、动词之间、动词和名词之间的关联信息对于识别因果来说是非常有效的资源。因此提出了一种基于分布式相似性的半指导因果事件的识别算法。
动词和名词的语义关系信息[22] 在自然语言中一些词语本身蕴含着因果关系的可能性,例如英文的Increase X, Decrease X, Cause X, Preserve X都很可能激发出一个原因的结果;中文的“增加了X”、“避免了X”、“防止了X”也具有同样的功能。这些词一般被称为触发词。基于这种触发词模板方法进行因果关系抽取的工作有很多。例如文献[23],通过把这些作为谓语动词的触发词模板人工地分为CAUSATION, MATERIAL, NECESSITY, USE, PREVENTION五类,来区分抽取到的因果关系的类型;文献[24]使用因果关系触发词抽取文本中的名词因果对,使用这种因果对来判断一个句子是否是描述因果逻辑的句子;文献[18]则利用因果关系词在大量的新闻语料中获取事件之间的因果关系。
由因导果
“由因导果”即因果的预测逻辑。看到一个现象或者一个事件的发生,我们总想知道未来可能出现的现象或者发生的事件。对于预测未来,因果无疑是最有效的指南和依据。尤其是在基于相关性分析的预测失效时,若能分析出原因并利用原因进行预测,则预测结果会更加可靠。
通过抽取大规模新闻语料中新闻事件和事件之间的因果关系,文献[18]把这些因果事件分类、关联,并组成事件因果关系网络,使用这个网络预测未来事件。所有的因果事件都表示成因果“事件对”的形式,其中原因事件和结果事件都尽量用六元组形式表示。通过计算因果“事件对”之间的相似性来预测结果事件。文献[25]提出了一种有指导的抽取事件因果的方法,并利用抽取到的事件因果生成未来情景,例如非法汽油(illegal diesel oil)→排放有害物质(emit harmful substance)→导致污染(cause pollution)→损害人体健康(human body is damaged)。生成类似这种未来情景是通过将多个事件因果对精准匹配的方法链接起来,在此基础上生成因果事件链条。在预测问题上,使用的都是基于匹配的方法。文献[18]是匹配相似的因果对,文献[25]是匹配原因事件或者结果事件。
在利用因果来做预测的工作中,事件通常采用的是名词短语或n元组的表示形式。但基于这种表示形式来做事件的匹配,会漏掉很多事件本身的信息,从而导致匹配的效果不好。另一类问题是稀有事件的预测。稀有事件是指发生概率很低的事件。例如,公路交通事故、网络欺诈行为、网络入侵行为、信用卡诈骗行为等。稀有事件的预测是一个非常复杂的问题,它需要有对问题本身的深刻理解和对问题中的不确定性进行建模。对于预测稀有事件,数据的稀疏性导致缺少大量的相关关系或相关事件。因此,对稀有事件的预测,既需要具备正确的因果知识,又能够进行正确的因果分析,同时还能充分利用可以用到的小样本数据。
执果溯因
“执果溯因”即因果的解释逻辑。看到一个现象或一个结果我们总想知道“为什么”。在自然语言文本中,我们对因果解释逻辑的诉求也是随处可见。以电商为例,电商网站上有大量用户对商品的评论信息,如某些人对商品A持有积极评价,另一些人则对商品A吐槽。作为生产商和销售商很想知道,为什么有些人喜欢,而有些人不喜欢?如果能从评论数据中进行分析找到原因,对生产商和销售商来讲都有重大意义。
在社会学和大众舆情分析领域,大众对某个社会事件或者社会问题的情感和态度是十分重要的,但是更重要的是大众持有某种情感或者态度的原因。如果能自动地从文本中尤其是社会媒体文本中挖掘出这些原因,这对于理解民意、维护社会安定具有重大意义。类似这种从文本中分析原因的需求几乎覆盖各行各业。在商业决策领域,我们想知道产品销量提高或者降低的原因,进而做出应对,例如电影票房的涨跌和广告宣传的因果作用分析对于宣传策略的选择至关重要。在政治决策上同样如此。为了分析一个时序变量是否对另一个时序变量产生因果作用,文献[26]提出了一个基于贝叶斯网络的时间序列模型。先预测出一个虚拟结果,进而和真实结果进行对比来评价一个变量对另一个变量的因果作用。比如有一个网站,在某一时刻t加入了一个广告,那么这个广告究竟可以带来了多少点击量?
如图4所示,竖切的虚线代表引入广告的分界线,original部分的实线和虚线分别表示真实的网站点击量曲线和不引入广告的情况下的网站点击量曲线(反事实点击量曲线,通过预测得到)。Pointwise部分代表的是真实曲线和反事实曲线的差值曲线。Cumulative部分是真实曲线和反事实曲线累积差值。通过观察累积差值的大小,可以得到引入广告对网站点击量增加的因果效用,比如得出“引入广告是网站点击量显著增加的原因”的结论。
结语
以脸谱、推特、微博为代表的社会媒体的出现,为观察大众的心理提供了巨大的数据资源,从而也为预测大众的行为提供了新的手段。对用户意图和相关事件的深入理解,能够为预测提供更为精准的依据,而因果关系的分析将为预测提供相关性以外的更符合逻辑的预测线索,并找出预测失准的原因以供后续决策。基于社会媒体的预测技术是大数据的重要应用之一,其重要的研究价值和巨大的应用价值必将激励研究者们不断地探索。
本文来源于哈工大SCIR