Transformer – โครงสร้างพื้นฐานของ Generative AI

Transformer – โครงสร้างพื้นฐานของ Generative AI

17 มิถุนายน 2567

ในปัจจุบันไม่สามารถปฏิเสธได้เลยว่ากระแสของ Generative AI กำลังมาแรงมาก ๆ ไม่ว่าจะเป็นโมเดลสำหรับสร้างรูปภาพเช่น Stable Diffusion หรือ Dall-E หรือว่าโมเดลทางภาษาที่สามารถรับคำสั่งหรือคำถามของผู้ใช้ (prompt) แล้วสามารถสร้างคำตอบขึ้นมาตอบโต้กับผู้ใช้ได้ราวกับเป็นคนจริง ๆ ตัวอย่างเช่น ChatGPT ของ OpenAI หรือว่า Gemini ของ Google โมเดลต่าง ๆ เหล่านี้มีโครงสร้างและหลักการที่ซับซ้อน แต่ส่วนใหญ่เป็นการพัฒนาต่อจากโมเดล Transformer ทั้งนั้น แม้แต่โมเดล ChatGPT ซึ่งย่อมาจาก Generative Pretrained Transformer ก็เป็นการพัฒนาต่อจากโมเดล Transformer ดังนั้นในบทความนี้เราจะมาดูกันว่า Transformer นั้นมีหลักการทำงานอย่างไร

รูปที่ 1 ตัวอย่างภาพที่สร้างโดยโมเดล Midjourney (Link)

Transformer เป็นโมเดลที่พัฒนาโดยบริษัท Google ถูกนำเสนอครั้งแรกในปี 2017 ในบทความงานวิจัยชื่อ Attention is All You Need โมเดล Transformer ทำงานโดยการรับ input sequence ที่มีลักษณะเป็นลำดับที่มีความยาว เช่นข้อความต่าง ๆ จากนั้น โมเดลจะหาความสัมพันธ์ระหว่างตัวแปรต่าง ๆ ที่ได้รับเข้ามาและใช้ความสัมพันธ์นั้นในการสร้าง output sequence ออกมาเป็นคำตอบ โดยคำตอบจะมีลักษณะเป็นลำดับที่มีความยาวเช่นกัน ตัวอย่างเช่น input อาจเป็นคำถามว่าท้องฟ้ามีสีอะไร โมเดลที่ผ่านการฝึกมาแล้วจะสามารถหาความสัมพันธ์ระหว่างคำว่าท้องฟ้า สี และสีฟ้า จากนั้นจึงตอบกลับมาว่าท้องฟ้ามีสีฟ้า

ความจริงแล้วโมเดลที่ทำงานโดยการรับ input sequence เข้ามาและสร้าง output sequence โดยใช้บริบทความสัมพันธ์จาก input sequence นั้นมีมาก่อนหน้านี้แล้ว เช่นโมเดล seq2seq โครงสร้างของโมเดล seq2seq ประกอบไปด้วยส่วนประกอบหลัก 2 ส่วนคือ Encoder และ Decoder โดย Encoder มีหน้าที่รับ input sequence เข้ามา จากนั้นแปลง input sequence ให้กลายเป็นตัวแปรทางคณิตศาสตร์ที่โมเดลสามารถเข้าใจและทำการคำนวณต่อไปได้ จากนั้น Decoder จึงนำตัวแปรต่าง ๆ เหล่านี้มาทำการคำนวณหาความสัมพันธ์และสร้าง output sequence ออกมาเป็นคำตอบ โดยโครงสร้าง Encoder-Decoder นี้จะเห็นได้ในรูปที่ 2

รูปที่ 2 โมเดล seq2seq ประกอบด้วย encoder และ decoder (Link)

            ในรูปที่ 2 จะเห็นได้ว่าส่วน Encoder ทำการแปลงประโยค “She is eating a green apple” ให้กลายเป็น Context Vector จากนั้นจึงส่ง Context Vector ให้กับ Decoder เพื่อใช้ในการสร้าง Output sequence ออกมาเป็นภาษาจีน การทำงานแบบนี้มีข้อจำกัดคือ Encoder จะต้องแปลงข้อมูลทั้งหมดที่อยู่ใน input sequence ให้กลายเป็นเวกเตอร์เพียงแค่เวกเตอร์เดียวเท่านั้น และนอกจากนี้ คำท้าย ๆ ของ input sequence ยังมีผลต่อเวกเตอร์มากกว่าคำต้น ๆ อีกด้วย เมื่อคำต้น ๆ ไม่ค่อยมีผลกับเวกเตอร์ ส่วน Decoder จึงไม่ค่อยให้ความสำคัญ ทำให้ประสิทธิภาพของโมเดลด้อยลงเมื่อ input sequence มีความยาวมาก โมเดล Transformer จึงมีการคิดค้นการคำนวณแบบใหม่ขึ้นมาแก้ปัญหานี้ โดยเรียกการคำนวณใหม่นี้ว่า Attention Mechanism

รูปที่ 3 โครงสร้างของโมเดล Transformer

จากรูปโครงสร้างโมเดล Transformer จะเห็นได้ว่า Transformer ประกอบไปด้วย 2 ส่วนคือ Encoder ทางซ้าย และ Decoder ทางขวา เช่นเดียวกับโมเดล seq2seq แต่มีสิ่งที่เพิ่มมาคือกลไก Attention หรือในรูปคือ Multi-Head Attention กลไกนี้จะคำนวณค่าความสัมพันธ์ระหว่างคำใน output sequence ทุกคำ กับคำใน input sequence ทุกคำ จึงทำให้โมเดลสามารถรับข้อมูลจาก input sequence ทั้งหมดได้พร้อมกัน โมเดล Transformer จึงสามารถใช้ข้อมูลทั้งหมดพร้อมกันในการคำนวณได้ โมเดลจึงมีประสิทธิภาพในการประมวลผลข้อความที่มีความยาว เช่นหน้าเว็บไซต์ทั้งหน้า หรือในกรณีของโมเดลที่มีการสนทนาตอบโต้กับผู้ใช้ โมเดลจะสามารถใช้ข้อความก่อนหน้าเป็นบริบทในการสร้างคำตอบต่อ ๆ ไปได้

รูปที่ 4 ตัวอย่างค่า Attention จากการแปลภาษา (Link)

              ตัวอย่างในรูปที่ 4 เป็นตัวอย่างการแปลภาษาอังกฤษเป็นฝรั่งเศส แถบสีที่อยู่ใต้คำภาษาฝรั่งเศสคือค่า Attention ที่บ่งบอกว่าคำนั้นมีความสัมพันธ์กับคำภาษาอังกฤษใน input sequence มากแค่ไหน ยิ่งสีเข้มก็ยิ่งมีความสัมพันธ์มาก โดยจะเห็นได้ว่า “Comment” มีความสัมพันธ์กับ “How”, “se” มีความสัมพันธ์กับ “How” และ “was”, “passe” มีความสัมพันธ์กับ “was”, “ta” มีความสัมพันธ์กับ “your”, และ “journée” มีความสัมพันธ์กับ “day”

รูปที่ 5 กลไกการคำนวณ Attention

            กลไก Attention ประกอบไปด้วยส่วนประกอบ 3 ส่วนได้แก่ Query (Q) เป็นตัวแทนของบริบท หรือสิ่งที่โมเดลกำลังโฟกัสอยู่ในปัจจุบัน Key (K) เป็นตัวแทนส่วนประกอบของข้อมูลที่โมเดลรับเข้ามา และ Value (V) เป็นตัวแทนน้ำหนักที่โมเดลให้กับส่วนประกอบต่าง ๆ ของข้อมูลที่ได้รับเข้ามา โดยโมเดลจะนำทั้งสามส่วนประกอบ Q, K, V มาทำการคำนวณทางคณิตศาสตร์ตามรูปที่ 5 และได้ผลลัพธ์ออกมาเป็นค่าความสัมพันธ์ระหว่าง Q สิ่งที่โมเดลกำลังโฟกัสอยู่ และ K ส่วนประกอบต่าง ๆ ของข้อมูลที่รับเข้ามา สำหรับผู้ที่สนใจรายละเอียดการคำนวณสามารถอ่านต่อได้ในบทความงานวิจัยต้นฉบับชื่อ Attention Is All You Need หรือบทความ Wikipedia ชื่อ Attention (machine learning) นอกจากการคำนวณ Attention แล้ว ในโมเดล Transformer ได้พัฒนาต่อเป็นกลไก Multi-Head Attention เป็นการคำนวณ Attention หลายครั้งโดยใช้ค่าน้ำหนักของโมเดลที่ต่างกัน ทำให้โมเดลสามารถค้นพบความสัมพันธ์ระหว่างแต่ละคำใน input sequence ได้ในหลายมุมมอง ตัวอย่างรูปที่ 7 แสดงความสัมพันธ์ของคำว่า Its กับคำอื่น ๆ ใน 2 มุมมอง

รูปที่ 6 ค่า Attention ที่คำนวณได้จะเป็นความสัมพันธ์ระหว่างคำต่าง ๆ
รูปที่ 7 ตัวอย่าง Multi-Head Attention ของคำว่า Its แสดงความสัมพันธ์ใน 2 มุมมอง

            กลไก Attention เป็นกลไกที่ไม่ซับซ้อนมาก แต่สามารถแก้ปัญหาของโมเดลแบบดั้งเดิมที่ลืมข้อมูลก่อนหน้านี้ให้สามารถจำได้และนำไปใช้ในการคำนวณต่อไป เป็นสิ่งที่ยกระดับโมเดล Transformer ให้ต่างจากโมเดลแบบดั้งเดิมให้เป็นโมเดลแบบใหม่ มีความใกล้เคียงกับความคิดของมนุษย์มากขึ้น และเป็นรากฐานของโมเดลประเภท Generative AI ที่บริษัทต่าง ๆ นำไปต่อยอดจนสามารถทำงานประเภทสร้างรูปภาพใหม่ วิดิโอใหม่ หรือตอบโต้กับผู้ใช้ได้ แต่อย่างไรก็ตาม Generative AI ยังคงมีข้อจำกัดอยู่ เช่นต้องใช้ข้อมูลจำนวนมหาศาลในการฝึกและสร้างขึ้น ต้องใช้คอมพิวเตอร์ประสิทธิภาพสูงในการใช้งานตัวโมเดลซึ่งทำให้มีค่าใช้จ่ายในการใช้งาน ปัจจุบันมีหลายบริษัทกำลังพยายามย่อขนาดของโมเดลลงให้สามารถใช้งานกับอุปกรณ์ทั่วไปได้ เช่นโทรศัพท์ Samsung รุ่นใหม่ก็เริ่มมีการนำ Generative AI มาใช้งานในการตัดต่อรูปภาพ แปลงเสียงพูดเป็นตัวหนังสือ หรือแปลภาษาแล้ว หากในอนาคตสามารถย่อส่วนโมเดลให้ใช้ในอุปกรณ์ขนาดเล็กได้จริง เราจะได้เห็นโมเดล Generative AI ใช้งานอย่างแพร่หลายมากกว่านี้อย่างแน่นอน

บทความโดย ไพโรจน์ เจริญศรี
ตรวจทานและปรับปรุงโดย วีรภัทร สาธิตคณิตกุล

อ้างอิง

แบ่งปันบทความ

กลุ่มเนื้อหา

แท็กยอดนิยม

แจ้งเรื่องที่อยากอ่าน

คุณสามารถแจ้งเรื่องที่อยากอ่านให้เราทราบได้ !
และเราจะนำไปพัฒนาบทความให้มีเนื้อหาที่น่าสนใจมากขึ้น

ไอคอน PDPA

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ “นโยบายคุ้กกี้” และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ “ตั้งค่า”

ตั้งค่าความเป็นส่วนตัว

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
จัดการความเป็นส่วนตัว
  • คุกกี้ที่มีความจำเป็น (Strictly Necessary Cookies)
    เปิดใช้งานตลอด

    คุกกี้ประเภทนี้มีความจำเป็นต่อการให้บริการเว็บไซต์ของ สำนักงานคณะกรรมการคุ้มครองข้อมูลส่วนบุคคล เพื่อให้ท่านสามารถเข้าใช้งานในส่วนต่าง ๆ ของเว็บไซต์ได้ รวมถึงช่วยจดจำข้อมูลที่ท่านเคยให้ไว้ผ่านเว็บไซต์ การปิดการใช้งานคุกกี้ประเภทนี้จะส่งผลให้ท่านไม่สามารถใช้บริการในสาระสำคัญของ สำนักงานคณะกรรมการคุ้มครองข้อมูลส่วนบุคคล ซึ่งจำเป็นต้องเรียกใช้คุกกี้ได้
    รายละเอียดคุกกี้

  • คุกกี้เพื่อการวิเคราะห์และประเมินผลการใช้งาน (Performance Cookies)

    คุกกี้ประเภทนี้ช่วยให้ BDI ทราบถึงการปฏิสัมพันธ์ของผู้ใช้งานในการใช้บริการเว็บไซต์ของ BDI รวมถึงหน้าเพจหรือพื้นที่ใดของเว็บไซต์ที่ได้รับความนิยม ตลอดจนการวิเคราะห์ข้อมูลด้านอื่น ๆ BDI ยังใช้ข้อมูลนี้เพื่อการปรับปรุงการทำงานของเว็บไซต์ และเพื่อเข้าใจพฤติกรรมของผู้ใช้งานมากขึ้น ถึงแม้ว่า ข้อมูลที่คุกกี้นี้เก็บรวบรวมจะเป็นข้อมูลที่ไม่สามารถระบุตัวตนได้ และนำมาใช้วิเคราะห์ทางสถิติเท่านั้น การปิดการใช้งานคุกกี้ประเภทนี้จะส่งผลให้ BDI ไม่สามารถทราบปริมาณผู้เข้าเยี่ยมชมเว็บไซต์ และไม่สามารถประเมินคุณภาพการให้บริการได้

  • คุกกี้เพื่อการใช้งานเว็บไซต์ (Functional Cookies)

    คุกกี้ประเภทนี้จะช่วยให้เว็บไซต์ของ BDI จดจำตัวเลือกต่าง ๆ ที่ท่านได้ตั้งค่าไว้และช่วยให้เว็บไซต์ส่งมอบคุณสมบัติและเนื้อหาเพิ่มเติมให้ตรงกับการใช้งานของท่านได้ เช่น ช่วยจดจำชื่อบัญชีผู้ใช้งานของท่าน หรือจดจำการเปลี่ยนแปลงการตั้งค่าขนาดฟอนต์หรือการตั้งค่าต่าง ๆ ของหน้าเพจซึ่งท่านสามารถปรับแต่งได้ การปิดการใช้งานคุกกี้ประเภทนี้อาจส่งผลให้เว็บไซต์ไม่สามารถทำงานได้อย่างสมบูรณ์

  • คุกกี้เพื่อการโฆษณาไปยังกลุ่มเป้าหมาย (Targeting Cookies)

    คุกกี้ประเภทนี้เป็นคุกกี้ที่เกิดจากการเชื่อมโยงเว็บไซต์ของบุคคลที่สาม ซึ่งเก็บข้อมูลการเข้าใช้งานและเว็บไซต์ที่ท่านได้เข้าเยี่ยมชม เพื่อนำเสนอสินค้าหรือบริการบนเว็บไซต์อื่นที่ไม่ใช่เว็บไซต์ของ BDI ทั้งนี้ หากท่านปิดการใช้งานคุกกี้ประเภทนี้จะไม่ส่งผลต่อการใช้งานเว็บไซต์ของ BDI แต่จะส่งผลให้การนำเสนอสินค้าหรือบริการบนเว็บไซต์อื่น ๆ ไม่สอดคล้องกับความสนใจของท่าน

บันทึกการตั้งค่า