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)