본문 바로가기

멤리스터와 AI 하드웨어6

멤리스터 AI 하드웨어의 구조, 장점, 한계와 해결 이전의 뉴로모픽 반도체는 실리콘 기반 CMOS 트랜지스터 기술만으로 구현되었다. 구현 소자 관점에서 1세대 뉴로모픽 방식이라고 할 수 있다. 1세대 뉴로모픽 반도체에서 시냅스는 기존의 CMOS 메모리 소자를 활용하여 시냅스의 가중치를 저장하였다가 읽어오는 방식으로 구현되었다. 차세대 뉴로모픽 소자로 구현되는 2세대 뉴로모픽 반도체의 한 예시로 멤리스터 소자를 활용하는 방식이 연구되고 있다. 멤리스터 소자는 인가되는 전압에 따라 저항이 변화하는 스위치 기능과 이를 저장하는 메모리 기능을 동시에 할 수 있기 때문에 많은 량의 데이터를 연산해야 하는 AI 컴퓨팅을 폰 노이만 구조 상에서 진행했을 경우 발생하는 병목현상 문제를 해결할 수 있어 AI 하드웨어에 적합하다. 멤리스터를 활용한 AI 하드웨어는 높은 집.. 2021. 1. 21.
멤리스터와 시냅스 모방 소자 인간의 뇌가 학습하고 연산하는 과정을 모방하여 컴퓨터의 연산 구조 형태를 인공 신경망 형태로 만들고자 하는 노력은 이전부터 활발히 있었으나, 연산하는 과정만 영감을 얻었을 뿐 폰 노이만 구조의 컴퓨터에서 연산이 이루어져 왔다. 폰 노이만 구조란 연산/논리 소자와 메모리 소자가 분리된 형태로, 현재까지 이를 기반으로 디지털 시스템이 매우 성공적으로 활용되어 왔다. 하지만 더욱 복잡해지는 정보 처리 환경과 고밀도의 정보저장을 요구하는 디지털 환경에서 폰 노이만 구조는 논리 소자와 메모리 소자 사이의 신호 전달의 지연 등에 의한 성능 개선의 한계와 높은 에너지 소모의 문제를 안고 있다. 이를 해결하기 위해 논리/연산 기능과 메모리 기능을 모두 포함하여 에너지 효율 및 성능 저하의 문제를 해결하는 논리 메모리(.. 2021. 1. 21.
멤리스터(Memristor) 멤리스터(memristor)는 memory와 resistor의 합성어로, 이전의 상태를 모두 기억하는 메모리 소자이다. 1971년에 처음으로 수학적으로 제안된 전자회로의 네 번째 수동소자이다. 수동소자란 증폭이나 에너지 변환 등의 능동적 기능 없이 에너지를 소비, 축적, 통과시키는 소자로, 저항, 축전기(capacitor), 인덕터가 이에 속한다. 전자회로에는 네 가지 기본 변수가 있다. 전류(I), 전압(V), 전하(q), 플럭스(Φ)로, 전류는 흘러간 전하의 합, 플럭스는 시간에 따른 전압의 합이다. 이러한 기본 변수의 조합을 통해 수동소자의 물리량이 결정된다. 옴의 법칙(V=IR)에 따라 저항은 전류와 전합의 관계를 통해 정의되고, 전압과 전하량 사이에서 축전기의 물리량인 전기용량이 정의된다. (Q.. 2021. 1. 20.
Brain-inspired computing Brain-inspired computing은 뇌의 동작 원리와 비슷하게 동작하는 인공 지능을 말한다. Spiking neural networks(SNNs)도 그 중 하나로, 뉴런과 비슷하게 binary한 전기 신호(spike)를 통해 동작한다. SNN을 활용한 학습은 실제 세계의 감각 데이터와 유사한 시공간 데이터를 처리할 수 있다. 뉴런이 서로 모두 연결된 것이 아니라 생물학적인 뇌의 구조와 비슷하게 연관되어 있는 뉴런끼리만 연결된 특수한 네트워크를 이루고 있기 때문에 입력 계층의 값들을 개별적으로 처리할 수 있어 공간 데이터 처리가 가능하고, 시간이 지남에 따라 학습이 이뤄지며 스파이크의 시간 정보를 얻을 수 있기 때문에 시간 데이터를 처리할 수 있다. SNN과 다르게 신호의 시간 정보를 인코딩하지.. 2021. 1. 20.
인공신경망의 동작 원리 인공신경망은 뉴런의 동작 원리에 기초해 인공적으로 구축한 기계학습을 위한 통계학적 학습 알고리즘을 말한다. 생물 내의 뉴런은 입력을 받아 출력을 만들어 다음 뉴런으로 전달한다. 인공신경망에서는 이를 모방한 노드(node)들이 네트워크를 구성한다. 이 노드를 인공신경망의 단위 연산인 퍼셉트론이라고도 한다. 각 노드는 효과적인 출력값을 만들기 위해 활성화 함수를 사용한다. 이 활성화 함수는 입력값에 가중치를 곱한 뒤 편향(바이어스, bias)을 더한 값과 같다. 노드를 연결한 네트워크는 세 계층으로 나뉜다. 입력층, 은닉층, 출력층이다. 입력층은 초기에 데이터가 입력되는 계층, 은닉층은 데이터가 드러나지 않고 가려져 있는 계층, 출력층은 학습된 데이터가 담긴 계층이다. 모든 노드는 각자의 가중치와 바이어스 .. 2021. 1. 20.