Tensorflow.js是Google开发的开源库,用于在浏览器或节点环境中运行机器学习模型和深度学习神经网络。它还可以帮助开发人员使用 JavaScript 语言开发 ML 模型,并可以直接在浏览器或 Node.js 中使用 ML。
tf.layers.conv2dTranspose() 函数用于转置卷积,这通常是由于希望使用与正常卷积相反方向的变换而产生的。当将此层用作模型中的第一层时,它提供配置 inputShape,例如,对于 dataFormat: ‘channelsLast’ 中的 64 x 64 RGB 图片, inputShape: [ 64, 64, 5 ]。
用法:
tf.layers.conv2dTranspose( args )
参数:
- args: 它接受对象作为具有以下字段的参数:
- filters: 输出空间的维数即卷积中滤波器的数量。
- kernelSize: 它是卷积窗口的尺寸。如果 kernelSize 是一个数字,则卷积窗口将为正方形。
- strides: 它是每个维度上卷积的步幅。如果步幅是数字,则两个维度的步幅相等。
- padding: 它定义了填充模式。
- dataFormat: 它定义数据的格式,决定输入中维度的顺序。
- dilationRate: 它定义了每个维度的膨胀卷积所使用的膨胀率。它应该是一个整数或数组或两个或三个整数。
- activation: 它是该层的激活函数。
- useBias: 它定义是否使用偏差向量。
- kernelInitializer: 它是卷积核权重矩阵的初始化器。
- biasInitializer: 它是偏置向量的初始值设定项。
- kernelConstraint: 它是卷积核权重矩阵的约束。
- biasCosnstraint: 它是偏置向量的约束。
- kernelRegularizer: 它是应用于核权重矩阵的正则化函数。
- biasRegularizer: 它是应用于偏置向量的正则化函数。
- activityRegularizer: 它是应用于激活的正则化函数。
- inputShape: 它应该是一个数字数组。该字段用于创建一个输入层,该输入层用于插入到该层之前。
- batchInputShape: 它应该是一个数字数组。如果提供 inputShape 和此字段作为创建用于插入到该图层之前的输入图层的参数,则将使用此字段。
- batchSize: 它应该是一个数字。在没有batchInputShape的情况下,该字段用于使用inputShape创建batchInputShape。 batchInputShape:[batchSize,...inputShape]。
- dtype: 如果该层用作输入层,则该字段用作该层的数据类型。
- name: 它应该是字符串类型。该字段定义该层的名称。
- trainable: 它应该是布尔值。该字段定义该层的权重是否可以通过拟合进行训练。
- weights: 这应该是一个定义该层初始权重值的张量。
- inputDType: 这是用于旧版支持的数据类型。
返回值:它返回 Conv2DTranspose
示例 1:
Javascript
// Import the header file
import * as tf from "@tensorflow/tfjs"
// Creating separableConv2d layer
const conv2dTranspose = tf.layers.conv2dTranspose({
filters: 3, kernelSize: 8,
batchInputShape: [2, 3, 5]
});
// Create an input with 2 time steps.
const input = tf.input({ shape: [4, 5, 8] });
const output = conv2dTranspose.apply(input);
// Printing the Shape of file
console.log(JSON.stringify(output.shape));
输出:
[null,11,12,3]
示例 2:
Javascript
// Import Header file
import * as tf from "@tensorflow/tfjs"
// Creating input layer
const inputShape = [1, 1, 1, 2];
const input = tf.ones(inputShape);
// Creating upSampling layer
const layer = tf.layers.conv2dTranspose({
filters: 2, kernelSize: 2,
batchInputShape: [1, 2, 3]
});
// Printing tensor
const output = layer.apply(input);
output.print();
输出:
Tensor [[[[0.081374 , -0.2834765], [-0.1283467, -0.2375581]], [[-0.791486 , 0.2895283 ], [-0.2392025, -0.1721524]]]]
参考:https://js.tensorflow.org/api/latest/#layers.conv2dTranspose
相关用法
- Tensorflow.js tf.layers.conv2d()用法及代码示例
- Tensorflow.js tf.layers.conv1d()用法及代码示例
- Tensorflow.js tf.layers.convLstm2d()用法及代码示例
- Tensorflow.js tf.layers.conv3d()用法及代码示例
- Tensorflow.js tf.layers.convLstm2dCell()用法及代码示例
- Tensorflow.js tf.layers.concatenate()用法及代码示例
- Tensorflow.js tf.layers.cropping2D()用法及代码示例
- Tensorflow.js tf.layers.minimum()用法及代码示例
- Tensorflow.js tf.layers.flatten()用法及代码示例
- Tensorflow.js tf.layers.average()用法及代码示例
- Tensorflow.js tf.layers.repeatVector()用法及代码示例
- Tensorflow.js tf.layers.multiply()用法及代码示例
- Tensorflow.js tf.layers.embedding()用法及代码示例
- Tensorflow.js tf.layers.dense()用法及代码示例
- Tensorflow.js tf.layers.permute()用法及代码示例
- Tensorflow.js tf.layers.reshape()用法及代码示例
- Tensorflow.js tf.layers.dropout()用法及代码示例
- Tensorflow.js tf.layers.gaussianNoise()用法及代码示例
- Tensorflow.js tf.layers.gaussianDropout()用法及代码示例
- Tensorflow.js tf.layers.alphaDropout()用法及代码示例
- Tensorflow.js tf.layers.elu()用法及代码示例
- Tensorflow.js tf.layers.masking()用法及代码示例
- Tensorflow.js tf.layers.timeDistributed()用法及代码示例
- Tensorflow.js tf.layers.gru()用法及代码示例
- Tensorflow.js tf.layers.simpleRNNCell()用法及代码示例
注:本文由纯净天空筛选整理自satyam00so大神的英文原创作品 Tensorflow.js tf.layers.conv2dTranspose() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。