- 为什么卷积神经网络适用于处理图像
- 整个CNN架构
- CNN如何学习
- CNN的应用
- 卷积神经网络用于图像处理:简化Fully connect
betwork(简化节点)
目标是一个局部区域,只要找到小范围目标就可以处理图像而不需要观察整幅图像。
同样的patterns出现在不同的局部位置,可以共用同一组参数巡训练。
CNN中存在subsamplinggu过程
3. 整个CNN的架构
CNN-Conv
filer一般比image要小
每个filter中的值都是学习得到的,而不是提前设定的
有多少filter有几个Feature map
CNN-colorul image
[插入图片]
三个通道使用一个filter
Conv & Fully connect
Conv是另一种形式的Fully connect,可以看作是把原来整张图像的输入拆解成局部,以33卷积网络深度是1为例,如果是Fully connect则需要隐藏层中的九个节点,每个节点对应一个权重,共9个权重;在Conv中则是一个33的矩阵,矩阵中的元素对应Fully connect中的需要学习的权重。
CNN-Max pooling
CNN-Max pooling
把学习的特征拉直丢进Fully connect中
[插入图片]
3. CNN如何学习
反向使用梯度下降:正常情况下,input是固定输入,需要对Loss function进行梯度下降,获取最优参数。现在是现在认为模型参数
a
i
a_i
ai是固定,需要获取对应当前参数下的最优输入
x
x
x。
[输入的图像]
那么也可以使用当前的输出
y
i
y_i
yi反向去推输入
x
x
x。
x
∗
=
a
r
g
max
x
y
i
−
添
加
约
束
−
>
x
∗
=
a
r
g
max
x
(
y
i
−
∑
i
,
j
∣
x
i
j
∣
)
x^*=arg \max_x \ y^i-添加约束->x^*=arg \max_x(y_i-\sum_{i,j}|x_{ij}|)
x∗=argxmax yi−添加约束−>x∗=argxmax(yi−i,j∑∣xij∣).这个公式可以理解为是输入的熵变小,让它原有的分布规律体现出来。
[输入有惩罚的图像]
[李老师图片]
这种反向使用梯度下降的方法的应用:风格迁移
4. CNN的应用
下围棋主要使用了CNN的局部特性,但未使用max pooling 过程。