고효율 병렬 처리를 위한 인공 신경망 모듈 및 이의 스케쥴링 방법
ARTIFICIAL NEURAL NETWORK MODULE AND SCHEDULING METHOD THEREOF FOR HIGHLY EFFECTIVE PARALLEL PROCESSING
특허 요약
본 발명의 실시예에 따른 인공 신경망 모듈 및 이의 스케쥴링 방법은 컨볼루션다수의 레이어의 다수의 컨볼루션 커널에 포함된 가중치 행렬의 크기가 서로 상이하여 불규칙적 특성을 포함하는 인공 신경망에 더미연산을 수행하기 위한 더미값을 추가하여 인공 신경망이 규칙적인 연산을 수행하도록 함으로써, 인공 신경망이 데이터 단위의 병렬연산에 특화된 하드웨어 가속기가 고효율 병렬 처리를 수행할 수 있도록 한다.
청구항
번호청구항
1

각각 가중치 행렬을 포함하고, 입력 특징 맵과 상기 가중치 행렬을 컨볼루션 연산하여 출력 특징 맵을 획득하는 다수의 컨볼루션 커널; 및 상기 다수의 컨볼루션 커널의 상기 가중치 행렬의 크기를 판별하고, 판별된 가중치 행렬의 크기가 서로 상이하면, 기지정된 더미값을 추가하여 상기 다수의 컨볼루션 커널의 가중치 행렬의 크기를 동일하게 조절하는 더미값 추가부; 를 포함하는 인공 신경망 모듈.

2

제1 항에 있어서, 상기 더미값 추가부는 상기 다수의 컨볼루션 커널에 포함된 가중치 행렬 중 최대 크기의 가중치 행렬의 크기에 따라 상기 가중치 행렬에 추가되는 더미값의 개수를 결정하는 인공 신경망 모듈.

3

제2 항에 있어서, 상기 더미값 추가부는 가로, 세로 및 깊이를 갖는 3차원 행렬로 구현된 상기 가중치 행렬의 깊이에 상기 더미값을 추가하여 깊이를 증가시키는 인공 신경망 모듈.

4

제3 항에 있어서, 상기 가중치 행렬은 상기 더미값이 추가되어 상기 입력 특징 맵에 포함된 특징 맵의 개수에 대응하는 깊이를 갖는 인공 신경망 모듈.

5

제3 항에 있어서, 상기 더미값은 0의 값으로 설정되는 인공 신경망 모듈.

6

제3 항에 있어서, 상기 다수의 컨볼루션 커널은 서로 병렬로 상기 컨볼루션 연산 처리를 수행하는 인공 신경망 모듈.

7

제1 항에 있어서, 상기 인공 신경망은 상기 출력 특징 맵을 기지정된 방식으로 서브 샘플링하여 상기 출력 특징 맵의 크기를 줄이는 서브 샘플링 레이어를 더 포함하는 인공 신경망 모듈.

8

각각 가중치 행렬을 포함하고, 입력 특징 맵과 상기 가중치 행렬을 컨볼루션 연산하여 출력 특징 맵을 획득하는 다수의 컨볼루션 커널의 가중치 행렬의 크기를 판별하는 단계; 판별된 가중치 행렬의 크기가 서로 상이하면, 기지정된 더미값을 추가하여 상기 다수의 컨볼루션 커널의 가중치 행렬의 크기를 동일하게 조절하는 단계; 및 상기 다수의 컨볼루션 커널이 병렬로 연산 처리를 수행하도록 스케쥴링하는 단계; 를 포함하는 인공 신경망 모듈의 스케쥴링 방법.

9

제8 항에 있어서, 상기 동일하게 조절하는 단계는 상기 다수의 컨볼루션 커널에 포함된 가중치 행렬 중 최대 크기을 판별하는 단계; 최대 크기의 가중치 행렬의 크기에 따라 상기 가중치 행렬에 추가되는 더미값의 개수를 결정하는 단계; 및 결정된 개수의 더미 값을 상기 가중치 행렬에 추가하는 단계; 를 포함하는 인공 신경망 모듈의 스케쥴링 방법.

10

제9 항에 있어서, 상기 가중치 행렬에 추가하는 단계는 가로, 세로 및 깊이를 갖는 3차원 행렬로 구현된 상기 가중치 행렬의 깊이에 결정된 개수의 상기 더미값을 추가하여 깊이를 증가시키는 인공 신경망 모듈의 스케쥴링 방법.

11

제10 항에 있어서, 상기 더미값은 0의 값으로 설정되는 인공 신경망 모듈의 스케쥴링 방법.