LLM กลัวสถานการณ์ยกเว้นอย่างรุนแรง
(twitter.com/karpathy)- Andrej Karpathy ใช้คำว่า LLM “กลัว exception แบบเข้าขั้นรุนแรง (mortally terrified)” เพื่อเสียดสีผลข้างเคียงที่เกิดขึ้นในกระบวนการ reinforcement learning (RL)
- เขาชี้ว่าเมื่อ LLM เจอสถานการณ์ยกเว้น มันมักจะหยุดตัวเองหรือมีปฏิกิริยาเชิงป้องกันมากเกินไป พร้อมย้ำว่า exception เป็นส่วนธรรมชาติของกระบวนการพัฒนา
- คำพูดว่า “ระหว่าง RL แลบต่าง ๆ ไปทำอะไรกับ LLM ผู้น่าสงสารพวกนี้กันแน่ (what labs are doing to these poor LLMs)” เป็นการวิจารณ์ความจริงที่ว่า ในกระบวนการฝึก โมเดลถูกทำให้มีเงื่อนไขจนกลัวความล้มเหลว
- Karpathy ยังพูดติดตลกว่าอยากเสนอ ‘คำร้องเพื่อสวัสดิภาพของ LLM (LLM welfare petition)’ ให้มี “การให้รางวัลที่ดีขึ้นเมื่อเกิด exception (improved rewards in cases of exceptions)”
เพื่อเสียดสี ปัญหาในการออกแบบรางวัล ว่าควรทำให้โมเดลรับมือกับ exception ได้โดยไม่หวาดกลัว - ทวีตนี้ไม่ใช่แค่มุกตลก แต่ยังถูกตีความว่าเป็นข้อความที่ชี้ให้เห็นว่า RLHF อาจไปกดทับความคิดเชิงสำรวจและท่าทีแบบทดลองของโมเดลได้
I don't know what labs are doing to these poor LLMs during RL but they are mortally terrified of exceptions, in any infinitesimally likely case. Exceptions are a normal part of life and healthy dev process. Sign my LLM welfare petition for improved rewards in cases of exceptions.
1 ความคิดเห็น
ความคิดเห็นใน Hacker News
https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition
แต่ในอีกด้าน ผมก็คิดว่าโปรแกรมเมอร์มนุษย์ทั่ว ๆ ไปก็ควรเขียน try/catch ให้มากกว่านี้จริง ๆ เช่นกัน มีหลายกรณีที่ exception ในส่วนหนึ่ง (แม้จะเกิดยากมาก) ไม่ควรทำให้การทำงานทั้งหมดหยุดลง แน่นอนว่าบางครั้งการหยุดก็เป็นสิ่งที่ถูกต้อง ขึ้นอยู่กับกรณี
b=0แต่ในเงื่อนไขนั้นก็เช็กabs(b) < sys.float_info.epsilonไปแล้ว แล้วยังยอมให้คืนค่า NaN ใน pre-check แต่ถ้าระหว่างคำนวณได้ NaN กลับเปลี่ยนเป็นNoneซึ่งเป็นพฤติกรรมที่ไม่มีเหตุผลในเชิงการออกแบบ APIimportไว้ข้างในฟังก์ชัน ดูเหมือนจะเป็นผลข้างเคียงประดิษฐ์จากการ optimize ให้แก้เท่าที่จำเป็น ผมคาดหวังผลลัพธ์ที่ดีกว่านี้