Sequence Data - preparing features and labels
Dec 15, 2020
이번 포스팅에서는 Sequence Data를 Tensorflow를 활용하여 데이터를 준비하는 과정을 다루려고 한다.
fig.1와 같이 우리는 0~9로 구성된 간단한 시계열 데이터 tensorflow를 활용해 쉽게 생성할 수 있다.
fig.2를 코드는size가 5인 window를 가지고 한 칸씩 이동하면서 시계열 데이터를 보여주는 코드이다.
fig.3은 fig.2 코드에 대한 출력 결과 값으로 보시다시피 window를 통해 보는 데이터가 뒤로 갈 수록 적은 데이터를 가짐을 확인할 수 있다.
drop_remainder 파라미터를 추가를 함으로 써 우리는 window size에 맞는 데이터들만 남겨두고 나머지는 제거할 수 있다.
window로 본 데이터들을 numpy로 변환을 시키기 위해서는 fig.6와 같이 flat_map과 numpy()로 쉽게 numpy로 변환이 가능하다.
fig. 7.1과 같이 window의 마지막 값을 label로 둔다면 우리는 학습시킬 데이터x와 분리를 시켜줘야하고 fig.7. 2과 같이 작성하면 된다.
dataset.batch를 이용하면 fig.8과 같이 2개의 sequences 데이터를 하나로 묶어서 볼 수도 있다.
지금까지 기술한 내용들을 종합하여 하나의 함수로 나타내면 fig.9와 같이 나타낼 수 있다.