发布时间:2024-03-24 13:01
以下内容源自课堂PPT及博客
仅供学习交流使用
请您阅读文章声明,默认同意该声明
配置环境miniconda+pycharm【机器学习】
实验1 贝叶斯分类【机器学习】
实验2 神经网络实现分类【机器学习】
实验3 手写字体识别【机器学习】
实验4 卷积神经网络【机器学习】
【一起啃西瓜书】机器学习-期末复习(不挂科)
机器学习【期末复习总结】——知识点和算法例题(详细整理)
机器学习期末考试
机器学习致力于研究如何通过计算的手段,利用经验来改善系统自身的性能,从而在计算机上从数据(经验)中产生“模型”,用于对新的情况给出判断(利用此模型预测未来的一种方法)。
数据集:一组样本的集合,这组记录的集合。
样本/示例:数据的特定实例,每条记录是关于一个事件或对象(这里是一个西瓜)的描述
特征/属性:反映事件或对象在某方面的表现或性质的事项
属性空间/样本空间/输入空间:属性张成的空间
维数:每个示例由d 个属性描述,d称为样本的"维数"。
训练数据:.训练过程中使用的数据称为"训练数据" (从数据中学得模型的过程称为"学习" 或"训练")
训练样本:每个样本称为一个训练样本"
训练集:训练样本组成的集合称为"训练集"
标记:关于示例结果的信息,例如"好瓜"。
样例:拥有了标记信息的示例
真相(ground-truth):数据的潜在的某种规律
假设(hypothesis):学得模型对应了关于数据的某种潜在规律
测试:学得模型后,使用其进行预测得过程
测试集:测试样本组成得集合
泛化能力:
模型
模型定义了特征与标签之间的关系。例如,垃圾邮件检测模型可能会将某些特征与“垃圾邮件”紧密联系起来。
两个阶段:
假设空间由3部分组成:
① 属性(特征)色泽,根蒂,敲声的取值分别有2,3,3种选择;
② 色泽,根蒂,敲声也许无论取什么值都合适,我们分别用通配符“ * ”表示
例如:“ 好瓜<—>(色泽= *)^(根蒂=蜷缩)^(敲声=浊响)”,
即“好瓜是根蒂蜷缩、敲声浊响的瓜,什么色泽都行”
③ 还有一种极端情况,有可能“ 好瓜 ”这个概念根本就不成立,
世界上压根就没有“好瓜”这种东西,我们用Ø表示这个假设。
所以,表中,色泽有2中取值,根蒂有3中取值,敲声有3中取值,
再加上各自的“通配项”,以及极端情况“好瓜概念根本不成立”的Ø,
故假设空间规模大小为:(2+1) * (3+1) * (3+1)+ 1 = 49。
学习过程看作一个在所有假设(hypothesis) 组成的空间中进行搜索的过程,搜索目标是找到与训练集"匹配"的假设,获得与训练集一致(即对所有训练样本能够进行正确判断)的假设,这就是我们学得的结果。
生成模型与判别模型
有监督学习算法可以进一步分为生成模型与判别模型
生成模型对样本特征向量与标签值的联合概率分布 p(x,y)
进行建模,或者对条件概率 p(x|y)
建模
生成模型需要对样本的特征向量服从某种概率分布建模
判别模型直接对后验概率 p(y|x)
建模
或者直接预测标签值 y=f(x)
,不使用概率模型
判别模型不对样本特征向量的概率分布进行建模
机器学习通用步骤
训练集:
用于训练模型,在训练过程中,可以优化模型,更改参数。
验证集:
在训练的过程中,使用验证数据选择性能最佳的方法,比较算法和训练参数,确定选择哪种结果最佳
回归
MAE(mean absolute error) = mean(abs(Prediction-Real))
MSE(mean squared error) = mean((Prediction-Real)^2)
RMSE(Root mean squared error) = sqrt(MSE)
分类
Accuracy , Precision , Recall , F1,ROC,P-R,AUC
对于分类任务,错误率和精度是最常用的两种性能度量:
错误率:分错样本占样本总数的比例
精度:分对样本占样本总数的比率
查准率:挑出来的西瓜中有多少比例是好瓜
查全率:所有好瓜中有多少比例挑了出来
(信息检索、Web搜索等场景)
统计真实标记和预测结果的组合可以得到“混淆矩阵”
类似P-R曲线,根据学习器的预测结果对样例排序,并逐个作为正例进行预测,以“假正例率”为横轴,“真正例率”为纵轴可得到ROC曲线,全称“受试者工作特征”.
真正率与假正率
通过实验可以估计学习算法的泛化性能,而==“偏差-方差分解”可以用来帮助解释泛化性能==。偏差-方差分解试图对学习算法期望的泛华错误率进行拆解。
偏差度量了学习算法期望预测与真实结果的偏离程度;即刻画了学习算法本身的拟合能力;
方差度量了同样大小训练集的变动所导致的学习性能的变化;即刻画了数据扰动所造成的影响;
噪声表达了在当前任务上任何学习算法所能达到的期望泛化误差的下界;即刻画了学习问题本身的难度。
泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度所共同决定的。给定学习任务为了取得好的泛化性能,需要使偏差小(充分拟合数据)而且方差较小(减少数据扰动产生的影响)。
贝叶斯定理中:先验概率、似然函数和后验概率。举例:在丛林发现某一生物(假设两类:人A或者猩猩B)有长长的手臂C,
先验概率:在丛林中出现猩猩的概率更大,即设是猩猩的概率p(B)为0.7,可得P(A)=0.3;(通过生活中的一些经验得到的,可轻易得到的)
似然函数为p(C|B),即猩猩表现为手臂较长的可能性(似然)较大;
后验概率为p(B|C),即通过手臂较长这个条件判断该生物为猩猩的概率。
所以贝叶斯定理的核心思想是:通过先验概率和似然函数最终求得后验概率。
4x20+20+20x3+3
伪代码
INPUT:数据集 D = {(xi,yi)}(i:1~N)
数据划分:训练集 D1 = {(xi,yi)}(i:1~m)
测试集 D2= {(xi,yi)}(i:1~p)
训练阶段:
定义学习率 η
在(0,1)内初始化神经元的连接权值和阈值;
REPEAT
FOR ALL (xk,yk)IN D1
根据当前样本的数据计算神经网络输出;
计算神经网络输出与标签值的误差;
根据误差计算各个参数的下降梯度;
根据下降梯度更新参数;
END UNTIL 达到迭代次数
OUTPUT = BP神经网络
测试阶段:
输入:所有(xk,yk)IN D2
根据D2样本的数据计算神经网络的输出;
输出预测准确率;
假设输入的图像为100*100像素(RGB)的图像, 且使用了卷积层进行处理,
其包括100个过滤器,每个的尺寸为5*5,则这个隐藏层需要多少参数(包括偏置参数)?
100*(5*5*3+1)=7600
所谓聚类问题,就是给定一个元素集D={x_0,x_1…….x_k},其中每个元素具有n个特征,使用某种算法将D划分成k个子集,要求每个子集内部的元素之间相异度尽可能低,而不同子集的元素相异度尽可能高。其中每个子集叫做一个簇(cluster)。
1、欧式距离(Euclidean Distance)
2、曼哈顿距离(Manhattan Distance)
3、闵氏距离(Minkowski Distance)
D={A(5,3),B(-1,1),C(1,-2),D(-3,-2)}
K=2
初始均值向量
两个初始中心1(B)、初始中心2(D)
u1=(-1,1),u2=(-3,-2)
C1=∅,C2=∅
分别计算A、B、C、D到中心u1,u2的欧式距离
Da1=sqrt(40) Da2=sqrt(89)
Db1=sqrt(0) Db2=sqrt(25)
Dc1=sqrt(13) Dc2=sqrt(16)
Dd1=sqrt(25) Dd2=sqrt(0)
C1={A,B,C},C2={D}
计算新的均值向量
u1=(5/3,2/3),u2=(-3,-2)
分别计算A、B、C、D到中心u1,u2的欧式距离
Da1=sqrt(16.5...) Da2=sqrt(89)
Db1=sqrt(7.2...) Db2=sqrt(25)
Dc1=sqrt(7.5...) Dc2=sqrt(16)
Dd1=sqrt(28.8...) Dd2=sqrt(0)
C1={A,B,C},C2={D}
计算均值向量
u1=(5/3,2/3),u2=(-3,-2)
不再改变
所以,C1={A,B,C},C2={D}
1.什么是支持向量机?
支持向量机(Support Vector Machine,简称为SVM)是一种有监督的机器学习方法,用来进行分类和回归分析。
2.支持向量机算法
1)解决线性可分问题
2)再将线性可分问题中获得的结论推广到线性不可分情况。
3.支持向量机的优势?
解决小样本、非线性及高维模式识别中表现出许多特有的优势。
4.支持向量机的种类:
硬间隔SVM(Hard-margin SVM)
核SVM (Kernel SVM)
软间隔SVM (Soft-margin SVM)
-A:应选择”正中间”, 容忍性好, 鲁棒性高, 泛化能力最强.
更能抵御训练样本位置的误差