当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Tensorflow.js tf.layers.flatten()用法及代码示例


Tensorflow.js是Google开发的开源库,用于在浏览器或节点环境中运行机器学习模型和深度学习神经网络。

tf.layers.flatten()函数用于展平输入,而不会影响批处理大小。展平层将输入中的每个批次展平为一维。

用法:

tf.layers.flatten( args? )

参数:它以object:args(Object)作为输入。提供args对象作为输入是可选的。以下是您可以在args对象中提供的字段。

  • dataFormat(“ channelsFirst”或“ channelsLast”):它是图像数据格式。
  • inputShape((null | number)[]):它用于创建要在该层之前插入的输入层。
  • batchInputShape((null | number)[]):它用于创建要在该层之前插入的输入层。如果同时定义了inputShape和batchInputShape,则将使用batchInputShape。
  • batchSize (number):如果指定了inputShape而未指定batchInputShape,则使用batchSize构造batchInputShape。
  • dtype(‘float32’ |'int32'|'bool'|'complex64'|'string'):用于定义该层的数据类型。
  • name (string):用于为图层提供名称。
  • trainable (boolean):用于指定该层的权重是否可以通过拟合更新。默认值os true。
  • 权重(tf.Tensor []):用于提供层的初始重量值。

返回值:它返回平坦的层。



范例1:

Javascript


const tf = require("@tensorflow/tfjs")
  
const input = tf.input({shape:[5, 4]});
  
// Creating flattened layer
const flattenLayer = tf.layers.flatten();
  
// Printing the shape
console.log(JSON.stringify(flattenLayer.apply(input).shape));

输出:在输出中,我们可以看到扁平层的形状等于“ [null,12]”,因为第二维为4 * 3,即扁平化的结果。

[null, 20]

范例2:在此示例中,我们将在args对象中提供name字段作为输入。

Javascript


const tf = require("@tensorflow/tfjs")
  
const input = tf.input({shape:[4, 3]});
  
// Creating flattened layer
const flattenLayer = tf.layers.flatten({name:'NewLayer1'});
  
// Printing the name and shape
console.log("Name of the layer:" 
    + flattenLayer.apply(input).name)
  
console.log(JSON.stringify(
    flattenLayer.apply(input).shape));

输出:

Name of the layer:NewLayer1/NewLayer1
[null, 12]

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

相关用法


注:本文由纯净天空筛选整理自parasmadan15大神的英文原创作品 Tensorflow.js tf.layers.flatten() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。