ฟังก์ชันการเปิดใช้งานใดสำหรับเลเยอร์เอาท์พุท


44

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


2
เมื่อเร็ว ๆ นี้ ReLU ได้รับความนิยมในฐานะฟังก์ชั่นการเปิดใช้งานสำหรับหน่วยที่ซ่อนอยู่
ijuneja

คำตอบ:


39
  • การถดถอย: เป็นเส้นตรง (เนื่องจากค่าไม่ถูก จำกัด )
  • การจัดหมวดหมู่: softmax (sigmoid ง่าย ๆ ทำงานได้ดี แต่ softmax ทำงานได้ดีขึ้น)

ใช้ sigmoid อย่างง่ายก็ต่อเมื่อผลลัพธ์ของคุณยอมรับคำตอบ "จริง" หลายตัวอย่างเช่นเครือข่ายที่ตรวจสอบว่ามีวัตถุต่าง ๆ ในรูปภาพหรือไม่ กล่าวอีกนัยหนึ่งเอาท์พุทไม่ได้เป็นการกระจายความน่าจะเป็น (ไม่จำเป็นต้องรวมเป็น 1)


2
Softmax ก็มีความสำคัญเช่นกันหากคุณมีหลายกลุ่มสำหรับการจัดหมวดหมู่
cdeterman

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

1
ฉันไม่คิดว่า softmax เป็นการเปิดใช้งาน โดยทั่วไปคุณต้องเปิดใช้งานก่อนที่จะทำให้ปกติ (softmax)
แอรอน

23

ฉันอาจไปงานปาร์ตี้สาย แต่ดูเหมือนว่ามีบางสิ่งที่จำเป็นต้องล้างออกที่นี่

g(x)CzCz

C(y,g(z))=12(yg(z))2g(x)=x

C(y,g(z))z=C(y,g(z))g(z)g(z)z=g(z)(12(yg(z))2)z(z)=(yg(z))1=g(z)y
Cz

Cz

ประการที่สองฉันต้องการเพิ่มว่ามีฟังก์ชั่นการเปิดใช้งานมากมายที่สามารถใช้สำหรับเลเยอร์ที่ซ่อนอยู่ Sigmoids (เช่นฟังก์ชั่นลอจิสติกและค่าไฮเพอร์โบลิกแทนเจนต์) พิสูจน์แล้วว่าทำงานได้ดี แต่จากJatinแล้วสิ่งเหล่านี้จะหายไปจากการไล่ระดับสีเมื่อเครือข่ายของคุณลึกเกินไป ในกรณีนี้ ReLUs ได้กลายเป็นที่นิยม สิ่งที่ฉันต้องการจะเน้นคือมีฟังก์ชั่นการเปิดใช้งานมากมายและนักวิจัยหลายคนมองหาสิ่งใหม่ ๆ (เช่นหน่วยเชิงเส้นเชิงเส้น (ELUs) หน่วย Gaussian Error Linear (GELU), ... ) ที่แตกต่างกัน / คุณสมบัติที่ดีกว่า

เพื่อสรุป: เมื่อมองหาฟังก์ชั่นการเปิดใช้งานที่ดีที่สุดเพียงแค่มีความคิดสร้างสรรค์ ลองใช้สิ่งต่าง ๆ และดูว่าชุดค่าผสมใดนำไปสู่ประสิทธิภาพที่ดีที่สุด


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


ทำไมนี่ไม่ใช่คำตอบที่ดีที่สุด darned สวยใช้งานง่ายและวิทยาศาสตร์อย่างสมบูรณ์
Vikram Murthy

13

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

คำอธิบายโดยละเอียดที่นี่: http://cs231n.github.io/neural-networks-1/#actfun

ฟังก์ชั่นที่ดีที่สุดสำหรับเลเยอร์ที่ซ่อนอยู่จึงเป็น ReLu


11
คำถามกำลังขอเลเยอร์เอาท์พุท -1
Euler_Salter

1
ตกลง เพิ่มคำตอบตามบรรทัดแรกของคำถาม บางทีนี่อาจเป็นความเห็นแทนที่จะเป็นคำตอบ
Jatin

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

5

2,3,4,5,...

2,3,4,...

p(y=1)1p(y=1)=p(y=0)

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

หน่วยReLUหรือตัวแปรที่คล้ายกันจะมีประโยชน์เมื่อเอาต์พุตถูกผูกไว้ด้านบนหรือด้านล่าง หากเอาต์พุตถูก จำกัด ให้เป็นแบบไม่ลบเท่านั้นก็จะเหมาะสมที่จะใช้การเปิดใช้งาน ReLU เป็นฟังก์ชันเอาต์พุต

[1,1]

สิ่งที่ดีเกี่ยวกับเครือข่ายประสาทคือพวกมันมีเครื่องมือที่ยืดหยุ่นอย่างเหลือเชื่อ

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