ตัวอย่างที่ 1 การอบรม
ฟังก์ชั่นการฝึกอบรม
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}
);
}
ยุคกำหนดจำนวนการวนซ้ำ (วนซ้ำ) ที่โมเดลจะทำ
model.fitเป็นฟังก์ชันที่รันลูป
callbacksกำหนดฟังก์ชัน callback เพื่อโทรเมื่อโมเดลต้องการวาดกราฟิกใหม่
ทดสอบโมเดล
เมื่อแบบจำลองได้รับการฝึกอบรม การทดสอบและประเมินผลเป็นสิ่งสำคัญ
เราทำสิ่งนี้โดยตรวจสอบสิ่งที่ตัวแบบคาดการณ์สำหรับอินพุตต่างๆ
แต่ก่อนที่เราจะสามารถทำได้ เราต้องยกเลิกการทำให้ข้อมูลเป็นมาตรฐาน:
การทำให้เป็นปกติ
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();
จากนั้นเราสามารถดูผลลัพธ์:
พล็อตผลลัพธ์
const predicted = Array.from(unX).map((val, i) => {
return {x: val, y: unY[i]}
});
// Plot the Result
tfPlot([values, predicted], surface1)