Triangulation

รูปแบบการเรียนรู้เพื่อตอบคำถามบนเว็บเพ็จ

Web Question Answering System

นางสาวศรัณย์ลักษณ์  จินาเขียว

ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยบูรพา

ชลบุรี 20131

e-mail: [email protected]

 

 

 

บทคัดย่อ

 

ถึงแม้ว่า การใช้คำสำคัญ เพื่อเข้าถึงหน้า เว็บเพ็จและ เสิร์ช เอ็นจินต่าง ๆ  เช่น  Google, Yahoo, Alta Vista,และ  AOL จะประสบความสำเร็จอย่างมากในปัจจุบัน  แต่ก็ยังขาดความสามารถที่จะตอบคำถามในรูปแบบของ ภาษาธรรมชาติ  ด้วยสาเหตุนี้ จึงได้มีการคิดค้นวิธีการที่สามารถตอบคำถามในรูปแบบของภาษาธรรมชาติ  และสามารถ ที่จะเรียนรู้ จดจำรูปแบบของคำถามได้โดยอัตโนมัติอีกด้วย  ซึ่งวิธีการนี้ได้นำไปใช้กับระบบ ที่เรียกว่า Business intelligence (BI)และโปรแกรมประยุกต์อื่น ๆ ที่เกี่ยวข้อง  และนอกจากนี้ยังได้มีการนำเสนอวิธีการที่เรียกว่า Self-Learningหรือ การเรียนรู้ด้วยตนเอง โดยวิธีการนี้จะไม่สนใจหลักไวยากรณ์ของภาษาใด ๆ   จึงทำให้ง่ายต่อการใช้งานร่วมกับระบบต่าง ๆ เช่น ดิจิตอล ไลบรารี่หรือว่า เสิร์ช พอร์ทอลอีกด้วย 

 

Abstract

 

While being successful in providing keyword based access to web pages, commercial search portals, such as Google, Yahoo, Alta Vista, and AOL, still lack the ability to answer questions expressed in a natural language.  In this paper, present a completely trainable approach to the automated question answering on the Web for the purpose of business intelligence and other practical applications.  And also introduce an entirely self-learning approach that does not involve any linguistic resource.  It can be easily implemented within various in formations awareness systems such as digital libraries or Web search portals.

 

Key-Words:  Question Answering Systems, WWW,

Information Retrieval, Pattern Matching Information, triangulation.

 

General Terms

Algorithms, Experimentation.

 

 

1.บทนำ

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

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

ในขณะที่การนำเสนอ คำสำคัญ เพื่อเพื่อใช้ในการค้นหา และ ธุรกิจการค้นหาข้อมูลต่าง ๆ เช่น Google, Yahoo, AOL และ Alta Vista ได้ประสบความสำเร็จในการเข้าถึงหน้าเว็บแล้วนั้น   แต่ยังคงด้อยประสิทธิภาพในการตอบคำถามที่อยู่ในรูปแบบของภาษาธรรมชาติ จนกระทั่งเมื่อไม่นานมานี้ Dumais et. [5] นำเสนอ ระบบการตอบคำถามบนเว็บ (Web Question Answering System) ซึ่งใช้หลักการ การสลับที่และการรวมกันของคำแบบง่าย ๆ (เรียกว่า “Rewrite” หรือ การเขียนซ้ำ) โดยผลลัพธ์ที่ได้จากการค้นหา ความถูกต้องของคำตอบจะเป็น คำตอบที่สองที่ระบบหาเจอ ซึ่งถือว่าเป็นการแปลแบบหยาบ ๆ หรือโดยประมาณ

 

รูปที่ 1.1 แสดงภาพรวมของ Rewrite Architecture

 

ในเอกสารฉบับนี้ ได้นำเสนอหลักการที่ได้มีการพัฒนามาจาก วิธีการเขียนซ้ำแบบง่าย ๆ  ซึ่งใช้หลักการ การระบุเอกสารแบบอัตโนมัติ และการฝึกฝนเรียนรู้รูปแบบของคำถามและคำตอบ รวมไปถึงหลักการจับคู่ของรูปแบบที่คล้ายกันบนเว็บ ซึ่งนำไปใช้เป็นรูปแบบของประโยคคำตอบ (เช่น คำถาม “In which city Eiffel Tower is locate?” โดยรูปแบบของประโยคคำตอบ ก็คือ “city”)    ซึ่งจะทำให้ทราบว่าคำถามต้องการคำตอบในรูปแบบใด

ข้อดีของวิธีการ จับคู่และฝึกฝนเรียนรู้รูปแบบสำหรับห้องสมุดดิจิตอลและการค้นหาข้อมูลบนเว็บ คือ

-                      Simplicity หรือ ความง่าย : รูปแบบนี้สามารถเรียนรู้ได้อัตโนมัติ โดยไม่ต้องทำการพัฒนาอย่างลึกซึ้งมากนัก

-                      Objectivityหรือ วัตถุประสงค์ : ผลของการศึกษา สามารถนำไปใช้สำหรับผู้วิจัยรายอื่นได้ง่าย

-               Speed หรือ ความเร็ว : หลักการนี้สามารถนำไปรวมกับเทคนิคหรือวิธีการที่ลึกซึ้งได้ จะทำให้ค้นหาได้เร็วขึ้น เช่น การระบุประโยคที่รวดเร็ว ทำได้จากกระบวนการวิธีที่ลึกซึ้งและซับซ้อน

 

 

รูปที่ 1.2 แสดงภาพรวมของ Web Question Answering

 

 

2.เทคโนโลยีที่เกี่ยวข้อง

ในขณะที่ การค้นหาคำตอบ สำหรับคำถาม     “Who is CEO of IBM” จะใช้แนวทางในการจับคู่รูปแบบของคำถามและคำตอบ เช่น “CEO of IBM is Samuel Palmisano” ซึ่งเข้ากับรูปแบบ “\Q is \A” โดยที่ \Q เป็นส่วนของคำถาม และ \A เป็นส่วนของคำตอบ ดังนั้นรูปแบบในการจับคู่ คือ \Q = “CEO of IBM” ซึ่งเป็นส่วนของคำถาม และ \A = “Samuel Palmisano” เป็นส่วนของข้อความที่สร้างขึ้นมาเป็นตัวเลือกของคำตอบ   และสามารถนำไปสร้างรูปแบบของคำถามได้โดยอัตโนมัติถึง 200 รูปแบบ สำหรับคำถามแต่ละประเภท เช่น (What is, What was, Where is, etc.) ซึ่งอยู่บนพื้นฐานของการฝึกฝนหรือจดจำรูปแบบ ซึ่งประกอบไปด้วย คู่ของคำถาม และ คำตอบ โดยแต่ละรูปแบบจะมีการจับคู่ที่ความเป็นไปได้ เนื่องจากได้มีการฝึกฝนให้จดจำด้วยกระบวนการ ที่เรียกว่า “Triangulation” (การยืนยันและไม่ยืนยัน) ที่สามารถจัดลำดับของคำตอบที่ถูกเลือกใหม่ได้ \A, \Q, \p (เครื่องหมายวรรคตอน) และ * (เป็นตัวที่สามารถเข้าคู่ได้กับทุกคำ) ซึ่งเป็นสัญลักษณ์พิเศษที่ใช้ในรูปแบบของภาษา

 

 

 

 

 

3.ขั้นตอนวิธี

3.1ขั้นตอนการตอบคำถาม

การตอบคำถามสำหรับคำถามที่ว่า “In which city is Eiffel Tower located?” นั้น สามารถพิสูจน์ด้วยขั้นตอนดังนี้

Type Identificationการแยกประเภท:  คำถามสามารถจับคู่กับตัวมันเอง โดยแยกตามรูปแบบดังนี้

In which \T is \Q \V โดยที่ \T = “city” ซึ่งเป็นรูปแบบของประโยคคำตอบที่คาดหวังเอาไว้\Q = “Eiffel Tower” ซึ่งเป็นส่วนของคำถาม และ\V = คำกิริยารูปอดีต ที่ใช้ในบางประเภทของคำถามเท่านั้น

Query Modulationการปรับรูปแบบคำถาม:  รูปแบบของแต่ละคำตอบ สามารถนำเข้าไปไว้ในคำถามได้ (เช่น \Q is \V in \A) เพื่อใช้สำหรับเสิร์ชเอนจินทั่ว ๆ ไป หรือ GPSE (General Purpose Search Engine) เช่น Alta Vista จะได้รูปแบบของคำถาม ที่นำคำตอบเข้าไปรวมไว้ด้วย คือ “Eiffel Tower is NEAR”

Answer Matchingการจับคู่ของคำตอบ:ประโยคที่ว่า “Eiffel Tower is located in the center of Paris, the capital of France”อาจจะเป็นผลลัพธ์ จากการจับคู่และสร้างตัวเลือกของคำตอบ “the center of Paris, the capital of France”ซึ่งมีความเป็นไป ที่จะมีคำตอบที่ถูกต้อง ที่ได้จากการฝึกฝนจดจำรูปแบบของคำตอบเอาไว้แล้ว

Answer Detailing รายละเอียดของคำตอบ:  ประกอบด้วยตัวเลือกของคำตอบมากมายที่เกิดจากการนำวลีย่อยมาจากคำตอบก่อนหน้านี้ ซึ่งวลีย่อยนี้จะไม่เกิน 3 คำ (ไม่นับ คำหยุด : a, the, in, on) และไม่นับเครื่องหมายวรรคตอน ตัวอย่าง เช่น “center”, “Paris”, “capital”, “France”, “center of Paris”, “capital of France” เนื่องจากว่าบนเว็บวลีย่อยเหล่านี้อยู่มากมาย จึงทำให้มีความหลากหลายทางเลือกในการจับคู่

หลักการ หยุดคำถาม สำหรับ GPSE (General Purpose Search Engine) เมื่อมีการระบุหมายเลขหน้าของเอกสาร ที่ได้ทำการสแกนไปแล้ว (1000 หน้า สำหรับกรณีศึกษานี้) ถ้าหากตัวเลือกของคำตอบถูกค้นพบน้อยกว่าที่คาดหวังไว้ (ณ ที่นี้ คือ 200) จะไปที่ อัลกอริทึม       “Fall back”  ดังใน [5] โดยระบบจะทำการสร้างตัวเลือกของคำตอบ จากประโยคย่อย ๆ ที่ส่งคืนมาจาก GPSE และนำมาประยุกต์เป็นรายละเอียดของคำตอบ และถ้าหากตัวเลือกยังไม่พอ ระบบก็จะทำการปรับคำถาม (โดยการกำจัดคำที่มักจะพบบ่อยในเว็บออกไปก่อน) จนกระทั่งเมื่อสามรถหาคำถามที่ใช้ได้ จึงกลับไปทำงานที่ GPSE             ซึ่งวิธีการนี้ สามารถทำให้เข้าใจคำถามได้ง่ายขึ้น เช่นการ

ปรับคำถาม “Who still makes rod hockey games?” เป็น “Who still makes rod hockey? ”

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

Semantic Filteringระบบนี้สร้างการค้นหาในเว็บเพื่อยืนยันชนิดของรูปแบบประโยคจากตัวเลือก 20 ตัวแรก โดยตามขั้นตอนเดียวกัน ถ้าหากเป็นคำตอบของคำถาม “What is Paris?” คำตอบที่ถูกคาดหวังไว้ก็คือ “city” ยกตัวอย่างเช่น ประโยคที่ว่า “Paris, a city of dreams, can be amazing at night” ซึ่งจับคู่กับ WHAT-IS ในรูปแบบของ \Q, \A *

 

3.2                     Triangulation

Triangulation คือ คำที่ใช้กันอย่างแพร่หลาย เช่นในหนังสือพิมพ์ สำหรับการยืนยันหรือไม่ยืนยัน ในสถานการณ์ต่าง ๆ ที่เกิดขึ้น โดยในเอกสารฉบับนี้ได้นำเสนอ อัลกอริทึม Triangulation ซึ่งสามารถพิสูจน์ได้ดังตัวอย่างต่อไปนี้ สมมติว่าเรามีตัวเลือกที่เป็นคำตอบอยู่  2 ข้อ สำหรับคำถามที่ว่า “What was the purpose of Manhattan Project?” คือ 1) “To develop a nuclear bomb”   2) “To create a nuclear weapon” ซึ่งทั้งคำตอบนี้สนับสนุนซึ่งกันและกัน เพราะว่าประโยคมีความคล้ายกัน ซึ่งถ้าหากนับความถี่ความเหมือนกันของคำ [5] จะไม่สามารถนับความเหมือนกันได้เลย เพราะว่าความถี่มีน้อยมาก ประโยชน์ของ Triangulation ที่มีมากกว่าการนับความถี่ คือ ความเข้มแข็งของคำถามที่มีความเป็นจริงน้อย ซึ่งคำถามเหล่านี้อาจมีคำตอบที่ถูกต้องได้ ซึ่งรวมไปถึงความถี่ของคำจำกัดความ และคำถามประเภท “How to” ดังนั้น จึงมีการวัดความคล้ายกันรูปแบบประโยค ระหว่าง คำและวลี

จากตัวอย่าง คำถาม “What was the purpose of Manhattan Project?” มี ตัวเลือกคำตอบดังนี้

1)      “To develop a nuclear bomb”

2)      “To create a nuclear weapon”

 

sim (a1, a2) = so(a1,a2) / (length(a1) + length(a2))

a1= ตัวเลือกคำตอบที่ 1

a2 = ตัวเลือกคำตอบที่ 2

so(a1,a2) = คำที่มีอยู่ทั้งใน a1 และ a2 ซึ่งไม่ใช่คำหยุด และไม่ใช่คำจากส่วนของคำถาม ซึ่งจากตัวอย่างมี 1 คำ คือ คำว่า “nuclear”

length(a1) = จำนวนคำตัวเลือกในคำตอบที่ a1 ซึ่งไม่ใช่คำหยุด ซึ่งมี 3 คำ คือ “develop”, “nuclear”, “bomb”

length(a2) = จำนวนคำตัวเลือกในคำตอบที่ a2 ซึ่งไม่ใช่   คำหยุด ซึ่งมี 3 คำ คือ “create”, “nuclear”, “weapon”

เพราะฉะนั้นจากสมการจะได้ sim = 1 / (3+3)

 

3.3             Pattern Trainingการฝึกฝนและ

จดจำรูปแบบ

ในแต่ละคู่ของคำถามและคำตอบ ของระบบที่ได้ร้องขอเว็บเพ็จจาก GPSE จะประกอบไปด้วยส่วนที่เป็นคำถาม Q และส่วนที่เป็นคำตอบ A ที่เหมาะสม ซึ่งแต่ละประโยคจะประกอบไปด้วย คำถามและคำตอบ ที่สามารถแปลงไปเป็นรูปแบบของตัวเลือก ด้วยการที่แทนส่วนของคำถามด้วยสัญลักษณ์ \Q และแทนส่วนของคำตอบด้วยสัญลักษณ์ \A โดยได้มีการระบุหมายเลขในแต่ละรูปแบบไว้ (ในกรณีศึกษานี้ใช้ 200 รูปแบบ)

ซึ่งมีหลายรูปแบบที่ได้สร้างจากกระบวนการอนุกรม (Recursive) ที่เรียกว่า “Generalization” ด้วยการแทนที่คำที่เป็นไปได้ของประโยค และการสร้างประโยคย่อย ๆ ที่ประกอบไปด้วยทั้งส่วนของ \Q และ \A ซึ่งการเรียงลำดับของคำที่เป็นไปได้ในประโยค ที่คล้ายกัน จะถูกรวมเข้าด้วยกัน และคำที่เป็นไปได้ที่ซ้ำกันจะถูกกำจัดออกไปจาก \A จากการทดลองนี้สามารถฝึกฝนและจดจำรูปแบบได้มากที่สุดถึง 500 รูปแบบ ซึ่งเป็นการจับคู่คำถามและคำตอบที่ถูกต้อง และทำการปรับเปลี่ยนรูปแบบที่น่าจะเป็นไปได้ทั้งหมด

 

3.4                     Scalability and Responsiveness

การวัดประสิทธิภาพ และ เวลาในการตอบสนอง

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

 

ตารางที่ 1 การเปรียบเทียบ Search engine และ Web QA

 

   

 

จากตาราง 1.1 แสดงถึงการทดสอบประสิทธิภาพของ Web QA เปรียบเทียบกับ Search engine โดยกำหนดให้ตัวแปรต่างๆ เท่ากัน ความสามารถของผู้ใช้งานแบ่งเป็น 2 ระดับ คือ ผู้ใช้งานระดับที่ใช้งานได้คล่องแล้ว และผู้ใช้งานระดับเริ่มต้นฝึกหัดใช้งาน และ ระดับของงานที่ทดลองแบ่งได้ดังนี้ คือ งานแรกมีระดับความยากมาก ส่วนงานที่สอง มีระดับความยากน้อย ผลลัพธ์ที่ได้ถือว่าอยู่ในเกณฑ์ดีทั้งสองการทดลองที่อยู่ในเงื่อนไขเดียวกัน

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

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

-          เลือกกลุ่มของคำถามที่หลากหลาย และเป็นตัวแปรที่เป็นมาตรฐานที่ใช้กันทั่วไป

-          หลีกเลี่ยงความเอนเอียงของนักวิจัยที่มีต่อตัวแปร และผลการทดลอง

-          ควรใช้นักวิจัยที่อยู่ในกลุ่มงานวิจัยเดียวกันเพื่อให้ผลการทดลองเป็นไปอย่างถูกต้อง

 

 

  1. การประยุกต์ใช้งาน

การนำระบบการตอบคำถามบนเว็บเพ็จแบบอัตโนมัติไปประยุกต์ใช้งานนั้น สามารถนำไปใช้งานร่วมกับ ระบบห้องสมุดดิจิตอล และการประกอบธุรกิจประเภทการค้นหาข้อมูลต่าง ๆ  เช่น Google, AOL, Alta Vista และ Yahoo เป็นต้น และนอกจากนั้น ยังสามารถนำไปประยุกต์ใช้งานกับธุรกิจแบบฉลาด หรือที่เรียกว่า BI (Business Intelligence)ซึ่งสามารถค้นหาข้อมูลต่าง ๆ เกี่ยวกับธุรกิจได้ ดังตัวอย่าง

-          การค้นหาผู้จัดการอาวุโสของบริษัทคู่แข่งขัน เช่น “Who is the CEO of IBM?”

-           การค้นหาแหล่งตลาดหรือภูมิประเทศที่เหมาะสมในการลงทุน เช่น “What is longest river in the U.S.?”

-           การค้นหาบริษัทที่ผลิตสินค้าเหมือนกัน เช่น “Who makes rod hockey games?”

-          การค้นหาข้อมูลที่ไม่ทราบรายละเอียด เช่น “What does audit committee mean?”

 

 

5.  การประเมินการจากการทดลอง และบทสรุป       

ในการทดลองครั้งนี้ ได้ใช้ชุดข้อมูล TREC Q\A [5] จากปี ค.ศ. 1999-2002 เพื่อทำการทดลอง และยกเว้นปี 2001 ซึ่งใช้ในการทดสอบเพื่อทำการเปรียบเทียบกับผลการทดลองก่อนหน้านี้  การทดสอบครั้งนี้ได้ตั้งเอาไว้เพียงแค่ไม่กี่คำถามที่สามารถเกิดประโยชน์จากการกลั่นกรองรูปแบบประโยคโดยอัตโนมัติ รวมถึงคำตอบที่ค่อนข้างชัดเจน แผนการในการใช้หลักการแบบ triangulation ไม่ได้เกิดประโยชน์มากกว่าการนับแบบง่ายๆ นอกจากนี้ยังทำการทดสอบกว้างๆ แบบแยกส่วน แต่อย่างไรก็ตามผลทดสอบเบื้องต้นนี้ จะสามารถสนับสนุนแนวทางการพัฒนาในรูปแบบของการตอบคำถามแบบอัตโนมัติ ดังนั้นจึงสามารถนำไปใช้ในระบบห้องสมุดดิจิตอลได้ง่ายดายโดยที่ไม่ต้องทำการค้นหาเข้าไปในระบบทางภาษาศาสตร์ ซึ่งการศึกษาครั้งนี้ เป็นการศึกษาจากผู้ใช้จริง ผลลัพธ์ที่ได้จึงเป็นดังที่กล่าวมาข้างต้น

 

 

 

 

6. เอกสารอ้างอิง

[1] Dmitri Roussinov, Jose Robles. Learning Patterns to

      Answer open domain Question on the Web.

      Conf. 2001.

                [2] Dmitri Roussinov, Jose Robles. Web Question

Answering: Technology and Business Application.

Conf. 2002

[3] Dmitri Roussinov, Jose Robles. Web Question

Answering: Through Automatically Learned

Patterns. Conf. August, 2004.

       [4] Dmitri Roussinov, Jose Robles. Self-learning

    Web Question Answering System. Conf. 2003.

       [5] Susan Dumais, Michele Banko, Eric Brill,  Jimmy   

            Lin, Andrew Ng. Web Question Answering : Is 

            More Always Better?. Conf.. 2002.