KR102564051B1 - 강인한 학습 및 인식을 위한 다단계 딥러닝 방법 및 이를 수행하는 장치 - Google Patents

강인한 학습 및 인식을 위한 다단계 딥러닝 방법 및 이를 수행하는 장치 Download PDF

Info

Publication number
KR102564051B1
KR102564051B1 KR1020200095132A KR20200095132A KR102564051B1 KR 102564051 B1 KR102564051 B1 KR 102564051B1 KR 1020200095132 A KR1020200095132 A KR 1020200095132A KR 20200095132 A KR20200095132 A KR 20200095132A KR 102564051 B1 KR102564051 B1 KR 102564051B1
Authority
KR
South Korea
Prior art keywords
data
input
level
input data
deep learning
Prior art date
Application number
KR1020200095132A
Other languages
English (en)
Other versions
KR20220015083A (ko
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 KR1020200095132A priority Critical patent/KR102564051B1/ko
Publication of KR20220015083A publication Critical patent/KR20220015083A/ko
Application granted granted Critical
Publication of KR102564051B1 publication Critical patent/KR102564051B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2264Multidimensional index structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • 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
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Abstract

입력 데이터를 이용하여 다단계(multi-level) 데이터베이스(DB)를 생성하는 단계 - 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장함 -, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계, 및 다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행하는 단계를 포함하는 다단계 딥러닝 방법 및 이를 수행하는 장치가 제공된다. 이에 따르면, 보유한 데이터가 부족한 사용자는 키워드 목록만을 입력하여 웹에서 영상 및 신호 데이터를 수집할 수 있고, 수집된 데이터에 대하여 자동으로 전처리를 수행하여 데이터를 가공할 수 있다. 또한 영상 데이터와 신호 데이터를 통합하고, 관심영역을 설정할 수 있으며, 학습 데이터를 확장한 경우에도 관심영역을 새롭게 선정할 필요 없이 자동으로 선정할 수 있다.

Description

강인한 학습 및 인식을 위한 다단계 딥러닝 방법 및 이를 수행하는 장치{METHOD FOR MULTI-LEVEL DEEP LEARNING FOR ROBUST LEARNING AND RECOGNITION AND APPARATUS FOR PERFORMING THE SAME}
본 발명은 딥러닝 방법 및 이를 수행하는 장치에 관한 것이고, 더 구체적으로는 사물 인식을 위한 딥러닝 방법 및 이를 수행하는 장치에 관한 것이다.
딥러닝을 이용하여 사물을 인식하기 위한 종래기술로서 한국 등록특허 제10-2090770호는 입력할 수 있는 데이터가 영상 데이터로 한정되어 사용자가 보유한 데이터를 활용함에 제약이 있다. 또한 입력된 데이터에서 사용자가 원하는 영역을 지정하여 학습하는 것이 아니라 전체 영역에 대하여 학습함으로써 딥러닝의 특징 추출에 강인하다고 할 수 없다. 또한 입력 데이터의 환경, 유형, 위치 등이 다를 경우 사용자가 원하는 영역을 자동으로 선정할 수 없어 딥러닝의 특징 추출에 강인하다고 할 수 없다. 또한 사용자가 관심영역을 선정한 영상 데이터에 대해 이동, 회전, 확대, 축소 등의 데이터 확장을 진행하면 확장된 데이터에 대해 관심영역을 다시 선정해야 하는 문제점이 있다. 또한 학습이 종료된 후 사용자가 바로 사용할 수 있는 실행파일 등을 제공하지 않아 일반 사용자의 접근성이 떨어진다고 볼 수 있다.
한국 등록특허공보 제10-2090770호(2020.03.12.)
전술한 문제점을 해결하기 위한 본 발명의 목적은 일반 사용자도 학습 및 인식을 진행할 수 있고, 영상 데이터와 신호 데이터를 통합하여 학습할 수 있으며, 사용자가 영상 데이터에서 관심영역(region of interest)을 설정할 수 있고, 사용자가 직접 관심영역을 설정하기 어려운 경우 자동으로 선정할 수 있으며, 다단계의 딥러닝 학습 및 인식이 가능하고, 학습 완료 후 사용자가 곧바로 사용할 수 있도록 실행파일을 제공하여 사용자의 접근성을 개선한 다단계 딥러닝 방법 및 이를 수행하는 장치를 제공하는 것이다.
다만, 본 발명의 해결하고자 하는 과제는 이에 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.
전술한 문제점을 해결하기 위한 본 발명의 일 실시예에 따른 다단계 딥러닝 방법은 입력 데이터를 이용하여 다단계(multi-level) 데이터베이스(DB)를 생성하는 단계 - 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장함 -, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계, 및 다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행하는 단계를 포함한다.
일 측면에 따르면, 상기 방법은 상기 다단계 딥러닝 모델을 시험(test)하는 단계, 및 상기 다단계 딥러닝 모델을 이용하여 사물을 인식하는 컴퓨터 프로그램을 실행하기 위한 실행파일을 생성하는 단계를 더 포함할 수 있다.
일 측면에 따르면, 상기 입력 데이터는 사용자에 의해 입력된 데이터 및 웹에서 수집된 데이터 중 적어도 하나를 포함할 수 있다.
일 측면에 따르면, 상기 입력 데이터는 영상 데이터 및 제1 신호 데이터를 포함할 수 있고, 상기 다단계 데이터베이스를 생성하는 단계는 상기 제1 신호 데이터를 단독으로 상기 다단계 베이터베이스에 저장하는 단계, 상기 영상 데이터에서 제2 신호 데이터를 추출하는 단계, 상기 제1 신호 데이터와 상기 제2 신호 데이터를 통합하는 단계, 및 상기 통합된 신호 데이터를 상기 다단계 데이터베이스에 저장하는 단계를 포함할 수 있다.
일 측면에 따르면, 상기 입력 데이터는 제1 영상 데이터 및 신호 데이터를 포함할 수 있고, 상기 다단계 데이터베이스를 생성하는 단계는 상기 제1 영상 데이터를 단독으로 상기 다단계 베이터베이스에 저장하는 단계, 상기 신호 데이터에서 제2 영상 데이터를 추출하는 단계, 상기 제1 영상 데이터와 상기 제2 영상 데이터를 통합하는 단계, 및 상기 통합된 영상 데이터를 상기 다단계 데이터베이스에 저장하는 단계를 포함할 수 있다.
일 측면에 따르면, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는 상기 입력 데이터에서 관심영역(region of interest)을 선정하는 단계를 포함할 수 있다.
일 측면에 따르면, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는 상기 입력 데이터를 확장하는 단계 - 상기 확장은 회전, 이동, 및 반전 중 적어도 하나를 포함함 -, 및 상기 확장과 연관된 설정 데이터를 이용하여 상기 확장된 입력 데이터에서 상기 관심영역을 재선정하는 단계를 더 포함할 수 있다.
일 측면에 따르면, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는 상기 관심영역이 선정된 입력 데이터에 대해 선행학습을 진행하고, 객체 검출 모델을 생성하는 단계를 포함할 수 있다.
일 측면에 따르면, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는 상기 생성된 객체 검출 모델을 이용하여 상기 입력 데이터에 대해 객체 검출을 수행한 후 학습에 사용되는 데이터를 분류하는 단계를 포함할 수 있다.
일 측면에 따르면, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는 상기 입력 데이터를 확대 또는 축소하는 단계를 포함할 수 있다.
일 측면에 따르면, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는 상기 입력 데이터의 크기를 미리 결정된 크기로 조정하는 단계를 포함할 수 있다.
일 측면에 따르면, 상기 다단계 학습을 수행하는 단계는 상기 적어도 두 개의 단계의 입력 데이터 각각에 대한 딥러닝 모델을 생성할 수 있다.
전술한 문제점을 해결하기 위한 본 발명의 일 실시예에 따른 다단계 딥러닝 장치는 입력 데이터를 이용하여 다단계(multi-level) 데이터베이스(DB)를 생성하는 입력부 - 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장함 -, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 전처리부, 및 다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행하는 학습부를 포함한다.
일 측면에 따르면, 상기 학습부는 상기 다단계 딥러닝 모델을 시험(test)할 수 있고, 상기 장치는 상기 다단계 딥러닝 모델을 이용하여 사물을 인식하는 컴퓨터 프로그램을 실행하기 위한 실행파일을 생성하는 파일생성부를 더 포함할 수 있다.
일 측면에 따르면, 상기 입력 데이터는 사용자에 의해 입력된 데이터 및 웹에서 수집된 데이터 중 적어도 하나를 포함할 수 있다.
일 측면에 따르면, 상기 입력 데이터는 영상 데이터 및 제1 신호 데이터를 포함할 수 있고, 상기 입력부는 상기 영상 데이터에서 제2 신호 데이터를 추출하고, 상기 제1 신호 데이터와 상기 제2 신호 데이터를 통합하고, 그리고 상기 제1 신호 데이터를 단독으로 또는 상기 통합된 신호 데이터를 상기 다단계 데이터베이스에 저장할 수 있다.
일 측면에 따르면, 상기 입력 데이터는 제1 영상 데이터 및 신호 데이터를 포함할 수 있고, 상기 입력부는 상기 신호 데이터에서 제2 영상 데이터를 추출하고, 상기 제1 영상 데이터와 상기 제2 영상 데이터를 통합하고, 그리고 상기 제1 영상 데이터를 단독으로 또는 상기 통합된 영상 데이터를 상기 다단계 데이터베이스에 저장할 수 있다.
일 측면에 따르면, 상기 전처리부는 상기 입력 데이터에서 관심영역(region of interest)을 선정할 수 있다.
일 측면에 따르면, 상기 전처리부는 상기 입력 데이터를 확장하고 - 상기 확장은 회전, 이동, 및 반전 중 적어도 하나를 포함함 -, 그리고 상기 확장과 연관된 설정 데이터를 이용하여 상기 확장된 입력 데이터에서 상기 관심영역을 재선정할 수 있다.
일 측면에 따르면, 상기 전처리부는 상기 관심영역이 선정된 입력 데이터에 대해 선행학습을 진행하고, 객체 검출 모델을 생성할 수 있다.
일 측면에 따르면, 상기 전처리부는 상기 생성된 객체 검출 모델을 이용하여 상기 입력 데이터에 대해 객체 검출을 수행한 후 학습에 사용되는 데이터를 분류할 수 있다.
일 측면에 따르면, 상기 전처리부는 상기 입력 데이터를 확대 또는 축소할 수 있다.
일 측면에 따르면, 상기 전처리부는 상기 입력 데이터의 크기를 미리 결정된 크기로 조정할 수 있다.
일 측면에 따르면, 상기 학습부는 상기 적어도 두 개의 단계의 입력 데이터 각각에 대한 딥러닝 모델을 생성할 수 있다.
전술한 문제점을 해결하기 위한 본 발명의 일 실시예에 따른 다단계 딥러닝 장치는 입력 데이터를 수신하는 입출력 인터페이스, 다단계 딥러닝을 수행하는 적어도 하나의 프로세서, 및 다단계(multi-level) 데이터베이스(DB)를 저장하는 스토리지(storage)를 포함하고, 상기 적어도 하나의 프로세서는: 상기 입력 데이터를 이용하여 상기 다단계(multi-level) 데이터베이스(DB)를 생성하고 - 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장함 -, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하고, 그리고 다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행한다.
전술한 문제점을 해결하기 위한 본 발명의 일 실시예에 따른 다단계 딥러닝 방법을 수행하는 컴퓨터 프로그램을 저장한 컴퓨터 판독 가능한 기록매체에 있어서, 상기 컴퓨터 프로그램은 상기 컴퓨터가: 입력 데이터를 이용하여 다단계(multi-level) 데이터베이스(DB)를 생성하도록 하고 - 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장함 -, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하도록 하고, 및 다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행하도록 하는 명령어를 포함한다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
전술한 본 발명의 실시예들에 따른 다단계 딥러닝 방법 및 이를 수행하는 장치에 따르면, 보유한 데이터가 부족한 사용자는 키워드 목록만을 입력하여 웹에서 영상 및 신호 데이터를 수집할 수 있고, 수집된 데이터에 대하여 자동으로 전처리를 수행하여 데이터를 가공할 수 있다. 또한 영상 데이터와 신호 데이터를 통합하고, 관심영역을 설정할 수 있으며, 학습 데이터를 확장한 경우에도 관심영역을 새롭게 선정할 필요 없이 자동으로 선정할 수 있다.
도 1은 본 발명의 일 실시예에 따른 다단계 딥러닝 방법의 흐름도이다.
도 2는 데이터베이스를 생성하는 방법의 일 예를 도시한 것이다.
도 3은 사용자가 데이터베이스에 데이터를 입력하는 방식의 일 예를 도시한 것이다.
도 4는 데이터베이스에 데이터가 저장되는 방식의 일 예를 도시한 것이다.
도 5는 영상 데이터와 신호 데이터를 통합하는 방법의 일 예를 도시한 것이다.
도 6은 입력 데이터를 전처리하는 방법의 일 실시예를 도시한 것이다.
도 7은 영상 데이터에서 관심영역을 검출하는 방법의 일 예를 도시한 것이다.
도 8은 입력 데이터를 확장했을 때 기지정한 관심영역을 자동으로 선정하는 방법의 일 예를 도시한 것이다.
도 9는 이미지 확대의 일 예를 도시한 것이다.
도 10은 다단계 학습 방법의 일 예를 도시한 것이다.
도 11은 완성된 다단계 딥러닝 모델을 이용하여 사물을 인식하는 방법의 흐름도이다.
도 12a는 실행파일 생성 방법의 일 예를 도시한 것이다.
도 12b는 생성된 실행파일에 따른 사물인식 컴퓨터 프로그램의 사용자 인터페이스의 일 예를 도시한 것이다.
도 13은 본 발명의 다른 실시예에 따른 다단계 딥러닝 장치의 구성도이다.
도 14는 본 발명의 또 다른 실시예에 따른 다단계 딥러닝 장치의 구성도이다.
도 15는 본 발명의 실시예들에 따른 다단계 딥러닝 방법 및 이를 수행하는 장치를 이용하여 자기애자의 오손등급 분류를 수행한 결과를 나타낸 것이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람이 본 발명을 쉽게 실시할 수 있도록 명확하고 상세하게 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 다단계(multi-level) 딥러닝(deep learning) 방법의 흐름도이다.
먼저, 입력 데이터를 이용하여 다단계 데이터베이스를 생성한다(S110). 여기서, 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장한다. 상기 입력 데이터는 사용자에 의해 입력된 영상 또는 신호 데이터 및 웹에서 수집된 데이터 중 적어도 하나를 포함할 수 있다. 상기 입력 데이터는 영상 데이터 및 신호 데이터를 포함할 수 있고, 영상 데이터가 단독으로 또는 신호 데이터가 단독으로 다단계 데이터베이스에 저장될 수 있고, 영상 데이터와 신호 데이터가 통합되어 다단계 데이터베이스에 저장될 수도 있다.
다음으로, 다단계 데이터베이스에 저장된 입력 데이터를 전처리한다(S130). 여기서, 입력 데이터의 일부(예컨대, 10%)를 분리하여 다단계 학습 후 생성된 다단계 딥러닝 모델의 성능을 검증하는 제1 시험(test) 데이터로 사용할 수 있다. 또한 전처리는 데이터 확장, 관심영역 선정, 이미지 확대 또는 축소, 및 이미지 크기 조정을 포함할 수 있으며, 전처리가 완료된 데이터의 일부(예컨대, 10%)를 분리하여 다단계 학습 후 생성된 다단계 딥러닝 모델의 성능을 검증하는 제2 시험 데이터로 사용할 수 있다.
다음으로, 다단계 딥러닝 모델을 생성하기 위하여 전처리된 데이터에 대한 다단계 학습을 수행한다(S150). 다단계 학습 결과, 상기 적어도 두 개의 단계의 입력 데이터 각각에 대한 딥러닝 모델을 생성할 수 있다. 다단계 학습에 필요한 파라미터(예컨대, Step 수, 신경망, Batch 크기 등)는 임의로 설정될 수 있다. 예를 들어, Step 수는 100,000, 신경망은 Inception V3, Batch 크기는 16으로 설정될 수 있다.
다단계 학습이 완료되어 다단계 딥러닝 모델이 생성되면, 생성된 다단계 딥러닝 모델을 시험(test)한다(S170). 여기서, 전처리 단계(S130)에서 분리한 제1 시험 데이터 및 제2 시험 데이터를 이용하여 다단계 딥러닝 모델을 시험할 수 있다.
시험이 완료되면, 다단계 딥러닝 모델을 이용하여 사물을 인식하는 컴퓨터 프로그램을 실행하기 위한 실행파일을 생성한다(S190). 컴퓨터 프로그램은 학습에 사용한 레이블 수, 레이블 이름, 단계 깊이, 모델 등을 자동으로 로드(load)하여 사용자가 이용함에 문제가 없도록 할 수 있다.
이하에서는, 도 2 내지 도 13을 참조하여 도 1의 각 단계들에 대하여 보다 상세하게 설명하기로 한다.
도 2는 입력 데이터를 이용하여 다단계 데이터베이스를 생성하는 방법의 일 예를 도시한 것이다. 도 2를 참조하면, 입력 데이터는 사용자에 의해 입력된 데이터 및 웹에서 수집된 데이터 중 적어도 하나를 포함할 수 있다.
사용자가 충분한 데이터를 보유하고 있는 경우 사용자가 직접 데이터를 입력할 수 있다. 사용자는 데이터를 상위 카테고리와 하위 카테고리로 분류하여 입력할 수 있다. 예를 들어, 1단계 분류 데이터를 먼저 입력하고(S201), 2단계 분류 데이터를 입력할 수 있다(S203). 도 2에서는 입력 데이터가 두 단계로 분류되는 것으로 도시하였으나, 본 발명은 이에 한정되지 않으며, 더 많은 단계로 분류될 수 있다.
한편, 사용자가 보유한 데이터가 충분하지 않거나 데이터를 보유하지 않은 경우 웹(web)에서 학습에 필요한 데이터를 수집할 수 있다. 사용자는 수집 이미지 또는 키워드 목록을 상위 카테고리와 하위 카테고리로 분류하여 입력할 수 있다. 예를 들어, 1단계 및 2단계 수집 이미지를 입력할 수 있다(S205). 입력된 수집 이미지 또는 키워드 목록에 따라 웹에서 데이터를 수집한다(S207). 예를 들어, 데이터 수집은 크롤러(crawler)와 같은 소프트웨어에 의해 수행될 수 있다. 웹에서 데이터를 수집하는 경우 데이터 수집 후 분석을 진행하여 사용자가 원하는 데이터만 사용하도록 데이터를 처리한다(S209). 예를 들어, 데이터 처리는 클러스터링(예컨대, K-Mean, K-Means++ 등)을 이용하여 클러스터 거리가 중심에서 가까운 데이터만을 추출하는 방식으로 손상된 데이터를 수정 또는 삭제할 수 있다.
입력 데이터는 영상 데이터 및 신호 데이터를 모두 포함할 수 있다. 이 경우 영상 데이터와 신호 데이터를 통합한 후(S211), 각 단계별 데이터는 별도의 서브 데이터베이스에 저장될 수 있다. 예를 들어, 1단계 분류 데이터는 1단계 데이터베이스 보관함(1461)에 저장될 수 있고, 2단계 분류 데이터는 2단계 데이터베이스 보관함(1462)에 저장될 수 있다.
도 3은 사용자가 데이터베이스에 데이터를 입력하는 방식의 일 예를 도시한 것이다. 도 3을 참조하면, 사용자는 상위 카테고리와 하위 카테고리로 분류한 데이터베이스에서 메인 폴더(최상위 폴더)만 선택하면 각 단계별 폴더를 자동으로 분리하여 데이터를 저장할 수 있다. 모든 데이터베이스의 최상위 폴더는 메인 폴더이며, 메인 폴더 바로 아래에 1단계 폴더(상위 카테고리)들이 있고, 각각의 1단계 폴더 안에는 1단계 폴더에 해당하는 1단계 데이터(이미지)가 저장되고, 2단계 폴더(하위 카테고리)들이 존재한. 각각의 2단계 폴더 안에는 2단계 폴더에 해당하는 2단계 데이터(이미지)가 저장된다. 도 3에서는 두 개의 단계에 관하여 도시하였지만, 본 발명은 이에 한정되지 않으며, 더 많은 단계로 분류될 수 있다.
도 4는 데이터베이스에 데이터가 저장되는 방식의 일 예를 도시한 것이다.
도 4를 참조하면, 2단계 딥러닝인 경우, 데이터를 입력하였을 때 1단계 데이터베이스 보관함(1461)은 하나가 생성되며 1단계 데이터베이스 보관함(1461)이 상위 카테고리의 데이터베이스가 되어 학습에 사용될 수 있다. 2단계 데이터베이스 보관함(1462)은 각각의 상위 카테고리 밑에 있는 하위 카테고리의 수만큼 생성되며, 2단계 데이터베이스 보관함(1462)이 하위 카테고리의 데이터베이스가 되어 학습에 사용될 수 있다. 이와 같이 카테고리 별로 데이터베이스 보관함을 분류하여 딥러닝을 진행하는 경우 다단계 학습이 가능하며, 다단계 딥러닝 모델의 생성 및 생성된 딥러닝 모델로 사물을 인식할 때 종래기술에 비하여 높은 인식률을 획득할 수 있다.
한편, 상술한 바와 같이 입력 데이터는 영상 데이터 및 신호 데이터를 모두 포함할 수 있다. 이 경우 영상 데이터와 신호 데이터를 통합하여 데이터베이스에 저장하고, 통합된 데이터를 이용하여 다단계 학습을 수행할 수 있다. 영상 데이터와 신호 데이터의 통합은 입력된 영상 데이터에서 신호 데이터를 추출하여 입력된 신호 데이터와 통합하거나 또는 입력된 신호 데이터에서 영상 데이터를 추출하여 입력된 영상 데이터와 통합하는 방식으로 수행될 수 있다. 예를 들어, 사용자가 입력한 영상 데이터에서 얼굴 영역을 검출하여 관심영역을 선정하고, 관심영역에서 RGB 색상체계 데이터를 추출하거나 또는 추출한 RGB 색상체계를 YCgCo 또는 YCbCr 등의 색상체계로 변환하여 사용자가 보유하고 있는 RGB, YCgCo, YCbCr 등의 신호 데이터와 통합하여 데이터베이스에 저장하고 다단계 학습에 사용할 수 있다. 반대로, 신호 데이터를 x, y, z 축으로 나열하여 영상 데이터로 변환한 후 사용자가 입력한 영상 데이터와 통합하여 데이터베이스에 저장하고 다단계 학습에 사용할 수 있다. 예를 들어, 신호 데이터로서 RGB 색상체계를 사용하는 경우 x축에 RGB 색상값을 입력하고, y축에 시간을 입력하고, z축에 R, G, B를 나열하여 데이터베이스에 저장하고 다단계 학습에 사용할 수 있다.
도 5는 영상 데이터와 신호 데이터를 통합하는 방법의 일 예를 도시한 것이다. 도 5는 영상 데이터에서 RGB 신호를 추출하여 Cg 신호로 변경한 후 사용자가 입력한 신호 데이터와 통합하는 경우를 예시한 것이다.
도 5를 참조하면, 사용자가 영상 데이터와 신호 데이터를 입력하면(S501, S503, S511), 영상 데이터에서 RGB 신호를 추출하고(S505), 추출된 RGB 신호를 사용자가 입력한 신호 데이터와 동일한 종류인 Cg 신호로 변경한 후(S507, S509), 변경된 신호와 사용자가 입력한 신호 데이터를 각각 영상 데이터베이스 보관함(1463)과 신호 데이터베이스 보관함(1464)에 저장하고, 영상 데이터에서 추출한 신호 데이터(즉, RGB 신호에서 Cg 신호로 변경한 것)와 입력 신호 데이터를 통합하여 통합 데이터베이스 보관함(1465)에 저장한다.
도 6은 입력 데이터를 전처리하는 방법의 일 실시예를 도시한 것이다.
도 6을 참조하면, 전처리 단계는 데이터베이스에 저장된 입력 데이터에서 제1 시험 데이터를 분리하고(S610), 입력 데이터를 확장하고(S620), 입력 데이터에서 관심영역을 선정하고(S630), 입력 데이터를 확대 또는 축소하고(S640), 입력 데이터의 크기를 조정(S650)하고, 크기가 일정하게 조정된 입력 데이터에서 제2 시험 데이터를 분리하는 것(S660)을 포함할 수 있다. 필요에 따라, 도 6에 도시된 모든 동작들이 수행될 수도 있고, 일부 동작만 수행될 수도 있다. 또한 데이터 확장(S620), 관심영역 선정(S630), 및 이미지 확대 또는 축소(S640)는 도 6에 도시된 것과 다른 순서로 수행될 수 있다.
제1 시험 데이터(S610)는 사용자에 의해 입력된 데이터 또는 웹에서 수집된 데이터의 일부(예컨대, 10%)일 수 있다. 제1 시험 데이터(S610)는 다단계 학습 후 생성된 다단계 딥러닝 모델의 성능을 검증하는 데 사용될 수 있다.
입력 데이터의 확장(S620)은 사용자에 의해 입력된 데이터 또는 웹에서 수집된 데이터에서 제1 시험 데이터를 제외한 나머지 데이터에 대하여 회전, 상하좌우 이동, 및 좌우 반전 중 적어도 하나를 포함할 수 있다. 예를 들어, 회전의 경우 각 45도씩 8번 회전하여 데이터의 좌우를 반전한 후 다시 8번 회전하여 총 16회 확장하는 것일 수 있다. 예를 들어, 상하좌우 이동은 각 방향으로 1회씩 이동하여 원본 데이터를 포함하여 총 5개의 데이터가 생성되고 여기에서 좌우를 반전한 후 다시 각 방향으로 1회씩 이동하여 총 10회 확장하는 것일 수 있다. 입력 데이터를 확장할 때 확장과 연관된 설정 데이터를 데이터베이스에 저장할 수 있다.
관심영역의 선정(S630)은 데이터의 일정 부분에 대해서만 다단계 학습을 수행하도록 입력 데이터 또는 확장이 완료된 데이터에서 특정 영역을 선정하는 것이다. 관심영역은 사용자에 의해 임의로 선정될 수도 있고, 특정 객체를 검출하는 모델을 이용하여 선정될 수도 있다. 사용자에 의해 임의로 선정하는 경우, 예를 들어, 사용자 자유선정, 색상기반 검출, 도형유형의 검출과 같은 방법으로 관심영역을 선정할 수 있고, 이때 도형은 사각형뿐만 아니라 원, 타원, 사다리꼴, 원뿔 등을 포함한다. 모델에 의해 선정된 관심영역은 사용자에 의해 임의로 수정될 수도 있다. 관심영역 선정이 완료되면 관심영역이 선정된 입력 데이터에 대해 선행학습을 진행하고, 객체 검출 모델을 생성할 수 있다. 또한 생성된 객체 검출 모델을 이용하여 입력 데이터에 대해 객체 검술을 수행한 후 학습에 사용되는 데이터를 분류할 수 있다.
도 7은 영상 데이터에서 관심영역을 검출하는 방법의 일 예를 도시한 것이다.
도 7을 참조하면, 영상 데이터가 입력되었을 때(S710) 영상 데이터 내에서 사람의 얼굴에 대해서만 다단계 학습을 수행하고자 하는 경우, 얼굴이 포함된 영상 데이터에서 얼굴 영역을 검출하는 모델을 이용하여 얼굴 영역을 검출하고(S730), 해당 영역의 데이터에 대해서만 다단계 학습을 수행할 수 있다(S750). 여기서, 얼굴 영역을 검출하는 모델은, 예를 들어, Haar cascade, HOG(Histogram of Oriented Gradients), SSD(Single Shot Multibox Detector), 또는 YOLOv3(You Only Look Once v3)일 수 있다. 이와 같이 관심영역을 선정하여 해당 영역에 대해서만 다단계 학습을 수행하는 경우 전체 영역에 대해서 다단계 학습을 진행하는 경우 보다 얼굴 영역에 관한 특징을 더 강인하게 추출할 수 있으며, 결과적으로 더 높은 인식률을 기대할 수 있다.
한편, 입력 데이터에서 관심영역을 선정하고, 입력 데이터를 확장한 후 확장과 연관된 설정 데이터를 이용하여 확장된 데이터에서 기선정한 관심영역을 재선정할 수 있다. 확장과 연관된 설정 데이터는, 예를 들어, 데이터 확장 시 저장한 시프트(shift) 이동 거리 또는 이미지 회전 각도일 수 있다.
도 8은 입력 데이터를 확장했을 때 기지정한 관심영역을 자동으로 선정하는 방법의 일 예를 도시한 것이다.
도 8을 참조하면, 영상 데이터가 입력되었을 때(S810) 영상 데이터 내에서 사람의 얼굴에 대해서만 다단계 학습을 수행하되 영상 데이터를 확장하여 더 많은 데이터를 이용한 다단계 학습을 수행하고자 하는 경우, 얼굴이 포함된 영상 데이터에서 얼굴 영역을 선정하고(S830), 관심영역이 선정된 데이터에 대하여 데이터 확장을 수행하고(S850), 확장 설정 보관함(1460)에 저장된 확장과 연관된 데이터를 이용하여 확장된 데이터에서 얼굴 영역을 자동으로 재선정할 수 있다(S870). 이후 관심영역으로 선정된 얼굴 영역에 대하여만 다단계 학습을 진행한다(S890). 이와 같이 확장된 이미지에 대해서도 사용자가 기선정한 관심영역을 그대로 유지할 수 있으므로 다단계 학습 시 데이터의 특징을 더욱 강인하게 추출할 수 있으며, 결과적으로 더 높은 인식률을 기대할 수 있다.
이미지의 확대 또는 축소(S640)는 특정 영역에 대해 집중적으로 학습하고자 할 때 수행될 수 있다. 도 9를 참조하면, 자기애자(porcelain insulator)에 관한 영상 데이터가 입력되었을 때(S910) 영상 데이터 내에서 파손 영역(선으로 표현된 비정상 부분)에 대하여 관심영역을 선정하고(S930), 해당 관심영역을 확대하여 파손 영역에 대한 강인한 다단계 학습을 수행할 수 있다(S950).
상술한 데이터 확장(S620), 관심영역 선정(S630), 및 이미지 확대 또는 축소(S640)는 상위 카테고리부터 하위 카테고리까지 차례대로 수행될 수 있다. 예를 들어, 1단계 분류 데이터에 대한 전처리 후 2단계 분류 데이터에 대한 전처리가 수행될 수 있다.
이미지 크기 조정(S650)은 데이터 확장(S620), 관심영역 선택(S630), 및 이미지 확대 또는 축소(S640)가 완료된 이미지의 크기를 일정하게 조정하는 것이다. 이는 다단계 학습 시 동일한 크기의 데이터를 입력하기 위한 것이다. 예를 들어, 모든 이미지의 크기를 350×350 픽셀로 동일하게 조정할 수 있다.
제2 시험 데이터 분리(S660)는 데이터 확장(S620), 관심영역 선택(S630), 및 이미지 확대 또는 축소(S640)가 완료된 데이터의 일부(예컨대, 10%)일 수 있다. 제2 시험 데이터(S660)는 다단계 학습 후 생성된 다단계 딥러닝 모델의 성능을 검증하는 데 사용될 수 있다.
도 10은 다단계 학습 방법의 일 예를 도시한 것이다.
도 10을 참조하면, 상위 카테고리를 바탕으로 분류된 1단계 데이터베이스 보관함에 대하여 학습을 진행하여 하나의 1단계 딥러닝 모델을 생성할 수 있다(S1010). 이후 1단계 딥러닝 모델의 각 클래스에 따라서 2단계 데이터베이스 보관함을 매칭하고(S1030), 매칭된 데이터베이스 보관함에 대하여 학습을 진행하여 2단계 딥러닝 모델을 생성할 수 있다(S1050). 2단계 딥러닝 모델은 1단계 딥러닝 모델의 클래스 수만큼 생성되며, 각각의 모델마다 클래스, 파라미터, 특징 등이 상이할 수 있다.
도 11은 완성된 다단계 딥러닝 모델을 이용하여 사물을 인식하는 방법의 흐름도이다. 도 11을 참조하면, 인식할 이미지를 입력하면(S1101) 상위 카테고리를 기반으로 학습한 1단계 딥러닝 모델을 로드하여 1단계 분류를 진행한다(S1103, S1105). 이후 1단계 분류 결과에 맞는 하위 카테고리를 기반으로 학습한 2단계 딥러닝 모델을 매칭하여 로드하고(S1107), 2단계 분류를 진행한다(S1109). 이후 최종 인식결과를 도출한다(S1111). 1단계 분류 결과와 2단계 분류 결과가 모두 제공될 수 있다.
도 12a는 실행파일 생성 방법의 일 예를 도시한 것이고, 도 12b는 생성된 실행파일에 따른 사물인식 컴퓨터 프로그램의 사용자 인터페이스의 일 예를 도시한 것이다.
도 12a를 참조하면, 사용자가 실행파일 생성 버튼을 클릭하면(S1201), UI 보관함(1470)에 저장된 UI 데이터를 이용하여 UI를 생성한다(S1203). 이후 이미지 선택 버튼(S1205)을 클릭하고, 사진 선택 모듈(S1207) 또는 폴더 선택 모듈(S1209)에 따라 이미지를 이식하고, 인식 버튼(S1211)을 클릭하면 1단계 딥러닝 모델 및 2단계 딥러닝 모델을 로드하여 모듈에 이식한다(S1213). 그 결과 사용자가 입력한 이미지에 최적화된 맞춤형 딥러닝 실행파일이 생성된다(S1315).
도 12b를 참조하면, 생성된 프로그램 UI에서 사진 등록, 폴더 등록, 및 인식 수행 각각의 버튼에 맞는 모듈이 이식되며, 사용자는 사진 또는 폴더 등록으로 데이터베이스를 등록할 수 있다.
도 13은 본 발명의 다른 실시예에 따른 다단계 딥러닝 장치의 구성도이다.
도 13을 참조하면, 본 발명의 다른 실시예에 따른 다단계 딥러닝 장치(1300)는 입력부(1320), 전처리부(1340), 학습부(1360), 및 파일생성부(1380)를 포함한다.
입력부(1320)는 입력 데이터를 이용하여 다단계 데이터베이스를 생성한다. 여기서, 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장한다. 상기 입력 데이터는 사용자에 의해 입력된 데이터 및 웹에서 수집된 데이터 중 적어도 하나를 포함할 수 있다. 상기 입력 데이터는 영상 데이터 및 신호 데이터를 포함할 수 있고, 영상 데이터와 신호 데이터가 통합되어 다단계 데이터베이스에 저장될 수 있다.
전처리부(1340)는 다단계 데이터베이스에 저장된 입력 데이터를 전처리한다. 여기서, 입력 데이터의 일부(예컨대, 10%)를 분리하여 다단계 학습 후 생성된 다단계 딥러닝 모델의 성능을 검증하는 제1 시험(test) 데이터로 사용할 수 있다. 또한 전처리는 데이터 확장, 관심영역 선정, 이미지 확대 또는 축소, 및 이미지 크기 조정을 포함할 수 있으며, 전처리가 완료된 데이터의 일부(예컨대, 10%)를 분리하여 다단계 학습 후 생성된 다단계 딥러닝 모델의 성능을 검증하는 제2 시험 데이터로 사용할 수 있다.
학습부(1360)는 다단계 딥러닝 모델을 생성하기 위하여 전처리된 데이터에 대한 다단계 학습을 수행한다(S150). 다단계 학습 결과, 상기 적어도 두 개의 단계의 입력 데이터 각각에 대한 딥러닝 모델을 생성할 수 있다. 다단계 학습에 필요한 파라미터(예컨대, Step 수, 신경망, Batch 크기 등)는 임의로 설정될 수 있다. 예를 들어, Step 수는 100,000, 신경망은 Inception V3, Batch 크기는 16으로 설정될 수 있다.
또한 학습부(1360)는 다단계 학습이 완료되어 다단계 딥러닝 모델이 생성되면, 생성된 다단계 딥러닝 모델을 시험(test)할 수 있다. 여기서, 전처리부(1340)에서 분리한 제1 시험 데이터 및 제2 시험 데이터를 이용하여 다단계 딥러닝 모델을 시험할 수 있다.
파일생성부(1380)는 다단계 딥러닝 모델을 이용하여 사물을 인식하는 컴퓨터 프로그램을 실행하기 위한 실행파일을 생성한다. 컴퓨터 프로그램은 학습에 사용한 레이블 수, 레이블 이름, 단계 깊이, 모델 등을 자동으로 로드(load)하여 사용자가 이용함에 문제가 없도록 할 수 있다.
도 14는 본 발명의 또 다른 실시예에 따른 다단계 딥러닝 장치의 구성도이다.
도 14를 참조하면, 본 발명의 또 다른 실시예에 따른 다단계 딥러닝 장치(1400)는 입력 데이터를 수신하는 입출력 인터페이스(1420), 다단계 딥러닝을 수행하는 적어도 하나의 프로세서(1440), 및 다단계 데이터베이스를 저장하는 스토리지(1460)를 포함한다.
프로세서(1440)는 입력 데이터를 이용하여 다단계(multi-level) 데이터베이스(DB)를 생성하고, 상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하고, 그리고 다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행한다. 또한 프로세서(1440)는 다단계 학습이 완료되어 다단계 딥러닝 모델이 생성되면 생성된 다단계 딥러닝 모델을 시험(test)하고, 다단계 딥러닝 모델을 이용하여 사물을 인식하는 컴퓨터 프로그램을 실행하기 위한 실행파일을 생성할 수 있다.
스토리지(1460)는 복수의 서브 데이터베이스를 포함할 수 있다. 여기서 서브 데이터베이스는 스토리지(1460) 내의 폴더일 수 있다. 1단계 데이터베이스 보관함(1461) 및 2단계 데이터베이스 보관함(1462)은 각 단계별로 사용자에 의해 입력된 데이터 또는 웹에서 수집된 데이터를 저장한다. 영상 데이터베이스 보관함(1463), 신호 데이터베이스 보관함(1462), 및 통합 데이터베이스 보관함(1464)은 각각 사용자에 의해 입력된 데이터 또는 웹에서 수집된 데이터 중에서 영상 데이터, 신호 데이터, 및 영상 데이터와 신호 데이터의 통합 데이터를 저장한다. 제1 시험 데이터베이스 보관함(1466) 및 제2 시험 데이터베이스 보관함(1467)은 각각 제1 시험 데이터 및 제2 시험 데이터를 저장하고, 학습 데이터베이스 보관함(1468)은 입력 데이터 중에서 제1 시험 데이터 및 제2 시험 데이터를 제외한 나머지 데이터를 저장한다. 확장 설정 보관함(1469)는 확장과 연관된 설정 데이터를 저장한다. UI 보관함(1470)은 실행파일 생성 시 사용되는 UI 정보를 저장한다.
도 15는 본 발명의 실시예들에 따른 다단계 딥러닝 방법 및 이를 수행하는 장치를 이용하여 자기애자의 오손등급 분류를 수행한 결과를 나타낸 것이다.
도 15를 참조하면, 자기애자 이미지를 입력하면 1단계 딥러닝 모델에서 상위 카테고리인 자기애자의 유형(상단, 정면, 하단, 틀어진 하단) 분류를 진행한다. 1단계 딥러닝 모델의 인식결과로 자기애자의 유형 분류가 완료되면 유형에 맞는 2단계 딥러닝 모델을 매칭하여 자기애자의 부식단계 인식을 진행한다. 2단계 딥러닝 모델의 인실결과로 자기애자의 부식단계까지 분류되면 최종 인식결과를 도출한다. 최종 인식결과에는 1단계 딥러닝 인식결과를 바탕으로 한 상위 카테고리의 결과와 2단계 딥러닝 인실결과를 바탕으로 한 하위 카테고리의 결과가 모두 포함된다.
본 발명의 실시예들에 따른 다단계 딥러닝 방법의 사물 인식 정확도를 종래기술과 비교하면 표 1과 같다.
종래기술의 경우, 임의의 시험 데이터에 대해 94%의 인식결과를 도출하였고, 제1 시험 데이터에 대해서는 97%, 제2 시험 데이터에 대해서는 99.5711%의 인식결과를 도출하였다. 본 발명의 실시예들에 따른 다단계 딥러닝 방법을 적용한 경우, 총 5개의 딥러닝 모델이 생성되었으며, 임의의 시험 데이터, 제1 시험 데이터, 및 제2 시험 데이터 모두에 대하여 100%의 인식결과를 도출하였다. 따라서 본 발명의 실시예들에 따른 다단계 딥러닝 방법에 따라 카테고리별 단계를 나누어 다단계 학습을 수행하는 경우 종래기술보다 높은 인식률을 기대할 수 있으며, 딥러닝 대회에서 1~2%의 인식률 차이로 우승자가 선정되는 경우가 많은 것을 고려하면, 종래기술과의 성능 차이가 상당하다고 평가할 수 있다.
전술한 본 발명에 따른 다단계 딥러닝 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래시 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한 컴퓨터로 판독 가능한 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
이상에서 도면 및 실시예를 참조하여 설명하였지만, 본 발명의 보호범위가 상기 도면 또는 실시예에 의해 한정되는 것을 의미하지는 않으며 해당 기술 분야의 숙련된 당업자는 하기의 청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
1300: 다단계 딥러닝 장치
1320: 입력부
1360: 학습부
1380: 파일생성부

Claims (26)

  1. 입출력 인터페이스, 프로세서, 및 상기 프로세서에 의해 다단계 딥러닝 방법을 수행하도록 하기 위한 명령어를 포함하는 컴퓨터 판독 가능한 기록매체를 포함하는 다단계 딥러닝 장치에 의해 수행되는 방법에 있어서,
    입력 데이터를 이용하여 다단계(multi-level) 데이터베이스(DB)를 생성하는 단계 - 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장함 -;
    상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계; 및
    다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행하는 단계를 포함하고,
    상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는,
    상기 입력 데이터에서 관심영역(region of interest)을 선정하는 단계;
    상기 입력 데이터에 대한 회전, 이동, 및 반전 중 적어도 하나의 변환을 처리하기 위하여, 회전 각도, 회전 횟수, 이동 방향, 및 이동 거리 중 적어도 하나를 포함하는 확장과 연관된 설정 데이터를 확인하는 단계;
    상기 확장과 연관된 설정 데이터에 기초하여, 상기 입력 데이터에 대한 회전, 이동, 및 반전 중 적어도 하나의 변환을 처리하여, 상기 입력 데이터의 확장을 수행하는 단계; 및
    상기 확장과 연관된 설정 데이터를 이용하여 상기 확장된 입력 데이터에서 상기 관심영역을 재선정하는 단계를 더 포함하고,
    상기 입력 데이터는 입력 영상 데이터 및 입력 신호 데이터를 포함하고,
    상기 다단계 데이터베이스를 생성하는 단계는,
    상기 입력 영상 데이터로부터 신호 데이터를 추출하고, 상기 추출된 신호 데이터를 상기 입력 신호 데이터에 통합함으로써 생성되는 통합된 신호 데이터 및 상기 입력 신호 데이터로부터 영상 데이터를 추출하고, 상기 추출된 영상 데이터를 상기 입력 영상 데이터에 통합함으로써 생성되는 통합된 영상 데이터 중 적어도 하나를 생성하는 단계; 및
    상기 통합된 신호 데이터 및 상기 통합된 영상 데이터 중 적어도 하나를 상기 다단계 데이터베이스에 저장하는 단계를 포함하는
    다단계 딥러닝(deep learning) 방법.
  2. 제1항에 있어서,
    상기 다단계 딥러닝 모델을 시험(test)하는 단계; 및
    상기 다단계 딥러닝 모델을 이용하여 사물을 인식하는 컴퓨터 프로그램을 실행하기 위한 실행파일을 생성하는 단계를 더 포함하는, 다단계 딥러닝 방법.
  3. 제1항에 있어서,
    상기 입력 데이터는 사용자에 의해 입력된 데이터 및 웹에서 수집된 데이터 중 적어도 하나를 포함하는, 다단계 딥러닝 방법.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 제1항에 있어서,
    상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는
    상기 관심영역이 선정된 입력 데이터에 대해 선행학습을 진행하고, 객체 검출 모델을 생성하는 단계를 포함하는, 다단계 딥러닝 방법.
  9. 제8항에 있어서,
    상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는
    상기 생성된 객체 검출 모델을 이용하여 상기 입력 데이터에 대해 객체 검출을 수행한 후 학습에 사용되는 데이터를 분류하는 단계를 포함하는, 다단계 딥러닝 방법.
  10. 제1항에 있어서,
    상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는
    상기 입력 데이터를 확대 또는 축소하는 단계를 포함하는, 다단계 딥러닝 방법.
  11. 제1항에 있어서,
    상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 단계는
    상기 입력 데이터의 크기를 미리 결정된 크기로 조정하는 단계를 포함하는, 다단계 딥러닝 방법.
  12. 제1항에 있어서,
    상기 다단계 학습을 수행하는 단계는 상기 적어도 두 개의 단계의 입력 데이터 각각에 대한 딥러닝 모델을 생성하는, 다단계 딥러닝 방법.
  13. 입력 데이터를 이용하여 다단계(multi-level) 데이터베이스(DB)를 생성하는 입력부 - 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장함 -;
    상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하는 전처리부; 및
    다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행하는 학습부를 포함하고,
    상기 전처리부는,
    상기 입력 데이터에서 관심영역(region of interest)을 선정하고,
    상기 입력 데이터에 대한 회전, 이동, 및 반전 중 적어도 하나의 변환을 처리하여, 상기 입력 데이터를 확장하고,
    상기 확장과 연관된 설정 데이터에 기초하여, 상기 입력 데이터에서 상기 관심영역을 재선정하고,
    상기 입력 데이터는 입력 영상 데이터 및 입력 신호 데이터를 포함하고,
    상기 입력부는,
    상기 입력 영상 데이터로부터 신호 데이터를 추출하고, 상기 추출된 신호 데이터를 상기 입력 신호 데이터에 통합함으로써 생성되는 통합된 신호 데이터 및 상기 입력 신호 데이터로부터 영상 데이터를 추출하고, 상기 추출된 영상 데이터를 상기 입력 영상 데이터에 통합함으로써 생성되는 통합된 영상 데이터 중 적어도 하나를 생성하고,
    상기 통합된 신호 데이터 및 상기 통합된 영상 데이터 중 적어도 하나를 상기 다단계 데이터베이스에 저장하는
    다단계 딥러닝(deep learning) 장치.
  14. 제13항에 있어서,
    상기 학습부는 상기 다단계 딥러닝 모델을 시험(test)하고,
    상기 다단계 딥러닝 모델을 이용하여 사물을 인식하는 컴퓨터 프로그램을 실행하기 위한 실행파일을 생성하는 파일생성부를 더 포함하는, 다단계 딥러닝 장치.
  15. 제13항에 있어서,
    상기 입력 데이터는 사용자에 의해 입력된 데이터 및 웹에서 수집된 데이터 중 적어도 하나를 포함하는, 다단계 딥러닝 장치.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 제13항에 있어서,
    상기 전처리부는
    상기 관심영역이 선정된 입력 데이터에 대해 선행학습을 진행하고, 객체 검출 모델을 생성하는, 다단계 딥러닝 장치.
  21. 제20항에 있어서,
    상기 전처리부는
    상기 생성된 객체 검출 모델을 이용하여 상기 입력 데이터에 대해 객체 검출을 수행한 후 학습에 사용되는 데이터를 분류하는, 다단계 딥러닝 장치.
  22. 제13항에 있어서,
    상기 전처리부는
    상기 입력 데이터를 확대 또는 축소하는, 다단계 딥러닝 장치.
  23. 제13항에 있어서,
    상기 전처리부는
    상기 입력 데이터의 크기를 미리 결정된 크기로 조정하는, 다단계 딥러닝 장치.
  24. 제13항에 있어서,
    상기 학습부는 상기 적어도 두 개의 단계의 입력 데이터 각각에 대한 딥러닝 모델을 생성하는, 다단계 딥러닝 장치.
  25. 입력 데이터를 수신하는 입출력 인터페이스;
    다단계 딥러닝을 수행하는 적어도 하나의 프로세서; 및
    다단계(multi-level) 데이터베이스(DB)를 저장하는 스토리지(storage)를 포함하고,
    상기 적어도 하나의 프로세서는:
    상기 입력 데이터를 이용하여 상기 다단계(multi-level) 데이터베이스(DB)를 생성하고 - 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장함 -;
    상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하고; 그리고
    다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행하고,
    상기 적어도 하나의 프로세서는,
    상기 입력 데이터의 전처리를 위하여,
    상기 입력 데이터에서 관심영역(region of interest)을 선정하고,
    상기 입력 데이터에 대한 회전, 이동, 및 반전 중 적어도 하나의 변환을 처리하여, 상기 입력 데이터를 확장하고,
    상기 확장과 연관된 설정 데이터에 기초하여, 상기 입력 데이터에서 상기 관심영역을 재선정하고,
    상기 입력 데이터는 입력 영상 데이터 및 입력 신호 데이터를 포함하고,
    상기 프로세서는,
    상기 입력 영상 데이터로부터 신호 데이터를 추출하고, 상기 추출된 신호 데이터를 상기 입력 신호 데이터에 통합함으로써 생성되는 통합된 신호 데이터 및 상기 입력 신호 데이터로부터 영상 데이터를 추출하고, 상기 추출된 영상 데이터를 상기 입력 영상 데이터에 통합함으로써 생성되는 통합된 영상 데이터 중 적어도 하나를 생성하고,
    상기 통합된 신호 데이터 및 상기 통합된 영상 데이터 중 적어도 하나를 상기 다단계 데이터베이스에 저장하는
    다단계 딥러닝(deep learning) 장치.
  26. 다단계 딥러닝 방법을 수행하는 컴퓨터 프로그램을 저장한 컴퓨터 판독 가능한 기록매체에 있어서, 상기 컴퓨터 프로그램은 상기 컴퓨터가:
    입력 데이터를 이용하여 다단계(multi-level) 데이터베이스(DB)를 생성하도록 하고 - 상기 입력 데이터는 적어도 두 개의 단계로 분류되고, 상기 다단계 데이터베이스는 상기 적어도 두 개의 단계 각각에 대응하는 적어도 두 개의 서브 데이터베이스를 포함하고, 상기 서브 데이터베이스 각각은 대응하는 입력 데이터를 저장함 -;
    상기 다단계 데이터베이스에 저장된 입력 데이터를 전처리하도록 하고; 및
    다단계(multi-level) 딥러닝(deep learning) 모델을 생성하기 위하여 상기 전처리된 데이터에 대한 다단계(multi-level) 학습을 수행하도록 하는 명령어를 포함하고,
    상기 컴퓨터 프로그램은 상기 컴퓨터가 상기 입력 데이터의 전처리를 위하여,
    상기 입력 데이터에서 관심영역(region of interest)을 선정하고,
    상기 입력 데이터에 대한 회전, 이동, 및 반전 중 적어도 하나의 변환을 처리하여, 상기 입력 데이터를 확장하고,
    상기 확장과 연관된 설정 데이터에 기초하여, 상기 입력 데이터에서 상기 관심영역을 재선정하는 동작을 수행하도록 하는 명령어를 더 포함하고,
    상기 입력 데이터는 입력 영상 데이터 및 입력 신호 데이터를 포함하고,
    상기 컴퓨터 프로그램은 상기 컴퓨터가 상기 입력 데이터를 이용하여 상기 데이터베이스를 생성하도록 하기 위하여,
    상기 입력 영상 데이터로부터 신호 데이터를 추출하고, 상기 추출된 신호 데이터를 상기 입력 신호 데이터에 통합함으로써 생성되는 통합된 신호 데이터 및 상기 입력 신호 데이터로부터 영상 데이터를 추출하고, 상기 추출된 영상 데이터를 상기 입력 영상 데이터에 통합함으로써 생성되는 통합된 영상 데이터 중 적어도 하나를 생성하고,
    상기 통합된 신호 데이터 및 상기 통합된 영상 데이터 중 적어도 하나를 상기 다단계 데이터베이스에 저장하는 동작을 수행하도록 하는 명령어를 더 포함하는
    컴퓨터 판독 가능한 기록매체.
KR1020200095132A 2020-07-30 2020-07-30 강인한 학습 및 인식을 위한 다단계 딥러닝 방법 및 이를 수행하는 장치 KR102564051B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200095132A KR102564051B1 (ko) 2020-07-30 2020-07-30 강인한 학습 및 인식을 위한 다단계 딥러닝 방법 및 이를 수행하는 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200095132A KR102564051B1 (ko) 2020-07-30 2020-07-30 강인한 학습 및 인식을 위한 다단계 딥러닝 방법 및 이를 수행하는 장치

Publications (2)

Publication Number Publication Date
KR20220015083A KR20220015083A (ko) 2022-02-08
KR102564051B1 true KR102564051B1 (ko) 2023-08-04

Family

ID=80251575

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200095132A KR102564051B1 (ko) 2020-07-30 2020-07-30 강인한 학습 및 인식을 위한 다단계 딥러닝 방법 및 이를 수행하는 장치

Country Status (1)

Country Link
KR (1) KR102564051B1 (ko)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160096460A (ko) * 2015-02-05 2016-08-16 삼성전자주식회사 복수의 분류기를 포함하는 딥 러닝 기반 인식 시스템 및 그 제어 방법
KR20200018247A (ko) * 2018-08-09 2020-02-19 한국전자통신연구원 멀티 모달 입력 기반의 뉴럴 네트워크를 이용한 물질 분석 방법 및 이를 위한 장치
KR102090770B1 (ko) 2018-10-12 2020-03-18 성균관대학교산학협력단 자동화된 영상 인식 모델 생성과 영상 인식 장치 및 이를 이용한 관리 방법
KR102190103B1 (ko) * 2018-12-27 2020-12-11 (주)아크릴 인공 신경망의 상용화 서비스 제공 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Connor Shorten and Taghi M. Khoshgoftaar, "A survey on Image Data Augmentation for Deep Learning," Journal of Big Data (2019.07.06.)*

Also Published As

Publication number Publication date
KR20220015083A (ko) 2022-02-08

Similar Documents

Publication Publication Date Title
JP3653141B2 (ja) 機械読み取り可能形式の文書からプロセッサに対してキーフレーズを選択する自動的方法
US8527439B2 (en) Pattern identification method, parameter learning method and apparatus
GB2545661A (en) A method for analysing media content
JP6378855B1 (ja) 画像検索システム、画像検索方法およびプログラム
US11385866B2 (en) System and method for automatic software application creation
US20210012211A1 (en) Techniques for visualizing the operation of neural networks
CN104395913A (zh) 用于使用adaboost学习算法来检测面部特征点的位点的方法、设备和计算机可读记录介质
KR102364533B1 (ko) 인공 지능 기반의 인테리어 서비스 방법 및 이러한 방법을 수행하는 장치
US20220058383A1 (en) System and method to extract information from unstructured image documents
US9697441B2 (en) Feature selection method and apparatus, and pattern discrimination method and apparatus
US20220101643A1 (en) Information processing device, discerning method, and discerning program
CN105678349B (zh) 一种视觉词汇的上下文描述子生成方法
CN113255752A (zh) 基于特征聚类的固体材料一致性分选方法
KR102564051B1 (ko) 강인한 학습 및 인식을 위한 다단계 딥러닝 방법 및 이를 수행하는 장치
CN111797395A (zh) 恶意代码可视化及变种检测方法、装置、设备及存储介质
Pinitjitsamut et al. Logo Detection with Artificial Intelligent
KR102198224B1 (ko) 공간 데이터를 기초로 한 인공신경망을 이용한 비정상 데이터 구분 장치
JP2001337993A (ja) 文字認識結果を利用して情報を検索する検索装置および方法
RU2582064C1 (ru) Способы и системы эффективного автоматического распознавания символов с использованием леса решений
Jeon et al. Discovering latent topics with saliency-weighted LDA for image scene understanding
Aoyagi et al. Table-structure Recognition Method Consisting of Plural Neural Network Modules.
EP4089568A1 (en) Cascade pooling for natural language document processing
Konate et al. A comparison of saliency methods for deep learning explainability
JP2019096118A (ja) パターン認識プログラム、装置、及び方法
Karasek et al. Genetic programming based classifier in viola-jones rapidminer image mining extension

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant