Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

示例 2 模型


混洗数据

在训练之前始终混洗数据。

当训练模型时,数据被分成小的集合(批次)。然后将每个批次馈送到模型。混洗很重要,以防止模型反复获取相同的数据。如果使用相同的数据两次,模型将无法泛化数据并给出正确的输出。混洗在每个批次中提供更好的数据多样性。

示例

tf.util.shuffle(data);

TensorFlow 张量

要使用 TensorFlow,需要将输入数据转换为张量数据

// 将 x 值映射到张量输入
const inputs = values.map(obj => obj.x);
// 将 y 值映射到张量标签
const labels = values.map(obj => obj.y);

// 将输入和标签转换为 2d 张量
const inputTensor = tf.tensor2d(inputs, [inputs.length, 1]);
const labelTensor = tf.tensor2d(labels, [labels.length, 1]);

数据标准化

数据在用于神经网络之前应该进行标准化。

对于数值数据,使用 min-max 的 0 - 1 范围通常是最好的

const inputMin = inputTensor.min();
const inputMax = inputTensor.max();
const labelMin = labelTensor.min();
const labelMax = labelTensor.max();
const nmInputs = inputTensor.sub(inputMin).div(inputMax.sub(inputMin));
const nmLabels = labelTensor.sub(labelMin).div(labelMax.sub(labelMin));


Tensorflow 模型

机器学习模型是一种从输入生成输出的算法。

此示例使用 3 行定义ML 模型

const model = tf.sequential();
model.add(tf.layers.dense({inputShape: [1], units: 1, useBias: true}));
model.add(tf.layers.dense({units: 1, useBias: true}));

顺序 ML 模型

const model = tf.sequential(); 创建一个顺序 ML 模型

在顺序模型中,输入直接流向输出。其他模型可以具有多个输入和多个输出。顺序是最简单的 ML 模型。它允许您逐层构建模型,权重对应于下一层。

TensorFlow 层

model.add() 用于向模型添加两层。

tf.layer.dense 是一种在大多数情况下都能正常工作的层类型。它将输入乘以权重矩阵,并将数字(偏差)添加到结果中。

形状和单元

inputShape: [1] 因为我们有 1 个输入(x = 房屋)。

units: 1 定义权重矩阵的大小:每个输入(x 值)有 1 个权重。


编译模型

使用指定的优化器损失函数编译模型

model.compile({loss: 'meanSquaredError', optimizer:'sgd'});

编译器设置为使用sgd 优化器。它易于使用且非常有效。

meanSquaredError 是我们想要用来比较模型预测和真实值的函数。


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.