ถึงเพื่อนที่รัก นี่เป็นส่วนที่สองของเรื่องราวของเรา
เกี่ยวกับความซับซ้อนของปัญญาประดิษฐ์ และโครงข่ายประสาทเทียม
โครงข่ายประสาทเทียมคืออะไร
โครงข่ายประสาทเทียมเป็นรูปแบบการคำนวณอย่างง่ายซึ่งประกอบไปด้วยเวกเตอร์ของข้อมูลนำเข้า หน่วยคำนวณ และผลลัพธ์หลายหน่วย (รูปที่ 1) แต่เดิม วิธีการดังกล่าวใช้กับการออกแบบแบบจำลองซึ่งได้รับแรงบันดาลใจจากเซลล์ประสาทส่วนเล็ก ๆ ของสมองมนุษย์ องค์ประกอบทางคอมพิวเตอร์เรียกโครงข่ายประสาทเทียมอีกอย่างว่าเซลล์ประสาท พวกมันถูกจัดเรียงเป็นชั้น ปกติจะเรียกว่าชั้นของข้อมูลนำเข้า ชั้นที่ซ่อน และชั้นของผลลัพธ์ ตามลำดับ โครงข่ายประสาทเทียมประเภทนี้เรียกว่าเพอร์เซปตรอน (perceptron)
รูปที่ 1 เพอร์เซปตรอนแบบเรียบง่าย: องค์ประกอบการคำนวณที่เรียกว่าเซลล์ประสาทถูกจัดเรียงเป็นชั้น (ชั้นของข้อมูลนำเข้า ถูกซ่อน และผลลัพธ์)
คุณสมบัติหลักของโครงข่ายประสาทเทียมคือความสามารถในการเรียนรู้จากตัวอย่าง ซึ่งเรียกว่าการเรียนรู้ของเครื่องซึ่งอยู่ภายใต้การดูแล (หรือเพียงแค่การเรียนรู้ซึ่งอยู่ภายใต้การดูแล) การฝึกเครือข่ายตามตัวอย่างต่าง ๆ เป็นเรื่องปกติ: ตัวอย่างของข้อมูลนำเข้า และผลลัพธ์ที่เกี่ยวข้อง ในงานที่จะต้องจดจำวัตถุ ข้อมูลนำเข้าจะเป็นรูปภาพ และผลลัพธ์จะเป็นป้ายกำกับสำหรับรูปภาพนี้ (เช่น “แมว”) การฝึกอบรมโครงข่ายประสาทเทียมเป็นกระบวนทำซ้ำซึ่งออกแบบมาเพื่อลดข้อผิดพลาดในการคาดการณ์ของระบบ (รูปที่ 2) ประกอบด้วยขั้นตอนที่เรียกว่า ช่วงเวลาสำคัญในอดีต (epochs) ซึ่งแต่ละขั้นตอนอัลกอริธึมการเรียนรู้จะพยายามลดข้อผิดพลาดให้เหลือน้อยที่สุด (โดยปกติ มันจะเป็นช่วงเวลาของการฝึกหลายพันครั้ง) ด้วยการปรับเปลี่ยนการเชื่อมต่อระหว่างเซลล์ประสาท: ค่าของเครือข่าย ถูกเรียกว่า น้ำหนัก ในช่วงท้ายของกระบวนการฝึกอบรม ประสิทธิภาพของเครือข่ายมักจะดีพอที่จะทำงานบางอย่างด้วยชุดของค่าที่ถูกปรับเปลี่ยนแล้ว
รูปที่ 2 การฝึกอบรมความฉลาดของโครงข่ายประสาทเทียมเป็นกระบวนการที่ทำซ้ำได้ ด้วยวิธีนี้ เราตั้งเป้าที่จะ «คาดเดา» คุณค่าของน้ำหนักของโครงข่ายประสาทเทียมด้วยอัลกอริธึมด้านการเรียนรู้ของเครื่องในแต่ละขั้นตอนได้เพื่อลดข้อผิดพลาดให้เหลือน้อยที่สุด ข้อผิดพลาดคำนวณจากความแตกต่างระหว่างค่าที่คาดการณ์จากเครือข่าย และป้ายกำกับบนรูปภาพจริง
โครงข่ายประสาทเทียมส่วนลึกคืออะไร
โครงข่ายประสาทเทียมส่วนลึกเป็นโครงข่ายประสาทอัจฉริยะที่มีชั้นที่ถูกซ่อนอยู่หลายชั้น (รูปที่ 3) ภาพนี้แสดงโครงข่ายประสาทเทียมลึก และมีจุดมุ่งหมายเพื่อให้ผู้อ่านเข้าใจโดยทั่วไปว่าโครงข่ายประสาทเทียมคืออะไร อย่างไรก็ตาม สถาปัตยกรรมที่แท้จริงของโครงข่ายประสาทเทียมลึกนั้นมีความซับซ้อนมากกว่า
รูปที่ 3 โครงข่ายประสาทเทียมที่มีชั้นที่ถูกซ่อนอยู่หลายชั้น
โครงข่ายประสาทแบบคอนโวลูชันได้รับแรงบันดาลใจจากโครงสร้างของระบบการมองเห็น แบบจำลองของการคำนวณแรกที่อ้างอิงตามแนวคิดของการจัดระเบียบลำดับชั้นของกระแสภาพไพรเมตคือ Neocognitron ของฟุกุชิมะ [1] (รูปที่ 4) ความเข้าใจสมัยใหม่เกี่ยวกับสรีรวิทยาของระบบการมองเห็นนั้นสอดคล้องกับรูปแบบการประมวลผลที่พบในโครงข่ายประสาทแบบคอนโวลูชัน อย่างน้อยก็เพื่อการจดจำวัตถุอย่างรวดเร็ว
รูปที่ 4 แผนผังแสดงการเชื่อมต่อระหว่างชั้นในแบบจำลอง Neocognitron [1]
ต่อมา แนวคิดนี้ถูกนำมาใช้ครั้งแรกโดย LeCun ในโครงข่ายประสาทเทียมแบบคอนโวลูชันสำหรับการรู้จำอักขระที่เขียนด้วยลายมือ [2] โครงข่ายประสาทเทียมนี้ได้ถูกจัดเป็นชั้นอยู่สองประเภท คือ: ชั้นที่ม้วนงอ และชั้นตัวอย่างย่อย แต่ละชั้นมีโครงสร้างภูมิประเทศ ซึ่งก็คือ เซลล์ประสาทแต่ละเซลล์สัมพันธ์กับตำแหน่งสองมิติคงที่ซึ่งสอดคล้องกับตำแหน่งในภาพนำเข้า พร้อมด้วยช่องรับข้อมูล (พื้นที่ของภาพที่นำเข้าที่ส่งผลต่อการตอบสนองของเซลล์ประสาท) ในแต่ละตำแหน่งของแต่ละชั้น มีเซลล์ประสาทจำนวนหนึ่ง ซึ่งแต่ละเซลล์มีน้ำหนักของข้อมูลนำเข้าซึ่งสัมพันธ์กับเซลล์ประสาทในแพตช์สี่เหลี่ยมของชั้นก่อนหน้า น้ำหนักชุดเดียวกัน แต่มีแพตช์สี่เหลี่ยมของข้อมูลนำเข้าต่างกัน และจะสัมพันธ์กับเซลล์ประสาทที่ตำแหน่งต่างกัน
สถาปัตยกรรมโดยรวมของโครงข่ายประสาทเทียมลึกสำหรับการจดจำภาพแสดงไว้ในรูปที่ 5 รูปภาพนำเข้าจะแสดงเป็นจำนวนพิกเซล หรือแพตช์รูปภาพขนาดเล็ก (เช่น พิกเซล 5×5)
รูปที่ 5 แผนผังของโครงข่ายประสาทแบบคอนโวลูชัน รูปภาพนำเข้าจะถูกแบ่งออกเป็นแพตช์เล็ก ๆ ซึ่งทำหน้าที่เป็นข้อมูลนำเข้าไปยังโครงข่ายประสาทแบบคอนโวลูชัน แพตช์เหล่านี้เป็นกระบวนการที่มีชั้นของตัวกรองตามลำดับโดยเพิ่มขนาดของช่องข้อมูลที่เกี่ยวกับประสาทหรืออวัยวะสัมผัสในแต่ละขั้นตอนของการประมวลผล การตรวจจับคุณลักษณะบางประเภทจะเกิดขึ้นในแต่ละชั้น คุณลักษณะที่เป็นผลลัพธ์จะได้รับการประมวลผลด้วยตัวแยกประเภทอย่างง่าย (เช่น เพอร์เซ็ปตรอนแบบหลายชั้น หรือเครื่องเวกเตอร์สนับสนุน) เพื่อสร้างการคาดการณ์
โดยปกติ โครงข่ายประสาทเทียมลึกจะแสดงในลักษณะที่เรียบง่าย: เป็นขั้นตอนการประมวลผลจำนวนหนึ่ง ซึ่งบางครั้งเรียกว่า ‘ตัวกรอง’ แต่ละขั้นตอนแตกต่างกันไปตามลักษณะจำนวนหนึ่ง เช่น คุณสมบัติของช่องข้อมูลที่เเกี่ยวกับประสาทหรืออวัยวะสัมผัส ประเภทของคุณสมบัติที่ตรวจพบ และประเภทของการคำนวณที่ดำเนินการในแต่ละขั้นตอน [3]
การใช้งานของครงข่ายประสาทเทียมลึก และโครงข่ายประสาทแบบคอนโวลูชัน (CNNs) จะไม่ได้จำกัดเฉพาะแอปพลิเคชั่นการตรวจจับภาพ รูปแบบ และการรับรู้ CNN ถูกนำมาใช้กันอย่างแพร่หลายในการจดจำคำพูด และเสียงนำเข้า การประมวลผลข้อมูลนำเข้าด้วยเซ็นเซอร์บนมือถือ และการประมวลผลภาพทางชีวการแพทย์ [4]
โครงข่ายประสาทเทียมสำหรับการจดจำใบหน้า
โครงข่ายประสาทเทียมจะได้รับการฝึกอบรมกับภาพถ่ายจำนวนมากล่วงหน้า เช่น ฐานข้อมูล
MegaFace เพื่อทำให้โครงข่ายประสาทเทียมมีความชาญฉลาดมากขึ้น สามารถตรวจจับได้ และจดจำได้อย่างความแม่นยำ
รูปที่ 6 ชุดข้อมูลของ MegaFace ประกอบด้วย 1 ล้านภาพถ่ายที่แสดงให้เห็นผู้คนที่ไม่ซ้ำกันมากกว่า 690,000 คน เป็นเกณฑ์มาตรฐานแรกที่ทดสอบอัลกอริธึมด้านการจดจำใบหน้าในขนาดหนึ่งล้านภาพถ่าย มหาวิทยาลัยวอชิงตัน
หลังจากที่โครงข่ายประสาทเทียมได้รับการฝึกฝนให้จดจำใบหน้าแล้ว การไหลเวียนของเครือข่ายที่ได้รับการฝึกฝนแล้วจะสามารถอธิบายได้ดังนี้ ในตอนแรก ภาพถ่ายจะได้รับการประมวลผลด้วยเครื่องตรวจจับใบหน้า: อัลกอริธึมที่ตรวจจับแพทช์รูปสี่เหลี่ยมผืนผ้าที่มีใบหน้า แพตช์นี้ถูกทำให้เป็นมาตรฐานเพื่อให้สามารถประมวลผลกับโครงข่ายได้ง่ายขึ้น หลังจากการทำให้เป็นมาตรฐาน ภาพใบหน้าจะทำหน้าที่เป็นข้อมูลนำเข้าไปยังโครงข่ายประสาทเทียมส่วนลึก โครงข่ายประสาทเทียมสร้างเวกเตอร์ที่มีคุณลักษณะเฉพาะซึ่งจะถูกโอนไปยังฐานข้อมูล เครื่องมือในการค้นหาจะเปรียบเทียบโครงข่ายกับเวกเตอร์คุณลักษณะทั้งหมดที่ถูกจัดเก็บไว้อยู่ในฐานข้อมูล และให้ผลลัพธ์ของการค้นหาตามจำนวนชื่อ หรือโปรไฟล์ของผู้ใช้โดยมีเวกเตอร์ลักษณะใบหน้าที่คล้ายกันพร้อมการกำหนดตัวเลขให้กับแต่ละรายการ ตัวเลขนี้แสดงถึงระดับความคล้ายคลึงกันของเวกเตอร์คุณลักษณะของเรากับเวกเตอร์คุณลักษณะที่ตรวจพบในฐานข้อมูล
รูปที่ 7 กระบวนการของการจดจำใบหน้า
การประเมินประสิทธิภาพด้านความแม่นยของอัลกอริธึม
ความแม่นยำ
เมื่อเราเลือกอัลกอริธึมปัญญาประดิษฐ์ที่จะใช้กับวัตถุ หรือปัญหาด้านการจดจำใบหน้า เราจำเป็นต้องมีวิธีการเปรียบเทียบประสิทธิภาพของอัลกอริธึมต่าง ๆ ส่วนนี้จะกล่าวถึงการเลือกเครื่องมือเปรียบเทียบประสิทธิภาพของอัลกอริธึม
แต่ละแอปพลิเคชั่นจะมีชุดของตัวชี้วัดที่สามารถใช้ประเมินประสิทธิภาพของระบบได้ แต่ละตัวชี้วัดจะสร้างคะแนนของระบบซึ่งสามารถเปรียบเทียบได้กับคะแนนในระบบของคู่แข่ง
โดยทั่วไป ระบบโครงข่ายประสาทเทียมอัจฉริยะต่าง ๆ สามารถวัดคะแนนได้อย่างแม่นยำ: หลังจากการปรับค่า และการเรียนรู้ ประสิทธิภาพของฟังก์ชั่นการให้ผลลัพธ์ควรจะทำการวัดชุดที่ใช้ในการทดสอบแยกกันกับชุดที่ใช้ในการฝึกฝน โดยปกติแล้วค่านี้เป็นการวัดเชิงปริมาณ: ตัวเลข (มักจะแสดงเป็นเปอร์เซ็นต์) ที่แสดงว่าระบบสามารถจดจำวัตถุที่มองไม่เห็นได้ดีแค่ไหน การวัดทั่ว ๆ ไปอีกอย่างหนึ่ง คือ การวัดข้อผิดพลาด (เปอร์เซ็นต์ความแม่นยำ - เท่ากับ 100%) อย่างไรก็ตาม เทคโนโลยีที่ใช้ข้อมูลทางชีวภาพจะมีการวัดที่แม่นยำมากกว่า
เทคโนโลยีที่ใช้ข้อมูลทางชีวภาพจะมีแอปพลิเคชั่นอยู่สองประเภท คือ: การตรวจสอบ และการระบุ การยืนยันเป็นกระบวนการยืนยันว่าข้อมูลประจำตัวบางอย่างถูกต้องหลังจากการเปรียบเทียบภาพถ่าย (หรือเวกเตอร์คุณลักษณะอื่น เช่น ข้อมูลลายนิ้วมือ) ของข้อมูลระบุตัวตนกับเทมเพลตที่บันทึกไว้ก่อนหน้านี้อย่างน้อยหนึ่งรายการ คำที่มีความหมายใกล้เคียงกันกับการตรวจสอบ คือ การยืนยันความถูกต้อง การระบุตัวตนเป็นกระบวนการในการกำหนดตัวตนของบุคคล ตัวอย่างของข้อมูลทางชีวภาพจะถูกเก็บรวบรวม และเปรียบเทียบกับเทมเพลตทั้งหมดในฐานข้อมูล การระบุตัวตนจะเป็นประเภทการระบุชุดปิดหากบุคคลนั้นถูกสันนิษฐานว่ามีอยู่ในฐานข้อมูล ดังนั้น การรับรู้จึงเป็นคำทั่วไปที่อาจบ่งบอกถึงการตรวจสอบ และการระบุตัวตนอย่างใดอย่างหนึ่ง หรือทั้งสองอย่าง
และมักจะใช้คะแนนคล้ายคลึงกันในการใช้แอปพลิเคชั่นเทคโนโลยีที่ใช้ในการระบุตัวตน คะแนนที่คล้ายกันขนาดใหญ่กว่าจะบ่งชี้ว่าตัวอย่างข้อมูลทางชีวภาพสองตัวอย่างที่เปรียบเทียบมีความคล้ายคลึงกันมากกว่า สำหรับแต่ละงาน (การระบุ และการตรวจสอบ) จะใช้เครื่องมือต่าง ๆ เพื่อวัดความคล้ายคลึงกัน
ซึ่งเราจะพูดถึงตัวชี้วัดเหล่านี้ในโพสต์ถัดไป
โปรดคอยติดตาม! และโปรดอย่าลังเลที่จะแสดงความคิดเห็นของคุณที่ด้านล่าง
Fukushima, «Neocognitron: A self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in position,» Biological Cybernetics, 1980.
LeCun, B. Boser, J.S. Denker, D. Henderson, R.E. Howard, W. Hubbard and L.D. Jackel. «Backpropagation Applied to Handwritten Zip Code Recognition», Neural Computation, vol. 1, pp., 541−551,1989.
Ian Goodfellow, Yoshua Bengio, Aaron Courville (2016) Deep Learning. MIT press.
Jiaxuan You, Xiaocheng Li, Melvin Low, David Lobell, Stefano Ermon
Deep Gaussian Process for Crop Yield Prediction Based on Remote Sensing Data.
How computers are learning to be creative (TED )