KR102530115B1 - 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법 - Google Patents

엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법 Download PDF

Info

Publication number
KR102530115B1
KR102530115B1 KR1020220008712A KR20220008712A KR102530115B1 KR 102530115 B1 KR102530115 B1 KR 102530115B1 KR 1020220008712 A KR1020220008712 A KR 1020220008712A KR 20220008712 A KR20220008712 A KR 20220008712A KR 102530115 B1 KR102530115 B1 KR 102530115B1
Authority
KR
South Korea
Prior art keywords
learning
local
data
model
information
Prior art date
Application number
KR1020220008712A
Other languages
English (en)
Inventor
이주형
김진겸
Original Assignee
가천대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가천대학교 산학협력단 filed Critical 가천대학교 산학협력단
Priority to KR1020220008712A priority Critical patent/KR102530115B1/ko
Application granted granted Critical
Publication of KR102530115B1 publication Critical patent/KR102530115B1/ko

Links

Images

Classifications

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

Landscapes

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

Abstract

본 발명은 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법으로서, 각각의 디바이스가 보유하고 있는 로컬데이터셋의 크기 및 분포를 고려하여 각각의 디바이스가 학습해야 하는 로컬데이터셋으로 재구성하여 로컬모델을 학습시키고, 각각의 디바이스에 대한 로컬모델을 합계하여 학습효율성이 최대가 되는 글로벌모델을 생성할 수 있는, 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법에 관한 것이다.
1) 이 성과는 정부(과학기술정보통신부)의 재원으로 한국연구재단의 지원을 받아 수행된 연구임 (No. 2021R1F1A1048098).
2) 이 성과는 2022년도 가천대학교 교내연구비 지원에 의한 결과임.(GCU-202206120001)

Description

엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법 {A method of implementing a federated learning data sampling technology based on data distribution information performed in an edge server}
본 발명은 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법으로서, 각각의 디바이스가 보유하고 있는 로컬데이터셋의 크기 및 분포를 고려하여 각각의 디바이스가 학습해야 하는 로컬데이터셋으로 재구성하여 로컬모델을 학습시키고, 각각의 디바이스에 대한 로컬모델을 합계하여 학습효율성이 최대가 되는 글로벌모델을 생성할 수 있는, 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법에 관한 것이다.
인공지능이란 인간의 사고능력을 컴퓨팅 환경에서 모방하여 구현하는 기술로서, 고성능의 인공지능 모델을 구현하기 위해서는 방대한 양의 학습데이터를 필요로 한다. 최근에는 이러한 학습데이터로 스마트폰, 사물인터넷, 엣지 컴퓨팅환경에서 생산되는 사용자데이터를 활용하여 인공지능 모델학습에 사용하고자 하는 방법이 제시되고 있다.
그러나 상기와 같이 사용자 개개인의 정보를 중앙서버로 취합하여 인공지능 모델을 학습시키는 방식은 개인정보 및 프라이버시의 침해 소지가 있고, 국내뿐만 아니라 전 세계적으로 개인정보보호에 대한 법과 제도가 강화되고 있는 추세를 고려하였을 때, 개인의 사생활을 침해하지 않으면서 다수의 학습데이터를 취합하여 인공지능 모델을 학습시킬 수 있는 방법 및 시스템이 고안될 필요가 있다.
또한, 종래의 방식에서는 방대한 양의 데이터를 중앙서버에서 모두 처리함으로써 데이터 처리에 고성능, 대용량의 컴퓨팅 시스템을 필요로 하고, 데이터 통신에 소모되는 통신비용 또한 막대해지는 문제점을 내재하고 있다.
상기와 같은 문제를 해결하고자 구글에서는 중앙서버에서 데이터를 취합하여 처리하는 종래의 방식에서 벗어나 스마트폰과 같은 로컬장치 각각에서 학습을 수행하는 연합학습 개념을 제시한 바 있다. 구체적으로 연합학습이란 각종 로컬장치에서 생산되는 개인 데이터를 중앙서버로 취합하지 않고, 로컬장치 각각이 인공지능 모델을 탑재하여 학습을 수행하고, 로컬장치 각각에서 학습한 인공지능 모델을 중앙서버로 취합하여 글로벌 인공지능 모델을 만드는 방식으로서, 로컬장치 각각이 보유하고 있는 데이터를 로컬장치 자체에서 학습하고 처리함으로써, 중앙서버가 개인 데이터에 접근 및 열람할 수 없는 것을 특징으로 한다.
한편, 기존의 연합학습 시스템은 각 로컬장치의 데이터 이질성을 고려하지 않고 모든 로컬장치에 대해 동일한 데이터 샘플링 전략으로 학습을 진행하는 방식이 제시되어 왔다. 그러나 각 로컬장치가 보유하고 있는 데이터의 크기 및 분포는 모두 상이할 수 있고 시스템 전체에 대한 학습 정확도 및 학습시간에 대한 학습효율성을 보장하기 위해서는 각 로컬장치가 보유하고 있는 데이터의 크기 및 분포에 대한 이질성을 고려하여 각 로컬장치별로 맞춤형 학습전략을 제공할 필요가 있다.
결과적으로 연합학습 시스템의 학습 효율성을 보장하는 방법에 있어, 각 로컬장치별로 데이터 이질성을 고려한 맞춤형 데이터 샘플링 전략을 제공함으로써 전체 연합학습 시스템의 학습효율성을 보장할 수 있는 방법 및 시스템의 개발 필요성이 대두되고 있다.
본 발명은 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법으로서, 각각의 디바이스가 보유하고 있는 로컬데이터셋의 크기 및 분포를 고려하여 각각의 디바이스가 학습해야 하는 로컬데이터셋으로 재구성하여 로컬모델을 학습시키고, 각각의 디바이스에 대한 로컬모델을 합계하여 학습효율성이 최대가 되는 글로벌모델을 생성할 수 있는, 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법을 제공하는 것을 목적으로 한다.
상기와 같은 과제를 해결하기 위하여, 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법으로서, 1 이상의 디바이스에 데이터셋 학습에 필요한 글로벌모델을 송신하는 초기모델송신단계; 상기 1 이상의 디바이스 각각으로부터 해당 디바이스가 보유한 로컬데이터셋의 크기 및 분포에 대한 정보가 라벨링된 로컬데이터셋라벨링정보를 수신하는 로컬데이터셋라벨링정보수신단계; 상기 로컬데이터셋라벨링정보에 기초하여 각각의 디바이스별로 학습에 사용될 데이터셋의 크기 및 분포에 대한 최적학습데이터정보를 도출하는 데이터샘플링알고리즘을 수행하여, 상기 각각의 디바이스로 상기 최적학습데이터정보를 송신하는 최적학습데이터정보도출단계; 상기 1 이상의 디바이스로 하여금 최적학습데이터정보를 반영하여 학습에 사용할 로컬데이터셋을 재구성하도록 명령하는 데이터재구성단계; 상기 1 이상의 디바이스에 재구성된 로컬데이터셋으로 학습하여 업데이트된 로컬모델을 생성하고 정확도 및 학습시간에 대한 학습결과를 도출하도록 명령하는 로컬학습단계; 상기 1 이상의 디바이스 각각으로부터 상기 업데이트된 로컬모델 및 상기 학습결과를 수신하는 학습결과수신단계; 상기 각각의 디바이스로부터 수신한 상기 업데이트된 로컬모델을 글로벌모델에 합계하여 업데이트하고, 학습결과를 반영하여 정확도 및 학습시간에 대한 학습효율성을 도출하는 글로벌모델업데이트단계; 및 상기 업데이트된 글로벌모델을 상기 1 이상의 디바이스 각각으로 송신하고, 상기 1 이상의 디바이스에 로컬모델을 상기 업데이트된 글로벌모델로 업데이트하도록 명령하는 로컬모델업데이트단계;를 포함하는, 연합학습 데이터 샘플링 기술의 구현방법을 제공한다.
본 발명의 일 실시예에서는, 상기 로컬데이터셋라벨링정보는, 디바이스가 보유하고 있는 로컬데이터셋에 대하여 데이터라벨별 분포 및 데이터의 크기가 라벨링된 정보일 수 있다.
본 발명의 일 실시예에서는, 상기 데이터샘플링알고리즘은, 각각의 디바이스로부터 수신한 로컬데이터셋라벨링정보, 학습시간 및 정확도 향상률에 대한 학습결과에 기초하여 디바이스의 학습효율성이 최대가 되는 데이터라벨별 데이터 크기를 도출하고, 상기 데이터라벨별 데이터 크기를 각각의 디바이스가 보유하고 있는 로컬데이터셋라벨링정보의 데이터라벨별 분포에 기초하여 분류하여, 각각의 디바이스별로 해당 디바이스가 학습해야 될 데이터라벨별 데이터 크기인 최적학습데이터정보를 도출할 수 있다.
본 발명의 일 실시예에서는, 상기 데이터샘플링알고리즘은, 전체 데이터셋 또는 각각의 디바이스가 보유하는 로컬데이터셋에 대한 학습효율성이 최대가 되는 데이터라벨별 데이터 크기를 도출할 수 있다.
본 발명의 일 실시예에서는, 상기 학습효율성은, 각각의 디바이스의 학습시간에 대비한 학습모델의 정확도 향상률인 장치학습효율성(
Figure 112022007612802-pat00001
), 및 각각의 디바이스에 대한 상기 장치학습효율성을 합산하여 결정되는 전체학습효율성 (
Figure 112022007612802-pat00002
)을 포함하고, 상기 장치학습효율성은
Figure 112022007612802-pat00003
로 결정되고, 상기 전체학습효율성은
Figure 112022007612802-pat00004
로 결정되고, An(r)은 해당 라운드 r에서의 장치 n에 대한 정확도이고, Tn(r)은 해당 라운드 r에서 장치 n이 학습에 소요되는 시간일 수 있다.
본 발명의 일 실시예에서는, 상기 연합학습 데이터 샘플링 기술의 구현방법은, 학습모델의 정확도가 기설정된 목표값에 도달할 때 까지, N회(N은 1 이상의 자연수) 이상 반복 수행될 수 있다.
본 발명의 일 실시예에서는, 상기 연합학습 데이터 샘플링 기술의 구현방법은, 기설정된 횟수로 M회(M은 2 이상의 자연수) 수행되어, 1 내지 M회 별로 도출된 학습효율성 가운데 최댓값을 갖는 학습효율성에 해당하는 횟수를 결정하고, 최댓값을 갖는 학습효율성에 해당하는 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다.
상기와 같은 과제를 해결하기 위하여, 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법을 수행하는 엣지서버로서, 1 이상의 디바이스에 데이터셋 학습에 필요한 글로벌모델을 송신하는 초기모델송신단계; 상기 1 이상의 디바이스 각각으로부터 해당 디바이스가 보유한 로컬데이터셋의 크기 및 분포에 대한 정보가 라벨링된 로컬데이터셋라벨링정보를 수신하는 로컬데이터셋라벨링정보수신단계; 상기 로컬데이터셋라벨링정보에 기초하여 각각의 디바이스별로 학습에 사용될 데이터셋의 크기 및 분포에 대한 최적학습데이터정보를 도출하는 데이터샘플링알고리즘을 수행하여, 상기 각각의 디바이스로 상기 최적학습데이터정보를 송신하는 최적학습데이터정보도출단계; 상기 1 이상의 디바이스로 하여금 최적학습데이터정보를 반영하여 학습에 사용할 로컬데이터셋을 재구성하도록 명령하는 데이터재구성단계; 상기 1 이상의 디바이스에 재구성된 로컬데이터셋으로 학습하여 업데이트된 로컬모델을 생성하고 정확도 및 학습시간에 대한 학습결과를 도출하도록 명령하는 로컬학습단계; 상기 1 이상의 디바이스 각각으로부터 상기 업데이트된 로컬모델 및 상기 학습결과를 수신하는 학습결과수신단계; 상기 각각의 디바이스로부터 수신한 상기 업데이트된 로컬모델을 글로벌모델에 합계하여 업데이트하고, 학습결과를 반영하여 정확도 및 학습시간에 대한 학습효율성을 도출하는 글로벌모델업데이트단계; 및 상기 업데이트된 글로벌모델을 상기 1 이상의 디바이스 각각으로 송신하고, 상기 1 이상의 디바이스에 로컬모델을 상기 업데이트된 글로벌모델로 업데이트하도록 명령하는 로컬모델업데이트단계;를 수행하는, 엣지서버를 제공한다.
상기와 같은 과제를 해결하기 위하여, 1 이상의 프로세스 및 1 이상의 메모리를 갖는 컴퓨팅장치에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법을 구현하기 위한 컴퓨터-판독가능 매체로서, 상기 컴퓨터-판독가능매체는, 컴퓨팅장치로 하여금 이하의 단계들을 수행하도록 하는 명령들을 저장하며, 상기 이하의 단계들은, 1 이상의 디바이스에 데이터셋 학습에 필요한 글로벌모델을 송신하는 초기모델송신단계; 상기 1 이상의 디바이스 각각으로부터 해당 디바이스가 보유한 로컬데이터셋의 크기 및 분포에 대한 정보가 라벨링된 로컬데이터셋라벨링정보를 수신하는 로컬데이터셋라벨링정보수신단계; 상기 로컬데이터셋라벨링정보에 기초하여 각각의 디바이스별로 학습에 사용될 데이터셋의 크기 및 분포에 대한 최적학습데이터정보를 도출하는 데이터샘플링알고리즘을 수행하여, 상기 각각의 디바이스로 상기 최적학습데이터정보를 송신하는 최적학습데이터정보도출단계; 상기 1 이상의 디바이스로 하여금 최적학습데이터정보를 반영하여 학습에 사용할 로컬데이터셋을 재구성하도록 명령하는 데이터재구성단계; 상기 1 이상의 디바이스에 재구성된 로컬데이터셋으로 학습하여 업데이트된 로컬모델을 생성하고 정확도 및 학습시간에 대한 학습결과를 도출하도록 명령하는 로컬학습단계; 상기 1 이상의 디바이스 각각으로부터 상기 업데이트된 로컬모델 및 상기 학습결과를 수신하는 학습결과수신단계; 상기 각각의 디바이스로부터 수신한 상기 업데이트된 로컬모델을 글로벌모델에 합계하여 업데이트하고, 학습결과를 반영하여 정확도 및 학습시간에 대한 학습효율성을 도출하는 글로벌모델업데이트단계; 및 상기 업데이트된 글로벌모델을 상기 1 이상의 디바이스 각각으로 송신하고, 상기 1 이상의 디바이스에 로컬모델을 상기 업데이트된 글로벌모델로 업데이트하도록 명령하는 로컬모델업데이트단계;를 포함하는, 컴퓨터-판독가능매체를 제공한다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 각각의 디바이스가 보유하고 있는 데이터셋의 크기 및 분포에 대한 로컬데이터셋라벨링정보를 고려하여 각각의 디바이스가 학습해야 할 로컬데이터셋에 대한 최적학습데이터정보를 도출함으로써 전체 학습시스템의 학습효율성을 향상할 수 있다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 각각의 디바이스가 보유하고 있는 로컬데이터셋을 학습에 수행되는 로컬데이터셋으로 재구성함으로써 자원효율적으로 학습을 수행할 수 있다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 학습시간에 대비한 학습모델의 정확도 향상률로서 각각의 디바이스에 대한 장치학습효율성 및 전체 시스템에 대한 전체학습효율성을 도출할 수 있다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 글로벌모델의 정확도가 기설정된 목표값에 도달할 때까지 반복 수행하여 글로벌모델의 정확도가 기설정된 목표값에 도달하는 횟수를 결정하고, 해당 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 로컬장치에 의한 학습을 반복 수행하고, 수행 라운드에서 학습효율성이 최대가 되는 횟수를 결정하고, 해당 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다.
도 1은 본 발명의 일 실시예에 따른 데이터 샘플링 기술의 구성요소를 도시한 것이다.
도 2는 본 발명의 일 실시예에 따른 데이터 샘플링 기술의 수행단계를 개략적으로 도시한 것이다.
도 3은 본 발명의 일 실시예에 따른 1 이상의 디바이스 각각에 대한 최적학습데이터정보를 도출하여 각각의 로컬모델을 학습시키는 단계를 개략적으로 도시한 것이다.
도 4는 본 발명의 일 실시예에 따른 데이터 샘플링 기술이 데이터셋의 크기 및 분포를 고려하여 재구성된 데이터셋으로 학습을 수행하는 과정을 도시한 것이다.
도 5는 본 발명의 일 실시예에 따른 엣지서버에 의해 학습에 필요한 초기글로벌모델을 디바이스로 송신하는 단계를 개략적으로 도시한 것이다.
도 6는 본 발명의 일 실시예에 따른 디바이스에 의해 로컬데이터셋의 크기 및 분포에 대한 로컬데이터셋라벨링정보를 엣지서버로 송신하는 단계를 개략적으로 도시한 것이다.
도 7은 본 발명의 일 실시예에 따른 엣지서버에 의해 데이터샘플링알고리즘을 수행하여 최적학습데이터정보를 도출하고 디바이스로 송신하는 단계를 개략적으로 도시한 것이다.
도 8은 본 발명의 일 실시예에 따른 디바이스에 의해 최적학습데이터정보에 기초하여 로컬데이터셋을 재구성하는 단계를 개략적으로 도시한 것이다.
도 9는 본 발명의 일 실시예에 따른 디바이스에 의해 재구성된 로컬데이터셋으로 학습하고 로컬모델을 업데이트하는 단계를 개략적으로 도시한 것이다.
도 10은 본 발명의 일 실시예에 따른 엣지서버에 의해 업데이트된 로컬모델과 정확도 및 학습시간에 대한 학습결과를 엣지서버로 송신하는 단계를 개략적으로 도시한 것이다.
도 11은 본 발명의 일 실시예에 따른 엣지서버에 의해 글로벌모델을 업데이트하는 단계를 개략적으로 도시한 것이다.
도 12는 본 발명의 일 실시예에 따른 엣지서버에 의해 업데이트된 글로벌모델을 디바이스로 송신하는 단계를 개략적으로 도시한 것이다.
도 13은 본 발명의 일 실시예에 따른 학습효율성이 최대가 되는 횟수를 결정하는 방법에 대한 도면이다.
이하에서는, 다양한 실시예들 및/또는 양상들이 이제 도면들을 참조하여 개시된다. 하기 설명에서는 설명을 목적으로, 하나이상의 양상들의 전반적 이해를 돕기 위해 다수의 구체적인 세부사항들이 개시된다. 그러나, 이러한 양상(들)은 이러한 구체적인 세부사항들 없이도 실행될 수 있다는 점 또한 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 인식될 수 있을 것이다. 이후의 기재 및 첨부된 도면들은 하나 이상의 양상들의 특정한 예시적인 양상들을 상세하게 기술한다. 하지만, 이러한 양상들은 예시적인 것이고 다양한 양상들의 원리들에서의 다양한 방법들 중 일부가 이용될 수 있으며, 기술되는 설명들은 그러한 양상들 및 그들의 균등물들을 모두 포함하고자 하는 의도이다.
또한, 다양한 양상들 및 특징들이 다수의 디바이스들, 컴포넌트들 및/또는 모듈들 등을 포함할 수 있는 시스템에 의하여 제시될 것이다. 다양한 시스템들이, 추가적인 장치들, 컴포넌트들 및/또는 모듈들 등을 포함할 수 있다는 점 그리고/또는 도면들과 관련하여 논의된 장치들, 컴포넌트들, 모듈들 등 전부를 포함하지 않을 수도 있다는 점 또한 이해되고 인식되어야 한다.
본 명세서에서 사용되는 "실시예", "예", "양상", "예시" 등은 기술되는 임의의 양상 또는 설계가 다른 양상 또는 설계들보다 양호하다거나, 이점이 있는 것으로 해석되지 않을 수도 있다. 아래에서 사용되는 용어들 '~부', '컴포넌트', '모듈', '시스템', '인터페이스' 등은 일반적으로 컴퓨터 관련 엔티티(computer-related entity)를 의미하며, 예를 들어, 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어를 의미할 수 있다.
또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하지만, 하나 이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
또한, 본 발명의 실시예들에서, 별도로 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 발명의 실시예에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 일 실시예에 따른 데이터 샘플링 기술의 구성요소를 도시한 것이다.
도 1에 도시된 바와 같이, 본원 발명의 데이터 샘플링 기술은 엣지서버(100) 및 1 이상의 디바이스(200)에 의해 구현될 수 있다. 구체적으로 연합학습은 각각의 디바이스(200)가 보유하고 있는 로컬데이터셋을 엣지서버(100)로 취합하지 않고, 각각의 디바이스(200)가 보유하고 있는 로컬모델에 의해 학습을 수행하게 하는 방법으로서, 엣지서버(100)는 각각의 디바이스(200)가 보유하고 있는 데이터의 원본에 접근하지 못하고 각각의 디바이스(200)에서 학습이 수행될 수 있다.
한편, 기존의 연합학습 방식은 학습을 수행하는 디바이스(200)가 각각이 보유하고 있는 로컬데이터셋의 크기 및 분포를 고려하지 않고 학습이 수행되어 학습정확도 향상에 초점을 맞춘 방식이 제시되어 왔다. 구체적으로 기존의 연합학습 방식은 각각의 디바이스(200)가 보유하고 있는 전체 데이터셋을 선별없이 모두 학습하여 학습 정확도를 향상해 왔다.
그러나 상기와 같은 방식은 각각의 디바이스(200)가 보유하고 있는 로컬데이터셋의 크기 및 분포를 고려하지 않아 학습이 반복수행됨에 따라 학습효율성이 감소하는 문제점을 내재하고 있다.
이에 본원 발명에서는 연합학습을 수행함에 있어 각각의 디바이스(200)가 보유하고 있는 로컬데이터셋에 대한 데이터이질성, 즉 데이터의 크기 및 분포를 고려하여 각각의 디바이스(200)별로 학습에 사용할 로컬데이터셋에 대한 정보인 최적학습데이터정보를 도출하고, 각각의 디바이스(200)가 최적학습데이터정보에 기초하여 로컬데이터셋을 재구성하여 학습을 수행하는 방법을 제시한다.
또한, 본원 발명의 데이터 샘플링 기술은 상기의 과정을 반복 수행하여 학습시간 및 정확도 향상률에 대한 학습효율성이 최대가 되는 횟수를 결정하고, 해당 횟수에서의 로컬데이셋의 크기 및 분포에 대한 정보, 즉 학습효율성이 최대가 되는 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다.
한편 디바이스(200)는 스마트폰, 자동차, AI스피커와 같이 사용자 개개인이 데이터를 생산 및 저장할 수 있는 매체일 수 있다. 구체적으로 상기의 매체를 통해 수집된 사진, 위치정보, 검색내용 등이 데이터화되어 디바이스(200)에 저장될 수 있고, 데이터화된 정보들이 연합학습모델에 사용되는 데이터셋일 수 있다. 또한 각각의 디바이스(200) 사용자가 생산하는 데이터는 상이하므로 각각의 디바이스(200)별로 보유하고 있는 로컬데이터셋의 크기 및 분포가 모두 상이할 수 있다.
각각의 디바이스(200)는 학습을 수행하는 로컬모델을 포함하여, 각각의 디바이스(200)가 보유하고 있는 로컬데이터셋에 기초하여 학습을 수행하고, 학습에 대한 학습결과를 도출할 수 있다.
도 2는 본 발명의 일 실시예에 따른 데이터 샘플링 기술의 수행단계를 개략적으로 도시한 것이다.
도 2에 도시된 바와 같이 엣지서버(100)에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법으로서, 1 이상의 디바이스(200)에 데이터셋 학습에 필요한 글로벌모델(110)을 송신하는 초기모델송신단계(S10); 상기 1 이상의 디바이스(200) 각각으로부터 해당 디바이스(200)가 보유한 로컬데이터셋의 크기 및 분포에 대한 정보가 라벨링된 로컬데이터셋라벨링정보를 수신하는 로컬데이터셋라벨링정보수신단계(S12); 상기 로컬데이터셋라벨링정보에 기초하여 각각의 디바이스(200)별로 학습에 사용될 데이터셋의 크기 및 분포에 대한 최적학습데이터정보를 도출하는 데이터샘플링알고리즘을 수행하여, 상기 각각의 디바이스(200)로 상기 최적학습데이터정보를 송신하는 최적학습데이터정보도출단계(S13); 상기 1 이상의 디바이스(200)로 하여금 최적학습데이터정보를 반영하여 학습에 사용할 로컬데이터셋을 재구성하도록 명령하는 데이터재구성단계(S15); 상기 1 이상의 디바이스(200)에 재구성된 로컬데이터셋으로 학습하여 업데이트된 로컬모델을 생성하고 정확도 및 학습시간에 대한 학습결과를 도출하도록 명령하는 로컬학습단계(S16); 상기 1 이상의 디바이스(200) 각각으로부터 상기 업데이트된 로컬모델 및 상기 학습결과를 수신하는 학습결과수신단계(S17); 상기 각각의 디바이스(200)로부터 수신한 상기 업데이트된 로컬모델을 글로벌모델(110)에 합계하여 업데이트하고, 학습결과를 반영하여 정확도 및 학습시간에 대한 학습효율성을 도출하는 글로벌모델업데이트단계(S18); 및 상기 업데이트된 글로벌모델(110.2)을 상기 1 이상의 디바이스(200) 각각으로 송신하고, 상기 1 이상의 디바이스(200)에 로컬모델을 상기 업데이트된 글로벌모델(110.2)로 업데이트하도록 명령하는 로컬모델업데이트단계;를 포함할 수 있다.
엣지서버(100)는 1 이상의 디바이스(200)에 데이터셋 학습에 필요한 글로벌모델(110)을 송신하는 초기모델송신단계(S10)를 수행하고, 디바이스(200)는 상기 엣지서버(100)로부터 수신한 글로벌모델(110)을 로컬모델로 입력하는 단계(S11)를 수행할 수 있다.
구체적으로 글로벌모델(110) 및 로컬모델은 데이터셋을 입력받아 처리하는 인공지능 학습모델로서 엣지서버(100)는 1 이상의 디바이스(200) 각각에 초기 글로벌모델(110)을 송신할 수 있다.
바람직하게는 엣지서버(100)로부터 수신한 초기 글로벌모델(110)이 각각의 디바이스(200)에서 학습을 수행하는 초기 로컬모델이 될 수 있고, 각각의 디바이스(200)는 보유하고 있는 로컬데이터셋을 로컬모델에 입력하여 학습을 수행할 수 있다.
한편, 본원 발명의 데이터 샘플링 기술에서 각각의 디바이스(200)는 학습을 수행하여 로컬모델을 업데이트하고, 엣지서버(100)는 업데이트된 로컬모델을 합계하여 글로벌모델(110)을 업데이트할 수 있고, 업데이트된 글로벌모델(110.2)은 각각의 디바이스(200)로 송신되어 로컬모델로 다시 업데이트될 수 있다. 또한 엣지서버(100) 및 디바이스는 상기 단계를 반복 수행할 수 있다.
일례로 데이터 샘플링 기술의 1회차 수행 시, 디바이스(200)는 로컬모델을 포함하지 않거나, 초기상태의 로컬모델이 입력되어 있을 수 있다. 엣지서버(100)는 각각의 디바이스(200)에 글로벌모델(110)을 송신하고 디바이스(200)는 상기 글로벌모델(110)을 로컬모델로 입력할 수 있다.
또한 상술한 바와 같이 엣지서버(100) 및 디바이스(200)는 로컬모델 및 글로벌모델(110)을 업데이트할 수 있고, 데이터 샘플링 기술의 2회차 수행 시 초기모델송신단계(S10)에서, 엣지서버(100)는 (1회차에서 업데이트된) 글로벌모델(110)을 디바이스(200)로 송신하고, 디바이스(200)는 (1회차에서 업데이트된) 로컬모델을 (1회차에서 업데이트된, 즉 2회차의 초기모델송신단계(S10)에서 엣지서버(100)로부터 수신한) 글로벌모델(110)로 업데이트할 수 있다.
이어서, 엣지서버(100)는 상기 1 이상의 디바이스(200) 각각으로부터 해당 디바이스(200)가 보유한 로컬데이터셋의 크기 및 분포에 대한 정보가 라벨링된 로컬데이터셋라벨링정보를 수신하는 로컬데이터셋라벨링정보수신단계(S12)를 수행할 수 있다.
구체적으로 로컬데이터셋라벨링정보는 디바이스(200)가 보유하고 있는 로컬데이터셋에 대하여 데이터라벨별 분포 및 크기가 라벨링된 정보로서, 상술한 바와 같이 각각의 디바이스(200)가 보유하고 있는 데이터셋의 크기 및 분포가 상이하므로 각각의 디바이스(200)별로 상이한 로컬데이터셋라벨링정보가 도출될 수 있다.
한편, 로컬데이터셋라벨링정보는 로컬데이터셋의 크기 및 분포에 대한 정보만을 포함하여 엣지서버(100)가 로컬데이터셋 원본을 열람하지 못하게 하여, 개인데이터 보호를 위한 연합학습의 원 취지를 침해하지 않는 형태로 구현함이 바람직할 것이다.
이어서, 엣지서버(100)는 상기 로컬데이터셋라벨링정보에 기초하여 각각의 디바이스(200)별로 학습에 사용될 데이터셋의 크기 및 분포에 대한 최적학습데이터정보를 도출하는 데이터샘플링알고리즘을 수행하여, 상기 각각의 디바이스(200)로 상기 최적학습데이터정보를 송신하는 최적학습데이터정보도출단계(S13)를 수행할 수 있다.
구체적으로 데이터샘플링알고리즘이란 각각의 디바이스(200)로부터 수신한 로컬데이터셋라벨링정보, 학습시간 및 정확도 향상률에 대한 학습결과에 기초하여 디바이스(200)의 학습효율성이 최대가 되는 데이터라벨별 데이터 크기를 도출하고, 상기 데이터라벨별 데이터 크기를 각각의 디바이스(200)가 보유하고 있는 로컬데이터셋라벨링정보의 데이터라벨별 분포에 기초하여 분류하여, 각각의 디바이스(200)별로 해당 디바이스(200)가 학습해야 될 데이터라벨별 데이터 크기인 최적학습데이터정보를 도출하는 알고리즘일 수 있다.
바람직하게는 데이터샘플링 알고리즘은 각각의 디바이스(200)로부터 수신한 로컬데이터셋라벨링정보를 합계하여 전체 데이터셋에 대하여 학습효율성이 최대가 되는 데이터라벨별 데이터 크기를 도출하고, 이어서 전체 데이터셋에 대하여 도출된 데이터라벨별 크기를 각각의 디바이스(200)별로 분류하여 각각의 디바이스(200)별로 학습해야 하는 데이터라벨별 크기를 도출할 수 있다.
또한, 데이터샘플링알고리즘에서 전체 데이터셋에 대하여 학습효율성이 최대가 되는 데이터라벨별 크기를 각각의 디바이스(200)별로 분류하는 단계는 각각의 디바이스(200)가 송신한 로컬데이터셋라벨링정보에 기초하여 분류될 수 있다.
구체적으로 전체 데이터셋에 대하여 학습효율성이 최대가 되는 데이터라벨별 크기를 각각의 디바이스(200)별로 분류하는 단계는 표준점수(Z-score) 및 쿨백-라이블러 발산(Kullback-Leibler divergence, KLD)와 같은 방식으로 정량화하여 분류할 수 있다.
예를 들어 표준점수란 전체 데이터셋에 대한 정규분포를 생성하여 각각의 데이터가 평균으로부터 얼마만큼 떨어져 있는 지에 대한 정보로서, 데이터라벨별 데이터 크기에 대한 분포를 파악하여 데이터셋을 분류할 수 있다.
또는 쿨백-라이블러 발산은 두 확률 분포의 차이를 계산하기 위한 함수로서, 이를 이용하여 균일 분포와의 차이를 통하여 데이터 분포 정량화를 할 수 있다.
상기의 방식으로 정량화된 데이터셋에 대한 정보는 다운샘플링(Downsampling) 또는 데이터증강(Data augmentation)과 같은 방식으로 각각의 디바이스(200)별로 학습해야할 데이터셋을 결정할 수 있다. 예를 들어 다운샘플링(Downsampling)의 경우 데이터라벨별로 데이터를 랜덤하게 선택할 수 있다.
또한, 상기의 방식은 전체 데이터셋에 대하여 학습효율성이 최대가 되는 데이터라벨별 크기를 각각의 디바이스(200)별로 분류하는 방법의 일례일 뿐이며, 상기의 방법에 한정하지 않고 데이터를 정량화하여 데이터셋을 재구성하는 방법이 사용될 수 있다.
이어서, 엣지서버(100)는 각각의 디바이스(200)로 도출된 최적학습데이터정보를 송신하는 단계(S14)를 수행할 수 있다. 상술한 바와 같이 엣지서버(100)는 각각의 디바이스(200)별로 상이한 최적학습데이터정보를 송신할 수 있다.
이어서, 엣지서버(100)는 상기 1 이상의 디바이스(200)로 하여금 최적학습데이터정보를 반영하여 학습에 사용할 로컬데이터셋을 재구성하도록 명령하는 데이터재구성단계(S15)를 수행할 수 있다. 구체적으로 각각의 디바이스(200)는 엣지서버(100)로부터 수신한 최적학습데이터정보를 반영하여 각각의 디바이스가 보유하고 있는 로컬데이터셋을 재구성할 수 있다.
이어서, 엣지서버(100)는 상기 1 이상의 디바이스(200)에 재구성된 로컬데이터셋으로 학습하여 업데이트된 로컬모델을 생성하고 정확도 및 학습시간에 대한 학습결과를 도출하도록 명령하는 로컬학습단계(S16)를 수행할 수 있다. 구체적으로 각각의 디바이스(200)는 재구성된 로컬데이터셋을 로컬모델에 입력하여 학습을 수행할 수 있다. 또한 학습이 수행됨에 따라 로컬모델이 업데이트될 수 있고, 정확도 및 학습시간에 대한 학습결과가 도출될 수 있다. 상기 학습결과는 엣지서버(100) 또는 디바이스(200)에서 정확도 및 학습시간에 대한 학습효율성을 도출하는 데 사용될 수 있다.
바람직하게는 로컬학습단계(S16)에서 학습을 수행하여 업데이트된 로컬모델은 초기 로컬모델보다 학습 정확도가 향상된 학습모델일 수 있다.
상술한 바와 같이 각각의 디바이스(200)별로 보유하고 있는 로컬데이터셋이 상이하므로 각각의 디바이스(200)별로 상이한 업데이트된 로컬모델과 학습결과가 도출될 수 있다.
이어서, 엣지서버(100)는 상기 1 이상의 디바이스(200) 각각으로부터 상기 업데이트된 로컬모델 및 상기 학습결과를 수신하는 학습결과수신단계(S17)를 수행할 수 있다.
이어서, 엣지서버(100)는 상기 각각의 디바이스(200)로부터 수신한 상기 업데이트된 로컬모델을 글로벌모델(110)에 합계하여 업데이트하고, 학습결과를 반영하여 정확도 및 학습시간에 대한 학습효율성을 도출하는 글로벌모델업데이트단계(S18)를 수행할 수 있다.
구체적으로 엣지서버(100)는 각가의 디바이스로부터 수신한 다수의 학습이 완료된 로컬모델을 반영하여 글로벌모델(110)을 업데이트함으로써 학습효율이 향상된 학습모델을 생성할 수 있다.
또한 각각의 디바이스(200)로부터 수신한 학습결과에 기초하여 전체 시스템에서의 학습효율성을 도출할 수 있다. 구체적으로 각각의 디바이스(200)에 대한 장치학습효율성을 도출하고, 상기 장치학습효율성을 합산하여 전체 시스템에 대한 전체학습효율성을 도출할 수 있다.
또한, 상기 과정은 1회 이상 반복 수행되어 각각의 디바이스(200) 및 전체 시스템에 대한 학습효율성을 지속적으로 향상할 수 있다.
이어서, 엣지서버(100)는 상기 업데이트된 글로벌모델(110.2)을 상기 1 이상의 디바이스(200) 각각으로 송신하고, 상기 1 이상의 디바이스(200)에 로컬모델을 상기 업데이트된 글로벌모델(110.2)로 업데이트하도록 명령하는 로컬모델업데이트단계(S19 및 S20)를 수행할 수 있다.
구체적으로 로컬모델업데이트단계(S19 및 S20)에서 엣지서버(100)가 각각의 디바이스(200)로 송신하는 업데이트된 글로벌모델(110.2)은 상기 초기모델송신단계(S10)에서 송신되는 글로벌모델(110) 및 상기 로컬학습단계(S16)에서 도출되는 업데이트된 로컬모델과 상이할 수 있다.
바람직하게는 로컬모델업데이트단계(S19 및 S20)에서 엣지서버(100)가 각각의 디바이스(200)로 송신하는 업데이트된 글로벌모델(110.2)은 다수의 디바이스(200)에서 학습된 결과가 반영되어 도출된 학습모델로서 상기 초기모델송신단계(S10)에서 송신되는 글로벌모델(110) 및 상기 로컬학습단계(S16)에서 도출되는 업데이트된 로컬모델보다 학습효율성이 향상된 학습모델일 수 있다.
한편, 본원 발명의 데이터 샘플링 기술에서는 상기의 단계들이 복수 회 수행될 수 있다. 구체적으로 엣지서버(100)가 업데이트된 글로벌모델(110.2)을 각각의 디바이스(200)로 송신하여 로컬모델을 업데이트하는 단계(S19 및 S20)는 초기의 글로벌모델(110)을 각각의 디바이스(200)로 입력하는 단계(S10 및 S11)와 구조적으로 동일할 수 있고, 이후 각각의 디바이스(200)별로 최적학습데이터정보를 도출하여 학습하고, 로컬모델 및 글로벌모델(110)을 업데이트는 단계가 동일하게 수행될 수 있다.
상기와 같이 학습모델(글로벌모델(110) 및 로컬모델)이 지속적으로 업데이트되어 학습효율성이 지속적으로 향상될 수 있고, 상기 단계를 수행하는 회차별로 학습효율성을 도출하여 학습효율성이 최대가 되는 횟수를 결정할 수 있다.
구체적으로 학습을 반복 수행함에 따라 학습에 대한 정확도는 지속적으로 향상될 수 있으나, 정확도 향상률은 감소할 수 있다. 따라서, 본원 발명에서는 기설정된 횟수로 학습을 수행하여 학습효율성이 최대가 되는 횟수를 결정하거나, 학습 정확도에 대한 목표값을 설정하고 학습 정확도가 상기 목표값에 도달할 때 까지 학습을 수행하여, 학습효율성이 최대가 되는 횟수를 결정할 수 있다.
바람직하게는 학습효율성이 최대가 되는 회차에 대하여 각각의 디바이스가 학습한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출하여 각각의 디바이스별로 가장 학습효율이 우수한 로컬데이터셋에 대한 정보를 도출할 수 있다.
한편, 학습효율성은 각각의 디바이스(200)에 대한 장치학습효율성과 각각의 디바이스(200)에 대한 학습효율을 합산한 전체학습효율성을 포함하고, 장치학습효율성 및 전체학습효율성은 하기의 [식 1] 및 [식 2]를 통해 도출될 수 있다.
[식 1]
Figure 112022007612802-pat00005
[식 2]
Figure 112022007612802-pat00006
여기서,
Figure 112022007612802-pat00007
는 장치학습효율성이고,
Figure 112022007612802-pat00008
는 전체학습효율성이고, An(r)은 해당 라운드 r에서의 장치 n에 대한 정확도이고, Tn(r)은 해당 라운드 r에서 장치 n이 학습에 소요되는 시간이다.
본 발명의 일 실시예에서는 각각의 디바이스에 대하여 장치학습효율성을 도출하여, 상기 장치학습효율성이 가장 높은 값을 가지는 경우에 대한 로컬데이터셋에 대한 정보를 도출할 수 있다. 또한, 각각의 디바이스가 가장 높은 값을 갖는 장치학습효율성을 가지는 경우 전체 시스템에 대한 전체학습효율성 또한 최대값을 가질 수 있다.
본 발명의 일 실시예에서는 엣지서버(100)에서 각각의 디바이스(200)로부터 수신한 학습결과에 기초하여 각 디바이스(200)에 대한 장치학습효율성과 전체학습효율성을 도출할 수 있다. 또는 본 발명의 다른 실시예에서 각각의 디바이스(200)가 각각의 학습결과에 기초하여 장치학습효율성을 도출하고, 엣지서버(100)는 각각의 디바이스(200)가 송신한 상기 장치학습효율성을 합산하여 전체학습효율성을 도출할 수 있다.
이하의 도 3에서는 1 이상의 디바이스(200)가 보유하고 있는 각각의 로컬데이터셋에 대하여 최적학습데이터정보를 도출하고 각각의 로컬모델을 학습시키는 단계를 보다 상세하게 상술한다.
도 3은 본 발명의 일 실시예에 따른 1 이상의 디바이스(200) 각각에 대한 최적학습데이터정보를 도출하여 각각의 로컬모델을 학습시키는 단계를 개략적으로 도시한 것이다.
도 3에 도시된 바와 같이, 1 이상의 디바이스(200.1 및 200.2)는 엣지서버(100)로 각각의 디바이스(200)가 보유하고 있는 로컬데이터셋의 크기 및 분포에 대한 정보가 라벨링되어 있는 로컬데이터셋라벨링정보를 송신하는 단계(S20)를 수행할 수 있다.
일례로 도 3의 경우 디바이스#1(200.2)는 엣지서버(100)에 디바이스#1(200.2)가 보유하고 있는 로컬데이터셋에 대한 데이터라벨별 분포 및 데이터의 크기가 라벨링된 정보(데이터셋#1의 ○△□에 대한 라벨별 갯수)인 로컬데이터셋라벨링정보를 송신할 수 있다.
마찬가지로 디바이스#2(200.1)는 엣지서버(100)에 디바이스#2(200.1)가 보유하고 있는 데이터셋에 대한 데이터라벨별 분포 및 데이터의 크기가 라벨링된 정보(데이터셋#2의 ○△□에 대한 라벨별 갯수)인 로컬데이터셋라벨링정보를 송신할 수 있다. 이와 같이, 1 이상의 디바이스(200) 각각이 보유하고 있는 로컬데이터셋이 상이함을 알 수 있다.
한편, 1 이상의 디바이스(200.1 및 200.2)는 엣지서버(100)로 각각의 디바이스(200)가 포함하는 로컬모델이 학습을 수행함에 따라 도출된 학습결과를 송신하는 단계(S21)를 더 수행할 수 있다. 구체적으로 학습결과는 로컬모델이 데이터셋을 통해 학습하여 도출된 정확도 및 학습시간에 대한 정보로서 초기 회차에서는 로컬모델에 의한 학습결과 도출되지 않아 상기 단계(S21)가 포함되지 않을 수 있으나, 이후의 회차에서는 최적학습데이터정보를 도출함에 있어, 이전 회차에서 수행된 정확도 및 학습시간에 대한 학습결과를 반영할 수 있다.
1 이상의 디바이스(200)로부터 로컬데이터셋라벨링정보 및 학습결과를 수신한 엣지서버(100)는 각각의 디바이스(200)별로 학습에 수행되어야 할 로컬데이터셋정보인 최적학습데이터정보를 도출(S22 및 S23)할 수 있다.
구체적으로 최적학습데이터정보는 데이터샘플링알고리즘에 의해 도출되고, 1 이상의 디바이스(200)의 전체 데이터셋에 대하여 학습효율성이 최대가 되는 데이터라벨별 크기를 도출하는 단계(S22) 및 상기 전체 데이터셋에 대하여 학습효율성이 최대가 되는 데이터라벨별 크기를 디바이스(200)별로 분류하여 디바이스(200)별 데이터라벨별 학습효율성이 최대가 되는 최적학습데이터정보를 도출하는 단계(S23)가 수행되어 도출될 수 있다.
일례로 도 3의 경우 각각의 디바이스(200)로부터 수신한 로컬데이터셋라벨링정보에 기초하여 전체 데이터셋에 대하여 학습효율성이 최대가 되는 데이터라벨별 크기(예를 들어, ○ 3개 △ 2개 □ 4개)를 도출할 수 있다. 엣지서버(100)는 도출된 데이터라벨별 크기를 각각의 디바이스(200)가 송신한 로컬데이터셋라벨링정보에 기초하여 디바이스(200)별로 분류하여 디바이스(200)별 최적학습데이터정보(데이터셋#1의 ○ 2개 △ 1개 □ 2개, 데이터셋#2의 ○ 1개 △ 1개 □ 2개)를 도출할 수 있다.
엣지서버(100)에서 데이터샘플링알고리즘이 수행되어 도출된 최적학습데이터정보는 각각의 디바이스(200)로 송신(S24)되고, 각각의 디바이스(200)는 상기 최적학습데이터정보에 기초하여 각각의 디바이스(200)가 보유하고 있는 로컬데이터셋을 재구성(S25)할 수 있다. 또한 재구성된 로컬데이터셋은 각각의 디바이스(200)의 로컬모델에 입력되어 학습(S26)될 수 있다.
상기와 같이 각각의 디바이스(200)는 보유하고 있는 로컬데이터셋 전체를 학습하지 않고, 학습효율성이 일정부분 보장되는 범위에서 경감된 로컬데이터셋만을 학습함으로써 자원효율적으로 학습을 수행할 수 있다.
한편, 본 발명의 다른 실시예에서 엣지서버(100)는 디바이스(200)로 샘플데이터를 송신할 수 있다. 구체적으로 엣지서버(100)는 데이터라벨별 샘플데이터를 데이터베이스에 저장하고 있고, 각각의 디바이스(200)로부터 수신한 로컬데이터셋라벨링정보를 참조하여 1 이상의 디바이스(200)에 데이터라벨별 샘플데이터를 송신할 수 있다. 바람직하게는 디바이스(200)로부터 로컬데이터셋라벨링정보를 참조하여 특정 데이터라벨에 대한 데이터를 보유하고 있지 않거나 학습에 충분한 양의 데이터를 보유하고 있지 않은 디바이스(200)에 해당 데이터라벨에 대한 샘플데이터를 제공하여 학습하게 할 수 있다.
도 3을 예시로 설명하면, 엣지서버(100)는 ○△□에 대한 샘플데이터를 데이터베이스에 저장하고 있고, 디바이스#1이 보유하고 있는 데이터셋에 특정 데이터라벨(예를 들어 ○)에 대한 데이터가 포함되지 않는 경우, 엣지서버(100)는 해당 데이터라벨(○)을 보유하고 있지 않은 디바이스#1에 해당 데이터라벨에 대한 샘플데이터(○)를 송신할 수 있다. 디바이스#1은 엣지서버(100)로부터 수신한 최적학습데이터정보에 기초하여 로컬데이터셋을 재구성함에 있어 엣지서버(100)로부터 수신한 샘플데이터를 추가하여 로컬데이터셋을 재구성하고, 로컬모델을 학습시켜 업데이트할 수 있다.
도 4는 본 발명의 일 실시예에 따른 데이터 샘플링 기술이 데이터셋의 크기 및 분포를 고려하여 재구성된 데이터셋으로 학습을 수행하는 과정을 도시한 것이다.
도 4는 데이터 샘플링 기술의 일례로서 이미지데이터에 객체에 대한 정보를 라벨링하는 학습모델을 예시로 설명한다. 도 4의 (a)에 도시된 바와 같이, 디바이스(200)는 개, 고양이, 및 새에 대한 8개의 이미지 데이터를 로컬데이터셋으로 보유하고 있다. 기존의 연합학습 방식에서는 디바이스(200)가 보유하고 있는 전체 로컬데이터셋에 대하여 학습을 수행하였다. 즉 전체 이미지데이터에 대하여 개, 고양이, 및 새에 대한 정보를 라벨링하는 학습을 수행하였다.
한편, 도 4의 (b)에 도시된 바와 같이, 본원 발명의 데이터 샘플링 기술에서는 디바이스(200)가 보유하고 있는 로컬데이터셋을 재구성하고, 재구성된 로컬데이터셋만으로 학습을 수행할 수 있다. 즉, 디바이스(200)는 전체 이미지데이터(8개 이미지데이터)를 학습에 수행되어야 할 이미지데이터(4개 이미지데이터)만으로 재구성하여, 데이터크기가 경감된 로컬데이터셋으로 학습을 수행할 수 있다.
이하의 도 5에서 도 12에서는 본원 발명의 데이터 샘플링 기술이 수행하는 단계를 보다 구체적으로 설명한다.
도 5는 본 발명의 일 실시예에 따른 엣지서버(100)에 의해 학습에 필요한 초기글로벌모델(110)을 디바이스(200)로 송신하는 단계를 개략적으로 도시한 것이다.
도 5에 도시된 바와 같이, 초기상태에서 엣지서버(100)는 각각의 디바이스(200)로 데이터셋학습에 필요한 글로벌모델(110)을 송신할 수 있다. 구체적으로 초기상태에서 각각의 디바이스(200.1, 200.2, 및 200.3, 이하 200)는 로컬모델을 포함하지 않거나, 초기 상태의 로컬모델이 입력되어 있을 수 있다. 각각의 디바이스(200)는 엣지서버(100)로부터 수신한 글로벌모델(110)로 기존의 로컬모델을 업데이트하거나 학습모델을 신규 입력할 수 있다.
또한 각각의 디바이스(200)가 엣지서버로부터 수신하는 글로벌모델(110)은 동일한 학습모델임이 바람직하다.
도 6는 본 발명의 일 실시예에 따른 디바이스(200)에 의해 로컬데이터셋의 크기 및 분포에 대한 로컬데이터셋라벨링정보를 엣지서버(100)로 송신하는 단계를 개략적으로 도시한 것이다.
도 6에 도시된 바와 같이, 각각의 디바이스(200)는 엣지서버(100)로 로컬데이터셋라벨링정보를 송신할 수 있다. 구체적으로 각각의 디바이스(200)는 디바이스(200)별로 상이한 로컬데이터셋을 보유하고 있고, 상기 로컬데이터셋에 대하여 데이터라벨별 크기 및 분포에 대한 정보가 라벨링되어 있는 로컬데이터셋라벨링정보를 엣지서버(100)로 송신할 수 있다.
예를 들어, 도 6에서 디바이스#1(200.1)이 엣지서버(100)로 송신하는 로컬데이터셋라벨링정보는 (○ 2개 △ 2개 □ 3개)와 같은 형태일 수 있다.
도 7은 본 발명의 일 실시예에 따른 엣지서버(100)에 의해 데이터샘플링알고리즘을 수행하여 최적학습데이터정보를 도출하고 디바이스(200)로 송신하는 단계를 개략적으로 도시한 것이다.
도 7에 도시된 바와 같이, 엣지서버(100)는 각각의 디바이스(200)로부터 수신한 로컬데이터셋라벨링정보에 기초하여 데이터샘플링알고리즘을 수행하고, 각각의 디바이스(200)별로 최적학습데이터정보를 도출할 수 있다.
구체적으로 도 7의 경우 엣지서버(100)는 각각의 디바이스(200)로부터 수신한 로컬데이터셋라벨링정보에 기초하여 학습효율성이 최대가 되는 전체 데이터셋에 대한 데이터라벨별 크기(도 7에서 ○ 5개 △ 4개 □ 5개로 가정)를 도출할 수 있다.
이어서 엣지서버(100)는 도출된 전체 데이터셋에 대한 데이터라벨별 크기를 각각의 디바이스(200)가 송신한 로컬데이터셋라벨링정보에 기초하여 디바이스(200)별로 분류하여 디바이스(200)별 최적학습데이터정보(도 8의 디바이스#1의 재구성된 로컬데이터셋 ○ 2개 △ 1개 □ 2개, 디바이스#2의 재구성된 로컬데이터셋 ○ 1개 △ 2개 □ 1개, 디바이스#3의 재구성된 로컬데이터셋 ○ 2개 △ 1개 □ 2개)를 도출할 수 있다.
도 8은 본 발명의 일 실시예에 따른 디바이스(200)에 의해 최적학습데이터정보에 기초하여 로컬데이터셋을 재구성하는 단계를 개략적으로 도시한 것이다.
도 8에 도시된 바와 같이 각각의 디바이스(200)는 엣지서버(100)로부터 수신한 최적학습데이터정보에 기초하여 보유하고 있는 로컬데이터셋을 재구성할 수 있다. 구체적으로 디바이스#1(200.1)가 초기에 보유하고 있는 로컬데이터셋은 ○ 2개 △ 2개 □ 3개이고, 디바이스#1(200.1)은 해당 로컬데이터셋을 재구성하여 ○ 2개 △ 1개 □ 2개로 재구성하였다.
디바이스#2(200.2) 및 디바이스#3(200.3) 또한 동일하게 각각의 디바이스(200)가 보유하고 있는 로컬데이터셋을 재구성하였다.
상기와 같이 각각의 디바이스(200)가 보유하고 있는 로컬데이터셋을 학습에 사용되는 로컬데이터셋으로 재구성함으로써 데이터 크기를 경감하여 자원효율적으로 학습을 수행할 수 있다.
도 9는 본 발명의 일 실시예에 따른 디바이스(200)에 의해 재구성된 로컬데이터셋으로 학습하고 로컬모델을 업데이트하는 단계를 개략적으로 도시한 것이다.
도 9에 도시된 바와 같이 각각의 디바이스(200)는 재구성된 로컬데이터셋을 로컬모델에 입력하여 로컬모델을 업데이트할 수 있다. 구체적으로 학습이 수행되기 전 각각의 디바이스(200)에 포함되는 로컬모델은 초기모델송신단계(S10)에서 엣지서버(100)로부터 수신한 글로벌모델(110)로 동일할 수 있으나, 로컬학습단계(S16)에서 각각의 디바이스(200)가 보유하고 있는 상이한 로컬데이터셋으로 학습함으로써 각각의 디바이스(200)별로 상이한 로컬모델로 업데이트될 수 있다.
또한 로컬모델 학습과정에서 정확도 및 학습시간에 대한 학습결과가 도출되어 각각의 디바이스(200)에 저장될 수 있다. 상술한 바와 같이 각각의 디바이스(200)별로 상이한 로컬데이터셋으로 학습함으로써 도출되는 학습결과 또한 상이할 수 있다.
한편, 본 발명의 일 실시예서 각각의 디바이스(200)는 도출된 학습결과에 기초하여 각각의 디바이스(200)에 대한 장치학습효율성을 도출할 수 있다. 각각의 디바이스(200)가 도출한 장치학습효율성은 엣지서버(100)로 송신되어 전체 시스템에 대한 전체학습효율성을 도출하는 데 사용될 수 있다.
도 10은 본 발명의 일 실시예에 따른 엣지서버(100)에 의해 업데이트된 로컬모델과 정확도 및 학습시간에 대한 학습결과를 엣지서버(100)로 송신하는 단계를 개략적으로 도시한 것이다.
도 10에 도시된 바와 같이 각각의 디바이스(200)는 엣지서버(100)로 업데이트된 로컬모델(210.1, 210.2, 및 210.3) 및 학습결과를 송신할 수 있다.
또한 본 발명의 일 실시예에서는 각각의 디바이스(200)에서 도출된 장치학습효율성이 엣지서버(100)로 송신될 수 있다.
도 11은 본 발명의 일 실시예에 따른 엣지서버(100)에 의해 글로벌모델(110)을 업데이트하는 단계를 개략적으로 도시한 것이다.
도 11에 도시된 바와 같이 엣지서버(100)는 각각의 디바이스(200)로부터 수신한 각각의 업데이트된 로컬모델(210.1, 210.2, 및 210.3)를 합계하여 글로벌모델(110.1)을 업데이트할 수 있다. 구체적으로 초기의 글로벌모델(110.1)은 초기모델송신단계(S10)에서 엣지서버(100)가 각각의 디바이스(200)로 송신한 글로벌모델(110)이고, 업데이트된 글로벌모델(110.2)은 각각의 디바이스(200)로부터 수신한 각각의 업데이트된 로컬모델(210.1, 210.2, 및 210.3)를 합계하여 새롭게 업데이트된 글로벌모델(110.2)이다.
바람직하게는 업데이트된 글로벌모델(110.2)은 초기의 글로벌모델(110.1)에 대비하여 학습에 대한 정확도가 향상된 학습모델일 수 있다.
한편, 엣지서버(100)는 각각의 디바이스(200)로부터 수신한 학습결과에 기초하여 학습효율성을 도출할 수 있다. 구체적으로 각각의 디바이스(200)의 로컬모델이 학습을 수행함에 따라 도출되는 학습결과에 기초하여 각각의 디바이스(200)에 대한 장치학습효율성을 도출하고, 상기 각각의 디바이스(200)에 대한 장치학습효율성을 합산하여 전체 시스템에 대한 전체학습효율성을 도출할 수 있다.
또는, 본 발명의 다른 실시예에서, 각각의 디바이스(200)가 학습을 수행함에 따라 도출되는 학습결과에 기초하여 장치학습효율성을 도출하여 엣지서버(100)로 송신하고, 엣지서버(100)는 상기 장치학습효율성을 합산하여 전체 시스템에 대한 전체학습효율성을 도출할 수 있다.
상기와 같이 본원 발명의 데이터 샘플링 기술은 엣지서버(100) 또는 디바이스(200)에서 학습효율성을 도출하고 학습 정확도가 최대가 되는 반복횟수를 결정할 수 있다. 구체적으로 본원 발명의 데이터 샘플링 기술은 로컬모델에서 학습을 수행하고 글로벌모델(110) 및 로컬모델을 업데이트하는 과정을 반복 수행할 수 있고, 각 수행 회차별로 전체 시스템에 대한 학습효율성 및 학습결과를 도출하여 학습 정확도가 최대가 되는 수행 횟수를 결정할 수 있고, 결과적으로 최댓값을 갖는 학습효율성에 해당하는 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다.
결과적으로 본원 발명의 데이터 샘플링 기술은 복수 회 수행되어 각각의 디바이스별로 최댓값을 갖는 학습효율성에 해당하는 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다. 또한 각각의 디바이스가 최댓값을 갖는 학습효율성을 가짐에 따라 엣지서버도 최댓값을 갖는 학습효율성을 가질 수 있다.
도 12는 본 발명의 일 실시예에 따른 엣지서버(100)에 의해 업데이트된 글로벌모델(110.2)을 디바이스(200)로 송신하는 단계를 개략적으로 도시한 것이다.
도 12에 도시된 바와 같이 엣지서버(100)는 업데이트된 글로벌모델(110.2)을 각각의 디바이스(200)로 송신하고, 각각의 디바이스(200)는 엣지서버(100)로부터 수신한 업데이트된 글로벌모델(110.2)로 로컬모델을 업데이트할 수 있다.
구체적으로 도 12의 초기상태에서 각각의 디바이스(200)에 포함되어 있는 로컬모델(210.1, 210.2, 및 210.3)은 로컬학습단계(S16)에서 각각의 디바이스(200)가 학습을 수행하여 업데이트된 로컬모델(도 8의 210.1, 210.2, 및 210.3)이고, 해당 로컬모델을 엣지서버(100)로부터 수신한 업데이트된 글로벌모델(110.2)로 업데이트할 수 있다.
도 13은 본 발명의 일 실시예에 따른 학습효율성이 최대가 되는 횟수를 결정하는 방법에 대한 도면이다.
상술한 바와 같이 본원 발명의 데이터 샘플링 기술은 로컬모델에서 학습을 수행하고 글로벌모델(110) 및 로컬모델을 업데이트하는 과정을 반복 수행할 수 있다. 한편, 학습모델에 의한 학습이 반복 수행됨에 따라 시간에 대비한 학습모델의 정확도 향상률인 학습효율성이 감소할 수 있다.
따라서, 본원 발명의 데이터 샘플링 기술은 각 수행 회차별로 학습효율성을 도출하여 학습효율성이 최대가 되는 수행 횟수를 결정하여, 최댓값을 갖는 학습효율성에 해당하는 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다.
구체적으로 학습모델의 정확도가 기설정된 목표값에 도달할 때 까지, N회(N은 1 이상의 자연수) 이상 반복 수행되거나 기설정된 횟수로 M회(M은 2 이상의 자연수) 수행되어, 1 내지 M회 별로 도출된 학습효율성 가운데 최댓값을 갖는 학습효율성에 해당하는 횟수를 결정하고, 최댓값을 갖는 학습효율성에 해당하는 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다.
도 13에 도시된 바와 같이 본원 발명의 데이터 샘플링 기술은 수행 횟수에 따라 학습효율성을 도출할 수 있다. 구체적으로 학습효율성은 각각의 디바이스(200)별로 도출된 장치학습효율성 또는 전체 시스템에 대한 전체학습효율성일 수 있으나, 각각의 디바이스가 최댓값을 갖는 학습효율성을 가짐에 따라 엣지서버도 최댓값을 갖는 학습효율성을 가질 수 있으므로 이하에서는 전체 시스템에 대한 전체학습효율성을 기준으로 설명한다.
도 13에 (a)에 도시된 바와 같이, 본원 발명의 데이터 샘플링 기술은 학습 정확도에 대한 목표값을 설정하고, 학습 정확도가 기설정된 목표값에 도달할 때 까지, N회(N은 1 이상의 자연수) 이상 반복 수행할 수 있다. 구체적으로 전체 시스템에 대한 학습 정확도가 기설정된 목표값에 도달하는 경우, 학습을 중단하고 최종 회차(N회차)에서 도출된 글로벌모델(110)을 학습효율이 가장 우수한 학습모델로 결정할 수 있다.
또는 도 13에 (b)에 도시된 바와 같이, 본원 발명의 데이터 샘플링 기술은 기설정된 횟수로 M회(M은 2 이상의 자연수) 수행되어, 1 내지 M회 별로 도출된 학습효율성 가운데 최댓값을 갖는 학습효율성에 해당하는 횟수를 결정할 수 있다. 구체적으로 학습을 수행하는 횟수를 설정하고 수행 회차별로 학습효율성을 도출하여, 각각의 회차별로 도출된 학습효율성 가운데 최댓값을 갖는 횟수를 결정할 수 있다.
상기와 같은 방식으로 본원 발명의 데이터 샘플링 기술은 학습효율성이 최대가 되는 최적의 수행횟수를 결정함으로써, 학습효율성이 일정 부분 보장되는 범위에서 학습을 중단하여, 학습효율성이 감소함에도 학습이 반복수행 되는 것을 방지할 수 있다.
결과적으로, 본원 발명의 데이터 샘플링 기술은 학습효율성이 최대가 되는 수행횟수 및 해당 회차에서의 로컬데이터셋에 대한 정보를 도출할 수 있다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 각각의 디바이스가 보유하고 있는 데이터셋의 크기 및 분포에 대한 로컬데이터셋라벨링정보를 고려하여 각각의 디바이스가 학습해야 할 로컬데이터셋에 대한 최적학습데이터정보를 도출함으로써 전체 학습시스템의 학습효율성을 향상할 수 있다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 각각의 디바이스가 보유하고 있는 로컬데이터셋을 학습에 수행되는 로컬데이터셋으로 재구성함으로써 자원효율적으로 학습을 수행할 수 있다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 학습시간에 대비한 학습모델의 정확도 향상률로서 각각의 디바이스에 대한 장치학습효율성 및 전체 시스템에 대한 전체학습효율성을 도출할 수 있다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 글로벌모델의 정확도가 기설정된 목표값에 도달할 때까지 반복 수행하여 글로벌모델의 정확도가 기설정된 목표값에 도달하는 횟수를 결정하고, 해당 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다.
본 발명의 일 실시예에 따르면, 연합학습 데이터 샘플링 기술의 구현방법은 로컬장치에 의한 학습을 반복 수행하고, 수행 라운드에서 학습효율성이 최대가 되는 횟수를 결정하고, 해당 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출할 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (9)

  1. 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법으로서,
    1 이상의 디바이스에 데이터셋 학습에 필요한 글로벌모델을 송신하는 초기모델송신단계;
    상기 1 이상의 디바이스 각각으로부터 해당 디바이스가 보유한 로컬데이터셋의 크기 및 분포에 대한 정보가 라벨링된 로컬데이터셋라벨링정보를 수신하는 로컬데이터셋라벨링정보수신단계;
    상기 로컬데이터셋라벨링정보에 기초하여 각각의 디바이스별로 학습에 사용될 데이터셋의 크기 및 분포에 대한 최적학습데이터정보를 도출하는 데이터샘플링알고리즘을 수행하여, 상기 각각의 디바이스로 상기 최적학습데이터정보를 송신하는 최적학습데이터정보도출단계;
    상기 1 이상의 디바이스로 하여금 상기 최적학습데이터정보를 반영하여 학습에 사용할 로컬데이터셋을 재구성하도록 명령하는 데이터재구성단계;
    상기 1 이상의 디바이스에 재구성된 로컬데이터셋으로 학습하여 업데이트된 로컬모델을 생성하고 정확도 및 학습시간에 대한 학습결과를 도출하도록 명령하는 로컬학습단계;
    상기 1 이상의 디바이스 각각으로부터 상기 업데이트된 로컬모델 및 상기 학습결과를 수신하는 학습결과수신단계;
    상기 각각의 디바이스로부터 수신한 상기 업데이트된 로컬모델을 글로벌모델에 합계하여 업데이트하고, 상기 학습결과를 반영하여 정확도 및 학습시간에 대한 학습효율성을 도출하는 글로벌모델업데이트단계; 및
    업데이트된 글로벌모델을 상기 1 이상의 디바이스 각각으로 송신하고, 상기 1 이상의 디바이스에 로컬모델을 상기 업데이트된 글로벌모델로 업데이트하도록 명령하는 로컬모델업데이트단계;를 포함하고,
    상기 연합학습 데이터 샘플링 기술의 구현방법은 복수 회 반복수행되고,
    상기 데이터샘플링알고리즘은,
    해당 회차에서 각각의 디바이스로부터 수신한 로컬데이터셋라벨링정보, 이전회차에서 각각의 디바이스로부터 수신한 학습시간 및 정확도 향상률에 대한 학습결과에 기초하여 디바이스의 학습효율성이 최대가 되는 데이터라벨별 데이터 크기를 도출하고, 상기 데이터라벨별 데이터 크기를 각각의 디바이스가 보유하고 있는 로컬데이터셋라벨링정보의 데이터라벨별 분포에 기초하여 분류하여, 각각의 디바이스별로 해당 디바이스가 학습해야 될 데이터라벨별 데이터 크기인 최적학습데이터정보를 도출하는, 연합학습 데이터 샘플링 기술의 구현방법.
  2. 청구항 1에 있어서,
    상기 로컬데이터셋라벨링정보는,
    디바이스가 보유하고 있는 로컬데이터셋에 대하여 데이터라벨별 분포 및 데이터의 크기가 라벨링된 정보인, 연합학습 데이터 샘플링 기술의 구현방법.
  3. 삭제
  4. 청구항 1에 있어서,
    상기 데이터샘플링알고리즘은,
    전체 데이터셋 또는 각각의 디바이스가 보유하는 로컬데이터셋에 대한 학습효율성이 최대가 되는 데이터라벨별 데이터 크기를 도출하는, 연합학습 데이터 샘플링 기술의 구현방법.
  5. 청구항 1에 있어서,
    상기 학습효율성은,
    각각의 디바이스의 학습시간에 대비한 학습모델의 정확도 향상률인 장치학습효율성(
    Figure 112022007612802-pat00009
    ), 및 각각의 디바이스에 대한 상기 장치학습효율성을 합산하여 결정되는 전체학습효율성 (
    Figure 112022007612802-pat00010
    )을 포함하고,
    상기 장치학습효율성은
    Figure 112022007612802-pat00011
    로 결정되고, 상기 전체학습효율성은
    Figure 112022007612802-pat00012
    로 결정되고, An(r)은 해당 라운드 r에서의 장치 n에 대한 정확도이고, Tn(r)은 해당 라운드 r에서 장치 n이 학습에 소요되는 시간인, 연합학습 데이터 샘플링 기술의 구현방법.
  6. 청구항 1에 있어서,
    상기 연합학습 데이터 샘플링 기술의 구현방법은,
    학습 정확도가 기설정된 목표값에 도달할 때 까지, N회(N은 2 이상의 자연수) 이상 반복 수행되는, 연합학습 데이터 샘플링 기술의 구현방법.
  7. 청구항 1에 있어서,
    상기 연합학습 데이터 샘플링 기술의 구현방법은,
    기설정된 횟수로 M회(M은 2 이상의 자연수) 수행되어, 1 내지 M회 별로 도출된 학습효율성 가운데 최댓값을 갖는 학습효율성에 해당하는 횟수를 결정하고, 최댓값을 갖는 학습효율성에 해당하는 회차에 대한 로컬데이터셋의 크기 및 분포에 대한 정보를 도출하는, 연합학습 데이터 샘플링 기술의 구현방법.
  8. 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법을 수행하는 엣지서버로서,
    1 이상의 디바이스에 데이터셋 학습에 필요한 글로벌모델을 송신하는 초기모델송신단계;
    상기 1 이상의 디바이스 각각으로부터 해당 디바이스가 보유한 로컬데이터셋의 크기 및 분포에 대한 정보가 라벨링된 로컬데이터셋라벨링정보를 수신하는 로컬데이터셋라벨링정보수신단계;
    상기 로컬데이터셋라벨링정보에 기초하여 각각의 디바이스별로 학습에 사용될 데이터셋의 크기 및 분포에 대한 최적학습데이터정보를 도출하는 데이터샘플링알고리즘을 수행하여, 상기 각각의 디바이스로 상기 최적학습데이터정보를 송신하는 최적학습데이터정보도출단계;
    상기 1 이상의 디바이스로 하여금 상기 최적학습데이터정보를 반영하여 학습에 사용할 로컬데이터셋을 재구성하도록 명령하는 데이터재구성단계;
    상기 1 이상의 디바이스에 재구성된 로컬데이터셋으로 학습하여 업데이트된 로컬모델을 생성하고 정확도 및 학습시간에 대한 학습결과를 도출하도록 명령하는 로컬학습단계;
    상기 1 이상의 디바이스 각각으로부터 상기 업데이트된 로컬모델 및 상기 학습결과를 수신하는 학습결과수신단계;
    상기 각각의 디바이스로부터 수신한 상기 업데이트된 로컬모델을 글로벌모델에 합계하여 업데이트하고, 학습결과를 반영하여 정확도 및 학습시간에 대한 학습효율성을 도출하는 글로벌모델업데이트단계; 및
    업데이트된 글로벌모델을 상기 1 이상의 디바이스 각각으로 송신하고, 상기 1 이상의 디바이스에 로컬모델을 상기 업데이트된 글로벌모델로 업데이트하도록 명령하는 로컬모델업데이트단계;를 수행하고,
    상기 엣지서버는 상기 초기모델송신단계, 로컬데이터셋라벨링정보수신단계, 최적학습데이터정보도출단계, 데이터재구성단계, 로컬학습단계, 학습결과수신단계, 글로벌모델업데이트단계, 및 로컬모델업데이트단계를 복수 회 반복수행하고,
    상기 데이터샘플링알고리즘은,
    해당 회차에서 각각의 디바이스로부터 수신한 로컬데이터셋라벨링정보, 이전회차에서 각각의 디바이스로부터 수신한 학습시간 및 정확도 향상률에 대한 학습결과에 기초하여 디바이스의 학습효율성이 최대가 되는 데이터라벨별 데이터 크기를 도출하고, 상기 데이터라벨별 데이터 크기를 각각의 디바이스가 보유하고 있는 로컬데이터셋라벨링정보의 데이터라벨별 분포에 기초하여 분류하여, 각각의 디바이스별로 해당 디바이스가 학습해야 될 데이터라벨별 데이터 크기인 최적학습데이터정보를 도출하는, 엣지서버.
  9. 1 이상의 프로세스 및 1 이상의 메모리를 갖는 컴퓨팅장치에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법을 구현하기 위한 컴퓨터-판독가능매체로서, 상기 컴퓨터-판독가능매체는, 컴퓨팅장치로 하여금 이하의 단계들을 수행하도록 하는 명령들을 저장하며, 상기 이하의 단계들은,
    1 이상의 디바이스에 데이터셋 학습에 필요한 글로벌모델을 송신하는 초기모델송신단계;
    상기 1 이상의 디바이스 각각으로부터 해당 디바이스가 보유한 로컬데이터셋의 크기 및 분포에 대한 정보가 라벨링된 로컬데이터셋라벨링정보를 수신하는 로컬데이터셋라벨링정보수신단계;
    상기 로컬데이터셋라벨링정보에 기초하여 각각의 디바이스별로 학습에 사용될 데이터셋의 크기 및 분포에 대한 최적학습데이터정보를 도출하는 데이터샘플링알고리즘을 수행하여, 상기 각각의 디바이스로 상기 최적학습데이터정보를 송신하는 최적학습데이터정보도출단계;
    상기 1 이상의 디바이스로 하여금 상기 최적학습데이터정보를 반영하여 학습에 사용할 로컬데이터셋을 재구성하도록 명령하는 데이터재구성단계;
    상기 1 이상의 디바이스에 재구성된 로컬데이터셋으로 학습하여 업데이트된 로컬모델을 생성하고 정확도 및 학습시간에 대한 학습결과를 도출하도록 명령하는 로컬학습단계;
    상기 1 이상의 디바이스 각각으로부터 상기 업데이트된 로컬모델 및 상기 학습결과를 수신하는 학습결과수신단계;
    상기 각각의 디바이스로부터 수신한 상기 업데이트된 로컬모델을 글로벌모델에 합계하여 업데이트하고, 학습결과를 반영하여 정확도 및 학습시간에 대한 학습효율성을 도출하는 글로벌모델업데이트단계; 및
    업데이트된 글로벌모델을 상기 1 이상의 디바이스 각각으로 송신하고, 상기 1 이상의 디바이스에 로컬모델을 상기 업데이트된 글로벌모델로 업데이트하도록 명령하는 로컬모델업데이트단계;를 포함하고,
    상기 이하의 단계들은 복수 회 반복수행되고,
    상기 데이터샘플링알고리즘은,
    해당 회차에서 각각의 디바이스로부터 수신한 로컬데이터셋라벨링정보, 이전회차에서 각각의 디바이스로부터 수신한 학습시간 및 정확도 향상률에 대한 학습결과에 기초하여 디바이스의 학습효율성이 최대가 되는 데이터라벨별 데이터 크기를 도출하고, 상기 데이터라벨별 데이터 크기를 각각의 디바이스가 보유하고 있는 로컬데이터셋라벨링정보의 데이터라벨별 분포에 기초하여 분류하여, 각각의 디바이스별로 해당 디바이스가 학습해야 될 데이터라벨별 데이터 크기인 최적학습데이터정보를 도출하는, 컴퓨터-판독가능매체.

KR1020220008712A 2022-01-20 2022-01-20 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법 KR102530115B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220008712A KR102530115B1 (ko) 2022-01-20 2022-01-20 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220008712A KR102530115B1 (ko) 2022-01-20 2022-01-20 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법

Publications (1)

Publication Number Publication Date
KR102530115B1 true KR102530115B1 (ko) 2023-05-08

Family

ID=86381187

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220008712A KR102530115B1 (ko) 2022-01-20 2022-01-20 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법

Country Status (1)

Country Link
KR (1) KR102530115B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017519282A (ja) * 2014-05-12 2017-07-13 クゥアルコム・インコーポレイテッドQualcomm Incorporated 分散モデル学習
KR20220098949A (ko) * 2021-01-05 2022-07-12 한국과학기술원 딥러닝 모델 분산 학습 시스템 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017519282A (ja) * 2014-05-12 2017-07-13 クゥアルコム・インコーポレイテッドQualcomm Incorporated 分散モデル学習
KR20220098949A (ko) * 2021-01-05 2022-07-12 한국과학기술원 딥러닝 모델 분산 학습 시스템 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Moming Duan et al. Self-balancing federated learning with global imbalanced data in mobile systems. IEEE. 2020.* *

Similar Documents

Publication Publication Date Title
US11922308B2 (en) Generating neighborhood convolutions within a large network
US9990558B2 (en) Generating image features based on robust feature-learning
Oh et al. Time-series data augmentation based on interpolation
Jan et al. Deep learning in big data analytics: a comparative study
JP7470476B2 (ja) 蒸留を用いたそれぞれのターゲット・クラスを有するモデルの統合
CN110728317A (zh) 决策树模型的训练方法、***、存储介质及预测方法
US11676043B2 (en) Optimizing hierarchical classification with adaptive node collapses
US11423307B2 (en) Taxonomy construction via graph-based cross-domain knowledge transfer
WO2021248138A1 (en) Learned graph optimizations for compilers
US11538048B1 (en) Predictively identifying activity subscribers
CN113392864A (zh) 模型生成方法及视频筛选方法、相关装置、存储介质
CN114564586A (zh) 一种非结构化敏感数据识别方法及***
US11928182B1 (en) Artificial intelligence system supporting semi-supervised learning with iterative stacking
WO2019180314A1 (en) Artificial neural networks
KR102530115B1 (ko) 엣지서버에서 수행되는 데이터 분포 정보 기반 연합학습 데이터 샘플링 기술의 구현방법
KR102576241B1 (ko) 단백질과 리간드의 결합 구조 예측 방법
KR20230170752A (ko) 기계 학습 모델들의 하드웨어 인식 점진적 훈련
Xia et al. Efficient synthesis of compact deep neural networks
Skënduli et al. Implementing scalable machine learning algorithms for mining big data: a state-of-the-art survey
Varshavardhini et al. An Efficient Feature Subset Selection with Fuzzy Wavelet Neural Network for Data Mining in Big Data Environment.
KR102502441B1 (ko) 소수의 데이터를 이용하여 트레이닝되지 않은 상황에 적응하는 모바일 센싱장치 및 방법
US20220230068A1 (en) Channel scaling: a scale-and-select approach for selective transfer learning
Sun et al. You only label once: A self‐adaptive clustering‐based method for source‐free active domain adaptation
US20230222290A1 (en) Active Learning for Matching Heterogeneous Entity Representations with Language Models
KR102585925B1 (ko) 이미지 기반의 학습 데이터를 수집하기 위한 장치 및 이를 위한 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant