__________

Designing the Future with Circuits

반도체 회로설계 취준기

반도체 시사

4th SSA: AI, AI Semiconductor (1) _ AI 기술의 현재, 미래

semicon_circuitdesigner 2025. 2. 26. 22:10

2025.02.24~2025.02.25 2일간 한양대학교에서 진행된 Smart Semiconductor Academy에 참석하여 인공지능과 인공지능 반도체에 대한 강의를 들었습니다. 이번 포스팅에서는 이 강연에 대해 정리하며, 추가적으로 학습한 내용을 정리합니다.
 

포스팅 내용 중 오류가 있다면 댓글로 남겨주시길 바랍니다!


AI 기술의 현재, 미래


이동수 네이버 이사님


이동수 네이버 이사님께서 진행해주신 강연의 주요 내용은 AI 기술의 역사적 흐름과 LLM의 확장, AI 아키텍쳐의 변화 등을 담고 있었습니다. 

 

딥러닝 혁명

https://medium.com/@shokim01/alexnet-%EC%9A%94%EC%95%BD%EB%85%B8%ED%8A%B8-b5e56556211d

 

2012년, AlexNet이 이미지넷 대회에서 압도적인 성능으로 우승을 차지하며 딥러닝 시대를 개막했습니다. 이전까지 AI는 컴퓨터 비전, 자연어 처리 등 각 분야에 특화된 서로 다른 모델을 사용했습니다. 이러한 방식은 모델 간의 낮은 호환성과 특정 분야 외의 성능 제한의 한계점이 있었습니다.
2012년 딥러닝 혁명 이후 AI 모델 성능은 학습 자원(계산량, 데이터, 모델 크기)과 선형적 상관관계를 보임이 오픈AI 연구로 입증되었습니다. 이는 AI 개발이 경험적 접근에서 과학적 예측 체계로 전환되었음을 의미합니다.

 

Scaling Law

 
인공지능 분야에서 스케일링 법칙은 대규모 언어 모델(LLM, Large Language Model)의 성능이 모델의 크기, 학습 데이터의 양, 연산량 등의 요소들과 어떤 관계를 갖는지 설명하는 법칙입니다. 즉, 모델 크기를 키우고 더 많은 데이터를 학습시킬수록 AI 모델의 성능이 예측 가능하게 향상된다는 의미입니다.

OpenAI가 이 Scaling Law를 제시하기 이전까지는 기업들이 GPU 서버를 구축해도 ROI(Return Of Investment, 투자 수익률)을 예측하기 어려웠는데, 이 법칙을 통해 정량적 지표를 예측할 수 있게 되었습니다.

출처:https://medium.com/sage-ai/demystify-transformers-a-comprehensive-guide-to-scaling-laws-attention-mechanism-fine-tuning-fffb62fc2552

 
위 그래프는 Scaling Law를 나타내는 것으로, AI 모델의 성능(Test Loss)과 연산량, 데이터 크기, 파라미터 수의 관계를 보여줍니다.
처음의 그래프에서 y축은 Test Loss로, 모델의 성능을 나타냅니다. x축은 Compute로, 모델을 학습시키기 위해 사용된 데이터의 양을 나타냅니다. 즉, 이 그래프를 통해 연산량이 많아질수록 AI 모델의 성능이 향상된다는 것을 알 수 있습니다. 그러나, 성능의 향상이 지속되지 않고, 특정 지점을 지나면 Loss의 감소가 둔화되며 일정 수준 이상에서는 연산량 증가 대비 성능 향상의 효율이 떨어집니다.
연산량을 무한정 늘릴 수 없으며, 위와 같은 Saturation으로 인해 TPU, HBM, AI가속기 등의 기술을 통해 연산량 대비 성능 향상 효과를 극대화하는 것이 중요합니다.

 

Transformer 이전의 모델

 
Transformer 모델이 제안되기 전에는 각 AI 분야마다 서로 다른 모델 아키텍처가 사용되었습니다.

  • Computer Vision(컴퓨터 비전): CNN(Convolutional Neural Networks) 및 ResNet 활용
  • Natural Language Processing (자연어 처리): RNN, LSTM 기반 모델
  • Speech Processing(음성 처리): Deep Belief Networks (DBN) 사용
  • Translation(번역): Seq2Seq(Sequence-to-Sequence) 모델 사용
  • Reinforcement Learning(강화 학습): BC/GAIL(Generative Adversarial Imitation Learning)

이렇게 분야별로 최적화된 모델이 다르므로 일관된 아키텍처 사용이 어려웠으며, 특히 NLP에서 RNN/LSTM 기반 모델은 병렬 연산이 어렵고 긴 문맥을 학습하는 데 한계가 나타났습니다.

 

Transformer

 
Transformer는 구글이 발표한 논문인 "Attention is all you need"에서 제안된 모델로, 현재 대부분의 자연어 처리(NLP) 및 딥러닝 응용에서 핵심적인 역할을 하고 있습니다. 이 모델은 병렬 연산이 가능하며, Self-Attention 메커니즘을 기반으로 합니다.

Transformer의 등장으로 AI분야에서 하나의 통합된 아키텍처를 사용할 수 있게 되었습니다.

 
 
 

Transformer 모델 아키텍처

 
1. Input Embedding
 이 과정에서는 입력 문장의 각 단어를 벡터 형태로 변환합니다. 각 단어는 고차원 공간에 위치하게 되며, 단어 간의 의미적 유사성이 벡터 공간에서의 거리로 표현됩니다.

2. Position Encoding
 이 과정에서는 단어의 위치 정보를 벡터 형태로 표현하여 임베딩 벡터에 더해줍니다. 트랜스포머는 순환 신경망(RNN)과 달리 순차적인 정보를 처리하지 않기 때문에, 단어의 위치 정보를 명시적으로 제공해야 합니다.
 
3. Encoder
 Encoder는 입력 문장을 처리하고 문맥 정보를 담고 있는 표현(Contextual Representation)을 생성합니다. 이는 Nx개의 인코더 레이어로 구성되어 있으며, 각 레이어는 다음의 서브 레이어로 구성됩니다.

  • Multi-Head Attention: 입력 문장의 모든 단어 간의 관계를 병렬적으로 계산하여 문맥 정보를 추출합니다. 여러 개의 어텐션 헤드를 사용하여 다양한 관점에서 단어 간의 관계를 파악합니다.
  • Add & Norm: Residual Connection과 Layer Normalization을 적용하여 학습 안정성을 높이고, 깊은 레이어에서도 정보 손실 없이 학습이 가능하도록 합니다.
  • Feed Forward: Multi-Head Attention 레이어의 출력을 비선형적으로 변환하여 모델의 표현 능력을 향상시킵니다.

4. Decoder
 Decoder는 인코더에서 생성된 문맥 정보를 이용하여 출력 문장을 생성합니다. 이는 Nx개의 디코더 레이어로 구성되어 있으며, 각 레이어는 다음의 서브 레이어로 구성됩니다.

  • Masked Multi-Head Attention: 디코더의 입력으로 들어오는 문장에 대해 Multi-Head Attention을 수행합니다. Masked 어텐션은 디코더가 현재 위치 이후의 단어를 참조하지 못하도록 마스킹하여, 학습 시점에 정답을 미리 보는 것을 방지합니다.
  • Add & Norm: Residual Connection과 Layer Normalization을 적용합니다.
  • Multi-Head Attention: 인코더의 출력과 디코더의 출력을 이용하여 어텐션을 수행합니다. 이를 통해 디코더는 입력 문장의 어떤 단어에 집중해야 할지를 결정합니다.
  • Add & Norm: Residual Connection과 Layer Normalization을 적용합니다.
  • Feed Forward: Multi-Head Attention 레이어의 출력을 비선형적으로 변환합니다.

5. 선형 변환(Linear) 및 소프트맥스(Softmax): 
 디코더의 마지막 레이어에서 출력된 벡터를 각 단어에 대한 확률 값으로 변환하며, Softmax 함수는 각 단어에 대한 확률 값을 정규화하여 가장 높은 확률 값을 갖는 단어를 최종 출력으로 선택합니다.
 
Transformer에서는 행렬곱 연산(Matrix Multiplication, MatMul)이 주요 연산이 됩니다. 이 MatMul은 AI 모델의 크기가 커질수록 더욱 그 중요도가 상승합니다. 이러한 AI의 발전에 맞추어 AI 모델 최적화가 필수적이며, 이는 다음과 같이 이루어질 수 있습니다.
 먼저, AI 반도체칩의 구조는 단순해져야 하며, 반도체 설계에서 RISC 방식을 활용한 최적화가 필요합니다.
다른 방법으로는 Compression(압축) 기법을 사용할 수 있습니다. 이 기법은 Quantization, Pruning 등을 통해 모델 최적화를 진행할 수 있습니다.
 마지막으로 Transformer 모델의 연산 최적화 및 가속을 위해 소프트웨어적 기법을 사용하여 메모리 병목현상 문제, 연산 최적화, 모델 크기 증가 등의 문제를 해결할 수 있습니다.
 

 

Memory Wall

 
Memory Wall(메모리 장벽)은 프로세서의 연산 속도와 메모리 대역폭간 성능 차이가 커지면서 발생하는 병목현상을 말합니다.
이 병목현상이 심화될수록, 연산 성능이 향상되어도 실제 AI 모델의 속도 향상이 제한됩니다.

https://medium.com/@junyoungshin0122/the-evolution-toward-high-bandwidth-memory-hbm-601d38ce2917

 
앞으로의 과제는 연산 성능의 증가보다, 이를 뒷받침할 수 있는 메모리의 고대역폭이 요구됩니다. HBM이 각광받고 있는 이유도 이 때문이라고 할 수 있습니다. HBM에 대한 내용은 추후 다른 포스팅에서 다룹니다.
 

 

TPU(Tensor Processing Unit)

 
TPU는 구글에서 개발한 Tensor 연산에 특화된 프로세서로, Donmain-Specific Architecture(DSA)에 해당합니다. 이 프로세서는 CPU와 GPU보다 AI 연산에 최적화된 하드웨어로 설계되었으며, 전력 효율이 약 30~80배 높다는 장점이 있습니다.
 

출처: https://www.linkedin.com/pulse/cpu-vs-gpu-tpu-unveiling-powerhouse-trio-computing-abhineet-raj/

 
CPU, GPU, TPU의 특징을 간략히 비교하면 다음과 같습니다.

구분 CPU GPU TPU
메모리 구조 계층적 캐시 (L1, L2, L3) SM 기반 공유 메모리 Activation Buffer, FIFO
메모리 관리 방식 암시적 관리 (Implicit) 혼합 (Mixed) 명시적 관리 (Explicit)
연산 방식 스칼라 (Scalar) 연산 벡터 (Vector) 연산 텐서 (Tensor) 연산
강점 범용 연산 가능, 낮은 지연 시간 병렬 연산 최적화, 그래픽 및 AI 가속 AI 모델 학습 및 추론 최적화
적용 분야 일반 컴퓨팅, 서버 그래픽, AI, 딥러닝 AI 추론, 딥러닝 학습 

 

  • CPU는 범용적인 컴퓨팅에 적합하지만, 병렬 연산이 약함.
  • GPU는 벡터 연산을 통해 대규모 병렬 연산이 가능하지만, AI 연산에는 최적화가 부족.
  • TPU는 AI 연산을 위해 설계된 전용 하드웨어로, 텐서 연산(Tensor Computation)에 최적화됨.
  • 따라서 AI 학습 및 추론에는 TPU가 가장 효율적이며, GPU는 범용 AI 가속에 활용됨.

 

TPU4 구조 [출처: https://www.copperpodip.com/post/tensor-processing-unit-tpu-an-ai-powered-asic-for-cloud-computing]


 
High Bandwidth Memory

  • 양옆에 위치한 두 개의 HBM은 칩 내부로 빠른 데이터 전송이 가능하도록 고대역폭을 제공합니다.
  • 대규모 파라미터(Weight) 혹은 중간 텐서(Intermediate Activations)를 신속히 읽고 쓸 수 있어야 하는 AI 연산에 최적화된 메모리 방식입니다.

Virtual Core

  • TPU 코어 여러 개를 하나로 묶어 논리적으로 추상화한 개념입니다.

TPU Core

  • Scalar Unit
    • 단순 덧셈/곱셈/비교연산 등 스칼라 단위의 연산을 처리합니다.
    • 반복 제어, 루프 인덱스 계산, 조건 판단 등 제어흐름과 관련된 연산도 담당합니다.
  • Vector Unit
    • 벡터 형태로 병렬화할 수 있는 연산을 수행합니다. 예를 들어, Activation Function(시그모이드, ReLU), 배치 단위로 묶이는 연산 등을 가속화합니다.
  • Matrix Multiplication Unit
    • 행렬 연산 전용 하드웨어 가속기로, 딥러닝에서 가장 많이 쓰이는 행렬 곱셈(MatMul)을 대규모로 병렬 수행합니다.
    • TPU가 GPU 대비 높은 연산 밀도와 에너지 효율을 낼 수 있는 핵심 블록입니다.

 

  모델 압축 기법

 

모델 압축(Model Compression)은 딥러닝 모델(특히 초거대 모델)의 연산량, 메모리 사용량, 추론 지연 시간 등을 줄이기 위해 모델 내부 구조를 간소화하거나 파라미터(Weights)의 표현 방식을 효율화하는 모든 기법을 말합니다. 최근 LLM(Large Language Model)과 같이 규모가 수십~수천억 파라미터에 달하는 모델이 늘어나면서, 운영 비용과 추론 속도 문제를 해결하기 위해 모델 압축이 더욱 중요한 화두가 되고 있습니다.

 

출처: https://thedataexchange.media/pruning-and-quantization/

 

Prunning(가지치기)

 

Prunning은 신경망에서 중요도가 낮은 가중치(Weight)나 뉴런(Neuron)을 식별하고 제거하여 모델을 경량화하는 방법입니다.

딥러닝 모델은 최적의 손실값을 찾기 위해 필요 이상으로 많은 뉴런을 포함하는 경우가 많습니다. 이 과정에서 불필요한 가중치가 존재할 가능성이 큰데, 일부 가중치는 모델의 출력에 거의 기여하지 않습니다. 이러한 가중치는 제거해도 모델 성능에 큰 영향을 주지 않으므로 이러한 가중치를 제거하여 모델이 작아지고 연산량이 줄어들 수 있습니다. 

 

가지치기 방법은 크게 Unstructed PrunningStructed Prunning으로 나눌 수 있습니다.

 

1. Unstructed Prunning

  • 중요도가 낮은 개별 가중치를 무작위로 제거합니다.
  • 모델의 정확도를 유지하며 희소성(Sparsity, 데이터나 모델에서 많은 요소가 0이거나 무시할 수 있을 정도로 작은 값인 상태 )을 높이는 효과가 있습니다.
  • 희소성이 증가해도 속도 개선이 제한적입니다.
  • 불규칙한 가중치 패턴으로 하드웨어 최적화가 어렵습니다.

2. Structed Prunning

  • 채널, 필터, 블록 단위로 제거하여 하드웨어 최적화에 용이합니다.
  • GPU, NPU, TPU 등에서 병렬 연산 최적화가 가능합니다.
  • 희소성이 증가할수록 실제 추론 속도가 개선됩니다.
  • 실제 서비스 환경에서는 Structured Pruning이 더 효과적입니다.

 

Quantization(양자화)

 

Quantization은 모델 내부의 가중치(Weight) 또는 중간 연산값(Activation)을 부동소수점 대신, 더 낮은 정밀도의 정수로 표현하여 메모리와 연산량을 줄이는 기법입니다. 예를 들어 32비트 부동 소수점 → 16비트 부동소수점 → 8비트 부동소수점 →... 이렇게 비트 수를 낮추며, 이 경우 메모리 사용량이 줄며 연산속도가 빨라질 수 있습니다.

 

양자화에는 INT8, Weight-only(4bit) 등 다양한 방식이 존재하며 그 특징은 다음과 같습니다.

 

1. INT8 Quantization(W8/A8 Quantization)

  • 모델 가중치(W, Weight)와 활성값(A, Activation)를 모두 8비트 정수(INT8)로 양자화합니다.
  • CPU, GPU, NPU 등 다양한 하드웨어에서 지원되어 적용하기 쉽습니다.
  • 압축률이 비교적 낮습니다.
  • Activation Quantization이 필수적입니다.

2. Weight-only(W4/A16 Quantization)

  • 모델 가중치(W, Weight)만 4bit로 양자화하며, 활성값은 16비트 부동소수점을 사용합니다.
  • 16비트 부동소수점 행렬연산을 수행합니다.
  • INT8 대비 4bit 연산을 지원하는 하드웨어가 적습니다.
  • 특정 AI반도체(NPU, TPU)나 ASIC, FPGA에서만 효과적으로 실행 가능합니다.
  • 높은 압축률을 나타냅니다.
  • Activation Quantization이 필수적이지 않습니다.

 

네이버 이동수 이사님의 강연을 통해, 현재 AI 기술이 어떻게 발전하고 있으며, AI 반도체 및 모델 최적화 기술이 왜 중요한지에 대해 이해할 수 있었습니다. 특히, AI의 성능 향상 과정에서 연산량을 최적화하고, 메모리 병목을 해결하는 것이 핵심 과제임을 알 수 있었습니다. 연산량을 최적화하기 위해서는 Prunning과 Quantization 등의 기술이 필요합니다.