ทำไมอัตราการเรียนรู้ทำให้น้ำหนักของเครือข่ายประสาทเทียมสูงขึ้น?


9

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

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

1) เหตุใดลำดับความสำคัญเดียวจึงมีผลเช่นนี้?

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


คุณช่วยบอกได้ไหมว่าคุณได้เริ่มต้นน้ำหนักของคุณอย่างไร?
Himanshu Rai

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

คำตอบ:


9

คุณอาจพบว่าบทที่ 8 ของการเรียนรู้ลึกเป็นประโยชน์ ในนั้นผู้เขียนหารือการฝึกอบรมของโครงข่ายประสาทเทียม มันซับซ้อนมากดังนั้นฉันไม่แปลกใจที่คุณมีปัญหา

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

ข้อความจากผู้เขียน:

ความท้าทายบางอย่างเกิดขึ้นแม้ว่าการปรับฟังก์ชั่นนูนให้เหมาะสมที่สุด ของเหล่านี้ที่โดดเด่นที่สุดคือป่วยปรับอากาศของเมทริกซ์รัฐHนี่เป็นปัญหาที่พบได้ทั่วไปในการหาค่าเหมาะที่สุดเชิงตัวเลขนูนหรืออื่น ๆ และอธิบายไว้ในรายละเอียดเพิ่มเติมในหัวข้อ 4.3.1H

ปัญหาการปรับอากาศที่เชื่อกันโดยทั่วไปเชื่อว่าจะมีอยู่ในปัญหาการฝึกอบรมเครือข่ายประสาท การปรับสภาพไม่ดีสามารถทำให้สิงคโปร์กลายเป็น“ ติด” ในแง่ที่ว่าแม้แต่ขั้นตอนที่เล็กมากก็เพิ่มฟังก์ชั่นค่าใช้จ่าย [เน้นของฉันเพิ่ม]

ผู้เขียนให้มาแบบง่าย ๆ เพื่อแสดงว่าเป็นกรณีนี้ ฟังก์ชันลดต้นทุนควรเปลี่ยน (เป็นลำดับที่สอง)

ε22gTHgεgTg

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


2
สำหรับผมแล้วดูเหมือนว่าคำตอบในโควต้านี้มีคำอธิบายที่เข้าใจง่ายเกี่ยวกับสภาพของ Hessian
Oren Milman

3

1) เหตุใดลำดับความสำคัญเดียวจึงมีผลเช่นนี้?

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

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

เหตุผลที่สองคือรูปร่างของฟังก์ชันต้นทุน คุณพยายามลดค่าให้น้อยที่สุดด้วยขั้นตอนเล็ก ๆ ความยาวของขั้นตอนเหล่านั้นนั้นมาจากสองปัจจัยคือการไล่ระดับสีและอัตราการเรียนรู้ ภาพฟังก์ชั่นของคุณเหมือน x ^ 2 หากค่าของคุณใกล้กับ 0 การไล่ระดับสีจะน้อยกว่าถ้ามันเพิ่มขึ้น แต่ถ้าอัตราการเรียนรู้ของคุณใหญ่แล้วแทนที่จะเข้าใกล้ 0 คุณจะเพิ่มข้อผิดพลาดได้จริงเพราะจุดใหม่ของคุณขึ้นอยู่กับการให้คะแนนและ อัตราการเรียนรู้อยู่ที่ 0 มากกว่าขั้นตอนก่อนหน้าของคุณ และสิ่งนี้สามารถเกิดขึ้นได้หลายครั้ง

ลองดูที่ลิงค์นี้: http://www.statisticsviews.com/details/feature/5722691/Getting-to-the-Bottom-of-Regression-with-Gradient-Descent.html

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


1
โดยคำนึงถึงเหตุผลที่สอง - คำตอบนี้แสดงให้เห็น (ใช้ฟังก์ชั่นง่าย ๆ ) เมื่อการไล่ระดับสีที่ลาดเอียงอาจแตกต่างกัน คำตอบนั้นยังมีรหัส Python เพื่อให้คุณสามารถทดสอบและดูว่าการไล่ระดับสีแบบลาดลงทำงานอย่างไรในสถานการณ์ที่แตกต่างกัน ..
Oren Milman
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.