AI rozpoznaje wzorce, ale czy rozumie przyczyny? Problem korelacji w uczeniu maszynowym



Wyobraźmy sobie, że opracowaliśmy model sztucznej inteligencji do rozpoznawania choroby na obrazach medycznych. Po wielu eksperymentach otrzymujemy niemal idealne wyniki. Accuracy wynosi 99%, pozostałe metryki również wyglądają imponująco, a model poprawnie klasyfikuje większość przypadków testowych.

Możemy być zadowoleni? Teoretycznie tak. Problem pojawia się wtedy, gdy okazuje się, że model nie nauczył się rozpoznawać zmian patologicznych. Zamiast tego wykorzystuje charakterystyczne cechy obrazów pochodzących z konkretnego szpitala. Podejmuje poprawne decyzje, ale z niewłaściwych powodów. Co ciekawe, nie jest to wyłącznie hipotetyczny scenariusz. Podobne problemy opisano już w publikacjach naukowych dotyczących zastosowania głębokiego uczenia w diagnostyce medycznej.

Kiedy AI idzie na skróty?

W 2020 roku Geirhos i współautorzy opublikowali w Nature Machine Intelligence artykuł zatytułowany Shortcut Learning in Deep Neural Networks [1].  Autorzy opisali zjawisko określane jako shortcut learning, czyli uczenie się na skróty. Polega ono na wykorzystywaniu przez model zależności, które pozwalają osiągać dobre wyniki na określonym zbiorze danych, ale niekoniecznie odpowiadają rzeczywistemu problemowi, który chcemy rozwiązać. 

Przykładowo model rozpoznający zwierzęta może wykorzystywać charakterystyczne tło zamiast cech samego zwierzęcia. Jeżeli większość zdjęć określonego gatunku wykonano w podobnym otoczeniu, sieć neuronowa może nauczyć się, że właśnie to otoczenie jest dobrym predyktorem klasy. Podczas testowania na danych pochodzących z tego samego rozkładu wszystko działa poprawnie. Problemy zaczynają się dopiero wtedy, gdy zmienimy warunki. Model niekoniecznie uczy się tego, czego oczekuje od niego badacz. Uczy się zależności, które pomagają minimalizować błąd podczas treningu. To istotne rozróżnienie, szczególnie w zastosowaniach medycznych.

 Model rozpoznał szpital zamiast choroby

W 2018 roku Zech i współautorzy przeanalizowali działanie modeli wykrywających zapalenie płuc na zdjęciach rentgenowskich klatki piersiowej [2]. Badanie objęło 158 323 obrazy pochodzące z trzech instytucji medycznych. Naukowcy chcieli sprawdzić, czy modele trenowane na danych z określonych szpitali będą równie skuteczne w innych placówkach. Wyniki okazały się interesujące. 

Model trenowany na połączonych danych z dwóch ośrodków osiągnął wewnętrznie AUC na poziomie 0,931, ale podczas testowania na danych z trzeciego ośrodka wartość ta spadła do 0,815. Co więcej, sieci neuronowe potrafiły niemal bezbłędnie identyfikować szpital, z którego pochodziło zdjęcie. Dlaczego to problem? Ponieważ częstość występowania zapalenia płuc różniła się pomiędzy analizowanymi placówkami. Model mógł więc wykorzystywać informacje związane z pochodzeniem obrazu jako dodatkową wskazówkę dotyczącą rozpoznania.

Wcześniej wspomniana metryka AUC to miara jakości klasyfikatora binarnego. Określa prawdopodobieństwo, że model oceni losowo wybrany przykład pozytywny wyżej niż negatywny. Wartości mieszczą się zazwyczaj w zakresie od 0,5 (zgadnięcie losowe) do 1,0 (idealny klasyfikator). Zatem uzyskany wysoki wynik 0.931 mieści się blisko granicy idealnego klasyfikatora, ale to też niesie za sobą konsekwencje interpretacyjne. Wynik 0.931 oznacza, że w ok. 93% przypadków model prawidłowo posortuje parę losowych próbek (pozytywna/negatywna). To bezwzględnie plasuje go w kategorii modeli o doskonałej dyskryminacji. 

W realnych projektach data science wynik AUC > 0.93 na danych biznesowych lub medycznych natychmiast zapala analitykom „czerwoną lampkę” ostrzegawczą. Istnieje ryzyko, że model jest zbyt idealny z powodu wycieku danych (Data Leakage) do zmiennych niezależnych mogła trafić zmienna, która wprost lub pośrednio zawiera informację o zmiennej celu oraz przeuczenia (Overfitting), jeśli wynik pochodzi ze zbioru treningowego, nie mówi nam nic o realnej jakości modelu. eśli zbiór danych ma proporcje klas np. 99:1 (bardzo rzadkie zjawisko), AUC na poziomie 0.93 może wciąż oznaczać, że model bardzo słabo wykrywa klasę mniejszościową. Przy silnym niezbalansowaniu krzywa ROC (i AUC) bywa zbyt optymistyczna – wówczas analitycy wolą patrzeć na AUC-PR (Precision-Recall).

W praktyce oznacza to, że wysoka skuteczność na wewnętrznym zbiorze testowym nie gwarantuje równie dobrego działania w innym środowisku klinicznym.

Czy AI może rozpoznawać chorobę po oznaczeniach na zdjęciu?

Jeszcze ciekawszy przykład przedstawili DeGrave, Janizek i Lee w 2021 roku. W artykule AI for radiographic COVID-19 detection selects shortcuts over signal, opublikowanym w Nature Machine Intelligence, przeanalizowali modele wykrywające COVID-19 na zdjęciach rentgenowskich [3]. Okazało się, że część modeli wykorzystywała informacje niezwiązane bezpośrednio ze zmianami chorobowymi. Znaczenie miały między innymi oznaczenia znajdujące się na obrazach, ich krawędzie oraz różnice wynikające ze sposobu wykonywania badań. Autorzy przeprowadzili również eksperymenty polegające na modyfikowaniu określonych elementów zdjęć. Zmiana oznaczeń stron ciała potrafiła wpłynąć na przewidywane przez model prawdopodobieństwo COVID-19.

Innymi słowy, sieć neuronowa wykorzystywała cechy obrazu, które nie powinny stanowić podstawy rozpoznania choroby. To szczególnie ważny przykład, ponieważ pokazuje, że model może osiągać przekonujące wyniki, jednocześnie korzystając z niewłaściwych przesłanek. 

Korelacja to jeszcze nie przyczynowość

W tym miejscu dochodzimy do jednego z podstawowych problemów uczenia maszynowego. Modele predykcyjne uczą się zależności występujących w danych. Nie oznacza to jednak, że automatycznie identyfikują związki przyczynowo-skutkowe. Wyobraźmy sobie, że w zbiorze treningowym większość pacjentów z określoną chorobą została przebadana jednym urządzeniem, a osoby zdrowe — innym. Model może nauczyć się rozpoznawać różnice w charakterystyce obrazów generowanych przez te urządzenia. Z perspektywy optymalizacji funkcji straty nie musi to być problemem. Jeżeli dana cecha pomaga poprawnie klasyfikować przykłady treningowe, algorytm może ją wykorzystać.

Z perspektywy medycznej sytuacja wygląda jednak zupełnie inaczej. Urządzenie, którym wykonano badanie, nie jest przyczyną choroby. Dlatego skuteczna predykcja nie oznacza jeszcze, że model nauczył się zależności istotnych klinicznie. Właśnie z tego powodu w badaniach nad AI tak ważna jest generalizacja, czyli zdolność modelu do działania na nowych danych i w odmiennych warunkach.

Świetne wyniki mogą ukrywać poważne błędy

Kolejnym problemem jest sposób oceniania modeli. W 2020 roku Oakden-Rayner i współautorzy opisali zjawisko hidden stratification, czyli ukrytego zróżnicowania wyników pomiędzy podgrupami danych [4]. Model może osiągać bardzo dobre wyniki dla całego zbioru testowego, a jednocześnie znacznie gorzej radzić sobie z określonymi przypadkami.Przykładowo algorytm wykrywający nowotwory może poprawnie klasyfikować większość obrazów, ale systematycznie pomijać rzadki, agresywny podtyp choroby. Średnia skuteczność nie musi ujawniać tego problemu. Autorzy wykazali, że różnice skuteczności w istotnych klinicznie podgrupach mogą przekraczać 20% w ujęciu względnym. Dlatego ocena modelu wyłącznie na podstawie jednej metryki jest niewystarczająca. Warto analizować również wyniki dla poszczególnych klas, podgrup pacjentów, rodzajów patologii czy warunków akwizycji. Szczególnie w medycynie, gdzie niewielka grupa trudnych przypadków może mieć ogromne znaczenie.

Czy XAI rozwiązuje ten problem?

 Naturalnym rozwiązaniem wydają się metody wyjaśnialnej sztucznej inteligencji, czyli Explainable AI (XAI). W obrazowaniu medycznym często wykorzystuje się między innymi Grad-CAM, mapy istotności czy metody przypisywania znaczenia poszczególnym cechom wejściowym. Pozwalają one analizować, które obszary obrazu wpływają na predykcję modelu. Ale tutaj również należy zachować ostrożność.

W 2018 roku Adebayo i współautorzy opublikowali na konferencji NeurIPS pracę Sanity Checks for Saliency Maps [5]. Wykazali, że niektóre metody tworzenia map istotności mogą generować wizualnie przekonujące wyniki, które pozostają zaskakująco mało wrażliwe na zmiany parametrów modelu lub etykiet treningowych. Oznacza to, że atrakcyjna wizualizacja niekoniecznie stanowi wiarygodne wyjaśnienie działania sieci neuronowej.

Mapa pokazująca obszar anatomiczny nie jest jeszcze dowodem, że model poprawnie rozumuje klinicznie. Metody XAI są wartościowym narzędziem diagnostycznym, ale ich wyniki również wymagają krytycznej interpretacji i walidacji.

Jak sprawdzić, czego naprawdę nauczył się model?

Moim zdaniem najważniejsze jest odpowiednie zaprojektowanie eksperymentu. Nie wystarczy osiągnąć wysokiej accuracy i przedstawić macierzy pomyłek. Warto sprawdzić, czy model zachowuje skuteczność na danych pochodzących z innych ośrodków, urządzeń lub populacji.

Istotna jest również analiza potencjalnych zmiennych zakłócających. Jeżeli obrazy należące do poszczególnych klas pochodzą z różnych źródeł, model może wykorzystywać różnice pomiędzy tymi źródłami zamiast cech badanego zjawiska. Pomocne mogą być eksperymenty polegające na kontrolowanej modyfikacji obrazów, analizie map istotności oraz ocenie wyników dla konkretnych podgrup.

Warto też pamiętać, że sama walidacja zewnętrzna nie zawsze pozwala wykryć wszystkie niepożądane zależności. Niektóre z nich mogą występować również w nowych zbiorach danych, co pokazali DeGrave i współautorzy [3].

Dlatego walidacja modelu powinna obejmować nie tylko pytanie, czy działa, ale również próbę ustalenia, dlaczego działa.

Czy model AI naprawdę rozumie to, co rozpoznaje?

Pytanie: czy model AI naprawdę rozumie, co rozpoznaje jest bardziej skomplikowane, niż mogłoby się wydawać. Wysoka skuteczność predykcyjna nie jest równoznaczna ze zrozumieniem mechanizmu badanego zjawiska. Nie oznacza to jednak, że modele uczenia głębokiego nie potrafią identyfikować wartościowych i istotnych zależności.

Modele potrafią to robić. Problem polega na tym, że nie zawsze wiemy, które zależności wykorzystują i czy pozostaną one wiarygodne poza środowiskiem treningowym. W badaniach naukowych łatwo zachwycić się wynikiem 99% accuracy. Znacznie trudniej sprawdzić, czy model osiągnął go dzięki właściwym cechom.

Celem nie powinno być wyłącznie uzyskanie wysokiej wartości metryki, tylko opracowanie rozwiązania, które działa poprawnie również wtedy, gdy zmieniają się warunki. Dlatego następnym razem, kiedy zobaczymy publikację prezentującą niemal idealną skuteczność modelu AI, warto zadać sobie dodatkowe pytanie: Czy ten model naprawdę nauczył się rozpoznawać badane zjawisko, czy jedynie znalazł skuteczny sposób na rozwiązywanie konkretnego zbioru testowego?

Pomiędzy tymi dwiema rzeczami może istnieć ogromna różnica.

Literatura

[1] Geirhos, R., Jacobsen, J.-H., Michaelis, C., et al. (2020). Shortcut learning in deep neural networks. Nature Machine Intelligence, 2, 665–673. https://doi.org/10.1038/s42256-020-00257-z

[2] Zech, J. R., Badgeley, M. A., Liu, M., Costa, A. B., Titano, J. J., & Oermann, E. K. (2018). Variable generalization performance of a deep learning model to detect pneumonia in chest radiographs: A cross-sectional study. PLOS Medicine, 15(11), e1002683. https://doi.org/10.1371/journal.pmed.1002683

[3] DeGrave, A. J., Janizek, J. D., & Lee, S.-I. (2021). AI for radiographic COVID-19 detection selects shortcuts over signal. Nature Machine Intelligence, 3, 610–619. https://doi.org/10.1038/s42256-021-00338-7

[4] Oakden-Rayner, L., Dunnmon, J., Carneiro, G., & Ré, C. (2020). Hidden Stratification Causes Clinically Meaningful Failures in Machine Learning for Medical Imaging. Proceedings of the ACM Conference on Health, Inference, and Learning, 151–159. https://doi.org/10.1145/3368555.3384468

[5] Adebayo, J., Gilmer, J., Muelly, M., Goodfellow, I., Hardt, M., & Kim, B. (2018). Sanity Checks for Saliency Maps. Advances in Neural Information Processing Systems, 31. https://proceedings.neurips.cc/paper/8160-sanity-checks-for-saliency-maps.pdf

Komentarze

Popularne posty