데브허브 | DEVHUB | [머신러닝+딥러닝 기초 강의] 23강. 순차 데이터와 순환 신경망[머신러닝+딥러닝 기초 강의] 23강. 순차 데이터와 순환 신경망
- 순차 데이터는 텍스트나 시계열처럼 순서가 중요한 데이터이며, 기존 인공신경망이나 합성곱 신경망으로는 처리하기 어렵습니다. 📜
- 순환 신경망(RNN)은 순차 데이터 처리에 특화된 신경망으로, 뉴런의 출력이 다음 시점의 입력으로 재사용되는 '순환 고리'를 가집니다. 🔄
- 이 순환 고리는 이전 타임스텝의 정보를 다음 타임스텝 처리 시 재사용하여 데이터의 순서 정보를 학습합니다. 🧠
- RNN의 출력은 '은닉 상태(Hidden State)'라고 불리며, 활성화 함수로는 주로 탄젠트 하이퍼볼릭(tanh) 함수가 사용됩니다. 🤫
- RNN의 '펼친 그림'은 순차적 처리 과정을 시각화한 것이며, 각 타임스텝에 적용되는 가중치(WX, WH)는 모두 동일하게 공유됩니다. 🖼️
- 순환 신경망은 데이터의 순서가 매우 중요하므로, 입력 데이터는 반드시 순서대로 처리되어야 합니다. 🔢
- RNN 입력 데이터는 (샘플 수, 시퀀스 길이, 특성 수)의 3차원 배열 형태를 가지며, 각 시퀀스 아이템은 고정 크기의 벡터로 표현됩니다. 📊
- 여러 개의 순환층을 쌓을 경우, 중간층은 모든 타임스텝의 은닉 상태를 출력해야 하지만, 마지막 층은 최종 타임스텝의 은닉 상태만 출력할 수 있습니다. 🏗️
- 최종 순환층의 출력은 밀집층(완전 연결층)에 직접 연결되어 분류 등의 작업을 수행할 수 있으며, 별도의 플래튼(Flatten) 층이 필요 없습니다. 🔗