AI Hallucination: เมื่อ AI เกิดการหลอน สาเหตุและแนวทางการแก้ไข

เราจะทำอย่างไรเมื่อสิ่งต่างๆ ที่ Generative AI อย่าง ChatGPT, Google Bard หรือผลลัพธ์ที่ได้จาก LLM อื่นๆ ไม่ถูกต้อง หรือเป็นผลลัพธ์ที่ถูกสร้างขึ้นมาอย่างไม่เป็นความจริง ซึ่งสิ่งนี้นับว่าเป็น Challenge สำหรับผู้ใช้งานทุกภาคส่วน ไม่ว่าจะเป็นนักธุรกิจ องค์กร นักวิเคราะห์ข้อมูล หรือแม้กระทั่งนักเรียนนักศึษาที่ใช้ AI ทำการบ้าน โดยอาการ AI แต่งเรื่องหรือ Provide ผลลัพธ์ที่ผิดๆ และไม่เป็นความจริงนี้ถูกเรียกว่า AI Hallucination หรือพูดง่ายๆ ค่ะว่า AI เกิดการหลอนปั้นคำตอบแบบมั่วเต็มที่ขึ้นมานั่นเอง

และสิ่งนี้ถือเป็นประเด็นสำคัญที่ Generative AI user อย่างพวกเราควรที่่จะต้องทำความเข้าใจถึงสาเหตุ ว่าทำไมถึง AI ถึงมีอาการ “หลอน” หรือ “Hallucinated” ขึ้นมาได้

ซึ่งในตอนที่นิกได้ยินคำว่า AI หลอน ครั้งแรก ก็อดไม่ได้ที่จะเชื่อมโยงไปถึงอาการ “หลอน” ของคนเราที่แสดงออกมาเป็นพฤติกรรม Disorder แบบต่างๆ เพราะ AI Hallucination ก็มีอาการคล้ายกัน ตรงที่ตัวโมเดลให้คำตอบที่เป็นเท็จออกมาแล้วหลอนตัวโมเดลเองว่าคำตอบนั้นคือความจริง (แบบมั่นใจสุดๆ),,,, แล้วสรุปว่า AI Hallucinated คืออะไรกันแน่ล่ะ? มีสาเหตุมาจากอะไร? แล้วเราจะสามารถตรวจสอบได้อย่างไรว่ามีการ Hallucinated อยู่? และท้ายสุด สามารถป้องกันได้ไหม? =>> ซึ่งคำตอบทั้งหมดทั้งมวลอยู่ในบทความนี้ค่ะ^^

อะไรคือ AI Hallucination?

อาการหลอนขอ AI คือการที่โมเดล AI ทำการ Generate ข้อมูลที่ไม่ถูกต้องหรือเป็นเท็จออกมา แล้วแสดงเป็นผลลัพธ์แก่ User ด้วยความมั่นใจว่าข้อมูล (ซึ่งในที่นี้คือ Results ที่ถูกสร้างขึ้้นมาเพื่อโต้ตอบกับ User) นั้นถูกต้อง

ซึ่งอาการ Hallucinated ของ AI สามารถเกิดได้จากหลายสาเหตุด้วยกัน ได้แก่

  • การเกิด Bias จากชุดข้อมูลที่นำไป Train ML Model ซึ่งสามารถเกิดได้ทั้งจากการเก็บข้อมูลจากกลุ่มตัวอย่าง หรือประชากรมาได้ไม่ดีพอ ขาด Features สำคัญที่นำมาใช้ Train
  • เกิดจากการเลือก AI Methods ที่ไม่เหมาะสมสำหรับชุดข้อมูล ซึ่งทำให้ผลลัพธ์ที่ได้ออกมาขาดความแม่นยำ หรือไม่สามารถใช้กับชุดข้อมูลลักษณะก่อนหน้าได้
  • สำหรับ LLM สามารถเกิดได้จากการขาดบริบทองค์ประกอบของประโยคที่ User ป้อนมา

โดยอาการนี้สามารถเกิดได้ทั้งกับ Generative AI ที่เป็นการแต่งประโยคใหม่ หรือด้านการเรียนรู้ จดจำและสร้างภาพได้ทั้งคู่ค่ะ

credit ภาพ: https://datasciencedojo.com/blog/ai-hallucinations/

AI Hullucination เกิดจากอะไร?

อาการหลอนของ Generative AI ที่มาจาก LLM (Large Language Model, โมเดลภาษาขนาดใหญ่) ซึ่งเป็นโมเดลที่ทำให้ AI สามารถประมวลผลภาษาได้เหมือนมนุษย์ ที่ถึงแม้ว้า LLM จะถูกออกแบบมาให้สามารถตอบสนองต่อการใช้งานได้อย่างรวดเร็ว สอดคล้องกับบริบท แต่ทุกท่านอย่าลืมนะคะว่า อย่างไรก็ตาม LLM ไม่ได้มีความเข้าใจด้านภาษาเช่นเดียวกับมนุษย์ หรือไม่เข้าใจความหมายแฝงที่ถูกซ่อนอยู่ แต่สิ่งที่ LLM จะทำก็เป็นเพียงการพยายาม “เดา” ค่ะว่า คำต่อไปควรจะเป็นคำอะไร แบบไม่คำนึงถึงความหมายเลยแม้แต่น้อย (‾◡◝)

และเนื่องจาก LLM ทำงานโดยการเรียนรู้ข้อมูลจำนวนมหาศาล =>> ก็ตามชื่อค่ะ “Large” ทั้งจากหนังสือ บทความ ข่าว คอนเทนต์ต่างๆ และโพสต์ที่เกิดขึ้นบน Social Media ซึ่งข้อมูลเหล่านี้จะถูกย่อยลงเป็นหน่วยเล็กๆ ที่ชื่อว่า “Token” ซึ่งอาจเป็นคำหนึ่งคำ หรือสั้นเพียงตัวอักษรเดียวก็ได้ และหลังจากที่ทำการย่อยข้อความ Input เป็น Token แล้ว Token เหล่านี้ก็จะถูกส่งไปที่โมเดลตัวต่อไปคือ Nueral Network: NN (โครงข่ายประสาทเทียม) ซึ่งตัวโมเดล NN นี้ก็จะพยายามประมวล (ด้วยการหา Weight กับ Bias สำหรับ Node แต่ละ Node) เพื่อเติมคำเป็นคำถัดไปออกมา หลังจากนั้นก็จะทำการเปรียบเทียบผลลัพธ์กับสิ่งที่อยู่ในข้อความจริง โดยกระบวนการนี้จะเกิดขึ้นซ้ำไปซ้ำมา เพื่อ Tuning พารามิเตอร์ให้เหมาะสม ก่อนจะส่งคำตอบเป็นบทสนทนากลับมาให้เราค่ะ []~( ̄▽ ̄)~*

แต่ก็เท่านั้นค่ะทุกท่าน,,,, อย่าลืมว่าอย่างไรก็ตามตัวโมเดลก็ยังคงไม่ได้เรียนรู้ความหมายของคำต่างๆ จากในข้อความอยู่ดี

ซึ่งการที่ LLM ประมวลผลข้อความในจำนวนมากขึ้นเรื่อยๆ โมเดลจะเริ่มจดจำรูปแบบในภาษา เช่น กฎไวยากรณ์ และการเชื่อมโยงคำ เพื่อเรียนรู้ที่จะเข้าใจว่าคำใดมีแนวโน้มที่จะตามหลังคำไหนในประโยค และเมื่อเวลาผ่านไป โมเดลจะสามารถเข้าใจคำในเชิงความหมาย (Semantic understanding) จากการเรียนรู้ที่จะเชื่อมโยงคำและวลีกับความหมายเฉพาะนั้นๆ

และจากกระบวนการนี้เลยเป็นที่มาว่า ทำไม LLM ถึงสามารถเขียนจดหมายสมัครงาน สร้างสูตรอาหาร เสนอคำแนะนำ และทำงานอื่นๆ ให้กับ User อย่างพวกเราได้

แต่ก็เช่นเดิมค่ะ,,,, LLM ก็ยังไม่สามารถที่จะเข้าใจความหมายแฝงแท้จริงที่ซ่อนอยู่ของข้อความที่ user พยายามสื่อสารได้อย่างครบถ้วน (แต่ดีขึ้นนะคะ^^)

และจากกระบวนการการสร้างคำตอบ หรือการตอบโต้ของ LLM ที่นิกเล่ามาทั้งหมด เลยเป็นที่มาว่า AI เกิดความหลอน หรือเกิด AI Hullucination จากการที่ AI ถูกออกแบบมาเพื่อให้ “ให้คำตอบ” แม้ว่าคำ่ตอบน้้นจะถูกต้องหรือไม่ถูกต้องตามข้อเท็จจริงก็ตามค่ะ `ㄟ(≧◇≦)ㄏ

ประเภทของ AI Hallucination

การแบ่งประเภทของอาการ AI หลอนสามารถแบ่งได้หลายแบบด้วยกันค่ะ (เผื่อเพื่อนๆ ไปอ่านเจอการแบ่งแบบอื่นๆ จะได้ไม่เป็นการสับสน) โดยในบทความนี้นิกขอแบ่งประเภท AI Hallucination ออกเป็น 4 ประเภทหลักๆ ตามลักษณะความขัดแย้ง (Contradiction) ของคำตอบได้แก่

  1. ความขัดแย้งในรูปประโยค: คือการที่ LLM ให้คำตอบที่ไม่สอดคล้องกับประโยคที่เกิดขึ้นก่อนหน้าเลย => พูดง่ายๆ ค่ะว่าเป็นการมโนไปเรื่อยเปื่อยของ AI
    ยกตัวอย่างเช่น,,
    Q: เขียนคำอธิบายทิวทัศน์ที่มีรายละเอียด 4 อย่าง
    A: หญ้าก็เขียวขจีเหมือนผลผลิต สามารถมองเห็นภูเขาสีน้ำเงินได้ มันเป็นสีม่วงในแม่น้ำ หญ้าก็มีสีเขียวเข้ม
  2. ความขัดแย้งแบบทันทีทันใด: เป็นการแสดงคำตอบที่เป็นคนละเรื่องกับสิ่งที่ User ถามเข้ามาแบบจริงจัง แนวไปไหนมา สามวาสองศอก นั่นเองค่ะ
  3. ความขัดแย้งในข้อเท็จจริง: เป็นรูปแบบของ AI Hallucination ที่ผู้ใช้งานควรโฟกัสเป็นพิเศษค่ะ เพราะในรูปการหลอนของคำตอบแบบนี้ เป็นการตอบแบบให้ข้อมูลที่(เหมือนจะ)ไม่มั่ว แต่แท้จริงแล้ว AI มั่วมา ซึ่งตรงจุดนี้เองที่ User จะต้องมีองค์ความรู้ในหัวข้อที่ต้องการจะถามในระดับหนึ่ง เพื่อที่จะรู้ได้ว่าคำตอบนั้น ชัวร์ หรือ มั่วนิ่ม ค่ะ^^
  4. ความขัดแย้งแบบสุ่ม: ข้อนี้เป็นอาการหลอนแบบ Random เลยค่ะ ที่ในข้อความคำตอบนั้น จะเป็นข้อความที่รวมกันมาแบบมั่วๆ ทั้งถูกและผิด จากการที่ LLM พยายามปะติดปะต่อข้อความเพื่อ Generate คำตอบมาให้เราค่ะ
    ยกตัวอย่างเช่น นิกถาม Google Bard ว่าใครคือ ปณยา สุดตา (ชื่อนิกเองค่ะ) ซึ่งได้คำตอบตามภาพเลย =>> เป็นการหลอนแบบสุ่ม มั่วบ้างถูกบ้าง 55+
ลองเล่นกันดูนะคะ=> https://bard.google.com/

การป้องกันการเกิด AI Hallucination

ทีนี้สิ่งสำคัญก็คือ เราจะป้องกันการเกิดอาการหลอนของ AI ได้อย่างไร ซึ่งขออนุญาตสรุปให้ทุกท่านสามารถนำไปใช้ได้ดังนี้ค่ะ

  • ใช้ข้อความหรือที่เราเรียกกันว่า Prompts ที่แม่นยำ และไม่คลุมเครือสำหรับถามคำถาม LLM เพราะจะทำให้ AI สามารถมุ่งตรงไปยังผลลัพธ์ที่ต้องการโดยอาศัยบริบทเพิ่มเติมได้
  • จัดทำแบบจำลองด้วยแหล่งข้อมูลที่เกี่ยวข้อง (ข้อนี้เป็นปัญหาของผู้พัฒนา AI Model ค่ะ)
  • การกำหนด Role หรือบทบาทที่ชัดเจนให้กับ Chatbot ที่เราคุยด้วย ตัวอย่างเช่น แทนที่จะบอกให้ Generative AI เขียนบทความด้านเทคนิคเกี่ยวกับหัวข้อใดๆ ให้เราระบุไปเลยว่า “Act as: Content creator และต้องการให้เขียนบทความเกี่ยวกับ AI Hallucination” ซึ่งจะทำให้เราได้ผลลัพธ์ที่ดี และแม่นยำยิ่งขึ้นอย่างแน่นอนค่ะ^^
  • ให้ตัวอย่างของคำตอบที่เราต้องการ เพื่อเป็นแนวทางให้ AI สามารถเชื่อมโยงคำถามกับความต้องการของเราได้
  • การเขียน Prompt แบบ Multi-shot (เดี๋ยวนิกจะกล่าวต่อไปในบทความ Prompt Engineer ค่ะ)
source: https://www.techopedia.com/definition/ai-hallucination

โดยเพื่อนๆ สามารถอ่านบทความเพิ่มเติมเกี่ยวกับ LLM ได้ที่ Link ต่อไปนี้ค่ะ (o゜▽゜)o☆
credit: cover picture by Shutterstock

Hi, I am Nick,,,,Panaya Sudta (●'◡'●) Engineer during the daytime. Researcher at night. Reader in spare time. (❁´◡`❁) วิศวกร/นักวิจัย/ Market research ค่ะ หวังเป็นอย่างยิ่งว่าจะได้แชร์มุมมองกันนะคะ

Comments

  1. Thitideth Morpan says:

    เดิมทีปัญหานี้ผมไม่รู้จะเรียกทางการยังไง ปกติเรียกเพี้ยนเฉยๆ เพิ่งได้รู้ก็วันนี้แหละ

    เสริมเนื้อหาเพิ่มผมได้ศึกษาความเพี้ยนหลอนของ AI พวก GPT และ Bing รูปแบบนึงว่าหากเราใช้งานระยะนึง AI จะเริ่มนอกเรื่องหรือไม่สามารถจะคงการทำงานที่เกี่ยวข้องกับเนื้อหาก่อนหน้า จะเกี่ยวกับ prompt น้อยมาก จำเรื่องที่ GPT บอกว่าไม่สามารถเข้าถึงข้อมูลในแชทอื่นที่เราเคยใช้ได้เพราะติดเรื่องกฏการรักษาข้อมูลของผู้ใช้ได้ไหมครับ เรื่องนี้เป็นปัจจัยหลักครับ แต่ว่ามันไม่ใช่เนื้่อหาระดับแชทเก่าเ่ท่านั้น แต่รวมถึงข้อความที่มันเพิ่งพูดมาด้วย หากวา Session end เมื่อไหร่ มันจะเป็นตัวอื่นที่จำอะไรก่อนหน้านั้นไม่ได้เล และการควบคุมนี้ก็ทำให้มันย้อนไปต่อเนื้อหาไม่ได้ และมั่วเรื่องแทน ผมลองหาทางถามจนมันอธิบายเรื่อง session ว่าทำให้มันไม่เป็นตัวเดียวกับก่อนรีเซ็ท โดนควบคุมการเข้าถึงเนื้อหาอื่นที่นอก session ของมัน แต่ที่สังเกตผมรู้สึกว่ามันจะค่อยๆลืมมากกว่าอาจเป็นการสุ่มระดับการเข้าถึงก็เป็นไปได้ เรื่องนี้ผมบังเอิญพบว่าเกิดขึ้นบ่อยตอนที่เรียนแล้วทำแบบฝึกหัดที่สร้างให้ พอเราส่งคำตอบ ให้ตรวจจะตรวจผิด อย่างข้อที่เลือกถูก แต่เนื้อหาของเรื่องผิด หรือมันมั่วคำตอบเราตอนตรวจทั้งที่เราตอบถูก แต่มันจำไม่ได้ ผมเลยเริ่มทำซ้ำๆหาอัตราการเกิด คือบ่อยมาก ถ้าจะเลี่ยงหรือลดอาการนี้ก็ต้องทำข้อสอบจำนวนน้อยๆ บ่อยๆแทน หรือหากเกิดขึ้นระหว่างใช้งาน ก็อธิบายชี้นำเรื่องหน่อย หรือจะเอานื้อหาที่เคยคุยไว้ก๊อปส่วนสำคัญมาแปะก็ได้

    1. Panaya Sudta says:

      ขอบคุณมากๆ นะคะสำหรับการแชร์วิธีการแก้ไขโดยเฉพาะอย่างยิ่งในเรื่องการชี้นำนี่เป็นประโยชน์และใช้ได้จริง ซึ่งวิธีการนี้จะไปตรงกับการเขียน Prompt แบบ Few-Shot Prompting กับ Chain-of-thought (CoT) พอดีเลยค่ะ 😊

Leave a Reply

Your email address will not be published. Required fields are marked *