강의

멘토링

커뮤니티

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

잘삽시다님의 프로필 이미지
잘삽시다

작성한 질문수

[개정판] 파이썬 머신러닝 완벽 가이드

사이킷런 소개와 머신러닝 분류 예측 모델 개요

fit(), predict() 질문

해결된 질문

작성

·

216

0

안녕하세요.

아래 코드 중 predict() 과정 부분에서 궁금중이 생겨서 질문 드립니다.

아래 코드를 보면 dt_clf에 DecisionTreeClassifier 객체를 생성후 fit()을 실행하는 코드가 있는데

저는 이부분도 학습된 데이터를 객체에 생성해서

그 객체 명으로  predict()를 실행할 줄 알았는데

ex) dt_clf_fit = dt_clf.fit(X_train, y_train)

-> pred = dt_clf_fit.predict(X_test)

책 설명을 보니 fit()을 실행 한 순간

dt_clf가 학습된 데이터가 적용이 되고 이 객체를 predict()를 실행하는거 같은데 제가 이해하고 있는 부분이 맞는지 궁금합니다.

 

# DecisionTreeClassifier 객체 생성 

dt_clf = DecisionTreeClassifier(random_state=11)

# 학습 수행 

dt_clf.fit(X_train, y_train)

# 학습이 완료된 DecisionTreeClassifier 객체에서 테스트 데이터 세트로 예측 수행. 

pred = dt_clf.predict(X_test)

답변 1

1

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

네 맞습니다. 생성된 classifier객체 dt_clf = DecisionTreeClassifier(random_state=11) 는 학습  dt_clf.fit()을 수행하여 dt_clf 객체내에서 학습데이터를 반영하고, 이를 굳이 dt_clf.fit() 수행 후 반환할 필요가 없기 때문에 반환을  None하게 됩니다.

감사합니다.

잘삽시다님의 프로필 이미지
잘삽시다

작성한 질문수

질문하기