CS231n

CS231n学习笔记

图像分类基础知识

  1. 深度学习算法大概总结为两个API,一个train函数,一个predict函数。

    def train(): #Memorize training data
    def predict(): #
    
  2. 给出两幅图片如何进行比较,其中最简单的一种方法是 L 1 L_1 L1距离,也成为曼哈顿距离。像素之间做差后的绝对值求和。
    L 1 d i s t a n c e : d 1 ( I 1 , I 2 ) = ∑ p ∣ I 1 p − I 2 p ∣ L_1 \quad distance: \quad d_1(I_1,I_2)=\sum_p \mid I^p_1-I^p_2 \mid L1distance:d1(I1,I2)=pI1pI2p
    在这里插入图片描述
    这也是K最近邻算法,它的复杂度: T r a i n : O ( 1 ) P r e d i c t : O ( N ) Train: \quad O(1) \quad Predict: \quad O(N) Train:O(1)Predict:O(N)
    另一种方法是 L 2 L_2 L2距离,也称为欧式距离,取像素插值平方和的平方根。
    L 2 d i s t a n c e : d 2 ( I 1 , I 2 ) = ∑ p ( I 1 p − I 2 p ) 2 L2 \quad distance: \quad d_2(I_1,I_2)=\sqrt{\sum_p(I^p_1-I^p_2)^2} L2distance:d2(I1,I2)=p(I1pI2p)2
    不同的距离度量,会在你的预测空间里,对底层的几何或拓扑结构做出不同的假设。
    在这里插入图片描述
    L 2 L_2 L2距离和 L 1 L_1 L1距离都不适合用来衡量图像的相似性,因为即使这个图像Boxed或者Shifted,距离还是一样的。

究竟如何区别图像中的不同呢?

Linear Classification

权重矩阵的每一行就是对该类的权重值。将图像的pixels矩阵拉为一个列向量。bias也是一个列向量,对每一个类的偏置。
可以将权重矩阵中的每一行理解为对该类的模板,通过这个模板与图像点积计算得到像素值。(也就是说这一行可以再转换为图像)
线性分类器的问题是,每一个类只能学习一个模板.

todo:[07] 3 损失函数和优化介绍,线性分类和k最近邻的作业还没有做

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值