มันจะช่วยถ้าคุณให้บริบทที่อ้างว่าการไล่ระดับสีที่ไม่มีประสิทธิภาพ ไม่มีประสิทธิภาพสัมพันธ์กับอะไร
ฉันเดาว่าบริบทที่หายไปที่นี่คือการเปรียบเทียบกับการไล่ระดับสีแบบสุ่มหรือการไล่ระดับแบทช์ในการเรียนรู้ของเครื่อง ต่อไปนี้เป็นวิธีตอบคำถามในบริบทนี้ คุณกำลังปรับพารามิเตอร์ของโมเดลให้เหมาะสมแม้กระทั่งพารามิเตอร์หลายมิติ ดังนั้นคุณมีฟังก์ชั่นค่าใช้จ่ายโดยที่ - ข้อมูลของคุณและ - เวกเตอร์ของพารามิเตอร์และฟังก์ชัน - สูญเสีย ในการลดค่าใช้จ่ายนี้ให้น้อยที่สุดคุณใช้การไล่ระดับสีตามพารามิเตอร์ :
∑ni=1L(xi|Θ)xiΘL() θj
∂∂θj∑i=1nL(Θ|xi)
ดังนั้นคุณจะเห็นว่าคุณต้องการที่จะได้รับผลบวกมากกว่าทุกข้อมูลn} นี่เป็นโชคร้ายเพราะหมายความว่าคุณวนลูปผ่านข้อมูลสำหรับการไล่ระดับสีในแต่ละขั้นตอน นั่นคือวิธีที่การไล่ระดับสีแบบแบทช์และสุ่มสุ่มเกิดขึ้น: ถ้าเราสุ่มตัวอย่างจากชุดข้อมูลและคำนวณการไล่ระดับสีบนตัวอย่างไม่ใช่ชุดเต็ม?
นี่เป็นจำนวนของการสังเกตในตัวอย่างsดังนั้นหากตัวอย่างของคุณคือ 1/100 ของชุดทั้งหมดคุณจะเพิ่มความเร็วในการคำนวณได้ถึง 100 เท่า! เห็นได้ชัดว่าสิ่งนี้แนะนำเสียงซึ่งจะช่วยเพิ่มการเรียนรู้ แต่เสียงจะลดลงในอัตราxi=1,…,n
∂∂θj∑k=1nsL(Θ|xk)
nssn−−√ในขณะที่จำนวนการคำนวณเพิ่มขึ้นที่ดังนั้นเคล็ดลับนี้อาจใช้งานได้
n
อีกวิธีหนึ่งคือรอจนกว่าจะคำนวณผลรวมทั้งหมดคุณสามารถแยกสิ่งนี้ออกเป็นแบทช์และทำขั้นตอนสำหรับแต่ละแบทช์{n_s} วิธีนี้คุณจะทำขั้นตอน M ตามเวลาที่คำนวณผลรวมของชุดข้อมูลทั้งหมด สิ่งเหล่านี้จะเป็นขั้นตอนที่น่าดู แต่เสียงจะถูกยกเลิกเมื่อเวลาผ่านไป∑ni=1∑Ms=1∑nsis=1