시계열을 예측하기 위해 신경망을 사용하고 있습니다. 지금 당면한 질문은 날짜 / 시간 / 일련 번호를 어떻게 인코딩합니까? 신경망에 대한 입력으로 설정된 각 입력의?
여기에 설명 된대로 인코딩 범주에 사용되는 C 인코딩 중 하나를 사용해야 합니까?
아니면 그냥 시간을 공급해야합니까 (1-1-1970 이후 밀리 초)?
아니면 나머지 데이터를 시간순으로 공급하는 한 불필요하게 시간을 공급합니까?
시계열을 예측하기 위해 신경망을 사용하고 있습니다. 지금 당면한 질문은 날짜 / 시간 / 일련 번호를 어떻게 인코딩합니까? 신경망에 대한 입력으로 설정된 각 입력의?
여기에 설명 된대로 인코딩 범주에 사용되는 C 인코딩 중 하나를 사용해야 합니까?
아니면 그냥 시간을 공급해야합니까 (1-1-1970 이후 밀리 초)?
아니면 나머지 데이터를 시간순으로 공급하는 한 불필요하게 시간을 공급합니까?
답변:
신경망은 마술이 아닙니다. 당신이 그들을 그대로 취급하고 생각없이 그들에게 데이터를 던지면 아주 나쁜 시간을 보낼 것입니다.
"1970 년 이후 밀리 초가 실제로 내가 관심있는 사건을 예측할 것인가?" 당신이 즉시 도착해야하는 대답은 '아니요'입니다. 왜? 실제로 관심이있는 모든 경우 (미래의 이벤트, 과거에 이미 발생한 이벤트)에 대해 시간 변수는 학습 변수에서 시간 변수가받는 값보다 큰 값을 갖습니다. 이러한 변수는 도움이되지 않습니다. 더 나쁜 것은 조심하지 않으면 오버 피팅 (신경망과 같은 강력한 비선형 모델에 심각한 문제)을 유발할 수 있습니다.
이제 의미가있는 것은 계절 또는 연간 효과를 모델링하는 데 도움이되는 연도 또는 월과 같은 변수입니다. 줄리안의 날이 매우 중요한 변수가되었던 농업 질병 예측에 관한 연구를했습니다. 이 경험을 바탕 으로이 유형의 변수를 서수보다는 범주 형 변수로 인코딩하는 것이 더 나을 것이라고 생각합니다. 연중 월 또는 주 단위는 훈련 데이터에서 여러 번 볼 수있는 반복 가능한 이벤트이며 이러한 변수가 재무 성과에 영향을 줄 수있는 이유를 설명 할 수 있습니다. 1970 년 이후 밀리 초와 비교하면 단조 증가하는 값일뿐입니다.
마지막으로, "또는 나머지 데이터를 시간순으로 공급하는 한 불필요한 시간을 먹이고 있습니까?" 신경망이 어떻게 작동하는지 잘 이해하지 못하는 것 같습니다. 표준 피드 포워드 신경망을 사용하면 네트워크에 데이터를 공급하는 순서가 예측에 영향을 미치지 않습니다. 확률 또는 미니 배치 그라디언트 디센트를 사용하는 경우 순서가 훈련에 영향을 줄 수 있지만 이는 반복 (배치와 달리) 훈련 방법의 유물 일뿐입니다. 신경망으로 시간 의존성을 모델링하려면 슬라이딩 윈도우 또는 반복 신경망과 같은 것을 사용해야합니다.