KR20190069655A - Method and apparatus of providing deep learning development platform based on cloud computing - Google Patents

Method and apparatus of providing deep learning development platform based on cloud computing Download PDF

Info

Publication number
KR20190069655A
KR20190069655A KR1020170167591A KR20170167591A KR20190069655A KR 20190069655 A KR20190069655 A KR 20190069655A KR 1020170167591 A KR1020170167591 A KR 1020170167591A KR 20170167591 A KR20170167591 A KR 20170167591A KR 20190069655 A KR20190069655 A KR 20190069655A
Authority
KR
South Korea
Prior art keywords
deep learning
end module
development platform
cloud computing
code
Prior art date
Application number
KR1020170167591A
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 KR1020170167591A priority Critical patent/KR20190069655A/en
Publication of KR20190069655A publication Critical patent/KR20190069655A/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/08Learning methods

Landscapes

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

Abstract

Disclosed are a method and an apparatus of providing deep learning development platform based on cloud computing. According to one embodiment of the present invention, the method comprises the following steps: receiving a service request related to deep learning in a frontend module; and performing a requested service related to deep learning using a backend module. The frontend module and backend module are implemented in a cloud computing server.

Description

클라우드 컴퓨팅 기반 딥러닝 개발 플랫폼 제공 방법 장치{METHOD AND APPARATUS OF PROVIDING DEEP LEARNING DEVELOPMENT PLATFORM BASED ON CLOUD COMPUTING}[0001] METHOD AND APPARATUS FOR PROVIDING DEEP LEARNING DEVELOPMENT [0002] BASED ON CLOUD COMPUTING [

아래 실시예들은 클라우드 컴퓨팅에 기반한 딥러닝 개발 플랫폼 제공 방법 및 장치에 관한 것이다.The following embodiments relate to a method and apparatus for providing a deep learning development platform based on cloud computing.

PaaS(Platform as a Service)란 개발을 위한 별도의 플랫폼을 구축할 필요 없이 필요한 요소들을 사용 가능한 환경을 구축하고 제공하는 모델이다. PaaS를 이용하면 관련된 인프라(미들웨어, 소프트웨어 등)를 관리하는 복잡함 없이 사용자가 어플리케이션을 개발하고 관리할 수 있다.Platform as a Service (PaaS) is a model for constructing and providing a usable environment without having to build a separate platform for development. With PaaS, users can develop and manage applications without the complexities of managing related infrastructures (middleware, software, etc.).

클라우드 파운드리(Cloud Foundry)란 VMWare가 주도해서 만들고 있는 오픈 PaaS 플랫폼이다. 클라우드 파운드리를 이용하면 개발 기간을 줄이고, 운영 및 관리를 간소화활 수 있다.Cloud Foundry is an open PaaS platform led by VMWare. Using cloud foundries reduces development time and simplifies operations and management.

오픈 PaaS란 클라우드 기반의 가상 환경에서 소프트웨어를 테스트하고 실행할 수 있는 환경을 제공하는 서비스이다. 오픈 PaaS는 개발에 필요한 여러 프로그래밍 언어와 프레임워크를 클라우드를 기반으로 제공한다.Open PaaS is a service that provides an environment for testing and running software in a cloud-based virtual environment. Open PaaS provides several programming languages and frameworks for development based on the cloud.

사용자는 이러한 클라우드 파운드리를 활용하여 자신만의 PaaS 환경을 만들 수 있다Users can leverage these cloud foundries to create their own PaaS environments

실시예들은 클라우드 컴퓨팅 서버를 활용하여 딥러닝 개발 플랫폼을 제공하는 기술을 제공할 수 있다.Embodiments can provide a technology that utilizes a cloud computing server to provide a deep learning development platform.

일 실시예에 따른 딥러닝 개발 플랫폼 제공 방법은, 프론트 엔드(front end) 모듈에서 딥러닝 관련 서비스 요청을 수신하는 단계와, 백 엔드(backend) 모듈을 이용하여 요청된 딥러닝 관련 서비스를 수행하는 단계를 포함하고, 상기 프론트 엔드 모듈 및 상기 백 엔드 모듈은 클라우드 컴퓨팅 서버에 구현된다.A method for providing a deep learning development platform according to an embodiment includes receiving a deep learning related service request in a front end module and performing a requested deep learning related service using a backend module Wherein the front end module and the back end module are implemented in a cloud computing server.

상기 수신하는 단계는, 상기 딥러닝 관련 서비스를 요청하는 객체로부터 코드(code)를 수신하는 단계를 포함할 수 있다.The receiving may include receiving a code from an object requesting the deep learning related service.

상기 코드는, 파이썬(python) 코드 및 HTML(HyperText Markup Language) 코드를 포함할 수 있다.The code may include python code and HyperText Markup Language (HTML) code.

상기 수행하는 단계는, 딥러닝 서버와 통신을 수행하는 단계와, 클라우드 파운드리 커맨드 라인 인터페이스(Cloud Foundry Command Line Interface)를 통해 명령어를 수행하는 단계를 포함할 수 있다.The performing may include communicating with a deep learning server, and executing a command through a cloud foundry command line interface.

상기 통신을 수행하는 단계는, REST(REpresentational State Transfer)Ful API(Application Programming Interface)를 이용하여 상기 딥러닝 서버와 통신을 수행하는 단계를 포함할 수 있다.The step of performing the communication may include communicating with the deep learning server using a REST (REpresentational State Transfer) Ful API (Application Programming Interface).

상기 프론트 엔드 모듈은, HTML 및 자바스크립트(Javascript) 중 적어도 하나를 기반으로 구현될 수 있다.The front-end module may be implemented based on at least one of HTML and Javascript.

상기 백 엔드 모듈은, 파이썬 플라스크(Python Flask)기반의 웹 인터페이스로 구현될 수 있다.The back-end module may be implemented as a Python Flask-based web interface.

일 실시예에 따른 딥러닝 개발 플랫폼 제공 장치는, 딥러닝 관련 서비스 요청을 수신하는 프론트 엔드(front end) 모듈과, 요청된 딥러닝 관련 서비스를 수행하는 백 엔드(backend) 모듈을 포함하고, 상기 프론트 엔드 모듈 및 상기 백 엔드 모듈은 클라우드 컴퓨팅 서버에 구현된다.An apparatus for providing a deep learning development platform according to an embodiment includes a front end module for receiving a deep learning related service request and a backend module for performing a requested deep learning related service, The front-end module and the back-end module are implemented in a cloud computing server.

상기 프론트 엔드 모듈은, 상기 딥러닝 관련 서비스를 요청하는 객체로부터 코드(code)를 수신할 수 있다.The front end module may receive a code from an object requesting the deep learning related service.

상기 코드는, 파이썬(python) 코드 및 HTML(HyperText Markup Language) 코드를 포함할 수 있다.The code may include python code and HyperText Markup Language (HTML) code.

상기 백 엔드 모듈은, 딥러닝 서버와 통신을 수행하고, 클라우드 파운드리 커맨드 라인 인터페이스(Cloud Foundry Command Line Interface)를 통해 명령어를 수행할 수 있다.The back end module may communicate with a deep running server and may execute commands through a cloud foundry command line interface.

상기 백 엔드 모듈은, REST(REpresentational State Transfer)Ful API(Application Programming Interface)를 이용하여 상기 딥러닝 서버와 통신을 수행할 수 있다.The back end module can perform communication with the deep learning server using a REST (REpresentational State Transfer) Ful API (Application Programming Interface).

상기 프론트 엔드 모듈은, HTML 및 자바스크립트(Javascript) 중 적어도 하나를 기반으로 구현될 수 있다.The front-end module may be implemented based on at least one of HTML and Javascript.

상기 백 엔드 모듈은, 파이썬 플라스크(Python Flask)기반의 웹 인터페이스로 구현될 수 있다.The back-end module may be implemented as a Python Flask-based web interface.

도 1은 일 실시예에 따른 딥러닝 개발 플랫폼 제공 시스템의 개략적인 블록도를 나타낸다.
도 2는 도 1에 도시된 클라우드 컴퓨팅 서버의 개략적인 블록도를 나타낸다.
도 3은 도 1에 도시된 딥러닝 개발 플랫폼 제공 시스템의 동작의 예를 나타낸다.
도 4는 파이썬 플라스크를 이용한 웹 인터페이스의 예를 나타낸다.
도 5는 도 1에 도시된 딥러닝 플랫폼 개발 장치를 이용한 딥러닝 어플리케이션의 예를 나타낸다.
1 shows a schematic block diagram of a system for providing a deep learning development platform in accordance with one embodiment.
2 shows a schematic block diagram of the cloud computing server shown in FIG.
FIG. 3 shows an example of the operation of the deep learning development platform providing system shown in FIG.
Figure 4 shows an example of a web interface using a Python flask.
5 shows an example of a deep learning application using the deep learning platform development apparatus shown in FIG.

본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.It is to be understood that the specific structural or functional descriptions of embodiments of the present invention disclosed herein are presented for the purpose of describing embodiments only in accordance with the concepts of the present invention, May be embodied in various forms and are not limited to the embodiments described herein.

본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Embodiments in accordance with the concepts of the present invention are capable of various modifications and may take various forms, so that the embodiments are illustrated in the drawings and described in detail herein. However, it is not intended to limit the embodiments according to the concepts of the present invention to the specific disclosure forms, but includes changes, equivalents, or alternatives falling within the spirit and scope of the present invention.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.The terms first, second, or the like may be used to describe various elements, but the elements should not be limited by the terms. The terms may be named for the purpose of distinguishing one element from another, for example without departing from the scope of the right according to the concept of the present invention, the first element being referred to as the second element, Similarly, the second component may also be referred to as the first component.

어떤 구성요소가 다른 구성요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 “직접 연결되어” 있다거나 “직접 접속되어” 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 “~사이에”와 “바로~사이에” 또는 “~에 직접 이웃하는” 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between. Expressions that describe the relationship between components, for example, "between" and "immediately" or "directly adjacent to" should be interpreted as well.

본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, “포함하다” 또는 “가지다” 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms " comprises ", or " having ", and the like, are used to specify one or more of the features, numbers, steps, operations, elements, But do not preclude the presence or addition of steps, operations, elements, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, 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 this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the meaning of the context in the relevant art and, unless explicitly defined herein, are to be interpreted as ideal or overly formal Do not.

본 명세서에서의 모듈(module)은 본 명세서에서 설명되는 각 명칭에 따른 기능과 동작을 수행할 수 있는 하드웨어를 의미할 수도 있고, 특정 기능과 동작을 수행할 수 있는 컴퓨터 프로그램 코드를 의미할 수도 있고, 또는 특정 기능과 동작을 수행시킬 수 있는 컴퓨터 프로그램 코드가 탑재된 전자적 기록 매체, 예를 들어 프로세서 또는 마이크로 프로세서를 의미할 수 있다.A module in this specification may mean hardware capable of performing the functions and operations according to the respective names described in this specification and may mean computer program codes capable of performing specific functions and operations , Or an electronic recording medium, e.g., a processor or a microprocessor, equipped with computer program code capable of performing certain functions and operations.

다시 말해, 모듈이란 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및/또는 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적 및/또는 구조적 결합을 의미할 수 있다.In other words, a module may mean a functional and / or structural combination of hardware for carrying out the technical idea of the present invention and / or software for driving the hardware.

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the scope of the patent application is not limited or limited by these embodiments. Like reference symbols in the drawings denote like elements.

도 1은 일 실시예에 따른 딥러닝 개발 플랫폼 제공 시스템의 개략적인 블록도를 나타낸다.1 shows a schematic block diagram of a system for providing a deep learning development platform in accordance with one embodiment.

도 1을 참조하면, 딥러닝 개발 플랫폼 제공 시스템(10)은 객체(100) 및 딥러닝 개발 플랫폼 제공 장치(200)를 포함한다. 딥러닝 개발 플랫폼 제공 시스템(10)은 객체(100)에게 클라우드 컴퓨팅을 이용하여 딥러닝 개발 플랫폼을 제공할 수 있다. 객체(100)는 클라우드 컴퓨팅을 이용하여 딥러닝 플랫폼을 이용하고자 하는 개발자 및 어플리케이션을 포함할 수 있다.Referring to FIG. 1, a deep learning development platform providing system 10 includes an object 100 and a deep learning development platform providing apparatus 200. The deep learning development platform providing system 10 can provide a deep learning development platform using the cloud computing to the object 100. [ The object 100 may include developers and applications that wish to utilize a deep learning platform using cloud computing.

객체(100)는 딥러닝을 활용한 어플리케이션을 제작하기 위해서, 별도의 개발 환경을 설정하지 않고, 클라우드 컴퓨팅 서버(210)에 접속하는 것만으로 딥러닝을 이용한 어플리케이션을 개발할 수 있다.The object 100 can develop an application using deep learning by simply connecting to the cloud computing server 210 without setting a separate development environment in order to create an application utilizing deep learning.

클라우드 컴퓨팅 서버(210)는 파이썬 플라스크 기반의 웹 인터페이스를 제공할 수 있다. 예를 들어, 객체(100)는 별도의 프로그래밍 언어나 프로그램에 따른 커맨드 창을 통해 명령어를 입력하지 않고, 파이썬 플라스크(python flask) 기반으로 제작된 웹 인터페이스를 이용하여 어플리케이션을 생성하고, 결과를 확인하는 일련의 과정들을 수행할 수 있다.The cloud computing server 210 can provide a Python flask based web interface. For example, the object 100 may generate an application using a web interface based on a python flask, without inputting a command through a command window according to a separate programming language or program, And the like.

객체(100)는 클라우드 컴퓨팅 서버(210)에 코드(code)를 출력할 수 있다. 코드는 딥러닝 개발과 관련된 코드를 포함할 수 있다. 예를 들어, 코드는 파이썬(python) 코드 및 HTML(HyperText Markup Language) 코드를 포함할 수 있다.The object 100 may output a code to the cloud computing server 210. The code may include code related to deep learning development. For example, the code may include python code and HyperText Markup Language (HTML) code.

딥러닝 개발 플랫폼 제공 장치(200)는 클라우드 컴퓨팅 서버(210) 및 딥러닝 서버(230)을 포함할 수 있다. 객체(100)는 클라우드 컴퓨팅 서버(210)를 통하여 딥러닝 서버(230)에 접속할 수 있다.The deep learning development platform providing apparatus 200 may include a cloud computing server 210 and a deep learning server 230. The object 100 may access the deep learning server 230 through the cloud computing server 210.

클라우드 컴퓨팅 서버(210)는 객체(100)의 서비스 요청에 응답하여 객체(100)에 적합한 딥러닝 서버(230)를 객체(100)에게 중개시켜 줄 수 있다. 예를 들어, 클라우드 컴퓨팅 서버(210)는 PaaS(Platform as a Service) 서버로 구현될 수 있다.The cloud computing server 210 may mediate the deep running server 230 suitable for the object 100 to the object 100 in response to a service request of the object 100. [ For example, the cloud computing server 210 may be implemented as a Platform as a Service (PaaS) server.

클라우드 컴퓨팅 서버(210)는 객체가 요청하는 서비스에 대응하는 딥러닝 서버(230)를 검색하여 객체(100)와 딥러닝 서버(230)를 바인딩할 수 있다. 딥러닝 서버(230)는 복수의 서버들을 포함할 수 있다.The cloud computing server 210 can bind the object 100 and the deep learning server 230 by searching the deep learning server 230 corresponding to the service requested by the object. The deep running server 230 may include a plurality of servers.

딥러닝 개발 플랫폼 제공 장치(200)는 PaaS(Platform as a Service)를 이용하여 딥러닝 개발 플랫폼을 제공할 수 있다. 딥러닝 개발 플랫폼 제공 장치(200)는 파이썬 플라스크(Python Flask) 기반의 웹 인터페이를 이용하여 딥러닝 개발 환경을 제공할 수 있다.The deep learning development platform providing apparatus 200 can provide a deep learning development platform using a platform as a service (PaaS). The deep learning development platform providing apparatus 200 can provide a deep learning development environment using a Python Flask-based web interface.

객체(100)는 원하는 프로그래밍 언어를 이용하여 코드를 작성하여 PaaS 환경에서 자신만의 어플리케이션을 생성할 수 있다. 프로그래밍 언어는 베이직, C, C#, C++, D, F#, 파이썬, 루비, 자바, 파스칼, 프롤로그, 포트란, 코볼, 리스프, 펄, R, 그루비, 스칼라, occam, Swift 및 HTML 등을 포함할 수 있다.The object 100 can create its own application in a PaaS environment by writing code using a desired programming language. Programming languages can include BASIC, C, C #, C ++, D, F #, Python, Ruby, Java, Pascal, Prolog, Fortran, COBOL, Lisp, Perl, R, Groovy, Scala, occam, Swift and HTML .

도 2는 도 1에 도시된 클라우드 컴퓨팅 서버의 개략적인 블록도를 나타낸다.2 shows a schematic block diagram of the cloud computing server shown in FIG.

도 2를 참조하면, 클라우드 컴퓨팅 서버(210)는 프론트 엔드 모듈(211) 및 백 엔드 모듈(213)을 포함할 수 있다.Referring to FIG. 2, the cloud computing server 210 may include a front-end module 211 and a back-end module 213.

프론트 엔드 모듈(211)은 딥러닝 관련 서비스 요청을 수신할 수 있다. 프론트 엔드 모듈(211)은 딥러닝 관련 서비스를 요청하는 객체(100)로부터 코드(code)를 수신할 수 있다. 프론트 엔드 모듈(211)은 HTML 및 자바스크립트(Javascript) 중 적어도 하나를 기반으로 구현될 수 있다.The front end module 211 can receive a deep running related service request. The front end module 211 may receive a code from an object 100 requesting a deep running related service. The front end module 211 may be implemented based on at least one of HTML and Javascript.

프론트 엔드 모듈(211)은 객체(100)의 요청에 응답하여 백 엔드 모듈(213)을 제어할 수 있다. 예를 들어, 프론트 엔드 모듈(211)은 백엔드 모듈(213)로 제어 신호를 출력할 수 있다.The front-end module 211 may control the back-end module 213 in response to a request of the object 100. For example, the front-end module 211 may output a control signal to the back-end module 213.

백 엔드 모듈(213)은 요청된 딥러닝 관련 서비스를 수행할 수 있다. 백 엔드 모듈(213)은 객체(100)의 요청에 응답하여 클라우드 컴퓨팅 서버(210)의 환경을 관리할 수 있다.The back-end module 213 may perform the requested deep-running related service. The back-end module 213 may manage the environment of the cloud computing server 210 in response to the request of the object 100. [

백 엔드 모듈(213)은 딥러닝 서버(230)와 통신을 수행하고, 클라우드 파운드리 커맨드 라인 인터페이스(Cloud Foundry Command Line Interface, CF CLI)를 통해 명령어를 수행할 수 있다. 예를 들어, 백 엔드 모듈(213)은 CF CLI를 통해 로우 CF(row Cloud Foundry) 명령어를 수행할 수 있다.The back end module 213 communicates with the deep learning server 230 and can execute commands through a cloud foundry command line interface (CF CLI). For example, the back-end module 213 may perform a row cloud establishment (CF) command through the CF CLI.

백 엔드 모듈(213)은 객체(100)가 작성한 딥러닝 어플리케이션을 복수의 컨테이터(container)에 올리고, 딥러닝 서버(230)와 통신하여 객체(100)가 작성한 어플리케이션에서 요청한 서비스를 처리할 수 있다.The back-end module 213 loads the deep learning application created by the object 100 into a plurality of containers and communicates with the deep learning server 230 to process the requested service in the application created by the object 100 have.

컨테이너란 어플리케이션이 실행될 수 있는 가상의 운영 시스템을 의미할 수 있다.Container may refer to a virtual operating system where an application can be executed.

백 엔드 모듈(213)은 REST(REpresentational State Transfer)Ful API(Application Programming Interface)를 이용하여 딥러닝 서버(230)와 통신을 수행할 수 있다. 백 엔드 모듈(213)은 파이썬 플라스크(Python Flask)기반의 웹 인터페이스로 구현될 수 있다.The back-end module 213 can communicate with the deep learning server 230 using REST (REpresentational State Transfer) Ful API (Application Programming Interface). The back-end module 213 may be implemented as a Python Flask-based web interface.

클라우드 컴퓨팅 서버(210)의 웹 인터페이스를 통해 특정 코드를 호출 하여 백 엔드 모듈(213)에 미리 구현된 서비스 어플리케이션에서 RESTFul API 형태로 딥러닝 서버(230)와 통신하여 객체(100)에게 딥러닝 개발 플랫폼을 제공할 수 있다.A specific code is called through the web interface of the cloud computing server 210 to communicate with the deep learning server 230 in the form of a RESTful API in a service application previously implemented in the back end module 213, Platform can be provided.

클라우드 컴퓨팅 서버(210)와 딥러닝 서버(230) 간의 통신은 원격으로 이루어질 수 있다.Communication between the cloud computing server 210 and the deep learning server 230 may be performed remotely.

프론트 엔드 모듈(211) 및 백 엔드 모듈(213)은 클라우드 컴퓨팅 서버(210)의 내부 또는 외부에 구현될 수 있다.The front end module 211 and the back end module 213 may be implemented inside or outside the cloud computing server 210.

도 3은 도 1에 도시된 딥러닝 개발 플랫폼 제공 시스템의 동작의 예를 나타낸다.FIG. 3 shows an example of the operation of the deep learning development platform providing system shown in FIG.

도 3을 참조하면, 객체(100)는 사용자일 수 있다. 딥러닝 개발 플랫폼 제공 장치(200)는 클라우드 컴퓨팅 서버(210) 및 딥러닝 서버(230)를 포함할 수 있다. 예를 들어, 클라우드 컴퓨팅 서버(210)는 PaaS 서버로 구현될 수 있다.Referring to FIG. 3, the object 100 may be a user. The deep learning development platform providing apparatus 200 may include a cloud computing server 210 and a deep learning server 230. For example, the cloud computing server 210 may be implemented as a PaaS server.

클라우드 컴퓨팅 서버(210)는 프론드 엔드 모듈(211) 및 백 엔드 모듈(213)을 포함할 수 있다. 프론트 엔드 모듈(211)은 웹 인터페이스를 포함할 수 있고, 백 엔드 모듈(213)은 백 엔드 서비스를 포함할 수 있다.The cloud computing server 210 may include a front end module 211 and a back end module 213. The front end module 211 may include a web interface, and the back end module 213 may include a back end service.

사용자는 웹 인터페이스를 통해 클라우드 컴퓨팅 서버와 통신을 수행할 수 있다. 웹 인터페이스는 사용자로부터 수신한 서비스 요청에 응답하여 백 엔드 서비스를 제어할 수 있다. 백 엔드 서비스는 사용자로부터 요청된 서비스를 처리할 수 있다.The user can communicate with the cloud computing server via the web interface. The web interface can control the back-end service in response to a service request received from the user. The back-end service can process the requested service from the user.

도 4는 파이썬 플라스크를 이용한 웹 인터페이스의 예를 나타내고, 도 5는 도 1에 도시된 딥러닝 플랫폼 개발 장치를 이용한 딥러닝 어플리케이션의 예를 나타낸다.FIG. 4 shows an example of a web interface using a Python flask, and FIG. 5 shows an example of a deep running application using the apparatus for developing a deep running platform shown in FIG.

도 4 및 도 5를 참조하면, 클라우드 컴퓨팅 서버(210)는 어플리케이션을 배포, 운영할 수 있다. 클라우드 컴퓨팅 서버(210)는 폭 넓은 런타임을 제공하고 프레임워크 및 서비스를 선택할 수 있는 자유를 제공할 수 있다.4 and 5, the cloud computing server 210 may distribute and operate an application. The cloud computing server 210 can provide a wide range of runtime and freedom to select frameworks and services.

클라우드 컴퓨팅 서버(210)는 특성 클라우드 환경에 종속되지 않고, 자유로운 선택과 다양성을 보장할 수 있다. 또한, 클라우드 컴퓨팅 서버(210)는 새롭게 추가되는 기술 및 서비스에 대해 확장될 수 있다. 클라우드 컴퓨팅 서버(210)는 퍼블릭 클라우드 및 프라이빗 클라우드를 구축하는데 이용될 수 있다. 클라우드 컴퓨팅 서버(210)는 객체(100)가 작성한 코드를 여러 환경에 쉽게 이식할 수 있다.The cloud computing server 210 is not subject to the characteristic cloud environment and can guarantee freedom of choice and diversity. In addition, the cloud computing server 210 may be extended to newly added technologies and services. The cloud computing server 210 may be used to build a public cloud and a private cloud. The cloud computing server 210 can easily transfer the code created by the object 100 to various environments.

클라우드 컴퓨팅 서버(210)는 객체(100)의 서비스 요청에 따라 이에 적합한 딥러닝 서버(230)를 바인딩할 수 있다. 클라우드 컴퓨팅 서버(210)는 컨테이너(container)를 생성 및 삭제할 수 있다. 또한, 클라우드 컴퓨팅 서버(210)는 컨테이너를 관리하고 컨테이너와 통신할 수 있다.The cloud computing server 210 may bind the deep learning server 230 suitable for the object 100 according to the service request of the object 100. [ The cloud computing server 210 may create and delete containers. In addition, the cloud computing server 210 can manage the container and communicate with the container.

클라우드 컴퓨팅 서버(210)는 생성된 컨테이너의 네트워크를 설정하고, 컨테이너와 통신할 수 있다.The cloud computing server 210 can establish a network of the created container and communicate with the container.

객체(100)는 클라우드 컴퓨팅 서버(210)에 서비스를 요청할 수 있다. 예를 들어, 객체가 요청하는 서비스는 GPU(Graphics Processing Unit) 서비스, 스토리지(storage) 서비스를 포함할 수 있다.The object 100 may request a service from the cloud computing server 210. For example, a service requested by an object may include a Graphics Processing Unit (GPU) service and a storage service.

클라우드 컴퓨팅 서버(210)는 객체(100)가 요청한 서비스를 제공할 수 있는 딥러닝 서버(230)를 검색해서 컨테이너(또는 인스턴스(instance))를 생성할 수 있다. 클라우드 컴퓨팅 서버(210)는 객체(100)와 컨테이너를 바인딩하여 객체(100)가 요청한 서비스를 제공할 수 있다.The cloud computing server 210 may search the deep learning server 230 that can provide the service requested by the object 100 to create a container (or instance). The cloud computing server 210 can provide a service requested by the object 100 by binding the object 100 with the container.

클라우드 컴퓨팅 서버(210)는 클라우드 컨트롤러를 포함할 수 있다. 클라우드 컨트롤러는 서비스를 제공하는 딥러닝 서버(230)에 포함된 보쉬(bosh)가 가지는 고유한 URL(Uniform Resource Locator)을 통해 서비스 브로커(service broker)에 접근할 수 있다.The cloud computing server 210 may include a cloud controller. The cloud controller can access the service broker through a unique URL (Uniform Resource Locator) of bosh included in the deep running server 230 providing the service.

클라우드 컨트롤러는 서비스 브로커 API 규약을 준수하며 서비스 인스턴스(또는 컨테이너)를 요청할 수 있다. 클라우드 컴퓨팅 서버(210)의 보쉬는 생성된 서비스 인스턴스를 이용하여 서비스 브로커가 수신한 요청을 수행할 수 있다.The cloud controller complies with the Service Broker API conventions and can request service instances (or containers). The Bosch of the cloud computing server 210 may use the generated service instance to perform a request received by the service broker.

클라우드 컨트롤러는 클라우드 컴퓨팅 서버(210)에 포함된 객체(100)의 개발 환경과 바인딩 할 수 있다. 바인딩이 완료되면 서비스 브로커와 클라우드 컨트롤러를 거치지 않고, 객체(100)의 개발 환경과 인스턴스가 직접 통신할 수 있다.The cloud controller can bind to the development environment of the object 100 included in the cloud computing server 210. When the binding is completed, the instance of the object 100 can directly communicate with the development environment of the object 100 without going through the service broker and the cloud controller.

클라우드 컴퓨팅 서버(210)는 서비스 브로커를 생성하기 위한 코드를 보쉬에 업로드 할 수 있다. 클라우드 컴퓨팅 서버(210)는 서비스 브로커의 카탈로그를 정의하고 등록하여 URL로 접근 가능하도록 서비스 브로커를 오픈할 수 있다.The cloud computing server 210 may upload the code for creating a service broker to Bosch. The cloud computing server 210 can define and catalog a catalog of the service broker and open the service broker to access the URL.

클라우드 컴퓨팅 서버(210)는 객체(100)의 서비스 요청이나 객체(100) 인증 등의 요청이 발생했을 때 적절한 컴포넌트(인증이나 서비스 레이어)로 라우팅을 수행할 수 있다. 클라우드 컴퓨팅 서버(210)는 클라우드 컴퓨팅 서버(210)에 접속하는 객체(100)의 인증을 수행할 수 있다. 클라우드 컴퓨팅 서버(210)는 클라우드 컨트롤러를 통해 복수의 보쉬에 서비스나 인증에 관한 요청을 수행하고 그 결과를 반환 받을 수 있다. The cloud computing server 210 can perform routing to an appropriate component (authentication or service layer) when a request for service of the object 100 or a request for authentication of the object 100 occurs. The cloud computing server 210 may perform authentication of the object 100 connected to the cloud computing server 210. The cloud computing server 210 can make a request for service or authentication to a plurality of Bosch through the cloud controller and receive a result of the request.

클라우드 컴퓨팅 서버(210)는 어플리케이션 개발환경을 생성하여 저장하고 관리할 수 있다. 클라우드 컴퓨팅 서버(210)에 포함된 디에고 셀(Diego Cell)은 서비스를 제공하는 보쉬의 어플리케이션을 실행할 수도 있다.The cloud computing server 210 can create, store, and manage an application development environment. A Diego cell included in the cloud computing server 210 may execute an application of Bosch that provides a service.

클라우드 컴퓨팅 서버(210)는 서비스 브로커를 이용하여 서비스 인스턴스들을 연결하고 관리할 수 있다. 클라우드 컴퓨팅 서버(210)는 클라우드 컴퓨팅 서버(210)의 내부 통신을 NATs 메시지 버스(message bus)를 이용하여 제어할 수 있다. 클라우드 컴퓨팅 서버(210)는 클라우드 컴퓨팅 서버(210) 내부의 동작들을 로깅할 수 있다.The cloud computing server 210 can connect and manage service instances using a service broker. The cloud computing server 210 can control the internal communication of the cloud computing server 210 using a NATs message bus. The cloud computing server 210 may log operations within the cloud computing server 210.

서비스 브로커는 서비스 인스턴스를 관리할 수 있다. 서비스 브로커는 클라우드 컴퓨팅 서버(210)의 요청에 따라 인스턴스를 생성하거나, 삭제할 수 있다. 서비스 브로커는 인스턴스를 클라우드 컴퓨팅 서버(210)의 객체(100) 개발 환경과 바인딩하거나 기존의 바인딩을 해제할 수 있다. 서비스 브로커는 서비스 브로커 API에 정해놓은 규약대로 HTTP(HyperText Transfer Protocol) 요청(request) 형식으로 통신할 수 있다.A service broker can manage service instances. The service broker may create or delete instances at the request of the cloud computing server 210. The service broker can bind the instance with the object 100 development environment of the cloud computing server 210 or can release the existing binding. The service broker can communicate in the form of a HyperText Transfer Protocol (HTTP) request in accordance with the protocols defined in the Service Broker API.

서비스 브로커 API는 클라우드 컴퓨팅 서버(210)로부터 서비스 브로커의 URL을 획득하여 HTTP 요청 형식으로 코드를 작성할 수 있다. 서비스 브로커 API는 클라우드 컨트롤러를 통해 수신된 서비스 요청에 응답하여 딥러닝 서버(230)에 서비스 인스턴스를 생성하도록 요청할 수 있다. 서비스 브로커 API는 객체(100) 개발환경과 서비스 인스턴스를 바인딩할 수 있다.The service broker API can obtain the URL of the service broker from the cloud computing server 210 and write the code in the HTTP request format. The service broker API may request to create a service instance in the deep learning server 230 in response to a service request received via the cloud controller. The service broker API can bind the service instance with the object 100 development environment.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (14)

프론트 엔드(front end) 모듈에서 딥러닝 관련 서비스 요청을 수신하는 단계; 및
백 엔드(backend) 모듈을 이용하여 요청된 딥러닝 관련 서비스를 수행하는 단계
를 포함하고,
상기 프론트 엔드 모듈 및 상기 백 엔드 모듈은 클라우드 컴퓨팅 서버에 구현되는
딥러닝 개발 플랫폼 제공 방법.
Receiving a deep running related service request from a front end module; And
Performing a requested deep learning related service using a backend module
Lt; / RTI >
The front-end module and the back-end module are implemented in a cloud computing server
How to provide a deep learning development platform.
제1항에 있어서,
상기 수신하는 단계는,
상기 딥러닝 관련 서비스를 요청하는 객체로부터 코드(code)를 수신하는 단계
를 포함하는 딥러닝 개발 플랫폼 제공 방법.
The method according to claim 1,
Wherein the receiving comprises:
Receiving a code from an object requesting the deep learning related service
The method comprising the steps of:
제2항에 있어서,
상기 코드는,
파이썬(python) 코드 및 HTML(HyperText Markup Language) 코드
를 포함하는 딥러닝 개발 플랫폼 제공 방법.
3. The method of claim 2,
The code includes:
Python code and HyperText Markup Language (HTML) code
The method comprising the steps of:
제1항에 있어서,
상기 수행하는 단계는,
딥러닝 서버와 통신을 수행하는 단계; 및
클라우드 파운드리 커맨드 라인 인터페이스(Cloud Foundry Command Line Interface)를 통해 명령어를 수행하는 단계
를 포함하는 딥러닝 개발 플랫폼 제공 방법.
The method according to claim 1,
Wherein the performing comprises:
Performing communication with a deep learning server; And
Steps to perform an instruction through the Cloud Foundry Command Line Interface
The method comprising the steps of:
제4항에 있어서,
상기 통신을 수행하는 단계는,
REST(REpresentational State Transfer)Ful API(Application Programming Interface)를 이용하여 상기 딥러닝 서버와 통신을 수행하는 단계
를 포함하는 딥러닝 개발 플랫폼 제공 방법.
5. The method of claim 4,
The step of performing the communication includes:
Performing communication with the deep learning server using REST (REpresentational State Transfer) Ful API (Application Programming Interface)
The method comprising the steps of:
제1항에 있어서,
상기 프론트 엔드 모듈은,
HTML 및 자바스크립트(Javascript) 중 적어도 하나를 기반으로 구현되는
딥러닝 개발 플랫폼 제공 방법.
The method according to claim 1,
The front end module includes:
It is implemented based on at least one of HTML and JavaScript (Javascript).
How to provide a deep learning development platform.
제1항에 있어서,
상기 백 엔드 모듈은,
파이썬 플라스크(Python Flask)기반의 웹 인터페이스로 구현되는
딥러닝 개발 플랫폼 제공 방법.
The method according to claim 1,
The back-
It is implemented as a web interface based on the Python Flask.
How to provide a deep learning development platform.
딥러닝 관련 서비스 요청을 수신하는 프론트 엔드(front end) 모듈; 및
요청된 딥러닝 관련 서비스를 수행하는 백 엔드(backend) 모듈
을 포함하고,
상기 프론트 엔드 모듈 및 상기 백 엔드 모듈은 클라우드 컴퓨팅 서버에 구현되는
딥러닝 개발 플랫폼 제공 장치.
A front end module for receiving a deep running related service request; And
A backend module that performs the requested deep-running related services
/ RTI >
The front-end module and the back-end module are implemented in a cloud computing server
Deep learning development platform providing device.
제8항에 있어서,
상기 프론트 엔드 모듈은,
상기 딥러닝 관련 서비스를 요청하는 객체로부터 코드(code)를 수신하는
딥러닝 개발 플랫폼 제공 장치.
9. The method of claim 8,
The front end module includes:
Receiving a code from an object requesting the deep learning related service;
Deep learning development platform providing device.
제9항에 있어서,
상기 코드는,
파이썬(python) 코드 및 HTML(HyperText Markup Language) 코드
를 포함하는 딥러닝 개발 플랫폼 제공 장치.
10. The method of claim 9,
The code includes:
Python code and HyperText Markup Language (HTML) code
And a device for providing a deep learning development platform.
제8항에 있어서,
상기 백 엔드 모듈은,
딥러닝 서버와 통신을 수행하고, 클라우드 파운드리 커맨드 라인 인터페이스(Cloud Foundry Command Line Interface)를 통해 명령어를 수행하는
딥러닝 개발 플랫폼 제공 장치.
9. The method of claim 8,
The back-
To communicate with the Deep Learning server, and to execute commands through the Cloud Foundry Command Line Interface
Deep learning development platform providing device.
제11항에 있어서,
상기 백 엔드 모듈은,
REST(REpresentational State Transfer)Ful API(Application Programming Interface)를 이용하여 상기 딥러닝 서버와 통신을 수행하는
딥러닝 개발 플랫폼 제공 장치.
12. The method of claim 11,
The back-
And performs communication with the deep learning server using REST (REpresentational State Transfer) Ful API (Application Programming Interface)
Deep learning development platform providing device.
제8항에 있어서,
상기 프론트 엔드 모듈은,
HTML 및 자바스크립트(Javascript) 중 적어도 하나를 기반으로 구현되는
딥러닝 개발 플랫폼 제공 장치.
9. The method of claim 8,
The front end module includes:
It is implemented based on at least one of HTML and JavaScript (Javascript).
Deep learning development platform providing device.
제8항에 있어서,
상기 백 엔드 모듈은,
파이썬 플라스크(Python Flask)기반의 웹 인터페이스로 구현되는
딥러닝 개발 플랫폼 제공 장치.
9. The method of claim 8,
The back-
It is implemented as a web interface based on the Python Flask.
Deep learning development platform providing device.
KR1020170167591A 2017-12-07 2017-12-07 Method and apparatus of providing deep learning development platform based on cloud computing KR20190069655A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170167591A KR20190069655A (en) 2017-12-07 2017-12-07 Method and apparatus of providing deep learning development platform based on cloud computing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170167591A KR20190069655A (en) 2017-12-07 2017-12-07 Method and apparatus of providing deep learning development platform based on cloud computing

Publications (1)

Publication Number Publication Date
KR20190069655A true KR20190069655A (en) 2019-06-20

Family

ID=67103861

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170167591A KR20190069655A (en) 2017-12-07 2017-12-07 Method and apparatus of providing deep learning development platform based on cloud computing

Country Status (1)

Country Link
KR (1) KR20190069655A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102123112B1 (en) 2019-10-15 2020-06-15 조대원 System and method for managing hospital asset
KR20210050827A (en) 2019-10-29 2021-05-10 (주)한국플랫폼서비스기술 An extraction-system using dispersion deep learning information analysis management based cloud and method of it
KR20210126388A (en) * 2020-04-10 2021-10-20 주식회사 코어닷투데이 Method and apparatus for providing storytelling data
KR20220063652A (en) * 2020-11-10 2022-05-17 주식회사 오내모 Composite web UI provision system in cloud service platform
KR102620693B1 (en) * 2023-01-27 2024-01-04 쿠팡 주식회사 Electronic apparatus for providing configuration for application testing and method thereof

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102123112B1 (en) 2019-10-15 2020-06-15 조대원 System and method for managing hospital asset
KR20210050827A (en) 2019-10-29 2021-05-10 (주)한국플랫폼서비스기술 An extraction-system using dispersion deep learning information analysis management based cloud and method of it
KR20210126388A (en) * 2020-04-10 2021-10-20 주식회사 코어닷투데이 Method and apparatus for providing storytelling data
KR20220063652A (en) * 2020-11-10 2022-05-17 주식회사 오내모 Composite web UI provision system in cloud service platform
KR102620693B1 (en) * 2023-01-27 2024-01-04 쿠팡 주식회사 Electronic apparatus for providing configuration for application testing and method thereof

Similar Documents

Publication Publication Date Title
KR20190069655A (en) Method and apparatus of providing deep learning development platform based on cloud computing
CN108205442B (en) Edge computing platform
KR102146602B1 (en) Method and apparatus of providing deep learning development platform based on container using docker
CN109032706B (en) Intelligent contract execution method, device, equipment and storage medium
US9965322B2 (en) Scheduling tasks in a distributed processing system with both reconfigurable and configurable processors
CN110383795B (en) Server-free cloud management platform based on service graph
US9122657B2 (en) Webpage display system leveraging OSGI
US20180373418A1 (en) Unified real time rule analytics using common programming model on both edge and cloud
US20230291741A1 (en) System and method to securely execute datacenter management operations remotely
US9948702B2 (en) Web services documentation
US10353750B2 (en) Discovery and exposure of transactional middleware server-based applications as consumable service endpoints
US10171560B2 (en) Modular framework to integrate service management systems and cloud orchestrators in a hybrid cloud environment
US20180196647A1 (en) Application Programming Interface Discovery Using Pattern Recognition
US10834059B2 (en) Secure message handling of an application across deployment locations
US9742835B2 (en) System and method for backend control of frontend user interfaces
CN109729110B (en) Method, apparatus and computer readable medium for managing dedicated processing resources
EP4000239B1 (en) 3rd generation partnership project (3gpp) framework for live uplink streaming (flus) sink capabilities determination
CN105389355B (en) Data processing method and terminal
US20220300611A1 (en) Run-time communications protocol parameter adjustment in containerized applications
US10581994B2 (en) Facilitating communication between an origin machine and a target machine
US11157341B1 (en) Data contracts
KR102445391B1 (en) Method and Apparatus for Building Communication Interface to Interact with Intelligent Agent
US11969894B2 (en) Apparatus for automated communication between robot and artificial intelligence service and method using the same
US11496537B2 (en) Method and apparatus for reverse address mapping when using content preparation in 5G networks
Corodescu Locality-Aware Big Data Workflow Orchestration Using Software Containers

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
E601 Decision to refuse application
E801 Decision on dismissal of amendment