KR20210141123A - 인공지능의 부분 학습 방법 및 이를 위한 장치 - Google Patents

인공지능의 부분 학습 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR20210141123A
KR20210141123A KR1020200058344A KR20200058344A KR20210141123A KR 20210141123 A KR20210141123 A KR 20210141123A KR 1020200058344 A KR1020200058344 A KR 1020200058344A KR 20200058344 A KR20200058344 A KR 20200058344A KR 20210141123 A KR20210141123 A KR 20210141123A
Authority
KR
South Korea
Prior art keywords
learning
partial
data
partial learning
learning model
Prior art date
Application number
KR1020200058344A
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 KR1020200058344A priority Critical patent/KR20210141123A/ko
Priority to US17/104,932 priority patent/US20210357749A1/en
Publication of KR20210141123A publication Critical patent/KR20210141123A/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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

기재된 실시예는 객체를 인식하는 인공지능을 학습하기 위한 기술에 관한 것으로, 입력 데이터를 전처리하여 전처리된 입력 데이터를 생성하는 단계; 상기 전처리된 입력 데이터를 추론기의 기존 학습 모델에 입력하여 추론 결과를 생성하는 단계; 상기 추론 결과에 기반하여 부분 학습이 필요한지 여부를 판단하는 단계; 상기 부분 학습이 필요하다고 판단된 경우, 상기 기존 학습 모델에 상응하는 제1 데이터 및 상기 전처리된 입력 데이터에 상응하는 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 단계; 및 상기 부분 학습 데이터 셋을 학습기에 입력하여 부분 학습을 수행하는 단계를 포함하는, 인공지능의 부분 학습 방법에 관한 것이다.

Description

인공지능의 부분 학습 방법 및 이를 위한 장치{METHOD FOR PARTIAL TRAINING OF ARTIFICIAL INTELLIGENCE AND APPARATUS FOR THE SAME}
본 발명은 객체를 인식하는 인공지능을 학습하기 위한 기술에 관한 것이다.
최근 학습 및 추론 기술을 기반으로 하는 인공지능 기술은 여러 산업 기술 분야에 다양하게 적용되고 있다. 특히 인공지능을 이용하여 객체를 인식하는 기술은 실시간으로 이상 상황 등을 감시하는 기술 등으로 널리 활용되고 있다.
일반적으로 인공지능의 딥러닝 기술을 활용하여 객체를 인식하는 기술은 미리 준비한 많은 양의 데이터를 고성능 컴퓨터에서 학습하여 학습 모델을 생성하고, 상기 학습 모델을 인식기에 탑재하여 각종 객체들을 인식한다. 그러나 이렇게 생성된 인식기는 사용 환경과 조건들이 달라지면서 인식하지 못하는 객체들이 생길 수 있고, 인식률이 낮은 객체들이 발생할 수 있다. 따라서 이러한 문제를 해결하기 위해서 데이터를 서버 시스템에서 수집하여 재학습을 하고, 재학습한 학습모델을 주기적으로 인식기에 재탑재하여 인식률을 높이는 방법이 사용되고 있다. 예를 들어, AI 스피커는 개개인의 음성을 인식하고, 그와 동시에 그 데이터를 서버 시스템에 저장을 한다. 그리고 상기 스피커는 저장된 데이터를 주기적으로 재학습을 하여 새로운 학습 모델을 생성하고, 상기 학습 모델은 인식기에 전송되어 업데이트하며, 이렇게 함으로써 기존의 인식률을 높이게 되는 것이다.
그러나 오프라인 환경의 기기는 서버를 활용하여 주기적으로 재학습을 하는것이 쉽지 않고, 특히 임베디드 디바이스는 데이터를 저장할 공간이나 학습기와 같은 시스템 자원이 부족하기 때문에 재학습을 하는 것이 쉽지 않다.
따라서 실시간 객체 인식기를 오프라인 환경이나 임베디드 디바이스에서도 구현가능하게 하기 위한 부분 학습 자동화 시스템을 본 발명에서 제안하고자 한다.
한국공개특허 제 10-2019-0113451호(2019. 10. 08.)
본 발명의 목적은 시스템 자원이 부족한 임베디드 시스템에서 새로운 데이터를 실시간으로 부분 학습할 수 있는 방법 및 장치를 제공함에 있다.
또한, 본 발명의 목적은 인공지능의 학습 모델을 오프라인 환경의 임베디드 시스템에서도 지속적으로 학습 지능을 향상시키고, 개별 환경에 최적화된 인식기를 구현할 수 있는 방법을 제공함에 있다.
실시예에 따른 인공지능의 부분 학습 방법은 입력 데이터를 전처리하여 전처리된 입력 데이터를 생성하는 단계; 상기 전처리된 입력 데이터를 추론기의 기존 학습 모델에 입력하여 추론 결과를 생성하는 단계; 상기 추론 결과에 기반하여 부분 학습이 필요한지 여부를 판단하는 단계; 상기 부분 학습이 필요하다고 판단된 경우, 상기 기존 학습 모델에 상응하는 제1 데이터 및 상기 전처리된 입력 데이터에 상응하는 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 단계; 및 상기 부분 학습 데이터 셋을 학습기에 입력하여 부분 학습을 수행하는 단계를 포함한다.
이 때, 상기 부분 학습 데이터 셋을 생성하는 단계는 사용자로부터 부분 학습 모드를 입력 받는 단계; 및 상기 부분 학습 모드에 기반하여 부분 학습 설정 파일을 생성하는 단계를 포함하고, 상기 부분 학습 모드는 자동 모드 또는 경량화 데이터 모드를 포함할 수 있다.
이 때, 상기 부분 학습 데이터 셋을 생성하는 단계는 사용자로부터 부분 학습 데이터 설정을 입력 받는 단계; 및 상기 부분 학습 데이터 설정을 기반으로 상기 기존 학습 모델에 상응하는 원본 데이터 셋으로부터 상기 제1 데이터를 추출하는 단계; 상기 부분 학습 데이터 설정을 기반으로 상기 전처리된 입력 데이터에서 상기 제2 데이터를 추출하는 단계; 상기 제1 데이터와 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 단계를 더 포함할 수 있다.
이 때, 상기 부분 학습을 수행하는 단계는 학습 모델 적재기를 이용하여 상기 기존 학습 모델을 가져오는 단계; 상기 부분 학습 데이터 셋을 이용하여 상기 기존 학습 모델을 학습하여 부분 학습된 학습 모델을 생성하는 단계; 학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경하는 단계를 포함할 수 있다.
이 때, 상기 부분 학습을 수행하는 단계는 상기 부분 학습 모드가 경량화 데이터 모드인 경우, 학습 모델 적재기를 이용하여 상기 기존 학습 모델의 경량화 모델을 가져오는 단계; 상기 부분 학습 데이터 셋을 이용하여 상기 경량화 모델을 학습하여 부분 학습된 학습 모델을 생성하는 단계; 및 학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경하는 단계를 포함할 수 있다.
이 때, 상기 제1 데이터를 추출하는 단계는 상기 원본 데이터 셋의 분류 목록 별로 랜덤 추출 개수의 대표 데이터를 추출하는 것이고, 상기 랜덤 추출 개수는 시스템이나 학습 환경에 따라서 임의로 조절할 수 있다.
이 때, 상기 부분 학습을 수행하는 단계는 부분 학습 실행 신호에 기반하여 학습기가 부분 학습을 수행하는 단계; 상기 부분 학습이 완료되면, 상기 학습기가 상기 추론기에게 부분 학습 완료 신호를 송신하는 단계; 및 상기 부분 학습 완료 신호에 기반하여 상기 추론기가 기존 학습 모델을 부분 학습된 기존 학습 모델로 변경하는 단계를 포함하고, 상기 부분 학습 완료 신호는 부분 학습된 학습 모델 파일의 이름과 경로를 포함하는 것일 수 있다.
이 때, 상기 학습기는 딥러닝 프레임워크의 Fine-tuning 기반의 가중치 갱신기인 것일 수 있다.
이 때, 상기 부분 학습 데이터 셋을 생성하는 단계는 상기 부분 학습 모드가 자동 모드인 경우, 학습할 데이터 보관함에서 학습할 데이터를 내부 자료구조에 등록하는 단계; 상기 내부 자료구조를 이용하여 부분 학습에 필요한 레이블(Label) 파일을 생성하는 단계; 및 생성된 상기 레이블 파일을 기반으로 상기 학습할 데이터와 상기 기존 학습 모델에 상응하는 기존의 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 단계를 더 포함할 수 있다.
이 때, 상기 부분 학습을 수행하는 단계는 딥러닝 프레임워크를 이용하여 학습에 필요한 설정 파일을 생성하는 단계; 상기 설정 파일을 기반으로 상기 딥러닝 프레임워크에서 부분 학습된 학습 모델을 생성하는 단계; 및 상기 부분 학습된 학습 모델을 상기 추론기와 연결하는 단계를 포함할 수 있다.
실시예에 따른 인공지능 부분 학습 장치는 상기 기존 학습 모델에 상응하는 제1 데이터 및 상기 전처리된 입력 데이터에 상응하는 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하고, 상기 부분 학습 데이터 셋을 학습기에 입력하여 부분 학습된 학습 모델을 생성하는 프로세서; 및 상기 부분 학습 데이터 셋 또는 부분 학습된 학습 모델을 저장하는 메모리를 포함할 수 있다.
이 때, 상기 프로세서는 부분 학습 모드를 사용자로부터 입력 받고, 상기 부분 학습 모드에 기반하여 부분 학습 설정 파일을 생성하는 것이고, 상기 부분 학습 모드는 자동 모드 또는 경량화 데이터 모드를 포함할 수 있다.
이 때, 상기 프로세서는 사용자로부터 부분 학습 데이터 설정을 입력 받고, 상기 부분 학습 데이터 설정을 기반으로 상기 기존 학습 모델에 상응하는 원본 데이터 셋으로부터 상기 제1 데이터를 추출하고, 상기 부분 학습 데이터 설정을 기반으로 상기 전처리된 입력 데이터에서 상기 제2 데이터를 추출하고, 상기 제1 데이터와 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 것일 수 있다.
이 때, 상기 프로세서는 학습 모델 적재기를 이용하여 상기 기존 학습 모델을 가져오고, 상기 부분 학습 데이터 셋을 이용하여 상기 기존 학습 모델을 부분 학습하여 부분 학습된 학습 모델을 생성하고, 학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경하는 것일 수 있다.
이 때, 상기 프로세서는 상기 부분 학습 모드가 경량화 데이터 모드인 경우, 학습 모델 적재기를 이용하여 상기 기존 학습 모델의 경량화 모델을 가져오고, 상기 부분 학습 데이터 셋을 이용하여 상기 경량화 모델을 부분 학습하여 부분 학습된 학습 모델을 생성하고, 학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경하는 것일 수 있다.
이 때, 상기 프로세서는 상기 원본 데이터 셋의 분류 목록 별로 랜덤 추출 개수의 대표 데이터를 추출하는 것이고, 상기 랜덤 추출 개수는 시스템이나 학습 환경에 따라서 임의로 조절할 수 있는 것일 수 있다.
이 때, 상기 프로세서는 부분 학습 실행 신호에 기반하여 학습기가 부분 학습을 수행하고, 상기 부분 학습이 완료되면, 상기 학습기가 상기 추론기에게 부분 학습 완료 신호를 송신하고, 상기 부분 학습 완료 신호에 기반하여 상기 추론기가 기존 학습 모델을 부분 학습된 기존 학습 모델로 변경하는 것이고, 상기 부분 학습 완료 신호는 부분 학습된 학습 모델 파일의 이름과 경로를 포함하고 있는 것일 수 있다.
이 때, 상기 프로세서는 상기 부분 학습 모드가 자동 모드인 경우, 학습할 데이터 보관함에서 학습할 데이터를 내부 자료구조에 등록하고, 상기 내부 자료구조를 이용하여 부분 학습에 필요한 레이블(Label) 파일을 생성하고, 생성된 상기 레이블 파일을 기반으로 상기 학습할 데이터와 기존의 데이터를 혼합하여 부분 학습을 위한 데이터 셋을 생성하는 것일 수 있다.
이 때, 상기 프로세서는 딥러닝 프레임워크를 이용하여 학습에 필요한 설정 파일을 생성하고, 상기 생성된 설정 파일을 기반으로 상기 딥러닝 프레임워크에서부분 학습된 학습 모델을 생성하고, 상기 부분 학습된 학습 모델을 상기 추론기와 연결하는 것일 수 있다.
실시예에 따른 인공지능의 부분 학습 판단 장치는 입력 데이터를 전처리하여 전처리된 입력 데이터를 생성하고, 상기 전처리된 입력 데이터를 추론기의 기존 학습 모델에 입력하여 추론 결과를 생성하고, 상기 추론 결과에 기반하여 부분 학습이 필요한지 여부를 판단하고, 상기 부분 학습이 필요하다고 판단된 경우, 부분 학습 장치에 부분 학습을 요청하고, 상기 부분 학습 장치로부터 부분 학습된 학습 모델을 받아 상기 추론기의 기존 학습 모델을 업데이트하는 프로세서; 및 상기 기존 학습 모델 또는 부분 학습된 학습 모델을 저장하는 메모리를 포함할 수 있다.
본 발명은 시스템 자원이 부족한 임베디드 시스템에서 새로운 데이터를 실시간으로 부분 학습할 수 있는 방법 및 장치를 제공할 수 있다.
또한, 본 발명은 인공지능의 학습 모델을 오프라인 환경의 임베디드 시스템에서도 지속적으로 학습 지능을 향상시키고, 개별 환경에 최적화된 인식기를 구현할 수 있는 방법을 제공할 수 있다.
도 1은 실시예에 따른 인공지능의 부분 학습 시스템의 일 예를 나타낸 블록도이다.
도 2는 도 1에 도시된 부분 학습 환경 생성부(170)의 일 예를 나타낸 블록도이다.
도 3은 도 2에 도시된 부분 학습 모드 입력부(220)의 사용자 인터페이스의 일 예를 나타낸 도면이다.
도 4는 도 2에 도시된 부분 학습 데이터 설정 입력부(260)의 사용자 인터페이스의 일 예를 나타낸 도면이다.
도 5는 도 1에 도시된 부분 학습 수행부(180)의 일 예를 나타낸 블록도이다.
도 6은 실시예에 따른 인공지능 부분 학습 방법으로 학습된 부분 학습된 학습 모델이 추론기에 즉각적으로 업데이트 되는 것을 나타낸 도면이다.
도 7은 부분 학습 모드가 자동 모드일 경우, 부분 학습 장치의 동작 흐름도를 나타낸 도면이다.
도 8은 부분 학습 데이터 생성부에서 부분 학습 데이터 셋이 생성되는 절차의 일 예를 나타낸 도면이다.
도 9는 실시예에 따른 인공지능의 부분 학습 방법의 동작 흐름도를 나타낸 도면이다.
도 10은 실시예에 따른 컴퓨터 시스템 구성을 나타낸 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
비록 "제1" 또는 "제2" 등이 다양한 구성요소를 서술하기 위해서 사용되나, 이러한 구성요소는 상기와 같은 용어에 의해 제한되지 않는다. 상기와 같은 용어는 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용될 수 있다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있다.
본 명세서에서 사용된 용어는 실시예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소 또는 단계가 하나 이상의 다른 구성요소 또는 단계의 존재 또는 추가를 배제하지 않는다는 의미를 내포한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 해석될 수 있다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하에서는, 도 1 내지 도 10을 참조하여 실시예에 따른 인공지능의 부분 학습 방법 및 이를 위한 장치가 상세히 설명된다.
도 1은 실시예에 따른 인공지능의 부분 학습 시스템의 일 예를 나타낸 블록도이다.
도 1을 참조하면, 인공지능의 부분 학습 방법을 구현하기 위한 인공지능의 부분 학습 시스템은 부분 학습 판단 장치(100)와 부분 학습 장치(110)를 포함할 수 있다. 상기 인공지능 부분 학습 시스템은 시스템 자원이 제약적인 임베디드 디바이스에 적용 가능한 실시간 객체 또는 음성을 인식하기 위한 인공지능의 학습 시스템이다.
부분 학습 판단 장치(100)는 추론을 하기 위한 입력 데이터(120)를 입력으로 받아 상기 추론의 결과를 기반으로 부분 학습 여부를 판단할 수 있다. 만약 상기 부분 학습 판단 장치(100)에서 상기 부분 학습이 필요하다고 판단된 경우, 부분 학습 장치(110)에 부분 학습을 요청하고, 상기 부분 학습 장치(110)로부터 부분 학습된 학습 모델을 받아 상기 추론기의 기존 학습 모델을 업데이트한다. 만약 상기 부분 학습 판단 장치(100)에서 부분 학습이 필요하지 않다고 판단된 경우 상기 추론 결과를 출력 데이터(130)로 출력한다.
부분 학습 판단 장치(100)는 전처리부(140), 추론부(150) 및 부분 학습 판단부(160)를 포함할 수 있다. 상기 전처리부(140)는 입력 데이터(120)를 전처리하여 전처리된 입력 데이터를 생성한다. 상기 추론부(150)는 상기 전처리된 입력 데이터를 추론기의 기존 학습 모델에 입력하여 추론 결과를 생성한다. 상기 부분 학습 판단부(160)는 상기 추론 결과에 기반하여 부분 학습이 필요한지 여부를 판단한다.
상기 전처리부(140)는 입력 데이터를 전처리하여 전처리된 입력 데이터를 생성하는데, 상기 전처리는 추론의 정확도를 높이기 위해 데이터를 가공하는 것을 말한다.
상기 추론부(150, 또는 추론기)는 사전에 학습되어 있는 모델인 기존 학습 모델이 탑재되어 있어, 상기 기존 학습 모델에 상기 전처리부(140)에서 가공된 입력 데이터를 입력하여 추론 결과를 생성한다. 상기 추론 결과는 일반적으로 확률 값으로 제공된다.
상기 부분 학습 판단부(160)는 상기 추론 결과에 기반하여 부분 학습이 필요한지 여부를 판단하는 동작을 수행한다. 상기 부분 학습 판단부(160)는 상기 추론 결과를 사용자가 원하는 결과와 비교하여 상기 부분 학습이 필요한지 여부를 판단한다. 만약 상기 추론 결과와 사용자가 원하는 결과가 같다면 부분 학습이 필요하지 않다고 판단하고, 상기 추론 결과를 출력 데이터(130)로 출력한다. 만약 상기 추론 결과와 사용자가 원하는 결과와 다르다면 부분 학습이 필요하다고 판단하고, 부분 학습 장치에 부분 학습 실행 신호를 전달해 부분 학습을 요청하게 된다. 사용자는 별도의 사용자 인터페이스를 통해 상기 사용자가 원하는 결과를 입력하거나, 상기 결과들을 직접 비교하여 부분 학습 여부를 판단하는 동작을 수행할 수 있다.
이상과 같이 상기 부분 학습 판단부(160)에서 부분 학습이 필요하다고 판단된 경우, 즉, 부분 학습 장치(110)가 상기 부분 학습 판단부(160)로부터 부분 학습 실행 신호를 전달받은 경우, 상기 부분 학습 장치(110)는 부분 학습 데이터 셋을 생성하고, 상기 데이터 셋을 이용하여 부분 학습을 수행하는 동작을 수행할 수 있다.
상기 부분 학습 장치(110)는 부분 학습 환경 생성부(170), 부분 학습 수행부(180)를 포함할 수 있다.
상기 부분 학습 환경 생성부(170)는 사용자 인터페이스를 통해 사용자로부터부분 학습을 위한 설정을 받고, 상기 설정을 기반으로 부분 학습에 필요한 설정 파일과 부분 학습 데이터 셋을 생성한다. 상기 부분 학습 수행부(180)는 상기 부분 학습 환경 생성부(170)에서 생성한 상기 설정 파일과 부분 학습 데이터 셋을 기반으로 학습기에서 학습을 한다.
부분 학습 환경 생성부(170)는 사용자로부터 부분 학습 모드를 입력 받고, 상기 부분 학습 모드에 기반하여 부분 학습 설정 파일을 생성하는 동작을 수행할 수 있다. 그리고 상기 부분 학습 모드는 자동 모드 또는 경량화 데이터 모드를 포함할 수 있다. 만약 자동 모드가 선택된 경우, 사용자가 원하는 결과가 나올 때까지 부분 학습을 계속하게 된다. 만약 부분 학습 모드가 자동 모드가 선택되지 않으면 수동 모드이고, 상기 수동 모드의 경우, 부분 학습을 수행할 때마다 사용자가 그 추론 결과를 확인하고 부분 학습을 실행할지 여부를 결정할 수 있다. 그리고 경량화 데이터 모드가 선택된 경우, 기존 학습 모델을 가져와서 부분 학습을 진행할 때, 기존 학습 모델의 경량화된 학습 모델을 사용하게 된다. 이와 같은 경량화 데이터 모드는 시스템 자원이 부족한 단말기에서 결과의 정확성보다는 실시간 동작이 상대적으로 중요한 경우 유용하게 사용될 수 있다.
또한 상기 부분 학습 환경 생성부(170)는 사용자로부터 부분 학습 데이터 설정을 입력받고, 상기 기존 학습 모델에 상응하는 제1 데이터 및 상기 전처리된 입력 데이터에 상응하는 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 동작을 수행할 수 있다.
이 때, 상기 제1 데이터는 상기 기존 학습 모델에 상응하는 원본 데이터 셋의 일부를 추출하여 생성될 수 있다. 이 때, 상기 제2 데이터는 상기 전처리된 입력 데이터의 일부를 추출하여 생성될 수 있다.
이렇게 생성된 부분 학습 데이터 셋은 원본 데이터 셋보다 훨씬 적은 용량의 데이터이기 때문에 시스템 자원이 풍부하지 않은 시스템에서도 부분 학습이 가능해지는 것이다.
또한, 상기 제1 데이터를 추출하는 동작은 상기 원본 데이터 셋의 분류 목록 별로 랜덤 추출 개수의 대표 데이터를 추출하고, 상기 랜덤 추출 개수는 시스템이나 학습 환경에 따라서 임의로 조절할 수 있다. 이렇게 함으로써 새로운 데이터만으로 구성된 부분 학습 데이터 셋을 생성하여 사용하였을 경우 학습 가중치가 한 곳으로 치우치게 되는 오버피팅 문제를 해결할 수 있다.
그리고 상기 부분 학습 모드와 부분 학습 데이터 설정은 사용자 인터페이스를 통해 입력 받을 수 있다. 이 때, 상기 부분 학습 모드를 위한 사용자 인터페이스는 자동 모드 설정, 경량화 데이터 모드 설정, 부분 학습 경로 설정을 포함할 수 있다. 여기서 상기 부분 학습 경로 설정은 부분 학습 시에 필요한 딥러닝 프레임워크의 위치, 데이터의 위치, 학습 모델의 위치, 학습 시에 필요한 설정 파일 위치, 부분 학습이 실행되는 위치를 포함할 수 있다. 또한 상기 부분 학습 데이터 설정을 위한 사용자 인터페이스는 데이터 보관함, 학습할 데이터 보관함, 등록 버튼, 삭제 버튼, 부분 학습 실행 버튼을 포함할 수 있다.
부분 학습 수행부(180)는 상기 부분 학습 환경 생성부(170)에서 생성한 상기 부분 학습 데이터 셋을 이용하여 기존 학습 모델을 부분 학습하여 부분 학습된 학습 모델을 생성하는 동작을 수행할 수 있다. 이와 같은 동작을 수행하기 위하여, 상기 부분 학습 수행부(180)는 우선 학습 모델 적재기를 이용하여 상기 기존 학습 모델을 가져온다. 상기 부분 학습 수행부(180)는 상기 부분 학습 데이터 셋을 이용하여 상기 기존 학습 모델을 부분 학습하여 부분 학습된 학습 모델을 생성한다. 이 때, 상기 부분 학습 환경 생성부(170)에서 생성한 부분 학습 설정 파일을 이용할 수 있다. 그리고 상기 부분 학습 수행부(180)는 학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경한다.
만약 상기 부분 학습 모드가 경량화 데이터 모드인 경우, 상기 부분 학습 수행부(180)는 상기 기존 학습 모델 대신 상기 기존 학습 모델의 경량화 모델을 사용할 수 있다. 즉, 학습 모델 적재기를 이용하여 상기 기존 학습 모델의 경량화 모델을 가져오고, 상기 부분 학습 데이터 셋을 이용하여 상기 경량화 모델을 학습하여 부분 학습된 학습 모델을 생성한다. 그리고 학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경한다.
이 때, 상기 부분 학습 데이터 셋을 학습하기 위하여 일반적으로 Caffe 및 Tensorflow와 같은 딥러닝 프레임워크를 사용할 수 있다. 그리고 상기 딥러닝 프레임의 Fine-Tuning 기반의 가중치 갱신기를 이용하여 상기 부분 학습 데이터 셋을 학습할 수 있다. 우선 IPC 기반의 학습 모델 적재기를 통해서 기존의 학습 모델을 가져오고, 상기 가중치 갱신기를 이용하여 부분 학습된 학습 모델을 생성한다. 여기서 Fine-Tuning 기반의 가중치 갱신기는 딥러닝 프레임워크에서 제공하는 기능을 사용하거나 자체 개발된 가중치 갱신기를 사용할 수 있다. 그리고 상기 부분 학습된 학습 모델은 IPC 기반의 학습 모델 전송기를 통해서 추론기에서 사용하고 있는 학습 모델을 변경한다.
추론기가 새로 입력된 데이터에 대해서 처음에는 인식하지 못하거나 인식률이 낮지만, 적어도 한번 이상의 상기 부분 학습을 하게 되면 상기 인식률이 증가하여, 결국에는 사용자가 원하는 인식률을 얻을 수 있다. 이 때, 시스템 자원이 풍부하지 않은 기기에서도 학습이 가능하게 하기 위해서 딥러닝 프레임워크에서 제공하는 pre-training 기법을 사용할 수도 있다.
부분 학습 모드가 자동 모드가 선택된 경우, 상기 부분 학습 장치는 아래와같이 동작할 수 있다. 우선 부분 학습 환경 생성부(170)는 학습할 데이터 보관함에서 학습할 데이터를 내부 자료구조에 등록하고, 상기 내부 자료구조를 이용하여 부분 학습에 필요한 레이블(Label)파일을 생성할 수 있다. 그리고 생성된 상기 레이블 파일을 기반으로 상기 학습할 데이터와 상기 기존 학습 모델에 상응하는 기존의 데이터를 혼합하여 부분 학습 데이터 셋을 생성할 수 있다.
이 때, 부분 학습 수행부(180)는 딥러닝 프레임워크를 이용하여 학습에 필요한 설정 파일을 생성할 수 있다. 상기 설정 파일을 기반으로 상기 딥러닝 프레임워크에서 학습된 부분 학습된 학습 모델을 생성하고, 상기 부분 학습된 학습 모델을 추론부(150)의 추론기와 연결하는 동작을 수행할 수 있다.
도 2는 도 1에 도시된 부분 학습 환경 생성부(170)의 일 예를 나타낸 블록도이다.
도 2를 참조하면, 부분 학습 환경 생성부(170)는 부분 학습 모드(210)와 부분 학습 데이터 설정(250)을 입력으로 받는다. 상기 부분 학습 환경 생성부(170)는 상기 부분 학습 모드에 기반하여 부분 학습 설정 파일(240)을 생성하여 출력하고, 상기 부분 학습 데이터 설정에 기반하여 부분 학습 데이터 셋(280)을 생성하여 출력한다.
그리고 부분 학습 환경 생성부(170)는 부분 학습 모드 입력부(220), 부분 학습 설정 파일 생성부(230), 부분 학습 데이터 설정 입력부(260) 및 부분 학습 데이터 생성부(270)을 포함할 수 있다.
부분 학습 모드 입력부(220)는 사용자로부터 부분 학습 모드(210)를 입력 받고, 부분 학습 설정 파일 생성부(230)는 상기 부분 학습 모드(210)에 기반하여 부분 학습 설정 파일(240)을 생성하는 동작을 수행할 수 있다. 그리고 상기 부분 학습 모드(210)는 자동 모드 또는 경량화 데이터 모드를 포함할 수 있다. 만약 자동 모드가 선택된 경우, 사용자가 원하는 결과가 나올 때까지 부분 학습을 계속하게 된다. 만약 부분 학습 모드가 자동 모드가 선택되지 않으면 수동 모드이고, 상기 수동 모드의 경우, 부분 학습을 수행할 때마다 사용자가 그 추론 결과를 확인하고 부분 학습을 실행할지 여부를 결정할 수 있다. 그리고 경량화 데이터 모드가 선택된 경우, 기존 학습 모델을 가져와서 부분 학습을 진행할 때, 기존 학습 모델의 경량화된 학습 모델을 사용하게 된다. 이와 같은 경량화 데이터 모드는 시스템 자원이 부족한 단말기에서 결과의 정확성보다는 실시간 동작이 상대적으로 중요한 경우 유용하게 사용될 수 있다.
또한, 부분 학습 데이터 설정 입력부(260)는 사용자로부터 부분 학습 데이터 설정(250)을 입력받고, 추론부(또는 추론기)의 기존 학습 모델에 상응하는 제1 데이터 및 전처리부에서 전처리된 입력 데이터에 상응하는 제2 데이터를 혼합하여 부분 학습 데이터 셋(280)을 생성하는 동작을 수행할 수 있다.
이 때, 상기 제1 데이터는 상기 기존 학습 모델에 상응하는 원본 데이터 셋의 일부를 추출하여 생성될 수 있다. 이 때, 상기 제2 데이터는 상기 전처리된 입력 데이터의 일부를 추출하여 생성될 수 있다.
이렇게 생성된 부분 학습 데이터 셋은 원본 데이터 셋보다 훨씬 적은 용량의 데이터이기 때문에 시스템 자원이 풍부하지 않은 시스템에서도 부분 학습이 가능해진다.
또한, 상기 제1 데이터를 추출하는 동작은 상기 원본 데이터 셋의 분류 목록 별로 랜덤 추출 개수의 대표 데이터를 추출하고, 상기 랜덤 추출 개수는 시스템이나 학습 환경에 따라서 임의로 조절할 수 있다. 이렇게 함으로써 새로운 데이터만으로 구성된 부분 학습 데이터 셋을 생성하여 사용하였을 경우 학습 가중치가 한 곳으로 치우치는 오버피팅 문제를 해결할 수 있다.
그리고 상기 부분 학습 모드 입력부(220)와 상기 부분 학습 데이터 설정 입력부(260)는 사용자 인터페이스를 통해 입력 받을 수 있다. 이 때, 상기 부분 학습 모드 입력부(220)의 사용자 인터페이스는 자동 모드 설정, 경량화 데이터 모드 설정, 부분 학습 경로 설정을 포함할 수 있다. 여기서 상기 부분 학습 경로 설정은 부분 학습 시에 필요한 딥러닝 프레임워크의 위치, 데이터의 위치, 학습 모델의 위치, 학습 시에 필요한 설정 파일 위치, 부분 학습이 실행되는 위치를 포함할 수 있다. 또한 상기 부분 학습 데이터 설정 입력부(260)의 사용자 인터페이스는 데이터 보관함, 학습할 데이터 보관함, 등록 버튼, 삭제 버튼, 부분 학습 실행 버튼을 포함할 수 있다.
도 3은 도 2에 도시된 부분 학습 모드 입력부(220)의 사용자 인터페이스의 일 예를 나타낸 도면이다.
도 3을 참조하면, 부분 학습 모드 입력부(220)의 사용자 인터페이스는 자동모드 설정(310), 경량화 데이터 모드 설정(320), 부분 학습 경로 설정(330)의 3개의 설정탭을 포함할 수 있다.
사용자가 자동 모드 설정(310)의 설정 탭을 누르면, 자동 모드의 부분 학습이 진행되고, 사용자가 원하는 결과가 나올 때까지 부분 학습을 계속하게 된다. 이 때, 상기 사용자가 원하는 결과는 이미 입력됐다고 가정한다. 만약 자동 모드 설정(310)의 설정탭이 눌러지지 않으면 기본 설정으로 유지되고, 이때의 모드는 수동 모드이다. 상기 수동 모드의 경우, 부분 학습을 수행할 때마다 사용자가 그 추론 결과를 확인하고 부분 학습을 실행할 지 여부를 결정할 수 있다. 상기 부분 학습 실행할 지 여부에 대한 입력은 또 다른 사용자 인터페이스에 의해 입력될 수 있다.
그리고 사용자가 경량화 데이터 모드 설정(320)의 설정 탭을 누르면, 부분 학습을 진행하기 위해 기존 학습 모델을 가져오는 경우, 기존 학습 모델의 경량화된 학습 모델을 가져와 사용하게 된다. 이와 같은 경량화 데이터 모드는 시스템 자원이 부족한 단말기에서 결과의 정확성보다는 실시간 동작이 상대적으로 중요한 경우 유용하게 사용될 수 있다.
그리고, 사용자가 부분 학습 경로 설정(330)의 설정 탭을 누르면, 부분 학습 시에 필요한 딥러닝 프레임워크의 위치, 데이터의 위치, 학습 모델의 위치, 학습 시에 필요한 설정 파일 위치, 부분 학습이 실행되는 위치 등을 설정할 수 있다.
도 4는 도 2에 도시된 부분 학습 데이터 설정 입력부(260)의 사용자 인터페이스의 일 예를 나타낸 도면이다.
도 4를 참조하면, 부분 학습 데이터 설정 입력부(260)의 사용자 인터페이스는 2개의 보관함과 3개의 버튼으로 구성될 수 있다. 즉, 데이터 보관함(410), 학습할 데이터 보관함(440)의 2개의 보관함, 그리고 등록 버튼(420), 삭제 버튼(430), 부분 학습 실행 버튼(450)의 3개의 버튼을 포함할 수 있다.
상기 데이터 보관함(210)은 스마트 기기에 있는 갤러리처럼 학습시에 필요한 데이터들이 보관되어 있는 곳이다. 상기 데이터 보관함(410)에 있는 데이터들은 이미 전처리기를 통해 전처리된 데이터들이다.
상기 학습할 데이터 보관함(230)은 사용자가 부분 학습을 하기 위해 상기 데이터 보관함(410)에서 선택한 데이터들을 레이블링(Labeling)하여 보관하는 곳이다.
그리고 사용자는 상기 등록 버튼(420)을 이용하여 상기 데이터 보관함(410)에 있는 데이터들 중 일부를 학습할 데이터 보관함(440)으로 옮길 수 있다. 그리고 사용자는 상기 삭제 버튼(430)을 이용하여 학습할 데이터 보관함(440)에서 필요없는 데이터를 삭제할 수 있다. 그리고 사용자는 상기 부분 학습 실행 버튼(450)을 이용하여 학습할 데이터 보관함에 있는 데이터를 이용하여 부분 학습을 내부적으로 수행할 수 있다. 이렇게 부분 학습을 수행하고 나면 부분 학습 경로 설정에 저장된 학습 모델의 위치에 학습된 부분 학습된 학습 모델 파일이 생성될 수 있다.
도 5는 도 1에 도시된 부분 학습 수행부(180)의 일 예를 나타낸 블록도이다.
도 5를 참조하면, 부분 학습 수행부(180)는 부분 학습 설정 파일(240)과 부분 학습 데이터 셋(280)을 입력으로 받아 학습기(310)를 이용하여 기존 학습 모델(340)을 학습하여 부분 학습된 학습 모델(350)을 생성한다. 상기 부분 학습 수행부(180)는 학습기(310), 학습 모델 적재기(330), 기존 학습 모델(340), 부분 학습된 학습 모델(350), 학습 모델 전송기(360)를 포함할 수 있다.
학습 모델 적재기(330)는 추론기(320)로부터 기존 학습 모델(340)을 가져올수 있다. 학습기(310)는 부분 학습 설정 파일(240)과 부분 학습 데이터 셋(280)을 부분 학습 환경 생성부로부터 입력 받아 상기 기존 학습 모델(340)을 학습할 수 있다. 그리고 학습 모델 전송기(360)는 상기 학습기(310)에서 생성한 부분 학습된 학습 모델(350)을 상기 추론기에 전송하여 상기 추론기의 기존 학습 모델을 변경할 수 있다.
만약 부분 학습 모드가 경량화 데이터 모드가 선택된 경우, 상기 학습기(180)는 상기 기존 학습 모델 대신 상기 기존 학습 모델의 경량화 모델을 사용할 수도 있다. 즉, 학습 모델 적재기(330)는 상기 기존 학습 모델의 경량화 모델을 추론기(320)로부터 가져오고, 상기 학습기(310)는 상기 경량화 모델을 학습하여 부분 학습된 학습 모델을 생성한다. 그리고 학습 모델 전송기(360)는 상기 부분 학습된 학습 모델을 상기 추론기에 전송하여 상기 추론기의 기존 학습 모델을 변경할 수 있다.
이 때, 상기 학습 모델 적재기(330)는 IPC(Inter Processor Communication)기반의 학습 모델 적재기일 수 있다. 상기 학습 모델 전송기(360)도 IPC 기반의 학습 모델 전송기일 수 있다.
또한, 학습기(310)는 일반적으로 Caffe 및 Tensorflow와 같은 딥러닝 프레임워크를 사용할 수 있다. 그리고 상기 딥러닝 프레임의 Fine-Tuning 기반의 가중치 갱신기를 이용하여 상기 부분 학습 데이터 셋을 학습할 수 있다. 우선 IPC 기반의 학습 모델 적재기를 통해서 기존의 학습 모델을 가져오고, 상기 가중치 갱신기를 이용하여 부분 학습된 학습 모델을 생성한다. 여기서 Fine-Tuning 기반의 가중치 갱신기는 딥러닝 프레임워크에서 제공하는 기능을 사용하거나 자체 개발된 가중치 갱신기를 사용할 수 있다.
상기 추론기(320)가 새로 입력된 데이터에 대해서 처음에는 인식하지 못하거나 인식률이 낮지만, 적어도 한번 이상의 부분 학습을 하게 되면 상기 인식률이 증가하여, 결국에는 사용자가 원하는 인식률을 얻을 수 있다. 이 때, 시스템 자원이 풍부하지 않은 기기에서도 학습이 가능하게 하기 위해서 딥러닝 프레임워크에서 제공하는 pre-training 기법을 사용할 수도 있다.
만약 부분 학습 모드가 자동 모드로 선택된 경우, 부분 학습 데이터 셋(280)과 부분 학습 설정 파일(240)을 입력 받지 않는다. 대신 상기 학습기(310)는 딥러닝 프레임워크를 이용하여 학습에 필요한 설정 파일을 생성하고, 상기 설정 파일을 기반으로 상기 딥러닝 프레임워크에서 학습된 부분 학습된 학습 모델을 생성할 수 있다. 그리고 상기 학습기(310)는 상기 부분 학습된 학습 모델을 추론기(320)와 연결하는 동작을 수행하게 된다.
도 6은 실시예에 따른 인공지능 부분 학습 방법으로 학습된 부분 학습된 학습 모델이 추론기에 즉각적으로 업데이트 되는 것을 나타낸 도면이다.
도 6을 참조하면, IPC 기반의 명령 신호 송신부1(630)은 부분 학습 환경 생성부에서 부분 학습 설정이 완료되면 부분 학습 수행부에 부분 학습을 위한 명령 신호를 전달한다. IPC 기반 명령 신호 수신부1(640)에서 상기 명령 신호를 수신하면, 학습기(620)에서 부분 학습된 학습 모델(600)을 생성하도록 요청한다. 상기 학습기(620)에서 부분 학습된 학습 모델 생성이 완료되면, IPC 기반 명령 신호 송신부2(650)에서 부분 학습 완료 신호를 송신한다. IPC 기반 명령 신호 수신부2(660)가 상기 완료 신호를 수신하면, 추론기(610)에게 학습 모델 변경하라는 업데이트 요청을 한다. 상기 추론기(610)가 상기 업데이트 요청에 따라 기존 학습 모델을 제거하고 상기 부분 학습된 학습 모델(600)을 추가한다. 그리고 추론기(610)가 이렇게 업데이트된 학습 모델로 추론을 하면, 기존의 인식률보다 정확도가 향상될 수 있다.
도 7은 부분 학습 모드가 자동 모드일 경우, 부분 학습 장치의 동작 흐름도를 나타낸 도면이다.
도 7을 참조하면, 우선 학습할 데이터 보관함을 읽어 학습할 데이터를 내부 자료구조에 등록을 한다(S710). 상기 내부 자료구조를 이용하여 부분 학습에 필요한 레이블(Label) 파일을 생성한다(S720). 생성된 상기 레이블 파일을 기반으로 상기 학습할 데이터와 기존의 데이터를 혼합하여 부분 학습을 위한 데이터셋을 생성한다(S730).
그리고 딥러닝 프레임워크를 이용하여 학습에 필요한 설정 파일을 생성한다(S740). 상기 설정 파일을 기반으로 상기 딥러닝 프레임 워크에서 부분 학습된 학습 모델을 생성한다(S750). 이러한 부분 학습 실행은 딥러닝 프레임워크 내부에서 일어난다. 부분 학습이 완료되면 학습 모델이 생성되고 생성된 상기 부분 학습된 학습 모델이 즉각적으로 추론기에 연결된다(S770).
그리고 이상과 같은 자동 모드의 부분 학습 동작은 사용자가 원하는 추론 결과가 나올 때까지 반복하게 되는 것이다.
도 8은 부분 학습 데이터 생성부에서 부분 학습 데이터 셋이 생성되는 절차의 일 예를 나타낸 도면이다.
도 8을 참조하면, 상기 부분 학습 데이터 생성부는 사용자로부터 부분 학습데이터 설정을 입력받는다. 상기 부분 학습 데이터 설정을 기반으로 기존 학습 모델에 상응하는 원본 데이터 셋(810)으로부터 제1 데이터(820)를 추출한다. 그리고 상기 부분 학습 데이터 생성부는 상기 부분 학습 데이터 설정을 기반으로 전처리된 입력 데이터(830)에서 제2 데이터(840)를 추출한다. 상기 제1 데이터를 추출하는 동작과 제2 데이터를 추출하는 동작은 동시에 또는 이시에 수행할 수 있다. 그리고 상기 부분 학습 데이터 생성부는 상기 제1 데이터(820)와 제2 데이터(840)를 혼합하여 부분 학습 데이터 셋(850)을 생성한다.
부분 학습 데이터셋이 필요한 이유는 자원이 풍부하지 않은 시스템에서도 학습이 가능하도록 하기 위함이다. 그리고 상기 부분 학습 데이터셋은 항상 생성되는 것이 아니라, 사용자의 요구가 있을 때만 생성할 수 있다.
새로운 데이터에 대한 부분 학습에 대해서 사용자 요구사항이 발생하면, 기존 학습 모델의 분류 목록을 효율적으로 반영하기 위해서 원본 데이터 셋(810)에서 목록 별로 대표 데이터를 랜덤하게 정해진 갯수만큼 추출하여 제1 데이터를 생성한다. 상기 랜덤 추출 개수는 시스템이나 학습 환경에 따라서 사용자가 임의로 조절할 수 있다. 이렇게 하는 이유는 새로운 데이터만으로 구성된 학습 데이터를 생성하게 되면 학습 가중치가 한 곳으로 치우칠 수 있기 때문이다. 즉, 오퍼피팅 문제를 해결하기 위함이다.
도 8에서는 설명의 편의를 위해 상기 랜덤 추출 개수를 3으로 선택한 예를 보여주고 있다. 즉, 분류목록 A의 300개의 데이터 중에 3개의 데이터 1, 107, 300을 추출 했고, 분류 목록 B의 300개의 데이터 중에 3개의 데이터 404, 406, 503을 추출하였음을 확인할 수 있다. 이렇게 해서 생성된 제1 데이터(820)는 1, 107, 300, 404, 406, 503을 포함하게 되는 것이다.
그리고 새로 입력된 데이터를 전처리하여 생성한 전처리된 입력 데이터(830)에서 사용자가 선택한 데이터를 추출하여 제2 데이터(840)를 생성한다. 도 8에서는 첫번째 데이터와 5번째 데이터를 선택한 예를 보여주고 있다.
그리고 제1 데이터와 제2 데이터를 혼합하여 부분 학습 데이터셋(850)을 생성한다. 상기 부분 학습 데이터 셋은 원본 데이터 셋보다 휠씬 적은 양의 데이터를 보유하고 있기 때문에 자원이 풍부하지 않은 시스템에서도 학습이 가능하다는 장점이 있다. 상기 부분 학습 데이터셋을 이용하여 학습하여 부분 학습된 학습 모델을 생성하여 상기 부분 학습된 학습 모델로 추론기의 기존 학습 모델을 변경, 업데이트하게 된다.
도 9는 실시예에 따른 인공지능의 부분 학습 방법의 동작 흐름도를 나타낸 도면이다.
도 9를 참조하면, 우선 추론을 하기 위한 데이터가 인공지능의 부분 학습 판단 장치에 입력된다(S910). 상기 부분 학습 판단 장치는 추론의 정확도를 높이기 위해 입력된 데이터를 전처리하여 전처리된 입력 데이터를 생성한다(S920).
그리고 상기 전처리된 입력 데이터를 추론기의 기존 학습 모델에 입력하여 추론 결과를 생성한다(S930). 즉, 상기 추론기는 사전에 학습되어 있는 모델인 기존 학습 모델이 탑재되어 있어, 상기 기존 학습 모델에 전처리된 입력 데이터를 입력하여 추론 결과를 생성하는 것이다. 그리고 상기 추론 결과는 보통 확률 값으로 제공된다.
상기 추론 결과에 기반하여 부분 학습이 필요한지 여부를 판단한다(S940). 즉, 상기 추론 결과를 사용자가 원하는 결과와 비교한다.
만약 상기 추론 결과와 사용자가 원하는 결과와 다르다면 부분 학습이 필요하다고 판단하고, 부분 학습 장치에 부분 학습 실행 신호를 전달해 부분 학습을 요청하게 된다. 사용자가 원하는 결과를 입력하거나 상기 결과들을 비교하여 부분 학습 여부를 결정하는 동작은 별도의 사용자 인터페이스를 통해 사용자가 직접 입력할 수도 있다.
만약 상기 부분 학습이 필요하다고 판단된 경우, 부분 학습 장치로 넘어가게 된다(S940, 예)
부분 학습 장치는 부분 학습 관련 설정을 사용자 인터페이스를 통해 입력받는다(S950). 즉, 사용자로부터 부분 학습 모드 및 부분 학습 데이터 설정을 입력받을 수 있다. 상기 부분 학습 모드는 자동 모드, 경량화 데이터 모드 또는 부분 학습 경로 설정을 포함할 수 있다.
그리고 상기 부분 학습 장치는 상기 부분 학습 관련 설정을 기반으로 부분 학습 설정 파일과 부분 학습 데이터 셋을 생성한다(S960). 즉, 상기 부분 학습 모드에 기반하여 부분 학습 설정 파일을 생성하고, 상기 부분 학습 데이터 설정을 기반으로 상기 부분 학습 데이터 셋을 생성한다. 그리고 상기 부분 학습 데이터 셋은 상기 기존 학습 모델에 상응하는 제1 데이터 및 상기 전처리된 입력 데이터에 상응하는 제2 데이터를 혼합하여 생성하는 것이다.
그리고 상기 부분 학습 장치는 상기 부분 학습 설정 파일과 부분 학습 데이터 셋을 기반으로 부분 학습을 실행한다(S970). 우선 상기 부분 학습 장치는 학습 모델 적재기를 이용하여 기존 학습 모델을 가져온다. 그리고 상기 부분 학습 설정 파일과 부분 학습 데이터 셋을 이용하여 상기 기존 학습 모델을 부분 학습하여 부분 학습된 학습 모델을 생성한다. 그리고 학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경한다.
만약 부분 학습 모드가 경량화 데이터 모드인 경우는 상기 부분 학습 장치는 학습 모델 적재기를 이용하여 기존 학습 모델의 경량화 모델을 가져온다. 그리고 상기 부분 학습 설정 파일과 부분 학습 데이터 셋을 이용하여 상기 경량화 모델을 학습하여 부분 학습된 학습 모델을 생성한다. 그리고 학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경한다. 이렇게 하면 시스템 자원이 부족한 단말기의 경우도 부분 학습을 진행할 수 있다.
이상과 같이 상기 부분 학습 장치가 부분 학습을 실행하여 부분 학습된 학습 모델이 생성되면 상기 부분 학습된 학습 모델로 기존 학습 모델을 변경하여 업데이트한다(S980). 그리고 다시 추론 단계(S930)으로 넘어가 추론을 하고 상기 추론 결과에 기반하여 다시 부분 학습이 필요한지 여부를 판단하는 단계(S940)을 진행한다. 이러한 부분 학습 과정은 사용자가 원하는 추론 결과를 얻게 될 때까지 반복하게 된다.
결국 사용자가 원하는 추론 결과를 얻게 되면 더 이상 부분 학습이 필요하지 않다고 판단하고(S940, 아니오), 추론 결과를 출력 데이터로 출력한다(S990).
도 10은 실시예에 따른 컴퓨터 시스템 구성을 나타낸 도면이다.
실시예에 따른 실시예에 따른 인공지능 부분 학습 장치 또는 인공지능 부분 학습 판단 장치는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(1000)에서 구현될 수 있다.
컴퓨터 시스템(1000)은 버스(1020)를 통하여 서로 통신하는 하나 이상의 프로세서(1010), 메모리(1030), 사용자 인터페이스 입력 장치(1040), 사용자 인터페이스 출력 장치(1050) 및 스토리지(1060)를 포함할 수 있다. 또한, 컴퓨터 시스템(1000)은 네트워크(1080)에 연결되는 네트워크 인터페이스(1070)를 더 포함할 수 있다. 프로세서(1010)는 중앙 처리 장치 또는 메모리(1030)나 스토리지(1060)에 저장된 프로그램 또는 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(1030) 및 스토리지(1060)는 휘발성 매체, 비휘발성 매체, 분리형 매체, 비분리형 매체, 통신 매체, 또는 정보 전달 매체 중에서 적어도 하나 이상을 포함하는 저장 매체일 수 있다. 예를 들어, 메모리(1030)는 ROM(1031)이나 RAM(1032)을 포함할 수 있다.
이상에서 설명된 실시예에 따르면, 시스템 자원이 부족한 임베디드 시스템에서 새로운 데이터를 실시간으로 부분 학습할 수 있는 방법 및 장치를 제공할 수 있다.
또한, 본 발명은 인공지능의 학습 모델을 오프라인 환경의 임베디드 시스템에서도 지속적으로 학습 지능을 향상시키고, 개별 환경에 최적화된 인식기를 구현할 수 있는 방법을 제공할 수 있다.
이상에서 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 부분 학습 판단 장치
110: 부분 학습 장치
120: 입력 데이터
130: 출력 데이터
140: 전처리부
150: 추론부
160: 부분 학습 판단부
170: 부분 학습 환경 생성부
180: 부분 학습 수행부

Claims (20)

  1. 입력 데이터를 전처리하여 전처리된 입력 데이터를 생성하는 단계;
    상기 전처리된 입력 데이터를 추론기의 기존 학습 모델에 입력하여 추론 결과를 생성하는 단계;
    상기 추론 결과에 기반하여 부분 학습이 필요한지 여부를 판단하는 단계;
    상기 부분 학습이 필요하다고 판단된 경우, 상기 기존 학습 모델에 상응하는 제1 데이터 및 상기 전처리된 입력 데이터에 상응하는 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 단계; 및
    상기 부분 학습 데이터 셋을 학습기에 입력하여 부분 학습을 수행하는 단계를 포함하는, 인공지능의 부분 학습 방법.
  2. 제1 항에 있어서,
    상기 부분 학습 데이터 셋을 생성하는 단계는
    사용자로부터 부분 학습 모드를 입력 받는 단계; 및
    상기 부분 학습 모드에 기반하여 부분 학습 설정 파일을 생성하는 단계를 포함하고,
    상기 부분 학습 모드는 자동 모드 또는 경량화 데이터 모드를 포함하는 것인, 인공지능의 부분 학습 방법.
  3. 제2 항에 있어서,
    상기 부분 학습 데이터 셋을 생성하는 단계는
    사용자로부터 부분 학습 데이터 설정을 입력 받는 단계; 및
    상기 부분 학습 데이터 설정을 기반으로 상기 기존 학습 모델에 상응하는 원본 데이터 셋으로부터 상기 제1 데이터를 추출하는 단계;
    상기 부분 학습 데이터 설정을 기반으로 상기 전처리된 입력 데이터에서 상기 제2 데이터를 추출하는 단계;
    상기 제1 데이터와 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 단계를 더 포함하는, 인공지능의 부분 학습 방법.
  4. 제3 항에 있어서,
    상기 부분 학습을 수행하는 단계는
    학습 모델 적재기를 이용하여 상기 기존 학습 모델을 가져오는 단계;
    상기 부분 학습 데이터 셋을 이용하여 상기 기존 학습 모델을 학습하여 부분 학습된 학습 모델을 생성하는 단계;
    학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경하는 단계를 포함하는, 인공지능의 부분 학습 방법.
  5. 제3 항에 있어서,
    상기 부분 학습을 수행하는 단계는
    상기 부분 학습 모드가 경량화 데이터 모드인 경우,
    학습 모델 적재기를 이용하여 상기 기존 학습 모델의 경량화 모델을 가져오는 단계;
    상기 부분 학습 데이터 셋을 이용하여 상기 경량화 모델을 학습하여 부분 학습된 학습 모델을 생성하는 단계; 및
    학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경하는 단계를 포함하는, 인공지능의 부분 학습 방법.
  6. 제3 항에 있어서,
    상기 제1 데이터를 추출하는 단계는
    상기 원본 데이터 셋의 분류 목록 별로 랜덤 추출 개수의 대표 데이터를 추출하는 것이고,
    상기 랜덤 추출 개수는 시스템이나 학습 환경에 따라서 임의로 조절할 수 있는 것인, 인공지능의 부분 학습 방법.
  7. 제1 항에 있어서,
    상기 부분 학습을 수행하는 단계는
    부분 학습 실행 신호에 기반하여 학습기가 부분 학습을 수행하는 단계;
    상기 부분 학습이 완료되면, 상기 학습기가 상기 추론기에게 부분 학습 완료 신호를 송신하는 단계; 및
    상기 부분 학습 완료 신호에 기반하여 상기 추론기가 기존 학습 모델을 부분 학습된 기존 학습 모델로 변경하는 단계를 포함하고,
    상기 부분 학습 완료 신호는 부분 학습된 학습 모델 파일의 이름과 경로를 포함하는 것인, 인공지능의 부분 학습 방법.
  8. 제7 항에 있어서,
    상기 학습기는 딥러닝 프레임워크의 Fine-tuning 기반의 가중치 갱신기인 것인, 인공지능의 부분 학습 방법.
  9. 제2 항에 있어서,
    상기 부분 학습 데이터 셋을 생성하는 단계는
    상기 부분 학습 모드가 자동 모드인 경우,
    학습할 데이터 보관함에서 학습할 데이터를 내부 자료구조에 등록하는 단계;
    상기 내부 자료구조를 이용하여 부분 학습에 필요한 레이블(Label) 파일을 생성하는 단계; 및
    생성된 상기 레이블 파일을 기반으로 상기 학습할 데이터와 상기 기존 학습 모델에 상응하는 기존의 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 단계를 더 포함하는, 인공지능의 부분 학습 방법.
  10. 제9 항에 있어서,
    상기 부분 학습을 수행하는 단계는
    딥러닝 프레임워크를 이용하여 학습에 필요한 설정 파일을 생성하는 단계;
    상기 설정 파일을 기반으로 상기 딥러닝 프레임워크에서 부분 학습된 학습 모델을 생성하는 단계;
    상기 부분 학습된 학습 모델을 상기 추론기와 연결하는 단계를 포함하는, 인공지능의 부분 학습 방법.
  11. 상기 기존 학습 모델에 상응하는 제1 데이터 및 상기 전처리된 입력 데이터에 상응하는 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하고,
    상기 부분 학습 데이터 셋을 학습기에 입력하여 부분 학습된 학습 모델을 생성하는 프로세서; 및
    상기 부분 학습 데이터 셋 또는 부분 학습된 학습 모델을 저장하는 메모리를 포함하는, 인공지능 부분 학습 장치.
  12. 제11 항에 있어서,
    상기 프로세서는
    부분 학습 모드를 사용자로부터 입력 받고,
    상기 부분 학습 모드에 기반하여 부분 학습 설정 파일을 생성하는 것이고, 상기 부분 학습 모드는 자동 모드 또는 경량화 데이터 모드를 포함하는 것인, 인공지능 부분 학습 장치.
  13. 제12 항에 있어서,
    상기 프로세서는
    사용자로부터 부분 학습 데이터 설정을 입력 받고,
    상기 부분 학습 데이터 설정을 기반으로 상기 기존 학습 모델에 상응하는 원본 데이터 셋으로부터 상기 제1 데이터를 추출하고,
    상기 부분 학습 데이터 설정을 기반으로 상기 전처리된 입력 데이터에서 상기 제2 데이터를 추출하고,
    상기 제1 데이터와 제2 데이터를 혼합하여 부분 학습 데이터 셋을 생성하는 것인, 인공지능 부분 학습 장치.
  14. 제13 항에 있어서,
    상기 프로세서는
    학습 모델 적재기를 이용하여 상기 기존 학습 모델을 가져오고,
    상기 부분 학습 데이터 셋을 이용하여 상기 기존 학습 모델을 부분 학습하여 부분 학습된 학습 모델을 생성하고,
    학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경하는 것인, 인공지능의 부분 학습 장치.
  15. 제13 항에 있어서,
    상기 프로세서는
    상기 부분 학습 모드가 경량화 데이터 모드인 경우,
    학습 모델 적재기를 이용하여 상기 기존 학습 모델의 경량화 모델을 가져오고,
    상기 부분 학습 데이터 셋을 이용하여 상기 경량화 모델을 부분 학습하여 부분 학습된 학습 모델을 생성하고,
    학습 모델 전송기를 이용하여 상기 부분 학습된 학습 모델로 상기 기존 학습 모델을 변경하는 것인, 인공지능의 부분 학습 장치.
  16. 제13 항에 있어서,
    상기 프로세서는
    상기 원본 데이터 셋의 분류 목록 별로 랜덤 추출 개수의 대표 데이터를 추출하는 것이고,
    상기 랜덤 추출 개수는 시스템이나 학습 환경에 따라서 임의로 조절할 수 있는 것인, 인공지능의 부분 학습 장치.
  17. 제11 항에 있어서,
    상기 프로세서는
    부분 학습 실행 신호에 기반하여 학습기가 부분 학습을 수행하고,
    상기 부분 학습이 완료되면, 상기 학습기가 상기 추론기에게 부분 학습 완료 신호를 송신하고,
    상기 부분 학습 완료 신호에 기반하여 상기 추론기가 기존 학습 모델을 부분 학습된 기존 학습 모델로 변경하는 것이고,
    상기 부분 학습 완료 신호는 부분 학습된 학습 모델 파일의 이름과 경로를 포함하는 것인, 인공지능의 부분 학습 장치.
  18. 제12 항에 있어서,
    상기 프로세서는
    상기 부분 학습 모드가 자동 모드인 경우,
    학습할 데이터 보관함에서 학습할 데이터를 내부 자료구조에 등록하고,
    상기 내부 자료구조를 이용하여 부분 학습에 필요한 레이블(Label) 파일을 생성하고,
    생성된 상기 레이블 파일을 기반으로 상기 학습할 데이터와 기존의 데이터를 혼합하여 부분 학습을 위한 데이터 셋을 생성하는 것인, 인공지능의 부분 학습 장치.
  19. 제18 항에 있어서,
    상기 프로세서는
    딥러닝 프레임워크를 이용하여 학습에 필요한 설정 파일을 생성하고,
    상기 생성된 설정 파일을 기반으로 상기 딥러닝 프레임워크에서 부분 학습된 학습 모델을 생성하고,
    상기 부분 학습된 학습 모델을 상기 추론기와 연결하는 것인, 인공지능의 부분 학습 장치.
  20. 입력 데이터를 전처리하여 전처리된 입력 데이터를 생성하고,
    상기 전처리된 입력 데이터를 추론기의 기존 학습 모델에 입력하여 추론 결과를 생성하고,
    상기 추론 결과에 기반하여 부분 학습이 필요한지 여부를 판단하고,
    상기 부분 학습이 필요하다고 판단된 경우, 부분 학습 장치에 부분 학습을 요청하고, 상기 부분 학습 장치로부터 부분 학습된 학습 모델을 받아 상기 추론기의 기존 학습 모델을 업데이트하는 프로세서; 및
    상기 기존 학습 모델 또는 부분 학습된 학습 모델을 저장하는 메모리를 포함하는, 인공지능의 부분 학습 판단 장치.
KR1020200058344A 2020-05-15 2020-05-15 인공지능의 부분 학습 방법 및 이를 위한 장치 KR20210141123A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200058344A KR20210141123A (ko) 2020-05-15 2020-05-15 인공지능의 부분 학습 방법 및 이를 위한 장치
US17/104,932 US20210357749A1 (en) 2020-05-15 2020-11-25 Method for partial training of artificial intelligence and apparatus for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200058344A KR20210141123A (ko) 2020-05-15 2020-05-15 인공지능의 부분 학습 방법 및 이를 위한 장치

Publications (1)

Publication Number Publication Date
KR20210141123A true KR20210141123A (ko) 2021-11-23

Family

ID=78512534

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200058344A KR20210141123A (ko) 2020-05-15 2020-05-15 인공지능의 부분 학습 방법 및 이를 위한 장치

Country Status (2)

Country Link
US (1) US20210357749A1 (ko)
KR (1) KR20210141123A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023163405A1 (ko) * 2022-02-25 2023-08-31 주식회사 에이젠글로벌 신용평가 모델 업데이트 또는 교체 방법 및 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3982217A1 (en) * 2020-10-12 2022-04-13 Robert Bosch GmbH Method and system for monitoring a manufacturing process

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190113451A (ko) 2018-03-28 2019-10-08 주식회사 아이센스 인공신경망 딥러닝 기법을 활용한 측정물 분석 방법, 장치, 학습 방법 및 시스템

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7676034B1 (en) * 2003-03-07 2010-03-09 Wai Wu Method and system for matching entities in an auction
US8364613B1 (en) * 2011-07-14 2013-01-29 Google Inc. Hosting predictive models
SG11201510149RA (en) * 2013-06-12 2016-01-28 Nec Corp Prediction function creation device, prediction function creation method, and computer-readable storage medium
US20200311617A1 (en) * 2017-11-22 2020-10-01 Amazon Technologies, Inc. Packaging and deploying algorithms for flexible machine learning
US11704567B2 (en) * 2018-07-13 2023-07-18 Intel Corporation Systems and methods for an accelerated tuning of hyperparameters of a model using a machine learning-based tuning service
KR20200043005A (ko) * 2018-10-17 2020-04-27 삼성전자주식회사 이미지 인식 모델을 트레이닝시키는 장치 및 방법과 이미지 인식 장치 및 방법
WO2020170036A1 (en) * 2019-02-22 2020-08-27 Stratuscent Inc. Systems and methods for learning across multiple chemical sensing units using a mutual latent representation
US11328221B2 (en) * 2019-04-09 2022-05-10 International Business Machines Corporation Hybrid model for short text classification with imbalanced data
US11157812B2 (en) * 2019-04-15 2021-10-26 Intel Corporation Systems and methods for tuning hyperparameters of a model and advanced curtailment of a training of the model
TWI697851B (zh) * 2019-05-03 2020-07-01 宏碁股份有限公司 電子裝置與模型更新方法
US11170264B2 (en) * 2019-05-31 2021-11-09 Raytheon Company Labeling using interactive assisted segmentation
US11222464B2 (en) * 2019-08-22 2022-01-11 The Travelers Indemnity Company Intelligent imagery
US11423226B2 (en) * 2019-08-30 2022-08-23 The Travelers Indemnity Company Email content extraction
US11631029B2 (en) * 2019-09-09 2023-04-18 Adobe Inc. Generating combined feature embedding for minority class upsampling in training machine learning models with imbalanced samples
US11775877B2 (en) * 2019-10-23 2023-10-03 Genpact Luxembourg S.à r.l. II System and method for artificial intelligence base prediction of delays in pipeline processing
US11689561B2 (en) * 2019-11-11 2023-06-27 Microsoft Technology Licensing, Llc Detecting unknown malicious content in computer systems
US11588621B2 (en) * 2019-12-06 2023-02-21 International Business Machines Corporation Efficient private vertical federated learning
US20230026110A1 (en) * 2019-12-18 2023-01-26 Nippon Telegraph And Telephone Corporation Learning data generation method, learning data generation apparatus and program
US11544625B2 (en) * 2020-02-03 2023-01-03 Microsoft Technology Licensing, Llc Computing system for training, deploying, executing, and updating machine learning models
KR20220116270A (ko) * 2020-02-07 2022-08-22 주식회사 히타치하이테크 학습 처리 장치 및 방법
US20210287066A1 (en) * 2020-03-12 2021-09-16 Hewlett Packard Enterprise Development Lp Partial neural network weight adaptation for unstable input distortions

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190113451A (ko) 2018-03-28 2019-10-08 주식회사 아이센스 인공신경망 딥러닝 기법을 활용한 측정물 분석 방법, 장치, 학습 방법 및 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023163405A1 (ko) * 2022-02-25 2023-08-31 주식회사 에이젠글로벌 신용평가 모델 업데이트 또는 교체 방법 및 장치

Also Published As

Publication number Publication date
US20210357749A1 (en) 2021-11-18

Similar Documents

Publication Publication Date Title
CN112100349A (zh) 一种多轮对话方法、装置、电子设备及存储介质
US11874904B2 (en) Electronic device including mode for using an artificial intelligence assistant function of another electronic device
CN112732871B (zh) 一种机器人催收获取客户意向标签的多标签分类方法
CN111161726B (zh) 一种智能语音交互方法、设备、介质及系统
KR20210141123A (ko) 인공지능의 부분 학습 방법 및 이를 위한 장치
US20200202068A1 (en) Computing apparatus and information input method of the computing apparatus
KR20190099153A (ko) 전자 장치
CN110597082A (zh) 智能家居设备控制方法、装置、计算机设备及存储介质
CN106653020A (zh) 一种基于深度学习的智慧视听设备多业务控制方法及系统
CN116756564A (zh) 面向任务解决的生成式大语言模型的训练方法和使用方法
CN113094467A (zh) 一种知识图谱的查询方法、电子设备及存储介质
US10917721B1 (en) Device and method of performing automatic audio focusing on multiple objects
CN117456995A (zh) 一种养老服务机器人的交互方法及系统
CN117291185A (zh) 任务处理方法、实体识别方法及任务处理的数据处理方法
CN111680514B (zh) 信息处理和模型训练方法、装置、设备及存储介质
CN113763925B (zh) 语音识别方法、装置、计算机设备及存储介质
CN115222047A (zh) 一种模型训练方法、装置、设备及存储介质
CN114676705A (zh) 一种对话关系处理方法、计算机及可读存储介质
CN114328995A (zh) 内容推荐方法、装置、设备及存储介质
CN114116975A (zh) 一种多意图识别方法及系统
CN112948251A (zh) 软件自动测试方法及装置
CN110134775A (zh) 问答数据生成方法及装置、存储介质
KR102383926B1 (ko) 챗봇 시스템의 제어 방법, 장치 및 프로그램
CN117744630B (zh) 模型接入方法、装置及电子设备
CN115129861B (zh) 文本分类方法、装置和存储介质及电子设备

Legal Events

Date Code Title Description
A201 Request for examination