Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

HJunS

[혼공족] 혼자 공부하는 머신러닝 + 딥러닝 1주차 Ch02 본문

혼공단

[혼공족] 혼자 공부하는 머신러닝 + 딥러닝 1주차 Ch02

HJunS 2024. 1. 7. 17:58

02-1 훈련 세트와 테스트 세트

  • 지도학습: 입력과 타깃을 전달하여 모델을 훈련한 다음 새로운 데이터를 예측
  • 비지도 학습: 타깃 데이터가 없이 입력 데이터에서 어떤 특징을 찾는 데 활용
  • 훈련 세트:  모델 훈련에 사용하는 데이터로 테스트 세트를 제외한 데이터를 사용
  • 테스트 세트: 전체 데이터에서 20~30% 테스트 세트로 사용. 전체 데이터가 아주 크다면 1%만 사용하기도 
  • 샘플링 편향: 훈련 세트와 테스트 세트의 샘플이 한쪽으로 치우쳤을 때 

 

훈련 세트와 테스트 세트 셔플

  • 데이터 생성

 

 

  • 넘파이로 셔플 후 훈련과 테스트 세트 나누기

  • 훈련, 테스트 확인

파랑: 훈련, 주황 테스트

 

  • 모델 학습

 

02-2 데이터 전처리

위의 데이터를 넘파이로 변환한다

 

  • 인덱스를 직접 섞어서 나누는 방법은 사이킷런 함수로도 할 수 있다.
    stratify 매개변수로 클래스 비율에 맞게 데이터를 나눌 수 있다.

 

스케일이 다른 특성 처리

 

  • 위의 삼각형 [25, 150]의 데이터는 오른쪽 도미에 가깝지만 [0] 빙어로 분류했다.  삼각형은 4개의 빙어 데이터와 1개의 도미 데이터를 참조하여 빙어로 예측했다.

 

  • 해당 그래프의 x축은 5의 단위로 늘어나고 y축은 200의 단위로 늘어난다. 따라서 두 길이와 무게의 값이 놓인 범위가 크게 다르다. 
  • x축과 y축의 범위를 동일하게 맞추었더니 수직으로 늘어선 형태가 됨

x와 y를 동일한 단위로 변경

 

데이터 전처리

  • 길이와 무게의 값이 놓인 범위가 크게 다르다. 이를 스케일(scale)이 다르다고 한다.
  • 데이터를 표현하는 기준이 다르면 올바르게 예측할 수 없다. 특히 거리 기반 알고리즘의 경우가 그렇다.
  • 특성값을 일정한 기준으로 맞춰주는 것이 데이터 전처리이다.
  • 가장 널리 사용하는 전처리 방법은 표준점수(z 점수)이다.
    표준점수는 원점에서 몇 표준편차만큼 떨어져 있는지를 나타낸다.
    표준편차  = (xmean)/std
  • 넘파이의 브로드캐스팅으로 모든 행에 적용한다.

  • 예측할 샘플도 동일한 기준으로 변경후 산점도를 확인

  • 스케일링한 데이터가 초록색 도미 데이터를 참조