สาเหตุที่ไม่ค่อยชอบ Neural Network ซักเท่าไหร่

เห็นทุกวันนี้งานทางด้าน AI ใช้ Neural Network มากขึ้นเรื่อย ๆ ซึ่งโดยส่วนตัวแล้วไม่ค่อยชอบโมเดลปัญญาประดิษฐ์แบบ Neural Network ซักเท่าไหร่ เพราะ …

Model Neural Network แบบต่าง ๆ
Model Neural Network แบบต่าง ๆ
  1.  แปลความยาก คือเวลามันเรียนรู้แล้วสร้างเส้นแบ่ง เส้นแบ่งมันเป็นเส้นโค้ง โค้งไปมาตามข้อมูลที่มันเรียน มันเลยไม่มีความเป็นกลาง ลองนึกถึงว่าเราตีเส้นตรงเพื่อแบ่งเขต เรายังตีความง่าย แต่พอมันโค้ง เราต้องตีความว่าทำไมมันโค้ง มันหลบทำไม มันมีอะไรพิเศษถึงต้องโค้งหลบ (มันเหมือนทางด่วนที่สร้างหลบบ้านคนรวยมั้ย)
  2. ถ้าอยากได้เส้นแบ่งเป็นเส้นตรง ก็ต้องเลือกใช้ Neural Network แบบ Perceptron แต่มุมเอียงของเส้นตรงที่แบ่งข้อมูล ก็จะเอียงแบบไม่มีหลักการ ถ้าเอาไปเทียบกับ Linear Support Vector Machine หรือ Linear Discriminant Analysis พวกนั้นยังตีเส้นตรงแบ่งแบบมีหลักการกว่าเยอะ
  3. มันช้า แต่ล่ะ epoch แปรผันตรงกับ node และ layer ยิ่งเยอะ ยิ่งช้า
  4. โมเดลมันเป็นแบบปลายเปิด คือ ไม่รู้ว่าจะต้องออกแบบ Hidden Layer หรือ Recurrent Layer หรือ Kernel Layer กี่ node หรือกี่ layer ถึงจะเหมาะกับปัญหาที่จะแก้ ต้องลองผิดลองถูกไปเรื่อยๆเอง
  5. การสุ่มค่าน้ำหนักเริ่มต้น เป็นไปตามดวง สุ่มไม่ดีเรียนรู้ช้า สุ่มดีเรียนรู้เร็ว
  6. ต้องใช้ข้อมูลเพื่อเรียนรู้เยอะมาก กว่าจะแบ่งเขตข้อมูลได้อย่างเหมาะสม

ไม่รู้คนอื่นเจอแค่ไหน แต่ที่ส่วนตัวเคยสัมผัสมา ก็ประมาณนี้

แต่ก็ไม่ใช่ว่า Neural Network จะไม่มีอะไรดีเลยในสายตาผมนะ ผมยังมองว่ามันมีจุดดีอยู่บ้าง ซึ่งเป็นจุดที่ผมชอบมาก ๆ เลย

นั่นก็คือ เมื่อสร้าง Model Neural Network ขึ้นมา แล้วสอนมันจนได้ประสิทธิผลที่พอใจแล้ว เราก็ไม่จำเป็นจะต้องสนใจกับข้อมูลที่สอนอีกต่อไป สนใจเฉพาะโมเดลที่ได้ก็พอ

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

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องที่ต้องการถูกทำเครื่องหมาย *

Captcha *
Time limit is exhausted. Please reload CAPTCHA.