ทรานส์ฟอร์เมอร์ (transformer) เป็นแบบจำลองการเรียนรู้เชิงลึก ที่เผยแพร่โดยนักวิจัยของกูเกิลเมื่อวันที่ 12 มิถุนายน 2017 มีการนำมาประยุกต์ใช้อย่างกว้างขวาง โดยเฉพาะในสาขาการประมวลภาษาธรรมชาติ
เช่นเดียวกับ โครงข่ายประสาทแบบเวียนซ้ำ (RNN) สถาปัตยกรรมทรานส์ฟอร์เมอร์ได้รับการออกแบบมาเพื่อจัดการข้อมูล เช่น ภาษาธรรมชาติ เพื่อดำเนินการต่าง ๆ เช่น การแปล และ การสรุปความอัตโนมัติ แต่ในกรณีของทรานส์ฟอร์เมอร์นั้น สามารถทำการประมวลข้อมูลทั้งหมดในอนุกรมเวลาพร้อมกันโดยไม่ต้องตามลำดับได้ ตัวอย่างเช่น หากข้อมูลที่ป้อนเป็นประโยคภาษาธรรมชาติ ก็ไม่จำเป็นต้องประมวลผลตั้งแต่ต้นจนจบประโยค ด้วยเหตุนี้ทรานส์ฟอร์เมอร์จึงยอมให้มีได้มากกว่าโครงข่ายประสาทแบบเวียนซ้ำ ซึ่งทำให้ช่วยลดเวลาในการฝึกแบบจำลองลงไปได้มาก
นับตั้งแต่ได้รับการเผยแพร่ แบบจำลองทรานส์ฟอร์เมอร์ได้รับการนำมาใช้งานอย่างกว้างขวางเพื่อแก้ไขปัญหามากมายในการประมวลผลภาษาธรรมชาติ โดยแทนที่แบบจำลองโครงข่ายประสาทแบบเวียนซ้ำแบบเก่า เช่น หน่วยความจำระยะสั้นแบบยาว (LSTM) แบบจำลองทรานส์ฟอร์เมอร์มีส่วนช่วยให้สามารถทำการคำนวณแบบขนานระหว่างการฝึก ช่วยให้สามารถฝึกชุดข้อมูลขนาดใหญ่ได้ ซึ่งนำไปสู่การพัฒนาระบบฝึกล่วงหน้า เช่น (Bidirectional Encoder Representations from Transformers) และ GPT (Generative Pre-trained Transformer) แบบจำลองได้รับการฝึกโดยชุดข้อมูลภาษาทั่วไปขนาดใหญ่เพื่อสร้างแบบจำลองรากฐาน และนำไปทำการปรับละเอียดให้เข้ากับงานภาษาเฉพาะได้
การออกแบบพื้นฐาน
เช่นเดียวกับแบบจำลองที่ประดิษฐ์ขึ้นก่อนหน้านี้ ทรานส์ฟอร์เมอร์เป็นโครงสร้างที่ประกอบไปด้วยตัวเข้ารหัสและตัวถอดรหัส ตัวเข้ารหัสประกอบด้วยชุดของชั้นเข้ารหัสที่ประมวลผลค่าป้อนเข้าซ้ำ ๆ กัน และตัวถอดรหัสประกอบด้วยชุดของชั้นถอดรหัสที่ทำสิ่งเดียวกันกับข้อมูลขาออกจากตัวเข้ารหัส
หน้าที่ของชั้นเข้ารหัสแต่ละชั้นคือการประมวลผลข้อมูลขาเข้าและสร้างการเข้ารหัส รวมถึงข้อมูลเกี่ยวกับส่วนของข้อมูลขาเข้าที่เกี่ยวข้องกัน ชั้นเข้ารหัสแต่ละชั้นจะส่งผ่านลำดับของการเข้ารหัสแล้วใช้เป็นค่าขาเข้าป้อนไปยังชั้นตัวเข้ารหัสถัดไป
แต่ละชั้นตัวถอดรหัสทำสิ่งที่ตรงกันข้าม: โดยรับข้อมูลจากตัวเข้ารหัสทั้งหมดมา แล้วนำมาจัดการประมวลผล ใช้ข้อมูลบริบทที่ฝังไว้เพื่อสร้างลำดับขาออก
เพื่อให้บรรลุเป้าหมายนี้ แต่ละชั้นของตัวเข้ารหัสและตัวถอดรหัสจะใช้กลไกความใส่ใจ โดยกลไกความใส่ใจจะกำหนดน้ำหนักแต่ละขาเข้าตามความสัมพันธ์กับข้อมูลขาเข้าอื่น ๆ ทั้งหมด แล้วดึงข้อมูล สร้างข้อมูลขาออก ชั้นถอดรหัสแต่ละชั้นมีกลไกความใส่ใจเพื่อรับข้อมูลจากชั้นถอดรหัสก่อนหน้า ก่อนที่จะรับข้อมูลจากชั้นเข้ารหัส ทั้งชั้นเข้ารหัสและชั้นถอดรหัสประกอบด้วยโครงข่ายประสาทเทียมแบบป้อนไปข้างหน้าเพื่อประมวลผลค่าขาออกเพิ่มเติม
หน่วยความใส่ใจ
ส่วนประกอบพื้นฐานของทรานส์ฟอร์เมอร์ คือหน่วยความใส่ใจ ซึ่งผ่านการคำนวณโดยผลคูณจุดแล้วปรับสเกล (Scaled dot-product attention unit) เมื่อข้อความถูกป้อนเข้าให้กับแบบจำลองทรานส์ฟอร์เมอร์ ค่าน้ำหนักความใส่ใจจะถูกคำนวณจากโทเค็นทั้งหมดพร้อมกัน หน่วยความใส่ใจจะสร้างการฝังโทเค็นทุกรายการภายในบริบท ซึ่งไม่เพียงแต่รวมถึงข้อมูลเกี่ยวกับตัวโทเค็นนั้นเท่านั้น แต่ยังรวมถึงความเชื่อมโยง (ถ่วงน้ำหนักด้วยน้ำหนักความใส่ใจ) กับโทเค็นอื่น ๆ ที่เกี่ยวข้องด้วย
แบบจำลองทรานส์ฟอร์เมอร์ จะทำการเรียนรู้ 3 อย่างคือ เมทริกซ์น้ำหนักเควียรี , เมทริกซ์น้ำหนักคีย์ และ เมทริกซ์น้ำหนักค่า สำหรับแต่ละหน่วยความใส่ใจ เมื่อคูณค่าป้อนเข้า จากชั้นการฝังคำด้วยเมทริกซ์น้ำหนักสำหรับโทเค็นที่ แต่ละตัวแล้ว จะได้เวกเตอร์เควียรี , เวกเตอร์คีย์ , เวกเตอร์ค่า น้ำหนักความใส่ใจ เป็นผลคูณจุดของเวกเตอร์เควียรี กับเวกเตอร์คีย์ แล้วหารด้วยรากที่สองของจำนวนมิติ เพื่อรักษาเสถียรภาพของความชัน จากนั้นผลรวมน้ำหนักจะถูกทำให้เป็น 1 โดยใช้ฟังก์ชันซอฟต์แมกซ์
พารามิเตอร์น้ำหนักเควียรี และพารามิเตอร์น้ำหนักคีย์ เป็นเมทริกซ์ที่แตกต่างกัน และอาจไม่จำเป็นต้องสมมาตร นั่นคือแม้โทเค็นตัวที่ จะมุ่งความใส่ใจไปที่โทเค็นตัวที่ (นั่นคือ มีขนาดใหญ่) แต่โทเคนตัวที่ ก็อาจไม่จำเป็นต้องให้ความใส่ใจกับโทเคนตัวที่ (นั่นคือ ไม่จำเป็นต้องใหญ่โต) ค่าขาออกของหน่วยความใส่ใจที่มีต่อโทเค็นตัวที่ นั้นเป็นผลรวมถ่วงน้ำหนักของเวกเตอร์ค่าของโทเค็นทั้งหมด
การคำนวณความใส่ใจโทเค็นทั้งหมดสามารถแสดงในรูปการคำนวณเมทริกซ์ขนาดใหญ่รายการเดียวได้ ซึ่งมีส่วนช่วยอย่างมากในการฝึกแบบจำลอง ทำให้สามารถฝึกได้อย่างรวดเร็ว
การคำนวณภายในหน่วยความใส่ใจของทรานส์ฟอร์เมอร์เขียนเป็นสูตรได้ว่าในที่นี้ , , คือเมทริกซ์ของเควียรี, คีย์, ค่า โดยเวกเตอร์เควียรี , เวกเตอร์คีย์ , เวกเตอร์ค่า จะแสดงถึงแถวที่ ของเมทริกซ์ , ,
กลไกความใส่ใจแบบหลายหัว
เมทริกซ์ชุดหนึ่ง เรียกว่า หัวความใส่ใจ (attention head) และแต่ละชั้นของแบบจำลองทรานส์ฟอร์เมอร์จะมีหัวความใส่ใจหลายหัว ส่วนหัวความใส่ใจหนึ่งหัวให้ความใส่ใจกับโทเค็นที่เกี่ยวข้องกับแต่ละโทเค็น แต่การใช้ส่วนหัวความใส่ใจหลายหัวทำให้แบบจำลองสามารถดำเนินการที่คล้ายกันกับความเกี่ยวพันที่นิยามแบบต่าง ๆ ได้ การวิจัยแสดงให้เห็นว่าหัวความใส่ใจจำนวนมากใน ทรานส์ฟอร์เมอร์สามารถเข้ารหัสความสัมพันธ์ในแบบที่มนุษย์สามารถตีความได้ ตัวอย่างเช่น มีหัวความใส่ใจที่มุ่งความใส่ไปไปที่คำถัดไปเป็นหลัก และหัวความใส่ใจที่มุ่งความใส่ใจจากคำกริยาไปยังกรรมโดยตรง เนื่องจากแบบจำลอง ทรานส์ฟอร์เมอร์ มีหัวความใส่ใจหลายหัว จึงสามารถจับความสัมพันธ์การเชื่อมโยงได้หลายระดับและหลายประเภท ตั้งแต่ผิวเผินไปจนถึงความหมาย ขาออกหลายรายการจากชั้นความใส่ใจแบบหลายหัวจะถูกต่อเข้าด้วยกันและส่งผ่านไปยังชั้นโครงข่ายประสาทแบบป้อนไปข้างหน้า
ชั้นย่อยป้อนไปข้างหน้าแบบตามจุด
ที่ส่วนชั้นย่อยป้อนไปข้างหน้าแบบตามจุด (point-wise feed-forward) ใช้โครงข่ายเชื่อมต่อสมบูรณ์แบบป้อนไปข้างหน้ากับเวกเตอร์ขาเข้า ที่ตำแหน่ง พารามิเตอร์น้ำหนัก และ ไม่ขึ้นกับตำแหน่ง (น้ำหนักต่างกันสำหรับแต่ละชั้น) กล่าวคือ จะดำเนินการประมวลผลเทียบเท่ากับชั้นสังวัตนาการแบบตามจุด (ซึ่งมีขนาดเคอร์เนลเป็น 1) 2 ชั้นในทิศทางตำแหน่ง
โครงสร้างเชื่อมต่อสมบูรณ์สามารถทำการคำนวณแบบคู่ขนานภายในชั้นได้ ดังนั้นชั้นย่อยนี้สามารถทำการคำนวณแบบขนานในทิศทางของตำแหน่ง ทำให้สามารถเรียนรู้แบบคู่ขนานในระดับสูง ซึ่งนี่เป็นเป้าหมายหลักอย่างหนึ่งของทรานส์ฟอร์เมอร์
เนื่องจากชั้นย่อยถูกใช้ภายในการเชื่อมต่อส่วนเหลือ จึงเป็นการดีที่จะให้มิติของขาเข้าและขาออกเท่ากัน ในงานวิจัยต้นฉบับใช้ขนาดขาเข้าและขาออกเป็น ขนาดของชั้นกลางมีขนาดใหญ่กว่าขาเข้าและขาออก
ตัวเข้ารหัส
ตัวเข้ารหัสแต่ละตัวประกอบด้วย 2 ส่วน ได้แก่ กลไกความใส่ใจตัวเอง และชั้นย่อยป้อนไปข้างหน้าแบบตามจุด กลไกความใส่ใจตัวเองจะใช้ชุดการเข้ารหัสขาเข้าจากตัวเข้ารหัสตัวก่อน ๆ และถ่วงน้ำหนักด้วยค่าความเกี่ยวพันร่วมกันเพื่อสร้างชุดการเข้ารหัสขาออก จากนั้นชั้นย่อยป้อนไปข้างหน้าจะประมวลผลการเข้ารหัสขาออกแต่ละรายการแยกกัน การเข้ารหัสขาออกเหล่านี้จะถูกป้อนเป็นข้อมูลขาเข้าไปยังตัวเข้ารหัสถัดไปในที่สุด
ตัวเข้ารหัสตัวแรกจะรับข้อมูลตำแหน่งและการฝังลำดับขาเข้าเป็นข้อมูลป้อนเข้า ข้อมูลตำแหน่งเป็นสิ่งจำเป็นสำหรับทรานส์ฟอร์เมอร์ในการระบุข้อมูลตำแหน่งของข้อมูลป้อนเข้า เนื่องจากไม่มีส่วนอื่นใดให้ข้อมูลตำแหน่ง
ตัวถอดรหัส
ตัวถอดรหัสแต่ละตัวประกอบด้วย 3 ส่วน ได้แก่ กลไกความใส่ใจตัวเอง กลไกความใส่ใจที่เกี่ยวข้องกับการเข้ารหัส และชั้นย่อยป้อนไปข้างหน้า ตัวถอดรหัสทำหน้าที่คล้ายกับตัวเข้ารหัส โดยแทรกกลไกความใส่ใจเพิ่มเติมเพื่อดึงข้อมูลที่เกี่ยวข้องจากการเข้ารหัสที่สร้างโดยตัวเข้ารหัส
เช่นเดียวกับตัวเข้ารหัสตัวแรก ตัวถอดรหัสตัวแรกจะได้รับค่าเป็นข้อมูลตำแหน่งขาเข้าและการฝังลำดับขาออก แทนที่จะเป็นการเข้ารหัส อย่างไรก็ตาม ภายในทรานส์ฟอร์เมอร์ไม่ควรใช้ค่าขาออกปัจจุบันหรือในอนาคตเพื่อคาดการณ์ขาออก ดังนั้นลำดับขาออกจึงควรถูกปกปิดบางส่วนเพื่อป้องกันการไหลของข้อมูลย้อนกลับ
ตัวถอดรหัสตัวสุดท้ายจะตามด้วยขั้นสุดท้ายและชั้นซอฟต์แมกซ์ เพื่อสร้างความน่าจะเป็นสำหรับคำศัพท์ ซึ่งเป็นผลลัพธ์สุดท้ายที่ต้องการ
รูปแบบทางเลือก
การฝึกสถาปัตยกรรมที่ใช้ทรานส์ฟอร์เมอร์อาจใช้ทรัพยากรมาก โดยเฉพาะประโยคยาว ๆ มีสถาปัตยกรรมที่เรียกว่า รีฟอร์เมอร์ (Reformer) ถูกสร้างขึ้นมาเป็นทางเลือก โดยอ้างว่าช่วยลดภาระในการคำนวณ จาก (โดยที่ คือความยาวของลำดับ) รีฟอร์เมอร์ใช้ locality sensitive hashing และชั้นที่พลิกกลับได้
การฝึก
โดยทั่วไปแล้ว ทรานส์ฟอร์เมอร์จะผ่านการเรียนรู้แบบกึ่งมีผู้สอน (การฝึกล่วงหน้าด้วยการเรียนรู้แบบไม่มีผู้สอน ตามด้วยการปรับละเอียดด้วยการเรียนรู้แบบมีผู้สอน) เนื่องจากข้อมูลการฝึกที่มีฉลากกำกับมีอยู่จำกัด การฝึกล่วงหน้าจึงมักดำเนินการกับชุดข้อมูลที่มีขนาดใหญ่ งานก่อนการเรียนรู้และการปรับแต่งมีดังนี้
- การทำนายคำถัดไป
- การสรุปความอัตโนมัติ
การเขียนโปรแกรม
แบบจำลองทรานส์ฟอร์เมอร์ได้รับการบรรจุอยู่ในเฟรมเวิร์กการเรียนรู้เชิงลึกที่สำคัญ เช่น TensorFlow และ PyTorch สำหรับเขียนด้วยภาษาไพธอน
การประยุกต์ใช้
ทรานส์ฟอร์เมอร์ถูกนำมาใช้เป็นหลักในด้าน การประมวลภาษาธรรมชาติ เช่น การแปลด้วยเครื่อง และ การทำนาย แบบจำลองที่ได้รับการฝึกล่วงหน้าจำนวนมาก เช่น GPT (GPT-1, , , , ChatGPT), , XLNet, RoBERTa ฯลฯ ล้วนมีพื้นฐานจากทรานส์ฟอร์เมอร์
ในปี 2020 ยังพบว่า GPT-2 ซึ่งใช้โครงสร้างทรานส์ฟอร์เมอร์สามารทำการปรับละเอียดให้ใช้เล่นหมากรุกได้ด้วย
ซึ่งสร้างขึ้นจากสถาปัตยกรรมทรานส์ฟอร์เมอร์ เผยแพร่โดยทีมวิจัยของกูเกิลในปี 2020 ได้รับการนำมาใช้ในด้านคอมพิวเตอร์วิทัศน์ และบรรลุผลสำเร็จที่เหนือกว่าโครงข่ายประสาทเทียมแบบสังวัตนาการ
อ้างอิง
- Polosukhin, Illia; Kaiser, Lukasz (2017-06-12). "Attention Is All You Need". :1706.03762 [cs.CL].
- "Open Sourcing BERT: State-of-the-Art Pre-training for Natural Language Processing". Google AI Blog. สืบค้นเมื่อ 2019-08-25.
- "Better Language Models and Their Implications". OpenAI. 2019-02-14. สืบค้นเมื่อ 2019-08-25.
- "Sequence Modeling with Neural Networks (Part 2): Attention Models". Indico. 2016-04-18. สืบค้นเมื่อ 2019-10-15.
- Alammar, Jay. "The Illustrated Transformer". jalammar.github.io. สืบค้นเมื่อ 2019-10-15.
- Clark, Kevin; Khandelwal, Urvashi; Levy, Omer; Manning, Christopher D. (August 2019). "What Does BERT Look at? An Analysis of BERT's Attention". Proceedings of the 2019 ACL Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP. Florence, Italy: Association for Computational Linguistics: 276–286. doi:10.18653/v1/W19-4828.
- "In addition to attention sub-layers, each of the layers in our encoder and decoder contains a fully connected feed-forward networkk, which is applied to each position separately and identically." from original paper.
- "While the linear transformations are the same across different positions, they use different parameters from layer to layer." original paper.
- "Another way of describing this is as two convolutions with kernel size 1." from original paper.
- "The Transformer allows for significantly more parallelization" from original paper
- "To facilitate these residual connections, all sub-layers in the model ... produce outputs of dimension dmodel = 512." from original paper
- "the inner-layer has dimensionality dff = 2048." from original paper
- Kitaev, Nikita; Kaiser, Łukasz. "Reformer: The Efficient Transformer". :2001.04451 [cs.LG].
- "Task with long sequences". สืบค้นเมื่อ 2020-11-20.
- "Reformer: The Efficient Transformer". Google AI Blog (ภาษาอังกฤษ). สืบค้นเมื่อ 2020-10-22.
- Wang, Alex; Singh, Amanpreet; Michael, Julian; Hill, Felix; Levy, Omer; Bowman, Samuel (2018). "GLUE: A Multi-Task Benchmark and Analysis Platform for Natural Language Understanding". Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP. Stroudsburg, PA, USA: Association for Computational Linguistics: 353–355. :1804.07461. doi:10.18653/v1/w18-5446.
- Allard, Maxime (2019-07-01). "What is a Transformer?". Medium (ภาษาอังกฤษ). สืบค้นเมื่อ 2019-10-21.
- Yang, Zhilin Dai, Zihang Yang, Yiming Carbonell, Jaime Salakhutdinov, Ruslan Le, Quoc V. (2019-06-19). XLNet: Generalized Autoregressive Pretraining for Language Understanding. OCLC 1106350082.
{{}}
: CS1 maint: multiple names: authors list () - Noever, David; Ciolino, Matt (2020-08-21). "The Chess Transformer: Mastering Play using Generative Language Models". :2008.04057 [cs.AI].
- "An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale". สืบค้นเมื่อ 2020-11-19.
wikipedia, แบบไทย, วิกิพีเดีย, วิกิ หนังสือ, หนังสือ, ห้องสมุด, บทความ, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม, มือถือ, โทรศัพท์, Android, iOS, Apple, โทรศัพท์โมบิล, Samsung, iPhone, Xiomi, Xiaomi, Redmi, Honor, Oppo, Nokia, Sonya, MI, PC, พีซี, web, เว็บ, คอมพิวเตอร์
thransfxremxr transformer epnaebbcalxngkareriynruechingluk thiephyaephrodynkwicykhxngkuekilemuxwnthi 12 mithunayn 2017 mikarnamaprayuktichxyangkwangkhwang odyechphaainsakhakarpramwlphasathrrmchatiokhrngsrangsthaptykrrmthransfxremxrmatrthan dansaykhuxtwekharhs dankhwakhuxtwthxdrhs echnediywkb okhrngkhayprasathaebbewiynsa RNN sthaptykrrmthransfxremxridrbkarxxkaebbmaephuxcdkarkhxmul echn phasathrrmchati ephuxdaeninkartang echn karaepl aela karsrupkhwamxtonmti aetinkrnikhxngthransfxremxrnn samarththakarpramwlkhxmulthnghmdinxnukrmewlaphrxmknodyimtxngtamladbid twxyangechn hakkhxmulthipxnepnpraoykhphasathrrmchati kimcaepntxngpramwlphltngaettncncbpraoykh dwyehtunithransfxremxrcungyxmihmiidmakkwaokhrngkhayprasathaebbewiynsa sungthaihchwyldewlainkarfukaebbcalxnglngipidmak nbtngaetidrbkarephyaephr aebbcalxngthransfxremxridrbkarnamaichnganxyangkwangkhwangephuxaekikhpyhamakmayinkarpramwlphlphasathrrmchati odyaethnthiaebbcalxngokhrngkhayprasathaebbewiynsaaebbeka echn hnwykhwamcarayasnaebbyaw LSTM aebbcalxngthransfxremxrmiswnchwyihsamarththakarkhanwnaebbkhnanrahwangkarfuk chwyihsamarthfukchudkhxmulkhnadihyid sungnaipsukarphthnarabbfuklwnghna echn Bidirectional Encoder Representations from Transformers aela GPT Generative Pre trained Transformer aebbcalxngidrbkarfukodychudkhxmulphasathwipkhnadihyephuxsrangaebbcalxngrakthan aelanaipthakarprblaexiydihekhakbnganphasaechphaaidkarxxkaebbphunthanechnediywkbaebbcalxngthipradisthkhunkxnhnani thransfxremxrepnokhrngsrangthiprakxbipdwytwekharhsaelatwthxdrhs twekharhsprakxbdwychudkhxngchnekharhsthipramwlphlkhapxnekhasa kn aelatwthxdrhsprakxbdwychudkhxngchnthxdrhsthithasingediywknkbkhxmulkhaxxkcaktwekharhs hnathikhxngchnekharhsaetlachnkhuxkarpramwlphlkhxmulkhaekhaaelasrangkarekharhs rwmthungkhxmulekiywkbswnkhxngkhxmulkhaekhathiekiywkhxngkn chnekharhsaetlachncasngphanladbkhxngkarekharhsaelwichepnkhakhaekhapxnipyngchntwekharhsthdip aetlachntwthxdrhsthasingthitrngknkham odyrbkhxmulcaktwekharhsthnghmdma aelwnamacdkarpramwlphl ichkhxmulbribththifngiwephuxsrangladbkhaxxk ephuxihbrrluepahmayni aetlachnkhxngtwekharhsaelatwthxdrhscaichklikkhwamisic odyklikkhwamisiccakahndnahnkaetlakhaekhatamkhwamsmphnthkbkhxmulkhaekhaxun thnghmd aelwdungkhxmul srangkhxmulkhaxxk chnthxdrhsaetlachnmiklikkhwamisicephuxrbkhxmulcakchnthxdrhskxnhna kxnthicarbkhxmulcakchnekharhs thngchnekharhsaelachnthxdrhsprakxbdwyokhrngkhayprasathethiymaebbpxnipkhanghnaephuxpramwlphlkhakhaxxkephimetim hnwykhwamisic swnprakxbphunthankhxngthransfxremxr khuxhnwykhwamisic sungphankarkhanwnodyphlkhuncudaelwprbsekl Scaled dot product attention unit emuxkhxkhwamthukpxnekhaihkbaebbcalxngthransfxremxr khanahnkkhwamisiccathukkhanwncakothekhnthnghmdphrxmkn hnwykhwamisiccasrangkarfngothekhnthukraykarphayinbribth sungimephiyngaetrwmthungkhxmulekiywkbtwothekhnnnethann aetyngrwmthungkhwamechuxmoyng thwngnahnkdwynahnkkhwamisic kbothekhnxun thiekiywkhxngdwy aebbcalxngthransfxremxr cathakareriynru 3 xyangkhux emthriksnahnkekhwiyri WQ displaystyle W Q emthriksnahnkkhiy WK displaystyle W K aela emthriksnahnkkha WV displaystyle W V sahrbaetlahnwykhwamisic emuxkhunkhapxnekha xi displaystyle x i cakchnkarfngkhadwyemthriksnahnksahrbothekhnthi i displaystyle i aetlatwaelw caidewketxrekhwiyri qi xiWQ displaystyle q i x i W Q ewketxrkhiy ki xiWK displaystyle k i x i W K ewketxrkha vi xiWV displaystyle v i x i W V nahnkkhwamisic aij displaystyle a ij epnphlkhuncudkhxngewketxrekhwiyri qi displaystyle q i kbewketxrkhiy kj displaystyle k j aelwhardwyrakthisxngkhxngcanwnmiti dk displaystyle sqrt d k ephuxrksaesthiyrphaphkhxngkhwamchn caknnphlrwmnahnkcathukthaihepn 1 odyichfngkchnsxftaemks pharamietxrnahnkekhwiyri WQ displaystyle W Q aelapharamietxrnahnkkhiy WK displaystyle W K epnemthriksthiaetktangkn aelaxacimcaepntxngsmmatr nnkhuxaemothekhntwthi i displaystyle i camungkhwamisicipthiothekhntwthi j displaystyle j nnkhux qi kj displaystyle q i cdot k j mikhnadihy aetothekhntwthi j displaystyle j kxacimcaepntxngihkhwamisickbothekhntwthi i displaystyle i nnkhux qj ki displaystyle q j cdot k i imcaepntxngihyot khakhaxxkkhxnghnwykhwamisicthimitxothekhntwthi i displaystyle i nnepnphlrwmthwngnahnkkhxngewketxrkhakhxngothekhnthnghmd karkhanwnkhwamisicothekhnthnghmdsamarthaesdnginrupkarkhanwnemthrikskhnadihyraykarediywid sungmiswnchwyxyangmakinkarfukaebbcalxng thaihsamarthfukidxyangrwderw karkhanwnphayinhnwykhwamisickhxngthransfxremxrekhiynepnsutridwaAttention Q K V softmax QKTdk V displaystyle begin aligned mathrm Attention Q K V mathrm softmax left frac QK mathrm T sqrt d k right V end aligned inthini Q displaystyle Q K displaystyle K V displaystyle V khuxemthrikskhxngekhwiyri khiy kha odyewketxrekhwiyri qi displaystyle q i ewketxrkhiy ki displaystyle k i ewketxrkha vi displaystyle v i caaesdngthungaethwthi i displaystyle i khxngemthriks Q displaystyle Q K displaystyle K V displaystyle V klikkhwamisicaebbhlayhw emthrikschudhnung WQ WK WV displaystyle left W Q W K W V right eriykwa hwkhwamisic attention head aelaaetlachnkhxngaebbcalxngthransfxremxrcamihwkhwamisichlayhw swnhwkhwamisichnunghwihkhwamisickbothekhnthiekiywkhxngkbaetlaothekhn aetkarichswnhwkhwamisichlayhwthaihaebbcalxngsamarthdaeninkarthikhlayknkbkhwamekiywphnthiniyamaebbtang id karwicyaesdngihehnwahwkhwamisiccanwnmakin thransfxremxrsamarthekharhskhwamsmphnthinaebbthimnusysamarthtikhwamid twxyangechn mihwkhwamisicthimungkhwamisipipthikhathdipepnhlk aelahwkhwamisicthimungkhwamisiccakkhakriyaipyngkrrmodytrng enuxngcakaebbcalxng thransfxremxr mihwkhwamisichlayhw cungsamarthcbkhwamsmphnthkarechuxmoyngidhlayradbaelahlaypraephth tngaetphiwephinipcnthungkhwamhmay khaxxkhlayraykarcakchnkhwamisicaebbhlayhwcathuktxekhadwyknaelasngphanipyngchnokhrngkhayprasathaebbpxnipkhanghna MultiHead Q K V Concat head1 headh WOwhereheadi Attention QWiQ KWiW VWiV displaystyle begin aligned mathrm MultiHead Q K V mathrm Concat left mathrm head 1 dots mathrm head h right W O mathrm where quad mathrm head i mathrm Attention QW i Q KW i W VW i V end aligned chnyxypxnipkhanghnaaebbtamcud FFN xt ReLU xtW1 W2 displaystyle FFN x t ReLU x t W 1 W 2 thiswnchnyxypxnipkhanghnaaebbtamcud point wise feed forward ichokhrngkhayechuxmtxsmburnaebbpxnipkhanghnakbewketxrkhaekha xt displaystyle x t thitaaehnng t displaystyle t pharamietxrnahnk W1 displaystyle W 1 aela W2 displaystyle W 2 imkhunkbtaaehnng t displaystyle t nahnktangknsahrbaetlachn klawkhux cadaeninkarpramwlphlethiybethakbchnsngwtnakaraebbtamcud sungmikhnadekhxrenlepn 1 2 chninthisthangtaaehnng okhrngsrangechuxmtxsmburnsamarththakarkhanwnaebbkhukhnanphayinchnid dngnnchnyxynisamarththakarkhanwnaebbkhnaninthisthangkhxngtaaehnng thaihsamartheriynruaebbkhukhnaninradbsung sungniepnepahmayhlkxyanghnungkhxngthransfxremxr enuxngcakchnyxythukichphayinkarechuxmtxswnehlux cungepnkardithicaihmitikhxngkhaekhaaelakhaxxkethakn innganwicytnchbbichkhnadkhaekhaaelakhaxxkepn dmodel 512 displaystyle d model 512 khnadkhxngchnklangmikhnadihykwakhaekhaaelakhaxxk twekharhs twekharhsaetlatwprakxbdwy 2 swn idaek klikkhwamisictwexng aelachnyxypxnipkhanghnaaebbtamcud klikkhwamisictwexngcaichchudkarekharhskhaekhacaktwekharhstwkxn aelathwngnahnkdwykhakhwamekiywphnrwmknephuxsrangchudkarekharhskhaxxk caknnchnyxypxnipkhanghnacapramwlphlkarekharhskhaxxkaetlaraykaraeykkn karekharhskhaxxkehlanicathukpxnepnkhxmulkhaekhaipyngtwekharhsthdipinthisud twekharhstwaerkcarbkhxmultaaehnngaelakarfngladbkhaekhaepnkhxmulpxnekha khxmultaaehnngepnsingcaepnsahrbthransfxremxrinkarrabukhxmultaaehnngkhxngkhxmulpxnekha enuxngcakimmiswnxunidihkhxmultaaehnng twthxdrhs twthxdrhsaetlatwprakxbdwy 3 swn idaek klikkhwamisictwexng klikkhwamisicthiekiywkhxngkbkarekharhs aelachnyxypxnipkhanghna twthxdrhsthahnathikhlaykbtwekharhs odyaethrkklikkhwamisicephimetimephuxdungkhxmulthiekiywkhxngcakkarekharhsthisrangodytwekharhs echnediywkbtwekharhstwaerk twthxdrhstwaerkcaidrbkhaepnkhxmultaaehnngkhaekhaaelakarfngladbkhaxxk aethnthicaepnkarekharhs xyangirktam phayinthransfxremxrimkhwrichkhakhaxxkpccubnhruxinxnakhtephuxkhadkarnkhaxxk dngnnladbkhaxxkcungkhwrthukpkpidbangswnephuxpxngknkarihlkhxngkhxmulyxnklb twthxdrhstwsudthaycatamdwykhnsudthayaelachnsxftaemks ephuxsrangkhwamnacaepnsahrbkhasphth sungepnphllphthsudthaythitxngkar rupaebbthangeluxk karfuksthaptykrrmthiichthransfxremxrxacichthrphyakrmak odyechphaapraoykhyaw misthaptykrrmthieriykwa rifxremxr Reformer thuksrangkhunmaepnthangeluxk odyxangwachwyldpharainkarkhanwn O L2 displaystyle O L 2 cak O Lln L displaystyle O L ln L odythi L displaystyle L khuxkhwamyawkhxngladb rifxremxrich locality sensitive hashing aelachnthiphlikklbidkarfukodythwipaelw thransfxremxrcaphankareriynruaebbkungmiphusxn karfuklwnghnadwykareriynruaebbimmiphusxn tamdwykarprblaexiyddwykareriynruaebbmiphusxn enuxngcakkhxmulkarfukthimichlakkakbmixyucakd karfuklwnghnacungmkdaeninkarkbchudkhxmulthimikhnadihy ngankxnkareriynruaelakarprbaetngmidngni karthanaykhathdip karsrupkhwamxtonmtikarekhiynopraekrmaebbcalxngthransfxremxridrbkarbrrcuxyuinefrmewirkkareriynruechinglukthisakhy echn TensorFlow aela PyTorch sahrbekhiyndwyphasaiphthxnkarprayuktichthransfxremxrthuknamaichepnhlkindan karpramwlphasathrrmchati echn karaepldwyekhruxng aela karthanay aebbcalxngthiidrbkarfuklwnghnacanwnmak echn GPT GPT 1 ChatGPT XLNet RoBERTa l lwnmiphunthancakthransfxremxr inpi 2020 yngphbwa GPT 2 sungichokhrngsrangthransfxremxrsamarthakarprblaexiydihichelnhmakrukiddwy sungsrangkhuncaksthaptykrrmthransfxremxr ephyaephrodythimwicykhxngkuekilinpi 2020 idrbkarnamaichindankhxmphiwetxrwithsn aelabrrluphlsaercthiehnuxkwaokhrngkhayprasathethiymaebbsngwtnakarxangxingPolosukhin Illia Kaiser Lukasz 2017 06 12 Attention Is All You Need 1706 03762 cs CL Open Sourcing BERT State of the Art Pre training for Natural Language Processing Google AI Blog subkhnemux 2019 08 25 Better Language Models and Their Implications OpenAI 2019 02 14 subkhnemux 2019 08 25 Sequence Modeling with Neural Networks Part 2 Attention Models Indico 2016 04 18 subkhnemux 2019 10 15 Alammar Jay The Illustrated Transformer jalammar github io subkhnemux 2019 10 15 Clark Kevin Khandelwal Urvashi Levy Omer Manning Christopher D August 2019 What Does BERT Look at An Analysis of BERT s Attention Proceedings of the 2019 ACL Workshop BlackboxNLP Analyzing and Interpreting Neural Networks for NLP Florence Italy Association for Computational Linguistics 276 286 doi 10 18653 v1 W19 4828 In addition to attention sub layers each of the layers in our encoder and decoder contains a fully connected feed forward networkk which is applied to each position separately and identically from original paper While the linear transformations are the same across different positions they use different parameters from layer to layer original paper Another way of describing this is as two convolutions with kernel size 1 from original paper The Transformer allows for significantly more parallelization from original paper To facilitate these residual connections all sub layers in the model produce outputs of dimension dmodel 512 from original paper the inner layer has dimensionality dff 2048 from original paper Kitaev Nikita Kaiser Lukasz Reformer The Efficient Transformer 2001 04451 cs LG Task with long sequences subkhnemux 2020 11 20 Reformer The Efficient Transformer Google AI Blog phasaxngkvs subkhnemux 2020 10 22 Wang Alex Singh Amanpreet Michael Julian Hill Felix Levy Omer Bowman Samuel 2018 GLUE A Multi Task Benchmark and Analysis Platform for Natural Language Understanding Proceedings of the 2018 EMNLP Workshop BlackboxNLP Analyzing and Interpreting Neural Networks for NLP Stroudsburg PA USA Association for Computational Linguistics 353 355 1804 07461 doi 10 18653 v1 w18 5446 Allard Maxime 2019 07 01 What is a Transformer Medium phasaxngkvs subkhnemux 2019 10 21 Yang Zhilin Dai Zihang Yang Yiming Carbonell Jaime Salakhutdinov Ruslan Le Quoc V 2019 06 19 XLNet Generalized Autoregressive Pretraining for Language Understanding OCLC 1106350082 a href wiki E0 B9 81 E0 B8 A1 E0 B9 88 E0 B9 81 E0 B8 9A E0 B8 9A Cite book title aemaebb Cite book cite book a CS1 maint multiple names authors list lingk Noever David Ciolino Matt 2020 08 21 The Chess Transformer Mastering Play using Generative Language Models 2008 04057 cs AI An Image is Worth 16x16 Words Transformers for Image Recognition at Scale subkhnemux 2020 11 19