728x90 반응형 IT/머신러닝5 머신러닝 데이터 전처리(Preprocessing) 데이터전처리 1) 결손값 처리 (Null/ NaN 처리) 1.데이터가 충분한 경우 - 값이 누락된 데이터를 제거함 2. 데이터가 제한적일 경우 - 누락된 값을 추정해서 채움 2)데이터 인코딩(레이블, 원-핫 인코딩) 머신러닝알고리즘은 문자열 데이터 속성을 입력값으로 받지않기 때문에 문자형이 아닌 숫자형으로 표현 되어야한다. 레이블인코딩 - 남, 여 → 1, 0 , 숫자값이기 때문에 의도하지 않아도 1이 더크다는 의미로 영향을 받는 알고리즘이 있을수있다. 따라서 회귀에는 적용하지말고 tree 계열 ML 알고리즘은 적용가능 , 이러한 문제점을 해결하기위해 나온것이 원핫 인코딩이다. 사이킷런의 LabelEncoder 클래스 , fit() 과 transform() 을 이용하여 변환 원핫(One-hot) 인코딩 .. 2022. 5. 6. 머신러닝 교차검증(feat.싸이킷런) 교차검증 교차검증을 하는 이유 - 과적합에 따른 성능저하 개선 과적합 이란? 모델이 학습데이터에만 과도하게 최적화 되어 실제 예측을 다른 데이터로 수행할경우 예측성능이 과도하게 떨어지는것, 고정된 학습/테스트 데이터로 평가를 하다보면 테스트 데이터에만 최적을 성능을 발휘하도록 평향된 모델을 유도 하는 경우가 생기고 결국 테스트 데이터에만 과적합 되는 학습 모델이 만들어져 다른 테스트 데이터가 들어오는 경우 성능이 저하 동일한 학습 데이터로 학습된 아래 3개의 모델을 비교해 보면? A. 모델 2가 실제와 가장 유사한 모델이라고 하였을 때, 모델 1은 너무 단순화되어 있고, 모델 3은 복잡성이 너무 높음 학습데이터를 다시 분할하여 학습 데이터와 학습된 모델의 성능을 일차 평가하는 검증 데이터로 나눔. 검증데.. 2022. 4. 19. 머신러닝 train_test_split scikit-learn(feat.사이킷런) 학습데이터와 테스트데이터를 쉽게 분리 할 수 있도록 scikit-learn에서 train_test_split를 제공하고 있다. Train: 모델을 학습 시키기위한 dataset Test: 학습과 검증이완료된 모델의 성능을 평가하기위한 dataset, 학습에 관여하지 않는다. Validation: 이미 학습된 모델을 검증하기위한 dataset 으로 Train 의 일부이다. X_train, X_test, y_train,y_test = train_test_split(’피쳐데이터세트’, ‘레이블데이터세트’, test_size=’전체데이터세트중테스트데이터비율’, random_state=’호출할때마다 같은 학습//테스트용 데이트 세트를 생성하기위해 주어지는 난수 발생값 ’) train_test_split 는 무작위.. 2022. 4. 14. 머신러닝 용어 및 기본 예측 프로세스 (feat.사이킷런) 1-1.용어정리 피쳐(Feature) , 속성 피처는 데이터세트의 일반속성, 타겟값을 제외한 나머지 속성을 모두 피처로 칭함 타겟(값),결정(값)(=레이블, 클래스) 지도학습시 데이터의 학습을 위해 주어지는 정답 데이터, 레이블, 클래스 ⇒ 지도 학습 중 분류의 경우 에는 이 결정 값을 레이블 또는 클래스로 칭함 지도학습 - 정답이 주어진 데이터(Prediction) 를 학습 한 뒤 미지의 정답을 예측하는 방식(회귀,분류) 학습데이터세트-학습을 위한 데이터 세트(속성과 결정값(레이블)이 모두 있어야한다. 테스트데이터세트- 예측 성능을 평가하기 위한 데이터 세트-- 회기 분석, 분류 1-2. 예측 프로세스 데이터 세트 분리 - 데이터를 학습 데이터와 테스트 데이터로 분리 모델 학습 - 학습 데이터를 기반으.. 2022. 4. 12. 이전 1 2 다음 728x90 반응형