theano卷积神经网络实现
2016-07-25 00:00
441 查看
摘要: theano deeplearning Convolutional Neural Networks (LeNet)
参考文献 Convolutional Neural Networks (LeNet)
卷积是什么
定义:在泛函分析中,卷积、旋积或摺积(英语:Convolution)是通过两个函数f 和g 生成第三个函数的一种数学算子,表征函数f 与g经过翻转和平 移的重叠部分的面积。
公式:(简单理解,g对f在时间域上的连续影响之和)
矩阵的卷积运算: o[m,n] = f[m,n]g[m,n] = \sum_{u=-\infty}^{\infty} \sum_{v=-\infty}^{\infty} f[u,v] g[m-u,n-v].
规则:1.图像卷积运算通常使用33矩阵
2.卷积核旋转180度,将卷积核中心对应输入矩阵的[0,0]元素,对重叠部分求和
3.移动卷积核,分别对应输入矩阵的每个元素,进行求和,得到输出矩阵。
from theano.tensor.nnet import conv2d
卷积计算 conv2d(input,W)
卷积输出值
h^k_{ij} = \tanh ( (W^k * x)_{ij} + b_k ).
池化
池化层往往在卷积层后面,通过池化来降低卷积层输出的特征向量,同时改善结果(不易出现过拟合)。
因为图像具有一种“静态性”的属性,这也就意味着在一个图像区域有用的特征极有可能在另一个区域同样适用。因此,为了描述大的图像,一个很自 然的想法就是对不同位置的特征进行聚合统计,例如,人们可以计算图像一个区域上的某个特定特征的平均值 (或最大值)来代表这个区域的特征。
通过池化达到降维德目的
theano实现:
from theano.tensor.signal import pool
池化操作
pool_out=pool.pool_2d(input,maxpool_shape,ignore_border=True)
f=theano.function([input],pool_out)
参考文献 Convolutional Neural Networks (LeNet)
卷积是什么
定义:在泛函分析中,卷积、旋积或摺积(英语:Convolution)是通过两个函数f 和g 生成第三个函数的一种数学算子,表征函数f 与g经过翻转和平 移的重叠部分的面积。
公式:(简单理解,g对f在时间域上的连续影响之和)
theano实现:theano.tensor.signal.conv2d (局部感知+权值共享-->减少参数-->计算机实现)
矩阵的卷积运算: o[m,n] = f[m,n]g[m,n] = \sum_{u=-\infty}^{\infty} \sum_{v=-\infty}^{\infty} f[u,v] g[m-u,n-v].
规则:1.图像卷积运算通常使用33矩阵
2.卷积核旋转180度,将卷积核中心对应输入矩阵的[0,0]元素,对重叠部分求和
3.移动卷积核,分别对应输入矩阵的每个元素,进行求和,得到输出矩阵。
from theano.tensor.nnet import conv2d
卷积计算 conv2d(input,W)
卷积输出值
h^k_{ij} = \tanh ( (W^k * x)_{ij} + b_k ).
池化
池化层往往在卷积层后面,通过池化来降低卷积层输出的特征向量,同时改善结果(不易出现过拟合)。
因为图像具有一种“静态性”的属性,这也就意味着在一个图像区域有用的特征极有可能在另一个区域同样适用。因此,为了描述大的图像,一个很自 然的想法就是对不同位置的特征进行聚合统计,例如,人们可以计算图像一个区域上的某个特定特征的平均值 (或最大值)来代表这个区域的特征。
通过池化达到降维德目的
theano实现:
from theano.tensor.signal import pool
池化操作
pool_out=pool.pool_2d(input,maxpool_shape,ignore_border=True)
f=theano.function([input],pool_out)
![](https://static.oschina.net/uploads/img/201607/25113547_tsg3.png)
相关文章推荐
- 现在市面上网络监控系统分析
- [网络通信]查看unix domain socket的另一端
- 通过一块无线网卡同时连接 WiFi 热点并且无线共享网络
- web网络基础----Http详解
- [置顶] OKhttp、RXjava与retrofit的网络访问使用
- Android网络之数据解析----使用Google Gson解析Json数据
- 计算机网络——数据链路层(4)
- 使用httpd-2.2和httpd-2.4实现指定httpd服务
- 计算机网络——物理层(3)
- TCP协议
- HTTPPost/AFNetWorking/JSONModel/NSPredicate
- http://elf8848.iteye.com/blog/382528
- 计算机网络——计算机网络概述(1)
- 1.3 计算机网络体系结构 本章小结及疑难点
- 【转载】如何用子网掩码得到网络/主机地址
- 【Android】使用http的Post和Get方式获取网络数据
- JavaWeb核心编程之(三.5)HTTP请求和接受表单数据
- Linux iptables命令高级网络
- [BZOJ1189][HNOI2007]紧急疏散evacuate(二分+网络流)
- spark高级数据分析---网络流量异常检测(升级实战)