AI#6 - แน่ใจใช่ไหมว่าใช้ได้

AI#6 - แน่ใจใช่ไหมว่าใช้ได้

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

ก่อนจะไปพูดถึงตรงนั้น เราต้องแวะมาคุยกันให้เคลียร์ก่อนว่าคำว่า ‘ใช้ได้’ ในที่นี้มันหมายถึงอะไร

แม้ว่าก่อนหน้านี้ผมจะใช้คำว่า ‘ทำนาย’ เป็นคำกริยาของ Machine Learning ตัวต่าง ๆ ว่ามันทำนายค่านั้นค่านี้ แต่ถ้าพูดให้เป็นคณิตศาสตร์ขึ้น จริง ๆ แล้วสิ่งที่มันทำคือการ ‘ประมาณ’ ต่างหาก

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

ฟังก์ชันเอ็กซ์โพเนนเชียลที่เราต้องการจะประมาณ ซึ่งเราจะเรียกว่าฟังก์ชันเป้าหมาย ส่วนฟังก์ชันที่ได้จากการใช้อนุกรมเทย์เลอร์นั้น เราจะเรียกว่าฟังก์ชันประมาณ

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

แล้วสิ่งนี้เกี่ยวอะไรกับ Neural Network