AI w medycynie I

Sztuczna Inteligencja w Medycynie.

Włodzisław Duch


I. Co to jest sztuczna inteligencja i do czego się może przydać medykom - 4 godz.

II. Przykłady zastosowań sztucznej inteligencji w medycynie - 4 godz.


Co to jest "Inteligencja Obliczeniowa" (Computational Intelligence, CI)?

Dziedzina nauki, zajmująca się rozwiązywaniem problemów, które nie są efektywnie algorytmizowalne, za pomocą obliczeń.

Pzykłady problemów niealgorytmizowalnych: rozumienie sensu zdań, rozpoznawanie twarzy, rozpoznawanie mowy, pisma ręcznego, planowanie terapii, rozwiązywanie nietypowych problemów.

Efektywna algorytmizowalność: przepis (algorytm) pozwalający na rozwiązanie zadań nie tylko w prostych, ale również złożonych sytuacjach.
Przykład: problem wyboru najkrótszej drogi (problem komwojażera) objazdu 5 miejsc da się łatwo rozwiązać, ale 100 nie, gdyż mamy 100!=10158 możliwości! Tego samego rodzaju są problemy optymalizacji wykorzystania sal wykładowych (układanie planu), upakowania towarów (walizka jeszcze się da dobrze upakować, ale kontener już trudniej).

Częścią CI jest sztuczna inteligencja (Artificial Intelligence, AI), zajmująca się modelowaniem wiedzy, rozwiązywaniem problemów niealgorytmizowalnych w oparciu o symboliczną reprezentację wiedzy.

Dziedziny wchodzące w skład CI: sztuczne sieci neuronowe, logika rozmyta, algorytmy genetyczne i programowanie ewolucyjne, określane często wspólną nazwą "soft computing".
W skład CI wchodzą też: metody uczenia maszynowego, rozpoznawania obiektów (pattern recognition), metody statystyki wielowymiarowej (klasteryzacja, dyskryminacja, metody oparte na podobieństwie), metody optymalizacji, metody modelowania niepewności - probabilistyczne, posybilistyczne, zgrzebne (czyli zbiory i logika przybliżona), oraz metody teorii kontroli i sterowania.

ci.gif (7670 bytes)

CI wykorzystuje metody matematyczne z wielu dziedzin, korzysta z inspiracji biologicznych, biocybernetycznych, psychologicznych, statystycznych, matematycznych, logicznych, informatycznych, inżynierskich i innych, jeśli mogą się one przydać do rozwiązywania efektywnie niealgorytmizowalnych problemów.

Kilka użytecznych stron zawierających listy odnośników do ciekawych informacji w Internecie:

Sztuczna inteligencja i uczenie maszynowe: www.is.umk.pl/~duch/ai-ml.html
Sieci neuronowe, neurobiologia, przydatne metody matematyczne i statystyczne www.is.umk.pl/~duch/neural.html
Nauki kognitywne: www.is.umk.pl/~duch/cognitive.html
Oprogramowanie do CI/AI/statystyczne i przykładowe bazy danych: www.is.umk.pl/~duch/software.html


Co ostatecznie chce osiągnąć?

Wersja silna jest obecnie bardzo intensywnie krytykowana przez filozofów umysłu.
Np. John Searl, "Umysł na nowo odkryty", PIW, Warszawa 1999 - "prawdziwe" zrozumienie nie jest dla maszyn możliwe.
Skuteczność metod AI nie zależy na szczęście od poglądów filozofów - z krytyki nie wynikają jakieś naturalne ograniczenia dla możliwości AI.

Historia AI


Kluczowe zagadnienia sztucznej inteligencji

Kilka problemów niealgorytmizowalnych, ważnych z medycznego punktu widzenia:

Tradycyjne zagadnienia należące AI

Dwie gałęzie AI

1. Gałąź oparta na analizie logicznej, symbolicznej, koncepcyjne rozumienie inteligencji.
2. Gałąź subsymboliczna, modelowanie mózgu, symulacje komputerowe zamiast logicznych analiz.

Dlaczego AI ma szansę działać lepiej niż ludzie?
Irracjonalność ludzkiego myślenia.

Dlaczego jeszcze nie działa zbyt dobrze?
Potrzebne są systemy o podobnym stopniu skomplikowania co ludzkie mózgi, zdolne do aktywnej nauki i gromadzące doświadczenia.


Wiedza

Czym jest wiedza? Jak ją reprezentować?
Filozofia: nauką o naturze wiedzy jest epistemologia.

Rodzaje wiedzy:

Używanie wiedzy:

Teoria reprezentacji wiedzy - słabo rozwinięta.


Szukanie

Głębokie rozumowanie wymaga algorytmów szukania.
Szukanie - jedna z najważniejszych metod informatyki
Przestrzeń poszukiwań:

Rozumowanie bezpośrednie; data driven; z dołu do góry, bottom-up
Rozumowanie wsteczne: goal directed, z góry na dół, top-down
Analiza środków i celów (means-ends analysis)

Reprezentacja wiedzy:
Grafy lub struktury drzewiaste - strategie przeszukiwania
Zagadnienia nieobliczalne, NP-trudne - liczba węzłów rośnie kombinatorycznie, prowadząc do "eksplozji kombinatorycznej".
Wiedza heurystyczna - pomocna, wynikająca z doświadczenia, ale nie gwarantująca rozwiązania.

217
Reprezentacja problemu w przestrzeni stanów, np. w problemie 8-ki: 3 8
546
Przestrzeń stanów ma 9!/2=181440 elementów
Stan = macierz 3 na 3.
Operacje = przesuwanie; operacje na pustym polu;
Ruchy = zbiór operatorów O
Zbiór stanów wyjściowych S i końcowych G.
Problem zdefiniowany jest jako zbiór (S,O,G).
Rozwiązanie problemu = ciąg zastosowań operatorów S -> G.

Jak przewieźć lisa, gęś i ziarno małą łódką na drugą stronę rzeki, jeśli zmieści się w niej nie więcej niż jedna rzecz ?

Odpowiednia reprezentacja to znaczna część rozwiązania problemu: uwidacznia istotne relacje, pozwala na ujawnienie się wszystkich więzów ograniczających możliwe relacje, powinna być zrozumiała, kompletna, zwięzła i pozwalająca na efektywne wykorzystanie w modelu komputerowym.

Przykład: Czy 31 domin może pokryć wszystkie pola szachownicy, z której usunięto 2 rogi?

Szukanie ślepe i heurystyczne

Jeśli mamy jakieś funkcje oceny "dobrej sytuacji", odległości od pożądanego rozwiązania, kosztów, obecnego stanu, np. w 15-ce odległość poszczególnych cyfr od ich końcowego położenia, możemy używać algorytmów szukania heurystycznego.

Wspinanie do góry (hill climbing), na każdym kroku najlepsze rozwiązanie; metody gradientowe nie gwarantują najlepszych wyników.

Najpierw najlepszy, lub na każdym kroku kilka najlepszych.

A* - wariant metody "najpierw najlepszy" używający kosztów dojścia do danego etapu i oceny kosztów dojścia do stanu końcowego.

Szukanie niedeterministyczne: Monte Carlo, przypadkowo generuj nowe konfiguracje.

Simulated annealing, czyli metoda stopniowego studzenia: przypadkowo generuj i powoli skupiaj się na najbardziej interesujących, stosując coraz mniejsze odstępstwa od najlepszych.

Algorytmy genetyczne: wybierz nowe konfiguracje stosując operatory mutacji i krzyżowania.

Procedura minimaxu: jeśli nie wystarczy ocena statyczna, np. w grach z przeciwnikiem, zakłada się najlepsze ruchy przeciwnika.
Zasada alfa-beta: parametry oceniające, którymi posunięciami warto się zajmować

Analiza celów i środków (means-ends analysis) - mierz siły na zamiary

Szukanie a ludzkie myślenie

Szachy: Z badań psychologicznych wiadomo, że człowiek stosuje "zmodyfikowane progresywne pogłębianie", ograniczone poszukiwanie w głąb oparte na heurystykach związanych z doświadczeniem i zdolnością oceny przewagi danej sytuacji.

Ekspert pamięta 50-100 tysięcy "prototypowych" wzorców lub struktur.
Ogromna pamięć, rozpoznawania wzorców.
Liczba pamiętanych "prototypowych" wzorców rzędu 50.000 - 100.000
Pomiedzy szybkością szukania, liczbą reguł i poziomem kompetencji istnieje wyraźny związek.
Komputery i mózgi mają całkiem inne ograniczenia sprzętowe.

Mistrz ułoży po 5-sekundowej ekspozycji średnio 23 figury z 25 na pokazanych pozycjach a nowicjusz tylko 3 lub 4 figury.
Jeśli jednak figury ułożone są przypadkowo to robi taką samą liczbę błędów.

Mechanizm "porcjowania" (chunking) przy pamiętaniu złożonych struktur.

Monty Hall Paradox, czyli przykład złudzenia kognitywnego. Mamy 3 kubki. Wychodzisz z pokoju, ja pod jednym z kubków ukrywam złotą monetę. Wracasz i wybierasz jeden z kubków. Ja - wiedząc, pod którym jest moneta - odkrywam jeden z pustych kubków. Masz teraz szansę zmienić swoją decyzję i pozostać przy już wybranym kubku lub wybrać pozostały.

Czy najlepszą strategią jest:

  1. zawsze trzymanie się pierwotnego wyboru;
  2. zawsze zmiana;
  3. czy przypadkowy wybór?

Co jeśli dwie osoby wybierają?


Szukanie semantyczne

Metody AI pozwalają odszukać dokumenty na podstawie sensu pytania, a nie tylko słów kluczowych. Wymaga to zdefiniowania przestrzeni koncepcji dla danego pytania.

Projekt InterSpace i projekt MedSpace

Przykłady szukania informacji na tematy medyczne:
Cancere gene oraz Medline


Systemy eksperckie

Systemy doradcze i ich zastosowania

Spośród innych programów wykorzystujących techniki AI systemy eksperckie wyróżnia używanie obszernej wiedzy w postaci faktów i procedur (sposobów postępowania) zdobytych od prawdziwego eksperta.

System ekspercki: definicja.

Jest to inteligentny program komputerowy wykorzystujący procedury wnioskowania do rozwiązywania tych problemów, które są na tyle trudne, że normalnie wymagają znaczącej ekspertyzy specjalistów. Wiedza (niezbędna, by zapewnić odpowiedni poziom ekspertyzy), wraz z procedurami wnioskowania, może być uważana za model ekspertyzy, normalnie posiadanej tylko przez najlepszych specjalistów w tej dziedzinie. Wiedza systemu eksperckiego składa się zazwyczaj z faktów i heurystyk. Fakty są podstawą bazy wiedzy systemu - informacją, która jest ogólnie dostępna i powszechnie akceptowana przez specjalistów w danej dziedzinie. Heurystyki są zwykle bardziej subiektywną informacją, która charakteryzuje proces oceny i rozwiązywania problemu przez określonego specjalistę. Przykładami heurystyk są: intuicyjne domysły, przypuszczenia, zdroworozsądkowe zasady postępowania. Poziom ekspertyzy, oferowany przez dany system ekspercki, jest przede wszystkim funkcją rozmiaru i jakości bazy wiedzy danego systemu.

Dlaczego?

  1. Koszty: w dłuższym okresie czasu są znacznie tańsze, pomagają w rozwiązywaniu problemów wymagających najbardziej specjalistycznej (a więc najdroższej) wiedzy.
  2. Brak ekspertów.
  3. Pracują szybciej, nie męczą się, są bardziej niezawodne niż ludzie.
  4. Konsekwentne, konsystentne, obiektywne, dokładne.
  5. Zawsze do dyspozycji (nie strajkują!).
  6. Analiza dużych ilości danych wymaga komputera.

SE: systemy oparte na wszystkich sposobach reprezentacji wiedzy, najczęściej w postaci reguł produkcji.

Tworzenie systemu: etapy

  1. Analizy problemu - oceny, czy budowa SE dla danego problem ma sens.
  2. Specyfikacji systemu - szczegółowego określenia funkcji i oczekiwań.
  3. Akwizycji wiedzy - zgromadzenia, wydobycia z ekspertów i organizacji wiedzy.
  4. Wyboru metody reprezentacji wiedzy i narzędzi do budowy SE.
  5. Konstrukcji systemu - utworzenia bazy wiedzy, reguł wnioskowania, systemu wyjaśniającego rozumowanie i prowadzenia dialogu z użytkownikiem.
  6. Weryfikacji i testowania systemu.
  7. Akwizycja wiedzy wymaga transferu ekspertyzy i jej reprezentacji.

Wiedza może być w postaci:

Metody wydobywania wiedzy to:

  1. prowadzenie wywiadów z ekspertami
  2. analiza kwestionariuszy wypełnianych przez ekspertów
  3. analiza raportów pisanych przez ekspertów
  4. analiza komentarzy ekspertów wykonywanych w czasie pracy
  5. obserwacja ekspertów przy pracy
  6. introspekcja

Rodzaje systemów eksperckich:


Konstrukcja systemów eksperckich

Bazy wiedzy oddzielone są od mechanizmów wnioskowania.

Reguły produkcji:
<obiekt,atrybut,wartość>, np. <samochód,kolor,czerwony>

Architektury:
hierarchiczna: dzieli wiedzę na dziedziny, zawiera meta-poziom
wielowarstwowa: kilka poziomów, np. działanie, planowanie, strategia
tablicowa (blackboard): łączenie wiedzy z kilku źródeł
hybrydowa: regułowo-koneksjonistyczna
symulacyjna: modele numeryczne i sieci powiązań przyczynowych
korzystająca z analogii: case-based reasoning

DSS (Decision Support Systems), Systemy Wspomagania Decyzji
Dialog z użytkownikiem i wyjaśnienia sposobów wnioskowania systemu.
Nie zawsze system rozumuje w sposób podobny do człowieka.

Rozumowanie retrospektywne
Rozumowanie hipotetyczne: co by było gdyby ...
Rozumowanie kontrfaktyczne, wbrew faktom (counterfactual reasoning): byłoby lepiej gdyby P było faktem; czemu nie ma P? Czasami odwrotnie, jest gorzej bo P, czemu jest?

Problem: niepewność wiedzy.

Prawdopodobieństwo warunkowe, współczynniki ufności lub pewności (confidence factors), teoria wiarygodności, teoria zbiorów rozmytych.


System MYCIN

Program do diagnostyki i terapii chorób zakaźnych (Stanford, 1972).

Wiedza: reguły produkcji, listy, tabele, opis parametrów klinicznych

Porównanie diagnoz i zaleceń MYCIN z zaleceniami 5 specjalistów z kliniki w Stanfordzie: MYCIN 52 punkty, specjaliści od 34 - 50 punktów, student medycyny uzyskał 24 punkty.

EMYCIN (1981), NEOMYCIN (1984)

PUFF i jego rozwinięcie CENTAUR (1983), diagnoza chorób płuc.

INTERNIST: choroby poszczególnych organów: płuc, serca, wątroby

Wiele innych systemów medycznych.

Przykład systemu eksperckiego: program AI-TEX.

Czemu nie ma SE w szpitalach?

Trochę jest: Przykłady zastosowań systemów eksperckich w medycynie.