reference : lg aimers, 논문, youtube
자세한 구조는
https://velog.io/@hyeda/transformerbert 에 정리
본 논문에서는 최초로 다변량 시계열 데이터의 unsupervised 표현학습에 Transformer를 접목한 Time Series Transformer (TST)를 제안한다.
연구배경
논문 주요 내용
Transformer의 Encoder 구조만 사용
Pre-training 위해 연속적인 길이의 Input Masking 사용
Layer Normalization 대신 Batch Normalization 사용
Fine-tuning 단계에서 구조를 어떻게 설계하느냐에 따라 Classification, Regression, Forecasting, Missing Value Imputation 등 다양한 Task에 적용 가능
Markov Chain 적용 이유?
- 각 Cell에 대한 Masking 여부를 독립적으로 결정하게 되면 Trivial Solution으로도 문제를 잘 맞추는 상황이 발생하게 됨
- Trivial Solution : Masking된 Cell의 이전 시점 혹은 이후 시점 값을 그대로 사용하거나 양쪽 Cell의 평균값을 사용하는 것
Layer Normalization vs Batch Normalization ?
- LN은 각 input의 feature들에 대한 평균과 분산을 구해서 batch에 있는 input을 정규화
- BN은 각 feature의 평균과 분산을 구해서 batch에 있는 feature 를 정규화
1단계)
Masking를 적용하지 않은 Input Time Window를 Input encoding과 Transformer Encoder에 순차적으로 넣어 Representation을 도출한다.
2단계)
도출된 모든 시점의 Representation을 Concatenation 한 것을 Output Linear Layer에 Input으로 넣어 Regression 또는 Classification의 정답을 예측한다.
3단계)
Task의 실제 정답과 TST가 예측한 값의 차이를 통해 Output Linear Layer를 Fine-funing
세부적으로 z를 새로운 linear output layer에 input으로 넣어 regression 및 classification을 수행하며, 해당 layer만 task에 맞는 loss를 통해 학습한다.
논문에서는 fine-tuning task를 수행하기 위한 output layer를 제외한 pre-trained model은 freezing하고 fine-tuning을 진행
Supervised learning에 사용되는 label의 비율 증가에 따른 TST(pretrained)와 TST(sup. only)의 성능 변화?
트랜스포머의 포지셔널 인코딩, 멀티헤드어텐션은 sequence data를 처리에 특화됨. 실제로 좋은 성능을 달성
TST의 Pre-training~Fine tuning 방식은 일반적인 LLM 학습 방식과도 유사하다.
같은 sequence data여도 text 데이터와 시계열 데이터 특성에 따라 더 적합한 학습 방식이 존재하므로 이를 고려할 필요가 있다. (시계열 데이터 -> 이상치가 존재하고, 길이 변화가 text data에 비해 적음)
좋은 글 잘 읽었습니다, 감사합니다.