타이타닉 데이터로 F1 Score 맛보기
1
!pip install kaggle
1
!kaggle competitions download -c titanic
먼저 F1 Score에 대해 정리하고 넘어갑니다. F1 Score는 재현율과 정밀도의 조화평균입니다. 재현율은 Recall, 정밀도는 Precision이죠.
F1 Score는 F(베타 가중치)점수에서 '베타=1'인 경우입니다.
재현율과 정밀도 모두 고르게 반영하는 점수인 셈입니다.
sklearn.metrics 의 classification_report 함수를 가져와 사용하면 f1-score를 쉽게 구할 수 있습니다.
1
2
3
4
5
6
from sklearn.metrics import classification_report
y_true = [0, 0, 0, 1, 1, 0, 0]
y_pred = [0, 0, 0, 0, 1, 1, 1]
print(classification_report(y_true, y_pred, target_names=['class 0', 'class 1']))
f1_score함수로 따로 구할수도 있습니다.
다시 타이타닉 데이터로 돌아옵니다.
다음 포스팅을 따라해보겠습니다. 간단하게 로지스틱회기 모델만 사용해서 타이타닉 데이터를 훈련했습니다. https://coduking.com/entry/%EB%B6%84%EB%A5%98%EB%AC%B8%EC%A0%9C-%EC%84%B1%EB%8A%A5%ED%8F%89%EA%B0%80-%EC%A7%80%ED%91%9C-Accuracy-Recall-Precision-F1-score-titanic-%EC%8B%A4%EC%8A%B5
분류문제 성능평가 지표: Accuracy, Recall, Precision, F1 score (+titanic 실습) 목차: 1. 분류문제 성능평가 지표 1-1. Confusion matrix 1-2. Accuracy(정확도) 1-3. Recall(재현율) 1-4. Precision(정밀도) 1-5. F1 score 2. 데이터 불균형 문제 2-1. Over sampling 2-2. Under sampling 3. 케글 titanic 실습 분류문제의 성능평가 지표에는 Accuracy, recall, precision, F1 등이 있다. 이는 모델 평가단계에서 사용하는 성능평가 지표이다. 이번시간에는 가장 대표적인 평가지표인 4가지에 대해서 먼저 알… 목차: 1. 분류문제 성능평가 지표 1-1. Confusion matrix 1-2. Accuracy(정확도) 1-3. Recall(재현율) 1-4. Precision(정밀도) 1-5. F1 score 2. 데이터 불균형 문제 2-1. Over sampling 2-2. Under sampling 3. 케글 titanic 실습 분류문제의 성능평가 지표에는 Accuracy, recall, precision, F1 등이 있다. 이는 모델 평가단계에서 사용하는 성능평가 지표이다. 이번시간에는 가장 대표적인 평가지표인 4가지에 대해서 먼저 알…
- 데이터의 결측치를 확인하고, 채우거나 제거하기.결측치 처리를 하기 위해 변수의 성격과 유니크 변수인지 여부를 봐야함.
- 학습데이터(X_train, X_val), 평가데이터(y_train, y_val)을 분리해야 함.
- 학습데이터(X_train, X_val)을 표준화, 최대최소정규화를 해서 (X_train_std, X_val_std), (X_train_minmax, X_val_minmax)를 구해야 함. _train값에는 scaler.fit_transform, _val값에는 scaler.transform을 사용해야 함.
- 학습데이터의 _train과 평가데이터의 _train을 사용해서 모델을 훈련함.로지스틱회기 모델은 C=0.1, penalty='l1', solver='saga', max_iter=1000)
- 모델훈련은 모델.fit(X_train_minmax, y_train)
train, val 과 X, y 구분이 좀 헷갈려서 조금 외우듯이 주석을 달았습니다.
F1-score 0.8을 달성했네요. 이제 모델을 여러개 사용해서 앙상블까지 다뤄보겠습니다.
문제 설정에 다소 오류가 있었어서 다음 포스팅에서 앙상블까지 제대로 다뤄보겠습니다.









