Deep-Learning-Grundlagen

Susan Sarandon
Freigeben: 2024-11-15 10:53:02
Original
594 Leute haben es durchsucht

Es handelt sich um eine Teilmenge des maschinellen Lernens, die sich auf die Verwendung neuronaler Netze mit vielen Schichten konzentriert, um komplexe Muster in Daten zu modellieren und zu verstehen.

Ein neuronales Netzwerk ist eine Art maschineller Lernalgorithmus, der darauf ausgelegt ist, aus Daten zu lernen, indem er die Gewichtungen der Verbindungen zwischen Neuronen basierend auf den Fehlern in ihren Vorhersagen anpasst.

Neuron

Die Grundeinheit eines neuronalen Netzwerks ist das künstliche Neuron, oft auch nur Neuron genannt. Ein künstliches Neuron ist von den biologischen Neuronen im menschlichen Gehirn inspiriert und für die Durchführung einer kleinen, spezifischen Berechnung im Netzwerk verantwortlich.

1) Jedes Neuron empfängt einen oder mehrere Eingaben, verarbeitet sie (häufig durch Anwendung einer mathematischen Funktion) und erzeugt dann eine Ausgabe.

2) Das Neuron wendet typischerweise eine gewichtete Summe seiner Eingaben an, gefolgt von einer Aktivierungsfunktion, um Nichtlinearität einzuführen. Die Ausgabe dieser Funktion wird dann an die nächste Schicht des Netzwerks weitergeleitet oder dient als endgültige Ausgabe, wenn sie sich in der Ausgabeschicht befindet.

Perceptron (Einschichtiges Netzwerk)

Eingaben: Das Perzeptron empfängt mehrere Eingaben, die jeweils durch eine Gleitkommazahl dargestellt werden.

Gewichte: Jede Eingabe wird mit einem entsprechenden Gewicht multipliziert, das ebenfalls eine Gleitkommazahl ist. Das Gewicht bestimmt die Bedeutung des Inputs im Entscheidungsprozess.

Summierung: Die gewichteten Eingaben werden dann summiert, um einen einzigen Wert zu erzeugen.

Schwellenwert (oder Bias):Das Perzeptron vergleicht das Ergebnis der Summierung mit einem Schwellenwert

Ausgabe:

Wenn die Summe größer als 0 (oder der Schwellenwert) ist, gibt das Perzeptron 1 (oder 1 in einigen Versionen) aus.

Wenn die Summe kleiner oder gleich 0 ist, gibt das Perzeptron -1 (oder 0 in einigen Versionen) aus.

(Hinweis: Perzeptrone sind auf die Lösung von Problemen beschränkt, die linear trennbar sind, d. h. sie können nur Daten klassifizieren, die durch eine gerade Linie getrennt werden können)

Die meisten interessanten Probleme, und sogar einige sehr einfache, lagen nachweislich außerhalb der Fähigkeit eines Perzeptrons, sie zu lösen. Diese Periode, die ungefähr zwischen den 1970er und 1990er Jahren dauerte, wurde als KI-Winter bezeichnet

KI-Winter

Diese Zeit war geprägt von Enttäuschung über frühe KI-Technologien wie Expertensysteme, die mit Skalierbarkeit und realer Anwendung zu kämpfen hatten. Infolgedessen versiegten die Mittel von Regierungen und Organisationen und die KI-Forschung verlangsamte sich erheblich.

Modernes neuronales Netzwerk nach dem KI-Winter

1) Änderung 1:
Es handelt sich um die Hinzufügung eines zusätzlichen Inputs, der als Bias bezeichnet wird. Im Gegensatz zu den anderen Eingaben ist der Bias nicht an externe Daten oder Ausgaben früherer Neuronen gebunden.

Der Bias ist ein konstanter Wert, der direkt zur Summe der gewichteten Eingaben addiert wird. Es fungiert als separater Parameter, den jedes Neuron hat, und hilft dabei, die Ausgabe unabhängig von den Eingabewerten anzupassen.

2) Änderung 2:
Anstatt die Summe einfach mit einem Schwellenwert zu vergleichen und -1 oder 1 auszugeben, können wir die Summe (einschließlich des Bias) durch eine mathematische Funktion weiterleiten. Diese Funktion gibt einen neuen Gleitkommawert aus, der irgendwo innerhalb eines bestimmten Bereichs liegen kann

Aktivierungs-/Mathematik-/Übertragungsfunktion
Es bestimmt, wie „aktiv“ das Neuron basierend auf den empfangenen Eingaben sein wird. Viele Aktivierungsfunktionen führen Nichtlinearität ein und ermöglichen es dem Netzwerk, nichtlineare Beziehungen zu lernen, was für die Lösung komplexerer Probleme von entscheidender Bedeutung ist.
Bsp.

Sigmoid-Funktion: Gibt Werte zwischen 0 und 1 aus. Nützlich für binäre Klassifizierungsprobleme.

Tanh-Funktion (Hyperbolischer Tangens): Gibt Werte zwischen -1 und 1 aus. Es ähnelt dem Sigmoid, ist jedoch bei 0 zentriert.

ReLU (Rectified Linear Unit): Gibt den Eingang aus, wenn er positiv ist, andernfalls 0.

Leaky ReLU: Ähnlich wie ReLU, ermöglicht jedoch einen kleinen Gradienten ungleich Null, wenn die Eingabe negativ ist, wodurch das Problem des „aussterbenden ReLU“ vermieden wird.

Deep Learning Essentials

Arten von Aktivierungsfunktionen:

1) Geradenfunktionen

a. Identitätsfunktion:
Die Identitätsfunktion ist eine geradlinige Funktion, bei der die Ausgabe genau der Eingabe entspricht.
f(x)=x

b. Lineare Funktionen:
Eine lineare Funktion ist jede Funktion, die als gerade Linie dargestellt werden kann.
f(x) = mx b

2) Schrittfunktionen

a. Treppenstufenfunktion:
Eine Treppenstufenfunktion besteht aus mehreren linearen Segmenten mit abrupten Änderungen bei bestimmten Eingabewerten. Es zeichnet sich eher durch diskrete Sprünge als durch eine sanfte Kurve aus.
Bsp.
Eine Funktion, die 0 für Eingaben zwischen 0 und knapp unter 0,2, 0,2 für Eingaben von 0,2 bis knapp unter 0,4 usw. ausgibt.

Deep Learning Essentials

b. Einheitsschrittfunktion:
Gibt 0 für Eingabewerte aus, die unter einem Schwellenwert liegen, und 1 für Eingabewerte, die gleich oder größer als der Schwellenwert sind.

Deep Learning Essentials

c. Heaviside-Funktion:

3) Stückweise lineare Funktionen

a. ReLU (Rectified Linear Unit)

Funktionsdefinition:
Für x≥0:
f(x)=x
Für x<0:
f(x)=0

Deep Learning Essentials

b. Undichte ReLU

Takrifan fungsi:
Untuk x≥0:
f(x)=x
Untuk x<0:
f(x)=αx (dengan α ialah pemalar kecil, cth., 0.01)

Deep Learning Essentials

c. ReLU Parametrik (PReLU)
Definisi Fungsi:
Untuk x≥0:
f(x)=x
Untuk x<0:
f(x)=αx (dengan α ialah parameter yang boleh dipelajari)

4) Fungsi Pengaktifan Lancar

a. Fungsi Softplus
Ia adalah anggaran lancar bagi fungsi ReLU. Ia menangani peralihan mendadak pada sifar dengan menyediakan alternatif yang berterusan dan boleh dibezakan.
Softplus(x) = ln(1 ex)

b. Fungsi Sigmoid
Fungsi sigmoid mencantumkan nilai input ke dalam julat antara 0 dan 1
σ(x)= 1 / 1 e−x

c. Fungsi Tangen Hiperbolik (tanh)
Fungsi tanh adalah serupa dengan sigmoid tetapi mencantumkan nilai input ke dalam julat [−1,1]. Ia berpusat di sekitar sifar, menjadikannya berguna untuk menormalkan data.
tanh(x)=ex e−x
/ex−e−x

Fungsi Softmax

Fungsi softmax ialah komponen penting dalam tugas pengelasan dalam rangkaian saraf, terutamanya apabila matlamatnya adalah untuk meramalkan kebarangkalian untuk berbilang kelas.

Softmax menukarkan skor output mentah (sering dirujuk sebagai logit) daripada neuron output kepada taburan kebarangkalian ke atas kelas. Setiap nilai output diubah menjadi kebarangkalian yang menjumlahkan sehingga 1 merentas semua kelas.

Deep Learning Essentials

Deep Learning Essentials

Rangkaian saraf berbilang lapisan

1) Rangkaian saraf ke hadapan suapan
Rangkaian suapan ke hadapan ialah sejenis rangkaian saraf tiruan di mana sambungan antara neuron tidak membentuk kitaran. Dalam erti kata lain, data mengalir dalam satu arah, dari input ke output, tanpa menggelung ke belakang.

Struktur:
Rangkaian suapan ke hadapan disusun mengikut lapisan: lapisan input, satu atau lebih lapisan tersembunyi dan lapisan output.

Setiap neuron menerima input daripada lapisan sebelumnya, menggunakan pemberat pada input ini, menjumlahkannya, menambah istilah bias dan menghantar hasilnya melalui fungsi pengaktifan untuk menghasilkan output.

Jenis Rangkaian Feed-Forward:

Perceptron Satu Lapisan:
Bentuk termudah bagi rangkaian suapan ke hadapan dengan hanya lapisan input dan lapisan output
Cth. Digunakan untuk masalah klasifikasi binari di mana data boleh dipisahkan secara linear.

Perceptron Berbilang Lapisan (MLP):
Ia mengandungi satu atau lebih lapisan tersembunyi antara lapisan input dan output.
Cth. Ia digunakan dalam tugas seperti klasifikasi, regresi dan anggaran fungsi.

Réseau à fonction de base radiale (RBF)
Il utilise des fonctions de base radiale comme fonctions d'activation dans la couche cachée.
Ex. Il est utilisé pour l'approximation des fonctions et la reconnaissance des formes.

Applications :
Reconnaissance d'images
Reconnaissance vocale
Diagnostic médical

Profondeur du réseau

C'est le nombre de couches à travers lesquelles les données passent de l'entrée à la sortie. Ce sont les couches entre la couche d'entrée et la couche de sortie (à l'exclusion de la couche d'entrée). La profondeur du réseau est déterminée par le nombre de ces couches cachées.

Couche entièrement connectée (FC/linéaire/dense) :

Il s'agit d'un ensemble de neurones qui reçoivent chacun une entrée de chaque neurone de la couche précédente. Si une couche est constituée
composé uniquement de couches denses, on l'appelle parfois un réseau entièrement connecté.

Deep Learning Essentials

Formes de sortie dans les réseaux de neurones

Tableau zéro dimension
Ex.
Si une couche de réseau neuronal ne possède qu’un seul neurone, sa sortie est une valeur scalaire unique. Mathématiquement, cette sortie peut être représentée sous la forme d'un tableau à dimension zéro.

Tableau unidimensionnel (tableau 1D)
Ex.
Lorsqu'une couche d'un réseau neuronal possède plusieurs neurones, la sortie peut être décrite comme une liste ou un vecteur de valeurs. Par exemple, si une couche contient 12 neurones, le résultat est un tableau 1D avec 12 éléments.

(Remarque : peu importe la taille ou la complexité de notre réseau neuronal, s'il n'a pas de fonctions d'activation et qu'il s'agit de fonctions linéaires, par exemple addition, soustraction, etc. ; alors il sera toujours équivalent à un seul neurone.)

Deep Learning Essentials

Deep Learning Essentials

Tenseur

Un terme général utilisé pour désigner un tableau de nombres disposés en forme de boîte avec n'importe quel nombre de dimensions. Il englobe des tableaux unidimensionnels (vecteur), bidimensionnels (matrice), tridimensionnels (volume) et de dimension supérieure.

Aperçu de haut niveau des réseaux de neurones de formation

La formation des réseaux de neurones implique d'ajuster les poids du réseau pour minimiser les erreurs de prédiction. Cela se fait grâce à un processus de mise à jour itérative des paramètres du réseau pour réduire une fonction de coût ou de perte

Encodeur automatique

Il s'agit d'un type de réseau neuronal utilisé pour l'apprentissage non supervisé. L'idée clé est de compresser l'entrée dans un code de dimension inférieure, puis de reconstruire l'entrée originale à partir de ce code.

Struktur

Pengekod:
Bahagian ini memampatkan data input menjadi perwakilan padat.
Contoh: Untuk imej, pengekod mungkin mengurangkan dimensinya daripada, katakan, 128x128 piksel kepada vektor yang lebih kecil, seperti 32 dimensi

Penyahkod:
Bahagian ini membina semula data input asal daripada perwakilan termampat.
Contoh: Penyahkod akan mengambil vektor 32 dimensi dan cuba mencipta semula imej 128x128 piksel.

Proses Latihan

Mereka dilatih untuk meminimumkan perbezaan antara input dan output yang dibina semula. Ini biasanya dilakukan menggunakan fungsi kehilangan, seperti Mean Squared Error (MSE) untuk data berterusan atau binary cross-entropy untuk data binari. Matlamatnya adalah untuk melaraskan berat rangkaian supaya pembinaan semula sedekat mungkin dengan input asal.

Varian:

1) Menolak Pengekod Auto
2) Pengekod Auto Variasi
3) Pengekod Auto Jarang

Jenis pemampatan:

1) Tidak rugi:
Ia adalah sejenis pemampatan data di mana data asal boleh dibina semula dengan sempurna daripada data dimampatkan. Ini bermakna tiada maklumat yang hilang semasa proses pemampatan dan data yang dinyahmampat adalah sama dengan yang asal.
Algoritma: Gunakan kaedah seperti pengekodan entropi dan teknik berasaskan kamus. Contohnya termasuk:Pengekodan Huffman: Mengekodkan simbol yang kerap berlaku dengan kod yang lebih pendek dan simbol yang kurang kerap dengan kod yang lebih panjang.Lempel-Ziv-Welch (LZW): Membina kamus jujukan daripada data dan menggunakan kod yang lebih pendek untuk jujukan biasa.Pengekodan Jangka Panjang (RLE): Memampatkan urutan aksara berulang dengan menyimpan aksara dan kiraannya.Cth. PNG,FLAC,ZIP

2) Lossy:
Ia mengurangkan saiz fail dengan mengalih keluar beberapa data, selalunya dengan cara yang kurang ketara pada deria manusia tetapi mengakibatkan beberapa kehilangan kesetiaan. Matlamatnya adalah untuk mencapai pengurangan ketara dalam saiz fail sambil mengekalkan kualiti yang boleh diterima untuk kegunaan yang dimaksudkan.
Cth. JPEG,H.264 atau HEVC, Pengekodan MP3Transform: Menukar data kepada domain yang berbeza (seperti domain frekuensi) dan mengkuantumkannya. Contohnya termasuk:Transformasi Kosinus Diskret (DCT): Digunakan dalam pemampatan imej JPEG. Transformasi Gelombang Diskret (DWT): Digunakan dalam JPEG 2000.

Permohonan:

1) Pengurangan Dimensi
2) Menolak

Perbezaan

Pengoptimum: Melaraskan pemberat untuk meminimumkan fungsi kehilangan.
Fungsi Kehilangan: Mengukur sejauh mana ramalan model sepadan dengan nilai sebenar.
Fungsi Pengaktifan: Menambahkan bukan linear pada model, membolehkan model itu mempelajari corak yang kompleks.

Kekal Berhubung!
Jika anda menikmati siaran ini, jangan lupa ikuti saya di media sosial untuk lebih banyak kemas kini dan pandangan:

Twitter: madhavganesan
Instagram: madhavganesan
LinkedIn: madhavganesan

Das obige ist der detaillierte Inhalt vonDeep-Learning-Grundlagen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage