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

ขั้นเกรเดียนต์มินิแบตช์

โครงการเรียนรู้เพนกวิน

โครงการใช้ข้อมูลเพนกวิน Palmer ที่สมบูรณ์ 342 แถว: ชุดฝึก 240 และชุดทดสอบ 102 แถว แถวฝึกที่เลือกกำหนดการปรับสเกลและพารามิเตอร์ CSV ต้นฉบับ

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

การเรียนรู้และการปรับพารามิเตอร์ · เลือกกฎหรือปรับพารามิเตอร์ด้วยกฎการเรียนรู้

ฟังก์ชันเป้าหมายให้เกรเดียนต์เพื่อปรับพารามิเตอร์

พิจารณาแนวคิดนี้ร่วมกับโครงการ สมมติฐานของต้นฉบับอาจต่างกัน ข้อมูลชุดนี้ไม่พิสูจน์ทฤษฎีบท

ข้อมูลเข้า: 12 × 2; ประเมินชุดทดสอบ: 102 · #58 · 40.6 มม., 193 มม.. คำตอบที่ทราบ: อาเดลี; ค่าทำนาย: อาเดลี · [≈0.7383, ≈0.2444, ≈0.01737].

ใช้ในส่วนต้นฉบับเหล่านี้: 1.2 เรียนรู้จากตัวอย่าง

คำนวณเกรเดียนต์หนึ่งค่าสำหรับแต่ละตัวอย่างในมินิแบตช์ หาค่าเฉลี่ย คูณด้วยขนาดก้าว แล้วลบ

ขั้นมินิแบตช์ปรับพารามิเตอร์ได้โดยไม่ใช้ตัวอย่างฝึกทุกตัว

ตัวอย่างสูตรต้นฉบับ

Θ(k)≔Θ(k−1)−ηkm′∑z∈S′∇θL(Φa(⋅,Θ(k−1)),z),\Theta^{(k)}\coloneqq\Theta^{(k-1)}-\frac{\eta_{k}}{m^{\prime}}\sum_{z\in{S}^{\prime}}\nabla_{\theta}{\mathcal{L}}(\Phi_{{a}}(\cdot,\Theta^{(k-1)}),z),

ภาพประกอบ · เกรเดียนต์สองค่าที่ให้มาแสดงการคำนวณ โค้ดไม่ได้คำนวณจากเครือข่ายหรือพิสูจน์การลู่เข้า

สัญลักษณ์

m′m'
ขนาดมินิแบตช์ที่เป็นบวก
ηkη_k
ขนาดก้าวในการทำซ้ำครั้งที่ k

ตัวอย่างสูตรต้นฉบับ

ตัวอย่างต้นฉบับนี้ใช้ข้อมูลเข้าและสมมติฐานของตัวเอง การแก้ไขไม่เปลี่ยนโครงการ

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

ลำดับข้อมูลในตัวอย่างนี้

คุณเลือก

  • input.firstGradient = 2
  • input.theta = 2
  • input.rate = 0.1

คำนวณที่นี่

นิพจน์ผลลัพธ์: { gradients, meanGradient, next: input.theta - input.rate * meanGradient }

  • gradients = [input.firstGradient, 4] ใช้: input.firstGradient
  • meanGradient = gradients.reduce((a, b) => a + b, 0) / gradients.length ใช้: gradients

ส่งกลับ

ผลลัพธ์ตัวอย่าง
gradients
อาร์เรย์ (2 รายการ): [2, 4]
meanGradient
3
next
1.7

อ่านตัวเลขจาก input แล้วคืนค่าผลลัพธ์ พื้นฐาน JavaScript.

ผลลัพธ์

เปิด JavaScript เพื่อรันตัวอย่างนี้

ข้อความทางเทคนิค

เปลี่ยนข้อมูลเข้าแล้วเรียกใช้โค้ดเดิมอีกครั้ง ผลลัพธ์ที่แสดงใช้ค่าข้างต้น

แหล่งอ้างอิง: นิพจน์จากแหล่งต้นฉบับ