Python金融数据挖掘与分析实战
上QQ阅读APP看书,第一时间看更新

3.3 鸟瞰机器学习

在进入数据建模之前,我们有必要了解一下机器学习的历史。机器学习是数据分析过程中最重要的工具,通过机器学习模型的建立,我们得以将复杂的问题转化为数学模型,并从数据中挖掘有价值的信息。

1.机器学习简史

目前我们熟知的机器学习分为两种不同的视角,一种来自统计学家,另一种来自计算机科学家。统计学家的研究是基于对数据的理解,本质上是数学研究,通常问的问题是数据产生的机理,如何通过概率解释事件的发生和规律。二项分布(Binomial)、泊松分布(Poisson)、齐普夫分布(Zipf)等统计学家提出的数据模型通常过于简化,大多数时候难以描述真实世界的复杂问题。而科学家从反复编写的if...else...程序中发觉,单靠人力无法穷尽现实中需要解决的问题,如何让机器自己找出事物之间的规律并自主进行最优决策才是正解。研究计算机进行数据理解和模式寻找的方法就是常说的机器学习。通过更为灵活的模型和更少的人类决策,机器学习如今可以更为完美地融合理论与实践。

2.机器学习算法类别

机器学习算法主要分为四种类别,包括监督学习(Supervised Learning)、无监督学习(Unsu-pervised Learning)、半监督学习(Semi-supervised learning,SSL)和强化学习(Reinforcement Learning,RL),下面分别进行介绍。

(1)监督学习

在监督学习中,提供给算法的训练数据中包含感兴趣的目标,也就是标签。

常见算法有K近邻算法(K Nearest Neighbor,KNN)、线性回归(Linear Regression)、逻辑回归(Logistic Regression)、支持向量机(Support Vector Machine,SVM)、决策树和随机森林(Decision tree & Random forest)、神经网络(Neural Network)。

(2)无监督学习

无监督学习的训练数据都是未经标记的,算法会在没有指导的情况下自动学习。简单地说,训练数据只有自变量没有因变量Y。

常见算法有K均值算法(K-Means)、基于密度的聚类方法(Density-Based Spatial Clusteringof Applications with Noise,DBSCAN)、最大期望算法(Expectation Maximization,EM)、可视化和降维(Visualization & Dimension Reduction)、主成分分析(Principal Components Analysis,PCA)、核主成分分析(Kernel Principal Component Analysis,Kernel PCA)、关联规则学习(Association Rule Learning)、先验算法(Apriori Algorithm)、频繁模式树增长算法(Frequent Pattern Growth,FP-Growth)、频繁项集算法(Equivalence Class Transformation,Eclat)。

(3)半监督学习

半监督学习分为:

·纯半监督学习(Pure Semi-Supervised Learning)

·直推学习(Transductive Learning)

(4)强化学习

强化学习分为:

·免模型学习(Model-Free)

·基于模型学习(Model-Based)

不难发现,在数据分析中,机器学习是一盘很大的“棋”,我们需要将注意力放在数据挖掘和运营上,通过实战案例学习如何灵活使用各种机器学习模型,从而做到在面对具体问题时有思路、有方法、有技术。