数据分析与知识发现
    主页 > 综合新闻 >

数据分析 │基于深度学习的电影票房预测研究

基于深度学习的映前票房预测模型(Cross&Dense;网络结构模型),该模型通过影片基本信息如:电影类型、影片制式、档期和电影的主创阵容和IP特征等信息对上映影片的票房进行预测。

本篇采用451部电影作为训练模型,最后再在194部影片上进行测试,模型的绝对精度为55%,相对精度为92%。该模型在使用相同的特征的情况下好于SVM、随机森林等算法。上升了至少5%。同时还对模型进行了超参调优工作,通过实验发现:当模型的批大小为128,学习率设置为0.001,迭代次数设置为150,多任务调节权重为0.4的时候预测效果最好。通过该模型对映前票房的成功预测将对影片的制作发行和放映有着重要的指导意义。

01

数据探索

选取2013—2016年在国内上映的影片。票房过小的影片一方面研究价值较低,另一方面存在着严重的特征缺失的问题,所以只筛选了票房超过一千万的影片作为研究对象,最终经过筛选最后共有645部。从互联网上采集了电影的特征(类型、播放制式、上映时间、主创人员信息、发行放映信息和网络口碑等数据),这些数据主要来自于豆瓣网、时光网和猫眼电影专业版和微博电影。这些特征包括连续数据和离散的类别数据。

从图5.18中可以发现,电影票房收入相差比价大,大部分电影的票房集中在1千万到5亿这个范围内,极少数电影可以超过10亿票房。票房数据的偏度为3.71,峰度为21,因此要研究的票房数据偏离正态分布,呈现出右偏态,同时也可以发现该数据峰度值远大于0,分布比较陡峭,如表5.9所示。

表5.9 连续变量统计表

■图5.18 票房直方图

1

连续变量

如图5.19所示,分析连续变量和票房的关系可以发现采集的连续变量和票房之间没有明显的线性关系,这也是票房预测一直没有取得特别精确的原因之一,同时采集了2015年和2016年的微博指数数据,使用全部数据进行建模时存在缺失值过多,使用两年数据建模时性能较低情况,所以最后舍弃。

■图5.19 连续特征与票房关系散点图

2

离散特征

各个离散变量和票房之间的箱型图可以直观地展示这些变量和票房的关系,为了便于画图,对票房数据进行取对数处理。其中表5.10展示了电影类型、电影制式等特征,图5.20给出了票房的箱型图。

表5.10 样本中各类型影片占比及平均票房表

■图5.20 离散特征和票房箱型图

02

模型设计

为了获得一个有效的票房预测模型,将连续的票房值进行了离散化处理。基于实际需求和模型构建要求将票房离散化成为4个区域,如表5.11所示。

表5.11 电源票房分区表

图5.21为基于深度学习的电影票房预测模型框架

■图5.21 基于 Cross&Dense; 网络的映前票房预测框架图

1

特征层

其中,μ为该特征的均值,δ为该特征的标准差。

对于离散特征进行了one-hot编码。

2

嵌入层

在嵌入层对经过编码的离散特征进行了嵌入计算,具体的处理细节如表5.12所示。

表5.12 嵌入层参数设置表

3

深度网络层

电影票房模型使用的深层网路的结构细节如下:深度网络使用了3层,其中每层的神经单元数为50、25和10。稠密跳接网络的深度为4,每层增加的神经元个数都设置为50。同时为了防止模型过拟合使用了dropout技术,dropout的参数本文设置为0.3。

4

输出层

多任务学习是一个在机器学习领域很早就被提出的技术,之前常被应用于决策树、随机森林和神经网络中。它是一种归纳转移的方法,使用包含在相关任务的训练数据中的信息来改善泛化能力,使用并行学习但用分享特征表示,每个任务学习到的特征表达和知识可以帮助更好地学习其他任务[35]。随着深度学习技术的发展,多任务学习技术也成了一个研究的热点。为了提高预测准确率,针对电影票房预测这一问题,对上文中提出的预测框架进行了进一步的改进,引入了多任务学习技术。