AI

9. RNN을 활용한 인공지능 사례 및 개념

neogul 2024. 1. 23. 09:57

RNN(Recurrent Neural Network)

= 순환신경망

  • 순차데이터 = 순서를 가진 데이터로 시간과 순서의 의미가 매우 중요한 데이터.

< 특징 >

  1. 순서가 바뀌면 고유의 특성을 잃어버림.
  2. 연결성과 흐름을 갖는 데이터
  3. 순환하여 반복해서 되돌아간다는 의미를 내포.
  4. 은닉층의 노드에서 나온 값이 출력층과 은닉층 노드의 다음 계산을 위한 입력으로 보내진다는 점.
  • 셀 : 노드의 결과를 출력층과 다음 연산으로 내보내는 노드 단위.

→ 다음 정보를 위해 이전의 값을 기억하려고 하는 일종의 메모리 역할을 수행하므로 메모리 셀 또는 RNN 셀이라고 표현함.

  • 순환신경망은 은닉층의 셀 출력이 은닉층 다음 셀의 입력으로 사용되어 순환한다는 의미를 갖고 있음.

⇒ 은닉층 내부 셀의 가중치가 순환되는 것을 의미함.


순환신경망(RNN)은 순차데이터를 처리하는 모델이기에 시간의 개념이 매우 중요함.

  1. 시간 개념을 도입하기 위해 현재 시점을 TIME의 약자인 T로 표현.
  2. RNN은 CNN과 더불어 딥러닝에서 근본적으로 활용되는 구조.
  3. 순환신경망은 순차데이터의 과거 정보를 다음 정보에 반영하기 위한 순차 모델.
  4. RNN은 데이터의 길이에 무관하게 입력과 출력을 받아들일 수 있기에 입력과 출력이 한 개나, 여러 개냐에 따라 모델이 일 대일 , 일 대다, 다대다로 나뉨.
  5. RNN은 시퀀스 데이터의 과거 정보를 반영하고자 하는 노력에서 출발하였는데, 길이가 길어질 수록 맨 처음 정보를 반영하기 어려운 단점이 존재함. (첫번째 가중치가 점점 희미해짐)

⇒ 이를 해결하기 위해 단순히 이전의 정보가 아니라, 세부적으로 메모리 간격을 조정하여 반영되는 과거의 정보 양을 조정할 수 있는 LSTM 기술로 한계를 극복함.

  • LSTM = Long -Short Term Memory

ex) 학 교 와 같은 단어처럼 아니면 소설이나 글같은 것들