การวัดประสิทธิภาพ LLM ภาษาไทยด้วย SEACrowd Benchmark
ในช่วงปีที่ผ่านมา พัฒนาการของแบบจำลองภาษาขนาดใหญ่ หรือ Large Language Model (LLM) ดำเนินไปอย่างก้าวกระโดด แรงขับเคลื่อนของการพัฒนามาจากทั้งภาคเอกชน สถาบันศึกษา รวมถึงแรงสนับสนุนจากภาครัฐ ทั้งในและต่างประเทศ
LLM ที่ในปัจจุบันสามารถจัดกลุ่มได้เป็น 5 ประเภท [1] หลักๆคือ
- Commercial LLM ที่เปิดให้ใช้งานในรูปแบบ API ของบริษัทเอกชนชั้นนำของโลก เช่น GPT4 จาก OpenAI, Gemini จาก Google หรือ Command R จาก Cohere เป็นต้น ซึ่งกลุ่มนี้จะเป็นกลุ่ม LLM เดียวที่ไม่นับเป็น Open-Source เนื่องจากผู้ใช้ไม่สามารถเข้าถึง Source Code และ Weights ของ LLM ได้
- English-Centric LLM โดย LLM ประเภทนี้จะถูก Pre-train กับชุดมูลจำนวนมากที่เป็นภาษาอังกฤษ ทำให้มีประสิทธิภาพสูงในภาษาอังกฤษ แต่ประสิทธิภาพจะลดลงในภาษาไทยเมื่อเทียบกับ Task เดียวกัน แบบจำลองประเภทนี้ที่มีชื่อเสียงคือ LLaMa3 จาก Meta และ Mistral จาก Mistral AI
- Multilingual LLM เป็นแบบจำลองที่มีสัดส่วนข้อมูลระหว่างภาษาในการ Pre-train ที่มีการกระจายตัวสม่ำเสมอกว่า English-Centric LLM โดยแบบจำลองที่เป็นที่นิยมได้แก่ AYA, mT0 และ BLOOMZ
- SEA Regional LLM เป็นแบบจำลองที่ถูกจัดทำมาสำหรับภาษาใน Southeast Asian (SEA) โดยเฉพาะ แบบจำลองที่เป็นที่รู้จักโดยทั่วไปคือ SEA-LION, Sailor และ SeaLLM
- SEA Country-Specific คือแบบจำลองที่สร้างมาโดยคำนึงถึงภาษาปลายทางเป็นหลัก ซึ่งในกรณีภาษาไทยจะมี LLM ที่เป็นที่นิยาม 3 ตัว คือ OpenThaiGPT, Typhoon และ WangchanX-LLaMa3
โดยในส่วนใหญ่ของแบบจำลองในประเภทที่ 2–5 จะเป็นแบบจำลอง Open-Source ที่มี Restriction ขึ้นอยู่กับประเภท License ของผู้ปล่อย ที่ส่วนใหญ่จะรองรับการนำไปใช้ในอุตสาหกรรม
ถึงแม้ว่าพัฒนาการของ Open-Source LLM Community ในบ้านเราเป็นไปอย่างรวดเร็ว ทำให้มีผลกระทบเชิงบวกอย่างมาก อย่างไรก็ตาม เรายังขาดกระบวนการวัดผลที่เป็นมาตรฐานกลาง (Standard Benchmark) สำหรับทุกๆ LLM ภาษาไทย โดย Benchmark มีความสำคัญเป็นอย่างมากต่อทิศทางการพัฒนา LLM ในหลายประการ เช่น การมี Standard Benchmark จะมีการกำหนดมาตรฐานทางเทคนิคสำหรับวัดผล ทำให้ผลที่ได้มีความเสถียรและน่าเชื่อถือ นอกจากนี้การมี Open-Source Benchmark ที่ขับเคลื่อนโดยคนใน Community จากทุกภาคส่วนร่วมกัน จะสามารถสร้างประโยชน์จากการใช้ทรัพยากรข้อมูลร่วมกัน
SEACrowd คืออะไร และ Offer อะไรบ้างในภาษาไทย
SEACrowd เป็น Data Hub และ Benchmark ที่เข้ามาแก้ปัญหาเรื่องการวัดผลแบบจำลอง LLM ในกลุ่มภาษา Southeast Asian โดยชุดข้อมูลจะมี 3 Modalities คือข้อความ (Text) ภาพ (Image) รวมไปถึงเสียง (Voice) ที่ครอบคลุม 36 ภาษาหลัก และมีการทดสอบทั้งหมด 13 Tasks
จากภาพรวมของชุดข้อมูลทดสอบ จะเห็นว่าข้อมูล Text โดยในภาษาไทยจะมีครบทั้ง 3 Modalities ที่มี Tasks ครอบคลุมที่หลากหลาย แต่เนื่องจาก Open-Source LLM ในท้องตลาดที่ใช้กันในปัจจุบัน Support เฉพาะ Text ดังนั้นในเนื้อหาของบทความนี้จะพิจารณาเฉพาะส่วนที่เป็น Text
การพิจารณาการวัดประสิทธิภาพของแบบจำลองใน Text Modal สามารถแบ่งออกเป็นกลุ่มใหญ่คือ
- Natural Language Understanding (NLU) จะวัดความสามารถในการอ่านของเครื่อง โดยจะวัดว่าแบบจำลองเข้าใจความหมายของประโยค โครงสร้างทางไวยากรณ์ และจัดหมวดหมู่ประโยค ผ่าน Tasks ต่างๆที่เน้นการสกัด (Extract) ข้อมูลจากเนื้อหา เช่น การทดสอบผ่านระบบถามตอบแบบสกัด (Extractive QA) ที่มีการแนบบทความที่เกี่ยวข้องให้ และสกัดข้อความที่เป็นคำตอบจากเนื้อหาที่เกี่ยวข้องกับคำถามที่ให้แบบจำลองไป
- Natural Language Generation (NLG) เป็นการวัดความสามารถในการเขียนของแบบจำลอง ผ่าน Tasks ต่างๆ เช่น การสรุปความ (Summarization), การแปลภาษา (Translation) และการถามตอบแบบ Abstractive (Abstractive QA) คือระบบถามตอบ ที่แบบจำลองไม่ได้ถูกจำกัดให้ตอบได้เฉพาะคำในบทความ
ตัวอย่างข้อมูลทดสอบการถามตอบ (QA) ภาษาไทยจาก XQuAD Dataset [2]
บทความ
คลอโรพลาสต์มี DNA เป็นของตัวเอง เรียกย่อ ๆ ว่า ctDNA หรือ cpDNA คลอโรพลาสต์ยังเป็นที่รู้จักในชื่อ plastome ตัวตนของมันได้รับการจัดเรียงครั้งแรกในปี 1962 และถูกจัดอันดับเป็นครั้งแรกในปี 1986 — เมื่อ ทีมวิจัยชาวญี่ปุ่นสองคน จัดเรียง DNA คลอโรพลาสต์ของลิเวอร์เวิรตและต้นยาสูบ ตั้งแต่นั้นเป็นต้นมา DNA คลอโรพลาสต์นับร้อยจากหลากหลายสายพันธุ์ที่ได้ถูกจัดเรียงไปแล้ว แต่ส่วนมากเป็นพืชบกและสาหร่าย — glaucophytes, สาหร่ายสีแดง, และกลุ่มสาหร่ายอื่น ๆ นั้นแสดงน้อยมาก อาจเกิดอคติในการมองโครงสร้างและเนื้อหาของ DNA คลอโรพลาสต์
คำถาม: อะไรคือคำพ้องของ DNA คลอโรพลาสต์?
คำตอบเฉลย: plastome
การวัดผล LLM ปัจจุบันด้วย SEACrowd Subset Thai
เนื้อหาต่อไปนี้จะเป็นการวัดผล LLMs ที่รองรับภาษาไทยชนิดต่างๆ บนชุดข้อมูลย่อยภาษาไทย โดยแบบจำลองที่ผู้เขียนเลือกนำมารายงานผล จะมี 4 กลุ่มดังต่อไปนี้
- Commercial: GPT4 ที่เป็นแบบจำลองประสิทธิภาพสูงจาก OpenAI
- English-Centric: Llama-3–8B-Instruct และ Llama-3.1–8B-Instruct จาก Meta
- SEA Regional: SEA-LION-7b-Instruct จาก AISG และ SeaLLM-7b-v2.5 จาก DAMO
- SEA Country-Specific LLM: Typhoon-V1.5x-LLaMa3–8b-Instruct และ WangchanX
โดย WangchanX LLMs จะมี Variances ทั้งหมด 3 แบบ [3] คือ
- WangchanX-LLaMa3–8b-Demo เป็นแบบจำลองที่ถูกเทรนมาด้วยข้อมูลขนาดเล็ก
- WangchanX-LLaMa3–8b-Full (NC) เป็นแบบจำลองที่ถูกเทรนมาด้วยข้อความขนาดใหญ่ ซึ่งแบ่งเป็น 2 ส่วนคือชุดข้อมูลก่อนหน้า และชุดข้อมูลที่ถูกสร้างมาแบบ FLAN-Style [4] จากชุดข้อมูลเปิดที่มีข้อมูลที่ถูกห้ามใช้ในการพาณิชญ์ หรือ Non-Commercial (NC)
- WangchanX-LLaMa3–8b-Full เป็นแบบจำลองที่ถูกเทรนมาด้วยข้อมูลเดียวกับตัวที่ 2 แต่นำชุดข้อมูลที่ติด NC ออก
การวัดผลใน NLU สามารถดูได้จากจาก Box Plot ด้านล่าง โดยผลที่ได้คือ GPT4 ได้คะแนนสูงสุด และรองลงในกลุ่มที่ใกล้เคียงกันจะมี Llama-3–8B-Instruct, Llama-3.1–8B-Instruct และ Typhoon-V1.5x-LLaMa3–8b-Instruct
การวัดผลใน NLG โดยที่การวัดประสิทธิภาพการแปลภาษาจะมองทั้ง 2 directions คือ English-Thai และ Thai-English ตามลำดับ จากผลใน 2 แถบบนของภาพด้านล่าง จะเห็นว่า LLM 3 ตัวที่ทำได้ดีที่สุดคือ WangchanX-LLaMa3–8b-Full, WangchanX-LLaMa3–8b-Full (NC) และ WangchanX-LLaMa3–8b-Demo ตามลำดับ ถัดไปหากพิจารณา Abstractive QA จะพบว่าแบบจำลอง WangchanX-LLaMa3–8b-Demo มีประสิทธิภาพที่โดดเด่นเมื่อเทียบกับแบบจำลองอื่น และอย่างสุดท้ายคือการสรุปความ WangchanX-LLaMa3–8b-Full, WangchanX-LLaMa3–8b-Full (NC) และ LLaMa3.1–8b-Instruct เป็น 3 แบบจำลองที่ทำงานได้ใกล้เคียงกับข้อความสรุปอ้างอิงมากที่สุด
โดยภาพรวมจะเห็นได้ว่า LLaMa3–8b ที่ผ่าน Fine-tuning Pipeline ของ WangchanX สามารถให้ประสิทธิภาพได้ดีที่สุดบนการทดสอบการเขียน (NLG) ของ SEACrowd Benchmark
อนาคตของการวัดผล LLM
อย่างไรก็ตาม แม้ว่าการทำ Automatic Evaluation ผ่านการใช้ Heuristic Metric อย่าง F1-Score หรือ ROUGE-L ที่พิจารณาคำของคำตอบ เทีัยบกับเฉลยจะเป็นวิธีที่ให้ผลได้รวดเร็ว แต่การวัดผลในระบบ QA ยุคหลังเริ่มมีการถกเถียงกันในเรื่องข้อจำกัดของของ Metric ว่าสามารถวัดผลได้อย่างเที่ยงตรงไหม เช่น หากคำตอบเป็น “4” แต่เฉลยเป็น “สี่” หรือ “Four” เราจะมีวิธีการวัดการกับประเด็นดังกล่าวอย่างไร
เนื่องจากเหตุผลที่กล่าวทำให้มีงานอย่าง GPT-Eval [5] มาช่วยจัดการเรื่องความถูกต้องของคำ และวัดผลเทียบกับมนุษย์พบว่า Metric GPT-Eval มีความใกล้เคียงกับมนุษย์ที่สุด เทียบกับ Metrics อื่นในการประเมินผลด้าน QA นอกจากนี้ในการวัดผลของระบบสนทนาแบบโต้ตอบ จะมี MT-Bench ที่วัดผลความสามารถในการโต้ตอบรูปแบบ Chat ของ LLM ชนิดต่างๆโดย GPT4 [6]
ในปัจจุบันจะเห็นได้ว่า การวัดผล LLM ในภาษาไทย ยังมีพื้นที่ให้ร่วมกันพัฒนาเพิ่มเติม เนื่องจากข้อจำกัดด้านชุดข้อมูลทดสอบ หรือราคาของการทดสอบด้วย GPT เลยอยากชวนเพื่อนๆมาร่วมกัน Contribute ชุดข้อมูลสาธารณะในการวัดผลไปกับ SEACrowd ผ่านลิงค์ด้านล่าง
บทความนี้เรานำเสนอ SEACrowd Benchmark ในภาษาไทยที่รองรับการวัดผลความสามารถในการอ่านและการเขียนของ LLM ในปัจจุบัน จึงพบว่าแบบจำลอง LLM แต่ละตัวมีความถนัดในด้านที่ไม่เหมือนกัน เช่น Typhoon ทำได้ดีใน NLU ส่วน WangchanX ทำได้ดีใน NLG นอกจากนี้ เรายังพูดถึงข้อจำกัด และความท้าทายในการวัดผล LLM ภาษาไทยในปัจจุบัน และสุดท้ายเราอยากชวนเพื่อนๆมา Contribute ชุดข้อมูลสาธารณะไปด้วยกัน 🙂
References
[1] H. Lovenia et al., SEACrowd: A Multilingual Multimodal Data Hub and Benchmark Suite for Southeast Asian Languages. 2024. [Online]. Available: https://arxiv.org/abs/2406.10118
[2] M. Artetxe, S. Ruder, and D. Yogatama, “On the Cross-lingual Transferability of Monolingual Representations,” CoRR, vol. abs/1910.11856, 2019, [Online]. Available: http://arxiv.org/abs/1910.11856
[3] W. Phatthiyaphaibun et al., WangchanLion and WangchanX MRC Eval. 2024.
[4] H. W. Chung et al., Scaling Instruction-Finetuned Language Models. 2022. [Online]. Available: https://arxiv.org/abs/2210.11416
[5] Kamalloo, E., Dziri, N., Clarke, C., & Rafiei, D. (2023). Evaluating Open-Domain Question Answering in the Era of Large Language Models. In A. Rogers, J. Boyd-Graber, & N. Okazaki (Eds.), Proceedings of the 61st Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers) (pp. 5591–5606). Association for Computational Linguistics. https://doi.org/10.18653/v1/2023.acl-long.307
[6] Zheng, L., Chiang, W.-L., Sheng, Y., Zhuang, S., Wu, Z., Zhuang, Y., Lin, Z., Li, Z., Li, D., Xing, E., Zhang, H., Gonzalez, J. E., & Stoica, I. (2023). Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena. Thirty-Seventh Conference on Neural Information Processing Systems Datasets and Benchmarks Track. https://openreview.net/forum?id=uccHPGDlao