Page 60 - 《软件学报》2020年第11期
P. 60
3376 Journal of Software 软件学报 Vol.31, No.11, November 2020
3.3.3 指标预测
要建立用户接受度指标预测模型,需要先提取出可能影响指标的因素.此处考虑 3 类因素:更新间隔、更新
目的和市场排名.现有研究通常以更新频率 [51] 来刻画应用更新的时间,然而两个应用即便更新频率相同,其更新
时间的分布也可能明显不同 [52] .因此,选用更新间隔表示发布新版本的日期距前一次发布的天数.这样,每个应
用的更新历史可以表示为更新间隔的序列.更新目的,顾名思义,指发布新版本的目的.常见的目的包括修复 Bug
和增加新功能 [35] .用户对修复已有问题或增改功能特性的迫切程度可能不同,因而应用版本的更新目的有可能
影响更新的效果.通过处理更新描述文本(what’s new),用 TF.IDF 模型 [53] 生成检索词向量,可以表示每次更新目
的的分布情况.市场排名指应用在同类应用中所处的排名,该排名由应用市场综合评估给出.考虑到版本更新会
影响应用市场对该应用的评估,市场因素对更新效果的影响不容忽视,而市场评估规则对一般开发者来说并不
透明,因此以可获得的市场排名来反映市场因素.
此处使用的数据收集自 Google Play,包含来自 33 个类别的 17 820 个应用,覆盖 2016 年 11 月 25 日~2017
年 3 月 10 日.为获取到具有较为丰富的版本更新历史和可靠评分信息的应用,进而减轻应用取样问题 [54] ,本数据
集选择的应用是每个类别中排名前 540 的应用.对每个应用爬取排名、评分、更新描述以及版本信息.当版本
信息发生变化时,认为应用发生了一次版本更新.最终,数据集中共包含 41 028 次更新.
以应用评分趋势作为用户接受度的度量,以发布间隔、发布目的、市场排名以及应用当前的评分趋势为自
变量,建立用户接受度预测模型.模型分为 3 部分.
• 首先,建立特征变量与发布效果的关联模型.考虑到特征变量的离散性,选择多项式朴素贝叶斯
(multinomial naive Bayes,简称为 MNB)模型 [55] .以 E 表示一次显著发布的效果,E 为浮点数,其正负代
表发布效果的方向;以 r 表示发布时应用的市场排名;以 t 表示计划的发布间隔;以 s 表示在此次发布
前检测到的评分曲线片段的斜率,代表当前的评分趋势;以 C 表示描述文本中检索词的重要性向量.
模型可表示为
E i =MultinomialNB(r i ,t i ,s i ,C i )(i∈I).
• 其次,预测用户接受度的变化.为验证模型可靠性,通过五折交叉验证(5-fold cross validation) [39] 预测应
用更新效果的方向,实验表明,准确率可达到 76%.在基线算法中,使用只包含检索词向量 C 为特征的
模型,准确率达到 54%;进一步使用包含检索词向量 C、市场排名 r、当前评分趋势 s 为特征的模型,
准确率达到 70%.本模型的 76%准确率显著高于基线算法,表明综合考虑包括更新间隔在内的特征对
预测更新效果的重要性.
• 最后,优化发布策略.开发者通常需要选择一个合适的时机来发布新版本的应用.在不考虑外部因素
的情况下,上述模型可以帮助开发者选择更新间隔以优化发布策略.具体地,给定应用当前的排名 r、
评分趋势 s 和检索词向量 C,需要找到使得评分趋势变化 E 最高的间隔 t.此优化任务可形式化表示为
′
t best = max {MultinomialNB ( , , ,r t s C i )}(i ∈ ) I .
i
i
t′∈ {0,1,..., }
∞
其输出 t best 代表在给定排名、评分趋势、更新目的的情况下,使得评分变化最优的更新时间间隔.
当然,应用的更新策略是开发者综合多种因素进行权衡的结果,很多因素,包括市场环境、应用品质、开发
资源等,也可能影响实际的更新效果.通过预测模型揭示更新行为与更新效果之间的潜在关联之后,优化策略的
实际效果还需要在真实环境下进行进一步的实验验证.
4 总结与展望
在应用市场生态下,由于与应用开发者之间紧密和直接的联系,并且产生了大量用户数据可供收集和分析,
用户在移动应用的开发、测试、发布等不同阶段扮演着重要的角色.在用户主动提交的评价信息之外,如何同
时利用用户的操作信息和交互行为信息,从不同角度刻画用户对应用的接受度,构建综合的应用接受度指标,进
而为开发过程提供多方位的指导,是本文探讨的主要问题.本文从应用市场生态中的用户数据出发,构建了一个
综合的用户接受度模型,并介绍了具体指标的计算方法.进一步地,基于软件解析学的思想,运用应用市场生态