คณิตศาสตร์สมัยใหม่ของการเรียนรู้เชิงลึกอธิบายสำหรับผู้ที่ไม่ใช่นักคณิตศาสตร์

การหาค่าเหมาะที่สุด

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

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

5.1 รูปร่างของค่าความผิดพลาด

การวิเคราะห์ภูมิทัศน์ความสูญเสีย · หน้าในบทความ 39–41

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

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

นิวรอนชั้นซ่อนสองตัวส่งค่า 3 และ 0 ไปยังผลลัพธ์

สูตรจากบทความ

Φ(x,θ)=∑j=1nθj(2)ϱ(⟨θj(1),[x;1]⟩)\Phi(x,\theta)=\sum_{j=1}^{n}\theta^{(2)}_j\varrho(\langle\theta^{(1)}_j,[x;1]\rangle)
Φ(2)=3ReLU⁡(2−1)+2ReLU⁡(−2+1)=3\Phi(2)=3\operatorname{ReLU}(2-1)+2\operatorname{ReLU}(-2+1)=3
function networkOutput(x) {
  return { output: 3 * Math.max(0, x - 1) + 2 * Math.max(0, -x + 1) };
}
const result = networkOutput(2);

เลือกการเปลี่ยนแปลง ทำนาย แล้วกดรัน

ผลลัพธ์:
เปิด JavaScript เพื่อรันตัวอย่างนี้

ศึกษาเพิ่มเติมในคลังแนวคิด หน้าในบทความ 40 (5.1)

ปุ่มนับดอกไม้

ตัวอย่างสมมติ

สำรวจ

หาค่าความผิดพลาดต่ำสุดในหกค่าจำนวนเต็มที่กำหนด

แตะภาพหรือใช้ปุ่ม

ภูมิทัศน์ความผิดพลาดค่า 4 · ผิดพลาด 1.2ดอกไม้จริงดอกไม้ 3 ดอกเครื่องทาย≈4.095ดอกไม้
ค่าหน้าปัด

ปัจจุบัน: 4; ความผิดพลาด: 1.2

ในสูตร x คือข้อมูลเข้า θ เก็บน้ำหนักและไบแอส n นับจำนวนนิวรอนชั้นซ่อน และ ρ คือฟังก์ชันกระตุ้น สัญลักษณ์ [x; 1] เติม 1 ต่อท้ายข้อมูลเข้า การคูณ 1 นี้ด้วยไบแอสแล้วบวกเข้าไปทำให้รวมไบแอสในผลรวมถ่วงน้ำหนักเดียวกัน การเปลี่ยน θ เปลี่ยนความสูญเสียและสร้างภูมิทัศน์ของค่าความสูญเสียที่เป็นไปได้

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

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

5.2 เมื่อพารามิเตอร์เปลี่ยนเพียงเล็กน้อย

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

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

ลองใช้กฎที่ง่ายกว่า f(w) = w² ใกล้ w = 2 เมื่อ w เป็น 2 ผลคือ 2² = 4 เมื่อเป็น 2.1 ผลคือ 2.1² = 4.41 เราประมาณการเปลี่ยนแปลงด้วยความชันที่ 2 ได้

การประมาณด้วยเส้นตรงใกล้จุดเริ่มให้ 4.4 ส่วนคำตอบตรงคือ 4.41

สูตรจากบทความ

Φlin(⋅,θ)=Φ(⋅,Θ0)+⟨∇θΦ(⋅,Θ0),θ−Θ0⟩\Phi^{\mathrm{lin}}(\cdot,\theta)=\Phi(\cdot,\Theta_0)+\langle\nabla_\theta\Phi(\cdot,\Theta_0),\theta-\Theta_0\rangle
w=2,Δ=0.1:flinear=4.4,f=4.41w=2,\quad \Delta=0.1:\quad f_{\rm linear}=4.4,\quad f=4.41
function linearApproximation(weight, change) {
  const linear = weight ** 2 + 2 * weight * change;
  const exact = (weight + change) ** 2;
  return { linear, exact };
}
const result = linearApproximation(2, 0.1);

เลือกการเปลี่ยนแปลง ทำนาย แล้วกดรัน

ผลลัพธ์:
เปิด JavaScript เพื่อรันตัวอย่างนี้

ศึกษาเพิ่มเติมในคลังแนวคิด หน้าในบทความ 24

การเปลี่ยนคำทำนายเล็กน้อย

ตัวอย่างสมมติ

สำรวจ

ทำนายจำนวนการแก้ทีละ 0.1 จาก 2 ไป 3

ดอกไม้จริงดอกไม้ 3 ดอกเครื่องทาย?ปรับเล็กน้อย 0 ครั้ง
จำนวนครั้งที่แก้

ค่าเริ่มต้น: 2; จำนวนครั้งที่แก้: 0.1

เริ่มจาก 2² = 4 ความชันที่ 2 คือ 4 ดังนั้นเมื่อเปลี่ยน 0.1 การเปลี่ยนแปลงที่ประมาณได้คือ 4×0.1 = 0.4 บวกกับ 4 ได้ 4.4 ใกล้กับค่าจริง 2.1² = 4.41 เพราะเมื่อเปลี่ยน Δ เล็กน้อย จะได้ (2 + Δ)² = 4 + 4Δ + Δ² โดยค่าประมาณละ Δ² ซึ่งเล็กไว้ ในสูตรเครือข่าย Θ₀ คือค่าเริ่มต้น θ คือค่าใหม่ และเกรเดียนต์รวบรวมอัตราการเปลี่ยนเริ่มต้นของแต่ละพารามิเตอร์

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

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

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

ลองแบบทดสอบท้ายบท

1. ความสูญเสียคืออะไร?

2. ความสูญเสียขึ้นกับปุ่มหมุน เกรเดียนต์บอกอะไร?

3. ส่วนประกอบหลายตัวเปลี่ยนเพียงเล็กน้อย การเปลี่ยนรวมอาจทำอะไร?

คำอธิบายเพื่อการศึกษาอย่างอิสระจาก คณิตศาสตร์สมัยใหม่ของการเรียนรู้เชิงลึก — จูเลียส แบร์เนอร์, ฟิลิปป์ โกรส์, กิตตา คูทินิออค, ฟิลิปป์ ปีเตอร์เซน. ตัวอย่างใช้ตัวเลขสมมติ เว้นแต่จะระบุแหล่งข้อมูลที่วัดจริง