소개 | 이 글에서는 순환 신경망 RNN의 개발 과정을 간략하게 소개하고 경사 하강 알고리즘, 역전파 및 LSTM 과정을 분석합니다. |
과학 기술의 발전과 하드웨어 컴퓨팅 능력의 실질적인 향상으로 수십 년간의 비하인드 작업에서 인공 지능이 갑자기 사람들의 눈에 들어왔습니다. 인공지능의 근간은 빅데이터, 고성능 하드웨어, 뛰어난 알고리즘의 지원에서 나온다. 2016년, 딥러닝은 구글 검색의 화두가 됐다. 지난 1~2년 간 인간과 기계의 바둑 대결에서 알파고가 세계 챔피언을 꺾으면서 사람들은 더 이상 AI의 급속한 발전을 막을 수 없다고 느낀다. 2017년에는 AI가 획기적인 발전을 이루었고, 지능형 로봇, 무인 자동차, 음성 검색 등 관련 제품도 사람들의 삶에 등장했습니다. 최근 세계 정보 컨퍼런스(World Intelligence Conference)가 텐진에서 성공적으로 개최되었습니다. 이 컨퍼런스에서 많은 업계 전문가와 기업가들이 미래에 대한 견해를 표명했습니다. 대부분의 기술 기업과 연구 기관은 인공 지능의 전망에 대해 매우 낙관적입니다. 예를 들어 Baidu는 그가 유명해지든 결국 실패하든 그가 아무것도 얻지 못하는 한 그의 모든 재산은 인공 지능에 있습니다. 딥러닝이 왜 갑자기 이렇게 큰 효과와 열풍을 불러일으키는 걸까요? 기술이 삶을 변화시키고, 앞으로는 많은 직업이 인공지능으로 서서히 대체될 수도 있기 때문이다. 다들 인공지능과 딥러닝에 대해 이야기하고 있어요. Yann LeCun도 중국에서 인공지능의 인기를 실감하고 있어요!
본론으로 돌아가서, 인공지능 뒤에는 빅데이터, 우수한 알고리즘, 강력한 컴퓨팅 기능을 갖춘 하드웨어 지원이 있습니다. 예를 들어, NVIDIA는 강력한 하드웨어 연구 및 개발 역량과 딥 러닝 프레임워크 지원을 통해 세계에서 가장 스마트한 기업 50개 중 1위를 차지했습니다. 이 밖에도 뛰어난 딥러닝 알고리즘이 많이 있고, 새로운 알고리즘도 수시로 등장할 예정인데 정말 눈부십니다. 하지만 대부분은 CNN(Convolutional Neural Network), DBN(Deep Belief Network), RNN(Recurrent Neural Network) 등과 같은 고전적인 알고리즘을 기반으로 개선되었습니다.
이 기사에서는 시계열 데이터에 선호되는 네트워크이기도 한 클래식 네트워크 RNN(Recurrent Neural Network)을 소개합니다. 특정 순차적 기계 학습 작업과 관련하여 RNN은 다른 알고리즘과 경쟁할 수 없는 매우 높은 정확도를 달성할 수 있습니다. 이는 기존 신경망이 단기 기억만 갖고 있는 데 반해 RNN은 제한된 단기 기억이라는 장점을 갖고 있기 때문입니다. 그러나 1세대 RNN 네트워크는 많은 주목을 받지 못했는데, 이는 연구자들이 역전파 및 경사 하강 알고리즘을 사용하는 과정에서 심각한 경사 소멸 문제를 겪었고, 이로 인해 수십 년 동안 RNN 개발을 방해했기 때문입니다. 마지막으로, 1990년대 후반에 획기적인 발전이 이루어졌으며, 이는 보다 정확한 차세대 RNN으로 이어졌습니다. 이러한 혁신을 기반으로 거의 20년 동안 개발자들은 Google Voice Search 및 Apple Siri와 같은 앱이 핵심 프로세스를 빼앗기 시작할 때까지 차세대 RNN을 완성하고 최적화했습니다. 오늘날 RNN 네트워크는 모든 연구 분야에 퍼져 있으며 인공 지능의 르네상스를 촉발하는 데 도움을 주고 있습니다.
과거 관련 신경망(RNN)
피드포워드 신경망과 같은 대부분의 인공 신경망은 방금 받은 입력을 기억하지 못합니다. 예를 들어, 피드포워드 신경망에 문자 "WISDOM"이 입력되면 문자 "D"에 도달할 때 문자 "S"만 읽었다는 사실을 잊어버리게 되는데, 이는 큰 문제입니다. 네트워크를 아무리 열심히 훈련하더라도 다음으로 가장 가능성이 높은 문자 "O"를 추측하는 것은 항상 어렵습니다. 이로 인해 인식 품질이 다음 문자를 예측하는 능력으로부터 큰 이점을 얻는 음성 인식과 같은 특정 작업에서는 상당히 쓸모없는 후보가 됩니다. 반면 RNN 네트워크는 이전 입력을 기억하지만 매우 정교한 수준입니다.
다시 "WISDOM"을 입력하여 순환 네트워크에 적용합니다. RNN 네트워크의 단위 또는 인공 뉴런은 "D"를 수신할 때 이전에 수신한 문자 "S"를 입력으로 갖습니다. 즉, 현재 사건과 결합된 과거 사건을 입력으로 사용하여 다음에 일어날 일을 예측하므로 제한된 단기 기억의 이점을 제공합니다. 학습할 때 충분한 컨텍스트가 주어지면 다음 문자가 "O"일 가능성이 가장 높다고 추측할 수 있습니다.
조정하고 다시 조정 모든 인공 신경망과 마찬가지로 RNN 장치는 다중 입력에 가중치 행렬을 할당합니다. 이러한 가중치는 네트워크 계층의 각 입력 비율을 나타내며, 이 가중치에 함수가 적용되어 단일 출력이 결정됩니다. 손실함수(cost function)라고 하며 실제 출력과 목표 출력 사이의 오차를 제한합니다. 그러나 RNN은 현재 입력뿐만 아니라 과거 순간의 입력에도 가중치를 할당합니다. 그런 다음 손실 함수를 최소화하여 현재 입력과 과거 입력에 할당된 가중치를 동적으로 조정합니다. 이 프로세스에는 경사하강법과 역전파(BPTT)라는 두 가지 핵심 개념이 포함됩니다.
경사하강법
머신러닝에서 가장 유명한 알고리즘 중 하나는 경사하강법(Gradient Descent) 알고리즘입니다. 가장 큰 장점은 "차원성의 저주"를 크게 방지한다는 것입니다. 차원의 저주란 무엇입니까? 벡터를 포함하는 계산 문제에서 차원의 수가 증가하면 계산량이 기하급수적으로 증가한다는 의미입니다. 이 문제는 최소 손실 함수를 달성하기 위해 너무 많은 변수를 계산해야 하기 때문에 많은 신경망 시스템을 괴롭힙니다. 그러나 경사하강법 알고리즘은 다차원 오류 또는 비용 함수의 로컬 최소값을 증폭하여 차원성의 저주를 깨뜨립니다. 이는 시스템이 개별 단위에 할당된 가중치 값을 조정하여 네트워크가 더욱 정확해지는 데 도움이 됩니다.
시간에 따른 역전파RNN은 역방향 추론을 통해 가중치를 미세 조정하여 단위를 훈련합니다. 간단히 말하면, 유닛에서 계산한 전체 출력과 목표 출력 사이의 오차를 기반으로 네트워크의 최종 출력 끝에서 역방향 레이어별 회귀를 수행하고 손실 함수의 편도함수를 사용하여 조정합니다. 각 단위의 무게. 유명한 BP 알고리즘입니다. BP 알고리즘에 대한 자세한 내용은 이 블로거의 이전 관련 블로그를 참조하세요. RNN 네트워크는 BPTT(시간을 통한 역전파)라는 유사한 버전을 사용합니다. 이 버전은 이전 시간(T-1)의 입력 값에 해당하는 각 단위의 메모리를 담당하는 가중치를 포함하도록 튜닝 프로세스를 확장합니다.
예: 그래디언트 소실 문제경사 하강 알고리즘과 BPTT의 도움으로 초기 성공을 거두었지만 많은 인공 신경망(1세대 RNN 네트워크 포함)은 결국 경사 소멸 문제라는 심각한 장애를 겪었습니다. Vanishing Gradient 문제란 무엇인가요? 기본 아이디어는 실제로 매우 간단합니다. 먼저 경사도를 기울기로 생각하여 경사도의 개념을 살펴보겠습니다. 심층 신경망 훈련의 맥락에서 경사 값이 클수록 경사가 더 가파르고 시스템이 결승선까지 더 빠르게 미끄러져 훈련을 완료할 수 있음을 나타냅니다. 그러나 여기서 연구자들은 문제에 부딪혔습니다. 경사가 너무 평평하면 빠른 훈련이 불가능했기 때문입니다. 이는 딥 네트워크의 첫 번째 레이어에 특히 중요합니다. 첫 번째 레이어의 그래디언트 값이 0이면 조정 방향이 없고 관련 가중치 값을 조정하여 손실 함수를 최소화할 수 없기 때문입니다. 현상을 "제거"라고 합니다. 그래디언트가 점점 작아질수록 훈련 시간은 점점 길어집니다. 물리학의 선형 운동과 마찬가지로 공은 매끄러운 표면에서 계속 움직입니다.
큰 혁신: 장단기 기억(LSTM)1990년대 후반, 위에서 언급한 그래디언트 소실 문제를 해결하는 획기적인 발전이 이루어지면서 RNN 네트워크 개발에 두 번째 연구 붐이 일어났습니다. 이 획기적인 발전의 핵심 아이디어는 단위 장단기 기억(LSTM)의 도입입니다.
LSTM의 도입으로 AI 분야에 새로운 세상이 열렸습니다. 이는 이러한 새로운 단위 또는 인공 뉴런(RNN의 표준 단기 기억 단위와 같은)이 처음부터 입력을 기억한다는 사실 때문입니다. 그러나 표준 RNN 셀과 달리 LSTM은 일반 컴퓨터의 메모리 레지스터와 유사한 읽기/쓰기 속성을 갖는 메모리에 탑재될 수 있습니다. 또한 LSTM은 디지털이 아닌 아날로그이기 때문에 특징을 구별할 수 있습니다. 즉, 곡선이 연속적이고 기울기의 급경사를 알 수 있습니다. 따라서 LSTM은 역전파 및 경사 하강과 관련된 부분 미적분학에 특히 적합합니다.
요약하자면, LSTM은 가중치를 조정할 수 있을 뿐만 아니라 학습 기울기에 따라 저장된 데이터의 유입 및 유출을 유지, 삭제, 변환 및 제어할 수 있습니다. 가장 중요한 것은 LSTM이 중요한 오류 정보를 오랫동안 보존할 수 있어 기울기가 상대적으로 가파르고 따라서 네트워크 훈련 시간이 상대적으로 짧다는 것입니다. 이는 Vanishing Gradient 문제를 해결하고 오늘날의 LSTM 기반 RNN 네트워크의 정확도를 크게 향상시킵니다. RNN 아키텍처의 상당한 개선으로 인해 Google, Apple 및 기타 많은 고급 기업은 이제 RNN을 사용하여 비즈니스의 핵심 애플리케이션을 강화하고 있습니다.
요약반복 신경망(RNN)은 이전 입력을 기억할 수 있으므로 음성 인식과 같은 지속적이고 상황에 민감한 작업에 있어서 다른 인공 신경망보다 더 큰 이점을 제공합니다.
RNN 네트워크의 개발 역사에 관하여: 1세대 RNN은 역전파 및 경사 하강 알고리즘을 통해 오류를 수정하는 기능을 달성했습니다. 그러나 Vanishing Gradient 문제로 인해 RNN의 개발이 방해를 받았고, 1997년이 되어서야 LSTM 기반 아키텍처가 도입되면서 큰 진전이 이루어졌습니다.
새로운 방법은 RNN 네트워크의 각 장치를 아날로그 컴퓨터로 효과적으로 전환하여 네트워크 정확도를 크게 향상시킵니다.
작가 정보
Jason Roell: 딥 러닝과 이를 혁신적인 기술에 적용하는 데 열정을 갖고 있는 소프트웨어 엔지니어입니다.
링크드인: http://www.linkedin.com/in/jason-roell-47830817/
위 내용은 시계열 데이터에 적용하기 위해 선호되는 신경망의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!