一开始先把总的层都给罗列出来,有一个整体的印象
- Data layers
- Vision layers
- Recurret layers
- Common layers
- Normalization layers
- Activaction/Neuron layers
- Utility layers
- Loss layers
接下来简要叙述,各层主要功能,后面分类讲述。
- Data layers
- 这里,Data layers数据层,是原始数据的输入层,主要考虑数据的输入方式和对应的转换。如从数据库leveldb、lmdb中读取数据,也可以直接从内存中读取,还可以从hdf5,甚至是原始的图像读入数据。
- Vision layers
- vision_layer主要是图像卷积的操作,像convolusion、pooling、LRN都在里面,输出前后都是图像的结构。还有一个序列化的函数im2col,加速卷积
- Recurret layers
- Common layers
- 这层是指全连接层以及一些相关的处理(dropout防止过拟合)
- Inner Product - fully connected layer.
- Dropout
- Embed - for learning embeddings of one-hot encoded vector (takes index as input).
- 这层是指全连接层以及一些相关的处理(dropout防止过拟合)
- Normalization layers
- 这层顾名思义归一化层
- 包括LRN 、MVN、Batch Normalization
- 目的是修调处理后的数据
- Activaction/Neuron layers
- **层
- 包括各种**函数
- Utility layers
- 联合层
- 比较杂的函数方法都丢到这里。向softmax 。。。。。reshape居然也在
- Loss layers
- 这里把反馈、损失 都放在这里,算是比较核心的内容。
总的说来,这些层的主干主要包括个,分别是data layers、vison layers、Common layers、Utility layers and loss layers。
剩下的主要是为了完善而有的。