Statystyka w prosty sposób
8. wydanie poprawione (marzec 2026) - wiele obrazowych przykładów - tylko 8,99 €
Krzywa ROC
Autor: Dr. Hannah Volk-Jesussek
Zaktualizowano:
Czym jest krzywa ROC?
Krzywa ROC to graficzne przedstawienie jakości działania modelu klasyfikacji binarnej dla wszystkich progów klasyfikacji. Skrót ROC oznacza charakterystykę operacyjną odbiornika.
Chcemy na podstawie badania przesiewowego sklasyfikować, czy dana osoba ma raka, czy nie.
W tej klasyfikacji wykorzystuje się wartość parametru krwi, przy czym wyższe wartości wskazują na raka. Pytanie brzmi, którą wartość wybierzemy jako próg klasyfikacji. Od jakiej wartości przewidujemy chorobę?
W tym celu uzyskujemy dane od 10 osób dotyczące wartości parametru krwi oraz tego, czy choroba występuje.
Moglibyśmy na przykład wybrać próg klasyfikacji równy 45. W takim przypadku spośród pięciu osób z chorobą cztery poprawnie sklasyfikowalibyśmy jako „chore”, a jedną błędnie jako „zdrową”. Zatem poprawnie sklasyfikowaliśmy 4 z 5 osób jako „chore”.
Ta wartość nazywa się współczynnikiem wyników prawdziwie dodatnich (TPR) i jest równa czułości.
Z drugiej strony spośród pięciu zdrowych osób dwie błędnie klasyfikujemy jako „chore”, a trzy poprawnie jako „zdrowe”. Zatem błędnie sklasyfikowaliśmy 2 z 5 osób jako „chore”. Ta wartość nazywa się współczynnikiem wyników fałszywie dodatnich (FPR).
Dla progu 45 otrzymujemy więc współczynnik wyników prawdziwie dodatnich równy 4/5, czyli 0,8, oraz współczynnik wyników fałszywie dodatnich równy 2/5, czyli 0,4.
Współczynnik wyników prawdziwie dodatnich i fałszywie dodatnich
Współczynnik wyników prawdziwie dodatnich (TPR) oblicza się za pomocą tego wzoru:
Współczynnik wyników prawdziwie dodatnich jest równy liczbie wyników prawdziwie dodatnich podzielonej przez sumę wyników prawdziwie dodatnich i fałszywie ujemnych. Wyniki prawdziwie dodatnie to osoby poprawnie sklasyfikowane jako „chore”, a wyniki fałszywie ujemne to osoby błędnie sklasyfikowane jako „zdrowe”.
Współczynnik wyników fałszywie dodatnich (FPR) uzyskuje się za pomocą tego wzoru:
Współczynnik wyników fałszywie dodatnich jest równy liczbie wyników fałszywie dodatnich podzielonej przez sumę wyników fałszywie dodatnich i prawdziwie ujemnych. Wyniki fałszywie dodatnie to zdrowe osoby błędnie sklasyfikowane jako „chore”, a wyniki prawdziwie ujemne to osoby poprawnie sklasyfikowane jako „zdrowe”. Współczynnik FPR jest równy 1 minus swoistość.
Jak wykreślić krzywą ROC
Możemy teraz obliczyć współczynnik wyników prawdziwie dodatnich i współczynnik wyników fałszywie dodatnich dla każdego progu. Te dwie wartości nanosi się na krzywą ROC. Współczynnik wyników prawdziwie dodatnich umieszcza się na osi y, a współczynnik wyników fałszywie dodatnich na osi x.
Teraz wykreślmy kompletną krzywą ROC dla naszego przykładu!
Jeśli wybierzemy bardzo małą wartość progu, czyli przesuniemy go maksymalnie w lewo, poprawnie sklasyfikujemy wszystkie pięć chorych osób. Nasz współczynnik wyników prawdziwie dodatnich wynosi więc 5 z 5, czyli 1.
W ten sam sposób błędnie klasyfikujemy również wszystkie pięć zdrowych osób jako „chore”. Nasz współczynnik wyników fałszywie dodatnich wynosi zatem 5 z 5, czyli 1.
Daje nam to pierwszy punkt:
Teraz możemy zwiększyć próg. Nadal poprawnie klasyfikujemy wszystkie pięć chorych osób jako „chore”. Wciąż mamy więc współczynnik wyników prawdziwie dodatnich równy 5/5. Jednak spośród pięciu zdrowych osób błędnie klasyfikujemy teraz tylko 4 z 5 jako „chore”. Otrzymujemy więc 4 z 5, czyli 0,8.
Przy następnym progu nadal mamy współczynnik wyników prawdziwie dodatnich równy 1. Wszystkie pięć chorych osób jest poprawnie sklasyfikowanych. Współczynnik wyników fałszywie dodatnich przyjmuje wartość 3/5, czyli 0,6.
Przy kolejnym progu po raz pierwszy osoba chora zostaje błędnie sklasyfikowana jako „zdrowa”. Otrzymujemy zatem współczynnik wyników prawdziwie dodatnich równy 4/5, czyli 0,8, oraz współczynnik wyników fałszywie dodatnich równy 3/5, czyli 0,6.
Możemy zrobić to dla wszystkich pozostałych progów, kończąc krzywą ROC. Na przykład w zaznaczonym poniżej punkcie 80% osób chorych zostało poprawnie sklasyfikowanych jako „chore”, a 20% osób zdrowych zostało błędnie sklasyfikowanych jako „chore”.
Wartość AUC
Za pomocą krzywej ROC możemy również porównywać różne metody klasyfikacji. Klasyfikator jest lepszy, gdy krzywa przebiega wyżej i bliżej lewego górnego rogu. Dlatego im większe pole pod krzywą, tym lepszy klasyfikator. To pole pod krzywą jest wyrażane przez wartość AUC.
Wartość AUC mieści się w przedziale od 0 do 1. Wartość 0,5 odpowiada klasyfikacji losowej, a wartość 1 oznacza idealne rozróżnienie klas. Wartość poniżej 0,5 może wskazywać, że kierunek klasyfikacji został odwrócony.
Przedział ufności i wartość p dla AUC
Wartość AUC jest szacowana na podstawie próby i dlatego obarczona jest niepewnością. W publikacjach AUC podaje się prawie zawsze wraz z przedziałem ufności, np. „AUC = 0,83 (95% CI od 0,75 do 0,91)”. numiqo oblicza błąd standardowy AUC metodą DeLonga, a na jego podstawie 95% przedział ufności. Przedział ufności pokazuje zakres, w którym prawdopodobnie leży rzeczywista zdolność rozróżniania testu: wąski przedział oznacza precyzyjne oszacowanie, a szeroki, że próba nadal mówi niewiele o faktycznej jakości testu.
Dodatkowo numiqo podaje wartość p. Sprawdza ona hipotezę zerową, że AUC jest równe 0,5, czyli że test nie rozróżnia lepiej niż przypadek. Tej wartości p nie należy jednak przeceniać: to, że poważnie zbadany test jest lepszy niż rzut monetą, jest niemal zawsze prawdą, więc istotny wynik nie jest tu zaskakujący. Naprawdę interesującą informacją jest przedział ufności, ponieważ pokazuje on, jak dobrze test rozróżnia i jak precyzyjnie zostało to oszacowane — a nie tylko czy w ogóle jest lepszy niż przypadek.
Indeks Youdena i optymalny próg
Wartość AUC mówi nam, jak dobrze test rozróżnia ogólnie. Nie mówi jednak jeszcze, który próg zastosować w praktyce. Właśnie do tego służy indeks Youdena, zwykle oznaczany jako J.
Indeks Youdena jest obliczany dla każdego możliwego progu i zdefiniowany jest jako:
J = czułość + swoistość - 1
Indeks Youdena może przyjmować wartości od 0 do 1. Jeśli J jest równe 0, punkt leży dokładnie na przekątnej, więc test nie rozróżnia lepiej niż przypadek. Jeśli J jest równe 1, klasyfikacja jest idealna, bez wyników fałszywie dodatnich i fałszywie ujemnych. Intuicyjnie indeks Youdena to po prostu pionowa odległość między krzywą ROC a przekątną.
Optymalny próg to zatem ten, przy którym indeks Youdena jest największy. Jest to punkt, w którym krzywa ROC jest najdalej od przekątnej i w którym czułość oraz swoistość łącznie są najlepsze.
Ważna uwaga: indeks Youdena jednakowo waży pominięte przypadki i fałszywe alarmy oraz nie uwzględnia tego, jak częsta jest w rzeczywistości dana choroba. W naszym przykładzie badania przesiewowego w kierunku raka prawdopodobnie znacznie gorzej byłoby przeoczyć osobę chorą niż początkowo błędnie sklasyfikować osobę zdrową jako „chorą”. W takim przypadku sensowne może być świadome wybranie innego progu o wyższej czułości, nawet jeśli indeks Youdena nie osiąga tam maksimum.
numiqo oblicza indeks Youdena automatycznie i podaje optymalny próg wraz z odpowiadającą mu czułością i swoistością w tabeli „Optymalny próg (indeks Youdena)”.
Dodatni i ujemny iloraz wiarygodności
Przy wybranym progu czułość i swoistość nie są jedynymi przydatnymi miarami. Często podaje się dodatkowo ilorazy wiarygodności, ponieważ odpowiadają one na pytanie, które naprawdę ma znaczenie w praktyce: jak silnie wynik testu zmienia ocenę tego, czy dana osoba ma daną chorobę?
Dodatni iloraz wiarygodności zdefiniowany jest jako:
LR+ = czułość / (1 - swoistość)
Wskazuje on czynnik, o który dodatni wynik testu zwiększa szanse (odds) choroby. LR+ równe 5 oznacza na przykład, że dodatni wynik jest pięć razy bardziej prawdopodobny u osoby, która rzeczywiście choruje, niż u osoby zdrowej.
Ujemny iloraz wiarygodności zdefiniowany jest jako:
LR− = (1 - czułość) / swoistość
Wskazuje on odpowiednio, jak zmieniają się szanse choroby po ujemnym wyniku testu. Tutaj dobre są małe wartości: niski LR− sugeruje, że wynik ujemny wiarygodnie wyklucza chorobę.
Dużą zaletą ilorazów wiarygodności jest to, że nie zależą one od chorobowości, czyli od tego, jak częsta jest dana choroba w badanej grupie. Z grubsza, jako reguła kciuka, LR+ powyżej 10 lub LR− poniżej 0,1 uznaje się za silny dowód. numiqo podaje obie wartości przy optymalnym progu w tabeli „Optymalny próg (indeks Youdena)”.
Kiedy niskie wartości wskazują na chorobę
W naszym przykładzie na chorobę wskazują wysokie wartości parametru krwi. W przypadku wielu miar jest odwrotnie: na chorobę wskazują niskie wartości, na przykład hemoglobina czy funkcja pompowania serca. Dla krzywej ROC kluczowe jest, w którą stronę przebiega ta zależność, ponieważ to ona decyduje, od jakiego progu przypadek liczy się jako dodatni.
Kierunek ten należy ustalić na podstawie wiedzy dziedzinowej, a nie odczytywać go z danych: gdybyś zawsze automatycznie wybierał kierunek, który wygląda lepiej, AUC wychodziłoby systematycznie zbyt wysoko. W numiqo sam więc określasz, czy na stan dodatni wskazują wysokie, czy niskie wartości. Jeśli wybierzesz kierunek błędnie, zauważysz to od razu po wartości AUC poniżej 0,5 — wtedy wystarczy wybrać drugi kierunek.
Krzywa ROC i regresja logistyczna
Jak ma się to do regresji logistycznej? Moglibyśmy na przykład utworzyć nowy klasyfikator za pomocą regresji logistycznej. Oprócz wartości parametru krwi moglibyśmy tutaj wykorzystać wiek i płeć osoby.
W regresji logistycznej szacowaną wartością jest prawdopodobieństwo, że dana osoba ma chorobę.
Bardzo często jako próg klasyfikacji, czy dana osoba jest „chora”, stosuje się 50%. Nie musi jednak tak być. Można użyć dowolnego progu.
Dlatego możemy również utworzyć krzywą ROC, zmieniając próg w regresji logistycznej.
Tworzenie krzywej ROC za pomocą numiqo
Wczytaj zestaw danychOczywiście możemy łatwo wygenerować krzywą ROC online za pomocą numiqo. W tym celu po prostu kopiujemy nasze dane do tabeli i klikamy Kalkulator ROC. Alternatywnie krzywą ROC można również utworzyć w Kalkulatorze regresji w sekcji Regresja logistyczna.
Wybieramy po prostu dwie zmienne Chory i Wartość parametru krwi oraz określamy, co uznajemy za zdarzenie pozytywne, w naszym przypadku odpowiedź tak. Teraz otrzymujemy krzywą ROC. W tabeli pod krzywą ROC można zobaczyć wartość progową dla każdego punktu na krzywej.
Statystyka w prosty sposób
- wiele obrazowych przykładów
- idealna do egzaminów i prac dyplomowych
- statystyka w prosty sposób na 464 stronach
- 8. poprawione wydanie (marzec 2026)
Tylko 8,99 €
Bezpłatny fragment
"Napisana bardzo prosto"
"Prościej się nie da"
"Tyle pomocnych przykładów"