Strona głównaArtykułySztuczna Inteligencja w Opiece Zdrowotnej

Klasyfikowanie Transkrypcji Medycznych według Specjalizacji przy użyciu TF-IDF i Regresji Logistycznej

Jak projekt sztucznej inteligencji dla opieki zdrowotnej przetwarza nieustrukturyzowane teksty z transkrypcji klinicznych w celu ich klasyfikacji według specjalizacji medycznej, porównując TF-IDF plus Regresję Logistyczną przeciwko Naive Bayes jako lekkiej NLP podstawę.

mysimulator teamZaktualizowano — czerwiec 2026≈ 5 min czytania▶ Otwórz symulację

Dlaczego tekst nieustrukturyzowany ma znaczenie obok danych klinicznych strukturalnych

Większość demonstracji uczenia maszynowego w opiece zdrowotnej opiera się na czystych, tabelarycznych danych – odczyty ciśnienia krwi, wyniki badań laboratoryjnych, wiek, BMI – ponieważ są one czyste i łatwe do modelowania. Jednak duża część rzeczywistych informacji klinicznych znajduje się w tekście nieustrukturyzowanym: transkrypcje notatek z konsultacji, notatki dotyczące obecnego przebiegu choroby, wzmianki z dokumentów zwolnieniowych. Model, który przetwarza tylko liczby, jest ślepy na wszystko, co lekarz napisał w formie pisemnej. W tym projekcie przetwarzane jest publiczny zestaw danych składający się z około 5000 transkrypcji medycznych obejmujących ponad 40 specjalizacji, mając na celu klasyfikację każdego dokumentu według jego specjalizacji medycznej wyłącznie na podstawie tekstu – zadanie proxy, które demonstruje szerszą zdolność do automatycznego triage’owania lub kierowania nieustrukturyzowanymi notatkami klinicznymi.

Eksploracja tekstu przed modelowaniem

Przed wektoryzacją, przegląd eksploracyjny analizuje rozkład specjalizacji (silnie skośny – niewielka liczba specjalizacji odpowiada za nieproporcjonalną część rekordów, dlatego wierzchołki 15 są wizualizowane oddzielnie) oraz długość transkrypcji (wysoce zmienna, od krótkich notatek po rozbudowane raporty wielopunktowe, co ma znaczenie, ponieważ bardzo długie dokumenty mogą wymagać przycięcia dla niektórych architektur modeli). Analiza częstotliwości słów i chmury słów, wygenerowane zarówno dla całego korpusu, jak i oddzielnie dla każdej specjalizacji, potwierdzają, że każda specjalizacja posiada rozpoznawalnie inny słownictwo – tekst kardiologiczny skupia się wokół terminologii dotyczącej serca, krwi i układu krążenia, na przykład – co stanowi podstawową przesłankę działania klasyfikatora tekstu; jeśli wszystkie specjalizacje używałyby tych samych słów, żaden wektoryzator nie mógłby ich rozróżnić.

Analiza bigramów i trigramów (obserwowanie częstych dwu- i trzywyrazowych fraz zamiast pojedynczych słów) ujawnia prawdziwe terminy kliniczne, które pomija analiza częstotliwości pojedynczych słów – takie jak nazwy konkretnych procedur lub terminy diagnostyczne, które mają pełne znaczenie tylko jako całość.

Czyszczenie tekstu klinicznego i wybór celu

Przetwarzanie wstępne tekstu klinicznego odbywa się tutaj zgodnie z dość standardową ścieżką przetwarzania języka naturalnego: zamieniamy wszystko na małe litery, usuwamy znaki niealfanumeryczne oraz normalizujemy spacje. Ze względu na to, że ponad 40 specjalizacji spowodowałoby, że większość klas miałaby zbyt mało przykładów do uczenia się, cel jest celowo zawężony do pięciu najczęściej występujących specjalizacji, a każdy dokument krótszy niż 50 znaków zostaje odrzucony jako zbyt krótki, aby nieść wiarygodny sygnał klasyfikacji. Ten pragmatyczny zakres – handlujący szerokością w stosunku do wystarczającej ilości danych na przykład dla każdej klasy – jest powszechnym i uzasadnionym ruchem w rzeczywistych projektach NLP w opiece zdrowotnej, lepszy niż próba 40-way klasyfikacji z beznadziejnie niezbalansowaną, głodującą pod względem danych długim ogonem.

TF-IDF wektoryzacja i dwa klasyfikatory bazowe

Oczyśćony tekst jest dzielony proporcjonalnie na zbiory treningowy, walidacyjny i testowy w stosunku 70/15/15. Stratyfikacja zapewnia, że każda specjalizacja jest odpowiednio reprezentowana we wszystkich zbiorach. Wektorzyzacja TF-IDF jest trenowana tylko na zbiorze treningowym – celowe ograniczenie, aby uniknąć wycieku danych, ponieważ trenowanie na całym zestawie danych pozwoliłoby na wyciek informacji o słownictwie dokumentów walidacyjnych lub testowych do wektoryzatora. Wykorzystano słownik składający się z 5000 terminów, unigramy i bigramy oraz filtry częstotliwości dokumentów (min_df=2, max_df=0,95), które usuwają zarówno rzadkie błędy pisarskie, jak i wszechobecne słowa wypełniające.

Porównywane są dwie rodziny klasyfikatorów na podstawie tych wektorów TF-IDF: Regresja Logistyczna (zarówno domyślna wersja, jak i dostrojona za pomocą przeszukiwania siatki parametrów regularizacji i solvera) oraz Wielonowa Naiwny Bayes. Regresja Logistyczna została wybrana ze względu na jej szybkość działania na gęstych wektorach o wysokiej wymiarowości oraz interpretowalność (współczynniki bezpośrednio pokazują, które terminy popierają lub odcinają dokument od danej specjalizacji). Naiwny Bayes został uwzględniony specyficznie ze względu na jego znacznie szybsze tempo uczenia się – uzasadniona zaleta, gdy system musi być często przekazywany, ponieważ przybywają nowe, oznaczony dokumenty - mimo że założenie niezależności między słowami jest technicznie fałszywe dla języka naturalnego.

Wybór modelu i walidacja uogólnienia

Modele są porównywane przy użyciu ważonej precyzji F1 zamiast prostej dokładności, ponieważ prawidłowo uwzględnia to pozostały brak równowagi klas wśród nawet pięciu specjalizacji. Najlepszy model na zbiorze walidacyjnym jest wybierany automatycznie, oceniany ponownie na zestawie testowym (używanym dokładnie raz, aby uzyskać bezstronne odczytanie uogólnienia), a jego macierz zamieszania jest sprawdzana, aby zobaczyć, które specjalizacje są ze sobą pomylane – zazwyczaj te z rzeczywiście nakładającymi się słowami klinicznymi. Próżnia między wynikiem precyzji F1 na zbiorze treningowym i walidacyjnym jest wyraźnie śledzona jako kontrola nad przemieszczeniem, a luki poniżej około 0,1 są traktowane jako zdrowe, podczas gdy większa luka sygnalizuje, że model zapamiętał specyficzne cechy zestawu treningowego zamiast uczyć się ogólnymi wzorców. Zarówno wytrenowany klasyfikator, jak i jego TF-IDF wektoryzator są zapisywane razem, ponieważ wektoryzator dopasowany do innej słownictwa bezgłośnie generowałby bezsensowne cechy dla dowolnego nowego dokumentu w czasie wnioskowania.

Często zadawane pytania

Dlaczego wektorizer TF-IDF musi być dopasowywany tylko do danych treningowych?

Jeśli wektorizer jest dopasowywany do całego zbioru danych przed podziałem, jego słownictwo i statystyki dotyczące częstotliwości dokumentów odzwierciedlałyby już słowa i wzorce z zestawów walidacyjnych i testowych. To wyciek informacji, do którego model nie powinien mieć dostępu podczas treningu, co zawyża pozorną wydajność i daje myląco optymistyczny obraz tego, jak dobrze model uogólni się na naprawdę nowych dokumentach.

Dlaczego należy zawęzić 40+ specjalności medycznych do zaledwie 5?

Z ponad 40 klasami i około 5000 dokumentami, wiele specjalizacji miałoby tylko kilka przykładów – zdecydowanie za mało, aby jakikolwiek klasyfikator mógł nauczyć się wiarygodnego wzorca. Skupienie się na pięciu najbardziej frequentnych specjalizacjach zapewnia, że każda klasa ma wystarczającą liczbę przykładów treningowych, aby wygenerować znaczący i ocenialny klasyfikator, kosztem braku pokrycia pełnego zakresu specjalizacji w oryginalnym zbiorze danych.

Dlaczego używać ważonej metryki F1 zamiast prostej dokładności do porównywania modeli?

Prosta dokładność może być myląca, gdy klasy są niezbalansowane – model, który zawsze przewiduje większość specjalizacji, nadal może uzyskać wysoką dokładność, a jednocześnie być bezużyteczny dla mniejszości. Ważona metryka F1-score balansuje precyzję i czułość dla każdej klasy i następnie uśrednia je, ważone przez wielkość klasy, co daje sprawiedliwsze pojedyncze liczbowe porównanie między modelami, gdy rzeczywiste rozkład klasy nie jest idealnie równomierny.

Wypróbuj na żywo

Wszystko powyżej działa bezpośrednio w Twojej przeglądarce — otwórz the simulation i zmieniaj parametry podczas działania. Nic nie jest instalowane ani przesyłane na serwer, cały model działa w jednej karcie.

▶ Otwórz symulację the simulation

Co znalazłeś?

Dodaj kroki odtworzenia (opcjonalnie)