在tensorflow.js中将预测值Y转换为一定数量的X值

时间:2018-07-26 15:48:29

标签: machine-learning tensorflow.js

我是机器学习的初学者,由于我喜欢使用javascript,所以我最近开始使用tensorflow.js库。我同时使用将曲线拟合到综合数据(这是一个回归问题)和 MNIST数字识别,并使用了卷积层(这是一个 >分类问题,现在我有点知道数据如何流经各层。

但是现在我想对图书馆做更多的事情。因此,我从开放的数据集中下载了 wine-quality.csv 数据集,该数据集包含葡萄酒中不同数量的成分,并且可以评估葡萄酒的某种品质。从.csv解析的数据看起来像这样。

xs : [[5]]
ys : [[0.5,0.004,0.003,0.1,4,0.11]]

现在我想将葡萄酒的数量( YS )传递给模型,并且我希望模型能够预测我葡萄酒的质量( XS )。而且我不知道该如何构想。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

您的输入数组的维数为1,大小为6。可以使用随机梯度下降优化器定义以下模型。

const model = tf.sequential();

// First define the model
model.add(tf.layers.dense({units: 1, inputShape: [6]}));
// use the sgd optimizer
model.compile({loss: 'meanSquaredError', optimizer: 'sgd'});
const x = tf.tensor2d([[0.5,0.004,0.003,0.1,4,0.11]])
const y = tf.tensor2d([[5]])
//training data
model.fit(x, y)
//test data
model.predict(tf.tensor2d([0.5,0.004,0.003,0.1,4,0.11], [1, 6])).print()
<html>
  <head>
    <!-- Load TensorFlow.js -->
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@0.12.0"> </script>
  </head>

  <body>
  </body>
</html>