IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 吴恩达:卷积神经网络(Convolutional Neural Networks) -> 正文阅读

[人工智能]吴恩达:卷积神经网络(Convolutional Neural Networks)

1.1 计算机视觉

1.2 边缘检测示例

卷积的乘法(对应元素相乘,不同于矩阵乘法)fliter过滤器
[ 3 0 1 2 7 4 1 5 8 9 3 1 2 7 2 5 1 3 0 1 3 1 7 8 4 2 1 6 2 8 2 4 5 2 3 9 ] ? [ 1 0 ? 1 1 0 ? 1 1 0 ? 1 ] = [ ? 5 ? 4 0 8 ? 10 ? 2 2 3 0 01 ? 4 ? 7 ? 3 ? 2 ? 3 ? 16 ] \left[\begin{array}{cc}3&0&1&2&7&4\\1&5&8&9&3&1\\2&7&2&5&1&3\\0&1&3&1&7&8\\4&2&1&6&2&8\\2&4&5&2&3&9\end{array}\right]*\left[\begin{array}{cc}1&0&-1\\1&0&-1\\1&0&-1\end{array}\right] =\left[\begin{array}{cc}-5&-4&0&8\\-10&-2&2&3\\0&01&-4&-7\\-3&-2&-3&-16\end{array}\right] ?????????312042?057124?182315?295162?731723?413889??????????????111?000??1?1?1????=??????5?100?3??4?201?2?02?4?3?83?7?16??????

1.3 更多的边缘检测内容

在这里插入图片描述

[ 1 0 ? 1 1 0 ? 1 1 0 ? 1 ] [ 1 1 1 0 0 0 ? 1 ? 1 ? 1 ] v e r t i c a l h o r i z o n t a l [ 1 0 ? 1 2 0 ? 2 1 0 ? 1 ] [ 3 0 ? 3 10 0 ? 10 3 0 ? 3 ] s o b e r f i l t e r s c h a r r f i l t e r \left[\begin{array}{cc}1&0&-1\\1&0&-1\\1&0&-1\end{array}\right]\quad \left[\begin{array}{cc}1&1&1\\0&0&0\\-1&-1&-1\end{array}\right] \\ vertical \quad \quad \quad horizontal\\ \left[\begin{array}{cc}1&0&-1\\2&0&-2\\1&0&-1\end{array}\right] \quad \quad \left[\begin{array}{cc}3&0&-3\\10&0&-10\\3&0&-3\end{array}\right] \\ sober \quad filter \quad \quad scharr\quad filter ???111?000??1?1?1???????10?1?10?1?10?1????verticalhorizontal???121?000??1?2?1???????3103?000??3?10?3????soberfilterscharrfilter
还有将filter过滤器设置成参数,通过反向传播进行学习。

1.4 padding

之前的卷积操作会降低图片的维度,可能会使图片维度越来越低,同时边缘的像素只被过滤器利用一次。

习惯上用0来填充,维度变成(n+2p-f+1)*(n+2p-f+1)

valid convolutions:no padding

same convolutions: padding so that output size is the same as the input size.
( n + 2 p ? f + 1 ) × ( n + 2 p ? f + 1 ) i f n + 2 p ? f + 1 = n p = f ? 1 2 (n+2p-f+1)\times(n+2p-f+1)\\ if \quad n+2p-f+1 = n\\ p = \frac{f-1}{2} n+2p?f+1)×(n+2p?f+1)ifn+2p?f+1=np=2f?1?
所以f一般为奇数,此时首先能保证p是整数,其次奇数的卷积核(kernel)有中心,便于指出过滤器的位置。

1.5 卷积步长 strided convolution

n × n i m a g e f × f f i l t e r p a d d i n g p s t r i d e s └ n + 2 p ? f s + 1 ┘ × └ n + 2 p ? f s + 1 ┘ n\times n\quad image \quad \quad f\times f \quad filter\\ padding\quad p \quad \quad \quad stride\quad s\\ \llcorner\frac{n+2p-f}{s}+1\lrcorner \times \llcorner\frac{n+2p-f}{s}+1\lrcorner n×nimagef×ffilterpaddingpstridessn+2p?f?+1×sn+2p?f?+1

1.6 三维卷积

通过设置立体过滤器(卷积核)的不同通道的数值,可以提取不同层的特征。
s u m m a r y : ( n × n × n c ) ? ( f × f × n c ) → ( n ? f + 1 ) × ( n ? f + 1 ) × n c ′ summary:(n\times n\times n_c)*(f\times f \times n_c)\rightarrow(n-f+1)\times(n-f+1)\times n_c' summary:(n×n×nc?)?(f×f×nc?)(n?f+1)×(n?f+1)×nc?

1.7 单层神经网络

卷积神经网络:避免过拟合。无论应用到大小图片中,参数数量不变
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DmWLpa4O-1627111410677)(../AppData/Roaming/Typora/typora-user-images/image-20210719161338274.png)]
if you have 10 filters that are 3x3x3 in one layer of a neural network, how many parameters does that layers have?

(3x3x3+1) x 10 = 280
在这里插入图片描述

1.8 简单卷积网络示例

卷积核是特征提取器,卷积核越多,提取的信息越多。

Types of layers in a convolutional network?

  • Convolution (CONV)
  • Pooling (POOL)
  • Fully connected (FC)

1.9 池化层

池化层:缩减模型的大小,提高计算速度,同时提高所提取特征的鲁棒性。

目前来说,最大池化比平均池化更常用,但也有例外,就是深度很深的神经网络。

summary of pooling

hyperparameters:

f: filter size

s: stride

Max(f=2,s=2) or average(f=3,s=2) pooling

1.10 卷积神经网络示例

随着层数的增加,高度和宽度都会减小,而通道数量会增加。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bH8R1efm-1627111410679)(../AppData/Roaming/Typora/typora-user-images/image-20210719172447466.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iTGNIhO3-1627111410681)(../AppData/Roaming/Typora/typora-user-images/image-20210719172527871.png)]

1.11 为什么使用卷积?

卷积神经网络可以用两种方式减少参数,以便于我们用更小的训练集训练它,从而预防过度拟合。

为什么使用卷积:参数共享和稀疏连接

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v0i7VMQf-1627111410682)(../AppData/Roaming/Typora/typora-user-images/image-20210719194630040.png)]

2.1 为什么要进行实例研究?

classic networks:LeNet-5、AlexNet、VGG

ResNet、Inception.

2.2 经典网络

####  [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xyayRYpX-1627111410683)(../AppData/Roaming/Typora/typora-user-images/image-20210720133948106.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HOzrWTeu-1627111410684)(../AppData/Roaming/Typora/typora-user-images/image-20210720134111562.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TgbTeiZw-1627111410684)(../AppData/Roaming/Typora/typora-user-images/image-20210720134157993.png)]

2.3 残差网络

skip connect(远跳连接): a [ l ] a^{[l]} a[l]跳过一层或好几层,从而将信息传递到神经网络的更深层。

residual network 能够达到网络的更深层,这种方式确实有助于解决梯度消失和梯度爆炸问题。让我们在训练更深网络的同时,又能保证良好的性能。

2.4 残差网络为什么有用?

网络深度越深,它在训练集上训练网络的效率会有所减弱,这也是有时候我们不希望加深网络的原因。

残差网络有用的主要原因是这些残差层学习恒等函数很容易,至少网络性能不会受到影响,很多时候甚至可以提高效率,或者说至少不会降低效率。
a [ l + 2 ] = g ( z [ l + 2 ] + a [ l ] ) = g ( w [ l + 2 ] a [ l + 1 ] + b [ l + 2 ] + a [ l ] ) 假 设 w [ l + 2 ] 、 b [ l + 2 ] 均 为 0 , 则 有 = g ( a [ l ] ) = a [ l ] ( R e L U 函 数 ) a^{[l+2]} = g(z^{[l+2]}+a^{[l]})\\ = g(w^{[l+2]}a^{[l+1]}+b^{[l+2]}+a^{[l]})\\ 假设w^{[l+2]}、b^{[l+2]}均为0,则有\\ = g(a^{[l]}) = a^{[l]} (ReLU函数) a[l+2]=g(z[l+2]+a[l])=g(w[l+2]a[l+1]+b[l+2]+a[l])w[l+2]b[l+2]0=g(a[l])=a[l](ReLU)

2.5 网络中的网络以及1x1卷积

1x1卷积可以在保证高度宽度不变的情况下压缩信道数量并减少计算。

2.6 谷歌inception网络简介

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9ZKf5Mj7-1627111410685)(../AppData/Roaming/Typora/typora-user-images/image-20210722103918503.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gDXG68BL-1627111410686)(../AppData/Roaming/Typora/typora-user-images/image-20210722104019550.png)]

2.7 inception网络

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rMVcHgZA-1627111410686)(../AppData/Roaming/Typora/typora-user-images/image-20210722104057652.png)]

2.8 使用开源的实现方案

2.9 迁移学习

冻结前面所有的层,只把softmax层改动以适应自己的实现。

2.10 数据扩充

mirroring镜像对称、random cropping随机修剪、rotation、shearing、local warping

color shifting(rgb通道)

2.11 计算机视觉现状

3.1 目标定位object localization

Need to output b x , b y , b h , b w b_x,b_y,b_h,b_w bx?,by?,bh?,bw?,class label (1,-4)

y = [ p c , b x , b y , b h , b w , c 1 , c 2 , c 3 ] y = [p_c,b_x,b_y,b_h,b_w,c_1,c_2,c_3] y=[pc?,bx?,by?,bh?,bw?,c1?,c2?,c3?]

L ( y ^ , y ) = ∑ i = 1 8 ( y i ^ ? y i ) 2 L(\hat{y},y) = \sum_{i=1}^8 (\hat{y_i}-y_i)^2 L(y^?,y)=i=18?(yi?^??yi?)2

3.2 特征点检测landmark detection

C o n v N e t → [ f a c e , l 1 x , l 1 y , l 2 x , l 2 y , … … , l 64 x , l 64 y ] ConvNet\rightarrow[face,l_{1x},l_{1y},l_{2x},l_{2y},……,l_{64x},l_{64y}] ConvNet[face,l1x?,l1y?,l2x?,l2y?,,l64x?,l64y?] 129

3.3 目标检测object detection

3.4 卷积的滑动窗口实现

convolution implementation of sliding windows

3.5 Bounding Box预测

YOLO:you only look once

YOLO计算速度非常快,可以达到实时识别,

3.6 交并化intersection over union(IOU)

Evaluating object localization 交并比函数

计算两个边框交集与并集之比

“correct” if IoU > 0.5

3.7 非极大值抑制Non-max suppression

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wDJdjEj5-1627111410687)(../AppData/Roaming/Typora/typora-user-images/image-20210721161124816.png)]

3.8 Ancher Boxes

ancher boxes:为了处理两个对象出现在同一个格子里的情况,可以使你的训练集更有针对性(很高很瘦的行人和很长很低的车子)
y = [ p c , b x , b y , b h , b w , c 1 , c 2 , c 3 ? , p c , b x , b y , b h , b w , c 1 , c 2 , c 3 ? ] a n c h o r b o x 1 a n c h o r b o x 2 y = [\underbrace {p_c,b_x,b_y,b_h,b_w,c_1,c_2,c_3},\underbrace {p_c,b_x,b_y,b_h,b_w,c_1,c_2,c_3}]\\ anchor\quad box 1\quad \quad \quad \quad \quad anchor\quad box 2 y=[ pc?,bx?,by?,bh?,bw?,c1?,c2?,c3??, pc?,bx?,by?,bh?,bw?,c1?,c2?,c3??]anchorbox1anchorbox2

3.9 YOLO算法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VRS738sq-1627111410688)(../AppData/Roaming/Typora/typora-user-images/image-20210722081011589.png)]

3.10 候选区域region proposal

R-CNN:带区域的卷积神经网络

首先得到候选区域,然后再分类,所以速度较慢。

4.1 什么是人脸识别?

face verification人脸验证

  • input image,name/ID
  • output whether the input image is that of the claimed person.

face recognition人脸识别

  • has a database of K persons
  • get an input image
  • output ID if the image is any of the K persons (or “not recognized”)

4.2 One-Shot学习

d(img1,img2) = degree of difference between images

if d(img1,img2) ≤ τ \leq \tau τ

4.3 Siamese网络

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-enSMfoew-1627111410688)(../AppData/Roaming/Typora/typora-user-images/image-20210722084032996.png)]

4.4 Triplet损失(三元组)

Anchor、Positive、Negative
∣ ∣ f ( A ) ? f ( P ) ∣ ∣ 2 + α ≤ ∣ ∣ f ( A ) ? f ( N ) ∣ ∣ 2 ∣ ∣ f ( A ) ? f ( P ) ∣ ∣ 2 ? ∣ ∣ f ( A ) ? f ( N ) ∣ ∣ 2 + α ≤ 0 α : m a r g i n ( 间 隔 ) l o s s f u n c t i o n : L ( A , P , N ) = m a x ( ∣ ∣ f ( A ) ? f ( P ) ∣ ∣ 2 ? ∣ ∣ f ( A ) ? f ( N ) ∣ ∣ 2 + α , 0 ) J = ∑ i = 1 m L ( A ( i ) , P ( i ) , N ( i ) ) ||f(A)-f(P)||^2 + \alpha \leq ||f(A) - f(N)||^2\\ ||f(A)-f(P)||^2 - ||f(A) - f(N)||^2+ \alpha \leq 0\\ \alpha : margin(间隔)\\ loss \quad function: L(A,P,N) = max(||f(A)-f(P)||^2 - ||f(A) - f(N)||^2+ \alpha ,0)\\ J = \sum_{i=1}^m L(A^{(i)},P^{(i)},N^{(i)}) f(A)?f(P)2+αf(A)?f(N)2f(A)?f(P)2?f(A)?f(N)2+α0α:margin()lossfunction:L(A,P,N)=max(f(A)?f(P)2?f(A)?f(N)2+α,0)J=i=1m?L(A(i),P(i),N(i))

4.5 面部验证和二分类

把人脸验证当做一个监督学习,创建一个成对图片的训练集(不再是三个一组),目标标签是1表示两张图片是同一个人

4.6 什么是神经风格转换?

4.7 什么是深度卷积网络?

4.8 代价函数_bilibili

J ( G ) = α J c o n t e n t ( C , G ) + β J s t y l e ( S , G ) J(G) = \alpha J_{content}(C,G) + \beta J_{style}(S,G) J(G)=αJcontent?(C,G)+βJstyle?(S,G)

4.9 内容代价函数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-M6nPLVlj-1627111410689)(../AppData/Roaming/Typora/typora-user-images/image-20210722091849087.png)]

4.10 风格代价函数

L e t a i , j , k [ l ] = a c t i v a t i o n a t ( i , j , k ) . G [ l ] i s n c [ l ] × n c [ l ] G k k ′ [ l ] ( S ) = ∑ i = 1 n H [ l ] ∑ j = 1 n W [ l ] a i j k [ l ] ( S ) a i j k ′ [ l ] ( S ) G k k ′ [ l ] ( G ) = ∑ i = 1 n H [ l ] ∑ j = 1 n W [ l ] a i j k [ l ] ( G ) a i j k ′ [ l ] ( G ) J s t y l e [ l ] ( S , G ) = 1 2 n H [ l ] n W [ l n C [ l ] ∣ ∣ G k k ′ [ l ] ( S ) ? G k k ′ [ l ] ( G ) ∣ ∣ F 2 = 1 2 n H [ l ] n W [ l n C [ l ] ∑ k ∑ k ′ ( G k k ′ [ l ] ( S ) ? G k k ′ [ l ] ( G ) ) 2 Let \quad a^{[l]}_{i,j,k} = activation\quad at(i,j,k). G^{[l]} is n^{[l]}_c\times n^{[l]}_c\\ G^{[l](S)}_{kk'} = \sum_{i=1}^{n_H^{[l]}}\sum_{j=1}^{n_W^{[l]}} a^{[l](S)}_{ijk}a^{[l](S)}_{ijk'}\\ G^{[l](G)}_{kk'} = \sum_{i=1}^{n_H^{[l]}}\sum_{j=1}^{n_W^{[l]}} a^{[l](G)}_{ijk}a^{[l](G)}_{ijk'}\\ J^{[l]}_{style}(S,G) = \frac{1}{2n^{[l]}_Hn^{[l}_Wn^{[l]}_C}||G^{[l](S)}_{kk'}-G^{[l](G)}_{kk'}||^2_F\\ = \frac{1}{2n^{[l]}_Hn^{[l}_Wn^{[l]}_C}\sum_k\sum_{k'}(G^{[l](S)}_{kk'}-G^{[l](G)}_{kk'})^2 Letai,j,k[l]?=activationat(i,j,k).G[l]isnc[l]?×nc[l]?Gkk[l](S)?=i=1nH[l]??j=1nW[l]??aijk[l](S)?aijk[l](S)?Gkk[l](G)?=i=1nH[l]??j=1nW[l]??aijk[l](G)?aijk[l](G)?Jstyle[l]?(S,G)=2nH[l]?nW[l?nC[l]?1?Gkk[l](S)??Gkk[l](G)?F2?=2nH[l]?nW[l?nC[l]?1?k?k?(Gkk[l](S)??Gkk[l](G)?)2

4.11 一维到三维推广

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-07-25 21:33:29  更:2021-07-25 21:33:43 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/7 0:33:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码