📜  Tensorflow.js tf.layers.maxPooling3d()函数

📅  最后修改于: 2022-05-13 01:56:35.617000             🧑  作者: Mango

Tensorflow.js tf.layers.maxPooling3d()函数

Tensorflow.js 是 Google 开发的开源工具包,用于在浏览器或节点平台上执行机器学习模型和深度学习神经网络。它还使开发人员能够在 JavaScript 中创建机器学习模型,并直接在浏览器或 Node.js 中使用它们。

tf.layers.maxPooling3d()函数用于对 3D 数据应用最大池化操作。

句法:

tf.layers.maxPooling3d(args)

参数:

  • args:它是可以具有以下属性的对象:
    • poolSize:用于每个维度的缩小因子,即[深度、高度、宽度]。它是一个整数或三个整数的数组。
    • strides:在池化窗口的每个维度中,步幅大小。它是一个整数或需要三个整数的数组。
    • padding:用于池化层的填充类型。
    • dataFormat:用于池化层的数据格式。
    • inputShape:如果指定,则用于构造一个输入层,该输入层将插入该层之前。
    • batchInputShape:如果指定,它将用于创建将插入该层之前的输入层。
    • batchSize:支持inputShape构建batchInputShape。
    • dtype:这是该层的数据类型。此参数仅适用于输入层。
    • name:字符串类型。这是该层的名称。
    • trainable:如果设置为 true,那么只有该层的权重会被 fit 改变。
    • weights:图层的初始权重值。
    • inputDType:用于 Legacy 支持。

返回:返回 MaxPooling3D

示例 1:

Javascript
import * as tf from "@tensorflow/tfjs";
  
const input = tf.input({ shape: [3, 2, 4, 3] });
const maxPoolingLayer = tf.layers.maxPooling3d(
    { poolSize: [2, 2,4], 
    strides:[3, 4, 5], 
    padding: 'valid' });
const output = maxPoolingLayer.apply(input);
  
const model = tf.model({ inputs: input, outputs: output });
model.summary();


Javascript
import * as tf from "@tensorflow/tfjs";
const input = tf.input({ shape: [2, 2, 4,5] });
const maxPoolingLayer =    tf.layers.maxPooling3d({ poolSize: [2, 2,4] 
                              ,strides:[3, 4, 5], padding: 'valid' });
const output = maxPoolingLayer.apply(input);
const model = tf.model({ inputs: input, outputs: output });
const x = tf.ones([2, 2, 2, 4,5]);
model.predict(x).print();


输出:

__________________________________________________________________________________________
Layer (type)                Input Shape               Output shape              Param #   
==========================================================================================
input44 (InputLayer)        [[null,3,2,4,3]]          [null,3,2,4,3]            0         
__________________________________________________________________________________________
max_pooling3d_MaxPooling3D4 [[null,3,2,4,3]]          [null,1,1,1,3]            0         
==========================================================================================
Total params: 0
Trainable params: 0
Non-trainable params: 0
__________________________________________________________________________________________

示例 2:

Javascript

import * as tf from "@tensorflow/tfjs";
const input = tf.input({ shape: [2, 2, 4,5] });
const maxPoolingLayer =    tf.layers.maxPooling3d({ poolSize: [2, 2,4] 
                              ,strides:[3, 4, 5], padding: 'valid' });
const output = maxPoolingLayer.apply(input);
const model = tf.model({ inputs: input, outputs: output });
const x = tf.ones([2, 2, 2, 4,5]);
model.predict(x).print();

输出:

Tensor
    [[[[[1, 1, 1, 1, 1],]]],
      [[[[1, 1, 1, 1, 1],]]]]

参考: https://js.tensorflow.org/api/latest/#layers.maxPooling3d