การเปิดใช้งาน SwiGLU และ Gated
SwiGLU เป็นฟังก์ชันการเปิดใช้งานแบบมีรั้วรอบขอบชิดซึ่งจะคูณการฉายภาพเชิงเส้นหนึ่งครั้งของอินพุตด้วยการฉายภาพครั้งที่สองที่เปิดใช้งาน Swish ซึ่งทำหน้าที่เป็นเกทที่เรียนรู้ได้และขึ้นอยู่กับข้อมูลภายในเลเยอร์ฟีดฟอร์เวิร์ดของหม้อแปลง
ภาพรวม
It consistently improves language-model quality, which is why nearly every modern LLM uses it.
เจาะลึก
บล็อกฟีดฟอร์เวิร์ดของหม้อแปลงมาตรฐานคือเลเยอร์เชิงเส้นสองชั้นโดยมี ReLU หรือ GELU อยู่ระหว่างนั้น หน่วยเชิงเส้นแบบมีรั้วรอบขอบชิด เสนอโดย Dauphin และคณะ ในปี 2559 แบ่งการฉายภาพแรกออกเป็นสองซีก และใช้ครึ่งหนึ่งเพื่อเกตอีกครึ่งหนึ่งผ่านการคูณตามองค์ประกอบ SwiGLU ซึ่ง Noam Shazeer ได้รับความนิยมในปี 2020 ใช้ฟังก์ชัน Swish (SiLU) สำหรับเกตนั้น: output = (Swish(xW) * (xV)) W2 โดยมีเมทริกซ์น้ำหนัก 3 ตัวแทนที่จะเป็น 2 ตัว เกตช่วยให้เครือข่ายเลือกส่งผ่านหรือระงับข้อมูลต่อมิติได้ เนื่องจากการเพิ่มเมทริกซ์ตัวที่สามจะทำให้พารามิเตอร์เพิ่มขึ้น การใช้งานจะลดขนาดมิติที่ซ่อนอยู่เหลือประมาณสองในสาม ดังนั้นการประมวลผลทั้งหมดจึงเทียบได้กับ GELU MLP การทดลองของ Shazeer แสดงให้เห็นถึงความฉงนสนเท่ห์ที่วัดได้ และ LLaMA, PaLM และ Mistral ต่างก็นำมันมาใช้
ข้อมูลเชิงลึกทางเทคนิค
Swish คือ x * sigmoid(beta*x) ซึ่งเป็นฟังก์ชันที่ราบรื่นและไม่ซ้ำซาก ซึ่งต่างจาก ReLU ตรงที่ยอมให้ค่าลบเล็กๆ ผ่านได้ ใน SwiGLU Swish(xW) สาขา 'gate' จะสร้างค่าใกล้ 0 หรือ 1 ซึ่งจะคูณองค์ประกอบ xV ของสาขา 'value' ดังนั้นการมีส่วนร่วมของหน่วยที่ซ่อนอยู่แต่ละหน่วยจะถูกมอดูเลตโดยสัญญาณที่เรียนรู้และขึ้นอยู่กับอินพุต เมทริกซ์น้ำหนักตัวที่สามคือต้นทุน เคล็ดลับขนาดที่ซ่อนอยู่สองในสามช่วยให้งบประมาณ FLOP จับคู่กับเลเยอร์ส่งต่อวานิลลา
ผลกระทบเชิงกลยุทธ์
ต้นทุนและงบประมาณ
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี
การตัดสินใจที่ชัดเจนยิ่งขึ้น
การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด
การควบคุมคุณภาพ
ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต
อนาคตของการเปิดใช้งาน SwiGLU และ Gated
SwiGLU ได้รับการยึดที่มั่นเป็น MLP เริ่มต้นใน LLM แบบ open-weight และไม่น่าจะถูกแทนที่ในเร็วๆ นี้ คำแนะนำที่ใช้งาน ได้แก่ ตัวแปร GeGLU และ ReGLU, เคอร์เนล GPU ที่หลอมรวมซึ่งคำนวณทั้งสองการฉายภาพในการส่งผ่านครั้งเดียว และการรวม MLP ที่มีรั้วรอบขอบชิดกับผู้เชี่ยวชาญที่ผสมผสานกัน เพื่อให้ผู้เชี่ยวชาญแต่ละคนกลายเป็นบล็อก SwiGLU นักวิจัยยังกำลังศึกษาว่าเหตุใด gating จึงช่วยเพิ่มประสิทธิภาพ โดยมีเป้าหมายเพื่อออกแบบประตูที่มีราคาถูกลง
การใช้งานจริงในโลกแห่งความเป็นจริง
LLaMA, PaLM และ Mistral แทนที่เลเยอร์ฟีดไปข้างหน้าของ GELU ด้วย SwiGLU เพื่อลดความซับซ้อนในการคำนวณที่เท่ากัน
มิติที่ซ่อนอยู่จะถูกปรับขนาดเป็นประมาณสองในสาม (8/3 วัน) ดังนั้นเมทริกซ์เกตติ้งพิเศษจะไม่ทำให้ FLOP ขยายตัว
โมเดลแบบผสมผสานของผู้เชี่ยวชาญ เช่น Mixtral ใช้บล็อก SwiGLU เป็นเครือข่ายการส่งต่อฟีดต่อผู้เชี่ยวชาญ
หม้อแปลงวิชั่นและมัลติโมดัลยืมเกท GeGLU/SwiGLU เพื่อปรับปรุงเลเยอร์ย่อย MLP
ความเสี่ยงและรั้ว
การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้
ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป
ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น
แผนงานการดำเนินงาน
กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน
เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง
การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้
เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด
สำรวจต่อไป
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 SwiGLU and Gated Activations 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
คำแนะนำต่อไป
การแลกเปลี่ยนการคำนวณการเปิดใช้งานใหม่
คำถามที่พบบ่อย
What is SwiGLU and Gated Activations?
SwiGLU เป็นฟังก์ชันการเปิดใช้งานแบบมีรั้วรอบขอบชิดซึ่งจะคูณการฉายภาพเชิงเส้นหนึ่งครั้งของอินพุตด้วยการฉายภาพครั้งที่สองที่เปิดใช้งาน Swish ซึ่งทำหน้าที่เป็นเกทที่เรียนรู้ได้และขึ้นอยู่กับข้อมูลภายในเลเยอร์ฟีดฟอร์เวิร์ดของหม้อแปลง มันปรับปรุงคุณภาพโมเดลภาษาอย่างต่อเนื่อง ซึ่งเป็นเหตุผลว่าทำไม LLM สมัยใหม่เกือบทุกแห่งจึงใช้มัน
การดำเนินการหลักใดที่กำหนด Gated Linear Unit
GLU จะคูณการฉายภาพค่าด้วยองค์ประกอบการฉายภาพเกท โดยปล่อยให้ข้อมูลควบคุมเครือข่ายไหลไปตามมิติ
SwiGLU ใช้สำหรับฟังก์ชันการเปิดใช้งานใดสำหรับสาขาเกต
SwiGLU ใช้ Swish หรือที่เรียกว่า SiLU ซึ่งกำหนดเป็น x * sigmoid(beta*x) สำหรับสาขา gating
บล็อกป้อนไปข้างหน้าของ SwiGLU ใช้เมทริกซ์น้ำหนักจำนวนเท่าใด
SwiGLU ต้องการเมทริกซ์สามตัว ได้แก่ การฉายเกต การฉายค่า และการฉายภาพเอาท์พุต
เหตุใดมิติที่ซ่อนอยู่จึงมักปรับขนาดเป็นประมาณสองในสามในเลเยอร์ SwiGLU
เมทริกซ์ที่สามอาจทำให้การประมวลผลเพิ่มขึ้น ดังนั้นการลดขนาดที่ซ่อนอยู่ลงเหลือประมาณ 8/3 วันจึงทำให้งบประมาณตรงกัน
ใครเป็นคนทำให้ SwiGLU เป็นที่นิยมสำหรับเลเยอร์ฟีดฟอร์เวิร์ดของหม้อแปลงในปี 2020
บันทึกปี 2020 ของ Noam Shazeer 'GLU Variants Improvement Transformer' เปิดตัว SwiGLU และแสดงให้เห็นถึงความซับซ้อนที่เพิ่มขึ้น