อะไรคือคำอธิบายของตัวอย่างว่าทำไมการทำแบทช์ให้เป็นมาตรฐานต้องทำด้วยความระมัดระวัง


11

ฉันกำลังอ่านเอกสารการทำให้เป็นมาตรฐานของแบทช์ [1] และมันมีส่วนหนึ่งที่ต้องผ่านตัวอย่างพยายามที่จะแสดงว่าทำไมการทำให้เป็นมาตรฐานต้องทำอย่างระมัดระวัง ฉันอย่างจริงใจไม่เข้าใจวิธีการทำงานของตัวอย่างและฉันอยากรู้อยากเห็นจริง ๆ เข้าใจพวกเขากระดาษมากที่สุดเท่าที่จะทำได้ ก่อนอื่นให้ฉันพูดที่นี่:

ตัวอย่างเช่นพิจารณาชั้นด้วยการป้อนข้อมูลที่ยูที่เพิ่มเรียนรู้อคติ B และ normalizes ที่ x = U + B , x = { x 1 . . N }คือชุดของค่าของxในชุดฝึกอบรมและE [ x ] = N i = 1 x ix^=x-E[x]x=ยู+,X={x1...ยังไม่มีข้อความ}xE[x]=Σผม=1ยังไม่มีข้อความxผม. หากขั้นตอนการไล่ระดับสีแบบไม่สนใจการพึ่งพาบนbดังนั้นมันจะอัปเดตb b + Δ > bโดยที่Δ b - lE[x]bb+Δ>b x แล้วU+(B+Δ)-E[U+(B+Δ)]=U+B-E[U+B] ดังนั้นการรวมกันของการปรับปรุงเพื่อbและการเปลี่ยนแปลงที่ตามมาในการทำให้เป็นมาตรฐานทำให้ไม่มีการเปลี่ยนแปลงในเอาต์พุตของเลเยอร์หรือดังนั้นการสูญเสียΔblx^u+(b+Δb)E[u+(b+Δb)]=u+bE[u+b]

ฉันคิดว่าฉันเข้าใจข้อความว่าหากไม่ทำบรรทัดฐานอย่างถูกต้องก็อาจไม่ดี ฉันไม่ได้เป็นตัวอย่างที่พวกเขาใช้ portrays นี้

ฉันรู้ว่ามันยากที่จะช่วยใครสักคนหากพวกเขาไม่เจาะจงมากขึ้นในสิ่งที่ทำให้พวกเขาสับสนดังนั้นฉันจะให้ในหัวข้อถัดไปสิ่งที่ทำให้ฉันสับสนเกี่ยวกับคำอธิบายของพวกเขา


ฉันคิดว่าความสับสนส่วนใหญ่ของฉันอาจเป็นเรื่องแปลกดังนั้นฉันจะชี้แจง

ครั้งแรกฉันคิดว่าสิ่งหนึ่งที่ทำให้ฉันสับสนมากคือความหมายสำหรับผู้เขียนที่มีหน่วยในเครือข่ายและการเปิดใช้งานคืออะไร โดยปกติฉันคิดว่าการเปิดใช้งานเป็น:

x(ล.)=a(ล.)=θ(Z(ล.))=θ(W(ล.),x(ล.-1)+(ล.))

โดยที่เป็นเวกเตอร์คุณลักษณะ raw จากเลเยอร์อินพุตแรกx(0)=a(0)=x

นอกจากนี้ฉันคิดว่าสิ่งแรกที่ทำให้ฉันสับสน (เนื่องจากเหตุผลก่อนหน้า) คือสิ่งที่พวกเขาพยายามอธิบายจริงๆ มันบอกว่า:

normalizes ที่x = U + x^=x-E[x]x=ยู+

ฉันคิดว่าสิ่งที่พวกเขากำลังพยายามจะพูดก็คือแทนที่จะใช้การเปิดใช้งานตามที่คำนวณโดยผ่านไปข้างหน้าอย่างใดอย่างหนึ่งดำเนินการ "normalization" โดยการลบการเปิดใช้งานเฉลี่ย:x(ล.)=a(ล.)

x¯ล.=a¯ล.=1ยังไม่มีข้อความΣผม=1ยังไม่มีข้อความa¯ล.=1ยังไม่มีข้อความΣผม=1ยังไม่มีข้อความx¯ล.

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

เกี่ยวกับสิ่งนี้ฉันเดาว่าพวกเขาเรียกว่าอาจจะเป็นx ( l ) ? นั่นคือสิ่งที่ฉันจะเดาเพราะพวกเขาเรียกมันว่า "อินพุต" และมีสมการx = u + b (ฉันเดาว่าพวกเขากำลังใช้หน่วยกระตุ้นเชิงเส้น / เชิงเส้นสำหรับเครือข่ายประสาทของพวกเขา?)ยูx(ล.)x=ยู+

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

Δ(ล.)α-ล.(ล.)

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

δJ(ล.)=LZJ(ล.)

อีกสิ่งที่ทำให้ฉันสับสนคือ:

แล้ว ]ยู+(+Δ)-E[ยู+(+Δ)]=ยู+-E[ยู+]

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

x^=θ(ยู+(+Δ))-E[θ(ยู+(+Δ))]

ซึ่งไม่ได้ยกเลิกเปลี่ยนแปลงในพารามิเตอร์ข อย่างไรก็ตามฉันไม่รู้จริง ๆ ว่าพวกเขากำลังทำอะไรฉันจึงคาดเดา สมการที่พวกเขาเขียนนั้นคืออะไรกันแน่?Δ

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


[1]: Ioffe เอสและ Szegedy C. (2015),
"แบทช์ Normalization: เร่งการฝึกอบรมเครือข่ายลึกโดยการลดภายในตัวแปรร่วมกดปุ่ม Shift"
การดำเนินการของ 32 ประชุมนานาชาติเกี่ยวกับการเรียนรู้เครื่อง , ลีลล์, ฝรั่งเศส, 2015
วารสารเครื่องการเรียนรู้ การวิจัย: ปริมาณ W&CP 37


ฉันคิดว่าลักษณะที่มีเหตุผลของย่อหน้านั้นชัดเจนในขณะนี้ แต่ข้อความที่พยายามสื่อความหมายและจุดประสงค์ของมันนั้นชัดเจนน้อยกว่า
Charlie Parker

คำตอบ:


3

E[x]

อย่างไรก็ตามหากการดัดแปลงเหล่านี้สลับกับขั้นตอนการออปติไมซ์ขั้นตอนการไล่ระดับสีไล่ระดับอาจพยายามอัปเดตพารามิเตอร์ในวิธีที่ต้องการให้การปรับสภาพปกติได้รับการอัพเดตซึ่งจะลดผลกระทบของขั้นตอนการไล่ระดับสี

ดังนั้นพวกเขาจึงทำขั้นตอนการไล่ระดับสีแบบลาดชันเพื่อรับรู้ถึงการฟื้นฟูในวิธีการ


เกี่ยวกับคำถามที่คุณ

ยูx(ล.)

ยูยู

Δα-ล.

x^=x-E[x]=ยู+-E[x]E[x]

ล.=ล.x^x^=ล.x^,
Δα-ล.x^

ยู+(+Δ)-E[ยู+(+Δ)]=ยู+-E[ยู+]+Δ

x^+ΔE[x]


มันอาจจะเป็นประโยชน์ที่จะดูที่บางการใช้งานโอเพนซอร์สของการฟื้นฟูแบทช์ยกตัวอย่างเช่นในลาซานญ่าและKeras

มีคำถามอีกข้อที่อาจเกี่ยวข้องกันทำไมต้องใช้การไล่ระดับสีของช่วงเวลา (ค่าเฉลี่ยและความแปรปรวน) เมื่อใช้ Batch Normalization ใน Neural Network


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

@ CharlieParker อ๋อฉันคิดว่าอย่างนั้นการแสดงว่ามีเหตุผลที่ทำให้ GD update รับรู้ถึงการฟื้นฟู (IMO)
dontloo

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