斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时7
课时7 线性分类器损失函数与最优化(下)
我们为什么要最大化对数概率而非直接最大化概率?
你在做逻辑斯蒂回归时,如果你只是想要最大化概率,那你使用log是无意义的。因为log函数是单调函数,最大化概率和最大化对数概率是等价的。
Softmax vs. SVM
我们调整其中的评分,使值上下浮动,对于SVM而言,分类正确率可能不会改变。因为测试样例中的边界是由一个大数决定的,SVM对于那种误分类评分低的样例不是很在意。但是对Softmax而言,任何一个测试样例都能提升分类器的性能。SVM具有附加的稳定性,一旦样例满足边界条件,这个样例点就不会影响损失函数,而Softmax则要将所有样例点都纳入考量。SVM分类器对一小搓接近于分类边界的样例较为敏感,对于离边界很远的样例点不敏感;而softmax是一个基于所有数据的函数。
正则化损失只作用于权重并不作用于数据

实际操作过程中,当你想要给神经网咯建立一个新模型时,你需要求解损失值,然后求解梯度值,然后你还要进行梯度值的检查,确保你的微积分求解是正确的。
因为要找出损失值的最小值,而梯度值为负值时才会不断向下找最小值。
步长也叫作学习速率,是最需要关注的重要参数
我们拥有完整的数据集,但是在实际操作的时候我们只是从训练集取样出一批用来估算损失函数的梯度。从而我就有了初始的更新方向,然后我们再把这个过程一次又一次的重复,来确定找到损失函数最低的W。因为只是用来训练集的一个很小的子集,所以得出的梯度很有可能就是一个噪声。这是取样算梯度的缺点,但是使用一个小子集来计算可以提高运算速度,也就是让我们可以计算更多的次数来估算梯度从而得出最低的损失函数。
一般来说,当我们在讨论神经网络的优化时,会在损失函数中看到很多的波动,大家可以把损失函数想象成一个大盆地,盆地的最低点就是我们要找的最小值。在这个盆型图像中,会有很多小坑。当你的函数优化到这个坑里面时,你有可能把这个小坑的最小值当做损失函数的最小值。但是其实在这个坑外面还有更小的函数值。所以这就是一个合适的学习速率的重要性。
如果把线性分类器一开始放在没有经过训练的图片上时,我们的分类器没办法解决像素的问题。人们习惯于做的是计算图片不同的特征,然后计算不同特征的描述,最终人通过统计总结来理解这张图片是什么东西。
HOG/SIFT特征
他会使用图片中,不同物体之间边缘的方向来做分类,在图片中这些边缘有不同的方向,我们把不同方向上的边缘用直方图做一个总结统计一下这张图片上不同方向的边缘都有多少,然后通过这个边缘数量的统计来得出图片中有什么东西。
斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时7的更多相关文章
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时3
课时3 计算机视觉历史回顾与介绍下 ImageNet有5000万张图片,全部都是人工清洗过得,标注了超过2万个分类. CS231n将聚焦于视觉识别问题,图像分类关注的是大图整体:物体检测告诉你东西具体 ...
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时1
课时1 计算机视觉历史回顾与介绍上 CS231n:这一一门关于计算机视觉的课程,基于一种专用的模型架构,叫做神经网络(更细一点说,是卷积神经网络CNN).计算机视觉是人工智能领域中发展最为迅猛的一个分 ...
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时26&&27
课时26 图像分割与注意力模型(上) 语义分割:我们有输入图像和固定的几个图像分类,任务是我们想要输入一个图像,然后我们要标记每个像素所属的标签为固定数据类中的一个 使用卷积神经,网络为每个小区块进行 ...
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时24&&25
课时24 深度学习开源库使用介绍(上) Caffe 被用于重新实现AlexNet,然后用AlexNet的特征来解决其他事情 用C++书写的,可以去GitHub上面读取源代码 主要四个类: Blob可以 ...
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时8&&9
课时8 反向传播与神经网络初步(上) 反向传播在运算连路中,这是一种通过链式法则来进行递推的计算过程,这个链路中的每一个中间变量都会对最终的损失函数产生影响. 链式法则通常包含两部分,局部梯度和后一层 ...
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时12&&13
课时12 神经网络训练细节part2(上) 训练神经网络是由四步过程组成,你有一个完整的数据集图像和标签,从数据集中取出一小批样本,我们通过网络做前向传播得到损失,告诉我们目前分类效果怎么样.然后我们 ...
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时11
课时11 神经网络训练细节part1(下) 2010年,Glorot等人写的论文,我们称之为Xavier初始化,他们关注了神经元的方差表达式.他们推荐一种初始化方式,那就是对每个神经元的输入进行开根号 ...
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时10
课时10 神经网络训练细节part1(上) 没有大量的数据也不会有太多影响,只需要找一个经过预训练的卷积神经网络然后进行调整 从数据集中抽样一小批数据, 将数据运入卷积神经网络中来计算损失值 通过反向 ...
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时14&&15
课时14 卷积神经网络详解(上) CNN处理的是一些数据块,在这之间有很多层,一系列的层将输入数据变换为输出数据,所以完成操作的中间量不仅是NN时候讲的那些向量,而是立体结构,有宽,高和深度,在整个计 ...
随机推荐
- nexus批量更新jar包
nexus批量更新jar包 学习了:https://blog.csdn.net/newtelcom/article/details/54379607 手动进行jar包的拷贝,在维护界面内进行批量更新:
- react jsx 数组变量的写法
1.通过 map 方法 var students = ["张三然","李慧思","赵思然","孙力气","王萌 ...
- 安卓自带下拉刷新SwipeRefreshLayout加入上拉刷新功能
在项目里面要用到刷新库.曾经都是使用第三方的.只是看到官方出了 SwipeRefreshLayout之后就用SwipeRefreshLayout.可是不知道什么原因官方SwipeRefreshL ...
- mysql 环境变量之 group_concat_max_len
今天使用mysql group_concat()函数,对查询的数据进行字符串连接操作. 不过由于查询的结果较多,连接后的结果很长导致不能完全显示. 查询手册发现如下说明: (先说说group_conc ...
- js之substr和substring的差别
今天有人在群里问这两个的差别,借这个机会在这罗列下 substring(from,to) 開始和结束的位置,从零開始的索引 參数 描写叙述 from 必需. 一个非负的整数,规定要提取 ...
- 给EasyUi的Form加入自己主动填充部分输入框的方法
依据项目须要,基于获取的数据对Form的部分输入框进行填充,而默认的EasyUI的Form 没有该方法.仅仅能一个输入框一个输入框的直接赋值,为此添加了Form对象的setValues,实现依据给定的 ...
- java zip压缩优化版 解决压缩后文件一直被占用无法删除
最近进行zip操作,从网上找到一个处理方法,但是经过试验存在一些bug,主要是文件流的申明存在问题,导致jvm一直占用文件而不释放,特意把自己修改的发出来,已备记录 import java.io.Bu ...
- HBase在滴滴出行的应用场景和最佳实践
摘要: 主要介绍了HBase和Phoenix在滴滴内部的一些典型案例.文章已在CSDN极客头条和<程序员>杂志发表,应朋友邀请,分享到云栖社区,希望给大家带来启发和帮助. 背景 对接业务类 ...
- app上架的问题
1..p12证书文件(钥匙串导出)开发证书和描述文件的 2.app打包好重Xcode上传到iTunes中的时候最好做校验: 3.程序跑真机出现的问题 解决方法:debug 模式改成release模式 ...
- 实用API大全
有道翻译API http://fanyi.youdao.com/openapi 有道翻译API支持中英互译,同时获得有道翻译结果和有道词典结果(可能没有),返回格式为XML或JSON. 百度翻译A ...