cs231n spring 2017 lecture3 Loss Functions and Optimization
1. Loss function是用来量化评估当前预测的好坏,loss function越小表明预测越好。
几种典型的loss function:
1)Multiclass SVM loss:一般的SVM是针对0、1两类标签,现在是把它拓展到n类标签。它的物理意义是:现在要预测一个样本的标签,根据之前训练出的权重求出这个样本在所有标签的得分,正确的标签的得分如果大于其他标签的得分(往往还会加一个safety margin,就是要求要足够大),则loss function不增加;否则loss function就会增加其他标签的得分超过正确标签的得分的差值。这种loss function的取值从0到无穷大。在初始化训练的时候,权重W往往被设计成很小的随机数,所以计算出的每个标签的得分都接近0,在这种情况下,如果标签数为n,正确的标签和其他标签比较了n-1次,每次比较的得分差值都小于safety margin(假设safety margin是1),则loss function的值为n-1,
2) Softmax (cross-entropy) loss :在深度学习里很常用。把计算出的分数带入到softmax函数里,这个描述了“概率”,最终的loss function就是对softmax函数取负log。这里的概率加了引号是因为这只是一种对0~1之间取值且累加和为1的变量的诠释。事实上,当正则化项的权重增加时,优化出的W会变小,对于每个类别softmax loss会更接近。所以softmax loss对不同类别的排序才重要,具体数值并不重要。
两种loss funciton的实际表现差不多,不同的人有不同偏好。这两种loss function的差别,对于SVM loss来说,标签贴对就可以了,继续增加得分并不会减小loss,因为反正都已经取0了;但对于Softmax loss来说,正确标签的得分越高越好,错误标签的得分越低越好。
2. 正则化(Regularization)。同样的loss值会对应很多组不同的权重W,正则化描述了对参数的某种偏好,例如奥卡姆剃刀原则。这时候Loss function = Data loss + Regularzation。可以这么理解正则化:比如用多项式拟合数据,有两种方式抑制过拟合,一种是直接限定多项式的次数,另一种是不限定次数,但是在loss function里增加跟次数相关的一项,它会使算法更倾向于找低次数的多项式。正则化就是后一种方式。正则化可以帮助解决过拟合的问题。一般正则化项只包含W,不包含b。
3. 优化的关键是求导,有两种方式求导,一是数值方法,二是解析方法。实际应用中,用解析的方式求导,用数值的方式验证求导是否正确。每一步的迭代距离(learning rate)是hyperparameter,需要提前设定,Justin Johson说他调参的时候永远是最先检查learning rate是否大体正确。
4. Stochastic Gradient Descent (SGD):loss function是所有特征相加,当特征非常多的时候,计算就会很慢(比如图像,每个像素都是一个特征),这时候可以用一个子集(一般32/64/128个特征)来计算。
5. 图像特征:
1)Color Histogram,评估各种颜色在图像中的比重。
2)Histogram of Oriented Gradients (HoG),把图像分成一个个小方格,在每个小方格内提取边,设定边有9种朝向,评估图像局部的边界特征。物体识别中很有用。
3)Bags of Words,把图像分成一个个小方格(或者提取特征点后在特征点附近取小方格),每个方格可以用一个编码来描述,编码需要自己设计,所有的编码组成一个词典。这是从自然语言处理中衍生过来的。
cs231n spring 2017 lecture3 Loss Functions and Optimization的更多相关文章
- cs231n spring 2017 lecture3 Loss Functions and Optimization 听课笔记
1. Loss function是用来量化评估当前预测的好坏,loss function越小表明预测越好. 几种典型的loss function: 1)Multiclass SVM loss:一般的S ...
- CS231n笔记 Lecture 3 Loss Functions and Optimization
这一讲总体上就是引入Loss Function的概念,以及让大家对优化有一个初步的认识,和其他课程里面说的内容大同小异. Loss function Multiclass svm loss multi ...
- cs231n spring 2017 lecture13 Generative Models 听课笔记
1. 非监督学习 监督学习有数据有标签,目的是学习数据和标签之间的映射关系.而无监督学习只有数据,没有标签,目的是学习数据额隐藏结构. 2. 生成模型(Generative Models) 已知训练数 ...
- cs231n spring 2017 lecture11 Detection and Segmentation 听课笔记
1. Semantic Segmentation 把每个像素分类到某个语义. 为了减少运算量,会先降采样再升采样.降采样一般用池化层,升采样有各种"Unpooling"." ...
- cs231n spring 2017 lecture7 Training Neural Networks II 听课笔记
1. 优化: 1.1 随机梯度下降法(Stochasitc Gradient Decent, SGD)的问题: 1)对于condition number(Hessian矩阵最大和最小的奇异值的比值)很 ...
- cs231n spring 2017 lecture13 Generative Models
1. 非监督学习 监督学习有数据有标签,目的是学习数据和标签之间的映射关系.而无监督学习只有数据,没有标签,目的是学习数据额隐藏结构. 2. 生成模型(Generative Models) 已知训练数 ...
- cs231n spring 2017 lecture11 Detection and Segmentation
1. Semantic Segmentation 把每个像素分类到某个语义. 为了减少运算量,会先降采样再升采样.降采样一般用池化层,升采样有各种“Unpooling”.“Transpose Conv ...
- cs231n spring 2017 lecture7 Training Neural Networks II
1. 优化: 1.1 随机梯度下降法(Stochasitc Gradient Decent, SGD)的问题: 1)对于condition number(Hessian矩阵最大和最小的奇异值的比值)很 ...
- cs231n spring 2017 lecture9 CNN Architectures 听课笔记
参考<deeplearning.ai 卷积神经网络 Week 2 听课笔记>. 1. AlexNet(Krizhevsky et al. 2012),8层网络. 学会计算每一层的输出的sh ...
随机推荐
- Restful设计相关
1.get,从服务器获取资源. 2.post 新增资源. 3.put 更新完整资源. 4.patch 更新部分资源. 5. delete 删除资源.
- PAT B1045 快速排序
题目如下: 1045 快速排序 (25 point(s)) 著名的快速排序算法里有一个经典的划分过程:我们通常采用某种方法取一个元素作为主元,通过交换,把比主元小的元素放到它的左边,比主元大的元素放到 ...
- JavaScript学习总结(七)
这一讲我们来学习DOM编程(十分重要),有了DOM编程,我们就可以操作任意的HTML元素了. DOM,文档对象模型 一个html页面被浏览器加载的时候,浏览器就会对整个html页面上的所有标签都会创建 ...
- [FJOI2015]火星商店问题(线段树分治+可持久化Trie)
重新写一年前抄题解的那题,当时我啥都不会只是Ctrl+C,Ctrl+V写过的题,今天重新写一遍. 题解: 不会线段树分治,还是学一下这东西吧,这是我的第一道线段树分治. 首先对于特殊商品,可以直接可持 ...
- memset的常见用法
头文件 <cstring> 描述 因为memset函数按照字节填充,所以一般memset只能用来填充char型数组 ------------------------------------ ...
- WAMP常用环境配置
自定义网站目录 修改目录位置 如下图,打开httpd.conf文件. 查找DocumentRoot(两处),做如下修改: #demo为自定义网站目录,下面不再说明 DocumentRoot " ...
- 题解 P2831 【愤怒的小鸟】
题目 我的天,这题是真的卡精度...... 主要是精度很不好处理,经本蒟蒻测验,精度在\(10^{-6}\)会比较好优雅 [分析] 对于这种某个变量特别小\((\leq 31)\)的题目,本蒟蒻第一反 ...
- www.wolframalpha.com
单个查询 http://www.wolframalpha.com/input/?source=nav&i=simplify+radical+sqrt(567) notebook https:/ ...
- NWERC 2015
2015-2016 Northwestern European Regional Contest (NWERC 2015) F H没做 似乎只有 B 题有点意思 D:数论分块枚举所有上取整区间,只需要 ...
- document.write的时机
document.write第一次加载进入页面的时候会紧跟文档,写入内容.但是如果在文档已经加载完毕之后,再通过点击的方式调用函数的话会直接把整个文档覆盖掉.