[AI]/인공지능 이론 및 실습

[인공지능] BiLSTM이란? BiLSTM의 구조

seom-j 2024. 3. 5. 12:54

 

📌 기존의 RNN/LSTM

[ 🚨 ]

RNN이나 LSTM은 입력 순서를 시간 순대로 입력하기 때문에

결과물이 직전 패턴을 기반으로 수렴하는 경향을 보인다는 한계 존재

 

 

📌 BiLSTM이란?

일반적인 LSTM은 순방향(왼쪽에서 오른쪽)으로 정보를 추출하지만

역방향으로도 정보를 추출하여 이용할 수 있는데, 이를 양방향 LSTM이라고 함

 

LSTM의 시각별 은닉 상태 벡터를 모은 각 행에는 그 행에 대응하는 단어의 성분을 많이 포함하고 있음

예를들어, "나는 고양이 로소이다"의 문장을 왼쪽에서 오른쪽으로 읽을 경우

“고양이”에 해당하는 벡터에는 “나”, “는”, “고양이”까지의 총 세 단어의 정보가 인코딩되어있음

 

문장이 길어질 수록 한 벡터에 포함하고 있는 단어의 정보가 점점 많아질 것

➡️ 대응하는 단어(고양이)의 주변 정보(나, 는, 로소, 이다)를 균형있게 담기 위한 방법이 양방향 LSTM

 

 

📌 BiLSTM 구조

 

위와같이 지금까지의 LSTM 계층에 역방향으로 처리하는 LSTM 계층을 추가하여 구현

 

이때, 최종 은닉 상태는 두 LSTM 계층의 은닉 상태를 연결한 벡터를 출력

(연결 외에도 더하거나 평균을 내는 방법 등 다양하게 적용 가능)