อะไรคือความแตกต่างระหว่างเครือข่ายประสาทเทียมและเครือข่ายประสาทปกติ?


18

ฉันเห็นคำเหล่านี้ถูกโยนไปรอบ ๆ ไซต์นี้เป็นจำนวนมากโดยเฉพาะในแท็ก และระบบประสาทเครือข่าย

ฉันรู้ว่าเครือข่ายประสาทเทียมเป็นระบบที่อิงกับสมองมนุษย์ แต่สิ่งที่แตกต่างระหว่างที่Convolutionalประสาทเครือข่ายและเครือข่ายประสาทปกติ? มีเพียงหนึ่งที่ซับซ้อนมากขึ้นและ ahem, convolutedกว่าอีกหรือไม่

คำตอบ:


23

TLDR: convolutional-neural-network เป็น subclass ของ neural-Networks ซึ่งมีอย่างน้อยหนึ่งชั้นของการบิด พวกเขายอดเยี่ยมสำหรับการจับข้อมูลท้องถิ่น (เช่นพิกเซลเพื่อนบ้านในรูปภาพหรือคำที่อยู่ในข้อความ) รวมถึงการลดความซับซ้อนของโมเดล (การฝึกอบรมที่รวดเร็วขึ้นต้องการตัวอย่างน้อยลงลดโอกาสของการ overfitting)

การสร้างภาพดูแผนภูมิต่อไปนี้ที่แสดงให้เห็นประสาทเครือข่ายหลายสถาปัตยกรรมรวมทั้งลึกธรรมดา-ประสาทเครือข่าย:


Neural Networks (NN)หรือมากกว่านั้นอย่างแม่นยำเครือข่ายประสาทเทียมที่ (ANN)เป็นคลาสของอัลกอริทึมการเรียนรู้ของเครื่องจักรที่เพิ่งได้รับความสนใจจำนวนมาก (อีกครั้ง!) เนื่องจากความพร้อมของบิ๊กดาต้าและสิ่งอำนวยความสะดวกในการคำนวณอย่างรวดเร็ว อัลกอริทึมนั้นต่างกันมากกับ ANN)

คลาสของ ANN ครอบคลุมสถาปัตยกรรมหลายอย่างรวมถึงConvolutional Neural Networks ( CNN ), Recurrent Neural Networks ( RNN ) เช่นLSTMและGRU , AutoencodersและDeep Belief Networksเครือข่ายความเชื่อลึกดังนั้น CNN จึงเป็นเพียง ANN ชนิดหนึ่ง

โดยทั่วไปแล้ว ANN คือชุดของหน่วยที่เชื่อมต่อและปรับได้ (โหนดโหนดเซลล์ประสาทและเซลล์ประสาทเทียม) ซึ่งสามารถส่งสัญญาณ (โดยปกติจะเป็นจำนวนจริงมูลค่า) จากหน่วยหนึ่งไปยังอีกหน่วยหนึ่ง จำนวนหน่วย (เลเยอร์) ประเภทและวิธีการเชื่อมต่อซึ่งกันและกันเรียกว่าสถาปัตยกรรมเครือข่าย

โดยเฉพาะอย่างยิ่งซีเอ็นเอ็นนั้นมีการบิดอย่างน้อยหนึ่งชั้นหน่วยConvolution unit ได้รับอินพุตจากหลายยูนิตจากเลเยอร์ก่อนหน้าซึ่งร่วมกันสร้างความใกล้เคียง ดังนั้นหน่วยอินพุต (ที่เป็นย่านขนาดเล็ก) จะใช้น้ำหนักร่วมกัน

หน่วยการแปลง (เช่นเดียวกับการรวมหน่วย) จะเป็นประโยชน์โดยเฉพาะอย่างยิ่งเมื่อ:

  • พวกเขาลดจำนวนหน่วยในเครือข่าย (เนื่องจากเป็นการแมปแบบหนึ่งต่อหนึ่ง ) ซึ่งหมายความว่ามีพารามิเตอร์น้อยลงในการเรียนรู้ซึ่งช่วยลดโอกาสของการ overfitting เนื่องจากตัวแบบจะซับซ้อนน้อยกว่าเครือข่ายที่เชื่อมต่ออย่างสมบูรณ์
  • พวกเขาพิจารณาบริบท / ข้อมูลที่ใช้ร่วมกันในละแวกใกล้เคียงเล็ก ๆ อนาคตนี้มีความสำคัญมากในแอปพลิเคชั่นมากมายเช่นรูปภาพวิดีโอข้อความและการประมวลผลเสียง / การขุดเนื่องจากอินพุตที่อยู่ใกล้เคียง (เช่นพิกเซลเฟรมคำและอื่น ๆ ) มักจะมีข้อมูลที่เกี่ยวข้อง

อ่านสิ่งต่อไปนี้สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ CNN (ลึก):

  1. การจำแนกประเภท ImageNet ด้วยเครือข่ายประสาทเทียมระดับลึก
  2. ก้าวล้ำไปด้วยความมั่นใจ

PS ANN ไม่ได้เป็น"ระบบขึ้นอยู่อย่างอิสระในสมองของมนุษย์"แต่ระดับของระบบที่ได้แรงบันดาลใจจากการเชื่อมต่อเซลล์ประสาทที่มีอยู่ในสมองของสัตว์


10

Convolutional Neural Networks (CNNs) เป็นเครือข่ายประสาทที่มีข้อ จำกัด ทางสถาปัตยกรรมเพื่อลดความซับซ้อนในการคำนวณและรับรองความแปรปรวนของการแปล (เครือข่ายตีความรูปแบบอินพุตเหมือนกันโดยไม่คำนึงถึงการแปล - ในแง่ของการรับรู้ภาพ: กล้วย ภาพ). Convolutional Neural Networks มีคุณสมบัติสถาปัตยกรรมที่สำคัญสามประการ

การเชื่อมต่อท้องถิ่น:เซลล์ประสาทในหนึ่งเลเยอร์เชื่อมต่อกับเซลล์ประสาทในเลเยอร์ถัดไปเท่านั้นซึ่งอยู่ใกล้กับเชิงพื้นที่ การออกแบบนี้สร้างส่วนเชื่อมต่อระหว่างเลเยอร์ต่อเนื่องส่วนใหญ่ แต่เก็บข้อมูลที่มีประโยชน์มากที่สุดเอาไว้ ข้อสันนิษฐานที่เกิดขึ้นที่นี่คือข้อมูลอินพุตมีนัยสำคัญเชิงพื้นที่หรือในตัวอย่างของการมองเห็นคอมพิวเตอร์ความสัมพันธ์ระหว่างพิกเซลสองอันที่อยู่ห่างไกลอาจมีนัยสำคัญน้อยกว่าสองเพื่อนบ้านใกล้เคียง

น้ำหนักที่ใช้ร่วมกัน:นี่คือแนวคิดที่ทำให้ซีเอ็นเอ็นเป็น "convolutional" ด้วยการบังคับให้เซลล์ประสาทของเลเยอร์หนึ่งแบ่งปันน้ำหนักการส่งต่อ (การป้อนข้อมูลผ่านเครือข่าย) จะเทียบเท่ากับการกรองตัวกรองเหนือภาพเพื่อสร้างภาพใหม่ จากนั้นการฝึกอบรมของ CNNs จะกลายเป็นหน้าที่ของตัวกรองการเรียนรู้ (ตัดสินใจว่าคุณลักษณะใดที่คุณควรมองหาในข้อมูล)

การรวมและ ReLU: CNNs มีสองแบบที่ไม่ใช่เชิงเส้น: การรวมเลเยอร์และฟังก์ชั่น ReLU การรวมเลเยอร์พิจารณาบล็อกของข้อมูลที่ป้อนเข้าและเพียงแค่ส่งผ่านค่าสูงสุด การทำเช่นนี้จะช่วยลดขนาดของเอาต์พุตและไม่ต้องการพารามิเตอร์เพิ่มเติมเพื่อเรียนรู้ดังนั้นการรวมชั้นมักจะใช้เพื่อควบคุมขนาดของเครือข่ายและทำให้ระบบต่ำกว่าขีด จำกัด การคำนวณ ฟังก์ชัน ReLU รับหนึ่งอินพุต, x และส่งคืนค่าสูงสุดของ {0, x} ReLU(x) = argmax(x, 0). สิ่งนี้นำเสนอเอฟเฟกต์ที่คล้ายกันกับ tanh (x) หรือ sigmoid (x) ในรูปแบบที่ไม่ใช่เชิงเส้นเพื่อเพิ่มพลังในการแสดงออกของโมเดล


อ่านเพิ่มเติม

เป็นคำตอบที่กล่าวถึงอีกหลักสูตร CS 231n ของ Stanford ครอบคลุมรายละเอียดนี้ ตรวจสอบคำแนะนำการเขียนและการบรรยายนี้สำหรับข้อมูลเพิ่มเติม บล็อกโพสต์เช่นนี้และอันนี้ก็มีประโยชน์มาก

หากคุณยังสงสัยว่าทำไม CNNs มีโครงสร้างที่พวกเขาทำฉันขอแนะนำให้อ่านกระดาษที่แนะนำพวกเขาแม้ว่านี่จะค่อนข้างนานและอาจตรวจสอบการสนทนาระหว่าง Yann Lecun และ Christopher Manning เกี่ยวกับนักบวชโดยกำเนิด (สมมติฐานที่เราทำไว้เมื่อ เราออกแบบสถาปัตยกรรมของแบบจำลอง)


2
"และตรวจสอบความแปรปรวนของการแปล" อะไรคือค่าคงที่ของการแปล เมื่อคุณพูดถึงคำที่ลึกลับเช่นนี้อย่างน้อยคุณควรนิยามมันอย่างสังหรณ์ใจ
nbro

1
อ๊ะฉันเห็นด้วย - ฉันเพิ่มเข้าไปในคำอธิบายสั้น ๆ
Jackson Waschura

1
นี่เป็นคำตอบที่ดีกว่าสำหรับฉันซึ่งอธิบายได้อย่างชัดเจนว่า CNNs เป็น NN ประเภทใดโดยเฉพาะ คำตอบอื่น ๆ ไม่ได้กล่าวถึงว่ามีการบังคับใช้การแบ่งปันน้ำหนัก
Denziloe

5

สับสนเครือข่ายประสาทเป็นหนึ่งที่มีความสับสนชั้น ถ้าเครือข่ายประสาททั่วไปคือพูดอย่างหลวม ๆ โดยได้รับแรงบันดาลใจจากสมองมนุษย์ (ซึ่งไม่แม่นยำมาก) เครือข่ายประสาทเทียมที่ได้รับแรงบันดาลใจจากระบบเยื่อหุ้มสมองภาพในมนุษย์และสัตว์อื่น ๆ (ซึ่งใกล้เคียงกับความจริง) . ตามชื่อที่แนะนำเลเยอร์นี้ใช้การแปลงด้วยตัวกรองที่เรียนรู้ได้ (aka เคอร์เนล ) ดังนั้นเครือข่ายเรียนรู้รูปแบบในภาพ: ขอบมุมโค้งส่วนโค้งแล้วตัวเลขที่ซับซ้อนมากขึ้น เครือข่ายประสาทเทียม Convolutional อาจมีชั้นอื่น ๆ เช่นกันรวมชั้นและหนาแน่น

ขอแนะนำการสอน CS231nในเรื่องนี้: มันมีรายละเอียดมากและมีการสร้างภาพข้อมูลที่ดีมาก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.