Contoh 2 Pelatihan
Fungsi Pelatihan
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 mendefinisikan berapa banyak iterasi (loop) yang akan dilakukan model.
model.fit adalah fungsi yang menjalankan loop.
callback mendefinisikan fungsi callback untuk dipanggil ketika model ingin menggambar ulang grafik.
Uji Modelnya
Ketika sebuah model dilatih, penting untuk menguji dan mengevaluasinya.
Kami melakukan ini dengan memeriksa apa yang diprediksi model untuk berbagai input yang berbeda.
Tapi, sebelum kita bisa melakukannya, kita harus membatalkan normalisasi data:
Sebuah Normalisasi
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();
Kemudian kita bisa melihat hasilnya:
Gambarkan Hasilnya
const predicted = Array.from(unX).map((val, i) => {
return {x: val, y: unY[i]}
});
// Plot the Result
tfPlot([values, predicted], surface1)