Keras 主要的层函数

Posted 陈沧夜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Keras 主要的层函数相关的知识,希望对你有一定的参考价值。

文章目录

卷积层

Conv1D layer:一维卷积层(例如时间卷积),该层创建一个卷积内核,该卷积内核图层输入在单个空间(或时间)维度上,以产生输出张量。

Conv2D layer:2D 卷积层(例如图像上的空间卷积)。该层创建一个卷积内核,该卷积内核使用层输入产生张量输出。

Conv3D layer:3D 卷积层(例如体积上的空间卷积)。该层创建一个卷积内核,该卷积内核使用层输入产生张量输出。

SeparableConv1D layer:深度可分离的一维卷积。该层执行深度卷积,该卷积单独作用于通道,然后是混合通道的逐点卷积。

SeparableConv2D layer:深度可分离的 2D 卷积。可分离卷积由首次执行深度空间卷积 (分别作用于每个输入通道) 然后是逐点卷积,将结果混合输出通道。

DepthwiseConv2D layer:深度 2D 卷积。深度卷积是一种卷积,其中每个输入通道 与不同的内核(称为深度内核)卷积。

Conv1DTranspose layer:转置卷积层(有时称为反卷积)。

Conv3DTranspose layer:二维转置卷积层(有时称为反卷积)。

Conv3DTranspose layer:三维转置卷积层(有时称为反卷积)。

池化层 Pooling layers

MaxPooling1D layer:一维时态数据的最大池化操作。通过取最大值对输入表示进行下采样大小的空间窗口。

MaxPooling2D layer:2D 空间数据的最大池化操作。沿输入的空间维度(高度和宽度)对输入进行下采样。

MaxPooling3D layer:3D 数据的最大池化操作(空间或时空)。

AveragePooling1D layer:时态数据的平均池化。

AveragePooling2D layer:空间数据的平均池化操作。

AveragePooling3D layer:3D 数据的平均池化操作(空间或时空)。

GlobalMaxPooling1D layer:一维时态数据的全局最大池化操作。

GlobalMaxPooling2D layer:空间数据的全局最大池化操作。

全GlobalMaxPooling3D layer:3D 数据的全局最大池化操作。

GlobalAveragePooling1D layer:时态数据的全局平均池化操作。

GlobalAveragePooling2D layer:空间数据的全局平均池化操作。

GlobalAveragePooling3D layer:3D 数据的全局平均池化操作。

循环层

LSTM layer:长短期记忆层

GRU layer:门控循环单元

SimpleRNN layer:全连接 RNN

TimeDistributed layer:此包装器允许将图层应用于输入的每个时态切片。

Bidirectional layer:RNN 的双向包装器。

ConvLSTM1D layer:一维卷积 LSTM。

ConvLSTM2D layer:二维卷积 LSTM。

ConvLSTM3D layer:三维卷积 LSTM。

Base RNN layer:循环层的基类。

预处理层 Preprocessing layers

Text preprocessing:将文本特征映射到整数序列的预处理层。

Numerical features preprocessing layers:包括规范化层和离散化层

Numerical features preprocessing layers:包括类别编码层、哈希层、字符串查找层、整数查找层

Numerical features preprocessing layers:包括调整图像大小层、重新缩放层、中心裁剪层

Numerical features preprocessing layers:包括随机裁剪图层、随机翻转图层、随机平移层、随机旋转图层、随机缩放图层、随机高度图层、随机宽度图层、随机对比度图层、随机亮度图层

归一化层

BatchNormalization layer:规范化输入的层。批量归一化应用保持平均输出的变换接近 0,输出标准差接近 1。

LayerNormalization layer:层的归一化层(Ba等人,2016)。规范化每个给定示例中前一层的激活,独立于批处理,而不是像批处理规范化那样跨批处理。 即应用一个变换,以保持每个内的平均激活接近 0,激活标准差接近 1。

UnitNormalization layer:单元归一化层。规范化一批输入,以便该批中的每个输入都具有 L2 范数等于 1。

GroupNormalization layer:组规范化层。组规范化将通道划分为组并计算 在每个组中,归一化的均值和方差。

正则化层 Regularization layers

Dropout layer:Dropout 层在训练时以每一步的频率随机将输入单位设置为 0,这有助于防止过度拟合。

SpatialDropout1D layer:Dropout 的空间一维版本。

SpatialDropout2D layer:Dropout 的空间二维版本。

SpatialDropout3D layer:Dropout 的空间三维版本。

GaussianDropout layer:应用乘法 1 中心高斯噪声。由于它是一个正则化层,因此它仅在训练时处于活动状态。

GaussianNoise layer:应用加法 0 中心高斯噪声。这对于缓解过度拟合很有用 (您可以将其视为随机数据增强的一种形式)。

ActivityRegularization layer:对基于成本函数的输入活动应用更新的图层

AlphaDropout layer:对基于成本函数的输入活动应用更新的图层

注意力层 Attention layers

MultiHeadAttention layer:多头注意层。这是多头注意力的实现。

Attention layer:点积注意力层。输入是形状的张量,张量 形状和形状的张量。

AdditiveAttention layer:加性注意力层。输入是形状的张量,张量 形状和形状的张量。

Reshaping layers

Reshape layer:将输入调整为给定形状的图层。

Flatten layer:平展输入。不影响批大小。

RepeatVector layer:重复输入 n 次。

Permute layer:根据给定模式排列输入的维度。

Cropping1D layer:用于一维输入的裁剪图层(例如时间序列)。

Cropping2D layer:用于 2D 输入(例如图片)的裁剪图层。

Cropping3D layer:3D 数据的裁剪图层(例如空间或时空)。

UpSampling1D layer:一维输入的上采样层。沿时间轴重复每个时态步长时间。

UpSampling2D layer:用于 2D 输入的上采样层。重复数据的行和列。

UpSampling3D layer:3D 输入的上采样图层。

ZeroPadding1D layer:用于一维输入的零填充层(例如时间序列)。

ZeroPadding2D layer:用于 2D 输入(例如图片)的零填充层。

ZeroPadding3D layer:3D 数据(空间或时空)的零填充图层。

合并图层 Merging layers

Concatenate layer:连接输入列表的层。

Average layer:连接输入列表的层。

Maximum layer:计算输入列表最大值(按元素)的层。

Minimum layer:计算输入列表最小值(按元素)的层。

Add layer:添加输入列表的图层。

Subtract layer:减去两个输入的图层。

Multiply layer:将输入列表相乘(按元素)的层。

Dot layer:计算两个张量中样本之间的点积的层。

本地连接层 Locally-connected layers

LocallyConnected1D layer:用于 1D 输入的本地连接层。

LocallyConnected2D layer:用于 2D 输入的本地连接层。

激活层 Activation layers

ReLU layer:整流线性单元激活功能。

Softmax layer:Softmax 激活函数层

LeakyReLU layer:LeakyReLU激活函数层

PReLU layer:PReLU激活函数层

ELU layer:ELU激活函数层

ThresholdedReLU layer:ThresholdedReLU激活函数层

以上是关于Keras 主要的层函数的主要内容,如果未能解决你的问题,请参考以下文章

[Python人工智能] 三十六.基于Transformer的商品评论情感分析 keras构建多头自注意力(Transformer)模型

[Python人工智能] 三十六.基于Transformer的商品评论情感分析 keras构建多头自注意力(Transformer)模型

Keras官方中文文档:融合层Merge

Keras网络层之“关于Keras的层(Layer)”

如何向Keras的层喂入数据

如何确定 Keras 的 Dense 方法中的层大小?