javascript - 在 tensorflow.js 中设置权重的函数初始值设定项

标签 javascript tensorflow tensorflow.js

我试图用正值初始化 tensorflow.js 中的权重,但似乎我从未给它“正确”的形状。这是我的代码:

let data_size = 500;
let input = [];
let output;
const model = tf.sequential();

for (var i = 0; i < data_size; i++){
    input[i] = i;
}

input = tf.tensor2d(input, [data_size, 1]);
output = tf.add(tf.scalar(1), input);

model.add(tf.layers.dense({units: 6, activation: "relu", inputShape: [1], weights: tf.randomUniform([6, 1], 0, 1)}));
model.add(tf.layers.dense({units: 1, activation: "linear"}));

model.compile({loss: "meanSquaredError", optimizer: "adam"});

所以在我的代码中,在我添加的第一层中,我放置了“weights”参数来选择权重的初始化 https://js.tensorflow.org/api/0.13.0/#layers.add

但即使权重的形状是 [6, 1],它也不会接受。我也尝试了 tf.randomUniform([1], 0, 1) ,因为它可能是传递给所有权重的单个表达式,但它也不起作用。 tensorflow.js如何选择表达式来初始化权重?

最佳答案

weights 是根据 doc 的张量数组.该层以这种方式初始化AX + B。因此需要提供 AB 张量(其中 X 是层的输入)。

let data_size = 500;
let input = [];
let output;
const model = tf.sequential();

for (var i = 0; i < data_size; i++){
    input[i] = i;
}

input = tf.tensor2d(input, [data_size, 1]);
output = tf.add(tf.scalar(1), input);

model.add(tf.layers.dense({units: 6, activation: "relu", inputShape: [1], weights: [ tf.randomUniform([1, 6], 0, 1),  tf.randomUniform([6], 0, 1)]}));
model.add(tf.layers.dense({units: 1, activation: "linear"}));

model.compile({loss: "meanSquaredError", optimizer: "adam"});
<html>
  <head>
    <!-- Load TensorFlow.js -->
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@0.12.0"> </script>
  </head>

  <body>
  </body>
</html>

关于javascript - 在 tensorflow.js 中设置权重的函数初始值设定项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52508290/

相关文章:

javascript - 如何使用 Type writer javascript 仅移动 1 个单词?

python - Tensorflow 到 Keras : import graph def error on Keras model

python-3.x - tensorflow 1.8 与 python 3.6 在 windows64

javascript - 如何标准化 tensorflow.js 中的图像?

javascript - 在tensorflow.js中创建使用null作为批量维度的张量

javascript - Vue.js 中的 Vuelidate 自定义验证函数

javascript - 如何删除配置文件中的状态栏

javascript - 有什么方法可以为带有变量的 DOM 对象设置样式吗?

python - 在 keras 中使用自定义 tensorflow ops

javascript - tensorflow : Uncaught (in promise) TypeError: Cannot read property 'length' of undefined