KR20210096405A - Apparatus and method for generating learning model for machine - Google Patents

Apparatus and method for generating learning model for machine Download PDF

Info

Publication number
KR20210096405A
KR20210096405A KR1020200009807A KR20200009807A KR20210096405A KR 20210096405 A KR20210096405 A KR 20210096405A KR 1020200009807 A KR1020200009807 A KR 1020200009807A KR 20200009807 A KR20200009807 A KR 20200009807A KR 20210096405 A KR20210096405 A KR 20210096405A
Authority
KR
South Korea
Prior art keywords
learning model
cloud
model
prediction result
object learning
Prior art date
Application number
KR1020200009807A
Other languages
Korean (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 KR1020200009807A priority Critical patent/KR20210096405A/en
Publication of KR20210096405A publication Critical patent/KR20210096405A/en

Links

Images

Classifications

    • 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
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)

Abstract

Disclosed is a method for generating an object learning model. The method includes the steps of: generating an initial object learning model by using resource information obtained from an object; receiving cloud learning model knowledge from a cloud; calculating an error between a prediction result of an initial object learning model and the prediction result of a cloud model constructed according to a cloud model knowledge; and updating the initial object learning model according to an error between the prediction result of the initial object learning model and the prediction result of the cloud model. The present invention can effectively provide an intelligent user application service.

Description

사물 학습모델 생성 장치 및 방법{APPARATUS AND METHOD FOR GENERATING LEARNING MODEL FOR MACHINE}Apparatus and method for generating an object learning model {APPARATUS AND METHOD FOR GENERATING LEARNING MODEL FOR MACHINE}

본 발명은 사물 학습모델 생성 장치 및 방법에 관한 것으로, 더욱 상세하게는 엣지 컴퓨팅 기반 사물인터넷 환경에서 사물 학습모델을 생성하는 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for generating an object learning model, and more particularly, to an apparatus and method for generating an object learning model in an edge computing-based IoT environment.

최근 사물인터넷은 인공지능, 클라우드, 엣지 컴퓨팅 기술 등과 융합되어 점차‘지능형 사물인터넷’으로 변화하고 있으며, 이러한 지능형 사물인터넷 기술은 스마트 시티, 스마트 제조, 자율 교통 시스템 등 대규모 응용 분야에 적용되기 때문에 기술 확보의 중요성이 높아지고 있다. 사물인터넷에서 사물은 빅데이터와 인공지능 기술을 이용해 학습한 모델을 활용하여 종래보다 더욱 지능화된 사용자 응용 서비스를 제공하고 스스로 사물을 제어하는 능력을 갖추도록 요구되고 있다.Recently, the Internet of Things (IoT) is gradually changing into the 'Intelligent Internet of Things' by converging with artificial intelligence, cloud, and edge computing technologies. The importance of securing is increasing. In the Internet of Things, things are required to use models learned using big data and artificial intelligence technology to provide more intelligent user application services than before and to have the ability to control things by themselves.

관련하여 대규모 사물이 연결되어 방대한 데이터가 존재하는 환경에서 하드웨어 자원 제약을 가진 사물이 스스로 모델을 학습하는 것은 상당히 어렵다. 이러한 제한점을 극복하기 위해 엣지 컴퓨팅 기반 사물인터넷은 고성능 클라우드의 컴퓨팅 능력을 인공지능 모델 학습에 활용할 수 있다. In relation to this, it is quite difficult for an object with hardware resource constraints to learn a model by itself in an environment where large-scale objects are connected and there is a large amount of data. To overcome these limitations, edge computing-based IoT can utilize the computing power of high-performance cloud for AI model training.

그럼에도 불구하고 클라우드를 통해 학습된 모델을 사물에서 그대로 사용하는 것 또한 쉽지 않다. 클라우드를 통해 학습된 심층신경망(deep neural networks)은 일반적으로 많은 수의 계층(layer)과 학습 매개변수(parameter)를 가지기 때문에 사물이 추론 및 예측을 위해 그대로 사용하는 데에 사물 자원 한계의 문제점을 드러낼 수 있다. Nevertheless, it is also not easy to use the model learned through the cloud as it is in things. Since deep neural networks trained through the cloud generally have a large number of layers and learning parameters, it is difficult to use the object as it is for inference and prediction. can reveal

따라서, 사물은 클라우드를 통해 학습된 모델로부터 추출된 지식만을 전달받아 사물의 모델 학습에 활용할 수 있어야 하며, 자원 제약적 사물이 사용할 수 있도록 모델을 경량화할 필요가 있다. 이 때, 다양한 이기종의 사물들은 자신의 하드웨어 자원 제약에 따라 경량화된 모델의 구조를 스스로 결정할 필요가 있다.Therefore, the thing should be able to receive only the knowledge extracted from the model learned through the cloud and use it for model learning of the thing, and it is necessary to lighten the model so that the resource-constrained thing can use it. At this time, various heterogeneous things need to determine the structure of a lightweight model by themselves according to their own hardware resource constraints.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 클라우드와 연동하는 사물에서 사물 학습모델을 생성하는 방법을 제공하는 데 있다.An object of the present invention to solve the above problems is to provide a method of generating a learning model of a thing from a thing interworking with the cloud.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 상기 사물 학습모델을 생성하는 방법을 이용한 사물 학습모델 생성 장치를 제공하는 데 있다.Another object of the present invention to solve the above problems is to provide an apparatus for generating an object learning model using the method for generating the object learning model.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 클라우드와 연동하는 사물에서 사물 학습모델을 생성하는 방법은, 사물에서 획득한 자원 정보를 활용해 초기 사물 학습모델을 생성하는 단계; 상기 클라우드로부터 클라우드 학습모델 지식을 수신하는 단계; 상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하는 단계; 상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차에 따라 상기 초기 사물 학습모델을 갱신하는 단계를 포함할 수 있다. According to an embodiment of the present invention for achieving the above object, there is provided a method for generating a thing learning model from a thing interworking with a cloud, the method comprising: generating an initial thing learning model by using resource information obtained from the thing; receiving cloud learning model knowledge from the cloud; calculating an error between the prediction result of the initial object learning model and the prediction result of the cloud model constructed according to the cloud model knowledge; and updating the initial object learning model according to an error between the prediction result of the initial object learning model and the prediction result of the cloud model.

상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차는 교차 엔트로피 및 KL(Kullback-Leibler) 다이버전스(Divergence) 중 적어도 하나를 이용해 계산될 수 있다. An error between the prediction result of the initial object learning model and the prediction result of the cloud model may be calculated using at least one of cross entropy and Kullback-Leibler (KL) divergence.

상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하는 단계는, 임의의 입력에 대한 상기 초기 사물 학습모델의 예측 결과를 산출하는 단계; 상기 임의의 입력에 대한 상기 클라우드 모델의 예측 결과를 산출하는 단계; 및 상기 초기 사물 학습모델의 예측 결과 및 클라우드 모델의 예측 결과 간의 오차를 계산하는 단계를 포함할 수 있다.Calculating an error between the prediction result of the initial object learning model and the prediction result of the cloud model constructed according to the cloud model knowledge may include: calculating a prediction result of the initial object learning model for an arbitrary input; calculating a prediction result of the cloud model with respect to the arbitrary input; and calculating an error between the prediction result of the initial object learning model and the prediction result of the cloud model.

상기 초기 사물 학습모델을 갱신하는 단계는, 기울기 하강법(gradient descent)을 적용해 최적화된 사물 학습모델을 도출하는 단계를 포함할 수 있다.The updating of the initial object learning model may include deriving an optimized object learning model by applying a gradient descent method.

상기 사물 학습모델 생성 방법은 상기 갱신된 초기 사물 학습모델을 사물 학습모델 저장소에 저장하는 단계를 더 포함할 수 있다. The method for generating a thing learning model may further include storing the updated initial thing learning model in a thing learning model storage.

여기서, 상기 클라우드 학습모델 지식은 클라우드 학습 모델 저장소에 저장된 클라우드 학습 모델로부터 추출되어 전이될 수 있다. Here, the cloud learning model knowledge may be extracted and transferred from the cloud learning model stored in the cloud learning model storage.

본 발명의 다른 목적을 달성하기 위한 일 실시예에 따른 사물 학습모델 생성 장치는, 적어도 하나의 프로세서, 상기 프로세서를 통해 실행되는 적어도 하나의 명령을 저장하는 메모리를 포함할 수 있다. An apparatus for generating an object learning model according to an embodiment for achieving another object of the present invention may include at least one processor and a memory for storing at least one instruction executed through the processor.

상기 적어도 하나의 명령은, 사물에서 획득한 자원 정보를 활용해 초기 사물 학습모델을 생성하도록 하는 명령; 상기 클라우드로부터 클라우드 학습모델 지식을 수신하도록 하는 명령; 상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하도록 하는 명령; 및 상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차에 따라 상기 초기 사물 학습모델을 갱신하도록 하는 명령을 포함할 수 있다. The at least one command may include: a command to generate an initial thing learning model by using resource information obtained from a thing; a command to receive cloud learning model knowledge from the cloud; a command to calculate an error between the prediction result of the initial object learning model and the prediction result of the cloud model constructed according to the cloud model knowledge; and a command to update the initial object learning model according to an error between the prediction result of the initial object learning model and the prediction result of the cloud model.

이때, 상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차는 교차 엔트로피 및 KL(Kullback-Leibler) 다이버전스(Divergence) 중 적어도 하나를 이용해 계산될 수 있다. In this case, the error between the prediction result of the initial object learning model and the prediction result of the cloud model may be calculated using at least one of cross entropy and Kullback-Leibler (KL) divergence.

상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하도록 하는 명령은, 임의의 입력에 대한 상기 초기 사물 학습모델의 예측 결과를 산출하도록 하는 명령; 상기 임의의 입력에 대한 상기 클라우드 모델의 예측 결과를 산출하도록 하는 명령; 및 상기 초기 사물 학습모델의 예측 결과 및 클라우드 모델의 예측 결과 간의 오차를 계산하도록 하는 명령을 포함할 수 있다. The command to calculate the error of the prediction result of the initial thing learning model and the prediction result of the cloud model constructed according to the cloud model knowledge includes: a command to calculate the prediction result of the initial thing learning model with respect to an arbitrary input; a command to calculate a prediction result of the cloud model with respect to the arbitrary input; and a command to calculate an error between the prediction result of the initial object learning model and the prediction result of the cloud model.

상기 초기 사물 학습모델을 갱신하도록 하는 명령은, 기울기 하강법(gradient descent)을 적용해 최적화된 사물 학습모델을 도출하도록 하는 명령을 포함할 수 있다. The command to update the initial object learning model may include a command to derive an optimized object learning model by applying gradient descent.

상기 사물 학습모델 생성 장치는 하나 이상의 사물 학습모델을 저장하는 사물 학습모델 저장소를 더 포함할 수 있다.The object learning model generating apparatus may further include an object learning model storage for storing one or more object learning models.

상기 적어도 하나의 명령은, 상기 갱신된 초기 사물 학습모델을 상기 사물 학습모델 저장소에 저장하도록 하는 명령을 더 포함할 수 있다.The at least one command may further include a command to store the updated initial thing learning model in the thing learning model storage.

여기서, 상기 클라우드 학습모델 지식은 클라우드 학습 모델 저장소에 저장된 클라우드 학습 모델로부터 추출되어 전이될 수 있다. Here, the cloud learning model knowledge may be extracted and transferred from the cloud learning model stored in the cloud learning model storage.

또한, 상기 사물 학습모델 생성 장치는 엣지 사물일 수 있다.Also, the device for generating an object learning model may be an edge object.

상기와 같은 본 발명의 실시예들에 따르면, 클라우드와 사물의 협력을 통해 사물이 경량화된 사물 학습 모델을 빠르게 학습할 수 있다.According to the embodiments of the present invention as described above, a lightweight object learning model can be quickly learned through cooperation between the cloud and the object.

그에 따라, 지능화된 사용자 응용 서비스를 효과적으로 제공할 수 있다.Accordingly, an intelligent user application service can be effectively provided.

또한, 본 발명의 실시예들에 따르면 정확하게 사물 제어의 정확성을 높일 수 있다.In addition, according to embodiments of the present invention, it is possible to accurately increase the accuracy of object control.

도 1은 일반적인 사물의 모델 학습 및 모델 활용 방법의 일 예이다.
도 2는 본 발명의 일 실시예에 따른 학습모델 경량화 시스템의 구성도이다.
도 3는 본 발명의 일 실시예에 따른 학습모델 경량화 방법의 개념도이다.
도 4는 본 발명의 일 실시예에 따른 클라우드와 사물 간 학습 모델 전이 및 경량화 시스템의 상세 구성도이다.
도 5는 본 발명의 일 실시예에 따른 사물 학습모델 생성 방법의 순서도이다.
도 6은 본 발명의 일 실시예에 따라 생성된 사물 학습모델을 이용한 추론 방법의 순서도이다.
도 7은 본 발명의 일 실시예에 따른 사물 학습모델 생성 장치의 블록 구성도이다.
1 is an example of a general method of learning a model of a thing and using a model.
2 is a configuration diagram of a learning model lightweight system according to an embodiment of the present invention.
3 is a conceptual diagram of a method for reducing the weight of a learning model according to an embodiment of the present invention.
4 is a detailed configuration diagram of a system for transferring and lightweighting a learning model between a cloud and an object according to an embodiment of the present invention.
5 is a flowchart of a method for generating an object learning model according to an embodiment of the present invention.
6 is a flowchart of an inference method using an object learning model generated according to an embodiment of the present invention.
7 is a block diagram of an apparatus for generating an object learning model according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. Since the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention. In describing each figure, like reference numerals have been used for like elements.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는"이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various elements, but the elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component. The term “and/or” includes a combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being “connected” or “connected” to another component, it is understood that the other component may be directly connected or connected to the other component, but other components may exist in between. it should be On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that no other element is present in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that it does not preclude the possibility of the presence or addition of numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not

본 발명은 엣지 컴퓨팅 기반 사물인터넷 환경에서 인공지능 기술을 이용하는 지능형 사물이 스스로 학습하기 위하여, 클라우드에서 학습된 모델에서 추출된 지식을 전달받고, 그 전이된 지식을 활용하여 자원 제약 하에서도 사물 스스로 경량화된 새로운 모델을 학습하는 데 도움을 줄 수 있다.In order for intelligent things using artificial intelligence technology to learn by themselves in an edge computing-based Internet of Things environment, the present invention receives knowledge extracted from a model learned from the cloud, and utilizes the transferred knowledge to lighten things themselves even under resource constraints. It can help you learn new models.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 일반적인 사물의 모델 학습 및 모델 활용 방법의 일 예이다. 1 is an example of a general method of learning a model of a thing and using a model.

종래의 사물인터넷은 사물과 사물 간의 연결성을 제공하고, 사물로부터 생성, 수집한(S11) 데이터를 효율적으로 유지, 관리하는(S12) 기술을 제공하는 데 초점을 두었다. 이후 데이터와 사물의 연결이 방대해지면서 발생하는 확장성, 지연시간, 대역폭, 데이터 처리 문제 등을 해결하기 위해 사물인터넷에 엣지 컴퓨팅 기술을 도입하였다. The conventional Internet of Things focuses on providing connectivity between things and efficiently maintaining and managing (S12) data generated and collected from things (S11). Since then, edge computing technology was introduced into the Internet of Things to solve problems such as scalability, latency, bandwidth, and data processing that occurred as the connection between data and things became vast.

그에 따라 사물은 빅데이터와 인공지능 기술을 이용해 학습모델을 생성하고(S13), 학습한 모델을 활용하여 종래보다 더욱 지능화된 사용자 응용 서비스를 제공하고(S14) 스스로 사물을 제어하는(S15) 능력을 갖추도록 요구되고 있다.Accordingly, the ability of objects to create a learning model using big data and artificial intelligence technology (S13), to provide more intelligent user application services than before using the learned model (S14), and to control objects by themselves (S15) is required to have

엣지 컴퓨팅 환경에서는 사물인터넷을 통해 수집된 데이터에 대한 처리, 가공, 분석 작업을 단말 장치로 분산시킴으로써, 데이터 처리 부하 감소, 보안성 보장, 지연 시간 감소 등의 목적을 달성한다. 이러한 엣지 컴퓨팅 구조에서도 클라우드의 높은 컴퓨팅 능력을 적극 활용할 수 있다. 사물은 사물인터넷 환경에서 정보를 교환하는 주체로, 자율주행 자동차, 드론, 인공지능 스피커, CCTV, 가정용 로봇, 제조 로봇 등이 될 수 있다. In the edge computing environment, by distributing the processing, processing, and analysis tasks for data collected through the Internet of Things to terminal devices, the purpose of data processing load reduction, security guarantee, and latency reduction is achieved. Even in such an edge computing structure, the high computing power of the cloud can be actively utilized. Objects are subjects that exchange information in the Internet of Things environment, and can be autonomous vehicles, drones, artificial intelligence speakers, CCTVs, home robots, and manufacturing robots.

사물들은 물리적인 디바이스로서 정보를 수집하고 인터넷을 통해 정보를 교환할 수 있다. 지능형 사물인터넷에서 사물은 인공지능을 통해 스스로 인지, 판단하고 제어하는 능력을 제공할 수 있다.Things are physical devices that can collect information and exchange information over the Internet. In the intelligent IoT, things can provide the ability to recognize, judge, and control themselves through artificial intelligence.

도 2는 본 발명의 일 실시예에 따른 학습모델 경량화 시스템의 구성도이다. 2 is a configuration diagram of a learning model lightweight system according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시예에 따른 학습 모델 경량화 시스템은, 클라우드 학습 모델 저장소(110)를 포함한 클라우드(100)와 사물 학습 모델 저장소(210)를 포함한 엣지 사물(200)을 포함하여 구성될 수 있다. Referring to FIG. 2 , the learning model lightweight system according to an embodiment of the present invention includes the cloud 100 including the cloud learning model storage 110 and the edge thing 200 including the object learning model storage 210 . can be configured.

통상적인 경우 클라우드 서버는 기 구축된 데이터셋을 통해, 다양한 기계학습/딥러닝 모델을 훈련하고, 이를 통해 도출되는 훈련된 모델은 클라우드 학습 모델 저장소(110)에 저장된다. 이때 도출되는 모델은 일반적인 신경망 모델, 즉 데이터 사이즈가 큰 모델이며, 이러한 모델을 통해 클라우드 기반 추론이 이루어진다.In a typical case, the cloud server trains various machine learning/deep learning models through a pre-established dataset, and the trained model derived therefrom is stored in the cloud learning model storage 110 . The model derived at this time is a general neural network model, that is, a model with a large data size, and cloud-based inference is made through this model.

클라우드 학습 모델이 구축된 상태에서, 예를 들어, 엣지 사물(200)을 통해 예측 또는 추론을 위한 데이터를 클라우드 서버로 전송하면, 클라우드 서버가 기 구축된 클라우드 학습 모델을 이용해 결과를 추론하고 해당 결과를 클라이언트인 엣지 사물(200)로 피드백하는 형태로 활용 가능하다. When the cloud learning model is built, for example, when data for prediction or inference is transmitted to the cloud server through the edge thing 200, the cloud server infers the result using the built-in cloud learning model, and the result can be used in the form of feedback to the edge thing 200, which is a client.

이러한 예는 매번 추론시마다 서버(클라이언트)에게 요청을 하고 서버로부터 그 결과를 수신하는 형태이므로 상당한 네트워크 비용이 발생하게 되는 문제점이 발생한다.In this example, a request is made to the server (client) at every inference and the result is received from the server, so a problem arises that a considerable network cost is generated.

도 3는 본 발명의 일 실시예에 따른 학습모델 경량화 방법의 개념도이다. 3 is a conceptual diagram of a method for reducing the weight of a learning model according to an embodiment of the present invention.

본 명세서에서 클라우드 학습 모델 저장소(110)에 저장된 클라우드 학습 모델(300)을 전문가(teacher) 모델로 칭하고, 사물 학습 모델 저장소(210)에 저장된 사물 학습 모델을 숙련가(student) 모델로 지칭할 수 있다. In this specification, the cloud learning model 300 stored in the cloud learning model storage 110 may be referred to as a teacher model, and the object learning model stored in the object learning model storage 210 may be referred to as a student model. .

클라우드는 클라우드 학습 모델 저장소에 저장된 클라우드 학습 모델(전문가 모델)(300)로부터 추출된 지식을 엣지 사물로 전이한다. 사물은 자신의 자원 정보를 이용하여 엣지사물 학습 모델(310)(숙련가 모델)을 생성하고 클라우드로부터 전이된 지식을 활용하여 모델을 학습시킨다. The cloud transfers the knowledge extracted from the cloud learning model (expert model) 300 stored in the cloud learning model storage to the edge thing. The object generates an edge object learning model 310 (skilled model) using its own resource information, and uses the knowledge transferred from the cloud to learn the model.

일반적으로 클라우드에 비해 크게 제한된 하드웨어 자원을 가진 엣지 사물이 생성하는 사물 학습 모델은 클라우드 학습 모델에 비해 적은 수의 계층과 학습 매개변수(parameter)를 가진다. 이러한 방법을 통해 사물은 경량화된 학습 모델을 활용하여 사용자 응용 서비스 제공하거나 사물을 제어할 수 있다.In general, an object learning model created by an edge object with significantly limited hardware resources compared to the cloud has fewer layers and learning parameters than the cloud learning model. Through this method, the object can provide user application services or control the object by using a lightweight learning model.

도 4는 본 발명의 일 실시예에 따른 클라우드와 사물 간 학습 모델 전이 및 경량화 시스템의 상세 구성도이다. 4 is a detailed configuration diagram of a system for transferring and lightweighting a learning model between a cloud and an object according to an embodiment of the present invention.

도 4를 참조하면, 본 발명에 따른 클라우드는 클라우드모델 지식 추출부(120), 지식 전이부(130)를 포함할 수 있다. 클라우드(100)는 또한, 클라우드모델 지식 저장부(110)를 더 포함할 수 있으나, 도 4에 도시된 예와 같이 클라우드(100)와 클라우드모델 지식 저장소(110)가 별개의 하드웨어 장치로 존재하되, 서로 연동하는 형태로 존재하는 것 또한 가능하다. Referring to FIG. 4 , the cloud according to the present invention may include a cloud model knowledge extraction unit 120 and a knowledge transfer unit 130 . The cloud 100 may further include a cloud model knowledge storage unit 110, but as in the example shown in FIG. 4, the cloud 100 and the cloud model knowledge storage 110 exist as separate hardware devices. , it is also possible to exist in the form of interlocking with each other.

사물(200)은 사물 학습모델 생성부(220), 예측 계산부(230), 오차 계산부(240), 및 사물 학습모델 갱신부(250)를 포함할 수 있다. 사물(200)은 또한, 사물 학습모델 지식 저장부(210)를 더 포함할 수 있으나, 도 4에 도시된 예와 같이 사물(200)과 사물 학습모델 지식 저장소(210)가 별개의 하드웨어 장치로 존재하고, 서로 연동하는 형태로 구현되는 것 또한 가능하다. The thing 200 may include a thing learning model generation unit 220 , a prediction calculation unit 230 , an error calculation unit 240 , and a thing learning model update unit 250 . The thing 200 may further include a thing learning model knowledge storage unit 210 , but as in the example shown in FIG. 4 , the thing 200 and the thing learning model knowledge storage 210 are separate hardware devices. It is also possible to be implemented in a form that exists and interworks with each other.

사물 학습모델 생성부(220)는 사물의 자원정보를 활용하여 경량화된 사물 모델(숙련가 모델)을 생성하여 초기화한다. 예측 계산부(230)는 생성된 사물 모델(숙련가 모델)을 이용하여 입력에 대한 예측 결과를 계산한다. 예를 들어, 객체 인식 분야에서는 입력으로 이미지를 수신하여 예측을 수행하고, 음성 인식 분야에서는 입력으로 음성데이터를 수신하여 예측을 수행한다. 또한, 강화 학습 분야에서는 입력으로 상태 및 환경 정보를 수신하여 예측을 수행한다. The object learning model generator 220 creates and initializes a lightweight object model (skilled model) by using resource information of the object. The prediction calculator 230 calculates a prediction result for the input by using the generated object model (skilled model). For example, in the field of object recognition, prediction is performed by receiving an image as an input, and in the field of speech recognition, prediction is performed by receiving voice data as an input. In addition, in the field of reinforcement learning, prediction is performed by receiving state and environment information as input.

한편, 클라우드모델 지식 추출부(120)는 미리 학습되어 클라우드 학습모델 저장소(110)에 저장되어 있는 클라우드 모델(전문가 모델) 지식을 추출하여(knowledge distillation)하고, 추출된 클라우드 모델 지식은 지식 전이부(130)를 통해 사물로 전이된다. On the other hand, the cloud model knowledge extraction unit 120 extracts (knowledge distillation) the cloud model (expert model) knowledge that has been learned in advance and stored in the cloud learning model storage 110, and the extracted cloud model knowledge is the knowledge transfer unit It is transferred to an object through (130).

사물 내 오차 계산부(240)에서는 클라우드 학습 모델(전문가 모델)로부터 예측된 결과와 사물 학습 모델(숙련가 모델)로부터 예측된 결과의 차이를 교차 엔트로피(cross entropy) 오차 또는 KL(Kullback-Leibler) 다이버전스(Divergence)를 이용해 계산할 수 있다. In the intra-object error calculation unit 240, the difference between the result predicted from the cloud learning model (expert model) and the result predicted from the object learning model (skilled model) is cross-entropy error or Kullback-Leibler (KL) divergence. It can be calculated using divergence.

사물 학습모델 갱신부(250)는 교차 엔트로피 오차 또는 KL 다이버전스에 대해 기울기 하강(gradient descent) 방법을 적용해 사물 학습모델을 최적화하고, 최적화된 모델을 사물 학습모델(숙련가 모델)에 적용하여 사물학습 모델을 갱신(update)한다. 갱신된 사물 학습모델은 사물 학습모델 저장소(210)에 저장된다.The object learning model update unit 250 optimizes the object learning model by applying a gradient descent method to the cross entropy error or KL divergence, and applies the optimized model to the object learning model (skilled model) to learn objects Update the model. The updated object learning model is stored in the object learning model storage 210 .

여기서, 교차 엔트로피 오차는 아래 수학식 1에 의해 나타낼 수 있다. Here, the cross entropy error can be expressed by Equation 1 below.

Figure pat00001
Figure pat00001

수학식 1에서 y는 신경망 출력, t는 정답 레이블, k는 데이터의 차원 수를 나타낸다.In Equation 1, y is the neural network output, t is the correct answer label, and k is the number of dimensions of the data.

또한, KL 다이버전스는 두 확률분포가 얼마나 다른지, 즉 두 확률분포의 차이를 계산하는 데에 사용하는 함수이다. KL 다이버전스를 변형하면 교차 엔트로피에 대한 식으로 정리될 수 있다. 즉, 교차 엔트로피를 최소화하는 것은 KL 다이버전스를 최소화하는 것과도 같다.Also, KL divergence is a function used to calculate how different two probability distributions are, that is, the difference between two probability distributions. Transforming the KL divergence can be summarized as an expression for cross entropy. That is, minimizing cross entropy is equivalent to minimizing KL divergence.

상술한 바와 같이 클라우드와 사물의 협력을 통해 사물은 경량화된 사물학습 모델을 빠르게 학습할 수 있기 때문에 지능화된 사용자 응용 서비스를 효과적으로 제공할 수 있고, 정확하게 사물을 제어할 수 있다.As described above, through the cooperation of the cloud and the object, the object can quickly learn the lightweight object learning model, so it is possible to effectively provide an intelligent user application service and precisely control the object.

한편, 본 발명에서 사용되는 학습 모델은 CNN 또는 DNN일 수 있다. Meanwhile, the learning model used in the present invention may be a CNN or a DNN.

합성곱 신경망(Convolutional Neural Network; CNN)은 인공 신경망의 하나로, 입력 데이터와 필터의 합성곱(convolution)을 이용해서 데이터를 보다 용이하게 분석하는 데 쓰인다. A convolutional neural network (CNN) is an artificial neural network and is used to more easily analyze data by using convolution of input data and filters.

심층신경망(Deep Neural Network; DNN)은 하나 이상의 컨볼루션 레이어를 포함할 수 있다. 심층신경망은 입력층(input layer)과 출력층(output layer) 사이에 여러 개의 은닉층(hidden layer)들을 포함하여 구성된 인공신경망(Artificial Neural Network; ANN)이다. 심층 신경망은 일반적인 인공신경망과 마찬가지로 복잡한 비선형 관계(non-linear relationship)들을 모델링할 수 있다.A deep neural network (DNN) may include one or more convolutional layers. A deep neural network is an artificial neural network (ANN) composed of several hidden layers between an input layer and an output layer. Deep neural networks can model complex non-linear relationships like general artificial neural networks.

여기서, 인공신경망은 기계학습과 인지과학에서 생물학의 신경망(동물의 중추신경계중 특히 뇌)에서 영감을 얻은 통계학적 학습 알고리즘이다. 인공신경망은 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(노드)이 학습을 통해 시냅스의 결합 세기를 변화시켜, 문제 해결 능력을 가지는 모델 전반을 가리킨다. Here, the artificial neural network is a statistical learning algorithm inspired by the neural network of biology (especially the brain in the central nervous system of animals) in machine learning and cognitive science. An artificial neural network refers to an overall model that has problem-solving ability by changing the bonding strength of synapses through learning in which artificial neurons (nodes) formed a network by combining synapses.

인공신경망의 학습에는 교사 신호(정답)의 입력에 의해서 문제에 최적화되어 가는 교사 학습과 교사 신호를 필요로 하지 않는 비교사 학습이 있다. 명확한 해답이 있는 경우에는 교사 학습이, 데이터 클러스터링에는 비교사 학습이 이용되는 것이 보통이다. 인공신경망은 많은 입력들에 의존하면서 일반적으로 베일에 싸인 함수를 추측하고 근사치를 낼 경우 사용한다. 일반적으로 입력으로부터 값을 계산하는 뉴런 시스템의 상호연결로 표현되고, 적응성이 있어 패턴 인식과 같은 기계학습을 수행할 수 있다. In the learning of artificial neural networks, there are teacher learning that is optimized for a problem by input of a teacher signal (correct answer), and comparative learning that does not require a teacher signal. Teacher learning is usually used when there is a clear answer, and comparative learning is used for data clustering. Artificial neural networks rely on many inputs and are generally used to guess and approximate a hidden function. It is generally expressed as an interconnection of neuronal systems that calculate values from inputs, and has adaptability, allowing machine learning such as pattern recognition to be performed.

도 5는 본 발명의 일 실시예에 따른 사물 학습모델 생성 방법의 순서도이다. 5 is a flowchart of a method for generating an object learning model according to an embodiment of the present invention.

도 5에 도시된 본 발명의 일 실시예에 다른 사물 학습모델 생성 방법은 사물에 의해 수행될 수 있다. The method for generating a learning model of a thing according to an embodiment of the present invention shown in FIG. 5 may be performed by a thing.

여기서, 사물은 지능형 엣지 기기, 사물인터넷 기반의 드론, 자율형 자동차, 컴퓨팅 파워를 가진 소형 디바이스, 제조 및 재난 등의 어플리케이션에 사용될 수 있는 소형 장비 또는 기기, 사용자 단말 등을 포함할 수 있다. 또한, 사용자 단말(terminal)은 이동 단말(mobile terminal, MT), 스마트폰(Smart Phone), 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 무선 통신 단말기(Wireless Communication Terminal) 등을 포함할 수 있다.Here, the object may include an intelligent edge device, an IoT-based drone, an autonomous vehicle, a small device with computing power, a small device or device that can be used in applications such as manufacturing and disasters, a user terminal, and the like. In addition, a user terminal may include a mobile terminal (MT), a smart phone, a personal computer (PC), a notebook computer, a personal digital assistant (PDA), and a portable multimedia player. (PMP: Portable Multimedia Player), PlayStation Portable (PSP: PlayStation Portable), may include a wireless communication terminal (Wireless Communication Terminal), and the like.

본 발명에서 사물은 클라우드, 보다 구체적으로 클라우드 내에 위치하는 클라우드 서버와 연동할 수 있다. In the present invention, an object may interwork with a cloud, more specifically, a cloud server located in the cloud.

사물은 우선 자신이 획득한 자원 정보를 활용해 초기 사물 학습모델을 생성할 수 있다(S510). 사물은 또한, 클라우드 서버로부터 클라우드 학습모델 지식을 수신할 수 있다(S520). 여기서, 클라우드 학습모델 지식은 클라우드 학습 모델 저장소에 저장되어 있던 클라우드 학습 모델로부터 추출되어 사물로 전이될 수 있다.The object may first create an initial object learning model by using the resource information it has acquired ( S510 ). The thing may also receive cloud learning model knowledge from the cloud server (S520). Here, the cloud learning model knowledge may be extracted from the cloud learning model stored in the cloud learning model storage and transferred to a thing.

두 학습 모델을 확보한 사물은, 초기 사물 학습모델의 예측 결과 및 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출할 수 있다(S530). 초기 사물 학습모델의 예측 결과 및 클라우드 모델의 예측 결과의 오차는 교차 엔트로피 또는 KL 다이버전스를 이용해 계산될 수 있다. 보다 구체적으로, 사물은 임의의 입력에 대한 상기 초기 사물 학습모델의 예측 결과를 산출하고, 상기 임의의 입력에 대한 상기 클라우드 모델의 예측 결과를 산출한다. 이후, 초기 사물 학습모델의 예측 결과 및 클라우드 모델의 예측 결과 간의 오차를 계산할 수 있다.For the thing securing the two learning models, an error of the prediction result of the initial object learning model and the prediction result of the cloud model constructed according to the cloud model knowledge may be calculated ( S530 ). The error between the prediction result of the initial object learning model and the prediction result of the cloud model may be calculated using cross entropy or KL divergence. More specifically, a thing calculates a prediction result of the initial thing learning model with respect to an arbitrary input, and calculates a prediction result of the cloud model with respect to the arbitrary input. Thereafter, an error between the prediction result of the initial object learning model and the prediction result of the cloud model may be calculated.

초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차가 계산되면 이를 이용해 초기 사물 학습모델을 갱신할 수 있다(S540). 여기서, 초기 사물 학습모델의 갱신은 기울기 하강법(gradient descent)을 적용해 최적화된 사물 학습모델을 도출하여 이루어질 수 있다. When the error between the prediction result of the initial object learning model and the prediction result of the cloud model is calculated, the initial object learning model may be updated using the calculated error ( S540 ). Here, the update of the initial object learning model may be performed by applying a gradient descent method to derive an optimized object learning model.

상술한 방식으로 갱신된 사물 학습모델은 사물 학습모델 저장소에 저장될 수있다(S550).The object learning model updated in the above manner may be stored in the object learning model storage (S550).

도 6은 본 발명의 일 실시예에 따라 생성된 사물 학습모델을 이용한 추론 방법의 순서도이다. 6 is a flowchart of an inference method using an object learning model generated according to an embodiment of the present invention.

도 6에 도시된 실시예는 예를 들어, 도 5의 실시예를 통해 설명한 바와 같은 과정을 통해 생성된 최적화된 사물 학습모델을 이용해, 입력에 대한 예측 또는 추론을 수행하는 방법의 순서도이다. The embodiment shown in FIG. 6 is a flowchart of a method of predicting or inferring an input using, for example, an optimized object learning model generated through the process as described in the embodiment of FIG. 5 .

도 6을 참조하면, 예측 대상인 입력 데이터가(예를 들어, 이미지)가 엣지 사물로 입력되면(S610), 엣지 사물은 최적화된 사물훈련모델을 이용해 추론을 수행한다(S620). 이때, 엣지 사물은 추론/예측을 수행하는 추론 엔진을 포함할 수 있다. Referring to FIG. 6 , when input data (eg, an image), which is a prediction target, is input to an edge object (S610), the edge object performs inference using an optimized object training model (S620). In this case, the edge thing may include an inference engine that performs inference/prediction.

추론 엔진에 의해 추론이 완료되면 입력 이미지에 상응하는 라벨이 추론 결과 값으로 출력된다(S630). When the inference is completed by the inference engine, a label corresponding to the input image is output as an inference result value (S630).

도 7은 본 발명의 일 실시예에 따른 사물 학습모델 생성 장치의 블록 구성도이다. 7 is a block diagram of an apparatus for generating an object learning model according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 사물 학습모델 생성 장치는, 적어도 하나의 프로세서(710), 상기 프로세서를 통해 실행되는 적어도 하나의 명령을 저장하는 메모리(720) 및 네트워크와 연결되어 통신을 수행하는 송수신 장치(730)를 포함할 수 있다. The apparatus for generating an object learning model according to an embodiment of the present invention includes at least one processor 710 , a memory 720 for storing at least one command executed through the processor, and a transmission/reception system connected to a network to perform communication device 730 .

사물 학습모델 생성 장치(700)는 또한, 입력 인터페이스 장치(740), 출력 인터페이스 장치(750), 저장 장치(760) 등을 더 포함할 수 있다. 초해상도 영상 생성 장치(700)에 포함된 각각의 구성 요소들은 버스(bus)(770)에 의해 연결되어 서로 통신을 수행할 수 있다. The object learning model generating device 700 may further include an input interface device 740 , an output interface device 750 , a storage device 760 , and the like. Each of the components included in the super-resolution image generating apparatus 700 may be connected by a bus 770 to communicate with each other.

프로세서(710)는 메모리(720) 및 저장 장치(760) 중에서 적어도 하나에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(710)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(720) 및 저장 장치(760) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(720)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중에서 적어도 하나로 구성될 수 있다.The processor 710 may execute a program command stored in at least one of the memory 720 and the storage device 760 . The processor 710 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to embodiments of the present invention are performed. Each of the memory 720 and the storage device 760 may be configured as at least one of a volatile storage medium and a non-volatile storage medium. For example, the memory 720 may be configured as at least one of a read only memory (ROM) and a random access memory (RAM).

여기서, 적어도 하나의 명령은, 상기 프로세서로 하여금, 사물에서 획득한 자원 정보를 활용해 초기 사물 학습모델을 생성하도록 하는 명령; 상기 클라우드로부터 클라우드 학습모델 지식을 수신하도록 하는 명령; 상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하도록 하는 명령; 및 상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차에 따라 상기 초기 사물 학습모델을 갱신하도록 하는 명령을 포함할 수 있다. Here, the at least one command may include: a command for causing the processor to generate an initial thing learning model by using resource information obtained from a thing; a command to receive cloud learning model knowledge from the cloud; a command to calculate an error between the prediction result of the initial object learning model and the prediction result of the cloud model constructed according to the cloud model knowledge; and a command to update the initial object learning model according to an error between the prediction result of the initial object learning model and the prediction result of the cloud model.

이때, 상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차는 교차 엔트로피 및 KL(Kullback-Leibler) 다이버전스(Divergence) 중 적어도 하나를 이용해 계산될 수 있다. In this case, the error between the prediction result of the initial object learning model and the prediction result of the cloud model may be calculated using at least one of cross entropy and Kullback-Leibler (KL) divergence.

상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하도록 하는 명령은, 임의의 입력에 대한 상기 초기 사물 학습모델의 예측 결과를 산출하도록 하는 명령; 상기 임의의 입력에 대한 상기 클라우드 모델의 예측 결과를 산출하도록 하는 명령; 및 상기 초기 사물 학습모델의 예측 결과 및 클라우드 모델의 예측 결과 간의 오차를 계산하도록 하는 명령을 포함할 수 있다. The command to calculate the error of the prediction result of the initial thing learning model and the prediction result of the cloud model constructed according to the cloud model knowledge includes: a command to calculate the prediction result of the initial thing learning model with respect to an arbitrary input; a command to calculate a prediction result of the cloud model with respect to the arbitrary input; and a command to calculate an error between the prediction result of the initial object learning model and the prediction result of the cloud model.

상기 초기 사물 학습모델을 갱신하도록 하는 명령은, 기울기 하강법(gradient descent)을 적용해 최적화된 사물 학습모델을 도출하도록 하는 명령을 포함할 수 있다. The command to update the initial object learning model may include a command to derive an optimized object learning model by applying gradient descent.

상기 사물 학습모델 생성 장치는 하나 이상의 사물 학습모델을 저장하는 사물 학습모델 저장소를 더 포함할 수 있다.The object learning model generating apparatus may further include an object learning model storage for storing one or more object learning models.

상기 적어도 하나의 명령은, 상기 갱신된 초기 사물 학습모델을 상기 사물 학습모델 저장소에 저장하도록 하는 명령을 더 포함할 수 있다.The at least one command may further include a command to store the updated initial thing learning model in the thing learning model storage.

여기서, 상기 클라우드 학습모델 지식은 클라우드 학습 모델 저장소에 저장된 클라우드 학습 모델로부터 추출되어 전이될 수 있다. Here, the cloud learning model knowledge may be extracted and transferred from the cloud learning model stored in the cloud learning model storage.

또한, 상기 사물 학습모델 생성 장치는 엣지 사물일 수 있다.Also, the device for generating an object learning model may be an edge object.

상술한 바와 같은 본 발명의 실시예들에 따르면, 클라우드와 사물의 협력을 통해 사물이 경량화된 사물 학습 모델을 빠르게 학습할 수 있기 때문에 지능화된 사용자 응용 서비스를 효과적으로 제공할 수 있고, 정확하게 사물을 제어할 수 있다.According to the embodiments of the present invention as described above, an intelligent user application service can be effectively provided and the object can be accurately controlled because the object can quickly learn a lightweight object learning model through cooperation between the cloud and the object. can do.

본 발명의 실시예에 따른 방법의 동작은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 프로그램 또는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터로 읽을 수 있는 프로그램 또는 코드가 저장되고 실행될 수 있다. The operation of the method according to the embodiment of the present invention can be implemented as a computer-readable program or code on a computer-readable recording medium. The computer-readable recording medium includes all types of recording devices in which data readable by a computer system is stored. In addition, the computer-readable recording medium may be distributed in a network-connected computer system to store and execute computer-readable programs or codes in a distributed manner.

또한, 컴퓨터가 읽을 수 있는 기록매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.In addition, the computer-readable recording medium may include a hardware device specially configured to store and execute program instructions, such as ROM, RAM, and flash memory. The program instructions may include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

본 발명의 일부 측면들은 장치의 문맥에서 설명되었으나, 그것은 상응하는 방법에 따른 설명 또한 나타낼 수 있고, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 상응한다. 유사하게, 방법의 문맥에서 설명된 측면들은 또한 상응하는 블록 또는 아이템 또는 상응하는 장치의 특징으로 나타낼 수 있다. 방법 단계들의 몇몇 또는 전부는 예를 들어, 마이크로프로세서, 프로그램 가능한 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이용하여) 수행될 수 있다. 몇몇의 실시예에서, 가장 중요한 방법 단계들의 하나 이상은 이와 같은 장치에 의해 수행될 수 있다. Although some aspects of the invention have been described in the context of an apparatus, it may also represent a description according to a corresponding method, wherein a block or apparatus corresponds to a method step or feature of a method step. Similarly, aspects described in the context of a method may also represent a corresponding block or item or a corresponding device feature. Some or all of the method steps may be performed by (or using) a hardware device such as, for example, a microprocessor, a programmable computer, or an electronic circuit. In some embodiments, one or more of the most important method steps may be performed by such an apparatus.

실시예들에서, 프로그램 가능한 로직 장치(예를 들어, 필드 프로그머블 게이트 어레이)가 여기서 설명된 방법들의 기능의 일부 또는 전부를 수행하기 위해 사용될 수 있다. 실시예들에서, 필드 프로그머블 게이트 어레이는 여기서 설명된 방법들 중 하나를 수행하기 위한 마이크로프로세서와 함께 작동할 수 있다. 일반적으로, 방법들은 어떤 하드웨어 장치에 의해 수행되는 것이 바람직하다.In embodiments, a programmable logic device (eg, a field programmable gate array) may be used to perform some or all of the functionality of the methods described herein. In embodiments, the field programmable gate array may operate in conjunction with a microprocessor to perform one of the methods described herein. In general, the methods are preferably performed by some hardware device.

이상 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. Although described above with reference to the preferred embodiment of the present invention, those skilled in the art can variously modify and change the present invention within the scope without departing from the spirit and scope of the present invention described in the claims below. You will understand that you can.

100: 클라우드 200: 엣지 사물
710: 프로세서 720: 메모리
100: Cloud 200: Edge Things
710: processor 720: memory

Claims (14)

클라우드와 연동하는 사물에서 사물 학습모델을 생성하는 방법으로서,
사물에서 획득한 자원 정보를 활용해 초기 사물 학습모델을 생성하는 단계;
상기 클라우드로부터 클라우드 학습모델 지식을 수신하는 단계;
상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하는 단계; 및
상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차에 따라 상기 초기 사물 학습모델을 갱신하는 단계를 포함하는, 사물 학습모델 생성 방법.
As a method of generating an object learning model from a cloud-linked object,
generating an initial object learning model by using resource information obtained from the object;
receiving cloud learning model knowledge from the cloud;
calculating an error between the prediction result of the initial object learning model and the prediction result of the cloud model constructed according to the cloud model knowledge; and
and updating the initial object learning model according to an error between the prediction result of the initial object learning model and the prediction result of the cloud model.
청구항 1에 있어서,
상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차는 교차 엔트로피 및 KL(Kullback-Leibler) 다이버전스(Divergence) 중 적어도 하나를 이용해 계산되는, 사물 학습모델 생성 방법.
The method according to claim 1,
The error of the prediction result of the initial object learning model and the prediction result of the cloud model is calculated using at least one of cross entropy and KL (Kullback-Leibler) divergence.
청구항 1에 있어서,
상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하는 단계는,
임의의 입력에 대한 상기 초기 사물 학습모델의 예측 결과를 산출하는 단계;
상기 임의의 입력에 대한 상기 클라우드 모델의 예측 결과를 산출하는 단계; 및
상기 초기 사물 학습모델의 예측 결과 및 클라우드 모델의 예측 결과 간의 오차를 계산하는 단계를 포함하는, 사물 학습모델 생성 방법.
The method according to claim 1,
Calculating the error of the prediction result of the initial object learning model and the prediction result of the cloud model constructed according to the cloud model knowledge,
calculating a prediction result of the initial object learning model with respect to an arbitrary input;
calculating a prediction result of the cloud model with respect to the arbitrary input; and
and calculating an error between the prediction result of the initial object learning model and the prediction result of the cloud model.
청구항 1에 있어서,
상기 초기 사물 학습모델을 갱신하는 단계는,
기울기 하강법(gradient descent)을 적용해 최적화된 사물 학습모델을 도출하는 단계를 포함하는, 사물 학습모델 생성 방법.
The method according to claim 1,
The step of updating the initial object learning model is,
A method of generating an object learning model, comprising the step of deriving an optimized object learning model by applying gradient descent.
청구항 1에 있어서,
상기 갱신된 초기 사물 학습모델을 사물 학습모델 저장소에 저장하는 단계를 더 포함하는, 사물 학습모델 생성 방법.
The method according to claim 1,
The method of generating an object learning model, further comprising the step of storing the updated initial object learning model in an object learning model storage.
청구항 1에 있어서,
상기 클라우드 학습모델 지식은 클라우드 학습 모델 저장소에 저장된 클라우드 학습 모델로부터 추출되어 전이된, 사물 학습모델 생성 방법.
The method according to claim 1,
The cloud learning model knowledge is extracted and transferred from the cloud learning model stored in the cloud learning model storage, a method of generating a learning model of an object.
프로세서; 및
상기 프로세서를 통해 실행되는 적어도 하나의 명령을 저장하는 메모리를 포함하고,
상기 적어도 하나의 명령은,
사물에서 획득한 자원 정보를 활용해 초기 사물 학습모델을 생성하도록 하는 명령;
상기 클라우드로부터 클라우드 학습모델 지식을 수신하도록 하는 명령;
상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하도록 하는 명령; 및
상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차에 따라 상기 초기 사물 학습모델을 갱신하도록 하는 명령을 포함하는, 사물 학습모델 생성 장치.
processor; and
a memory for storing at least one instruction executed by the processor;
The at least one command is
a command to create an initial object learning model by using resource information obtained from the object;
a command to receive cloud learning model knowledge from the cloud;
a command to calculate an error between the prediction result of the initial object learning model and the prediction result of the cloud model constructed according to the cloud model knowledge; and
and a command to update the initial object learning model according to an error between the prediction result of the initial object learning model and the prediction result of the cloud model.
청구항 7에 있어서,
상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델의 예측 결과의 오차는 교차 엔트로피 및 KL(Kullback-Leibler) 다이버전스(Divergence) 중 적어도 하나를 이용해 계산되는, 사물 학습모델 생성 장치.
8. The method of claim 7,
The error of the prediction result of the initial object learning model and the prediction result of the cloud model is calculated using at least one of cross entropy and KL (Kullback-Leibler) divergence.
청구항 7에 있어서,
상기 초기 사물 학습모델의 예측 결과 및 상기 클라우드 모델 지식에 따라 구성된 클라우드 모델의 예측 결과의 오차를 산출하도록 하는 명령은,
임의의 입력에 대한 상기 초기 사물 학습모델의 예측 결과를 산출하도록 하는 명령;
상기 임의의 입력에 대한 상기 클라우드 모델의 예측 결과를 산출하도록 하는 명령; 및
상기 초기 사물 학습모델의 예측 결과 및 클라우드 모델의 예측 결과 간의 오차를 계산하도록 하는 명령을 포함하는, 사물 학습모델 생성 장치.
8. The method of claim 7,
The command to calculate the error of the prediction result of the initial object learning model and the prediction result of the cloud model constructed according to the cloud model knowledge,
a command to calculate a prediction result of the initial object learning model with respect to an arbitrary input;
a command to calculate a prediction result of the cloud model with respect to the arbitrary input; and
and a command to calculate an error between the prediction result of the initial object learning model and the prediction result of the cloud model.
청구항 7에 있어서,
상기 초기 사물 학습모델을 갱신하도록 하는 명령은,
기울기 하강법(gradient descent)을 적용해 최적화된 사물 학습모델을 도출하도록 하는 명령을 포함하는, 사물 학습모델 생성 장치.
8. The method of claim 7,
The command to update the initial object learning model is,
A device for generating an object learning model, including a command to derive an optimized object learning model by applying gradient descent.
청구항 7에 있어서,
하나 이상의 사물 학습모델을 저장하는 사물 학습모델 저장소를 더 포함하는, 사물 학습모델 생성 장치.
8. The method of claim 7,
Further comprising a thing learning model storage for storing one or more thing learning models, a thing learning model generating device.
청구항 11에 있어서,
상기 적어도 하나의 명령은,
상기 갱신된 초기 사물 학습모델을 상기 사물 학습모델 저장소에 저장하도록 하는 명령을 더 포함하는, 사물 학습모델 생성 장치.
12. The method of claim 11,
The at least one command is
and a command to store the updated initial object learning model in the object learning model storage.
청구항 7에 있어서,
상기 클라우드 학습모델 지식은 클라우드 학습 모델 저장소에 저장된 클라우드 학습 모델로부터 추출되어 전이된, 사물 학습모델 생성 장치.
8. The method of claim 7,
The cloud learning model knowledge is extracted from the cloud learning model stored in the cloud learning model storage and transferred, an object learning model generating device.
청구항 7에 있어서,
상기 사물 학습모델 생성 장치는 엣지 사물인, 사물 학습모델 생성 장치.
8. The method of claim 7,
The object learning model generating device is an edge object, an object learning model generating device.
KR1020200009807A 2020-01-28 2020-01-28 Apparatus and method for generating learning model for machine KR20210096405A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200009807A KR20210096405A (en) 2020-01-28 2020-01-28 Apparatus and method for generating learning model for machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200009807A KR20210096405A (en) 2020-01-28 2020-01-28 Apparatus and method for generating learning model for machine

Publications (1)

Publication Number Publication Date
KR20210096405A true KR20210096405A (en) 2021-08-05

Family

ID=77316560

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200009807A KR20210096405A (en) 2020-01-28 2020-01-28 Apparatus and method for generating learning model for machine

Country Status (1)

Country Link
KR (1) KR20210096405A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115115890A (en) * 2022-07-17 2022-09-27 西北工业大学 Lightweight expressway agglomerate fog classification method based on automatic machine learning
KR20240049048A (en) 2022-10-07 2024-04-16 한국전자기술연구원 Method and system for generating edge ai model for edge cctv

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115115890A (en) * 2022-07-17 2022-09-27 西北工业大学 Lightweight expressway agglomerate fog classification method based on automatic machine learning
CN115115890B (en) * 2022-07-17 2024-03-19 西北工业大学 Automatic machine learning-based lightweight highway group fog classification method
KR20240049048A (en) 2022-10-07 2024-04-16 한국전자기술연구원 Method and system for generating edge ai model for edge cctv

Similar Documents

Publication Publication Date Title
Zhou et al. Edge intelligence: Paving the last mile of artificial intelligence with edge computing
US10546066B2 (en) End-to-end learning of dialogue agents for information access
US11449744B2 (en) End-to-end memory networks for contextual language understanding
US11790212B2 (en) Quantization-aware neural architecture search
CN112288075B (en) Data processing method and related equipment
WO2021159714A1 (en) Data processing method and related device
US11651214B2 (en) Multimodal data learning method and device
KR102656620B1 (en) Electronic apparatus, controlling method of thereof and non-transitory computer readable recording medium
JP7383803B2 (en) Federated learning using heterogeneous model types and architectures
CN110651280A (en) Projection neural network
WO2020159890A1 (en) Method for few-shot unsupervised image-to-image translation
US20200410365A1 (en) Unsupervised neural network training using learned optimizers
US20180129930A1 (en) Learning method based on deep learning model having non-consecutive stochastic neuron and knowledge transfer, and system thereof
Alatabani et al. Deep learning approaches for IoV applications and services
WO2022012668A1 (en) Training set processing method and apparatus
US20230297844A1 (en) Federated learning using heterogeneous labels
US20190228297A1 (en) Artificial Intelligence Modelling Engine
KR20210096405A (en) Apparatus and method for generating learning model for machine
US20230080235A1 (en) Adapting models for artificial intelligence
Milutinovic et al. End-to-end training of differentiable pipelines across machine learning frameworks
CN116821301A (en) Knowledge graph-based problem response method, device, medium and computer equipment
US20200167655A1 (en) Method and apparatus for re-configuring neural network
CN115965078A (en) Classification prediction model training method, classification prediction method, device and storage medium
CN114445692B (en) Image recognition model construction method and device, computer equipment and storage medium
CN112149426B (en) Reading task processing method and related equipment