วันนี้เราจะพามาเจาะข้อมูล ChatGPT
วันนี้เราจะพามาเจาะข้อมูล เบื้องลืก เบื้องหลัง ความสำเร็จ ของ ChatGPT ที่เป็น เบื้องหลัง จริงๆของ
ChatGPT เป็น Chatbot AI ที่มีบริษัท OpenAI เป็นบริษัทแม่ และ มี Elon Musk เป็นอดีตผู้ร่วมก่อตั้ง และ มี Sam Altman เป็น CEO คนปัจจุบัน เปิดตัวเป็นต้นแบบในวันที่ 30 พฤศจิกายน 2022 สร้างขึ้นบนโมเดลภาษาขนาดใหญ่พื้นฐานของ ChatGPT เป็นโมเดลภาษาในตระกูล Generative Pre-trained Transformers (GPT) (แบบจำลองเครือข่ายประสาทที่ใช้สถาปัตยกรรม Transformer) และจัดอยู่ในประเภท โมเดลภาษาขนาดใหญ่ (Large Language Model), ใช้โครงสร้างพื้นฐาน Supercomputing ของ Microsoft Azure ซึ่งขับเคลื่อนโดย GPU ของ Nvidia ซึ่ง Microsoft สร้างขึ้นสำหรับ OpenAI โดยเฉพาะ และมีรายงานว่ามีค่าใช้จ่าย "หลายร้อยล้านดอลลาร์" กระบวนการฝึกสอน ChatGPT มีอยู่ 2 แบบคือ Supervised Learning (การเรียนรู้แบบมีผู้สอน) และ Reinforcement Learning (การเรียนรู้บางสิ่งบางอย่างด้วยการลองผิดลองถูก หรือการเรียนรู้ผ่านการให้รางวัล) และเราจะมาขยายใน 2 ส่วนนี้กันว่ามันทำงานยังไงบ้าง เรามาดูกันเลย
Supervised Learning หรือการเรียนรู้แบบมีผู้สอน คือการทำให้คอมพิวเตอร์สามารถหาคำตอบของปัญหาได้ด้วยตัวเอง หลังจากเรียนรู้จากชุดข้อมูลตัวอย่างไปแล้วระยะหนึ่ง เป็นศาสตร์แขนงหนึ่งใน AI หรือปัญญาประดิษฐ์ ภายใต้หัวข้อ Machine Learning ที่กำลังเป็นที่นิยมในการศึกษาและวิจัยกันในปัจจุบัน เนื่องจากทำได้ง่าย ต้นทุนต่ำ เพียงใช้คอมพิวเตอร์เครื่องเดียวก็สามารถศึกษา และทำงานจนเห็นผลได้เลย จริงๆ แล้วศาสตร์แขนงนี้มีมานานมากแล้วตั้งแต่ปี 1959 ถูกเสนอโดย Arthur Samuel แต่ด้วยเทคโนโลยีหรือระบบประมวลผลในตอนนั้นยังล้าสมัยอยู่ ทำให้ยังไม่เป็นที่นิยม ผิดกับในปัจจุบัน หากจะให้เปรียบเทียบก็เหมือนกับการสอนเด็ก ลองนึกภาพว่าเราชี้ภาพสัตว์ให้เด็กที่ไม่เคยเห็นดู แล้วบอกว่าสัตว์ตัวไหนคือแมว ตัวไหนไม่ใช่แมว ชี้ไป 2–3 วัน ให้เด็กได้เจอสัตว์หลายๆ ประเภท จนเด็กเริ่มเข้าใจ วันที่ 4–5 เราอาจจะลองเอาแมวตัวที่เด็กไม่เคยเห็นมาให้ดูสัก 10 ตัว รวมกับสัตว์อื่นๆ อีกจำนวนหนึ่ง โดยคราวนี้เราไม่บอกว่าสัตว์ตัวไหนคือแมว ตัวไหนไม่ใช่แมว ถ้าเด็กตอบถูกก็แปลว่าการสอนของเรามีประสิทธิภาพ ในทำนองเดียวกัน หากเราสอนเด็กไปเลยว่า สัตว์ที่เด็กเห็นนั้นเป็น แมว หมา หรือหมู เด็กก็อาจจะตอบได้มากกว่าแค่ แมว หรือไม่ใช่แมว วิธีนี้อาจจะต้องใช้กระบวนการสอนที่มีความซับซ้อนมากขึ้นไปอีก เราเรียกวิธีการสอนเด็กทั้ง 2 แบบนี้ว่า Classification ซึ่งจะได้ผลลัพธ์ตามภาพด้านล่างครับ วันถัดมา เราเรียกเด็กอีกคนมาสอนเรื่องราคาเพชร (diamond) เราหยิบเพชรอันนึง ขนาด 2 กะรัต สีเหลือง ระดับความสะอาด VS2 แล้วบอกเด็กว่า เนี่ยราคา 2 ล้านบาท หยิบอีกเม็ดขนาด 3 กะรัต สีฟ้า ระดับความสะอาด VS1 แล้วบอกเด็ก 3 ล้านบาท ทำแบบนี้ไปหลายๆ เม็ดจนเด็กเกิด model หรือ logic ในการคาดเดาราคาของเพชรขึ้นในหัว จนวันนึงสุ่มหยิบเพชรเม็ดใหม่ขึ้นมา ก็อาจให้เด็กคาดเดาราคาได้เลย เราเรียกกระบวนการสอนเด็กแบบนี้ว่า Regression จะเห็นว่า จริงๆ แล้วเราไม่สามารถที่จะสอนเด็ก หรือคนจริงๆ ให้คิด model หรือ logic ในการคาดเดาราคาของเพชรแบบย่อหน้าที่แล้วได้เลย นี่เป็นเพียงตัวอย่างที่ทำให้เห็นว่า Supervised Learning มีขีดความสามารถมากกว่ามนุษย์ที่สร้างมันขึ้น การใช้ Supervised Learning มีรูปแบบการเขียนโปรแกรมที่แตกต่างออกไป ในช่วงแรก เราเขียนโปรแกรมให้คอมพิวเตอร์สร้าง model หรือ logic ของโปรแกรมขึ้นมาเองจาก input (ภาพสัตว์) และ output (คำตอบ) ที่เราต้องการเช่นเดียวกับการสอนเด็ก จากนั้นเราจึงนำ model มาใช้ ดังนั้นยิ่งเรามี input และ output ที่มีความหลากหลายและจำนวนมากเท่าไร เราก็มี“โอกาส”ได้ model ที่มีความแม่นยำมากขึ้นเท่านั้นครับ กระบวนการสร้าง model แบบนี้เราเรียกว่าการ “เทรน” ซึ่งสามารถกินเวลาได้ตั้งแต่หลักวินาทีจนถึงหลายๆ วัน แล้วแต่ความซับซ้อนของโจทย์ที่เราต้องการแก้ และพลังในการประมวลผลของเครื่องคอมพิวเตอร์ที่เราใช้เทรน จะเห็นว่ากระบวนการทำ Supervised Learning นั้นมีความซับซ้อนมากกว่าการเขียนโปรแกรมแบบดั้งเดิม แต่ข้อดีของมันก็คือสามารถทำสิ่งที่เป็นไปไม่ได้ให้เป็นไปได้ ในปัจจุบันมีการนำ AI model แบบ Supervised Learning นี้ไปประยุกต์ใช้แก้ปัญหาหลากหลายรูปแบบมากๆ เช่น Speech Recognition ใน application ผู้ช่วยส่วนตัวในมือถือต่างๆ เช่น Siri มีการนำ AI ไปใช้ในการรับรู้คำพูดของเรา Style Transfer บางคนอาจเคยได้ลองใช้ใน application คือการนำเอาเทคนิคในการวาดภาพ หรือคุณลักษณะเด่นในภาพๆ นึง ไปใช้กับภาพอื่นๆ ที่เราต้องการ เช่น นำเอาเทคนิคการใช้สีน้ำมัน ในภาพ Mona Lisa มาใช้กับภาพอื่นๆ ทำให้เหมือนกับ Leonardo Da Vinci มาเป็นคนวาดเองเลยทีเดียว Image Classification ใน application ทางการแพทย์ มีการใช้ AI เพื่อตรวจสอบหรือสกรีนผู้ป่วย เช่น ตรวจสอบมะเร็งผิวหนังจากภาพถ่าย เป็นต้น Optical Character Recognition (OCR) คือการแปลงภาพเอกสารให้เป็นไฟล์เอกสารที่สามารถแก้ไขได้ หรือบางคนอาจจะเคยเห็น application บนมือถือ ที่สามารถแปล ป้ายบอกทางจากภาษานึงเป็นอีกภาษานึงได้แบบ real-time Face Detection เป็นสิ่งที่พบเห็นได้ทั่วไป เช่น เวลาเราโพสรูปภาพลงใน facebook เราจะเห็นกรอบสี่เหลี่ยมล้อมรอบใบหน้าของคนในภาพ เพื่อให้เรา tag
Reinforcement Learning การเรียนรู้สิ่งต่างๆจากการลองผิดลองถูก เช่น เด็กคนหนึ่งต้องการที่จะเรียนรู้การทำให้ตัวเองอบอุ่นด้วยการใช้เตาผิง ดังนั้น สิ่งที่ต้องสนใจหลักๆเลยก็คือ เด็ก และ เตาผิง โดยเด็กจะเรียนรู้ด้วยการลองขยับเข้าไปใกล้เตาผิงดู แล้วผลลัพธ์ก็คือ ทำให้เด็กอบอุ่นขึ้น เด็กจึงรู้ว่าการเข้าใกล้เตาผิงทำให้ได้ผลลัพธ์ที่ดี แต่เมื่อเด็กเข้าใกล้มากเกินไป ส่งผลให้เด็กรู้สึกร้อนมากเกินไป ทำให้เด็กเรียนรู้ว่าการเข้าใกล้เตาผิงมากเกินไป ให้ผลลัพธ์ที่ไม่ดี “ ทำให้สุดท้ายแล้วเด็กเริ่มเรียนรู้ว่าการที่เราอยู่ใกล้ไฟ มันทำให้อบอุ่น แต่ถ้าใกล้มากเกินไปมันจะเผา ซึ่งการเรียนรู้แบบนี้ก็เป็นการเรียนรู้อย่างง่ายของมนุษย์เรา “ และ Reinforcement learning ซึ่งต่อจากนี้จะเรียกสั้นๆว่า RL ก็ใช้หลักการเดียวกันในการทำให้คอมพิวเตอร์ของเรามีการเรียนรู้จากการลองผิดลองถูก จะเห็นได้จากข่าวเด่นๆเกี่ยวกับ AI ที่เอาชนะแชมป์ Go ของโลก ในปี 2016 มาแล้ว หรือจะเป็น AI ที่เล่นเกมส์ Dota 2 ในปี 2017 และ Dota2 แบบ 5vs5 ในปี 2018 ซึ่ง AI พวกนี้ก็มีเบื้องหลังเป็น RL ทั้งนั้นเลย สรุป Supervised Learning คือเป็นส่วน Data และ Output เพื่อให้คอมพิวเตอร์หาสมการออกมา ซึ่งสมการที่ได้นั่นแหละก็คือระบบที่คอมพิวเตอร์ไว้ใช้เมื่อมีข้อมูลใหม่เข้าก็จะทำนายผลลัพธ์ที่จะเกิดขึ้นได้ Reinforcement Learning คือการเรียนรู้จากสิ่งแวดล้อมนั่นคือคู่แข่งแล้วนำเอามาปรับใช้เป็นกลยุทธ์เพื่อให้ได้มาซึ่งชัยชนะ
แหล่งที่มา
https://en.wikipedia.org/wiki/ChatGPT
https://aws.amazon.com/th/what-is/gpt/?nc1=f_ls
https://digi.data.go.th/blog/supervised-unsupervised-reinforcement-learning/