J'essaie d'en savoir plus sur les réseaux de neurones pendant un moment et je peux comprendre des tutoriels de base en ligne. Maintenant, je souhaite développer une reconnaissance manuscrite en ligne à l'aide du réseau de neurones. Donc, je n'ai aucune idée où commencer? Et j'ai besoin d'une très bonne instruction. Enfin, je suis programmeur Java. P>
Que suggérez-vous que je fais? p>
11 Réponses :
Regardez une partie du projet flottant autour du net: P>
Pour énumérer les trois premiers liens Google Croc pour " Reconnaissance de l'écriture java " p>
Certaines astuces pour vous aider à démarrer: p>
Si vous le pouvez, travaillez avec des vecteurs au lieu de graphiques bitmap. Idéalement, vous devriez avoir la vitesse et la direction de chaque accident vasculaire cérébral. Il est souvent plus simple de reconnaître une lettre de la manière dont une courbe se plie plus la vitesse à laquelle il a été dessiné au lieu de la forme. P> li>
Attaquez le problème avec plusieurs approches. Utilisez des réseaux de neurones, une reconnaissance de forme, une taille, une lettre précédente et suivante, des dictionnaires. Tous vous donneront des résultats différents avec différents niveaux d'erreur. Cela peut aider grandement à améliorer les résultats. P> LI> ul>
bonne chance! p>
Démarrer simple avec reconnaissance de caractères sur le base de données UNIPEN . P>
Vous devrez extraire des caractéristiques pertinentes des données de trajectoire brutes afin de former ce que l'on appelle communément un "vecteur de fonctionnalité". Par exemple, vous pouvez rééchantillonner les données à l'aide d'un schéma d'interpolation pour vous retrouver avec n tuples, chaque tuple contenant des informations telles que: p>
Une fois que vous avez un vecteur de fonctionnalité de taille fixe, vous l'utilisez comme entrée sur votre réseau neuronal. Essayez les réseaux MLP pour un début. P>
Vous devrez expérimenter afin de décider des fonctionnalités les mieux. P>
Si vous devez commencer à obtenir des fonctionnalités d'extraction des données d'encre, consultez Toolkit LIPI de HP (Note que leurs reconnaissants n'utilisent pas de réseaux de neurones toutefois). P>
Vous pouvez également consulter ce 15 étapes pour mettre en œuvre un didacticiel de réseau de neurones . P>
Je suis désolé je ne peux pas dire grand chose à dire: / à cause d'une NDA
réseau neuronal [si je ne me trompe pas] fonctionnerait sur l'interprétation des modèles, Vous fournissez des entrées à votre programme et le programme recherche de ce modèle dans un ensemble de stockage stocké. Les motifs et basés sur la correspondance fournissent une possible match. P>
Dans votre cas, les dimensions des motifs pourraient être des données telles que la vitesse + la direction. ou seulement direction, etc p>
J'ai fait une petite simulation d'un bot neural qui discute sur mon site de la même manière. p>
Plus le programme "apprend", plus il fournit des réponses précises. P>
Peter Norvig's Intelligence artificielle: une approche moderne a > Est un bon livre sur l'AI général et explique beaucoup sur les bases, et il existe une section sur les réseaux de neurones de propagation du dos. p>
Pour former votre réseau neuronal, vous aurez besoin de jeux de données. p>
Il y a La base de données MNIST
de chiffres manuscrites ou le Reconnaissance basée sur les stylos de digitaits manuscrites Set de données au référentiel d'apprentissage de la machine UCI < / a> p>
Le référentiel ML UCI propose de nombreux ensembles de données, dont beaucoup seraient ravis de former des réseaux de neurones. Même si vous ne savez pas ce qu'ils sont sur vous, vous pouvez saisir certains et voir si votre système ML peut faire les tâches de classification. Regardez sur Tâches de classification avec un grand nombre d'attributs et d'instances , bien que vous puissiez essayer des plus petits aussi lorsque vous commencez. p>
Au fait, il y a beaucoup plus de techniques en dehors des réseaux de neurones, y compris Prise en charge des machines de vecteur a >, qui sont populaires. P>
Les filets neurones ont besoin de beaucoup de temps de trempage. Les concepts sont assez faciles, mais ils peuvent être accablants pour le débutant. P>
Jetez un coup d'œil à ce que Jochen Fröhlich a fait avec réseaux de neurones à Java . Cela ressemble à un point de départ idéal pour un programmeur Java comme vous-même. P>
Les livres: Systèmes de reconnaissance des caractères: un guide pour les étudiants et des pratiquants et Reconnaissance des notes de tableau blanc: en ligne, Hors ligne et combinaison sont de bons points de démarrage. P>
Gardez à l'esprit que si votre objectif est de reconnaître que ces personnages, Il est absolument essentiel de choisir les fonctions appropriées et de préproduction (c'est-à-dire que vous débarrasser des fonctionnalités de bruit, des données étrangères, des fonctions en double ou fortement corrélées) autant que vous pouvez em>. D'après mon expérience, vous obtiendrez de nombreuses performances de la mise en œuvre la plus ennuyeuse et la plus plaine du voisin avec de bonnes fonctionnalités que d'un algorithme de pointe avec des fonctionnalités moins bien sélectionnées. P>
Pour vous, cela signifie retarder la lecture em> la littérature nette neurale pour l'instant (enlevez simplement une implémentation de la boîte à étagère en noir) et de lire sur quel type de traitement de l'image, etc. Processus réels . Si vos données peuvent inclure des informations de pression et de vitesse, tout le mieux. Quelque chose comme une chaleur LDA peut être illustratif pour voir initialement quelles caractéristiques importantes et qui ne le font pas. P>
Pour la classification de base, il existe des tonnes d'algorithmes décents. La plupart travaillent juste bien et travailleront très bien pour vous. La partie difficile ne consiste pas à choisir ni à modifier l'algorithme, il est en évitant le scénario des ordures à ordures. P>
Si vous recherchez des concepts, je suggère Brainnet, P>
Réseaux neuronaux - Partie I: Un système de reconnaissance d'écriture manuscrite simple dans .NET P>
http://amazedsaint.blogspot.com /2008/01/nural-networks-par-i-simple.html P>
Brainnet vous aidera à p>
- Obtenez une compréhension équitable concernant les neurones et les réseaux de neurones li>
- gagne un bon concept concernant les systèmes intelligents li>
- Apprenez à jouer avec cette bibliothèque de réseau de neurones pour l'utiliser dans votre projets. li>
- Comprenez comment développer des programmes de réseau neuronal cool LI> ul> blockQuote>
Je vous suggère de commencer à partir de la reconnaissance des chiffres manuscrits pour les raisons suivantes: p>
La recherche Heaton vous aidera beaucoup p>