ภายในแอปพลิเคชัน DLBT เราทดสอบประสิทธิภาพของฮาร์ดแวร์โดยใช้โมเดลต่างๆ จาก Deep Learning เรายึดตามการค้นพบล่าสุดที่เกิดขึ้นในอุตสาหกรรมโดยใช้โมเดลอันทรงพลังที่ช่วยแก้ไขงานในสาขาต่างๆ เช่น คอมพิวเตอร์วิทัศน์

ในบล็อกนี้ เราจะอธิบายสั้นๆ ว่าโมเดลเหล่านี้ทำงานอย่างไร หากคุณต้องการทราบ ยิ่งไปกว่านั้น มีลิงก์พร้อมข้อมูลเพิ่มเติมเกี่ยวกับโมเดลนั้นหลังแต่ละส่วน

เลเน็ต

สถาปัตยกรรม LeNet-5 อาจเป็นสถาปัตยกรรมของ CNN ที่เป็นที่รู้จักอย่างกว้างขวางที่สุด ดังที่ได้กล่าวไว้ก่อนหน้านี้ มันถูกสร้างขึ้นโดย Yann LeCun ในปี 1998 และใช้กันอย่างแพร่หลายสำหรับการรู้จำตัวเลขที่เขียนด้วยลายมือ (MNIST)

รูปภาพ MNIST มีขนาด 28 × 28 พิกเซล แต่จะมีการเพิ่มขนาดเป็นศูนย์เป็น 32 × 32 พิกเซล และปรับให้เป็นมาตรฐานก่อนที่จะส่งไปยังเครือข่าย ส่วนที่เหลือของเครือข่ายไม่ได้ใช้การเสริมใดๆ ซึ่งเป็นเหตุผลว่าทำไมขนาดจึงหดตัวลงเรื่อยๆ เมื่อรูปภาพเคลื่อนผ่านเครือข่าย

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

http://yann.lecun.com/

เอาชนะมากเกินไป

นี่เป็นโมเดล Convolutional Neural Network ที่ค่อนข้างเรียบง่าย โครงสร้างประกอบด้วยชั้น convolutional สองชั้นที่ระดับความลึก 32 และ 64 ตามลำดับ โดยมีการรวมกลุ่มสูงสุด และชั้น convolutional ลำดับต่อมาโดยไม่มีการรวมกลุ่มในเชิงลึกที่ 512,1024 และ 1024 ตามลำดับ ในท้ายที่สุด เอาต์พุตจะถูกป้อนเข้าสู่เลเยอร์ที่เชื่อมต่อกันอย่างสมบูรณ์สองชั้นของ เซลล์ประสาท 3073 และ 4096 ตามลำดับ

อเล็กซ์เน็ต

สถาปัตยกรรม AlexNet CNN 9 ชนะการแข่งขัน ImageNet ILSVRC ปี 2012 ด้วยอัตราความผิดพลาดที่สูง โดยมีอัตราข้อผิดพลาด 5 อันดับแรกถึง 17% ในขณะที่อันดับที่สองทำได้เพียง 26% เท่านั้น! ได้รับการพัฒนาโดย Alex Krizhevsky (จึงเป็นที่มาของชื่อ), Ilya Sutskever และ Geoffrey Hinton มันค่อนข้างคล้ายกับ LeNet-5 มีเพียงขนาดใหญ่กว่าและลึกกว่ามาก และเป็นครั้งแรกที่ซ้อนชั้น convolutional ซ้อนกันโดยตรงบนแต่ละชั้น แทนที่จะซ้อนชั้นรวมกลุ่มไว้ด้านบนของชั้น convolutional แต่ละชั้น

เพื่อลดการโอเวอร์ฟิต ผู้เขียนได้ใช้เทคนิคการทำให้เป็นมาตรฐานสองเทคนิคที่เราพูดถึงในบทที่แล้ว: ขั้นแรกพวกเขาใช้ dropout (ที่มีอัตราการออกกลางคัน 50%) ในระหว่างการฝึกอบรมกับเอาท์พุตของเลเยอร์ F8 และ F9 ประการที่สอง พวกเขาดำเนินการเสริมข้อมูลโดยการสุ่มเลื่อนภาพการฝึกด้วยการชดเชยต่างๆ พลิกภาพในแนวนอน และเปลี่ยนสภาพแสง

https://arxiv.org/abs/1404.5997

วีจีจี

โดยทั่วไปแล้ว โมเดล VGG จะใช้แนวคิดในการสร้างเครือข่ายที่ลึกยิ่งขึ้นโดยใช้ตัวกรองที่มีขนาดเล็กลง Alexnet ใช้เลเยอร์แบบหมุนวน 8 ชั้น ในขณะที่จำนวนในโมเดล VGG มีตั้งแต่ 16 ถึง 19 ชั้น ตัวกรองที่ใช้คือทั้งหมด 3×3 ซึ่งช่วยให้จำนวนพารามิเตอร์ต่ำพอสมควร

https://arxiv.org/abs/1409.1556

การเริ่มต้น

โมเดล Inception อิงตามโมเดล GoogLeNet สถาปัตยกรรม GoogLeNet ได้รับการพัฒนาโดย Christian Szegedy และคณะ จาก Google Research, 10 และชนะการแข่งขัน ILSVRC 2014 โดยการผลักดันอัตราข้อผิดพลาด 5 อันดับแรก 10 “Going Deeper with Convolutions,” C. Szegedy และคณะ (2558).ต่ำกว่า 7%. ประสิทธิภาพที่ยอดเยี่ยมนี้ส่วนใหญ่มาจากข้อเท็จจริงที่ว่าเครือข่ายมีความลึกมากกว่า CNN ก่อนหน้านี้มาก (ดูรูปที่ 13–11) สิ่งนี้เกิดขึ้นได้โดยเครือข่ายย่อยที่เรียกว่าโมดูลเริ่มต้น 11 ซึ่งช่วยให้ GoogLeNet ใช้พารามิเตอร์ได้อย่างมีประสิทธิภาพมากกว่าสถาปัตยกรรมรุ่นก่อนๆ มาก โดยแท้จริงแล้ว GoogLeNet มีพารามิเตอร์น้อยกว่า AlexNet ถึง 10 เท่า (ประมาณ 6 ล้านแทนที่จะเป็น 60 ล้าน)

การเปลี่ยนแปลงสำคัญบางประการที่เกิดขึ้นกับโมเดลนี้ในโมเดล Inception v3 ได้แก่:

  • หลีกเลี่ยงปัญหาคอขวดในการนำเสนอ
  • การแสดงมิติที่สูงขึ้นจะประมวลผลภายในเครือข่ายได้ง่ายกว่า
  • ปรับสมดุลความกว้างและความลึกของเครือข่าย

https://arxiv.org/abs/1512.00567

เรสเน็ต

สุดท้ายแต่ไม่ท้ายสุด ผู้ชนะการแข่งขัน ILSVRC 2015 คือ Residual Network (หรือ ResNet) ซึ่งพัฒนาโดย Kaiming He และคณะ 12 ซึ่งให้อัตราข้อผิดพลาด 5 อันดับแรกที่น่าประหลาดใจต่ำกว่า 3.6% โดยใช้ CNN ที่ลึกมากซึ่งประกอบด้วย 152 ชั้น กุญแจสำคัญในการฝึกอบรมเครือข่ายระดับลึกดังกล่าวคือการใช้การเชื่อมต่อแบบข้าม (หรือที่เรียกว่าการเชื่อมต่อทางลัด): สัญญาณที่ป้อนเข้าไปในเลเยอร์จะถูกเพิ่มไปยังเอาต์พุตของเลเยอร์ที่อยู่สูงขึ้นไปเล็กน้อยบนสแต็ก มาดูกันว่าทำไมสิ่งนี้ถึงมีประโยชน์

เมื่อฝึกโครงข่ายประสาทเทียม เป้าหมายคือสร้างแบบจำลองฟังก์ชันเป้าหมาย h(x) หากคุณเพิ่มอินพุต x ให้กับเอาต์พุตของเครือข่าย (เช่น คุณเพิ่มการเชื่อมต่อแบบข้าม) เครือข่ายจะถูกบังคับให้สร้างโมเดล f(x) = h(x)-x แทนที่จะเป็น h(x) นี้เรียกว่าการเรียนรู้ที่เหลือ การเปลี่ยนแปลงสถาปัตยกรรมที่สำคัญบางประการภายใน ResNet ได้แก่:

  • ซ้อนบล็อกที่เหลือ
  • ทุกบล็อกที่เหลือจะมีชั้นบิดขนาด 3×3 สองชั้น
  • เพิ่มจำนวนตัวกรองเป็นสองเท่าและสุ่มตัวอย่างเชิงพื้นที่เป็นระยะโดยใช้ก้าวที่ 2
  • ไม่มีเลเยอร์ที่เชื่อมต่ออย่างสมบูรณ์ในตอนท้าย (เฉพาะ FC 1000 ถึงคลาสเอาต์พุตเท่านั้น)

https://arxiv.org/abs/1512.03385