인공지능(AI)/AI test
sklearn.metrics 라이브러리의 accuracy_score, precision_score, 그리고 recall_score 함수(인공지능, AI 정확도, 정밀도,재현율)
프리스케이터
2024. 8. 15. 05:52
sklearn.metrics 라이브러리의 accuracy_score, precision_score, 그리고 recall_score 함수
- 정확도 (Accuracy):
- 정확도는 모델이 정확하게 예측한 비율을 나타냅니다.
- 계산 방법: (정확한 예측 수) / (전체 예측 수)
- 예를 들어, 100개의 예측 중 80개가 정확하다면 정확도는 80%입니다.
- 모든 클래스에 대해 골고루 잘 예측하는 경우에 유용합니다.
- 정밀도 (Precision):
- 정밀도는 모델이 양성으로 예측한 샘플 중 실제로 양성인 비율을 나타냅니다.
- 계산 방법: (True Positives) / (True Positives + False Positives)
- 예를 들어, 100개의 양성 예측 중 90개가 실제로 양성이라면 정밀도는 90%입니다.
- 거짓 양성(FP)을 최소화하는 데 중점을 둡니다.
- 재현율 (Recall 또는 Sensitivity):
- 재현율은 실제 양성 중 모델이 양성으로 정확하게 예측한 비율을 나타냅니다.
- 계산 방법: (True Positives) / (True Positives + False Negatives)
- 예를 들어, 100개의 실제 양성 중 85개를 모델이 양성으로 예측했다면 재현율은 85%입니다.
- 거짓 음성(FN)을 최소화하는 데 중점을 둡니다.
# 정확도(Accuracy) 높음, 정밀도(Precision) 높음

# 정확도(Accuracy) 낮음, 정밀도(Precision) 높음

# 정확도(Accuracy) 높음, 정밀도(Precision) 낮음

# 정확도(Accuracy) 낮음 , 정밀도(Precision) 낮음

sklearn.metrics 라이브러리를 사용하면 이러한 지표를 간단하게 계산할 수 있습니다. 예를 들어, 다음과 같이 코드를 작성하여 정확도, 정밀도, 재현율을 계산할 수 있습니다:
from sklearn.metrics import accuracy_score, precision_score, recall_score
# 예측과 실제 결과 생성
predictions = [1, 0, 1, 0] # 모델 예측 결과 (1: 양성, 0: 음성)
actuals = [1, 1, 0, 1] # 실제 결과 (1: 양성, 0: 음성)
# 정확도, 정밀도, 재현율 계산
accuracy = accuracy_score(actuals, predictions)
precision = precision_score(actuals, predictions, average='binary')
recall = recall_score(actuals, predictions, average='binary')
# 결과 출력
print(f"Accuracy: {accuracy:.2f}")
print(f"Precision: {precision:.2f}")
print(f"Recall: {recall:.2f}")