본문 바로가기
딥러닝으로 하루하루 씹어먹기

LSTM으로 수요 예측하기 - 2장 (데이터 전처리)

by Yoo Sung Hyun 2021. 3. 22.
728x90

내 생각대로 구현하고, 실 데이터로 증명할뿐.

만약 그 증명이 틀린게 있다면 거침없이 댓글을 달아주기 바란다.

 

모델을 짜면서 전부 형상관리를 했으면 좋았으련만,

 

앞에서 말했다시피, 전회사에서 퇴사하기 전에 이미 현재 회사 일을 하고있을정도로 사안이 급박해서,

 

폐기되는 모델은 조금만 저장해놨다가 다 없애버리는바람에 최초 모델들은 남아있지 않다는게 너무 아쉽다.

 

작업 순서상으로 보면, (목차가 되겠다)

 

1. 시간별로 데이터 전처리 / Not Scaled

2. 일반 lstm 3레이어 정도(?)

3. 이전 hidden data도 중요하다고 생각듬

4. BI-LSTM 사용

5. 데이터가 너무 없어 K-Fold 적용

6. Layer만 주구장창 쌓다가 AutoEncoder 활용

7. 데이터 Scaled 적용

8. Loss Function Custom

9. 1차 마무리

  - 여기 사이에는 BERT가 포함되어있다. (Google Source를 다 까봤는데, 이건 언제 또 정리할까...) -

10. Attention 적용

  => Dual-Stage Attention RNN (DA-RNN)

  => Luong Attention (Dot-Product Attention)

중간중간 데이터 구조 바꾸고 하는데 대똥꼬쑈를 했는데, 자세한건 생략하겠다.

 

1. 시간별로 데이터 전처리 / Not Scaled

1장에서 설명했던 데이터셋을 가지고,

기초 데이터

실제로 모델을 돌리기 위한 각종 데이터 작업들을 해줬다.

 

    1. 2월 29일 제거

    2. 범주형 변수 one-hot 처리

    3. feature 결정

 

1. 2월 29일 제거

    현업 요구사항으로 제거 (판다스 where/drop 사용)

2. 범주형 변수 one-hot 처리

    판다스 get_dummies 활용

3. feature 결정

    중요하게 생각하는 feature들에 대해 직접 설정했다. EDA고 자시고, 데이터가 원체 볼게 없어서, 그냥 뻔히 보면 뭐겠거니 보인다. 그냥 다돌려가면서 하나씩 빼보는것도 방법이겠고....

 

이후 장에서는 일반 lstm으로 간단하게 layer 쌓았던 부분이 될텐데, 소스도 일단 없고, (다른게 더 좋아서 폐기)

현업 요구사항을 잘못 이해해서 만들었던 부분이라. (심지어 해당 회사 입사전에 만듬...;;)

간단하게 설명하고 넘어가지 싶다...

 

EASY~

728x90

댓글