#PAGE_PARAMS# #ADS_HEAD_SCRIPTS# #MICRODATA#

Úvod do strojového učení pro patology


Introduction to Machine Learning for Pathologists

Digitalization has gradually made its way into many areas of medicine, including pathology. Along with digital data processing comes the application of artificial intelligence methods to simplify routine processes, enhance safety, etc. Although general awareness of artificial intelligence methods is increasing, it is still not common for professionals from non-technical fields to have a detailed understanding of how such systems work and learn. This text aims to explain the basics of machine learning in an accessible way using examples and illustrations from digital pathology. This is not intended to be a comprehensive overview or an introduction to cutting-edge methods. Instead, we use the simplest models to focus on fundamental concepts behind most learning systems. The text concentrates on decision trees, whose functionality is easy to explain, and basic neural networks, the primary models used in today’s artificial intelligence. We also attempt to describe the collaborative process between medical specialists, who provide the data, and computer scientists, who use this data to develop learning systems. This text will help bridge the knowledge gap between medical professionals and computer scientists, contributing to more effective interdisciplinary collaboration.

Keywords:

machine learning – Neural networks – Decision trees – Digital Pathology – Diagnostic Systems


Authors: Tomáš Brázdil 1;  Adam Kukučka 1;  Vít Musil 1;  Rudolf Nenutil 2;  Petr Holub 3
Authors‘ workplace: Fakulta informatiky, Masarykova univerzita, Brno, Česká republika 1;  Masarykův onkologický ústav, Brno, Česká republika 2;  Ústav výpočetní techniky, Masarykova univerzita, Brno, Česká republika 3
Published in: Čes.-slov. Patol., 61, 2025, No. 1, p. 11-21
Category: Reviews Article

Overview

Digitalizace postupně proniká do velké části medicínských oblastí včetně patologie. Společně s digitálním zpracováním dat přichází aplikace metod umělé inteligence za účelem zjednodušení rutinních procesů, zvýšení bezpečnosti apod. Ačkoliv se obecné povědomí o metodách umělé inteligence zvyšuje, stále není pravidlem, že by odborníci z netechnických oborů měli detailní představu o tom, jak takové systémy fungují a jak se učí. Cílem tohoto textu je přístupnou formou vysvětlit základy strojového učení s využitím příkladů a ilustrací z oblasti digitální patologie. Nejedná se samozřejmě o ucelený přehled ani o představení nejmodernějších metod. Držíme se spíše úplných základů a představujeme fundamentální myšlenky, které stojí za většinou učících systémů, s použitím nejjednodušších modelů. V textu se věnujeme zejména rozhodovacím stromům, jejichž funkce je snadno vysvětlitelná, a elementárním neuronovým sítím, které jsou hlavním modelem používaným v dnešní umělé inteligenci. Pokusíme se také popsat postup spolupráce mezi lékaři, kteří dodávají data, a informatiky, kteří s jejich pomocí vytvářejí učící systémy. Věříme, že tento text pomůže překlenout rozdíly mezi znalostmi lékařů a informatiků a tím přispěje k efektivnější mezioborové spolupráci.

Klíčová slova:

strojové učení – Digitální patologie – Neuronové sítě – Rozhodovací stromy – Diagnostické systémy

 

V dnešní době proniká umělá inteligence do velké části oborů lidské činnosti. Patologie je jednou z oblastí, kde výzkum možných aplikací učících metod probíhá již několik let. Prominentní postavení mají v této oblasti metody pro analýzu obrazu, které lze využít pro automatizovanou analýzu mikroskopických snímků tkání. V tomto směru probíhá již řadu let mnoho výzkumných aktivit a bylo publikováno velké množství vědecké literatury (1). Dále vývoj metod pro zpracování nestrukturovaných textových dat, což je v současné době hnací motor vývoje umělé inteligence obecně, poskytuje metody pro analýzu lékařských zpráv a výsledky lze tedy například využít pro digitalizaci archivů a automatizované generování nových zpráv v průběhu analýzy vzorků (2).

V tomto textu prezentujeme základy strojového učení ilustrované na příkladech z digitální patologie. V závěru se pokusíme naznačit, jaký je aktuální stav učících systémů v digitální patologii, a kterým směrem se bude patrně ubírat další vývoj. Tento článek je první ze dvou článků o strojovém učení v digitální patologii. Jeho cílem je uvést základní principy a metody strojového učení formou přístupnou pro odborníky v oblasti patologie. Neklade si tedy za cíl představit nejmodernější technologie, ale zvýšit povědomí o učících systémech obecně. Druhý článek bude více věnován detailům propojení strojového učení s patologií a výsledným diagnostickým systémům stále více pronikajícím do praxe. Text se věnuje primárně postupům strojového učení pro klinickou praxi. Strojové učení je samozřejmě využíváno šířeji jako podpůrná metoda ve výzkumu a analýze dat pro vědecké účely. Tomuto tématu se nebudeme primárně věnovat, nicméně společný základ v podobě principů strojového učení a základního vyhodnocení modelů prezentován bude.

 

* Adresa pro korespondenci:

Doc. RNDr. Tomáš Brázdil, Ph.D.

Fakulta informatiky, Masarykova univerzita, Brno Botanická 68a, Brno

tel.: 549 49 3922

e-mail: xbrazdil@fi.muni.cz

 

UMĚLÁ INTELIGENCE A STROJOVÉ UČENÍ

Pojem umělé inteligence se často zaměňuje za určitý typ metod strojového učení. Zejména za metody postavené na velkých jazykových modelech, tedy ChatGPT (3) apod. Ovšem pojem umělé inteligence je daleko širší. Nahlédneme-li do známé učebnice (4), nalezneme v ní v podstatě průřez velkou částí informatiky. Počínaje plánováním, přes učení a reprezentaci znalostí, až po robotiku. V tomto textu se zaměříme na onu část, která se zabývá strojovým učením, tedy tvorbou počítačových systémů, jejichž funkcionalita nemusí být celá „ručně“ programována, protože se ji učí samostatně z dat.

 

Jak přesně probíhá strojové učení? Začněme jednoduchým klasickým příkladem, metodou K nejbližších sousedů (K nearest neighbors, KNN) (5). Řekněme, že budeme chtít rozhodovat, zda pacient trpí daným onemocněním. Lékař pro vybranou skupinu pacientů provede patřičné testy, jejichž výsledky zaznamená do tabulky společně s dalšími údaji o pacientech, které jsou relevantní danému onemocnění. U každého pacienta také poznamená, zda trpí daným onemocněním. V případě, že přijde nový pacient, KNN systém nahlédne do tabulky a vybere K pacientů, kteří měli výsledky testů nejpodobnější novému pacientovi. Pokud mezi těmito K pacienty převládají nemocní, je nový pacient označen za nemocného. Jinak systém indikuje, že je pacient patrně zdravý. Ilustrujme tento postup na příkladu, který budeme průběžně používat pro ilustraci dalších modelů. Jedná se o data z diagnostiky prsních nádorů (6). Původní tabulková data mají 31 sloupců, ve kterých jsou zachyceny morfologické charakteristiky jader ze snímků jehlových biopsií prsu. Konkrétně jde o průměrnou a maximální plochu, průměr, texturu apod. (viz tab. 1 ilustrující některé sloupce a řádky tabulky dat). Pokud takovou tabulku použijeme jako podklad pro KNN klasifikátor, dostaneme model ilustrovaný na obr. 1.

Z pohledu strojového učení se jedná o triviální postup, učící systém si jednoduše zapamatuje tabulku s pacienty a poté nové pacienty diagnostikuje na základě podobnosti nových pacientů s pacienty v tabulce. Nicméně tento příklad je dobrým výchozím bodem k pochopení strojového učení, protože sofistikovanější učící metody vlastně jen poskytují efektivnější reprezentaci tabulky pacientů, tedy tzv. model dat. Modelů existuje celá řada, například: Lineární a logistické regresní modely, Rozhodovací stromy, Grafové modely, Modely založené na neuronových sítích a dalších mnoho modelů a přístupů, viz. například (5).

V tomto textu nemůžeme samozřejmě popsat vše, představíme tedy vybrané modely, které jsou používané v digitální patologii a dostatečně ilustrují principy strojového učení.

OBSAH TEXTU

Text je členěn do tří kapitol. Kapitola Učící systémy pojednává o učících modelech používaných v patologii. Zejména v sekci Rozhodovací stromy se zaměříme se na rozhodovací stromy, které jsou jednoduchým formalismem pro reprezentaci menších datových množin a v sekci Neuronové sítě a jejich rozličné varianty na neuronové sítě, které dnes vládnou světu (nejen) strojového učení. Kapitola Data, učící postup a vyhodnocení se zaměřuje na praktické otázky strojového učení v digitální patologii. V praxi není strojové učení jen otázkou trénování vhodných modelů na datech. Celý proces je mnohem komplikovanější. V první řadě je nutné výsledný model otestovat, což je víceúrovňový proces, který detailněji probereme v sekci Vyhodnocení učících modelů. Následně je nutné vytvořený a otestovaný systém certifikovat, má-li se stát pomocným prostředkem v patologii. Následuje uvedení systému do praxe. Tento krok zdaleka není tak jednoduchý, jak by se mohlo zdát. Vyžaduje součinnost několika skupin odborníků v oblastech IT infrastruktury, softwarové integrace a digitální patologie. Detaily si popíšeme v sekci Vyhodnocení v praxi a provoz. Závěrečná kapitola Základní modely se zaměří na aktuální stav a vývoj základních modelů v digitální patologii, včetně jejich aplikací a perspektiv pro budoucí využití v diagnostice a analýze patologických snímků.

UČÍCÍ SYSTÉMY

V této kapitole si představíme dva přístupy ke strojovému učení, které jsou používány ve většině kontextů včetně digitální patologie. Začneme rozhodovacími stromy, které jsou jednoduché a lze na nich jednoduše ilustrovat většinu klíčových myšlenek.

 

Tabulka č. 1. Vybrané morfologické charakteristiky jader ze snímků jehlových biopsií prsu (6).

 

Největší poloměr

Průměrná textura

Největší textura

Největší obsah

Diagnóza

14.92

17.18

25.34

684.5

0

11.05

16.99

21.47

367.0

0

16.41

19.24

26.42

830.5

0

13.19

12.83

16.36

534.0

0

13.33

16.67

25.48

546.7

0

24.15

26.47

30.90

1813.0

1

20.80

21.02

27.78

1304.0

1

20.92

24.48

34.69

1320.0

1

22.63

25.12

33.58

1589.0

1

24.56

24.59

30.41

1623.0

1

 

 

Obr. 1. Vidíme dvě vlastnosti jader z deseti vzorků z tabulky 1. Diagnóza je znázorněna barvou, červená je maligní, zelená benigní. Nové jádro (v kroužku) je blíže již přítomným červeným bodům, bude tedy klasifikováno jako maligní.

 

Navážeme představením neuronových sítí a hlubokého učení, což je v současnosti prominentní přístup ke strojovému učení a umělé inteligenci obecně.

Rozhodovací stromy

Rozhodovací stromy jsou jednoduchou metodou, která je technicky blízká KNN, ale umožňuje učení z podstatně větších datových sad. Princip fungování je relativně jednoduchý a pro tabulková data poskytuje jasná pravidla pro predikci výsledků.

Co je tedy rozhodovací strom? Podívejme se na příklad na obr. 2. Zde vidíme strukturu podobnou stromu. V každém uzlu stromu, máme jednoduchou otázku týkající se nějaké vlastnosti pacienta, zde například zda pacientka detekovala bulku při sebediagnostice. Pokud odpověď zní Ano, pokračujeme vpravo, pokud Ne, pokračujeme vlevo. Tímto způsobem postupujeme celým stromem až do místa, odkud se nelze pohnout dál (tzv. list), ve kterém nalezneme predikci pro daného pacienta. Toto je postup, který každý lékař dobře zná, většinu standardních diagnostických postupů lze popsat rozhodovacími stromy (7). Zajímavější otázkou je, jak lze takový strom vytvořit pomocí učení z dat. Pro ilustraci opět použijeme data z diagnostiky prsních nádorů (6), Tabulka 1. Otázkou je, v jakém pořadí budeme ve stromu uvažovat jednotlivé vlastnosti, případně podle jakých hodnot budeme oddělovat potenciálně maligní struktury od benigních.

 

                                                                                         

Obr. 2. Příklad rozhodovacího stromu.                                                             Obr. 3. Rozhodovací strom natrénovaný na datech z tabulky 1.

 

Samozřejmě můžeme zkusit brát sloupce jeden po druhém zleva a rozdělovat hodnoty podle jejich průměru, tj., například jako první položit otázku, zda největší poloměr je menší nebo roven 20.2 kde 20.2 je průměrná hodnota sloupce průměrný poloměr. To by ovšem vedlo ke konstrukci obrovských rozhodovacích stromů, ve kterých by většina rozhodnutí byla zbytečná s ohledem na diagnózu. Ideální by bylo identifikovat morfologickou vlastnost, která nejlépe odlišuje nemocnou tkáň od zdravé.

Lidský patolog toto ví, ale je možné tuto informaci dostat z dat? Odpověď zní, že částečně ano. Můžeme se zaměřit na vlastnosti a prahy, které rozdělí datovou množinu na dvě části tak, že v jedné z nich bude co nejvíce zdravých pacientů a ve druhé co nejvíce nemocných. Tyto části by také ideálně měly být podobně velké, aby se v obou větvích stromu řešily menší podúlohy. Pokud tímto způsobem vytvoříme rozhodovací strom, dostaneme strukturu, jejíž část je znázorněna na obr. 3. Tedy v našem příkladu vychází jako nejlepší vlastnost největší poloměr, která rozdělí dataset na dvě části, jednu s 24 maligními a 233 benigními pacienty a druhou se 133 maligními a 8 benigními. Tedy tato vlastnost sama o sobě je skvělým detektorem malignity. Další dělení pak upřesňuje diagnózu. Pro zajímavost, kompletní strom, jehož nejdelší větev má délku 5 (tedy je v něm nutné udělat maximálně 5 rozhodnutí), diagnostikuje tréninková data se stoprocentní přesností.

Při ověření na nových datech to ovšem takto přesné být nemusí, strom je přetrénovaný na tréninková data a otázky jsou tedy vytvořeny specificky pro tréninkový dataset. Pokud tomuto datasetu nový pacient neodpovídá, může být diagnostikován nesprávně. Povšimněte si, že omezením hloubky stromu sice nedostaneme perfektní výsledek na tréninkových datech, ale identifikujeme nejdůležitější otázky pro klasifikaci. Další detailní dotazování je pak čím dál více šité na míru tréninkové množině a je tedy žádoucí jej spíše omezit. Proto se při tréninku obvykle omezuje hloubka stromů, aby se model nepřetrénoval.

Výše uvedený příklad celkem věrně ilustruje obecný algoritmus pro učení rozhodovacích stromů. V matematickém popisu bychom našli zmínku o tom, že sloupec a „otázku“ volíme tak, aby se snižovala entropie dat po rozdělení. Což jinými slovy znamená, že chceme, aby v jedné větvi bylo co nejvíce položek (pacientů) s jedním typem predikce (např. zdravých) a ve druhé co nejvíce položek s druhým (tedy nemocných).

Neuronové sítě a jejich rozličné varianty

Umělé neuronové sítě jsou historicky jedním z nejstarších modelů strojového učení. Skládají se ze vzájemně propojených umělých neuronů, které jsou hrubou matematickou aproximací biologických neuronů.

 

A                                            B

 

Obr. 4. Umělý neuron.

A. Model umělého neuronu se dvěma vstupy, znázorňující výpočet vnitřního potenciálu a aktivaci výstupu na základě prahové hodnoty.
B. Příklad jednoho umělého neuronu klasifikujícího malignitu na základě vybraných morfologických vlastností z diagnostických dat.

 

Umělé neurony

Umělé neurony jsou jednoduchou matematickou aproximací funkce biologických neuronů. Základní představa o fungování biologického neuronu je následující: Neuron dostává na vstupech (synapse, dendrity) signál od jiných neuronů. Tyto signály způsobují změny elektrického potenciálu v těle neuronu. Jakmile je potenciál v těle dost vysoký, překoná jistý práh, neuron generuje signál na výstupu (axon) do dalších neuronů.

Tento proces je modelován matematicky pomocí umělých neuronů. Na obr. 4A vidíme jednoduchý příklad umělého neuronu se dvěma vstupy a jedním výstupem. Vstupy jsou označeny váhami, které určují, jak moc daný vstup ovlivní vnitřní potenciál. První vstup má váhu 1 druhý −1. Na vstupy neuronu dáme dvě čísla, řekněme 2 na první vstup a 1 na druhý (to jsou signály z venku neuronu) a vypočítáme vnitřní potenciál jako vážený součet vstupů. tedy 1×2 + (−1)×1 =1. Zde vidíme, že první vstup má excitační charakter, čím větší číslo na něj položíme, tím větší potenciál dostaneme. Druhý vstup je naopak inhibiční, větší hodnota na vstupu znamená menší potenciál. Na výstupu neuronu potom dostaneme hodnotu 1 nebo 0 v závislosti na tom, zda byl vnitřní potenciál dostatečně velký, tedy překročil daný práh. Pokud bude v našem příkladu práh roven 0, pak bude potenciál větší než práh a neuron vrátí 1. Vidíme, že funkce neuronu je dána jeho váhami a prahem.

 

Jeden neuron je možné přímo použít jako nástroj pro klasifikaci, lze jej i natrénovat na daných datech. Obrázek 4B znázorňuje část neuronu, který klasifikuje pacienty v příkladu, který jsme použili v předchozí sekci. Pro ilustraci ukazujeme jen tři vstupní atributy s největší váhou (v absolutní hodnotě), kompletní neuron by měl mít 30 vstupů. Zde je vidět, že např. největší poloměr má poměrně velkou kladnou váhu. To znamená, že podobně jako v rozhodovacím stromu je důležitým atributem velikost jader a platí, že čím větší jádra jsou, tím více je model motivován podat maligní diagnózu.

Zbývá otázka, jak se vlastně neuron může naučit svoje váhy z dat? Přesný popis algoritmu vyžaduje matematiku nad rámec tohoto článku, pokusíme se alespoň ilustrovat základní ideu. Učící proces probíhá takto: Na začátek začneme s nějakým nastavením vah. Obvykle se používají malá náhodná čísla. Následně učení probíhá v kolech. V každém kole ukážeme neuronu příklad z naší datové množiny. Tento příklad nám dává vstupy (tedy např. vlastnosti jader) a požadovaný výstup neuronu (tedy informaci o tom, zda se jedná o nádor nebo ne). Dále potřebujeme vypočítat vnitřní potenciál neuronu pro daný příklad. Pokud je požadovaným výstupem neuronu jednička (tedy nádor), znamená to, že vnitřní potenciál vypočítaný pro náš příklad by měl být co největší. Změníme tedy váhy neuronu tak, aby se vnitřní potenciál zvětšil. Naopak pokud je žádaným výstupem nula (absence nádoru), potenciál by měl být co nejmenší, změníme váhy tak, aby se potenciál zmenšil. Tyto úpravy musíme ovšem dělat opatrně, váhy měníme jen trochu, abychom nepoškodili klasifikaci na ostatních příkladech. Učení ukončíme ve chvíli, kdy neuron buď klasifikuje všechny příklady správně nebo už se dále nezlepšuje v klasifikaci (tím, že někde klasifikaci zlepší, zhorší ji zase jinde).

Celý proces je ve skutečnosti o něco složitější, například v jednom kole obvykle uvažujeme více příkladů naráz, nicméně základní myšlenku výše uvedená procedura ilustruje.

Neuronové sítě

Neuronové sítě vznikají spojováním neuronů. Příkladem může být jednoduchá síť na obr. 5. Všimněte si, že nyní má síť dvě vrstvy neuronů. Ta vnitřní, blíže vstupům, extrahuje zajímavé vlastnosti vstupů a tyto vlastnosti předává neuronu ve vyšší vrstvě, který ve rozhoduje o výsledku. Takto lze vrstvit neurony do libovolného počtu vrstev, čímž sítě dostávají schopnost vyšších kognitivních funkcí. Jednotlivé vrstvy nemusí mít vždy stejnou strukturu, neurony například nemusí brát své vstupy ze všech neuronů v nižší vrstvě, mohou počítat složitější funkce apod. Tímto se dostáváme k metodám tzv. hlubokého učení, ve kterém se modely skládají potenciálně z mnoha vrstev, které hierarchickým způsobem řeší daný problém a tomuto řešení se učí současně na základě stejného postupu, který jsme popsali pro jeden neuron.

 

Obr. 5. Schéma jednoduché dvouvrstvé neuronové sítě se dvěma vstupy a jedním výstupem.

Tuto myšlenku si můžeme ilustrovat na příkladu konvolučních sítí, které jsou základem pro zpracování obrazu. Malá konvoluční síť je znázorněna na obr. 6. Podívejme se nejprve na konvoluční vrstvu. Zde jsou neurony organizovány do tak zvaných map vlastností (feature maps). Každá mapa vlastnosti je obdélník neuronů, které se koukají do obrázku. Každý neuron se dívá pouze na malý čtvercový výřez obrázku, jehož pozice v obrázku odpovídá pozici neuronu v mapě. Všechny neurony v jedné mapě vlastností mají stejnou funkci (stejné váhy). Mapa tedy označuje pozice konkrétního jednoduchého útvaru v obrázku. Pokud např. neurony v mapě budou reagovat na horizontální čárku v jejich malém zorném poli, mapa pro daný vstupní obrázek ukáže místa, kde se v něm taková čárka nachází (viz obr. 6). Jiné mapy vlastností mohou hledat jiné malé vzory ve vstupním obrázku.

V naší malé konvoluční síti následuje za konvoluční vrstvou tak zvaná sumarizační vrstva (pooling). Smyslem této vrstvy je zmenšit velikost map vlastností tím, že se sumarizují hodnoty vedle sebe ležících neuronů. Zhruba řečeno, stačí nám pouze informace, že někde v tomto místě je horizontální čárka, nepotřebujeme její polohu zcela přesně. Každý sumarizační „neuron“ tedy spočítá maximální hodnotu neuronů ve svém zorném poli. Výše popsaný tandem konvoluční a sumarizační vrstvy se obvykle opakuje několikrát za sebou. Dostaneme hlubokou konvoluční síť, v níž vrstva nejblíže vstupu hledá jednoduché tvary ve vstupním obrázku. Vrstva nad ní hledá jednoduché tvary v předchozí vrstvě. Efektivně tedy hledá jednoduché tvary složené z jednoduchých tvarů. Tímto procesem se síť může naučit rozpoznávat komplexní tvary ve vrstvách, které jsou nejvíce vzdálené vstupu.

Pro ilustraci se podívejme na obr. 7. Zde vidíme vybrané mapy vlastností z různých vrstev konvoluční sítě, která klasifikuje karcinomy prostaty v malých výřezech skenů. Vidíme, že vstupu nejbližší vrstva (obr. 7B) v podstatě pouze obtahuje hrany. Vzdálenější vrstva (obr. 7C) pak detekuje složitější útvary a v podstatě segmentuje nádor ve snímku, přestože síť měla při tréninku pouze informaci, zda se nádor někde ve vstupním obrázku nachází.

Pozornost (attention) a transformer

Dnešní neuronové sítě jsou často postaveny na tak zvané transformerové architektuře. V tomto textu není možné popsat detaily těchto metod, nicméně pokusíme se ilustrovat základní myšlenku. V konvoluční síti si každý neuron hledí své malé oblasti v obrázku. Nicméně neurony ze stejné vrstvy mezi sebou nijak nekomunikují. Základem transformeru je tak zvaná self-attention vrstva, která zachycuje možné korelace mezi neurony ve stejné vrstvě. V případě konvoluční sítě pro zpracování obrazu by self-attention zachycovala vzájemné vztahy mezi oblastmi, které vidí neurony v různých částech obrázku. Neuron zaměřený na inspekci jedné malé oblasti obrázku tak může dostat k dispozici kontext ze vzdálenějších částí, a tedy lépe extrahovat informace z dané oblasti (např. při klasifikaci jader může nahlédnout, jak jsou okolní jádra poskládána, a tedy porozumět struktuře tkáně).

 

Obr. 6. Příklad malé konvoluční neuronové sítě, která obsahuje dvě konvoluční a sumarizační vrstvy následované jednoduchou vrstvou s jedním neuronem.

 

 

Obr. 7. Mapy vlastností z různých vrstev konvoluční neuronové sítě při analýze karcinomů prostaty. Obrázky byly převzaty z (8). A – Vstupní obrázek. B – Jedna z map v první vrstvě sítě pouze detekuje hrany. C – Mapa v poslední vrstvě, která segmentuje nádor.

 

Další učící úlohy

Dosud jsme strojové učení ilustrovali za pomoci problému klasifikace do dvou tříd. Existuje samozřejmě celá řada jiných úloh v digitální patologii, které se běžně řeší pomocí strojového učení. Pro obrazová data můžeme narazit například na následující úlohy:

Klasifikace do více tříd: Nádory je možné v obrázcích nejen detekovat, ale i klasifikovat je dle jejich charakteristických rysů, které nejsou vždy binární.

Segmentace: Pokud bychom po systému chtěli, aby nejen identifikoval snímky s nádorem, ale aby v nich také nádor vyznačil, řešili bychom segmentační úlohu. Tedy úlohu, v níž je cílem roztřídit jednotlivé obrazové body podle toho, do jakého sémantického útvaru v obrázku patří. Dalším typickým příkladem je segmentace jader buněk, která je výchozím bodem pro mnoho typů analýzy (např. (9)).

Detekce objektů: V některých případech je vhodné nádor označit jako kompletní objekt a poté tento objekt klasifikovat. Toto je problém detekce a klasifikace objektů, který se liší od segmentace tím, že výstupem je podobrázek a případně jeho třída. Důležitou skupinou úloh, které řeší detekce objektů, je identifikace oblastí zájmu (region of interest, ROI) (10).

Regresní úlohy: Ne vždy je naším cílem klasifikovat vstup do jedné z konečně mnoha daných tříd. Cílem může být odhadovat nějakou numerickou hodnotu ze vstupu. Příkladem může být odhad počtu mutovaných buněk v daném skenu (např. (11)). Výstupem modelu potom bude číslo, a ne konkrétní třída. Učení regresních systémů probíhá ovšem stejně jako pro klasifikační úlohy: Pro dané příklady provádíme změny modelu tak, aby se výstupy modelu blížily žádaným výstupům z tréninkové množiny dat.

Generativní modely: Obecně je cílem generativní modelů vytvářet výstupy, které se podobají datům z tréninkové množiny. V případě patologie bychom například mohli natrénovat generativní model na snímcích biopsií zdravých prostat poté jej nechat generovat nové snímky biopsií prostat, které ovšem budou zcela umělé bez biologických vzorů. Kromě matení lékařů v podobě deepfakes lze takové modely například využít pro konstrukci detektorů anomálií, tedy snímků, které se výrazně odlišují od snímků zdravé prostaty, které generuje náš model (např. (12)). Dále se takové modely dají použít ke generování tréninkových dat pro jiné typy modelů (např. (13)).

Další typy dat a k nim příslušející úlohy

Obecně lze strojové učení aplikovat na nejrůznější typy dat. Pro digitální patologii jsou nejvíce relevantní obrazová data, kterým proto věnujeme zvýšenou pozornost. Nicméně bude užitečné alespoň v rychlosti zmínit další typy dat, které se též v digitální patologii objevují.

Vícerozměrná obrazová data

Digitální patologie pracuje především se standardními snímky tkání. Nicméně zkoumají se 3D varianty vycházející buď ze současného zpracování více skenů a rekonstrukce 3D podoby tkáně případně z moderních zobrazovacích metod, které skenují celé bloky (14). Metody používané pro „obyčejné“ obrázky se obvykle dají zobecnit na vícerozměrné verze. Další vícerozměrné obrázky mohou například vyplynout ze spojení patologie s radiologií, kde zobrazovací metody typicky poskytují 3D obraz nebo s metodami poskytujícími videozáznam (například kolonoskopie).

Textová data

V současné době je oblast zpracování textu tahounem celého vývoje v AI (velké jazykové modely, např. ChatGPT (3) Llama

(15) a další). V lékařství obecně je obrovské množství textových dat ve formě různých lékařských záznamů a zpráv. V oblasti textu je již dnes škála využití velká. Učící systémy mohou ze zpráv extrahovat podstatné informace o pacientech a klasifikovat pacienty na základě zpráv. Generativní modely mohou například generovat lékařské zprávy (2) a zdůvodnění diagnózy (16), sumarizovat literaturu a výzkum (17) apod. Multimodální modely, které zvládají diagnostiku z obrázků i textu a zároveň generují svůj výstup v podobě čitelných zpráv uvidíme v poslední kapitole.

 

Tabulková data

Klinická data jsou obvykle v tabulkové formě. Informace o pacientovi a výsledcích základních vyšetření se obvykle vyjadřují pomocí standardizovaných hodnot (například cukrovka Ano/ Ne) nebo čísel (teplota). Základní informace o genetických mutacích, biomarkerech apod. se obvykle zapisují do tabulky, která se podobá tabulce použité pro ilustraci rozhodovacích stromů v kapitole Rozhodovací stromy. Pokud je informací příliš mnoho, například genetické vyšetření poskytuje informace o stovkách mutací, je nutné data zpracovávat jiným způsobem než menší tabulky. Zejména je nutné vybrat jen informace podstatné pro více pacientů, aby se model nenaučil řešit každého pacienta individuálně podle konkrétních znaků.

Časové řady

Pacient je typicky diagnostikován v průběhu léčby několikrát a jeho stav se vyvíjí v čase. Je tedy možné uvažovat časové řady záznamů (textových, obrazových) s cílem nalézt závislosti mezi jednotlivými stádii vývoje pacienta. Analýza časových řad je specifická oblast vyžadující modely, jejichž popis je nad rámec tohoto článku. Nicméně je dobré vědět, že modelování časových závislostí v datech může vést k přesnějším výsledkům (18).

DATA, UČÍCÍ POSTUP A VYHODNOCENÍ

V předchozí kapitole jsme ilustrovali principy učení vybraných modelů. Nicméně k praktickému využití modelů je nutné provést několik dalších kroků. Celou problematiku lze rozdělit do dvou fází: Učení a inference. Fáze učení je samotná tvorba nového modelu učením z dat. Inference je fází, při níž je model již hotov a aplikován na nová data.

Zkusme si ilustrovat učení a inferenci na problému rozpoznávání karcinomu prostaty v mikroskopických snímcích tkání z jehlových biopsií. Pro tuto chvíli budeme ignorovat detaily týkající se modelů jako takových i složitější úlohy strojového učení a zaměříme se na celkový proces učení a vyhodnocení pro jednoduchý klasifikační problém.

Učení v praxi

Zjednodušená formulace problému zní takto: Pro daný mikroskopický snímek tkáně rozhodni, zda obsahuje nádor. Jakým způsobem vytvoříme učící model pro řešení tohoto problému? Obvyklý postup probíhá takto: sběr vzorků a tvorba dat; trénink vybraného učícího model a konstrukce systému, který jej využívá; vyhodnocení naučeného modelu.

Podívejme se na jednotlivé kroky detailněji.

Tvorba dat

Prvním zásadním krokem je jasně formulovat řešený problém. V našem případě je nutné odpovědět na celou řadu otázek (viz také například (19,20)).

Jaká je přesná formulace problému a jaké vzorky použít?

Řekněme, že máme k dispozici větší množství vzorků jehlových biopsií prostaty obarvených hematoxylinem a eosinem (H&E), které by bylo možné naskenovat. Budeme tedy diagnostikovat nádor prostaty z jehlových biopsií obarvených H&E. Takto naučený systém nepůjde použít např. pro diagnostiku karcinomu tlustého střeva nebo biopsií s jiným barvením. Jak budeme skenovat? Je nutné tyto vzorky mít a udělat předběžnou kontrolu jejich kvality a konzistence. Zajistit skenovací kapacity.

Jak učícímu systému sdělit, kde je nádor?

Tato otázka se týká samotného řešení problému. Možností je více a jsou více či méně pracné. V našem příkladu je možné mít pouze informaci na úrovni pacienta, tedy zda měl či neměl nádor prostaty, kterou lze získat z lékařské zprávy. Další snadno získatelnou informací je přežití pacienta, kterou může učící systém predikovat. V rámci této predikce systém analyzuje obraz a může v něm odhalit morfologické znaky související s přežitím i když k tomuto účelu není přímo trénován (21). Detailnější informaci o tom, které skeny obsahují nádor, lze získat ze zprávy z patologie případně doplnit ručně. Lze ovšem také detailně anotovat obrázky a zakreslovat do nich více či méně přesně a úplně polohu nádorů. Tento přístup samozřejmě usnadní učení modelu a bude patrně vyžadovat menší množství snímků, bude však velmi pracný pro patology účastnící se takového projektu.

Jak anotace vytvořit?

Pro práci se snímky je nutné disponovat vhodným prohlížečem snímků. Existují volně dostupné prohlížeče pro vědecké účely (QuPath (22), Cytomine Community Edition (23), xOpat (24) a další) i komerční řešení (Cytomine Enterprise Edition, PathoZoom a mnoho dalších). Pokud se rozhodneme pro detailní anotace snímků, prohlížeč musí umožňovat anotování pomocí kreslících prostředků. V případě, že se jedná o obrovské datasety o tisících snímcích, je často nutné i anotace pro celý vzorek extrahovat automatizovaně z laboratorních informačních systémů. K tomuto účelu je potenciálně možné využít učících metod. Například informace o nádorech ve vzorcích by mělo jít extrahovat ze zpráv pomocí metod pro zpracování textu (2).

Anotace je vždy nutné jasným způsobem propojit se snímky. Například informaci o nádorech ve skenech je možné propojit se snímky pomocí vhodné tabulky. Z naší zkušenosti plyne, že právě v tomto propojení dochází nejčastěji k chybám, které se pak propagují dál do učení a vyhodnocení modelů. Je bohužel poměrně nešťastnou praxí informace o diagnóze ukládat do jmen souborů s obrázky. Při strojovém zpracování mohou tato jména být automaticky změněna a informace se poté ztratí.

Kam uložit skeny a jaká metadata k nim připojit?

Je nutné mít dostatečně velké úložiště. Konkrétně mikroskopické snímky jsou obrovské, velikosti souborů se pohybují kolem jednoho GB. To znamená, že běžný relativně malý dataset o tisících obrázcích se bude velikostně pohybovat v terabytech. Velký dataset (viz kapitola Současné metody strojového učení) bude v petabytech. Metadata potom musí obsahovat informace relevantní řešenému problému, tedy diagnostické anotace, a informace o historii vzorku, který byl skenován. Tedy jaký byl použit skener, jaké zvětšení, zda bylo již provedeno předzpracování (např. změna barev, doostřování).

Jak dostat data od lékařů k informatikům?

Vzhledem k tomu, že pro učení neuronových sítí je nutné mít netriviální výpočetní kapacity, bude nutné data přesunout k výpočetním zdrojům. Je nutné počítat s technickým zajištěním přenosu (kvalitní síťové připojení) a legislativní bariérou (jedná se o citlivá data). Je tedy nutné mít uzavřené smlouvy o použití dat pro daný účel. K tomuto kroku se také vztahuje problém pseudonymizace dat. Je nutné snímky identifikovat pomocí označení, ze kterého nelze vydedukovat osobní údaje pacientů. Nicméně je stále nutné zachovat možnost tuto identifikaci provést na straně nemocnice a je nutné mít schopnost propojit anotace se snímky.

Trénink učících modelů

Tento typicky probíhá na straně informatiků, kteří převezmou data od nemocnic a dále s nimi pracují. V případě, že se model trénuje na datech z více různých institucí, je nutné je spojit dohromady, ale přesto zachovat identifikaci zdroje.

Trénink modelu probíhá v následujících krocích: V prvním kroku je převzetí dat od producenta, v našem případě od nemocnice.

 

Tento krok často zahrnuje řešení netriviálních problémů jako například otevírání souborů různých formátů, které jsou typicky proprietární. Dál následuje kontrola kvality dat. Tato kontrola je zaměřena na zjevné defekty snímků, mezi které patří špatné zaostření, špína na skle, přehnutá místa či jiné artefakty apod. Pro identifikaci jednotlivých problémů existují specializované metody, které mohou, ale nemusí být založené na strojovém učení. Kontrola vyústí buď ve vyřazení celých snímků nebo případně k označení jejich částí, které mají být v dalším zpracování ignorovány. Oddělení tréninkové a testovací množiny dat je nutný krok, který je klíčový pro objektivní posouzení kvality naučených modelů. Do samotného učení vstupuje pouze tréninková množina dat. Testovací množina je odložena a bude použita na samém konci k posouzení výsledného modelu. Zde je nutné poznamenat, že tréninková množina nesmí sdílet pacienty s tou testovací. Článek (25) ukazuje, že dostatečně silný učící systém umí částečně poznat, že analyzuje stejného pacienta, byť kouká na jiný vzorek tkáně z téhož pacienta. Toto může vést ke zkresleně optimistickým výsledkům vyhodnocení modelu, což je ta nejhorší chyba, která může při tvorbě učícího systému nastat. Následující krok je předzpracování dat. Zde se jedná o specializovaný proces související se strojovým učením. Některé modely jsou citlivé na konkrétní reprezentace dat. Například je typicky nutné provést standardizaci barev pro snímky z různých zdrojů. Další v pořadí je augmentace dat. Učící modely ve výsledku fungují pouze na datech, které se podobají těm tréninkovým. Z toho důvodu se zajišťuje maximální diverzita dat tím, že se do tréninkové množiny uměle přidávají další příklady. V našem případě jsou to například různé rotace či překlopení již existujících snímků případně umělé změny jejich barevnosti (změna sytosti barev apod.). A nakonec samotný trénink. Zde se typicky použijí existující prostředky vyvinuté společnostmi jako jsou Google (Tensorflow) nebo Meta (PyTorch) apod. k implementaci postupů, které byly popsány v předchozí kapitole. Výsledkem učení je natrénovaný model, který můžeme použít na nová data.

Vyhodnocení učících modelů

Toto je kritický krok, který obvykle rozhoduje o úspěchu a neúspěchu projektu. Jakým způsobem vyhodnotit, zda učící systém spolehlivě diagnostikuje nádor prostaty?

V procesu popsaném v předchozí sekci jsme si odložili testovací množinu. Tato slouží informatikům pro finální test předtím, než předají výsledek lékařům k dalšímu testovaní prototypu. Stále se tedy jedná o test na retrospektivních datech, ale alespoň takových, která nebyla přímo využita k tréninku. Následovat musí testování v provozních podmínkách, tedy přímo při diagnostice v nemocnici.

Vyhodnocení na testovací množině

Předpokládejme, že máme naučený systém, který můžeme aplikovat na obrázky z testovací množiny. Učící systém nám dá výsledek, který můžeme konfrontovat s výsledkem, který byl dán při tvorbě dat. V našem příkladu nám systém dává informaci o tom, zda daný vstupní snímek obsahuje nádor nebo ne. Předpokládejme, že pro snímky z testovací množiny máme informaci o přítomnosti či nepřítomnosti nádoru.

Pro vyhodnocení kvality modelu se používá celá řada metrik. Mnoho z nich se běžně vyskytuje v medicíně, např. specificita a sensitivita. Pro definici metrik je dobré nejprve rozdělit testovací případy do následujících skupin: Skutečně pozitivní – pozitivní vzorek (tedy obsahuje nádor) a model jej také označuje za pozitivní. Falešně pozitivní – negativní vzorek, ale model jej označil za pozitivní. Skutečně negativní – negativní vzorek a model jej označil za negativní. Falešně negativní – pozitivní vzorek, ale model jej označil za negativní. Této kategorii se chceme maximálně vyhnout i za cenu zvýšení počtu falešně pozitivních případů.

Pro ilustraci uvažme testovací množinu o pěti obrázcích A, B, C, D, E (v praxi je třeba použít výrazně více dat), z nichž A, B, C neobsahují nádor, D, E obsahují nádor, A, B, D označí model jako nenádorové, C, E označí model za snímky s nádorem. Máme tedy jeden skutečně pozitivní vzorek E, jeden falešně pozitivní C, dva skutečně negativní A, B a jeden falešně negativní D.

Nyní můžeme schopnosti modelu posuzovat pomocí tréninkové množiny podobným způsobem, jako se posuzuje např. kvalita léků. Můžeme počítat známé metriky:

Sensitivita: Poměr počtu skutečně pozitivních vůči počtu všech vzorků s nádorem. Tedy jaká je šance, že model označí za pozitivní vzorek s nádorem. V našem případě je jeden vzorek skutečně pozitivní a dva obsahují nádor, sensitivita je tedy 1/2. Tuto metriku bychom ideálně chtěli mít rovnu 1. To není téměř nikdy možné zajistit, nicméně se jedničce chceme blížit.

Specificita: Poměr počtu skutečně negativních vůči počtu všech vzorků bez nádoru. V našem případě ze třech nenádorových snímků byly za negativní modelem označeny dva. Specificita je tedy 2/3. Čím vyšší je toto číslo, tím zjevně lépe. Nicméně za vyšší specificitu obvykle platíme nižší sensitivitou, která má v medicíně obvykle přednost.

Povšimněte si, že výše uvedené metriky jsou pouze statistického charakteru (jsou vlastně průměrem přes testovací množinu) a vztahují se pouze k testovací množině. Z toho plyne, že nám dávají pouze indikaci schopností modelu (obvykle funguje) a musíme se ujistit, že je testovací množina dostatečně reprezentativní. V dnešní době je poměrně častá kritika AI modelů založena právě na tom, že jsou vyhodnocovány jen statisticky a nedávají tedy jistotu správného výsledku. Fakt, že toto vyhodnocení je běžně přijímáno v případě léků, přístrojové techniky a léčebných postupů je v diskuzi obvykle opomíjen.

Další zajímavostí může být fakt, že se výše uvedené metriky nazývají různě v různých komunitách. Odborník v oblasti datových věd bude patrně používat k vyhodnocení precision a recall modelu. Ve skutečnosti recall je totéž jako sensitivita a také tak zvaná true positive rate (která se používá při konstrukci ROC křivky, viz níže). Na druhou stranu, precision obvykle odpovídá poměru počtu skutečně pozitivních k počtu všech pozitivních, což není specificita (byla by, pokud bychom v definici recall prohodili negativní a pozitivní třídy). Tímto mohou vznikat značné komunikační zmatky.

Ilustrace v patologii

Uvažme problém detekce karcinomu prostaty z článku (26). Popsaný model klasifikuje WSI do tříd podle Gleason score, perineurálních invazí atd. Článek obsahuje podrobné vyhodnocení klasifikátorů. Pro ilustraci se omezíme pouze na detekci nádoru jako takovou. Vyhodnocení bylo provedeno na testovací množině 2447 skenů. Model predikuje, zda celý sken obsahuje nádor, zároveň tuto informaci máme k dispozici pro jednotlivé skeny od patologů. Vzhledem k tomu, že klasifikátor predikuje pravděpodobnost nádoru, je třeba stanovit práh pravděpodobnosti nad kterým predikujeme nádor. V (26) je tento práh stanoven tak, aby byla specificita alespoň 90 procent.

Výsledek můžeme vidět v tab. 2. Pouze dva pozitivní skeny byly označeny za negativní. Toto je samozřejmě velmi nebezpečná chyba, ale při daném počtu skenů patrně nevyhnutelná.

Tabulka č. 2. Vyhodnocení modelu pro predikci nádoru prostaty (26).

 

Dle modelu

Dle skutečnosti

Celkem

Pozitivní

Negativní

Pozitivní

488

195

683

Negativní

2

1762

1764

Celkem

490

1957

2447

 

195 negativních skenů z 1957 bylo označeno za pozitivní, což je dáno požadavkem na specificitu a zdá se být přijatelné (systém byl později certifikován pro použití v klinické praxi).

ROC-AUC křivka

Jak jsme již naznačili v kapitole Neuronové sítě, neuronové sítě určené pro klasifikaci obvykle vracejí pravděpodobnosti jednotlivých tříd místo tříd samotných. Výsledná klasifikace se poté dostane z pravděpodobnosti prahováním. Nicméně pravděpodobnosti lze využít k vyhodnocení schopnosti modelu klasifikovat bez ohledu na to, jaký práh bude zvolen.

Předpokládejme, že máme natrénovaný detektor karcinomu, který nám pro daný snímek I vrátí pravděpodobnost nádoru P. Pokud fixujeme práh t, můžeme klasifikovat snímek I jako nádorový, pokud P je větší nebo rovno t a jako nenádorový jinak. Pro takový klasifikátor můžeme spočítat sensitivitu a označit ji sensitivity(t). Všimněte si, že s rostoucím prahem t sensitivita klesá. To je špatné. Ovšem co nám také klesá je počet falešně pozitivních případů, což je dobré. Definujeme tzv. podíl falešně pozitivních výsledků (False Positive Rate, FPR) jako poměr počtu falešně pozitivních a všech negativních vzorků. Pro daný práh dostaneme FPR(t) klasifikátoru s tímto prahem.

Nyní můžeme sledovat, jak se s rostoucím prahem t mění sensitivity(t) a FPR(t). Typický příklad můžete vidět na obr. 8. Pokud je práh roven nule, všechny pozitivní vzorky jsou skutečně pozitivní (model je označí za pozitivní) a sensitivity(t) bude rovna 1. Stejně tak všechny negativní vzorky budou označeny za pozitivní, FPR(t) bude také 1. Naopak, předpokládejme, že žádný vzorek nedostane od modelu pravděpodobnost 1. Potom pro práh 1 nebude žádný skutečně ani falešně pozitivní a obě metriky sensitivity(t) i FPR(t) budou rovny nule. Pokud bude práh mezi 0 a 1, dostaneme jeden z bodů na křivce v obr. 8.

AUC potom měří plochu pod ROC křivkou. Čím větší tato plocha je, tím je klasifikátor lepší. Pro velké AUC budeme schopni najít práh, pro který bude malý počet falešně pozitivních predikcí (FPR(t) bude malá) a velký počet skutečně pozitivních (sensitivita(t) bude vysoká).

Ilustrace v patologii

Předpokládejme, že ROC křivka z obr. 8 popisuje vyhodnocení modelu pro detekci karcinomu prostaty. Plocha pod touto křivkou (ROC-AUC) je rovna 0.91. Toto číslo nám samo o sobě mnoho neřekne. Nicméně z tvaru křivky je možné odhadnout vhodný práh pro pravděpodobnost pozitivní predikce. Bude to práh t při němž bude hodnota sensitivita(t) již blízká 1 a FPR(t) stále blízká 0, tedy za t zvolíme hodnotu blízkou nule.

 

Obr. 8. ROC Křivka. Levý dolní roh odpovídá prahu t = 0 a pravý horní roh prahu t = 1. AUC je plocha pod křivkou.

 

Obr. 9. Příklad nesprávně klasifikovaného výřezu WSI. Modře je ručně vyznačena oblast s karcinomem, kterou však natrénovaný model nezachytil. Použitím vysvětlitelné metody (okluze) však vidíme, že jisté pronádorové znaky model přesto identifikuje (zelené oblasti).

 

 

Detailní vyhodnocení a vysvětlitelnost

Jakmile je model vyhodnocen na testovací množině a statistické výsledky jsou dostatečně dobré, můžeme přejít k rozsáhlejšímu testování, které je obvykle spojeno s inspekcí konkrétních případů. Zejména případy, při nichž dochází k nesprávné klasifikaci případně velmi odlišným hodnotám při regresi jsou důležité z hlediska případné úpravy dat, modelu apod.

Pro ilustraci, na obr. 9 můžeme vidět výřez WSI, který byl nesprávně predikován klasifikátorem karcinomu prostaty (modrá oblast je ruční anotace karcinomu vyznačená patologem). Z obrázku lze usuzovat, že model má problém nalézt karcinom ve výřezu, který obsahuje málo tkáně. Jakým způsobem můžeme tuto hypotézu potvrdit?

Problém s učícími modely je obvykle v tom, že není zcela jasné, jak přesně generují svůj výstup. V případě menších rozhodovacích stromů se můžeme podívat na jednotlivé otázky, což nám dá celkem jasnou představu o funkcionalitě stromu. U velkých stromů o tisících rozhodovacích uzlů je to samozřejmě mnohem obtížnější. Podobně jeden neuron celkem jasně indikuje, jakým způsobem zpracuje jednotlivé vstupy (větší váha znamená větší vliv vstupu). Co lze ovšem nahlédnout z vah velkých neuronových sítí? Obecně téměř nic, jedná se o tak zvaný black-box model.

Z toho důvodu se v posledních letech rapidně vyvíjejí metody vysvětlitelné umělé inteligence (pro přehled například (27,28)) jejichž cílem je poodhalit, jak modely fungují a jaké jsou jejich limity. Jedná se o obrovskou oblast, kterou samozřejmě nelze pokrýt v tomto textu, podívejme se tedy jen na jednoduchou ilustraci z článku (29).

Na obr. 9 vidíme výsledek aplikace velmi jednoduché metody okluze, která indikuje, které části vstupního obrázku model považuje za podstatné pro své rozhodnutí o tom, zda se někde v obrázku nalézá nádor. Okluze funguje tak, že malým čtverečkem postupně zakrýváme vstupní obrázek a sledujeme změny v predikci (rozdíly v predikované pravděpodobnosti nádoru). Oblasti obrázku, které vyvolají největší snížení pravděpodobnosti jsou označeny zelenou barvou, právě tyto oblasti model vidí jako nádorové. Zde vidíme, že model sice nějakým způsobem reflektuje nádor, nicméně v rámci celého výřezu je přesvědčen o nepřítomnosti nádoru. Opět patrně narážíme na problém statistického zpracování dat: Defektem modelu je fakt, že malé množství nádorové tkáně může statistický model vyhodnotit jen jako šum a vrátit negativní diagnózu.

Vyhodnocení v praxi a provoz

Pro další vyhodnocení systému bude nutné přejít do inferenční fáze v níž vyhodnotíme celkové fungování, efektivitu, přínos pro uživatele atd. V této fázi vývoje učícího systému je tento typicky nasazen v prototypovém provozu, v němž je možné sledovat jeho efektivitu při řešení dané úlohy. V našem příkladu se jedná o diagnostický systém nádoru prostaty, který by měl patologovi napovědět, které snímky patrně obsahují nádor. Takový systém může například sloužit k předtřídění snímků před jejich inspekcí. Na této aplikaci nyní ilustrujeme inferenční fázi.

Učící systém je nutné zasadit do pracovního postupu uživatele. V našem případě tedy učící systém musí dostávat skeny vzorků a poté výsledky zprostředkovávat uživateli srozumitelnou formou. Konkrétní postup samozřejmě závisí na uživateli, nicméně i na takto abstraktních požadavcích lze ilustrovat základní vyhodnocení systému.

Obvykle měříme dva typy výkonnostních parametrů: rychlost odezvy a kvalitu výstupu. Rychlost je jednoduchá metrika. Pokud by například diagnostický systém odpovídal do týdne, nebyl by v provozu patrně použitelný. Pro práci v reálném čase bychom patrně očekávali odezvu v řádu sekund, maximálně jednotek minut.

Kvalitu výstupu je samozřejmě mnohem obtížnější popsat. V případě našeho systému pro předtřídění snímků bychom vyhodnocovali úsporu času při diagnostice případně počty snímků, které nemusely být vzaty v potaz, protože nádor se na nich evidentně nenacházel. V mnoha případech se modely vyhodnocují z hlediska uživatelské pohodlnosti, přínosu z hlediska diagnostiky v provozu, eliminace falešně negativních nálezů atd.

Implementace

Pro efektivní provoz diagnostického systému v patologii je nutné zajistit rychlý přenos a vyhodnocení snímků. To vyžaduje robustní počítačovou infrastrukturou, která je schopna přesouvat velké objemy dat k učícím systémům (velikost obrázku je v řádu gigabajtů) a provádět na těchto datech komplexní výpočty (vyhodnocení modelů).

Dále je typicky nutná integrace diagnostického učícího systému s laboratorním (nemocničním) informačním systémem. Toto je v současné době značně netriviální krok. Neexistují všeobecně uznávané standardy v oblasti formátu obrazových dat ani pro komunikaci s laboratorními systémy v oblasti digitální patologie. Integrace se proto typicky provádí na míru danému systému, což je zdlouhavý proces vyžadující koordinaci s výrobci skenerů, výrobci laboratorních systémů a IT odděleními nemocnic. Dalším problémem je certifikace zdravotnických prostředků, která omezuje další vývoj softwarového vybavení. Jakmile je systém certifikován, není možné jej měnit. U software v relativně nové oblasti jako je digitální patologie je toto zásadní překážkou plošného nasazení učících systémů. Pro více detailů o testování učících modelů v digitální patologii doporučujeme nahlédnout například do tohoto článku (29).

ZÁKLADNÍ MODELY

Strojové učení v digitální patologii se vyvíjí extrémně rychle společně s explozivním vývojem strojového učení obecně. V této krátké sekci se podíváme na základní modely, jejich využití v digitální patologii a naznačíme, jakým směrem se ubírá jejich vývoj.

Základní modely obecně

Základní modely (foundation models) jsou velké modely trénované na obrovském množství dat, které slouží jako základní stavební kámen pro řešení mnoha konkrétních úloh. Pro ilustraci uveďme například model GPT-2.0, který do nedávna stál za systémem ChatGPT. Jedná se v podstatě o neuronovou síť, která je trénována pro řešení jednoduché úlohy: Doplň následující slovo do neúplné věty. Takovou síť bylo možné natrénovat na obrovském množství dat (mimo jiné 8 miliónů webových stránek) bez jakéhokoliv zaměření na specifický úkol. Výsledkem je model, který dokáže více či méně smysluplně generovat věty v daném jazyce. Podstatnou vlastností ovšem je, že za účelem tohoto generování musí model umět extrahovat podstatné sémantické vlastnosti daného textu, velmi hrubě řečeno, umí vytvořit reprezentaci daného vstupu (věty), která obsahuje podstatné informace o jejím významu. Tato informace může být dále využita například systémem, který klasifikuje náladu pisatele.

V současné době již existují i multimodální základní modely, které jsou trénovány nejen na textu, ale i na datech různé modality současně. Příkladem je model CLIP, jehož úkolem je porozumět textu i obrázkům zároveň. Tento model byl trénován na jednoduchém principu: rozhodnout, zda dvojice obrázku a textu k sobě patří. Tento jednoduchý princip lze dále rozšířit například na generování popisků k obrázkům nebo odpovídání na otázky týkající se obrázků.

Základní modely v digitální patologii

Obecné modely ovšem nerozumějí patologii, tato oblast je již příliš specializovaná. Proto je v posledních dvou letech snaha natrénovat velké základní modely specificky pro patologii. Příklady těchto velkých základních modelů zahrnují Prov-GigaPath (30), PLUTO (31), UNI (32), Phikon-v2 (33) a Virchow2 (34).

Společným rysem všech těchto modelů je, že jsou trénovány na enormním množství různorodých dat. Tato různorodost zahrnuje různé typy tkání, odlišná barvení, různá zvětšení, a navíc data pocházející z mnoha patologických laboratoří. Pro lepší představu uveďme konkrétní čísla trénovacího datasetu modelu Virchow2. Tento dataset zahrnuje 3,1 milionu WSI snímků, které lze dále rozčlenit na téměř 200 typů tkání, čtyři úrovně zvětšení (5×, 10×, 20×, 40×) a dvě hlavní metody barvení: H&E a imunohistochemie.

V digitální patologii se již objevily také systémy, které využívají multimodální modely. Příkladem je PathChat (35). PathChat je AI konzultant podobný systému ChatGPT, který dokáže porozumět snímkům z mikroskopů a k nim příslušnému klinicky relevantnímu textu. Díky tomu umožňuje vést konverzaci, která kombinuje informace z textu a obrazových dat.

Vývoj a budoucnost základních modelů v digitální patologii

Vývoj základních modelů v digitální patologii je stále v relativně rané fázi, ale přesto už ukazuje obrovský potenciál v oblasti automatizované analýzy patologických snímků a diagnostiky. Jak se technologie stává vyspělejší, očekává se, že budou vznikat modely s ještě širšími a hlubšími schopnostmi, které budou schopny porozumět komplexnějším vzorcům v patologických datech a efektivně je interpretovat pro lékařské aplikace. Tyto modely se následně mohou dotrénovat na datech z konkrétního laboratoře, aby lépe přizpůsobily své predikce specifickým potřebám daného pracoviště.

Ve výhledu na budoucnost tak můžeme očekávat stále větší integraci strojového učení do diagnostických procesů v patologii, což umožní lékařům nejen rychlejší, ale i přesnější analýzu a diagnostiku, a tím zlepší celkovou kvalitu zdravotní péče.

 

ZÁVĚR

V textu jsme se věnovali základům strojového učení. Vysvětlili jsme si, jak fungují rozhodovací stromy, které jsou nejen jedním ze základních učících modelů používaným hojně v praxi, ale i jedním z nejpřístupnějších modelů pro pochopení strojového učení. Neuronové sítě, které jsou zásadním učícím modelem dnešní doby, byly uvedeny postupně od jednoduchého neuronu, přes sítě neuronů, až po specializované modely konvolučních sítí vhodné pro extrakci vlastností obrázků. Poté jsme se věnovali důkladnějšímu průchodu celým učícím procesem počínaje přípravou dat, přes jejich zpracování strojovým učením až po exaktní vyhodnocení naučeného modelu. Tento proces je dobré mít stále na paměti v průběhu spolupráce na vývoji učícího systému. Vyhodnocení modelů je nejdůležitější částí, která musí být provedena korektně, jinak hrozí neoprávněně optimistické hodnocení modelu. Na konci text jsme se krátce věnovali základním modelům, které se jeví být budoucností strojového učení a potažmo i umělé inteligence v digitální patologii. Prezentované myšlenky jsou samozřejmě jen výchozím bodem pro porozumění strojovému učení, které je obrovskou a neustále se rapidně rozvíjející mezioborovou vědní oblastí.

Tento text je prvním ze dvou, které se věnují základům strojového učení v digitální patologii. Jeho primárním cílem je úvod do metod strojového učení. Druhý text se bude věnovat více aplikacím strojového učení v patologii s uvedením konkrétních laboratorních i technických postupů.

PROHLÁŠENÍ

Autor práce prohlašuje, že v souvislosti s tématem, vznikem a publikací tohoto článku není ve střetu zájmů a vznik ani publikace článku nebyly podpořeny žádnou farmaceutickou firmou. Toto prohlášení se týká i všech spoluautorů.


Sources

  1. Song AH, Jaume G, Williamson DFK, et al. Artificial intelligence for digital and computational pathology. Nat Rev Bioeng 2023; 1(12): 930–949.
  2. Chen P, Li H, Zhu C, Zheng S, Shui Z, Yang L. WsiCaption: Multiple Instance Generation of Pathology Reports for Gigapixel Whole-Slide Images. In: Linguraru MG, Dou Q, Feragen A, et al., editors. Medical Image Computing and Computer Assisted Intervention – MICCAI 2024 [Internet]. Cham: Springer Nature Switzerland; 2024 [cited 2024 Nov 14]. p. 546–556. (Lecture Notes in Computer Science; vol. 15004). Available from: https://link.springer. com/10.1007/978-3-031-72083-3_51
  3. ChatGPT [Internet]. OpenAI; (Large language model). Available from: https://chat.openai. com/
  4. Russell SJ, Norvig P, Davis E. Artificial intelligence: a modern approach. 3rd ed. Upper Saddle River: Prentice Hall; 2010. 1132 p. (Prentice Hall series in artificial intelligence).
  5. Géron A. Hands-on machine learning with Scikit-Learn, Keras and TensorFlow: concepts, tools, and techniques to build intelligent systems. Third edition. Beijing: O’Reilly Media, Inc; 2023. 834 p.
  6. Street WN, Wolberg WH, Mangasarian OL. Nuclear feature extraction for breast tumor diagnosis. In: Acharya RS, Goldgof DB, editors. San Jose, CA; 1993 [cited 2024 Nov 14]. p. 861–70. Available from: http://proceedings. spiedigitallibrary.org/proceeding.aspx?articleid=1008972
  7. Hendriks MP, Verbeek XAAM, van Manen JG, et al. Clinical decision trees support systematic evaluation of multidisciplinary team recommendations. Breast Cancer Res Treat 2020; 183(2): 355–363.
  8. Hruška J. Visualization of hidden layers in convolutional neural networks [Internet]. Masarykova univerzita, Fakulta informatiky; 2022. Available from: https://is.muni.cz/auth/ th/huq0h/#paneltext
  9. Khened M, Kori A, Rajkumar H, Krishnamurthi G, Srinivasan B. A generalized deep learning framework for whole-slide image segmentation and analysis. Sci Rep 2021;11(1): 11579.
  10. Amerikanos P, Maglogiannis I. Image Analysis in Digital Pathology Utilizing Machine Learning and Deep Neural Networks. JPM 2022; 12(9): 1444.
  11. Xu J, Wang A, Wang Y, et al. AICellCounter: A Machine Learning-Based Automated Cell Counting Tool Requiring Only One Image for Training. Neurosci Bull 2023; 39(1): 83–88.
  12. Pocevičiūtė M, Eilertsen G, Lundström C. Unsupervised anomaly detection in digital pathology using GANs [Internet]. arXiv; 2021 [cited 2024 Nov 15]. Available from: https:// arxiv.org/abs/2103.08945
  13. Pozzi M, Noei S, Robbi E, et al. Generating synthetic data in digital pathology through diffusion models: a multifaceted approach to evaluation [Internet]. Pathology; 2023 [cited 2024 Nov 15]. Available from: http://medrxiv. org/lookup/doi/10.1101/2023.11.21.23298808
  14. Serafin R, Xie W, Glaser AK, Liu JTC. FalseColor-Python: A rapid intensity-leveling and digital-staining package for fluorescence-based slide-free digital pathology. Lin JCW editor. PLoS ONE 2020; 15(10): e0233198.
  15. Dubey A, Jauhri A, Pandey A, et al. The Llama 3 Herd of Models [Internet]. arXiv; 2024 [cited 2024 Nov 14]. Available from: http:// arxiv.org/abs/2407.21783
  16. Nguyen AT, Vuong TTL, Kwak JT. Towards a Text-Based Quantitative and Explainable Histopathology Image Analysis. In: Linguraru MG, Dou Q, Feragen A, et al., editors. Medical Image Computing and Computer Assisted Intervention – MICCAI 2024 [Internet]. Cham: Springer Nature Switzerland; 2024 [cited 2024 Nov 14]. p. 514–524. (Lecture Notes in Computer Science; vol. 15004). Available from: https://link.springer.com/10.1007/9783-031-72083-3_48
  17. Omar M, Ullanat V, Loda M, Marchionni L, Umeton R. ChatGPT for digital pathology research. Lancet Digit Health 2024; 6(8): e595– 600.
  18. Waqas A, Naveed J, Shahnawaz W, Asghar S, Bui MM, Rasool G. Digital pathology and multimodal learning on oncology data. BJR|Artificial Intelligence 2024; 1(1): ubae014.
  19. Shafi S, Parwani AV. Artificial intelligence in diagnostic pathology. Diagn Pathol 2023; 18(1): 109.
  20. Moxley-Wyles B, Colling R. Artificial intelligence and digital pathology: where are we now and what are the implementation barriers? Diagnostic Histopathology 2024; 30(11): 597–603.
  21. Wulczyn E, Steiner DF, Moran M, et al. Interpretable survival prediction for colorectal cancer using deep learning. npj Digit Med 2021; 4(1): 71.
  22. Bankhead P, Loughrey MB, Fernández JA, et al. QuPath: Open source software for digital pathology image analysis. Sci Rep 2017; 7(1): 16878.
  23. Marée R, Rollus L, Stévens B, et al. Collaborative analysis of multi-gigapixel imaging data using Cytomine. Bioinformatics 2016; 32(9): 1395–1401.
  24. Horák J, Furmanová K, Kozlíková B, et al. xOpat: eXplainable Open Pathology Analysis Tool. Computer Graphics Forum 2023; 42(3): 63–73.
  25. Holub P, Müller H, Bíl T, et al. Privacy risks of whole-slide image sharing in digital pathology. Nat Commun 2023; 14(1): 2577.
  26. Pantanowitz L, Quiroga-Garza GM, Bien L, et al. An artificial intelligence algorithm for prostate cancer diagnosis in whole slide images of core needle biopsies: a blinded clinical validation and deployment study. The Lancet Digital Health 2020; 2(8): e407–416.
  27. Rong Y, Leemann T, Nguyen TT, et al. Towards Human-Centered Explainable AI: A Survey of User Studies for Model Explanations. IEEE Trans Pattern Anal Mach Intell 2024; 46(4): 2104–2122.
  28. Mersha M, Lam K, Wood J, AlShami AK, Kalita J. Explainable artificial intelligence: A survey of needs, techniques, applications, and future direction. Neurocomputing 2024; 599: 128111.
  29. Gallo M, Krajňanský V, Nenutil R, Holub P, Brázdil T. Shedding light on the black box of a neural network used to detect prostate cancer in whole slide images by occlusion-based explainability. New Biotechnology 2023; 78: 52–67.
  1. Xu H, Usuyama N, Bagga J, et al. A wholeslide foundation model for digital pathology from real-world data. Nature 2024; 630(8015): 181–188.
  2. Juyal D, Padigela H, Shah C, et al. PLUTO: Pathology-Universal Transformer [Internet]. arXiv; 2024 [cited 2024 Dec 6]. Available from: http://arxiv.org/abs/2405.07905
  3. Chen RJ, Ding T, Lu MY, et al. Towards a general-purpose foundation model for computational pathology. Nat Med 2024; 30(3): 850–862.
  4. Filiot A, Jacob P, Kain AM, Saillard C. Phikon-v2, A large and public feature extractor for biomarker prediction [Internet]. arXiv; 2024 [cited 2024 Dec 6]. Available from: http://arxiv.org/abs/2409.09173
  5. Zimmermann E, Vorontsov E, Viret J, et al. Virchow2: Scaling Self-Supervised Mixed Magnification Models in Pathology [Internet]. arXiv; 2024 [cited 2024 Nov 19]. Available from: http://arxiv.org/abs/2408.00738
  6. Lu MY, Chen B, Williamson DFK, et al. A multimodal generative AI copilot for human pathology. Nature 2024; 634(8033): 466–473.
Labels
Anatomical pathology Forensic medical examiner Toxicology
Login
Forgotten password

Enter the email address that you registered with. We will send you instructions on how to set a new password.

Login

Don‘t have an account?  Create new account

#ADS_BOTTOM_SCRIPTS#