Функция Tensorflow.js tf.layers.globalMaxPooling2d()

Опубликовано: 11 Августа, 2022

Tensorflow.j — это разработанный Google набор инструментов с открытым исходным кодом для выполнения моделей машинного обучения и нейронных сетей глубокого обучения в браузере или на платформе узла. Это также позволяет разработчикам создавать модели машинного обучения в JavaScript и использовать их непосредственно в браузере или с помощью Node.js.

Функция tf.layers.globalMaxPooling2d() используется для применения операции Global max pooling для пространственных данных.

Синтаксис:

tf.layers.globalMaxPooling2d() 

Параметры:

  • args: это объект со следующими свойствами:
    • dataFormat: формат данных, используемый для слоя пула.
    • inputShape: если он указан, он будет использоваться для создания входного слоя, который будет вставлен перед этим слоем.
    • batchInputShape: если он указан, он будет использоваться для создания входного слоя, который будет вставлен перед этим слоем.
    • batchSize: поддерживает inputShape для создания batchInputShape.
    • dtype: тип данных для этого слоя. Этот параметр применяется исключительно к входным слоям.
    • имя: имеет строковый тип. Это имя этого слоя.
    • обучаемый: если для него установлено значение true, то только веса этого слоя будут изменены по размеру.
    • 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();

Выход:

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