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


Tensorflow.js tf.data.Dataset.shuffle()用法及代码示例


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

tf.data.Dataset.shuffle() 方法沿张量的第一维随机打乱张量。

用法:

tf.data.Dataset.shuffle(
    buffer_size, seed=None, 
    reshuffle_each_iteration=None
)

参数:

  • buffer_size:这是将从中采样新数据集的元素数。
  • 种子[可选]: 它是一个可选参数,用于为分布创建随机种子,以使用相同的种子查看相同的结果。
  • reshuffle_each_iteration:一个布尔值,它为 true 表示每次迭代数据集时都应该伪随机地重新洗牌。默认值为真。它是可选参数。

返回值: 具有与值相同的形状和数据类型的张量,但沿其第一维随机排列。



范例1:在这个例子中,首先我们将创建一个张量,然后将它打乱,在这个例子中 reshuffle_each_iteration 是 True

Javascript


async function shuffle() {
 
    // Creating a Tensor
    const a = tf.data.array([1, 2, 3, 4, 5, 6]).shuffle(3);
    await a.forEachAsync(e => console.log(e)); //print 1
    await a.forEachAsync(e => console.log(e)); //print 2
}
 
shuffle();

输出:

3 4 1 2 5 6
3 4 2 5 6 1

范例2:在这个例子中,种子被设置为一个整数,每当一个特定的整数被使用时,它就会生成那个特定的输出

Javascript


async function shuffleseed() {
    const a = tf.data.array([1, 2, 3]).shuffle(3, seed = 42);
    await a.forEachAsync(e => console.log(e));
 
    const b = tf.data.array([1, 2, 3]).shuffle(3, seed = 42);
    await b.forEachAsync(e => console.log(e));
}
 
shuffleseed();

输出:

2 1 3
2 1 3

参考:https://js.tensorflow.org/api/3.6.0/#tf.data.Dataset.shuffle

相关用法


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