基础知识
需要准备知识:
第一层:通过算法学习了解基本原理
第二层:数学方面的推导
第三层:会用语言或者工具包解决问题,掌握一门语言,实现算法原型
第四层:会优化算法
纲要:
机器学习的几个基本概念
机器学习的实质:在输入空间到输出空间中的各种假设形成的假设空间中,去搜索一个假设,这个假设对当前数据拟合情况最好
机器学习方法的三要素
经验风险与结构风险
目标:
了解和机器学习相关的概念
了解机器学习的实质
了解常见的损失函数
了解经验风险与结构风险
机器学习方法流程:
以有监督学习为例:
输入数据raw data--》特征工程features--》模型训练models--》模型部署deploy in production--》模型应用 predictions
常见概念:
输入空间(input space):将输入的所有可能取值的集合称作输入空间,空间来自线性代数的个里面
输出空间(output space):将输出的所有可能取值的集合称作输出空间
例如预测父子身高,通过父亲身高,预测儿子身高
父亲身高的所有可能的输入值的集合叫输入空间,可能是0到无穷大,但结合实际情况没有那么大
儿子身高所有可能输出的集合叫输出空间
生存率数据集中输入空间是多维的,不是一维的。输出空间只有生存结果,0或1
-
输入空间和输出空间可以是有限元素的集合,也可以是整个欧式空间
-
输入空间和输出空间可以是连续值集合,也可以是离散值集合
-
输入空间和输出空间可以是同一个空间,也可以是不同空间
-
通常输出空间比输入空间小
特征空间Feature:即属性,每个输入实例的各个组成部分(属性)称作原始特征,基于原始特征还可以扩展出更多的衍生特征
特征向量Feature Vector:由多个特征组成的集合,称作特征向量
特征空间 Feature Space:将特征向量存在的空间称作特征空间
例如父亲身高165,那么对这个实例来说,特征就是165,特征向量是一维的,就是165。
-
特征空间中每一维都对应了一个特征(属性),生存率中的每个特征
-
特征空间可以和输入空间相同,也可以不同,例如泰坦尼克号中的票价,输入空间实际输入的是票价,出于对建模的需要,我们把这个值进行了离散化,我们把他作成了高中低三档。所以特征空间和输入空间不同
-
需将实例从输入空间映射到特征空间,上面把票价映射到票价等级
-
模型实际上是定义于特征空间之上的,输入空间映射到特征空间,用特征空间的值才去建模的。有时候特征空间和输入空间一样,但实际上还是用的特征空间
假设空间:
假设空间Hypothesis Space:由输入空间到输出空间的映射的集合,称作假设空间。
监督学习的目的在于学习一个由输入到输出的映射,这一映射由模型来表示。换句话说,学习的目的就在于找到最好的这样的模型,模型属于由输入空间到输出空间的映射集合,这个集合就是假设空间。假设空间的确定意味着学习范围的确定---李航《统计学习方法》
假设空间指的是问题所有假设组成的空间,我们可以把学习过程看作是在假设空间中搜索的过程,搜索目标是寻找与训练集“匹配”的假设---周志华《机器学习》
性别有2中,信用度有3种,是否购买有2中结果,所以所有的可能性为12个。但是性别2*3的6个结果中要么买,要么不买,12种可能性只会产生6个确定结果。所以我们把这6个抽取出来的结果叫做一个假设,即Hi
一共有几个假设H呢?如图2的6次方,通常还会加上一个全空的假设
列举出来如下几个假设,我们会从假设空间的所有假设中选出来一个与实际情况最接近的模型
机器学习方法三要素:
三要素:
机器学习方法通常都是由模型、策略和算法三部分构成:方法=模型+策略+算法
模型:确定学习范围,输入空间到输出空间的映射关系,学习过程即为从假设空间中搜索适合当前数据的假设
-
分析当前需要解决的问题,确定模型
-
需要解决什么问题
-
预测分类:分类classification
-
泰坦尼克号生存或者遇难
-
-
预测取值:回归Regression
-
孩子身高、成本与价格走势
-
-
发现结构:聚类Clustering
-
很多客户,对客户购买力聚类:有钱爱买,没钱爱买,有钱不爱买,没钱不爱买
-
-
发现异常数据:异常检测Anomaly Detection
-
-
策略:确定学习规则,从假设空间众多的假设中选择到最优的模型的学习标准或规则
-
要从假设空间中选择一个最合适的模型出来,需要解决以下问题:
-
评估某个模型对单个训练样本的效果
-
评估某个模型对训练集的整体效果
-
评估某个模型对包括训练集、预测集在内的所有数据的整体效果
-
-
定义几个指标用来衡量上述问题:
-
损失函数:0-1损失函数、平方损失函数、绝对损失函数、对数损失函数等
-
损失函数Loss Function:用来衡量预测结果和真实结果之间的差距,其值越小,代表预测结果和真实结果越一致。通常是一个非负实值函数。通过各种方式缩小损失函数的过程被称为优化。损失函数记做L(Y,f(x))
-
0-1损失函数(0-1 LF):预测值和实际值精确相等则“没有损失”为0,否则意味着“完全损失”,为1预测值和实际值精确相等有些过于严格,可以采用两者的差小于某个阈值的方式。相等就没有损失,不相等就完全损失。所以出来的模型大概率效果非常差。在不同场景下,严格程度不一样,例如有没有癌症
-
绝对损失函数Absolute LF:预测结果与真实结果差的绝对值。简单易懂,但是计算不方便,求导非常麻烦
-
平方损失函数QuadraticLF:预测结果与真实结果差的平方
-
优点
-
每个样本的误差都是正的,累加不会被抵消
-
平法对于大误差的惩罚大于小误差
-
数据计算简单、友好,导数为一次函数
-
-
对数损失函数Logarithmic LF或对数似然损失函数log-likehood loss function:对数函数具有单调性,在求最优化问题时,结果与原始目标一致。可将乘法转化为加法,简化计算
-
L(Y,P(Y|X))=-logP(Y|X)
-
-
指数损失函数 Exponential LF:单调性、非负性的优良性质,是的越接近正确结果误差越小
-
折叶损失函数(Hinge LF):也称铰链损失,对于判定边界附近的点的惩罚力度较高,常见于SVM
-
适用场景:
-
0-1:理想状况模型
-
log:逻辑回归、交叉熵
-
平方:线性回归
-
Exponential:AdaBoosting
-
Hinge:SVM、soft margin
-
-
-
-
风险函数:经验风险、期望风险、结构风险
-
经验风险(Empirical Risk):损失函数度量了单个样本的预测结果,要想衡量整个训练集的预测值与真实值的差异,将整个训练集所有记录均进行一次预测,求取损失函数,将所有值累加,即为经验风险。经验风险越小说明模型F(x)对训练集的拟合程度越好。但是经验风险不靠谱,我可以通过增加函数复杂度来提升拟合度,6次函数可以达到完全拟合,但是用到其他数据集上,会出现结果相差巨大,即过拟合
-
风险函数Risk Function:又称为期望损失、期望风险。所有数据集(包括训练集和预测集,遵循联合分布P(X,Y))的损失函数的期望值
-
经验风险vs期望风险:
-
期望风险是模型对全局(所有数据集)的效果;经验风险是模型对局部(训练集)的效果
-
期望风险往往无法计算,即联合分布P(X,Y)通常是未知的;经验风险可以计算
-
当训练集足够大时,经验风险可以替代期望风险,即局部最优代替全局最优
-
-
样本比较小的时候,仅关注经验风险,很容易过拟合,过拟合是指对当前样本效果非常好,对其他样本效果非常差。
-
结构风险Structural Risk:在经验风险的基础上,增加一个正则化项Regularizer或者叫做惩罚项
-
正则化项:即惩罚函数,该项对模型向量进行惩罚,从而避免过拟合问题。正则化方法会自动削弱不重要的特征变量,自动从许多的特征变量中“提取”重要的特征变量,减小特征变量的数量级
-
范数:使参数稀疏,指的是有些项直接就没有了。
-
-
-
结构风险与经验风险:
-
经验风险越小,模型决策函数越复杂,其包含的参数越多
-
当经验风险函数小到一定程度就会出现了过拟合现象
-
防止过拟合现象的方式,就要降低决策函数的复杂度,让惩罚项J(f)最小化
-
需要同时保证经验风险函数和模型决策函数的复杂度都达到最小化
-
把两个式子融合成一个式子得到结构风险函数然后对这个结构风险函数进行最小化
-
-
-
-
-
基本策略
-
经验风险最小 EMR:Empirical Risk Minimization
-
结构风险最小 SRM:Structural Risk Minimization
-
算法:按规则在范围内学习,学习模型的具体的计算方法,通常是求解最优化问题