본문 바로가기
728x90

메모장171

n223 Evaluation Metrics for Classification 분류모델을 할 때에는Confusion matrix 를 만들고 해석할 수 있습니다. (=해당 matrix로 설명해야되) 정밀도, 재현율 을 이해하고 사용할 수 있습니다. ROC curve, AUC 점수 를 이해하고 사용할 수 있습니다. * True / False ==> 예측이 정확했는지 (판단을 올바르게 했다) * Positive / Negative ==> 모델을 통한 예측값 (판단자가 그렇다 판별) 병원에서 초기 암진단을 하는 경우? 넷플릭스에서 영화추천을 해주는 경우? 재현율이 중요 지표인 경우는 암 판단 모델이나 금융 사기 적발 모델과 같이 실제 Positive 양성 데이터를 Negative로 잘못 판단하게 되면 업무상 큰 영향이 발생하는 경우이다. 따라서 보통 재현율이 정밀도보다 상대적으로 중요한 .. 2021. 6. 19.
n222 RandomForest/ OrdinalEncoder 랜덤포레스트 모델을 이해하고 문제에 적용할 수 있습니다. 순서형인코딩(Ordinal encoding) 과 원핫인코딩을 구분하여 사용할 수 있습니다. 범주형 변수의 인코딩 방법이 트리모델과 선형회귀 모델에 주는 영향 이해합니다. * decision Trees / RandomForest 차이점 결정트리모델은 한 개의 트리만 사용하기 때문에 한 노드에서 생긴 에러가 하부 노드에서도 계속 영향을 주고 트리의 깊이에 따라 과적합되는 경향 ==> 앙상블모델인 랜덤포레스트를 사용하면 됨 (= 과적합을 막아주고 복원추출과정을 시행하여 서로다른 학습시행 == 최종결과(다수결 or 평균)에 영향 X ) 랜덤포레스트에서 학습되는 트리들은 배깅을 통해 만들어집니다.(bootstrap = true) 이때 각 기본트리에 사용되는.. 2021. 6. 19.
n221 Decision Trees, gini, entropy 사이킷런 파이프라인(pipelines) 을 이해하고 활용 할 수 있습니다. 사이킷런 결정트리(decision tree) 를 사용할 수 있습니다. 결정트리의 특성 중요도(feature importances) 를 활용할 수 있습니다. 결정트리 모델의 장점을 이해하고 선형회귀모델과 비교할 수 있습니다. 모든 binary binary 변수는 다음과 같은 규칙을 따릅니다. 0 : No / 1 : Yes *지도학습 ==> train set을 학습 알고리즘에 넣은 다음 가설함수 도출 train set 알고리즘 price -> 가설함수 -> 추정치( predict ) 1. Train data ==> train / val set으로 나눔 # profiling ! pip install pandas-profiling==2... 2021. 6. 19.
n214 Logistic Regression / validation Test set(테스트 데이터)은 validation set으로 사용할 모델이 결정 된 후, 마지막으로 딱 한번 해당 모델의 예상되는 성능을 측정하기 위해 사용된다. 이미 validation set은 여러 모델에 반복적으로 사용되었고 그중 운 좋게 성능이 보다 더 뛰어난 것으로 측정되어 모델이 선택되었을 가능성이 있다. 때문에 이러한 오차를 줄이기 위해 한 번도 사용해본 적 없는 test set을 사용하여 최종 모델의 성능을 측정하게 된다. 최종테스트 결과가 마음에 들지 않는다고 모델을 또 수정하여 테스트 세트를 더 잘 예측하는 모델을 만든다면 그 모델은 테스트세트에 과적합하여 일반화 성능이 떨어지게 될 수 있습니다 * Train = 모델을 Fit 하는데 사용합니다 * Test = 성능이 좋은지 최종 확.. 2021. 6. 14.
n213 Ridge Regression, onehotencoding import pandas as pd import numpy as np from sklearn.linear_model import LinearRegression, LogisticRegression, Ridge, RidgeCV, Lasso, LassoCV, ElasticNet,ElasticNetCV from sklearn.preprocessing import StandardScaler from sklearn.model_selection import train_test_split from sklearn.metrics import r2_score, mean_squared_error ##범주 비율 df['City'].value_counts(normalize=True) ## aggregation을 사용해 City .. 2021. 6. 12.
n212 Multiple Linear Regression / 과적합 과소적합 import pandas as pd import numpy as np from sklearn.linear_model import LinearRegression, LogisticRegression, Ridge, RidgeCV from sklearn.preprocessing import StandardScaler, PolynomialFeatures from sklearn.model_selection import train_test_split # X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=1) from sklearn.metrics import r2_score, mean_squared_error * Train data / Tes.. 2021. 6. 12.
n211 Simple Regression import pandas as pd import numpy as np from sklearn.linear_model import LinearRegression, LogisticRegression, Ridge, RidgeCV, from sklearn.preprocessing import StandardScaler from sklearn.model_selection import train_test_split from sklearn.metrics import r2_score, mean_squared_error *sns.pairplot(df[cols], height=2); ==> 전체 변수와의 관계를 보여줌 *머신러닝이란? Data, Answer ==> ML model ==> rule = 지도학습( 데이터와 답.. 2021. 6. 12.
n134 Clustering 군집분석 from sklearn.datasets import make_blobs from sklearn import decomposition from sklearn.decomposition import PCA from sklearn.cluster import KMeans from sklearn.preprocessing import StandardScaler *군집분석이란? 변수들이 속한 모집단 or 범주에 대한 사전정보가 없는 경우 ==> 1. 관측값 사이의 거리(유사도) euclidean 2. 유사성을 이용하여 개체들을 몇개의 그룹으로 나눈다 3. 군집으로 나누는 분석법 KMean Clustering(= 데이터의 연관된 feature를 바탕으로 유사한 그룹생성) *목적 Clustering이 대답할수 있는 질문은.. 2021. 5. 29.