在B站上听李沐老师的课记录的笔记
1.残差神经网络(Residual Neural Network,简称ResNet)属于深度学习模型的一种,其核心在于让网络的每一层不直接学习预期输出,而是学习与输入之间的残差关系。
残差块使得很深的网络更加容易训练,甚至可以训练一千层的网络。残差网络对随后的深层神经网络设计产生了深远影响,无论是卷积类网络还是全连接类网络。
2.感知机是一个二分类模型,是最早的AI模型之一·它的求解算法等价于使用批量大小为1的梯度下降它不能拟合XOR函数,导致的第一次 AI寒冬.
3.sigmoid激活函数
Tanh激活函数
ReLU激活函数
4.验证数据集和测试数据集
验证数据集:一个用来评估模型好坏的数据集,例如拿出 50% 的训练数据,不要跟训练数据混在一起(常犯错误)
测试数据集:只用一次的数据集。例如未来的考试、我出价的房子的实际成交价、用在 Kaggle私有排行榜中的数据集等
5 K-则交叉验证
在没有足够多数据时使用(这是常态)
算法:
将训练数据分割成K块
For i=1,...,K
使用第i块作为验证数据集,其余的作为训练数据
报告K个验证集误差的平均
常用:K=5或10
6 多层感知机使用隐藏层和激活函数来得到非线性模型。常用激活函数是Sigmoid,Tanh,ReLu,使用 Softmax来处理多类分类。超参数为隐藏层数,和各个隐藏层大小
7 automl模型:自动化机器学习也称为自动化 ML 或 AutoML,是将机器学习模型开发过程中耗时的反复性任务自动化的过程。
8 训练误差和泛化误差
训练误差:模型在训练数据上的误差
泛化误差:模型在新数据上的误差
例子:根据摸考成绩来预测未来考试分数,在过去的考试中表现很好(训练误差)不代表主来考试一定会好(泛化误差)。学生A通过背书在摸考中拿到很好成绩,学生B知道答案后面的原因。
9 训练数据集:训练模型参数
验证数据集:选择模型超参数
非大数据集上通常使用k-折交叉验证
10 过拟合和欠拟合
数据
模型容量
简单 | 复杂 | |
低 | 正常 | 欠拟合 |
高 | 过拟合 | 正常 |
模型容量:拟合各种函数的能力,低容量的模型难以拟合训练数据,高容量的模型可以记住所有的训练数据。(过拟合未必是一件坏事)
11 VC维:统计学习理论的一个核心思想。对于一个分类模型,VC等于一个最大的数据集的大小,不管如何给定标号,都存在一个模型来对它进行完美分类。
线性分类器的VC 维
2 维输入的感知机,VC维=3。能够分类任何三个点,但不是4个(xor)
支持N维输入的感知机的VC维是N+1,一些多层感知机的VC维 O(N log2N)
12 VC 维的用处
提供为什么一个模型好的理论依据,它可以衡量训练误差和泛化误差之间的间隔。但深度学习中很少使用,因为衡量不是很准确,计算深度学习模型的VC维很困难。
13总结:
模型容量需要匹配数据复杂度,否则可能导致欠拟合和过拟合
统计机器学习提供数学工具来衡量模型复杂度
实际中一般靠观察训练误差和验证误差