Tensorflow.js 是Google开发的开源工具包,用于在浏览器或节点平台上执行机器学习模型和深度学习神经网络。它还使开发人员能够在 JavaScript 中创建机器学习模型,并直接在浏览器中或通过 Node.js 使用它们。
tf.layers.averagePooling3d()函数用于对3D数据应用平均池化操作。如果其 dataFormat 字段设置为 CHANNEL_LAST,它将采用 5d 形状 [batchSize、深度、行、列、通道] 的张量作为输入,并输出 5d 形状的张量:[batchSize、pooledDepths、pooledRows、pooledCols、channels]。其 dataFormat 字段设置为 CHANNEL_FIRST,它采用 4d 形状的张量作为输入:[batchSize,channels,deeps,rows,cols],并输出形状为:[batchSize,channels,pooledDepths,pooledRows,pooledCols]的张量。
句法:
tf.layers.averagePooling3d( args )
参数:
- args: 它是一个具有以下属性的对象:
- poolSize: 它用于缩小每个维度的因子,即[深度、高度、宽度]。它是一个整数或三个整数的数组。
- strides: 在池化窗口的每个维度中,步幅大小。它是一个整数或需要三个整数的数组。
- padding: 用于池化层的填充类型。
- dataFormat: 用于池化层的数据格式
- inputShape: 如果指定,则用于创建插入到该层之前的输入层。
- batchInputShape: 如果指定,则用于创建插入到该层之前的输入层。
- batchSize: 它用于在 inputShape 的帮助下创建batchInputShape。
- dtype: 它是这些层的数据类型。这些参数专门应用于输入层。
- name: 它是字符串类型。这是这些层的名称。
- trainable: 如果设置为 true,则只有该层的权重会因拟合而改变。
- weights: 图层的初始权重值。
返回:它返回 AveragePooling3D
示例1:
Javascript
import * as tf from "@tensorflow.js/tfjs"
const model = tf.sequential();
// First layer must have a defined input shape
model.add(tf.layers.averagePooling3d({
poolSize: 4,
strides: 5,
padding: 'valid',
inputShape: [4, 3, 5, 2],
batchSize: 2,
dataFormat: 'channelsFirst'
}));
// Afterwards, TF.js does automatic shape inference
model.add(tf.layers.dense({ units: 5 }));
// Inspect the inferred shape of the model's output
console.log(JSON.stringify(model.outputs[0].shape));
输出:
[2,4,0,1,5]
示例 2:
Javascript
import * as tf from "@tensorflow/tfjs";
const Input = tf.input({ shape: [2, 2, 2, 3] });
const averagePooling3dLayer =
tf.layers.averagePooling3d({
poolSize: 3,
strides: 2,
padding: 'same',
dataFormat: 'channelsLast',
batchSize: 3
});
const Output = averagePooling3dLayer.apply(Input);
const model = tf.model({ inputs: Input, outputs: Output });
const Data = tf.tensor5d([8, 2, 2, 6, 8, 9, 9, 4, 8, 9,
3, 8, 3, 8, 9, 4, 5, 2, 5, 9, 6, 8, 9, 3],
[1, 2, 2, 2, 3]
);
model.predict(Data).print();
输出:
Tensor [ [ [ [[6.5, 6, 5.875],]]]]
参考:https://js.tensorflow.org/api/latest/#layers.averagePooling3d
相关用法
- Tensorflow.js tf.layers.averagePooling1d()用法及代码示例
- Tensorflow.js tf.layers.averagePooling2d()用法及代码示例
- Tensorflow.js tf.layers.average()用法及代码示例
- Tensorflow.js tf.layers.alphaDropout()用法及代码示例
- Tensorflow.js tf.layers.add()用法及代码示例
- Tensorflow.js tf.layers.activation()用法及代码示例
- Tensorflow.js tf.layers.minimum()用法及代码示例
- Tensorflow.js tf.layers.flatten()用法及代码示例
- 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.concatenate()用法及代码示例
- Tensorflow.js tf.layers.gaussianNoise()用法及代码示例
- Tensorflow.js tf.layers.gaussianDropout()用法及代码示例
- 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()用法及代码示例
- Tensorflow.js tf.layers.gruCell()用法及代码示例
- Tensorflow.js tf.layers.maximum()用法及代码示例
注:本文由纯净天空筛选整理自satyam00so大神的英文原创作品 Tensorflow.js tf.layers.averagePooling3d() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。