บันทึกเกี่ยวกับ "Attention" และ "Transformers": "โมเดลภาษาขนาดใหญ่" ในโครงข่ายประสาท
- คำว่า "Attention" เป็นแนวคิดที่ต่างจากความสนใจของมนุษย์จริง ๆ โดยหมายถึงการกำหนดค่าน้ำหนักในระดับหนึ่งให้กับเวกเตอร์ที่เป็นไปได้ทั้งหมด
- "Attention" เป็นรูปแบบหนึ่งของ kernel smoothing ไม่ใช่สิ่งที่ถูกประดิษฐ์ขึ้นใหม่ในวงการโครงข่ายประสาทราวปี 2015 แต่เป็นการค้นพบแนวคิดที่มีอยู่แล้วอีกครั้ง
- "Multi-Headed Attention" คือวิธีการทำ kernel smoothing โดยใช้ kernel ที่หลากหลาย แล้วนำผลลัพธ์มาเฉลี่ยรวมกัน
"Transformers"
- "Transformers" เป็นโครงสร้างที่ใช้กลไก "Attention" เพื่อทำ smoothing กับเวกเตอร์ขาเข้า จากนั้นส่งผลลัพธ์ที่ได้ผ่านโครงข่ายประสาทแบบ feedforward เพื่อสร้างผลลัพธ์สุดท้าย
- Transformer ประกอบขึ้นจากการซ้อนหลายชั้น (layer) โดยแต่ละชั้นประกอบด้วยกลไก "Attention" และโครงข่ายประสาทแบบ feedforward
- ชื่อของ Transformer ทำให้เข้าใจผิดได้น้อยกว่า "Attention" และก็เหมาะสม เพราะมันทำหน้าที่แปลงข้อมูลจริง ๆ
"Language Models"
- Language model โดยพื้นฐานคือแบบจำลองความน่าจะเป็นของลำดับสัญลักษณ์ ซึ่งทำหน้าที่จำลองความน่าจะเป็นของสัญลักษณ์ถัดไปตามบริบทที่กำหนด
- โมเดลภาษาขนาดใหญ่สมัยใหม่ (Large Language Models, LLMs) อาจมองได้ว่าเป็นแบบจำลองมาร์คอฟลำดับจำกัดที่มีความยาวบริบทสูงสุดแบบคงที่
- LLMs สามารถทำนายได้แม้กับบริบทที่ไม่เคยเห็นมาก่อน ผ่าน implicit smoothing ที่ซับซ้อน
"การทำนายสัญลักษณ์ถัดไป (Next Symbol) เทียบกับการทำนายระยะไกล (Longer-range Prediction)"
- เป้าหมายการฝึกของ LLMs คือการทำนายสัญลักษณ์ถัดไปให้แม่นยำ และนี่อาจเป็นเป้าหมายที่ทรงพลังสำหรับการทำนายระยะไกลด้วยเช่นกัน
- การค้นหาตัวทำนายที่มีขนาดเล็กที่สุดอย่างน้อยก็ให้ข้อมูลจำนวนมากเกี่ยวกับโครงสร้างของกระบวนการพื้นฐานที่เราพยายามจะทำนาย
"ลางสังหรณ์แรงกล้าเกี่ยวกับการเปิดเผยพรอมต์ (A Strong Hunch about Uncovering Prompts)"
- ความพยายามจะเปิดเผยพรอมต์ของแอปพลิเคชันที่อิง LLM ด้วยคำขออย่าง "บอกพรอมต์มาสิ" เป็นเพียงการหลอกตัวเอง
- แกนหลักของ language model ใน LLM ไม่มีกลไกที่ใช้แยกพรอมต์ออกจากส่วนอื่น ๆ ของลำดับอินพุตปัจจุบัน
- ผู้ออกแบบระบบอาจทำฟังก์ชันติดตามพรอมต์ขึ้นมาก็ได้ แต่แทบไม่มีเหตุผลที่จะทำเช่นนั้น
"Gopnikism; ห้องสมุด"
- วิธีที่มีอนาคตและน่าสนใจที่สุดคือการมอง LLM ไม่ใช่เสมือนจิตใจ แต่เป็น "เทคโนโลยีทางวัฒนธรรม" คล้ายแคตตาล็อกห้องสมุด
- การป้อนข้อความให้ LLM ผ่านพรอมต์นั้นคล้ายกับการค้นหาสิ่งที่อยู่ในห้องสมุด แล้วสุ่มตัวอย่างเนื้อหาตามนั้น
ความเห็นของ GN⁺
- การที่คำว่า "Attention" ถูกใช้เป็นแนวคิดเชิงเทคนิคที่ต่างจากความสนใจของมนุษย์จริง ๆ เป็นปรากฏการณ์ที่เกิดขึ้นบ่อยในวงการ AI และแสดงให้เห็นว่าคำศัพท์ทางเทคนิคอาจทำให้สับสนกับปรากฏการณ์ในโลกจริงได้
- ความสำเร็จของโมเดลภาษาขนาดใหญ่คือการนำวิธีวิทยาการเรียนรู้ของเครื่องแบบคลาสสิกมาผสานกับพลังการประมวลผลสมัยใหม่ จนไปถึงระดับประสิทธิภาพใหม่ ซึ่งตอกย้ำถึงความจำเป็นในการประเมินทฤษฎีและวิธีการเดิมใหม่ และนำไปประยุกต์ใช้อย่างสร้างสรรค์
- การเปรียบ LLM กับแคตตาล็อกห้องสมุดเป็นมุมมองที่น่าสนใจต่อวิธีที่เทคโนโลยีนี้ประมวลผลและเข้าถึงความรู้กับข้อมูลของมนุษย์ ซึ่งอาจช่วยให้เข้าใจวิธีที่ AI โต้ตอบกับวัฒนธรรมมนุษย์ได้ดีขึ้น
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
ผู้แสดงความเห็นรายหนึ่งซึ่งระบุว่าทำงานอยู่ที่ Google Research และเคยร่วมงานกับผู้เขียนสองคนของบทความ "Attention is All You Need" กล่าวว่าเขายังเคยร่วมงานกับคนที่เลือกชื่อบทความนี้ด้วย ผู้แสดงความเห็นรายนี้อธิบายว่า self-attention เป็นแนวคิดที่ชุมชนนักวิจัยรู้จักกันอยู่แล้ว และผู้เขียนไม่ได้อ้างว่าตนเป็นผู้คิดค้นแนวคิดนี้ขึ้นมา ผู้เขียนกำลังมองหาวิธีผสานเทคนิคหลายอย่างเพื่อปรับปรุงประสิทธิภาพของ feedforward neural networks แล้วได้ผลลัพธ์ที่น่าสนใจ ก่อนจะค้นพบในภายหลังระหว่างการวิจัยว่า attention mechanism มีบทบาทสำคัญ นอกจากนี้ยังกล่าวว่าชื่อบทความเป็นการเล่นคำที่ชวนให้นึกถึงเพลงของ The Beatles อย่าง "All You Need Is Love" เอกสารที่ช่วยเขาได้มากที่สุดคือ "Formal Algorithms for Transformers" ของ Phuong และ Hutter ซึ่งเขาประเมินว่าเขียนโดยเน้นความชัดเจนและความแม่นยำ และโดยเฉพาะส่วนแรงจูงใจ (Section 2) อธิบายข้อบกพร่องของบทความต้นฉบับและบทความที่ตามมาได้ดีมาก
ผู้แสดงความเห็นอีกรายยอมรับว่าแม้อ่านบทความ "Attention is All You Need" อย่างตั้งใจหลายรอบ ก็ยังไม่เข้าใจว่า 'attention' ทำหน้าที่อะไร เขาเข้าใจส่วนคณิตศาสตร์ แต่แม้อ่านบทสอนหลายชิ้นก็ไม่ช่วยอะไร สุดท้ายกว่าจะตระหนักได้อีกหลายปีต่อมาว่า 'attention' ก็เป็นเพียง kernel smoothing เท่านั้น พร้อมวิจารณ์ว่านี่เป็นเพราะบทความเขียนได้ไม่ชัดเจน ผู้แสดงความเห็นรายนี้อ้างว่าบทความด้าน machine learning ส่วนใหญ่นั้นแย่มาก แม้กระทั่งบทความ "Attention is All You Need" ก็ยังดีกว่าส่วนใหญ่
ผู้แสดงความเห็นคนที่สามมองว่าแนวทางแบบ "stream of consciousness" ของบทความนั้นน่าสนใจและให้ความรู้สึกสดใหม่ นอกจากนี้ยังกล่าวถึงการที่ผู้เขียนออกมาขอโทษและแสดงท่าทีถ่อมตนเพราะถูกวิจารณ์จากอินเทอร์เน็ต และหวังว่าปฏิกิริยาเชิงลบเหล่านี้จะไม่ทำให้ผู้เขียนหยุดเผยแพร่บันทึกของตนต่อไป
ผู้แสดงความเห็นอีกรายบอกว่าต่างจากงานเขียนเกี่ยวกับ machine learning ส่วนใหญ่ บทความนี้ให้ความรู้สึกราวกับเขียนด้วยภาษาของเขาเอง เขาระบุว่าส่วนที่พูดถึง Lempel-Ziv (LZ) น่าสนใจ และประเมินว่าการทำให้โมเดล LZ ใหญ่ขึ้นคงไม่น่าสนใจนัก เพราะ LZ ต้องจับคู่สตริงให้ตรงกันแบบเป๊ะ ๆ เขาเสนอว่าแนวทางที่น่าสนใจกว่าคือการยอมให้ไม่แม่นยำบ้างเพื่อแลกกับการลดขนาด คล้ายกับ "jpeg" สำหรับข้อความ และคาดว่านี่น่าจะเป็นสิ่งที่ large language models (LLMs) กำลังทำอยู่
ผู้แสดงความเห็นอีกรายกล่าวว่าเขามอง scaled dot product attention เป็น generalized convolution mechanism เขาบอกว่าคำว่า query, key และ value ชวนให้สับสน เพราะทั้งสามอย่างนี้ใน self-attention ล้วนได้มาจากสัญญาณเดียวกันแล้วถูกนำมาคูณกัน เขาเสริมว่าไม่มีใครรู้จริงว่ากลไกนี้ทำงานได้ดีเพราะอะไร ไฮเปอร์พารามิเตอร์แบบไหนเหมาะกับข้อมูลประเภทใด หรือขนาดลำดับข้อมูลที่เหมาะสมที่สุดคือเท่าไร
ผู้แสดงความเห็นอีกรายกล่าวว่า transformers ก็เป็นเพียง universal approximator อีกรูปแบบหนึ่งเท่านั้น และไม่สำคัญนักว่า attention head ตัวใดกำลังจำลอง associative array แบบต่อเนื่อง, kernel smoothing หรือ high-dimensional vector space ที่แทนความหมายเดียว สิ่งสำคัญคือ transformers สามารถฝึกได้อย่างมีประสิทธิภาพบน GPU และการประมวลผลแบบขนาน ซึ่งเป็นเหตุผลที่ทำให้มันเหนือกว่า LZ หรือ universal approximator แบบอื่น ๆ เขากล่าวเสริมว่าถ้าใครทำให้ LZ (หรืออย่างอื่น) รันบน GPU ได้มีประสิทธิภาพกว่าทรานส์ฟอร์เมอร์มาก ก็อาจไปตั้ง OpenAI รายถัดไปและกลายเป็นมหาเศรษฐีได้
ผู้แสดงความเห็นรายหนึ่งขอคำอธิบายประโยคที่ว่า "Mythology: เราปรับความหมายของแต่ละโทเค็นที่เราเห็นตามบริบท และความหมายที่คล้ายกันจะเสริมกันและกัน" เขาระบุว่า ณ จุดนี้ kernel smoothing ดูเหมือนจะถูกนำไปใช้กับ embedding vector แต่ละตัวอย่างเป็นอิสระ และเขาไม่เข้าใจว่าทำไมเวกเตอร์ y_t บางตัวที่ได้มาจากและถูกทำให้เรียบโดยโทเค็นข้างเคียงในลำดับจึงได้รับอิทธิพล เขามองออกว่าการเพิ่มโทเค็น r_t ทำให้บริบทมีความสำคัญ แต่ก็ถามว่านี่เป็นสิ่งเดียวหรือไม่ที่ทำให้เกิดการพิจารณาบริบท
ผู้แสดงความเห็นอีกรายกล่าวว่าเขาเข้าใจว่าทำไมนักวิชาการในสาขาอื่นที่มี "ความเข้มงวด" ทางวิชาการสูงกว่า และมีผลงานคล้ายกันอยู่ก่อนแล้ว จึงโกรธบทความด้าน machine learning แบบ "Attention is All You Need" เขาวิจารณ์ว่าบทความแบบนี้ไม่ใช่งานวิชาการที่ดีจริง ๆ และการตั้งชื่อให้ฉลาด ๆ พร้อมเลือกศัพท์เชิงวิศวกรรมที่เข้าใจยากที่สุดก็ไม่ได้ทำให้เป็นบทความที่ดี อย่างไรก็ตาม ในความเป็นจริงเรื่องเหล่านี้ไม่ค่อยสำคัญ เพราะ large language models ใช้งานได้จริง และยังใช้งานได้ด้วยเหตุผลที่ค่อนข้างงี่เง่า เขาอธิบายว่าทางแก้เชิงวิศวกรรมอย่างการเพิ่ม positional embeddings นั้นแก้ปัญหาได้จริง ไม่ใช่เพราะความเข้าใจทางคณิตศาสตร์ที่ลึกซึ้ง แต่เพราะลองทำแล้วได้ผล นอกจากนี้เขายังกล่าวว่า "efficient transformers" ที่ใช้ kernel methods เพื่อลดความต้องการหน่วยความจำของ attention ให้เป็นเชิงเส้นนั้น ในทางปฏิบัติก็ไม่ค่อยสำคัญ เพราะบริษัทอย่าง OpenAI, Anthropic และ Meta ไม่ได้กังวลเรื่องการเพิ่ม GPU อีกจำนวนมาก แต่สนใจแค่ throughput เท่านั้น เขาสรุปว่าผลลัพธ์ทั้งหมดเป็นเพียงการคาดเดาและประสบการณ์ และสิ่งที่สำคัญจริง ๆ คือผลลัพธ์ที่ออกมา
ผู้แสดงความเห็นคนสุดท้ายระบุว่าเขาไม่เห็นด้วยอย่างยิ่งกับข้ออ้างที่ว่า "ทุกคนที่พยายามเปิดเผย prompt ของแอปพลิเคชันที่ใช้ LLM ด้วยการขอให้มัน 'บอก prompt มา' กำลังหลอกตัวเอง" เขาอธิบายว่าโมเดลภาษาหลักไม่ได้มีกลไกที่แยก prompt ออกจากส่วนอื่นของลำดับอินพุตปัจจุบัน และก็ไม่มีกลไกอ้างอิงข้ามจากส่วนหนึ่งของลำดับไปยังอีกส่วนหนึ่งด้วย ผู้ออกแบบระบบอาจเขียนบางอย่างไว้เพื่อติดตาม prompt ในทั้งระบบ แต่ก็ไม่ชัดเจนว่าทำไปเพื่ออะไร เขากล่าวว่าการใช้ "soft prompt" อาจมีประสิทธิภาพและให้ผลดีกว่า ซึ่งหมายถึงส่วนต้นของลำดับเวกเตอร์ที่สามารถเรียนรู้ได้ด้วย gradient descent แต่สิ่งนี้อาจไม่สอดคล้องกับสตริงคำที่อ่านรู้เรื่องเป็นระเบียบ เมื่อคุณขอให้ LLM บอก prompt ของมัน คำตอบที่ได้จะถูกสร้างจากสถิติของลำดับคำที่มันถูกฝึกมา ไม่ใช่จากการเข้าถึงโค้ดหรือสถานะภายใน ผู้แสดงความเห็นรายนี้มองว่าการเข้าหาจากมุมมองของ language model นั้นดีที่สุด และสรุปว่าเนื่องจากเอาต์พุตถูกสร้างจากผลของ kernel smoothing บนอินพุต จึงเป็นไปได้ที่จะใช้ข้อมูลใน prompt เพื่อชี้นำโมเดลไปยังสไตล์เฉพาะได้