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

การปรับแบบสุ่มที่ไม่เอนเอียง

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

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

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

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

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

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

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

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

เกรเดียนต์สุ่มอาจต่างกันระหว่างการปรับ โดยไม่เอนเอียงเมื่อค่าเฉลี่ยมีเงื่อนไขเท่ากับเกรเดียนต์เต็ม

ในตัวอย่าง D เป็น 0 หรือ 2 ด้วยโอกาสเท่ากัน ค่าเฉลี่ยจึงเป็น 1

การปรับรวมเกรเดียนต์สุ่มกับขนาดก้าว

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

E[D(k)∣Θ(k−1)]=∇r(Θ(k−1)),Θ(k)=Θ(k−1)−ηkD(k)\mathbb E[D^{(k)}\mid\Theta^{(k-1)}]=\nabla r(\Theta^{(k-1)}),\quad\Theta^{(k)}=\Theta^{(k-1)}-\eta_kD^{(k)}

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

สัญลักษณ์

D(k)D^{(k)}
เกรเดียนต์สุ่มที่ขั้น k
ηkη_k
ขนาดก้าว
Θ(k−1)Θ^{(k-1)}
พารามิเตอร์ก่อนก้าว

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

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

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

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

คุณเลือก

  • input.theta = 2
  • input.rate = 0.5

ค่าเริ่มต้นในโค้ด

  • gradients = [0, 2]

คำนวณที่นี่

นิพจน์ผลลัพธ์: { gradients, meanGradient, fullGradient: 1, nextParameters }

  • meanGradient = (gradients[0] + gradients[1]) / 2 ใช้: gradients
  • nextParameters = gradients.map((value) => input.theta - input.rate * value) ใช้: gradients, input.theta, input.rate

ส่งกลับ

ผลลัพธ์ตัวอย่าง
gradients
อาร์เรย์ (2 รายการ): [0, 2]
meanGradient
1
fullGradient
1
nextParameters
อาร์เรย์ (2 รายการ): [2, 1]

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

ผลลัพธ์

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

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

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

แหล่งอ้างอิง: อัลกอริทึม 1