WO2021201370A1 - Federated learning resource management apparatus and system, and resource efficiency method therefor - Google Patents

Federated learning resource management apparatus and system, and resource efficiency method therefor Download PDF

Info

Publication number
WO2021201370A1
WO2021201370A1 PCT/KR2020/017156 KR2020017156W WO2021201370A1 WO 2021201370 A1 WO2021201370 A1 WO 2021201370A1 KR 2020017156 W KR2020017156 W KR 2020017156W WO 2021201370 A1 WO2021201370 A1 WO 2021201370A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
processing unit
client
local
updated
Prior art date
Application number
PCT/KR2020/017156
Other languages
French (fr)
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 한국전자기술연구원
Publication of WO2021201370A1 publication Critical patent/WO2021201370A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Definitions

  • the present invention relates to a federated learning resource management apparatus, system, and resource efficiency method thereof, and more particularly, to a system and method capable of efficiently managing resources by selectively operating a plurality of FL clients in consideration of computing resources. it's about
  • AI/ML artificial intelligence, and machine learning
  • Federated Learning does not store data in one place to solve this problem, but stores it only in the data generator, then proceeds with learning in the data generator and collects only the learning results on an independent server to create AI/ML It was presented as a way to improve the performance of the model.
  • This federated learning has the effect of fundamentally blocking the leakage of personal information because the data is not gathered in one place and the learning itself proceeds from the data generator.
  • the implementation of federated learning has a problem in that efficient resource management is difficult because the FL client is implemented in the form of a register that notifies the FL server that it wants to perform the corresponding function.
  • the current FL client has a structure in which, when the FL application is installed, it registers itself as an FL client in the FL server regardless of its own capability. If, for example, when memory is insufficient or processor performance is low, if one's own capability cannot perform federated learning, the FL client stores applications that cannot be operated, resulting in storage wastage.
  • An embodiment of the present invention provides a federated learning resource management apparatus, system, and resource efficiency method capable of efficiently managing resources by selectively operating a plurality of FL clients in consideration of the computing resources of the FL clients.
  • the technical task to be achieved by the present embodiment is not limited to the technical task as described above, and other technical tasks may exist.
  • the method performed by the federated learning (FL) resource management apparatus is request information for operation of a plurality of FL clients from the FL server receiving; selecting one or more FL clients to be operated from among the plurality of FL clients based on the request information; distributing a basic model and a learning tool to the selected FL client; and receiving, by the FL server, a distribution request of the unified model from the FL server as the unified model is generated based on the updated model.
  • the step of receiving request information for operation of a plurality of FL clients from the FL server includes computing requirements information, basic model information and learning tools for the plurality of FL clients as the request information. It may include and convey one or more of the information.
  • the step of selecting one or more FL clients to be operated from among the plurality of FL clients includes at least one of computing resource information, related service operation information, and local data collection information of the plurality of FL clients.
  • One or more FL clients may be selected based on this.
  • the step of selecting one or more FL clients to be operated from among the plurality of FL clients includes selecting one FL client among the plurality of FL clients for which a related service is being operated based on the related service operation information. It may include the step of selecting a car.
  • the selecting of one or more FL clients to be operated from among the plurality of FL clients includes the step of finally selecting an available FL client from among the first selected FL clients based on the computing resource information may include.
  • software for joint learning may be installed and executed for only the selected FL client.
  • the selected FL client may update the basic model based on the learning tool, and transmit the updated model to the FL server as the basic model update is completed.
  • the FL server updates the basic model stored in the FL server into an integrated model as it receives more than a preset number of the updated models from a plurality of FL clients, and uses the FL resource management device to use the plurality of updated models. can request distribution of the integrated model to FL clients of
  • the method may further include registering the plurality of FL clients for management of the FL clients.
  • the apparatus for federated learning (FL) resource management is a communication module for transmitting and receiving data to a FL server and a plurality of FL clients, a program for resource management of the plurality of FL clients Comprising the stored memory and a processor for executing the program stored in the memory, when the processor executes the program and receives request information for operation of a plurality of FL clients from the FL server through the communication module, Based on the request information, one or more FL clients to be operated are selected from among the plurality of FL clients, and basic model information and learning tool information are distributed.
  • FL federated learning
  • the processor may select one or more FL clients based on at least one of computing resource information, related service operation information, and local data collection information of the plurality of FL clients.
  • the system for performing and managing federated learning (FL) is a plurality of FL clients that update the basic model by operating at least one selected and performing federated learning, the updated Upon receiving the request information for the operation of the plurality of FL clients from the FL server and the FL server that update the unified model by receiving more than a preset number of update models and request distribution of the unified model to the plurality of FL clients, FL resource for selecting one or more FL clients to be operated from among the plurality of FL clients based on the request information, distributing basic model information and learning tool information, and distributing an integrated model to the FL clients according to the request of the FL server Includes management.
  • the software for joint learning is not unilaterally installed and operated in a plurality of FL clients, but only the FL clients selected in consideration of the computing resources of the FL clients are operated. It can support efficient management of resources.
  • the software since the software is installed and operated only on the selected FL client, the efficiency of FL client resource utilization can be increased, and the idle resources of other terminals can be increased.
  • FIG. 1 is a diagram for explaining a federated learning protocol according to the prior art.
  • FIG. 2 is a view for explaining a system for performing and managing federated learning according to an embodiment of the present invention.
  • FIG. 3 is a block diagram of a system for performing and managing federated learning according to an embodiment of the present invention.
  • FIG. 1 is a diagram for explaining a federated learning protocol according to the prior art.
  • the environment for performing Federated Learning consists of a FL client that collects local data and updates the local model, and an FL server that collects the local update model and updates and distributes the unified model. do.
  • the FL client registers itself as a corresponding FL client with the FL server.
  • the FL server delivers the integrated model and local learning technique to the registered FL client.
  • the FL client attempts to update the local model by applying the local learning technique to the local data.
  • the FL client delivers the updated model to the FL server, and when a sufficient number of updated models is secured, the FL server updates the integrated model based on this.
  • the prior art has a problem in that the FL client arbitrarily registers without considering the computing resource of the FL client.
  • an embodiment of the present invention is characterized in that the FL resource management apparatus 300 is additionally introduced in order to solve the above-described problem.
  • the FL resource management device 300 is a kind of resource management tool, and among various registered resources, a resource capable of performing the role of the FL client 100 , that is, the actual corresponding federated learning service is operated. By selecting the FL client 100 only when it is being used and having sufficient available resources, efficient resource management and efficiency of the FL process can be improved.
  • FIG. 2 is a view for explaining the federated learning performance and management system 1 according to an embodiment of the present invention.
  • 3 is a block diagram of a system 1 for performing and managing federated learning according to an embodiment of the present invention.
  • the federated learning performance and management system 1 includes a plurality of FL clients 100 , FL servers 200 , and FL resource management apparatus 300 .
  • At least one FL client 100 selected by the FL resource management device 300 is operated, and the selected FL client 100 performs federated learning to update the basic model. That is, in one embodiment of the present invention, not all registered FL clients 100 are operated, but based on the computing resource status of the FL clients 100, the FL clients 100 in an operable state are selectively selected. and operating.
  • the FL server 200 receives more than a preset number of updated updated models from the FL client 100, the updated models are collected and updated into the integrated model, and then the integrated model distribution to a plurality of FL clients 100 is distributed to the FL resources. A request is made to the management device 300 .
  • the FL resource management apparatus 300 When the FL resource management apparatus 300 receives request information for operation of the plurality of FL clients 100 from the FL server 200 , one or more FL clients to be operated among the plurality of FL clients 100 based on the request information (100) is selected to distribute basic model information and learning tool information.
  • the FL resource management apparatus 300 may select one or more FL clients 100 based on one or more of computing resource information, related service operation information, and local data collection information of the plurality of FL clients 100 . .
  • the FL client 100 , the FL server 300 and the FL resource management apparatus 300 are connected to the communication module 410 , the memory 420 and the memory 420 as shown in FIG. 3 . It may be configured to include a processor 430 that executes a stored program.
  • the communication module 410 is preferably configured as a wireless communication module, but this does not exclude a wired communication module.
  • the wireless communication module may be implemented by wireless LAN (WLAN), Bluetooth, HDR WPAN, UWB, ZigBee, Impulse Radio, 60GHz WPAN, Binary-CDMA, wireless USB technology, wireless HDMI technology, and the like.
  • the wired communication module may be implemented as a power line communication device, a telephone line communication device, a cable home (MoCA), Ethernet, IEEE1294, an integrated wired home network, and an RS-485 control device.
  • the memory 420 collectively refers to a non-volatile storage device and a volatile storage device that continuously maintain stored information even when power is not supplied.
  • the memory 420 may include a compact flash (CF) card, a secure digital (SD) card, a memory stick, a solid-state drive (SSD), and a micro SD card.
  • CF compact flash
  • SD secure digital
  • SSD solid-state drive
  • micro SD card micro SD card.
  • NAND flash memory such as cards, magnetic computer storage devices such as hard disk drives (HDDs), etc., and optical disc drives such as CD-ROMs and DVD-ROMs.
  • the components described in the embodiment of the present invention may be implemented in the form of software or hardware such as a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC), and may perform predetermined roles.
  • FPGA field programmable gate array
  • ASIC application specific integrated circuit
  • 'components' are not limited to software or hardware, and each component may be configured to reside in an addressable storage medium or to reproduce one or more processors.
  • a component includes components such as software components, object-oriented software components, class components and task components, and processes, functions, properties, procedures, sub It includes routines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
  • Components and functions provided within the components may be combined into a smaller number of components or further divided into additional components.
  • FIG. 4 is a flowchart of a federated learning process method according to an embodiment of the present invention.
  • the FL resource management apparatus 300 receives request information for the operation of the FL client 100 from the FL server 200 (S110).
  • the FL resource management apparatus 300 may perform a process of registering resources of a plurality of FL clients 100 to be managed in order to select the FL client 100 . That is, the unregistered FL client 100 cannot be used as a resource in an embodiment of the present invention unless a separate registration procedure is performed.
  • the FL server 200 includes one or more of computing requirements information, basic model information, and learning tool information for a plurality of FL clients 100 as the request information to the FL resource management device 300 . can transmit
  • the FL resource management apparatus 300 selects one or more FL clients 100 to be operated from among the plurality of FL clients 100 based on the request information (S120).
  • the FL resource management apparatus 300 is based on one or more of the computing resource information of the FL client 100, the related service operation information, and the local data collection information, one or more FLs of the plurality of FL clients 100 The client 100 may be selected.
  • the FL resource management apparatus 300 may first select the FL client 100 in which the related service is being operated from among the plurality of FL clients 100 based on the related service operation information.
  • the FL resource management apparatus 300 may finally select the available FL clients 100 based on the computing resource information among the first selected FL clients 100 .
  • the FL resource management apparatus 300 first selects the FL client 100 in which a program capable of performing the image classification service is installed. select Then, it is determined whether there are sufficient resources available from the selected FL clients 100 , and the FL client 100 satisfying the corresponding condition is selected again.
  • the above-described process may also be performed as a process of searching for a Pod in which a specific application is running from a tool such as Kubernetes.
  • the FL resource management apparatus 300 distributes the basic model and the learning tool to the selected FL client 100 (S130).
  • the selected FL client 100 updates the basic model based on the learning tool, and transmits the updated model to the FL server 200 as the update of the basic model is completed.
  • the FL server 200 updates the basic model stored in the FL server 200 into an integrated model as the plurality of FL clients 100 receive more than a preset number of update models.
  • the FL server 200 requests distribution of the integrated model to the FL resource management device 300 ( S140 ).
  • the FL server 200 collects the updated model and After updating to the integrated model, the distribution of the integrated model may be requested from the FL resource management apparatus 300 .
  • this process can be implemented by searching for a Pod in which a specific application is running from a tool such as kubernetes, or defining a separate CRD (Custom Resource Definition).
  • the FL server 200 repeats the above-described process again and transmits the request information for the operation of the FL client 100 to the FL resource management device 300 .
  • steps S110 to S140 may be further divided into additional steps or combined into fewer steps according to an embodiment of the present invention.
  • some steps may be omitted as necessary, and the order between steps may be changed.
  • the above-described contents in FIGS. 2 to 3 may be applied to the method of resource efficiency of the federated learning process of FIG. 4 .
  • Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Also, computer-readable media may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transport mechanism, and includes any information delivery media.

Abstract

The present invention relates to a method performed by a federated learning (FL) resource management apparatus. An embodiment of the present invention comprises the steps of: receiving, from an FL server, request information for operation of a plurality of FL clients; selecting, on the basis of the request information, one or more FL clients to be operated from among the plurality of FL clients; distributing a basic model and a learning tool to the selected FL clients; and, as the FL server generates an integrated model on the basis of an updated model, receiving, from the FL server, a request for the distribution of the integrated model.

Description

연합학습 자원 관리장치, 시스템 및 이의 자원 효율화 방법Federated learning resource management device, system and method for resource efficiency thereof
본 발명은 연합학습 자원 관리장치, 시스템 및 이의 자원 효율화 방법에 관한 것으로서, 보다 구체적으로는 컴퓨팅 자원을 고려하여 복수의 FL 클라이언트를 선별적으로 운용함으로써 자원을 효율적으로 관리할 수 있는 시스템 및 방법에 관한 것이다.The present invention relates to a federated learning resource management apparatus, system, and resource efficiency method thereof, and more particularly, to a system and method capable of efficiently managing resources by selectively operating a plurality of FL clients in consideration of computing resources. it's about
최근 클라우드 기술 및 인공지능과 기계학습(이하, AI/ML이라 한다) 기술이 발전함에 따라, 다양한 AI/ML 서비스들이 높은 정확도로 제공되고 있다.Recently, as cloud technology, artificial intelligence, and machine learning (hereinafter referred to as AI/ML) technology develop, various AI/ML services are being provided with high accuracy.
이러한 고도의 정확도를 유지하기 위해서는 학습을 위한 대용량의 데이터와 이를 처리할 수 있는 고성능의 컴퓨팅 자원이 필요하다. In order to maintain such a high degree of accuracy, a large amount of data for learning and high-performance computing resources capable of processing it are required.
이를 위하여 종래에는 고성능의 서버 또는 클라우드 등에 학습용 데이터를 모아두고 이를 통한 학습을 진행하였으나, 최근 개인정보 보호 등의 이슈가 제기되면서 대용량의 학습 데이터를 클라우드 상에 보관하는 것에 대한 문제가 제기되고 있다.To this end, in the prior art, learning data was collected in a high-performance server or cloud, etc. and learning was carried out. However, as issues such as personal information protection have recently been raised, the problem of storing large amounts of learning data in the cloud has been raised.
연합학습(Federated Learning, FL)은 이러한 문제를 해결하기 위하여 데이터를 한 곳에 모아두지 않고 데이터 생성원에만 보관하게 한 후, 데이터 생성원에서 학습을 진행하고 학습 결과만을 독립된 서버에서 취합하여 AI/ML 모델의 성능을 개선하는 방법으로 제시되었다.Federated Learning (FL) does not store data in one place to solve this problem, but stores it only in the data generator, then proceeds with learning in the data generator and collects only the learning results on an independent server to create AI/ML It was presented as a way to improve the performance of the model.
이러한 연합학습은 데이터가 한 곳에 모이지 않고 학습 자체가 데이터 생성원에서 진행되므로 개인정보 유출을 원천적으로 차단하는 효과가 있다.This federated learning has the effect of fundamentally blocking the leakage of personal information because the data is not gathered in one place and the learning itself proceeds from the data generator.
하지만, 연합학습의 구현은 FL 클라이언트가 FL 서버에 자신이 해당 기능을 수행하고자 함을 알리는 레지스터(register) 형태로 구현되어 있어 효율적인 자원의 관리가 어려운 문제점을 가지고 있다.However, the implementation of federated learning has a problem in that efficient resource management is difficult because the FL client is implemented in the form of a register that notifies the FL server that it wants to perform the corresponding function.
현재 FL 클라이언트는 FL 어플리케이션이 설치되면 자신의 능력치에 관계없이 FL 서버에 자신을 FL 클라이언트로 등록하는 구조를 가지고 있다. 만약, 메모리가 부족하거나 프로세서 성능이 낮은 경우와 같이, 자신의 능력치가 연합학습을 수행할 수 없을 경우, FL 클라이언트는 운용될 수 없는 어플리케이션을 저장하고 있어 스토리지의 낭비가 발생한다. The current FL client has a structure in which, when the FL application is installed, it registers itself as an FL client in the FL server regardless of its own capability. If, for example, when memory is insufficient or processor performance is low, if one's own capability cannot perform federated learning, the FL client stores applications that cannot be operated, resulting in storage wastage.
또한 FL 클라이언트는 시간 내 종료되지 않는 프로세스를 반복적으로 운용해야 하므로 CPU 및 메모리와 같은 컴퓨팅 자원의 낭비가 발생하게 된다.In addition, since the FL client has to repeatedly operate a process that does not terminate within time, computing resources such as CPU and memory are wasted.
본 발명의 실시예는 FL 클라이언트의 컴퓨팅 자원을 고려하여 복수의 FL 클라이언트를 선별적으로 운용함으로써 자원을 효율적으로 관리할 수 있는 연합학습 자원 관리장치, 시스템 및 이의 자원 효율화 방법을 제공한다.An embodiment of the present invention provides a federated learning resource management apparatus, system, and resource efficiency method capable of efficiently managing resources by selectively operating a plurality of FL clients in consideration of the computing resources of the FL clients.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.However, the technical task to be achieved by the present embodiment is not limited to the technical task as described above, and other technical tasks may exist.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제1측면에 따른 연합학습(Federated Learning, FL) 자원 관리장치에 의해 수행되는 방법은 FL 서버로부터 복수의 FL 클라이언트의 운용을 위한 요청 정보를 수신하는 단계; 상기 요청 정보에 기초하여 상기 복수의 FL 클라이언트 중 운용할 하나 이상의 FL 클라이언트를 선정하는 단계; 상기 선정된 FL 클라이언트로 기초모델 및 학습도구를 배포하는 단계; 및 상기 FL 서버가 갱신모델을 기반으로 통합모델을 생성함에 따라, 상기 FL 서버로부터 상기 통합모델의 배포 요청을 수신하는 단계를 포함한다.As a technical means for achieving the above-mentioned technical problem, the method performed by the federated learning (FL) resource management apparatus according to the first aspect of the present invention is request information for operation of a plurality of FL clients from the FL server receiving; selecting one or more FL clients to be operated from among the plurality of FL clients based on the request information; distributing a basic model and a learning tool to the selected FL client; and receiving, by the FL server, a distribution request of the unified model from the FL server as the unified model is generated based on the updated model.
본 발명의 일부 실시예에서, 상기 FL 서버로부터 복수의 FL 클라이언트의 운용을 위한 요청 정보를 수신하는 단계는, 상기 요청 정보로 상기 복수의 FL 클라이언트에 대한 컴퓨팅 요구사항 정보, 기초 모델 정보 및 학습 도구 정보 중 하나 이상을 포함하여 전달할 수 있다.In some embodiments of the present invention, the step of receiving request information for operation of a plurality of FL clients from the FL server includes computing requirements information, basic model information and learning tools for the plurality of FL clients as the request information. It may include and convey one or more of the information.
본 발명의 일부 실시예에서, 상기 복수의 FL 클라이언트 중 운용할 하나 이상의 FL 클라이언트를 선정하는 단계는, 상기 복수의 FL 클라이언트의 컴퓨팅 자원 정보, 연관 서비스 운용 정보 및 로컬 데이터 수집 여부 정보 중 하나 이상에 기초하여 하나 이상의 FL 클라이언트를 선정할 수 있다.In some embodiments of the present invention, the step of selecting one or more FL clients to be operated from among the plurality of FL clients includes at least one of computing resource information, related service operation information, and local data collection information of the plurality of FL clients. One or more FL clients may be selected based on this.
본 발명의 일부 실시예에서, 상기 복수의 FL 클라이언트 중 운용할 하나 이상의 FL 클라이언트를 선정하는 단계는, 상기 연관 서비스 운용 정보에 기초하여 상기 복수의 FL 클라이언트 중 연관 서비스가 운용되고 있는 FL 클라이언트를 1차 선정하는 단계를 포함할 수 있다.In some embodiments of the present invention, the step of selecting one or more FL clients to be operated from among the plurality of FL clients includes selecting one FL client among the plurality of FL clients for which a related service is being operated based on the related service operation information. It may include the step of selecting a car.
본 발명의 일부 실시예에서, 상기 복수의 FL 클라이언트 중 운용할 하나 이상의 FL 클라이언트를 선정하는 단계는, 상기 1차 선정된 FL 클라이언트 중 상기 컴퓨팅 자원 정보에 기초하여 가용한 FL 클라이언트를 최종 선정하는 단계를 포함할 수 있다.In some embodiments of the present invention, the selecting of one or more FL clients to be operated from among the plurality of FL clients includes the step of finally selecting an available FL client from among the first selected FL clients based on the computing resource information may include.
본 발명의 일부 실시예에는, 상기 선정된 FL 클라이언트만을 대상으로 연합학습을 위한 소프트웨어가 설치 및 실행될 수 있다.In some embodiments of the present invention, software for joint learning may be installed and executed for only the selected FL client.
본 발명의 일부 실시예에서, 상기 선정된 FL 클라이언트는 상기 학습도구를 기반으로 상기 기초모델을 갱신하고, 상기 기초모델의 갱신이 완료됨에 따라 상기 FL 서버로 상기 갱신모델을 전송할 수 있다.In some embodiments of the present invention, the selected FL client may update the basic model based on the learning tool, and transmit the updated model to the FL server as the basic model update is completed.
본 발명의 일부 실시예에서, 상기 FL 서버는 기 설정된 개수 이상의 상기 갱신모델을 복수의 FL 클라이언트로부터 수신함에 따라 FL 서버에 저장된 상기 기초모델을 통합모델로 갱신하고, 상기 FL 자원 관리장치로 상기 복수의 FL 클라이언트로의 상기 통합모델의 배포를 요청할 수 있다.In some embodiments of the present invention, the FL server updates the basic model stored in the FL server into an integrated model as it receives more than a preset number of the updated models from a plurality of FL clients, and uses the FL resource management device to use the plurality of updated models. can request distribution of the integrated model to FL clients of
본 발명의 일부 실시예에서는 상기 FL 클라이언트의 관리를 위하여 상기 복수의 FL 클라이언트를 등록하는 단계를 더 포함할 수 있다.In some embodiments of the present invention, the method may further include registering the plurality of FL clients for management of the FL clients.
또한, 본 발명의 제2측면에 따른 연합학습(Federated Learning, FL) 자원 관리를 위한 장치는 FL 서버 및 복수의 FL 클라이언트에 데이터를 송수신하는 통신모듈, 상기 복수의 FL 클라이언트의 자원 관리를 위한 프로그램이 저장된 메모리 및 상기 메모리에 저장된 프로그램을 실행시키는 프로세서를 포함하되, 상기 프로세서는 상기 프로그램을 실행시킴에 따라, 상기 통신모듈을 통해 FL 서버로부터 복수의 FL 클라이언트의 운용을 위한 요청 정보를 수신하면, 상기 요청정보에 기초하여 상기 복수의 FL 클라이언트 중 운용할 하나 이상의 FL 클라이언트를 선정하여 기초모델 정보 및 학습도구 정보를 배포한다.In addition, the apparatus for federated learning (FL) resource management according to the second aspect of the present invention is a communication module for transmitting and receiving data to a FL server and a plurality of FL clients, a program for resource management of the plurality of FL clients Comprising the stored memory and a processor for executing the program stored in the memory, when the processor executes the program and receives request information for operation of a plurality of FL clients from the FL server through the communication module, Based on the request information, one or more FL clients to be operated are selected from among the plurality of FL clients, and basic model information and learning tool information are distributed.
본 발명의 일부 실시예에서, 상기 프로세서는 상기 복수의 FL 클라이언트의 컴퓨팅 자원 정보, 연관 서비스 운용 정보 및 로컬 데이터 수집 여부 정보 중 하나 이상에 기초하여 하나 이상의 FL 클라이언트를 선정할 수 있다.In some embodiments of the present invention, the processor may select one or more FL clients based on at least one of computing resource information, related service operation information, and local data collection information of the plurality of FL clients.
또한, 본 발명의 제3측면에 따른 연합학습(Federated Learning, FL) 수행 및 관리를 위한 시스템은 선정된 적어도 하나가 운용되어 연합학습을 수행하여 기초모델을 갱신하는 복수의 FL 클라이언트, 상기 갱신된 갱신모델을 기 설정된 개수 이상 수신함에 따라 통합모델로 갱신하여 상기 복수의 FL 클라이언트로의 상기 통합모델 배포를 요청하는 FL 서버 및 상기 FL 서버로부터 복수의 FL 클라이언트의 운용을 위한 요청 정보를 수신하면, 상기 요청정보에 기초하여 상기 복수의 FL 클라이언트 중 운용할 하나 이상의 FL 클라이언트를 선정하여 기초모델 정보 및 학습도구 정보를 배포하며, 상기 FL 서버의 요청에 따라 통합모델을 상기 FL 클라이언트로 배포하는 FL 자원 관리장치를 포함한다.In addition, the system for performing and managing federated learning (FL) according to the third aspect of the present invention is a plurality of FL clients that update the basic model by operating at least one selected and performing federated learning, the updated Upon receiving the request information for the operation of the plurality of FL clients from the FL server and the FL server that update the unified model by receiving more than a preset number of update models and request distribution of the unified model to the plurality of FL clients, FL resource for selecting one or more FL clients to be operated from among the plurality of FL clients based on the request information, distributing basic model information and learning tool information, and distributing an integrated model to the FL clients according to the request of the FL server Includes management.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.In addition to this, another method for implementing the present invention, another system, and a computer-readable recording medium for recording a computer program for executing the method may be further provided.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 다수의 FL 클라이언트에 일방적으로 연합학습을 위한 소프트웨어가 설치 및 운용되는 것이 아닌, FL 클라이언트의 컴퓨팅 자원을 고려하여 선정된 FL 클라이언트만을 운용되도록 함으로써 자원의 효율적 운용을 지원할 수 있다.According to any one of the above-described problem solving means of the present invention, the software for joint learning is not unilaterally installed and operated in a plurality of FL clients, but only the FL clients selected in consideration of the computing resources of the FL clients are operated. It can support efficient management of resources.
또한, 선정된 FL 클라이언트에만 소프트웨어가 설치 및 운용되는바, FL 클라이언트 자원 활용의 효율성을 증대시킬 수 있으며, 타 단말의 유휴 자원을 증대시킬 수 있다.In addition, since the software is installed and operated only on the selected FL client, the efficiency of FL client resource utilization can be increased, and the idle resources of other terminals can be increased.
이와 더불어, 연합학습 운용을 위한 FL 클라이언트의 모델 갱신 성공확률을 높일 수 있어 연합학습을 안정적으로 동작시킬 수 있으며, 이를 기반으로 갱신된 모델을 타 FL 클라이언트로 재배포되도록 하여 갱신된 모델의 기능을 안정적으로 제공할 수 있다. In addition, it is possible to increase the success rate of model update of the FL client for federated learning operation, so that federated learning can be operated stably. can be provided as
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.
도 1은 종래 기술에 따른 연합학습 프로토콜을 설명하기 위한 도면이다.1 is a diagram for explaining a federated learning protocol according to the prior art.
도 2는 본 발명의 일 실시예에 따른 연합학습 수행 및 관리 시스템을 설명하기 위한 도면이다. 2 is a view for explaining a system for performing and managing federated learning according to an embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따른 연합학습 수행 및 관리 시스템의 블록도이다.3 is a block diagram of a system for performing and managing federated learning according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement them. However, the present invention may be embodied in many different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.In the entire specification, when a part "includes" a certain element, it means that other elements may be further included, rather than excluding other elements, unless otherwise stated.
도 1은 종래 기술에 따른 연합학습 프로토콜을 설명하기 위한 도면이다.1 is a diagram for explaining a federated learning protocol according to the prior art.
연합학습(Federated Learning, FL)을 수행하기 위한 환경은, 로컬 데이터를 수집하고 로컬 모델의 갱신을 수행하는 FL 클라이언트와, 로컬 갱신 모델을 취합하여 통합 모델의 갱신 및 배포를 수행하는 FL 서버로 구성된다.The environment for performing Federated Learning (FL) consists of a FL client that collects local data and updates the local model, and an FL server that collects the local update model and updates and distributes the unified model. do.
먼저, FL 클라이언트는 FL 서버에 자신이 해당되는 FL 클라이언트임을 등록한다.First, the FL client registers itself as a corresponding FL client with the FL server.
이후, FL 서버는 통합 모델과 로컬 학습 기법을 등록된 FL 클라이언트로 전달한다.Then, the FL server delivers the integrated model and local learning technique to the registered FL client.
FL 클라이언트는 상황 조건이 만족하면, 로컬 데이터에 대하여 로컬 학습 기법을 적용하여 로컬 모델의 갱신을 시도한다.If the situation condition is satisfied, the FL client attempts to update the local model by applying the local learning technique to the local data.
이후, FL 클라이언트는 해당 모델의 갱신이 완료되면 갱신된 모델을 FL 서버에 전달하고, FL 서버는 충분한 수의 갱신 모델이 확보되면 이를 기반으로 통합 모델로 갱신한다.Thereafter, when the update of the corresponding model is completed, the FL client delivers the updated model to the FL server, and when a sufficient number of updated models is secured, the FL server updates the integrated model based on this.
이후, 통합 모델이 갱신됨에 따라 위 과정이 반복 수행된다.Thereafter, as the integrated model is updated, the above process is repeated.
이와 같은 종래 기술은 FL 클라이언트의 컴퓨팅 자원에 대하여 고려하지 않고, FL 클라이언트가 자의적으로 등록을 진행한다는 문제가 있다. The prior art has a problem in that the FL client arbitrarily registers without considering the computing resource of the FL client.
즉, 종래기술은 FL 클라이언트의 메모리나 스토리지 자원이 부족하여 정상적인 FL 클라이언트로의 역할 수행을 할 수 없는 등의 자원 관리에 대한 고려가 전혀 되고 있지 않다. That is, in the prior art, there is no consideration for resource management, such as the FL client cannot function as a normal FL client due to insufficient memory or storage resources.
이는 FL 클라이언트의 자원 활용도를 낮추는 결과를 초래하게 되고, 또한 FL 클라이언트로부터의 갱신 성공률을 낮추는 요인으로 동작하여, 전체 통합 모델의 갱신 성능에도 문제를 야기하게 된다.This results in lowering the resource utilization of the FL client, and also acts as a factor for lowering the update success rate from the FL client, causing a problem in the update performance of the entire integrated model.
이와 달리 본 발명의 일 실시예는, 전술한 문제를 해결하기 위하여 FL 자원 관리장치(300)를 추가적으로 도입하는 것을 특징으로 한다. In contrast, an embodiment of the present invention is characterized in that the FL resource management apparatus 300 is additionally introduced in order to solve the above-described problem.
본 발명의 일 실시예에서 FL 자원 관리장치(300)는 일종의 자원 관리 도구로서, 등록되어 있는 다양한 자원들 중 FL 클라이언트(100)의 역할을 수행할 수 있는 자원, 즉 실제 해당 연합학습 서비스가 운용되고 있으며 충분한 가용 자원을 가지고 있는 경우만을 FL 클라이언트(100)로 선정함으로써, 자원의 효율적 운용 및 FL 프로세스의 효율성을 제고할 수 있다.In an embodiment of the present invention, the FL resource management device 300 is a kind of resource management tool, and among various registered resources, a resource capable of performing the role of the FL client 100 , that is, the actual corresponding federated learning service is operated. By selecting the FL client 100 only when it is being used and having sufficient available resources, efficient resource management and efficiency of the FL process can be improved.
이하에서는 도 2 내지 도 3을 참조하여 본 발명의 일 실시예에 따른 연합학습 수행 및 관리 시스템(1)에 대해 설명하도록 한다.Hereinafter, the federated learning performance and management system 1 according to an embodiment of the present invention will be described with reference to FIGS. 2 to 3 .
도 2는 본 발명의 일 실시예에 따른 연합학습 수행 및 관리 시스템(1)을 설명하기 위한 도면이다. 도 3은 본 발명의 일 실시예에 따른 연합학습 수행 및 관리 시스템(1)의 블록도이다.2 is a view for explaining the federated learning performance and management system 1 according to an embodiment of the present invention. 3 is a block diagram of a system 1 for performing and managing federated learning according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 일 실시예에 따른 연합학습 수행 및 관리 시스템(1)은 복수의 FL 클라이언트(100), FL 서버(200) 및 FL 자원 관리장치(300)를 포함한다.Referring to FIG. 2 , the federated learning performance and management system 1 according to an embodiment of the present invention includes a plurality of FL clients 100 , FL servers 200 , and FL resource management apparatus 300 .
FL 클라이언트(100)는 FL 자원 관리장치(300)에 의해 선정된 적어도 하나가 운용되며, 선정된 FL 클라이언트(100)는 연합학습을 수행하여 기초모델을 갱신한다. 즉, 본 발명의 일 실시예는 등록된 모든 FL 클라이언트(100)가 운용되는 것이 아니라, FL 클라이언트(100)의 컴퓨팅 자원 상태에 기반하여, 운용 가능한 상태의 FL 클라이언트(100)를 선별적으로 선택 및 운용하는 것을 특징으로 한다.At least one FL client 100 selected by the FL resource management device 300 is operated, and the selected FL client 100 performs federated learning to update the basic model. That is, in one embodiment of the present invention, not all registered FL clients 100 are operated, but based on the computing resource status of the FL clients 100, the FL clients 100 in an operable state are selectively selected. and operating.
FL 서버(200)는 FL 클라이언트(100)로부터 갱신된 갱신모델을 기 설정된 개수 이상 수신함에 따라, 갱신모델을 취합하여 통합모델로 갱신한 후 복수의 FL 클라이언트(100)로의 통합모델 배포를 FL 자원 관리장치(300)로 요청한다.As the FL server 200 receives more than a preset number of updated updated models from the FL client 100, the updated models are collected and updated into the integrated model, and then the integrated model distribution to a plurality of FL clients 100 is distributed to the FL resources. A request is made to the management device 300 .
FL 자원 관리장치(300)는 FL 서버(200)로부터 복수의 FL 클라이언트(100)의 운용을 위한 요청 정보를 수신하면, 요청정보에 기초하여 복수의 FL 클라이언트(100) 중 운용할 하나 이상의 FL 클라이언트(100)를 선정하여 기초모델 정보 및 학습도구 정보를 배포한다.When the FL resource management apparatus 300 receives request information for operation of the plurality of FL clients 100 from the FL server 200 , one or more FL clients to be operated among the plurality of FL clients 100 based on the request information (100) is selected to distribute basic model information and learning tool information.
이때, FL 자원 관리장치(300)는 복수의 FL 클라이언트(100)의 컴퓨팅 자원 정보, 연관 서비스 운용 정보 및 로컬 데이터 수집 여부 정보 중 하나 이상에 기초하여 하나 이상의 FL 클라이언트(100)를 선정할 수 있다.At this time, the FL resource management apparatus 300 may select one or more FL clients 100 based on one or more of computing resource information, related service operation information, and local data collection information of the plurality of FL clients 100 . .
한편, 본 발명의 일 실시예에서 FL 클라이언트(100), FL 서버(300) 및 FL 자원 관리장치(300)는 도 3과 같이 통신모듈(410), 메모리(420) 및 상기 메모리(420)에 저장된 프로그램을 실행시키는 프로세서(430)를 포함하도록 구성될 수 있다.On the other hand, in an embodiment of the present invention, the FL client 100 , the FL server 300 and the FL resource management apparatus 300 are connected to the communication module 410 , the memory 420 and the memory 420 as shown in FIG. 3 . It may be configured to include a processor 430 that executes a stored program.
통신 모듈(410)은 무선 통신 모듈로 구성됨이 바람직하나 이는 유선 통신 모듈을 배제하는 것은 아니다. 무선 통신 모듈은 WLAN(wireless LAN), Bluetooth, HDR WPAN, UWB, ZigBee, Impulse Radio, 60GHz WPAN, Binary-CDMA, 무선 USB 기술 및 무선 HDMI 기술 등으로 구현될 수 있다. 또한, 유선 통신 모듈은 전력선 통신 장치, 전화선 통신 장치, 케이블 홈(MoCA), 이더넷(Ethernet), IEEE1294, 통합 유선 홈 네트워크 및 RS-485 제어 장치로 구현될 수 있다. The communication module 410 is preferably configured as a wireless communication module, but this does not exclude a wired communication module. The wireless communication module may be implemented by wireless LAN (WLAN), Bluetooth, HDR WPAN, UWB, ZigBee, Impulse Radio, 60GHz WPAN, Binary-CDMA, wireless USB technology, wireless HDMI technology, and the like. In addition, the wired communication module may be implemented as a power line communication device, a telephone line communication device, a cable home (MoCA), Ethernet, IEEE1294, an integrated wired home network, and an RS-485 control device.
메모리(420)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 휘발성 저장장치를 통칭하는 것이다. 예를 들어, 메모리(420)는 콤팩트 플래시(compact flash; CF) 카드, SD(secure digital) 카드, 메모리 스틱(memory stick), 솔리드 스테이트 드라이브(solid-state drive; SSD) 및 마이크로(micro) SD 카드 등과 같은 낸드 플래시 메모리(NAND flash memory), 하드 디스크 드라이브(hard disk drive; HDD) 등과 같은 마그네틱 컴퓨터 기억 장치 및 CD-ROM, DVD-ROM 등과 같은 광학 디스크 드라이브(optical disc drive) 등을 포함할 수 있다.The memory 420 collectively refers to a non-volatile storage device and a volatile storage device that continuously maintain stored information even when power is not supplied. For example, the memory 420 may include a compact flash (CF) card, a secure digital (SD) card, a memory stick, a solid-state drive (SSD), and a micro SD card. NAND flash memory such as cards, magnetic computer storage devices such as hard disk drives (HDDs), etc., and optical disc drives such as CD-ROMs and DVD-ROMs. can
참고로, 본 발명의 실시예서 설명한 구성 요소들은 소프트웨어 또는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)와 같은 하드웨어 형태로 구현될 수 있으며, 소정의 역할들을 수행할 수 있다.For reference, the components described in the embodiment of the present invention may be implemented in the form of software or hardware such as a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC), and may perform predetermined roles.
그렇지만 '구성 요소들'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 각 구성 요소는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.However, 'components' are not limited to software or hardware, and each component may be configured to reside in an addressable storage medium or to reproduce one or more processors.
따라서, 일 예로서 구성 요소는 소프트웨어 구성 요소들, 객체지향 소프트웨어 구성 요소들, 클래스 구성 요소들 및 태스크 구성 요소들과 같은 구성 요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다.Thus, as an example, a component includes components such as software components, object-oriented software components, class components and task components, and processes, functions, properties, procedures, sub It includes routines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
구성 요소들과 해당 구성 요소들 안에서 제공되는 기능은 더 작은 수의 구성 요소들로 결합되거나 추가적인 구성 요소들로 더 분리될 수 있다.Components and functions provided within the components may be combined into a smaller number of components or further divided into additional components.
이하에서는 도 4를 참조하여 FL 자원 관리장치(300)에 의해 수행되는 연합학습 프로세스 자원 효율화 방법에 대하여 설명하도록 한다.Hereinafter, with reference to FIG. 4 , a method for improving the resource efficiency of the federated learning process performed by the FL resource management apparatus 300 will be described.
도 4는 본 발명의 일 실시예에 따른 연합학습 프로세스방법의 순서도이다.4 is a flowchart of a federated learning process method according to an embodiment of the present invention.
먼저, FL 자원 관리장치(300)는 FL 서버(200)로부터 FL 클라이언트(100)의 운용을 위한 요청 정보를 수신한다(S110).First, the FL resource management apparatus 300 receives request information for the operation of the FL client 100 from the FL server 200 (S110).
이때, 본 발명의 일 실시예는 FL 클라이언트(100)의 선정을 위하여 FL 자원 관리장치(300)는 관리하고자 하는 복수의 FL 클라이언트(100)의 자원을 등록하는 과정을 수행할 수 있다. 즉, 등록되지 않은 FL 클라이언트(100)에 대해서는 별도의 등록 절차가 수행되지 않는 한 본 발명의 일 실시예에서 자원으로 활용이 불가하다.In this case, according to an embodiment of the present invention, the FL resource management apparatus 300 may perform a process of registering resources of a plurality of FL clients 100 to be managed in order to select the FL client 100 . That is, the unregistered FL client 100 cannot be used as a resource in an embodiment of the present invention unless a separate registration procedure is performed.
일 실시예로, FL 서버(200)는 상기 요청 정보로 복수의 FL 클라이언트(100)에 대한 컴퓨팅 요구사항 정보, 기초 모델 정보 및 학습 도구 정보 중 하나 이상을 포함하여 FL 자원 관리장치(300)로 전달할 수 있다.In one embodiment, the FL server 200 includes one or more of computing requirements information, basic model information, and learning tool information for a plurality of FL clients 100 as the request information to the FL resource management device 300 . can transmit
다음으로, FL 자원 관리장치(300)는 상기 요청 정보에 기초하여 복수의 FL 클라이언트(100) 중 운용할 하나 이상의 FL 클라이언트(100)를 선정한다(S120).Next, the FL resource management apparatus 300 selects one or more FL clients 100 to be operated from among the plurality of FL clients 100 based on the request information (S120).
일 실시예로, FL 자원 관리장치(300)는 FL 클라이언트(100)의 컴퓨팅 자원 정보, 연관서비스 운용 정보 및 로컬 데이터 수집 여부 정보 중 하나 이상에 기초하여 복수의 FL 클라이언트(100) 중 하나 이상의 FL 클라이언트(100)를 선정할 수 있다.In one embodiment, the FL resource management apparatus 300 is based on one or more of the computing resource information of the FL client 100, the related service operation information, and the local data collection information, one or more FLs of the plurality of FL clients 100 The client 100 may be selected.
일 예로, FL 자원 관리장치(300)는 연관 서비스 운용 정보에 기초하여 복수의 FL 클라이언트(100) 중 연관 서비스가 운용되고 있는 FL 클라이언트(100)를 1차 선정할 수 있다.For example, the FL resource management apparatus 300 may first select the FL client 100 in which the related service is being operated from among the plurality of FL clients 100 based on the related service operation information.
그 다음 FL 자원 관리장치(300)는 1차 선정된 FL 클라이언트(100) 중 컴퓨팅 자원 정보에 기초하여 가용한 FL 클라이언트(100)를 최종 선정할 수 있다.Then, the FL resource management apparatus 300 may finally select the available FL clients 100 based on the computing resource information among the first selected FL clients 100 .
예를 들어, 이미지 분류(Image Classification) 서비스를 연합학습을 통해 개선하고자 할 경우, FL 자원 관리장치(300)는 이미 이미지 분류 서비스를 수행할 수 있는 프로그램이 설치되어 있는 FL 클라이언트(100)를 먼저 선정한다. 그리고 선정된 FL 클라이언트(100)들로부터 충분한 가용 자원이 있는지 여부를 판단하여, 해당 조건을 만족하는 FL 클라이언트(100)를 다시 선정하게 된다. 이때, 전술한 과정은 Kubernetes 등의 도구로부터 특정 어플리케이션이 실행되고 있는 Pod를 검색하는 과정으로도 수행될 수 있다.For example, when it is desired to improve the image classification service through federated learning, the FL resource management apparatus 300 first selects the FL client 100 in which a program capable of performing the image classification service is installed. select Then, it is determined whether there are sufficient resources available from the selected FL clients 100 , and the FL client 100 satisfying the corresponding condition is selected again. In this case, the above-described process may also be performed as a process of searching for a Pod in which a specific application is running from a tool such as Kubernetes.
다음으로, FL 자원 관리장치(300)는 선정된 FL 클라이언트(100)로 기초모델 및 학습도구를 배포한다(S130).Next, the FL resource management apparatus 300 distributes the basic model and the learning tool to the selected FL client 100 (S130).
이와 같이 선정된 FL 클라이언트(100)만이 연합학습을 위한 소프트웨어가 설치 및 실행된다.Only the selected FL client 100 is installed and executed software for joint learning.
이후, 선정된 FL 클라이언트(100)는 학습을 위한 환경이 충족될 경우, 학습도구를 기반으로 기초모델을 갱신하고, 기초모델의 갱신이 완료됨에 따라 FL 서버(200)로 갱신모델을 전송한다.Thereafter, when the environment for learning is satisfied, the selected FL client 100 updates the basic model based on the learning tool, and transmits the updated model to the FL server 200 as the update of the basic model is completed.
FL 서버(200)는 복수의 FL 클라이언트(100)로부터 기 설정된 개수 이상의 갱신모델을 수신함에 따라, FL 서버(200)에 저장된 기초모델을 통합모델로 갱신한다.The FL server 200 updates the basic model stored in the FL server 200 into an integrated model as the plurality of FL clients 100 receive more than a preset number of update models.
다음으로, FL 서버(200)가 갱신모델을 기반으로 통합모델을 생성함에 따라, FL 서버(200)는 FL 자원 관리장치(300)로 통합모델의 배포를 요청한다 (S140).Next, as the FL server 200 generates an integrated model based on the updated model, the FL server 200 requests distribution of the integrated model to the FL resource management device 300 ( S140 ).
예를 들어, 이미지 분류 서비스를 운용하고 있는 FL 클라이언트(100)가 있고, 해당 FL 클라이언트(100)에서 사용하는 모델이 연합학습을 통해 갱신된 경우, FL 서버(200)는 갱신된 모델을 수집하여 통합모델로 갱신한 후, 통합모델의 배포를 FL 자원 관리장치(300)로 요청할 수 있다. 이때, 이 과정은 kubernetes 등의 도구로부터 특정 어플리케이션이실행되고 있는 Pod를 검색하거나, 또는 별도의 CRD(Custom Resource Definition)를 정의함으로써 구현될 수 있다.For example, if there is a FL client 100 operating an image classification service, and the model used in the FL client 100 is updated through federated learning, the FL server 200 collects the updated model and After updating to the integrated model, the distribution of the integrated model may be requested from the FL resource management apparatus 300 . At this time, this process can be implemented by searching for a Pod in which a specific application is running from a tool such as kubernetes, or defining a separate CRD (Custom Resource Definition).
FL 서버(200)는 통합모델이 FL 클라이언트(100)로의 배포가 완료되면 다시 전술한 과정을 반복하여 FL 클라이언트(100)의 운용을 위한 요청 정보를 FL 자원 관리장치(300)로 전달하게 된다.When the distribution of the integrated model to the FL client 100 is completed, the FL server 200 repeats the above-described process again and transmits the request information for the operation of the FL client 100 to the FL resource management device 300 .
한편, 상술한 설명에서, 단계 S110 내지 S140은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. 아울러, 기타 생략된 내용이라 하더라도 전술한 도 2 내지 도 3에서의 내용은 도 4의 연합학습 프로세스 자원 효율화 방법에도 적용될 수 있다.Meanwhile, in the above description, steps S110 to S140 may be further divided into additional steps or combined into fewer steps according to an embodiment of the present invention. In addition, some steps may be omitted as necessary, and the order between steps may be changed. In addition, even if other omitted contents, the above-described contents in FIGS. 2 to 3 may be applied to the method of resource efficiency of the federated learning process of FIG. 4 .
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 매체에 저장된 컴퓨터 프로그램 또는 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. An embodiment of the present invention may also be implemented in the form of a computer program stored in a medium executed by a computer or a recording medium including instructions executable by the computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Also, computer-readable media may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transport mechanism, and includes any information delivery media.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.Although the methods and systems of the present invention have been described with reference to specific embodiments, some or all of their components or operations may be implemented using a computer system having a general purpose hardware architecture.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.

Claims (12)

  1. 인공지능 및 기계학습(AI/ML) 서비스 프로세스 유닛, 로컬 AI/ML 모델 저장소, 연합학습(Federated Learning, FL) 프로세스 유닛을 포함하는 FL 클라이언트에서의 AI/ML 모델 운용 방법에 있어서,In an AI/ML model operation method in an FL client including an artificial intelligence and machine learning (AI/ML) service process unit, a local AI/ML model repository, and a federated learning (FL) process unit,
    상기 AI/ML 서비스 프로세스 유닛이 AI/ML 모델 저장소로부터 AI/ML 모델의 다운로드를 요청하는 단계;requesting, by the AI/ML service processing unit, to download the AI/ML model from the AI/ML model repository;
    상기 다운로드 요청에 대응하여 AI/ML 모델이 다운로드됨에 따라 상기 로컬 AI/ML 모델 저장소에 저장하는 단계;storing the AI/ML model in the local AI/ML model storage as the AI/ML model is downloaded in response to the download request;
    상기 AI/ML 서비스 프로세스 유닛이 상기 로컬 AI/ML 모델 저장소로부터 상기 AI/ML 모델을 독출 및 저장하여 서비스를 제공하는 단계;providing, by the AI/ML service processing unit, reading and storing the AI/ML model from the local AI/ML model storage and providing a service;
    상기 FL 프로세스 유닛이 연합학습 수행 조건 만족 여부를 판단하는 단계;determining, by the FL processing unit, whether a federated learning performance condition is satisfied;
    상기 FL 수행 조건을 만족함에 따라 상기 로컬 AI/ML 모델 저장소로부터 상기 AI/ML 모델을 독출 및 저장하여 연합학습을 수행하는 단계; 및performing federated learning by reading and storing the AI/ML model from the local AI/ML model storage as the FL performance condition is satisfied; and
    상기 연합학습 수행이 완료됨에 따라 갱신된 AI/ML 모델을 FL 서버로 제공하는 단계를 포함하는 AI/ML 모델 운용 방법.AI/ML model operating method comprising the step of providing the updated AI/ML model to the FL server as the federated learning is completed.
  2. 제1항에 있어서,According to claim 1,
    상기 로컬 AI/ML 모델 저장소는 상기 FL 클라이언트 내의 AI/ML 서비스 프로세스 유닛과 FL 프로세스 유닛 간에 공유 가능한 볼륨에 저장되는 것인 AI/ML 모델 운용 방법.wherein the local AI/ML model storage is stored in a shareable volume between the AI/ML service processing unit in the FL client and the FL processing unit.
  3. 제2항에 있어서,3. The method of claim 2,
    상기 AI/ML 서비스 프로세스 유닛 및 FL 프로세스 유닛이 도커 컨테이너로 구성된 경우 상기 로컬 AI/ML 모델 저장소는 호스트의 공유 볼륨으로 구성되는 것인 AI/ML 모델 운용 방법.When the AI/ML service processing unit and the FL processing unit are configured as a Docker container, the local AI/ML model storage is configured as a shared volume of a host.
  4. 제1항에 있어서,According to claim 1,
    상기 FL 프로세스 유닛이 연합학습 수행 조건 만족 여부를 판단하는 단계는,The step of determining whether the FL processing unit satisfies the federated learning performance condition includes:
    상기 FL 클라이언트의 전원 공급 여부, 기 설정된 시간동안 휴지 상태인지 여부 및 상기 AI/ML 모델의 갱신을 위한 수집 데이터의 충족 여부 중 하나 이상에 기초하여 판단하는 것인 AI/ML 모델 운용 방법.The AI/ML model operating method is determined based on at least one of whether the FL client is powered on, whether it is idle for a preset time, and whether collection data for updating the AI/ML model is satisfied.
  5. 제1항에 있어서,According to claim 1,
    상기 FL 서버는 적어도 하나의 FL 클라이언트로부터 갱신된 AI/ML 모델을 수집하고, 갱신 조건 충족시 상기 수집된 AI/ML 모델을 기반으로 통합 모델로 갱신하는 것인 AI/ML 모델 운용 방법.The FL server collects the updated AI/ML model from at least one FL client, and when the update condition is satisfied, the AI/ML model operating method is updated to an integrated model based on the collected AI/ML model.
  6. 제5항에 있어서,6. The method of claim 5,
    상기 FL 서버는 상기 통합 모델의 갱신이 완료됨에 따라 상기 갱신된 통합 모델을 상기 AI/ML 모델 저장소에 등록하는 것인 AI/ML 모델 운용 방법.The FL server is an AI/ML model operating method that registers the updated integrated model in the AI/ML model storage as the update of the integrated model is completed.
  7. 제5항에 있어서,6. The method of claim 5,
    상기 AI/ML 서비스 프로세스 유닛이 기 설정된 주기마다 상기 AI/ML 모델 저장소의 통합 모델 갱신 여부를 확인하는 단계를 더 포함하되,The method further comprising the step of confirming, by the AI/ML service processing unit, whether to update the integrated model of the AI/ML model storage at every preset period,
    상기 AI/ML 서비스 프로세스 유닛이 AI/ML 모델 저장소로부터 AI/ML 모델의 다운로드를 요청하는 단계는,The step of the AI/ML service processing unit requesting the download of the AI/ML model from the AI/ML model storage comprises:
    상기 통합 모델이 갱신된 것으로 확인된 경우, 상기 AI/ML 모델 저장소로부터 상기 통합 모델의 다운로드를 요청하는 것인 AI/ML 모델 운용 방법.When it is confirmed that the integrated model has been updated, the AI/ML model operating method of requesting the download of the integrated model from the AI/ML model repository.
  8. 제7항에 있어서,8. The method of claim 7,
    상기 AI/ML 서비스 프로세스 유닛이 기 설정된 주기마다 상기 AI/ML 모델 저장소의 통합 모델 갱신 여부를 확인하는 단계는,The step of the AI/ML service processing unit confirming whether to update the integrated model of the AI/ML model storage every preset period comprises:
    상기 통합 모델의 버전 정보 및 상기 FL 프로세스 유닛에 의해 갱신된 AI/ML 모델의 버전 정보 중 하나 이상에 기초하여 상기 갱신 여부를 확인하는 것인 AI/ML 모델 운용 방법.The AI/ML model operating method of confirming whether the update is made based on at least one of the version information of the integrated model and the version information of the AI/ML model updated by the FL processing unit.
  9. 인공지능 및 기계학습(AI/ML) 모델 운용 시스템에 있어서,In the artificial intelligence and machine learning (AI/ML) model operating system,
    AI/ML 모델을 제공받아 AI/ML 서비스를 제공하는 AI/ML 서비스 프로세스 유닛, 상기 AI/ML 모델을 저장 및 제공하는 로컬 AI/ML 모델 저장소 및 상기 로컬 AI/ML 모델 저장소로부터 상기 AI/ML 모델을 독출 및 저장하여 연합학습(Federated Learning, FL)을 수행하여 상기 AI/ML 모델을 갱신하는 FL 프로세스 유닛을 포함하는 적어도 하나의 FL 클라이언트와,An AI/ML service processing unit that receives an AI/ML model and provides an AI/ML service, a local AI/ML model repository that stores and provides the AI/ML model, and the AI/ML from the local AI/ML model repository At least one FL client including a FL processing unit that reads and stores the model to perform Federated Learning (FL) to update the AI/ML model;
    상기 AI/ML 서비스 프로세스 유닛의 요청에 따라 상기 AI/ML 모델을 상기 로컬 AI/ML 모델 저장소로 제공하는 AI/ML 모델 저장소와,an AI/ML model storage that provides the AI/ML model to the local AI/ML model storage according to the request of the AI/ML service processing unit;
    상기 FL 클라이언트로부터 갱신된 AI/ML 모델을 수집하고, 갱신 조건이 충족됨에 따라 상기 수집된 AI/ML 모델을 통합 모델로 갱신하여 상기 AI/ML 모델 저장소에 등록하는 FL 서버를 포함하는 AI/ML 모델 운용 시스템.AI/ML comprising a FL server that collects the updated AI/ML model from the FL client, updates the collected AI/ML model as an integrated model as an update condition is satisfied, and registers it in the AI/ML model repository model operating system.
  10. 제9항에 있어서,10. The method of claim 9,
    상기 로컬 AI/ML 모델 저장소는 상기 FL 클라이언트 내의 AI/ML 서비스 프로세스 유닛과 FL 프로세스 유닛 간에 공유 가능한 볼륨에 저장되는 것인 AI/ML 모델 운용 시스템.and the local AI/ML model storage is stored in a shareable volume between the AI/ML service processing unit and the FL processing unit in the FL client.
  11. 제9항에 있어서,10. The method of claim 9,
    상기 AI/ML 서비스 프로세스 유닛은 기 설정된 주기마다 상기 AI/ML 모델 저장소의 통합 모델 갱신 여부를 확인하고, 상기 확인 결과 상기 통합 모델이 갱신된 경우 상기 통합 모델에 대한 다운로드를 요청하는 것인 AI/ML 모델 운용 시스템.The AI/ML service processing unit checks whether the integrated model of the AI/ML model storage is updated every preset period, and requests a download for the integrated model when the integrated model is updated as a result of the check. ML model operating system.
  12. 인공지능 및 기계학습(AI/ML) 모델 운용을 위한 연합학습(Federated Learning, FL) 클라이언트에 있어서,In a Federated Learning (FL) client for artificial intelligence and machine learning (AI/ML) model operation,
    AI/ML 모델 저장소로부터 제공된 AI/ML 모델에 기초하여 AI/ML 서비스를 제공하는 AI/ML 서비스 프로세스 유닛,an AI/ML service processing unit that provides AI/ML services based on AI/ML models provided from the AI/ML model repository;
    상기 AI/ML 서비스 프로세스 유닛으로부터 요청된 AI/ML 모델을 상기 AI/ML 모델 저장소로부터 제공받아 저장 및 상기 AI/ML 서비스 프로세스 유닛으로 제공하는 로컬 AI/ML 모델 저장소 및A local AI/ML model storage that receives and stores the AI/ML model requested from the AI/ML service processing unit from the AI/ML model storage and provides it to the AI/ML service processing unit;
    연합학습 수행 조건을 만족하는지 여부에 기초하여, 상기 로컬 AI/ML 모델 저장소로부터 상기 AI/ML 모델을 독출 및 저장하여 연합학습을 수행하며, 갱신된 AI/ML 모델을 FL 서버로 제공하는 FL 프로세스 유닛을 포함하는 FL 클라이언트.FL process for performing federated learning by reading and storing the AI/ML model from the local AI/ML model storage based on whether the federated learning performance condition is satisfied, and providing the updated AI/ML model to the FL server FL clients with units.
PCT/KR2020/017156 2020-03-31 2020-11-27 Federated learning resource management apparatus and system, and resource efficiency method therefor WO2021201370A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0039363 2020-03-31
KR1020200039363A KR102567565B1 (en) 2020-03-31 2020-03-31 Apparatus and system for managing federated learning resource, and resource efficiency method thereof

Publications (1)

Publication Number Publication Date
WO2021201370A1 true WO2021201370A1 (en) 2021-10-07

Family

ID=77929609

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/017156 WO2021201370A1 (en) 2020-03-31 2020-11-27 Federated learning resource management apparatus and system, and resource efficiency method therefor

Country Status (2)

Country Link
KR (1) KR102567565B1 (en)
WO (1) WO2021201370A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230105472A (en) 2022-01-04 2023-07-11 숭실대학교산학협력단 Federated learning system using Local Groups and method of controlling the same
KR20230126908A (en) 2022-02-24 2023-08-31 명지대학교 산학협력단 Efficient distributed clustering method and system for large-scale federated learning
KR102573880B1 (en) 2022-07-21 2023-09-06 고려대학교 산학협력단 Federated learning system and federated learning method based on multi-width artificial neural network
KR20240017623A (en) 2022-08-01 2024-02-08 이화여자대학교 산학협력단 Decentralized federated learning system and federated learning method
KR102523699B1 (en) * 2022-12-16 2023-04-21 (주)임픽스 Federated learning system for manufacturing environment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190096872A (en) * 2019-07-31 2019-08-20 엘지전자 주식회사 Method and apparatus for recognizing handwritten characters using federated learning
CN110598870A (en) * 2019-09-02 2019-12-20 深圳前海微众银行股份有限公司 Method and device for federated learning
KR20200010480A (en) * 2017-08-11 2020-01-30 구글 엘엘씨 On-Device Machine Learning Platform

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200010480A (en) * 2017-08-11 2020-01-30 구글 엘엘씨 On-Device Machine Learning Platform
KR20190096872A (en) * 2019-07-31 2019-08-20 엘지전자 주식회사 Method and apparatus for recognizing handwritten characters using federated learning
CN110598870A (en) * 2019-09-02 2019-12-20 深圳前海微众银行股份有限公司 Method and device for federated learning

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CALDAS SEBASTIAN, KONEČNY JAKUB, MCMAHAN H. BRENDAN, TALWALKAR AMEET: "Expanding the Reach of Federated Learning by Reducing Client Resource Requirements", 8 January 2019 (2019-01-08), XP055776744, Retrieved from the Internet <URL:https://arxiv.org/pdf/1812.07210.pdf> *
WANG SHIQIANG; TUOR TIFFANY; SALONIDIS THEODOROS; LEUNG KIN K.; MAKAYA CHRISTIAN; HE TING; CHAN KEVIN: "Adaptive Federated Learning in Resource Constrained Edge Computing Systems", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, IEEE SERVICE CENTER, PISCATAWAY., US, vol. 37, no. 6, 1 June 2019 (2019-06-01), US, pages 1205 - 1221, XP011724549, ISSN: 0733-8716, DOI: 10.1109/JSAC.2019.2904348 *

Also Published As

Publication number Publication date
KR20210121915A (en) 2021-10-08
KR102567565B1 (en) 2023-08-21

Similar Documents

Publication Publication Date Title
WO2021201370A1 (en) Federated learning resource management apparatus and system, and resource efficiency method therefor
US11429408B2 (en) System and method for network function virtualization resource management
US11372802B2 (en) Virtual RDMA switching for containerized applications
JP4740897B2 (en) Virtual network configuration method and network system
US20200241926A1 (en) Selection and management of disaggregated computing resources
KR20220054396A (en) Method and device of deep learning training task
CN107925677A (en) For unloading the technology of data object replication and service function chain management
US20100217860A1 (en) Systems and methods for single session management in load balanced application server clusters
US11169787B2 (en) Software acceleration platform for supporting decomposed, on-demand network services
CN1617526A (en) Method and device for emulating multiple logic port on a physical poet
WO2012121482A2 (en) Data encryption processing device and method of a cloud storage system
JP2006510976A5 (en)
WO2014069827A1 (en) System and method for providing data analysis service in a cloud environment
JP2004531001A (en) Data transfer between host computer system and Ethernet adapter
CN104639596A (en) System and method for multiple sender support in low latency fifo messaging using rdma
US20200159555A1 (en) Provider network service extensions
CN105391652A (en) USB equipment network sharing system and method based on USB redirection
US7966394B1 (en) Information model registry and brokering in virtualized environments
CN109343974A (en) The inter-process communication methods and device of virtual desktop based on container
WO2015102133A1 (en) Device for managing file and method for same
CN110048875A (en) A kind of method and apparatus of upgrading driving
WO2013027922A1 (en) Compressed image file management device and method, for cloud computing system
WO2013100551A1 (en) P2p-based update client, server device, system, and method
WO2014092292A1 (en) Method and system for cloud- and streaming-based data transfer, client terminal and service apparatus
CN105573801A (en) Method for realizing software upgrading in stacking system as well as device and system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20928371

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20928371

Country of ref document: EP

Kind code of ref document: A1