计算机视觉知识点整理

计算机视觉是人工智能(AI)的一个领域,它使计算机和系统能够从数字图像、视频和其他视觉输入中获取有意义的信息,并根据这些信息采取行动或提出建议 see understand response

目标:克服像素与意义之前的gap  以视觉作为语义来源  视觉作为3D测量设备

1.Introduction to computer vision

1.1: human visual system

Philosophies learn from the human visual system for computer vision systems.

1. Hierarch等级制度 → Multi-scale fusion多规模融合  Meaning

Applications: - Handcrafted手工标注 features, e.g., SIFT, HOG..….

- Deep learning architectures

2. Attention mechanism  Meaning

Applications: self-attention

1.2: computer vision system (CVS) •构建CVS时的相关领域知识

Examples: a self-driving system, a video surveillance system……生物学、光学、数学

1.3: CVS in our daily lives各种应用

笔记本电脑:生物识别自动登录(面部识别,3D), OCR

智能手机:二维码、计算摄影(Android Lens Blur、iPhone人像模式)、全景构建、人脸检测、表情检测(微笑)、滤镜(人脸跟踪)、face ID(iPhone)、夜视(像素)、iPhone 12 Pro(激光雷达)

图片搜索、谷歌照片(人脸识别、物体识别、场景识别、视觉地理定位)、Facebook(图片字幕)、谷歌地图航拍成像(图像拼接)、YouTube(内容分类)

VR/AR:由外到内跟踪(HTC VIVE)、由内到外跟踪(同时定位和测绘、HoloLens)、物体遮挡(密集深度估计)

运动:Kinect、骨骼全身跟踪、手势识别、虚拟试戴

医学成像: CAT / MRI重建,辅助诊断,自动病理,连接组学,内窥镜手术

工业: 基于视觉的机器人(基于标记的),机器辅助路由器(夹具),自动化邮政,ANPR(车牌),监控,无人机,购物

运输:辅助驾驶(一切),面部跟踪/虹膜扩张醉酒,困倦,自动分配(所有模式)

媒体:影视视觉效果(重构)、虚拟体育重播(重构)、基于语义的自动编辑(重构、识别)

1.4: challenges •分析现实生活中CV系统的挑战

Intra-class variance同类方差、Scale discrepancy规模差异、Motion动态、Weak lighting、Cluttered background杂乱背景、Occlusion遮挡、blur模糊

2.Image filtering

2.1: Convolution basics 左加右减

•滤波计算f原图 ∗∗ 滤波器

线性滤波器在某点上运算

•交换性:•结合性(两个滤波器可以先滤波器滤波再操作)•分配性:(复杂滤波器可以分解)

用右侧滤波器,结果为图像左移一位

边界问题:

full:f原图大小+h  same:f  valid:f-h

imfilter(f, h, 填充) 0填0  ‘circular’  ‘replicate’ 复制边缘  ‘symmetric’

盒状滤波器震荡问题:为了消除边缘效应,根据邻近像素与中心的接近程度对其权重调整。

•高斯核(需要归一化)属性

•可分离性:二维高斯可分解为两个一维高斯滤波器

•从图像中去除“高频”成分(低通)

•与self的卷积是另一个高斯

因此可以用小σ核平滑,重复,并得到与大σ核相同的结果

用std. devσ与高斯核卷积两次与std. dev. √2σ卷积一次相同

EXER用m×m内核过滤n×n图像的复杂性是多少?O(n (2)m (2))

如果核是可分离的呢?O(n (2) m) 只需要做两次对应操作

2.2: Image filtering – noise

• Salt and pepper noise:椒盐噪声:包含随机黑白像素

• Impulse noise脉冲噪声: 包含随机白像素

• Gaussian noise:像素灰度分布符合高斯分布

使用较大标准差的平滑可以抑制噪声,但也会使图像模糊。

2.3: Gaussian ,median filtering非线性滤波器Parameters and influence: large size→ blur

中值滤波:取滤波窗中位数,比高斯噪声对离群值鲁棒(适用椒盐噪声,脉冲噪声)

优点:保护边缘,新值来源于图像实值   缺点:非线性,慢

高斯滤波:滤波核符合高斯分布,线性(适用高斯噪声)

优点:简单,效率高                   缺点:使图像模糊,损失特征

箱式也叫盒状滤波:取滤波窗平均数,线性

卷积:滤波器反转

2.

4: Sharpening锐化•理解过程和参数的影响

Add back what blurring take away右侧为锐化滤波器

original-smoothed=detail,original+detail=sharpened

3Edge detection识别sudden changes(discontinuties)

3.1: Image gradient •理解定义

方向                               大小

3.2: Edge filters•设计理念及其function•计算

Gx=[-1 0 1]:检测左右边缘 Gy=[1 0 -1]^T:检测上下边缘

Prewitt 算子:左右、上下边缘    

Roberts 算子:斜边缘

Sobel 算子:左右、上下边缘

有限差分滤波器对噪声反映强烈,平滑有助于解决这种情况

3.3: Canny edge detector •步骤和动机•参数选择和原因

DOG(Derivative of Gaussian filter):节省一个步骤(原理在右侧)

先高斯平滑再对图像求导,等价于直接用原图卷积高斯求导

σ:越大,检测大边缘;越小,检测精细特征

平滑滤波器:去除高频部分,低通滤波(高斯滤波核),滤波核和为 1

差分滤波器:计算平滑后的差分,带通滤波(DOG),滤波核和为 0

索贝尔滤波器:高斯平滑*差分

局部局限性:响应受近邻像素影响

阈值偏好某些方向:遗漏斜的边缘,遗漏真实边缘

1.高斯求导对图像滤波:会得到两个方向的值

2. Find magnitude and orientation of gradient求梯度的大小和方向(参考3.1公式)

3. Non-maximum suppression:非极大值抑制

对于每个位置,检查沿梯度方向的梯度大小是否高于相邻点(使用插值得到)选择单个最大宽度的边缘-Thin wide “ridges” down to single pixel width(薄多像素宽“脊”下降到单像素宽度)

对边缘点,利用双线性插值保留邻域内梯度值最大的点,抑制其它的,使边缘变薄

4. Linking and thresholding (hysteresis):

-Define two thresholds: low and high

- 使用高阈值开始作为边缘曲线,使用低阈值继续连接边缘曲线

双阈值检测:大于高阈值的边缘直接保留,小于低阈值的边缘直接抑制,中间的由其邻域决定,如果邻域有边缘,则保留,反之亦然

※高斯平滑无负值,高斯求导有负值

EXER: In many applications, an image is smoothed by applying Gaussian filters. The approximation to a 33 Gaussian filter is given by 116121242121

(1)Run this kernel on the image shown below and display the result. No padding for the edge of image(in the other words, your result will be 33 matrix.)(Hint: rotating the filter is not needed here)

6010542542017101010151002

(2)What is the separability property of Gaussian convolution? Try to separate this kernel into a product of one-dimensional kernels.

二维高斯核可以分解为两个一维高斯核 14[121]

(3)Why would one want a convolution filter tobe separable? Describer the order of complexity (number of operations) for the Gaussian kernel in (1) and the one-dimensional kernels in (2).

减少运算复杂度。81-27

局部特征检测:detection, description, matching关键点检测,特征提取,图像匹配

简洁有效:很多小特征

显著性:每个特征很独特

局部性:一个特征占据了图像的一小部分区域,对混乱和遮挡鲁棒

重复性:同一个特征能在多张图像中出现,不受几何和光照变化影响

关键点检测:Harris 角点检测,LoG 尺度不变斑点检测

稀疏特征描述子:SIFT     密集特征描述子:HOG、LBP

4.Local features – corner

4.1: Basic Idea  基本思想

角点在任何方向上移动窗口(观察工具)都应该给强度带来很大的变化

• Mathematics: Change in appearance of window 𝑤(𝑥,𝑦) for the shift [𝑢,𝑣]

窗函数

高斯或者矩形窗

亮度Intensity

4.

2: Interpreting the second moment matrix

泰勒展开和矩阵计算得到M决定E(u,v)取值


首先,考虑轴对齐的情况(梯度是水平的或垂直的):Ix Iy是对I在x方向和y方向的导数

Λ1,λ2为矩阵特征值.如果λ都接近于0,这就不是角,所以寻找两个λ都大的位置。

写成Λ1u  (2)+λ2v  (2)=0的形式:小特征值对应变化较慢方向

4.3: Harris detector 步骤和相应的动机 性质

1. Compute Gaussian derivatives at each pixel

2. Compute second moment matrix M in a Gaussian window around each pixel

3. Compute corner response function R(det()行列式,trace()迹,a=0.04-0.06)

4. Threshold R

R>0为角点 R<0为边缘  |R|很小为“Flat”

5. Find local maxima局部最大值 of response function (non-maximum suppression)


EXER: consider the following images

For the 3 by 3 highlighted window. In the above formula Ix=dI /dx,Iy=dI /dy ,and W is the window highlighted in the image. And judge here is a corner, edge, or flat area.


Step1: compute the derivations


Step2: compute the matrix M


Step3: Compute corner response function R and judge it is a corner or edge or ….

负的R值对应了是egde

­Detection is covariant:key-points(transform(image)) = transform(key-points(image))

Description is invariant:features(transform(image)) = features(image)

亮度平移I→I + b:只使用导数,所以invariant covariant协变性

图像旋转:响应函数是invariant covariant

亮度缩放I → a I: 对仿射强度变化部分invariant not covariant

4.Local features – blob detection

4.4: Scale space blob detection斑点检测(尺度不变)

LoG(Laplacian of Gaussian):二阶高斯偏导

f*LoG:边缘出现在图像的正负交界零点处(二阶导数零交叉)

LoG 的尺度契合信号(f)的(σ)时,LoG 大小会在斑点中心达到最大

边缘:波纹处   斑点:两个波纹重叠处

尺度归一化 LoG:一阶高斯偏导滤波核的响应随着σ的增长而减小,为了保持尺度不变性,需要对一阶高斯偏导乘σ,所以要对 LoG 乘𝜎 (2)

LoG 响应达到最大,此时 LoG 的零点就是圆的圆周处

2D 多尺度斑点检测:用多尺度的尺度归一化 LoG 卷

积图像,找到尺度空间上 LoG 的最大响应,

关键点是空间和尺度两者的局部最大

Scale space blob detection斑点检测步骤:

1. 尺度归一化拉普拉斯卷积图像。2在尺度空间中求拉普拉斯响应平方的局部最大值

4.5: Scale Invariant Feature Transform (SIFT)

Describes both a detector and descriptor

1. Multi-scale extrema detection多尺度极值检测

用 DoG(Difference of Gaussians)近似 LoG:

辨析:

高斯差分是LOG的估计用于边缘检测(0)和斑点检测(maximum)

高斯求导用于边缘检测

尺度空间因子:L(x, y, σ) = G(x, y, σ) * I(x, y)

尺度高斯金字塔:图片在不同尺度下进行高斯模糊


为了找到极值,需要进行差分,差分值是周围26个点的最大值即为潜在特征极值点

图像降采样

2. Keypoint localization关键点定位:极值的坐标

3. Orientation assignment方向赋值:极值的梯度方向𝜃(𝑥, 𝑦) = 𝑡an (-1)(∂x∂y)

4. Keypoint descriptor

For a keypoint, use histograms to bin pixels within sub-patches according to their orientation

将16x16窗口划分为4x4单元格,计算每个单元格的方向直方图,16个单元格* 8个方向= 128维描述符 归一化

性质:Invariant to• Scale • Rotation

Partially invariant to• Illumination changes光照变化• Camera viewpoint• Occlusion, clutter

• Up to about 60 degree out of plane rotation(高达60度的平面旋转)

匹配方式:定义特征距离、找的距离最小的特征

4.6: Histogram of Oriented Gradients(HOG) 步骤和动机 计算

Challenges : Wide range of pose and large variations in appearances ; Cluttered

backgrounds under different illumination;“Speed” for mobile vision

步骤:•划分图片为多个 cell(矩形或圆形)

•每个cell在cell的像素上累积加权的局部1-D梯度方向直方图。计算各个 cell 内部无符号梯度方向(0-180°,即 9 个方向)、强度,按权重累加得到 DOG

•连接直方图

•规范化:for better invariance to illumination照明 and shadowing达到更好的光照不变性

特征向量数=每个 block 向量数*block 数

局部物体形状能通过局部灰度梯度和边缘方向得到

HOG VS SIFT

HOG is usually used to describe contours轮廓;SIFT is used for key point matching

SIFT histograms are oriented towards the dominant gradient;HOG is not

SIFT descriptors use varying scales to compute multiple descriptors

HOG gradients are normalized using neighborhood bins

EXER: Blocks and cells: Each block contains 2×2 cells, Each cell is with 8×8 pixels, Neighboring blocks are with 50% overlap.

Each block 16×16 pixels. For a 64×128 image, it contains (4+3)*(8+7)=7×15 = 105 blocks in total

5 Texture纹理

5.1: why use texture and its applications

纹理 是一个有用的属性,通常是材料,外观线索的指示

任务:•从纹理中提取形状•从图像纹理中估计表面方向或形状•从纹理线索中分割/分类•分析,表示纹理•将具有一致纹理的图像区域分组•合成•生成新的纹理补丁/图像给出一些示例

纹理表示 试图总结局部结构的重复模式

找到模式•使用看起来像模式的过滤器(斑点,条形,…)•考虑响应的大小

在每个局部窗口内描述其统计数据•平均值,标准差•直方图•“原型”特征出现的直方图

Filter banks滤波器组 对测量局部邻域结构的冗余变化有用

可以得到多维的特征空间

6 Fitting拟合

最小化二乘Least Squares

• Least squares for Line fitting(Not rotation-invariant; Fails for vertical lines)

E=i=1n(yi-mxi-b)2

 

• Total least squares(Sensitive to outliers)   E=i=1n(axi+byi-d)2

 

• Robust least squares: The robust function ρ behaves like squared distance for small values of the residual u, but saturates for larger values of u.(Nonlinear optimization problem; Not applicable for many outliers )

对误差较大噪声缺少鲁棒性

6.1: RANSAC(Random sample consensus)for line fitting example 步骤,参数选择,利弊

步骤:随机选取点构成的子集,由模型得到一个假设模型,计算误差函数,选取所有与该模型接近的点(内点)并拒绝其他离群点(外点),重复多次直到得到最佳模型 (内点最多模型)

参数设置:初始点数量 s(最少所需拟合模型的数量直线为2,圆为3),距离阈值 t,迭代次数 N(选取 N使得,在概率为 p的情况下,至少有一个随机样本不是离群点,离群率:e)

优点:•简单而通用•适用于许多不同的问题•通常在实践中效果很好

缺点:•大量参数需要调整•对于低初始化比率不太好(太多迭代,或者可能完全失败) •不能总是基于最小样本数量获得良好的模型初始化•通过最小二乘进行优化

6.2: Hough transform  理论步骤

一种早期的投票方案:•将参数空间离散为bin•对于图像中的每个特征点,在参数空间中的每个可能产生该点的bin中投一票•找到投票最多的bin

Initialize accumulator H to all zeros

For each feature point (x,y) in the image(用极坐标来理解)

For θ = 0 to 180

ρ = x cos θ + y sin θ

H(θ, ρ) = H(θ, ρ) + 1

end

end

Find the value(s) of (θ, ρ) where H(θ, ρ) is a local maximum

   The detected line in the image is given by ρ = x cos θ + y sin θ

处理噪点

•选择一个好的网格/离散化

太粗:当太多不同的线对应于一个桶时获得的大选票

太细:错过线,因为一些点不是完全共线投给不同的桶

•增加相邻的箱(在累加器阵列中平滑)

•试图摆脱不相关的特征 例如,结合图像梯度

优点:•可以处理非局域性和遮挡•可以检测模型的多个实例•对噪声有一定的鲁棒性:噪声点不太可能对任何单个bin做出一致的贡献

缺点:•搜索时间的复杂性随着模型参数的数量呈指数增长•非目标形状会在参数空间中产生伪峰•很难选择一个好的网格大小

7.Segmentation   Bottom-up

7.1: Task properties and philosophy

•将图像分离成连贯的“对象”

•将相似的像素组合在一起以提高进一步处理的效率

7.2: K-Means 理论和步骤

1随机选 K个点作为聚类中心

2计算样本与各个聚类中心距离将距离最近的点分配给最近聚类中心

3将新的聚类中心移动到该聚类所有样本的平均值

4重复2、3直到没有点发生变化

优点•简单,计算速度快•收敛到聚类平方误差的局部最小值

缺点/问题•需要预先指定k•初始中心敏感•离群点值敏感(可以将均值改为中心位置解决)

•形成球形聚类(不适于非凸形状的簇)•仅在定义平均值时适用

7.3: Mean shift 理论和步骤:寻找密度的局部最大值

•查找特征(颜色,梯度,纹理等)

•初始化单个特征点的窗口

•对每个窗口执行均值移动直到收敛

•合并接近相同“峰值”或模式的窗口

优点•通用的,独立于应用程序的工具•无模型,不在数据集群假设任何先验形状(球形,椭圆形等) •只有一个参数:窗口大小h (h有一个物理意义,不像k-means)•找到可变数量的模式•对异常值鲁棒•

缺点•输出依赖于窗口大小•计算(相对)昂贵•不适合高维数据

7.4: Normalized cut

Node = pixel   Edge = pair of neighboring pixels

Edge weight = similarity or dissimilarity of the respective nodes

•通过对段的大小进行归一化来固定Min Cut的偏差:

assoc(A,V) =与A接触的所有边的权值之和

当我们得到两个具有许多高权值边的聚类,而它们之间的低权值边很少时,Ncut值很小

最小化Ncut值的近似解:广义特征值问题

优点:通用框架,可用于许多不同的特征和亲和力公式

缺点:高存储要求和时间复杂性:涉及解决大小为n x n的广义特征值问题,其中n为像素数

8.Visual Recognition视觉识别

设计具有以下能力的算法:

•对图像视频进行分类•检测和定位对象•估计语义和几何属性•对人类活动和事件进行分类

•挑战:缩放、视角、光照、遮挡;变形 背景杂乱 类内方差姿态、视图、尺度的不变性

•任务类型:分类、检测、属性、活动

•特征表示:词袋模型

•分类器:生成式或判别式,如何选择

Off-the-shelf现成的可训练分类器

8.1: Pipeline

表示:如何表示对象类别;哪种分类方案?

学习:如何在给定训练数据的情况下学习分类器

识别:如何在新数据上使用分类器

Image Pixels→Feature representation→Trainable classifier→Class label

8.2: Bag of features (属于特征表示)

理论和步骤:1.取一堆图像,提取特征

2.学习“视觉词汇”——一个共同特征的列表。

3.给定新图像,提取特征并构建直方图:使用视觉词汇对特征进行量化。

4.用“视觉词”的频率表示图像

优点:紧凑的图像内容摘要.为集合提供矢量表示.对几何/变形/视点灵活.非常好的实践结果

缺点:基本模型忽略几何-必须事后验证,或通过特征编码•背景和前景混合时袋覆盖整个图像•最佳词汇形成仍然不清楚

9.Object detection目标检测

9.1: Window-based object detection

Training:1. Obtain training data 2. Define features 3. Define classifier

Given new image:1. Slide window 2. Score by classifier

Limitations:High computational complexity,deformable objects not captured well,If considering windows in isolation, context is lost

9.2: Viola-Jones face detector 主要思想

•在感兴趣的窗口内用有效可计算的“矩形”特征表示局部纹理

•选择判别特征作为弱分类器

•使用它们的增强组合作为最终分类器

•形成这样的分类器级联,快速拒绝明确的否定

实时目标检测的“范例”方法:训练缓慢,但检测非常快;积分图像用于快速特征评估;增强用于特征选择;注意级联用于快速拒绝非人脸窗口

优点:对于具有规范方向的不可deformable变形对象(人脸,汽车,行人)非常有效;快速检测

缺点:对于高度可变形的对象或“东西”不太好;对遮挡不鲁棒;需要大量的训练数据

10.Deep learning for CV

10.1: What can we contribute?

Task-specific designs

• Network architecture:

Backbone 骨干 Modules 模块

• Loss function:

Objective function  Regularizations

• Training strategy:  available data form and labels

Supervised   Transfer learning  Self-supervised learning 

10.2: 图像分类advances in image classification  每种新模式的推进路径和动力

AlexNet:2GPU 训练,数据增强,ReLU 激活,重叠池化,全连接层 Dropout

VGG:所有卷积核 3×3、步长 1、pad2、最大池化 2×2、最大池化步长 2,池化后双通道 卷积核 3×3:在保证具有相同感知野的条件下,提升了网络的深度,在一定程度上提升了神经网络的效果

GoogLENet:

inception:1×1conv+3×3conv+5×5conv+3×3max-pooling,对多尺度数据鲁棒

越深越好?:测试集误差大:过拟合;训练集误差大:欠拟合,没有完全训练好

ResNet:

残差模块:𝑦 = 𝑓 (𝑥) +𝑥,𝑅esidual = 𝑓(𝑥) = 𝑦 − 𝑥

bottleneck:用 1×1conv、3×3conv、1×1conv 代替两个 3×3conv,减少参数量

10.3: 分割advances in segmentation  前进的道路和动力

分割:全卷积网络Fully convolutional networks

• In-network up-sampling上采样: unpooling反池化, strided transposed Convolution反卷积

10.4:目标检测 advances in object detection  任务性质,推进路径、每个新模型的动机

滑动窗口:窗口数量过多,很难扩展到大尺度范围

R-CNN:region proposals + CNN on cropped裁剪, resampled regions

候选区域生成:selective search 方法

特征提取:AlexNet,ImageNet 预训练,PASCAL 微调

类别判断:线性层接 SVM 分类

位置精修:边框回归(bounding box regression):找到一个映射,使得 predicted box 经过映射得到 region proposal 能够与 ground truth box 交并比尽量小

Fast R-CNN:region proposals + RoI pooling on top of a conv feature map

整张图像传入 CNN:仍然用 selective search 选取候选框

特征提取:候选框提取特征,ROI 池化使得特征尺寸一致

ROI:修剪+重采样,即最大池化+最近邻插值

类别判断:全连接层接 softmax 为输出 1,判断类别

位置精修:全连接层接边框回归为输出 2,确定候选框大小和位置坐标

Faster R-CNN:Region Proposal Network + RoI pooling

候选区域网络:用 3×3 滑动窗在 conv5 的特征空间滑动,判断 anchors 是否目标,再利用边框回归修正 anchors 获得精确的 proposals

RoI 池化:收集输入的 feature maps 和 proposals,综合这些信息后提取 proposal feature maps,送入后续全连接层判定目标类别

最终分类:利用 proposal feature maps 计算 proposal 的类别,同时再次边框回归获得检测框最终的精确位置

一个网络四个损失:分类损失 1,边框回归损失 1,分类损失 2,边框回归损失 2

YOLO(You Only Look Once):

图像划分为 7×7 的 cell,分别训练一个检测器来预测目标类别分布以及边框回归和置信度

局部准确性比 Faset(er) R-CNN 差:粗糙特征,小边框误差;7 倍速度提升

SSD(Single Shot MultiBox Detector):比 YOLO 快,有 mAP 优势

继承 YOLO 将 detection 转化为 regression 的思路,一次完成目标定位与分类基于 Faster RCNN 中的 Anchor,提出了相似的 Prior box

加入基于特征金字塔的检测方式,即在不同感受野的 feature map 上预测目标

10.5: transformer

编码器Encoder: 接收整个输入序列并输出相同长度的编码序列

解码器Decoder: 根据编码器输出和先前预测的标记来预测下一个标记

Encoder self-attention: 查询、键和值来自前一层编码器

Decoder self-attention: 对应于未来解码器输出的值被屏蔽掉

Encoder-decoder attention: 查询来自之前的解码器层,键和值来自编码器的输出位置编码:No position information in self-attention

 Each position has a unique positional vector 𝑒^i

  hand-crafted 

  learned from data

Convolutional networks:

 Translation invariance (shared kernel across spatial positions)

 Locality (restricted window)

Transformer:

 No structural prior (prone to overfitting in small scale data)

 Global receptive field layer, which is suitable for long-range dependency modeling.

• Self-attention

• Basic transformer model

• Image transformer

10.6: self-supervised /transfer learning   •动机•不同的方法和理论

自监督学习:数据预测,变换预测,对比学习

自监督学习的核心,在于如何自动为数据产生标签;自监督学习性能的高低,主要通过模型学出来的 feature的质量来评价。feature质量的高低,主要是通过迁移学习的方式,把 feature用到其它视觉任务中(分类、分割、物体检测...),然后通过视觉任务的结果的好坏来评价。

流程:利用自监督学习在 pretext任务上学习好的特征分类器,将 conv层单独提取出来,后接一个浅层网络,用少量标注数据训练这个网络

数据预测:着色,data x->net->data x’

变换预测:上下文预测,拼图游戏解答,旋转预测,data T(x)->net->T

对比学习:SimCLR,data T(x), data T’(x) ->net->是否相似

为什么对比学习?:损失的基本性质是增强正特征的接近性,同时最大化归一化特征在超球上分布的均匀性;两个正“视图”之间的数据增强操作或转换的选择也很重要,需要进一步研究

迁移学习:

提出:领域转变:训练和测试数据分布不同

概念:模型由某种问题训练得到,并在一个不同但相关的问题上应用

Traditional machine learning - learn a system for a task, respectively

Transfer learning - transfer the knowledge form the source model for the target task

Model Fine-tuning:labelled->labelled,大量源数据,少量目标数据,通过源数据训练模型,在目标数据微调;Challenge: only limited target data, so be careful about overfitting

Domain adaptation:labelled->unlabeled

基于差异:最小化特征空间领域距离,目标是找到一个合理的距离度量,即找一个核函数,将源域和目标域都映射到一个空间上,在这个空间上计算距离,训练网络时,总损失等于源数据损失加上距离度量损失

基于对抗:GAN

基于重建:Transformer

知识蒸馏:将深层网络缩小

Response-based knowledge:利用the teacher model教师模型最后一输出层的神经响应进行迁移;直接mimic模拟最终预测的教师模型;简单而有效

 Feature-based knowledge : 将转移点从最后一层扩展到intermediate layers中间层;很好地扩展了基于响应的知识,特别适用于更深层网络的训练;将特征图推广到attention maps注意图

Relation-based knowledge:基于响应的知识和基于特征的知识都使用教师模型中specific layers特定层的输出;基于关系的知识进一步探索不同层或数据样本之间的关系

Cross-modal distillation:在培训或测试期间,某些模式的数据或标签可能不可用

10.7: open questions

深度学习 设计系统算法  划分模块

• Challenges and your solutions

• Related similar tasks

为了设计一个定期考勤系统,我们可以采用计算机视觉技术,结合人脸识别和图像处理,来实现获得出席人数和识别缺席的人。以下是可能的流程和任务难点:

流程设计:

1.数据采集:从摄像头获取图像或视频流。这些数据将用于后续的人脸识别和考勤。

2.人脸检测:使用人脸检测算法从图像视频中识别人脸的位置,有助于提取出席学生的面部信息。

3.人脸识别:对每个检测到的人脸应用人脸识别算法,将其与事先存储的学生信息进行匹配。这可以通过事先收集学生的照片和相关信息来建立-个人脸数据库。

4.考勤记录:对于成功匹配的学生,记录其出席情况。通过比对所有学生信息,找出缺席学生。

5.结果生成:生成每次讲座的考勤结果, 包括出席人数和缺席学生的身份。

任务难点:

1.光照和角度变化:不同的光照条件和面部角度变化可能会影响人脸检测和识别的准确性。

2.遮挡问题:学生可能戴帽子、 口罩或其他遮挡物,这可能导致人脸识别失败。

3.大规模人脸数据库:维护和更新大规模的人脸数据库可能需要耗费大量的时间和资源。

4.隐私问题:收集和存储学生的面部信息涉及隐私问题, 需要谨慎处理并遵循相关法规和规定。

5.实时性要求:如果系统需要实时性,对于大规模的人数,需要高效的算法和硬件支持以确保在短时间内完成考勤任务。

6.精准性:人脸识别的精准性是设计中一个关键的挑战需要处理不同个体之间的相似性和差异性。

综合考虑这些难点,设计一个鲁棒、高效且符合隐私法规的定期考勤系统是一个复杂的任务 ,需要深入研究和合理的技术选择。

DNN

优化:梯度消失与 ReLU:

浅层网络:梯度小,学习慢,大多随机

深层网络:梯度大,学习快,几乎收敛

ReLU(Rectified Linear Unit):计算快,生物学原因,解决梯度消失

动量:Movement not just based on gradient, but previous movement

Mini-batch SGD小批量随机梯度下降:

Smaller mini-batches: less memory overhead, more gradient noise

Larger mini-batches: more expensive and less frequent updates, lower gradient variance

训练:

权重初始化:常规策略:高斯分布:避免减少或增大层响应偏差,减少梯度消失、爆炸

Batch normalization:insert BN layers right after conv or FC layers, before ReLU nonlinearity

避免梯度消失、爆炸,保证激活函数远离非线性饱和区域,加速收敛,使训练更鲁棒

陷阱:在小批量数据上表现不好

Dropout:针对每一批数据,重新选择 dropout 神经元(网络结构发生变化)

为什么测试集输出要乘 1-dropout_rate?:使得加权输出与训练时一致

学习率衰减:什么时候停止:长久不更新;早停:一种正则化

CNN

If input size is 𝑁 × 𝑁, filter size is 𝐹 × 𝐹, padding填充 with 𝑃 pixels, the output size is

卷积:[(N + 2P - F) / stride步长](向下取整) + 1  反卷积:(N − 1) ∗ stride + F−2P

CNN 可解释性:

activations:maximal patches:Visualize patches that maximally activate neurons

gradients:saliency显著性 maps, class visualization:Sensitivity of loss to individual pixel changes ; Large sensitivity implies important pixels Gradients are important not just for optimization, but also for analyzing what neural networks have learned

optimization: 生成一个合成图像,最大限度地激活一个神经元:由于我们有分数的梯度w.r.t.输入,我们可以优化图像本身,使分数最大化

端到端神经网络:输入像素->(提取特征->级联特征向量 x->线性分类器)->输出类别

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值