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

การแปลงฟูเรียร์ของฟังก์ชันริดจ์

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

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

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

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

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

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

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

ใช้ในส่วนต้นฉบับเหล่านี้: 3.1 กฎที่ขึ้นกับระยะทาง

ฟังก์ชันริดจ์ขึ้นกับการฉายข้อมูลเข้าหนึ่งทิศ ในนิพจน์ฟูเรียร์ต่อเนื่องของต้นฉบับ การแปลงมีซัพพอร์ตตามทิศความถี่ที่สอดคล้องกัน

ตัวอย่างใช้สัญญาณไม่ต่อเนื่องสองคูณสองที่คงที่ในพิกัดที่สอง ค่าที่แปลงเป็นศูนย์นอกแกนความถี่แรก

โครงสร้างนี้เป็นพื้นฐานการให้เหตุผลเรื่องการประมาณของเครือข่ายตื้นในต้นฉบับ

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

Φ^=∑j=1n(ϱ^j⊗δRd−1)∘Rwj,\hat{\Phi}=\sum_{j=1}^{n}(\hat{\varrho}_{j}\otimes\delta_{{\mathbb{R}}^{d-1}})\circ R_{w_{j}},

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

สัญลักษณ์

Φ^\hatΦ
การแปลงฟูเรียร์ของฟังก์ชันเครือข่าย
δδ
การแจกแจงดิแรกในพิกัดที่ตั้งฉากกับทิศริดจ์
RwjR_{w_j}
การหมุนที่จัดทิศริดจ์ให้ตรงกับแกนแรก

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

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

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

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

คุณเลือก

  • input.amplitude = 1

คำนวณที่นี่

นิพจน์ผลลัพธ์: { signal, transform }

  • signal = [ [input.amplitude, input.amplitude], [0, 0], ] ใช้: input.amplitude
  • transform = [0, 1].map((k1) => [0, 1].map((k2) => { let sum = 0; for (let i = 0; i < 2; i++) for (let j = 0; j < 2; j++) sum += signal[i][j] * (-1) ** (k1 * i + k2 * j); return sum / 2; }), ) ใช้: signal

ส่งกลับ

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

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

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

ผลลัพธ์

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

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

ต้นฉบับแทนเครือข่ายเป็นผลรวมฟังก์ชันที่ขึ้นกับการฉายหนึ่งมิติ แล้วใช้ความเป็นเชิงเส้นของฟูเรียร์ การหมุน และผลคูณเทนเซอร์ ตัวอย่างใช้แกนแรกโดยตรง พิกัดความถี่อื่นจึงมีเพียงองค์ประกอบความถี่ศูนย์

แหล่งอ้างอิง: การแปลงฟูเรียร์ริดจ์