부본 딥러닝에서 RNN과 LSTM은 무엇입니까? - Unite.AI
Rescale 미팅 예약

AI 101

딥러닝에서 RNN과 LSTM은 무엇입니까?

mm
업데이트 on

자연어 처리 및 AI 챗봇 분야에서 가장 인상적인 발전은 대부분 다음과 같습니다. 재발 성 신경망 (RNN) 및 LSTM(장단기 기억) 네트워크. RNN 및 LSTM 시간 순서가 중요한 데이터인 순차적 데이터를 처리할 수 있는 특수 신경망 아키텍처입니다. LSTM은 근본적으로 개선된 RNN 버전, 더 긴 데이터 시퀀스를 해석할 수 있습니다. RNN과 LSTMS가 어떻게 구성되어 있고 정교한 자연어 처리 시스템을 생성할 수 있는 방법을 살펴보겠습니다.

피드 포워드 신경망이란 무엇입니까?

따라서 LSTM(Long Short-Term Memory)과 CNN(Convolutional Neural Networks)의 작동 방식에 대해 이야기하기 전에 일반적으로 신경망의 형식에 대해 논의해야 합니다.

신경망은 데이터를 조사하고 관련 패턴을 학습하여 이러한 패턴을 다른 데이터에 적용하고 새로운 데이터를 분류할 수 있도록 하는 것입니다. 신경망은 입력 계층, 숨겨진 계층(또는 여러 개의 숨겨진 계층) 및 출력 계층의 세 부분으로 나뉩니다.

입력 레이어는 데이터를 신경망으로 가져오는 것이고 숨겨진 레이어는 데이터의 패턴을 학습하는 것입니다. 데이터 세트의 숨겨진 계층은 데이터 포인트가 서로 어떻게 관련되어 있는지에 대한 가정인 "가중치" 및 "편향"에 의해 입력 및 출력 계층에 연결됩니다. 이 가중치는 훈련 중에 조정됩니다. 네트워크가 훈련되면 훈련 데이터(출력 값)에 대한 모델의 추측이 실제 훈련 레이블과 비교됩니다. 학습 과정 동안 네트워크는 데이터 포인트 간의 관계를 보다 정확하게 예측하여 새로운 데이터 포인트를 정확하게 분류할 수 있어야 합니다. 심층 신경망은 중간/숨겨진 계층에 더 많은 계층이 있는 네트워크입니다. 모델에 숨겨진 레이어와 뉴런/노드가 많을수록 모델이 데이터의 패턴을 더 잘 인식할 수 있습니다.

위에서 설명한 것과 같은 규칙적인 피드포워드 신경망은 종종 "밀집 신경망"이라고 합니다. 이러한 조밀한 신경망은 다양한 종류의 데이터 해석을 전문으로 하는 다양한 네트워크 아키텍처와 결합됩니다.

RNN(반복 신경망)이란 무엇입니까?

순환 신경망은 피드포워드 신경망의 일반 원칙을 채택하고 이를 통해 순차 데이터를 처리할 수 있습니다. 모델에 내부 메모리 제공. RNN 이름의 "Recurrent" 부분은 입력과 출력이 반복된다는 사실에서 유래합니다. 네트워크의 출력이 생성되면 출력이 복사되어 입력으로 네트워크에 반환됩니다. 결정을 내릴 때 현재 입력과 출력이 분석될 뿐만 아니라 이전 입력도 고려됩니다. 다르게 말하면, 네트워크의 초기 입력이 X이고 출력이 H인 경우 H와 X1(데이터 시퀀스의 다음 입력)은 다음 학습 라운드를 위해 네트워크에 공급됩니다. 이러한 방식으로 네트워크가 훈련될 때 데이터(이전 입력)의 컨텍스트가 보존됩니다.

이 아키텍처의 결과 RNN은 순차 데이터를 처리할 수 있습니다. 그러나 RNN에는 몇 가지 문제가 있습니다. RNN은 그래디언트 소멸 및 그래디언트 폭발 문제.

RNN이 해석할 수 있는 시퀀스의 길이는 특히 LSTM과 비교할 때 다소 제한적입니다.

LSTM(장단기 기억 네트워크)이란 무엇입니까?

Long Short-Term Memory 네트워크는 RNN의 확장으로 간주될 수 있으며 입력 컨텍스트를 보존한다는 개념을 다시 한 번 적용합니다. 그러나 LSTM은 과거 데이터를 우수한 방법으로 해석할 수 있도록 몇 가지 중요한 방식으로 수정되었습니다. LSTM에 적용된 변경 사항은 기울기 소실 문제를 처리하고 LSTM이 훨씬 더 긴 입력 시퀀스를 고려할 수 있도록 합니다.

LSTM 모델은 세 가지 구성 요소 또는 게이트. 거기에 입력 게이트, 출력 게이트 및 망각 게이트. RNN과 마찬가지로 LSTM은 모델의 메모리 및 입력 가중치를 수정할 때 이전 타임스텝의 입력을 고려합니다. 입력 게이트는 어떤 값이 중요하고 모델을 통해 전달되어야 하는지에 대한 결정을 내립니다. 반복 네트워크를 통해 전달할 값을 결정하는 입력 게이트에는 시그모이드 함수가 사용됩니다. 1은 값을 떨어뜨리고 1은 유지합니다. 여기서도 입력 값이 모델에 얼마나 중요한지를 결정하는 TanH 함수가 사용되며 범위는 -1에서 XNUMX입니다.

현재 입력과 메모리 상태가 고려된 후 출력 게이트는 다음 시간 단계로 푸시할 값을 결정합니다. 출력 게이트에서 값이 분석되고 -1에서 1 사이의 중요도가 할당됩니다. 이는 다음 시간 단계 계산으로 전달되기 전에 데이터를 규제합니다. 마지막으로 망각 게이트의 역할은 모델이 입력 값의 특성에 대한 결정을 내리는 데 불필요하다고 판단하는 정보를 삭제하는 것입니다. 잊어버리기 게이트는 값에 시그모이드 함수를 사용하여 0(잊어버리기)과 1(유지하기) 사이의 숫자를 출력합니다.

LSTM 신경망은 순차 단어 데이터를 해석할 수 있는 특수 LSTM 계층과 위에서 설명한 것과 같이 조밀하게 연결된 계층으로 구성됩니다. 데이터가 LSTM 계층을 통과하면 조밀하게 연결된 계층으로 진행됩니다.

전문 분야의 블로거 및 프로그래머 기계 학습 깊은 학습 주제. 다니엘은 다른 사람들이 사회적 이익을 위해 AI의 힘을 사용하도록 돕기를 희망합니다.