지능은 지식에 의존하며, 이는 학습을 통해 얻을 수 있습니다. 대규모 심층 아키텍처의 개발은 이를 촉진했습니다. 지식은 다양한 종류로 나뉘며, 암묵적이고 무의식적인 것부터 언어로 표현하기 어려운 것까지 포함됩니다. 일반 상식부터 구체적인 사실까지 모두 포함됩니다.
신경망의 한계와 발전
신경망은 암묵적인 지식을 저장하는 데 우수하지만 구체적인 사실을 기억하는 데는 적합하지 않습니다. 입력이 신경망 매개변수에 저장되려면 반복해서 주입해야 하며, 정확하게 저장되지 않습니다. 2014년 Graves는 신경망이 인간의 작업 기억 시스템과 다른 점을 지적했습니다. 작업 기억 시스템은 명시적으로 정보를 저장하고 조작할 수 있습니다. 이러한 명시적 기억이 있다면 신경망은 특정한 사실을 빠르게 저장하고 검색하며, 순차적으로 추론할 수 있을 것입니다. 신경망이 자동적이고 직관적으로 반응하는 대신 추론하기 위해 정보를 처리하고 입력을 조작할 수 있는 능력이 필요합니다.
기억망의 등장
Weston은 명시적 기억의 어려움을 해결하기 위해 기억망을 제안했습니다. 초기의 기억망은 외부에서 기억 세포의 활용 방법을 지시하는 신호가 필요했습니다. Graves는 이러한 외부 지도 없이도 기억 세포에서 내용을 읽고 쓰는 방법을 학습할 수 있는 신경 튜링 기계를 소개했습니다. 신경 튜링 기계는 내용 기반 약 주의 메커니즘을 사용하여 종단 간 훈련이 가능하며, 이는 외부 지도 없이도 학습이 가능하다는 유연한 주소 접근 메커니즘을 제공합니다. 이 메커니즘은 기울기 기반 최적화를 흉내 내는 다양한 관련 아키텍처들의 기준이 되었습니다.
기억망의 구조와 기능
기억망의 기억 세포를 LSTM과 GRU의 기억 세포를 확장한 것으로 생각할 수 있습니다. 그러나 기억망은 LSTM과 GRU와는 달리 읽거나 쓸 기억 세포를 선택하는 내부 상태를 출력합니다. 이것은 디지털 컴퓨터가 특정 주소에 있는 메모리 칸을 읽거나 쓰는 것과 유사합니다.
정확한 정수 주소를 산출하는 함수를 최적화하기는 어렵습니다. 이 문제를 완화하기 위해 신경 튜링 기계는 사실 다수의 기억 세포를 동시에 읽거나 씁니다. 읽기의 경우, 여러 기억 세포의 가중 평균을 취하고 쓰기의 경우, 여러 기억 세포를 서로 다른 양으로 수정합니다. 이러한 연산의 계수들은 각 연산이 적은 수의 세포들에 집중되도록 적절히 선택됩니다. 예를 들어, 이러한 계수들을 소프트맥스 함수로 산출할 수도 있습니다. 0이 아닌 미분값을 가진 가중치를 사용하면 메모리 접근을 제어하는 함수를 경사 하강법으로 최적화할 수 있습니다. 이 가중치는 일반적으로 메모리 주소가 클 때만 증가합니다.
신경 튜링 기계의 기억 세포는 LSTM이나 GRU의 단일 스칼라값을 담는 것과는 달리 여러 값으로 이루어진 벡터를 포함하는 것이 일반적입니다. 이렇게 기억 세포의 크기를 늘리는 이유는 두 가지가 있습니다. 첫째는 기억 세포의 접근 비용이 크기 때문입니다. 여러 세포에 대해 계수를 산출하는 데는 일정한 계산 비용이 필요하지만, 이 계수들은 적은 수의 기억 세포들을 중심으로 모여 있다고 가정됩니다. 또한 벡터를 사용하면 내용 기반 주소 접근이 가능해져 한 기억 세포의 읽기나 쓰기에 쓰이는 가중치가 그 세포의 함수로 사용될 수 있습니다. 이러한 내용 기반 주소 접근은 조회할 대상을 크게 만들 때 유용하며, 위치 기반 주소 접근과 대조됩니다. 위치 기반 주소 접근은 명령을 수행하는 데 적합하며, 기억 세포가 작을 때에도 유효한 메커니즘이 될 수 있습니다.
주소 선택과 유연성
기억 세포의 내용이 대부분의 시간 단계에서 복사된다면, 그 내용에 담긴 정보는 시간에 따라 순전파되며, 기울기는 소멸하거나 폭발하는 일 없이 역전파됩니다. 이는 기억 세포가 장기적인 의존성을 학습하는 데 도움이 되며, 그렇기 때문에 장기적인 시퀀스를 처리하는 데 유용합니다.
명시적 기억 접근 방식은 과제 신경망과 기억망을 결합한 것으로, 과제 신경망은 순방향이나 순환 신경망이 될 수 있지만 전체 시스템은 하나의 순환 신경망으로 구성됩니다. 과제 신경망은 읽거나 쓸 기억 세포의 주소를 선택할 수 있습니다. 이러한 모델은 일반적인 RNN이나 LSTM RNN이 학습하지 못하는 과제도 학습할 수 있을 것으로 보입니다. 이러한 장점은 정보와 기울기가 오랫동안 전파될 수 있기 때문에 발생합니다.
기억한 내용을 읽을 때 여러 기억 세포 중 하나만 확률적으로 선택할 수 있습니다. 이렇게 이산적인 결정을 내리는 모델을 최적화하려면 특화된 최적화 알고리즘이 필요합니다. 현재까지는 이러한 확률적 아키텍처를 훈련하는 것이 유연한 결정을 내리는 결정론적 아키텍처를 훈련하는 것보다 더 어렵습니다. 이는 확률적 모델을 최적화하는 과정에서 발생하는 불확실성과 복잡성 때문입니다.
주소 선택 메커니즘과 유연한 아키텍처
주소를 선택하는 메커니즘은 유연한 아키텍처이든 확률적이고 경직된 아키텍처이든 주의 메커니즘의 형태와 동일합니다. 주의 메커니즘은 주어진 상황에서 중요한 정보에 집중하고 해당 정보를 처리하는 방법을 제어하는 데 사용됩니다. 이러한 메커니즘은 모델이 입력의 특정 부분에 주의를 기울이도록 하는 데 도움이 됩니다. 따라서 주소를 선택하는 메커니즘은 주의 메커니즘과 유사한 기능을 수행합니다.
결론
결론적으로, 기억망은 인공지능의 발전을 위한 중요한 도구로써 명시적 기억과 암묵적 기억을 융합하고, 그것들을 효율적으로 다루는 메커니즘을 제공합니다. 이는 신경망의 한계를 극복하고 장기적인 시퀀스를 처리하며, 다양한 유형의 지식을 효과적으로 활용할 수 있는 가능성을 열어줍니다.