ทำไม sigmoid จึงทำงานแทนอย่างอื่น?


40

ทำไมฟังก์ชั่น sigmoid มาตรฐานแบบพฤตินัยจึงได้รับความนิยมในเครือข่ายนิวรัลและการถดถอยโลจิสติก11+ex

ทำไมเราไม่ใช้ฟังก์ชั่นที่เปลี่ยนแปลงได้อื่น ๆ อีกมากมายด้วยเวลาการคำนวณที่เร็วขึ้นหรือการสลายตัวที่ช้ากว่า ไม่กี่ตัวอย่างในวิกิพีเดียเกี่ยวกับฟังก์ชั่น sigmoid หนึ่งในรายการโปรดของฉันกับการสลายตัวช้าและการคำนวณอย่างรวดเร็ว|}x1+|x|

แก้ไข

คำถามนั้นแตกต่างจากรายการฟังก์ชั่นการเปิดใช้งานที่ครอบคลุมในเครือข่ายนิวรัลที่มีข้อดี / ข้อเสียเนื่องจากฉันสนใจเพียงแค่ 'ทำไม' และสำหรับ sigmoid เท่านั้น


6
หมายเหตุ sigmoid โลจิสติกเป็นกรณีพิเศษของฟังก์ชั่น softmax และดูคำตอบของฉันสำหรับคำถามนี้: stats.stackexchange.com/questions/145272/…
Neil G

10
มีมีฟังก์ชั่นอื่น ๆ เช่น probit หรือ cloglog ที่ใช้กันทั่วไปดู: stats.stackexchange.com/questions/20523/...
ทิม

4
@ user777 ฉันไม่แน่ใจว่าซ้ำซ้อนหรือไม่เนื่องจากเธรดที่คุณอ้างถึงไม่ตอบคำถามทำไม
ทิม

@KarelMacek คุณแน่ใจหรือไม่ว่าอนุพันธ์นั้นไม่มีขีด จำกัด ด้านซ้าย / ขวาที่ 0 ดูเหมือนว่ามันจะมีการสัมผัสกับภาพที่เชื่อมโยงจาก Wikipedia
มาร์ค Horvath

5
ฉันเกลียดที่จะไม่เห็นด้วยกับสมาชิกชุมชนที่มีชื่อเสียงจำนวนมากที่ลงคะแนนให้ปิดเป็นซ้ำ แต่ฉันเชื่อว่าสิ่งที่ซ้ำกันไม่ได้ระบุว่า "ทำไม" และฉันจึงลงคะแนนให้เปิดคำถามนี้อีกครั้ง
whuber

คำตอบ:


24

การอ้างอิงตัวเองจากคำตอบนี้ไปยังคำถามอื่น:

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

สิ่งนี้อธิบายว่าทำไม sigmoid นี้ถูกใช้ในการถดถอยโลจิสติก

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


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

@ MarkHorvath ดีใจที่ฉันสามารถช่วย :-)
A. Donda

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

1
ฉันได้อ่านหัวข้อต่าง ๆ ทั้งในหนังสือบิชอป (2006 และ 1995) และฉันก็ยังไม่มั่นใจว่า sigmoid นั้นมีความสำคัญที่นี่ถึงแม้ว่าฉันจะได้รับแรงจูงใจจาก logit แน่นอน จะเกิดอะไรขึ้นถ้าฉันเขียนฟังก์ชันการสูญเสียข้ามเอนโทรปีเดียวกันตามสมมติฐานปัวซอง 2 ระดับ แต่ใช้ฟังก์ชั่นการเปิดใช้งานที่แตกต่างกันแทนที่จะเป็น sigmoid ตัวอย่างเช่นค่าที่คล้ายกันนี้ แต่ไม่ค่อยดีเท่าที่กำหนดไว้คือ: g (x) = 1 / (2-2x) ถ้า x <0, 1 - 1 / (2 + 2x) สำหรับ x> 0, g (0) = 0.5 ทีนี้สมการความน่าจะเป็นสูงสุดดูเหมือนแตกต่างกัน แต่ถ้าเราย่อให้เล็กสุดมันก็ไม่ได้
eraoul

ถ้า Bischop ได้ทำฟังก์ชัน "ที่เกิดขึ้นตามธรรมชาติ" จะเป็นใช่ไหม a=p(x,C1)(1+p(x,C1))p(x,C2)a1+a2
นาย Tsjolder

18

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

f(y)=py(1p)1y=(1p)exp{ylog(p1p)}.
p

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


เหตุผลที่ดีสำหรับการถดถอยโลจิสติก สิ่งที่ตลกที่เราให้ใช้นี้สำหรับข้อผิดพลาด Squared เกินไป ...
มาร์ค Horvath

11

ฉันถามตัวเองด้วยคำถามนี้มาหลายเดือนแล้ว คำตอบของ CrossValidated และ Quora แสดงรายการคุณสมบัติที่ดีของฟังก์ชัน sigmoid ของ logistic แต่ทั้งหมดดูเหมือนว่าเราจะเดาฟังก์ชันนี้ได้อย่างชาญฉลาด สิ่งที่ฉันพลาดคือเหตุผลในการเลือก ในที่สุดผมก็พบว่าหนึ่งในส่วน 6.2.2.2 ของ"ลึกการเรียนรู้" หนังสือโดย Bengio (2016) ในคำพูดของฉัน:

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

แรงจูงใจ

  • เราต้องการรูปแบบเชิงเส้น แต่เราไม่สามารถใช้โดยตรงเป็นinfty)z=wTx+bz(,+)
  • สำหรับการจำแนกประเภทก็จะทำให้ความรู้สึกที่จะถือว่าการกระจาย Bernoulli และรูปแบบของพารามิเตอร์ใน\θP(Y=1)=θ
  • ดังนั้นเราต้องทำแผนที่จากถึงเพื่อทำการจำแนกz(,+)[0,1]

ทำไมฟังก์ชัน sigmoid ของโลจิสติกส์?

ตัดกับผลตอบแทนถัวเฉลี่ยลาดศูนย์สำหรับนอก1] เราต้องการการไล่ระดับสีที่แข็งแกร่งเมื่อใดก็ตามที่การทำนายของแบบจำลองไม่ถูกต้องเนื่องจากเราแก้ปัญหาการถดถอยโลจิสติกด้วยการไล่ระดับสี สำหรับการถดถอยโลจิสติกไม่มีวิธีแก้ปัญหาแบบปิดzP(Y=1|z)=max{0,min{1,z}}z[0,1]

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

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

J(w,b)=1mi=1mlogP(Y=yi|xi;w,b)=1mi=1m(yilogP(Y=1|z)+(yi1)logP(Y=0|z))

เนื่องจากเราสามารถมุ่งเน้นไปที่กรณี ดังนั้นคำถามคือวิธีการรูปแบบที่กำหนดว่าเรามีBP(Y=0|z)=1P(Y=1|z)Y=1P(Y=1|z)z=wTx+b

ข้อกำหนดที่ชัดเจนสำหรับฟังก์ชั่นการทำแผนที่ถึงคือ:fzP(Y=1|z)

  • zR:f(z)[0,1]
  • f(0)=0.5
  • fควรเป็น wrt แบบสมมาตรแบบหมุนได้ , เช่น , ดังนั้นการพลิกสัญญาณของคลาสจึงไม่มีผลต่อฟังก์ชันต้นทุน(0,0.5)f(x)=1f(x)
  • fควรจะไม่ลดลงต่อเนื่องและ differentiable

ความต้องการเหล่านี้ได้รับการปฏิบัติตาม rescaling ฟังก์ชั่น sigmoid ทั้งและเติมเต็มพวกเขา อย่างไรก็ตามฟังก์ชั่น sigmoid นั้นแตกต่างกันไปตามพฤติกรรมของพวกมันในระหว่างการปรับแต่งแบบไล่ระดับสีตามความน่าจะเป็นของล็อก เราสามารถเห็นความแตกต่างโดยเสียบฟังก์ชั่นโลจิสติกเข้ากับฟังก์ชันต้นทุนของเราf(z)=11+ezf(z)=0.5+0.5z1+|z|f(z)=11+ez

ความอิ่มตัวของY=1

สำหรับและค่าใช้จ่ายของตัวอย่างที่ไม่ได้จัดประเภทเดียว (เช่น ) คือ:P(Y=1|z)=11+ezY=1m=1

J(z)=log(P(Y=1|z))=log(11+ez)=log(ez1+ez)=z+log(1+ez)

เราจะเห็นว่ามีเป็นองค์ประกอบเชิงเส้น-zตอนนี้เราสามารถดูสองกรณี:z

  • เมื่อมีขนาดใหญ่ทำนายรูปแบบของถูกต้องตั้งแต่ 1 ในฟังก์ชั่นค่าใช้จ่ายที่ asymptotes ระยะขนาดใหญ่Zดังนั้นจึงเป็นการยกเลิกออกไปซึ่งนำไปสู่ค่าใช้จ่ายโดยประมาณเป็นศูนย์สำหรับตัวอย่างนี้และการไล่ระดับสีอ่อน นั่นเป็นเหตุผลที่แบบจำลองนั้นทำนายคลาสที่ถูกต้องอยู่แล้วzY=1log(1+ez)zzz
  • เมื่อมีขนาดเล็ก ( แต่มีขนาดใหญ่) ทำนายรูปแบบก็คือไม่ถูกต้องตั้งแต่ 1 ในฟังก์ชั่นค่าใช้จ่ายที่ asymptotes ระยะสำหรับขนาดเล็กและZดังนั้นค่าใช้จ่ายโดยรวมสำหรับตัวอย่างนี้คือประมาณหมายถึงการไล่ระดับสี WRTคือประมาณ-1สิ่งนี้ทำให้ง่ายสำหรับโมเดลในการแก้ไขการทำนายที่ผิดโดยอิงจากการไล่ระดับสีแบบคงที่ที่ได้รับ แม้จะมีขนาดเล็กมากก็ไม่มีความอิ่มตัวเกิดขึ้นซึ่งจะทำให้การไล่ระดับสีหายไปz|z|Y=1log(1+ez)0zzz1z

ความอิ่มตัวของY=0

ด้านบนเราเพ่งความสนใจไปที่กรณี สำหรับฟังก์ชั่นค่าใช้จ่ายจะทำงานแบบอะนาล็อกโดยมีการไล่ระดับสีที่แข็งแกร่งเฉพาะเมื่อการทำนายแบบจำลองไม่ถูกต้องY=1Y=0

นี่คือฟังก์ชันต้นทุนสำหรับ :J(z)Y=1

ป้อนคำอธิบายรูปภาพที่นี่

มันเป็นฟังก์ชั่น softplus พลิกแนวนอน สำหรับมันเป็นฟังก์ชั่น softplusY=0

ทางเลือก

คุณพูดถึงทางเลือกในการฟังก์ชั่น sigmoid โลจิสติกเช่น|} ปกตินี้จะหมายถึงว่าเราจำลอง|}z1+|z|[0,1]P(Y=1|z)=0.5+0.5z1+|z|

ระหว่าง MLE ฟังก์ชันต้นทุนสำหรับจะเป็นY=1

J(z)=log(0.5+0.5z1+|z|) ,

ซึ่งมีลักษณะเช่นนี้:

ป้อนคำอธิบายรูปภาพที่นี่

คุณสามารถมองเห็นว่าการไล่ระดับสีของฟังก์ชั่นค่าใช้จ่ายที่ได้รับการปรับตัวลดลงและอ่อนแอสำหรับ\z


คุณหมายถึงอะไรเมื่อคุณเขียน "เมื่อแบบจำลองผิด"?
Gabriel Romon

@ GabrielRomon ฉันหมายถึงเมื่อการทำนายแบบจำลองผิด ดังนั้นสำหรับตัวอย่างการฝึกอบรมเราจะมีตัวอย่างคือการคาดการณ์ของเราคือระดับ 1 แต่0 (xi,yi)z=5yi=0
Kilian Batzner

6

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

Glorot และคณะ (2011) เครือข่ายนิวรัลรีไฟเออร์เบาบางลึก


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