คู่มือทางเทคนิค

อดัมและเครื่องมือเพิ่มประสิทธิภาพแบบอะแดปทีฟ

Adam เป็นเครื่องมือเพิ่มประสิทธิภาพที่อยู่เบื้องหลังโครงข่ายประสาทเทียมที่ทันสมัยที่สุด โดยจะปรับอัตราการเรียนรู้แยกกันสำหรับทุกพารามิเตอร์โดยอัตโนมัติ

อ่าน 2 นาทีอัปเดตล่าสุด

ภาพรวม

It matters because it makes training deep models faster and far less finicky than plain gradient descent.

เจาะลึก

Adam (Adaptive Moment Estimation) เปิดตัวโดย Kingma และ Ba ในปี 2014 รวมสองแนวคิดเข้าด้วยกัน ประการแรก โมเมนตัม: มันจะรักษาค่าเฉลี่ยของการไล่ระดับสีที่ผ่านมาแบบทวีคูณ (ช่วงแรก) ดังนั้นให้อัปเดตความเร็วในการสร้างในทิศทางที่สอดคล้องกัน ประการที่สอง มาตราส่วนต่อพารามิเตอร์: ติดตามค่าเฉลี่ยของการไล่ระดับสีกำลังสอง (ช่วงเวลาที่สอง) และหารแต่ละขั้นตอนด้วยรากที่สองของค่านั้น ดังนั้นพารามิเตอร์ที่มีการไล่ระดับสีขนาดใหญ่และมีเสียงรบกวนจะใช้ขั้นตอนที่เล็กลง และพารามิเตอร์ที่ไม่ค่อยได้รับการอัปเดตจะใช้ขั้นตอนที่ใหญ่กว่า การปรับตัวนี้หมายความว่าคุณสามารถใช้อัตราการเรียนรู้เดียวทั่วทั้งเครือข่ายได้ ตัวแปร AdamW แยกการลดน้ำหนักออกจากการอัปเดตการไล่ระดับสี และกลายเป็นค่าเริ่มต้นสำหรับการฝึกหม้อแปลงขนาดใหญ่และโมเดลภาษา

ข้อมูลเชิงลึกทางเทคนิค

อดัมรักษาค่าเฉลี่ยรันไว้สองตัวต่อพารามิเตอร์: m (การไล่ระดับสี) และ v (การไล่ระดับสีแบบสี่เหลี่ยม) อัปเดตด้วยอัตราการสลายตัว beta1 (โดยทั่วไปคือ 0.9) และ beta2 (โดยทั่วไปคือ 0.999) เนื่องจากทั้งคู่เริ่มต้นที่ศูนย์ จึงมีการแก้ไขอคติโดยการหารด้วย (1 - beta^t) การอัปเดตคือ theta = theta - lr * m_hat / (sqrt(v_hat) + epsilon) โดยที่ epsilon (ประมาณ 1e-8) ป้องกันการหารด้วยศูนย์ นี่คือสาเหตุที่ Adam ต้องการการปรับอัตราการเรียนรู้เพียงเล็กน้อยเมื่อเทียบกับ SGD ธรรมดา

ผลกระทบเชิงกลยุทธ์

ต้นทุนและงบประมาณ

การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี

การตัดสินใจที่ชัดเจนยิ่งขึ้น

การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด

การควบคุมคุณภาพ

ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต

อนาคตของอดัมและเครื่องมือเพิ่มประสิทธิภาพแบบปรับเปลี่ยนได้

Adam และ AdamW ยังคงมีบทบาทสำคัญ แต่การวิจัยกำลังผลักดันประสิทธิภาพสำหรับแบบจำลองล้านล้านพารามิเตอร์ ซึ่งการจัดเก็บค่าพิเศษสองค่าต่อน้ำหนักมีค่าใช้จ่ายสูง ตัวแปรแสงหน่วยความจำ เช่น Adafactor, Adam 8 บิต และเครื่องมือเพิ่มประสิทธิภาพรุ่นใหม่ เช่น Lion (ซึ่งใช้เฉพาะโมเมนตัมตามสัญญาณเท่านั้น) และ Sophia มุ่งหวังที่จะจับคู่คุณภาพของ Adam ด้วยหน่วยความจำน้อยลงหรือการบรรจบกันที่เร็วขึ้น คาดว่าจะมีเครื่องมือเพิ่มประสิทธิภาพแบบปรับเปลี่ยนที่ได้รับการปรับแต่งมาโดยเฉพาะสำหรับการฝึกอบรมแบบกระจายที่มีความแม่นยำต่ำเพื่อพัฒนาต่อไป

การใช้งานจริงในโลกแห่งความเป็นจริง

ฝึกอบรมโมเดลภาษาขนาดใหญ่ เช่น GPT และ Llama ซึ่งใช้ AdamW เป็นตัวเพิ่มประสิทธิภาพมาตรฐาน

การปรับแต่งตัวแยกประเภทรูปภาพที่ได้รับการฝึกไว้ล่วงหน้าอย่างละเอียด (เช่น ResNet) บนชุดข้อมูลที่กำหนดเองด้วยอัตราการเรียนรู้เริ่มต้นของ Adam

ฝึกอบรมโมเดลการแพร่กระจายเบื้องหลังตัวสร้างภาพ เช่น Stable Diffusion

การใช้งาน Adam 8 บิตในไลบรารีเช่นบิตแซนด์ไบต์เพื่อให้พอดีกับสถานะของเครื่องมือเพิ่มประสิทธิภาพในหน่วยความจำ GPU ที่จำกัด

ความเสี่ยงและรั้ว

การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้

ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป

ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น

แผนงานการดำเนินงาน

1

กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน

2

เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง

3

การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้

4

เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด

สำรวจต่อไป

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Adam and Adaptive Optimizers quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

เริ่มแบบทดสอบ

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

คำแนะนำต่อไป

เครื่องมือเพิ่มประสิทธิภาพ ZeRO และ Sharded

คำถามที่พบบ่อย

What is Adam and Adaptive Optimizers?

Adam เป็นเครื่องมือเพิ่มประสิทธิภาพที่อยู่เบื้องหลังโครงข่ายประสาทเทียมที่ทันสมัยที่สุด โดยจะปรับอัตราการเรียนรู้แยกกันสำหรับทุกพารามิเตอร์โดยอัตโนมัติ เป็นเรื่องสำคัญเพราะมันทำให้การฝึกโมเดลเชิงลึกเร็วขึ้นและพิถีพิถันน้อยกว่าการไล่ระดับสีธรรมดามาก

อดัมติดตามปริมาณสองจำนวนใดสำหรับแต่ละพารามิเตอร์

อดัมเก็บค่าเฉลี่ยแบบทวีคูณของการไล่ระดับสี (ช่วงแรก) และการไล่ระดับสีแบบยกกำลังสอง (ช่วงที่สอง) สำหรับทุกพารามิเตอร์

เหตุใดอดัมจึงใช้การแก้ไขอคติกับการประมาณค่าโมเมนต์ของมัน

ทั้ง m และ v ถูกกำหนดค่าเริ่มต้นให้เป็นศูนย์ ดังนั้นการประมาณค่าเบื้องต้นจึงมีอคติต่ำ การหารด้วย (1 - beta^t) จะช่วยแก้ไขสิ่งนี้

อะไรคือความแตกต่างที่สำคัญระหว่าง Adam และ AdamW?

AdamW ใช้การลดทอนน้ำหนักกับตุ้มน้ำหนักโดยตรง แทนที่จะผสมลงในระยะเกรเดียนต์แบบปรับได้ ซึ่งช่วยปรับปรุงลักษณะทั่วไปในหม้อแปลง

คำว่า epsilon ขนาดเล็กมีบทบาทอย่างไรในกฎการอัปเดตของ Adam

เอปซิลอน (ประมาณ 1e-8) จะถูกเพิ่มเข้าไปในตัวส่วน เพื่อให้พารามิเตอร์ที่มีค่าเฉลี่ยไล่ระดับกำลังสองใกล้ศูนย์ไม่ทำให้เกิดการระเบิด

เหตุใดอดัมจึงมักถูกเรียกว่า 'ปรับตัว'?

ด้วยการหารด้วยรากที่สองของค่าเฉลี่ยการไล่ระดับสีกำลังสองของแต่ละพารามิเตอร์ Adam จะปรับขนาดขั้นตอนต่อพารามิเตอร์แทนที่จะใช้ค่าเดียวโดยรวม