Exemple 1 Formation
Fonction d'entraînement
async function trainModel(model, inputs, labels, surface) {
const batchSize = 25;
const epochs = 100;
const callbacks = tfvis.show.fitCallbacks(surface, ['loss'], {callbacks:['onEpochEnd']})
return await model.fit(inputs, labels,
{batchSize, epochs, shuffle:true, callbacks:callbacks}
);
}
epochs définit le nombre d'itérations (boucles) que le modèle fera.
model.fit est la fonction qui exécute les boucles.
callbacks définit la fonction de rappel à appeler lorsque le modèle veut redessiner les graphiques.
Tester le modèle
Lorsqu'un modèle est formé, il est important de le tester et de l'évaluer.
Pour ce faire, nous examinons ce que le modèle prédit pour une gamme d'entrées différentes.
Mais, avant de pouvoir faire cela, nous devons dénormaliser les données :
A Normaliser
let unX = tf.linspace(0, 1, 100);
let unY = model.predict(unX.reshape([100, 1]));
const unNormunX = unX.mul(inputMax.sub(inputMin)).add(inputMin);
const unNormunY = unY.mul(labelMax.sub(labelMin)).add(labelMin);
unX = unNormunX.dataSync();
unY = unNormunY.dataSync();
Ensuite, nous pouvons regarder le résultat:
Tracer le résultat
const predicted = Array.from(unX).map((val, i) => {
return {x: val, y: unY[i]}
});
// Plot the Result
tfPlot([values, predicted], surface1)