【深度学习入门】深度学习四板斧其二 -- 机器学习入门1

机器学习西瓜书作者周志华视频
-一、机器学习
经典定义:利用经验改善系统自身的性能
随着该领域的发展,目前主要研究智能数据分析的理论和方法,并已成为智能数据分析技术的源泉之一。
-典型的机器学习过程
对于大量的训练数据,使用学习算法对数据进行训练得到模型;新数据样本导入模型后从而得到输出。
-机器学习理论基础
PAC(Probably Approximately Correct):概率近似正确
-基本术语

  • 数据集;训练(#得到模型),测试(#使用模型)
  • 示例(instance)(#无结果),样例(example)(#有结果)
  • 样本(sample)
  • 属性(attribute),特征(feature);属性值
  • 属性空间,样本空间,输入空间
  • 特征向量(feature vector)
  • 标记空间,输出空间
  • 假设(hypothesis)
  • 真相(ground-truth)
  • 学习器(learner)
  • 分类(#离散),回归(#连续)
  • 二分类,多分类
  • 正类,反类
  • 监督学习(supervised learning)(#拿到的数据有结果)
  • 无监督学习(unsupervised learning)(#拿到的数据没有结果)
  • 未见样本(unseen instance)
  • 未知“分布”
  • 独立同分布(i.i.d.)
  • 泛化(generalization)

-归纳偏好(Inductive Bias)
机器学习算法在学习过程中对某种类型假设的偏好,一般原则:奥卡姆剃刀(Occam‘s razor)(#若非必要,勿增实体)
学习算法的归纳偏好是否与问题本身匹配,大多数时候直接决定了算法能否取得好的性能。
-NFL定理
一个算法la若在某些问题上比另一个算法lb好,必存在另一些问题lb比la好。
实际情形我们通常只关注自己正在试图解决的问题。#具体问题,具体分析
最优方案往往来自:按需设计、度身定制
-过拟合和欠拟合
泛化误差:在“未来”样本上的误差
经验误差:在训练集上的误差,亦称“训练误差”
过拟合(Overfitting):#真判假
欠拟合(Underfitting):#假判真
-二、三大问题
如何获得测试结果?-> 评估方法
如何评估性能优劣?-> 性能度量
如何判断实质差别?-> 比较检验
-评估方法
怎么获得“测试集”?
留出法(hold-out):拥有的数据集分为训练集和测试集

  • 保持数据分布一致性(分层采样)
  • 多次重复划分(100次随机划分)
  • 测试集不能太大、不能太小(1/5 - 1/3)

k-折交叉验证法(cross validation):
若k = m,则得到“留一法”(leave-one-out,LOO)。
自助法(bootstrap):
基于“自助采样”,亦称“有放回采样”、“可重复采样”。
约有36.8%的样本不出现,称为“包外估计”(out-of-bag estimation)。

  • 训练集与原样本集同规模
  • 数据分布有所改变

-调参与验证集
调参过程相似:先产生若干模型,然后基于某种评估方法进行选择
参数调得好不好往往对最终性能有关键影响。
验证集(validation set):训练集分出一部分,作为i验证集(#专用于调参数)
算法参数选定后,要用“训练集+验证集”重新训练最终模型。
-性能度量(performance measure)
性能度量是衡量模型泛化能力的评价标准,反映了任务需求,使用不同的性能度量往往会导致不同的评判结果。
回归任务常用均方误差。
错误率和精度,查准率P和查全率R。
1/F1 = 1/2(1/P + 1/R) ,1/Fb = 1/(1+b平方)(1/P + b平方/R)
-比较检验
统计假设检验(hypothesis test)为学习器性能比较提供了重要依据。

  • 交叉验证t检验(基于成对t检验)
  • McNemar检验(基于列联表,卡方检验)

-三、线性回归
f(xi)= wxi + b 使得 f(xi)≈ yi ,
对E(w,b)进行最小二乘参数估计,分别对w和b求导,令导数为0,得到闭式解。
-多元(Multi - variate)线性回归
f(xi)= wTxi + b 使得 f(xi)≈ yi ,采用最小二乘法求解,
若XTX满秩或正定,则w有唯一解,若XTX不满秩,则有多个w解,
此时需求助于归纳偏好,或引入 正则化(regularization)。
-广义线性模型
若令lny = wTx + b ,则得到对数线性回归(log-linear regression)。
一般形式:y = g-1( wTx + b),g(.)是单调可微的联系函数。
-对率回归
ln(y/(1-y)) = wTx + b,其中y/(1-y)称为几率(odds),反映了x作为正列的相对可能性。
“对数几率回归”(logistic regression)简称“对率回归”。 # 它是分类学习算法

  • 无需事先假设数据分布
  • 可得到“类别”的近似概率预测
  • 可直接应用现有数值优化算法求取最优解

-对率回归求解
使用最大似然估计法,得到目标函数。
高阶可导连续凸函数,可用经典的数值优化方法,如梯度下降法/牛顿法。
-类别不平衡(class-imbalance)
不同类别的样本比例相差很大,“小类”往往更重要。
常见类别不平衡学习方法:

  • 过采样(oversampling)例:SMOTE
  • 欠采样(undersampling)例:EasyEnsemble
  • 阈值移动(threshold-moving)

-四、决策树
决策基于“树”结构进行决策

  • 每个“内部结点”对应于某个属性上的“测试”(test)
  • 每个分支对应于该测试的一种可能结果(即该属性的某个取值)
  • 每个“叶结点”对应于一个“预测结果”

策略:“分而治之” (divide-and-conquer)
自根至叶的递归过程,在每个中间结点寻找一个“划分”(split or test)属性
三种停止条件:
(1)当前结点包含的样本属于同一类别,无需划分;
(2)当前属性集为空,或是所有样本在所有属性上取值相同,无法划分;
(3)当前结点包含的样本集合为空,不能划分。
-信息增益(Information Gain): #Gain(D,a)
信息增益直接以信息熵为基础,计算当前划分对信息熵所造成的变化。
-增益率(Gain Ratio): #Gain_ratio(D,a)
启发式:先从候选划分属性中找出信息增益高于平均水平的,再从中选取增益率最高的
-基尼指数(Gini Index):#Gini_index(D,a)
Gini(D)越小,数据集D的纯度越高

-五、决策树的剪枝
在数据带噪时剪枝可能将泛化性能提升25%,
剪枝是决策树对付“过拟合”的主要手段!
基本策略:
预剪枝(pre-pruning):提前终止某些分支的生长
后剪枝(post-pruning):生成一颗完全树,再“回头”剪枝
-缺失值
现实应用中,经常会遇到属性值“缺失”(missing)现象,
基本思路:样本赋权,权重划分

-六、支持向量机(Support Vector Machine,SVM)
凸二次规划问题,能用优化计算包求解,但可以有更高效的办法。
-对偶问题
拉格朗日乘子法,得到最终模型需满足KKT条件。
解的稀疏性:训练完成后,最终模型仅与支持向量有关,
支持向量机因此得名。
-求解方法-SMO
为提高鲁棒性,通常使用所有支持向量求解的平均值。

-特征空间映射
若不存在一个能正确划分两类样本的超平面,
将样本从原始空间映射到一个更高维的特征空间,始样本在这个特征空间内线性可分。
-核函数(Kemel Function)
绕过显示考虑特征映射、以及计算高维内积的困难。
Mercer定理:若一个对称函数所对应的核矩阵半正定,则它就能作为核函数来使用。
任何一个核函数,都隐式定义了一个RKHS(Reproducing Kernel Hilbert Space,再生核希尔伯特空间)。
“核函数选择”成为决定支持向量机性能的关键!

-七、神经网络
“神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应”。
“简单单元”神经元模型:M-P神经元模型
神经元的“激活函数”:

  • 理想激活函数是阶跃函数,0表示抑制神经元而1表示激活神经元
  • 阶跃函数具有不连续、不光滑等不好的性质,常用的是Sigmoid函数

多层前馈网络结构:

  • 多层网络:包含隐层的网络
  • 前馈网络:神经元之间不存在同层连接也不存在跨层连接
  • 隐层和输出层神经元亦称“功能单元”(Functional Unit)

-万有逼近能力
多层前馈网络有强大的表示能力(“万有逼近性”)。
仅需一个包含足够多神经元的隐层,多层前馈神经网络就能以任意精度逼近任意复杂度的连续函数。
如何设置隐层神经元数是未决问题。实际常用“试错法”。
-BP(BackPropagation误差逆传播算法)
迄今最成功、最常用的神经网络算法,可用于多种任务(不仅限于分类)。
BP是一个迭代学习算法,在迭代的每一轮中采用广义感知机学习规则。
BP算法基于梯度下降策略,以目标的负梯度方向对参数进行调整。

-贝叶斯决策论(Bayesian Decision Theory)
概率框架下实施决策的基本理论。
贝叶斯判定准则(Bayes decision rule):

  • h*称为贝叶斯最优分类器(Bayes optimal classifier),其总体风险称为贝叶斯风险(Bayes risk)
  • 反映了学习性能的理论上限

判别式(Discriminative)模型:
思路:直接对P(c|x)建模
代表:决策树、BP神经网络、SVM
生成式(Generative)模型:
思路:先对联合概率分布P(x,c)建模,再由此获得P(c|x)
代表:贝叶斯分类器
注意:贝叶斯分类器 ≠ 贝叶斯学习
-极大似然估计
先假设某种概率分布形式,再基于训练样例对参数进行估计。
-朴素贝叶斯分类器(Naive Bayes Classifier)
主要障碍:所有属性上的联合概率难以从有限训练样本估计获得
组合爆炸;样本稀疏

-八、集成学习(Ensemble Learning):#使用多个模型
如何得到好的集成?令个体学习器“好而不同”
“多样性(diversity)”是关键 — 误差-分歧分解(error-ambiguity decomposition)
-集成学习方法
系列化方法:AdaBoost、GradientBoost、LPboost
并行化方法:Bagging、Random Forest、Random Subspace
-Boosting:A flowchart illustration
-Bagging
-多样性(diversity)
多样性是集成学习的关键。
多样化度量:一般通过两分类器的预测结果列联表定义

  • 不合度量(disagreement measure)
  • 相关系数(correlation coefficient)
  • Q-统计量(Q-statistic)
  • k-统计量(k-statistic)

-九、聚类(Clustering)
在“无监督学习”任务中研究最多、应用最广
目标:将数据样本划分为若干个通常不相交的“簇(cluster)”
即可以作为一个单独过程(用于找寻数据内在的分布结构)也可作为分类等其他学校任务的前驱过程。
聚类的“好坏”不存在绝对标准。
聚类也许是机器学习中“新算法”出现最多、最快的领域;总能找到一个新的“标准”,使以往算法对它无能为力。
-常见聚类方法
原型聚类:k均值聚类、学习向量量化(LVQ)、高斯混合聚类
密度聚类:DBSCAN、OPTICS、DENCLUE
层次聚类:AGNES(自底向上)、DIANA(自底向下)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值