ROC 곡선 이해


57

ROC 곡선을 이해하는 데 문제가 있습니다.

트레이닝 세트의 각 고유 서브 세트에서 다른 모델을 빌드하고이를 사용하여 확률을 생성 할 경우 ROC 곡선 아래 영역의 장점 / 개선이 있습니까? 예를 들어, 에 값이 있고 1-4 번째 값과 8-9 번째 값을 사용하여 모델 를 작성 남은 열차 데이터를 사용하여 모델 를 빌드하십시오 . 마지막으로 확률을 생성하십시오. 모든 의견 / 의견은 대단히 감사하겠습니다.y{a,a,a,a,b,b,b,b}AayyB

내 질문에 대한 더 나은 설명을위한 r 코드는 다음과 같습니다.

Y    = factor(0,0,0,0,1,1,1,1)
X    = matirx(rnorm(16,8,2))
ind  = c(1,4,8,9)
ind2 = -ind

mod_A    = rpart(Y[ind]~X[ind,])
mod_B    = rpart(Y[-ind]~X[-ind,])
mod_full = rpart(Y~X)

pred = numeric(8)
pred_combine[ind]  = predict(mod_A,type='prob')
pred_combine[-ind] = predict(mod_B,type='prob')
pred_full          = predict(mod_full, type='prob')

그래서 내 질문의 ROC 곡선 아래 영역입니다 pred_combine대는 pred_full.


3
더 좋은 예는 질문을 개선하기 위해 많은 것을 할 것입니다.
mpiktas

내 이해는 특정 샘플을 선택하여 AUC를 늘리고 싶다는 것입니다. 그것이 당신의 목적이라면, 적어도 당신의 목적이 분류 성능에 대한 좋은 척도를 찾는 것이라면, 편향된 샘플 선택에 대한이 접근법은 완전히 잘못되었다고 강력하게 믿습니다.
rapaio

2
Alleo

답변:


174

질문이 확실하지 않지만 제목에 ROC 곡선을 설명하라는 메시지가 표시되므로 시도해 보겠습니다.

ROC 곡선은 분류 기가 긍정적 인 예와 부정적인 예를 얼마나 잘 분리하고 분리하기위한 최상의 임계 값을 식별하는 데 사용됩니다.

ROC 곡선을 사용하려면 분류자가 순위 를 매겨 야합니다. 즉, 순위가 높은 것이 더 긍정적일 수 있도록 예를 순위를 매길 수 있어야합니다. 예를 들어, 로지스틱 회귀 는 확률을 산출하는데, 이는 순위에 사용할 수있는 점수입니다.

ROC 곡선 그리기

데이터 세트와 순위 분류 기가 주어진 경우 :

  • 가장 높은 점수부터 가장 낮은 점수까지 시험 예제를 정렬
  • 에서 시작(0,0)
  • 정렬 된 순서 로 각 예제 에 대해 x
    • 경우 양수, 이동 까지x1/pos
    • 경우 음수 이동 권리를x1/neg

여기서 및 는 각각 긍정적이고 부정적인 예의 일부입니다.posneg

이 멋진 gif 애니메이션 그림은이 과정을 명확하게 설명해야합니다.

곡선 만들기

이 그래프에서 축은 양의 비율이고 축은 위양의 비율입니다. 대각선을 주목하십시오-이것은 임의의 분류기로 얻을 수있는 기준선입니다. ROC 곡선이 선 위로 올라 갈수록 좋습니다.yx

ROC 영역

roc 아래 지역

ROC 곡선 아래의 영역 (음영)은 곡선이 기준선에서 얼마나 멀리 떨어져 있는지 자연스럽게 보여줍니다. 기준선의 경우 0.5이고 완벽한 분류기의 경우 1입니다.

이 질문에서 AUC ROC에 대한 자세한 내용을 읽을 수 있습니다. AUC의 의미와 의미는 무엇입니까?

최고 임계 값 선택

최고의 임계 값을 선택하는 과정을 간략하게 설명하겠습니다. 자세한 내용은 참조에서 확인할 수 있습니다.

최상의 임계 값을 선택하기 위해 ROC 곡선의 각 점을 별도의 분류기로 볼 수 있습니다. 이 미니 분류기는 점수가 +와-사이의 경계로 얻은 점수를 사용합니다 (즉, 현재 점수보다 높은 모든 점수로 분류).

데이터 세트의 pos / neg 분수에 따라 (50 % / 50 %의 경우 기준선과 평행) ISO 정확도 라인을 구축하고 최고의 정확도로 하나를 선택하십시오.

다음은이를 보여주는 그림입니다. 자세한 내용은 다시 귀하를 참조로 초대합니다.

최적의 임계 값 선택

참고


좋은 의견 감사합니다! 귀하의 답변에 찬성 투표를 한 것이 유감입니다. 15 명 이상의 평판이 필요합니다. (
Tay Shin

궁금한 점은 단계 크기가 분류기에서 생성 한 양수 / 음수 레이블 수에 따라 달라져야합니까? 즉, GIF에서 단계 크기는 위쪽입니다. 음수 레이블 대신 여분의 양수 레이블이 있으면 "곡선"이 세로 축에서 1.1로 끝납니다 (또는 어쩌면 누락되었습니다 ?). 그렇다면이 경우 단계 크기가 더 작아야합니까?
kyphos

아니요, 단계 크기는 분류 자의 정확성이 아니라 데이터 세트의 긍정적 / 음수 예제 수에 따라 다릅니다.
Alexey Grigorev

2
@gung 이해했습니다. Alexey : 긍정적이고 부정적인 예 대신에 나는 그것이 진실한 긍정과 거짓 긍정이어야한다고 생각합니다. gung이 되 돌린 내 답변의 내 버전을 볼 수 있습니다. 감사
Escachator 2016 년

3
@AlexeyGrigorev, 당신이 포기하고 투표 회신을 사랑 해요. 두 개의 ROC 정의가 있는지 확실하지 않습니다. 여기서 ROC 정의 ( en.wikipedia.org/wiki/Receiver_operating_characteristic )를 언급 하고 있는데 x 축은 위양성 비율이어야합니다. 음수), 참조에서, 나는 x 축이 (양의 #의 음수)를 고려하지 않는 잘못된 양의 비율을 나타내지 않는다고 생각합니다.
Lin Ma
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.