分类:
2009-09-18 19:49:30
看到一篇旧闻 Video game Everquest 2 provides new way to study human behaviour ,说,研究关于个体、群体行为、社会关系等等。还不只是叫兽教授关注这些,还有个新闻说美国人还打算从WOW里面挖出几个恐怖份子来,看起来很有意思,看来先生还是不要玩WOW的好。
顺手放狗一找,发现大量巨人和SUN合作在网游里头搞数据挖掘的,还提出了“二次策划”的研发模式,看来此公司确有能人。放狗不止找回这些东西,行业内盛大、网易、渡口等等都有相关信息,包括不少中小公司,这些信息包括公司的招聘广告、新闻,当然也有些可能是软文,是啥文倒是都无所谓,关键是——突然发现这个行业确实已经进步了很多。数据挖掘在MMORPG上面的应用确实非常有吸引力,举例来说,可以用来验证游戏设计、平衡性、部分甚至完全地替代代价高成效低的用户调研等等。
还可以更神奇,举个例子,当你在一个MMORPG游戏里头奋战几个月之后突然感到很无聊,做任务、下副本、打装备都已经让你疲倦,不打算玩下去了,这个时候有人来找你聊天,你聊下来觉得这人很投缘,简直可以成为你现实世界的终身伴侣,并且感叹——“啥也别(四声)说了,都是缘分啊!”,你很鸡冻激动,但这可能根本就不是缘分而是‘系统’为你做了一次‘红娘’,目的是让你获得更好的游戏体验。作为一个程序员,我并不是在开玩笑,‘系统’做这个事情的方法很简单,只需要先找到适合你的那个人,然后用你的id向他(她/它)发一句——“hi”,当然他(她/它)可能也只回复了一句“hi”,但是——很可能一段轰轰烈烈的爱情就这样开始了,-_______-
作为一个生活在现实世界的程序员,从技术的角度来说,前面这个例子关键要解决两个个问题:哪些人感觉无聊了、也就是说哪些人潜在的流失用户,可能还得知道是为什么。
像是你眼神呆滞、茶饭不思、内分泌失调这一类的情形,‘系统’肯定是没法知道地,因为你和‘系统’之间的交互是通过键盘鼠标,一般来说键盘鼠标无法捕捉这些信息传递给‘系统’。那么系统怎么办呢?查找哪些用户的每小时操作指令数量偏低?查看哪些玩家的单位时间收益偏低?与其他玩家交流频度低?刚刚损失一件以上的极品装备?
我几乎可以肯定——能利用google和baidu搜到我这篇Blog的人们,现在已经想出很多论据来质疑前面这些方法的可行性了,程序员都很擅长质疑 :) 。但是‘系统’可以利用数据挖掘方法来做这个事情,例如‘系统’把玩家行为数据集分为‘活跃用户’、‘流失用户’两类,也就是作为训练数据,怎么区分‘活跃用户’还是‘流失用户’这个不多说了。然后再利用分类(classification)器(例如kNN),对你的游戏行为做分类。再进一步说,前面这个过程需要‘领域专家’来‘提取’玩家行为使程序能获得向量化数据,而且为了处理效率,还很可能需要对玩家行为数据做降维(dimension reduction)处理再输入分类器,否则可能就变成——只是理论上可行了。