[PYTHON] [Pour les débutants] Super introduction aux réseaux de neurones que même les chats peuvent comprendre

IMG_0489.png

Ce qui est écrit

  1. Qu'est-ce qu'un réseau neuronal?
  2. Unité? poids? biais?
  3. Fonction d'activation
  4. Présentation de NN
  5. Résumé

L'objectif est d'obtenir une compréhension duveteuse de la grande image du réseau neuronal. Je n'utilise pas de formules mathématiques, alors jetez un coup d'œil même si vous êtes allergique aux mathématiques.

1. Qu'est-ce qu'un réseau neuronal?

IMG_0490.png

Un réseau de neurones ressemble à celui ci-dessous. Puisqu'il s'agit d'un réseau neuronal lorsqu'il est écrit en anglais, il est souvent abrégé en NN. Donc cette fois je vais expliquer avec NN

IMG_0491.png

Les rondes sont appelées "unités" et les lignes reliant les unités sont appelées "synapses". Il est difficile de l'appeler synapse, alors laissez-moi vous l'expliquer en l'appelant une «ligne» cette fois.

IMG_0492.png

NN a une structure en couches. Généralement, la première couche et la deuxième couche à partir de la gauche sont comptées. La première couche est appelée «couche d'entrée», la dernière couche est appelée «couche de sortie» et les espaces sont collectivement appelés «couche intermédiaire (couche cachée)». Vous trouverez ci-dessous un diagramme NN à 4 couches.

IMG_0493.png

2. Unité? poids? biais?

IMG_0494.png

Regardons de plus près. Le tour est appelé une "unité". L'unité a un numéro.

IMG_0495.png

Les unités sont parfois appelées «neurones». Il est normal de reconnaître que tous les Soyu sont «ronds».

IMG_0496.png

Le numéro d'une unité passe à l'unité suivante via une "ligne" (synaps). Les numéros seront ajoutés à l'unité suivante.

IMG_0497.png

La valeur change au fur et à mesure que vous passez la ligne. Par exemple, comme indiqué ci-dessous, lorsque le nombre "3" de l'unité précédente passe par la ligne, "x2" est calculé et "6" est ajouté à l'unité suivante. Ce "x2" est appelé "poids". C'est une image dont la ligne a le numéro × 2.

IMG_0498.png

La valeur de «poids» est différente pour chaque ligne. Par exemple, comme illustré ci-dessous, si une unité est connectée à trois unités suivantes, les nombres avanceront le long des trois lignes.

IMG_0499.png

Prenons le cas où les trois lignes ont des «poids» de x2, x-4 et x3, respectivement. Le "3" de l'unité précédente est multiplié par chaque "poids" et ajouté à l'unité suivante.

IMG_0500.png

La figure ci-dessous montre l'heure à laquelle trois unités précédentes sont connectées à une unité suivante. Dans ce cas également, les résultats de "13 * 2", "-2 * -4" et "-9 * 3" sont ajoutés l'un après l'autre, et la valeur de l'unité suivante devient "7".

IMG_0501.jpeg

Et encore une fois, on a l'impression que "7" passe à l'unité suivante.

IMG_0502.jpeg

Le NN est calculé comme décrit ci-dessus. Dans l'ensemble, si vous mettez un nombre dans la "couche d'entrée" de NN, divers calculs seront effectués via NN et le résultat sortira dans la "couche de sortie".

IMG_0503.jpeg

Dans la couche d'entrée, saisissez les «données» que vous souhaitez que l'intelligence artificielle apprenne, mais dans le NN, saisissez également «des nombres autres que des données». C'est ce qu'on appelle le «biais».

IMG_0504.jpeg

Le biais est une image attachée à chaque calque, comme indiqué dans l'image ci-dessous. Pour être précis, chaque unité a un biais différent.

IMG_0505.jpeg

Lorsque le numéro de l'unité précédente est ajouté à l'unité suivante, ce numéro de "biais" est également ajouté. La ligne de biais n'a aucun poids.

IMG_0506.jpeg

3. Fonction d'activation (Kaseikakansu)

IMG_0507.jpeg

Il y a encore une règle. Le nombre d'unités change juste avant de passer à la ligne. L'image ressemble à l'image ci-dessous.

IMG_0508.jpeg

La valeur de ceci change selon la règle de "fonction d'activation". Il existe de nombreux types de fonctions d'activation, mais la plus connue est la fonction d'activation appelée «fonction ReLU».

IMG_0509.jpeg

La fonction ReLU est une règle selon laquelle "si la valeur de l'unité est égale ou inférieure à 0, changez-la en 0 et si elle dépasse 0, passez-la telle quelle".

IMG_0510.jpeg

La valeur de l'unité ainsi modifiée avance jusqu'à la ligne.

IMG_0511.jpeg

Organisez-le. En tant que flux, La valeur de l'unité change selon les règles de la fonction d'activation → elle change à nouveau lorsque le nombre passe par la synapse (ligne) → le nombre et le biais sont de plus en plus ajoutés à l'unité suivante.

IMG_0512.jpeg

À propos, changer la valeur en fonction de la fonction d'activation s'appelle «activer».

4. Présentation de NN

IMG_0513.jpeg

Si vous entrez un nombre dans la "couche d'entrée" de NN, divers calculs seront effectués via NN et le résultat apparaîtra dans la "couche de sortie".

IMG_0514.jpeg

En détail, La valeur de l'unité change selon les règles de la fonction d'activation → elle change à nouveau lorsque le nombre passe par la synapse (ligne) → le nombre et le biais sont de plus en plus ajoutés à l'unité suivante.

IMG_0515.jpeg

De plus, la synapse «poids (x combien de fois)» et «biais» sont initialement réglées sur des valeurs aléatoires.

IMG_0516.jpeg

La mise à jour régulière de ce numéro est appelée «apprentissage». Le but de NN est de rendre la sortie bonne en mettant à jour le "poids" et le "biais".

IMG_0517.jpeg

5. Résumé

IMG_0518.jpeg

J'ai expliqué le flux de base de NN. Ce sont les bases des bases, donc tout ce que vous avez à faire est de vous faire une idée approximative de l'image.

c'est tout! Bonne vie NN!

En savoir plus sur l'intelligence artificielle / l'IA / l'apprentissage automatique

Youtube宣伝画像.jpeg

** "AI pour les allergies aux chats" ** https://t.co/4ltE8gzBVv?amp=1 Nous envoyons des informations sur l'apprentissage automatique sur YouTube. Si vous avez le temps, jetez un œil.

created by NekoAllergy

Recommended Posts

[Pour les débutants] Super introduction aux réseaux de neurones que même les chats peuvent comprendre
Introduction à Word2Vec que même les chats peuvent comprendre
Introduction à Python que même les singes peuvent comprendre (partie 3)
Introduction à Python que même les singes peuvent comprendre (partie 1)
Introduction à Python que même les singes peuvent comprendre (partie 2)
Disocrd bot que même les débutants peuvent publier régulièrement les résultats de Splatoon 2 sur stat.ink gratuitement
8 services que même les débutants peuvent apprendre Python (des débutants aux utilisateurs avancés)
Réseau neuronal récursif: une introduction à RNN
Les débutants lisent "Introduction à TensorFlow 2.0 pour les experts"
Python pour les super débutants Super débutants Python # Facile à éliminer
Introduction à la programmation (Python) TA Tendency pour les débutants
[Pour les débutants] Introduction à la vectorisation dans l'apprentissage automatique
Fonctionnement automatique du navigateur que même les débutants peuvent faire
Comprendre le développement de Python pour Pepper. -Introduction à Python Box-
Même les débutants veulent dire "Je comprends parfaitement Python"
Comment convertir le type Python # pour les super débutants de Python: str
Python # Comment vérifier le type et le type pour les super débutants
[Explication pour les débutants] Introduction au traitement du pliage (expliqué dans TensorFlow)
[Explication pour les débutants] Introduction au traitement du pool (expliqué dans TensorFlow)
Comment convertir le type Python # pour les super débutants de Python: int, float
[Python] Introduction à la création de graphiques à l'aide de données de virus corona [Pour les débutants]
Modèle SIR que même les élèves du premier cycle du secondaire peuvent comprendre
[Django] Un simple résumé de la fonction de sortie du journal afin que même les débutants puissent la comprendre.
Explication facile à comprendre de l'application Web Python (Django) même pour les débutants (5) [Introduction au fonctionnement de la base de données avec le shell Django]
[Python] J'ai essayé d'expliquer des mots difficiles à comprendre pour les débutants d'une manière facile à comprendre.
Une super introduction à Linux
Python #function 2 pour les super débutants
Python #function 1 pour les super débutants
#List Python pour les super débutants
~ Conseils pour les débutants de Python présentés avec amour par Pythonista ③ ~
Super introduction à l'apprentissage automatique
Introduction à Python pour, pendant
[Explication approfondie] Comment comprendre les fonctions (méthodes) que les débutants doivent voir
Une introduction aux Pandas pour apprendre tout en souffrant [Partie 1]
[Unity] Comment exécuter ML-Agents Release 8 même pour les débutants transcendantaux [Windows]
[Pour les débutants] Fonction récursive (Facile à comprendre la tour de Hanoi!)
Explication facile à comprendre de l'application Web Python (Django) même pour les débutants (4) [Route setting / Introduction to MTV design patterns]