HyperAIHyperAI
vor 2 Monaten

SpinalNet: Tiefes neuronales Netzwerk mit gradueller Eingabe

H M Dipu Kabir; Moloud Abdar; Seyed Mohammad Jafar Jalali; Abbas Khosravi; Amir F Atiya; Saeid Nahavandi; Dipti Srinivasan
SpinalNet: Tiefes neuronales Netzwerk mit gradueller Eingabe
Abstract

Tiefe neuronale Netze (DNNs) haben in zahlreichen Bereichen den Stand der Technik erreicht. Allerdings benötigen DNNs hohe Rechenzeiten, und es gibt stets die Erwartung, bessere Leistungen bei geringeren Rechenaufwand zu erzielen. Deshalb untersuchen wir das menschliche Somatosensorische System und entwerfen ein neuronales Netzwerk (SpinalNet), um höhere Genauigkeit mit weniger Berechnungen zu erreichen. Versteckte Schichten in traditionellen neuronalen Netzen erhalten Eingaben aus der vorherigen Schicht, wenden eine Aktivierungsfunktion an und übertragen dann die Ergebnisse an die nächste Schicht. Im vorgeschlagenen SpinalNet wird jede Schicht in drei Teile unterteilt: 1) Eingangsteil, 2) Zwischenteil und 3) Ausgangsteil. Der Eingangsteil jeder Schicht erhält einen Teil der Eingaben. Der Zwischenteil jeder Schicht erhält die Ausgaben des Zwischenteils der vorherigen Schicht sowie die Ausgaben des Eingangsteils der aktuellen Schicht. Die Anzahl der eingehenden Gewichte wird dadurch deutlich geringer als bei traditionellen DNNs. Das SpinalNet kann auch als vollständig verbundene oder Klassifikationsschicht von DNNs verwendet werden und unterstützt sowohl traditionelles Lernen als auch Transfer-Lernen. Wir beobachten signifikante Fehlerreduzierungen bei geringeren Rechenkosten in den meisten DNNs. Traditionelles Lernen auf dem VGG-5-Netzwerk mit SpinalNet-Klassifikationsschichten lieferte den Stand der Technik (SOTA) auf den Datensätzen QMNIST, Kuzushiji-MNIST und EMNIST (Buchstaben, Ziffern und ausgewogen). Traditionelles Lernen mit ImageNet-vorgefertigten Anfangsgewichten und SpinalNet-Klassifikationsschichten erzielte den SOTA auf den Datensätzen STL-10, Fruits 360, Bird225 und Caltech-101. Die Skripte des vorgeschlagenen SpinalNet sind unter folgendem Link verfügbar: https://github.com/dipuk0506/SpinalNet