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

การหาค่าเฉลี่ยค่าที่ปรับซ้ำ

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

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

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

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

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

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

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

ใช้ในส่วนต้นฉบับเหล่านี้: 1.2 เรียนรู้จากตัวอย่าง · 1.2.1 หาพารามิเตอร์ที่เหมาะสม

ทฤษฎีบทการหาค่าเหมาะที่สุดในต้นฉบับหาค่าเฉลี่ยลำดับเวกเตอร์พารามิเตอร์แล้วเปรียบเทียบผลกับค่าต่ำสุดในลูกบอลหนึ่งหน่วย

ตัวอย่างใช้ r(θ)=θ² ซึ่งมีค่าต่ำสุดใน (−1,1) ที่ θ*=0 และสามขั้นเกรเดียนต์ที่คำนวณไว้อย่างชัดเจน

การหาค่าเฉลี่ยค่าที่ปรับซ้ำเป็นวิธีหนึ่งในการสร้างผลลัพธ์จากลำดับการหาค่าเหมาะที่สุด

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

Θˉ=1K∑k=1KΘ(k),θ∗∈argmin⁡θ∈B1(0)r(θ)\bar\Theta=\frac1K\sum_{k=1}^K\Theta^{(k)},\quad\theta^*\in\operatorname{argmin}_{\theta\in B_1(0)}r(\theta)

ภาพประกอบ · คำนวณฟังก์ชันกำลังสองหนึ่งมิติแบบกำหนดแน่นอน ไม่ได้พิสูจน์ขอบเขตการหาค่าเหมาะที่สุดแบบสุ่มของต้นฉบับ

สัญลักษณ์

KK
จำนวนค่าที่ปรับซ้ำซึ่งเป็นบวก
Θ(k)Θ^{(k)}
พารามิเตอร์ที่ขั้น k
ηkη_k
ขนาดก้าวในการทำซ้ำครั้งที่ k
rr
เป้าหมายค่าจริงบนโดเมนพารามิเตอร์

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

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

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

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

คุณเลือก

  • input.start = 0.8

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

  • rate = 0.25
  • iterates = []

คำนวณที่นี่

นิพจน์ผลลัพธ์: { rate, iterates, average, averageRisk: average ** 2, minimizer: 0, minimumRisk: 0, }

  • start = input.start ใช้: input.start
  • theta = start ใช้: start
  • for (let k = 0; k < 3; k++) { theta = theta - rate * 2 * theta; iterates.push(theta); } ใช้: theta, rate, iterates
  • average = iterates.reduce((sum, value) => sum + value, 0) / iterates.length ใช้: iterates

ส่งกลับ

ผลลัพธ์ตัวอย่าง
rate
0.25
iterates
อาร์เรย์ (3 รายการ): [0.4, 0.2, 0.1]
average
≈0.2333
averageRisk
≈0.05444
minimizer
0
minimumRisk
0

บางเส้นทางหรือค่าขณะรันยังระบุไม่ได้

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

ผลลัพธ์

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

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

ทฤษฎีบทต้นฉบับใช้เป้าหมายค่าจริงบนลูกบอลหนึ่งหน่วยและค่าเฉลี่ยค่าที่ปรับซ้ำ เป้าหมายตัวอย่างนิยามบนจำนวนจริงทั้งหมด ตัวลดต่ำสุดเป็นศูนย์พอดี และทุกค่าที่แสดงอยู่ภายในลูกบอลหนึ่งหน่วยมิติเดียว

แหล่งอ้างอิง: ค่าเฉลี่ยค่าที่ปรับซ้ำ