1 |
1
CPU(Processing System; PS)와 FPGA(Programmable Logic, PL)를 포함하는 이기종 SoC(System on Chip) 플랫폼에서 구현되는 FPGA 기반 CNN 가속기의 동작 방법에 있어서, CPU에서 CNN 얼굴 표정 인식 성능을 향상시키기 위해 복수의 이미지 처리 알고리즘을 결합한 훈련 데이터셋을 생성하고, 생성된 훈련 데이터셋에 대하여 플로팅-포인트(floating-point) 훈련을 통해 파라미터를 변환하는 단계; CPU에서 플로팅-포인트 훈련을 통해 변환된 파라미터를에 대하여 양자화 인식 훈련을 통해 양자화된 파라미터를 추출하고, 정수-산술 전용(Integer-Arithmetic-Only) CNN 재구성을 수행하는 단계; 및 이기종 SoC 플랫폼의 FPGA 및 CPU 영역에서 상기 정수-산술 전용 CNN을 이용하여 실시간 얼굴 감정 인식을 수행하는 단계를 포함하는 FPGA 기반 CNN 가속기의 동작 방법
|
2 |
2
제1항에 있어서,상기 CPU에서 CNN 얼굴 표정 인식 성능을 향상시키기 위해 복수의 이미지 처리 알고리즘을 결합한 훈련 데이터셋을 생성하고, 생성된 훈련 데이터셋에 대하여 플로팅-포인트 훈련을 통해 파라미터를 변환하는 단계는, 제1 계산 모듈(FireA) 및 제2 계산 모듈(FireB)을 포함하는 기본 계산 블록을 통해 연산을 수행하고, 제1 계산 모듈(FireA) 및 제2 계산 모듈(FireB) 각각은, 특징맵의 채널 수를 감소시키고, 이어지는 확장 계층의 연산 수를 감소시키기 위한 스퀴즈 계층; 및 채널을 다시 확장하하기 위한 확장 계층을 포함하고, 수신 필드를 유지하여 정확도 저하를 최소화하기 위해 제1 계산 모듈의 스퀴즈 계층과 제2 계산 모듈의 스퀴즈 계층은 서로 다른 커널 크기를 갖는 FPGA 기반 CNN 가속기의 동작 방법
|
3 |
3
제2항에 있어서,특징맵의 해상도를 절반으로 줄이고 최대 풀링 계층을 대체하기 위해 상기 기본 계산 블록의 스트라이드를 2로 설정하고, CNN의 마지막에 추출된 특징을 분류하고 복수의 매개 변수를 포함하는 완전 연결 계층을 글로벌 평균 풀링으로 대체하고 커널 크기가 1인 컨볼루션 계층을 대체하여 상기 파라미터를 감소시키고, CNN의 분류기는 컨볼루션 계층을 통해 클래스 수와 일치하도록 채널 수를 최소화한 후 특징맵의 해상도를 하나의 픽셀로 압축하며, CNN의 수렴 안정성과 성능을 개선하기 위해 컨볼루션 계층과 활성화 함수 사이에 배치 정규화 계층을 삽입하는 FPGA 기반 CNN 가속기의 동작 방법
|
4 |
4
제1항에 있어서,상기 CPU에서 플로팅-포인트 훈련을 통해 변환된 파라미터를에 대하여 양자화 인식 훈련을 통해 양자화된 파라미터를 추출하고, 정수-산술 전용 CNN 재구성을 수행하는 단계는, 훈련 가능한 파라미터를 2의 거듭제곱 인수에 매핑하고, 첫 번째 에포크(epoch)의 첫 번째 배치의 활성화 데이터 통계 값으로 활성 기준화 인수를 초기화하여 사전 보정 프로세스를 필요로 하지 않고, 기준화 인수를 2의 거듭제곱 항에 매핑함으로써 스케일에서 발생하는 곱셈 및 나눗셈 연산과 역-양자화 프로세스는 모두 이동 연산으로 대체되는 로그레벨 임계값 정량화(Log Level Threshold Quantization; LLTQ) 방법을 이용하는 FPGA 기반 CNN 가속기의 동작 방법
|
5 |
5
CPU(Processing System; PS)와 FPGA(Programmable Logic, PL)를 포함하는 이기종 SoC(System on Chip) 플랫폼에서 구현되는 FPGA 기반 CNN 가속기에 있어서, 상기 CPU는, CNN 얼굴 표정 인식 성능을 향상시키기 위해 복수의 이미지 처리 알고리즘을 결합한 훈련 데이터셋을 생성하고, 생성된 훈련 데이터셋에 대하여 플로팅-포인트(floating-point) 훈련을 통해 파라미터를 변환하고, 플로팅-포인트 훈련을 통해 변환된 파라미터를에 대하여 양자화 인식 훈련을 통해 양자화된 파라미터를 추출하고, 정수-산술 전용(Integer-Arithmetic-Only) CNN 재구성을 수행하며, 이기종 SoC 플랫폼의 FPGA 및 CPU 영역에서 상기 정수-산술 전용 CNN을 이용하여 실시간 얼굴 감정 인식을 수행하는FPGA 기반 CNN 가속기
|
6 |
6
제5항에 있어서, 상기 CPU는, CNN 얼굴 표정 인식 성능을 향상시키기 위해 복수의 이미지 처리 알고리즘을 결합한 훈련 데이터셋을 생성하고, 생성된 훈련 데이터셋에 대하여 플로팅-포인트 훈련을 통해 파라미터를 변환하는 과정에서, 제1 계산 모듈(FireA) 및 제2 계산 모듈(FireB)을 포함하는 기본 계산 블록을 통해 연산을 수행하고, 제1 계산 모듈(FireA) 및 제2 계산 모듈(FireB) 각각은, 특징맵의 채널 수를 감소시키고, 이어지는 확장 계층의 연산 수를 감소시키기 위한 스퀴즈 계층; 및 채널을 다시 확장하하기 위한 확장 계층을 포함하고, 수신 필드를 유지하여 정확도 저하를 최소화하기 위해 제1 계산 모듈의 스퀴즈 계층과 제2 계산 모듈의 스퀴즈 계층은 서로 다른 커널 크기를 갖는 FPGA 기반 CNN 가속기
|
7 |
7
제6항에 있어서,특징맵의 해상도를 절반으로 줄이고 최대 풀링 계층을 대체하기 위해 상기 기본 계산 블록의 스트라이드를 2로 설정하고, CNN의 마지막에 추출된 특징을 분류하고 복수의 매개 변수를 포함하는 완전 연결 계층을 글로벌 평균 풀링으로 대체하고 커널 크기가 1인 컨볼루션 계층을 대체하여 상기 파라미터를 감소시키고, CNN의 분류기는 컨볼루션 계층을 통해 클래스 수와 일치하도록 채널 수를 최소화한 후 특징맵의 해상도를 하나의 픽셀로 압축하며, CNN의 수렴 안정성과 성능을 개선하기 위해 컨볼루션 계층과 활성화 함수 사이에 배치 정규화 계층을 삽입하는FPGA 기반 CNN 가속기
|
8 |
8
제5항에 있어서, 상기 CPU는, 플로팅-포인트 훈련을 통해 변환된 파라미터를에 대하여 양자화 인식 훈련을 통해 양자화된 파라미터를 추출하고, 정수-산술 전용(Integer-Arithmetic-Only) CNN 재구성을 수행하는 과정에서, 훈련 가능한 파라미터를 2의 거듭제곱 인수에 매핑하고, 첫 번째 에포크(epoch)의 첫 번째 배치의 활성화 데이터 통계 값으로 활성 기준화 인수를 초기화하여 사전 보정 프로세스를 필요로 하지 않고, 기준화 인수를 2의 거듭제곱 항에 매핑함으로써 스케일에서 발생하는 곱셈 및 나눗셈 연산과 역-양자화 프로세스는 모두 이동 연산으로 대체되는 로그레벨 임계값 정량화(Log Level Threshold Quantization; LLTQ) 방법을 이용하는 FPGA 기반 CNN 가속기
|