인프런 커뮤니티 질문&답변
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하게 됩니다.
감사합니다.





