Data Science

Python/seaborn, matplotlib

matplotlib, seaborn에서 한글 폰트 사용하기

예제 데이터는 데이콘 대회 중 '감귤 착과량 예측 AI경진대회'의 train 데이터셋 이용 In [1]: import pandas as pd gyul_train_df = pd.read_csv('./jeju_mandarin/train.csv') In [2]: gyul_growth = gyul_train_df[['착과량(int)', '수고(m)', '수관폭1(min)', '수관폭2(max)', '수관폭평균']] gyul_growth Out[2]: 착과량(int) 수고(m) 수관폭1(min) 수관폭2(max) 수관폭평균 0 692 275.0 287.0 292.0 289.5 1 534 293.0 284.0 336.0 310.0 2 634 300.0 392.0 450.0 421.0 3 639 289.0 368.0..

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (12) - 정밀도와 재현율 Precision and Recall (trade-off, predict_proba(), Binarizer, threshold...)

정밀도와 재현율 Precision and Recall 정밀도와 재현율은 Positive 데이터셋의 예측 성능에 초점을 맞춘 평가 지표 정밀도 = TP / (FP + TP) 예측을 Positive로 한 대상 중에 예측과 실제값이 Positive로 일치한 데이터의 비율 재현율(민감도) = TP / (FN + TP) 실제값이 Positive인 대상 중에 예측과 실제값이 Positive로 일치한 데이터의 비율 재현율이 중요 지표인 경우 실제 positive 양성 데이터를 negative로 잘못 판단하게 되면 업무상 큰 영향이 발생하는 경우 ex) 암 판단 모델: 실제 positive(양성)인 암 환자를 negative(음성)으로 판단하면 심각 ex) 보험 사기같은 금융 사기 모델: 실제 금융 거래 사기(posi..

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (11) - 오차 행렬 confusion_matrix()

오차행렬 confustion matrix ¶ 오차행렬: 학습된 분류 모델이 예측을 수행하면서 얼마나 헷갈리고 있는지도 함께 보여주는 지표. 이진 분류의 예측 오류가 얼마인지와 더불어 어떤 유형의 예측 오류가 발생하는지 나타냄 예측 클래스와 실제 클래스의 값 유형에 따라 결정되는 TN, FP, FN, TP 형태로 오차 행렬의 4분면을 채움 TN, FP, FN, TP는 Positive 결정값(1)과 Negative 결정값(0)의 결합에 따라 결정됨 sklearn은 confusion_matrix()를 제공 앞에서 사용한 MyFakeClassifier의 예측 성능 지표를 오차행렬로 표현하기¶ In [1]: from sklearn.datasets import load_digits from sklearn.model..

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (10) - 정확도 accuracy_score

성능 평가 지표 Evaluation Metric¶ 분류의 성능평가 지표 ¶ 1. 정확도 accuracy ¶ 실제 데이터에서 예측 데이터가 얼마나 같은지를 판단하는 지표 직관적으로 모델 예측 성능을 나타냄 그러나 이진 분류(0 또는 1)의 경우, 데이터의 구성에 따라 ML모델의 성능을 왜곡할 수 있음 사이킷런의 BaseEstimator를 활용하여 단순히 성별에 따라 생존자를 예측하는 classifier 생성¶ In [28]: import numpy as np from sklearn.base import BaseEstimator class MyDummyClassifier(BaseEstimator): # fit 메서드는 아무것도 학습하지 않음 def fit(self, X, y=None): pass #predi..

Python/Numpy

넘파이 numpy (4) - random 모듈(rand, randint, randn, choice, seed, etc)

참고: https://codetorial.net/numpy/random.html NumPy 난수 생성 (Random 모듈) - Codetorial 예제1 - 기본 사용 import numpy as np a = np.random.randn(5) print(a) b = np.random.randn(2, 3) print(b) sigma, mu = 1.5, 2.0 c = sigma * np.random.randn(5) + mu print(c) [ 0.06704336 -0.48813686 0.4275107 -0.9015714 -1.30597604] [[ 0.87354043 0.03783 codetorial.net numpy의 서브모듈: random 모듈¶ random은 난수를 발생시키는 모듈로 randint, c..

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (9) - 데이터 스케일링 Data Scaling

(데이콘 커뮤니티에서 참고함 https://dacon.io/codeshare/4526) sklearn으로 데이터 스케일링(Data Scaling)하는 5가지 방법🔥 dacon.io 데이터 스케일링 Data Scaling 피처들마다 데이터값 범위가 제각각이기 때문에 범위 차이가 클 경우, 모델링에 방해가 됨 스케일링을 통해 모든 피처들의 데이터 분포나 범위를 동일하게 조정해줄 수 있음 훈련용 데이터셋은 fit 메서드를 적용시킨 후 transform, 테스트용 데이터셋에는 transform만 적용 In [45]: #라이브러리 정의 import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt from sk..

얆생
'분류 전체보기' 카테고리의 글 목록 (14 Page)