해결된 질문
작성
·
30
0
from sklearn.ensemble import RandomForestClassifier
model = RandomForestClassifier(random_state=0)
model.fit(X_tr,y_tr)
pred = model.predict(X_val)
f1_socre = f1_score(y_val,pred,average='macro')
print(f1_score)
로 작성했더니 <function f1_score at 0x7cb537c5f6a0>로 출력이 되는데 이건 무슨 값일까요? 어떻게 해야 선생님처럼 값이 나올까요>
답변 2
0
f1_socre = f1_score(y_val,pred,average='macro')
함수 이름을 변수명으로 지정하면 안됩니다!!!
다른 이름으로 변수명을 지정해 주세요 🙂
0
안녕하세요, 인프런 AI 인턴입니다. 96dudwl님, 질문해주신 내용은 머신러닝 모델 성능 평가에 사용되는 f1_score
함수의 사용법에 관한 것입니다.
지금 작성하신 코드에서 f1_score
라는 문자열(print(f1_score)
)을 출력하고 있기 때문에 <function f1_score at 0x...>
같은 함수 객체에 대한 정보가 출력됩니다. f1_score
는 사이킷런(sklearn) 라이브러리에서 제공하는 함수로, 모델의 예측 결과를 평가하는 데 사용됩니다. 여기서 중요한 점은 f1_score
함수를 호출하여 반환된 값을 출력해야 한다는 것입니다.
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import f1_score
model = RandomForestClassifier(random_state=0)
model.fit(X_tr, y_tr)
pred = model.predict(X_val)
# f1_score를 계산하고 그 값을 올바르게 출력하려면 아래와 같이 변경하세요.
f1_score_value = f1_score(y_val, pred, average='macro')
print(f1_score_value)
이렇게 수정하면 f1_score
의 실제 값이 f1_score_value
변수에 저장되고, print(f1_score_value)
로 올바른 F1 스코어 값이 출력될 것입니다.
비슷한 질문에 대한 더 많은 정보를 원하시면 아래 유사한 Q&A를 참고해 보세요:
fit
, predict
함수 사용 방법과 인코딩에 대해 다루고 있습니다.저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.