딥러닝 모델을 사용하면, 통계기반 모델처럼 가정을 하지 않아 아래와 같은 전처리 과정이 사라진다.

1) 정상성을 요구하지 않는다.

2) 계절형 ARIMA 모델의 차수, 계절성에 따른 평가와 같은 파라미터를 고르는 기술을 개발할 필요가 없다.

3) 상태 공간 모델링에서 유용했던 시스템의 역동성에 대한 가설을 세울 필요가 없다.

딥러닝은 입력의 모든 입력 채널의 값이 -1~1 사이로 조정될 때 가장 잘 동작하므로 데이터 전처리 작업이 필요하다는 특징이 있다.


10.1 딥러닝 개념

딥러닝은 인간의 뇌를 모방한 신경망을 더욱 발전시켜 만든 것이다. 비선형 기능을 표현한다.

1) 입력계층과 은닉계층 사이 가중치 : 4X3 행렬, 계산 결과는 4X1행렬

2) 활성함수를 통해 비선형성 제공

3) Dense layer를 결합해, 은닉 계층의 출력을 출력 값 2개로 변환해준다. (차원을 맞추는 역할)


10.2 신경망 프로그래밍

10.2.1 데이터, 기호, 연산, 계층, 그래프

행렬 연산, 활성함수, 편향을 모두 고려하면 계층을 위처럼 표현할 수 있다.

위와 같은 계층을 다음 계층으로 전달할 수 있다.

경사하강은 학습 단계마다 일어나는 가중치 조정에 필수적이다.

완전연결계층의 입력으로 넣기 위해 데이터를 flatten(평평하게) 만들어준다.

 

자동미분 : 미분 규칙을 이미 알고 있는 상태에서 자동으로 경사도에 대해 계산해준다. 그레디언트를 이용해 가중치를 자동으로 조정하고 훈련시킨다.


10.3 학습 파이프라인 만들기

시간별 전기측정 데이터

데이터 처리 과정은 위와 같은 과정을 따른다.

 

확률적 경사 하강법(SGD) : 한 번에 전체 데이터의 일부분에 접근하는 걸 반복하여, 전체 데이터를 학습하는 것

에폭 : 전체 데이터를 모두 한 번씩 거친 것

두 단계 이전의 데이터들로 한 단계 미래 예측하는 모델을 만들고자 한다. 시간 t에서 Y를 예측한다.

위와 같이 t-1, t-2 값들을 통해 활용한다.

최종 데이터로 위 데이터를 개별샘플(n), 다변량정보(c) nc데이터라고 한다. 다르게는 NTC(샘플X시간X채널)로, 샘플=원본 데이터의 각 행, 시간=시간상 얼마나 이전까지로 나타낼 수 있다.

t-1 수평선 예측에 대한 NTC 형식은 위와 같이 나타낼 수 있다.


10.4 순전파 네트워크

시계열에서 순전파 네트워크를 쓰는 이유는 다음과 같다.

첫 번째 계층은 은닉 20개, 두 번째 계층은 10개

두 계층 다음에는 활성계층이 존재 - 비선형성을 가지게 됨

완전연결계층은 위와 같이 나타낼 수 있음

W : 행렬곱셈의 결과, 은닉층과 동일한 차원의 벡터를 출력할 수 있도록 맞춰진 차원으로 구성된 가중치 집합

b : 편향

활성함수는 위와 같이 비선형성을 띄는 함수를 사용한다.

 

10.4.2 어센션 기법으로 순전파 신경망이 시간을 인지하도록 만들기

어텐션 : 신경망에 추가될 수 있는 메커니즘으로 필요한 순서를 집중 학습할 수 있도록 한다. 즉, 입력되는 순서의 어떤 부분이 원하는 출력에 연관되는지를 배울 수 있게 해준다.

어텐션 가중치 : 어떤 정보가 언제 중요한 지, 단계마다 학습되는 가중치. 서로 다른 시간 단계의 정보를 결합하는 방법을 학습할 수 있게 해준다. 출력 X 이전 단계의 은닉 상태 = context vector로 변환한다.

시간 단계마다 은닉 상태 h1, h2, h3 ... 생성

어텐션 메커니즘 적용 : 두 번째 신경망 a(ht)를 학습하기 위한 것으로 네트워크가 다른 시간대의 데이터에서 들어오는 상태 정보인 각 입력에 얼마나 가중치를 줄 것인지 학습할 수 있도록 해준다. 입력들의 최종 합을 계산할 때, 어느 시간 단계에 더 가중치를 주는지 덜 주는지 결정할 수 있도록 해줌.

서로 다른 시간에 대한 은닉 상태들은 마지막 타깃/레이블에 대한 생성 과정을 그들의 어텐션 계수와 결합함. 


10.5 합성곱 신경망

커널(행렬)을 더 큰 행렬 위를 미끄러지듯 움직이는 방식으로 적용하여 새로운 행렬을 만드는 신경망. 행렬의 각 요소는 커널과 큰 행렬의 부분을 원소별로 곱하여 합한 값으로, 행렬(이미지)위를 정해진 칸만큼 움직이며 반복적으로 적용됨. 

합성곱의 주요 특징은 모든 공간이 균등하게 취급된다는 것이다. 이미지에서는 의미 있지만, 시계열(시점 간의 차이)에는 적합하지 않다. 크기가 변하지 않도록 구조화되어 있다.

 

인과적 합성곱

시계열에 적합하게 구조를 바꾼 방법으로, 시간의 의미와 인과관계를 만들기 위해 변형된 합성곱이다. 오직 인전 시점의 데이터만 허용하여 시간의 인과관계란 개념을 도입한다. 오직 데이터는 과거에서 미래로만 흐를 수 있다는 것이다. 패딩은 행렬의 좌측에 채운다. (이전 시점의 역할을 대신하기 위해)


10.6 순환 신경망(RNN)

순전파 신경망과 다음과 같은 차이점이 있다.

RNN셀은 게이트 순환 유닛(GRU)로, 데이터가 적용될 때 시가느이 단계마다 펼쳐지는 방식이다.

GRU와 LSTM의 차이점

RNN의 문제점 (경사 소멸, 경사 폭발)을 GRU LSTM이 모두 해결해준다.

 

10.6.2 오토인코더

seq2seq라고도 잘 알려져 있어, 데이터를 압축하는 인코더 구조와 복원하는 디코더 구조로 구성되어 있다.

 

 

LSTnet

AR모델과 병렬적으로 기본적인 순환 계층 및 스킵 순환 계층의 출력을 합한 것. 각 순환 계층 입력은 시간과 채널의 축 모두에 대해 합성곱 연산을 수행한 합성공 계층 출력이다.

728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 라이프코리아트위터 공유하기
  • shared
  • 카카오스토리 공유하기