14_3:テンソルの作成

よく使われる例

– tf.tensor (values, shape?, dtype?)

const shape = [2, 3];
const a = tf.tensor([1, 2, 3, 4, 5, 6], shape);
a.print();
/*
Tensor
    [[1, 2, 3],
     [4, 5, 6]]
*/

const b = tf.tensor([[1, 2], [3, 4], [5, 6]]);
b.print();
/*
Tensor
    [[1, 2],
     [3, 4],
     [5, 6]]
*/

– tf.scalar (value, dtype?)

tf.scalar(3.14, 'int32').print();
/*
Tensor
    3
*/

tf.scalar(3.14, 'float32').print();
/*
Tensor
    3.140000104904175
*/

– tf.tensor1d (values, dtype?)

tf.tensor1d([1, 2, 3]).print();
/*
Tensor
    [1, 2, 3]
*/

– tf.tensor2d (values, shape?, dtype?)

tf.tensor2d([[1, 2, 3], [4, 5, 6]]).print();
/*
Tensor
    [[1, 2, 3],
     [4, 5, 6]]
*/

tf.tensor2d([1, 2, 3, 4, 5, 6], [3, 2]).print();
/*
Tensor
    [[1, 2],
     [3, 4],
     [5, 6]]
*/

– tf.tensor3d (values, shape?, dtype?)

tf.tensor3d([[[1], [2], [3]], [[4], [5], [6]]]).print();
/*
Tensor
    [[[1],
      [2],
      [3]],

     [[4],
      [5],
      [6]]]
*/

tf.tensor3d([1, 2, 3, 4, 5, 6], [3, 2, 1]).print();
/*
Tensor
    [[[1],
      [2]],

     [[3],
      [4]],

     [[5],
      [6]]]
*/

要素が同じ値

– tf.zeros (shape, dtype?): すべての要素を0に設定する。
– tf.zerosLike (x): すべての要素を、与えられたtf.Tensorと同じシェイプで、0に設定する。

tf.zeros([3, 5]).print();
/*
Tensor
    [[0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0]]
*/

const x = tf.tensor([2, 3, 4, 5]);
tf.zerosLike(x).print();
/*
Tensor
    [0, 0, 0, 0]
*/

– tf.ones (shape, dtype?): すべての要素を1に設定する。
– tf.onesLike (x): すべての要素を、与えられたtf.Tensorと同じシェイプで、1に設定する。

– tf.fill (shape, value, dtype?): すべての要素をスカラー値に設定する。

tf.fill([2, 3], 8).print();
/*
Tensor
    [[8, 8, 8],
     [8, 8, 8]]
*/

要素が連続する

– tf.linspace (start, stop, num): 数値が等間隔で連続する要素のtf.Tensorを返す。

tf.linspace(1, 9, 9).print();
/*
Tensor
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
*/

tf.linspace(1, 9, 5).print();
/*
Tensor
    [1, 3, 5, 7, 9]
*/

– tf.range (start, stop, step?, dtype?): 与えられた範囲(start, stop)で数値を埋めたtf.Tensor1Dを返す。

tf.range(0, 9).print();
/*
Tensor
    [0, 1, 2, 3, 4, 5, 6, 7, 8]
*/

tf.range(0, 9, 3).print();
/*
Tensor
    [0, 3, 6]
*/

要素がランダムに分布する

– tf.randomNormal (shape, mean?, stdDev?, dtype?, seed?): 正規分布からサンプリングされた値を持つtf.Tensorを返す。
+ shape (number[]): 出力するtf.Tensorのシェイプ
+ mean (number): 平均
+ stdDev (number): 標準偏差
+ dtype (‘float32’|’int32’)
+ seed (number): 乱数生成用のシード(種)

tf.randomNormal([2, 2], 0, 1).print();
/*
Tensor
    [[-1.1488395, 0.0566379],
     [1.6311718 , 0.6639878]]
*/

– tf.truncatedNormal (shape, mean?, stdDev?, dtype?, seed?): 切断正規分布からサンプリングされた値を持つtf.Tensorを返す。
– tf.randomUniform (shape, minval?, maxval?, dtype?): 一様分布からサンプリングされた値を持つtf.Tensorを返す。

tf.randomUniform([2, 2], 1, 2).print();
/*
Tensor
    [[1.3520408, 1.7230165],
     [1.6436907, 1.9786676]]
*/

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA