Contextual forgetting — การลืมบริบทในโมเดลภาษาขนาดใหญ่
การลืมบริบทในโมเดลภาษาขนาดใหญ่ คือปรากฏการณ์หลากมิติที่โมเดลภาษาขนาดใหญ่ (LLM) สูญเสีย เพิกเฉย หรือใช้งานข้อมูลที่ได้รับไปก่อนหน้าภายในการโต้ตอบเดียวกันอย่างไม่มีประสิทธิภาพ[1] ต่างจากความจำของมนุษย์ LLM ไม่มีที่เก็บสถานะระยะยาว และอาศัยเพียง หน้าต่างบริบท เท่านั้น ซึ่งได้แก่ข้อความปริมาณจำกัด (วัดเป็น token) ที่โมเดลสามารถประมวลผลได้ในคราวเดียว หน้าต่างนี้ทำหน้าที่เป็นความจำระยะสั้นหรือความจำใช้งานของโมเดล[2]
การแสดงออกที่เป็นที่รู้จักมากที่สุดของข้อจำกัดนี้คือปัญหา "สูญหายในช่วงกลาง" (Lost in the Middle) ซึ่งเป็นแนวโน้มของโมเดลในการประมวลผลข้อมูลที่อยู่ต้นและท้ายของบริบทยาวได้ดีกว่า แต่ประมวลผลข้อมูลในช่วงกลางได้แย่กว่า[2] ปรากฏการณ์นี้ไม่ใช่ความผิดพลาด แต่เป็นคุณสมบัติพื้นฐานที่เกิดจากสถาปัตยกรรม transformer และหลักการฝึกสอน
สองประเภทของการลืม: Contextual and Catastrophic - สองประเภทของการลืม: บริบทและหายนะ
สิ่งสำคัญคือต้องแยกแยะประเภทของ "การลืม" ใน LLM สองประเภทที่แตกต่างกันอย่างพื้นฐาน ได้แก่ การลืมภายในบริบทและการลืมแบบหายนะ
การลืมภายในบริบท (สูญหายในช่วงกลาง)
การลืมประเภทนี้เกิดขึ้น ระหว่างการโต้ตอบในเซสชันเดียว (inference) กับโมเดลที่ได้รับการฝึกสอนแล้ว และเกี่ยวข้องกับข้อจำกัดของ หน้าต่างบริบท เมื่อปริมาณของบทสนทนาหรือเอกสารเกินขนาดของหน้าต่าง โมเดลจะ "ลืม" ส่วนที่เก่าที่สุดเพื่อเปิดพื้นที่สำหรับข้อมูลใหม่ แม้แต่ภายในขอบเขตของหน้าต่าง ข้อมูลจากช่วงกลางของบริบทก็อาจถูกนำมาใช้ได้อย่างมีประสิทธิภาพน้อยกว่า นี่คือข้อจำกัดด้านความจำใช้งานของโมเดล[3] ในวรรณกรรมเชิงสื่อ ปรากฏการณ์นี้ยังเรียกอีกว่า "Context Degradation Syndrome" (CDS)[1]
การลืมแบบหายนะ (การเบี่ยงเบนของโมเดล)
การลืมประเภทนี้ หรือที่รู้จักในชื่อ "การเบี่ยงเบนของโมเดล" (model drift) เกิดขึ้น ในระหว่างกระบวนการ fine-tuning โมเดลด้วยข้อมูลใหม่ เมื่อโมเดลที่ผ่านการ pre-training บนคลังข้อมูลความรู้ทั่วไปขนาดใหญ่ถูก fine-tuning บน dataset เฉพาะทาง (เช่น ข้อความทางการแพทย์) น้ำหนักของโมเดลจะเปลี่ยนแปลง ซึ่งอาจนำไปสู่การเสื่อมสภาพหรือ "การลบเลือน" ความรู้และทักษะที่เรียนรู้มาก่อนหน้าซึ่งไม่เกี่ยวข้องกับงานใหม่[4]
สาเหตุและกลไก
การลืมบริบทเป็นผลโดยตรงของสถาปัตยกรรม transformer และเรขาคณิตของปริภูมิเวกเตอร์
เอฟเฟกต์ "สูญหายในช่วงกลาง" (Lost in the Middle)
งานวิจัยของมหาวิทยาลัย Stanford ในปี 2023 ที่มีชื่อว่า "Lost in the Middle" ได้แสดงให้เห็นอย่างชัดเจนว่าประสิทธิภาพของ LLM ในการดึงข้อมูลจากบริบทยาวมี เส้นโค้งรูปตัว U[2] ความแม่นยำของคำตอบสูงที่สุดเมื่อข้อมูลที่เกี่ยวข้องอยู่ที่ต้น (primacy effect) หรือท้าย (recency effect) ของบริบท และลดลงอย่างมีนัยสำคัญหากข้อมูลนั้น "ซ่อน" อยู่ในช่วงกลาง สาเหตุของปรากฏการณ์นี้:
- กลไก attention: สถาปัตยกรรม transformer โดยธรรมชาติให้ attention กับ token แรกๆ อย่างไม่สมส่วน (เรียกว่า "attention sinks") เพื่อรักษา global coherence รวมถึงให้ความสนใจกับบริบทในพื้นที่ใกล้เคียง ส่งผลให้ "โฟกัส" ในช่วงกลางอ่อนแอลง[5]
- ข้อมูลสำหรับ pre-training: โมเดลส่วนใหญ่ได้รับการฝึกสอนบนข้อความที่ค่อนข้างสั้น ซึ่งข้อมูลสำคัญแทบไม่เคยอยู่ห่างจากต้นข้อความหลายหมื่น token ทำให้โมเดลใช้บริบทยาวมากได้อย่างไม่มีประสิทธิภาพ[6]
การแสดงออกและผลที่ตามมา
- Context Degradation Syndrome: ในระหว่างบทสนทนายาว โมเดลเริ่ม "หลงประเด็น" ตอบซ้ำ ขัดแย้งกับข้อเท็จจริงที่ระบุไว้ก่อนหน้า และให้คำตอบที่กว้างและคลุมเครือมากขึ้นเรื่อยๆ[1]
- ความล้มเหลวในงานหลายขั้นตอน: ในงานที่เงื่อนไขถูกชี้แจงผ่านหลายรอบของการสนทนา โมเดลอาจ "ยึดติด" กับสมมติฐานเริ่มต้นที่ผิดพลาดและเพิกเฉยต่อการชี้แจงในภายหลัง ส่งผลให้ไม่สามารถแก้ไขปัญหาได้อย่างสิ้นเชิง[7]
- ความไม่น่าเชื่อถือในการวิเคราะห์เอกสาร: เมื่อวิเคราะห์รายงานยาวหรือเอกสารทางกฎหมาย LLM อาจพลาดข้อเท็จจริงสำคัญที่อยู่ในส่วนกลาง ทำให้ไม่น่าเชื่อถือสำหรับงานประเภทนี้
กลยุทธ์การลดผลกระทบและการป้องกัน
นักวิจัยและนักพัฒนาใช้แนวทางหลายวิธีเพื่อแก้ไขปัญหาการลืมบริบท
การขยายหน้าต่างบริบท
แนวทางที่ตรงไปตรงมาที่สุดคือการเพิ่มขนาดหน้าต่างบริบท โมเดลสมัยใหม่ เช่น Claude 3 (200,000 token) และ Gemini 1.5 Pro (สูงสุด 2 ล้าน token) ได้ขยายขีดจำกัดนี้อย่างมีนัยสำคัญ[8][9] อย่างไรก็ตาม งานวิจัยแสดงให้เห็นว่าการขยายหน้าต่างเพียงอย่างเดียวไม่ได้รับประกันการใช้งานอย่างมีประสิทธิภาพ และปัญหา "สูญหายในช่วงกลาง" ยังคงมีอยู่[2]
การออกแบบ prompt อย่างชาญฉลาด
การจัดโครงสร้าง prompt อย่างถูกต้องสามารถปรับปรุงประสิทธิภาพได้อย่างมีนัยสำคัญ บริษัท Anthropic แนะนำแนวปฏิบัติดังต่อไปนี้[10]:
- วางเอกสารไว้ที่ต้น: นำข้อความยาวไว้ที่ต้น prompt ก่อนคำสั่งและคำถาม
- ใช้ XML tag: ครอบเอกสารในแท็ก `<document>` เพื่อแบ่งแยกอย่างชัดเจน
- อ้างอิงคำตอบด้วยการอ้างอิง: ให้คำสั่งโมเดลดึงข้อความที่เกี่ยวข้องก่อน จากนั้นจึงกำหนดคำตอบบนพื้นฐานของข้อความเหล่านั้น
การทำ Externalization ของหน่วยความจำ: Retrieval-Augmented Generation (RAG)
แนวทางที่แตกต่างพื้นฐาน คือการไม่นำข้อมูลทั้งหมดใส่ในหน้าต่างบริบท แต่นำไปเก็บในระบบภายนอก (ฐานข้อมูลเวกเตอร์) และส่งให้ตามคำขอ
- การดึงข้อมูล (Retrieve): เมื่อได้รับคำขอ ระบบจะค้นหาข้อมูลที่เกี่ยวข้องในฐานข้อมูลภายนอก
- การเสริมข้อมูล (Augment): ส่วนที่ค้นพบจะถูกเพิ่มเข้าไปในคำขอต้นฉบับ
- การสร้าง (Generate): LLM สร้างคำตอบโดยอาศัยบริบทที่ได้รับ
RAG ช่วยให้ทำงานกับข้อมูลปริมาณมากที่แทบไม่มีขีดจำกัด และให้การเข้าถึงข้อมูลที่ทันสมัยและตรวจสอบแล้ว ซึ่งลดความเสี่ยงของการเกิด hallucination และถือเป็นแนวทางแก้ไขที่น่าเชื่อถือที่สุดในปัจจุบัน[11]
ลิงก์
- Lost in the Middle: How Language Models Use Long Contexts — งานวิจัยต้นฉบับของมหาวิทยาลัย Stanford
- การประกาศ Claude ที่มีหน้าต่างบริบท 100K token จาก Anthropic
เอกสารอ้างอิง
- Liu, N. F. et al. (2023). Lost in the Middle: How Language Models Use Long Contexts. arXiv:2307.03172.
- An, C. et al. (2024). Why Does the Effective Context Length of LLMs Fall Short?. arXiv:2410.18745.
- Ding, J. et al. (2023). LongNet: Scaling Transformers to 1,000,000,000 Tokens. arXiv:2307.02486.
- Yang, A. et al. (2024). Context Parallelism for Scalable Million-Token Inference. arXiv:2411.01783.
- Chen, S. et al. (2023). Extending Context Window of Large Language Models via Positional Interpolation. arXiv:2306.15595.
- Ding, Y. et al. (2024). LongRoPE: Extending LLM Context Window Beyond 2 Million Tokens. arXiv:2402.13753.
- Li, S. et al. (2023). Functional Interpolation for Relative Positions Improves Long Context Transformers. arXiv:2310.04418.
- Dong, Z. et al. (2024). Exploring Context Window of Large Language Models via Decomposed Positional Vectors. arXiv:2405.18009.
- Laban, P. et al. (2025). LLMs Get Lost in Multi-Turn Conversation. arXiv:2505.06120.
- Li, R. et al. (2024). Extending Context Window in Large Language Models with Segmented Base Adjustment for Rotary Position Embeddings. Applied Sciences, 14(7), 3076. DOI:10.3390/app14073076.
- Yang, A. & Reizenstein, J. (2024). Exploring Context Window of LLMs via Decomposed Positional Vectors (NeurIPS Poster). NeurIPS 2024.
หมายเหตุ
- ↑ 1.0 1.1 1.2 Howard, James. «Context Degradation Syndrome: When Large Language Models Lose the Plot». jameshoward.us. [1]
- ↑ 2.0 2.1 2.2 2.3 Liu, Nelson F.; et al. «Lost in the Middle: How Language Models Use Long Contexts». arXiv. [2]
- ↑ Liu, Nelson F.; et al. «Lost in the Middle: How Language Models Use Long Contexts». ACL Anthology. [3]
- ↑ Greyling, Cobus. «Catastrophic Forgetting In LLMs». Medium. [4]
- ↑ «Exploring Context Window of Large Language Models via Decomposed Positional Vectors». NeurIPS Proceedings. [5]
- ↑ An, Chenxin; et al. «Why Does the Effective Context Length of LLMs Fall Short?». arXiv. [6]
- ↑ «LLMs Get Lost In Multi-Turn Conversation». arXiv. [7]
- ↑ «Introducing the next generation of Claude». Anthropic. [8]
- ↑ «Google's Gemini 1.5 Pro - Revolutionizing AI with a 1M Token Context Window». Medium. [9]
- ↑ «Long context prompting tips». Anthropic Documentation. [10]
- ↑ «What is Retrieval-Augmented Generation (RAG)?». Google Cloud. [11]