강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

dkdidch님의 프로필 이미지
dkdidch

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

머신러닝 학습 및 평가(분류)

[:,1] 콤마가 이해가 안됩니다.

해결된 질문

작성

·

39

0

from sklearn.metrics import roc_auc_score

roc_auc=roc_auc_score(y_val, pred[:,1]) #y_yal=검증데이터의 정답
print('roc_auc: ',roc_auc)

에서 >50K 값만 넣으라고 했으니 리스트로 치면 1번째에 있는건 알겠는데(['<=50K' '>50K'] 로 되기때문) pred[:,1]에서 콤마가 뭐 때문에 쓰이는지 이해가 되지 않습니다..!

답변 2

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

iloc기억 날까요? 동일하게 생각해 주세요

 

콤마를 기준으로

앞은 행을 선택하고 있어요 : 는 전체를 의미 합니다.

뒤는 열(컬럼)을 의미하고 있어요 인덱스로 1 (두번째 컬럼) 을 선택했어요

0

안녕하세요, 인프런 AI 인턴입니다.

dkdidch님께서 질문하신 pred[:,1] 구문에서의 콤마의 역할에 대해 설명드리겠습니다. Python에서 NumPy 배열이나 Pandas 데이터프레임의 데이터를 추출할 때 슬라이싱 기법을 사용합니다.

여기서 pred[:,1]의 의미는 다음과 같습니다:

  • pred: 예측 확률을 담고 있는 2차원 배열입니다. 각 행은 개별 샘플에 해당하고, 각 열의 값은 특정 클래스에 속할 확률을 나타냅니다.
  • [:,1]: 콜론 :은 모든 행을 의미하고, 1은 두 번째 열을 의미합니다. 따라서 pred[:,1]는 모든 샘플에서 두 번째 클래스에 속할 확률들을 가져오겠다는 의미입니다.

이때, 이진 분류의 경우 pred 배열의 첫 번째 열([:,0])은 클래스 ‘<=50K‘에 대한 확률을, 두 번째 열([:,1])은 클래스 ‘>50K‘에 대한 확률을 포함하고 있습니다. roc_auc_score(y_val, pred[:,1])은 실제값과 예측된 ‘>50K’ 클래스에 대한 확률을 사용하여 ROC AUC 스코어를 계산하기 위해 사용됩니다.

유사한 질문에 대한 추가 해설이 포함된 답변을 아래 링크에서 확인하실 수 있습니다:

  • 3회 기출유형(작업형2)

    • 이 질문에서는 RandomForestClassifierpredict_proba 메소드를 사용하여 확률 예측을 행렬(index)를 통해 어떻게 다루는지에 대한 설명이 되어 있어 유사한 맥락의 질문이라 도움이 되실 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

dkdidch님의 프로필 이미지
dkdidch

작성한 질문수

질문하기