On considère le triangle \(T\) du plan dont les sommets sont \(A = (1, 1)\), \(B = (3, 1)\) et \(C = (2, 3)\). On souhaite construire un réseau de neurones à propagation avant qui implémente la fonction indicatrice \(f : \mathbb{R}^2 \to \{0, 1\}\) définie par \[f(x, y) = \begin{cases} 1 & \text{si } (x,y) \in T, \\ 0 & \text{sinon.} \end{cases}\] Chaque neurone dispose d’une fonction d’activation Heaviside \(H : \mathbb{R} \to \{0,1\}\) définie par \[H(z) = \begin{cases} 1 & \text{si } z \geq 0, \\ 0 & \text{sinon,} \end{cases}\] et calcule donc, pour des poids \((w_1, w_2)\), un biais \(b\) et des entrées \((x,y)\) : \[H(w_1 x + w_2 y + b).\]
Déterminer les équations des trois droites \((AB)\), \((BC)\) et \((CA)\). Pour chacune, préciser de quel côté se trouve l’intérieur du triangle, et écrire une inégalité de la forme \(w_1 x + w_2 y + b \geq 0\) qui caractérise le demi-plan contenant \(T\).
Montrer que \((x,y) \in T\) si et seulement si \(n_1(x,y) + n_2(x,y) + n_3(x,y) = 3\). En déduire les poids, biais et activation d’un neurone de sortie \(n_s\), prenant en entrées \(n_1, n_2, n_3\), tel que \(n_s(x,y) = f(x,y)\).
Décrire l’architecture complète du réseau : nombre de couches, nombre de neurones par couche. Récapituler dans un tableau tous les poids et biais. Vérifier ensuite que le réseau produit la bonne sortie pour les points \(P_1 = (2, 2)\), \(P_2 = (3, 3)\) et \(P_3 = (1, 1)\).
On suppose maintenant que l’on souhaite construire un réseau détectant l’union de deux triangles disjoints \(T_1\) et \(T_2\) du plan. Proposer une architecture (sans calculer les poids) permettant d’implémenter la fonction indicatrice de \(T_1 \cup T_2\), et justifier pourquoi une seule couche cachée ne suffit pas en général pour une telle région.