一、深度学与传统机器学的区别 1:在数据量较少的情况下,机器学和深度学训练后的数据是差不多的;但是在数据量较多的情况下,使用深度学训练数据较好。 2:机器学选择算法时需要调参,深度学不需要调参,深度学会发生过拟合的情况。 3:传统机器学的计算资源耗费较高。 二、深度学的应用 1:自然语言应用 2:计算机视觉 三、分类任务的步骤 1:收集数据并给定标签(需要收集很多数据,基本以万为单位)。 2:训练一个分类器(选择相应的算法)。 3:测试评估(计算准确率、精确率、召回率、ROC曲线)。 四、传统机器学的计算步骤—以knn邻近算法为例 1:求距离的两种方法 ①欧氏距离:距离平方的算术平方根(l2范式) ②曼哈顿距离:距离和的绝对值(l1范式) 2:交叉验证 在进行图像分类的时候,是按照照片上的像素点来进行分类,但是使用l1、l2范式进行像素比较是不够的,图像更多的是按照背景和颜色被分类,而不是语义主体分身。 五、线性分类中的得分函数和损失函数 1、非线性分类器:SVM高斯核函数(超曲线) 2、线性分类器:逻辑回归、KNN算法(超平面) 线性分类器由两部分组成: ①得分函数:是一个从原始图像到类别分值的映射函数 ②损失函数:用来量化预测得到的分类标签的得分与真实标签之间的一致性 该线性分类器可以转化成为一个最优化问题,在最优化过程中,通过更新score function的参数来最小化loss function。解决最优化问题选择使用梯度下降。梯度下降就是让梯度中所有骗到函数都下降到最低点的过程,它的作用是优化一个损失函数。 3、得分函数 公式:f(x,w)=wx+b w为权重,b为偏移量(和输入数据及类别有关) eg:inuput 30721 w->307110 x->30721 b->101 4、损失函数:评估分类效果的好坏 计算过程:错误的得分减去正确的得分,加上惩罚因子再与0比较,如果大于0,就加在损失值上 六、过拟合现象 1、发生过拟合现象的原因 ①:数据有噪声 ②:训练数据不足 ③:训练模型过度导致模型非常复杂 2、防止过拟合 ①:减少特征属性 ②:增大样本数量 ③:使用正则化 3、怎么使用正则化 一般采用l1、l2范式 七、前向传播—softmax分类器 1、评估得分的方法 ①损失函数:错误的减去正确的得分再加上惩罚因子 ②0-1之间采用sigmoid函数 把得分映射为概率,z代表得分,再通过log函数取得分的相反数,得到相应的损失值,概率越大损失值越小,反之。计算后的概率和为1. 2、SVM与softmax的区别 第一步:进行得分计算 第二步: ①hinge loss(SVM)多分类支持向量机:计算分值的一个差值情况 ②cross-entropy loss(softmax)概率方法:分类的准确率对错误的分类敏感程度更高 八、反向传播—relu函数 1、前向传播与反向传播的区别 ①前向传播:通过录入输入值,进行一系列的计算后得到损失值,是一种计算的过程(输入->输出) ②反向传播:通过输出值,验证输入值是否合理,对w(权重值)做出一些改变,是一种验证的过程,目的是为了让损失值变小 通过反向传播来更新w权重值 如果w增大了,loss变大了,那么就需要让w减少;反正就让w增大 2、链式求导法则(复合函数求导) 需要分别计算x,y,z对于f来说有多大的影响 九、总结 1、前向传播:输入数据,随机得到一组权重值,第一步得到每一个样本在每一个分类上的得分,代入损失函数(sigmoid\relu),计算损失值; 计算损失值的方法: ①svm:错误的得分-正确的得分+惩罚值的累加和 ②softmax_loss:获取得分的概率值,每一个样本的所有分类的得分概率的和为1,取正确分类的log值的负数 2、反向传播:不断更新权重值w来让损失值达到最低点 使用方法:梯度下降 通过链式求导法则求得每一层的导数值 w+=delta w-=delta