อัตราการเรียนรู้จำแนกตามชั้น
ฝึกชั้นลึกและชั้นตื้นแตกต่างกัน
อัตราการเรียนรู้จำแนกตามชั้น เป็นบทเรียน Deep Learning Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Deep Learning Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Deep Learning Academy มีบทเรียนทั้งหมด 4 บทเรียน
ใช้อัตราเดียวกับทุกส่วนหรือ
จนถึงตอนนี้ทุกเลเยอร์ใช้อัตราการเรียนรู้เดียวกัน แต่เลเยอร์ช่วงต้นและช่วงท้ายเรียนรู้สิ่งที่แตกต่างกันมาก บางทีจึงควรใช้อัตราที่แตกต่างกัน 🎚️
เลเยอร์ช่วงต้นมีลักษณะทั่วไป
เลเยอร์ช่วงต้นของเครือข่ายที่ฝึกไว้ล่วงหน้าจะตรวจจับขอบ สี และพื้นผิว คุณลักษณะเหล่านี้ถ่ายโอนไปยังงานแทบทุกประเภทได้ จึงแทบไม่จำเป็นต้องเปลี่ยนแปลง
เลเยอร์ช่วงท้ายมีลักษณะเฉพาะ
เลเยอร์ช่วงท้ายจะจับรูปแบบที่เฉพาะกับงาน เลเยอร์เหล่านี้จึงควรปรับตัวเข้ากับชุดข้อมูลใหม่ของคุณมากที่สุด
แนวคิดสำคัญ
การปรับละเอียดแบบแยกแยะให้อัตราการเรียนรู้ที่เล็กมากแก่เลเยอร์เชิงลึก และให้อัตราที่ใหญ่กว่าแก่เลเยอร์เอาต์พุตตื้น แต่ละส่วนจึงเรียนรู้ด้วยความเร็วที่เหมาะสม
จัดกลุ่มพารามิเตอร์
หากต้องการใช้อัตราที่แตกต่างกัน ให้แบ่งโมเดลออกเป็นกลุ่มพารามิเตอร์ โดยแต่ละกลุ่มมีการตั้งค่าของตัวเอง
backbone_params = model.features.parameters()
head_params = model.classifier.parameters()อัตราการเรียนรู้แยกตามกลุ่ม
ตัวปรับค่าที่เหมาะสมของ PyTorch รับรายการพจนานุกรมหนึ่งรายการต่อหนึ่งกลุ่ม โดยแต่ละรายการมี lr ของตัวเอง แกนหลักใช้อัตราที่ต่ำ ส่วนหัวใช้อัตราที่สูงกว่า
opt = torch.optim.Adam([
{'params': backbone_params, 'lr': 1e-5},
{'params': head_params, 'lr': 1e-3}])เหตุผลที่ช่วยได้
วิธีนี้ช่วยปกป้องคุณลักษณะทั่วไปอันมีค่า พร้อมเปิดให้ส่วนหัวปรับตัวได้อย่างรวดเร็ว คุณมักได้ความแม่นยำสูงกว่าการใช้อัตราเดียวร่วมกัน
ไล่ระดับผ่านหลายเลเยอร์
คุณสามารถปรับขนาดอัตราอย่างราบรื่นได้ โดยให้แต่ละบล็อกที่ลึกขึ้นใช้อัตราที่เล็กลงเล็กน้อย การไล่ระดับความเร็วนี้บางครั้งเรียกว่าตารางแบบลาดเอียง
ปลดการตรึงทีละขั้น
เทคนิคที่ใช้ร่วมกันได้คือการปลดการตรึงทีละขั้น โดยปลดการตรึงเลเยอร์บนสุดก่อน ฝึก แล้วจึงปลดเลเยอร์ถัดไป ไล่ลงด้านล่างเมื่อผ่านแต่ละยุค
ตรวจสอบกลุ่มของคุณ
คุณสามารถอ่านการตั้งค่าของแต่ละกลุ่มกลับจากตัวปรับค่าที่เหมาะสม เพื่อตรวจสอบว่า param_group ทุกกลุ่มได้รับอัตราที่คุณตั้งใจ
for g in opt.param_groups:
print(g['lr'])ควรเลือกใช้เมื่อใด
อัตราแบบแยกแยะให้ประโยชน์มากที่สุดกับเครือข่ายเชิงลึกที่ความแตกต่างระหว่างเลเยอร์ทั่วไปกับเลเยอร์เฉพาะมีมาก
ตรวจสอบความเข้าใจอย่างรวดเร็ว
ในการปรับละเอียดแบบแยกแยะ เลเยอร์ใดควรได้รับอัตราการเรียนรู้ที่ต่ำที่สุด
สรุปทบทวน
คุณให้อัตราต่ำแก่เลเยอร์เชิงลึกและให้อัตราสูงกว่าแก่ส่วนหัวโดยใช้กลุ่มพารามิเตอร์ และอาจใช้การปลดการตรึงทีละขั้นร่วมด้วย เพื่อการเรียนรู้แบบถ่ายโอนที่มีประสิทธิภาพยิ่งขึ้น 🎯
เรียนรู้ Python ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “อัตราการเรียนรู้จำแนกตามชั้น” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “อัตราการเรียนรู้จำแนกตามชั้น” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Deep Learning Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Deep Learning Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “อัตราการเรียนรู้จำแนกตามชั้น”
ฝึกชั้นลึกและชั้นตื้นแตกต่างกัน คุณปฏิบัติ Deep Learning Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Deep Learning Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Deep Learning Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “อัตราการเรียนรู้จำแนกตามชั้น” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Deep Learning Academy นี้ได้ไหม
ได้ บทเรียน Deep Learning Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ตรึงแกนหลักแล้วฝึกส่วนหัว
- ปรับละเอียดด้วยอัตราการเรียนรู้ที่ต่ำลง
- อัตราการเรียนรู้จำแนกตามชั้น
- ปรับละเอียดโมเดล Hugging Face