Artificial Neural Network โครงข่ายประสาทเทียม
ความมหัศจรรย์ของสมองมนุษย์ - สมองมนุษย์มีประสิทธิภาพและมั่นคงมาก ทุกวันมีเซลล์ประสาทในสมองตายโดยที่ไม่ส่งผลกระทบต่อประสิทธิภาพของสมองโดยรวม - ระบบสมองของมนุษย์ยืดหยุ่นมาก สามารถปรับตัวเข้ากับสิ่งแวดล้อมใหม่โดยการเรียนรู้ (ผิดกับคอมพิวเตอร์ที่จะต้องโปรแกรมใหม่) สมองมนุษย์สามารถจัดการกับข้อมูลที่มีความไม่แน่นอน, มีสัญญาณรบกวน, และไม่สม่ำเสมอ ได้ดี สมองสามารถประมวลผลข้อมูลขนาดมหาศาล เช่นรูปภาพ ในลักษณะการ ประมวลผลแบบขนานได้ดี สมองมีขนาดเล็กและใช้พลังงานน้อย โครงสร้างของสมองมนุษย์ได้วิวัฒนาการมาเป็นเวลาหลายล้านปี และได้รับพิสูจน์จากธรรมชาติตราบจนกระทั่งทุกวันนี้
ความสามารถของสมองมนุษย์ vs คอมพิวเตอร์ ทำไมคอมพิวเตอร์ในปัจจุบันที่มีความสามารถในการคำนวณสูงมากยังไม่สามารถเทียบกับความสามารถของสมองมนุษย์ในงานง่ายๆ (สำหรับมนุษย์) บางอย่าง เช่น การจำใบหน้า การฟังและการตีความหมาย การแปลภาษา ความสามารถของสมองมนุษย์ vs คอมพิวเตอร์ เซลล์ประสาทส่งสัญญาณ ได้ในอัตราสูงสุดประมาณ 1000 ครั้ง/วินาที ความเร็วของคอมพิวเตอร์ ในปัจจุบันขึ้นไปถึง 1700 MHz ความเร็ว การคำนวณ เลขคณิต ซุปเปอร์คอมพิวเตอร์ปัจจุบัน C > 1000 MFLOP สมองคน D การจดจำและแยก แยะรูปภาพ, เสียง สมองคน C คอมพิวเตอร์ D
วงจรข่ายนิวรอลเทียม Artificial Neural Networks เลียนแบบการทำงานของสมองมนุษย์ โดยใช้หน่วยประมวลผลง่ายๆ จำนวนมาก ต่อกันเป็นโครงสร้างขึ้นมา
ข่ายงานประสาทเทียม ข่ายงานประสาท (neural network หรือ neural net) เป็นการจำลองการทำงานบางส่วนของสมองมนุษย์ โมเดลทางคณิตศาสตร์ สำหรับประมวลผลสารสนเทศด้วยการคำนวณแบบคอนเนคชันนิสต์ (connectionist) เพื่อจำลองการทำงานของเครือขายประสาทในสมองมนุษย์
วัตถุประสงค์ สรางเครื่องมือซึ่งมีความสามารถในการเรียนรูการจดจำรูปแบบ(Pattern Recognition) และการอุปมานความรู ( Knowledge deduction) เชนเดียวกับความสามารถที่มีในสมองมนุษย์
หลักการของ Neural Network neurons จะประกอบด้วย input และ output เช่นเดียวกัน input แต่ละอันมี weight เป็นตัวกำหนดน้ำหนักของ input neuron แต่ละหน่วยจะมีค่า threshold เป็นตัวกำหนดน้ำหนักรวมของ input
ตัวอย่างโครงสร้างของวงจรข่ายนิวรอลเทียม Input nodes Hidden nodes Output nodes Connections Output ของแต่ละโหนด Xi = input จากโหนดอื่นๆ Wij = น้ำหนัก (weight) ของแต่ละแขน (connection)
การทำงาน เมื่อมี input เข้ามายัง network ก็เอา input มาคูณกับ weight ของแต่ละขา ผลที่ได้จาก input ทุก ๆ ขาของ neuron จะเอามารวมกันแล้วก็เอามาเทียบกับ threshold ที่กำหนดไว้
การเรียนรู้สำหรับ Neural Network Supervised Learning การเรียนแบบมีการสอน การเรียนแบบมีการตรวจคำตอบเพื่อให้วงจรข่ายปรับตัว มีชุดข้อมูลที่ใช้สอนเพื่อคอยดูว่าวงจรข่ายให้คำตอบถูกหรือไม่ ถ้าไม่ถูก วงจรข่ายก็จะปรับตัวเพื่อให้ได้คำตอบที่ดีขึ้น
Unsupervised Learning การเรียนแบบไม่มีการสอน การเรียนแบบไม่มีผู้แนะนำ วงจรข่ายจะจัดเรียงตัวเองตามลักษณะของข้อมูล วงจรข่ายจะสามารถจัดหมวดหมู่ของข้อมูลได้
Network Architecture Feedforward network ข้อมูลที่ประมวลผลในวงจรข่ายจะถูกส่งไปในทิศทางเดียวจาก Input nodes ส่งต่อมาเรื่อยๆจนถึง output nodes โดยไม่มีการย้อนกลับของข้อมูล หรือแม้แต่ Nodes ใน layer เดียวกันก็ไม่มีการเชื่อมต่อกัน Direction of data flow Input nodes Output nodes
Network Architecture Feedback network ข้อมูลที่ประมวลผลในวงจรข่าย จะมีการป้อนกลับเข้าไปยังวงจรข่ายหลายๆครั้ง จนกระทั่งได้คำตอบออกมา (บางทีเรียกว่า Recurrent network) Input nodes Output nodes
Neural Network Taxonomy Feedback Feedforward Gradient Descent Recurrent Backpropagation RABAM Brownian annealing Boltzmann learning ABAM, ART-2, BAM Adaptive Resonance ART-1, ART-2 Vector Quantization Self-organizing maps Competitive learning Counter-propagation Least mean square Backpropagation Reinforcement learning Supervised Unsupervised
การประยุกต์ใช้งาน Neural Network งานการจดจำรูปแบบที่มีความไม่แน่นอน เช่น ลายมือ ลายเซนต์ ตัวอักษร รูปหน้า งานการประมาณค่าฟังก์ชันหรือการประมาณความสัมพันธ์ (มี inputs และ outputs แต่ไม่ทราบว่า inputs กับ outputs มีความสัมพันธ์กันอย่างไร) งานที่สิ่งแวดล้อมเปลี่ยนแปลงอยู่เสมอ (วงจรข่ายนิวรอลสามารถปรับตัวเองได้) งานจัดหมวดหมู่และแยกแยะสิ่งของ งานทำนาย เช่นพยากรณ์อากาศ พยากรณ์หุ้น
การประยุกตใชขายงานระบบประสาทควบคุมกระบวนการทางเคมีโดยวิธีพยากรณแบบจำลอง (Model Predictive Control) การประยุกตใชขายงานระบบประสาทแบบแพรกระจายกลับในการทำนายพลังงานความรอนที่สะสม อยูในตัวอาคาร
สรุป การสร้างคอมพิวเตอร์ที่จำลองเอาวิธีการทำงานของสมองมนุษย์ input units ,output units โดยมีการกำหนดค่าน้ำหนักให้แก่เส้นทางการนำเข้าของ input แต่ละตัว การสร้างการเรียนรู้สำหรับ Neural Network เพื่อ มีสองวิธี คือ Supervised Learning และ Unsupervised Learning