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

ความยาววิถีคุณลักษณะ

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

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

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

การประมาณและความลึก · ศึกษาความผิดพลาดในการประมาณและขนาดเครือข่ายภายใต้เงื่อนไข

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

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

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

ใช้ในส่วนต้นฉบับเหล่านี้: 3.3 วิธีอื่นในการวัดความสามารถในการแทนฟังก์ชัน

เส้นโค้งในปริภูมิข้อมูลเข้าผ่านเครือข่าย ผลลัพธ์ของชั้นสร้างอีกเส้นโค้งซึ่งความยาวอธิบายว่าผลลัพธ์เหล่านั้นเดินทางไกลเพียงใด

สำหรับ γ(t)=t และคุณลักษณะ ReLU(2t−1), t ใน [0,1] ผลลัพธ์คงอยู่ที่ศูนย์ในครึ่งแรกแล้วเพิ่มถึงหนึ่ง

ความยาววิถีเป็นมาตรวัดหนึ่งในการอภิปรายความสามารถในการแสดงของต้นฉบับ

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

Length⁡(Φˉ(ℓ)(γ(⋅),θ)),ℓ∈[L−1],\operatorname{Length}(\bar{\Phi}^{(\ell)}(\gamma(\cdot),\theta)),\quad\ell\in[L-1],

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

สัญลักษณ์

γγ
เส้นโค้งข้อมูลเข้าต่อเนื่องบน [0,1]
Φˉ(ℓ)Φ̄^{(ℓ)}
ผลลัพธ์หลังการกระตุ้นของชั้น ℓ

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

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

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

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

คุณเลือก

  • input.scale = 2

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

  • points = [0, 0.5, 1]

คำนวณที่นี่

นิพจน์ผลลัพธ์: { points, output, segmentLengths, length: segmentLengths.reduce((a, b) => a + b, 0), }

  • output = points.map((t) => Math.max(0, input.scale * t - 1)) ใช้: points, input.scale
  • segmentLengths = output.slice(1).map((value, i) => Math.abs(value - output[i])) ใช้: output

ส่งกลับ

ผลลัพธ์ตัวอย่าง
points
อาร์เรย์ (3 รายการ): [0, 0.5, 1]
output
อาร์เรย์ (3 รายการ): [0, 0, 1]
segmentLengths
อาร์เรย์ (2 รายการ): [0, 1]
length
1

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

ผลลัพธ์

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

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

คุณลักษณะสมมติเพิ่มไม่ลดบน [0,1] ดังนั้นการแปรผันรวมที่แน่นอนเท่ากับผลต่างปลาย ต้นฉบับศึกษาความยาววิถีสำหรับการกำหนดค่าเริ่มต้นเครือข่ายประสาทแบบสุ่มและอภิปรายว่าค่านี้เปลี่ยนตามความลึกอย่างไร

แหล่งอ้างอิง: วิถีคุณลักษณะ