PV021 Vícevrstvá neuronová síť pro rozeznávání mikroteček. Matúš Goljer, Maroš Kucbel, Michal Novotný, Karel Štěpka 2011

Podobné dokumenty
Algoritmy a struktury neuropočítačů ASN P4. Vícevrstvé sítě dopředné a Elmanovy MLNN s učením zpětného šíření chyby

Algoritmus a implementace

Algoritmy a struktury neuropočítačů ASN - P11

Úvod Příklad Výpočty a grafické znázornění. Filip Habr. České vysoké učení technické v Praze Fakulta jaderná a fyzikálně inženýrská

Testování neuronových sítí pro prostorovou interpolaci v softwaru GRASS GIS

3. Vícevrstvé dopředné sítě

Vytěžování znalostí z dat

Trénování sítě pomocí učení s učitelem

Rozpoznávání písmen. Jiří Šejnoha Rudolf Kadlec (c) 2005

Využití neuronové sítě pro identifikaci realného systému

Vytěžování znalostí z dat

Umělé neuronové sítě

Architektura - struktura sítě výkonných prvků, jejich vzájemné propojení.

Použití technik UI v algoritmickém obchodování II

Projektč.3dopředmětuIZP. Maticové operace

Asociativní sítě (paměti) Asociace známého vstupního vzoru s daným výstupním vzorem. Typická funkce 1 / 44

ALGORITMIZACE A PROGRAMOVÁNÍ

Transformace digitalizovaného obrazu

Měření teploty, tlaku a vlhkosti vzduchu s přenosem dat přes internet a zobrazování na WEB stránce

FortiaViewer verze 5.0

Průvodce aplikací. Aplikaci easyeldp spusťte z nabídky Start pomocí ikony KomixFiller, kterou naleznete ve složce Komix.

1 Uživatelská dokumentace

Emergence chování robotických agentů: neuroevoluce

CommonTestsAndGames03

Rozpoznávání a klasifikace fotografií pivních přepravek

Úvod do Matlabu. Praha & EU: Investujeme do vaší budoucnosti. 1 / 24 Úvod do Matlabu

Iterační výpočty. Dokumentace k projektu č. 2 do IZP. 24. listopadu 2004

Fiala P., Karhan P., Ptáček J. Oddělení lékařské fyziky a radiační ochrany Fakultní nemocnice Olomouc

5. Umělé neuronové sítě. neuronové sítě. Umělé Ondřej Valenta, Václav Matoušek. 5-1 Umělá inteligence a rozpoznávání, LS 2015

Popis metod CLIDATA-GIS. Martin Stříž

Neuronové sítě v DPZ

Algoritmy a struktury neuropočítačů ASN - P10. Aplikace UNS v biomedicíně

Vyvinuté programové vybavení (projekt čís. TA )

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová. 5. Statistica

Manuál k obsluze simulátoru KKK ELO 2011 pro studenty, popis laboratorní úlohy

Simluátor Trilobota. (projekt do předmětu ROB)

Šablony, kontejnery a iterátory

Studium enzymatické reakce metodami výpočetní chemie

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Geometrické algoritmy pro počítačovou grafiku

Hodnocení soutěžních úloh

SRSW4IT Inventarizační SW. Prezentace aplikace. Vedoucí DP: ing. Lukáš Macura Autor: Bc. Petr Mrůzek

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Školní kolo soutěže Baltík 2009, kategorie C

2. úkol MI-PAA. Jan Jůna (junajan)

Informatika / file system KIT.PEF.CZU

PREDIKCE VÝROBY FV SYSTÉMŮ

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

NPRG030 Programování I, 2015/16 1 / :25:32

ANALÝZA A KLASIFIKACE BIOMEDICÍNSKÝCH DAT. Institut biostatistiky a analýz

Formulář pro křížový filtr

Aplikace vytěžování dat

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ FAKULTA STROJNÍHO INŽENÝRSTVÍ

Neuronové časové řady (ANN-TS)

Jak používat program P-touch Transfer Manager

Neuronové sítě Ladislav Horký Karel Břinda

Výukový systém ELTAV DEMO

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

CBR Test dimenzač ní čh parametrů vozovek

KONVOLUČNÍ NEURONOVÉ SÍTĚ PRO BEZPEČNOSTNÍ APLIKACE CONVOLUTIONAL NEURAL NETWORKS FOR SECURITY APPLICATIONS

APS mini.ed programová nadstavba pro základní vyhodnocení docházky. Příručka uživatele verze

Ing. Petr Hájek, Ph.D. Podpora přednášky kurzu Aplikace umělé inteligence

Střední odborná škola a Střední odborné učiliště, Hořovice

Příloha č. I: Schéma zapojení vývojové desky PVK-PRO

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Linux-příkazový řádek

Programátorská příručka

TERMINOLOGIE ... NAMĚŘENÁ DATA. Radek Mareček PŘEDZPRACOVÁNÍ DAT. funkční skeny

Semestrální práce KIV/PC

Výstupní testování studentů 4. ročníku

Použití technik UI v algoritmickém obchodování III

PV021: Neuronové sítě. Tomáš Brázdil

Operační systémy. Cvičení 3: Programování v C pod Unixem

Střední odborná škola a Střední odborné učiliště, Hořovice

Komprimace/Dekomprimace

Windows a real-time. Windows Embedded

Jednoduché cykly

1. Soutěživé sítě. 1.1 Základní informace. 1.2 Výstupy z učení. 1.3 Jednoduchá soutěživá síť MAXNET

UŽIVATELSKÁ PŘÍRUČKA

Vzorový příklad. Postup v prostředí ISE. Zadání: x 1 x 0 y Rovnicí y = x 1. Přiřazení signálů:

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek

Vazba ESO9 na MS Outlook a MS Exchange

Paralelní výpočty na clusteru KMD

C2110 Operační systém UNIX a základy programování

X37SGS Signály a systémy

Úloha: Verifikace osoby pomocí dynamického podpisu

Program pro tvorbu technických výpočtů. VIKLAN - Výpočty. Uživatelská příručka. pro seznámení se základními možnostmi programu. Ing.

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ

IBM SPSS Neural Networks

3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem

Příprava dat v softwaru Statistica

Zadání soutěžních úloh

1 Webový server, instalace PHP a MySQL 13

VÝKRESY PBS Výkresy požární bezpečnosti staveb dle ČSN nadstavba pro BricsCAD 12,13-CZ

Programování v jazyce C pro chemiky (C2160) 3. Příkaz switch, příkaz cyklu for, operátory ++ a --, pole

2.2 Acronis True Image 19

Systém je citlivý na velikost písmen CASE SENSITIVE rozeznává malá velká písmena, např. PROM=1; PROm=1; PRom=1; Prom=1; prom=1; - 5 různých proměnných

Transkript:

PV021 Vícevrstvá neuronová síť pro rozeznávání mikroteček Matúš Goljer, Maroš Kucbel, Michal Novotný, Karel Štěpka 2011

Úkol sítě Rozeznávat obrázky obsahující fluorescenční mikrotečky od obrázků s nespecifickým pozadím Síť by pokud možno měla pracovat i v případě, že jsou obrázky degradovány šumem

Zpracovávaná data 3D obrázky mikroteček nebo nespecifického pozadí (buď ploché, nebo náhodný gradient) Testovací data jsou generována simulátorem mikroskopických snímků (využívá údaje naměřené na reálném mikroskopu) K dispozici jsou data v několika stupních kvality (úroveň šumu/kontrast)

Předzpracování a organizace dat Navzorkováno do rozměru 10 10 20 voxelů (menší rozlišení, než jakého lze reálně dosáhnout; bylo zvoleno s ohledem na velikost sítě) Normalizace intenzit do rozsahu 1.. 1 Předzpracovaná data jsou uložena v adresářích /data0.. /data9 (vyšší číslo značí vyšší úroveň šumu) Adresáře jsou dále rozděleny na /pos, /neg (trénovací data) a /test/pos, /test/neg (testovací data)

Zpracovávaná data ukázka Nahoře pozitivní příklady, dole negativní Zleva doprava rostoucí úroveň šumu

Použitý model Vícevrstvá neuronová síť se zpětnou propagací Použita obecná implementace Konkrétní parametry zvolené pro tuto úlohu: dvouvrstvá síť počty neuronů 2000, 7, 1 aktivační funkce: na vstupních neuronech identita, ve zbytku sítě tanh vstupní neurony odpovídají jednotlivým voxelům vstupu ( 1.. 1), výstupní neuron reprezentuje přítomnost/nepřítomnost tečky ( 1 / 1)

Vývojové nástroje C++ Standard Template Library (odladěno pro platformy Linux a Windows)

Implementace 1 Základní třídy: Neuron, Net, DataItem Neuron Net uchovává informace o vahách a své aktivační funkci (a dočasné delta údaje při zpětné propagaci) je zodpovědný za dopřednou propagaci své hodnoty organizuje neurony do vrstev podporuje ukládání/načítání konfigurace sítě zodpovědná za spouštění dopředné a spouštění a organizaci zpětné propagace

Implementace 2 DataItem třída zodpovědná za načítání dat a jejich zprostředkování síti obecně reprezentuje libovolný vektor dat použitá specializace Image slouží k popisu 3D obrázků zvoleného typu (v tomto případě float) délka vektoru (v tomto případě počet voxelů jednotlivých obrázků) musí odpovídat počtu vstupních neuronů sítě

Spouštění programu parametry 1 Parametry pro spouštění z příkazového řádku: -c, --createnet <x 0 >:<func 0 >,<x 1 >:<func 1 >,<x 2 >:<func 2 >,... Vytvoří novou síť s <x i > neurony v i-té vrstvě. Neuronům v dané vrstvě je přiřazena aktivační funkce s názvem <func i >. Pro nultou vrstvu by měla být specifikována identická akt. funkce ( id ). V současné verzi jsou implementované funkce id, tanh. Vzhledem k aplikaci je očekáván právě 1 výstupní neuron. -l, --loadnet <file_name> Nahraje síť ze souboru <file_name>. Parametry -c, -l se navzájem vylučují. -s, --savenet <file_name> Po skončení uloží síť do souboru <file_name>.

Spouštění programu parametry 2 -t, --train <dir_name> Natrénuje síť na datech v adresáři <dir_name>. Adresář musí obsahovat dva podadresáře: /pos (s pozitivními obrázky) a /neg (s negativními). Trénink je možné ovlivnit parametry -i, -x -i, --iters <x> Udává počet tréninkových průchodů vstupními daty. Integer, přednastavená hodnota je 1. -x, --rate <x> Rychlost učení, dále konstantní po celou dobu tréninku. Float, přednastavená hodnota je 0,05.

Spouštění programu parametry 3 -r, --run <dir_name> Spustí síť na obrázcích v adresáři <dir_name> a vypíše výsledky na standardní výstup. Výsledky jsou řádky ve tvaru: <file_name>: <net_output> -h, --help Vytiskne nápovědu.

Spouštění programu příklady./main -c 2000:id,7:tanh,1:tanh -t traindata -i 100 -x 0.1 -s bar.net Vytvoří síť s 2000, 7 a 1 neurony, natrénuje ji ve 100 iteracích s rychlostí učení 0,1 na datech z adresáře traindata a výslednou konfiguraci sítě uloží do souboru bar.net./main -l bar.net -r traindata Načte síť ze souboru bar.net a spustí ji na data v adresáři traindata../main -c 2000:id,7:tanh,1:tanh -t traindata -i 10 -x 0.01 -s bar.net -r rundata/pos Vytvoří, natrénuje, uloží a spustí síť. Pomocí skriptů pak lze vytvářet komplikovanější chování, např. učení až do dosažení optimální úspěšnosti

Vliv počtu skrytých neuronů a rychlosti Rychlost učení Počet skrytých neuronů F1 skóre = 2 (precision recall) / (precision + recall)

Vliv počtu skrytých neuronů a rychlosti (raw data jsou k dispozici v souboru /raw/results.txt, popis jejich struktury v raw/_readme.txt )