大数据、新方法和日常问
如果让我们决定是否去看一部电影,有两种办法来做决策:我们可以上豆瓣了解这部电影质量如何,专家的评价怎么样;也可以在朋友圈浏览一下,看看身边有多少人去看了这部电影。实际生活没有这么泾渭分明,在豆瓣上也可以打卡,在朋友圈也会有人分享心得,上面只是个大概的特点罢了。不过,这确实代表了观看电影这一行为背后两个可能的推手。一是学习(learning),我们去看电影可能是因为我们从别人那里听说这部电影好。二是情绪分享(emotion sharing),我们去看电影可能只是因为周围的人都去看了。这个问题初看起来无关紧要,但对电影厂商关系重大,因为这决定了他们的宣传策略。如果我们看电影更多的是因为电影好,那电影商就应该设法拍出好的电影并且把这个信息传递给我们。如果我们看电影更多的只是因为周围的人都看了,那电影好坏也许就没那么重要了,想办法把电影炒热,炒出话题性也许更重要。所以这个区别绝对不是无关紧要的。
以Amazon、豆瓣网为例,探索推荐引擎内部的秘密#1
基于社会媒体的预测技术
问题来了,怎么才能设计一种实证策略,把这两种效应区分开呢?这是Gilchrist和Sands在Journal of Political Economy即将刊出的论文Something To Talk about最主要的贡献之一。他们文章的另一个创新点是用LASSO来挑选变量,这一点我们后面也会谈到。为了区分这一点,他们首先弄了一个非常简单的模型。每个人的效用是三项之和,第一项是电影的客观质量,第二项是自身的异质性,服从0到1上的均匀分布,第三项是他人的影响,等于身边已经看了电影的人的数量再乘上一个系数。每一个体都有一个保留效用而且非常短视:只要这一期效用高于保留水平就会看。他不会说后面看的人多了,效用更高再去看,只要高于保留就会去。这个模型非常容易解,结果就是每一期看电影的总人数都是上一期的人的数量乘上一个比例,也就是每一期都是指数衰减的,这个比例就是他人影响的系数。这是没有社会学习的情况,也就是说,如果单纯只有情感共享一个因素的话,从上映开始观众就应该越来越少,而且是以指数速率衰减的。他们的目标就是实证这个模型。
首先是要有好的数据。两位作者从BoxOfficeMojo拿到了基本是最全的观影人数记录。数据的时间范围是2002到2012年,这个网站很多数据都是免费的!如果对这个题目感兴趣可以直接上去拷。接下来是对数据的预处理。为了防止截尾问题,他们只用了上映时间至少超过六周的电影做实证。上映时间不到六周的电影很多都不是平常的电影,五个数据点做扩散也比较无力。另一项重要的预处理是只用周五、周六、周日的数据,这是研究电影产业的惯例,因为在周中和周末观影的人群行为差异很大。不过,在在线发布的补充材料中,他们说明了,即使把这两点加进去,估计结果也不会受到显著影响。加入票房表现比较糟糕的电影并不会显著改变估计结果。加入周中的也不会,实际上,由于美国电影绝大多数都在周五上映,无论是扩散还是学习过程,大部分都发生在周末。这样下来,一共是包含557个周末,共1671天的数据。平均来看,排除那两种数据之后,电影在上映首周平均有250万观众,在接下来的一周只剩下130万,到第六周之后平均只剩下20万了。如果前面讲的情感共享非常重要的话,把所有其它因素拿掉,第一周观影人数增加应该会带来后面每一周观影人数的增加。
这还不够,最重要的是要寻找一个工具变量来把影片质量分离掉。我们知道,除了口口相传可以影响每周的观影人数外,影片质量也可以。如果影片质量比较好,那也可能每一周的观影人数都特别多。两位作者找到的这个工具变量就是天气。已有的研究显示,天气,无论是温度还是降水,都会显著影响人们的观影行为,但天气不会影响影片的质量。因为前面叙述的票房数据是遍及全美的,作者也不辞辛劳收集了全美1941个气象站10年来的气温、降水、降雪和冰雹数据,并且和气象站覆盖区域内的电影院做了一一匹配。为了说明气象站数据确实可以反映当天电影院附近的气候状况,他们特意做了检验,结论是只有1%的电影院离最近的气象站距离超过160公里。而在这个范围内,小气候有比较好的一致性,这就解决了这个可能的批评。
接下来是想办法把天气数量这个数据划得更细。比如说气温,不是所有范围内的气温都会对观影行为产生影响的,像15-20摄氏度这个范围内,我们的观影行为受气温影响可能就很小。为了解决这个问题,两位作者先把气象数据划成了很多小块,每个单独作为一个变量。像气温就以5度作为一个变量的界限,当天气温是否在80-85华氏度是一个变量,当天气温是否在85-90华氏度又是一个变量。降水则以四分之一英寸每小时划界,像当天降水是否早0到十分之一英寸每小时就是一个变量,降雪、冰雹等数据也类似划分。接下来就是选工具变量了。不过这里有两个问题。首先,电影厂商也知道气候变动会影响票房,所以他们也会看天气预报,然后按照天气来选电影上映的时间。其次,直接挑选工具变量,会面临巨大的运算量——这是个NP问题,常用的优化方法表现很差,甚至可能根本得不到最优解。再考虑到这里的数据量,有必要采取特别的处理方法。
为了解决第一个问题,两位作者首先计算了典型天气条件下的典型观影量。电影厂商也不可能预知未来,他们也只能根据已有数据去推测过几天会有怎样的天气。两位作者用所有气象数据,计算了季节平均气候和月平均气候。比如说春季的典型气候,或者说1月份的典型气候,然后拿那一天实际气候减去对应的典型气候,就得到了异常气候。两种精度不同的度量最后差别不大。接下来要算典型观影量。先要控制日固定效应,也就说是周几。还要控制周固定效应,也就是看这一周是一年里的第几周。一个平凡的工作周中的观影量圣诞节周的观影量当然不能相提并论。最后还要控制美国的一堆节日。我尝试着把节日数量数清楚,但直到最后也没有成功,姑且算4、50个吧。我把详细的列表放在了下面,有志者可以自己去数。结合上面所有因素,我们才能得到典型气候下的典型观影量,如果用计量的语言来说,就是回归的拟合值。只有这时候我们才能把异常天气和异常观影量放进来。
工具变量找到了,问题也就解决了。接下来就是普通的两阶段最小二乘回归。只不过这里要做五次,因为作者使用了六周的数据,回归结果如下。这里的回归结果需要解释一下,如果我们回忆一开始的模型,就会发现:因为只要高于保留效用,个体就会看电影。所以,只有第一期看的那些人才是真正觉得电影好的。而觉得电影好的第一期也都会去看。后面的都是被前面的个体带动起来的。于是后面看电影的数量就应该是前一期的数量乘上他人影响的系数,这也是我们前面讨论过的结论。因此,如果我们把所有因素都过滤掉以后再回归,从第二周开始的电影观影人数都应该只受第一期人数影响,或者说这个系数应该是正的,并且每一周的系数都是指数衰减。从图中可以看出,几乎所有系数都非常显著,说明情感共享确实是影响观影人数的重要因素。仔细观察数据还可以发现,估计结果和他人影响为o.5的时候非常相近,基本上每一周观影人数都衰减一半。这样的估计对评分最高和最低的十分之一电影都显著。即使把只有一个工具变量的约束拿掉,允许LASSO在所有变量里寻找最优权重,拼出一个最优的工具变量,结果依然稳健。因此,文章的一个主要结论已经出来了:情感共享确实影响观影人数,而且在美国,还可以估计出他人影响系数大概是0.5。
上面的结论还不够,虽然作者已经说明了情感共享确实能够影响观影人数,但我们还要排除替代性的解释,最主要的就是排除学习。作者考虑了两种不同的学习机制。第一种学习机制是社会学习(social learning),在这种情景中,个体可以充分地传达他们关于电影的评价。也就是说,我看了一部电影,我可以完全地把我对电影的感受传达给你。作者在这里使用了一个很巧妙的估计策略:如果社会学习真的存在,那么,质量越高的电影,面临的信息阈值(information threshold)就会越小。因为关于高质量电影的信息可以充分传递,比方说一部绝世佳作,只要几个人和我说这部片精妙无双,我的预期效用就会超过我的保留效用,然后我就会去看。或者说,对于质量更高的电影来说,更大的初始动量(第一周去看电影的人的数量)也会带来后续更庞大的观影人群。用计量的方法来检查这个结论,就是分开高质量和低质量电影两组,然后用后续观影人数做因变量,控制其它特征后拿第一周观影人数做自变量做回归。结果发现系数是不显著的。有待排除的另一种学习方法是观察学习(observational learning)。在这种学习机制中,个体只能观察到别人的行为而无法知晓别人的评价。也就是说,我只能看到别人有没有去看电影,但我不知道他/她心里是怎么想的。作者在这里的处理同样十分精妙。如果每个人都是观察式学习的,那么对电影的初始信念越分散,初始动量带来的后续观影人群就越大。设想这么一个场景,初始所有人的信念都一样,那此时初始动量的增加对我不会有任何影响,因为我没有接收到任何新的信息。相反,如果所有人的信念都不一样,此时第一周观影人数的每一个增量都很宝贵,此时每一个增量都会带来关于电影质量的进一步信息。明白了这一点,实证的策略就是一模一样的了,只不过之前控制质量,现在要控制大家对质量了解的准确程度。我们在前面已经提过影片总预算和信念准确程度的相关关系,正好在这里派上用场。结果显示,回归系数也不显著。综上所述,我们可以得到本文的第二个主要结论:没有证据支持学习对观影人数的影响。