Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

SpikeFun - Artificial Nervous System Demo

[es] :: Veštačka inteligencija :: SpikeFun - Artificial Nervous System Demo
(TOP topic, by Gojko Vujovic)
Strane: 1 2 3 4 5 ... Dalje > >>

[ Pregleda: 132583 | Odgovora: 455 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16683
*.dip.t-dialin.net.



+7169 Profil

icon SpikeFun - Artificial Nervous System Demo25.09.2011. u 21:19 - pre 152 meseci
SpikeFun je mali simulator bioloski-realisticnih neuronskih mreza na kome radim vec neko vreme... htedoh da napisem mali post o tome za ljude koje zanimaju neuronske mreze 3-ce generacije (spiking neural networks)...

SpikeFun je u stvarni front-end za "DigiCortex" biblioteku koja je engine za simulaciju unutra i koju polako razvijam kao hobi u slobodno vreme.

Sta se simulira

DigiCortex modelira neurone do nivoa sinaptickih receptora uz pomoc Izhikevich-evog neurona i/ili Brette-Gerstner / "AdEx" modela neurona. Izhikevich-ev i AdEx modeli su fenomenoloski, za razliku od, recimo, Hodgkin Huxley modela sto znaci da su dizajnirani da reprodukuju ponasanje neurona a ne detaljno svaku od jonskih struja, ali su i pored toga u stanju da vrlo verno repliciraju ponasanje 20 vrsta kortikalnih neurona uz drasticno smanjenu kompleksnost u odnosu na Hodgin Huxley model. Izhikevich-evi i Brette-Gerstnerovi modeli su, zapravo, najbolji odnos izmedju bioloske realnosti i kompleksnosti ako se simulacija radi na nivou akcionih potencijala (spajkova).

Moja implementacija je trenutno optimizovana za Intel platformu, ukljucujuci i Sandy Bridge (AVX), mada mi je glavni cilj da implementiram simulaciju na GPU platformama (CUDA, OpenCL) posto je update provodljivosti receptora posao kao stvoren za graficke procesore. Vec je uradjen task-manager koji uposljava worker niti, i koji ce vam lepo zakucati procesor na 99-100% bez obzira na broj jezgara (limit je 256 za sada :-)

Neuroni su modelirani kao vise-kompartmentalni modeli gde broj kompartemta ide do oko 30 za sad. Simulirani su kortikalni piramidalni, spiny-stellate, basket i non-basket neuroni kao i talamicki neuroni (RTN, talamicki interneuroni i talamo-kortikalni "relej" neuroni).

U trenutnim simulacijama je moguce dobiti 5 vrsta ponasanja neurona (Regular Spiking, Low Threshold Spiking, Intrinstically Bursting, Chattering, Fast Spiking) sto je podskup eksperimentalno izmerenih ponasanja neurona u sivoj masi.

Takodje, modelirani su i najvazniji hemijski receptori:

- Glutamatergicki (pobudjujuci): AMPA i NMDA receptori
- GABAergicki (inhibitorni): GABAa i GABAb receptori

Receptorska kinetika (kratkotrajna potencijacija i depresija) je, takodje, implementirana uz pomoc fenomenoloskog modela (Markram et. al.) i modelira kratkotrajnu sinapticku plasticnost koja je u saglasnosti sa eksperimentalnim podacima.

Osim kratkotrajne plasticnosti, modelirana je i dugotrajna sinapticka plasticnost vezana za tajming dolazecih akcionih potencijala (STDP - Spike Timing Dependent Plasticity) koja je, takodje, eksperimentalno potvrdjena i vrlo verovatno predstavlja jednu od glavnih osnova za ucenje u sivoj masi. STDP funkcionise na znacajno duzem intervalu od kratkotrajne sinapticke plasticnosti i, za razliku od nje, menja sinapticke jacine.

Simulator modelira korteks i talamus. Neuroni se alociraju po kortikalnim slojevima (relativne debljine slojeva je moguce menjati) i na osnovu globalne anatomije dobijene vokselizacijom MRI snimka. Neuroni se lokalno (unutar Brodmanovih zona) uvezuju na osnovu statistickih analiza macijeg vizuelnog korteksa (Binzegger et al., 2004) dok se globalna povezanost neurona modelira na osnovu analize difuznih MRI snimka (DSI - Diffusion Spectrum Imaging tehnika) i uparivanjem sa anatomskim modelom radi dobijanja konektoma.

Takodje, implementiran je i OpenGL vizualizator koji mozete videti na slici i videu dole. Vizualizator nije bas super-optimizovan ali ipak koristi VBO (vertex-buffer-objects) tako da je relativno brz na bilo kakvoj diskretnoj grafickoj proizvedenoj u poslednje 3-4 godine... Doduse, za ogromne simulacije preporucujem jaku graficku posto dosta slabih grafickih kartica ima niske limite za velicinu VBO objekata (ako dobijate gresku pri pravljenju simulacije vezanu za VBO - nemate dovoljno memorije na grafickoj za simulaciju), dok ne implementiram volumetricko renderovanje posto se za sada sve renderuje kao prava geometrija ("seljacki" :-).

Za sada je moguce sa F5 videti FFT power spectrum plot tj. koncentraciju aktivnosti u delta/alfa/beta/gama frekventnim regionima kao i odnose sinaptickih jacina tokom vremena (sinapticke jacine se menjaju zbog STDP-a)

Prvi Rezultati

Video dole predstavlja talamokortikalni sistem od 16.7 miliona neurona sa 3.52 milijarde sinapsi. Sama simulacija zauzima oko 350 GB memorije i izvrsava se brzinom od ~0.0005x - ~0x001x realnog vremena na dual Xeon 2687W masini).

Obavezno ukljucite 720p ili 1080p - ako imate 27" ili 30" monitor koji mogu da prikazu 2560 piksela horizontalo, odaberite "original video" u opciji za kvalitet :-)



Prva stvar koja odmah upada u oci je vrlo brza organizacija mreze u nezavisne klastere aktivnosti koji su desinhronizovani na simularnom EEG-u (koji se vidi pri kraju videa)

Ako se mreza ostavi da simulira vise od 15-20 minuta (simulacionog vremena), STDP ce bitno izmeniti ponasanje mreze i "urediti" opaljivanja neurona. Ako bi ste ostavili stalni stimulus i naprasno ga iskljucili posle tog vremena, neko vreme ce ostati "senka" zato sto su se simulirani neuroni "navikli" na konstantnu prisutnost stimulusa bas kao i pravi neuroni....

Evo kako izgleda i radni prozor:



Sledeci koraci

Postoji dosta TODO stvari koje hocu da uradim, i koje zavise od kolicine slobodnog vremena:

- Multi-kompartmentalni neuroni [DONE]
- Slobodna geometrija (sto ce omoguciti simulaciju kortikalnih kolona pa i kompletne sive mase i talamusa) [DONE]
- CUDA/OpenCL procesiranje sto bi trebalo da donese bar 10-20x ubrzanja (nadam se ;-) [DONE]
- Klijent/Server model koji ce omoguciti klaster procesiranje [IN PROGRESS]
- I/O sa bazom podataka sto ce omoguciti snimanje i editovanje mreza
- API za kontrolu i interakciju, i povezivanje sa senzorima

Probajte

Koga zanima - SpikeFun moze skinuti ovde - trenutna verzija je 0.90:

http://www.dimkovic.com/node/1


[Ovu poruku je menjao Ivan Dimkovic dana 25.08.2013. u 17:28 GMT+1]
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
Prikačeni fajlovi
 
Odgovor na temu

balavi

Član broj: 175011
Poruke: 797
*.dynamic.isp.telekom.rs.



+104 Profil

icon Re: SpikeFun - Artificial Nervous System Demo25.09.2011. u 21:43 - pre 152 meseci
Samo mogu da kažem jedno

Dimke, legendo, ti si moj idol .....
 
Odgovor na temu

xtraya
Vladanko Vladanovic
Belgrado

Član broj: 323
Poruke: 1011
85.222.218.*

ICQ: 6072593


+49 Profil

icon Re: SpikeFun - Artificial Nervous System Demo25.09.2011. u 23:47 - pre 152 meseci
Simpaticno... osim sto mi spaljuje cooler laptopa, predji na serotoninske receptore :) oni su zaduzeni za feeling ...

no, sta sa ranvijerovim cvorovima? kako uopste definises brzinu propagacije obzirom da se razlikuje drasticno prema dendritu i prema axonu ...
Hmmm , na VIP-u 3G preko iphone-a 2,6 Mbps DL i 1,4 UP ...
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16683
...kabel-badenwuerttemberg.de.



+7169 Profil

icon Re: SpikeFun - Artificial Nervous System Demo26.09.2011. u 09:27 - pre 152 meseci
Za sada je modelirana propagacija akcionih potencijala kroz aksone sa mijelinskim omotacem (sa ranvijerovim cvorovima) - ona je u proseku 1 m/s u sivoj masi.

Uskoro cu dodati i propagaciju kroz aksone bez mijelinskog omotaca, ta brzina je oko 0.15 m/s u proseku u sivoj masi.

Zbog trenutnog ogranicenja na 1 kompartment nema kasnjenja unutar samih dendrita, zbog toga hocu da uvedem visestruke kompartmente.
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16683
*.dip.t-dialin.net.



+7169 Profil

icon Re: SpikeFun - Artificial Nervous System Demo26.09.2011. u 20:27 - pre 152 meseci
@xtraya,

5-HT (serotoninski) receptori nisu modelirani zato sto je njihovo dejstvo posredno i vrlo kompleksno. Serotoninski receptori modulisu oslobadjanje drugih neurotransmitera (izmedju ostalog, glutamata i GABA-e, cije je dejstvo modelirano u trenutnom modelu preko NMDA i GABAx receptora) - mozda jednog dana, ali za sada moram prvo da ubacim neke jednostavnije, a bitnije stvari :-)

Sledeci neurotransmiter koji ce biti ubacen u model posredno ce biti dopamin (http://cercor.oxfordjournals.org/content/17/10/2443.full) koji utice na STDP i sluzi za ucenje akcija koje proizvode nagradu cak i kada su akcija i nagrada vremenski udaljene (tzv. "distal reward" problem) - koga vise zanima: http://www.ncbi.nlm.nih.gov/pubmed/18090321
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
 
Odgovor na temu

Srđan Pavlović
Specijalna Edukacija i Rehabilitacija MNRO
Vojvodina, Bačka Palanka

Član broj: 139340
Poruke: 5571
*.static.abakusbp.net.

Sajt: www.oligofrenolog.com


+382 Profil

icon Re: SpikeFun - Artificial Nervous System Demo27.09.2011. u 11:09 - pre 152 meseci
Svaka čast za trud, Dimke.

Ja sam na faksu imao predmete iz oblasti medicine, ali ne na nivou na
kome se to sve izucava na medicinkom (ovde posebno mislim na funkcionisanje
CNS-a i biohemiju oko toga, transmitere, itd), morao bih da uzmem Gajtona u
ruke i dobro se podsetim da bih pohvatao tacno sta ovde zapravo radis :)

Port za Linux - hoce li ga biti? ;)

Nego mi sad pade nesto na pamet... neurotransmitera nema neograniceno,
kako se u simulaciju uklapa prica o "zamoru" sinapsi, tj. trosenju pojedinih transmitera? :)
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16683
...kabel-badenwuerttemberg.de.



+7169 Profil

icon Re: SpikeFun - Artificial Nervous System Demo27.09.2011. u 12:23 - pre 152 meseci
Citat:

Svaka čast za trud, Dimke.


Hehe hvala... ma ovo mi je zanimacija za mozak malo da mi ne zakrzlja kad omatorim :-)

Videcemo za Linux port - u principu nema u kodu nicega Windows-specificnog osim GUI elemenata, sve ostalo je cist C/C++ i OpenGL... Videcu mozda da raspisem sve GUI elemente u QT-u posto mi je muka od Win32 API-ja... verovao ili ne, ali najvise vremena sam izgubio na Windows dijalozima i glupostima a ne na samom kodu - sto je najgore, odlucio sam da koristim cist Win32 API a ne MFC... #@#@@*#

Sto se neurotransmitera tice, sam termin objedinjuje razne vrste jedinjenja (amino kiseline, peptidi, ...) tako da nije bas moguce pricati o jednom mehanizmu obnavljanja - ali, u principu, za svaki neurotransmiter postoji sistem samo-regulacije koji obezbedjuje da se u mozgu nalazi optimalna kolicina (kod zdravih organizama, naravno).

Trenutni model ne modelira metabolizam neurotransmitera ali se depresija sinapsi posle aktivnosti modelira kroz kratkotrajnu sinapticku plasticnost.

To mozes lako videti ako pritisnes "E" sto ce poceti da ubacuje stimulus na svakih 50 msec - ako posle nekog vremena zaustavis ubacivanje (sa E) videces da ostaje "rupa" na tom mestu kratko vreme.
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
 
Odgovor na temu

Srđan Pavlović
Specijalna Edukacija i Rehabilitacija MNRO
Vojvodina, Bačka Palanka

Član broj: 139340
Poruke: 5571
*.static.abakusbp.net.

Sajt: www.oligofrenolog.com


+382 Profil

icon Re: SpikeFun - Artificial Nervous System Demo27.09.2011. u 12:41 - pre 152 meseci
Na zdrav organizam sam i mislio, naravno, ali sam mislio na normalan
fizioloski zamor usled trosenja razlicitih neuro-transmitera lokalno, ne neki patoloski proces.

Nego... jesam ja to sanjao (ili si ti editovao nesto, hehe) ili je zaista negde bio pomenut
primarni vizuelni korteks (striatni, V1) u nekom kontekstu... ili je to bila neka druga tema?
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16683
...kabel-badenwuerttemberg.de.



+7169 Profil

icon Re: SpikeFun - Artificial Nervous System Demo27.09.2011. u 13:18 - pre 152 meseci
Primarni vizuelni korteks? Hmm... mislim da je bilo u drugoj temi o "citanju misli" gde se cesto koriste argumenti eksperimenata koji "citaju" sta covek vidi tako sto rade analizu neuronske aktivnosti u primarnom vizuelnom (V1) korteksu.

Fora je da je primarni vizuelni korteks najvise obradjivan deo sive mase sa bukvalno najvecom bazom naucnih radova i saznanja - medjutim transformacija podataka je i dalje dovoljno trivijalna da je uz pomoc danasnjih racunara relativno lako moguce rekonstuisati "sliku" koju covek vidi u primarnom korteksu. Tako da je koriscenje tih uspeha prilicno nekorektno kao nekakvo najavljivanje mogucnosti "citanja misli" posto se tu ne citaju nikakve "misli" vec relativno jednostavna transformacija koju razumemo.

U svakom slucaju, kada budem ubacio modeliranje kortikalne kolone (radim na tome) sama statistika konekcije neurona ce upravo biti iz primarnog vizuelnog korteksa (da budemo precizniji, primarnog vizuelnog korteksa macke):

A Quantitative Map of the Circuit of Cat Primary Visual Cortex

Ovo je Eugene Izhikevich vec uradio pre nekoliko godina - http://www.izhikevich.org/publ...scale_model_of_human_brain.htm - meni je cilj da dodjem prvo do tog nivoa simulacije, ali uz pomoc GPGPU optimizacija, a onda da nastavim sa sirenjem kompleksnosti.
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
 
Odgovor na temu

Ivan.Markovic

Član broj: 97763
Poruke: 330

Sajt: security-net.biz


+19 Profil

icon Re: SpikeFun - Artificial Nervous System Demo27.09.2011. u 13:45 - pre 152 meseci
Nista ne razumem ali svaka cast jos jednom :) Jel mozes da ostavis linkove ka resursima za pocetnike u ovoj oblasti (simulacija receptora) ?
“If you think you are too small to make a difference, try sleeping with a mosquito.” - Dalai Lama
XIV
 
Odgovor na temu

Srđan Pavlović
Specijalna Edukacija i Rehabilitacija MNRO
Vojvodina, Bačka Palanka

Član broj: 139340
Poruke: 5571
*.static.abakusbp.net.

Sajt: www.oligofrenolog.com


+382 Profil

icon Re: SpikeFun - Artificial Nervous System Demo27.09.2011. u 13:58 - pre 152 meseci
Citat:
U svakom slucaju, kada budem ubacio modeliranje kortikalne kolone (radim na tome) sama statistika konekcije neurona ce upravo biti iz primarnog vizuelnog korteksa


E pa moguce da si ovo pomenuo, eto... nisam sanjao ipak :D

Primarni vizuelni korteks je dobar izbor zbog jasne retinotopske organizacije
(prati se organizacija retine u ovim poljima, i zbog visoke modalne specificnosti
neurona ovde koji primaju informacije samo o specificnim aspektima vizuelne drazi).

Dakle prilicno se dobro zna koja gde (topografski) informacija ide.

Nego - jadne macke, mozak bas vole da ispituju na njima :)

@Ivan Markovic - Ako nemas vec neko predznanje o ovome,
mozes da krenes od clanaka na vikipediji, recimo:

http://en.wikipedia.org/wiki/Nervous_system

http://en.wikipedia.org/wiki/Synapse

http://en.wikipedia.org/wiki/Neurotransmitter

pa ce te to vec odvesti dalje gde zelis...

Inace, neurotransmitera ima prilicno mnogo, nekima je do sad uloga
jasnije ispitana, a za neke se jos utvrdjuje da li uopste imaju tu ulogu,
i koja je uloga... uglavnom, potrebno je dobro znanje fiziologije CNS-a,
poznavanje gradje neurona, tipova neurona, sinapsi, prirode procesa
koji se desavaju na sinapsama prilikom transmisije signala, itd...
 
Odgovor na temu

deerbeer
Beograd

Član broj: 174418
Poruke: 1189
*.dynamic.sbb.rs.



+395 Profil

icon Re: SpikeFun - Artificial Nervous System Demo27.09.2011. u 14:14 - pre 152 meseci
Svaka cast Ivane !!!

Interesuje me koliko ti je vremena trebalo da sazvaces neuronsku teoriju s obzirom da bavis tim iz hobija ?
Koliko je tesko zapravo programsko modelovanje ? Postoje li neke biblioteke ili si sve na "ruke" pisao oslanjajuci se na teoriju ?

Viva lollapalooza
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16683
*.dip.t-dialin.net.



+7169 Profil

icon Re: SpikeFun - Artificial Nervous System Demo27.09.2011. u 20:32 - pre 152 meseci
Hvala ljudi na cestitkama - ali, ipak, nije ovo nista specijalno niti preterano kompleksno... mozda postane jednog dana :)

@Ivan.Markovic,

Pocni od linkova koje je ostavio Srdjan. To ce ti vec dati prve osnove.

Za computational-neuroscience oblast preporucujem sledece 2 knjige:

http://www.amazon.com/Fundamen...&qid=1317151417&sr=8-1

http://www.amazon.com/Theoreti...&qid=1317151417&sr=8-2

^ Ove 2 knjige su odlican uvod u ovu, IMHO izuzetno zanimljivu, oblast. Takodje, imaju jako dobre uvode i poglavlja na kraju koja obradjuju bioloske i matematicke osnove koje su neophodne za razumevanje.

U principu, nije potrebno predznanje iz neurologije (ovo je ipak informatika, pre svega) ali je vladanje matematikom na nivou inzenjerske matematike potrebno (sa akcentom na: diferencijalne jednacine, verovatnocu i statistiku i informacionu teoriju). Za dublju analizu je takodje dobro imati osnove iz digitalne obrade signala.

Ko zeli da ide dublje u modeliranje neurona sa stanovista dinamickih sistema:

http://www.amazon.com/Dynamica...&qid=1317151417&sr=8-4

Za ovo je vec ipak potrebno imati obimnije znanje iz matematike.

@deerbeer,

Nekoliko meseci. Mada moje znanje nije bas preterano veliko da se ne lazemo. Programsko modelovanje je lako ako znas sta hoces :-) Ja sam pisao sve "na ruke" u C-u od nule, posto mi je cilj da imam punu kontrolu i da mogu da optimizujem kako ja zelim.

Postoji, naravno, sijaset biblioteka i alata na raznim nivoima kompleksnosti... od najprostijih spiking mreza (NeMO framework) pa sve do kompleksnog modeliranja neurona do najsitnijih detalja uz pomoc NEURON softvera.
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
 
Odgovor na temu

milanche
San Francisco

Član broj: 2447
Poruke: 1200
*.netflix.com.



+1001 Profil

icon Re: SpikeFun - Artificial Nervous System Demo29.09.2011. u 05:12 - pre 152 meseci
Fenomenalno !
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6041



+4631 Profil

icon Re: SpikeFun - Artificial Nervous System Demo29.09.2011. u 14:54 - pre 152 meseci


Odlicna stvar.
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

deerbeer
Beograd

Član broj: 174418
Poruke: 1189
*.dynamic.sbb.rs.



+395 Profil

icon Re: SpikeFun - Artificial Nervous System Demo29.09.2011. u 15:34 - pre 152 meseci
Ivane mojne da si lazno skroman

Samo jedna opaska sto se tice 3D engina (opengl) mozda ne znas da je MS obogaljio opengl pocevsi od viste pa nadalje
http://www.astahost.com/info.p...-Opengl-3d-Graphics_t7377.html
http://www.opengl.org/discussi...ubb=showflat&Number=281892

Licno sam i probao . Zakucava CPU i obara fps na jednostavnom renderingu .
Ne znam da li ce ti pomoci opengl 2.0 da dobijes koji fps vise ali moguce da ti je opengl i pored intenzivnih racunanja jos jedan botleneck sto se tice performansi ,
makar dok ne sidjes do CUDA-e i openCL-a .



Viva lollapalooza
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16683
...kabel-badenwuerttemberg.de.



+7169 Profil

icon Re: SpikeFun - Artificial Nervous System Demo29.09.2011. u 15:52 - pre 152 meseci
Hmm nisam bas siguran da je OpenGL trenutno kritican.

Samo crtanje potencijala je uradjeno kroz VBO (vertex-buffer-objects) gde je kompletna geometrija na grafickoj kartici od samog starta.

Sa NVidia GTX580 grafickom bez problema se renderuje i mreza od 1.5 miliona neurona sa nekoliko FPS sto je zapravo odlicno uzevsi u obzir da radim vokselizaciju na vrlo "seljacki" nacin preko geometrije gde je svaki "voksel" kocka sa 24 temena+24 normale (moze i 8 temena + 8 "pokvarenih" normala ako u "Configuration" stavite reduced rendering complexity), umesto da to radim preko shader-a kao volumetric render (iskreno, nisam dirnuo OpenGL vise od 10 godina pre ovoga, tako da mi nije bas bilo stalo da se bavim i volumetrickim renderingom od nule :-)

Mreza sa 32 hiljade neurona se renderuje komotno sa 60 FPS, sto je VSync limit. Inace 60-fps je inace limit u samoj simulaciji iznad toga render thread ide u wait() kako OpenGL thread ne bi uzimao previse CPU resursa (nema ni potrebe, pogotovu ako za samo matematicko procesiranje jednog frejma treba vise vremena - sto je slucaj sa sestocifrenim brojem neurona, recimo)

Hendikep sa Windows Vista / Windows 7 verzijama je sto sam Aero ima jedan bafer, pa vasa aplikacija osim svojih lokalnih OpenGL bafera ima i jos jedan, tj. kad uradite SwapBuffers() to ne ide direktno na displej, nego u neki Aero bafer.

Ali to samo po sebi ne bi smelo da nosi neke ogromne penale - max. 10-15%

--

Inace, mali update - trenutno radim na osposobljavanju potpuno slobodne geometrije (ne samo "kockaste"), za sada vec imam rudimentiranu podrsku za cilindricne i sfericne strukture a konacan cilj je 100% free geometrija, sto ce onda omoguciti simuliranje kortikalnih kolona, pa i celog korteksa ako treba.
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16683
*.dip.t-dialin.net.



+7169 Profil

icon Re: SpikeFun - Artificial Nervous System Demo29.09.2011. u 22:05 - pre 152 meseci
v0.32 is out :-)

http://www.dimkovic.com/distrib/SpikeFun_Latest.zip

@deerbeer - posto si pomenuo OpenGL performanse, ubacio sam mogucnost da se iskljuci frame-cap i cekanje na VSync. Ako odes u konfiguraciju, samo iskljuci ove 2 opcije:

Code:

- Limit the render thread to maximum 50 frames per second
- Wait for the vertical sync (VSync) before rendering the next frame


Ako se ove 2 stvari iskljuce, render thread ce renderovati onoliko brzo koliko sistem moze da podrzi. Gornja granica je sam simulator - render thread nece renderovati novi frejm ukoliko novi frejm nije izracunat.

Na mojoj masini (Core i7 sa 6 core-ova na 4 GHz, 2 GHz DDR3 i NVidia GTX580) dobijam sledece rezultate:

- 32768 neurona (32x32x32): Izmedju 200 i 300 FPS
- 110592 neurona (48x48x48): Izmedju 50 i 80 FPS

Sve na Windows Server 2008 R2 (ekvivalent Windows 7-mici)... nemam XP nigde ovde da uporedim performanse, doduse... ako neko ima i XP i 7 u dual-boot konfiguraciji, moze da proba...
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
 
Odgovor na temu

mr. ako

Član broj: 65959
Poruke: 2367



+2294 Profil

icon Re: SpikeFun - Artificial Nervous System Demo29.09.2011. u 22:39 - pre 152 meseci
Kod mene na laptopu za FPS pokazuje uglavnom neke lude brojeve.
na 32x32x32 daje oko 40-50, ali povremeno skoci na 1000.00 ili 1666.nesto ili 26xxx.xx ili 20000.00 ili 1333.xx i sl.
na 48x48x48 daje oko 25 na samom pocetku, a posle stoji zakucan na 1000.00 sa povremenim menjanjem na recimo 20455.00 ili 356.32 ili 952.nesto i jos par takvih vrednosti.


- Il n'est pas important qui, importe c'est quoi!
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16683
*.dip.t-dialin.net.



+7169 Profil

icon Re: SpikeFun - Artificial Nervous System Demo29.09.2011. u 23:11 - pre 152 meseci
Postojao je bag - najnovija verzija (0.33) to resava :-)
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
 
Odgovor na temu

[es] :: Veštačka inteligencija :: SpikeFun - Artificial Nervous System Demo
(TOP topic, by Gojko Vujovic)
Strane: 1 2 3 4 5 ... Dalje > >>

[ Pregleda: 132583 | Odgovora: 455 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.