피드포워드(feedforward neural network 신경망의 한계)
- 앞서 배운 신경망들은 모든 신호가 오직 출력층 방향으로만 향함.
- 일반적으로 지도 학습을 위한 머신 러닝 알고리즘은 입력데이터가 독립 동일 분포(Independent and Identically Distributed, IID)라고 가정함
- 즉 훈련 샘플이 상호독립적이고 같은 분포에 속한다는 의미
- 상호 독립 가정에 기반한다는 점에서, 모델에 전달되는 훈련 샘플의 순서와 학습이 관계가 없음
- 이러한 신경망의 단점은 한 시점의 이미지나 정보만을 이용한다는 점
순차 데이터(시퀀스 데이터 또는 시퀀스(Sequence)의 특징)
순차데이터 모델링 : 순서를 고려한다.
- 다른 데이터 타입과 다르게 시퀀스는 특별함. 시퀀스의 정의가 순서를 고려하기 때문임
- 시퀀스 원소들은 특정 순서가 있으므로 상호 독립적이지 않기 때문임
- 특정 주식의 가격을 예측하는 것이 이런 경우에 해당
- 예를 들어 n개의 훈련샘플을 가지고 있다면 각 훈련 샘플은 특정한 날의 이 주식 가격을 나타냄
- 다음 3일 동안의 주식 가격을 예측하는 작업이라면 훈련 샘플을 랜덤 순서로 사용하는 것이 아니라 날짜 순서대로 정렬된 이전 주식 가격을 고려하여 트렌드를 감지하는 것이 합리적
순서 관계의 종류
- 시간적 순서 : 자연현상, 음악, 소리, 동영상, 주가, 심전도, 뇌파, 시스템 로그 등
- 공간적 순서 : 글, 악보, 염기 서열, 프로그램
- **순차 데이터는 시공간의 순서 관계로 형성되는 문맥(콘텍스트)을 갖는다.
시퀀스 표현
- 그림 16-1은 시계열 데이터 예를 보여줌
- 입력 특성(x)과 타깃 레이블(y)은 시간 축을 따라 순서대로 나열되어 있음
- x와 y는 시퀀스 데이터
시퀀스 모델링의 종류
- 시퀀스 모델링에는 언어 번역(예를 들어 영어 텍스트를 독어로 번역)
- 이미지 캡셔닝(captioning), 텍스트 생성과 같은 매력적인 애플리케이션이 많음
- 적절한 구조와 방법을 찾으려면 여러 종류의 시퀀스 모델링 작업 사이의 차이점을 이해하고 구별할 수 있어야함
시퀀스 모델링을 위한 RNN(순환신경망)
- 시퀀스 및 시계열 데이터에 대한 학습을 통해 연속된 값을 예측 수행하기 위한 인공신경망 구조(재귀 신경망)
- 자동 번역과 같은 자연어 인식 및 처리, 주식 거래, 문장 및 문서 인식 등과 같이 연속적이고 순서에 의미가 있는 데이터들의 처리에 뛰어난 성능을 보임
- 순환 신경망의 대표적 응용 사례는 네이버의 파파고와 같은 기계번역 프로그램
- 입력과 출력 모두 글자나 단어들이 순서를 가지고 연속적으로 나타나는 시퀀스(sequence)라는 점이 특징
- RNN과 완전 연결신경망과의 구별
- RNN 반복 구조 이해
- 그림에서 일반적인 피드 포워드 신경망과 RNN을 비교하기 위해 나란히 놓았음
순환신경망 이해하기
- 생물학적 지능은 정보 처리를 위한 내부모델을 유지하면서 점직적으로 정보를 처리함
- 이 모델은 과거 정보를 사용하여 구축되며 새롭게 얻은 정보로 계속 업데이트함
- 비록 극단적으로 단순화시킨 버전이지만 순환신경망은 같은 원리를 적용한 것임
- 시퀀스의 원소를 순회하면서 지금까지 처리한 정보를 상태(STATE)에 저장함
- 사실 RNN은 내부에 루프(LOOP)를 가진 신경망의 한 종류임
- RNN의 상태(STATE)는 2개의 다른 시퀀스(2개의 다른 IMDB 리뷰)를 처리하는 사이에 재설정됨
- 하나의 시퀀스가 여전히 하나의 데이터포인트로 간주됨
- 즉 네트워크가 하나의 입력을 주입한다고 가정함
- 이 데이터 포인트가 한번에 처리되지 않는다는 것이 다름
- 그 대신 네트워크는 시퀀스의 원소를 차례대로 방문함
RNN의 활성화 출력 계산
- 그림에서 유햠 에지(directed edge)(층 사이 연결과 순환 연결)는 가중치 행렬과 연관됨
- 이 가중치는 특정 시간 t에 종속적이지 않고 전체 시간 축에 공유
- 단일층 RNN의 각 가중치는 다음과 같음
셀의 구조와 유닛
'머신러닝 및 딥러닝 > 딥러닝' 카테고리의 다른 글
자연어처리(텍스트 전처리, 감성분석) (0) | 2023.02.28 |
---|---|
순환신경망(RNN) PART2 (0) | 2023.02.28 |
객체탐지와 합성곱 신경망 (0) | 2023.02.27 |
합성곱 신경망 데이터 증강(ImageDataGenerator 사용하기) (0) | 2023.02.23 |
전이학습 이론 (0) | 2023.02.23 |