การทำนายแบบมีโครงสร้าง
การทำนายโครงสร้างหรือการเรียนรู้เอาต์พุตที่มีโครงสร้างเป็นคำรวมสำหรับ เทคนิค การเรียนรู้ของเครื่องแบบมีผู้กำกับดูแล ซึ่งเกี่ยวข้องกับการทำนายวัตถุที่มีโครงสร้าง แทนที่จะ เป็นค่า ที่ไม่ต่อเนื่องหรือค่าจริง[ 1 ]
เช่นเดียวกับเทคนิคการเรียนรู้แบบมีผู้กำกับดูแลที่ใช้กันทั่วไป โมเดลการทำนายที่มีโครงสร้างมักจะได้รับการฝึกฝนโดยใช้ข้อมูลที่สังเกตได้ โดยที่ค่าที่ทำนายได้จะถูกเปรียบเทียบกับค่าความจริงและใช้ค่าความจริงนี้ในการปรับพารามิเตอร์ของโมเดล เนื่องจากความซับซ้อนของโมเดลและความสัมพันธ์ระหว่างตัวแปรที่ทำนายได้ กระบวนการฝึกฝนและการอนุมานของโมเดลจึงมักทำได้ยากในทางคอมพิวเตอร์ ดังนั้นจึง มีการใช้วิธี การอนุมานและการเรียนรู้ โดยประมาณแทน
แอปพลิเคชัน
ตัวอย่างการประยุกต์ใช้คือปัญหาการแปล ประโยค ภาษาธรรมชาติให้เป็นตัวแทนทางไวยากรณ์ เช่นแผนผังการวิเคราะห์ไวยากรณ์ซึ่งสามารถมองได้ว่าเป็นปัญหาการทำนายแบบมีโครงสร้าง[ 2 ]โดยที่โดเมนเอาต์พุตแบบมีโครงสร้างคือเซตของแผนผังการวิเคราะห์ไวยากรณ์ที่เป็นไปได้ทั้งหมด การทำนายแบบมีโครงสร้างถูกนำไปใช้ในหลากหลายสาขา รวมถึงชีวสารสนเทศศาสตร์การประมวลผลภาษาธรรมชาติ (NLP) การรู้จำเสียงพูดและคอมพิวเตอร์วิชั่น
ตัวอย่าง: การติดแท็กลำดับ
การติดแท็กตามลำดับเป็นปัญหาประเภทหนึ่งที่พบได้บ่อยใน NLP ซึ่งข้อมูลป้อนเข้ามักเป็นแบบเรียงลำดับ เช่น ประโยคข้อความ ปัญหาการติดแท็กตามลำดับปรากฏในหลายรูปแบบ เช่นการติดแท็กส่วนของคำพูด (POS tagging) และการระบุเอนทิตีที่มีชื่อในการติดแท็ก POS ตัวอย่างเช่น แต่ละคำในลำดับจะต้องถูก 'ติดแท็ก' ด้วยป้ายกำกับประเภทที่แสดงถึงชนิดของคำ:
ความท้าทายหลักของปัญหานี้คือการแก้ไขความกำกวม : ในตัวอย่างข้างต้น คำว่า "sentence" และ "tagged" ในภาษาอังกฤษสามารถเป็นคำกริยาได้ เช่นกัน
แม้ว่าปัญหานี้จะสามารถแก้ไขได้โดยการจำแนกโทเค็นแต่ละรายการแต่แนวทางนี้ไม่ได้คำนึงถึงข้อเท็จจริงเชิงประจักษ์ที่ว่าแท็กไม่ได้เกิดขึ้นอย่างอิสระ แต่ละแท็กแสดงความสัมพันธ์แบบมีเงื่อนไข ที่แข็งแกร่ง กับแท็กของคำก่อนหน้า ข้อเท็จจริงนี้สามารถใช้ประโยชน์ได้ในแบบจำลองลำดับ เช่นแบบจำลองมาร์คอฟที่ซ่อนอยู่หรือฟิลด์สุ่มแบบมีเงื่อนไข[ 2 ]ที่ทำนายลำดับแท็กทั้งหมดสำหรับประโยค (แทนที่จะเป็นเพียงแท็กแต่ละรายการ) ผ่านอัลกอริทึม Viterbi
เทคนิค
แบบจำลองกราฟิกเชิงความน่าจะเป็นเป็นแบบจำลองการทำนายที่มีโครงสร้างประเภทใหญ่ โดยเฉพาะอย่างยิ่งเครือข่ายเบย์เซียนและฟิลด์สุ่มเป็นที่นิยม อัลกอริทึมและแบบจำลองอื่นๆ สำหรับการทำนายที่มีโครงสร้าง ได้แก่การเขียนโปรแกรมเชิงตรรกะแบบอุปนัย การให้เหตุผลตามกรณี SVM ที่มีโครงสร้างเครือข่ายตรรกะมาร์คอฟตรรกะอ่อนเชิงความน่าจะเป็นและแบบจำลองเงื่อนไขที่มีข้อจำกัดเทคนิคหลักๆ ได้แก่:
- ฟิลด์สุ่มแบบมีเงื่อนไข
- เครื่องสนับสนุนเวกเตอร์แบบมีโครงสร้าง
- โครงสร้างk-เพื่อนบ้านที่ใกล้ที่สุด
- โครงข่ายประสาทเทียมแบบวนซ้ำโดยเฉพาะโครงข่ายเอลแมน
- ทรานส์ฟอร์เมอร์ส
เพอร์เซปตรอนที่มีโครงสร้าง
หนึ่งในวิธีที่ง่ายที่สุดในการทำความเข้าใจอัลกอริธึมสำหรับการทำนายโครงสร้างทั่วไปคือเพอร์เซปตรอนโครงสร้างโดยคอลลินส์ [ 3 ] อัลกอริธึมนี้รวม อัลกอริธึมเพอ ร์เซปตรอนสำหรับการเรียนรู้ตัวจำแนกเชิงเส้นเข้ากับอัลกอริธึมการอนุมาน (โดยทั่วไป คือ อัลกอริธึม Viterbiเมื่อใช้กับข้อมูลลำดับ) และสามารถอธิบายในเชิงนามธรรมได้ดังนี้:
- ขั้นแรก ให้กำหนดฟังก์ชันที่แมปตัวอย่างการฝึกอบรมและการคาดการณ์ของผู้สมัครไปยังเวกเตอร์ที่มีความยาว(และอาจมีโครงสร้างใดก็ได้;(ขึ้นอยู่กับปัญหา แต่ต้องกำหนดค่าให้คงที่สำหรับแต่ละรุ่น) ให้เป็นฟังก์ชันที่สร้างการคาดการณ์ที่เป็นไปได้
- แล้ว:
- อนุญาตเป็นเวกเตอร์น้ำหนักที่มีความยาว
- สำหรับจำนวนรอบที่กำหนดไว้ล่วงหน้า:
- สำหรับตัวอย่างแต่ละชิ้นในชุดข้อมูลฝึกฝนที่มีผลลัพธ์ที่แท้จริง:
- ลองทำนายดูสิ:
- อัปเดต(จากต่อ):, ที่ไหนคืออัตราการเรียนรู้
ในทางปฏิบัติ การหาค่า argmax เหนือทำได้โดยใช้อัลกอริธึม เช่น Viterbi หรือmax-sumแทนที่จะค้นหาอย่างละเอียดถี่ถ้วนผ่านชุดผู้สมัครที่มีขนาดใหญ่เป็นทวีคูณ
แนวคิดเรื่องการเรียนรู้นั้นคล้ายคลึงกับแนวคิดของ เพอร์เซป ตรอนแบบหลายคลาส
ลิงก์ภายนอก
- การนำเพอร์เซปตรอนโครงสร้างของคอลลินส์ไปใช้