Megfejteni az idegsejtek suttogását: a sejtek elválasztása

2023. május 2. kedd

Elnézést, hogy sokat kellett várni erre a bejegyzésre. Afféle vihar előtti csend volt, mert az elkövetkezőkben néhány elvont matematikai struktúrával kell majd megbirkózni az adatelemzés kapcsán. Időbe tellett, mire emészthetővé rágtam a mondandómat.

 

Eddig a jelek gyűjtéséről volt szó. Sok csatornáról sok jelet lehet gyűjteni. Egy kis számolással utána lehet járni mennyit is.

 
 

 

 

Ahhoz, hogy a gyors akciós potenciálokat (1.5-3 msec) finom felbontással tudjunk felvenni, legalább 6kHz-el, azaz másodpercenként 6000-szer kell kiolvasnunk az elektródánk feszültségét.

A google adattároló központjának részlete.

Ahhoz, hogy a jelszintet finoman tudjuk mérni 12, de inkább 14 biten kell tárolni azt. Praktikus okokból legyen ez 16 bit azaz 2 Byte. Tehát egy másodperc alatt egy elektródáról 6000x2 byte, azaz 12 kB adatunk keletkezik. No de jó esetben nekünk mondjuk 128 vagy 1024 elektródánk van, azaz másodpercenként 12x1024, azaz 12MB adatunk keletkezik. Ez egy óra alatt 3600x12MByte, azaz kb. 50GB. És egy szabadon mozgó állatnál a mérés órákig vagy akár napokig tarthat, azaz adhat akár 2-3 TB adatot is. Ki győzi ezt tárterülettel?

 

És ez még csak a kisebb probléma, mert ahhoz, hogy ezeket az adatokat elemezni tudjuk ezt az adatmennyiséget be kell olvasni és (legalább részben) a számítógép memóriájában kell tárolni. Nyilván ahhoz, hogy az adatelemzés lehetséges legyen mindenféle ravasz dolgokat kell leprogramozni. Erről lesz most szó.

Az adatfeldolgozás két lépcsőből áll. Az első az, hogy a sok elvezetésben megtaláljuk melyik sejt mikor szólal meg. A második lépés az, hogy az azonosított sejtek milyen csoportokban szólalnak meg és ez hogyan függ össze az állat viselkedésével.

 

Magokat válogató gyerek kezének fotója.

Az első lépést a kutatók spike sorting-nak, azaz tüske válogatásnak hívják (tüske a kutatói szlengben az akciós potenciálok gyors kiugró jele az EEGben). Hívják még clusteringnek is, azaz csoportosításnak is a folyamatot. Sok szempontból hasonlít Hamupipőke munkájához, azaz, hogy a lencsét ki kell szedni a hamuból. Az extra gonoszság, amit a mostoha természet adott, az az, hogy nem egyfajta lencsét kell kiszedni, hanem sokat, és még azokat is különválogatni. Inkább hasonlít arra amikor az ember nem zárja be rendesen a szerszámosládáját és úgy kapja fel. Az eredmény: az összes különböző méretű fa és fémcsavar, anya, szög, tipli összeborul és válogathat az ember fél órát.

 

A tüskeválogatás lépései (egyetlen csatornán). Legfelől látható a zajos széles frekvencia tartalmú jel. A második sor mutatja, hogy a nagyfrekvenciás komponensek átengedésével megjelennek a sejtek gyors akciós potenciáljai. A harmadik sor egyetlen időpontban több csatornán detektált tüskék egymásra vetített képét mutatja. Ebből állítják össze az eseményt, melyet több dimenzióban helyeznek el(4. sor), majd a pontfelhőt egyedi sejtekre (unitokra) vágják (5. sor). A legalsó sorban két azonosított unit jelalkja látható.

A válogatás azzal kezdődik, hogy a rengeteg csatornán megkeresik azokat az időpillanatokat, amikor valamelyiken (vagy többön) egy gyors akciós potenciál látszik. Ezeket az időpontokat és a megjelenő jelalakokat megjegyzik, a jeleket nem tartalmazó szakaszokat eldobják. A továbbiakban már csak ezzel, a jelentősen kisebb és hasznosabb adathalmazzal foglalkoznak. Ez mondjuk annak felel meg, amikor Hamupipőke kiszitálja a hamut. Ez egy számításigényes lépés, de nem túl bonyolult. Nagyjából automatikusan zajlik.
Ezután kezdődnek a ravasz dolgok. Ugye az elektródáink elrendezése olyan volt, hogy lehetőleg egy sejtről több felvétel készüljön. A következő lépésben megkeresik azokat az időpillanatokat, amikor több elektródán (csatornán) is egyszerre látszik tüske. Amelyik tüske csak egy csatornán jelenik meg azt eldobják, mivel nehéz lenne kitalálni több hasonló ilyen jel csak egy sejttől jön, vagy több eltérő helyen levő sejt ad hasonló jelet (további adatcsökkenés). Az egy pillanatban több csatornán is megjelenő tüske alakokat összeolvasztják, ez lesz egy esemény.

Egy izolált unit 7 csatornáról elvezetett jelei. Több tucat egymés után mért akiós potenciál van egymásra rajzolva.

Ugye itt még nem tudjuk ez most egy vagy több sejt-e, de elkészítünk egy „képet”. Kicsit olyan, mintha több fotósunk lenne mondjuk egy hokimeccsen és minden gólról az összes fényképet egy fotóalbum külön oldalára tennénk. Aztán az eltérő szögből készült fotók nézegetésével próbálnánk meg kitalálni ki, honnan lőtte a gólt és ki, honnan adta a gólpasszt. Ugyanígy a tüskékről készült albumban sem tudjuk még melyik sejttől származnak a jelek. Sajnos itt nem 4-5 gólról van szó, hanem események tízezreiről, azaz kézzel válogatni esélytelen. Szerencsére léteznek olyan, viszonylag egyszerű, de sok számítást igénylő matematikai eljárások, amivel ezt a válogatást meg lehet csinálni. Ezek úgy működnek, hogy minden egyes tüskét, a jelalak tulajdonságainak függvényében elhelyeznek egy sokdimenziós térben (az egyes időpillanatban mért amplitúdókat felmérik egy-egy dimenzióra), majd megnézik, hogy a sok tüske által alkotott sokdimenziós pontfelhő felbontható-e elkülönülő részekre. Jelentkezzen az, aki háromnál több dimenzióban el tud képzelni ilyet 😊!

 

A jobboldalon 6 különböző színnel ábrázolt elválasztott sejt akciós potenciáljai láthatók 4 csatornáról (oszlopok). Bal oldalon felül az az ábrázolás látható amikor az első és negyedik csatornán mért jelnagyság alapján helyezék el a pontokat. Az alső részen a számítógép által legjobbnak talált dimenziók felőli nézet látható. Az egyes sejtekhez tartozó pontfelhőket (9 sejt, 9 felhő) egyedi színekkel azonosítja az ábra (csak 6 sejt esetében láthatóa az akciós potenciálok).

Márpedig a dimenziók száma nagy. Egy tüske, ami mondjuk 4 msecig tart, 6kHz-el vettek fel és 4 csatornán látszik, 6x4x4 adatponttal írható le, azaz 96 dimenzióban kell elhelyezni. Léteznek azonban dimenzió csökkentő matematikai eljárások, amelyek megkeresik melyek azok a dimenziók, amik mentén a tüskék elválnak, azokat megtartják, a többit eldobják (pontosabban beolvasztják). Akik tudják mi az a PCA, azoknak megsúgom, hogy azt használják. Ezek után már jelentősen kisebb dimenziókban kell elhelyezni a pontokat, szaknyelven kevesebb dimenzióba kell beágyazni az adatokat.

Ezután jön a felhőnézegetés. Próbájuk meg együtt 3 dimenzióban! Képzeljük el 3 elektródánk van, melyről egyetlen adatot, az adott pillanatban megjelenő tüske nagyságát (amplitudóját) olvasunk ki. Ezek után minden egyes tüskét egy ponttal fogunk jelölni egy 3 dimenziós térhálón. Az első csatornán mért amplitúdót az X, a másodikat az Y, a harmadikat a Z tengelyre mérjük fel. Így kapun egy 3D koordinátát, oda teszünk egy pöttyöt. Sok tüske pontfelhőt ad. Egy sejt jelei a 3 csatornán minden esetben ugyanakkora méret arányúnak várhatók, azaz a tér egyik részében lesznek, egy másik sejt jelei a tér egy másik részében. A számítógép ugyanezt meg tudja csinálni a 96 dimenzióból lecsökkentett, mondjuk 10-20 dimenzióban is.
A felhőt a számítógép a szerinte legjobban elkülönülő ponthalmazokra bontja. Egy-egy ponthalmaz feltételezése szerint egy-egy sejt tüskéiből áll.

Egy elektróda ráccsal mért akciós potenciál alakok egy idegsejt körül. Jól látszik hogy az egyes elektródák más alakúnak látják ugyanazt az akciós potenciált. A sejt testét és denritjeit szürke kör és vonalak jelzik.

De ezt sajnos még nem lehet elhinni, ugyanis biológiáról van szó, ahol egy sejt akciós potenciáljának alakja, a hálózat állapotának és az elektróda apró mozgásainak függvényében kicsit változik, aminek következtében a felhőbe kicsit elmosódva kerül bele. Az adatot tisztítani kell. Két hiba történhet. Egy sejt jeleit a számítógép két vagy több felhőrészbe helyezte (mert a jelalakjai időben változtak), ezeket össze kell olvasztani. Illetve az is lehet, hogy egy kupac pontot nem választott ketté és ezt nekünk kell kettévágni. Ebben az segít, hogy minden egyes tüskéről tudjuk mikor mértük. Ha felrajzoljuk az egyes feltételezett csoportokba tartozó sejtek tüzelésének egymáshoz képesti időpontját (kereszt-korrelációt, corss-correlation számolunk), illetve megnézzük egy csoporton belüli hogyan tüzelnek a sejtek (önkorreláció, autocorrelation) eldönthetjük, hogy vágni vagy összevonni kell csoportjainkat. Ehhez a válogatáshoz sok segítséget nyújt a számítógép, mivel könnyen emészthető módon ábrázolja a lehetőségeket, de még így is fáradtságos nagy koncentrációt igénylő feladat, amit sajnos az AI még nem váltott le.

 

Egy clusterező-tüskeválogató program képernyőjének elrendezése. A második oszlop felő ablaka mutatja két sejt szétválogatott tüskéit 11 csatornán. Mellette jobbra a sokdimenziós pontfelhő különböző dimenziók felől nézett nézetei. Alatta egy kiválastott nézet, az alatt pedig a sejtek tüzelésének grafikonjai. Jobboldalt az eredeti sokcsatornás elvezetés különböző nagyítású szakaszai. Ember legyen a fenekén (mert hogy sokat kell ülni), aki eligazodik!

 

Sokan Zen meditáció szerű relaxált állapotban csinálják ezt valamikor éjszaka amikor senki nem zavar. Volt, aki már arra is gondolt, hogy ír egy mobiltelefon app-ot és spike clusterező versenyt hirdet (citizen science).

 

Grafikus processzorok százait tartalmazó, párhuzamos adatfeldolgozásra alkalmas videokártya képe.

Persze itt is látványos fejlődés figyelhető meg, mivel egy igen együttműködő közösség dolgozik a feladaton. Mindenki forráskóddal és ingyen elérhetővé teszi mások számára az elemző programjait. Ennek megfelelően hatalmas ugrások következnek be amikor egy újabb eljárás megjelenik. Egyik ilyen a template matching, azaz minta illesztés eljárásának kifejlesztése volt. Itt egy algoritmussal létrehoznak tüskealakokat és a mért tüskéket hasonlóság alapján próbálják meg hozzárendelni ezekhez. Ez a megoldás jól párhuzamosítható, azaz a modern videokártyákban jelenlevő több száz GPUra egyszerre lehet az adat részeit kiküldeni és begyűjteni a megoldást. A GPUkat tartalmazó grafikus kártyákat most már tehát nem csak FPS játékokra és bitcoin bányászatra lehet használni, hanem az agy működésének kikémlelésére. Ennek eredményeként a korábban 1 napig tartó előfeldolgozást mostanra 20 percre sikerült leszorítani. Persze utána jön még az elkerülhetetlen kézi simítgatás.

A megtisztított adatok elemzéséről legközelebb.

 

Szerző: Gulyás Attila

Köszönet Varga Viktornak a segítségért

 
 

 

 

Korábbi hozzászólások
Még nincsenek hozzászólások
Új hozzászólás
A hozzászólások moderáltak, csak az Admin jóváhagyása után jelennek meg!