โครงข่ายประสาทเทียม
โครงข่ายประสาทเทียม (Artificial Neural Network) หรือโครงข่ายประสาทเทียมในระยะสั้นไม่ใช่แนวคิดใหม่ มีมานานประมาณ 80 ปี
จนกระทั่งปี 2011 Deep Neural Networks ได้รับความนิยมจากการใช้เทคนิคใหม่ ๆ ความพร้อมใช้งานของชุดข้อมูลขนาดใหญ่และคอมพิวเตอร์ที่ทรงพลัง
โครงข่ายประสาทเทียมเลียนแบบเซลล์ประสาทซึ่งมีเดนไดรต์นิวเคลียสแอกซอนและเทอร์มินัลแอกซอน
สำหรับเครือข่ายเราต้องการเซลล์ประสาทสองเซลล์ เซลล์ประสาทเหล่านี้ถ่ายโอนข้อมูลผ่านไซแนปส์ระหว่างเดนไดรต์ของหนึ่งกับแอกซอนขั้วของอีกขั้วหนึ่ง
แบบจำลองที่น่าจะเป็นของเซลล์ประสาทเทียมมีลักษณะดังนี้ -
โครงข่ายประสาทเทียมจะมีลักษณะดังที่แสดงด้านล่าง -
วงกลมเป็นเซลล์ประสาทหรือโหนดโดยมีหน้าที่เกี่ยวกับข้อมูลและเส้น / ขอบที่เชื่อมต่อกันคือน้ำหนัก / ข้อมูลที่ส่งผ่านไป
แต่ละคอลัมน์เป็นเลเยอร์ ชั้นแรกของข้อมูลของคุณคือชั้นอินพุต จากนั้นเลเยอร์ทั้งหมดระหว่างเลเยอร์อินพุตและเลเยอร์เอาต์พุตคือเลเยอร์ที่ซ่อนอยู่
หากคุณมีเลเยอร์ที่ซ่อนอยู่หนึ่งหรือสองสามชั้นแสดงว่าคุณมีโครงข่ายประสาทเทียมแบบตื้น หากคุณมีเลเยอร์ที่ซ่อนอยู่จำนวนมากแสดงว่าคุณมีโครงข่ายประสาทเทียมที่ลึก
ในแบบจำลองนี้คุณมีข้อมูลอินพุตคุณถ่วงน้ำหนักและส่งผ่านฟังก์ชันในเซลล์ประสาทที่เรียกว่าฟังก์ชันขีด จำกัด หรือฟังก์ชันกระตุ้น
โดยทั่วไปจะเป็นผลรวมของค่าทั้งหมดหลังจากเปรียบเทียบกับค่าหนึ่งแล้ว หากคุณส่งสัญญาณผลลัพธ์คือ (1) ดับหรือไม่มีสิ่งใดถูกยิงออกมาจากนั้น (0) จากนั้นจะถูกถ่วงน้ำหนักและส่งต่อไปยังเซลล์ประสาทถัดไปและฟังก์ชันประเภทเดียวกันจะถูกเรียกใช้
เราสามารถมีฟังก์ชัน sigmoid (s-shape) เป็นฟังก์ชันกระตุ้น
สำหรับน้ำหนักนั้นเป็นเพียงการสุ่มเพื่อเริ่มต้นและจะไม่ซ้ำกันต่อการป้อนข้อมูลลงในโหนด / เซลล์ประสาท
ใน "ฟีดไปข้างหน้า" ทั่วไปซึ่งเป็นเครือข่ายประสาทเทียมประเภทพื้นฐานที่สุดคุณมีข้อมูลของคุณส่งตรงผ่านเครือข่ายที่คุณสร้างขึ้นและเปรียบเทียบผลลัพธ์กับสิ่งที่คุณหวังว่าผลลัพธ์จะใช้ข้อมูลตัวอย่างของคุณ
จากตรงนี้คุณต้องปรับน้ำหนักเพื่อช่วยให้คุณได้ผลลัพธ์ที่ตรงกับผลลัพธ์ที่คุณต้องการ
การส่งข้อมูลโดยตรงผ่านเครือข่ายประสาทเรียกว่า a feed forward neural network.
ข้อมูลของเราเปลี่ยนจากอินพุตไปยังเลเยอร์ตามลำดับจากนั้นไปยังเอาต์พุต
เมื่อเราถอยหลังและเริ่มปรับน้ำหนักเพื่อลดการสูญเสีย / ต้นทุนให้น้อยที่สุดสิ่งนี้เรียกว่า back propagation.
นี่คือ optimization problem. ด้วยโครงข่ายประสาทเทียมในทางปฏิบัติจริงเราต้องจัดการกับตัวแปรหลายแสนตัวหรือหลายล้านตัวขึ้นไป
วิธีแก้ปัญหาแรกคือการใช้การไล่ระดับสีแบบสุ่มเป็นวิธีการเพิ่มประสิทธิภาพ ตอนนี้มีตัวเลือกเช่น AdaGrad, Adam Optimizer และอื่น ๆ ไม่ว่าจะด้วยวิธีใดนี่คือการคำนวณขนาดใหญ่ นั่นคือเหตุผลที่ Neural Networks ส่วนใหญ่ถูกทิ้งไว้บนหิ้งมานานกว่าครึ่งศตวรรษ เมื่อไม่นานมานี้เรายังมีพลังและสถาปัตยกรรมในเครื่องของเราเพื่อพิจารณาดำเนินการเหล่านี้และชุดข้อมูลที่มีขนาดเหมาะสมเพื่อให้เข้ากันได้
สำหรับงานการจัดประเภทอย่างง่ายเครือข่ายประสาทเทียมมีประสิทธิภาพใกล้เคียงกับอัลกอริทึมทั่วไปอื่น ๆ เช่น K Nearest Neighbours ยูทิลิตี้ที่แท้จริงของเครือข่ายประสาทเทียมเกิดขึ้นได้เมื่อเรามีข้อมูลขนาดใหญ่ขึ้นและคำถามที่ซับซ้อนมากขึ้นซึ่งทั้งสองอย่างนี้มีประสิทธิภาพดีกว่าโมเดลการเรียนรู้ของเครื่องอื่น ๆ