W.E.O. 世界黄油组织 » 讨论
对汉化与否和黄油评分高低关系的初步考察
#1 - 2017-4-8 13:15
ic (. ∧ ∧ ( =╹ w ╹=) <)
1. 前言
这几年--虽然前几年甚至更早以前也不少,在华语黄油圈里经常听到有人说这时候,自诩懂点统计的玩家可能会打开某个评分网站,或者在微博贴吧之类的地方随便搜搜。让我们拿bangumi举例好了,在网站上看看自己刚刚提到过的游戏的最近的评分如果这位玩家旁边还恰巧有一个听众的话,ta可能深以为然,等等,是不是哪里不对?
等等,讨论评价和分的话,在我们手边又有现成的评分网站数据的时候,难道不是应该把所有的数据都拿来分析做一个详尽的分析。如果不能做一个详尽的分析,难道不是应该谨言慎行,而不是随便瞟一眼搜一下凭不经思考的感觉发言?
刚好最近爬了一份bangumi的全站评分数据,心血来潮,我决定就“汉化了游戏评价就变差”这个命题做一点初步的分析。
说实话,这个命题的结论是什么我不是很在乎,写到这里的时候我也完全没有任何预设的结论。我就是觉得,不光是黄油圈,甚至是整个acg圈里,充斥着太多明明可以通过某些方式验证,却毫无道理的被人理所当然的当作真理的命题,而每一分每一秒--甚至就在我写下这段话的时候,我也毫不怀疑在某个角落里又有一段“随便瞟一眼数据”的臆测诞生了。
所以,如果看完接下来的分析能让你在下一次“臆测”之前犹豫那么一秒钟,思考一下如何谨言慎行...那就再好不过了。
2. 数据准备
数据来源
本次的数据源主要来自
* 批评空间: エロゲーマーのためのSQL
* 抽取空间的相关数据。
* bangumi: Bangumi_Spider
* bangumi没有现成的数据库接口,只好自己爬了。基本就是用的这个脚本,顺便修了几个bug加了几个column。
* vndb : 修改自Public Database API的一个API wrapper
* 没找到现成可用,带汉化发布时间的近几年中文游戏汉化列表,没想到反而是这个老外的网站做的最全...
数据筛选
为了保证接下来分析结果的可靠性,适当的筛选是必要的,使用的标准如下
* 被列为分析对象的游戏,必须在空间有>=50的data数,同时需要在bangumi有>=20的data数。此外,汉化前,汉化后的评分人数必须分别大于10,用户打分时标记的状态必须是“完成”。
* 阈值选择的标准是网站所有条目的平均data数,空间约为51, bangumi约为32,考虑到bangumi还有不少枪车球手游等更大众的游戏,取min=20
* 判断一个评分是汉化评分还是日文版评分,这里简单的认为在bangumi上汉化的时间点前的所有用户评分都是对原版的评分,反之则为汉化版的评分。当然,后半句标准不会特别准,但我似乎也找不出一个更有效的判断标准(可以想到的方法有:检查用户对该游戏打过的tag,如果有汉化字样则认为玩的是汉化版,检查用户打过的所有游戏,如果都是汉化过的游戏则认为其打的是汉化版...但怎么看都是些吃力不讨好的方法)。
* 只对2012-2016年内发布过汉化的游戏进行分析,原因是bangumi在此之前用户数量不足,可能没有积累足够的原版用户评分。在2017年发布汉化的游戏则可能没有积累足够的汉化用户评分。
* 如果一个游戏有多个版本的汉化, 以最早的版本为准。
* 未来数位等代理的官方简中/繁中基本不列入此次的分析,不详细展开了。
* 判断标准是vndb的patchflag,官方版本一般为False。
* 但是也有一部分是(疑似)错误标记,如果我没有理解错的话这应该是个汉化补丁,但是却被标记为了True这就没什么办法了。
* vndb还收录了很多体验版的汉化信息,为了筛选掉体验版进行了type是否为"complete"的判断,难以避免误杀了少量type非"complete"但同样是正式发布的汉化版。
* 3个网站的游戏细节上各有不同需要进行匹配。这里我采用先去除所有标点符号并把英文字母全部转小写再使用fuzzy-wuzzy进行模糊搜索的方法,原则是宁可放过不确定的,也要确保匹配到的三网站标题尽可能准确。
* 用Levenshtein distance直接对日语进行模糊搜索其实有点不太对,但是没找到什么现成好用的库...总之难免有疏漏,如果发现漏了什么游戏欢迎告知。
3. 结果与分析
本段中的所有统计图表均使用d3.js绘制。
中位数饼图
pre:汉化前分数中位数较高的游戏(比汉化后高0.1以上)
post:汉化后分数中位数较高的游戏(比汉化前高0.1以上)
equal:汉化前后分数中位数相同的游戏(汉化前汉化后分数差距在0.1之内)
可以看出,考虑中位数的话,大部分游戏其实评价差别不大,不过在有差异的游戏里,以汉化前评分较高的为主。
平均数饼图
pre:汉化前分数平均数较高的游戏(比汉化后高0.1以上)
post:汉化后分数平均数较高的游戏(比汉化前高0.1以上)
equal:汉化前后分数平均数相同的游戏(汉化前汉化后分数差距在0.1之内)
可以看出,考虑平均数的话,大部分游戏属于汉化前评价较高的类别。
中位数分布柱状图
pre:汉化前的游戏的中位数分布
post:汉化后的游戏的中位数分布
total:游戏全部评分数据的中位数分布
可以看到,在高分区汉化前的游戏较多,低分区汉化后的游戏居多。
平均数分布柱状图
pre:汉化前的游戏的平均数分布
post:汉化后的游戏的平均数分布
total:游戏全部评分数据的中位数分布
结论类似上面,此外评分分布基本呈正态。
然后来个t test
简单来说,就是个用来检测两组数据是否有显著差异方法。
这里假设两组数据互相独立,因为两组数据方差和大小不一样,所以每个游戏进行的是Welch's t-test
使用[scipy]计算p值(https://docs.scipy.org/doc/scipy ... tats.ttest_ind.html)
这里选择0.1为阈值。
然后把结果转换成文字云。因为这次的数据里总共有167个游戏,实在是太多了影响文字云的显示效果,在绘制文字云时我又多加了一个“游戏打分人数必须大于150”的限制。最后共留下了84个游戏。
需要注意的是,文字越大,说明差异越不明显(对第一个文字云而言)或越明显(对第二,第三个文字云而言)。同时,为了方便辨认,文字大小相同的两个游戏颜色也是相同的。
没有显著差异的游戏的文字云
大図書館の羊飼い在这个分类里还是挺可以接受的,对话轻松平易好理解,可以想见游戏的笑点能翻译出来的话评价确实不会相差太大。
SWAN SONG和キラ☆キラ也在这个分类里,有点意外。
BSD三部都在这个分类里,作为一个带有动作类要素的游戏有这种结果还是可以接受的。(其实做完之后发现VNDB把1和2的汉化时间计作了同一天,所以文本量这么长的游戏的汉化原来是同一天发布的吗...)
有显著差异,且汉化后评价变低的游戏的文字云
我要特意提一下弹丸,弹丸1的p值是8.54583145327e-09,2的p值是9.27049751749e-11,分别是第一小和第二小的p值...换而言之,差异最大最显著。
此外,CROSS†CHANNEL在没有显著差异的分类里,家族計画则在有显著差异且变差的分类里。
有显著差异,且汉化后评价变高的游戏的文字云
如果我没有看错的话,柚子的游戏好像不是评价差不多就是评价变高的..
这里我有点吃惊的是魔法使之夜竟然在这个分类里,可能是因为更多的用户认为这是个以演出取胜的游戏,而演出又是受汉化影响最小的因素之一?还有就是魔法使之夜是不是出过好几个汉化版本而且质量不一,会不会这方面也有影响...?
いろとりどりのセカイ属于有显著差异”且汉化后评价变高的游戏,但いろとりどりのヒカリ又属于“有显著差异”且汉化后评价变低的游戏...有点难以理解。
另外有朋友告诉我他印象里兰斯9也属于差异较大的游戏,不过我没打过就不太清楚了。
4. 结论
通过上面的分析,初步结论是:
汉化与否确实与游戏的评价有一定的关系。具体来说,因游戏而异。总体来说,汉化之后评价变差是普遍现象,但对更多的游戏来说,汉化之前之后评分差异不大。
其实还有不少其他想做的分析,但是在做t test的时候逐渐感觉自己进入了陌生的领域...(没有系统的学过统计学)。而更进一步多分析似乎需要不少统计学的知识,与其用一些自己也一知半解的方法得出一些可能错误的结论,还不如就此打住。可能有人注意到了本来准备了空间的数据最后没有用到,也是因为这个。
此外,目前所得出的结论也有如下限制。
* 数据准备方面的限制,前面已经总结过了。
* 严格来说实验对象应该是同一组人并保持除打的游戏是否为汉化外的其他条件尽可能相同,不过就现阶段来看似乎难以实现这一点。
* 数据的数量,虽然在收集数据时已经对数据的最小值进行了一定的控制,不过想必会有人质疑这点数据量不能说明什么问题。有意思的是,t test尤其在小样本数据上有优异的表现,所以这方面反而不是什么问题。
* 应该不是问题吧!欢迎比较了解这方面知识的朋友打脸。不过有人不质疑t test是否真的针对小样本分析效果好反而一拍脑门跟我说“你这数据要前后平均分至少相差2数据有50个以上才算有说服力”,有点不知道该说什么...
* 哦对了,顺便一问,对每个游戏的数据进行一次t test是不是不太对..?
接下来其实可以有更多的分析方向,比如
* 引入空间的数据,分类对数据进行分析。
* 比如,我们可能会发现,POVテキストGOOD分类下的游戏受汉化因素影响最大,毕竟越是文笔独特的作者写出来的东西越难翻译。
* 比如,拔作是不是会有更多的用户不需要汉化就打了然后直接打分,受汉化因素的影响会不会比较小?空间是有抜きゲー这个标签的(虽然好像不太准...),也可以依照这个进行分组。
* 一个经常被人提起的现象是,小众游戏汉化之后评价迅速降低。在这个方向上进行分析会不会有些成果?
* 以评分为标准对游戏进行更进一步分类
* 一个可能对结论是“名作始终是名作,分数越高,受汉化因素对影响越小”
* 现在游戏直播越来越火,如果有玩家是直播通关然后打分,和打汉化的打原版的玩家作对比是不是又会有所不同?
越写越多,再回头看看感觉自己真的只做了最基础的分析...
所以,我把数据放在了Google Drive,解压密码是TYUrYPff7S5DeCaEax36mpcq 欢迎有想法的朋友进行更进一步的分析。
这几年--虽然前几年甚至更早以前也不少,在华语黄油圈里经常听到有人说
xxx汉化了, 我去打了打,果然又是个吹出来的游戏
多大人了,你还玩汉化?不打原版等于没打,汉化体验多差啊
たま的又一个我喜欢的游戏被汉化了,又要有一堆什么都不懂的小学生一窝蜂涌上来的评价他们根本不了解的东西
嗨你看我说的没错吧,这游戏刚汉化,你看着打分的都是什么人,给的都是什么低分写的都是什么垃圾评价
可不是嘛!我看了下感觉你说的没错,汉化了明显分变低了!
等等,讨论评价和分的话,在我们手边又有现成的评分网站数据的时候,难道不是应该把所有的数据都拿来分析做一个详尽的分析。如果不能做一个详尽的分析,难道不是应该谨言慎行,而不是随便瞟一眼搜一下凭不经思考的感觉发言?
刚好最近爬了一份bangumi的全站评分数据,心血来潮,我决定就“汉化了游戏评价就变差”这个命题做一点初步的分析。
说实话,这个命题的结论是什么我不是很在乎,写到这里的时候我也完全没有任何预设的结论。我就是觉得,不光是黄油圈,甚至是整个acg圈里,充斥着太多明明可以通过某些方式验证,却毫无道理的被人理所当然的当作真理的命题,而每一分每一秒--甚至就在我写下这段话的时候,我也毫不怀疑在某个角落里又有一段“随便瞟一眼数据”的臆测诞生了。
所以,如果看完接下来的分析能让你在下一次“臆测”之前犹豫那么一秒钟,思考一下如何谨言慎行...那就再好不过了。
2. 数据准备
数据来源
本次的数据源主要来自
* 批评空间: エロゲーマーのためのSQL
* 抽取空间的相关数据。
* bangumi: Bangumi_Spider
* bangumi没有现成的数据库接口,只好自己爬了。基本就是用的这个脚本,顺便修了几个bug加了几个column。
* vndb : 修改自Public Database API的一个API wrapper
* 没找到现成可用,带汉化发布时间的近几年中文游戏汉化列表,没想到反而是这个老外的网站做的最全...
数据筛选
为了保证接下来分析结果的可靠性,适当的筛选是必要的,使用的标准如下
* 被列为分析对象的游戏,必须在空间有>=50的data数,同时需要在bangumi有>=20的data数。此外,汉化前,汉化后的评分人数必须分别大于10,用户打分时标记的状态必须是“完成”。
* 阈值选择的标准是网站所有条目的平均data数,空间约为51, bangumi约为32,考虑到bangumi还有不少枪车球手游等更大众的游戏,取min=20
* 判断一个评分是汉化评分还是日文版评分,这里简单的认为在bangumi上汉化的时间点前的所有用户评分都是对原版的评分,反之则为汉化版的评分。当然,后半句标准不会特别准,但我似乎也找不出一个更有效的判断标准(可以想到的方法有:检查用户对该游戏打过的tag,如果有汉化字样则认为玩的是汉化版,检查用户打过的所有游戏,如果都是汉化过的游戏则认为其打的是汉化版...但怎么看都是些吃力不讨好的方法)。
* 只对2012-2016年内发布过汉化的游戏进行分析,原因是bangumi在此之前用户数量不足,可能没有积累足够的原版用户评分。在2017年发布汉化的游戏则可能没有积累足够的汉化用户评分。
* 如果一个游戏有多个版本的汉化, 以最早的版本为准。
* 未来数位等代理的官方简中/繁中基本不列入此次的分析,不详细展开了。
* 判断标准是vndb的patchflag,官方版本一般为False。
* 但是也有一部分是(疑似)错误标记,如果我没有理解错的话这应该是个汉化补丁,但是却被标记为了True这就没什么办法了。
* vndb还收录了很多体验版的汉化信息,为了筛选掉体验版进行了type是否为"complete"的判断,难以避免误杀了少量type非"complete"但同样是正式发布的汉化版。
* 3个网站的游戏细节上各有不同需要进行匹配。这里我采用先去除所有标点符号并把英文字母全部转小写再使用fuzzy-wuzzy进行模糊搜索的方法,原则是宁可放过不确定的,也要确保匹配到的三网站标题尽可能准确。
* 用Levenshtein distance直接对日语进行模糊搜索其实有点不太对,但是没找到什么现成好用的库...总之难免有疏漏,如果发现漏了什么游戏欢迎告知。
3. 结果与分析
本段中的所有统计图表均使用d3.js绘制。
中位数饼图
pre:汉化前分数中位数较高的游戏(比汉化后高0.1以上)
post:汉化后分数中位数较高的游戏(比汉化前高0.1以上)
equal:汉化前后分数中位数相同的游戏(汉化前汉化后分数差距在0.1之内)
可以看出,考虑中位数的话,大部分游戏其实评价差别不大,不过在有差异的游戏里,以汉化前评分较高的为主。
平均数饼图
pre:汉化前分数平均数较高的游戏(比汉化后高0.1以上)
post:汉化后分数平均数较高的游戏(比汉化前高0.1以上)
equal:汉化前后分数平均数相同的游戏(汉化前汉化后分数差距在0.1之内)
可以看出,考虑平均数的话,大部分游戏属于汉化前评价较高的类别。
中位数分布柱状图
pre:汉化前的游戏的中位数分布
post:汉化后的游戏的中位数分布
total:游戏全部评分数据的中位数分布
可以看到,在高分区汉化前的游戏较多,低分区汉化后的游戏居多。
平均数分布柱状图
pre:汉化前的游戏的平均数分布
post:汉化后的游戏的平均数分布
total:游戏全部评分数据的中位数分布
结论类似上面,此外评分分布基本呈正态。
然后来个t test
简单来说,就是个用来检测两组数据是否有显著差异方法。
这里假设两组数据互相独立,因为两组数据方差和大小不一样,所以每个游戏进行的是Welch's t-test
使用[scipy]计算p值(https://docs.scipy.org/doc/scipy ... tats.ttest_ind.html)
stats.ttest_ind(pre,post, equal_var = False)
如果p值大于0.05或0.1,则我们不能拒绝“两组数据没有显著差异”的假设。反之,则可以得出“两组数据有显著差异”的结论。
然后把结果转换成文字云。因为这次的数据里总共有167个游戏,实在是太多了影响文字云的显示效果,在绘制文字云时我又多加了一个“游戏打分人数必须大于150”的限制。最后共留下了84个游戏。
需要注意的是,文字越大,说明差异越不明显(对第一个文字云而言)或越明显(对第二,第三个文字云而言)。同时,为了方便辨认,文字大小相同的两个游戏颜色也是相同的。
没有显著差异的游戏的文字云
大図書館の羊飼い在这个分类里还是挺可以接受的,对话轻松平易好理解,可以想见游戏的笑点能翻译出来的话评价确实不会相差太大。
SWAN SONG和キラ☆キラ也在这个分类里,有点意外。
BSD三部都在这个分类里,作为一个带有动作类要素的游戏有这种结果还是可以接受的。(其实做完之后发现VNDB把1和2的汉化时间计作了同一天,所以文本量这么长的游戏的汉化原来是同一天发布的吗...)
有显著差异,且汉化后评价变低的游戏的文字云
我要特意提一下弹丸,弹丸1的p值是8.54583145327e-09,2的p值是9.27049751749e-11,分别是第一小和第二小的p值...换而言之,差异最大最显著。
此外,CROSS†CHANNEL在没有显著差异的分类里,家族計画则在有显著差异且变差的分类里。
有显著差异,且汉化后评价变高的游戏的文字云
如果我没有看错的话,柚子的游戏好像不是评价差不多就是评价变高的..
这里我有点吃惊的是魔法使之夜竟然在这个分类里,可能是因为更多的用户认为这是个以演出取胜的游戏,而演出又是受汉化影响最小的因素之一?还有就是魔法使之夜是不是出过好几个汉化版本而且质量不一,会不会这方面也有影响...?
いろとりどりのセカイ属于有显著差异”且汉化后评价变高的游戏,但いろとりどりのヒカリ又属于“有显著差异”且汉化后评价变低的游戏...有点难以理解。
另外有朋友告诉我他印象里兰斯9也属于差异较大的游戏,不过我没打过就不太清楚了。
4. 结论
通过上面的分析,初步结论是:
汉化与否确实与游戏的评价有一定的关系。具体来说,因游戏而异。总体来说,汉化之后评价变差是普遍现象,但对更多的游戏来说,汉化之前之后评分差异不大。
其实还有不少其他想做的分析,但是在做t test的时候逐渐感觉自己进入了陌生的领域...(没有系统的学过统计学)。而更进一步多分析似乎需要不少统计学的知识,与其用一些自己也一知半解的方法得出一些可能错误的结论,还不如就此打住。可能有人注意到了本来准备了空间的数据最后没有用到,也是因为这个。
此外,目前所得出的结论也有如下限制。
* 数据准备方面的限制,前面已经总结过了。
* 严格来说实验对象应该是同一组人并保持除打的游戏是否为汉化外的其他条件尽可能相同,不过就现阶段来看似乎难以实现这一点。
* 数据的数量,虽然在收集数据时已经对数据的最小值进行了一定的控制,不过想必会有人质疑这点数据量不能说明什么问题。有意思的是,t test尤其在小样本数据上有优异的表现,所以这方面反而不是什么问题。
* 应该不是问题吧!欢迎比较了解这方面知识的朋友打脸。不过有人不质疑t test是否真的针对小样本分析效果好反而一拍脑门跟我说“你这数据要前后平均分至少相差2数据有50个以上才算有说服力”,有点不知道该说什么...
* 哦对了,顺便一问,对每个游戏的数据进行一次t test是不是不太对..?
接下来其实可以有更多的分析方向,比如
* 引入空间的数据,分类对数据进行分析。
* 比如,我们可能会发现,POVテキストGOOD分类下的游戏受汉化因素影响最大,毕竟越是文笔独特的作者写出来的东西越难翻译。
* 比如,拔作是不是会有更多的用户不需要汉化就打了然后直接打分,受汉化因素的影响会不会比较小?空间是有抜きゲー这个标签的(虽然好像不太准...),也可以依照这个进行分组。
* 一个经常被人提起的现象是,小众游戏汉化之后评价迅速降低。在这个方向上进行分析会不会有些成果?
* 以评分为标准对游戏进行更进一步分类
* 一个可能对结论是“名作始终是名作,分数越高,受汉化因素对影响越小”
* 现在游戏直播越来越火,如果有玩家是直播通关然后打分,和打汉化的打原版的玩家作对比是不是又会有所不同?
越写越多,再回头看看感觉自己真的只做了最基础的分析...
所以,我把数据放在了Google Drive,解压密码是TYUrYPff7S5DeCaEax36mpcq 欢迎有想法的朋友进行更进一步的分析。
单纯从存在的事实这一角度来看,似乎这事也没必要追求样本数然后去统计。而且不如说,攻其一点使劲黑那才符合本意是不是(坏水
单纯的计算平均分差异我觉得就不是很科学,如果有什么能完全符合t test的假设的收集数据的方法就好了..
其实结果可解释性这么强是不是说明这方面的影响没那么大
1. RecordSpider里的self.id_max=300000小了,可以改成400000
2. Azure blob storage我觉得应该是一个optional的功能,可以用try: import except ImportError:的方式
3. 现在想想可以加入python3的支持,把mysqldb换成python2,3都支持的interface应该就行了(我是用的pymysql)
4. sai改了网站式样,所以RecordSpider现在爬不到东西,如果我没有记错的话,应该是对
进行某种修改..
5. 如果我没有记错的话,你的spider没有记录英文/日文原名,我觉得如果要做和其他网站的对比的话这个还挺重要的,可以考虑把日文原名也爬下来
应该还有几个想说的,抱歉,过了一个月实在是想不起来了
Thanks again for using Bangumi_Spider!
对于模型的选择其实只能凭经验了,对于这个问题我也没啥推荐的,一般来说可以仔细看看数据,多详细做一点EDA(探索性数据分析)看看数据有什么规律或者关系,这样才可能做出一些比较合理的假定。但统计里面一般做了假定还是需要检验的,检验假定是否合理。我感觉上面提到的Neyman-Rubin模型也许可以尝试。
不过你这里的问题主要还是t检验的使用的问题,上面也说了要使用t检验必须要假定样本来自正态总体,并且t检验主要检验的是关于均值的问题。