ใครช่วยบอกฉันทีว่าฉันควรจะสร้างเครือข่ายประสาทโดยใช้วิธีการแบทช์ได้ไหม
ฉันได้อ่านแล้วว่าในโหมดแบทช์สำหรับตัวอย่างทั้งหมดในชุดการฝึกอบรมเราคำนวณข้อผิดพลาดเดลต้าและทำให้น้ำหนักเดลต้าสำหรับเซลล์ประสาทแต่ละตัวในเครือข่ายและจากนั้นแทนที่จะอัปเดตน้ำหนักทันทีเราสะสมพวกเขาและจากนั้นก่อนเริ่ม ยุคต่อไปเราจะปรับปรุงน้ำหนัก
ฉันยังอ่านบางที่ว่าวิธีการแบทช์เป็นเหมือนวิธีการออนไลน์ แต่ด้วยความแตกต่างที่เราต้องการเพียงข้อสรุปข้อผิดพลาดสำหรับตัวอย่างทั้งหมดในชุดการฝึกอบรมแล้วใช้ค่าเฉลี่ยของมันแล้วใช้ค่าเฉลี่ยของมัน วิธีการหนึ่งในวิธีออนไลน์ (ความแตกต่างเป็นเพียงค่าเฉลี่ย) เช่นนี้:
for epoch=1 to numberOfEpochs
for all i samples in training set
calculate the errors in output layer
SumOfErrors += (d[i] - y[i])
end
errorAvg = SumOfErrors / number of Samples in training set
now update the output layer with this error
update all other previous layers
go to the next epoch
end
- หนึ่งในวิธีเหล่านี้เป็นรูปแบบที่ถูกต้องอย่างแท้จริงของวิธีการแบทช์?
- ในกรณีของคนแรกที่ไม่ได้น้ำหนักทั้งหมดของเดลต้าทั้งหมดส่งผลในจำนวนมาก?