首页 > 代码库 > 数据挖掘入门

数据挖掘入门

  正式学习之前,所需要的预备知识(主要是数学)应该包括:微积分(偏导数、梯度等等)、概率论与数理统计(例如极大似然估计、中央极限定理、大数法则等等)、最优化方法(比如梯度下降、牛顿-拉普什方法、变分法(欧拉-拉格朗日方程)、凸优化等等)——如果你对其中的某些名词感到陌生,那么就说明你尚不具备深入开展数据挖掘算法学习的能力。你会发现到处都是门槛,很难继续进行下去。

  第一条线路:

  (基于普通最小二乘法的)简单线性回归 -> 线性回归中的新进展(岭回归和LASSO回归)->(此处可以插入Bagging和AdaBoost的内容)-> Logistic回归 ->支持向量机(SVM)->感知机学习 -> 神经网络(初学者可先主要关注BP算法)-> 深度学习

  之所以把它们归为一条线路,因为所有这些算法都是围绕着 y = Σxiβi,这样一条简单的公式展开的,如果你抓住这条线索,不断探索下去,就算是抓住它们之间的绳索了。其中蓝色部分主要是回归,绿色部分主要是有监督的分类学习法

  基于普通最小二乘的线性回归是统计中一种有着非常悠久历史的方法,它的使用甚至可以追溯到高斯的时代。但是它对数据有诸多要求,例如特征之间不能有多重共线性,而且岭回归和LASSO就是对这些问题的修正。

  当沿着第一条路线学完的时候,其实你已经攻克机器学习的半壁江山了!当然,在这个过程中,你一定时刻问问自己后一个算法与前一个的联系在哪里?最初,人们从哪里出发,才会如此设计出它们的。

  第二条路线:

  K-means  -> EM  -> 朴素贝叶斯 -> 贝叶斯网络 -> 隐马尔科夫模型(基本模型,前向算法,维特比算法,前向-后向算法) (->卡尔曼滤波

这条线路所涉及的基本都是那些各种画来画去的图模型,一个学术名词是 PGM 。这条线的思路和第一条是截然不同的!贝叶斯网络、HMM(隐马尔科夫模型),也就是绿色字体的部分是这个线路中的核心内容。而蓝色部分是为绿色内容做准备的部分。K-means 和 EM 具有与生俱来的联系,认识到这一点才能说明你真正读懂了它们。而EM算法要在HMM的模型训练中用到,所以你要先学EM才能深入学习HMM。所以尽管在EM中看不到那种画来画去的图模型,但我还把它放在了这条线路中,这也就是原因所在。朴素贝叶斯里面的很多内容在,贝叶斯网络和HMM里都会用到,类似贝叶斯定理,先验和后验概率,边缘分布等等(主要是概念性的)。最后,卡尔曼滤波可以作为HMM的一直深入或者后续扩展,红色的部分可以作为HMM的后续扩展延伸内容。

 

应用层面,R、MATLAB和Python都是做数据挖掘的利器,另外一个基于Java的免费数据挖掘工具是Weka,这个就只要点点鼠标,甚至不用编代码了。给一个软件界面的截图如下

技术分享

 

可以参阅的书籍:

中文版(含翻译版)

1. 李航,统计学习方法

2. Pang-Ning Tan, Michael Steinbach  , Vipin Kumar, 数据挖掘导论

3. Peter Harrington 机器学习实践

英文版

4. Stuart Russell,  Peter Norvig, Artificial Intelligence : A Modern Approach(Third Edition)

5. Trevor Hastie, Robert Tibshirani,Jerome Friedman, The Elements of Statistical Learning:Data Mining, Inference, and Prediction

 

数据挖掘入门