一直对于 Metacritic 开放user review颇有兴趣, 到底是否有人上去洗分数乱版?
肉眼看实在看不出来, 索性写程序上网爬他所有数据!
从上图来看, 目前显示12万人评论, 正负极端M型化分布, 图标共654页(我当时在看的时候总评论页数是651页), 每一页100比评论, 有几个问题
- 当时全部651页, 每一页100笔, 总数应该是6万多, 但是官方却有12万, 不显示全部数据的原因无法得知, 不过统计的概念, 数量达一定程度应该就足够反应出母体的分布了.
- 爬数据的时候发现没有想像中顺利, 数据常常重复, 而重复的数据常常像是这样
字段有user, review_dt(日期), review_grade(分数), review_body(本文), 上图全都一样, 原本以为抓到偷灌水, 但是发现许多都是差一页而已, 而且一堆信息全都一样, 应该是metacritic吐数据的时候分页问题, 或是数据被洗到下一页, 并不是人为灌水.
- 某几页是评论是空的, 都要Retry很多次才会有数据
光是抓数据就花不少工夫 (抱怨碎碎念一下)
后来我用 [user + 日期 + 分数] 去除重复, 结果剩下59328笔数据
直接来看分数的统计信息
平均是5.18分, 中位数落在5分, 看起来和原本的5.4分是差不多的, 这边没啥问题.
再来看每个评分的分布
依序是0 ~ 10分的数量, 确实是M型化分布, 高分的略赢一点, 但有一点比较特殊, 那就是给高分的似乎向大多数是集中10分, 照理说如果高分趋势 > 低分趋势, 给8分9分的数量应该也要相对高于的1分2分会比较make sense, 但是却相反? 向心力有点过强了…
再来我以8分以上当作正评, 2分以下当作负评, 其他就是中间的, 分布是这样
最上方有实际数字 (X轴的neg, mid, pos应该不难懂吧? => 负评, 中间, 正评)
后来我观察metacritic其实在4分以下就是红字, 5 ~ 7分是黄字, 8分以上是绿色的
所以用metacritic的逻辑下去调整, 分布是这样
此时负向就略多了一点, 跟metacritic上不一样, 也许拿到真正12万笔数据之后才会一致吧?
然后依照日期去切割, 看看10分 vs 0分的每日变化
蓝色是0分, 大便色是10分 (右上角有写), 6/22之后10分就开始超过0分, 之后就再也没被追回, 这里可以看出冲首发的也许都赌烂负评比较多? 比较晚开始玩的大多给正向评价.
依照日期去切割, 看看pos vs neg的每日变化 (这里是用metacritic的逻辑去切正负评)
6/24号之后开始被positive追回, 之后都是这样
然后我特地去用regular expression去找出评论是中日韩的user
结果数量只有254笔Orz, 大多数是赌烂这游戏的比较多
不过我也知道国内玩家应该满多都用英文去评论, 这里我就没法判别了, 信息不足, 我相信亚洲评论的人数应该至少会破万吧, 2百多真的太少.
再来我去统计每篇文章的单词最大长度, 75百分点的值是13, 每篇文章的字数25百分点是22, 利用这些数据来找出看起来可能来乱的文章(这里听不懂没差XD), 如下:
上面只是sample 15笔而已, 仔细看一下内文(review_body), 看起来是不是像来乱的?
其实高分或低分的都存在这样的文章, 这里我不太敢定义这样的文章就是来乱的, 也许只是想给个分数懒得写评论的人也是有可能, 所以我特地把这类文章的数量分布也列出来, 0分10分各8百多人, 如下
再来我利用文章分析常用的 TF-IDF 去找出每篇文章比较关键的文本, 每篇文章都取关键的前10个字, 然后这是高分群常出现的前100用字
best, masterpiece, amazing, perfect, haters 等等…
这是低分群常出现的前100用字
sjw, lgbt, political, awful, worst, poor 等等…
然后我肉眼稍微从这些字当中, 挑出几个来比较一下这些字在高分群和低分群的频率
*Y轴是关键字, 字段pos, neg, total 都是字词出现的数字 pos + neg = total
- 像是 SJW, political, lgbt 这些关键字数量在低分群大于高分群, 也许是针对这些点去说明这游戏烂的原因.
- 像是masterpiece, best, gameplay, generations, haters 高分群的数量大于低分群, haters 这个字也许常常在高分群里会去批判赌烂这游戏的人吧? 其他的关键字都是对于游戏的赞赏.
简单结论:
- 原本以为可以找到一些规则来判别哪些是灌水文章, 进而用Machine Learning来Train一个Model来预测之后的文章是否是灌水, 但是发现用肉眼看都不一定能确定答案, 只能退一步用叙述性统计的方式来做简单分析, 而且分析的一些事情有在关心炎上事件的的各位早已知道, 所以还满遗憾的.(玩Deep learning的话也玩不起来, Training成本太高 + 没有label无法进行.)
- 此外, 要用AI去自动判断文章的summary也是我研究不深的地方, 所以我只能用弱弱的关键字, 很粗糙的显示出高低分群的玩家通常评论的重点是什么
- metacritic没有限制有玩过的玩家才能评分也是个问题, 要灌水也容易
- 高分的趋势在后来才慢慢崛起是一件有点难解释的事情, Why? 灵魂升华需要时间?
- 8分9分的数量少于1分2分的数量也很奇怪 (上面的叙述有提过了)
如果有同行的Data Scientist, 或是统计界大神也可给个建议, Thanks.