如果机器学习的目标是建模样本的特征 和标签 之间的关系,并且训练集中每个样本都有标签,那么这类机器学习称为监督学习。
根据标签类型的不同,监督学习又可以分为回归问题
、分类问题
和结构化学习
问题
回归问题中的标签 是连续值,比如未来几年预测房屋价格的走势,价格是一个连续的值。最后会按照顺序把输出值串接起来,构成一个曲线。
分类问题中的标签 是离散的类别。在分类问题中,学习到的模型也称为分类器。分类问题根据其类别数量又可分为二分类多分类问题
其中分类问题中最常用的算法就是KNN
KNN (k近邻算法)
KNN的原理就是当预测一个新的值x的时候,选择它距离最近的k个点,这k个点中属于哪个类别的点最多,x就属于哪个类别
无监督学习是指从不包含目标标签的训练样本中自动学习到一些有价值的信息
聚类就是按照某个特定标准把一个数据集分割成不同的类或簇。
最经典的就是k-means算法聚类,它的流程为:
定义:一种能在减少数据集中特征数量的同时,避免丢失太多信息并保持/改进模型性能的方法
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5g1CL2h0-1670682812363)(https://gitee.com/sansejindeyihan/images/raw/master/image-20221210215423869.png)]
以该二维向量 x x x为例,左图无论丢弃 x 1 x_1 x1 选择$ x_2 , 还 是 丢 弃 ,还是丢弃 ,还是丢弃x_2 选 择 选择 选择x_1 都 不 能 很 好 地 体 现 这 些 点 的 特 征 . 但 是 , 如 果 我 们 将 都不能很好地体现这些点的特征.但是,如果我们将 都不能很好地体现这些点的特征.但是,如果我们将 x_1 轴 和 轴和 轴和 x_2$轴平移和旋转一下, 变成 F 1 F_1 F1轴和$ F_2 轴 , 即 使 不 考 虑 变 量 轴,即使不考虑变量 轴,即使不考虑变量F_2$也无损大局。
可以描述输入空间
和输出空间
的真实映射关系的最优函数
一个好的模型要尽可能地与真实真实映射函数一,那么得到模型后我们要判断模型的好坏,那我们要引入一个概念:损失函数。
最直观的损失函数是表现模型在训练集上的错误率,即0-1 损失函数:
当预测值和真实值相等时,结果为0,否则为1
平方损失函数经常用在预测标签为实数值的任务中
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z2SQrTA0-1670682812364)(https://gitee.com/sansejindeyihan/images/raw/master/image-20221210222052837.png)]
前面有0.5是因为求导后抵消
用平方而不用绝对值是因为便于求导并且可以更明显的表现出误差
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BpSWDOFj-1670682812365)(https://gitee.com/sansejindeyihan/images/raw/master/image-20221210222418181.png)]
欠拟合:泛化能力差,训练样本集准确率低,测试样本集准确率低。
过拟合:泛化能力差,训练样本集准确率高,测试样本集准确率低。
合适的拟合程度:泛化能力强,训练样本集准确率高,测试样本集准确率高
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PE1GRWml-1670682812365)(https://gitee.com/sansejindeyihan/images/raw/master/image-20221210222937634.png)]
在机器学习中,最简单、常用的优化算法就是梯度下降法,我们可以不断往负梯度的方向搜索(也就是导数或者偏导数的相反方向),直到达到最低点。
梯度下降可以理解为你站在山的某处,想要下山,此时最快的下山方式就是你环顾四周,哪里最陡峭,朝哪里下山,一直执行这个策略,在第N个循环后,你就到达了山的最低处。