DL学习记录(一)

2020-04-11  本文已影响0人  SunJi_

1. 理论知识

1.1 卷积神经网络:https://www.jianshu.com/p/c0215d26d20a

滤波器:filter/kernel

CNN(convolutional neural network),主要就是通过一个个的filter,不断地提取特征,从局部的特征到总体的特征,从而进行图像识别等等功能。

padding

padding解决卷积的两个问题,一在卷积过程中图像越来越小,二图片边缘的点相对于中间的点在卷积中计算次数很少,容易丢失边缘信息。

Maxpooling

多通道卷积,彩色图像一般都是RGB三个通道,因此输入数据的维度一般有三个:(长,宽,通道),此时filter也是三个维度且第三个通道要和输入的通道维度一样。

CNN

CNN相对普通神经网络优点

  1. parameter sharing(权重共享机制)

    对于不同的区域,如果共享同一个filter,就共享同一组参数。可以大大减小网络的参数量,用较少的参数训练出更加好的模型,而且可以有效地避免过拟合。

  2. sparsity of connection(连接的稀疏性)

输出图像中的任何一个单元,只跟输入图像的一部分有关系,每一个区域都有自己的专属特征且不受到其他区域的影响。

1.2

2. Pytorch学习

pytorch可以看作是搭建神经网络的Numpy,和Numpy有很多相似之处。有时间之后再补一下Numpy和Pandas数据处理相关知识。

import torch

#创建张量
x = torch.empty(5, 3)  
x = torch.rand(5, 3)
x = torch.zeros(5, 3)

#tensor->numpy
x = torch.ones(5, 3)
y = x.numpy()

#numpy->tensor
x = numpy.ones(5, 3)
y = torch.from_numpy(x)





torch函数记录:

torch.add(x, y)
torch.size(x.size(), y.size())

上一篇下一篇

猜你喜欢

热点阅读