CS231n 斯坦福李飞飞视觉识别课程

本文是个人在学习《CS231n 斯坦福李飞飞视觉识别课程》的学习笔记。

第一讲:课程简介

课时1 计算机视觉概述
课时2 计算机视觉历史背景
课时3 课程后勤

选读书籍《DeepLearning》
软件包: TensorFlow, Torch, PyTorch
先修条件:Python, NumPy, 微积分, 线性代数, 计算机图像, 机器学习,
课程网站: http://cs231n.stanford.edu/(作业,资源)

第二讲:图像分类

课时4 数据驱动方法
作业一:
1.实现自己的K-最近邻分类器(KNN)
2.实现几种不同的线性分类器(SVM, Softmax)
3.实现两层神经网络分类器
(运用Python, NumPy, Matlab, 谷歌云)

数据驱动思路: 收集图片数据集->训练机器分类这些图片->机器以某种方式总结分类规则生成模型->用训练出来的模型识别新的图片

算法过程: 训练函数(接收图片和标签)->训练出模型->预测函数(接收模型和测试图片)

CIFAR-10数据集(5万张训练数据图平均分成10个不同类别, 1万张额外测试图片)

L1距离(曼哈顿距离): 用来比较两幅图像,每一个对应像素的差值的绝对值的总和
在这里插入图片描述
最近邻算法思路: 训练函数->训练出模型->预测函数(用L1距离比较测试图片与哪幅训练图片最接近,即将测试图片归为该训练图片的类别)

K-最近邻算法思路(KNN): 不只寻找最近的点(这里的点代表数据),而是找最近的K个点,然后这些点当中同一类别最多的点获胜,即将该区域归为这类点的类别.少数服从多数)
当我们使用最近邻分类器时,我们总会给K赋一个比较大的值,这样会使决策边界更加平滑,从而得到更好的结果.对于没有最近点的区域可大胆将其归为周围的某一个类别.

课时5 k-最近邻算法
L2距离(欧式距离): 取平方和的平方根
L1距离取决于所选择的坐标系, 当我们转动坐标轴,将会改变点之间的L1距离, 而改变坐标轴对L2距离毫无影响.
在这里插入图片描述
超参数(hyperparameters): 像K值和距离函数这种无法通过训练得到,而是需要提前设定好的量称为超参数.
我们需要选取恰当的K值和距离函数来获得好的效果, 一般地,当特征向量的各个元素有着实际的意义,选用L1距离可能好一些,相反如果没有具体的实际意义选用L2距离可能好一些.但是超参数的选择因具体问题和数据而异.所以最佳方法是多种选择都尝试一下,然后选取效果更好的一种.

如何选取超参数:
方法1: 将数据集分为3组,大部分作为训练集,然后是验证集和测试集.
一般做法:在训练集上用不同超参训练算法,在验证集上进行评估,选择在验证集上表现的最好的一组超参的分类器,在测试集上跑,所获得的的数据才是要写到论文中的数据.(这种方法能让我们知道我们的算法在未知的新数据上表现如何)
方法2:(交叉验证) (在小数据集中更常用,在深度学习中不常用)
和方法1一样,首先将数据集中的一部分留作测试集,但是剩下的部分不是分为训练集和验证集,而是分成很多份,轮流将每一份当做验证集,剩下的部分作为训练集来,以此来看哪一组超参数的效果更好.
在这里插入图片描述
训练集,验证集,测试集的区别: 训练集训练出来模型, 然后对验证集分类,通过验证集原始的标签和被分类的类别是否一致来计算分类器的准确率,最后选取准确率最高的分类器来对测试集分类.

KNN的缺点: (在图像分类中很少用到的原因)

  1. 测试时运算时间很长
  2. L1距离和L2距离在比较图像上不太合适
  3. 维度灾难

课时6 线性分类I (Linear Classification)
f(x,W)=Wx+b
x是输入数据(输入矩阵)
W是参数或权重(权重矩阵/参数矩阵),通过训练过程得到.
b是一个偏置向,它不与训练数据交互,给出数据独立的偏好值,仅仅针对一类的偏好值.

过程: 拿到一张图片->将其拉伸成一个长的向量(一个三维长向量(32,32,3):表示高度和宽度都是32像素,3则代表颜色通道红绿蓝(RGB))->把这个代表图片像素的列向量当做输入x, 和W共同带入公式转化成10个数字评分(这10个数字对应CIFAR-10里的各个分类的得分)->哪一种类得分最高就将图片归为哪一类.

第三讲:损失函数和优化

课时7 损失函数

损失函数的引入: 课时6线性分类过程中我们得到不同W下的10个数字评分,如果用肉眼观察我们可以看出哪些W得出的评分效果更好,但是为了节约时间和精力我们不想用肉眼来看,我们想要写一个函数来自动决定哪些W是最优的,这个函数就是损失函数.
损失函数的使用: 把W当做输入,然后看一下分数,定量地估计W的好坏.
优化: 在损失函数定量分析出哪些W是好的情况下,我们要找一种有效的方式,来从W的可行域里找到W取什么值,是最不坏的情况,这个过程是一个优化过程.

损失函数公式:
在这里插入图片描述
N: N个样本
x: 输入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lil Wing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值