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

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

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

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

tf.layers.globalMaxPooling2d()函数用于对空间数据应用全局最大池化操作。

句法:

tf.layers.globalMaxPooling2d() 

参数:

  • args:它是一个具有以下属性的对象:
    • dataFormat:用于池化层的数据格式。
    • inputShape:如果指定,则用于构造一个输入层,该输入层将插入该层之前。
    • batchInputShape:如果指定,它将用于创建将插入该层之前的输入层。
    • batchSize:支持inputShape构建batchInputShape。
    • dtype:这是该层的数据类型。此参数仅适用于输入层。
    • name:字符串类型。这是该层的名称。
    • trainable:如果设置为 true,那么只有该层的权重会被 fit 改变。
    • weights:图层的初始权重值。
    • InputDType:用于 Legacy 支持。

返回:它返回 GlobalMaxPooling2D

示例 1:

Javascript
import * as tf from "@tensorflow/tfjs";
  
const Input = tf.input({ shape: [5, 2, 1] });
const maxPooling2DLayer =
    tf.layers.globalMaxPooling2d(
        { dataFormat: 'channelsFirst' }
    );
const Output = maxPooling2DLayer.apply(Input);
  
const Data = tf.ones([2, 5, 2, 1]);
const model =
    tf.model({ inputs: Input, outputs: Output });
  
model.predict(Data).print();


Javascript
import * as tf from "@tensorflow/tfjs";
  
const Input = tf.input({ shape: [2, 3, 3] });
  
const maxPooling2dLayer =
    tf.layers.globalMaxPooling2d({ dataFormat: 'channelsLast' });
const Output = maxPooling2dLayer.apply(Input);
  
const model = tf.model({ inputs: Input, outputs: Output });
  
const Data = tf.tensor4d([2, 3, 5, 1, 3, 5, 8, 2, 2, 6, 8, 
             9, 9, 4, 8, 9, 3, 8, 4, 2, 2, 9, 2, 4, 6, 4, 
             2, 6, 4, 2, 5, 8, 2, 8, 3, 2 ], [2, 2, 3, 3]);
model.predict(Data).print();


输出:

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

示例 2:

Javascript

import * as tf from "@tensorflow/tfjs";
  
const Input = tf.input({ shape: [2, 3, 3] });
  
const maxPooling2dLayer =
    tf.layers.globalMaxPooling2d({ dataFormat: 'channelsLast' });
const Output = maxPooling2dLayer.apply(Input);
  
const model = tf.model({ inputs: Input, outputs: Output });
  
const Data = tf.tensor4d([2, 3, 5, 1, 3, 5, 8, 2, 2, 6, 8, 
             9, 9, 4, 8, 9, 3, 8, 4, 2, 2, 9, 2, 4, 6, 4, 
             2, 6, 4, 2, 5, 8, 2, 8, 3, 2 ], [2, 2, 3, 3]);
model.predict(Data).print();

输出:

Tensor
    [[9, 8, 9],
     [9, 8, 4]]

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