중요도 이해하고 적용하기 질문
292
작성한 질문수 51
안녕하세요. 강의 잘 듣고 있습니다 :)
41강 중요도 이해하고 적용하기 7분 20초에서
각 모델들을 학습시키기 위해 alg.fit() 을 적용시키는
부분이 있는데요!
40강에서 교차검증을 통해 KNN 의 예측력을
보여줄 때는 KNN 알고리즘에 fit() 을 적용시키는
부분이 없습니다. 없는데 어떻게 학습을 해서
예측점수를 낸 건가요..? 아래 이미지는 knn 교차검증
한 코드입니다. 41강과 다르게 40강
해당 셀에는 fit() 으로 학습시키는 부분이 없어서
어느 부분에서 knn을 학습데이터로 학습시킨건지
궁금합니다.
답변 부탁드립니다~!

답변 1
1
안녕하세요. 답변도우미입니다.
우선, 40강, 41강이 주요 클러스터링 머신러닝 모델 이해하기1 (KMeans 모델 이해와 테스트) 이 챕터를 말씀하시는 것 맞으시죠? 왜냐하면, 이름으로 챕터가 표시가 되어 있어서요. 아마도 보여주신 코드가 관련 챕터를 이야기하신 것으로 유추해서 이해를 했습니다.
예측 스코어 자체를 내는 것은 cross_val_score() 자체의 기능입니다. 내부에서 fold 를 나눠서, 학습시키고, 예측하여, score를 내주기 때문에 예측 스코어(score) 를 cross_val_score() 로 확인할 수 있습니다.
좀더 정확하게 본다면, fit() 은 전체 데이터를 기반으로, 한번에 모델에 적용합니다. cross_val_score() 는 cv 등 k-fold 옵션과 함께, 데이터를 쪼개서, 각 데이터별로 모델에 적용하고(즉, fit 을 자체적으로 하고), 테스트를 합니다. 그래서 말씀하신대로, 꼭 fit() 후에, cross_val_score() 를 안해도 됩니다.
sklearn 의 다양한 실제 예제들을 보시면, fit() 후에 cross_val_score() 를 하는 경우도 많고, cross_val_score() 만 쓴 경우도 많아서, 어느정도 둘다 많이 사용한다고 보셔도 좋을 것 같습니다. (딱 공식적인 코드가 있는 것은 아니다로 이해하시면 좋을 것 같습니다.) 다만, fit() 으로 전체 데이터를 한번에 모델에 적용하여, 최종 튜닝된 모델을 도출하고, 이를 cross_val_score() 에 넣어서, 쪼개진 데이터로 한번더 fit 시켜서, 예측 스코어를 가지는 방안도 좀더 일반적인 코드가 될 수 있어서, 이 부분도 함께 이야기를 드리려 했습니다.
감사합니다.
자료 공유 질문
0
70
1
Ascii 에러 관련하여 질문드립니다
0
97
1
고차원 데이터 질문
0
85
1
세션4 범주형 데이터 분석 패턴 강의 질문
0
217
2
pandas 2.2.2, xgboost 2.1.3 에러 해결 방법
0
235
1
sklearn v1.5.1
0
176
1
머신러닝 적용을 위한 Feature Engineering 작업1
0
185
2
missingno 대체
0
174
1
scikit-learn 1.5.1 matplotlib 3.9.2
0
136
1
환불문의
0
273
1
자료공유를 받으려고 하는데 에러가 납니다.
0
171
1
iplot에서 항상 에러나는 분 안계신가용?
0
234
1
사망 여부 영향 가능성
0
149
1
섹션4_인코딩 이해하고 적용해보기(원핫인코딩) 질문
0
195
1
df.corr(numeric_only=True).iplot() 에러 해결 어떻게 해야되나요?
0
288
1
주피터 노트북 201_REGRESSION_BIKE_SHARING_MODELS 중 질문
0
252
1
3강 강의 자료 코드 관련 질문입니다
1
344
1
맥 사용자 mkdir .kaggle 했는데 파일이 안만들어집니다.
0
427
1
Bayesian Optimization에서 optimizer.maximize()함수를 더이상 지원 안한다고 합니다.
0
887
2
Bayesian Optimization LightGBM 적용
0
467
2
하이퍼 파라미터 튜닝 기법 적용하기 실행값이 미묘하게 달라요.
1
347
1
중복된 코드 수정 요청 - 자전거 공유 문제 이해와 EDA3
0
218
1
강의 중 에러 질문
0
753
1
cross_val_score 에러
0
470
1





