time series data는 일반적인 cross validation으로 검증을 수행해도 무리가 없을까? 일반적인 cross validation을 수행하면 과거 미래 데이터가 무작위로 섞일 것이다. 미래를 예측하기 위해서는 그 이전의 정보를 사용하여 예측하는 것이 기본인데 무작위로 뒤섞인다면 당연히 예측 성능이 떨어질 것이다. 1. ordering by time 기본적인 방법 중 하나는 데이터를 시간 순서대로 정렬하고 validation set을 train set보다 미래에 있는 것으로 선택하고 test set도 validation set, train set보다 미래에 있는 데이터를 선택하는 것이다. 이게 가장 흔하고 자주 사용하는 방법같다 그러나 이 방법이 안좋은 점은 test set은 무작위로 선택..
1. 이상치란? 데이터 중 일반적인 데이터와 크게 다른 데이터를 의미함 모델 성능에 큰 영향을 줄 수 있어 조심히 접근해야함 위의 왼쪽에는 상관관계가 0.95로 계산되는데 이상해보이는 3개 제거하고 나니 실제로는 랜덤하게 흩뿌려진 데이터 분포를 나타냄 아래의 그림에서 왼쪽을 보면 깔끔하게 상관관계를 보이는 데이터 분포 그런데 이상한 데이터가 추가되고나니 오른쪽처럼 상관관계가 약간 더러워짐? 2. Z score Z score로 이상치를 탐지할 수 있는데 관측치 X에 대해 이들의 평균이 μ, 표준편차가 σ이면 특정 i번째 관측치 Xi의 Z score란 Zi=Xi−μσ로 구해지고 이것은 N(0,1)을 따른다. 정규분포의 특징..
boston data에서 임의로 15~25% 결측치를 생성했음 1. pattern을 통한 결측치 처리 결측치의 pattern을 대략적으로 파악하면 어떤 식으로 처리할지 감이 올 수 있음 x축을 개별 변수, y축을 변수의 value로 하고 heatmap을 그림 전체 dataset의 x축을 feature, y축을 feature의 value라고 하여 pattern을 그려보면 왼쪽과 같이 random하게 결측치가 있을 수 있고 오른쪽 처럼 어떤 규칙을 보일수도 있음 위와 같이 boston dataset의 pattern을 그려보니 결측치가 random하게 분포하는 것 같음 random하게 15~25% 결측치를 만들었으니까 가상으로 만든 dataset의 pattern이 위와 같다면 결측치가 어떤 규칙을 가지고 분포..
1. 데이터 전처리란? 머신러닝 모델에 데이터를 입력할 수 있도록 적절하게 처리하는 과정 EDA를 위해 데이터 구조를 바꿔서 처리하는 것도 하나의 전처리 과정 EDA 목적이나 모델에 입력데이터를 어떻게 넣어줄 것인가에 따라 달라진다 EDA에서 어떤 부분을 찾고싶은가에 따라서도 달라짐 선형모델이냐 트리모델이냐 딥러닝모델이냐에 따라서도 달라짐 데이터 전처리도 정답이 없지만 어느정도 기본은 있다 머신러닝 모델에 데이터를 입력하기 위한 과정이라는 것을 염두에 두고 연속형, 범주형을 처리 & 결측치 처리 & 이상치 처리 2. 예시로 이해하는 연속형 변수 전처리 sklearn에 있는 boston data 506개의 데이터 포인트, 13개의 변수 CHAS만 범주형이고 나머지는 연속형 target은 집값의 중위수라는데..
1. introduction 범주형 변수는 일종의 category를 가진다. 식물의 종이나 자동차 종류나 연속형보다 주의해서 다뤄야 할 수도 있음 보통 문자열로 나타나는데 머신러닝에 입력하기 어려워서 수치형으로 변환해줘야 한다. 2. one hot encoding 해당 변수의 값이 어떤 category에 속하면 1, 아니면 0으로 두는 방법 '그냥 0 아니면 1' 이런게 아니라.. '해당 변수의 VALUE가 어떤 category에 속한다면 1, 그렇지 않으면 0' 위의 그림에서 id 1은 개에 속하므로 개에 1을 주고 고양이에 0을 주어 (1,0)으로 encoding하고 id 2는 고양이에 속하므로 개에 0을 주고 고양이에 1을 주어 (0,1)로 encoding한다 특히 개와 고양이 모두에 속하는 id ..
분류 문제에만 사용하는 것처럼 보이지만 decision tree는 regression 문제에도 사용이 가능합니다. 불순도를 측정하는 기준으로 분산을 사용할 수 있습니다. 분산이라는 것이 연속형 데이터 같은 경우 분산이 크면 넓게 퍼져 있어 그만큼 불순하다? 불확실하다?라는 느낌을 받을 수 있다고 생각합니다. 분산의 감소량이 최대가 되는 feature를 선택하여 tree를 생성해나갑니다. 예를 들어서 다음과 같은 data set이 주어졌다고 합시다. 현재 상태에서 target의 표준편차는 얼마일까요? 계산하면 9.32가 나온다고 합니다. 이제 구분하고자하는 feature를 선택하는데 예를 들어 outlook을 먼저 선택합시다. outlook을 선택하면서 표준편차가 얼마나 감소하는지 계산하려면 outlook..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.