Sari la conținut

what it's all about?! :)


Postări Recomandate

Ok dragilor,

 

O sa incerc sa va fac o imagine la ceea ce se intampla sau ma rog, despre ce e vorba in acest proiect. O sa incerc sa dau o explicatie pe intelesul tuturor astfel incat sa aveti o imagine mai clara la ceea ce si cum se intampla atunci cand e vorba de inteligenta artificiala.

 

Pe scurt, o retea neuronala incearca sau mai bine spus este facuta dupa modelul neuronului natural. Cam tot ceea ce tine de inteligenta artificiala incearca sa imite, sa copieze naturalul.

 

Totul incepe cu arhitectura si designul retelei artificiale. Aici depinde de “architect”, de atentia care o da detaliilor, poate face o retea de creier debil, sau poate face o retea pt alt nivel superior: muncitor, inginer, doctor, doctor docent, savant, geniu etc.

In cazul ANN (artificial neural network) conteaza foarte mult pt ce anume o faci.

 

Dupa ce ai stabilit arhitectura, te apuci efectiv si o scrii intr-un limbaj de programare. Referitor la ANN daca dati cu google veti primi o groaza de pagini cu referire la asa ceva si chiar exista programe care fac asa ceva si mai exista ANN-uri care le poti lua gratuit de pe internet, dar asta nu inseamna ca sunt excelente. Deci, oricare care ar fi interesat de domeniu, are de unde culege aceste date si sa le studieze.

 

Revenind… dupa ce ai scris reteaua trebuie verificata daca din punct de vedere matematic nu are greseli si sa nu ne trezim cu o retea schizofrenica (schizofrenia dupa cate stiu-poate ca gresesc- are la baza mutatii genetice si se explica ca anumiti neuroni, atunci cand se dezvolta creierul se conecteaza aiurea deci, atunci cand ajunge la maturitate incep sa se vada crizele si nu mai poti face nimik decat sa mentii schizofrenia pt ca e vorba de conexiuni gresite ale neuronilor in adancul creierului).

Dupa ce ai verificat ANN-ul poti bea linistit o bere pt ca inseamna ca ai trecut de prima faza.

 

Faza urmatoare este despre antrenarea retelelor. Adica degeaba ai tu un creier daca el este alb fara nicio circumvolutiune. Trebuie pur si simplu sa incepi sa-i “arati” ce trebuie sa faca.

Partea cea mai tare a retelelor neuronale, ma rog una dintre partile tari, este aceea ca are capacitatea deosebita de a “vedea” de a gasi patternuri – modele- in orice ii dai sa caute. Si aici omul si in special AT-ul are o problema… vede prea putine si deloc complicate patternuri. El vede doar double top, head and shoulder double bottom etc… . pe cand ANN este capabila de a “vedea” patternuri complicate compuse. Aici ea exceleaza.

Dar cum putem antrena sau ce trebuie sa-i dam retelei sa “vada” ca sa poata gasi patternuri? Trebuie sa-i dam data. cu cat data este mai acurata daca pot spune asa, cu atat primesti rezultat mai bun. Ce vreau sa spun? Simplu… noi dam ANN-ului data la tick. Si asta face o mare diferenta. Spre exemplu noi in proiectul care lucram, nici nu avem nevoie de grafic si asta e simplu de ce nu avem nevoie: pt faptul ca un grafic este pur si simplu o reprezenatare a unor data astfel incat prin intermediul ochiului, omul sa inteleaga mai pe larg ce se intampla in spatele datelor. Pe mine nu ma intereseaza sa inteleg io ce se intampla in spatele dateleor, pe mine ma intereseaza programul sa inteleaga ori programul nu prea are nevoie de grafic  revenind… ca si antrenament la o retea ANN exista mai multe tipuri.

 

Unsupervised learning, supervised learning, semi-supervised learning, reinforcement learning. Fiecare cu avantajele si dezavantajele lui.

 

Spre exemplu la cel nesupravegheat, pur si simplu reteaua extrage niste clustering-uri la cel supervizat, dupa ce iti da un output si acel output nu e correct, tu ii “arati” care ar fi trebuit sa fie output-ul correct iar ea isi regleaza ponderile (weights) astfel incat la urmatorul test sa fie cat mai aproape de adevar.

Mai exista o chestie la care subscriu pt ca e normal ca si noi o folosim si anume normalizarea… ceea ce aplica dorul si la el si anume ceva gen clopotul lui gauss numai ca la noi lucrul este un pic mai diferit mai avansat un pic. Aceasta normalizare este un fel de filtru care scoate din socoteala acele inputuri care pot fi considerate ca si noise o crestere brusca si o revenire la fel de bruasca, chestii care nu se incadreaza in normal. Numai ca noi mai mult decat atat ne luam si dupa volatilitate si in functie de volatilitate reglam normalizarea.

In fine… revenind  deci…

 

si ca orice lucru natural..... si o retea artificiala isi iese din garantie Smiley asta inseamna ca trebuie la o anumita perioada de timp bine gandita sa o reantrenezi Smiley

 

Recapituland pana aici

 

Ai asa:

 

Designul sau arhitectura retelei

Antrenamentul

 

Urmatorul pas este interpretarea rezultatului si aici exista o groaza de alte complicatii de care trebuie sa tii cont pt ca daca interpreteazi gresit pur si simplu o iei in barba.

 

 

Ok, va ninge… dar in ce zi anume va ninge?

 

In fine… partea care m-a durut de pe la inceputul proiectului… . am avut discutii interminabile cu colegul meu asupra acestei probleme… . si pana la urma cred ca suntem pe cale sa o rezolvam si pe asta.

 

Daca tu retelei neuronale ii dai data la tick… cum pana mea sa-ti spuna ea cand va fi acea valoare care ti-o da?  grea intrebare

 

Deci… o retea neuronala daca ii dai input data ea iti va da un output, adica iti va arata/prezice, urmatoarea data care ar trebui sa iasa pt ca ea se “uita pe data care i-ai dat-o, “vede” sau mai bine zis detecteaza niste patternuri si in functie de asta iti da un output. Pana la urma cred ca intrebarea corecta nu este:

 

“Ok, va ninge… dar in ce zi anume va ninge?” ci: “La al catelea tick se va implini valoarea(output-ul) dat de retea?” si de ce spun asta?

 

Pt simplul motiv ca daca tu ii dai data la tick, intr-o perioada limitata de timp, sa spunem o saptamana, tu in saptamana aia poti avea 10000 de tickuri sau poti avea 15000 tickuri. Fiecare retea neuronala are un anumit numar finit de inputuri ale noastre au cuprinse intre 10000 si 30000 functie de tipul retelei. Ori daca tu ii dai data la tick automat valaorea care ti-o scoate reteaua cred ca ar trebui raportata la tick si nu la timp(care nu stii ce e tick-ul nu ma intreba, cauta!.

 

In fine…. Daca o rezolvam sip e asta atunci iar mai putem bea o bere.

 

Dar pana acolo mai avem o problema… . si aici cei care sunteti familiarizati cu subiectul “what’s new : ) “ veti stii despre ce vorbesc.

 

Maine cel tarziu luni, terminam bancul de proba. Ce inseamna bancul de proba? Poi inseamna asa:

 

Avem 9 retele funcitonale acum si trebuie sa vedem care cum si ince fel performeaza pe fiecare valuta in parte. De ce asa? Pt simplul motiv ca unele retele neuronale performeaza mai bine pe USDEUR pe cand altele performeaza mai bine pe CHFUSD sau orice altceva.

Cum se va desfasura acest test.

Poi la modul urmator. O sa luam data la tick pt oricare valuta dorim(cei de la forex.com au 21 de perechi) o sa o importam in baza de date oracle, o sa le antrenam intai(in system automat), dupa care ii dam run Cheesy la sfarsit, va scoate un table excel in care rezultatele vor fi trecute ceva de genul: din totalul numarului de teste, cate au iesit positive in intervalul de tick-uri prevazute de noi si considerate ca si valide (adica daca rezultatul respective s-a implinit peste 15000 de tickuri, nu il pot considera pozitiv pt ca eu admit ca si rezultat pozitiv sa spunem doar in maxim al 500-lea tick. Restul epoveste daca depaseste perioada respective de prognoza.

Probabil ca spre sfarsitul acestei saptamani, o sa pot prezenta rezultatele testului.

 

Cam atat despre acest proiect.

 

Aaaaaaaaa am uitat da aveti dreptate cand va plangeti de timp sau ca nu gasiti programatori  avand in vedere ca acest proiect este inceput inca din oct 2007 un simplu calculi mi arata ca deja am investit aprox 30000 euro Cheesy calculul e simplu  2,5 oameni pe zi cu un salar de 1500 plus taxe la stat, fara ore suplimentare, cam atat da… . fiecare dintre noi am fi putut castiga acesti bani.

 

Aaaaaaaaaa2  am uitat acum noi vorbim strict de core asta inseamna ca dupa ce o sa terminam core-ul urmatorul pas vor fi agentii inteligenti si data mining si mai sunt vreo 2, 3 capitole cel putin :biggrin:)))))))))))

Link spre comentariu
Distribuie pe alte site-uri

  • Răspunsuri 5
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

apropo de investitie... imi aduce aminte de bancul ala cu sotul care vine acasa la sfirsitul lunii si-i spune sotiei ca luna asta au cistigat 3000 de dolari in plus... pai cum, intreaba sotia, ti-au marit salariul? a, nu, zice sotul, acesti bani nu i-am cheltuit pe taxi in fiecare zi cind am mers amindoi la servici.

asa ca, vezi, se poate privi si dintr-un alt unghi. daca nu ti-au iesit din buzunar, eu as zice ca ai cistigat 30k.

Link spre comentariu
Distribuie pe alte site-uri

  • 1 lună mai târziu...

Alătură-te conversației

Poți posta acum și să te înregistrezi mai târziu. Dacă ai un cont, autentifică-te acum pentru a posta cu contul tău.

Vizitator
Răspunde la acest subiect...

×   Alipit ca text avansat.   Alipește ca text simplu

  Doar 75 emoji sunt permise.

×   Linkul tău a fost încorporat automat.   Afișează ca link în schimb

×   Conținutul tău precedent a fost resetat.   Curăță editor

×   Nu poți lipi imagini direct. Încarcă sau inserează imagini din URL.

  • Navigare recentă   0 membri

    • Nici un utilizator înregistrat nu vede această pagină.

×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.