본문 바로가기

Machine Learning/분류모델12

Logistic Regression (선형분류모델 ), SVM 실습 [ plt.imshow( ) / 데이터 스케일링 MinMaxScaler / 불확실성 확인 predict_proba( ) ] [ 손글씨 숫자 이미지 데이터 ] data명.describe() : 컬럼별 숫자데이터 통계 출력됨 ( count 총계, top 가장 많이 나온 요소, min 최소값, mean 평균, max 최대값, freq-top의 횟수 등등의 통계량) (object형은 출력에서 제외됨) .unique() : 해당 데이터 내부의 유일한 값을 확인 가능하다 min : 0 max : 255 top1 : 0 (687개 있음) top2 : 253 (24개 있음) 0번 row 가 가지는 각 컬럼의 값들 이미지를 보여주는 plt.imshow() *. unique() 로 ndarray 객체로 return받아서 Series,DataFrame.sort_values()가 사용 불가능. np.sort()를 사용해서 정렬해야함 답 데이터의 value 값이 몇개씩 있는지 확인.. 2022. 8. 12.
Linear Model Classification ( 선형분류모델 )의 개념 [Logistic Regression / Support Vector Machine ] 선형모델에서의 분류보델 Logistic Regression : 회귀가 붙어있지만 분류임 svm : 하나의 선을 그어 클래스를 구분하는 형식 값을 대입하니 선형의 그래프가 곡선형태로 변함 출력되는 결과값(sigmoid)의 범위 : 0~1사이 knn과 비슷해보이나 knn은 선을 긋고 거리계산을 했다면 가장 가장자리에 있는 서포트 백터들의 사이에 margin값이 최대가 될때 내부적으로 거리 계산후 선을 긋는것이 SVM이다 alpha : 선형회귀모델의 하이퍼 파라미터 L1 : Lasso L2 : Ridge 2022. 8. 12.
AdaBoost / GBM / XGBoost [Boosting (부스팅) 알고리즘 실습] [유방암 데이터] 부스팅은 순차적으로 학습-예측하며 잘못 예측한 이전 모델의 데이터에 가중치를 부여해서 학습하는 방식 이렇게 분류가 진행된 것들을 결합하는 방식이다 from sklearn.ensemble import AdaBoostClassifier 로 AdaBoost 모델 불러오기 모델명 = AdaBoostClassifier(n_estimators = ?, random_state = 아무숫자) 로 모델 객체 생성하기 하이퍼 파라미터인 n_estimators 학습 : 모델.fit(훈련용 문제, 훈련용 답) 예측 : 모델.predict(테스트 문제) 평가 : accuracy_score(테스트용 답, 예측값) 모델명 = 모델종류Classifier ( 하이퍼파라미터 =? ,random_state=아무숫자) (진행 순서) 1. .. 2022. 8. 9.
Random Forest (랜덤 포레스트) Bagging (배깅) 알고리즘 실습 [ GridSerachCV를 이용한 모델 성능 향상 / feature(피처)의 중요도를 확인하는 feature_importances_ ] [ 유방암 데이터 ] 장점 : DecisionTree의 쉽고 직관적인 장점을 그대로 지님 / 수행속도가 빠름 / 다양한 분야에서 사용가능 (대체적으로 좋은 성능) 다양한 트리를 만드는 방법 = 부트스트랩 배깅은 같은 알고리즘에 대해 데이터 셋을 다르게 두고 각각 학습 (병렬적) 여러 알고리즘이 순차적으로 학습 먼저 학습한 알고리즘 예측이 잘못된 데이터에 대해 다음 순서엔 데이터에 가중치를 부여하여 새롭게 생성된 데이터세과 모델로 학습과 예측을 진행하는 방식 from sklearn.model_selection import train_test_split 훈련셋과 테스트셋의 비율을 나눠주는 도구 train_test_split 유방암 데이터를 로드한 결과 딕셔너리 key 값을 불러오는 *.keys( ) value 값을 불러올땐 *... 2022. 8. 9.