ความหมายของ weight ใน Neural Network
โครงข่ายประสาทเทียมเป็นการจำลองโครงข่ายประสาทแท้ในเวอร์ชั่นที่ทั้งมีความซับซ้อนและมีจำนวนเซลล์ประสาทน้อยกว่า และมีการเชื่อมต่อระหว่างเซลล์ประสาทที่ต่างกัน จึงไม่น่าแปลกใจเลยหากโครงข่ายประสาทเทียมจะมีข้อจำกัดมากกว่าในหลายๆเรื่อง
แต่กระนั้นโครงข่ายประสาทเทียมจะมีความอัจฉริยะไม่ได้เลย หากปราศจากความอัจฉริยะจากโครงข่ายประสาทแท้
!! อย่าเพิ่งตกใจถ้าเห็นสมการ ไม่ได้ยากอย่างที่คิด !!
ยกตัวอย่างในการตั้งราคาบ้าน มีปัจจัยให้พิจารณาอยู่หลายปัจจัย สมมุติว่าเลือกมาสามปัจจัยหลักที่สามารถเก็บข้อมูลมาเป็นปริมาณตัวเลขได้คือ แบรนด์ ทำเล และขนาดห้อง ทั้งสามปัจจัยนี้มีน้ำหนักส่งผลกระทบต่อราคาไม่เท่ากัน จากตรงนี้พอจะได้สมการเป็น
ราคา = W1*แบรนด์ + W2*ทำเล + W3*ขนาดห้อง
แต่ในความเป็นจริงแล้ว การที่คนๆนึงจะตัดสินใจจ่ายเงินซื้อสินค้านั้นที่ราคาหนึ่งๆนั้น จะต้องรู้สึกคุ้มค่ากับเงินที่เสียไป สมมติว่าความรู้สึกคุ้มค่าก็เกิดจากความรู้สึกหลายๆแบบประกอบกัน และความรู้สึกนี้เป็นปัจจัยแฝงที่เกิดจากสามปัจจัยที่กล่าวมาอีกที เช่น
รู้สึกสะดวกสบาย = W1_1*ขนาดห้อง + W1_2*ทำเล
รู้สึกน่าเชื่อถือ = W2_1*แบรนด์ + W2_2*ทำเล
รู้สึกหรูหรา = W3_1*แบรนด์ + W3_2*ขนาดห้อง
การตั้งราคาจะแปรผันตามความรู้สึกคุ้มค่าของผู้ซื้อ จึงได้สมการของราคาเป็น
ราคา = W4_1*รู้สึกสะดวกสบาย + W4_2*รู้สึกน่าเชื่อถือ + W4_3*รู้สึกหรูหรา
(ผู้เขียนต้องการให้เห็นภาพว่า W ในแต่ละสมการเป็น W คนละตัวกัน)
จากตัวอย่างสมการข้างต้น สามารถแปลงไปเป็น Neural Network ที่มีความลึก 1 ชั้นได้ (ไม่นับชั้น input และ output) ตามรูป
เมื่อได้สมการโมเดลของการตั้งราคาบ้านแล้ว ตัวแปรที่เราต้องทราบจะได้ราคาบ้านคือค่า W ทั้งหลาย วิธีแรกคือ สามารถกำหนดค่าเองได้ เช่น คิดว่าความรู้สึกสะดวกสบายน่าจะต้องให้น้ำหนักขนาดห้องมากกว่าทำเลนิดนึง อาจจะกำหนดเป็น
รู้สึกสะดวกสบาย = 0.6*ขนาดห้อง + 0.4*ทำเล
อย่างนี้เป็นต้น
แต่ถ้าหากมีปัจจัยเยอะแยะมากจนไม่รู้ว่าจะกำหนดค่ายังไง สามารถแก้สมการแก้หาค่า W ทั้งหลายได้โดยการเก็บข้อมูล ตามหลักแล้วจะต้องเก็บข้อมูลค่าตัวเลขสามปัจจัยหลักที่เป็น input และราคาที่เป็น output คู่กันในจำนวนเท่ากับตัวแปรที่ต้องการแก้ สำหรับตัวอย่างนี้ต้องเก็บข้อมูลอย่างน้อย 9 ตัวอย่าง
แต่…
การใช้วิธีนี้มีข้อจำกัดตรงที่ราคาที่ได้จะอิงจากข้อมูลเพียงไม่กี่ตัว ซึ่งมีสิทธิที่จะมีความผิดพลาดสูง และหากจะต้องการใช้ข้อมูลที่น้อย จะต้องใช้ข้อมูลที่เป็นมาตรฐานใช้อ้างอิงได้ และมีความเหมือนกันในทุกกรณี
สำหรับปัญหานี้นั้น แล้วในโลกความเป็นจริงเป็นไปได้หรือไม่?
ราคาเป็นสิ่งที่มีความไม่แน่นอน ขนาดคนๆเดียวกันมาตีราคา ตีราคาวันนี้กับพรุ่งนี้ในสถานที่เดียวกันก็อาจจะได้ราคาที่ต่างกันแล้ว แล้วถ้ามีข้อมูลจากหลายคน ก็ยิ่งเป็นไปไม่ได้ที่จะให้น้ำหนักในการพิจารณาเหมือนกันเป๊ะทุกคน แต่อย่างไรก็ตาม จะมีทิศทางให้น้ำหนักไปในทางเดียวกัน
ดังนั้นจึงแก้ปัญหาด้วยการ ‘ประมาณ’ ค่าน้ำหนักที่ดีที่สุดจากข้อมูลที่หลากหลายที่สุด และต้องมากกว่า 9 ตัวอย่างในที่นี้ โมเดลจะได้เรียนรู้และประมาณ W เป็นค่าเฉลี่ยจากข้อมูลทุกตัว
เน้นคำว่าหลากหลายและให้ครอบคลุมที่สุดนะคะ ปริมาณข้อมูลถึงจะมากพอแต่ไม่ครอบคลุมก็ไม่มีประโยชน์ค่ะ
ดังนั้นขั้นตอนการสอน ANN ที่เรียกกันติดปากว่า training นั้นมีศัพท์เทคนิคเรียกว่า Optimization ซึ่งแปลเป็นไทยได้ว่า ค่าที่ดีที่สุดสำหรับสถานการณ์หนึ่ง ก็คือการคำนวณหาค่าน้ำหนัก W ที่ดีที่สุดจากข้อมูลจำนวนมากนั่นเอง!
นี่เป็นเพียงคอนเซ็ปต์คร่าวๆของ Neural Network ที่แอดหวังว่าจะช่วยให้เข้าใจคำว่ากระบวนการ Training ของ AI ต่างจากของมนุษย์ค่อนข้างมาก
ในตัวอย่างนี้การใช้ AI มากำหนดราคาจะให้ผลดีกว่าให้มือใหม่มากำหนดราคา เพราะมีการพิจารณาปัจจัยที่แน่นอนและไม่เปลี่ยนไปตามอารมณ์ เพราะได้คำนวณเป็นค่าเฉลี่ยจากข้อมูลจำนวนมาก เสมือนว่า AI กำลังให้คนหลายคนมาร่วมกำหนดราคา แต่อาจจะยังเทียบกับมืออาชีพไม่ได้ เพราะ AI ไม่มีความยืดหยุ่นในการเปลี่ยนแปลง input ได้ แปลว่าพิจารณาได้แต่ปัจจัยเดิมเสมอ ฉะนั้นในสถานการณ์ที่เปลี่ยนแปลงรวดเร็วตลอดเวลา และมีตัวอย่างน้อย มนุษย์ก็ยังได้เปรียบค่ะ
สมการคณิตศาสตร์ไม่ใช่ภาษาต่างดาว แต่เบื้องหลังคือการจำลองธรรมชาติรอบตัว และจะมีความรู้สึกตื่นเต้นทุกครั้งที่ได้เห็นว่าคนที่คิดขึ้นมามีความสร้างสรรค์มากแค่ไหน การทำความเข้าใจไม่ใช่เรื่องยากเกินความสามารถและเชื่อว่าคนไทยก็ทำได้ค่ะ
จบแล้วสำหรับบทความวันนี้ เจอกันใหม่ตอนหน้าค่ะ
สามารถติดตามกันได้ที่
Facebook: AI แบบเคลียร์ ตีแผ่ทุกไอเดียเบื้องหลังสมการ
Tiktok: ai.beeying
Youtube: AI แบบเคลียร์ๆ