torch学习笔记2--itorch notebook初级使用,神经网络层大致介绍
由于本人是第一次使用ipython notebook框架,以前自己写Python代码都是使用的是spyder,所以刚上手是感觉真的很烦,什么都找不到。
选择itorch
在github上下载https://github.com/torch/tutorials
然后就可是在自己的电脑上测试官方tutorials上的代码了。下面是我的结果显示(不过也不知道这个老头怎么出来的,明明是lena.png,却突然出现的是老头)
torch较全的教程http://nn.readthedocs.io/en/rtd/convolution/#spatialconvolution
2012年深度学习才开始发力,所以需要了解的内容并不算太多。
神经网络只有三种层
covolution layer:卷积层,提取图片的特征
pool layer:觉得图片过大,pool layer能够缩小需要处理的信息量,因为很多时候是能够被代替的。
full conncetied layer:全连接层,求loss的层。图片分类只需要一个层,但是目标检测则至少需要两个全连接层。
在第一个例子之中,它建设了一个简单的拥有16层(?)的神经网络
nn.SpatialConvolution(1,16,12,12)
这段则是生成了16层,卷积大小是12×12的框架,通道大小为1(图像一般都是3通道),可以对图像不进行灰度化,把1改为3。
res = n:forward(image.rgb2y(i))
把图像进行灰度化,然后进行前向神经传播操作(后反馈传播是用来得出梯度的简单方法)。