07 January 2005

Machine Learning ตอนที่ 2

ตัวอย่างและลักษณะประจำ

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

ถ้าพูดในแง่ฐานข้อมูลแล้ว ข้อมูลทั้งหมดก็คือตารางหนึ่งในฐานข้อมูล ที่มีเรคอร์ดแทนข้อมูลแต่ละชุด และฟิลด์แทนลักษณะประจำของข้อมูลแต่ละตัว ถ้าพูดในแง่คณิตศาสตร์ข้อมูลแต่ละชุด ก็คือเวคเตอร์ที่ประกอบด้วยค่าของลักษณะประจำเรียงต่อกัน ถ้าพูดในแง่ตรรกศาสตร์แล้ว ค่าของลักษณะประจำแต่ละตัว ก็คือประพจน์ที่บอกค่าความจริง และเราสามารถแทนข้อมูลแต่ละชุดด้วยประพจน์เชิงซ้อน ซึ่งเกิดจากการเชื่อมลักษณะประจำแต่ละตัวเข้าด้วยตัวเชื่อม "และ" เช่น ข้อมูลของผู้สมัครคือ เพศชาย และ 25ปี และ รับราชการ และ อาจารย์ และ 10000บาท และ 2ปี ที่ต้องพูดถึงข้อมูลในหลายๆ แบบ ก็เพราะเรานำการเรียนรู้ของเครื่องไปเกี่ยวข้องกับหลายวงการ เกี่ยวข้องกับฐานข้อมูล ในเรื่องการเหมืองข้อมูล (data mining) เกี่ยวข้องกับคณิตศาสตร์เมื่อต้องการวิเคราะห์และเปรียบเทียบการทำงานของระบบการเรียนรู้ และสุดท้ายเกี่ยวข้องกับตรรกศาสตร์ เมื่อพูดถึงการแทนความรู้ (knowledge representation) ส่วนนี้ไว้พูดถึงทีหลังล่ะกัน

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

ในกรณีที่ต้องการจัดกลุ่มข้อมูล หรือเรียนรู้แบบมีคนสอน ก็จะต้องกำหนดกลุ่มสำหรับข้อมูลแต่ละชุดไว้ด้วย เช่น ข้อมูลของผู้สมัครก็จะบอกไว้ว่าแต่ละคนได้รับบัตรหรือไม่ เพราะระบบจะอาศัยค่าของกลุ่มสำหรับสร้างโมเดลซึ่งจะเป็นผลการเรียนรู้ นิยมเรียกข้อมูลแบบนี้ว่า attribute-value data ซึ่งแปลว่าข้อมูลแต่ละชุดประกอบด้วย attribute หรือลักษณะประจำ และค่า (value) ของกลุ่มที่ข้อมูลที่ข้อมูลนั้นสังกัด ในกรณีที่เป็นการเรียนรู้แบบไม่มีคนสอน ก็ไม่จำเป็นต้องระบุค่าของกลุ่ม โดยระบบจะแบ่งกลุ่มโดยอาศัยความคล้ายของข้อมูลแต่ละชุด และกำหนดกลุ่มโดยอัตโนมัติ ข้อมูลที่ถูกจัดไว้ในกลุ่มเดียวกันก็จะเหมือนกันมากหน่อย

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

หมายเหตุ พยายามเขียนให้เข้าใจง่ายๆ แต่ไม่รู้จะเข้าใจง่ายจริงหรือเปล่า

No comments: