การแปลด้วยเครื่องใน NLP: ตัวอย่าง โฟลว์ & โมเดล

เผยแพร่แล้ว: 2021-01-21

สารบัญ

บทนำ

มีภาษาที่เป็นที่รู้จักมากกว่า 6,500 ภาษาทั่วโลก รู้สึกว่าจำเป็นต้องใช้เวลาในการทำความเข้าใจแหล่งข้อมูลที่เป็นลายลักษณ์อักษรทั่วทั้งวัฒนธรรม ในความพยายามนั้น หนังสือเก่าจำนวนมากได้รับการแปลเป็นภาษาท้องถิ่นและเก็บรักษาไว้เพื่อใช้อ้างอิง

ตัวอย่างเช่น สันสกฤต ภาษาโบราณของมรดกฮินดูกล่าวกันว่ามีข้อมูลที่เป็นประโยชน์เกี่ยวกับยุคโบราณ เนื่องจากน้อยคนนักที่จะรู้ภาษาสันสกฤต มีแนวโน้มว่าจะต้องใช้กลไกบางอย่างในการแสวงหาข้อมูลจากพระคัมภีร์และต้นฉบับ

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

เครื่องแปลภาษา

คำว่า 'การแปลด้วยเครื่อง' (MT) หมายถึงระบบคอมพิวเตอร์ที่รับผิดชอบในการผลิตการแปลโดยมีหรือไม่มีความช่วยเหลือจากมนุษย์ ไม่รวมเครื่องมือแปลภาษาด้วยคอมพิวเตอร์ที่สนับสนุนนักแปลโดยให้การเข้าถึงพจนานุกรมออนไลน์ ธนาคารข้อมูลคำศัพท์ทางไกล การส่งและรับข้อความ ฯลฯ

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

NLP คืออะไร?

Natural Language Processing (NLP) เป็นหนึ่งในสาขาที่เผยแพร่เทคโนโลยีปัญญาประดิษฐ์ (AI) วินัยนี้เกี่ยวข้องกับการสร้างแบบจำลองการคำนวณที่ประมวลผลและเข้าใจภาษาธรรมชาติ โมเดล NKP ทำให้คอมพิวเตอร์เข้าใจการจัดกลุ่มความหมายของวัตถุ (เช่น คำว่า "แมวและสุนัข" มีความหมายคล้ายกับคำว่า "แมวและค้างคาว") ข้อความเป็นคำพูด การแปลภาษา และอื่นๆ

Natural Language Processing (NLP) ทำให้ระบบคอมพิวเตอร์ใช้ ตีความ และเข้าใจภาษามนุษย์และคำพูด เช่น ภาษาอังกฤษ ภาษาเยอรมัน หรือ "ภาษาธรรมชาติ" อื่นๆ มีการใช้งาน NLP ในทางปฏิบัติในปัจจุบัน

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

ตัวอย่าง NLP

  • ระบบรู้จำเสียง/คำพูด หรือระบบการสืบค้น เช่น Siri ทำงานกับคำถามและส่งคืนคำตอบ ที่นี่คุณป้อนเสียงไปยังคอมพิวเตอร์ และมันเข้าใจข้อความของคุณ
  • โปรแกรมคอมพิวเตอร์ที่อ่านรายงานทางการเงินเป็นภาษาอังกฤษล้วนและแสดงตัวเลข (เช่น อัตราเงินเฟ้อ)
  • พอร์ทัลงานดึงรายละเอียดผู้สมัครและสร้างประวัติย่อและสมัครงานโดยอัตโนมัติเพื่อให้ตรงกับทักษะ
  • Google Translate ประมวลผลข้อความในสตริงอินพุตและจับคู่กับภาษาเพื่อแปลทันที
  • เครื่องมือค้นหาที่คล้ายกับ Google จะส่งคืนเอกสารของคุณหลังจากที่คุณพิมพ์คำของหัวข้อลงในช่องค้นหา ตัวอย่างเช่น เมื่อคุณค้นหาทัชมาฮาล Google จะให้เอกสารที่มีทัชมาฮาลเป็นสิ่งประดิษฐ์และแม้แต่แบรนด์ "ทัชมาฮาล" ในที่นี้ คำพ้องความหมายภาษาอังกฤษและรูปแบบพหูพจน์ภาษาอังกฤษจะถูกนำมาพิจารณาด้วย

NLP Flow

การประมวลผลภาษาธรรมชาติเป็นปัญญาประดิษฐ์ชนิดหนึ่ง หากคุณต้องการสร้างโปรแกรม NLP คุณสามารถเริ่มเขียนกฎเช่น "ละเว้นคำต่อท้ายคำ" นี่เป็นวิธีการทำสิ่งต่างๆ แบบโรงเรียนเก่า และเรียกว่าแนวทาง "ตามกฎเกณฑ์"

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

วัตถุประสงค์ของ NLP คือการทำให้ภาษามนุษย์เข้าใจได้ เพื่อให้กลไกที่ตั้งโปรแกรมไว้สามารถตีความและทำความเข้าใจต้นฉบับได้ ที่นี่ กลไกที่ตั้งโปรแกรมไว้ที่เราเรียกว่าเครื่อง และต้นฉบับคือสคริปต์ภาษาที่ป้อนให้กับโปรแกรม โปรแกรมคอมพิวเตอร์จึงดึงข้อมูลภาษาศาสตร์ในรูปแบบของความรู้ดิจิทัล

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

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

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

วิวัฒนาการของการแปลด้วยคอมพิวเตอร์

จนถึงช่วงปลายทศวรรษ 1980 การวิจัยจำนวนมากในการแปลด้วยคอมพิวเตอร์ได้ดำเนินการในช่วงนี้ เมื่อมีการพัฒนาระบบ Statistical Machine Translation (SMT) ขึ้นเป็นครั้งแรก

ตามหลักการแล้ว ระบบตามกฎถูกใช้สำหรับงานนี้ ต่อมาแทนที่ในปี 1990 ด้วยวิธีทางสถิติ เมื่อไม่นานมานี้ โมเดลโครงข่ายประสาทเทียมระดับลึกได้มาถึงเพื่อให้ได้ผลลัพธ์ที่ล้ำสมัยในสาขาที่เรียกว่าการแปลด้วยเครื่องประสาทอย่างถูกต้อง

การแปลด้วยเครื่องทางสถิติแทนที่ระบบที่อิงตามกฎแบบคลาสสิกด้วยแบบจำลองที่เรียนรู้ที่จะแปลจากตัวอย่าง

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

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

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

ตัวอย่างเช่น คำว่า Neural Machine Translation (NMT) เน้นว่าวิธีการที่ใช้การเรียนรู้เชิงลึกในการแปลด้วยเครื่องจะเรียนรู้การแปลงจากลำดับเป็นลำดับโดยตรง โดยไม่จำเป็นต้องใช้ขั้นตอนขั้นกลาง เช่น การจัดตำแหน่งคำและการสร้างแบบจำลองภาษาที่ใช้ในการแปลภาษาด้วยเครื่องทางสถิติ (เอสเอ็มที). Google เริ่มใช้โมเดลดังกล่าวในการผลิตสำหรับ Google แปลภาษา ในช่วงปลายปี 2016

ลำดับสู่ลำดับโมเดล

โดยปกติ โมเดลแบบลำดับต่อลำดับประกอบด้วยสองส่วน อย่างแรก ตัวเข้ารหัส และตัวที่สอง ตัวถอดรหัส เป็นโมเดลโครงข่ายประสาทเทียมสองแบบที่ทำงานร่วมกันเป็นเครือข่ายขนาดใหญ่เพียงเครือข่ายเดียว

จากนั้นส่วนถอดรหัสของโมเดลจะสร้างลำดับที่แมปในเอาต์พุต ตัวถอดรหัสเข้ารหัสสตริงและเพิ่มความหมายให้กับลำดับในการแสดง วิธีการเข้ารหัส-ถอดรหัส สำหรับการแปลด้วยเครื่องประสาท เข้ารหัสสตริงอินพุตทั้งหมดของประโยคให้เป็นเวกเตอร์ที่มีความยาวจำกัดจากตำแหน่งที่การแปลถูกถอดรหัส

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

ตัว เข้ารหัส - ตัวถอดรหัส LSTM เป็นโครง ข่าย ประสาทที่เกิดขึ้นซ้ำซึ่งออกแบบมาเพื่อแก้ไขปัญหาการเรียงตามลำดับ ซึ่งบางครั้งเรียกว่า seq2seq หน่วยความจำระยะสั้นระยะยาว (LSTM) เป็นสถาปัตยกรรมโครงข่ายประสาทเทียมแบบเกิดซ้ำ (RNN) ที่ใช้ในการเรียนรู้เชิงลึก

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

หลังจากวนซ้ำทั้งหมด ลำดับเอาต์พุตจะถูกสร้างขึ้น พูดประมาณว่า "This place is Pune" เครือข่าย LSTM ได้รับการจัดทำขึ้นอย่างเหมาะสมเพื่อจำแนกตามกฎ วิเคราะห์เพื่อประมวลผลอินพุต และคาดการณ์โดยใช้ตัวอย่างข้อมูลที่ได้รับการฝึกอบรม

รุ่นความสนใจ

โมเดล “Attention” ซึ่งปรับปรุงคุณภาพของระบบการแปลด้วยคอมพิวเตอร์อย่างมาก ความสนใจช่วยให้โมเดลโฟกัสไปที่ส่วนที่เกี่ยวข้องของลำดับอินพุตได้ตามต้องการ

โมเดลความสนใจแตกต่างจากโมเดลแบบเรียงต่อกันแบบคลาสสิกในสองวิธีหลัก:

  • ตัวเข้ารหัสส่งข้อมูลไปยังตัวถอดรหัสมากขึ้น แทนที่จะส่งผ่านสถานะซ่อนสุดท้ายของขั้นตอนการเข้ารหัส ตัวเข้ารหัสจะส่งสถานะที่ซ่อนอยู่ทั้งหมดไปยังตัวถอดรหัส
  • ตัวถอดรหัสความสนใจทำขั้นตอนพิเศษก่อนที่จะสร้างเอาต์พุต

หม้อแปลงไฟฟ้ารุ่น

การคำนวณตามลำดับไม่สามารถขนานกันได้เนื่องจากเราต้องรอให้ขั้นตอนก่อนหน้าเสร็จสิ้นก่อนที่จะไปยังขั้นตอนถัดไป สิ่งนี้จะช่วยยืดเวลาการฝึกและเวลาที่ใช้ในการอนุมาน วิธีหนึ่งในการแก้ปัญหาตามลำดับคือการใช้ Convolutional Neural Networks (CNNs) แทน RNN หม้อแปลงไฟฟ้าเป็นรุ่นที่ใช้ความสนใจเพื่อเพิ่มความเร็ว โดยเฉพาะอย่างยิ่งจะใช้การเอาใจใส่ตนเอง ที่นี่ ตัวเข้ารหัสแต่ละตัวประกอบด้วยสองชั้น:

  • การเอาใจใส่ตนเอง
  • โครงข่ายประสาทฟีดฟอร์เวิร์ด

Transformers ใช้ Convolutional Neural Networks ร่วมกับโมเดลความสนใจสำหรับการแปลด้วยเครื่อง Transformers เป็นสถาปัตยกรรมโครงข่ายประสาทเทียมชนิดหนึ่งที่ได้รับความนิยม เมื่อไม่นานมานี้ OpenAI ได้ใช้ Transformers ในรูปแบบภาษาของพวกเขา และเพิ่งใช้โดย DeepMind สำหรับ AlphaStar ซึ่งเป็นโปรแกรมของพวกเขาเพื่อเอาชนะผู้เล่น Starcraft มืออาชีพระดับแนวหน้า Transformers มีประสิทธิภาพเหนือกว่าโมเดล Google Neural Machine Translation ในงานเฉพาะ

บทสรุป

โดยสรุป กลไกการเอาใจใส่ตนเองในระบบช่วยให้ข้อมูลป้อนเข้ามีปฏิสัมพันธ์ซึ่งกันและกัน ("ตัวเอง") และช่วยให้พวกเขาตัดสินใจว่าควรให้ความสำคัญกับใครมากกว่า ("การเอาใจใส่") ผลลัพธ์ที่ประมวลผลจึงเป็นการรวมของการโต้ตอบเหล่านี้และถ่วงน้ำหนักด้วยคะแนนความสนใจ

ความเข้าใจพื้นฐานของ MT ใน NLP ช่วยให้นักวิเคราะห์ข้อมูลและนักวิทยาศาสตร์ด้านข้อมูลเตรียมตัวให้พร้อมสำหรับดำเนินโครงการอันทรงเกียรติที่เกี่ยวข้องกับโครงการต่างๆ ในระเบียบวินัย NLP ของ AI หลักสูตรการฝึกอบรมในเรื่องโดยผู้ให้บริการเช่น upGrad ช่วยให้การเดินทางไปข้างหน้า แบรนด์ upGrad เป็นแพลตฟอร์มการศึกษาระดับอุดมศึกษาออนไลน์ที่มีโปรแกรมที่เกี่ยวข้องกับอุตสาหกรรมมากมาย พร้อมที่จะนำไปสู่ความสำเร็จในอาชีพการงานของคุณ

หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับแมชชีนเลิร์นนิงและ AI โปรดดูที่ IIIT-B & upGrad's PG Diploma in Machine Learning & AI ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีการฝึกอบรมที่เข้มงวดมากกว่า 450 ชั่วโมง กรณีศึกษาและการมอบหมายมากกว่า 30 รายการ สถานะศิษย์เก่า IIIT-B โครงการหลัก 5 โครงการและความช่วยเหลือด้านงานกับบริษัทชั้นนำ

เรียนรู้ หลักสูตร ML จากมหาวิทยาลัยชั้นนำของโลก รับ Masters, Executive PGP หรือ Advanced Certificate Programs เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว

ไตรมาสที่ 1 การแปลด้วยเครื่องใน NLP มีอะไรบ้าง

การแปลด้วยเครื่องหรือที่เรียกว่าการตีความด้วยหุ่นยนต์เป็นกระบวนการที่คอมพิวเตอร์หรือเครื่องจักรแปลข้อความจำนวนมหาศาลจากภาษาต้นฉบับเป็นภาษาเป้าหมายอย่างเป็นอิสระและรวดเร็วโดยไม่ต้องใช้ความพยายามใด ๆ ของมนุษย์ กล่าวอีกนัยหนึ่ง การแปลด้วยเครื่องทำงานโดยใช้แอปพลิเคชันที่ช่วยแปลข้อความจากภาษาอินพุตหนึ่งไปยังอีกภาษาหนึ่ง การแปลด้วยเครื่องใน NLP มีสี่ประเภท: การแปลด้วยเครื่องทางสถิติ การแปลด้วยเครื่องตามกฎ การแปลด้วยเครื่องไฮบริด และการแปลด้วยเครื่องประสาท ข้อได้เปรียบหลักของการแปลด้วยคอมพิวเตอร์คือการนำเสนอการผสมผสานระหว่างความเร็วและความคุ้มค่าอย่างมีประสิทธิภาพ

ไตรมาสที่ 2 NLP เหมือนกับ AI หรือไม่?

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

ไตรมาสที่ 3 NLP เป็นสาขาอาชีพที่ดีหรือไม่?

NLP ได้พัฒนาเป็นเทคโนโลยีที่ปฏิวัติวงการในขอบเขตของวิทยาศาสตร์ข้อมูลและ AI ในช่วงไม่กี่ครั้งที่ผ่านมา การเพิ่มขึ้นของการใช้อุปกรณ์อัจฉริยะ การนำโซลูชันคลาวด์มาใช้ และการพัฒนาแอปพลิเคชัน NLP เพื่อประสบการณ์การบริการลูกค้าที่ดียิ่งขึ้น เป็นปัจจัยหลักในการขยายตลาด NLP อย่างกะทันหัน การศึกษาแนะนำว่า NLP เป็นหนึ่งในเจ็ดทักษะทางเทคนิคที่มีความต้องการสูงที่สุดในปี 2564 โดยคาดว่าขนาดของตลาดจะทะลุ 34 พันล้านดอลลาร์ที่ CAGR เกือบ 22 เปอร์เซ็นต์ เงินเดือนเฉลี่ยของผู้เชี่ยวชาญ NLP อยู่ที่ประมาณ $80,000 ถึง 110,000 ต่อปีในสหรัฐอเมริกา