1 |
1
압축 신경망 시스템의 설계 방법에 있어서:오리지널 신경망 모델을 기반으로 압축 신경망을 생성하는 단계;상기 압축 신경망의 커널 파라미터 중 희소 가중치를 분석하는 단계;상기 희소 가중치의 희소성에 따라 목적 하드웨어 플랫폼에서 실현 가능한 최대 연산 처리량을 계산하는 단계;상기 희소성에 따라 상기 목적 하드웨어 플랫폼에서의 외부 메모리로의 액세스 대비 연산 처리량을 계산하는 단계; 그리고상기 실현 가능한 최대 연산 처리량 및 상기 액세스 대비 연산 처리량을 참조하여 상기 목적 하드웨어 플랫폼에서의 설계 파라미터를 결정하는 단계를 포함하는 설계 방법
|
2 |
2
제 1 항에 있어서,상기 압축 신경망은 상기 오리지널 신경망 모델에 대한 파라미터 제거, 가중치 공유, 그리고 파라미터 양자화 기법을 적용하여 생성되는 설계 방법
|
3 |
3
제 1 항에 있어서,상기 희소 가중치의 희소성에 따라 목적 하드웨어 플랫폼에서 실현 가능한 최대 연산 처리량을 계산하는 단계는, 상기 희소성에 따라 특정 컨볼루션 레이어에서의 실현 가능한 최대 연산 처리량을 계산하는 단계를 포함하는 설계 방법
|
4 |
4
제 1 항에 있어서,상기 희소성에 따라 상기 목적 하드웨어 플랫폼에서의 메모리 액세스 대비 연산 처리량을 계산하는 단계는, 컨볼루션 연산의 루프 방식을 조정하여 계산하는 단계를 포함하는 설계 방법
|
5 |
5
제 4 항에 있어서,상기 컨볼루션 연산의 루프 방식은, 입력 피처 또는 출력 피처의 채널 방향이 시프트되는 방향이나, 상기 입력 피처 또는 상기 출력 피처의 폭과 높이가 시프트되는 방향에 따라 변화되는 설계 방법
|
6 |
6
제 1 항에 있어서,상기 목적 하드웨어 플랫폼의 자원을 제공받고 분석하는 단계를 더 포함하는 설계 방법
|
7 |
7
제 6 항에 있어서,상기 목적 하드웨어 플랫폼은 GPU(Graphic Processing Unit) 또는 FPGA(Field Programmable Gate Array)를 포함하는 설계 방법
|
8 |
8
제 1 항에 있어서,상기 설계 파라미터는 상기 목적 하드웨어 플랫폼의 입출력 버퍼, 커널 버퍼, 입출력 조각의 크기, 연산 처리량, 그리고 동작 시간들 중 적어도 하나를 포함하는 설계 방법
|
9 |
9
제 1 항에 있어서,상기 희소 가중치의 희소성에 따라 목적 하드웨어 플랫폼에서 실현 가능한 최대 연산 처리량을 계산하는 단계는, 상기 압축 신경망의 레이어별 실현 가능한 최대 연산 처리량을 계산하는 단계를 포함하는 설계 방법
|
10 |
10
제 9 항에 있어서,상기 목적 하드웨어 플랫폼에서의 외부 메모리로의 액세스 대비 연산 처리량을 계산하는 단계는, 상기 압축 신경망의 레이어별 메모리 액세스 대비 연산 처리량을 계산하는 단계를 포함하는 설계 방법
|
11 |
11
제 1 항에 있어서, 상기 목적 하드웨어 플랫폼의 자원(Resource)에 대응하는 최대 동작점을 판단하는 단계를 더 포함하는 설계 방법
|
12 |
12
압축 신경망 시스템에 있어서:외부 메모리로부터 입력 피처를 수신하고 버퍼링하는 입력 버퍼;상기 외부 메모리로부터 커널 가중치를 제공받는 가중치 커널 버퍼;상기 입력 버퍼로부터 제공되는 상기 입력 피처의 조각들과 상기 가중치 커널 버퍼로부터 제공되는 희소 가중치를 사용하여 컨볼루션 연산을 수행하는 곱셈-누산 연산기(MAC 연산기); 그리고상기 컨볼루션 연산의 결과를 출력 피처 단위로 저장하고, 상기 외부 메모리로 전달하는 출력 버퍼를 포함하되,상기 입력 버퍼, 상기 출력 버퍼, 상기 입력 피처의 조각들, 그리고 상기 곱셈-누산 연산기의 연산 처리량 및 동작 사이클의 크기는 상기 희소 가중치의 희소성에 따라 결정되는 압축 신경망 시스템
|