본문 바로가기
반응형

ML5

머신러닝 2_5 데이터 전처리(Preprocessing) 결손값 처리 (Null/ NaN 처리) 데이터 인코딩(레이블, 원-핫 인코딩) 머신러닝알고리즘은 문자열 데이터 속성을 입력값으로 받지않기 때문에 문자형이 아닌 숫자형으로 표현 되어야한다. 레이블인코딩 - 남, 여 → 1, 0 , 숫자값이기 때문에 의도하지 않아도 1이 더크다는 의미로 영향을 받는 알고리즘이 있을수있다. 따라서 회귀에는 적용하지말고 tree 계열 ML 알고리즘은 적용가능 , 이러한 문제점을 해결하기위해 나온것이 원핫 인코딩이다. 사이킷런의 LabelEncoder 클래스 , fit() 과 transform() 을 이용하여 변환 원핫(One-hot) 인코딩 -feature 값의 유형에 따라 새로운 피처를 추가 해서 고유값에 해당하는 컬럼에만 1을 표시 하고 나머지 컬럼에는 0 을 표시 하는 방.. 2022. 4. 28.
머신러닝 2_4 교차검증 1. 교차 검증 교차검증을 하는 이유 - 과적합에 따른 성능저하 개선 과적합 이란? 모델이 학습데이터에만 과도하게 최적화 되어 실제 예측을 다른 데이터로 수행할경우 예측성능이 과도하게 떨어지는것, 고정된 학습/테스트 데이터로 평가를 하다보면 테스트 데이터에만 최적을 성능을 발휘하도록 평향된 모델을 유도 하는 경우가 생기고 결국 테스트 데이터에만 과적합 되는 학습 모델이 만들어져 다른 테스트 데이터가 들어오는 경우 성능이 저하 학습데이터를 다시 분할하여 학습 데이터와 학습된 모델의 성능을 일차 평가하는 검증 데이터로 나눔. 검증데이터를 바꿔가며 미리 테스트를 해봄. 머신러닝은 데이터의 의존이 심하기 때문에 여러번 검증 데이터셋으로 학습과 평가를 수행하여 그결과에 따라 하이퍼 파라미터 튜닝등의 모델 최적화를.. 2022. 4. 28.
머신러닝 2_3 ModelSelection 학습/테스트 데이터 셋 분리 – train_test_split() X_train, X_test, y_train,y_test = train_test_split(’피쳐데이터세트’, ‘레이블데이터세트’, test_size=’전체데이터세트중테스트데이터비율’, random_state=’호출할때마다 같은 학습//테스트용 데이트 세트를 생성하기위해 주어지는 난수 발생값 ’) train_test_split 는 무작위로 데이터 분리 하므로 random_state를 지정하지 않으면 수행할때마다 다른 학습 / 테스트용 데이터를 만들수 있다. 따라서 동일 데이터세트로 분리하기위해 random_state 를 일정 숫자값으로 부여, 숫자값은 어떤값으로 시정해도 상관없음 ) X_train: 학습용 피처 데이터 세트 X_test: .. 2022. 4. 22.
머신러닝 2_2 (사이킷런 기반프레임워크) - 지도학습 Estimator : 지도학습의 모든 알고리즘을 구현한 클래스 ~Classifier 분류(Classification) 알고리즘이 구현된 클래스 DecisionTreeClassifier RandomForestClassifier GradientBoostingClassifier GaussianNB SVC ~Regressor 회귀(Regression) 알고리즘이 구현된 클래스 LinearRegression Ridge Lasso RandomForestRegressor GradientBoostingRegressor fit() 지도학습 알고리즘을 학습시킬 때 사용되는 메서드 predict() 지도학습 알고리즘을 이용하여 예측을 할 때 사용되는 메서드 - 비지도학습 차원 축소 클러스터링 피처 추출(Feat.. 2022. 4. 22.
반응형