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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。