banner
홈페이지 / 블로그 / 인공지능(AI)에서의 아날로그 컴퓨터 활용
블로그

인공지능(AI)에서의 아날로그 컴퓨터 활용

Sep 03, 2023Sep 03, 2023

아날로그 컴퓨터는 전기 전압, 기계적 운동, 유체 압력과 같은 물리적 양을 표현하여 해결하려는 문제의 해당 양과 유사하게 표현하는 장치 종류입니다.

다음은 아날로그 컴퓨터의 간단한 예입니다.

검은색 바퀴와 흰색 바퀴를 일정량만큼 회전시키면 회색 바퀴는 두 회전의 합을 보여줍니다.

최초의 아날로그 컴퓨터 중 하나는 기원전 100~200년경에 제작된 안티키테라 메커니즘(Antikythera Mechanism)이었습니다. 이 컴퓨터에는 특정 다이얼의 움직임이 태양과 달의 움직임과 유사한 방식으로 일련의 맞물린 청동 기어가 포함되었습니다. 또한 수십 년 전에 일식을 예측할 수도 있었습니다.

두 개의 8비트 숫자를 추가하려면 약 50개의 트랜지스터가 필요합니다. 그러나 아날로그 컴퓨터를 사용하면 단순히 두 개의 전선을 연결하여 두 개의 전류를 추가할 수 있습니다. 마찬가지로 두 숫자를 곱하려면 1000개의 트랜지스터가 필요합니다. 반대로, 저항기(R-Ohm)를 통해 전류(I 암페어)를 전달할 수 있으며 와이어의 두 끝을 가로지르는 전위 강하는 I*R, 즉 두 숫자의 곱이 됩니다.

아날로그 컴퓨터는 강력하고 빠르며 에너지 효율적입니다. 그러나 디지털 컴퓨터는 단일 목적이고 부정확하며, 입력이 연속적이기 때문에 프로세스를 정확히 반복하기가 어렵다는 이유로 이를 대체했습니다.

AI에서는 패턴 인식, 의사 결정, 제어 등 다양한 작업에 아날로그 컴퓨터가 사용되었습니다. 예를 들어, 인간 두뇌의 구조와 기능에서 영감을 받은 기계 학습 모델인 신경망을 훈련하는 데 사용되었습니다. 아날로그 컴퓨터는 특정 규칙을 사용하여 결정을 내리거나 조치를 취하는 규칙 기반 AI 시스템을 구현하는 데에도 사용되었습니다.

과거에는 널리 사용되었음에도 불구하고 아날로그 컴퓨터는 주로 디지털 컴퓨터의 출현으로 인해 AI 및 기계 학습에서 더 이상 일반적이지 않습니다. 디지털 컴퓨터는 아날로그 컴퓨터보다 훨씬 빠르고 안정적이며 훨씬 더 많은 양의 데이터를 저장하고 처리할 수 있습니다. 또한 디지털 컴퓨터는 프로그래밍 및 유지 관리가 더 쉬워 대부분의 AI 및 기계 학습 애플리케이션에서 선호되는 선택이 되었습니다.

기계 학습 및 인공 지능 애플리케이션에서 더 큰 신경망을 사용하는 경향이 증가하고 있습니다. 이러한 추세는 점점 더 복잡해지는 작업에 대한 성능을 향상시켜야 할 필요성과 더 큰 네트워크의 훈련을 지원하기 위한 더 많은 데이터, 하드웨어 및 알고리즘의 가용성에 의해 주도됩니다. 그러나 이러한 수요 증가와 관련된 특정 과제가 있습니다.

디지털 컴퓨터가 한계에 가까워짐에 따라 신경망의 기능 대부분이 행렬 곱셈에 집중되면서 널리 인기를 얻었습니다. 또한 신경망에는 이미지를 개로 분류하는 데 98% 또는 95%의 신뢰도가 충분하므로 디지털 컴퓨터의 정확한 계산이 필요하지 않습니다. 이러한 요소는 아날로그 컴퓨터가 AI에서 훨씬 더 주도적인 역할을 맡을 수 있는 최고의 기회를 제공합니다.

신화적인 AI 신경망을 실행하기 위한 아날로그 칩을 만드는 아날로그 컴퓨팅 스타트업입니다. 동작 감지, 깊이 추정, 객체 분류 등과 같은 다양한 AI 알고리즘이 아날로그 영역에서 실행됩니다.

Mythic은 이를 가능하게 하기 위해 디지털 플래시 스토리지 셀을 수정했습니다. 이러한 셀은 일반적으로 메모리 저장에 사용되며 1 또는 0을 저장할 수 있습니다. 컨트롤 게이트에 양의 전압을 가하면 전자가 절연 장벽을 통과하여 플로팅 게이트에 갇히게 됩니다. 그러면 전압이 제거되고 전자는 오랫동안 플로팅 게이트에 남아 전류가 셀을 통해 흐르는 것을 방지할 수 있습니다.

저장된 값은 작은 전압을 인가하여 확인할 수 있습니다. 플로팅 게이트에 전자가 있으면 전류가 흐르지 않아 0을 나타냅니다. 전자가 없으면 전류가 흐르게 되는데, 이는 1을 의미합니다.

Mythic의 아이디어는 이러한 셀을 켜기/끄기 스위치가 아닌 가변 저항기로 사용하는 것입니다. 그들은 전부 아니면 전무가 아닌 각 플로팅 게이트에 특정 수의 전자를 배치함으로써 이를 수행합니다. 전자 수가 많을수록 채널의 저항이 높아집니다. 작은 전압을 적용할 때 흐르는 전류는 V/R과 같습니다. 그러나 이를 전압과 컨덕턴스로 생각할 수도 있습니다. 여기서 컨덕턴스는 단지 저항의 역수입니다. 따라서 단일 플래시 셀을 사용하여 전압과 컨덕턴스의 두 값을 곱할 수 있습니다.