본문 바로가기

Machine Learning25

선형 모델 ( Linear Model ) 의 개념 하나의 특징을 가지고 target를 예측하기 위한 회귀모델을 찾는것이 단순선형회귀이다 이때 여러 샘플들을 이용해 최적의 w(가중치)와 b(절편을 찾기위해, 즉 검증 및 y 값을 확인하기 위해 여러가지 가설을 만든다 : 새로운 a와 b로 값이 변경되는 것 (ex) 2x + 1 , 10x +0 , 3x +3 등등등 이것을 바꾸는 작업을 경사하강이라고 한다 처음에 생성된 랜덤한 값에서 최적의 값을 찾기위해 기울기가 낮은곳으로 계속 하강하며 a와 b의 값을 계속해서 변경하며 이동한다 알파 = Learning rate (학습률) : 하이퍼 파라미터 / 얼마나 내려갈지? 단 다중선형회귀의 경우 y = w * x +b에서 y = w0*x0 + w1*x1 + ... wn*xn + b가 된다 피처의 개수는 n+1개가 된.. 2022. 8. 10.
머신러닝 간단정리 [목표] 과소적합 : 훈련셋이 적어 성능이 제대로 나오지않는 모델 과대적합 : 너무 상세하고 복잡한 모델링으로 훈련셋만 과도하게 정확한 모델 일반화가 필요함 (일반적으로 데이터의 양이 많으면 일반화에 도움이 됨) ====================================================================== 머신러닝 학습유형에 따른 구분 1. 지도학습(= 교사학습) : 문제(입력특성)이 주어지고 답(Label)데이터까지 학습하여 훈련시키는 기법 * 결과값에 따른 구분 : 분류와 회귀 - 분류 : 0, 1 / 'p', 'e' 범주데이터 예측 (카테고리, 클래스) - 회귀 : 수치적으로 의미가 있는 연속적인 값 * 분류모델 : KNN (최근접 Target데이터 확인 > 스케일링.. 2022. 8. 9.
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.