데이터 전처리(레이블 인코딩, 원핫 인코딩)와 스케일링(일반적으로 표준화, 정규화)
2023. 6. 28. 09:43ㆍpython
반응형
인프런의 권철민 강사님 동영상을 참고 중이다.
전처리(Preprocessing)를 잘해야 한다. 이상치나 결측치가 있을 수도 있고, 인코딩 값이 다를 수도 있기 때문이다.
그리고 애초에 머신러닝에서는 문자열을 허용하지 않기 때문에 숫자값으로 바꿔야 한다.
레이블 인코딩 : 문자열로 되어 있는 것을 숫자열로 바꿔주는 것이다. 상품 이름을 상품 넘버로 , 사람 이름을 번호로 바꾸는 작업이다.
레이블 인코딩은 LableEncoder 클래스와 fit(), transform()을 이용한다.
근데 이렇게 바꾸다 보면 특정 알고리즘에는 영향을 받을 수 있다.
One-Hot 인코딩(원핫 인코딩 벡터) : 특정 분류값들을 벡터화(1차원 어레이) 시켜서 값을 입력한다.
이것을 할 때는 Sparse Matrix로 변환 되는데, 이것을 toArray를 통해 Dense Matrix(우리가 흔히 알고있는 행렬)로 다시 변환을 시켜준다.
* 스케일링(일반적으로 표준화, 정규화 작업 하는 것.)
사이킷런에서 지원하는 기능
표준화(평균이 0이고 분산이 1인 정규분포로 변환.) : StandardScaler
정규화(서로 다른 피처의 사이즈를 맞추기 위해 하는 것) : MinMaxScaler
728x90
'python' 카테고리의 다른 글
ModuleNotFoundError: No module named 'openpyxl' 주피터에서 엑셀이 쳐 안열린다면? pip install xlrd (0) | 2023.06.29 |
---|---|
경기도미래기술학교 AI개발자 부트캠프 36일차 TIL- KNN 알고리즘 디시전 바운더리까지. (0) | 2023.06.29 |
경기도미래기술학교 AI개발자 부트캠프 35일차 TIL- KNN 알고리즘 그려보기. (0) | 2023.06.28 |
axis에 대해서. 1,2,3차원 (0) | 2023.06.27 |
경기도미래기술학교 AI개발자 부트캠프 33일차 TIL- 혼자서 예측 프로그램 만들어보기. (0) | 2023.06.26 |