งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP)

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP)"— ใบสำเนางานนำเสนอ:

1 การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP)
การทำให้คอมพิวเตอร์เข้าใจภาษาของมนุษย์ การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP) ภาพรวมของการประมวลผลภาษาธรรมชาติ ตัวแจงส่วนบนลงล่าง (Top-Down Parser) ตัวแจงส่วนตาราง (Chart Parser) ไวยากรณ์ข่ายงานเปลี่ยนสถานะ (Transition Network Grammar)

2 การสื่อสารระหว่างมนุษย์และคอมพิวเตอร์ด้วยเสียงพูด

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

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

5 การเข้าใจภาษาธรรมชาติ
การเข้าใจภาษาธรรมชาติ (Natural Language Understanding) มีขั้นตอนดังนี้ 1. การวิเคราะห์ทางองค์ประกอบ (Morphological Analysis) คือการวิเคราะห์หน่วยของคำว่าสามารถแยกย่อยได้เป็นอะไรบ้าง เช่น “การทำงาน” แยกได้เป็น “การ” และ “ทำงาน” หรือ “friendly” แยกได้เป็น “friend” และ “ly” 2. การวิเคราะห์ทางไวยากรณ์ (การวิเคราะห์ทางวากยสัมพันธ์) (Syntactic Analysis) คือการระบุหน้าที่ให้กับคำแต่ละคำ ว่าคำไหนเป็นประธาน กริยา และกรรม เพื่อใช้แสดงความสัมพันธ์ของคำต่างๆ

6 การเข้าใจภาษาธรรมชาติ (ต่อ)
การเข้าใจภาษาธรรมชาติ (ต่อ) 3. การวิเคราะห์ทางความหมาย (Semantic Analysis) คือการวิเคราะห์หาความหมายของคำ จากโครงสร้างทางไวยากรณ์ที่ได้จากการวิเคราะห์ทางไวยากรณ์ 4. บูรณาการทางวจนิพนธ์ (Discourse Integration) คือการพิจารณาความหมายของประโยคจากประโยคข้างเคียง เนื่องจากคำบางคำจะเข้าใจความหมายได้ ต้องดูความหมายจากประโยคก่อนหน้า 5. การวิเคราะห์ทางปฏิบัติ (Pragmatic Analysis) คือการแปลความหมายของประโยคใหม่อีกครั้ง

7 ตัวอย่างการประมวลภาษาธรรมชาติ
การใช้ภาษามนุษย์สั่งงานระบบยูนิกซ์ การแปลงข้อความภาษาธรรมชาติไปเป็นคำสั่งของระบบยูนิกซ์ พิมพ์คำสั่ง “I want to print Bill’s .init file.” ระบบจะทำการประมวลผลภาษาธรรมชาติดังนี้ วิเคราะห์ทางองค์ประกอบในระดับคำ ซึ่งจะได้ว่า Bill’s ประกอบด้วย Bill และ ’s ซึ่งจากการวิเคราะห์ ’s พบว่า Bill เป็นคำคุณศัพท์ (Adjective) เช่นเดียวกับ .init ในคำสั่งยูนิกซ์ ทำหน้าที่เป็นคำคุณศัพท์เช่นกัน

8 ตัวอย่างการประมวลภาษาธรรมชาติ (ต่อ)
หลังจากผ่านกระบวนการวิเคราะห์ทางองค์ประกอบแล้วขั้นตอนต่อไปคือ การวิเคราะห์ทางไวยากรณ์ ซึ่งจะได้ผลลัพธ์ดังรูป

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

10 ตัวอย่างการประมวลภาษาธรรมชาติ (ต่อ)
ฐานความรู้ของระบบยูนิกซ์ (ต่อ)

11 ตัวอย่างการประมวลภาษาธรรมชาติ (ต่อ)
ฐานความรู้ของระบบยูนิกซ์ (ต่อ)

12 ตัวอย่างการประมวลภาษาธรรมชาติ (ต่อ)
ผลลัพธ์จากการวิเคราะห์ทางความหมาย

13 ตัวอย่างการประมวลภาษาธรรมชาติ (ต่อ)
ผลของการบูรณาการวจนิพนธ์ (Discourse Integration) คำสั่งยูนิกซ์ที่ได้คือ lpr /wsmith/stuff.init

14 การวิเคราะห์ทางไวยากรณ์ (Syntactic Processing)
การวิเคราะห์ทางไวยากรณ์ ช่วยให้การประมวลผลภาษาทำได้ง่ายขึ้น การวิเคราะห์ทางไวยากรณ์ส่วนประกอบหลักๆอยู่ 2 ส่วนคือ ฐานความรู้ ไวยากรณ์ (Grammar) คลังศัพท์ (Lexicon) ตัวแจงส่วน (Parser)

15 การวิเคราะห์ทางไวยากรณ์ (ต่อ) (Syntactic Processing)
ไวยากรณ์ (Grammar) ของระบบ NLP เป็นตัวกำหนดระเบียบในการประกอบคำให้เป็นประโยค ซึ่งอาจเขียนอยู่ในรูปของ Context-Free Grammar เช่น ไวยากรณ์ภาษาอังกฤษแบบง่าย

16 การวิเคราะห์ทางไวยากรณ์ (ต่อ) (Syntactic Processing)
คลังศัพท์ (Lexicon) เก็บคำศัพท์ที่มีอยู่ในระบบพร้อมระบุประเภทของคำศัพท์ เช่น cried: V dogs: N, V the: ART old: ADJ, N man: N, V

17 การวิเคราะห์ทางไวยากรณ์ (ต่อ) (Syntactic Processing)
ตัวแจงส่วน (Parser) เป็นส่วนของการวิเคราะห์ไวยากรณ์เพื่อหาโครงสร้างของประโยค

18 การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP)
การทำให้คอมพิวเตอร์เข้าใจภาษาของมนุษย์ การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP) ภาพรวมของการประมวลผลภาษาธรรมชาติ ตัวแจงส่วนบนลงล่าง (Top-Down Parser) ตัวแจงส่วนตาราง (Chart Parser) ไวยากรณ์ข่ายงานเปลี่ยนสถานะ (Transition Network Grammar)

19 ตัวแจงส่วนจากบนลงล่าง (Top-Down Parser)
ตัวแจงส่วนจากบนลงล่าง จะสร้างต้นไม้จากบนลงล่าง โดยเริ่มสร้างจาก root node ก่อน คือสร้างจาก S เป็น node แรกก่อนแล้วแตก S ออกเป็น node ลูก โดยดูจากไวยากรณ์ จากนั้นทำการจับคู่คำจากประโยคที่ทำการวิเคราะห์ที่มีหน้าที่ตรงกับโครงสร้างของต้นไม้ ในการแจงส่วนจะประกอบด้วยข้อมูลสำคัญ 2 ส่วนเพื่อใช้เป็นข้อมูลสำหรับการแจงส่วน รายการสัญลักษณ์ (Symbol List) ใช้แสดงโครงสร้างไวยากรณ์ที่ยังไม่ได้ถูกแจงส่วน ตัวเลขที่ใช้ระบุตำแหน่งของการแจงส่วนว่าดำเนินมาถึงไหนแล้ว

20 ตัวแจงส่วนจากบนลงล่าง (Top-Down Parser) (ต่อ)
ตัวอย่างการแจงส่วนจากบนลงล่าง 1The 2dog 3cried 4 สมมุติการแจงส่วนดำเนินมาถึงขั้นตอนหนึ่ง ซึ่งได้สถานะของการแจงส่วนดังนี้ (( N VP ) 2 ) รายการสัญลักษณ์ (Symbol List) ตัวเลขระบุตำแหน่งปัจจุบันของการแจงส่วน

21 อัลกอริทึมของการแจงส่วนจากบนลงล่าง

22 ตัวอย่างการแจงส่วนแบบบนลงล่าง จากประโยค 1The 2dogs 3cried 4
Step Current State Backup State Comment 1 ((S)1) initial position 2 ((NP VP)1) rewrite S by rule 1 3 ((ART N VP)1) ((ART ADJ N VP)1) rewrite NP by rule 2 and 3 4 ((N VP)2) match ART with The 5 ((VP)3) match N with dogs 6 ((V)3) ((V NP)3) rewrite VP by rule 4 and 5 7 ( ) the parse succeeds as V is matched to cried

23 ตัวอย่างการแจงส่วนแบบบนลงล่าง จากประโยค 1The 2old 3man 4cried 5
Step Current State Backup State Comment 1 ((S)1) initial position 2 ((NP VP)1) rewrite S by rule 1 3 ((ART N VP)1) ((ART ADJ N VP)1) rewrite NP by rule 2 and 3 4 ((N VP)2) match ART with The 5 ((VP)3) match N with old 6 ((V)3) ((V NP)3) rewrite VP by rule 4 and 5 7 (( )4) match V with man

24 ตัวอย่างการแจงส่วนแบบบนลงล่าง จากประโยค 1The 2old 3man 4cried 5 (ต่อ)
Step Current State Backup State Comment 8 ((V NP)3) ((ART ADJ N VP)1) the first backup is chosen 9 ((NP)4) match V with man 10 ((ART N)4) ((ART ADJ N)4) 11 no matching and choose the first backup 12 13 ((ADJ N VP)2) 14 ((N VP)3)

25 ตัวอย่างการแจงส่วนแบบบนลงล่าง จากประโยค 1The 2old 3man 4cried 5 (ต่อ)
Step Current State Backup State Comment 15 ((VP)4) 16 ((V)4) ((V NP)4) 17 ( ) success

26 การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP)
การทำให้คอมพิวเตอร์เข้าใจภาษาของมนุษย์ การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP) ภาพรวมของการประมวลผลภาษาธรรมชาติ ตัวแจงส่วนบนลงล่าง (Top-Down Parser) ตัวแจงส่วนตาราง (Chart Parser) ไวยากรณ์ข่ายงานเปลี่ยนสถานะ (Transition Network Grammar)

27 ตัวแจงส่วนตาราง (Chart Parser)
ตัวแจงส่วนตาราง จะสร้างต้นไม้จากล่างขึ้นบน โดยเริ่มจากนำคำมาจับคู่กับโครงสร้างของไวยากรณ์ เพื่อสร้างเป็นวลีและสุดท้ายออกมาเป็นประโยค ตัวแจงส่วนตาราง จะใช้ตารางในการเก็บผลลัพธ์บางส่วนจากการจับคู่ วิธีการจับคู่ มีดังนี้ เลือกจับคู่คำศัพท์กับกฎใหม่ เลือกจับคู่คำศัพท์กับกฎที่ใช้ไปแล้วก่อนหน้า (ผลลัพธ์บางส่วนจากการจับคู่ที่ยังไม่สมบูรณ์) เพื่อขยายกฎให้สมบูรณ์ยิ่งขึ้น

28 ตัวแจงส่วนตาราง (Chart Parser) (ต่อ)
ไวยากรณ์ของภาษาอังกฤษอีกแบบหนึ่ง สมมุติการแจงส่วนรับคำศัพท์เข้ามาเป็น ART ระบบจะนำ ART ไปจับคู่กับกฎใหม่ โดยดูว่า กฎไหนที่มี ART ขึ้นต้นบาง ผลของการจับคู่ ได้ดังนี้ ต่อมาถ้ามีคำใหม่เข้ามาเป็น ADJ จะได้ สัญลักษณ์แสดงการจับคู่ว่าดำเนินมาถึงจุดไหนแล้ว นำ ADJ มาจับคู่กับกฎใหม่ นำ ADJ มาจับคู่กับกฎเดิมที่มีอยู่แล้ว

29 ตัวแจงส่วนตาราง (Chart Parser) (ต่อ)
ผลลัพธ์ของการจับคู่เมื่อผ่านไป 2 คำศัพท์ ART1 ADJ1 1 2 3 หน่วยความจำที่ใช้เก็บข้อมูลของการจับคู่ เรียกว่าอาเจนดา (Agenda) เส้นเชื่อมกัมมันต์ (Active Arc)

30 อัลกอริทึมของการแจงส่วนแบบตาราง

31 อัลกอริทึมของการแจงส่วนแบบตาราง (ต่อ)

32 ตัวอย่างการแจงส่วนตาราง
กำหนดให้ไวยากรณ์ (กฎ) ที่ใช้คือ กำหนดให้คลังศัพท์มีดังนี้ the: ART large: ADJ can: N, AUX, V hold: N, V water: N, V

33 ตัวอย่างการแจงส่วนตาราง (ต่อ)
ให้ทำการแจงส่วนข้อความต่อไปนี้ “The large can can hold the water”

34 ตัวอย่างการแจงส่วนตาราง (ต่อ)

35 ตัวอย่างการแจงส่วนตาราง (ต่อ)

36 การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP)
การทำให้คอมพิวเตอร์เข้าใจภาษาของมนุษย์ การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP) ภาพรวมของการประมวลผลภาษาธรรมชาติ ตัวแจงส่วนบนลงล่าง (Top-Down Parser) ตัวแจงส่วนตาราง (Chart Parser) ไวยากรณ์ข่ายงานเปลี่ยนสถานะ (Transition Network Grammar)

37 ไวยากรณ์ข่ายงานเปลี่ยนสถานะ
ไวยากรณ์ข่ายงานเปลี่ยนสถานะเขียนอยู่ในรูปของข่ายงานประกอบด้วย node และเส้นเชื่อม (arc) node แสดงถึงสถานะของการแจงส่วนประโยค เส้นเชื่อม แสดงถึงองค์ประกอบหรือหน้าที่ของคำนั้นๆ

38 ไวยากรณ์ข่ายงานเปลี่ยนสถานะ (ต่อ)
สำหรับประโยคที่ซับซ้อนต้องใช้ไวยากรณ์ข่ายงานอีกแบบหนึ่ง เรียกว่า ข่ายงานเปลี่ยนสถานะเรียกซ้ำ หรืออาร์ทีเอ็น (Recursive Transition Network; RTN) อาร์ทีเอ็น สามารถอ้างอิงถึงข่ายงานอื่นๆได้ เส้นเชื่อมใน อาร์ทีเอ็น มี 2 ชนิดคือ เส้นเชื่อมแสดงหน้าที่ (ประเภท) ของคำ (เหมือนกับข่ายงานเปลี่ยนสถานะแบบปกติ) (ใช้ตัวอักษรตัวเล็ก) เส้นเชื่อมที่อ้างถึงข่ายงานอื่น (ใช้ตัวอักษรตัวใหญ่)

39 ไวยากรณ์ข่ายงานเปลี่ยนสถานะ (ต่อ)
ข่ายงานเปลี่ยนสถานะเรียกซ้ำ (อาร์ทีเอ็น)

40 อัลกอริทึมการแจงส่วนแบบบนลงล่างสำหรับอาร์ทีเอ็น
อัลกอริทึมนี้จะเก็บสถานะของการแจงส่วนไว้ 3 สถานะ ดังนี้ โหนดปัจจุบัน (current node) คือ node ที่แจงส่วนอยู่ในปัจจุบัน ตำแหน่งปัจจุบัน (current position) ตำแหน่งของคำถัดไปที่จะประมวลผล จุดกลับ (return points) สถานะที่จะย้อนกลับไป ในกรณีที่มีการอ้างอิงไปยังข่ายงานอื่น และเมื่อพบเส้นเชื่อม pop ก็จะกลับมายังข่ายงานหลักสำหรับการแจงส่วน

41 อัลกอริทึมการแจงส่วนแบบบนลงล่างสำหรับอาร์ทีเอ็น (ต่อ)

42 ตัวอย่างการแจงส่วนด้วยอาร์ทีเอ็น
ให้ทำการแจงส่วนข้อความโดยใช้อาร์ทีเอ็นดังต่อนี้ กำหนดให้คลังศัพท์มีดังนี้ the: ART old: ADJ, N man: N cried: V

43 ตัวอย่างการแจงส่วนด้วยอาร์ทีเอ็น จากประโยค 1The 2old 3man 4cried 5 (ต่อ)
Step Current Node Current Position Return Point Arc to be Followed Comment 1 S NIL S/1 initial position 2 NP S1 NP/1 followed push arc to NP network, return to S1 3 NP1 NP1/1 followed arc NP/1 (the) 4 NP1/2 followed arc NP1/1 (old) 5 NP2 NP2/1 followed arc NP1/2 (man)

44 ตัวอย่างการแจงส่วนด้วยอาร์ทีเอ็น จากประโยค 1The 2old 3man 4cried 5 (ต่อ)
Step Current Node Current Position Return Point Arc to be Followed Comment 6 S1 4 NIL S1/1 the pop arc gets us back to S1 7 S2 5 S2/1 followed arc S2/1 (cried) parse succeeds

45 ตัวอย่างการแจงส่วนด้วยอาร์ทีเอ็น จากประโยค 1One 2saw 3the 4man 5
กำหนดให้คลังศัพท์มีดังนี้ one: NUMBER, PRONOUN saw: V, N the: ART man: N Step Current State Arc to be Followed Backup State 1 (S,1,NIL) S/1 NIL 2 (NP,1,(S1)) NP/2 (NP/3 backup) 3 (NP1,2,(S1)) NP1/2 (NP2,2,(S1)) 4 (NP2,3,(S1)) NP2/1 5 (S1,3,NIL) no arc can be followed 6

46 ตัวอย่างการแจงส่วนด้วยอาร์ทีเอ็น จากประโยค 1One 2saw 3the 4man 5 (ต่อ)
Step Current State Arc to be Followed Backup State 7 (S1,2,NIL) S1/1 NIL 8 (S2,3,NIL) S2/2 9 (NP,3,(S2)) NP/1 10 (NP1,4,(S2)) NP1/2 11 (NP2,5,(S2)) NP2/1 12 (S2,5,NIL) S2/1 13 parse succeeds


ดาวน์โหลด ppt การประมวลผลภาษาธรรมชาติ (Natural Language Processing; NLP)

งานนำเสนอที่คล้ายกัน


Ads by Google