NeurosLab

Inteligenta artificiala transpusa in cele mai populare limbaje de programare ...

Moderator: Mod. AI

NeurosLab

Postby h33z0r » 31 Jan 2010, 22:48

Buna ziua,

Ma numesc Ionut, am 16 ani, programez de aproape 6 ani in delphi, iar in ultimele 8 luni citesc despre AI. In ultimele 2 luni, m-am chinuit sa fac o aplicatie in delphi.

NeurosLab

Este un mic RAD, ce permite crearea,simularea,invatarea si exportarea Retelelor Neuronale Multi Layer Perceptron, in limbajul de programare Pascal[Momentan]

Exemplu ce se pot crea [momentan] cu softul NeurosLab
-OCR(Optical Character Recognition), pentru scrisul de mana,
-Aproximari de functii, continue, elementare
-Clasificarea feţelor umane
-Clasificarea amprentelor
-Clasificarea retinei
-Predictia. Exemplu valorile de la burse
Si multe alte exemple.

Permite vizualizare 2D si 3D a retelelor create.

Versiunea viitoare:
Retele Boltzmann, Retele Kohonen(pentru retele nesupervizate), acuma functioneaza doar pentru cele supervizate.

Link de download: http://86.122.240.21/Download/Proiecte/NeurosLab/NeurosLab%20exe%20beta%20testing.rar
Imagini

Tutoriale pentru cei care nu stiu sa foloseasca softul
http://www.trilulilu.ro/gigasoftware/15acae86286e37 [English] . In acest scurt film se prezinta cum se creaza si invata o retea neuronala, pentru a crea un soft de detecteaza cifrele de la 0 la 9 si chiar stricate(avand zgomote). Arhitectura OCR-ului creat de mine.

http://www.trilulilu.ro/gigasoftware/0e6e4708e063be [english] . In acest scurt film se prezinta cum sa cream o retea neuronala, care clasifica feţele, si capacitatea retelei neuronale, de a lucra cu zgomot. Spre sfarsit, am aratat cum sa aproximam o functie, cu ajutorul retelelor.

Imagini Image

Invatare rapida, a cate doua feţe din fiecare personaj. Eroare =~ 10%. Image

Exportare XML Image

Astept opini, si sugestii, si ce algoritmi sa mai implementez.

Incerc sa fac o interafata foarte primitiva, om-calculator prin scris. Am o intrebare pentru voi, "exisat cam o baza de date pentru sinonime, pentru predicate" numai ca daca sunt mici modificari(articulari, scris gresit), pentru a rezolva sa folosesc o Distanta Levenshtein, sau Distanţă Hamming, sau sa creez o retea neuronala, pentru a clasifica, cuvintele in ce clasa sa apartina.
h33z0r
tranzistor
tranzistor
 
Posts: 2
Joined: 31 Jan 2010, 22:38

NeurosLab

Sponsor

Sponsor
 

Re: NeurosLab

Postby lightuniverse » 01 Feb 2010, 21:43

Felicitari arata bine la prima vedere.
lightuniverse
UAL
UAL
 
Posts: 49
Joined: 18 Mar 2008, 22:37

Re: NeurosLab

Postby ioan » 12 Mar 2010, 08:59

Am primit documentatia de la tine (lightuniverse), am aruncat o privire peste partea cu recunoasterea cifrelor, pare interesanta. Am sa ma uit mai cu atentie peste ea in perioada urmatoare.
Dar cred ca nu ai inteles bine o problema, eu nu urmaresc recunoasterea cifrelor sau a caracterelor. Dupa cum ai vazut, la final am ajuns la recunoasterea unei operatii aritmetice nu la recunoasterea cifrelor.
ioan
multiplexor
multiplexor
 
Posts: 24
Joined: 03 Sep 2008, 09:02

Re: NeurosLab

Postby lightuniverse » 13 Mar 2010, 00:30

Salut,

Discutia se refera la aplicarea unor metode de genul celor din prezentarile de mai jos, pe un set de probleme de recunoastere a operatiilor matematice:
http://www.youtube.com/watch?v=oozFn2d45tg
http://www.youtube.com/watch?v=pjpWISEI ... re=related
http://www.youtube.com/watch?v=pngRexsr ... re=related
http://www.youtube.com/watch?v=GpekuvG4 ... re=related
http://www.youtube.com/watch?v=FthvUpHz ... re=related
lightuniverse
UAL
UAL
 
Posts: 49
Joined: 18 Mar 2008, 22:37

Re: NeurosLab

Postby lightuniverse » 13 Mar 2010, 00:30

ioan wrote:Am primit documentatia de la tine (lightuniverse), am aruncat o privire peste partea cu recunoasterea cifrelor, pare interesanta. Am sa ma uit mai cu atentie peste ea in perioada urmatoare.
Dar cred ca nu ai inteles bine o problema, eu nu urmaresc recunoasterea cifrelor sau a caracterelor. Dupa cum ai vazut, la final am ajuns la recunoasterea unei operatii aritmetice nu la recunoasterea cifrelor.



Ma gandeam ca documentatia poate iti ofera cateva idei despre diferite metode de abordare a problemelor de recunoastere de tipare. Intradevar ceea ce faci tu difera de recunoasterea de caractere dar mecanismele pe care le aplici sunt tot de recunoastere (desi difera ca implementare). Ei fac descompunere secventiala a imaginii pentru a putea sa o interpreteze mai usor si mai repede iar tu faci descompunere secventiala in suboperatii. Te rog corecteaza-ma daca am inteles gresit.
Oricum ma gandeam ca la recunoasterea de tipare perturbate (rejectia perturbatiilor) o abordare secventiala ar duce la detectarea rapida a elementelor perturbatoare; si bineinteles ajuta la tratarea tiparelor complexe.
lightuniverse
UAL
UAL
 
Posts: 49
Joined: 18 Mar 2008, 22:37

Re: NeurosLab

Postby ioan » 13 Mar 2010, 12:35

Sigur ca imi da idei documentatia aceea dar nu sunt familiarizat cu retelele neuronale, nu stiu daca o sa am timpul necesar ca sa le aplic. Dar cineva care este mai la zi cu ele poate incerca.
Am spus atunci ca nu sunt sigur pe notatiile folosite, intre timp le-am schimbat putin. Acum totul pare mai complicat dar asta este, am sa iau un exemplu de rangul 4
v1+v2
v1->v11v12v13v14
v2->v21v22v23v24

v(11)(21)1 -> v(11)(21)1 -> v(11)(21)1
v(11)(21)2 -> v((11)(21)2)((12)(22)1)1 -> v((11)(21)2)((12)(22)1)1
v(12)(22)1 v((11)(21)2)((12)(22)1)2 -> v(((11)(21)2)((12)(22)1)2)(((12)(22)2)((13)(23)1)1)1
v(12)(22)2 -> v((12)(22)2)((13)(23)1)1 v(((11)(21)2)((12)(22)1)2)(((12)(22)2)((13)(23)1)1)2
v(13)(23)1 v((12)(22)2)((13)(23)1)2 -> v(((12)(22)2)((13)(23)1)2)(((13)(23)2)((14)(24)1)1)1
v(13)(23)2 -> v((13)(23)2)((14)(24)1)1 v(((12)(22)2)((13)(23)1)2)(((13)(23)2)((14)(24)1)1)2
v(14)(24)1 v((13)(23)2)((14)(24)1)2 -> v((13)(23)2)((14)(24)1)2
v(14)(24)2 -> v(14)(24)2 -> v(14)(24)2



-> v(11)(21)1
-> v((11)(21)2)((12)(22)1)1
-> v(((11)(21)2)((12)(22)1)2)(((12)(22)2)((13)(23)1)1)1
-> v((((11)(21)2)((12)(22)1)2)(((12)(22)2)((13)(23)1)1)2)((((12)(22)2)((13)(23)1)2)(((13)(23)2)((14)(24)1)1)1)1
v((((11)(21)2)((12)(22)1)2)(((12)(22)2)((13)(23)1)1)2)((((12)(22)2)((13)(23)1)2)(((13)(23)2)((14)(24)1)1)1)2
-> v(((12)(22)2)((13)(23)1)2)(((13)(23)2)((14)(24)1)1)2
-> v((13)(23)2)((14)(24)1)2
-> v(14)(24)2

Ultima coloana da rezultatul final, intre doua paranteze este totdeauna o operatie de adunare intre cifre (cunoscute anterior). Ordinea aparitiei cifrelor este inversa (datorita citirii numerelor de la dreapta la stanga)

ex.:
1275+89

5721
98

4 -> 4 -> 4 -> 4
1 -> 6 -> 6 -> 6
5 ~ -> 3 -> 3
1 -> 3 ~ -> 1
2 ~ -> 1 ~
~ -> 1 ~ -> ~
1 ~ -> ~ -> ~
~ -> ~ -> ~ -> ~

1364
Last edited by ioan on 13 Mar 2010, 12:42, edited 1 time in total.
ioan
multiplexor
multiplexor
 
Posts: 24
Joined: 03 Sep 2008, 09:02

Re: NeurosLab

Postby ioan » 15 Mar 2010, 10:43

Imi cer scuze pentru exprimarea 'cred ca nu ai inteles bine', stiu ca ai inteles dar la un moment am avut impresia asta.

Din pacate in postul anterior trunchiaza spatiile si nu se observa prea bine coloanele despre care vorbeam. Asa ca am atasat un txt arhivat.
Attachments
formula_la_care_trebuie_sa_ajunga.rar
(618 Bytes) Downloaded 15 times
ioan
multiplexor
multiplexor
 
Posts: 24
Joined: 03 Sep 2008, 09:02

Re: NeurosLab

Postby lightuniverse » 15 Mar 2010, 22:03

Nu iti face griji nu pentru exprimari. In general incer sa accept ca poate nu am inteles sau nu am dreptate. Oricum problema expusa nu e usoara.
Sunt curios sa vad si ceva scripturi/algoritmi aplicati. Poate daca am ceva timp pun si eu umarul.
lightuniverse
UAL
UAL
 
Posts: 49
Joined: 18 Mar 2008, 22:37

Re: NeurosLab

Postby h33z0r » 29 Mar 2010, 10:59

Versiunea 1.1.2
http://86.122.240.21/download/Proiecte/ ... y1.1.2.rar
+Sper ca am scos problema la plotter pentru decimala(daca era diferita de "." atunci, constantele(pi, e ) dadeau erori
+Permite sa exporteze in format DLL (Codul sursa pentru DLL)
+Exemplu creat cu DLL-ul respectiv.

Acuma lucrez sa fac un exemplu, pentru a arata cum se poate realiza cu softul meu o recunoastere vocala.
h33z0r
tranzistor
tranzistor
 
Posts: 2
Joined: 31 Jan 2010, 22:38


Return to Programare

Who is online

Users browsing this forum: No registered users and 1 guest

cron