KR20210062547A - Npu adaptable network platform for artificial intelligent contents service - Google Patents

Npu adaptable network platform for artificial intelligent contents service Download PDF

Info

Publication number
KR20210062547A
KR20210062547A KR1020200073391A KR20200073391A KR20210062547A KR 20210062547 A KR20210062547 A KR 20210062547A KR 1020200073391 A KR1020200073391 A KR 1020200073391A KR 20200073391 A KR20200073391 A KR 20200073391A KR 20210062547 A KR20210062547 A KR 20210062547A
Authority
KR
South Korea
Prior art keywords
content
npu
execution code
learning model
local
Prior art date
Application number
KR1020200073391A
Other languages
Korean (ko)
Other versions
KR102530254B1 (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 우상진
Publication of KR20210062547A publication Critical patent/KR20210062547A/en
Application granted granted Critical
Publication of KR102530254B1 publication Critical patent/KR102530254B1/en

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/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Disclosed is a user terminal equipped with an NPU adaptive edge framework supporting AI content installation and execution according to one embodiment of the present invention. In the user terminal according to one embodiment of the present invention, the NPU adaptive edge framework comprises: an application manager that manages an AI application; a content installer manager that downloads and installs AI content from a content server; and an OS platform comprising an AI content edge engine, an NPU driver, and a sensor driver that executes the AI content and accelerates a first NPU provided in the user terminal. Therefore, the present invention is capable of allowing for efficient AI recognition/deduction functions to be accelerated.

Description

AI 콘텐츠 서비스를 위한 NPU 적응형 네트워크 플랫폼{NPU ADAPTABLE NETWORK PLATFORM FOR ARTIFICIAL INTELLIGENT CONTENTS SERVICE}NPU adaptive network platform for AI content service {NPU ADAPTABLE NETWORK PLATFORM FOR ARTIFICIAL INTELLIGENT CONTENTS SERVICE}

본 발명은 AI 콘텐츠 서비스를 위한 네트워크 플랫폼에 관한 것으로 좀 더 상세하게는 AI 콘텐츠 배포, 설치, 실행을 위한 NPU 적응형 네트워크 플랫폼에 관한 것이다.The present invention relates to a network platform for AI content services, and more particularly, to an NPU adaptive network platform for AI content distribution, installation, and execution.

신경망처리장치(Neural Processing Unit, NPU)는 우리의 뇌처럼 정보를 학습하고 처리하는 프로세서로서 셀 수없이 많은 신경세포와 시냅스로 연결되어 신호를 주고받으며 동시에 작업을 진행하는 인간의 뇌 신경세포와 유사한 작업을 진행하기 때문에, 스스로 학습하고 판단할 수 있는 인공지능이 접목되어 AI 칩이라고 불린다. 이러한 NPU의 출현으로 모바일 단말 부분에서 저전력 고효율의 AI 인식 및 추론기능을 가속화할 수 있게 되었다. Neural Processing Unit (NPU) is a processor that learns and processes information like our brain, and is connected to countless neurons and synapses to send and receive signals, similar to human brain neurons. Because it is working, it is called an AI chip because it incorporates artificial intelligence that can learn and judge by itself. With the advent of these NPUs, it is possible to accelerate AI recognition and reasoning functions with low power and high efficiency in mobile terminals.

특히, 일반 영상이나 동영상에 대하여, 다양한 형태의 AI 인식 프로세스에 대한 니즈가 증가하고 있다. 머신 러닝 기술을 이용하는 학습 프로세스는 GPU가 효율적이지만 인식 프로세스는 NPU가 더 효율적이기 때문에, 이미 만들어진 학습 모델에 적용하는 서비스나 어플리케이션 개발에 있어서 NPU의 중요성이 커지고 있다. 따라서, 대부분의 칩셋 제조업체는 차세대 SoC(systen on chip)로서 NPU 개발에 착수하고 있으며 향후 지속적으로 증가할 것이다.In particular, for general images and videos, the need for various types of AI recognition processes is increasing. Since the GPU is more efficient in the learning process using machine learning technology, but the NPU is more efficient in the recognition process, the importance of the NPU in developing a service or application applied to an already created learning model is increasing. Therefore, most chipset manufacturers are starting to develop NPU as a next-generation SoC (systen on chip) and will continue to increase in the future.

현재, 머신러닝을 기반으로 하는 학습 기술은 일반화되어 있지만, 알고리즘(학습 모델)을 적용하여 단말에 직접 서비스하는 인공지능 디바이스의 개발은 시장의 요구에 미치지 못하고 있으며, NPU 칩셋은 다양하게 시장에 출현하고 있지만, 이를 사용하기 위한 콘텐츠는 부족하다. 또한, 높은 카메라 성능에 비해 AI 기술을 적용한 디바이스나 서비스 역시 한정적이다.Currently, machine learning-based learning technology is generalized, but the development of artificial intelligence devices that directly service terminals by applying algorithms (learning models) are not meeting the needs of the market, and NPU chipsets appear in the market in various ways. However, there is not enough content to use it. In addition, compared to high camera performance, devices and services to which AI technology is applied are also limited.

특히, 알고리즘의 NPU 종속성 및 데이터 독점성으로 인해서 다양한 학습모델을 테스트할 수 있는 단말 플랫폼이 부재하며, NPU를 이용할 수 있는 학습 데이터가 부족한 상황이다.In particular, due to the NPU dependency and data monopoly of the algorithm, there is no terminal platform that can test various learning models, and there is a lack of learning data that can use the NPU.

상기 문제를 해결하기 위한 본 발명의 목적은, NPU에 종속되지 않고 사용자가 원하는 AI 콘텐츠를 설치하고 실행하도록 지원할 수 있는 사용자 단말을 제공하는 데에 있다.An object of the present invention for solving the above problem is to provide a user terminal capable of supporting the installation and execution of AI content desired by the user without being dependent on the NPU.

상기 문제를 해결하기 위한 본 발명의 다른 목적은, 단말의 테스트 플랫폼에 종속되지 않고 AI 콘텐츠를 배포할 수 있는 방법을 제공하는 데에 있다.Another object of the present invention for solving the above problem is to provide a method for distributing AI content without being dependent on a test platform of a terminal.

상기 목적을 달성하기 위한 본 발명은 AI 콘텐츠 설치 및 실행을 지원하는 NPU 적응형 엣지 프레임워크가 구비된 사용자 단말에 있어서, 상기 NPU 적응형 엣지 프레임워크는 AI 어플리케이션을 관리하기 위한 어플리케이션 매니저와, 콘텐츠 서버로부터 AI 콘텐츠를 다운로드하고 설치하기 위한 콘텐츠 설치 매니저와, 상기 AI 콘텐츠를 실행하고 상기 사용자 단말에 구비된 제1 NPU를 가속하기 위한 AI 콘텐츠 엣지 엔진과 NPU 드라이버와 센서 드라이버를 포함하는 OS 플랫폼을 포함하는 사용자 단말을 제공한다. The present invention for achieving the above object is a user terminal equipped with an NPU adaptive edge framework that supports installation and execution of AI content, wherein the NPU adaptive edge framework includes an application manager for managing AI applications, and contents. An OS platform including a content installation manager for downloading and installing AI content from a server, an AI content edge engine for executing the AI content and accelerating the first NPU provided in the user terminal, an NPU driver, and a sensor driver. It provides a user terminal including.

여기서, 상기 AI 콘텐츠는 학습모델과 환경 파라미터를 포함하되, 상기 학습모델은 하드웨어 독립적인 중간표현 형태 또는 특정 NPU에 의해 지원되는 실행코드 형태로 구비되고, 상기 환경 파라미터는 사용자 단말의 환경에 대응하는 라이브러리 및 리소스와, 상기 학습모델이 중간표현 형태인 경우 실행코드로 변환할 클라우드 컴파일러가 위치하는 변환 서버 정보를 포함하고, 상기 콘텐츠 설치 매니저는 상기 콘텐츠 서버로부터 다운로드 가능한 AI 콘텐츠 목록을 수신하고, 선택된 AI 콘텐츠를 다운로드하기 위한 콘텐츠 다운로더와 상기 변환 서버상의 클라우드 컴파일러에 요청하여 상기 학습 모델을 상기 제1 NPU에 의해 지원 가능한 실행코드로 변환하는 클라우드 요청부를 포함하는 것을 특징으로 한다.Here, the AI content includes a learning model and an environment parameter, and the learning model is provided in a hardware-independent intermediate expression form or an execution code form supported by a specific NPU, and the environment parameter corresponds to the environment of the user terminal. The library and resources, and when the learning model is in the form of an intermediate expression, includes information on a conversion server where a cloud compiler to be converted into an execution code is located, and the content installation manager receives a list of downloadable AI contents from the content server, and selects It characterized in that it comprises a content downloader for downloading AI content and a cloud request unit for converting the learning model into an executable code that can be supported by the first NPU by requesting a cloud compiler on the conversion server.

또한, 여기서 상기 AI 콘텐츠는 학습모델과 환경 파라미터를 포함하되, 상기 학습모델은 하드웨어 독립적인 중간표현 형태 또는 특정 NPU에 의해 지원되는 실행코드 형태로 구비되고, 상기 콘텐츠 설치 매니저는 상기 학습 모델을 상기 제1 NPU에 의해 지원가능한 제1 로컬 실행코드로 변환하는 로컬 컴파일러와 상기 환경 파라미터에 상기 제1 NPU 정보 및 상기 사용자 단말의 정보를 포함하는 변환 정보를 추가하여 상기 콘텐츠 서버로 업로드하고, 상기 콘텐츠 서버에 상기 제1 로컬 실행코드에 대한 인증을 요청하는 인증 요청부를 더 포함하는 것을 특징으로 한다.In addition, wherein the AI content includes a learning model and an environment parameter, the learning model is provided in a hardware-independent intermediate expression form or an execution code form supported by a specific NPU, and the content installation manager displays the learning model. A local compiler that converts to a first local executable code supported by the first NPU and conversion information including the first NPU information and the user terminal information to the environment parameter are added to the content server, and the content It characterized in that it further comprises an authentication requesting unit for requesting the server to authenticate the first local execution code.

또한, 여기서 상기 환경 파라미터는 상기 학습모델이 중간표현 형태인 경우, 상기 제1 NPU에 의해 지원 가능한 제2 로컬 실행코드를 구비한 피어(peer) 단말의 정보를 포함하고, 상기 콘텐츠 설치 매니저는 상기 피어 단말에 요청하여 상기 제2 로컬 실행코드를 수신하는 피어 교신부를 포함하는 것을 특징으로 한다.In addition, here, the environment parameter includes information on a peer terminal having a second local execution code that can be supported by the first NPU when the learning model is in the form of an intermediate expression, and the content installation manager And a peer communication unit configured to request the peer terminal to receive the second local execution code.

또한, 여기서 상기 피어 교신부는 제3의 피어 단말로부터 요청이 있는 경우 상기 제1 로컬 실행코드를 상기 제3의 피어 단말로 전송하고, 상기 전송 정보를 콘텐츠 서버에 송신하는 것을 특징으로 한다. In addition, the peer communication unit is characterized in that when there is a request from a third peer terminal, the first local execution code is transmitted to the third peer terminal, and the transmission information is transmitted to a content server.

또한, 여기서 상기 제2 로컬 실행 코드는 상기 피어 단말의 로컬 컴파일러에 의해 변환된 실행 코드이고, 피어 단말간 로컬 실행코드의 전송 정보는 상기 콘텐츠 서버의 과금 정책에 기초하여 정산되는 것을 특징으로 한다. In addition, the second local execution code is an execution code converted by a local compiler of the peer terminal, and transmission information of the local execution code between peer terminals is calculated based on a billing policy of the content server.

또한, 여기서 상기 AI 콘텐츠 엣지 엔진은 다운로드한 AI 콘텐츠를 디코딩하여 추론하는 모델 실행기와 상기 NPU 드라이버와 상기 모델 실행기간의 통신을 제어하기 위한 콘텐츠 서비스 프로토콜을 포함하는 것을 특징으로 한다.In addition, the AI content edge engine is characterized in that it includes a model executor for decoding and inferring the downloaded AI content, and a content service protocol for controlling communication between the NPU driver and the model execution period.

상기 다른 목적을 달성하기 위한 본 발명은 AI 콘텐츠 제작 스튜디오에서 AI 콘텐츠를 배포하기 위한 AI 콘텐츠 배포 방법에 있어서, 머신러닝 도구를 이용하여 학습한 학습 모델과 환경 파라미터를 포함하는 AI 콘텐츠를 생성하는 단계와 상기 AI 콘텐츠를 콘텐츠 서버에 업로드하는 단계를 포함하고, 상기 학습 모델은 하드웨어 독립적인 중간표현 형태이거나 또는 특정 NPU에 맞추어 변환된 실행코드 형태이고, 상기 환경 파라미터는 사용자 단말의 환경에 대응하는 라이브러리 및 리소스를 포함하고, 또한 상기 학습 모델이 중간표현 형태인 경우 상기 학습 모델을 실행코드로 변환할 클라우드 컴파일러가 위치하는 변환 서버 정보를 포함하는 것을 특징으로 하는 AI 콘텐츠 배포 방법을 제공한다.In an AI content distribution method for distributing AI content in an AI content production studio, the present invention for achieving the other object is the step of generating AI content including a learning model and environment parameters learned using a machine learning tool. And uploading the AI content to a content server, wherein the learning model is a hardware-independent intermediate expression form or an execution code form converted according to a specific NPU, and the environment parameter is a library corresponding to the environment of the user terminal. And a conversion server information including a resource, and in which a cloud compiler to convert the learning model into an execution code is located when the learning model is in the form of an intermediate expression.

여기서, 상기 학습 모델이 중간표현 형태인 경우, 사용자 단말의 로컬 컴파일러에서 변환된 로컬 실행코드를 인증하는 단계를 더 포함하되, 상기 인증하는 단계는 상기 사용자 단말이나 상기 콘텐츠 서버로부터 상기 로컬 실행코드에 대한 인증 요청을 수신하면, 상기 콘텐츠 서버의 인증정책에 기초하여 상기 로컬 실행코드를 인증하고, 상기 환경 파라미터에 상기 로컬 실행코드의 인증 정보를 추가하여 상기 콘텐츠 서버에 업로드 하는 것을 특징으로 한다.Here, when the learning model is in the form of an intermediate expression, the method further comprises authenticating the converted local execution code by a local compiler of the user terminal, wherein the authenticating step is performed in the local execution code from the user terminal or the content server. Upon receiving an authentication request for the content server, the local execution code is authenticated based on an authentication policy of the content server, and authentication information of the local execution code is added to the environment parameter and uploaded to the content server.

또한 여기서, 상기 인증을 획득한 상기 로컬 실행 코드는 상기 환경 파라미터의 정보를 기초로 사용자 단말 간에 P2P 방식으로 전송되고, 상기 로컬 실행코드의 전송 정보는 상기 콘텐츠 서버의 과금 정책에 기초하여 정산되는 것을 특징으로 한다. In addition, here, the local execution code that has obtained the authentication is transmitted in a P2P method between user terminals based on the information of the environment parameter, and the transmission information of the local execution code is calculated based on the charging policy of the content server. It is characterized.

본 발명의 AI 콘텐츠 설치 및 실행을 위한 NPU 적응형 AI 콘텐츠 서비스 엣지 프레임워크가 구비된 사용자 단말을 이용하면, 다양한 AI 콘텐츠를 다운로드하여 단말에 구비된 NPU에 맞는 실행코드로 변환하여 실행하거나 테스트함으로써, 효율적인 AI 인식/추론 기능을 가속화할 수 있다. 또한, AI 콘텐츠 제작자는 NPU 적응형 네트워크 플랫폼을 통해서 자체 제작한 AI 콘텐츠를 배포하여 다양한 환경의 단말에서 테스트할 수 있는 장점이 있다.When using a user terminal equipped with the NPU adaptive AI contents service edge framework for installing and executing AI contents of the present invention, by downloading various AI contents, converting them into execution codes suitable for the NPU provided in the terminal, and executing or testing them. , It can accelerate the efficient AI recognition/inference function. In addition, AI content creators have the advantage of distributing self-produced AI content through the NPU adaptive network platform and testing it on terminals in various environments.

도 1은 본 발명의 일 실시예에 따른 AI 콘텐츠 서비스를 지원하는 NPU 적응형 네트워크 플랫폼의 개념도이다.
도 2는 본 발명의 일 실시예에 따른 AI 콘텐츠의 설치 및 실행을 지원하는 NPU 적응형 엣지(edge) 플랫폼의 개념도이다.
도 3은 본 발명의 일 실시예에 따른 AI 콘텐츠의 설치 및 실행을 지원하는 NPU 적응형 엣지 프레임워크를 보여주는 블록도이다.
도 4는 본 발명의 일 실시예에 따른 AI 콘텐츠의 설치 및 실행을 지원하는NPU 적응형 엣지 프레임워크가 구비된 단말에서 AI 콘텐츠를 설치하는 과정을 보여주는 순서도이다.
도 5는 본 발명의 일 실시예에 따른 콘텐츠 제작 스튜디오에서 AI 콘텐츠를 제작 배포하는 과정을 보여주는 순서도이다.
1 is a conceptual diagram of an NPU adaptive network platform supporting an AI content service according to an embodiment of the present invention.
2 is a conceptual diagram of an NPU adaptive edge platform supporting installation and execution of AI content according to an embodiment of the present invention.
3 is a block diagram showing an NPU adaptive edge framework supporting installation and execution of AI content according to an embodiment of the present invention.
4 is a flowchart illustrating a process of installing AI content in a terminal equipped with an NPU adaptive edge framework supporting installation and execution of AI content according to an embodiment of the present invention.
5 is a flowchart illustrating a process of producing and distributing AI content in a content production studio according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.Since the present invention can make various changes and have various embodiments, specific embodiments are illustrated in the drawings and will be described in detail in the detailed description. However, this is not intended to limit the present invention to a specific embodiment, it should be understood to include all changes, equivalents, or substitutes included in the spirit and scope of the present invention. In describing each drawing, similar reference numerals have been used for similar 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 component. For example, without departing from the scope of the present invention, a first element may be referred to as a second element, and similarly, a second element may be referred to as a first element. 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 it may be directly connected or connected to the other component, but other components may exist in the middle. It should be. On the other hand, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there is no other component 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. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present application, terms such as "comprise" or "have" are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof does not preclude in advance.

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

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

도 1은 본 발명의 일 실시예에 따른 AI 콘텐츠 서비스를 지원하는 NPU 적응형 네트워크 플랫폼의 개념도이다.1 is a conceptual diagram of an NPU adaptive network platform supporting an AI content service according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 NPU 적응형 네트워크 플랫폼은 콘텐츠 제작자는 제작한 다양한 종류의 AI 콘텐츠를 콘텐츠 제작 스튜디오(20)를 통해서 콘텐츠 서버(30)에 업로드하고, 사용자는 언제 어디서나 AI 콘텐츠를 다운로드하여 사용자 단말(10)에 설치할 수 있는 서비스 플랫폼을 제공할 수 있다. Referring to FIG. 1, in the NPU adaptive network platform according to an embodiment of the present invention, a content creator uploads various types of AI content produced to a content server 30 through a content production studio 20, and a user It is possible to provide a service platform in which AI content can be downloaded and installed on the user terminal 10 anytime, anywhere.

또한, 도 1을 참조하면, 본 발명의 일 실시예에 따른 NPU 적응형 네트워크 플랫폼은 머신러닝을 통해서 학습된 콘텐츠를 유통하고, 유통된 콘텐츠를 사용자 단말의 환경에 맞추어 가속할 수 있도록 변환할 수 있는 엣지 컴퓨팅 환경을 제공하는 가입자 기반의 웹서비스일 수 있다. In addition, referring to FIG. 1, the NPU adaptive network platform according to an embodiment of the present invention distributes content learned through machine learning and converts the distributed content to be accelerated according to the environment of the user terminal. It may be a subscriber-based web service that provides an edge computing environment.

즉, 콘텐츠 제작 스튜디오(20)는 AI 콘텐츠 개발 및 업로드를 수행하고, 기계 학습 결과물을 사용자 단말(10)에 구비된 어플리케이션에서 실행할 수 있는 콘텐츠로 빌드하고, GUI 기반의 UX(순서도 형태의 Graphic Coding)를 제공할 수 있다. 이때, AI 콘텐츠는 학습모델과 환경 파라미터를 포함할 수 있으며, 학습모델은 하드웨어에 독립적인 중간 표현 형태일 수 있고, 제작 스튜디오에서 특정 NPU에 의해 지원되도록 변환한 실행코드 형태일 수 있다. 이때, 학습모델은 독자적인 사용자 인터페이스를 구비한 어플리케이션을 포함할 수도 있고, 또는 공개된 인식 어플리케이션과 연계되어 동작할 수도 있다. That is, the content production studio 20 develops and uploads AI content, builds the machine learning result into content that can be executed by an application provided in the user terminal 10, and builds a GUI-based UX (graphic coding in the form of a sequence diagram). ) Can be provided. In this case, the AI content may include a learning model and an environment parameter, and the learning model may be in the form of an intermediate representation independent of hardware, or may be in the form of an execution code converted to be supported by a specific NPU in a production studio. In this case, the learning model may include an application having an independent user interface, or may operate in connection with an open recognition application.

또한, 도 1을 참조하면, 다운로드한 AI 콘텐츠가 중간표현 형태인 경우에는, 사용자 단말(10)에서 직접 실행코드로 변환할 수 있는 엣지 컴퓨팅 환경이 제공된다. 즉, 예를 들면, 사용자 단말(10)은 변환 서버(40) 상의 클라우드 컴파일러를 통해 다운로드한 AI 콘텐츠를 단말(10)에 구비된 NPU에 맞는 실행코드로 변환하거나 피어 단말(11)에 설치된 실행코드를 전송받을 수 있다. 또한, 사용자 단말(10, 10)에는 다양한 AI 콘텐츠를 이용하여 AI 인식 서비스를 테스트할 수 있는 엣지(EDGE) 컴퓨팅 환경(NPU, 센서, 어플리케이션 등)이 구비될 수 있다. In addition, referring to FIG. 1, when the downloaded AI content is in the form of an intermediate expression, an edge computing environment that can be directly converted into an executable code in the user terminal 10 is provided. That is, for example, the user terminal 10 converts the AI content downloaded through the cloud compiler on the conversion server 40 into an execution code suitable for the NPU provided in the terminal 10 or is installed in the peer terminal 11 You can receive the code. In addition, the user terminals 10 and 10 may be equipped with an edge (EDGE) computing environment (NPU, sensors, applications, etc.) capable of testing AI recognition services using various AI contents.

도 2는 본 발명의 일 실시예에 따른 AI 콘텐츠의 설치 및 실행을 지원하는 NPU 적응형 엣지 플랫폼의 개념도이다.2 is a conceptual diagram of an NPU adaptive edge platform supporting installation and execution of AI content according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시예에 따른 NPU 적응형 엣지 플랫폼(100)은 콘텐츠 서버(30)에서 다운로드한 AI 콘텐츠의 장치 독립적인 설치환경을 지원한다. Referring to FIG. 2, the NPU adaptive edge platform 100 according to an embodiment of the present invention supports a device-independent installation environment of AI content downloaded from the content server 30.

본 발명의 NPU 적응형 엣지 플랫폼(100)에는 다운로드한 AI 콘텐츠에 포함된 학습모델이 중간표현 형태인 경우, 사용자 단말(10)에 구비된 NPU(101)에 맞는 실행코드로 변환할 수 있는 환경이 구비된다. 예를 들면, 변환 서버(40)의 클라우드 컴파일러를 이용하거나, 단말(10)에 구비된 로컬 컴파일러를 이용하여 학습모델을 NPU(101) 지원가능한 실행코드로 변환할 수 있다. 또는, 동일 환경을 구비한 피어 단말(11)에서 변환된 실행 코드를 전송받을 수 있다. 학습모델을 실행코드로 변환하는 것과 관련하여 좀더 상세한 사항은 후술하기로 한다.In the NPU adaptive edge platform 100 of the present invention, when the learning model included in the downloaded AI content is in the form of an intermediate expression, an environment that can be converted into an execution code suitable for the NPU 101 provided in the user terminal 10 It is equipped with. For example, the learning model may be converted into an executable code that can be supported by the NPU 101 using a cloud compiler of the conversion server 40 or a local compiler provided in the terminal 10. Alternatively, the converted execution code may be transmitted from the peer terminal 11 having the same environment. More details regarding the conversion of the learning model into execution code will be described later.

도 3은 본 발명의 일 실시예에 따른 AI 콘텐츠의 설치 및 실행을 지원하는 NPU 적응형 엣지 프레임워크를 보여주는 블록도이다.3 is a block diagram showing an NPU adaptive edge framework supporting installation and execution of AI content according to an embodiment of the present invention.

도 3을 참조하면 본 발명의 일 실시예에 따른 NPU 적응형 엣지 프레임워크는 단말의 하드웨어 플랫폼(150)에 독립적인 프레임워크로 구비될 수 있다. 또한, 본 발명의 일 실시예에 따른 NPU 적응형 AI 콘텐츠 서비스 엣지 프레임워크는 어플리케이션을 관리하기 위한 어플리케이션 매니저(110), AI 콘텐츠를 실행하고 사용자 단말(10)에 구비된 NPU(101)를 가속하기 위한 AI 콘텐츠 엣지 엔진(130) 및 NPU 드라이버와 센서 드라이버를 포함하는 OS 플랫폼(140)으로 구성될 수 있다.Referring to FIG. 3, the NPU adaptive edge framework according to an embodiment of the present invention may be provided as a framework independent of the hardware platform 150 of the terminal. In addition, the NPU adaptive AI content service edge framework according to an embodiment of the present invention executes an application manager 110 for managing an application, AI content, and accelerates the NPU 101 provided in the user terminal 10. It may be composed of an AI content edge engine 130 and an OS platform 140 including an NPU driver and a sensor driver.

전술한 것처럼, AI 콘텐츠는 학습 모델 및 환경 파라미터를 포함할 수 있고, 학습모델은 하드웨어 독립적인 중간표현 형태 또는 특정 NPU에 의해 지원되는 실행코드 형태로 구비될 수 있으며, 환경 파라미터는 사용자 단말(10)의 환경에 대응하는 설치정보 및 실행정보 등을 포함하는 라이브러리 및 리소스를 포함할 수 있다.As described above, the AI content may include a learning model and environment parameters, and the learning model may be provided in the form of a hardware-independent intermediate expression or an execution code supported by a specific NPU, and the environment parameter is the user terminal 10 ) May include libraries and resources including installation information and execution information corresponding to the environment of).

또한, 환경 파라미터는 학습모델이 중간표현 형태인 경우 단말(10)에 구비된 NPU(101) 지원 가능한 실행코드로 변환할 클라우드 컴파일러가 위치하는 변환 서버(40) 정보 또는 NPU(101)에 의해 지원 가능한 실행코드를 구비한 피어(peer) 단말(11)의 정보를 포함할 수 있다. 클라우드 컴파일러와 피어 단말에 의한 코드변환에 대한 좀 더 상세한 내용은 후술하기로 한다. In addition, when the learning model is in the form of an intermediate expression, the NPU 101 provided in the terminal 10 is supported by the conversion server 40 information or the NPU 101 in which the cloud compiler to be converted into a supportable executable code is located. It may include information on the peer terminal 11 having possible executable code. More details on code conversion by the cloud compiler and the peer terminal will be described later.

콘텐츠 설치 매니저(120)는 콘텐츠 서버(30)로부터 다운로드 가능한 AI 콘텐츠 목록을 수신하고, 선택된 AI 콘텐츠를 다운로드하기 위한 콘텐츠 다운로더(121)와 AI 콘텐츠에 포함된 학습 모델을 변환 서버(40) 상의 클라우드 컴파일러에 요청하여 단말(10)에 구비된 NPU(101)에 의해 지원가능한 실행코드로 변환하는 클라우드 요청부(122)를 포함할 수 있다. 클라우드 컴파일러는 웹 컴파일러를 포함할 수 있으며, 클라우드 컴파일러를 이용한 코드변환은 알려진 기술이므로 상세한 설명을 생략한다.The content installation manager 120 receives a list of downloadable AI content from the content server 30, and converts the content downloader 121 for downloading the selected AI content and the learning model included in the AI content to the cloud on the server 40. It may include a cloud request unit 122 that requests the compiler and converts it into an executable code that can be supported by the NPU 101 provided in the terminal 10. The cloud compiler may include a web compiler, and since code conversion using the cloud compiler is a known technology, detailed descriptions are omitted.

또한, 콘텐츠 설치 매니저(120)는 다운로드한 AI 콘텐츠에 포함된 학습 모델을 단말(10)에 구비된 NPU(101)에 의해 지원가능한 제1 로컬 실행코드로 변환할 수 있는 로컬 컴파일러(125)와, 제1 로컬 실행코드에 대한 인증을 요청하는 인증 요청부(123)를 포함할 수도 있다.In addition, the content installation manager 120 includes a local compiler 125 that can convert the learning model included in the downloaded AI content into a first local executable code that can be supported by the NPU 101 provided in the terminal 10. , It may also include an authentication requesting unit 123 for requesting authentication for the first local execution code.

이때, 인증 요청부(123)는 환경 파라미터에 NPU(101) 정보 및 사용자 단말(10)의 정보(예를 들면, 사용자 단말의 식별정보, 물리적 주소, 네트워크 주소 등)를 포함하는 변환 정보를 추가하여 콘텐츠 서버(30)로 업로드하고, 콘텐츠 서버(30)에 제1로컬 실행코드에 대한 인증을 요청할 수 있다.At this time, the authentication request unit 123 adds conversion information including NPU 101 information and information of the user terminal 10 (eg, identification information of the user terminal, physical address, network address, etc.) to the environment parameter. Thus, it is uploaded to the content server 30 and may request the content server 30 to authenticate the first local execution code.

인증 정보는 콘텐츠 서버(30)에 등록되고, 인증된 실행코드는 피어 단말 간에 직접 전송이 가능하게 되고, 서버의 과금정책에 따라 정산될 수 있다.The authentication information is registered in the content server 30, and the authenticated execution code can be directly transmitted between peer terminals, and can be settled according to the server's billing policy.

또한, 콘텐츠 설치 매니저(120)는 환경 파라미터를 참조하여 단말(10)에 구비된 NPU(11)에 의해 지원 가능한 제2 로컬 실행코드를 구비한 피어 단말(11)에 요청하여 제2 로컬 실행코드를 수신하는 피어 교신부(124)를 포함할 수 있다. 이때, 피어 단말(11)에 구비된 제2 로컬 실행 코드는 피어 단말(11)의 로컬 컴파일러에 의해 변환된 실행 코드일 수 있다. In addition, the content installation manager 120 requests a second local execution code from the peer terminal 11 having a second local execution code that can be supported by the NPU 11 provided in the terminal 10 by referring to the environment parameter. It may include a peer communication unit 124 for receiving. In this case, the second local execution code provided in the peer terminal 11 may be an execution code converted by a local compiler of the peer terminal 11.

콘텐츠 설치 매니저(120)는 단말의 환경에 따라서 AI 콘텐츠의 변환 방법(클라우드 컴파일러 이용, 로컬 컴파일러 이용 또는 피어 단말에 요청 등)을 선택할 수 있다. The content installation manager 120 may select a method of converting AI content (using a cloud compiler, using a local compiler, or requesting a peer terminal) according to the environment of the terminal.

피어 교신부(124)는 제3의 피어 단말로부터 요청이 있는 경우 단말(10)에서 변환된 제1로컬 실행코드를 제3의 피어 단말로 전송하고, 전송 정보를 콘텐츠 서버(30)에 송신할 수도 있다. 이때, 피어 단말(10, 11)간 로컬 실행코드의 전송 정보는 상기 콘텐츠 서버(30)의 과금 정책에 기초하여 정산될 수 있다.When there is a request from the third peer terminal, the peer communication unit 124 transmits the first local execution code converted by the terminal 10 to the third peer terminal, and transmits the transmission information to the content server 30. May be. At this time, transmission information of the local execution code between the peer terminals 10 and 11 may be calculated based on the charging policy of the content server 30.

예를 들면, 사용자 단말(10)에서 변환된 제1 로컬 실행코드가 제3의 피어 단말로 전송되는 경우, 제3의 피어 단말에 과금되는 AI 콘텐츠 사용료의 일부가 사용자 단말(10)에 쿠폰이나 포인트 등의 형태로 부여될 수 있다. 반대로, 제2 로컬 실행코드를 사용자 단말(10)로 전송한 피어 단말(11)에는 사용자 단말(10)에 부과된 AI 콘텐츠 사용료의 일부가 포인트로 부여될 수 있다.For example, when the first local execution code converted by the user terminal 10 is transmitted to a third peer terminal, a portion of the AI content usage fee charged to the third peer terminal may be applied to the user terminal 10 by a coupon or It can be given in the form of points or the like. Conversely, a portion of the AI content usage fee imposed on the user terminal 10 may be given as a point to the peer terminal 11 that has transmitted the second local execution code to the user terminal 10.

AI 콘텐츠 엣지 엔진(130)은 다운로드한 AI 콘텐츠를 디코딩하여 추론하는 모델 실행기(131)와 NPU 드라이버(141)와 모델 실행기(131)간의 통신을 제어하기 위한 콘텐츠 서비스 프로토콜(132)을 포함할 수 있다.The AI content edge engine 130 may include a model executor 131 that decodes and infers the downloaded AI content, and a content service protocol 132 for controlling communication between the NPU driver 141 and the model executor 131. have.

예를 들면, AI 콘텐츠 엣지 엔진(130)은 NPU 업체별로 다른 SDK를 통해 지원하는 부분을 통합하여, 서로 다른 NPU에 맞게 제작된 방대한 AI 콘텐츠를 사용할 수 있다.For example, the AI content edge engine 130 integrates parts supported through different SDKs for different NPU companies, and can use a vast amount of AI content produced for different NPUs.

이하, 본 발명의 일 실시예에 따른 단말에서 AI 콘텐츠를 설치하는 과정을 설명한다.Hereinafter, a process of installing AI content in a terminal according to an embodiment of the present invention will be described.

도 4는 본 발명의 일 실시예에 따른 AI 콘텐츠의 설치 및 실행을 지원하는NPU 적응형 엣지 프레임워크가 구비된 단말에서 AI 콘텐츠를 설치하는 과정을 보여주는 순서도이다4 is a flow chart showing a process of installing AI content in a terminal equipped with an NPU adaptive edge framework that supports installation and execution of AI content according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일 실시예에 따른 NPU 적응형 엣지 프레임워크가 구비된 단말에서 AI 콘텐츠를 설치하는 과정은 다운로드 가능한 AI 콘텐츠 목록을 표시하는 단계(S110), AI 콘텐츠 다운로드 단계(S120), 로컬 컴파일러를 이용한 실행코드 변환 단계(S130) 및 변환된 코드 인증요청 단계(S140), 클라우드 컴파일러를 이용한 실행코드 변환단계(S150), 피어 단말로부터 실행코드 수신단계(S160), AI 콘텐츠 단말 설치 단계(S170)를 포함하여 구성될 수 있다.Referring to FIG. 4, the process of installing AI content in a terminal equipped with an NPU adaptive edge framework according to an embodiment of the present invention includes displaying a list of downloadable AI contents (S110) and downloading AI contents ( S120), the execution code conversion step using a local compiler (S130) and the converted code authentication request step (S140), the execution code conversion step using a cloud compiler (S150), the execution code receiving step from the peer terminal (S160), AI content It may be configured to include a terminal installation step (S170).

이하, 본 발명의 일 실시예에 따른 단말에서 AI 콘텐츠를 설치하는 과정의 각 단계에 대하여 좀 더 상세하게 설명한다.Hereinafter, each step of the process of installing AI content in a terminal according to an embodiment of the present invention will be described in more detail.

먼저, 사용자는 사용자 단말에 설치된 콘텐츠 다운로더를 통해서 다운로드 가능한 AI 콘텐츠를 조회할 수 있다(S110). 이때, 콘텐츠 다운로더는 단말에 기본적으로 설치되어 있거나 마켓에서 다운받은 어플리케이션일 수 있다. 또한, 콘텐츠 다운로더를 통해서 조회되는 AI 콘텐츠는 사용자 단말에 구비된 NPU에 의해 지원되는 AI 콘텐츠만을 포함할 수도 있고, 또는 NPU 독립적인 중간표현 형태의 학습 모델도 포함할 수 있다. 또한, AI 콘텐츠는 딥러닝 툴을 사용하여 학습한 학습모델과 환경 파라미터를 포함할 수 있다.First, the user can inquire downloadable AI content through the content downloader installed in the user terminal (S110). In this case, the content downloader may be basically installed in the terminal or an application downloaded from the market. In addition, the AI content searched through the content downloader may include only AI content supported by the NPU provided in the user terminal, or may include a learning model in the form of an intermediate expression independent of the NPU. In addition, AI content may include learning models and environment parameters learned using deep learning tools.

중간 표현 형태의 학습모델을 포함하는 AI 콘텐츠의 경우에는 실행코드로 변환할 수 있는 수단이 AI 콘텐츠 조회 목록에 제공될 수 있다. 예를 들면, 서버의 클라우드 컴파일러를 통해서 변환하거나, 피어 단말로부터 실행코드를 전송받을 수 있으며, 단말에 로컬 컴파일러가 있다면 자체적으로 변환할 수 있다. 환경 파라미터에는 클라우드 컴파일러가 위치하는 서버의 주소나 인증받은 실행코드를 갖고 있는 피어 단말에 대한 정보가 포함될 수 있다. 동일한 AI 콘텐츠에 대해서 다양한 변환 수단에 대한 정보가 제공될 수 있다. In the case of AI content that includes a learning model in the form of intermediate representation, a means to convert it into an executable code may be provided in the AI content inquiry list. For example, it can be converted through the cloud compiler of the server, or the execution code can be transmitted from the peer terminal, and if there is a local compiler in the terminal, it can be converted by itself. The environment parameter may include the address of the server where the cloud compiler is located or information on the peer terminal having the certified execution code. Information on various conversion means may be provided for the same AI content.

콘텐츠 다운로더는 단말의 환경에 적합한 AI 콘텐츠를 다운로드할 수 있다(S120). 만일, 단말에 구비된 NPU에 의해 지원되는 실행코드 형태의 AI 콘텐츠라면 별도의 변환을 거치지 않고 사용자 단말(S170)에 설치될 수 있다. 또는 중간 코드 형태이며 단말에 로컬 컴파일러가 구비되어 있다면, 단말은 로컬 컴파일러를 이용하여 다운로드한 AI 콘텐츠에 포함된 학습 모델을 단말에 구비된 NPU에 의해 지원가능한 제1 로컬 실행코드로 변환할 수 있다(S130).The content downloader may download AI content suitable for the environment of the terminal (S120). If, if the AI content in the form of an executable code supported by the NPU provided in the terminal can be installed in the user terminal (S170) without going through a separate conversion. Or, if it is in the form of an intermediate code and a local compiler is provided in the terminal, the terminal may convert the learning model included in the downloaded AI content using the local compiler into the first local execution code that can be supported by the NPU provided in the terminal. (S130).

이때, 단말은 AI 콘텐츠에 포함되는 환경 파라미터에 제1 로컬 실행코드와 관련된 NPU 정보 및 사용자 단말의 정보(예를 들면, 사용자 단말의 식별정보, 물리적 주소, 네트워크 주소 등)를 포함하는 변환 정보를 추가하여 콘텐츠 서버로 업로드하고, 콘텐츠 서버에 제1로컬 실행코드에 대한 인증을 요청할 수 있다(S140). 인증 정보는 콘텐츠 서버에 등록되고, 인증된 실행코드는 피어 단말 간에 직접 전송이 가능하게 되고, 서버의 과금 정책에 따라 정산될 수 있다. 예를 들면, AI 콘텐츠를 다운로드한 단말에서 지불하게 되는 수수료의 일부가 실행코드를 송신해준 피어단말에 지급될 수 있다.At this time, the terminal provides conversion information including NPU information related to the first local execution code and information of the user terminal (eg, identification information of the user terminal, physical address, network address, etc.) in the environment parameter included in the AI content. In addition, it is uploaded to the content server, and authentication for the first local execution code may be requested from the content server (S140). Authentication information is registered in the content server, and the authenticated execution code can be directly transmitted between peer terminals, and can be settled according to the server's billing policy. For example, part of the fee paid by the terminal downloading the AI content may be paid to the peer terminal that transmitted the execution code.

만일, AI 콘텐츠가 중간표현 형태이지만, 단말에 로컬 컴파일러가 없다면, 단말은 변환 서버(40) 상의 클라우드 컴파일러를 이용하여 다운로드한 AI 콘텐츠에 포함된 학습 모델을 단말에 구비된 NPU에 의해 지원가능한 실행코드로 변환할 수 있다(S150).If the AI content is in the form of an intermediate expression, but there is no local compiler in the terminal, the terminal executes the learning model included in the AI content downloaded using the cloud compiler on the conversion server 40 that can be supported by the NPU provided in the terminal. It can be converted into a code (S150).

또는, 단말은 환경 파라미터를 참조하여 단말에 구비된 NPU에 의해 지원 가능한 제2 로컬 실행코드를 구비한 피어 단말에 요청하여 제2 로컬 실행코드를 수신할 수 있다(S160). 이때, 피어 단말에 구비된 제2 로컬 실행 코드는 피어 단말의 로컬 컴파일러에 의해 변환된 실행 코드이며, 콘텐츠 서버 또는 콘텐츠 제작 스튜디오에서 인증된 코드일 수 있다.Alternatively, the terminal may receive the second local execution code by requesting a peer terminal having a second local execution code supported by the NPU provided in the terminal with reference to the environment parameter (S160). In this case, the second local execution code provided in the peer terminal is an execution code converted by a local compiler of the peer terminal, and may be a code certified by a content server or a content production studio.

상기한 과정을 거쳐서 변환된 AI 콘텐츠는 사용자 단말에 설치될 수 있다(S170) The AI content converted through the above process may be installed in the user terminal (S170).

이하, AI 콘텐츠의 제작 및 배포과정에 대하여 설명한다. Hereinafter, the process of producing and distributing AI content will be described.

도 5는 본 발명의 일 실시예에 따른 콘텐츠 제작 스튜디오에서 AI 콘텐츠를 제작 배포하는 과정을 보여주는 순서도이다. 5 is a flowchart illustrating a process of producing and distributing AI content in a content production studio according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 일 실시예에 따른 AI 콘텐츠를 제작 배포하는 과정은 인식 어플리케이션 선택 단계(S210), 학습 모델 생성단계(S220), 학습 모델 변환 단계(S230), AI 콘텐츠 제작 단계(S240), 콘텐츠 업로드 단계(S250) 및 로컬 실행코드 인증 단계(S260)를 포함하여 구성될 수 있다.5, the process of producing and distributing AI content according to an embodiment of the present invention includes a recognition application selection step (S210), a learning model generation step (S220), a learning model conversion step (S230), and an AI content production step. It may be configured to include (S240), content upload step (S250) and local execution code authentication step (S260).

이하, 도 5를 참조하여 콘텐츠 제작 스튜디오에서 AI 콘텐츠를 제작 배포하는 과정을 좀 더 상세하게 설명한다. Hereinafter, a process of producing and distributing AI content in a content production studio will be described in more detail with reference to FIG. 5.

먼저, 콘텐츠 제작 스튜디오에서 AI 콘텐츠를 적용하고자 하는 인식 어플리케이션을 선택한다(S210). 인식 어플리케이션은 각종 센서(예를 들면, 카메라, 소리감지 센서, 중력감지 센서, 화재 감지 센서 등)를 통해 각종 신호를 수신하여, 수신한 신호를 기초로 동작하는 어플리케이션을 의미할 수 있다. 또한, 인식 어플리케이션은 AI 콘텐츠를 다운로드하는 사용자 단말에 미리 설치된 어플리케이션이거나 AI 콘텐츠와 함께 다운로드하는 어플리케이션일 수 있다.First, the content creation studio selects a recognition application to which the AI content is to be applied (S210). The recognition application may refer to an application that receives various signals through various sensors (eg, a camera, a sound sensor, a gravity sensor, a fire sensor, etc.) and operates based on the received signal. In addition, the recognition application may be an application that is preinstalled in a user terminal for downloading AI content or an application that is downloaded together with AI content.

콘텐츠 제작 스튜디오는 학교, 연구소, 기업, 개인 등 딥 러닝 및 빅데이터 분석 등을 통해서 학습모델을 생성하고, 배포하는 다양한 주체에서 이용하는 단말을 의미할 수 있다. The content production studio may mean a terminal used by various subjects that create and distribute learning models through deep learning and big data analysis, such as schools, research institutes, companies, and individuals.

다음으로, 선택된 인식 어플리케이션에서 이용할 학습모델을 생성할 수 있다(S220). 학습 모델은 빅데이터 분석을 통해 기계 학습하여 생성된 모델일 수 있다. 빅데이터 분석 및 기계학습은 알려진 방법이므로 자세한 설명을 생략한다. 학습모델은 장치에 비의존적인 중간표현형태로 생성될 수 있다. 또는 NPU에 의해 지원되지 않고 단말의 OS에 맞추어 제작된 실행코드 형태일 수도 있다.Next, a learning model to be used in the selected recognition application may be generated (S220). The learning model may be a model generated by machine learning through big data analysis. Big data analysis and machine learning are known methods, so detailed descriptions are omitted. The learning model can be created in the form of a device-independent intermediate expression. Alternatively, it may be in the form of an executable code that is not supported by the NPU and is produced according to the OS of the terminal.

다음으로, 생성된 학습모델을 특정 NPU에 의해 지원되는 실행코드로 변환할 수 있다(S230). 본 단계에서 복수의 다양한 NPU에 맞도록 변환된 복수의 실행코드가 생성될 수 있다. 또는 본 단계(S230)는 생략될 수 있다.Next, the generated learning model may be converted into an execution code supported by a specific NPU (S230). In this step, a plurality of executable codes converted to fit a plurality of various NPUs may be generated. Alternatively, this step (S230) may be omitted.

다음으로, 이전 단계에서 생성된 학습모델과 환경 파라미터를 포함하는 AI 콘텐츠를 제작할 수 있다(S240). 이때, 학습모델은 앞에서 설명한 것처럼 하드웨어 독립적인 중간표현 형태 또는 특정 NPU에 의해 지원되는 실행코드 형태로 구비될 수 있으며, 환경 파라미터는 사용자 단말의 환경에 대응하는 설치정보 및 실행정보 등을 포함하는 라이브러리 및 리소스를 포함할 수 있다.Next, it is possible to produce AI content including the learning model and environment parameters generated in the previous step (S240). At this time, the learning model may be provided in the form of a hardware-independent intermediate expression or an execution code supported by a specific NPU as described above, and the environment parameter is a library including installation information and execution information corresponding to the environment of the user terminal. And resources.

또한, 환경 파라미터는 학습모델이 중간표현 형태인 경우 단말에 구비된 NPU 지원가능한 실행코드로 변환할 클라우드 컴파일러가 위치하는 변환 서버 정보 또는 NPU에 의해 지원 가능한 실행코드를 구비한 피어 단말의 정보를 포함할 수 있다. 다만, 피어 단말의 정보는 콘텐츠 제작 단계에서는 생성되지 않을 수 있다. In addition, when the learning model is in the form of an intermediate expression, the environment parameter includes information on the conversion server where the cloud compiler to be converted into an NPU-supportable execution code provided in the terminal is located, or information on a peer terminal having an execution code that can be supported by the NPU. can do. However, the information of the peer terminal may not be generated during the content production stage.

다음으로, 학습모델과 환경 파라미터를 포함하여 제작된 AI 콘텐츠는 서버로 업로드 할 수 있다(S250). Next, the AI content produced including the learning model and environment parameters may be uploaded to the server (S250).

다음으로, 상기 학습모델이 중간표현 형태인 경우, 사용자 단말의 로컬 컴파일러에서 변환된 로컬 실행코드를 인증할 수 있다(S260). 예를 들면, 사용자 단말에서 콘텐츠 서버로 로컬 실행코드에 대한 인증 요청을 하면, 콘텐츠 서버는 콘텐츠 제작 스튜디오로 인증 요청 내용을 전달할 수 있다. Next, when the learning model is in the form of an intermediate expression, the local execution code converted by the local compiler of the user terminal may be authenticated (S260). For example, when a user terminal makes a request for authentication for a local executable code to the content server, the content server may transmit the authentication request content to the content production studio.

요청 내용을 전달받은 콘텐츠 제작 스튜디오는, 콘텐츠 서버의 인증정책에 기초하여 로컬 실행코드를 인증하고, 환경 파라미터에 로컬 실행코드의 인증 정보를 추가하여 콘텐츠 서버에 업로드 할 수 있다. 한편, 로컬 실행코드의 인증은 콘텐츠 서버에서 직접 수행할 수도 있다. 이는 콘텐츠 서버의 인증정책에 따라 달라질 수 있다. 이와 같은 인증정보는 콘텐츠 무결성을 보장하기 위하여 콘텐츠 업데이트시에는 초기화될 수 있다.The content production studio receiving the requested content may authenticate the local execution code based on the authentication policy of the content server, add authentication information of the local execution code to the environment parameter, and upload it to the content server. On the other hand, authentication of the local execution code may be performed directly in the content server. This may vary depending on the content server's authentication policy. Such authentication information may be initialized when content is updated to ensure content integrity.

또한, 인증을 획득한 로컬 실행 코드는 환경 파라미터의 정보를 기초로 사용자 단말 간에 P2P 방식으로 전송되고, 로컬 실행코드의 전송 정보는 콘텐츠 서버의 과금 정책에 기초하여 정산될 수 있다. In addition, the local execution code that has obtained authentication is transmitted in a P2P manner between user terminals based on the information of the environment parameter, and transmission information of the local execution code may be calculated based on the charging policy of the content server.

앞에서 설명한 것처럼, 본 발명의 AI 콘텐츠 설치 및 실행을 위한 NPU 적응형 AI 콘텐츠 서비스 엣지 프레임워크가 구비된 사용자 단말을 이용하여, 다양한 AI 콘텐츠를 다운로드하여 단말에 구비된 NPU에 맞는 실행코드로 변환하여 실행하거나 테스트함으로써, 효율적인 AI 인식/추론 기능을 가속화할 수 있다. 또한, AI 콘텐츠 제작자는 본 발명의 NPU 적응형 네트워크 플랫폼을 통해서 자체 제작한 AI 콘텐츠를 배포하여 다양한 환경의 단말에서 테스트할 수 있는 장점이 있다.As described above, using a user terminal equipped with an NPU adaptive AI contents service edge framework for installing and executing AI contents of the present invention, various AI contents are downloaded and converted into an execution code suitable for the NPU provided in the terminal. By running or testing, you can accelerate efficient AI recognition/inference capabilities. In addition, AI content creators have the advantage of distributing self-produced AI content through the NPU adaptive network platform of the present invention and testing it on terminals in various environments.

한편, 본 발명의 일 실시예에 따른 장치는 사용자 단말에서 구동하는 어플리케이션의 형태로 구비될 수 있다. 이때, 사용자 단말은 스마트폰, 태블릿 PC, 랩톱 컴퓨터, 데스크톱 컴퓨터, PDA 등을 포함하는 다양한 컴퓨팅 장치를 포함할 수 있다.Meanwhile, the device according to an embodiment of the present invention may be provided in the form of an application driven by a user terminal. In this case, the user terminal may include various computing devices including a smart phone, a tablet PC, a laptop computer, a desktop computer, and a PDA.

한편, 앞에서 설명한 본 발명의 방법은 컴퓨터에서 실행될 수 있도록 프로그램 코드로 제작되어 컴퓨터로 읽을 수 있는 매체에 저장될 수 있고, 또한, 본 발명의 방법을 실행하는 프로그램이 어플리케이션으로 제작되어 기록매체에 저장될 수 있다. 기록매체란 컴퓨터, 모바일 단말, 서버 등의 하드디스크, 메모리, 보조 메모리, 컴팩트 디스크 등 이동 가능한 저장 매체 등을 포함할 수 있다.Meanwhile, the method of the present invention described above can be produced as a program code to be executed on a computer and stored in a computer-readable medium, and a program for executing the method of the present invention is produced as an application and stored on a recording medium. Can be. The recording medium may include a computer, a mobile terminal, a hard disk such as a server, a memory, an auxiliary memory, or a movable storage medium such as a compact disk.

또한, 지금까지 설명한 본 발명의 방법 및 장치는 실제로 컴퓨터 프로그램에 의해 구현될 수 있고, 컴퓨터에서 실행될 때 컴퓨터 판독 가능한 기록 매체에 저장될 수 있다. 컴퓨터 판독 가능한 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있도록 프로그램 및 데이터가 저장되는 모든 종류의 기록매체를 포함하며, ROM, RAM, CD, DVD-ROM, 자기테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 인터넷을 통한 전송되는 형태로 구현되는 것도 포함될 수 있다. 즉, 이와 같은 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.Further, the method and apparatus of the present invention described so far can be implemented by a computer program in practice, and can be stored in a computer-readable recording medium when executed in a computer. Computer-readable recording media include all types of recording media in which programs and data are stored so that they can be read by a computer system, including ROM, RAM, CD, DVD-ROM, magnetic tape, floppy disk, and optical data storage devices. Also, it may be implemented in the form of transmission through the Internet. That is, such a medium may be distributed over a computer system connected through a network, and computer-readable codes may be stored and executed in a distributed manner.

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

Claims (10)

AI 콘텐츠 설치 및 실행을 지원하는 NPU 적응형 엣지 프레임워크가 구비된 사용자 단말에 있어서, 상기 NPU 적응형 엣지 프레임워크는
AI 어플리케이션을 관리하기 위한 어플리케이션 매니저와,
콘텐츠 서버로부터 AI 콘텐츠를 다운로드하고 설치하기 위한 콘텐츠 설치 매니저와,
상기 AI 콘텐츠를 실행하고 상기 사용자 단말에 구비된 제1 NPU를 가속하기 위한 AI 콘텐츠 엣지 엔진과
NPU 드라이버와 센서 드라이버를 포함하는 OS 플랫폼을 포함하는 사용자 단말.
In a user terminal equipped with an NPU adaptive edge framework supporting AI content installation and execution, the NPU adaptive edge framework
An application manager to manage AI applications,
A content installation manager for downloading and installing AI content from a content server,
An AI content edge engine for executing the AI content and accelerating the first NPU provided in the user terminal;
User terminal including the OS platform including the NPU driver and sensor driver.
청구항 1에 있어서
상기 AI 콘텐츠는 학습모델과 환경 파라미터를 포함하되, 상기 학습모델은 하드웨어 독립적인 중간표현 형태 또는 특정 NPU에 의해 지원되는 실행코드 형태로 구비되고,
상기 환경 파라미터는 사용자 단말의 환경에 대응하는 라이브러리 및 리소스와, 상기 학습모델이 중간표현 형태인 경우 실행코드로 변환할 클라우드 컴파일러가 위치하는 변환 서버 정보를 포함하고,
상기 콘텐츠 설치 매니저는
상기 콘텐츠 서버로부터 다운로드 가능한 AI 콘텐츠 목록을 수신하고, 선택된 AI 콘텐츠를 다운로드하기 위한 콘텐츠 다운로더와
상기 변환 서버상의 클라우드 컴파일러에 요청하여 상기 학습 모델을 상기 제1 NPU에 의해 지원 가능한 실행코드로 변환하는 클라우드 요청부를 포함하는 것을 특징으로 하는 단말.
The method according to claim 1
The AI content includes a learning model and an environment parameter, and the learning model is provided in a hardware-independent intermediate expression form or an execution code form supported by a specific NPU,
The environmental parameters include library and resources corresponding to the environment of the user terminal, and conversion server information in which a cloud compiler to be converted into an execution code is located when the learning model is in an intermediate expression form,
The content installation manager
A content downloader for receiving a list of downloadable AI content from the content server, and downloading the selected AI content, and
And a cloud requesting unit configured to request a cloud compiler on the conversion server to convert the learning model into an executable code that can be supported by the first NPU.
청구항 1 또는 청구항 2에 있어서,
상기 AI 콘텐츠는 학습모델과 환경 파라미터를 포함하되, 상기 학습모델은 하드웨어 독립적인 중간표현 형태 또는 특정 NPU에 의해 지원되는 실행코드 형태로 구비되고,
상기 콘텐츠 설치 매니저는
상기 학습 모델을 상기 제1 NPU에 의해 지원가능한 제1 로컬 실행코드로 변환하는 로컬 컴파일러와
상기 환경 파라미터에 상기 제1 NPU 정보 및 상기 사용자 단말의 정보를 포함하는 변환 정보를 추가하여 상기 콘텐츠 서버로 업로드하고, 상기 콘텐츠 서버에 상기 제1 로컬 실행코드에 대한 인증을 요청하는 인증 요청부를 더 포함하는 것을 특징으로 하는 단말.
The method according to claim 1 or 2,
The AI content includes a learning model and an environment parameter, and the learning model is provided in a hardware-independent intermediate expression form or an execution code form supported by a specific NPU,
The content installation manager
A local compiler that converts the learning model into a first local executable code supported by the first NPU;
An authentication request unit for adding conversion information including the first NPU information and the user terminal information to the environment parameter and uploading it to the content server, and requesting the content server to authenticate the first local execution code. Terminal comprising a.
청구항 3에 있어서,
상기 환경 파라미터는 상기 학습모델이 중간표현 형태인 경우, 상기 제1 NPU에 의해 지원 가능한 제2 로컬 실행코드를 구비한 피어(peer) 단말의 정보를 포함하고,
상기 콘텐츠 설치 매니저는
상기 피어 단말에 요청하여 상기 제2 로컬 실행코드를 수신하는 피어 교신부를 포함하는 것을 특징으로 하는 단말.
The method of claim 3,
The environment parameter includes information on a peer terminal having a second local execution code that can be supported by the first NPU when the learning model is an intermediate expression type,
The content installation manager
And a peer communication unit configured to request the peer terminal to receive the second local execution code.
청구항 4에 있어서,
상기 피어 교신부는 제3의 피어 단말로부터 요청이 있는 경우 상기 제1 로컬 실행코드를 상기 제3의 피어 단말로 전송하고, 상기 전송 정보를 콘텐츠 서버에 송신하는 것을 특징으로 하는 단말.
The method of claim 4,
And the peer communication unit, upon request from a third peer terminal, transmits the first local execution code to the third peer terminal and transmits the transmission information to a content server.
청구항 5에 있어서,
상기 제2 로컬 실행 코드는 상기 피어 단말의 로컬 컴파일러에 의해 변환된 실행 코드이고, 피어 단말간 로컬 실행코드의 전송 정보는 상기 콘텐츠 서버의 과금 정책에 기초하여 정산되는 것을 특징으로 하는 단말.
The method of claim 5,
The second local execution code is an execution code converted by a local compiler of the peer terminal, and transmission information of the local execution code between peer terminals is calculated based on a charging policy of the content server.
청구항 1에 있어서,
상기 AI 콘텐츠 엣지 엔진은
다운로드한 AI 콘텐츠를 디코딩하여 추론하는 모델 실행기와
상기 NPU 드라이버와 상기 모델 실행기간의 통신을 제어하기 위한 콘텐츠 서비스 프로토콜을 포함하는 것을 특징으로 하는 단말.
The method according to claim 1,
The AI content edge engine
A model runner that decodes and infers the downloaded AI content,
And a content service protocol for controlling communication between the NPU driver and the model execution period.
AI 콘텐츠 제작 스튜디오에서 AI 콘텐츠를 배포하기 위한 AI 콘텐츠 배포 방법에 있어서,
머신러닝 도구를 이용하여 학습한 학습 모델과 환경 파라미터를 포함하는 AI 콘텐츠를 생성하는 단계와
상기 AI 콘텐츠를 콘텐츠 서버에 업로드하는 단계를 포함하고,
상기 학습 모델은 하드웨어 독립적인 중간표현 형태이거나 또는 특정 NPU에 맞추어 변환된 실행코드 형태이고,
상기 환경 파라미터는 사용자 단말의 환경에 대응하는 라이브러리 및 리소스를 포함하고, 또한 상기 학습 모델이 중간표현 형태인 경우 상기 학습 모델을 실행코드로 변환할 클라우드 컴파일러가 위치하는 변환 서버 정보를 포함하는 것을 특징으로 하는 AI 콘텐츠 배포 방법.
In the AI content distribution method for distributing AI content in an AI content production studio,
Generating AI content including learning models and environment parameters learned using machine learning tools, and
Including the step of uploading the AI content to a content server,
The learning model is a hardware-independent intermediate expression form or an execution code form converted to a specific NPU,
The environment parameter includes a library and a resource corresponding to the environment of the user terminal, and further includes conversion server information in which a cloud compiler to convert the learning model into an execution code is located when the learning model is an intermediate expression type. AI content distribution method.
청구항 8에 있어서,
상기 학습 모델이 중간표현 형태인 경우, 사용자 단말의 로컬 컴파일러에서 변환된 로컬 실행코드를 인증하는 단계를 더 포함하되,
상기 인증하는 단계는 상기 사용자 단말이나 상기 콘텐츠 서버로부터 상기 로컬 실행코드에 대한 인증 요청을 수신하면, 상기 콘텐츠 서버의 인증정책에 기초하여 상기 로컬 실행코드를 인증하고, 상기 환경 파라미터에 상기 로컬 실행코드의 인증 정보를 추가하여 상기 콘텐츠 서버에 업로드 하는 것을 특징으로 하는 AI 콘텐츠 배포 방법.
The method of claim 8,
If the learning model is an intermediate expression form, further comprising the step of authenticating the converted local execution code in a local compiler of the user terminal,
In the authenticating step, upon receiving an authentication request for the local execution code from the user terminal or the content server, the local execution code is authenticated based on an authentication policy of the content server, and the local execution code is used in the environment parameter. AI content distribution method, characterized in that uploading to the content server by adding the authentication information of.
청구항 9에 있어서,
상기 인증을 획득한 상기 로컬 실행 코드는 상기 환경 파라미터의 정보를 기초로 사용자 단말 간에 P2P 방식으로 전송되고, 상기 로컬 실행코드의 전송 정보는 상기 콘텐츠 서버의 과금 정책에 기초하여 정산되는 것을 특징으로 하는 AI 콘텐츠 배포 방법.
The method of claim 9,
The local execution code that has obtained the authentication is transmitted in a P2P manner between user terminals based on the information of the environment parameter, and the transmission information of the local execution code is settled based on the charging policy of the content server. How to distribute AI content.
KR1020200073391A 2019-11-21 2020-06-17 Npu adaptable network platform for artificial intelligent contents service KR102530254B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20190150095 2019-11-21
KR1020190150095 2019-11-21

Publications (2)

Publication Number Publication Date
KR20210062547A true KR20210062547A (en) 2021-05-31
KR102530254B1 KR102530254B1 (en) 2023-05-23

Family

ID=76150328

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200073391A KR102530254B1 (en) 2019-11-21 2020-06-17 Npu adaptable network platform for artificial intelligent contents service

Country Status (1)

Country Link
KR (1) KR102530254B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023128654A1 (en) * 2021-12-31 2023-07-06 주식회사 뉴로클 Method for optimizing learning model for target apparatus and system therefor

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190138908A1 (en) * 2018-12-28 2019-05-09 Francesc Guim Bernat Artificial intelligence inference architecture with hardware acceleration
KR20190069283A (en) * 2017-12-11 2019-06-19 한국전자통신연구원 Method of providing a cloud service and apparatuses performing the same
KR20190081373A (en) * 2017-12-29 2019-07-09 (주)제이엘케이인스펙션 Terminal device and data processing method based on artificial neural network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190069283A (en) * 2017-12-11 2019-06-19 한국전자통신연구원 Method of providing a cloud service and apparatuses performing the same
KR20190081373A (en) * 2017-12-29 2019-07-09 (주)제이엘케이인스펙션 Terminal device and data processing method based on artificial neural network
US20190138908A1 (en) * 2018-12-28 2019-05-09 Francesc Guim Bernat Artificial intelligence inference architecture with hardware acceleration

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023128654A1 (en) * 2021-12-31 2023-07-06 주식회사 뉴로클 Method for optimizing learning model for target apparatus and system therefor

Also Published As

Publication number Publication date
KR102530254B1 (en) 2023-05-23

Similar Documents

Publication Publication Date Title
JP6941743B2 (en) Generating and deploying machine learning model packages
JP6963671B2 (en) Runtime generation that recognizes compliance based on application patterns and risk assessments
US20200142735A1 (en) Methods and apparatus to offload and onload workloads in an edge environment
CN107404382B (en) Controlling licensable features of software using access tokens
US8880660B2 (en) Information-processing device, communication system, computer readable medium, and information-processing method
KR20060089616A (en) Utilizing abstract descriptions to generate, exchange, and configure service and client runtimes
US10877807B2 (en) Method, apparatus and computer program product for allocating processing resource to application
US8176499B2 (en) Defining, distributing and presenting device experiences
CN112767135B (en) Configuration method and device of rule engine, storage medium and computer equipment
CN109542862B (en) Method, device and system for controlling mounting of file system
US20110231813A1 (en) Apparatus and method for on-demand optimization of applications
KR20100048858A (en) System and method for enabling p2p application in wireless mobile network
CN110231941A (en) Suitable for run mobile device native applications program without the application-level running environment installed completely
CN102420873A (en) Compound network brand new cloud application platform
KR102530254B1 (en) Npu adaptable network platform for artificial intelligent contents service
JP6673980B2 (en) How to connect to a remote PC using a digital device
CN109819042A (en) For providing the method and apparatus of Software Development Kit
EP2633683B1 (en) Remotely sited execution of a software application within a network
WO2022078280A1 (en) Artificial intelligence (ai) training method, system, and device
US20130058634A1 (en) Method for transcoding and playing back video files based on grid technology in devices having limited computing power
US20220269524A1 (en) Method and apparatus for secure data access during machine learning training
KR101780023B1 (en) Method and apparatus for transmitting and receiving application/content based on purchase information
CN110333914B (en) Method and device for executing target operation
KR20220165391A (en) Deep learning distribution system based on query and distribute training method
EP2575327B1 (en) Method for sharing a web application between a plurality of computer terminals connected to a communication network

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right