最近在公司又重走了一趟数据挖掘路。打开Orange Dataming的网站,找到所有widget,逐个widget去看使用说明,并搜索其中的算法的大概思想。

其实起源是我突发奇想的想了解如何数据降维,增强数据的可读性。不停的搜索找到了PCA,进一步搜索PCA找到了以前用过的Orange,于是就尝试全面的看一次。

据说大数据分成这么几个方向,大数据收集,PB级。数据检索和统计,追求实时性。想基于大量数据进一步自动判断和测算,数据挖掘。让数据智能再牛逼一些,深度学习。

数据挖掘首先提供了一些方法,将多维数据以降维的形式展现,方便看清数据集的特性,然后基于数据集的特性进行分类,回归和聚类。看起来主要做自动判断和测算工作,并呈现这种工作成果。

分类是将一条多维的数据,标注为某一分类类型,进一步根据类型做后续操作,而不是看着大量数据干瞪眼。如图像识别,其中一种技术就可以用分类。

回归和分类类似,区别是将一条多维的数据,计算出某一结果值,这一结果值其实是分类的数值化表现,区别是分类结果是离散结果,回归是连续结果。

聚类则是在原始没有分类的情况下,通过用算法观察数据,查看数据集分块情况,来提出分类规划。

数据又分3种类型,对象直接属性数据;对象的子对象属性数据;对象基于时间的事件日志数据。这3种数据类型,都可以进行统计得到报表,但报表只是数据的汇总,如何得到关于对象未知的知识呢?数据挖掘。

我以前想做游戏外挂的数据挖掘,但以前基础差,没有想出思路,这次则想通了,通过玩家的事件日志数据,进行挖掘:

  1. 尽量设想外挂常常发生的事件
  2. 将这些事件分别按角色按等级进行汇总统计,作为角色的属性
  3. 将统计到的所有角色和事件汇总属性,进行聚类分析,逐个验证可能的离群类或者离群点
  4. 重复1、2、3步骤,设计不同模型交叉验证

如果这都找不出外挂角色的分类群,这也真是没救了。