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

มิติประสิทธิผลและความแปรปรวน

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

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

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

ขอบเขตการทำงานกับข้อมูลใหม่ · เชื่อมพฤติกรรมบนตัวอย่างกับความเสี่ยงประชากรภายใต้สมมติฐาน

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

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

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

ใช้ในส่วนต้นฉบับเหล่านี้: 2.4 การลดลงครั้งที่สองของความผิดพลาด

เรียงค่าเฉพาะของความแปรปรวนร่วมจากมากไปน้อย สำหรับแต่ละ k หารผลรวมค่าเฉพาะที่เหลือด้วยค่าเฉพาะถัดไปและหา k แรกที่ผ่านเกณฑ์

จากนั้นต้นฉบับใช้ k* ในนิพจน์ความแปรปรวนโดยประมาณ

สเปกตรัมอาจส่งผลต่อการวางนัยทั่วไปนอกเหนือจากจำนวนพารามิเตอร์ดิบ

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

k∗:=min⁡{k≥0 ⁣:∑i>kλiλk+1≥cm},k^{*}:=\min\{k\geq 0\colon\frac{\sum_{i>k}\lambda_{i}}{\lambda_{k+1}}\geq cm\},

ค่าประมาณ · ผลลัพธ์คำนวณค่าประมาณต้นฉบับด้วยค่าเฉพาะและ c ที่ให้มา ไม่คำนวณความแปรปรวนจริงหรือระบุค่าคงที่ซ่อนในความสัมพันธ์โดยประมาณ

สัญลักษณ์

λiλ_i
ค่าเฉพาะไม่เป็นลบของความแปรปรวนร่วมข้อมูลเข้าเรียงจากมากไปน้อย
cc
ค่าคงที่สากลบวกในเงื่อนไขต้นฉบับ
mm
ขนาดตัวอย่างบวก

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

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

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

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

คุณเลือก

  • input.c = 1
  • input.m = 2

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

  • eigenvalues = [3, 2, 1]

คำนวณที่นี่

นิพจน์ผลลัพธ์: { k, tailSum, tailSquares, approximation: k / m + (m * tailSquares) / tailSum ** 2, }

  • c = input.c ใช้: input.c
  • m = input.m ใช้: input.m
  • k = eigenvalues.findIndex( (value, index) => eigenvalues.slice(index).reduce((a, b) => a + b, 0) / value >= c * m, ) ใช้: eigenvalues, c, m
  • tail = eigenvalues.slice(k) ใช้: eigenvalues, k
  • tailSum = tail.reduce((a, b) => a + b, 0) ใช้: tail
  • tailSquares = tail.reduce((sum, value) => sum + value * value, 0) ใช้: tail

ส่งกลับ

ผลลัพธ์ตัวอย่าง
k
0
tailSum
6
tailSquares
14
approximation
≈0.7778

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

ผลลัพธ์

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

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

ต้นฉบับพิจารณาข้อมูลเข้าแจกแจงปกติที่มีอันดับความแปรปรวนร่วมมากกว่า m ภายใต้เงื่อนไขที่ระบุว่า k*/m เล็กเพียงพอ ให้นิพจน์ความแปรปรวนด้วยความน่าจะเป็นสูงตามความสัมพันธ์โดยประมาณ โค้ดใช้ค่าเฉพาะบวกสามค่า ปฏิเสธกรณีไม่มี k และไม่กำหนดค่าคงที่ทฤษฎีบทหรือตรวจความน่าจะเป็นสูง

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