KR20200084431A - 신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들 - Google Patents

신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들 Download PDF

Info

Publication number
KR20200084431A
KR20200084431A KR1020180169167A KR20180169167A KR20200084431A KR 20200084431 A KR20200084431 A KR 20200084431A KR 1020180169167 A KR1020180169167 A KR 1020180169167A KR 20180169167 A KR20180169167 A KR 20180169167A KR 20200084431 A KR20200084431 A KR 20200084431A
Authority
KR
South Korea
Prior art keywords
neural network
processing
network
result
hyper parameter
Prior art date
Application number
KR1020180169167A
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 KR1020180169167A priority Critical patent/KR20200084431A/ko
Priority to US16/553,466 priority patent/US20200210811A1/en
Publication of KR20200084431A publication Critical patent/KR20200084431A/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/08Learning methods
    • G06N3/0985Hyperparameter optimisation; Meta-learning; Learning-to-learn
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • G06F7/023Comparing digital values adaptive, e.g. self learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • 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
    • G06N3/045Combinations of networks
    • G06N3/0454
    • 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
    • G06N3/048Activation functions
    • 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
    • G06N3/09Supervised learning
    • 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
    • G06N3/092Reinforcement learning
    • 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
    • G06N5/025Extracting rules from data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Image Analysis (AREA)

Abstract

일 실시예에 따른 신경망 기반의 데이터 처리 방법은 입력 데이터를 수신하고, 제2 신경망에 기초하여 입력 데이터를 처리함으로써, 제1 신경망의 속도 및 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 제1 신경망의 하이퍼 파라미터를 결정하고, 하이퍼 파라미터 및 제1 신경망에 기초하여 입력 데이터를 처리한다.

Description

신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들{DATA PROCESSING METHOD BASED ON NEURAL NETWORK, TRAINING METHOD OF NEURAL NETWORK, AND APPARATUSES THEREOF}
아래의 실시예들은 신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들에 관한 것이다.
인간 두뇌의 신경망을 모사하는 인공 신경망들에 의해 다양한 분야의 데이터를 처리할 수 있다. 다만, 심층 학습(Deep Learning) 기반의 신경망은 결과물을 얻어내기 위한 추론(Inference) 과정에서 수행해야 하는 계산이 너무 많아 시간이 많이 걸리고, 실시간성을 보장하기 어렵다. 또한, 영역 제안(Region Proposal) 기반의 신경망은 어떤 데이터가 입력되는지에 무관하게 처음 설정된 관심 영역의 개수를 수정할 수 없다. 따라서, 영상의 난이도에 따라 제안하는 관심 영역의 개수를 조절하거나, 계산 시간 또는 계산 난이도를 적응적인 조절하는 것이 용이하지 않다.
일 측에 따르면, 신경망 기반의 데이터 처리 방법은 입력 데이터를 수신하는 단계; 제2 신경망에 기초하여 상기 입력 데이터를 처리함으로써, 제1 신경망의 속도 및 상기 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계; 및 상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 입력 데이터를 처리하는 단계를 포함한다.
상기 제1 신경망은 미리 설정된 개수의 제안된 영역들을 이용하여 상기 입력 데이터 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하는 영역 제안 네트워크(region proposal network) 및 상기 검출된 적어도 하나의 객체를 분류하는 분류 네트워크(classification network) 중 적어도 하나를 포함할 수 있다.
상기 제2 신경망은 상기 제1 신경망의 처리 결과에 기초한 리워드(reward)에 따라, 상기 하이퍼 파라미터를 가변적으로 설정하는 강화 학습 네트워크(reinforcement learning)를 포함할 수 있다.
상기 하이퍼 파라미터는 상기 제1 신경망의 속도 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수; 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치 중 적어도 하나를 포함할 수 있다.
상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계는 이전 입력 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝된 상기 제2 신경망에 상기 입력 데이터를 인가함으로써 상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계를 포함할 수 있다.
상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 입력 데이터를 처리하는 단계는 상기 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 상기 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경하는 단계; 상기 변경된 영역들의 개수에 따라 상기 입력 데이터 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하는 단계; 상기 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 상기 하이퍼 파라미터에 따른 검출 임계치로 변경하는 단계; 및 상기 변경된 검출 임계치에 따라, 상기 적어도 하나의 객체를 분류하는 단계를 포함할 수 있다.
일 측에 따르면, 신경망 트레이닝 방법은 학습 데이터 및 상기 학습 데이터에 대응하는 레이블(label)을 획득하는 단계; 제2 신경망에 기초하여 상기 학습 데이터를 처리함으로써, 제1 신경망의 속도 및 상기 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계; 상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 학습 데이터를 처리하는 단계; 상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 기초하여, 상기 하이퍼 파라미터를 가변적으로 설정하기 위한 리워드를 결정하는 단계; 및 상기 리워드를 반영하여 상기 제2 신경망을 트레이닝 시키는 단계를 포함한다.
상기 리워드를 결정하는 단계는 상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 기초하여, 상기 처리 결과가 오답인지 또는 정답인지를 판단하는 단계; 및 상기 분류 결과가 오답인지 또는 정답인지의 판단 결과를 기초로, 상기 리워드를 결정하는 단계를 포함할 수 있다.
상기 처리 결과가 오답인지 또는 정답인지를 판단하는 단계는 상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 따른 정답율을 산출하는 단계; 및 상기 정답율이 미리 설정된 검출 임계치보다 큰지 여부를 기초로, 상기 처리 결과가 오답인지 또는 정답인지를 판단하는 단계를 포함할 수 있다.
상기 처리 결과가 오답인지 또는 정답인지의 판단 결과를 기초로, 상기 리워드를 결정하는 단계는 상기 처리 결과가 오답으로 판단된 경우, 상기 하이퍼 파라미터 중 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 증가시키고, 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치를 감소시키도록 상기 리워드를 결정하는 단계를 포함할 수 있다.
상기 처리 결과가 오답인지 또는 정답인지의 판단 결과를 기초로, 상기 리워드를 결정하는 단계는 상기 처리 결과가 정답으로 판단된 경우, 상기 하이퍼 파라미터 중 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 감소시키고, 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치를 증가시키도록 상기 리워드를 결정하는 단계를 포함할 수 있다.
상기 하이퍼 파라미터는 상기 제1 신경망의 속도 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수; 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치 중 적어도 하나를 포함할 수 있다.
상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계는 이전 학습 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝 제2 신경망에 상기 학습 데이터를 인가함으로써 상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계를 포함할 수 있다.
상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 입력 데이터를 처리하는 단계는 상기 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 상기 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경하는 단계; 상기 변경된 영역들의 개수에 따라 상기 학습 영상 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하는 단계; 상기 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 상기 하이퍼 파라미터에 따른 검출 임계치로 변경하는 단계; 및 상기 변경된 검출 임계치에 따라, 상기 적어도 하나의 객체를 분류하는 단계를 포함할 수 있다.
일 측에 따르면, 신경망 기반의 데이터 처리 장치는 입력 데이터를 수신하는 통신 인터페이스; 및 제2 신경망에 기초하여 상기 입력 데이터를 처리함으로써, 제1 신경망의 속도 및 상기 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 상기 제1 신경망의 하이퍼 파라미터를 결정하고, 상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 입력 데이터를 처리하는 프로세서를 포함한다.
상기 제1 신경망은 미리 설정된 개수의 제안된 영역들을 이용하여 상기 입력 데이터 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하는 영역 제안 네트워크 및 상기 검출된 적어도 하나의 객체를 분류하는 분류 네트워크 중 적어도 하나를 포함할 수 있다.
상기 제2 신경망은 상기 제1 신경망의 처리 결과에 기초한 리워드에 따라, 상기 하이퍼 파라미터를 가변적으로 설정하는 강화 학습 네트워크를 포함할 수 있다.
상기 하이퍼 파라미터는 상기 제1 신경망의 속도 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수; 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치 중 적어도 하나를 포함할 수 있다.
상기 프로세서는 이전 입력 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝된 상기 제2 신경망에 상기 입력 데이터를 인가함으로써 상기 제1 신경망의 하이퍼 파라미터를 결정할 수 있다.
상기 프로세서는 상기 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 상기 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경하고, 상기 변경된 영역들의 개수에 따라 상기 입력 데이터 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하고, 상기 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 상기 하이퍼 파라미터에 따른 검출 임계치로 변경하며, 상기 변경된 검출 임계치에 따라, 상기 적어도 하나의 객체를 분류할 수 있다.
일 측에 따르면, 신경망 트레이닝 장치는 학습 데이터 및 상기 학습 데이터에 대응하는 레이블을 획득하는 통신 인터페이스; 및 제2 신경망에 기초하여 상기 학습 데이터를 처리함으로써, 제1 신경망의 속도 및 상기 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 상기 제1 신경망의 하이퍼 파라미터를 결정하고, 상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 학습 데이터를 처리하고, 상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 기초하여, 상기 하이퍼 파라미터를 가변적으로 설정하기 위한 리워드를 결정하며, 상기 리워드를 반영하여 상기 제2 신경망을 트레이닝 시키는 프로세서를 포함한다.
상기 프로세서는 상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 기초하여, 상기 처리 결과가 오답인지 또는 정답인지를 판단하고, 상기 분류 결과가 오답인지 또는 정답인지의 판단 결과를 기초로, 상기 리워드를 결정할 수 있다.
상기 프로세서는 상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 따른 정답율을 산출하고, 상기 정답율이 미리 설정된 검출 임계치보다 큰지 여부를 기초로, 상기 처리 결과가 오답인지 또는 정답인지를 판단할 수 있다.
상기 프로세서는 상기 처리 결과가 오답으로 판단된 경우, 상기 하이퍼 파라미터 중 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 증가시키고, 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치를 감소시키도록 상기 리워드를 결정할 수 있다.
상기 프로세서는 상기 처리 결과가 정답으로 판단된 경우, 상기 하이퍼 파라미터 중 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 감소시키고, 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치를 증가시키도록 상기 리워드를 결정할 수 있다.
상기 하이퍼 파라미터는 상기 제1 신경망의 속도 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수; 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치 중 적어도 하나를 포함할 수 있다.
상기 프로세서는 이전 학습 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝 제2 신경망에 상기 학습 데이터를 인가함으로써 상기 제1 신경망의 하이퍼 파라미터를 결정할 수 있다.
상기 프로세서는 상기 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 상기 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경하고, 상기 변경된 영역들의 개수에 따라 상기 학습 영상 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하고, 상기 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 상기 하이퍼 파라미터에 따른 검출 임계치로 변경하며, 상기 변경된 검출 임계치에 따라, 상기 적어도 하나의 객체를 분류할 수 있다.
도 1은 일 실시예에 따른 신경망 기반의 데이터 처리 장치의 구조 및 동작을 설명하기 위한 도면.
도 2는 일 실시예에 따른 제1 신경망의 구조 및 동작을 설명하기 위한 도면.
도 3은 일 실시예에 따른 신경망 기반의 데이터 처리 방법을 나타낸 흐름도.
도 4는 일 실시예에 따른 신경망 트레이닝 장치의 구조 및 동작을 설명하기 위한 도면.
도 5는 일 실시예에 따른 신경망 트레이닝 방법을 나타낸 흐름도.
도 6은 일 실시예에 따른 리워드를 결정하는 방법을 설명하기 위한 도면.
도 7은 일 실시예에 따른 신경망 기반의 데이터 처리 장치의 블록도.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일 실시예에 따른 신경망 기반의 데이터 처리 장치의 구조 및 동작을 설명하기 위한 도면이다. 도 1을 참조하면, 일 실시예에 따른 제1 신경망(110) 및 제2 신경망(130)을 포함하는 데이터 처리 장치(100)가 도시된다.
입력 데이터(101)는 제1 신경망(110) 및 제2 신경망(130) 모두에 입력될 수 있다. 입력 데이터(101)는 예를 들어, 영상 데이터, 음성 데이터, 및 텍스트 데이터 등을 포함할 수 있으며, 반드시 이에 한정되는 것은 아니다.
제1 신경망(110)은 예를 들어, 영역 제안 네트워크(region proposal network; RPN) 및 분류 네트워크(classification network)를 포함할 수 있다. 영역 제안 네트워크는 미리 설정된 개수의 제안된 영역들(proposed regions)을 이용하여 입력 데이터(101) 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출할 수 있다. 또한, 분류 네트워크는 영역 제안 네트워크에 의해 검출된 적어도 하나의 객체를 검출 및/또는 분류할 수 있다. 분류 네트워크는 예를 들어, 검출기(detector)일 수도 있고, 분류기(classifier)일 수도 있다. 제1 신경망(110)의 구조 및 동작에 대하여는 아래의 도 2를 참조하여 구체적으로 설명한다.
제2 신경망(130)은 제1 신경망(110)의 처리 결과(105)에 기초한 리워드(reward)에 따라, 하이퍼 파라미터(103)를 가변적으로 설정할 수 있다. 제2 신경망(130)은 예를 들어, 강화 학습 네트워크(reinforcement learning)를 포함할 수 있다. 강화 학습 네트워크는 지도 학습(supervised learning)과 달리 주어진 입력에 대한 출력, 즉 정답(ground truth)이 주어지지 않는다. 대신 강화 학습은 일련의 행동의 결과에 대해 리워드(reward)가 주어지게 되며, 이러한 리워드를 이용해 신경망을 트레이닝할 수 있다. 강화 학습 네트워크는 예를 들어, 로봇이나 게임의 플레이어 등과 같이 주어진 입력에 대응하는 행동을 취하는 시스템에 대해 적용할 수 있다.
입력 데이터(101)는 제2 신경망(130)이 전송한 하이퍼 파라미터(103)에 따라 제1 신경망(110)에서 처리됨으로써 데이터 처리 장치(100)의 처리 결과(105)로서 출력될 수 있다. 하이퍼 파라미터(103)는 예를 들어, 제1 신경망(110)의 속도 및 제1 신경망(110)의 정확도 중 적어도 하나에 영향을 미치는 제1 신경망(110)의 하이퍼 파라미터일 수 있다. 하이퍼 파라미터(103)는 예를 들어, 제1 신경망(110)의 속도 및 제1 신경망(110)의 정확도에 영향을 미치는 제1 신경망(110)의 영역 제안 네트워크를 위한 제안된 영역들의 개수 및 제1 신경망(110)의 정확도에 영향을 미치는 제1 신경망(110)의 분류 네트워크를 위한 검출 임계치 등을 포함할 수 있다. 실시예에 따라서, 하이퍼 파라미터(103)는 제1 신경망(110)에서 제안된 영역들의 크기, 및 후보 영역들의 종횡비 등을 더 포함할 수도 있다.
이때, 제2 신경망(130)은 입력 데이터(101)의 이전 입력 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝된 것일 수 있다. 예를 들어, 입력 데이터(101)가 t 시점에 데이터 처리 장치(100)에 입력된 데이터라면, 이전 입력 데이터는 t-1 시점에 데이터 처리 장치(100)에 입력된 데이터일 수 있다.
입력 데이터(101)가 인가된 경우, 제2 신경망(130)은 이전 입력 데이터에 의한 학습 결과인 리워드에 따라 하이퍼 파라미터(103)를 결정하여 제1 신경망(110)에게 전달할 수 있다.
제1 신경망(110)은 제1 신경망(110)의 영역 제안 네트워크를 위해 미리 설정된 제안된 영역들의 개수(예를 들어, 3개)를 하이퍼 파라미터(103)에 따라 제안된 영역들의 개수(예를 들어, 5개 또는 2개)로 변경할 수 있다. 제1 신경망(110)은 변경된 영역들의 개수에 따라 입력 데이터(101) 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출할 수 있다.
또한, 제1 신경망(110)은 제1 신경망(110)의 분류 네트워크에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치(예를 들어, 0.7)를 하이퍼 파라미터(103)에 따른 검출 임계치(예를 들어, 0.65 또는 0.8)로 변경할 수 있다. 제1 신경망(110)은 변경된 검출 임계치에 따라, 복수의 영역들로부터 적어도 하나의 객체를 분류할 수 있다.
예를 들어, 영역 제안 네트워크에서 제안된 영역들의 개수를 증가시킬 경우, 검색하고자 하는 객체를 보다 정확하게 검출할 수 있으나, 증가된 후보 영역들의 개수에 의해 처리 부하 및 처리 속도가 늘어날 수 있다. 또한, 검출 임계치를 높일 경우, 제1 신경망(110)의 검출 정확도를 높일 수 있으나. 검출 속도는 낮아질 수 있다.
일 실시예에서는 제2 신경망(130)에 의해 하이퍼 파라미터(103)를 가변적으로 설정하도록 함으로써 제1 신경망(110)의 수행 시간과 성능을 모두 향상시킬 수 있다. 보다 구체적으로, 일 실시예에 따른 데이터 처리 장치(100)는 제2 신경망(130)을 통해 제공되는 하이퍼 파라미터(103)에 의해 제안된 영역들의 개수를 최소화하여 제1 신경망(110)의 처리 부하 및 처리 속도를 향상시키는 한편, 검출된 객체에 대한 검출 임계치를 최적화 함으로써 정답율, 다시 말해 제1 신경망(110)의 정확도를 향상시킬 수 있다.
도 2는 일 실시예에 따른 제1 신경망의 구조 및 동작을 설명하기 위한 도면이다. 도 2를 참조하면, 일 실시예에 따른 제1 신경망(110)은 입력 영상이 수신되면(210), 입력 영상으로부터 미리 설정된 개수의 영역들(또는 제안된 영역들(proposed areas))을 추출할 수 있다(220). 이때, 제1 신경망(110)은 예를 들어, 컨볼루셔널 레이어들(Convolution layers)을 이용하여 영역들로부터 특징을 추출하여 특징 맵(feature map)을 생성할 수 있다(230). 단계(210) 내지 단계(230)의 과정은 전술한 영역 제안 네트워크를 통해 수행될 수 있다.
이후, 제1 신경망(110)은 특징 맵을 기반으로 분류(classification)(240) 및 회귀(regression)(250)를 수행할 수 있다. 제1 신경망(110)은 제안된 영역들을 잘라 내어, 해당 영역들의 클래스(class)를 구분하는 분류(240)를 수행할 수 있다. 제1 신경망(110)은 분류(240)를 수행할 때, 각 제안된 영역들이 특정 클래스가 맞는지에 대한 신뢰도 스코어(confidence score)를 계산하고, 신뢰도 스코어가 미리 설정된 임계치를 초과하면 특정 클래스로 판독할 수 있다. 제1 신경망(110)은 해당 영역들의 경계를 구분하는 바운딩 박스(bounding box)의 위치를 정교하게 조정하는 바운딩 박스 리그레서(Bounding Box Regressor)에 의해 회귀를 수행할 수 있다(250). 단계(240) 내지 단계(250)의 과정은 전술한 분류 네트워크에 의해 수행될 수 있다.
도 3은 일 실시예에 따른 신경망 기반의 데이터 처리 방법을 나타낸 흐름도이다. 도 3을 참조하면, 일 실시예에 따른 데이터 처리 장치는 입력 데이터를 수신한다(310). 입력 데이터는 예를 들어, 영상 데이터, 음성 데이터, 텍스트 데이터 등일 수 있다.
데이터 처리 장치는 제2 신경망에 기초하여 입력 데이터를 처리함으로써, 제1 신경망의 속도 및 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 제1 신경망의 하이퍼 파라미터를 결정한다(320). 데이터 처리 장치는 예를 들어, 이전 입력 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝된 제2 신경망에 입력 데이터를 인가함으로써 제1 신경망의 하이퍼 파라미터를 결정할 수 있다.
데이터 처리 장치는 하이퍼 파라미터 및 제1 신경망에 기초하여 입력 데이터를 처리한다(330). 데이터 처리 장치는 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경할 수 있다. 데이터 처리 장치는 변경된 영역들의 개수에 따라 입력 데이터 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출할 수 있다. 데이터 처리 장치는 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 하이퍼 파라미터에 따른 검출 임계치로 변경할 수 있다.
데이터 처리 장치는 변경된 검출 임계치에 따라, 적어도 하나의 객체를 분류할 수 있다.
도 4는 일 실시예에 따른 신경망 트레이닝 장치의 구조 및 동작을 설명하기 위한 도면이다. 도 4를 참조하면, 일 실시예에 따른 신경망 트레이닝 장치(400)는 제1 신경망(410), 비교기(430), 리워드 결정기(450) 및 제2 신경망(470)을 포함할 수 있다.
학습 데이터(401)가 입력되면, 제1 신경망(410)은 영역 제안과 분류를 수행하여 학습 데이터(401)를 처리하고, 처리 결과(406)를 출력할 수 있다. 학습 데이터(401)는 예를 들어, 순차적 영상 프레임들과 같이 복수 개일 수도 있고, 또는 단수 개일 수도 있다. 제1 신경망(410)은 제2 신경망(470)에 의해 결정된 하이퍼 파라미터(403)에 의해 학습 데이터(401)를 처리하고, 처리 결과(406)를 출력할 수 있다. 이때, 하이퍼 파라미터(403)는 이전 학습 데이터에 대응하여 결정된 리워드(409)를 반영하여 트레이닝된 제2 신경망(470)에 의해 결정된 것일 수 있다.
처리 결과(406)는 예를 들어, 학습 데이터(401)에 포함된 객체를 검출한 결과, 보다 구체적으로 학습 데이터(401)에 포함된 객체들의 개수, 해당 객체들의 분류된 클래스, 해당 객체들의 위치 등을 포함할 수 있다.
비교기(430)는 제1 신경망(410)의 처리 결과(406) 및 학습 데이터(401)에 대응하는 레이블(405)을 수신할 수 있다. 학습 데이터(401)에 대응하는 레이블(405)의 개수는 학습 데이터(401)의 개수에 대응할 수 있으며, 단수 개일 수도 있고, 복수 개일 수도 있다.
비교기(430)는 레이블(405)과 제1 신경망(410)의 처리 결과(406)를 비교함으로써 제1 신경망(410)의 처리 결과(406)가 정답인지 또는 오답인지에 대한 판단 결과(407)를 출력할 수 있다. 비교기(430)는 비교 결과(407)로서 예를 들어, 정답 또는 오답을 출력할 수도 있고, 또는 제1 논리 값(예를 들어, '0') 또는 제2 논리 값(예를 들어, '1')을 출력할 수도 있다.
비교기(430)가 출력한 비교 결과(407)는 리워드 결정기(450)로 입력될 수 있다.
리워드 결정기(450)는 비교 결과(407)에 따라 현재 반복(iteration) 횟수, 또는 현재 트레이닝 횟수에 대응하는 리워드(409)를 결정할 수 있다. 이때, 리워드(409)는 제2 신경망(470)이 제1 신경망(410)의 하이퍼 파라미터(403)를 가변적으로 설정하도록 하기 위한 것이다.
예를 들어, 학습 데이터(401)에 대응하는 비교기(430)의 비교 결과(407)가 정답인 경우, 리워드 결정기(450)는 학습 데이터(401)를 처리 난이도가 낮은 데이터 또는 객체를 검출하기 쉬운 데이터라고 판단하여 리워드(409)를 결정할 수 있다. 처리 난이도가 낮은 데이터의 처리에 대응하여, 리워드 결정기(450)는 제1 신경망에 대응하여 미리 정해진 제안된 영역들의 개수를 감소시키고, 검출 임계치를 증가시키도록 리워드(409)를 결정할 수 있다. 리워드 결정기(450)는 미리 정해진 제안된 영역들의 개수를 감소시켜 제1 신경망의 수행 속도를 높이고, 검출 임계치를 증가시켜 정확도를 향상시키도록 리워드(409)를 결정할 수 있다.
또는 학습 데이터(401)에 대응하는 비교기(430)의 비교 결과(407)가 오답인 경우, 리워드 결정기(450)는 학습 데이터(401)를 처리 난이도가 높은 데이터 또는 객체를 검출하기 어려운 데이터라고 판단하여 리워드(409)를 결정할 수 있다. 처리 난이도가 높은 데이터의 처리에 대응하여, 리워드 결정기(450)는 제1 신경망에 대응하여 미리 정해진 제안된 영역들의 개수를 증가시키고, 검출 임계치를 감소시키도록 리워드(409)를 결정할 수 있다. 리워드 결정기(450)는 미리 정해진 제안된 영역들의 개수를 증가시켜 제1 신경망의 검출 정확도를 향상시키고, 검출 임계치를 감소시켜 검출 난이도를 낮추도록 리워드(409)를 결정할 수 있다.
신경망 트레이닝 장치(400)는 리워드(409)를 반영하여 제2 신경망(470)을 트레이닝시킬 수 있다.
도 5는 일 실시예에 따른 신경망 트레이닝 방법을 나타낸 흐름도이다. 도 5를 참조하면, 일 실시예에 따른 트레이닝 장치는 학습 데이터 및 학습 데이터에 대응하는 레이블(label)을 획득한다(510).
트레이닝 장치는 제2 신경망에 기초하여 학습 데이터를 처리함으로써, 제1 신경망의 속도 및 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 제1 신경망의 하이퍼 파라미터를 결정한다(520). 트레이닝 장치는 이전 학습 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝 제2 신경망에 학습 데이터를 인가함으로써 제1 신경망의 하이퍼 파라미터를 결정할 수 있다.
트레이닝 장치는 하이퍼 파라미터 및 제1 신경망에 기초하여 학습 데이터를 처리한다(530). 단계(530)에서, 트레이닝 장치는 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경할 수 있다. 트레이닝 장치는 변경된 영역들의 개수에 따라 학습 영상 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출할 수 있다. 트레이닝 장치는 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 하이퍼 파라미터에 따른 검출 임계치로 변경할 수 있다. 트레이닝 장치는 변경된 검출 임계치에 따라, 적어도 하나의 객체를 분류할 수 있다.
트레이닝 장치는 학습 데이터의 처리 결과와 레이블 간의 비교 결과에 기초하여, 하이퍼 파라미터를 가변적으로 설정하기 위한 리워드를 결정한다(540). 트레이닝 장치는 예를 들어, 학습 데이터의 처리 결과와 레이블 간의 비교 결과에 기초하여, 처리 결과가 오답인지 또는 정답인지를 판단할 수 있다. 트레이닝 장치는 학습 데이터의 처리 결과와 레이블 간의 비교 결과에 따른 정답율을 산출할 수 있다. 트레이닝 장치는 정답율이 미리 설정된 검출 임계치보다 큰지 여부를 기초로, 처리 결과가 오답인지 또는 정답인지를 판단할 수 있다.
트레이닝 장치는 분류 결과가 오답인지 또는 정답인지의 판단 결과를 기초로, 리워드를 결정할 수 있다. 예를 들어, 처리 결과가 오답으로 판단된 경우, 트레이닝 장치는 하이퍼 파라미터 중 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 증가시키고, 제1 신경망의 분류 네트워크를 위한 검출 임계치를 감소시키도록 리워드를 결정할 수 있다. 또는 처리 결과가 정답으로 판단된 경우, 트레이닝 장치는 하이퍼 파라미터 중 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 감소시키고, 제1 신경망의 분류 네트워크를 위한 검출 임계치를 증가시키도록 리워드를 결정할 수 있다.
트레이닝 장치는 리워드를 반영하여 제2 신경망을 트레이닝 시킨다(550).
도 6은 일 실시예에 따른 리워드를 결정하는 방법을 설명하기 위한 도면이다. 도 6의 (a)를 참조하면, 일 실시예에 따른 신경망 트레이닝 장치에서 학습 데이터(610)의 처리 결과와 학습 데이터(610)에 대응하는 레이블 간의 비교 결과가 정답(Correct Answer)(620)인 경우에 리워드를 결정하는 방법이 도시된다.
비교 결과가 정답(620)인 경우, 신경망 트레이닝 장치는 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수(# of Proposal)를 낮춰 제1 신경망의 수행 속도를 높이고, 제1 신경망의 분류 네트워크를 위한 검출 임계치(Threshold)를 높여 정확도를 향상시키도록 리워드를 결정할 수 있다.
도 6의 (b)를 참조하면, 일 실시예에 따른 신경망 트레이닝 장치에서 학습 데이터(650)의 처리 결과와 학습 데이터(650)에 대응하는 레이블 간의 비교 결과가 오답(Wrong Answer)(660)인 경우에 리워드를 결정하는 방법이 도시된다.
비교 결과가 오답(660)인 경우, 신경망 트레이닝 장치는 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수(# of Proposal)를 높여 제1 신경망의 검출 정확도를 향상시키고, 제1 신경망의 분류 네트워크를 위한 검출 임계치를 낮춰 검출 난이도를 감소시키도록 리워드를 결정할 수 있다.
도 7은 일 실시예에 따른 신경망 기반의 데이터 처리 장치의 블록도이다. 도 7을 참조하면, 일 실시예에 따른 데이터 처리 장치(700)는 프로세서(710), 통신 인터페이스(730) 및 메모리(750)를 포함한다. 프로세서(710), 통신 인터페이스(730) 및 메모리(750)는 통신 버스(705)를 통해 서로 통신할 수 있다.
프로세서(710)는 제2 신경망에 기초하여 입력 데이터를 처리함으로써, 제1 신경망의 속도 및 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 제1 신경망의 하이퍼 파라미터를 결정한다. 프로세서(710)는 하이퍼 파라미터 및 제1 신경망에 기초하여 입력 데이터를 처리한다.
통신 인터페이스(730)는 입력 데이터를 수신한다.
또한, 프로세서(710)는 도 1 내지 도 6을 통해 전술한 적어도 하나의 방법 또는 적어도 하나의 방법에 대응되는 알고리즘을 수행할 수 있다. 프로세서(710)는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.
프로세서(710)는 프로그램을 실행하고, 데이터 처리 장치(700)를 제어할 수 있다. 프로세서(710)에 의하여 실행되는 프로그램 코드는 메모리(750)에 저장될 수 있다.
메모리(750)는 프로세서(710)에 의해 결정된 제1 신경망의 하이퍼 파라미터를 저장할 수 있다. 또한, 메모리(750)는 상술한 프로세서(710)에서의 처리 과정에서 생성되는 다양한 정보들을 저장할 수 있다. 이 밖에도, 메모리(750)는 각종 데이터와 프로그램 등을 저장할 수 있다. 메모리(750)는 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(750)는 하드 디스크 등과 같은 대용량 저장 매체를 구비하여 각종 데이터를 저장할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.

Claims (29)

  1. 입력 데이터를 수신하는 단계;
    제2 신경망에 기초하여 상기 입력 데이터를 처리함으로써, 제1 신경망의 속도 및 상기 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계; 및
    상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 입력 데이터를 처리하는 단계
    를 포함하는, 신경망 기반의 데이터 처리 방법.
  2. 제1항에 있어서,
    상기 제1 신경망은
    미리 설정된 개수의 제안된 영역들을 이용하여 상기 입력 데이터 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하는 영역 제안 네트워크(region proposal network) 및 상기 검출된 적어도 하나의 객체를 분류하는 분류 네트워크(classification network) 중 적어도 하나를 포함하는, 신경망 기반의 데이터 처리 방법.
  3. 제1항에 있어서,
    상기 제2 신경망은
    상기 제1 신경망의 처리 결과에 기초한 리워드(reward)에 따라, 상기 하이퍼 파라미터를 가변적으로 설정하는 강화 학습 네트워크(reinforcement learning)를 포함하는, 신경망 기반의 데이터 처리 방법.
  4. 제1항에 있어서,
    상기 하이퍼 파라미터는
    상기 제1 신경망의 속도 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수; 및
    상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치
    중 적어도 하나를 포함하는, 신경망 기반의 데이터 처리 방법.
  5. 제1항에 있어서,
    상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계는
    이전 입력 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝된 상기 제2 신경망에 상기 입력 데이터를 인가함으로써 상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계
    를 포함하는, 신경망 기반의 데이터 처리 방법.
  6. 제1항에 있어서,
    상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 입력 데이터를 처리하는 단계는
    상기 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 상기 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경하는 단계;
    상기 변경된 영역들의 개수에 따라 상기 입력 데이터 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하는 단계;
    상기 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 상기 하이퍼 파라미터에 따른 검출 임계치로 변경하는 단계; 및
    상기 변경된 검출 임계치에 따라, 상기 적어도 하나의 객체를 분류하는 단계
    를 포함하는, 신경망 기반의 데이터 처리 방법.
  7. 학습 데이터 및 상기 학습 데이터에 대응하는 레이블(label)을 획득하는 단계;
    제2 신경망에 기초하여 상기 학습 데이터를 처리함으로써, 제1 신경망의 속도 및 상기 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계;
    상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 학습 데이터를 처리하는 단계;
    상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 기초하여, 상기 하이퍼 파라미터를 가변적으로 설정하기 위한 리워드를 결정하는 단계; 및
    상기 리워드를 반영하여 상기 제2 신경망을 트레이닝 시키는 단계
    를 포함하는, 신경망 트레이닝 방법.
  8. 제7항에 있어서,
    상기 리워드를 결정하는 단계는
    상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 기초하여, 상기 처리 결과가 오답인지 또는 정답인지를 판단하는 단계; 및
    상기 분류 결과가 오답인지 또는 정답인지의 판단 결과를 기초로, 상기 리워드를 결정하는 단계
    를 포함하는, 신경망 트레이닝 방법.
  9. 제8항에 있어서,
    상기 처리 결과가 오답인지 또는 정답인지를 판단하는 단계는
    상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 따른 정답율을 산출하는 단계; 및
    상기 정답율이 미리 설정된 검출 임계치보다 큰지 여부를 기초로, 상기 처리 결과가 오답인지 또는 정답인지를 판단하는 단계
    를 포함하는, 신경망 트레이닝 방법.
  10. 제8항에 있어서,
    상기 처리 결과가 오답인지 또는 정답인지의 판단 결과를 기초로, 상기 리워드를 결정하는 단계는
    상기 처리 결과가 오답으로 판단된 경우, 상기 하이퍼 파라미터 중 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 증가시키고, 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치를 감소시키도록 상기 리워드를 결정하는 단계
    를 포함하는, 신경망 트레이닝 방법.
  11. 제8항에 있어서,
    상기 처리 결과가 오답인지 또는 정답인지의 판단 결과를 기초로, 상기 리워드를 결정하는 단계는
    상기 처리 결과가 정답으로 판단된 경우, 상기 하이퍼 파라미터 중 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 감소시키고, 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치를 증가시키도록 상기 리워드를 결정하는 단계
    를 포함하는, 신경망 트레이닝 방법.
  12. 제7항에 있어서,
    상기 하이퍼 파라미터는
    상기 제1 신경망의 속도 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수; 및
    상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치
    중 적어도 하나를 포함하는, 신경망 트레이닝 방법.
  13. 제7항에 있어서,
    상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계는
    이전 학습 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝 제2 신경망에 상기 학습 데이터를 인가함으로써 상기 제1 신경망의 하이퍼 파라미터를 결정하는 단계
    를 포함하는, 신경망 트레이닝 방법.
  14. 제7항에 있어서,
    상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 입력 데이터를 처리하는 단계는
    상기 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 상기 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경하는 단계;
    상기 변경된 영역들의 개수에 따라 상기 학습 영상 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하는 단계;
    상기 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 상기 하이퍼 파라미터에 따른 검출 임계치로 변경하는 단계; 및
    상기 변경된 검출 임계치에 따라, 상기 적어도 하나의 객체를 분류하는 단계
    를 포함하는, 신경망 트레이닝 방법.
  15. 하드웨어와 결합되어 제1항 내지 제14항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램.
  16. 입력 데이터를 수신하는 통신 인터페이스; 및
    제2 신경망에 기초하여 상기 입력 데이터를 처리함으로써, 제1 신경망의 속도 및 상기 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 상기 제1 신경망의 하이퍼 파라미터를 결정하고, 상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 입력 데이터를 처리하는 프로세서
    를 포함하는, 신경망 기반의 데이터 처리 장치.
  17. 제16항에 있어서,
    상기 제1 신경망은
    미리 설정된 개수의 제안된 영역들을 이용하여 상기 입력 데이터 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하는 영역 제안 네트워크 및 상기 검출된 적어도 하나의 객체를 분류하는 분류 네트워크 중 적어도 하나를 포함하는, 신경망 기반의 데이터 처리 장치.
  18. 제16항에 있어서,
    상기 제2 신경망은
    상기 제1 신경망의 처리 결과에 기초한 리워드에 따라, 상기 하이퍼 파라미터를 가변적으로 설정하는 강화 학습 네트워크를 포함하는, 신경망 기반의 데이터 처리 장치.
  19. 제16항에 있어서,
    상기 하이퍼 파라미터는
    상기 제1 신경망의 속도 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수; 및
    상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치
    중 적어도 하나를 포함하는, 신경망 기반의 데이터 처리 장치.
  20. 제16항에 있어서,
    상기 프로세서는
    이전 입력 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝된 상기 제2 신경망에 상기 입력 데이터를 인가함으로써 상기 제1 신경망의 하이퍼 파라미터를 결정하는, 신경망 기반의 데이터 처리 장치.
  21. 제16항에 있어서,
    상기 프로세서는
    상기 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 상기 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경하고, 상기 변경된 영역들의 개수에 따라 상기 입력 데이터 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하고, 상기 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 상기 하이퍼 파라미터에 따른 검출 임계치로 변경하며, 상기 변경된 검출 임계치에 따라, 상기 적어도 하나의 객체를 분류하는, 신경망 기반의 데이터 처리 장치.
  22. 학습 데이터 및 상기 학습 데이터에 대응하는 레이블을 획득하는 통신 인터페이스; 및
    제2 신경망에 기초하여 상기 학습 데이터를 처리함으로써, 제1 신경망의 속도 및 상기 제1 신경망의 정확도 중 적어도 하나에 영향을 미치는 상기 제1 신경망의 하이퍼 파라미터를 결정하고, 상기 하이퍼 파라미터 및 상기 제1 신경망에 기초하여 상기 학습 데이터를 처리하고, 상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 기초하여, 상기 하이퍼 파라미터를 가변적으로 설정하기 위한 리워드를 결정하며, 상기 리워드를 반영하여 상기 제2 신경망을 트레이닝 시키는 프로세서
    를 포함하는, 신경망 트레이닝 장치.
  23. 제22항에 있어서,
    상기 프로세서는
    상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 기초하여, 상기 처리 결과가 오답인지 또는 정답인지를 판단하고, 상기 분류 결과가 오답인지 또는 정답인지의 판단 결과를 기초로, 상기 리워드를 결정하는, 신경망 트레이닝 장치.
  24. 제23항에 있어서,
    상기 프로세서는
    상기 학습 데이터의 처리 결과와 상기 레이블 간의 비교 결과에 따른 정답율을 산출하고, 상기 정답율이 미리 설정된 검출 임계치보다 큰지 여부를 기초로, 상기 처리 결과가 오답인지 또는 정답인지를 판단하는, 신경망 트레이닝 장치.
  25. 제23항에 있어서,
    상기 프로세서는
    상기 처리 결과가 오답으로 판단된 경우, 상기 하이퍼 파라미터 중 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 증가시키고, 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치를 감소시키도록 상기 리워드를 결정하는, 신경망 트레이닝 장치.
  26. 제23항에 있어서,
    상기 프로세서는
    상기 처리 결과가 정답으로 판단된 경우, 상기 하이퍼 파라미터 중 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수를 감소시키고, 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치를 증가시키도록 상기 리워드를 결정하는, 신경망 트레이닝 장치.
  27. 제22항에 있어서,
    상기 하이퍼 파라미터는
    상기 제1 신경망의 속도 및 상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 영역 제안 네트워크를 위한 제안된 영역들의 개수; 및
    상기 제1 신경망의 정확도에 영향을 미치는 상기 제1 신경망의 분류 네트워크를 위한 검출 임계치
    중 적어도 하나를 포함하는, 신경망 트레이닝 장치.
  28. 제22항에 있어서,
    상기 프로세서는
    이전 학습 데이터에 대응하여 결정된 리워드를 반영하여 트레이닝 제2 신경망에 상기 학습 데이터를 인가함으로써 상기 제1 신경망의 하이퍼 파라미터를 결정하는, 신경망 트레이닝 장치.
  29. 제22항에 있어서,
    상기 프로세서는
    상기 제1 신경망에서 미리 설정된 제안된 영역들의 개수를 상기 하이퍼 파라미터에 따라 제안된 영역들의 개수로 변경하고, 상기 변경된 영역들의 개수에 따라 상기 학습 영상 내에 포함된 적어도 하나의 객체에 대응하는 복수의 영역들을 검출하고, 상기 제1 신경망에서 검출된 적어도 하나의 객체를 분류하기 위해 설정된 검출 임계치를 상기 하이퍼 파라미터에 따른 검출 임계치로 변경하며, 상기 변경된 검출 임계치에 따라, 상기 적어도 하나의 객체를 분류하는, 신경망 트레이닝 장치.
KR1020180169167A 2018-12-26 2018-12-26 신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들 KR20200084431A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180169167A KR20200084431A (ko) 2018-12-26 2018-12-26 신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들
US16/553,466 US20200210811A1 (en) 2018-12-26 2019-08-28 Data processing method based on neural network, training method of neural network, and apparatuses thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180169167A KR20200084431A (ko) 2018-12-26 2018-12-26 신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들

Publications (1)

Publication Number Publication Date
KR20200084431A true KR20200084431A (ko) 2020-07-13

Family

ID=71123136

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180169167A KR20200084431A (ko) 2018-12-26 2018-12-26 신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들

Country Status (2)

Country Link
US (1) US20200210811A1 (ko)
KR (1) KR20200084431A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220026110A (ko) * 2020-08-25 2022-03-04 경희대학교 산학협력단 자가 발전원을 갖는 네트워크 내에서의 에너지 관리 방법, 이를 수행하기 위한 장치 및 시스템

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11829871B2 (en) * 2019-08-20 2023-11-28 Lg Electronics Inc. Validating performance of a neural network trained using labeled training data
US20220067588A1 (en) * 2019-10-15 2022-03-03 Siemens Aktiengesellschaft Transforming a trained artificial intelligence model into a trustworthy artificial intelligence model
WO2022088064A1 (zh) * 2020-10-30 2022-05-05 威盛电子股份有限公司 神经网络模型的超参数设定方法及建立平台

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3192012A4 (en) * 2014-09-12 2018-01-17 Microsoft Technology Licensing, LLC Learning student dnn via output distribution
US10002313B2 (en) * 2015-12-15 2018-06-19 Sighthound, Inc. Deeply learned convolutional neural networks (CNNS) for object localization and classification
US10061984B2 (en) * 2016-10-24 2018-08-28 Accenture Global Solutions Limited Processing an image to identify a metric associated with the image and/or to determine a value for the metric
US11062207B2 (en) * 2016-11-04 2021-07-13 Raytheon Technologies Corporation Control systems using deep reinforcement learning
US10140709B2 (en) * 2017-02-27 2018-11-27 International Business Machines Corporation Automatic detection and semantic description of lesions using a convolutional neural network
JP6832783B2 (ja) * 2017-04-20 2021-02-24 株式会社日立製作所 データ分析装置、データ分析方法、およびデータ分析プログラム
CN107247989B (zh) * 2017-06-15 2020-11-24 北京图森智途科技有限公司 一种实时的计算机视觉处理方法及装置
US10019654B1 (en) * 2017-06-28 2018-07-10 Accenture Global Solutions Limited Image object recognition
WO2019084308A1 (en) * 2017-10-27 2019-05-02 Sony Interactive Entertainment Inc. DEEP REINFORCING LEARNING FRAMEWORK FOR CHARACTERIZING VIDEO CONTENT
US20190138901A1 (en) * 2017-11-06 2019-05-09 The Royal Institution For The Advancement Of Learning/Mcgill University Techniques for designing artificial neural networks
US10643602B2 (en) * 2018-03-16 2020-05-05 Microsoft Technology Licensing, Llc Adversarial teacher-student learning for unsupervised domain adaptation
CN110737758B (zh) * 2018-07-03 2022-07-05 百度在线网络技术(北京)有限公司 用于生成模型的方法和装置
US11403535B2 (en) * 2018-12-21 2022-08-02 Industrial Technology Research Institute Model-based machine learning system
CN109784490B (zh) * 2019-02-02 2020-07-03 北京地平线机器人技术研发有限公司 神经网络的训练方法、装置和电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220026110A (ko) * 2020-08-25 2022-03-04 경희대학교 산학협력단 자가 발전원을 갖는 네트워크 내에서의 에너지 관리 방법, 이를 수행하기 위한 장치 및 시스템
US11775042B2 (en) 2020-08-25 2023-10-03 University-Industry Cooperation Group Of Kyung Hee University Method, apparatus and system for managing energy in self-powered network

Also Published As

Publication number Publication date
US20200210811A1 (en) 2020-07-02

Similar Documents

Publication Publication Date Title
KR20200084431A (ko) 신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들
US11983625B2 (en) Robust multimodal sensor fusion for autonomous driving vehicles
CN108090508B (zh) 一种分类训练方法、装置及存储介质
US20180260531A1 (en) Training random decision trees for sensor data processing
KR20200022739A (ko) 데이터 증강에 기초한 인식 모델 트레이닝 방법 및 장치, 이미지 인식 방법 및 장치
US20180260719A1 (en) Cascaded random decision trees using clusters
KR102160224B1 (ko) 약한 지도학습 객체 검출기에 기반한 의미론적 객체 영역 분할 방법 및 시스템
KR20180065856A (ko) 영역 기반 딥 러닝 모델을 이용한 객체 탐지 장치 및 방법, 그리고 이를 이용한 칩셋 제조 방법
KR20200128938A (ko) 모델 학습 방법 및 장치
JP7295282B2 (ja) 適応的ハイパーパラメータセットを利用したマルチステージ学習を通じて自律走行自動車のマシンラーニングネットワークをオンデバイス学習させる方法及びこれを利用したオンデバイス学習装置
US11514315B2 (en) Deep neural network training method and apparatus, and computer device
US20220170751A1 (en) Method for defining a path
JP2020184311A (ja) 自動データ水増しにおけるトレーニング時間の短縮
US10339471B2 (en) Ensemble based labeling
KR20190107984A (ko) 샘플링 및 적응적으로 변경되는 임계치에 기초하여 뉴럴 네트워크를 학습하는데 이용되는 하드 네거티브 샘플을 추출하는 영상 학습 장치 및 상기 장치가 수행하는 방법
US20230068516A1 (en) On-the-fly calibration of an image classifier
JP6824795B2 (ja) 修正装置、修正方法および修正プログラム
US20220238131A1 (en) Method for processing sound used in speech recognition robot
KR20200036352A (ko) 신경망의 동작 방법과 학습 방법 및 그 신경망
KR20220073444A (ko) 오브젝트 추적 방법, 장치 및 그 방법을 수행하는 단말기
KR102209505B1 (ko) 데이터 빈도수 분석을 통한 인공지능 학습 방법 및 장치
US20220188703A1 (en) Data generation apparatus and method thereof
CN110852394B (zh) 数据处理方法及装置、计算机系统以及可读存储介质
CN110334244B (zh) 一种数据处理的方法、装置及电子设备
CN113469204A (zh) 数据处理方法、装置、设备和计算机存储介质

Legal Events

Date Code Title Description
A201 Request for examination