KR20220073088A - 자원이 제약된 모바일 기기에서 동적 데이터 변환에 적응하기 위한 전문화된 경량 신경망 교체 방법 및 장치 - Google Patents

자원이 제약된 모바일 기기에서 동적 데이터 변환에 적응하기 위한 전문화된 경량 신경망 교체 방법 및 장치 Download PDF

Info

Publication number
KR20220073088A
KR20220073088A KR1020200160821A KR20200160821A KR20220073088A KR 20220073088 A KR20220073088 A KR 20220073088A KR 1020200160821 A KR1020200160821 A KR 1020200160821A KR 20200160821 A KR20200160821 A KR 20200160821A KR 20220073088 A KR20220073088 A KR 20220073088A
Authority
KR
South Korea
Prior art keywords
model
specialized
neural network
inference
task
Prior art date
Application number
KR1020200160821A
Other languages
English (en)
Inventor
최동완
김학빈
최홍준
Original Assignee
인하대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인하대학교 산학협력단 filed Critical 인하대학교 산학협력단
Priority to KR1020200160821A priority Critical patent/KR20220073088A/ko
Publication of KR20220073088A publication Critical patent/KR20220073088A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

자원이 제약된 모바일 기기에서 동적 데이터 변환에 적응하기 위한 전문화된 경량 신경망 교체 방법 및 장치가 개시된다. 일 실시예에 따른 신경망 교체 방법은, 의미적 유사도를 기준으로 분류된 각각의 태스크 별로 전문화된 신경망을 생성하여 모델 데이터베이스를 구축하는 단계; 및 상기 구축된 모델 데이터베이스에 기초하여 사용자의 추론 요청과 관련된 태스크에 대응하는 전문화된 신경망으로 교체하여 추론을 진행하는 단계를 포함할 수 있다.

Description

자원이 제약된 모바일 기기에서 동적 데이터 변환에 적응하기 위한 전문화된 경량 신경망 교체 방법 및 장치{A METHOD AND SYSTEM OF SWITCHING SPECIALIZED LIGHTWEIGHT NEURAL NETWORKS FOR CONCEPT-DRIFT ADAPTATION IN RESOURCE-CONSTRAINED MOBILE DEVICES}
아래의 설명은 전문화된 경량 신경망을 교체하는 기술에 관한 것이다.
딥러닝 모델은 인공지능 분야에서의 뛰어난 성능에도 불구하고, 압도적인 계산량으로 인해 컴퓨팅 자원이 제약된 모바일과 같은 환경에서 활용하기에 많은 제약이 존재한다. 따라서, 이를 보완하기 위해 성능은 유지하면서 모델의 크기와 계산량을 줄이고자 하는 모델 압축(model compression) 분야가 현재 활발히 연구되고 있다. 이 중 모델 전문화(model specialization)는, 기존의 대형 모델의 지식을 활용하여 사용자의 요구에 맞는 부분 태스크에 집중하는 전문화된 모델을 생성하는 기법이다. 이를 통해, 모든 태스크에 대해 학습된 대형 모델을 그대로 사용하는 것보다 훨씬 경량화된 모델을 생성하여 사용할 수 있게 된다.
기본적인 지식 증류 기법은 지식 증류를 위한 데이터를 활용하여 해당 데이터를 교사 모델과 학생 모델에 통과시켰을 때, 서로 동일한 출력(predictive distributions)이 나오도록 학습시키는 방법을 사용한다. 또한, 기본적인 지식 증류 기법을 바탕으로 모델을 압축하기 위한 기법들이 활발히 연구되고 있다. 하지만 위에서 제시한 방법들은 모두 교사 모델에서 사용된 전체 클래스 집합을 학생 모델에서도 동일하게 분류할 수 있도록 하는데 그 목적이 있다고 볼 수 있다.
딥러닝 모델의 계산량을 줄이기 위한 방법 중 하나로 나온 것이 모델 전문화(model specialization)이다. 이는 모델의 태스크를 줄여, 제한된 태스크에 대한 경량 모델을 생성하는 방법이다. 일반적인 기계학습 알고리즘들이 모든 데이터에 대한 일반화(generalization)된 모델을 만드는 것을 목표로 하고 있는 것과 반대로, 모델 전문화는 부분 태스크에 대한 보다 신뢰성 있는 모델을 만드는 것에 초점을 둔다. 예를 들면, 부분 태스크에 대한 데이터와 이를 학습시킬 작은 모델들의 구조를 정의한 후, 해당 모델을 학습하는 단순한 방식의 모델 전문화 방법, 가지치기(pruning) 방법을 응용하여, 긴 학습시간 없이 전문화된 모델을 생성하는 방법이 개시된 바 있다. 또한, 전문화된 모델을 생성하는 조건부 지식 증류 기법이 제안된 바 있다.
조건부 지식 증류 기법을 활용하여 학습된 전문화 모델을 주어진 태스크에 맞도록 실시간으로 자동 선택 및 교체하면서 추론을 진행하는 적응형 이미지 추론 방법 및 시스템을 제공할 수 있다.
상세하게는, 기 학습된 모델에서부터 생성된 전문화 모델을 각 태스크별로 나누어 준비한 후, 실시간으로 모델에 입력되는 이미지를 바탕으로 적합한 전문화된 모델을 선택 및 교체하여 이미지를 추론하는 구조를 제안한다.
신경망 교체 방법은, 의미적 유사도를 기준으로 분류된 각각의 태스크 별로 전문화된 신경망을 생성하여 모델 데이터베이스를 구축하는 단계; 및 상기 구축된 모델 데이터베이스에 기초하여 사용자의 추론 요청과 관련된 태스크에 대응하는 전문화된 신경망으로 교체하여 추론을 진행하는 단계를 포함할 수 있다.
상기 추론을 진행하는 단계는, 임베디드 기기에서 인풋 샘플에 대해 추론이 진행됨에 따라 상기 인풋 샘플에 대한 전문화된 모델의 아웃풋을 통해 태스크 개념 변화(concept drift) 탐지를 위한 검사가 진행되고, 개념 변화가 탐지되지 않는다면 추론된 아웃풋을 사용해 전문화된 모델의 최종 결과가 확정되는 단계를 포함할 수 있다.
상기 추론을 진행하는 단계는, 상기 개념 변화가 탐지됨에 따라 상기 인풋 샘플이 전송됨을 수신하고, 교사 모델을 사용하여 상기 인풋 샘플에 대응하는 태스크를 확인하고, 상기 확인된 태스크에 전문화된 모델을 서버의 모델 데이터베이스에서 임베디드 기기로 전송하는 단계를 포함할 수 있다.
상기 추론을 진행하는 단계는, 상기 임베디드 기기에서 상기 임베디드 기기에 탑재되어 있던 전문화된 모델을 삭제하고, 상기 전송된 전문화된 모델을 수신하고, 상기 수신된 전문화된 모델을 사용하여 추론을 진행하는 단계를 포함할 수 있다.
상기 추론을 진행하는 단계는, 임베디드 기기에 전문화된 모델이 존재하지 않을 경우, 개념 변화가 탐지됨에 따라 인풋 샘플이 전송됨을 수신하고, 교사 모델을 사용하여 상기 인풋 샘플에 대응하는 태스크를 확인하고, 상기 확인된 태스크에 전문화된 모델을 서버의 모델 데이터베이스에서 임베디드 기기로 전송하고, 상기 임베디드 기기에서 상기 임베디드 기기에 탑재되어 있던 전문화된 모델을 삭제하고, 상기 전송된 전문화된 모델을 수신하고, 상기 수신된 전문화된 모델을 사용하여 추론을 진행하는 과정을 진행하여 임베디드 기기에 전문화된 모델을 전달하는 단계를 포함할 수 있다.
상기 추론을 진행하는 단계는, 상기 개념 변화가 이루어진 것으로 탐지하기 위하여 설정된 조건을 통하여 인풋 샘플에 대한 예측 확률값이 임계값보다 작은 경우, 개념 변화가 이루어진 것으로 판단하고, 상기 인풋 샘플에 대한 예측 확률값이 임계값보다 크거가 같은 경우, 개념 변화가 이루어지지 않을 것으로 판단하는 단계를 포함할 수 있다.
상기 구축하는 단계는, 상기 전문화된 모델들을 학습하여 모델 데이터베이스에 저장하기 위한 전처리를 수행하는 단계를 포함할 수 있다.
신경망 교체 시스템은, 의미적 유사도를 기준으로 분류된 각각의 태스크 별로 전문화된 신경망을 생성하여 모델 데이터베이스를 구축하는 모델 구축부; 및 상기 구축된 모델 데이터베이스에 기초하여 사용자의 추론 요청과 관련된 태스크에 대응하는 전문화된 신경망으로 교체하여 추론을 진행하는 추론 진행부를 포함할 수 있다.
기존의 대형 네트워크가 사용될 수 없는 자원이 제약된 모바일 및 임베디드 환경에서 효과적으로 이미지를 추론할 수 있다.
부분 클래스 집합에 대한 지식을 증류하는 기법을 사용함으로써 경량화된모델 전문화를 이룰 수 있다.
전문화 모델 데이터베이스를 이용하여 내장형 기기 환경에서 동적인 데이터에 적응하기 위한 경량 모델을 자동으로 교체할 수 있다.
도 1은 일 실시예에 따른 신경망 교체 시스템에서 모델 전문화 과정을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 신경망 교체 시스템에서 추론 동작을 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 신경망 교체 시스템의 구성을 설명하기 위한 블록도이다.
도 4는 일 실시예에 따른 신경망 교체 시스템에서 신경망 교체 방법을 설명하기 위한 흐름도이다.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
최근 모바일 기기 등에 사용되는 다양한 태스크에 대해 일반화된 대형 신경망을 생성하는 대신 추론 상황에 필요로 하는 일부 태스크들에 대해 전문화된 소형 신경망을 생성하는 딥러닝 모델 전문화와 관련된 연구가 활발히 진행되고 있다. 하지만, 추론 상황마다 사용자가 필요로 하는 태스크에 전문화된 새로운 신경망을 매번 학습하는 것은 비효율적일 수 있다.
실시예에서는 의미적 유사도를 기준으로 나누어진 각각의 태스크 별로 전문화된 경량 신경망을 생성해 모델 데이터베이스를 구축한 후, 실시간으로 사용자가 추론을 원하는 태스크에 맞는 신경망을 자동으로 모델 데이터베이스에서 선택 및 교체하여 추론을 진행하는 적응형 이미지 추론 동작을 설명하기로 한다. 이를 통해, 모바일 환경과 같이 자원이 제약되어 일반화된 대형 신경망을 사용하지 못하는 상황에서 전문화된 신경망을 통해 정확한 추론을 진행할 수 있게 된다.
도 1은 일 실시예에 따른 신경망 교체 시스템에서 모델 전문화 과정을 설명하기 위한 도면이다.
전문화된 모델을 학습하는 동작에 대하여 설명하기로 한다. 전문화된 모델들을 학습하여 모델 데이터베이스에 저장하기 위한 전처리 과정은 도 1과 같고 다음과 같은 순서로 진행될 수 있다.
(1) 교사 모델(Oracle)의 학습에 사용된 데이터 셋의 전체 클래스 집합 C를 클래스 계층구조에 따라 의미적 유사도를 기준으로
Figure pat00001
으로 분할한다.
(2) 손실함수인 수학식 1을 사용해 각각의
Figure pat00002
태스크에 대해 전문화된 모델들을 학습하고, 학습된 모델들을 모델 데이터베이스에 저장한다. 비특허문헌 1<H. B. KimandD. W. Choi, "Data-Free Conditional Knowledge Distillation for Extracting Specialized Neural Networks," Proc. of the KIISE Korea Computer Congress 2020, pp. 548-550, 2020. (in Korean)>에 개시된 수학식 1의 손실함수를 사용하기로 한다.
Figure pat00003
수학식 1에서
Figure pat00004
는 인풋(input) 이미지 x에 대한 교사 모델의 아웃풋 로짓(output logit)값이다.
Figure pat00005
Figure pat00006
에서
Figure pat00007
개의 로짓값들 중
Figure pat00008
태스크와 관련있는
Figure pat00009
개의 로짓값만을 추출한 값이다.
Figure pat00010
는 학생 모델(
Figure pat00011
태스크에 대해 전문화된 모델)의 아웃풋 로짓값이다.
Figure pat00012
는 KL-divergence를 사용하며, temperature parameter는 4를 사용한다.
도 2는 일 실시예에 따른 신경망 교체 시스템에서 추론 동작을 설명하기 위한 도면이다.
신경망 교체 시스템의 전체 작동 과정은 설명하기 위한 도면이다. 다음과 같은 순서로 진행될 수 있다.
(1) 임베디드 기기에서 인풋 샘플에 대해 추론이 진행될 수 있다.
(2) 인풋 샘플에 대한 전문화된 모델의 아웃풋을 통해 태스크 개념 변화(concept drift) 탐지를 위한 검사가 진행될 수 있다.
(3) 개념 변화가 탐지되지 않는다면 추론된 아웃풋을 사용해 모델의 최종 결과를 확정한다.
(4) 개념 변화가 탐지되었다면, 서버에 해당 인풋 샘플을 전송하고, 서버에서 교사 모델을 사용하여 샘플에 맞는 태스크를 확인한다.
(5) 확인된 태스크에 전문화된 모델을 서버의 모델 데이터베이스에 임베디드 기기로 전송한다.
(6) 임베디드 기기에 탑재되어 있던 모델을 삭제하고, 서버로부터 전송된 모델을 사용하여 추론을 진행한다.
위의 과정 중 (1)에서 현재 임베디드 기기에 모델이 존재하지 않는다면, (4)에서 (6)까지를 먼저 진행하여 임베디드 기기에 모델을 전달한다. 이후 계속해서 (1)에서 (6)까지의 과정을 반복하게 진행하게 된다. 이때, (2)에서 개념 변화가 이루어진 것으로 탐지되는 조건을 수학식 2와 같다.
수학식 2:
Figure pat00013
수학식 2에서
Figure pat00014
는 수학식 1의
Figure pat00015
와 동일하고
Figure pat00016
는 소프트맥스(softmax) 함수이다.
Figure pat00017
Figure pat00018
에서 가장 큰 확률 값을 의미한다.
Figure pat00019
는 각각의 태스크
Figure pat00020
마다 지정된 임계값으로 하이퍼 파라미터이다. 다시 말해서, 수학식 2와 같이 인풋 샘플
Figure pat00021
에 대한 예측 확률값인
Figure pat00022
가 임계값
Figure pat00023
보다 작은 경우, 개념 변화가 이루어진 것으로 간주하며, 임계값
Figure pat00024
보다 크거나 같은 경우에는 개념 변화가 이루어지지 않은 것으로 간주하게 된다.
다음은, 실시예에서 제안된 동작에 대한 실험을 설명하기로 한다. 우선, 데이터셋 및 네트워크 구조에 대하여 설명하기로 한다. 예를 들면, ImageNet ILSVRC 2012 데이터셋은 train 1,281,167개, test 50,000개의 이미지로 구성되어 있을 수 있다. 총 클래스의 수는 1,000개이다. 실험을 위해 클래스 계층구조1를 바탕으로 의미적 유사도에 따라 3~5개의 유사한 클래스 집합을 상위 클래스 그룹으로 지정할 수 있다. 실시예에서는 사용자가 분류를 원하는 특정 클래스들을 클래스 그룹 단위로 가정하고 실험이 진행될 수 있다. 교사 모델은ImageNet을 학습한 ResNet-34모델을 사용할 수 있다. 전문화된 모델로는 임베디드 기기에서의 사용을 위해 모델의 채널 수를 줄인 경량화된 MobileNetV2를 사용할 수 있다. 실시예에서 제안한 시스템의 임베디드 기기로 NVIDIA Jetson TX2(8GB)을 이용하여 실험이 진행될 수 있다.
실험 및 비교 방법에 대하여 설명하기로 한다. 표 1에서 사용자가 분류를 원하는 특정 클래스 집합 추론을 위해 ImageNet의 상위 클래스들 중 finch(4개 클래스), oscine(3개 클래스), corvine and thrush(4개 클래스), bird of prey(3개 클래스)를 사용한다. 그리고 표 2에서는 분류를 원하는 특정 클래스 집합이 변화하는 상황을 위해 각 클래스 그룹들이 순차적으로 들어오는 상황을 바탕으로 위의 네 가지 클래스 그룹 전체에 대해 추론하는 실험이 진행될 수 있다. 표 1에 나타나 있는 특정 클래스 집합 분류 성능 측정에 사용된 전체 모델과 전문화 모델 그리고 표 2에서 보이고 있는 특정 클래스 집합이 변화하는 상황에서의 분류를 위한 전문화 모델의 시스템은 다음과 같다.
표 1: 모델 변 특정 클래스 집합에 대한 정확도
Figure pat00025
오라클 모델(Oracle model)은 ImageNet 데이터를 모두 사용해 학습됨 모델이며, 표 1에서 특정 클래스 집합의 정확도는 ImageNet의 테스트 데이터셋에서 특정 클래스 집합의 테스트 셋만 사용하여 측정한 정확도이다. 표 2에서 특정 클래스 집합이 변화하는 상황의 정확도는 연속되는 클래스 집합 전체의 테스트 셋을 사용하여 측정한 정확도이다. ResNet-34를 사용한 모델은 나머지 실험에서 교사 모델로 사용될 수 있다.
전문화된 모델(specialized model)은 조건부 지식 증류 기법(conditional knowledge distillation)을 사용하여 특정 클래스 집합을 위해 학습된 모델이다. 표 1에 각 클래스 집합에서의 정확도는 이 방법을 통해 학습된 전문화된 학생 모델에 대한 수치이다.
신경망 교체 시스템은 실시예에서 제시한 분류를 원하는 특정 클래스 집합이 변하는 상황에서 전문화된 모델을 이용하는 시스템(장치)이다. 임베디드 기기에서의 전문화된 모델과 서버의 전체 모델, 전문화된 모델 데이터베이스로 구성되어 있다. 표 2에서 특정 클래스 집합이 변하는 상황에서의 정확도는 연속되는 클래스 전체의 테스트 셋을 사용하여 측정한 정확도이다.
표 2: 테스트 결과
Figure pat00026
실험 결과 및 비교에 대하여 설명하기로 한다.
표 1의 oscine에 대한 실험에서 전문화된 모델이 교사 모델에 비해 정확도가 10.03% 향상되었고, 나머지 클래스 그룹에 대해서도 전문화된 모델이 각각 3.5%, 4.5%, 4.66% 더 높은 정확도를 보임을 확인할 수 있다. 이를 통해서 특정한 클래스 집합 추론을 하는 임베디드 기기 환경에서 전문화된 모델이 교사 모델에 비해 더욱 정확하고 효율적인 모델로 사용될 수 있음을 확인할 수 있다.
표2를 통해 특정 클래스 집합이 변화하는 상황에서 개념 변화를 탐지하고 태스크에 맞는 전문화 모델을 이용하는 이미지 추론 시스템이 교사 모델을 이용한 추론에 비하여 0.73% 향상된 정확도를 보였고, 25.3배 작은 크기의 경량화된 전문화 신경망 모델을 사용함으로써 교사 모델에 비해 16.8배 적은 FLOPs를 통한 추론이 가능함을 볼 수 있다. 또한 시스템이 추론해야 하는 태스크가 변하는 상황에서 새로운 신경망을 학습하는 대신 개념 변화를 탐지하고 태스크에 맞는 전문화 모델을 선택 및 교체, 그리고 추론까지 걸리는 시간은 평균 1.27초인 것을 확인할 수 있다. 개념 변화가 발생하는 빈도가 극단적으로 높게 나타나지 않는다면, 실시예에서 제안된 시스템을 통해 사용자가 원하는 특정 클래스 집합이 변하는 상황에서도 전문화된 모델을 적절하게 교체함으로써 더 정확하고 효율적인 추론이 가능하다는 점을 알 수 있다.
도 3은 일 실시예에 따른 신경망 교체 시스템의 구성을 설명하기 위한 블록도이고, 도 4는 일 실시예에 따른 신경망 교체 시스템에서 신경망 교체 방법을 설명하기 위한 흐름도이다.
신경망 교체 시스템(100)의 프로세서는 모델 구축부(310) 및 추론 진행부(320)를 포함할 수 있다. 이러한 프로세서의 구성요소들은 신경망 교체 시스템에 저장된 프로그램 코드가 제공하는 제어 명령에 따라 프로세서에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다. 프로세서 및 프로세서의 구성요소들은 도 4의 신경망 교체 방법이 포함하는 단계들(410 내지 420)을 수행하도록 신경망 교체 시스템을 제어할 수 있다. 이때, 프로세서 및 프로세서의 구성요소들은 메모리가 포함하는 운영체제의 코드와 적어도 하나의 프로그램의 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다.
프로세서는 신경망 교체 방법을 위한 프로그램의 파일에 저장된 프로그램 코드를 메모리에 로딩할 수 있다. 예를 들면, 신경망 교체 시스템에서 프로그램이 실행되면, 프로세서는 운영체제의 제어에 따라 프로그램의 파일로부터 프로그램 코드를 메모리에 로딩하도록 신경망 교체 시스템을 제어할 수 있다. 이때, 프로세서 및 프로세서가 포함하는 모델 구축부(310) 및 추론 진행부(320) 각각은 메모리에 로딩된 프로그램 코드 중 대응하는 부분의 명령을 실행하여 이후 단계들(410 내지 420)을 실행하기 위한 프로세서의 서로 다른 기능적 표현들일 수 있다.
단계(410)에서 모델 구축부(310)는 의미적 유사도를 기준으로 분류된 각각의 태스크 별로 전문화된 신경망을 생성하여 모델 데이터베이스를 구축할 수 있다. 모델 구축부(310)는 전문화된 모델들을 학습하여 모델 데이터베이스에 저장하기 위한 전처리를 수행할 수 있다.
단계(420)에서 추론 진행부(320)는 구축된 모델 데이터베이스에 기초하여 사용자의 추론 요청과 관련된 태스크에 대응하는 전문화된 신경망으로 교체하여 추론을 진행할 수 있다. 추론 진행부(320)는 임베디드 기기에서 인풋 샘플에 대해 추론이 진행됨에 따라 인풋 샘플에 대한 전문화된 모델의 아웃풋을 통해 태스크 개념 변화(concept drift) 탐지를 위한 검사가 진행되고, 개념 변화가 탐지되지 않는다면 추론된 아웃풋을 사용해 모델의 최종 결과가 확정될 수 있다. 추론 진행부(320)는 개념 변화가 탐지됨에 따라 인풋 샘플이 전송됨을 수신하고, 교사 모델을 사용하여 인풋 샘플에 대응하는 태스크를 확인하고, 확인된 태스크에 전문화된 모델을 서버의 모델 데이터베이스에서 임베디드 기기로 전송할 수 있다. 추론 진행부(320)는 임베디드 기기에서 임베디드 기기에 탑재되어 있던 전문화된 모델을 삭제하고, 전송된 전문화된 모델을 수신하고, 수신된 전문화된 모델을 사용하여 추론을 진행할 수 있다. 추론 진행부(320)는 임베디드 기기에 전문화된 모델이 존재하지 않을 경우, 개념 변화가 탐지됨에 따라 인풋 샘플이 전송됨을 수신하고, 교사 모델을 사용하여 인풋 샘플에 대응하는 태스크를 확인하고, 확인된 태스크에 전문화된 모델을 서버의 모델 데이터베이스에서 임베디드 기기로 전송하고, 임베디드 기기에서 임베디드 기기에 탑재되어 있던 전문화된 모델을 삭제하고, 전송된 전문화된 모델을 수신하고, 수신된 전문화된 모델을 사용하여 추론을 진행하는 과정을 진행하여 임베디드 기기에 전문화된 모델을 전달할 수 있다. 추론 진행부(320)는 개념 변화가 이루어진 것으로 탐지하기 위하여 설정된 조건을 통하여 인풋 샘플에 대한 예측 확률값이 임계값보다 작은 경우, 개념 변화가 이루어진 것으로 판단하고, 인풋 샘플에 대한 예측 확률값이 임계값보다 크거가 같은 경우, 개념 변화가 이루어지지 않을 것으로 판단할 수 있다.
일 실시예에 따르면, 실시간으로 주어진 태스크에 맞는 전문화 모델을 자동으로 선택 및 교체하면서 추론을 진행하고, 다양한 실험을 통해 실시예에서 제안된 신경망 교체 시스템의 우수성을 입증할 수 있다. 최근 컴퓨팅 자원이 제약된 환경에서 더욱 효율적인 딥러닝 모델에 대한 필요성이 대두되고 있는 것을 고려할 때, 실시예에서 제안한 신경망 교체 시스템을 바탕으로 동적으로 변화하는 환경에서 효율적인 모델을 이용한 딥러닝 어플리케이션을 적용할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (8)

  1. 신경망 교체 방법에 있어서,
    의미적 유사도를 기준으로 분류된 각각의 태스크 별로 전문화된 신경망을 생성하여 모델 데이터베이스를 구축하는 단계; 및
    상기 구축된 모델 데이터베이스에 기초하여 사용자의 추론 요청과 관련된 태스크에 대응하는 전문화된 신경망으로 교체하여 추론을 진행하는 단계
    를 포함하는 신경망 교체 방법.
  2. 제1항에 있어서,
    상기 추론을 진행하는 단계는,
    임베디드 기기에서 인풋 샘플에 대해 추론이 진행됨에 따라 상기 인풋 샘플에 대한 전문화된 모델의 아웃풋을 통해 태스크 개념 변화(concept drift) 탐지를 위한 검사가 진행되고, 개념 변화가 탐지되지 않는다면 추론된 아웃풋을 사용해 전문화된 모델의 최종 결과가 확정되는 단계
    를 포함하는 신경망 교체 방법.
  3. 제2항에 있어서,
    상기 추론을 진행하는 단계는,
    상기 개념 변화가 탐지됨에 따라 상기 인풋 샘플이 전송됨을 수신하고, 교사 모델을 사용하여 상기 인풋 샘플에 대응하는 태스크를 확인하고, 상기 확인된 태스크에 전문화된 모델을 서버의 모델 데이터베이스에서 임베디드 기기로 전송하는 단계
    를 포함하는 신경망 교체 방법.
  4. 제3항에 있어서,
    상기 추론을 진행하는 단계는,
    상기 임베디드 기기에서 상기 임베디드 기기에 탑재되어 있던 전문화된 모델을 삭제하고, 상기 전송된 전문화된 모델을 수신하고, 상기 수신된 전문화된 모델을 사용하여 추론을 진행하는 단계
    를 포함하는 신경망 교체 방법.
  5. 제4항에 있어서,
    상기 추론을 진행하는 단계는,
    임베디드 기기에 전문화된 모델이 존재하지 않을 경우, 개념 변화가 탐지됨에 따라 인풋 샘플이 전송됨을 수신하고, 교사 모델을 사용하여 상기 인풋 샘플에 대응하는 태스크를 확인하고, 상기 확인된 태스크에 전문화된 모델을 서버의 모델 데이터베이스에서 임베디드 기기로 전송하고, 상기 임베디드 기기에서 상기 임베디드 기기에 탑재되어 있던 전문화된 모델을 삭제하고, 상기 전송된 전문화된 모델을 수신하고, 상기 수신된 전문화된 모델을 사용하여 추론을 진행하는 과정을 진행하여 임베디드 기기에 전문화된 모델을 전달하는 단계
    를 포함하는 신경망 교체 방법.
  6. 제2항에 있어서,
    상기 추론을 진행하는 단계는,
    상기 개념 변화가 이루어진 것으로 탐지하기 위하여 설정된 조건을 통하여 인풋 샘플에 대한 예측 확률값이 임계값보다 작은 경우, 개념 변화가 이루어진 것으로 판단하고, 상기 인풋 샘플에 대한 예측 확률값이 임계값보다 크거가 같은 경우, 개념 변화가 이루어지지 않을 것으로 판단하는 단계
    를 포함하는 신경망 교체 방법.
  7. 제1항에 있어서,
    상기 구축하는 단계는,
    전문화된 모델들을 학습하여 모델 데이터베이스에 저장하기 위한 전처리를 수행하는 단계
    를 포함하는 신경망 교체 방법.
  8. 신경망 교체 시스템에 있어서,
    의미적 유사도를 기준으로 분류된 각각의 태스크 별로 전문화된 신경망을 생성하여 모델 데이터베이스를 구축하는 모델 구축부; 및
    상기 구축된 모델 데이터베이스에 기초하여 사용자의 추론 요청과 관련된 태스크에 대응하는 전문화된 신경망으로 교체하여 추론을 진행하는 추론 진행부
    를 포함하는 신경망 교체 시스템.
KR1020200160821A 2020-11-26 2020-11-26 자원이 제약된 모바일 기기에서 동적 데이터 변환에 적응하기 위한 전문화된 경량 신경망 교체 방법 및 장치 KR20220073088A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200160821A KR20220073088A (ko) 2020-11-26 2020-11-26 자원이 제약된 모바일 기기에서 동적 데이터 변환에 적응하기 위한 전문화된 경량 신경망 교체 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200160821A KR20220073088A (ko) 2020-11-26 2020-11-26 자원이 제약된 모바일 기기에서 동적 데이터 변환에 적응하기 위한 전문화된 경량 신경망 교체 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20220073088A true KR20220073088A (ko) 2022-06-03

Family

ID=81982537

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200160821A KR20220073088A (ko) 2020-11-26 2020-11-26 자원이 제약된 모바일 기기에서 동적 데이터 변환에 적응하기 위한 전문화된 경량 신경망 교체 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20220073088A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102504230B1 (ko) * 2022-06-09 2023-03-02 제노테크 주식회사 머신러닝의 드리프트 현상 탐지를 이용한 재훈련 시스템 및 방법
KR102662500B1 (ko) * 2023-09-15 2024-05-03 (주)유알피 추론 응답 시간을 기반으로 한 딥러닝 모델 동적 전환 시스템
KR102662498B1 (ko) * 2023-09-15 2024-05-03 (주)유알피 사용자 질의에 대한 추론 응답 시간에 따라 딥러닝 모델을 동적으로 전환하는 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102504230B1 (ko) * 2022-06-09 2023-03-02 제노테크 주식회사 머신러닝의 드리프트 현상 탐지를 이용한 재훈련 시스템 및 방법
KR102662500B1 (ko) * 2023-09-15 2024-05-03 (주)유알피 추론 응답 시간을 기반으로 한 딥러닝 모델 동적 전환 시스템
KR102662498B1 (ko) * 2023-09-15 2024-05-03 (주)유알피 사용자 질의에 대한 추론 응답 시간에 따라 딥러닝 모델을 동적으로 전환하는 방법

Similar Documents

Publication Publication Date Title
CN110807515B (zh) 模型生成方法和装置
KR20220073088A (ko) 자원이 제약된 모바일 기기에서 동적 데이터 변환에 적응하기 위한 전문화된 경량 신경망 교체 방법 및 장치
KR102641116B1 (ko) 데이터 증강에 기초한 인식 모델 트레이닝 방법 및 장치, 이미지 인식 방법 및 장치
US20210034972A1 (en) Batch normalization layer training method
CN111382868B (zh) 神经网络结构搜索方法和神经网络结构搜索装置
KR20190098107A (ko) 딥 러닝을 위한 신경망 학습 장치 및 그 방법
US11954202B2 (en) Deep learning based detection of malicious shell scripts
KR102293791B1 (ko) 반도체 소자의 시뮬레이션을 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체
US20190228297A1 (en) Artificial Intelligence Modelling Engine
US9436912B1 (en) Symmetric schema instantiation method for use in a case-based reasoning system
US11341358B2 (en) Multiclassification approach for enhancing natural language classifiers
Suresh et al. A sequential learning algorithm for meta-cognitive neuro-fuzzy inference system for classification problems
KR102644593B1 (ko) 지능형 디바이스 개발을 위한 ai 분화 기반의 하드웨어 정보에 최적의 지능형 소프트웨어 개발도구
KR20230103206A (ko) 표현 학습을 이용하여 연속 학습을 수행하는 방법 및 그 학습 장치
WO2019180314A1 (en) Artificial neural networks
KR20200106108A (ko) 딥러닝 기반의 특허정보 워드임베딩 방법 및 그 시스템
US20220129789A1 (en) Code generation for deployment of a machine learning model
Liu et al. Unified framework for construction of rule based classification systems
KR20210111677A (ko) 뉴럴 네트워크의 클리핑 방법, 뉴럴 네트워크의 컨벌루션 계산 방법 및 그 방법을 수행하기 위한 전자 장치
KR102239578B1 (ko) 임베디드 시스템에서의 심층 학습시 신경망의 네트워크 구조 분리 장치 및 방법
WO2023078009A1 (zh) 一种模型权重获取方法以及相关***
KR102574434B1 (ko) 사용자가 요청하는 전문화된 경량 신경망 모델을 실시간으로 생성하는 방법 및 장치
EP3971782A2 (en) Neural network selection
KR20230170752A (ko) 기계 학습 모델들의 하드웨어 인식 점진적 훈련
Mosca et al. Distillation of deep learning ensembles as a regularisation method

Legal Events

Date Code Title Description
E902 Notification of reason for refusal