C Machine Learning - IA - Intelligence Artificielle

Soyez le premier à donner votre avis sur cette source.

Vue 2 180 fois - Téléchargée 374 fois

Description

C Machine Learning - IA - Intelligence Artificielle :
Voici un code source de Machine Learning permettant l'apprentissage et la reconnaissance de formes. Le Machine Learning ici fonctionne à l'aide d'un réseau de neurones artificiels de type perceptron monocouche à apprentissage supervisé. La reconnaissance des formes déssinées est en temps réel. Le code a été organisé en suivant le design pattern : "model view presenter", permettant de découper et de structurer l'architecture de l'interface utilisateur en couches. L'interface graphique est réalisé avec GTK+3.0, cette application de Machine Learning fonctionne sous Windows ou Linux.



La version de ce programme de machine learning en Python est disponible ici :
Python Machine Learning - IA - Intelligence Artificielle



De nouvelles fonctionnalités et améliorations seront rajoutées très prochainement.

1 - Suivis des versions :
- version 02/10/19 :
-- Ce code de machine learning est prêt à l'essai, mais pas encore commenté. Des corrections, ajouts de fonctionnalités, et améliorations pour la lisibilité du code sont toujours en cours.


2 - comment lancer et tester l'application C Machine Learning :
- Sous Windows :
-- Allez dans le répertoire :
..\C Machine Learning\application executable\bin

-- Renommez le fichier éxecutable "application.ex_" en "application.exe", puis décompressez les archives zippés : "dll - 1.zip" et "dll - 2.zip" dans ce même répertoire. Ensuite lancez "application.exe" dans ce même répertoire.

- Sous Linux :
-- Passez directement au paragraphe "4 -"


3 - Utilisation de l'application C Machine Learning :
- Cadre "Forme déssinée" :
-- Clique gauche de la souris -> créer un pixel.
-- Clique droit de la souris -> éffacer un pixel précédemment créé.
-- Tour de la molette -> changer le nom de la forme à corriger.
-- Clique sur la molette -> corriger la forme sélectionnée.

Avec touche Ctrl gauche appuyé :
-- Tour de la molette -> changer la forme enregistrée affichée.
-- Clique sur la molette -> crée une variante à la forme enregistrée affichée.

Avec touche Ctrl gauche et shift gauche appuyés :
-- Tour de la molette -> changer la variante de la forme enregistrée affichée.

- Cadre "Forme reconnue" :
-- Affiche la forme reconnue.

- Bouton "Apprentissage automatique" (Machine learning) :
-- Lance le machine learning de toutes les formes du réseau de neurones. Le machine learning va permettre d'apprendre toutes les formes jusqu'à ce qu'il les reconnaisse toutes telles qu'elles ont été déssinnées lors de leurs création. Ce bouton est à utiliser de préférence une fois toutes les formes créées ou quand le réseau de neurones a un taux d'érreur trop élevé.

- Bouton "Corriger" :
-- Permet au réseau de neurones d'apprendre une forme légèrement différente de la forme déssinée lors de sa création. Ex: si vous dessinez une lettre 'A' qui a seulement 3 pixels de différence avec la lettre 'A' que vous avez créée, mais que le réseau de neurones reconnait une autre lettre. Dans ce cas sélectionnez la lettre 'A' dans la combo box "nom de la forme à corriger" puis cliquez sur corriger, le réseau va alors corriger les neurones et reconnaitre alors la bonne lettre: 'A'. Au bout de quelques itérations de machine learning, le réseau de neurones reconnaitra à presque 100% (voire même 100%) toutes les formes créées et leurs variantes.

- Bouton "Ajouter" :
-- Crée une variante à la forme enregistrée selectionnée.

- Entrée "maximum d'itérations" :
-- Nombre maximum de corrections effectuées lors du machine learning du réseau de neurones : doit rester bas de préférence lors d'un machine learning d'une grande quantité de formes créées pour ne pas paralyser l'application.

- Entrée "valeur de correction" :
-- Valeur utilisée pour chaque correction de neurones lors du machine learning du réseau de neurones : doit être positive et rester basse de préference pour un apprentissage rapide.


4 - outils nécessaires si vous souhaitez compiler le code source :
- Sous Windows :
-- Avoir GTK installé :
https://www.gtk.org/download/windows.php


Pour les utilisateurs de MSYS2 :
-- Copiez le dossier contenant le code source de l'application dans :
C:\msys64\home\"nom utilisateur"\C Machine Learning

-- Ensuite executez le programme MSYS2, puis tapez dans la fenêtre de MSYS2 :
cd "chemin repertoire du code source C Machine Learning"

-- Compilez ensuite avec la commande :
gcc `pkg-config --cflags gtk+-3.0` C Machine Learning.c presenter.c interactor.c globales.c widget.c view.c model.c entry_validation.c -ldl -lm `pkg-config --libs gtk+-3.0`

-- Deplacez le fichier *.exe créée après compilation dans le repertoire :

C:\msys64\mingw32\bin
si vous avez installer MSYS2 en 32 bits

C:\msys64\mingw64\bin
si vous avez installer MSYS2 en 64 bits.

-- Vous pouvez maintenant éxécuter le programme :).


- Sous Linux :
-- Avoir GTK installé :
apt-get install libgtk-3-dev

-- Compilez ensuite avec la commande :
gcc `pkg-config --cflags gtk+-3.0` -o application C Machine Learning.c presenter.c interactor.c globales.c widget.c view.c model.c entry_validation.c -ldl -lm `pkg-config --libs gtk+-3.0`


5 - Autres détails :
-- Si jamais vous rencontrez un problème avec l'application, ou si vous avez des suggestions : n'hésitez pas à me le dire dans les commentaires.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.