Prompt engineering
การกระตุ้นเชิงอุปมาและย้อนกลับ: การสำรวจความก้าวหน้าล่าสุดโดย Google DeepMind

บทนำ
วิศวกรรมพรอมป์ต์คือการออกแบบคำสั่งที่มีประสิทธิภาพเพื่อให้โมเดลภาษาขนาดใหญ่ เช่น GPT-4 สร้างคำตอบตามต้องการ คำสั่งที่ดีอาจเป็นสิ่งที่แยกคำตอบคลุมเครือหรือผิดพลาดออกจากคำตอบที่แม่นยำและให้ข้อมูลเชิงลึก
นี่เป็นหนึ่งในหลายวิธีที่ใช้ดึงข้อมูลที่ถูกต้องและตรงบริบทจากโมเดลภาษา วิธีอื่นมีการเรียนรู้จากตัวอย่างจำนวนน้อย (few-shot learning) เพื่อให้เข้าใจงาน และการปรับจูนโมเดลเพิ่มเติมบนชุดข้อมูลเล็กเพื่อให้ตอบได้เฉพาะทางขึ้น
Google DeepMind (GOOGL ) เผยแพร่งานวิจัยสองฉบับเกี่ยวกับศักยภาพของวิศวกรรมพรอมป์ต์ในการปรับปรุงคำตอบในสถานการณ์ต่าง ๆ
งานเหล่านี้เป็นส่วนหนึ่งของการศึกษาต่อเนื่องในชุมชน AI เพื่อปรับปรุงการสื่อสารกับโมเดลภาษา โดยให้แนวคิดใหม่ในการวางโครงสร้างคำสั่งเพื่อจัดการคำถามและโต้ตอบฐานข้อมูลได้ดีขึ้น บทความนี้อธิบายแนวคิด วิธีการ และผลของเทคนิคดังกล่าวให้ผู้อ่านที่มีพื้นฐาน AI และ NLP จำกัดเข้าใจได้
งานวิจัยที่ 1: Large Language Models as Analogical Reasoners
งานของ Michihiro Yasunaga, Xinyun Chen และคณะเสนอ Analogical Prompting หรือการสั่งงานด้วยการให้เหตุผลเชิงเปรียบเทียบ ได้แรงบันดาลใจจากวิธีที่มนุษย์ใช้ประสบการณ์เดิมแก้ปัญหาใหม่
แนวคิดและวิธีการหลัก
ให้โมเดลสร้างตัวอย่างหรือความรู้ที่เกี่ยวข้องกับบริบทด้วยตนเองก่อนแก้ปัญหา จึงไม่ต้องเตรียมตัวอย่างที่มีคำตอบกำกับไว้ล่วงหน้า ใช้งานสะดวกและปรับตัวอย่างให้ตรงกับแต่ละปัญหาได้

ซ้าย: วิธีเดิมใช้คำสั่งทั่วไปแบบ0-shotCoT หรือตัวอย่างที่กำกับคำตอบแบบfew-shotCoT ขวา: วิธีใหม่ให้โมเดลสร้างตัวอย่างที่เกี่ยวข้องเองก่อนแก้โจทย์ ไม่ต้องกำกับคำตอบและปรับตามปัญหาแต่ละข้อ
ตัวอย่างที่โมเดลสร้างเอง
เทคนิคแรกใช้ความรู้จำนวนมากที่โมเดลได้รับระหว่างการฝึกเพื่อแก้ปัญหาใหม่ โดยเพิ่มคำแนะนำให้ระลึกหรือสร้างโจทย์และวิธีแก้ที่เกี่ยวข้องกับโจทย์เป้าหมาย
เช่น ให้โมเดลนึกถึงโจทย์ที่เกี่ยวข้องแต่แตกต่างกันสามข้อ อธิบายโจทย์และวิธีแก้ แล้วแก้โจทย์ตั้งต้นทั้งหมดในรอบเดียว สัญลักษณ์ ‘#’ ในพรอมป์ต์ช่วยจัดโครงสร้างคำตอบให้เป็นระเบียบและทำตามง่าย
ประเด็นทางเทคนิคสำคัญคือควรสร้างตัวอย่างที่เกี่ยวข้องและหลากหลาย ใช้ขั้นตอนรอบเดียวเพื่อความสะดวก และพบว่าการสร้างสามถึงห้าตัวอย่างให้ผลดีที่สุด
ความรู้และตัวอย่างที่โมเดลสร้างเอง
เทคนิคที่สองจัดการงานซับซ้อน เช่น การสร้างโค้ด ซึ่งโมเดลอาจยึดติดกับตัวอย่างระดับรายละเอียดและประยุกต์หลักการได้ยาก ผู้วิจัยจึงเพิ่มคำสั่งให้ระบุแนวคิดแกนกลางและอธิบายเป็นบทสอนหรือข้อสรุประดับสูง
ลำดับมีความสำคัญ: การสร้างความรู้ก่อนสร้างตัวอย่างให้ผลดีกว่า เพราะช่วยให้โมเดลสนใจวิธีแก้ปัญหาพื้นฐาน แทนความคล้ายคลึงที่ผิวเผิน
ข้อดีและการประยุกต์ใช้
แนวทางนี้ให้ตัวอย่างการให้เหตุผลอย่างละเอียดโดยไม่ต้องกำกับคำตอบด้วยมือ ลดปัญหาของวิธี chain-of-thought (CoT) แบบไม่มีตัวอย่างและแบบมีตัวอย่างจำนวนน้อย ตัวอย่างที่สร้างยังปรับตามปัญหาเฉพาะ จึงเกี่ยวข้องกว่าวิธี few-shot CoT ที่ใช้ชุดตัวอย่างตายตัว
งานวิจัยแสดงผลในโจทย์คณิตศาสตร์ การสร้างโค้ด และงานให้เหตุผลใน BIG-Bench ตารางต่อไปเปรียบเทียบวิธีสั่งงานในโมเดลต่าง ๆ วิธี “Self-generated Exemplars” ทำคะแนนความแม่นยำสูง โดย GSM8K ได้ 81.7% บน PaLM2 และ MATH ได้ 37.3% บน GPT3.5-turbo
ตารางที่สองแสดงว่า “Self-generated Knowledge + Exemplars” ให้ผลดีที่สุดบน GPT3.5-turbo-16k และ GPT4
งานวิจัยที่ 2: Take a Step Back: Evoking Reasoning via Abstraction in Large Language Models
ภาพรวม
งาน Take a Step Back: Evoking Reasoning via Abstraction in Large Language Models ของ Huaixiu Steven Zheng, Swaroop Mishra และคณะ เสนอ Step-Back Prompting ซึ่งให้โมเดลถอยกลับมาสกัดแนวคิดระดับสูงและหลักการพื้นฐานจากรายละเอียด ก่อนใช้หลักการนั้นนำทางการให้เหตุผลไปสู่คำตอบ
ตัวอย่างคณิตศาสตร์ง่าย ๆ ต่อไปนี้สาธิตคำถามแบบถอยกลับหนึ่งขั้น:
คำถามเดิม: รถไฟวิ่งด้วยความเร็ว 60 กิโลเมตรต่อชั่วโมง และเดินทาง 120 กิโลเมตร จะใช้เวลาเท่าใด?
- 3 ชั่วโมง
- 2 ชั่วโมง
- 1 ชั่วโมง
- 4 ชั่วโมง
คำตอบตั้งต้นที่ผิด: คำตอบที่ถูกคือข้อ 1
คำถามถอยกลับ: สูตรพื้นฐานในการหาเวลาเมื่อทราบความเร็วและระยะทางคืออะไร?
หลักการ: เวลา = ระยะทาง ÷ ความเร็ว
คำตอบสุดท้าย: เวลา = 120 กิโลเมตร ÷ 60 กิโลเมตรต่อชั่วโมง = 2 ชั่วโมง ดังนั้นคำตอบคือข้อ 2
แม้โมเดลปัจจุบันตอบโจทย์นี้ได้ง่าย แต่ตัวอย่างมีไว้แสดงวิธีทำงานของเทคนิค สำหรับโจทย์ยากขึ้นสามารถใช้แนวทางเดียวกันแยกปัญหาและแก้อย่างเป็นระบบ ต่อไปเป็นตัวอย่างซับซ้อนจากงานวิจัย:
แนวคิดและวิธีการหลัก
หัวใจคือให้โมเดลถอยกลับในเชิงเปรียบเทียบเพื่อเห็นภาพรวม แทนการจมกับรายละเอียด ชุดพรอมป์ต์ที่ออกแบบอย่างระมัดระวังนำทางให้สกัดข้อมูลเป็นนามธรรม หาแนวคิดระดับสูง และนำไปแก้โจทย์
เริ่มจากให้โมเดลสกัดรายละเอียดของตัวอย่างไปสู่แนวคิดและหลักการพื้นฐาน ขั้นตอนนี้สร้างมุมมองที่มีข้อมูลและมีหลักเกณฑ์มากขึ้น จากนั้นใช้แนวคิดระดับสูงนำทางการให้เหตุผลให้เป็นลำดับที่สอดคล้องและมีเหตุผลจนได้คำตอบ
ผู้วิจัยทดลองกับ PaLM-2L ในงานให้เหตุผลที่ท้าทาย ได้แก่ โจทย์ STEM การตอบคำถามความรู้ และการให้เหตุผลหลายทอด เพื่อประเมินเทคนิคอย่างครอบคลุม
การปรับปรุงที่สำคัญในหลายงาน
Step-Back Prompting ทำให้ผลการทำงานดีขึ้นอย่างมาก โดย PaLM-2L ทำคะแนนใน MMLU ฟิสิกส์และเคมีดีขึ้น 7% และ 11% ตามลำดับ ใน TimeQA ดีขึ้น 27% และ MuSiQue ดีขึ้น 7%
ผลเหล่านี้แสดงศักยภาพของเทคนิคในการเพิ่มความสามารถให้เหตุผลของโมเดลภาษาขนาดใหญ่
สรุป
งานทั้งสองของ Google DeepMind เสนอแนวทางวิศวกรรมพรอมป์ต์เพื่อเพิ่มความสามารถให้เหตุผล Analogical Prompting ให้โมเดลสร้างตัวอย่างและความรู้เองเพื่อแก้ปัญหาอย่างยืดหยุ่นและมีประสิทธิภาพ ส่วน Step-Back Prompting เน้นการสกัดแนวคิดนามธรรมและหลักการระดับสูงเพื่อนำทางการให้เหตุผล
วิธีการและข้อมูลเชิงลึกเหล่านี้นำไปใช้ได้หลายสาขา ช่วยพัฒนาโมเดลภาษาให้ฉลาดและมีความสามารถขึ้น และเป็นก้าวสำคัญของการศึกษาวิศวกรรมพรอมป์ต์เพื่อสร้างระบบ AI ที่ก้าวหน้าและซับซ้อนยิ่งขึ้น

















