Evaluation of Progression of Single Units Waveform

Transkript

Evaluation of Progression of Single Units Waveform
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
České vysoké učení technické v Praze
Fakulta elektrotechnická
Diplomová práce
Analýza signálů biologických neuronů
Lukáš Tůma
Vedoucí práce: Ing. Božena Mannová, M.Math.
Obor: Výpočetní technika
Leden 2007
1
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Prohlášení:
Prohlašuji, že jsem svou diplomovou práci vypracoval samostatně a použil jsem pouze
podklady uvedené v přiloženém seznamu.
Nemám závažný důvod proti užití tohoto školního díla ve smyslu § 60 zákona č. 121/2000
Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých
zákonů (autorský zákon).
V Praze dne 8.1.2007
2
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Abstrakt
Jednotkové potenciály jsou elektrické fenomény zaznamenávané v okolí i uvnitř excitabilních
buněk (biologických neuronů). Vyhodnocení záznamu jednotkových potenciálů je zatíženo
značnou časovou náročností. V této práci byl vytvořen a implementován algoritmus pro
jejich semiinteraktivní vyhledávání, třídění a porovnávání jednotlivých záznamů mezi sebou.
Vyhledávání jednotkových potenciálů je prováděno pomocí charakteristických znaků
(výchylka, růst úseku křivky, asymetrie grafoelementů) úseku záznamu, jejichž hodnoty mohou
být přizpůsobeny aktuálním potřebám. Vybrané úseky záznamu jsou dále porovnávány a
tříděny pomocí modifikované umělé neuronové sítě (K-means, síť bez učitele) s opětovnou
možností interaktivní selekce požadované subpopulace. Dalším krokem je porovnávání a
třídění jednotlivých záznamů mezi sebou podle četnosti výskytu vyselektovaných
grafoelementů, mediánu jejich frekvence, amplitudy, frekvenčního histogramu. V programu
jsou implementovány nejen samotné výše uvedené postupy, ale i tabulkový výstup umožňující
provádět další výpočty (např. statistické) nad výstupy jednotlivých částí programu.
Abstract
Single Units are electrical phenomena recorded in the vicinity of excitable cells (biological
neurons) or inside them. Evaluation of single units waveform is burdened with enormously
time-consuming labour. In this work an algorithm of their semi-interactive tracking, sorting
and comparing of entire recordings among each other was created and implemented.
Tracking of single units is conducted using characteristic features (amplitude, steepness of
amplitude increase, asymmetry of elements) of points of the record. These can be adjusted
to relevant needs. Selected points are further compared and sorted on a modified artificial
neuronal network (K-means, network without teacher) with repeated possibility of selection
of desired subpopulation. In the next step, we compare and sort compare and sort individual
entire recordings among each other according to incidence of selected elements, their
frequency median, amplitude and frequency histogram. The program implements neither sole
proceeding stated above but also a table output facilitating further computations (e.g.
statistics) of outputs of particular sections of the program.
„Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.“
Albert Einstein
3
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obsah
Abstrakt...............................................................................................................3
Abstract............................................................................................................... 3
Obsah 4
Seznam obrázků................................................................................................. 6
1 Úvod 9
1.1 Současné možnosti hodnocení záznamu elektrické aktivity neuronů............................... 9
1.2 Biologické neurony a jednotkové potenciály.................................................................. 10
1.2.1 Anatomie neuronu.................................................................................................... 10
1.2.2 Fyziologie neuronu.................................................................................................. 10
1.3 Záznam elektrických projevů excitabilních buněk......................................................... 11
1.3.1 Rozdělení................................................................................................................. 11
1.4 Jednotkové potenciály..................................................................................................... 13
1.5 Ovlivnění jednotkové aktivity......................................................................................... 14
1.6 Parametry aktivity excitabilních buněk...........................................................................15
1.7 Praktické poznámky k záznamu jednotkových potenciálů............................................. 16
2 Vyhledávání grafoelementů v záznamu....................................................... 17
2.1 Současné trendy.............................................................................................................. 17
2.2 Implementace vyhledávání grafoelementů..................................................................... 17
2.2.1 Předzpracování......................................................................................................... 18
2.2.2 Vyhledávání příznaků.............................................................................................. 20
2.2.3 Porovnávání grafoelementů..................................................................................... 22
2.2.3.1 Umělá neuronová síť......................................................................................... 23
2.2.3.1.1 K-means..................................................................................................... 28
2.2.3.1.2 Analýza komponent................................................................................... 31
2.2.4 Interaktivní selekce vzorů........................................................................................ 32
2.2.5 Výstup...................................................................................................................... 32
2.2.6 Přehled zpracování záznamu.................................................................................... 32
2.3 Výsledky vyhledávání..................................................................................................... 33
2.4 Grafické uživatelské rozhraní......................................................................................... 34
3 Porovnávání záznamů jednotkových potenciálů......................................... 37
3.1 Motivace..........................................................................................................................37
3.2 Porovnání dynamiky změn..............................................................................................37
3.2.1 Porovnávané charakteristiky.................................................................................... 37
3.2.2 Porovnávání průběhu záznamu................................................................................ 38
3.2.3 Řetězec zpracování souboru jednotkových potenciálů............................................ 38
3.3 Výsledky porovnávání ................................................................................................... 39
3.4 Grafické uživatelské rozhraní......................................................................................... 41
4 Implementační dodatek................................................................................. 43
4
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
5 Závěr 44
6 Literatura........................................................................................................ 45
7 Poděkování...................................................................................................... 46
8 Příloha A (CD)................................................................................................ 47
9 Příloha B – stručný návod na ovládání programu...................................... 49
9.1 Vyhledávání grafoelementů............................................................................................ 49
9.2 Porovnávání záznamů..................................................................................................... 51
5
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Seznam obrázků
Obr 1.Schématické zobrazení neuronu [Šíma, Neruda: Teoretické otázky
neuronových sítí]............................................................................................... 11
Obr 2.Příklady sumačních záznamů elektrické aktivity buněk (vlevo EKG,
uprostřed EEG) a jednotkových potenciálů (vpravo)....................................12
Obr 3.Schéma synapse [Grau Lab, http://graulab.tamu.edu]...................... 13
Obr 4.Akční potenciál....................................................................................... 14
Obr 5.Jednotkové potenciály............................................................................14
Obr 6.Jednotkové potenciály v zašuměném signálu.......................................14
Obr 7.Ukázka histogramu rozdělení frekvencí záznamu jednotkových
potenciálů........................................................................................................... 15
Obr 8.Znalostní pyramida [Brát, Juřík: Speciální metody pro vyhledávání
v datech]............................................................................................................. 17
Obr 9.Předzpracování záznamu...................................................................... 19
Obr 10.K pojmu strmost (modře signál, zeleně strmost)...............................20
Obr 11.K pojmu amplituda (modře signál, zeleně strmost, šedivě baseline)
21
Obr 12.K pojmu symetrie, asymetrie okolí bodu (modře signál, zeleně
strmost) ..............................................................................................................21
Obr 13.Výpočetní složitost předzpracování záznamu....................................22
Obr 14.McCulloch-Pittsův perceptron [Šnorek et al.: Neuronové sítě a
neuropočítače]....................................................................................................23
Obr 15.Porovnání podobnosti vzorů – lineární vzdálenost, euklidovská
vzdálenost a vnitřní součin. Na levém obrázku je porovnávaný vzor
vyznačen tlustou červenou barvou, světle-modrý vzor je nejblíže
k porovnávanému vzoru v metrice vnitřního součinu, růžový vzor je
nejblíže v metrice euklidovské a lineární vzdálenosti. Na pravém obrázku
jsou vzdálenosti porovnávaného vzoru od ostatních vzorů ve všech třech
metrikách........................................................................................................... 25
Obr 16.Ukázka uniformity jednotkových potenciálů u vzorů v levém grafu
a rozmanitosti u vzorů v pravém grafu........................................................... 25
6
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obr 17.Ukázka rozložení vybraných bodů podle hlavních komponent a
odpovídající vzory jednotkové aktivity (vlevo dole amplitudy, vpravo dole
strmosti)..............................................................................................................27
Obr 18.Příklad třídění grafoelementů na neuronové síti NeuralZoom (učení
s učitelem), 4% chybně zařazených vzorů (čistý záznam). Vlevo
transformace vstupních vektorů do dvoudimenzionálního prostoru. Vpravo
neurony a jejich rozdělení (zeleně jsou zbarveny neurony, které odpovídají
hledaným grafoelementům)..............................................................................27
Obr 19.Příklad třídění grafoelementů na neuronové síti GAME (učení
s učitelem), 1,5% chybně zařazených vzorů (čistý záznam). Vlevo rozložení
hodnot odpovídající hledaným grafoelementům, vpravo naopak................ 28
Obr 20.Příklad třídění grafoelementů na neuronové síti Backpropagation
(učení s učitelem). Na levém obrázku struktura sítě, na pravém obrázku
průběh učení sítě................................................................................................28
Obr 21.Výpočetní složitost třídění na neuronové síti v závislosti na počtu
vzorů (neuronů)................................................................................................. 30
Obr 22.Výpočetní složitost třídění na neuronové síti v závislosti na počtu
zkoumaných úseků............................................................................................ 30
Obr 23.Pomocný graf určený k analýze shluků vzorů a úseků záznamu
pomocí zjednodušené analýzy hlavních komponent..................................... 31
Obr 24.Struktura věty ukládané sekvence vybraných bodů a jejich okolí..32
Obr 25.Operace prováděné při zpracovávání záznamu................................ 33
Obr 26.Porovnání úspěšnosti vyhodnocení čistého a zašuměného záznamu
34
Obr 27.Grafické uživatelské rozhraní programu pro výběr grafoelementů
35
Obr 28.Schéma zpracování souborů jednotkových potenciálů.....................39
Obr 29. Roztřídění devíti záznamů na dvě skupiny podle počtu
grafoelementů v časových úsecích. V tomto případě je škálování záznamů
potlačeno (násobení či dělení konstantou).......................................................40
Obr 30.Příklad roztřídění devíti záznamů na dvě skupiny podle mediánu
latence. V tomto případě je použito škálování záznamů............................... 40
Obr 31.Vývoj frekvenčního spektra záznamu, na ose x ( → ) je rozdělení
frekvenčního spektra, na ose y ( ) je čas a na ose z ( ↑ ) je počet úseků
7
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
spadajících do jednotlivých částí histogramu, jako příklad datového
výstupu programu............................................................................................. 41
Obr 32.Grafické uživatelské rozhraní programu pro porovnávání záznamů
42
Obr 33.Vyhledávání grafoelementů: hlavní okno – návod na ovládání
programu............................................................................................................51
Obr 34.Porovnávání záznamů:hlavní okno - návod na ovládání programu
53
8
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
1 Úvod
Průběh celé řady přírodních jevů lze zaznamenávat křivkou jejich průběhu v čase. Tato práce
se věnuje záznamu elektrických signálů dráždivých buněk a jeho vyhodnocení.
Elektrická aktivita neuronů je vysoce komplexní jev. Může nám připadat jako uspořádané
sekvence stereotypních vzorů, odpovědí na skupinu definovaných podnětů (např.
somatosenzorické evokované potenciály). Činnost biologických neuronů je ale tak
komplikovaná, že se nám zčásti jeví i jako stochastický (nedeterministický) proces (příkladem
je aktivita v asociačních kortikálních prefrontálních oblastech). Tento vjem je ale spíše
zakotven v omezeném porozumění významu provázanosti buněčných dějů, které jsou již
dobře prozkoumány, pro funkci mozku. Protože jsme schopni analyzovat jen několik dějů
paralelně, soustřeďujeme se na jejich extrémně detailní analýzu. (Albert Einstein: „Das,
wobei unsere Berechnungen versagen, nennen wir Zufall.“).
Zaznamenávaný signál je vždy zašuměn. Obsahuje tedy i aktivitu, kterou nesledujeme a která
nám znesnadňuje vyhledání základní aktivity. Porovnání průběhu záznamu elektrické aktivity
neuronů má zásadní význam pro experimentální praxi. Změna charakteru aktivity (amplitudy,
frekvence, latence vln) může pramenit v experimentálním zásahu. Takto vzniká možnost
porovnávat aktivitu buněk ve fyziologickém a modifikovaném prostředí, které modeluje
některé patologické stavy. Příkladem z reálného světa může být cerebrální ischémie (např.
v důsledku ischemické cévní mozkové příhody). Tento patologický stav umíme modelovat in
vivo (fototrombotická okluze cévy, podvaz cévy ... ) za průběžného snímání záznamu
elektrické aktivity postižených buněk.
Hlavním námětem této práce je návrh a implementace algoritmu umožňujícího vyhledání
grafoelementů v záznamu, jejich odlišení od šumu, srovnání aktivity neuronů a jejich
kategorizace do disjunktních tříd. Při vyhodnocení jsou použity algoritmy umělé inteligence
(neuronové sítě, analýza hlavních komponent), důležitou roli hraje i interakce uživatele při
nastavování kritérií výběru a třídění grafoelementů a záznamů. Algoritmus zpracování
záznamu je implementačně ztělesněn ve dvou programech odpovídajících dvoustupňové
analýze signálu. V práci jsou rovněž diskutovány fyziologické aspekty hodnocení elektrické
aktivity neuronů.
1.1 Současné možnosti hodnocení záznamu elektrické aktivity
neuronů
Hodnocením záznamu elektrické aktivity neuronů se zabývalo již řada autorů nejčastěji
z amerických výzkumných středisek. Algoritmy se obvykle zabývají detekcí grafoelementů
v určitém typu záznamu (viz dále). Kvalita různých implementací není ale srovnatelná.
Výsledek vždy závisí na kvalitě signálu, vzorkovací frekvenci, dostupu signálu od šumu, ale i
charakteru elektrické aktivity (typ neuronu a povaha jeho okolí). Rovněž srovnávané
charakteristiky se mezi pracemi liší, nejčastěji užívanými metrikami jsou senzitivita resp.
9
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
specificita, které se ve větších souborech pohybují kolem 65 – 80 %. Z užívaných metod
zmiňme např. spike detektory (Gotman, two-stage), které nabízí více variant vyhledávání
hrotů podle omezujících podmínek, či neuronové sítě, které skýtají široké téma
nealgoritmického způsobu vyhledávání na základě podobnosti. Posledně jmenované jsou
užity i v naší implementaci a budou dále diskutovány.
1.2 Biologické neurony a jednotkové potenciály
1.2.1 Anatomie neuronu
Morfologickým podkladem jednotkových potenciálů jsou neurony – obecněji všechny
dráždivé (excitabilní) buňky mezi něž patří i např. myocyty (svalové buňky). Neuron se
skládá z těla, dendritů a axonu. Axon je nejdelší výběžek, zprostředkovává fugální přenos
vzruchu. Obvykle je obalen myelinovou pochvou, která umožňuje zrychlení přenosu signálu
tzv. saltatorní vedení. Délka axonu na periferii může přesahovat délku jednoho metru,
rychlost vedení vzruchu přesahuje 100 m/s u tlustých (alfa) vláken. Z těla neuronu vystupují
ještě menší výběžky – dendrity. Může jich být značné množství, zprostředkovávají aferentní
dráhu. Tělo neuronu se již více podobá ostaním eukaryontním buňkám.
1.2.2 Fyziologie neuronu
Jednotkové potenciály jsou elektrické fenomény zaznamenávané v blízkém okolí
excitabilních buněk. Tyto fenomény, častěji v neurovědních disciplinách označované jako
grafoelementy, jsou základním projevem dráždivých buněk. Mezi excitabilní buňky řadíme
zejména neurony – nervové buňky schopné přenosu elektrického signálu až na metrové
vzdálenosti. Jejich činnost je založena na toku iontů iontovými kanály. Ty jsou lokalizovány
v neurolemmě, plasmatické membráně nervových buněk. Iontové kanály podléhají
biologickému řízení jednak napětím (voltage-gated) jednak ligandy (ligand-gated).
Speciálními typy kanálů jsou tzv. „leak channels“, které zůstávají otevřené pořád, a „stretchgated channels“, reagující na mechanické stimuly. Typickým napěťově řízeným kanálem je
natriový kanál v neurolemmě axonu, který je zodpovědný za neurofugální šíření signálu a tím
i interneuronální přenos vzruchu. Mezi kanály řízené ligandy patří například acetylcholinergní
receptor na postsynaptické membráně synaptické štěrbiny.
Činnost neuronu je komplexní, podléhá mnoha vlivům. Tomu odpovídá i široká paleta typů
neuronů s obecnou až vysoce specializovanou funkcí. Biologický neuron je ontogeneticky
stará záležitost – difúzní nervová soustava je popisována již u žahavců. Ve vývojové řadě
pozorujeme centralizaci a specializaci funkcí dráždivých buněk. Široká je i paleta
neuromediátorů, základní dělení je na inhibiční (GABA, acetylcholin ... ) a excitační
(glutamát, noradrenalin ...). Funkci neuronů ovlivňují i jiné látky – neuromodulátory, které
pouze ovlivňují přenos vzruchu. Zajímavostí je, že neuroendokrinní sekrece je jeden ze
způsobů endokrinní mezibuněčné signalizace. Mezi excitabilní buňky neřadíme jenom
samotné neurony – z neuroepithelu vznikají a migrují dále např. senzorické buňky. Rovněž
svalové buňky (myocyty) vykazují dráždivost.
10
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Přenos vzruchu mezi dvěma neurony je u savců s maximální převahou chemický, probíhá na
tzv. synapsi, přenos mezi neuronem a svalem na neurosvalové ploténce. Synapse se skládá
z presynaptické membrány (axonální button – konečné rozšíření axonu), synaptické štěrbiny
(extracelulární tekutina) a postsynaptické membrány (neurolemma druhého neuronu),
obsahuje ligand-gated kanály. Když vzruch dorazí na konec axonu, dojde k uvolnění
(exocytóze) mediátorů do synaptické štěrbiny. Mediátory se pak váží na receptory
v postsynaptické membráně a konečně dochází k otevření iontových kanálů a depolarizaci (v
případě excitace) či hyperpolarizaci (v případě inhibice) postsynaptické membrány. Vyvolané
změny membránového potenciálu se prostorově sčítají. Pokud v místě s nejnižším prahem
(tzv. iniciální segment) depolarizace překročí práh, vznikne akční potenciál, který má binární
povahu („vše nebo nic“) a díky voltage-gated channels se šíří bez dekrementu. Neuron má
tedy svou analogovou (vstupní) a binární (výstupní) část. Vlastnosti neuronu jsou
ovlivňovány i zvenčí řadou látek – neuromodulátorů. Toto vše podtrhuje komplexnost
signalizace v nervové soustavě.
Obr 1.Schématické zobrazení neuronu [Šíma, Neruda: Teoretické otázky neuronových sítí]
1.3 Záznam elektrických projevů excitabilních buněk
1.3.1 Rozdělení
Elektrické projevy neuronů se v dnešní době zaznamenávají více způsoby. Klinický a
experimentální přístup lze rozdělit podle makroskopické úrovně do následujících skupin:
1) Sumační záznam velké skupiny neuronů
a. Elektroencefalogram (EEG) – sumační záznam z povrchu hlavy / kalvy,
neinvazívní metoda, používaná v klinické praxi.
11
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
b. Elektrokortikogram (ECoG) – sumační záznam z povrchu mozku (cortex =
kůra), invazívní metoda, používaná experimentálně, elektrody je nutno uložit
na povrch mozku (na dura mater).
2) Jednotkové potenciály (SU – Single Units) – záznam akčních potenciálů jednoho
neuronu, měření lze provádět
a. Extracelulárně – mimo buňku
b. Intracelulárně – uvnitř buňky
c. Na membráně – iontové kanály, tzv. metody zámku (voltage-clamp, patchclamp)
3) Multiple unit activity – záznam malé skupiny neuronů, extracelulární záznam.
Podle původu vzniku vzruchu dělíme záznamy na:
1) Spontánní záznam – vzruchy vznikají spontánně, pro činnost nervové soustavy je
charakteristická mírně neuspořádaná elektrická aktivita. Vysoká neuspořádanost ale i
uspořádanost elektrické aktivity je výrazem patologie (např. epilepsie).
2) Evokované potenciály – elektrická aktivita je provokována definovaným podnětem.
Může se jednat o přímou stimulaci neuronu či skupiny neuronů (v našich
experimentech se jedná např. o stimulaci n.ischiadicus). V klinické praxi jsou
využívány např. visuální evokované potenciály (VEP) v diagnostice poruch zrakové
dráhy, či kmenové a sluchové evokované potenciály (BERA = brain stem evoked
response audiometry).
Obr 2.Příklady sumačních záznamů elektrické aktivity buněk (vlevo EKG, uprostřed EEG) a
jednotkových potenciálů (vpravo)
Nejenom samotné neurony ale i jiné dráždivé buňky mohou být předmětem záznamu
elektrické aktivity – snad nejznámějším záznamem elektrické aktivity je EKG
(elektrokardiogram), standardně dvanáctisvodový záznam sumární elektrické aktivity
kardiomyocytů. V klinické neurologii se uplatňuje myografie, záznam aktivity
12
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
rhabdomyocytů (buněk příčně pruhovaných svalových vláken), speciální formou je záznam
aktivity okulomotorických svalů.
1.4 Jednotkové potenciály
Jako jednotkové potenciály (SU – single units) označujeme záznam změn elektrického pole
jednoho nebo malé skupiny neuronů během akčního potenciálu, t.j. při depolarizaci
plasmatické membrány neuronu, která nastává při dosažení napěťové úrovně akčního
potenciálu sumací excitačních a inhibičních podnětů z přilehlých synapsí. V našem případě,
kdy zaznamenáváme extracelulární změny, se akční potenciál v záznamu projeví vznikem
hrotu („spike“) a repolarizační vlny („wave“). Na iontové úrovni odpovídá depolarizace
otevření natriových kanálů a proudu Na+ iontů od buňky (Na+ je extracelulární kationt). Tento
jev je následován přesunem kaliových iontů (K+ je intracelulární kationt) do extracelulární
tekutiny ve fázi zvané repolarizace. Iontová rovnováha na membráně se ustaluje pomocí ATP
dependentní Na+/K+ pumpy, čili za kontinuálního spotřebovávání energie. U kardiomyocytů
dochází při depolarizaci k uvolnění kalciových iontů ze sarkoplazmatického retikula, jehož
následkem dochází k prodloužení depolarizační fáze v tzv. fázi plateau. Fáze depolarizace a
repolarizace dohromady trvají okolo 1 ms, ale např. u kardiomyocytů kolem 300 ms
odpovídající QT intervalu na EKG křivce.
Obr 3.Schéma synapse [Grau Lab, http://graulab.tamu.edu]
13
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obr 4.Akční potenciál
Obr 5.Jednotkové potenciály
Obr 6.Jednotkové potenciály v zašuměném signálu
1.5 Ovlivnění jednotkové aktivity
Jednotková aktivita neboli záznam elektrické aktivity z blízkosti jedné buňky má
stochastický průběh. Jejich rozdělení by se dalo nejlépe přiblížit logaritmicko - normálním
rozdělením
14
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
His togram late ncí je dnotkových potenciálů
140
700
100
80
60
600
500
.
počet v kategorii .
800
120
Histogram latencí jednotkových pote nciálů
900
160
.
počet v kategorii .
180
400
300
40
200
20
100
0
0
1
2
3
4
k
5
0,5^x
6
7
8
9
1
10 11 12 13 14 15 16 17 18 19 20
2
3
4
5
6
7
8
9
10 11 12 13 14 15 16 17 18 19 20
k0,5^x dělení základního intervalu
dělení základního intervalu
Obr 7.Ukázka histogramu rozdělení frekvencí záznamu jednotkových potenciálů
s parametry X (průměr) a σ (rozptyl). Vzhledem ke složitému zapojení neuronů (mohou mít
stovky synapsí – vstupů) je ale vzor jejich aktivity komplexnější a někdy nelze k žádné známé
distribuci přirovnat. Rozdělení frekvencí jednotlivých výbojů je možno ovlivnit mnoha
způsoby. Například u epilepsie dochází k hypersynchronizaci a rytmicitě pulzů, které se pak
na sumačním záznamu (EEG nebo ECoG) zobrazují jako ostré hroty a vlny. Frekvence
výbojů je vyšší, ve frekvenčním spektru se objevuje ve větší míře uniformita. Frekvenci
výbojů je možno ovlivnit jak opakovanou stimulací buňky, umělou i biologickou, tak i
změnou vnějších podmínek (např. složení extracelulární tekutiny). Právě složení
extracelulární tekutiny je podstatným faktorem vzniku mnoha patologických stavů. Jmenujme
například cerebrální ischemii. Právě zde dochází v první řadě ke snížení přísunu kyslíku,
následkem čehož neurony po velmi krátké době podléhají nekróze (lytické, neprogramované,
smrti). Složení extracelulární tekutiny se mění postupně, nikoli skokově, stejně tak je
odstupňována odpověď neuronů na inzult.
1.6 Parametry aktivity excitabilních buněk
Jaké parametry aktivity neuronů je tedy možné experimentálně ovlivnit? Na sumačním
záznamu elektrické aktivity (EEG), kde nacházíme tzv. grafoelementy, můžeme
vyhodnocovat jejich
1)
2)
3)
4)
četnost (počet v určitém časovém úseku)
frekvenci (1/interval mezi jednotlivými výboji)
amplitudu signálu
tvar signálu – amplitudy a latence jednotlivých vln
Záznam aktivity jediné buňky je o mnoho jednodušší, hodnotit lze pouze
1) četnost (počet v určitém časovém úseku)
2) frekvenci (1/latence mezi jednotlivými grafoelementy)
15
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
3) vazbu na aktivitu jiné buňky, která může mít vliv
a. inhibiční t.j. čím větší aktivita první buňky, tím vyšší aktivita druhé buňky
b. aktivační t.j. opak a)
c. indiferentní t.j. buňky se navzájem neovlivňují
Hodnocení amplitudy jednotkového záznamu nenabývá významu. Akční potenciál buď
vzniká nebo nevzniká („vše nebo nic“). Amplituda signálu tedy více vypovídá o uložení
elektrody a kvalitě signálu. Vyskytuje se v čitateli vzorce pro výpočet odstupu signálu od
šumu (SNR)
- 10 * log ( hladina okolního šumu / hladina signálu sledované buňky )
To je důležité i pro vyhledávání jednotkových potenciálů a jejich odlišení od šumu pozadí.
Amplituda nám rovněž pomůže, když potřebujeme odlišit dvě aktivity v jednom záznamu.
Z výše uvedeného přímo vyplývá, že dvě jednotkové aktivity mohou mít velice podobný tvar
signálu, lišící se pouze o multiplikativní (i zápornou) konstantu, zatímco u sumačních
záznamů (EEG, EKG) pozorujeme výrazné interindividuální morfologické rozdíly mezi
jednotlivými křivkami. Jednotková aktivita mění svou amplitudu v průběhu snímání záznamu.
To je dáno změnou geografické vzdálenosti od elektrody. Ta se může měnit při vzniku
drobného perifokálního edému či v rytmu pulzace blízkých cévních svazků. Odlišnosti ve
tvaru signálu extracelulárně zaznamenávaných akčních potenciálů mohou vznikat na podkladě
různé polohy elektrody v elektrickém poli příslušného neuronu.
Vzájemná vazba aktivity dvou buněk v jednom záznamu probíhá v krátkodobém pohledu
nejčastěji přes jejich synaptické spojení (ev. zprostředkovaně ještě přes jinou buňku). V řádu
minut se aktivita dvou geograficky blízkých buněk mění na základě složení okolního
prostředí. Při lýze buňky dochází k salvě výbojů, po které aktivita úplně vymizí. Jejím
podkladem je influx natriových kationtů do buňky, způsobující zvýšení klidové hodnoty
napětí na membráně a snazší dostupnost akčního potenciálu.
1.7 Praktické poznámky k záznamu jednotkových potenciálů
Cestu mezi snímáním elektrické aktivity neuronů a vlastním záznamem vytváří obecně známý
řetězec předzpracování signálu. Vzhledem k nízké amplitudě jednotkových potenciálů
(desítky mikrovoltů) je nutné velké zesílení signálu před vstupem do analogově digitálního
převodníku s rozsahem vstupního napětí +/- 5V. To klade značné nároky na kvalitu
skleněných elektrod (dovolen je pouze malý rozsah impedancí), na prostředí, ve kterém
snímání probíhá (dobře odstíněná Farradayova klec a ostatní zařízení), ale i na zručnost a
zkušenost operátora. Rovněž tak i zkoumaný objekt musí být dobře chirugicky připraven
(šetrná trepanace kalvy), klidný (stupeň anestezie) a dostatečně fixovaný ve stereotaktickém
přístroji.
16
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
2 Vyhledávání grafoelementů v záznamu
2.1 Současné trendy
Vyhledávání grafoelementů v záznamu a vyhledávání závislostí a odlišností mezi skupinami
záznamů dobře odpovídá definici dataminingu, jak ji vytvořil v roce 1996 Fayyad:
„Datamining je netrivální proces zjišťování platných, neznámých, potenciálně užitečných a
snadno pochopitelných závislostí v datech“ (Fayyad, 1996)
Mezi metody dataminingu řadíme: [Brát, Juřík: Speciální metody pro vyhledávání v datech]
1)
2)
3)
4)
5)
6)
7)
regresní analýzu
rozhodovací stromy
rozhodovací pravidla, asociační pravidla
metody založené na analogii
induktivní logické programování
analýzu hlavních komponent
neuronové sítě
Obr 8.Znalostní pyramida [Brát, Juřík: Speciální metody pro vyhledávání v datech]
2.2 Implementace vyhledávání grafoelementů
V této části je popsána implementace vyhledávání a výběru grafoelementů v záznamu
jednotkové aktivity.
Hned na úvod je důležité uvědomit si motivaci implementace algoritmu pro vyhledávání
grafoelementů. Představme si typický záznam aktivity neuronu z naší laboratoře. Má délku 20
minut (1200 s) a každý dvoutisící bod představuje grafoelement, který se má najít.
Prohlédnutí jednoho rámce, t.j. 5 s záznamu (při vzorkovací frekvenci 10 kHz to představuje
50000 bodů), kde se vyskytuje 25 grafoelementů. Jejich označení vyžaduje minimálně 10
17
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
minut práce, která se rovněž nedá vykonávat cyklicky a bezchybně po delší dobu. Celý
záznam je tak možné vyhodnotit za více jak 2400 minut, čili asi za dva dny nepřetržité práce.
Záznam je zpracováván následujícím řetězcem operací:
1)
2)
3)
4)
5)
Předzpracování záznamu
Vyhledávání příznaků
Porovnávání grafoelementů, rozdělení do tříd
Selekce subpopulace, event. opětovné rozdělení → 3)
Uložení výběru
2.2.1 Předzpracování
Předzpracování záznamu hraje významnou
předzpracování jsou:
roli v kvalitě vyhodnocení. Hlavními úkoly
1) Čištění dat: doplnění chybějících hodnot, identifikace a vyřazení odlehlých hodnot,
redukce šumu (clustering, binning), vyhlazení
2) Integrace dat: z více databází
3) Transformace dat: normalizace (maximum ... minimum, z-score, softmax scaling)
4) Redukce dat: snížení objemu dat, tak aby výběr produkoval stejné výsledky
V našem případě hraje hlavní roli vyhlazení zašuměného signálu. Do hry vstupují jak náhodné
šumy (bílý šum pozadí), tak i pravidelné signály jako např. pulsace cév či okolní síťové rušení
(50 Hz). Vytvořením plovoucí nuly (anglicky „baseline“) dosáhneme potlačení těchto
oscilací. Délku baseline můžeme volit dle aktuální potřeby. Čím méně bodů využijeme
k výpočtu plovoucí nuly, tím vyšší frekvence potlačíme. Přibližně lze říci, že počet bodů, ze
kterých se vypočítává baseline, by měl odpovídat alespoň délce periody rušivého signálu
s nejvyšší frekvencí. V praxi je nutné volit délku baseline i s ohledem na frekvenci hledaného
signálu, aby nedošlo k jeho zprůměrování. Experimentálně bylo zjištěno, že v našem
záznamu, kde vlna odpovídající akčnímu potenciálu odpovídá přibližně 10 až 40 bodům při
vzorkovací frekvenci 10 kHz, se optimální délka baseline pohybuje okolo 60 až 100 bodů.
Na záznamu jsou patrné rovněž i „rychlé“ artefakty v délce asi 1 – 2 bodů mající svůj původ
v bílém šumu z okolí. Tyto lze odstranit vyhlazením křivky, kterého docílíme, stejně jako
v předchozím případě, výpočtem klouzavého průměru z nejbližšího okolí. Termín nejbližší je
zase závislý na charakteru křivky, vzorkovací frekvenci atd. V našem případě se jeví jako
nejvhodnější zprůměrování 1 až 2 nejbližších hodnot.
18
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
vstupní záznam
strmost
vyhlazení
klouzavý průměr
odečtení klouzavého průměru
kritéria výběru
Obr 9.Předzpracování záznamu
19
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
2.2.2 Vyhledávání příznaků
Příznak je charakteristický znak vypovídající o určité vlastnosti bodu či skupiny bodů
v záznamu. Podle příznaku můžeme selektovat body, které jsou vhodné pro další zpracování.
Body se od ostatních mohou odlišovat ve všech charakteristikách uvedených v odstavci
„Parametry aktivity excitabilních buněk“. Kritéria pro naměřené hodnoty mohou být buď
v absolutních číslech (např. amplituda, strmost) nebo v číslech relativních (strmost před
zkoumaným bodem < k*strmost za bodem a vice versa). Mohou se také vztahovat k tvaru
signálu (hrot charakterizovaný tím, že hodnoty bodů v blízkém okolí mají nižší amplitudu).
V našem případě byla zvolena následující kritéria, která jsou všechna ekvivalentní (jsou
spojeny konjunkcí):
1) Kritérium strmosti
Strmost je definována jako derivace křivky v bodě (dx/dy), v našem nespojitém signálu
lépe ∂x/∂y či xk+i/2 – xk-i/2 / yk+i/2 – yk-i/2 , kde i odpovídá šířce okolí bodu. Vzhledem
k ekvidistantnímu vzorkování a konstantní (definované) délce okolí i bodu lze výpočet
zjednodušit na xk+i/2 – xk-i/2 . Rozhodovacím kritériem ale není jen absolutní hodnota
strmosti, důležitá je také symetrie strmostí. Výrazně asymetrické hodnoty svědčí spíše pro
artefakt. Jako kritérium symetrie volíme poměr strmosti před a po vyšetřovaném bodu a
naopak, který by neměl přesáhnou zvolenou hodnotu. V našich záznamech se jeví vhodné
hodnoty multiplikativní konstanty v oboru <6 .. 10>.
Obr 10.K pojmu strmost (modře signál, zeleně strmost)
2) Kritérium amplitudy
Amplituda je y-ová výchylka bodu od plovoucí nuly (baseline). Představuje druhé
základní kritérium pro výběr bodu. V našem případě je definovaná jako průměrná
výchylka bodu a jeho okolí i,
i/2
( ∑
yj ) / (i+1).
j=-i/2
které samozřejmě může mít i nulovou vzdálenost. Vzhledem k tomu, že se při výpočtu
velikost okolí bodu nemění, je možné při vzájemném porovnávání amplitud vypustit
20
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
dělení. Symetrie okolí bodu byla již diskutována v předchozím odstavci, nicméně i zde je
možno užít stejného kritéria, kde porovnáváme průměrnou amplitudu u bodů před
zkoumaným bodem s průměrnou amplitudou bodů za ním.
Obr 11.K pojmu amplituda (modře signál, zeleně strmost, šedivě baseline)
3) Kritérium extrému (hrotu)
Extrém funkce je definován jako bod, ve kterém nabývá první derivace nulové hodnoty.
Tak tomu je i u ekvidistantně vzorkovaného signálu. Derivaci nahradíme strmostí (viz
„Kritérium strmosti“) a můžeme konstatovat, že lokální extrém nalezneme mezi dvěma
body, pro které platí, že strmost jejich okolí nabývá opačného znaménka. Vzhledem
k odlišné definici okolí u kritéria strmosti a amplitudy nemusí být maximum záznamu ani
v jednom ze zúčastněných bodů. Může být umístěno v jeho bezprostřední blízkosti a zde
ho také nalézáme. Přesné vystředění extrému nebo maximální hodnoty je nezbytné v další
fázi při porovnávání jednotlivých úseků záznamu.
Obr 12.K pojmu symetrie, asymetrie okolí bodu (modře signál, zeleně strmost)
Vyhledávání bodů nemusí vždy napoprvé dopadnout nejlépe. Záznamy se mezi sebou liší,
proto je nutné u každého záznamu nastavit „rozlišovací úroveň“ podle aktuálního tvaru,
charakteru šumu, amplitudy hrotů atd. K tomu nám mohou pomoci předpočítané statistiky,
jako je průměrná amplituda a průměrná strmost, které jsou počítány při prvotním načtení
21
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
záznamu. Množství vybraných bodů se zobrazuje na „mapě“ záznamu ve formě histogramů
s volitelným počtem tříd. Je tudíž jednoduché nahlédnout shluky jednotkových potenciálů a
udělat si obrázek o tom, jaký typ hrotů a vln se v záznamu vyskytuje, a přiměřeně tomu
upravit kritéria výběru. Obecně vzato, kritéria výběru by měla mít lépe větší senzitivitu než
specificitu, falešně pozitivní body je možné následně odhalit v dalším kroku při porovnávání
grafoelementů. Nicméně, pokud si zvolíme zbytečně velký počet bodů, bude výpočet další
části trvat výrazně déle (viz. „Porovnávání grafoelementů“).
Složitost výpočtu kriterií roste řádově θ(n). Z okolí bodu je potřeba vypočítat baseline,
strmost a vyhladit křivku. Každá z těchto operací potřebuje pro každý bod 2 součty (přičtení
dalšího bodu a odečtení již neplatného bodu) a event. jednu operaci dělení. Dále se provádí
odečtení baseline od záznamu. Další operace porovnání okolí se provádějí jen u zlomku bodů,
které splňují kriterium nulové derivace a potřebují řádově tolik operací, jak veliké je
nastaveno okolí bodu (konstanta).
Výpočetní složitost předzpracování záznamu
500
450
400
čas (s) .
350
300
250
200
150
100
50
0
0,00
2,00
4,00
6,00
8,00
10,00
12,00
m iliony bodů
Obr 13.Výpočetní složitost předzpracování záznamu
Uvedené doby výpočtu jsou experimentálně změřené na přenosném počítači, CPU AMD
Sempron 3000+, který se svým výkonem v době psaní této práce řadí do „nižší třídy“.
Možnosti zrychlení samotného algoritmu by mohly spočívat v pouze částečném
předzpracování a „předvýběru“ grafoelementů a dalším „dopočítání“ pouze menšího počtu
vybraných bodů.
Při návrhu algoritmu jsme testovali i jiné metriky jako např. vyšší stupeň derivace, šíři hrotu
v definované úrovni od vrcholu atd., které, jak se ukázalo, mají v porovnání s výše uvedenými
kritérii zanedbatelný význam.
2.2.3 Porovnávání grafoelementů
Po vybrání bodů podle výše uvedených kriterií jsme si výrazně omezili počet bodů, se kterými
budeme počítat. To je velmi důležité, protože následující část, porovnávání grafoelementů se
vzory pomocí umělé neuronové sítě, je výpočetně náročná.
22
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
2.2.3.1 Umělá neuronová síť
Umělé neuronové sítě jsou výpočetní systémy, které jsou svou funkcí schopny principiálně
napodobovat funkci vyšších nervových soustav živočichů. Obecně vzato jsou od centrální
nervové soustavy živočichů velice vzdáleny. To platí samozřejmě i proto, že centrální
nervová soustava např. člověka není úplně prozkoumána, nelze ji tudíž ani dobře
napodobovat. Více se tedy jedná o zjednodušené přiblížení funkce jednoho neuronu a jejich
vzájemného zapojení. Nejjednodušším umělým výkonným prvkem je McCulloch-Pittsův
perceptron, popsaný již v roce 1943. Přenosová funkce tohoto základního stavebního kamene
je
N
S ( ∑ wi xi + θ )
i=1
kde
S je přenosová nelineární funkce
wi jsou váhy jednotlivých vstupů
xn jsou vstupy neuronu
θ je práh neuronu
Obr 14.McCulloch-Pittsův perceptron [Šnorek et al.: Neuronové sítě a neuropočítače]
Základní pracovní fáze umělé neuronové sítě jsou:
1) adaptivní fáze – fáze učení, tvarování paměti sítě, nastavování vah
2) aktivní fáze – fáze vybavování, výkonná fáze
Umělá neuronová síť sestavená z jednotlivých výkonných prvků v sobě na počátku nenese
žádnou informaci. Tu získává až při procesu učení. Rozeznáváme dva základní typy učení:
23
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
1) učení s učitelem – síti jsou předkládány jednotlivé vzory s požadovaným výstupem,
síť upravuje váhy tak, aby se výstup sítě lišil od požadovaného výstupu co nejméně.
Příklad: Backpropagation network (BP)
2) učení bez učitele – vzory jsou předkládány bez znalosti požadovaného výstupu, např.
u sítí s funkcí klasifikace vzorů do tříd. Váhy jsou obvykle nastavovány v průběh celé
aktivní fáze. Příklad: Self-Organizing Map (SOM)
V naší práci potřebujeme rozdělit vybrané body na základě jejich podobnosti (podobnosti
jejich okolí) do definovaného počtu tříd, tak abychom z nich posléze mohli některé třídy
vybrat a dále analyzovat. První otázka, kterou je nutno zodpovědět, zní, jak definovat a měřit
podobnost bodů a jejich okolí. V praxi můžeme najít více definic míry podobnosti. Mezi
nejpoužívanější patří:
1) eukleidovská vzdálenost, počítaná jako
N
dij = ║Xi - Xj║ = [ ∑ ( xin – xjn )2 ]1/2
n=1
2) vnitřní součin, definovaný jako
N
dij = XiT Xj = ∑ xin . xjn
n=1
který po vydělení
║Xi║ .║ Xj║
dává kosinus úhlu, který oba vektory svírají (skalární součin dvou vektorů).
V naší implementaci jsme se rozhodli jít vlastní cestou a definovat odlišnost dvou vzorů jako
lineární rozdíl vzdáleností odpovídajících bodů okolí vyselektovaného bodu. Tato definice je
spojena s minimální výpočetní složitostí. Provádí se řádově jen tolik základních operací
(sčítání, odčítaní), kolik je v definovaném okolí bodů. Součet rovněž nenabývá hodnot, které
by dávaly podnět k přetečení hodnoty součtu (na rozdíl od druhé mocniny u euklidovské
vzdálenosti).
24
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Vzory
lineární vzdálenost
euklidovská vzdálenost
Vzdále nos t vybrané ho vzoru
1500
6
1000
vnitřní součin
5
0
y
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33
vzor 1
vzor 2
vzor 3
-1000
vzor 4
vzor 5
vzor 6
-1500
vzor 7
vzor 8
-2000
vzor 9
x
porovnávaný
-500
vzdálenost .
500
4
3
2
1
0
1
2
3
4vzory5
6
7
8
9
Obr 15.Porovnání podobnosti vzorů – lineární vzdálenost, euklidovská vzdálenost a vnitřní
součin. Na levém obrázku je porovnávaný vzor vyznačen tlustou červenou barvou, světlemodrý vzor je nejblíže k porovnávanému vzoru v metrice vnitřního součinu, růžový vzor je
nejblíže v metrice euklidovské a lineární vzdálenosti. Na pravém obrázku jsou vzdálenosti
porovnávaného vzoru od ostatních vzorů ve všech třech metrikách.
Při rozhodování, zda použijeme neuronovou síť s učitelem nebo bez něho vycházíme z faktu,
že záznam jednotkových potenciálů se může v čase výrazně měnit (vyhodnocované záznamy
mají délku až půl hodiny). Není možné procházet záznam za účelem vyhledání vhodných
kandidátů na „správné“ a „špatné“ vzory. Navíc i nalezená aktivita se může měnit tak, že již
nebude rozpoznávána neuronem se „správným“ vzorem. Z podobného důvodu rovněž nelze
užít roztříděný výběr vzorů z jiného již vyhodnoceného záznamu. Řešením je síť bez učitele
s následným interaktivním výběrem vzorů (viz dále).
Obr 16.Ukázka uniformity jednotkových potenciálů u vzorů v levém grafu a rozmanitosti u
vzorů v pravém grafu
25
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Jakou neuronovou síť tedy nakonec zvolit k porovnávání jednotlivých vzorů. Vzhledem
k tomu, že se v záznamu bude vyskytovat více odlišných vzorů, je nutné užít
samoorganizující síť s vlastností shlukové analýzy umožňující na základě celočíselných
vstupů rozlišit (nebo lépe shluknout grafoelementy do) více vzorů. Ze známějších sítí
připadajících v úvahu máme na výběr:
1) SOM (Self-Organising Map) – shluková analýza, otázka organizace a sousednosti.
2) ART (Adaptive Rezonance Theory) – zajímavá paralela mechanismu dlouhodobé
potenciace (LTP) typické pro neurony hipokampu. Není stanovena horní hranice počtu
neuronů, obtížně odhadnutelná vzdálenost dvou vzorů, který by vedl na „rozumný“
počet neuronů.
3) Analýza hlavních komponent (PCA – principal component analysis), distribuce vzorů
podle dimenzí s největším rozptylem (viz obr.) Tato metoda je v naší práci užita
jenom jako pomůcka k následující síti.
4) Shluková analýza pomocí K-means algoritmu – zřejmě nejlepší řešení.
20
15
10
10
.
15
5
0
0
10
20
30
40
50
-5
-10
-15
-20
dimenze 2 - amplituda
.
dimenze 2 - amplituda -
Rozdě le ní bodů podle hlavních k om pone nt
Rozdělení bodů podle hlavních komponent
20
5
0
-10
-8
-6
-4
-2
-10
-15
-20
jednotkové potenciály
-25
-25
šum
-30
-35
-5 0
-30
-35
jednotkové potenciály
šum
dim enze 1 - s trm os t
dim e nze 1 - am plituda +
26
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Amplituda
Strmost
Obr 17.Ukázka rozložení vybraných bodů podle hlavních komponent a odpovídající vzory
jednotkové aktivity (vlevo dole amplitudy, vpravo dole strmosti)
Obr 18.Příklad třídění grafoelementů na neuronové síti NeuralZoom (učení s učitelem), 4%
chybně zařazených vzorů (čistý záznam). Vlevo transformace vstupních vektorů do
dvoudimenzionálního prostoru. Vpravo neurony a jejich rozdělení (zeleně jsou zbarveny
neurony, které odpovídají hledaným grafoelementům).
27
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obr 19.Příklad třídění grafoelementů na neuronové síti GAME (učení s učitelem), 1,5%
chybně zařazených vzorů (čistý záznam). Vlevo rozložení hodnot odpovídající hledaným
grafoelementům, vpravo naopak.
Obr 20.Příklad třídění grafoelementů na neuronové síti Backpropagation (učení s učitelem).
Na levém obrázku struktura sítě, na pravém obrázku průběh učení sítě.
2.2.3.1.1 K-means
Naše implementace využívá poslední zmiňované možnosti – shlukové analýzy metodou Kmeans. Porovnáváme jednotlivé úseky se vzory (představující jednotlivé neurony umělé sítě).
V případě, že se nový úsek liší od nejbližšího vzoru méně nežli se liší jednotlivé vzory mezi
sebou, přiřadíme úsek k onomu vzoru. Nalezený vzor je upraven směrem k nově přiřazenému
úseku. Váha pro úpravu bodů nalezeného vzoru odpovídá počtu úseků, které daný vzor
„pohltil“. Tím rovněž dosahujeme konvergence v čase: čím později úsek vzoru přiřazujeme,
28
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
tím více již má daný vzor „nasbíráno“ podobných úseků a má tudíž i větší „váhu“ a menší
„ochotu“ měnit tvar své křivky.
Úseky, jejichž vzdálenost od nejbližšího vzoru je větší než nejmenší aktuální známá
vzdálenost mezi vzory, založí nový neuron. Vzhledem k tomu, že takto by nám počet neuronů
rostl nade všechny meze, což by vedlo k výraznému zpomalení výpočtu a nepřehlednosti, je
nutné nadbytečné vzory slučovat. Slučujeme opět zase vždy dva nejbližší vzory do jednoho.
Váhy pro slučování bodů opět nastavujeme podle počtu úseků, které se k tomu kterému vzoru
přiřadily.
Klasifikace vzorů na neuronové síti je výpočetně složitá. Bez předzpracovaných dat by nebyla
časově možná. Složitost třídění na neuronové síti můžeme jen přibližně odhadnout – konečný
výsledek pak závisí na tvaru porovnávaných úseků.
Zaveďme počet buněk b, počet úseků k porovnání u. Každý úsek je nejprve porovnáván se
všemi buňkami t.j. bn operací. Pouze pro část úseků je nutno vytvořit vlastní vzor. Při tom se
zvýší počet neuronů o 1 a je tudíž třeba dva neurony spojit. Při vyhledávání nejbližších dvou
neuronů provedeme porovnání každý s každým, čili všechny kombinace po dvou.
n! _
n
n(n-1) + (n-1)(n-2) + ... + 2*1 = k = k!(n-k)!
=
b! _
b
= 2(b-2)!
2
=
b*(b-1)
2
Počet těchto porovnání roste , jak se dalo předpokládat, přibližně kvadraticky s počtem buněk.
Celková složitost výpočtu tedy bude
b*(b-1)
k1 * bn +
k2 *
+ k3
2
kde k1, k2 a k3 jsou konstanty. Tuto operaci je (zhruba vyjádřeno) potřeba aplikovat na každý
zkoumaný úsek, t.j. u krát.
u *
k1 * bn
+
k2 *
b*(b-1)
2
+ k3
+
k4
Z výše uvedeného je zřejmé, že třídění úseků má polynomiální složitost, a řádově roste
přibližně kvadratickou rychlostí v závislosti na počtu buněk a lineární rychlostí v závislosti na
počtu zkoumaných úseků. Empiricky se jeví jako dobrý odhad konstant (závislost času
potřebného k výpočtu na počtu vzorů)
čas = ( b2 + 3,9b + 16,6 ) * kn kde kn je konstanta odpovídající počtu úseků
29
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Výpočetní složitost v závisloti na počtu vzorů
.
400
350
300
250
200
150
100
50
0
výpočetní čas (s)
y = 0,0179x2 + 0,6991x + 2,964
y = 0,0061x2 + 0,2455x + 1,1703
0
20
40
počet vzorů
60
80
100
120
Počet porovnávaných úseků
6998
2442
140
5190
438
Obr 21.Výpočetní složitost třídění na neuronové síti v závislosti na počtu vzorů (neuronů)
Pokud provedeme lineární korelaci výpočetní složitosti třídění s konstantním počtem buněk,
potvrdíme již výše uvedený odhad lineární závislosti (p<0,001).
Výpočetní složitost v závislosti na počtu úseků
300
10x
15x
250
výpočetní čas (s)
.
20x
25x
200
30x
150
40x
100
50x
60x
50
70x
80x
0
0
1
2
3
4
5
počet úseků (tisíce)
6
7
8
90x
100x
Obr 22.Výpočetní složitost třídění na neuronové síti v závislosti na počtu zkoumaných úseků
čas = k1 * u + k2
Konstanta k2 je tak malá, že ji můžeme zanedbat, konstanta k 1 je závislá na počtu vzorů
(neuronů).
Porovnání úseků záznamu se vzory je možné v programu zvolit buď na základě jejich
předzpracovaného záznamu nebo vypočtené strmosti úseku.
30
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Výpočetní časy uvedené v grafech byly dosaženy na pomalém přenosném počítači. I tak jsou
z hlediska obsluhy programu vyhovující. Možnosti zrychlení samotného algoritmu vidíme ve
zvětšení variace počtu neuronů, která by umožnila provést porovnávání jednotlivých vzorů
mezi sebou v delších intervalech.
2.2.3.1.2 Analýza komponent
Pro usnadnění orientace ve spleti vzorů jsme do programu přidali možnost vynesení
komponent jejich dvou vektorů (úsek vyhlazeného záznamu a strmosti) do dvojrozměrného
grafu – simplifikovaná obdoba PCA (Analýza hlavních komponent, angl. Principal
Component Analysis). V okně pod grafem zobrazujícím jednotlivé buňky se nalézá
přehledový graf součtu vzdáleností všech vzorů v daném bodě, jak pro vyhlazený záznam tak
i strmost. Výběr bodů, které budou vyneseny do grafu, závisí na charakteru záznamu. Uživatel
může vycházet jak z přehledového grafu, tak i z grafu záznamů; vybírá tak místa, která jsou
z hlediska odlišnosti jednotlivých vzorů nejpopisnější. V grafu analýzy hlavních komponent
je možno provádět výběr jak vzorů (jednotlivé buňky) tak i jednotlivých úseků v záznamu.
Výsledek výběru vzorů je možno zobrazit v základním grafu vzorů na hlavním panelu.
Jednotlivé úseky odpovídající vybraným bodům záznamu je možno označit a vypustit. To má
další výhodu: pokud dva blízké shluky pokrývá jeden vzor, můžeme vybrat jen požadovanou
část bodů.
Obr 23.Pomocný graf určený k analýze shluků vzorů a úseků záznamu pomocí zjednodušené
analýzy hlavních komponent
31
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
2.2.4 Interaktivní selekce vzorů
Roztřídění vybraných úseků záznamu na neuronové síti nemusí být definitivní. Můžeme
například chtít vybrat jen určitou subpopulaci evokovaných potenciálů, která se nám zobrazila
do jednoho či více vzorů. I na toto je v naší práci myšleno. Výběr vzorů a jejich další analýza
má i jiný význam - urychluje vyhodnocení. Jak bylo již dříve uvedeno, časová složitost třídění
roste kvadraticky s počtem vzorů a lineárně s počtem tříděných úseků. Zjednodušeně řečeno,
pokud bychom chtěli 2n úseků rozdělit na 2k typů, které se do tříd rozdělí rovnoměrně, zabere
nám to řádově 2n * 4k2. Pokud to provedeme nadvakrát – rozdělením 2n úseků na k typů,
vybráním subpopulace a opětovným rozdělením n úseků na k typů – zabere nám to 2n * k2 + n
* k2 = 3n * k2 a to je méně jak polovina. Interaktivní výběr vzorů rovněž přináší další
možnost, jak se zbavit artefaktů – ty jsou často výrazně odlišné od hledaných evokovaných
potenciálů a zobrazí se tudíž na jiné vzory.
V programu je výběr vzorů umožněn více způsoby. Nejjednodušší je vybrání jednoho či
skupiny vzorů označením či tažením kurzorem. Program nabízí i možnost provést inverzi
výběru, namapovat barvy křivek grafu vzorů na body základního záznamu, spočítat vybrané
množství buněk atd., což výrazně ulehčuje výběr.
2.2.5 Výstup
Výstupem programu je sekvence vybraných bodů s jejich okolím. Pořadí v původní
posloupnosti, vyhlazený záznam a vypočtená strmost okolí bodů jsou charakteristiky, které
jsou buď ukládány do binárního souboru (pořadí jako 32-bitové celé číslo následované body
jako 16-bitová celá čísla), nebo mohou být exportovány do textového pole jako celá čísla
oddělená tabulátorem. Odtud jsou pak přístupná dalšímu výpočtu ve statistických programech
a tabulkových kalkulátorech.
50 * 16b
50 * 16b
0
32b vyhlazený úsek záznamu
pozice v záznamu
strmost okolí bodů
Obr 24.Struktura věty ukládané sekvence vybraných bodů a jejich okolí
2.2.6 Přehled zpracování záznamu
Na závěr tohoto oddílu přinášíme pro přehled vývojový diagram operací prováděných nad
záznamem, tak jak zde byly postupně zmíněny.
32
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obr 25.Operace prováděné při zpracovávání záznamu
2.3 Výsledky vyhledávání
Problematika porovnávání kvality jednotlivých algoritmů vyhledávání grafoelementů
v záznamu není ještě dořešena. Je velký rozdíl porovnávat vyhodnocení čistého záznamu
s vysokým odstupem signál/šum a signálu zašuměného. V prvém případě můžeme mít 100%
úspěšnost, v případě druhém bude úspěšnost nižší. V literatuře se tzv. validace provádí ze
záznamů vyhodnocených několika nezávislými odborníky. Jejich ohodnocení se pak považuje
za správné. Validace je často následníkem trénovací fáze, ve které se podobně ohodnocené
záznamy předkládají arbitru (neuronové síti), která jim přizpůsobuje svou vnitřní strukturu
(váhy na vstupech Perceptronu, středy buněk mapy).
V našem případě závisí kvalita implementace i na operátorovi programu, na tom, jakou si dá
práci s nastavením parametrů předzpracování signálu, nebo jak využije možnosti
interaktivního výběru vzorů a jejich opakovaného třídění. Jako míru úspěšnosti vyhledávání
grafoelementů ( ale obecně i čehokoli jiného ) berme následující dvě hodnoty:
1) Senzitivita: říká, kolik bodů ze všech správných algoritmus správně vybere
počet správně označených bodů
počet všech správných bodů
2) Specificita: říká, kolik bodů ze všech nalezených je skutečně správně nalezených
počet správně označených bodů
počet všech označených bodů
33
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Senzitivita
Specificita
Čistý záznam
1,0
1,0
Středně zašuměný záznam
0,98
0,96
Ukázka
Obr 26.Porovnání úspěšnosti vyhodnocení čistého a zašuměného záznamu
Mezi specificitou a senzitivitou lze plynule přecházet: volbou parametrů vyhledávání můžeme
snižovat specificitu a zvyšovat senzitivitu a naopak.
Na závěr můžeme říci, že kvalita vyhodnocení záznamu je dostatečná. Je zřejmě srovnatelná i
s hodnocením nezávislými pozorovateli. U nezašuměného signálu není pochyb o tom, kde se
vyskytuje grafoelement, u zašuměných signálů je hodnocení záznamu nejednoznačné, shoda
není ani při manuálním hodnocení.
2.4 Grafické uživatelské rozhraní
Grafické uživatelské rozhraní je řešeno ve stylu ovládacího panelu, na kterém jsou všechny
potřebné ovládací i zobrazovací prvky viditelné bez dalších zbytečných „kliků“ na záložky
nebo podformuláře. V levém sloupci je umístěn výběr souboru ke zpracování včetně listování
systémem souborů. Iniciální adresář je kořenový adresář programu. Dvojitým klikem na
soubor dojde k jeho načtení a vypočítání základních statistik.
V pravém horním okně se nachází graf se záznamem. Elektivně se zobrazuje vyhlazená
křivka, průběžná strmost a plovoucí nula, jejichž barvy jsou zvoleny tak, aby umožňovaly co
největší přehlednost. Barvy křivek je rovněž možno změnit. V grafu se rovněž zobrazují
nalezené body včetně jejich barevného přiřazení vzorům. V okně grafu je sice možný výběr a
mazání nalezených bodů, i když tato funkce v praxi nenabývá většího významu; bodů
k označení je mnoho a úkolem programu je, aby se postaral o usnadnění jejich výběru. Křivku
je možno přibližovat, oddalovat a posouvat.
Podlouhlé okno grafu uprostřed panelu slouží k náhledu záznamu. Zobrazuje polohu horního
grafu v celé délce záznamu. Ukazuje i histogram počtu vybraných bodů, velikost jednoho
okna histogramu je možné zvolit.
Největší část panelu je vyhrazena porovnávání okolí vybraných bodů na neuronové síti.
Tématicky se točí okolo grafu vzorů, které představují jednotlivé buňky. Jednotlivé parametry
se nastavují na nejbližším panelu (nalevo od grafu), kde se i spouštějí jednotlivé operace nad
34
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
polem vzorů. Přímo v okně grafu je možno tahem myši vybírat skupinu vzorů či zaklikáním
jednotlivé exempláře. Podle vzorů lze barevně odlišit vybrané body v záznamu v horním
grafu. Vybrané záznamy lze opakovaně třídit (nevybrané vzory jsou smazány) do čím dál
větších podrobností. Tloušťka čar v grafu vypovídá o relativní síle vzorů (počtu podobných
bodů)
Výběr bodů ze základního záznamu se provádí na základě parametrů na panelu v pravém
dolním kvadrantu. Zde je umístěno i průběžné zobrazení postupu vyhodnocení (tzv. „progress
bar“).
Úplně při dolním okraji panelu se nachází náhled rozdílu mezi jednotlivými vybranými body
okolí. Slouží k nastavení parametrů pro komponentní analýzu – nadstavbu výběru vzorů
v grafu. Kliknutím na tlačítko PCA se zobrazí rozložení bodů dle dvou hlavních (vybraných)
komponent. I v tomto grafu je možný manuální výběr vzorů určených k další analýze.
Textový výstup umístěný při samém pravém okraji panelu umožňuje zobrazení vypočítaných
hodnot: vybraných bodů, bodů podobných vybraným vzorům, křivky vzorů. Při operacích nad
většími množinami prvků je možno textové pole schovat (nezobrazovat) a urychlit tím i
vlastní výpočet. Obsah textového pole lze jedním kliknutím zkopírovat do schránky a přímo
přenést od jiného programu (typicky tabulkového kalkulátoru k dalšímu vyhodnocení).
Obr 27.Grafické uživatelské rozhraní programu pro výběr grafoelementů
35
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Okno grafu obsahuje mnoho ovládacích a zobrazovacích prvků a nelze ho zvětšovat ani
zmenšovat. Velikost panelu je optimalizována pro rozlišení monitoru 1280 x 800 bodů.
36
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
3 Porovnávání záznamů jednotkových potenciálů
3.1 Motivace
Dalším stupněm vyhodnocení záznamu jednotkových potenciálů je porovnání vývoje
grafoelementů v časovém měřítku. Klademe si otázku, zda se nějak liší charakteristiky
jednotkových potenciálů na začátku a konci záznamu, či v jiných dvou časových úsecích.
Důvodem je experimentální metodika. Porovnáváme totiž reakci experimentální skupiny na
experimentální zásah, v našem případě vyvolání ischémie, s reakcí kontrolní skupiny. Rozvoj
ischémie v oblasti, jejíž zdrojová tepna byla trombotizována, vyvolává postupné změny.
Objekty experimentální skupiny by tudíž měly mít jiný vzor rozvoje postischemických změn
než kontrolní skupina. Z faktů zmíněných v odstavci o fyziologii neuronu vyplývá, že
hlavním sledovaným parametrem je četnost grafoelementů a rozložení jejich frekvenčního
spektra. Hodnota amplitudy, ačkoliv je v programu rovněž implementována, nemá u
jednotkových potenciálů výpovědní hodnotu. Hovoří spíše o změně kvality záznamu během
registrace následkem poškození buňky či vzdálení buňky od elektrody např. z důvodu rozvoje
fokálního edému.
3.2 Porovnání dynamiky změn
Při porovnávání dynamiky změn jednotkové aktivity srovnáváme vždy více záznamů mezi
sebou, snažíme se najít podobnost a záznamy přiřadit k jednotlivým vzorům. Opět provádíme
tzv. „cluster analysis“ neboli analýzu shluků. Znovu zde musíme zavést měřítko podobnosti
dvou záznamů. Zde máme k dispozici více charakteristik, které vedou i na více definic
podobnosti. Aktuální výběr porovnávané hodnoty závisí na charakteru záznamu a je plně
v režii operátora programu.
3.2.1 Porovnávané charakteristiky
Při výběru porovnávaných charakteristik jsme vycházeli ze základní funkce neuronu stran
jejich odlišení.
1) Maximální amplituda je metrika, kterou jsme v programu implementovali pro event.
další rozšíření do budoucna. Nutno poznamenat, že vzhledem k fyziologii neuronů je
tato charakteristika málo přínosná.
2) Počet grafoelementů v časovém úseku je užitečná charakteristika, která ukazuje na
vývoj intenzity elektrické aktivity jednotlivých buněk.
3) Sloupec histogramu frekvencí s maximálním počtem grafoelementů. Zde se zobrazuje
a porovnává poloha sloupce s maximálním počtem grafoelementů. Jednotlivé úseky
histogramu jsou odstupňovány exponenciálním zmenšováním základního úseku délky
u, t.j. n-tý úsek odpovídá rozmezí hodnot
< ek^n ; ek^(n+1) ),
37
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
kde n je počet úseků histogramu a konstanta k leží na ( 0 ; 1). Zjemnění dělení úseků se
dosáhne zvýšením hodnoty multiplikativní konstanty k a počtu úseků histogramu u.
4) Medián a průměr frekvencí (latencí). Charakteristiky střední hodnoty výběru. Průměr
je veličina používaná u normálního rozložení, naproti tomu medián nevytváří žádné
předpoklady o typu rozdělení hustoty.
3.2.2 Porovnávání průběhu záznamu
Porovnávání průběhu záznamu probíhá obdobně jako při vyhledávání grafoelementů
v záznamu jednotkových potenciálů. Opět využíváme algoritmu K-means a dopomáháme si
analýzou hlavních komponent (PCA, Principal Component Analysis). Vybrané záznamy se
přiřadí k jednotlivým vzorům podle jejich podobnosti. Jednotlivým záznamům lze volitelně
měnit měřítko v zadaném rozsahu tak, aby se lépe porovnaly s určitým vzorem. Vzory lze
vybírat a znovu rozdělovat a hledat drobnější změny. K usnadnění výběru správných vzorů
slouží i okno analýzy hlavních komponent souboru záznamů s jejich dvourozměrnou projekcí.
Program umí nabídnout vektory s největším rozptylem (či lineárně definovanou vzdáleností),
ale konečné rozhodnutí o jejich užití či přizpůsobení závisí na uživateli. Okno náhledu
zobrazuje průběžnou vzdálenost vzorů v čase, slouží tedy rovněž k volbě správných vektorů
pro analýzu hlavních komponent.
3.2.3 Řetězec zpracování souboru jednotkových potenciálů
Na následujícím obrázku je výstižně naznačen řetězec zpracování souborů jednotkových
potenciálů za účelem jejich porovnání a nalezení závislostí mezi nimi, který se skládá z:
1) Načtení souborů s časovou značkou bodu a s jeho okolím.
2) Vypočtení charakteristik jednotlivých záznamů (viz výše) a jejich zobrazení
v grafu
3) Třídění záznamů podle vypočtených charakteristik.
i. Třídění na neuronové síti K-means (učení bez učitele) s euklidovskou
nebo lineární metrikou
ii. Výběr hlavních komponent. Záznamy jsou zobrazeny jako
dvourozměrné vektory v místech největšího rozptylu zkoumané
charakteristiky.
4) Výběr vzorů a k nim příslušných záznamů a jejich opětovné třídění.
5) Uložení výstupních dat. Probíhá formou přenosu tabulek přes schránku do
jiných programů (nejčastěji tabulkového kalkulátoru), kde jsou data okamžitě
přístupná k dalšímu využití.
38
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obr 28.Schéma zpracování souborů jednotkových potenciálů
3.3 Výsledky porovnávání
Z předběžných výsledků je zřejmé, že program umí dobře sdružovat podobné vzory vývoje
jednotkové aktivity v čase podle zadané metriky. Vzhledem ke složité interpretaci výsledků
podobnosti jednotlivých záznamů zde uvádíme pouze příklad vyhodnocení skupiny záznamů.
Tudíž nelze tomto případě vyhodnotit ani „úspěšnost“ třídění.
39
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obr 29. Roztřídění devíti záznamů na dvě skupiny podle počtu grafoelementů v časových
úsecích. V tomto případě je škálování záznamů potlačeno (násobení či dělení konstantou).
Obr 30.Příklad roztřídění devíti záznamů na dvě skupiny podle mediánu latence. V tomto
případě je použito škálování záznamů.
40
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obr 31.Vývoj frekvenčního spektra záznamu, na ose x ( → ) je rozdělení frekvenčního
spektra, na ose y ( ) je čas a na ose z ( ↑ ) je počet úseků spadajících do jednotlivých částí
histogramu, jako příklad datového výstupu programu.
Z analýzy funkce algoritmu vyplývá i úvaha o jeho složitosti. Je zřejmé, že výpočet
průběžných charakteristik vykazuje linerální složitost O(d) v závislosti na celkovém počtu
bodů všech záznamů d.
N
d = ∑ li ,
n=1
kde li je počet bodů záznamu i, a N je počet všech záznamů.
Složitost porovnávání charakteristik záznamů a jejich třídění je obdobná jako u třídění
grafoelementů (viz výše). Rozdíl je v tom, že nyní již porovnámáme řádově maximálně
desítky úseků s jednotkami vzorů. Proto je složitost třídění záznamů z praktického hlediska
nevýznamná.
3.4 Grafické uživatelské rozhraní
Grafické uspořádání panelu je podobné tomu v předchozím případě (vyhledávání
jednotkových potenciálů v záznamu). Program je řešen jako jeden panel, kde jsou všechna
důležitá tlačítka a grafy. Jediné samostatné okno (modální dialog) představuje analýza
hlavních komponent. Jednotlivé části jsou graficky oddělené. V levé části jsou opět okna
určená k výběru sekvencí k porovnání. Jejich seznam, do kterého lze přenést i více jmen
souborů najednou, je zobrazen v levém horním rohu. Sekvence zobrazené v okně lze
exportovat ve formátu textu odděleného tabulátory. V další fázi se provádí počítání
charakteristik. Výpočet je rychlý, proto se počítají všechny dosažitelné charakteristiky
najednou. Jejich tvar se následně zobrazí v horním grafu. Oba zobrazené grafy mohou být jak
41
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
dvou- tak i třírozměrné, linky mohou mít charakter „schodů“, čímž naznačují tvar histogramů.
Pro větší přehlednost je iniciálně zvolen třírozměrný graf. Sekvence je možno třídit v pravé
dolní části okna, kde je i graf zobrazující vygenerované vzory. V grafu je možno označovat či
odznačovat jednotlivé vzory pomocí kurzoru myši. Úzký graf napravo dole ukazuje celkovou
odchylku vzorů od sebe. Tím usnadňuje výběr bodů pro event. další analýzu hlavních
komponent. Program má i textový výstup, který lze pro urychlení některých operací skrýt.
Textové pole plně spolupracuje se schránkou (clipboard) a umožňuje tak přenos dat do jiných
programů k dalšímu využití.
Obr 32.Grafické uživatelské rozhraní programu pro porovnávání záznamů
42
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
4 Implementační dodatek
Všechny výše uvedené algoritmy jsou zapouzdřeny do dvou programů. První vyhledává
podobné skupiny grafoelementů v jednom záznamu. Druhý porovnává jednotlivé záznamy
mezi sebou, jejich vývoj v čase. Rozdělení analýzy do dvou stupňů je v tomto případě velmi
výhodné: oba představují ucelený soubor funkcí vystavěný nad odlišnými typy záznamů.
Výhodné je i to, že obě subjednotky představují každá ucelený a přehledný operační panel se
všemi funkcemi dostupnými najednou. Od objektivního hodnocení tzv. „usability“ však
pro úzce omezený okruh potencionálních uživatelů ustupujeme.
Formátem vstupního souboru prvního programu je posloupnost 16-bitových celých čísel (se
znaménkem, „signed short integer“). Jednoduchý soubor s celými čísly je výhodný pro
zachování univerzality programu. Typ 16-bitového celého čísla byl zvolen na základě subtypu
námi často používaného formátu CFS (Cambridge Electronic Design Filling Systems), který
tento typ užívá.
Programy byly implementovány v jazyce C++, což je vyšší programovací jazyk s podporou
objektového programovacího stylu. Většího využití se dostalo tzv. kontejnerům
(„containers“), které představují množinu složených datových typů (typu fronta, vektor atd.)
s předdefinovanými operacemi. Grafické zpracování je implementováno knihovnou
vizuálních komponent („visual component library“, vcl), která je zakomponována v samém
integrovaném vývojovém prostředí Borland C++. Důvodem volby tohoto prostředí je rovněž
jeho příbuznost s Borland Delphi, se kterým máme bohaté zkušenosti.
Program byl odladěn na přenosném počítači s procesorem AMD Sempron 3000+ a 512MB
operační paměti. Tato konfigurace již umožňuje vyhodnocení záznamů v „rozumném“
časovém horizontu. Vzhledem k výpočetní složitosti prováděných operací bychom však
doporučovali, alespoň pro delší záznamy (tj. nad 1 mil bodů), o třídu rychlejší CPU, např.
Athlon 64. Rozlišení obrazovky je nutné mít alespoň 1280 x 800 pixelů. Tento požadavek
vychází z neměnné velikosti panelů. Komplexní grafická struktura a členění panelu totiž
neumožňuje změnu jeho velikosti bez výrazného snížení přehlednosti. Docházelo by totiž
k zakrytí důležitých součástí panelu a nutnosti častého „scrollování“.
Vyhodnocení skupiny deseti kvalitních záznamů pomocí implementovaných algoritmů, každý
o délce milion bodů, zabere méně jak hodinu času. Manuální vyhodnocení stejného objemu
dat by znamenalo stereotypní prohlížení záznamů a vypisování údajů o grafoelementech.
Vyhodnocení výše specifikovaného souboru záznamů by zabralo odhadem několik dní práce.
V tomto poznatku tkví nesporná výhoda počítačového vyhodnocení experimentálních dat.
Další nespornou výhodnou je i uniformita vyhodnocení signálu v celém průběhu záznamu.
43
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
5 Závěr
Hodnocení záznamu biologických jevů je jedním z nepostradatelných článků analýzy
experimentálních dat. Užití výpočetních metod nabízí uniformní vyhodnocení dat
v „rozumném“ čase, výrazně redukuje stereotypní manuální činnost. K hodnocení dat a
zjišťování závislostí mezi nimi je nutno přistupovat individuálně a s hlubokou znalostí
biologické podstaty zkoumaných jevů. V naší práci jsme ukázali a implementovali metodu
vyhledávání jednotkových potenciálů a porovnání dynamiky záznamů. V postupu byly
s výhodou využity metody tzv. „dataminingu“ - neuronovou síť K-means a analýzu hlavních
komponent. Použity byly i klasické metody pro předzpracování dat. Interaktivita
implementace dává uživateli možnost blíže definovat požadavky na vyhodnocení záznamu
podle bližších znalostí o jeho povaze. Textové výstupy přibližují zpracovávaná data dalšímu
vyhodnocení v programech s širší tematikou (tabulkový kalkulátor, statistický program).
Vzhledem k tomu, že na programech je vždy co „vylepšovat“, není jistě současná verze
poslední. Do budoucna plánujeme vytvoření „mini“ verze, která bude obsahovat méně
možností ovlivnění různých konstant; ty budou předem nastavené ve volitelných profilech.
Takové zjednodušení přinese vyšší uniformitu vyhodnocení skupiny záznamů a zjednodušené
ovládání programu.
Program na hodnocení jednotkových potenciálů následuje po programu na hodnocení ECoG
záznamu evokovaných potenciálů (sumované elektrické aktivity velké skupiny neuronů),
který již dva roky s výhodou používáme. To nám umožní porovnat změny elektrické aktivity
neuronů jak na makroskopické (ECoG) tak i na celulární (jednotkové potenciály) úrovni a
dotvořit si obrázek o působení ischémie na centrální nervový systém. V dalších pracech se
pak budeme moci zaměřit na studium možností ovlivnění (omezení) míry postischemického
poškození centrální nervové soustavy např. preconditioningem či aplikací vybraných farmak –
slibné se v této oblasti jeví scavengery volných kyslíkových radikálů jako např. melatonin.
44
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
6 Literatura
[1]
[2]
[3]
[4]
Čihák R. et al: Anatomie 3, Grada 1997.
Trojan S et al: Lékařská fyziologie, Grada 1994.
Šnorek et al: Neuronové sítě a neuropočítače, ČVUT 2004
JavaNNS – simulátor neuronové sítě Backpropagation na http://wwwra.informatik.uni-tuebingen.de
[5] GAME na http://neuron.felk.cvut.cz
[6] Stránky předmětu 36NAN – Neuronové sítě a neuropočítače na
http://service.felk.cvut.cz/courses/36NAN
[7] Stránky Neuronové skupiny FEL ČVUT na http://ncg.felk.cvut.cz
[8] Rogalewicz Z.: Pravděpodobnost a statistika pro inženýry, ČVUT 2000
[9] Šíma J., Neruda R: Teoretické otázky neuronových sítí, Matfyzpress 1996
[10] Tůma L., Kordík P.: Evaluation of Cortex Single-Units on Neuronal Network,
Semestrální práce z předmětu Neuronové sítě a neuropočítače 2006
[11] Adjouadi M. et al.: Detection of Interictal Spikes nad Artifactual Data Through
Orthogonal Transformations, Journal of Clinical Neurophysiology, Vol 22, 2005.
[12] CED Filling Systems na www.ced.co.uk
[13] Grau Lab na http://graulab.tamu.edu
45
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
7 Poděkování
Poděkování za podnětné připomínky a rady při tvorbě této práce patří:
Doc. MUDr. Jan Mareš, CSc., Ústav normální, patologické a klinické fyziologie, 3.lékařská
fakulta UK, Praha
Ing. Božena Mannová, M.Math., Katedra počítačů, Fakulta elektrotechnická, ČVUT, Praha
MUDr. Klára Bernášková, CSc., Ústav normální, patologické a klinické fyziologie, 3.lékařská
fakulta UK, Praha
Ing. Pavel Kordík, Katedra počítačů, Fakulta elektrotechnická, ČVUT, Praha
Poděkování patří rovněž rodičům za jejich podporu při studiu.
46
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
8 Příloha A (CD)
Na přiloženém kompaktním disku se nachází:
1)
2)
3)
4)
5)
Zdrojové texty programů
Testovací data
Knihovny Borland C++ Runtime
Text diplomové práce
Prezentace
Adresářová struktura a pokyny k instalaci programů jsou uvedeny v souboru contents.txt:
Obsah adresářů:
\contents.txt..............obsah cd a pokyny
\source\...................zdrojové soubory programu
\exec\.....................spustitelné soubory
\exec\static_selection\....program pro vyhledávání grafoelementů
\exec\dynamic_comparison\..program pro dynamické porovnávání záznamů
\text\.....................text diplomové práce
\data\.....................testovací data, utility, knihovny
\data\cfs_to_binary_converter\ ... příklad converteru z formátu CFS
(CED Filling System) do binárních souborů, které jsou vstupem
programu pro vyhledávání jednotkových potenciálů.
\data\Borland_Cpp_6_Runtime_Extended_Set\ ... knihovny
Doporučené vybavení:
1)OS Windows XP
2)Procesor Athlon 64 a vyšší nebo ekvivalent
3)512MB a více operační paměti
4)Rozlišení monitoru 1280 x 800 a více, High Color nebo True Color
5)Třítlačítková myš
6)CD-ROM
Postup instalace:
Programy v podadresářích adresáře \source jsou zkompilované zdrojové
soubory v C++ Builderu a jsou tedy přímo spustitelné. Knihovny,
které se nevyskytují na Vašem počítači, naleznete v adresáři \data a
podadresářich (nutné přidat do cesty), dále jsou k dispozici v
distribuci Borland C++ Builder (viz www.borland.com). Na kompaktním
disku
je
k
dispozici
soubor
komprimovaných
knihoven
Borland_Cpp_6_Runtime.exe (samorozbalitelný soubor). Ten neobsahuje
dvě knihovny, indy60.bpl a tee60.bpl, které najdete samostatně
v adresáři \data\Borland_Cpp_6_Runtime_Extended_Set\.
Spuštění programů:
47
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
1) program pro statické
vyhledávání grafoelementů se nachází v
adresáři \exec\static_selection\
2) program pro dynamické porovnávání záznamů se nachází v adresáři
\exec\dynamic_comparison\
48
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
9 Příloha B – stručný návod na ovládání programu
Program implementuje komplexní přístup k vyhodnocení jednotkových potenciálů, který je
zčásti založen na nezbytných znalostech fungování biologických neuronů, nutných ke
správnému ovládání programu. Strategie analýzy rovněž záleží na přístupu každého uživatele.
Algoritmus analýzy je implementován ve dvou stupních. V prvním stupni se vyhledávání
grafoelementy, které odpovídají jednotkových potenciálům. V druhém stupni se pak
jednotlivé záznamy porovnávají podle vybraných charakteristik.
9.1 Vyhledávání grafoelementů
1) Otevření souboru: soubor otevřete výběrem jeho jména v levém (1) okně dvojitým
kliknutím nebo kliknutím na tlačítko (2). Počet bodů, které se mají načíst specifikujte
v příslušném poli (3). Pokud chcete načíst všechny body zaklikněte zatrhávací pole (4).
Ve vstupním souboru musí být uložena posloupnost 16-bitových celých čísel.
2) Graf záznamu: zobrazuje se v pravém horním okně (5). Křivky, které se mají zobrazit
označíte v zaškrtávacích polích pod ním (6). V grafu se pohybujete tažením myší se
stisknutým levým tlačítkem, pravým tlačítkem a pohybem myši doleva nahoru rušíte
zoom, při pohybu opačným směrem zvětšujete ohraničenou oblast. Barvu jednotlivých
křivek můžete měnit v polích nalevo od grafu (7). Vybrané body záznamu je možno
editovat manuálně přímo v grafu. Klikem na označený bod levým tlačítkem myši se
stisknutou klávesou Ctrl vymažete vybraný bod, při současném stisku klávesy Shift bod
na křivku přidáte. Při výběru nového bodu je nutné, aby bylo zobrazeno alespoň 7 bodů
před a 43 bodů za vybíraným bodem.
3) Náhled grafu záznamu: v malém grafu pod grafem záznamu se zobrazuje poloha
aktuálně zobrazeného úseku záznamu v celém záznamu (8). V grafu je rovněž zobrazen
průběžný počet vybraných bodů v úseku záznamu. V náhledu grafu se pohybujeme buď
dvojklikem levým tlačítkem myši na místo, které chceme zobrazit, nebo přetáhnutím
(zelené) značky počátku záznamu (9) tamtéž (pravé tlačítko myši). Počet bodů histogramu
lze volit v okně nalevo od náhledu grafu (10).
4) Předzpracování záznamu: konstanty pro předzpracování záznamu jsou na panelu pod
oknem grafu záznamu (11). Kromě volby zobrazení příslušných křivek v záznamu je zde
možno volit šířku (počet bodů pro výpočet) klouzavého průměru, strmosti a vyhlazení
záznamu.
5) Výběr bodů: nastavení podmínek výběru bodů k dalšímu zpracování probíhá na panelu
vpravo od grafu vzorů. Řádky pro stoupání a amplitudu jsou rozděleny po třech editačních
oknech. V prvním je zadáno, z kolika bodů se metrika počítá, v druhém je prahová
hodnota a ve třetím se nastavuje multiplikativní koeficient asymetrie. Zaškrtnutím políčka
„no neighbours“ docílíte eliminace jednoho ze dvou sousedních vrcholů (kladný a
záporný) představující dvě fáze jedné vlny; vybrán je bod s vyšší absolutní hodnotou
amplitudy. Políčko „peak to middle“ umožňuje zarovnání hodnoty maxima amplitudy,
povolený posun se nastaví v přilehlém editačním poli.
6) Třídění bodů: vzory buněk neuronové sítě jsou zobrazeny ve spodním grafu (13). Pohyb
v grafu je obdobný jako v horním grafu (viz výše). Výběr jednotlivých vzorů provádíme
49
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
klikem levým tlačítkem myši, příp. tažením se stisknutím prostředním tlačítkem myši. Při
současném podržení klávesy Ctrl se ruší výběr označených vzorů. Parametry třídění
vybraných úseků záznamu se nastavují v panelu vlevo od grafu vzorů. Vybrat můžeme,
podle které charakteristiky budeme chtít záznamy třídit (amplituda, strmost) a která
charakteristika bude zobrazena. Počet buněk volíme v editačním okně s nadpisem „cells“.
Třídění spouštíme stiskem tlačíka s názvem „Kmeans“, vymazání vzorů zajistíme stiskem
tlačítka „reset“. Tlačítko „desel“ slouží k odznačení vybraných vzorů, „invsel“ invertuje
výběr (vybrané vzory odznačí a naopak), „select“ spočítá úseky odpovídající vybraným
vzorům a namapuje barvy vzorů na body v grafu záznamu. Tlačítkem „analyze sel.“
vyberete úseky odpovídající označeným (modrým) vzorům k další analýze, ostatní úseky
jsou vymázany.
7) Analýza komponent (15): další pomůcka podobná metodě PCA (Principal Component
Analysis), ale v zjednodušné podobě nabízí možnost zobrazení vzorů do dvou dimenzí.
Na ose x je vynesena hodnota v bodě určeném v poli „x-axis“, na osu y hodnota v době
určeném v poli „y-axis“. Charakteristiky vynášené na obě souřadnice je možno zvolit
v příslušných polích. Náhled součtu rozdílu jednotlivých vzorů je uveden v malém grafu
pod grafem vzorů. Okno s grafem rozložení hodnot otevřete kliknutím na tlačítko „PCA“.
V okně můžete vybírat vzory tažením myši se stisknutým prostředním tlačítkem, či
naopak výběr rušit tažením myši se stisknutým prostředním tlačítem při stisknuté klávese
„Ctrl“. Výběr je možno zrcadlit v grafu vzorů stiskem tlačítka „update cells“. Rovněž
samotné „vybrané“ body záznamu je možno vybrat (tažením myši se stisknutým
prostředním tlačítkem a stištěnou klávesou Shift) a výber rušit (tažením myši se
stisknutým prostředním tlačítkem a stištěnou klávesou Alt). Nevybrané body pak lze
vypustit stištěním tlačítka „del gray pts“.
8) Uložení vybraných úseků záznamu: poslední část první fáze analýzy. Vybrané úseky
záznamu se ukládají v binární podobě do souboru, jehož název můžete specifikovat
v okně (16). Cestu k souboru lze nalistovat v adresářovém okně v levé části okna aplikace.
Vybrané úseky nakonec uložíte kliknutím na tlačítko „save selected pts“.
9) Textový výstup: výstup jednotlivých částí analýzy se zobrazuje v textovém okně (17).
Toto je možno pro urychlení výpočtu skrýt. Obsah okna je možno zkopírovat od schránky
windows (clipboard) a přímo tak přenést k dalšímu vyhodnocení např. do tabulkového
kalkulátoru (čísla jsou oddělena tabulátorem).
50
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obr 33.Vyhledávání grafoelementů: hlavní okno – návod na ovládání programu
9.2 Porovnávání záznamů
1) Otevření souborů: vzhledem k tomu, že program porovnává více záznamů najednou, je
nutné definovat množinu vstupních souborů. Soubory se přidávají buď dvojklikem na
název souboru (1), nebo jejich označením a kliknutím na tlačítko „add“. Jména vybraných
souborů jsou zobrazena v horním levém okně (2), odkud se dají zase odstranit dvojklikem
nebo klikem na tlačítko „remove“. Odstranit jména všech souborů z okna lze pomocí
tlačítka „clear“. Vybrané soubory lze otevřít klikem na tlačítko „load + calc“ (3). V panelu
uprostřed nahoře (4) je možno definovat, jaká časová oblast vstupního záznamu se zobrazí
do jednoho bodu (pole s názvem pts/bin). V dalším poli lze nastavit počet kategorií
frekvenčního histogramu, ještě níže je možno určit konstantu k exponentu proměnné
určené k dělení základního intervalu na části velikosti < ek^n ; ek^(n+1) ).
2) Graf záznamů: se nachází v pravém horním okně (5). Zobrazuje vybranou
charakteristiku všech porovnávaných záznamů. Styl grafu je možno měnit tlačítky
umístěnými pod grafem, kde je rovněž umístěno okno pro výběr zobrazované
charakteristiky (6). V legendě grafu jsou barevně zakódovaná jména příslušných
vstupních souborů (7).
3) Třídění záznamů: je zobrazeno v grafu v pravé dolní části okna (8). Jednotlivé řady
představují vzory. Graf je možno upravovat podobně jako graf záznamů (9). V grafu je
51
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
možno vybrat jednotlivé vzory kliknutím myš. Pomocí tlačítka „count + paint“ je možno
spočítat záznamy přiřazené k jednotlivým vzorům a ty v grafu záznamů zvýraznit.
Množinu vybraných vzorů je možno dále opakovaně analyzovat. Charakteristiku, podle
které se záznamy třídí, je možno zvolit v okně s titulkem „compare“ (10). Další okno
slouží k volbě metriky (RMS, nebo lineární vzdálenost). Počet vzorů je možno stanovit
v okně „cells“. Pokud chcete použít možnost škálování, zaškrtněte „auto scale“.
Maximální multiplikativní konstanta pro škálování je uvedena v okně „max +/-“.
4) Analýza komponent: obdoba téhož při vyhledávání grafoelementů. Jedná se o
zjednodušenou formu PCA (Principal Component Analysis). Do dvojrozměrného grafu
jsou vyneseny vzory a záznamy nejlépe v místech jejich největší „vzdálenosti“. Je zde
opět možno vybrat vzory podle jejich rozložení v grafu. Přehledný graf „vzdálenosti“
záznamů je zobrazen pod grafem vzorů (11), má napomoci výběru obou bodů, které se
vynáší na souřadnice grafu.
5) Textový výstup: druhá část analýzy má pouze textový výstup do textového pole (12).
Jednotlivá čísla jsou oddělena tabulátory a jsou tak přímo přístupna dalšímu využití např.
v tabulkovém kalkulátoru, kam mohou být přemístěna pomocí schránky (clipboard).
Jednotlivé záznamy je možno rovněž vyexportovat ve formátu čísel oddělených
tabulátorem stiskem tlačítka „dump record“. Pod ním je umístěno okno, kde si uživatel
může vybrat spektrum záznamů, které chce zobrazit v textové podobě. Program umožňuje
i exportování jednotlivých charakteristik záznamů (tlačítko „dump metrics“) a vzorů.
Textové okno je možno skrýt (tlačítko „show“), což u delších záznamů může urychlit
jejich výpis.
52
Lukáš Tůma: ANALÝZA SIGNÁLŮ BIOLOGICKÝCH NEURONŮ
Obr 34.Porovnávání záznamů:hlavní okno - návod na ovládání programu
53

Podobné dokumenty

VNS Therapy - CARDION sro

VNS Therapy - CARDION sro Vyvinuli léky a další formy léčby. I přes tyto snahy někteří lidé stále trpí epileptickými záchvaty. Jelikož se Vaše epileptické záchvaty pomocí léků, které užíváte, buď nepodařilo zvládnout, nebo ...

Více

Workshop biomedicínského inženýrství a informatiky 2013. 2013

Workshop biomedicínského inženýrství a informatiky 2013. 2013 heart rate FHR) a stahy dělohy u těhotné ženy. K vyhodnocení kardiotokografických záznamů se v České republice používá hodnocení podle FIGO (Mezinárodní federace gynekologů a porodníků), které bylo...

Více

Akutní medicína – vypracované otázky pro zkoušku ve FTN

Akutní medicína – vypracované otázky pro zkoušku ve FTN veškeré úsilí věnovat ve prospěch nemocného až do okamžiku, kdy jsme přesvědčení, že další léčba vede jen k utrpení bez naděje na příznivý výsledek Princip benefice( ochrana života, obnovení života...

Více

Úvodní materiál o dvoufotonovém mikroskopu

Úvodní materiál o dvoufotonovém mikroskopu odlišovat tak různé buněčné typy. Fůze genu pro fluorescenční protein a genu pro tubulin (krásně nabarvený cytoskelet v učebnicových obrázcích - v tomto případě je fluorescenční protein z definice ...

Více

Analýza antropologických dat metodami výpocetn´ı inteligence Bc

Analýza antropologických dat metodami výpocetn´ı inteligence Bc Prohlašuji, že jsem svou diplomovou práci vypracoval samostatně a použil jsem pouze podklady uvedené v přiloženém seznamu. Nemám závažný důvod proti užitı́ tohoto školnı́ho dı́la ve...

Více

Neuronové sítě Cascade Correlation

Neuronové sítě Cascade Correlation Mé poděkování patří především vedoucímu práce, panu Ing. Janu Drchalovi a oponentovi, panu Ing. Pavlu Kordíkovi Ph.D.za věcné připomínky během práce a za čas, kterou tomu věnoval.

Více

Využití Hilbert-Huangovy transformace při detekci patologické

Využití Hilbert-Huangovy transformace při detekci patologické zpravidla funkčně zobrazovacích metod (CT, MRI, SPECT) a neinvazivního (skalpového) EEG. Pomocí zmínných metod se dá diagnostikovat typ i příčina většiny typů epiepsie. Existují však i nelezionární...

Více