Machine Learning 101 : สอนเครื่องจักรให้รักเรียน
“Machine Learning กำลังมา”
“AI กำลังจะเปลี่ยนโลก”
มันไม่ใช่แค่ “กำลัง” ครับ แต่สิ่งเหล่านี้ได้มา และก็ได้เปลี่ยนโลกของเราไปแล้วด้วยหลายคนคงเคยได้ยินคำว่า AI, Deep Learning และ Machine Learning ที่ช่วงนี้ถูกพูดถึงเยอะมากและนำมาประยุกตร์ใช้กับการพัฒนาเทคโนโลยี นวัตกรรมในองค์กรและธุรกิจต่างๆ มากมาย
วันนี้เรามาทำความรู้จัก และเรียนรู้ที่จะใช้ประโยชน์จากมันไปพร้อมๆ กันครับ
Machine Learning คืออะไร ?
Machine Learning หรือบางทีอาจจะเห็นใช้คำย่อ ML ผมจะให้นิยามมันสั้นๆ ว่าคือ
“การที่เครื่องจักรหรือคอมพิวเตอร์ของเราได้เรียนรู้ข้อมูลต่างๆ”
ใช่ครับ เรียกได้ว่าแทบจะแปลตามคำภาษาอังกฤษเลย มันคือการเรียนรู้ครับ แบบที่คนอย่างเราๆ นั้นทำมาตั้งแต่เด็ก เรียนรู้ภาษา เรียนรู้สิ่งต่างๆ รอบตัว จากพ่อ แม่ คุณครู หรือใครต่อใคร ที่สอนบอกเรา เช่น
ส้ม จะมีลักษณะกลม เล็ก สีส้ม
ส้มโอ จะมีลักษณะกลม ใหญ่ สีเขียว
มะนาว จะมีลักษณะกลม เล็ก สีเขียว
ซึ่งเวลาเราพบเจอสิ่งต่างๆ เหล่านี้ เราจะก็เรียนรู้ลักษณะเหล่านี้ และจำจดไว้ในสมอง ยิ่งเราโตขึ้น วันเวลาผ่านไปได้พบเจอสิ่งต่างๆ มากขึ้น เราก็จะได้พบส้ม ส้มโอ และมะนาว ที่หลากหลายชนิด เราก็เรียนรู้และเข้าใจมากขึ้น ทำให้เมื่อพบเจอสิ่งเหล่านี้ เราก็สามารถแยกและบอกได้ทันทีว่ามันคืออะไร
Machine Learning ก็เหมือนกันครับ
แต่ต่างกันตรงที่เราไม่ได้บอกคอมพิวเตอร์เป็นคำพูด เราจะสอนให้คอมพิวเตอร์ให้เรียนรู้ ได้รู้จักข้อมูลต่างๆ ผ่านกระบวนการทางคณิตศาสตร์หรือโมเดล (Model ) เพื่อจำแนกและจัดระเบียบข้อมูลเหมือนที่เราทำในสมอง ซึ่งจะทำให้ได้กระบวนการการคิดหรืออัลกอริทึม (Algorithm) ออกมา โดยการเรียนรู้ของ ML สามารถแบ่งออกได้เป็น 2 รูปแบบใหญ่ๆ นั่นก็คือ Supervised Learning กับ Unsupervised Learning
Supervised Learning เรียนยังไง ?
Supervised Learning นั้นเหมือนกับการเรียนรู้โดยทั่วไปเลยครับ ให้นิยามสั้นๆ ว่า
“เรียนรู้แบบมีคุณครูสอน”
นั่นก็ข้อมูลที่จะใช้นั้นจะประกอบด้วย คุณสมบัติ หรือ feature เช่น กลม เล็ก ใหญ่ สีเขียว สีส้ม อย่างตัวอย่างที่ได้อธิบายไป และอีกอย่างที่ข้อมูลมีก็คือ คำนิยาม หรือ label ที่จะบอกให้คอมพิวเตอร์เข้าใจว่าสิ่งนี้คืออะไร โดยส่วนของ feature เนี่ยล่ะครับที่จะผ่านอัลกอริทึมที่เราสร้างขึ้น ให้คอมพิวเตอร์ใช้สำหรับจำแนกและจัดระเบียบข้อมูลตาม label ที่ระบุไว้
ด้วยตัววิธีการที่เป็นแบบนี้ Supervised Learning จึงถูกนิยมนำไปใช้เพื่อการ “ทำนาย” ความเป็นไปได้ที่จะเกิดขึ้น เช่น ราคาหุ้น ผลการแข่งขันกีฬา ราคาสิ่งของต่างๆ ครับ
Unsupervised Learning เรียนอะไร ?
Unsupervised Learning นั้นก็ตามชื่อเลยครับ ตรงกันข้ามกับ Supervised เลย
“เรียนรู้ด้วยตนเอง”
ทำไมถึงเป็นอย่างนั้น เพราะคราวนี้ข้อมูลไม่มี label ให้ครับ ตัวอัลกอริทึมที่เราสร้างขึ้นจะพยายามหา feature ของข้อมูลและจัดการแบ่งกลุ่มสร้าง label เอง ซึ่งก็มีหลายวิธี แต่ที่เห็นบ่อยๆ จะเรียกว่า Clustering ครับ
โดย Unsupervised นี้ก็ถูกนำไปใช้การ “จัดแบ่ง” เช่น จัดแบ่งกลุ่มสิ่งของ ประชากร หรือช่วยในการเข้ารูปแบบความสัมพันธ์ของสิ่งต่างๆ ครับ
Learned to teach
เป็นอย่างไรกันบ้างครับ พอจะได้เข้าใจ Machine Learning ขึ้นมาบ้างแล้วใช่มั้ย ในบทความต่อไปเราจะมาลองใช้ ML สร้าง AI ง่ายๆ ด้วย Python กันครับ