SOLUTION
home
OGQ GYN AI for Image
home

OGQ GYN Developers Day #15 : NPU+GPU Combination

게시일
2023/08/15
관련 태그
AI
Deep Learning
NPU
GPU
게시자
Woo JaeHyeon
Woo JaeHyeon
1 more property
OGQ GYN Developers Day는 OGQ GYN의 모델 개발 과정 및 논문 등을 많은 기업 분들께 발표하는 자리로, 매월 마지막 주 수요일에 진행되고 있습니다.
이번 컨퍼런스에선 최근에 진행했던 NPU와 GPU을 결합하여 학습하는 방법에 대한 소개와 간략한 결과 및 추후 진행할 모델에 대해서 설명드리겠습니다.

Contents

Conference 개요

일시 : 2023년 08월 02일 13:00 ~ 14:00
장소 : Zoom 미팅
참여기업 (가나다순)
베스트디지탈 BEST DIGITAL
아이닉스 EYENIX
순서
1.
참여 업체 소개
2.
OGQ GYN 발표
사회자: OGQ GYN 우재현 연구원
발표자: OGQ GYN 우재현 연구원
3.
Q&A

1. Previous Presentation Summary

지난 컨퍼런스에서는 Point Label을 활용하여 Mask를 정제하여 사용하는 maskRefineNet에 대해서 설명드렸습니다.
Teacher Net 학습 → MaskRefineNet 학습 → Pseudo Mask 생성 → Student Net 학습의 순서로 진행됩니다.
Point가 효과적으로 guidance를 제공할 수 있으며 결과는 아래와 같습니다.

2. Problem

Eyenix의 NPU에 딥러닝 모델을 구동시키기 위해서는 GPU에서 생성된 pth파일을 enlight로 변환하는 작업이 필요합니다.
변환된 enlight는 Quantization 작업을 거치면서 pth파일 대비 성능하락이 다소 발생합니다.

3. Method

3-1. NPU+GPU 구조

성능 하락을 방지하기 위해 다음과 같이 NPU + GPU Inference 구조를 설계하였습니다.
NPU의 결과값을 GPU의 결과값으로 변환해줄 수 있는 Decoder를 추가하였습니다.

3-2. NPU + GPU 방법

Inference 시에는 위 NPU + GPU Inference 그림과 같이 학습된 Converter가 추가되어 NPU의 출력을 원래 GPU의 출력으로 변환하여 동작합니다.
Training 시에는 위 Converter Decoder Training 처럼 NPU의 결과와 GPU의 결과를 pickle 형태로 저장한 뒤에 Converter를 학습합니다.

3-3. 기대효과

모델의 성능과 속도는 GPU 보다 낮고 NPU보다 좋은 중간 성능일 것이라 예상하였습니다.
확장성 측면에서 NPU의 Encoder를 가변적으로 사용가능하며 NPU Encoder가 fix되면 GPU의 Decoder를 지속적으로 업데이트하여 모델의 성능 향상이 가능해집니다.
예를들어, SSDLite Decoder가 아닌 Yolo의 Decoder 등을 사용하는 방식으로 치환이 가능합니다.

4. Experiments

먼저 NPU feature를 GPU feature로 변환하기에 적합한지 등을 확인하기 위해 PascalVOC 데이터셋을 기준으로 NPU와 GPU의 feature 분포를 측정하였습니다.
Scale은 다르지만 분포의 형태는 비슷한 것으로 관측되었고 feautre value의 scale은 약 21배 차이가 발생하였으며 Converter를 학습할때 스케일링 parameter로 해당 값을 설정하였습니다.
Train
Val
GPU
99.992%
74.361%
NPU
99.502%
76.570%
GPU + NPU
99.498%
75.146%
Classification task로 PascalVOC 데이터셋을 기준으로 측정한 결과입니다.
예상과 다르게 GPU + NPU가 가장 성능이 좋지 않은 것을 확인할 수 있습니다.
고찰로 GPU + NPU의 Converter의 Loss가 0으로 수렴하지 않았으며 이는 NPU의 feature를 GPU의 feature로 정확히 변환할 수 없다는 것을 의미합니다.

5. To Do

아래와 같이 Classification에 대한 테스트 및 현재 진행하지 않은 Detection task에도 위 과정을 적용하여 확장할 계획을 가지고 있습니다. 뿐만 아니라, 그 이후에는 VG-GAN을 활용하여 Quantization 개선 방향도 고려하고 있습니다.

Classification

다른 데이터셋에 대한 테스트
Converter의 구조 및 학습 parameter 변경

Detection

FPN 구조의 feature 별로 Converter를 학습시키고 GPU Decoder로 Inference 하는 구조

VQ-GAN

Encoder의 Output으로부터 VQ-GAN의 Codebook의 index를 예측
Search
OGQ GYN Developers Day #20 : DHR 기반 EN675 화재 고도화
OGQ GYN Developers Day #20 : DHR 기반 EN675 화재 고도화
OGQ GYN의 기술블로그를 비상업적으로 사용 시 출처를 남겨주세요. 상업적 용도를 원하실 경우 문의 부탁드립니다. E-mail. tech@gynetworks.com
OGQ Corp. All right reserved.