SYDLAB_inha/AI semiconductor

AI.semi - 대회 준비 개념 정리

빈그레 2023. 10. 23. 22:01

Power and Memory Bandwidth Reduction

through Motion-Aware Feature Map Compression

( 움직임 기반 피처 맵 압축을 통한 전력 및 메모리 대역폭 감소 )

 

 

 

 

 

 

주제

- 비디오 입력에서 feature map을 압축하여 off-chip memory에 저장할 때

   memory access 량을 줄이기 위해서 비슷한 feature map 은 저장하지 않기.

 중요하지 않은 영역에서 quantization(양자화)이 많이 될수록 feature map 들의 유사성은 커지게되므로
   memory access reduction도 더 커짐

- memory access나 power consumption 쪽 강조하기

 

- 비디오의 움직임 정보를 활용할 예정

 

- video용 super reolution이나 fram interpolation, video frame prediction등

   (비디오 입력을 받는 모델에서는 다 활용할 수 있을 듯....)

 

 

주제 분석

- Feature map

딥러닝 모델에서 주로 CNN를 사용하여 입력 데이터에서 특징을 추출한다. 이 과정에서 입력 데이터가 여러 layer를 거치면서 다양한 feature map이 생성된다. 이러한 feature map을 메모리에 저장하는 것은 계산 과정 중 중요한 부분이다.




- feature map 압축
: 비슷한 feature map을 저장하지 않음으로써 메모리 효율성을 향상시키고 메모리 access 비용을 줄일 수 있다.
주로 중복 정보를 최소화 하고 관련성 있는 정보만을 유지하기 위해 압축을 사용한다.

a) 공간적인 상관관계 활용 ( Spatial Correlation )
: feature map 일부 영역에서 특정 패턴이 발생할 가능성이 있음.
  따라서 메모리에 저장할 때, 중복 패턴을 찾고, 그것에 대해서는 한 번만 저장하여 메모리 사용을 최적화함.

b)양자화 (Quantization)
: feature map의 값들을 더 작은 비트 수로 표현하며 메모리를 절약하는 방식이다.
단, 정확도를 손실시킬 수 있으므로 주의가 필요하다.

c) 가중치 공유 (Weigh Sharing)
: 유사한 feature map들 간에 weight를 공유하여 저장하는 방식이다.
 일부 정보 손실은 있으나 중복을 효과적으로 줄일 수 있다.

d) Spatial Compression (공간 압축)
: 비슷한 영역의 feature map들을 하나로 합치는 방식이다.

e) Dictionary-based Compression (사전 기반 압축)
: 비슷한 featrue map들을 사전에 저장하고 중복되는 feature map이 발견되면 해당 feature map을 저장하는 대신에 Dictionary의 index를 저장하여 중복을 피한다.
이렇게 하면, 중복되는 정보를 한 번만 저장하고, 나머지는 사전을 참조하여 접근할 수 있다.


 
- off-chip memory (칩 외부 메모리) 사용


a) 메모리 용량의 한계 (크기가 큰 데이터)
: 딥러닝 모델에서 생성되는 feature map은 상당한 크기를 가진다. (특히 신경망이나 큰 이미지 데이터셋에서)
on-chip memory는 제한된 크기를 가지기 때문에 feature map을 메모리에 보관하기 어려울 수 있다. 따라서 큰 feature map은 off-chip 메모리에 저장된다.

b) 메모리 계층 구조
: 모델의 중간 결과를 off-chip memory에 저장하면 메모리 계층 구조를 효과적으로 활용할 수 있다.
off-chip memory는 더 큰 용량을 가지고 있지만 on-chip memory보다는 접근 속도가 느리다. 따라서 중요한 데이터를 다룰 때에는 on-chip memory를 사용하고, 큰 용량이 필요한 경우에는 off-chip memory를 활용하는 것이 효과적이다.

c) 분산 처리 및 병렬화
 : 대규모 모델이나 데이터셋을 다룰 때, 여러 개의 칩 또는 장치로 병렬로 처리하는 경우가 많다.  모델의 중간 결과를 off-chip memmory에 저장하면 여러 장치 간에 데이터를 효율적으로 공유하고 전송할 수 있다.

d) 에너지 효율 및 열 관리
: on-chip memory의 활용은 전력 소비와 열 발생에 직접적인 영향을 미친다. 
높은 전력 소비를 필요로 하는 작업을 외부로 옮겨 off-chip meory를 사용하면 열을 효과적으로 관리할 수 있다.