畅游人工智能之海--Keras教程之局部连接层
畅游人工智能之海--Keras教程之局部连接层
上周我们刚刚结束了Keras卷积层的学习,卷积层事实上就是一种特殊的局部连接层。那么这周我们就来趁热打铁,来学习一下Keras的局部连接层。
局部连接层区别于全连接层,局部连接层也称为局部感知或稀疏连接,可以用来提取局部特征并且起到减少参数的作用。
局部连接示意图
LocallyConnected1D层
1 | keras.layers.LocallyConnected1D( |
作用:
对于时序数据进行局部连接。LocallyConnected1D层与Conv1D层的工作方式相同,除了权值不共享外, 也就是说,在输入的每个不同部分应用不同的一组过滤器。
输入尺寸:
3D 张量,尺寸为: (batch_size, steps, input_dim)。
输出尺寸:
3D 张量 ,尺寸为:(batch_size, new_steps, filters),steps值可能因填充或步长而改变。
例子:
1 | # 将长度为3的非共享权重1D卷积应用于 |
LocallyConnected2D层
1 | keras.layers.LocallyConnected2D( |
作用:
对于空间数据进行局部连接。LocallyConnected2D层与Conv2D层的工作方式相同,除了权值不共享外, 也就是说,在输入的每个不同部分应用不同的一组过滤器。
输入尺寸:
4D 张量,尺寸为: (samples, channels, rows, cols),如果 data_format='channels_first'; 或者 4D 张量,尺寸为: (samples, rows, cols, channels),如果 data_format='channels_last'。
输出尺寸:
4D 张量,尺寸为: (samples, filters, new_rows, new_cols),如果 data_format='channels_first'; 或者 4D 张量,尺寸为: (samples, new_rows, new_cols, filters),如果 data_format='channels_last'。 rows 和 cols 的值可能因填充而改变。
例子:
1 | # 在 32x32 图像上应用 3x3 非共享权值和64个输出过滤器的卷积 |
相信大家经过今天的学习,能够获得对局部连接层的作用以及使用方式的认识,局部连接层是减少网络参数的重要途径,希望大家在课下可以多多找实例进行再进一步的了解,让我们一起期待明天的RNN层教程吧!