Exploiting Topic based Twitter Sentiment for Stock Prediction
基于主题模型的情感分析 用于股票预测
Twitter, Facebook等社交网站每天产生大量含有公众意见的推文。
人们的情绪包含在这些信息中,研究表明情绪会影响个体的行为和决策。
人们对不同主题的情绪不同,这对于股票的预测是一个有用的信息。
本文提出了一个非参数化的基于主题的情感时间序列方法来分析Twitter数据。这里的关键动机是Twitter的流媒体消息反映了在短时间内可能与股票相关的人们的情绪。
模型
LDA(Latent Dirichlet Allocation)
按照wiki上的介绍,LDA由Blei, David M.、Ng, Andrew Y.、Jordan于2003年提出,是一种主题模型,它可以将文档集中每篇文档的主题以概率分布的形式给出,从而通过分析一些文档抽取出它们的主题(分布)出来后,便可以根据主题(分布)进行主题聚类或文本分类。同时,它是一种典型的词袋模型,即一篇文档是由一组词构成,词与词之间没有先后顺序的关系。
人类是怎么生成文档的呢?比如假设事先给定了这几个主题:Arts、Budgets、Children、Education,然后通过学习训练,获取每个主题Topic对应的词语。如下图所示:
然后以一定的概率选取上述某个主题,再以一定的概率选取那个主题下的某个单词,不断的重复这两步,最终生成如下图所示的一篇文章(其中不同颜色的词语分别对应上图中不同主题下的词):
LDA要做的就是:根据给定的一篇文档,推测其主题分布。
一、Continuous DPM(Dirichlet Processes Mixture) Model
Dirichlet Process (DP)被称为分布的分布。从DP抽取出的每个样本(一个函数)都可以被认为是一个离散随机变量的分布函数,这个随机变量以非零概率值在可数无穷个离散点上取值。
Dirichlet Process Mixture (DPM)是这种非参数贝叶斯聚类模型中的一个典型代表。DPM可以认为是有限混合(Finite Mixture,FM)模型的一个推广,FM(如Gaussian Mixture模型)必须首先给定类数,而DPM则不需要,它可以依据数据自行判断类数。理论上来说,DPM的类数随着log(样本点数量)的增长速度增长。目前研究者已经提出了很多训练DPM的算法,从Gibbs Sampling,到Collapsed Gibbs Sampling,到Variational方法。
在一定时间内,主题是动态变化的,我们使用cDPM模型来估计数据中的主题的数量。
为了提高效率,我们只考虑前一天的主题作为之前的主题(priors)。
二、基于主题的情感时间序列
opinion lexicon O(a list of positive and negative opinion words, e.g., good and bad) and label (o)(o∈O) as “+1” if it is positive and “-1” if negative.
三、使用VAR(vector autoregression)分析时间序列
- window size 使用的推文的天数
- accuracy 预测股票指数up和down的正确率
- [t , t+w]来预测t+w+1的指数
实验
数据集:使用Twitter’s REST API收集了2012.11.2到2013.2.7的624782推文
关键词为Stand-ard & Poor’s 100 stocks (S&P100)
从雅虎金融获得S&P100指数的每日收盘价
比较对象:2个基准
- Index: 仅用index time series的AR模型
- Raw: index and opinion lexicon time series(Bollen et al., 2011, Ruiz et al., 2012)
- cDPM: index and topic based sentiment time series
实验结果