inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

작업형2 연습문제 풀이 4

해결된 질문

42

s93610

작성한 질문수 10

0

target = train.pop('target')

cols = ['gender', 'enrolled_university', 'education_level', 'major_discipline', 'experience', 'company_size'
, 'company_type', 'last_new_job']
for col in cols:
  train[col] = train[col].fillna(train[col].mode()[0])
  test[col] = test[col].fillna(test[col].mode()[0])

from sklearn.preprocessing import LabelEncoder
cols2 = train.select_dtypes(include='O').columns
for col in cols2:
  le = LabelEncoder()
  train[col] = le.fit_transform(train[col])
  test[col] = le.transform(test[col])
# 결측치 처리
train = train.fillna("X")
test = test.fillna("X")

# train과 test 합쳐서 원핫인코딩
combined = pd.concat([train, test])
combined_dummies = pd.get_dummies(combined)
n_train = len(train)
train = combined_dummies[:n_train]
test = combined_dummies[n_train:]

저는 위의 방식으로 풀었고 풀이는 아래 방식으로 풀었는데, result.csv에서 roc_auc 결과를 비교하면 많이 다르게 나타납니당... 예를 들어 같은 인덱스임에도 제 방식에서는 roc_auc가 0.2로 나오는데 풀이에서는 0.02가 됩니다. 이 경우에는 풀이에 따라서 0,1로 완전히 다르게 인식되는데도 점수 받는데 상관이 없을까요..?

python 머신러닝 빅데이터 pandas 빅데이터분석기사

답변 2

0

퇴근후딴짓

0,1로 완전히 다르게 인식

-> 그럴 수도 있지만 예시의 경우는 아니에요 보통 스레스홀드를 0.5로 둔다면 0.02도 0이고, 0.2도 0입니다.

 

result.csv에서 roc_auc 결과를 비교하면 많이 다르게 나타납니당

-> 이렇게 비교하면 안됩니다. 평가지표로 비교하셔야 해요

예를 들어, 제가 사업을 하는데 1월 매출만 가지고 평가하는 것이 아니라 1년 매출로 평가해야 되는 것 처럼요!!

0

인프런 AI 인턴

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

작업형2 연습문제에서 제공된 두 가지 방법을 비교해본 결과, 결과 값에서 차이가 발생했다고 하셨군요. 데이터 전처리 방법에 따라 모델 성능의 차이가 발생할 수 있습니다. 일부 주요 포인트를 정리해 드리겠습니다.

결측치 처리 및 인코딩 방식의 차이:

  1. 결측치 처리:

    • 첫 번째 방법: mode()를 사용하여 가장 많이 등장하는 값으로 결측치를 채우는 방법입니다. 이는 범주형 데이터에서 자주 사용되는 방식으로, 데이터의 통계적 경향을 반영할 수 있습니다.
    • 두 번째 방법: 결측치를 “X”로 대체하여 결측 자체를 하나의 범주로 간주하는 방식입니다. 단순하고 간단한 처리 방법이지만, 데이터 특성에 따라 이 방식이 유리하거나 불리할 수 있습니다.
  2. 인코딩 방식:

    • 라벨 인코딩: 첫 번째 방법에서 사용되었습니다. 범주형 변수에 각각 고유한 정수 값을 부여하는 방식입니다. 하지만 이러한 방식은 각 범주에 순서가 있다고 모델이 오인할 수 있습니다.
    • 원핫 인코딩: 두 번째 방법에서 사용되었습니다. 각 범주마다 새로운 이진 변수를 생성하여 분석적 유연성을 제공합니다. 이는 모델이 범주 순서에 대한 오해를 하지 않도록 해줍니다.

결과값 차이에 대한 평가:

  • roc_auc_score 차이: ROC AUC는 모델의 분류 성능을 측정하는 지표이며, 다르게 인코딩된 데이터 세트를 사용하여 훈련된 두 모델의 성능은 당연히 다를 수 있습니다.
  • 모델 평가 시 고려사항: 모델의 성능은 데이터의 본질과 데이터 전처리 방법에 따라서 크게 달라질 수 있습니다. 같은 데이터셋이라도 전처리 방식에 따라 모델은 서로 다르게 결과를 이해하고 생성합니다.

관련 질문 및 해결 방법 참고:

유사한 질문에 대한 답변이 있습니다. 이를 통해 더욱 깊은 이해를 얻을 수 있을 것입니다.
- 기존 질문 링크: 작업형2 연습문제와 전처리에 관한 이해

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

수강 연장 문의드립니다.

0

19

2

강의 연장 문의

0

25

2

수강 신청 연장 문의드립니다.

0

32

2

작업형 1번문제... 환경관련

0

29

2

12회 기출은 언제 업데이트 될까요??

0

36

2

8/6 작성한 연장문의 질문글에 대한 재요청

0

38

2

수강기간 연장 문의

0

38

2

수강기간 연장문의

0

37

2

수강기간 연장 요청 문의드립니다

0

38

2

수강 기간 연장 문의

0

47

2

수강연장 가능 문의 (기간 약 한달반)

0

60

2

수강기간 연장 가능할까요 선생님

0

74

2

Section15. 수업에 사용하는 데이터 주소가 다 보이지 않아서 실습을 위한 데이터를 다운 받지 못하고 있습니다.

0

56

3

수강연장요청 문의

0

90

2

아무래도 다음 시험 연장은 어렵겠죠?

0

108

2

빅분기 12회 결과 관련 문의

0

112

1

책이랑 강의랑 순서나 예제가 다른것 같네요

0

81

2

수강연장 문의

0

105

2

재검토 요청 방법 좀 알려주셔요...-.-;;

0

106

2

12회 실기 질문(작업형 2)

0

92

2

뒤로가기 버튼 같은 것이 있나요?

0

66

1

강의 연장 문의

0

99

2

출력값 질문

0

72

2

수업노트가 어디에 있나요?

0

63

1