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

โครงข่ายตื้น

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

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

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

กฎทำนายและชั้นของเครือข่าย · อธิบายหรือใช้กฎทำนาย ชั้น และพารามิเตอร์

โครงการใช้กฎเชิงเส้นกับสองคุณลักษณะ น้ำหนักที่ฝึกให้คะแนนหรือมวลที่ปรับสเกล

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

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

ใช้ในส่วนต้นฉบับเหล่านี้: 5.1 รูปร่างของค่าความผิดพลาด · 5.2 เมื่อพารามิเตอร์เปลี่ยนเพียงเล็กน้อย

แต่ละหน่วยใช้ ReLU กับข้อมูลเข้าถ่วงน้ำหนักบวกไบแอส ผลลัพธ์นำค่าจากแต่ละหน่วยมาถ่วงน้ำหนักแล้วรวมกัน

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

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

Rd∋x↦Φ(x,θ)≔∑j=1nθj(2)ϱ(⟨θj(1),[x1]⟩),{\mathbb{R}}^{d}\ni x\mapsto\Phi(x,\theta)\coloneqq\sum_{j=1}^{n}\theta^{(2)}_{j}\varrho\big(\langle\theta^{(1)}_{j},\begin{bmatrix}x\\ 1\end{bmatrix}\rangle\big),

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

สัญลักษณ์

xx
เวกเตอร์ข้อมูลเข้าใน ℝᵈ ตัวอย่างใช้หนึ่งพิกัด
θθ
น้ำหนักทั้งหมดของชั้นแรกและผลลัพธ์ รวมไบแอสของหน่วยซ่อน
nn
จำนวนหน่วยซ่อน
ϱϱ
ฟังก์ชันกระตุ้น ตัวอย่างใช้ ReLU

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

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

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

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

คุณเลือก

  • input.x = 1

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

  • hiddenWeights = [ [1, 1], [-1, 1], ]
  • outputWeights = [2, -1]

คำนวณที่นี่

นิพจน์ผลลัพธ์: { hiddenWeights, outputWeights, features, output: outputWeights.reduce((sum, w, i) => sum + w * features[i], 0), }

  • x = input.x ใช้: input.x
  • features = hiddenWeights.map(([w, b]) => Math.max(0, w * x + b)) ใช้: hiddenWeights, x

ส่งกลับ

ผลลัพธ์ตัวอย่าง
hiddenWeights
อาร์เรย์ (2 รายการ): [อาร์เรย์ (2 รายการ): [1, 1], อาร์เรย์ (2 รายการ): [-1, 1]]
outputWeights
อาร์เรย์ (2 รายการ): [2, -1]
features
อาร์เรย์ (2 รายการ): [2, 0]
output
4

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

ผลลัพธ์

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

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

ตัวอย่างมีข้อมูลเข้าหนึ่งตัวและหน่วยซ่อนสองหน่วย น้ำหนักและไบแอสชั้นแรกคงที่ ส่วนน้ำหนักผลลัพธ์เป็น 2 และ −1

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