第一章笔记:大部分内容来自于书籍《Python Machine Learning By Example》Third Edition
1 介绍
机器学习就是从经验(数据)中学习,通过机器学习,其实就是创造了一个不知疲倦的行业专家。
与机器学习不同的是,自动化需要人为预定义一些规则,然后让机器进行工作,然而面对大数据或多任务环境下,这类人工成本很高,那么可以通过让机器自己学习其中的规律。机器学习就是这样与输入数据,期望,环境进行交互,从而产生由一个或多个数学模型组成的模式。
常见的机器学习有三种:无监督学习(Unsupervised learning,分类与回归),监督学习(Supervised learning,聚类),强化学习(Reinforcement learning,与动态环境交互)。
2 核心
对数据进行泛化,就是机器学习的核心,而泛化过程中可能出现两种错误:欠拟合和过拟合。
其中,欠拟合相对简单,因为我们很容易可以从数据拟合效果中看出是否发生了欠拟合,以及通过加强训练,模型复杂化等进行改进。
所以,我们将重心放在解决过拟合问题上,有三种方法:交叉验证,正则化,特征选择及降维。
1)交叉验证
就是让除测试集外的数据中的子集都能成为一次验证集,来评估模型,并根据所有划分的结果,取平均来调节超参数,得到一种较优的超参组合。通常有k折交叉验证,留一交叉验证等方案。
2)正则化
利用一些先验知识,限制模型的一些参数的学习,来让模型往一个较为正确的方向训练,还能防止模型变得特别复杂。
3)特征选择
删除一些特征,不可避免的会带来一些信息的丢失,但是通常那些特征是冗余且不相关的,所以信息可以忽略不计,并且将特征数减少后,能简化模型,也符合奥卡姆剃刀原理。有两种方法:一种是一开始使用较多特征,然后逐渐删除;另一种是一开始使用较少特征,然后逐渐增加。
与数据有关的另一个重要点是特征工程,即数据预处理。我们人可以较为容易地分辨出一些无用信息,但是机器不同,所以这一部分包括缺失值处理,量化数据,缩放等等。
1)缺失值处理
有插补法和删除法,删除法就是直接删除有缺失信息的特征,但是容易造成信息丢失;插补法就是按照某种规则往空位填补值,比如算术平均,中值,或某种特定值。
2)量化数据
对于文字这类数据,机器无法直接处理,所以我们需要将其量化。如果是直接对一些文字进行有顺序地数字编码,这种人为引入的关联容易造成一些错误,所以我们通常使用one-hot编码,这样组成的数据是一个稀疏矩阵,可以使用scipy库进行方便处理。
3)缩放
有些数据的值的量级可能比较大,而另外的一些数据则比较小,就导致模型容易发生倾向。通常可以对数据进行标准化(减均值除以方差),有时得给分子分母都加上一个小常数,避免除以0的错误发生。
3 组合模型
如果模型过于简单,效果较差,有时可以通过组合多个模型,来达到一个更好的效果。可以分为:Bagging,Boosting,Stacking。
1)Bagging
也叫Bootstrap aggregating,主要步骤为:通过重置采样(有放回的采样)获得多个数据集,然后对每个数据集训练一个模型出来,最终的结果由这些模型投票选举或者取平均得出。
2)Boosting
比起Bagging里模型的并行训练,Boosting里的训练有一种先后关系,即站在巨人的肩膀上,后一个模型的训练数据会根据前一个模型的输出而变动,比如有些数据加大权重,有些数据减小权重,对Boosting的改进通常就区别于加权的方案。当然,如果模型输出错误较多,也容易导致错误的累积。
3)Stacking
Stacking里的模型训练先后关系更为明显,即后一个模型的输入数据是前一个模型的输出,这里的模型可以是不同算法的模型。
知识补充
1)偏差-方差平衡:偏差和方差的关系,与P值和R值的关系很像,是一种负相关的关系,低偏差意味着模型在训练集上表现不错,但很可能导致高方差;低方差也可能因为模型训练不够,导致高偏差,所以在这种情况下,要想衡量模型的好坏,需要有一个指标能平衡考虑模型的偏差和方差,这就是MSE(mean squared error),它可以分解为偏差的平方+方差,在实际中,时常会给它再加上一个未知的error。
2)中心极限定理(CLT):如果样本量足够大,则变量均值的采样分布将近似于正态分布,而与该变量在总体中的分布无关。中心极限定理意味着即使数据分布不是正态的,从中抽取的样本均值的分布也是正态的。在分析领域,我们每天都会遇到各种各样的数据,而源数据的分布并不总是被我们所知道的,但是,因为我们了解中心极限定理,所以我们甚至不需要关心源数据的分布,因为我们总是可以得到正态分布,来进行分析,即样本估计总体,还有对样本进行分类,根据两参数归类到不同的总体。
3)正态分布:描述了一种观测的现象,中间多,两边少;涉及到的两个重要参数:均值和标准差,如果能得到一件事的这两个参数,那么根据经验法则,就能得到这件事的一个统计规律,从而进行更好地数据分析。特例是标准正态分布。
4)奥卡姆剃刀原理:不必小题大做,应化繁为简。