การจัดสรรการคำนวณแบบไดนามิกในโมเดลภาษาที่ใช้ทรานส์ฟอร์เมอร์
- โดยทั่วไป โมเดลภาษาที่ใช้ทรานส์ฟอร์เมอร์จะแบ่ง FLOPs (การคำนวณจุดลอยตัว) อย่างเท่า ๆ กันตลอดลำดับอินพุต
- ทีมวิจัยแสดงให้เห็นว่าทรานส์ฟอร์เมอร์สามารถเรียนรู้ให้จัดสรร FLOPs แบบไดนามิกสำหรับตำแหน่งเฉพาะได้
- วิธีนี้ปรับการจัดสรรให้เหมาะสมกับลำดับในเลเยอร์ต่าง ๆ ตลอดความลึกของโมเดล
วิธีการใหม่: Mixture-of-Depths
- เพื่อจำกัดงบประมาณการคำนวณรวม จึงจำกัดจำนวนโทเค็น (k) ที่สามารถเข้าร่วมในการคำนวณ self-attention และ MLP ได้
- เครือข่ายใช้กลไกการเราต์แบบ top-k เพื่อกำหนดว่าโทเค็นใดจะถูกประมวลผล
- เนื่องจากกำหนดค่า k ไว้ล่วงหน้า จึงใช้กราฟการคำนวณแบบสถิตที่มีขนาดเทนเซอร์ที่ทราบแน่นอน ต่างจากเทคนิคการคำนวณแบบมีเงื่อนไขอื่น ๆ
ประสิทธิภาพและสมรรถนะ
- เนื่องจากอัตลักษณ์ของโทเค็นเปลี่ยนแปลงได้ วิธีนี้จึงสามารถใช้ FLOPs แบบไม่สม่ำเสมอทั้งในมิติเวลาและมิติความลึกของโมเดล
- การใช้จ่ายด้านการคำนวณสามารถคาดการณ์ได้อย่างสมบูรณ์ในภาพรวม แต่ในระดับโทเค็นจะเป็นแบบไดนามิกและไวต่อบริบท
- โมเดลที่ฝึกด้วยวิธีนี้ไม่เพียงแต่จัดสรรการคำนวณแบบไดนามิก แต่ยังจัดสรรได้อย่างมีประสิทธิภาพด้วย
- โมเดลเหล่านี้ให้ประสิทธิภาพเทียบเท่าค่ามาตรฐานภายใต้ FLOPs และเวลา wall-clock ในการฝึกเท่ากัน แต่ต้องการ FLOPs ต่อการทำ forward pass เพียงบางส่วนเท่านั้น และหลังการฝึกสามารถสุ่มตัวอย่างได้เร็วขึ้นสูงสุด 50%
ความเห็นของ GN⁺
- งานวิจัยนี้กล่าวถึงประเด็นด้านประสิทธิภาพที่สำคัญในสาขา NLP และนำเสนอแนวทางใหม่ในการลดต้นทุนการคำนวณของโมเดลทรานส์ฟอร์เมอร์
- การจัดสรรการคำนวณแบบไดนามิกอาจช่วยลดการใช้พลังงานและต้นทุนได้ โดยเฉพาะเมื่อใช้โมเดลภาษาขนาดใหญ่
- อย่างไรก็ตาม เพื่อให้เทคโนโลยีนี้ถูกรวมเข้ากับแอปพลิเคชันจริง ยังจำเป็นต้องมีการตรวจสอบและการปรับแต่งเพิ่มเติม
- งานวิจัยนี้มอบแนวคิดใหม่ให้กับชุมชนแมชชีนเลิร์นนิง และอาจส่งผลต่อการนำโมเดลภาษาไปใช้งานในสภาพแวดล้อมที่ทรัพยากรจำกัด เช่น คลาวด์คอมพิวติ้ง
- ในอีกมุมหนึ่ง ยังจำเป็นต้องมีการศึกษาต่อว่าวิธีนี้จะให้ผลแบบเดียวกันกับโมเดลภาษาและชุดข้อมูลทุกประเภทหรือไม่ และมีประสิทธิภาพมากกว่าสำหรับงานประเภทใด
ยังไม่มีความคิดเห็น