10회차 작업형2 라벨 인코딩 관련
146
작성한 질문수 1
라벨 인코딩 하는 과정에서
le.fit_transform(train[col])을 한 뒤에
le.fit_transform(test[col]) test에 fit_을 같이 붙여버렸습니다.
col인 상권유형의 개수(unique)가 train과 test 차이가 둘다 a b c d e f 6개로 같았으면 성능평가에 지장 없을까요?
지장이 있다면 감점이 크게 될지 궁금합니다.
답변 3
0
안녕하세요, 인프런 AI 인턴입니다. 진현석님.
라벨 인코딩 과정에서 le.fit_transform(train[col])과 le.fit_transform(test[col])을 잘못 적용하신 것에 대해 우려가 있으신 것 같은데요, 이 부분에 대해 설명해드리겠습니다.
라벨 인코딩과 데이터 일관성
라벨 인코딩 시 fit_transform을 훈련 데이터와 테스트 데이터에 각각 적용하는 것은 각 데이터셋에 대해 별도로 인코딩을 수행하기 때문에 훈련 데이터와 테스트 데이터의 범주 간 일관성이 깨질 수 있습니다. 특히, 훈련 데이터와 테스트 데이터 각각에 fit을 따로 적용하면, 만약 범주형 데이터가 다를 경우에는 인코딩된 값도 서로 다르기 때문에 모델의 일반화 성능에 부정적인 영향을 미칠 가능성이 있습니다.
영향 및 해결 방법
영향: 현재 진현석님이 언급하신대로 상권유형(컬럼)의 개수(unique)가
train과test모두 동일하여a, b, c, d, e, f로 같은 경우에는 우연히 값이 같기 때문에 큰 문제는 없을 수 있습니다. 단, 모델이 동일한 데이터를 봤을 때 다른 결과를 내지 않게 하려면 항상 일관된 방법으로 데이터 전처리를 해야 합니다.해결 방법: 올바른 구현 방법으로는 먼저
train데이터에 대해le.fit(train[col])을 수행한 후, 동일한 레이블인코더 객체를 사용해test데이터를le.transform(test[col])으로 변환해야 합니다.
관련 사례 또는 추가 내용에 대해서는 다음과 같은 게시물을 참고하시면 도움이 될 것입니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
뒤로가기 버튼 같은 것이 있나요?
0
27
1
강의 연장 문의
0
31
1
출력값 질문
0
31
2
수업노트가 어디에 있나요?
0
29
1
실기시험 제출관련
0
160
2
6.20 작업형 2 과적합
0
169
3
코딩팡 장업형2 베이스 라인 인코딩 종류 질문
0
52
2
로지스틱회귀, 회귀
0
52
2
회귀 문제를 풀때 질문입니다.
0
59
1
불균형 처리 후 성능이 더 낮아졌다면,
0
66
2
실기 체험 제2유형 에러 문의
0
66
1
LIGHTGBM 으로 하면 pred값이 소수점 6자리까지 나오는게 맞나요
0
52
2
3번문제 등분산 가정
0
50
2
작업형3 target 형 변환 질문
0
38
2
[작업형1] 연습문제 섹션1 ~ 10 의 section4
0
40
3
원핫인코딩과 레이블 인코딩에서 concat
0
62
2
제2유형 질문입니다.
0
49
2
C()
0
44
2
작업형 2에서 strafity 적용 유무
0
53
2
수강 기간 연장 가능 여부 문의드립니다.
0
63
1
ols
0
44
2
2유형 작성관련 질문(일반 심화)
0
41
2
2유형 작성관련 질문
0
42
2
2유형 object컬럼 개수 다르면
0
49
2





