ทำไม ReLU ถึงดีกว่าฟังก์ชั่นการเปิดใช้งานอื่น ๆ


17

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


เป็นเรื่องปกติที่จะมีการทำให้เป็นมาตรฐานบางอย่าง (เช่นการทำให้เป็นมาตรฐานการทำให้เป็นมาตรฐาน, การทำให้เป็นปกติของเลเยอร์) พร้อมกับ ReLU สิ่งนี้จะปรับช่วงเอาต์พุต
ncasas

@ncasas แต่โดยทั่วไปCNNnormalizing ผลลัพธ์ของการreluไม่ธรรมดา? อย่างน้อยฉันก็ไม่เคยเห็นสิ่งนั้น
สื่อ

คุณพูดถูกใน CNNs ที่ไม่ลึกมากมันเป็นเรื่องปกติที่จะไม่มีการทำแบทช์ให้เป็นมาตรฐาน คุณได้พิจารณาบทบาทของค่าเริ่มต้นน้ำหนักแล้วหรือยัง? (เช่นเขาเริ่มต้น)
ncasas

ใช่จริง ๆ แล้วมันมีไว้เพื่อป้องกันการหายไป / การไล่ระดับสีระเบิดหลังจากการวนซ้ำบางครั้งผลลัพธ์ที่ออกมาจะใหญ่ขึ้นฉันเดาว่า
สื่อ

คำตอบ:


21

ข้อได้เปรียบที่ใหญ่ที่สุดของ ReLu คือความไม่อิ่มตัวของการไล่ระดับสีซึ่งจะช่วยเร่งการรวมตัวกันของการไล่ระดับสีแบบสุ่มสุ่มเมื่อเทียบกับฟังก์ชั่น sigmoid / tanh ( กระดาษโดย Krizhevsky et al)

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

แต่ฉันไม่เชื่อว่าประสบความสำเร็จที่ยิ่งใหญ่ของเครือข่ายประสาทที่ทันสมัยเป็นเพราะ Relu เพียงอย่างเดียว เทคนิคการเริ่มต้นใหม่เช่นการเริ่มต้นของ Xavier, การออกกลางคันและ (ต่อมา) batchnorm ก็มีบทบาทสำคัญมากเช่นกัน ตัวอย่างเช่น AlexNet ที่มีชื่อเสียงใช้ ReLu และออกกลางคัน

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

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

เราเพิ่ม BN เปลี่ยนทันทีก่อนที่จะไม่เป็นเชิงเส้นโดย normalizing B ... การทำให้เป็นปกติจะทำให้เกิดการเปิดใช้งานด้วยการกระจายที่เสถียรx=Wยู+


1
ฉันควรจะเน้นในส่วนนี้: ฉันพยายามที่จะบอกว่า ReLu เพียงอย่างเดียวไม่สามารถแก้ปัญหานี้ได้ คุณพูดถูกว่าเอาท์พุท ReLu ไม่ได้อยู่กึ่งกลางและทำให้ประสิทธิภาพการทำงานของ NN ลดลงเว้นแต่ว่าน้ำหนักจะถูกทำให้เป็นมาตรฐาน แต่การไล่ระดับสีที่อิ่มตัวนั้นทำร้ายเอ็นเอ็นมากยิ่งขึ้นดังนั้นการยอมรับ ReLu เป็นจำนวนมากจึงเป็นก้าวไปข้างหน้าแม้จะมีข้อเสีย
Maxim

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

อัปเดตคำตอบของฉันพร้อมรายละเอียดบางอย่างเกี่ยวกับปัญหานี้
Maxim

สิ่งที่ฉันรู้สึกสับสนเล็กน้อยทำไมไม่ใช้ฟังก์ชั่นเอกลักษณ์? ข้อดีของ 0 สำหรับค่า neg คืออะไร
อเล็กซ์

@Alex id ไม่ใช่แบบเส้นตรง มันเทียบเท่ากับการมีเลเยอร์เชิงเส้นใน NN เท่านั้น ดูคำถามนี้ - stackoverflow.com/q/46659525/712995
Maxim
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.