จำนวนพารามิเตอร์ในเครือข่ายประสาทเทียมสำหรับ AIC


11

ฉันจะคำนวณจำนวนพารามิเตอร์ในเครือข่ายประสาทเทียมเพื่อคำนวณ AIC ได้อย่างไร


คำถามนี้ดูเหมือนจะชัดเจนสำหรับฉันอย่างสมบูรณ์
gung - Reinstate Monica

คุณสามารถใช้คำสั่งclassifier.summary()จากsklearชั้นเรียน
Shekhar Shinde

คำตอบ:


14

ทุกการเชื่อมต่อที่เรียนรู้ในเครือข่าย feedforward เป็นพารามิเตอร์ นี่คือภาพเครือข่ายทั่วไปจาก Wikipedia:

ป้อนคำอธิบายรูปภาพที่นี่

(3×4)+(4×2)=20


การเชื่อมต่ออาจไม่ซ้ำกัน (ดูieeexplore.ieee.org/document/714176 ) ดังนั้นมันจะโอเคที่จะนับการเชื่อมต่อหรือไม่ บางทีเราควรแยกความแตกต่างระหว่างพารามิเตอร์และพารามิเตอร์หลายมิติ?
Funkwecker

จำนวนการเชื่อมต่อทั้งหมดจะเป็น 26 ถ้ารวมโหนดอคติ
agcala

0

โครงข่ายประสาทเทียมเป็นเพียงฟังก์ชันของฟังก์ชันของฟังก์ชัน ... (ตามที่กำหนดโดยสถาปัตยกรรมของโมเดล) หากฟังก์ชันผลลัพธ์ไม่สามารถทำให้ง่ายขึ้นได้จำนวนพารามิเตอร์ทั้งหมด (ผลรวมของจำนวนพารามิเตอร์ทั้งหมดจากแต่ละโหนด) ในโมเดลคือจำนวนที่คุณต้องการสำหรับการคำนวณ AIC


0

สำหรับเครือข่าย MLP ที่เชื่อมต่ออย่างสมบูรณ์คุณสามารถใช้รหัส (Python) ต่อไปนี้:

def total_param(l=[]):
s=0
for i in range(len(l)-1):
    s=s+l[i]*l[i+1]+l[i+1]
return s

ถ้าคุณมีเครือข่ายที่มีการกำหนดค่าเลเยอร์ต่อไปนี้

input:  435
hidden: 166 
hidden: 103 
hidden:  64
output:  15

คุณเพียงแค่เรียกใช้ฟังก์ชันด้วย

total_param([435,166,103,64,15]) 
97208
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.