KR20230006033A - 연합 계산 처리 방법, 장치, 전자 기기 및 저장 매체 - Google Patents
연합 계산 처리 방법, 장치, 전자 기기 및 저장 매체 Download PDFInfo
- Publication number
- KR20230006033A KR20230006033A KR1020227045230A KR20227045230A KR20230006033A KR 20230006033 A KR20230006033 A KR 20230006033A KR 1020227045230 A KR1020227045230 A KR 1020227045230A KR 20227045230 A KR20227045230 A KR 20227045230A KR 20230006033 A KR20230006033 A KR 20230006033A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- task
- result
- task identifier
- data processing
- Prior art date
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 107
- 238000003672 processing method Methods 0.000 title claims abstract description 31
- 238000012545 processing Methods 0.000 claims abstract description 184
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000008569 process Effects 0.000 claims abstract description 25
- 230000004927 fusion Effects 0.000 claims description 40
- 238000000638 solvent extraction Methods 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 15
- 238000005516 engineering process Methods 0.000 abstract description 17
- 238000013473 artificial intelligence Methods 0.000 abstract description 7
- 238000013135 deep learning Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 101000822695 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C1 Proteins 0.000 description 1
- 101000655262 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C2 Proteins 0.000 description 1
- 101000655256 Paraclostridium bifermentans Small, acid-soluble spore protein alpha Proteins 0.000 description 1
- 101000655264 Paraclostridium bifermentans Small, acid-soluble spore protein beta Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013502 data validation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 인공 지능 기술분야에 관한 것으로, 특히 빅데이터, 클라우드 컴퓨팅, 딥러닝 기술분야에 관한 연합 계산 처리 방법, 장치, 전자 기기 및 저장 매체를 제공한다. 구체적인 구현수단은, 수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득하고; 각 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하되; 각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성하며; 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리하고; 각 데이터 처리 서비스의 처리 결과에 따라 태스크 식별자에 대응되는 연합 계산 결과를 결정하는 것이다. 이로써, 연합 계산 수행 시, 데이터 병렬 방식을 이용하여 연합 학습의 병렬화를 구현함으로써, 연합 계산 속도를 크게 향상시키고 대규모 데이터 프라이버시 계산 사용을 위해 기술적 실행 가능성을 제공한다.
Description
본 발명은 바이두(百度) 온라인네트워크기술(베이징) 유한회사가 2021년 06월 18일에 제출한, 발명의 명칭이 “연합 계산 처리 방법, 장치, 전자 기기 및 저장 매체”인 중국특허출원 번호 “202110677839.9”의 우선권을 주장한다.
본 발명은 인공 지능 기술분야에 관한 것으로, 특히 빅데이터, 클라우드 컴퓨팅, 딥러닝 기술분야에 관한 것이며, 구체적으로 연합 계산 처리 방법, 장치, 전자 기기 및 저장 매체에 관한 것이다.
연합 계산은 다자간 보안 계산(Multi-Party Computation, MPC), 신뢰 실행 환경(Trusted Execution Environment, TEE), 연합 학습(Federated Learning, FL)과 같은 프라이버시 보안 기술을 사용하여 다자간 데이터 보안 협력을 위해 데이터의 사용할 수 있지만 볼 수 없는 데이터 분석 환경을 제공하는 것을 의미한다. 유통 과정에서 데이터의 프라이버시와 보안에 중요한 영향을 미치고 있다.
연합 계산의 성능을 향상시키는 방법은 시급히 해결해야 할 문제이다.
본 발명은 연합 계산 처리 방법, 장치, 전자 기기 및 저장 매체를 제공한다.
본 발명의 일 양태에 따르면,
수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득하는 단계;
각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하되, 여기서 n은 1보다 큰 양의 정수인 단계;
각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성하는 단계;
상기 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 상기 데이터 처리 서비스를 이용하여 각 상기 데이터 세트를 처리하는 단계; 및,
각 상기 데이터 처리 서비스의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정하는 단계;를 포함하는 연합 계산 처리 방법이 제공된다.
본 발명의 다른 양태에 따르면,
수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득하는 획득 모듈;
각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하되, 여기서 n은 1보다 큰 양의 정수인 분할 모듈;
각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성하는 생성 모듈;
상기 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 상기 데이터 처리 서비스를 이용하여 각 상기 데이터 세트를 처리하는 처리 모듈; 및,
각 상기 데이터 처리 서비스의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정하는 결정 모듈;을 포함하는 연합 계산 처리 장치가 제공된다.
본 발명의 다른 양태에 따르면,
적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서에 통신 연결되는 메모리;를 포함하되, 여기서,
상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되고, 상기 명령은 상기 적어도 하나의 프로세서에 의해 실행되어 상기 적어도 하나의 프로세서가 상기 일 양태의 실시예에 따른 연합 계산 처리 방법을 수행할 수 있도록 하는 전자 기기가 제공된다.
본 발명의 다른 양태에 따르면, 컴퓨터 명령이 저장된 비일시적 컴퓨터 판독 가능 저장 매체가 제공되며, 여기서 상기 컴퓨터 명령은 상기 컴퓨터가 상기 일 양태의 실시예에 따른 연합 계산 처리 방법을 수행하도록 하는데 사용된다.
본 발명의 다른 양태에 따르면, 컴퓨터 프로그램을 포함한 컴퓨터 프로그램 제품이 제공되며, 상기 컴퓨터 프로그램이 프로세서에 의해 실행될 경우, 상기 일 양태의 실시예에 따른 연합 계산 처리 방법을 구현한다.
본 부분에서 설명된 내용은 본 발명의 실시예의 핵심 또는 중요한 특징을 식별하기 위한 것이 아니며, 본 발명의 범위를 한정하려는 의도도 아님을 이해해야 할 것이다. 본 발명의 다른 특징은 아래 설명에 의해 쉽게 이해될 것이다.
본 발명의 실시예에서, 수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득하고, 각 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득한 후, 각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성하며, 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리하고, 마지막에 각 데이터 처리 서비스의 처리 결과에 따라 태스크 식별자에 대응되는 연합 계산 결과를 결정한다. 이로써, 연합 계산 수행 시, 데이터 병렬 방식을 이용하여 연합 학습의 병렬화를 구현함으로써, 연합 계산 속도를 크게 향상시키고 대규모 데이터 프라이버시 계산 사용을 위해 기술적 실행 가능성을 제공한다.
도면은 본 해결수단을 더 잘 이해하기 위한 것으로, 본 발명을 한정하는 것으로 구성되지 않는다.
도 1은 본 발명의 실시예에서 제공된 연합 계산 처리 방법의 흐름 모식도이다.
도 2는 본 발명의 실시예에서 제공된 해시 버킷의 데이터 분할의 모식도이다.
도 3은 본 발명의 실시예에서 제공된 순차적 버킷의 데이터 분할의 모식도이다.
도 4는 본 발명의 실시예에서 제공된 다른 연합 계산 처리 방법의 흐름 모식도이다.
도 5는 본 발명의 실시예에서 제공된 연합 계산 플랫폼의 아키텍처 모식도이다.
도 6은 본 발명의 실시예에서 제공된 다른 연합 계산 처리 방법의 흐름 모식도이다.
도 7은 본 발명의 실시예에서 제공된 다른 연합 계산 플랫폼의 아키텍처 모식도이다.
도 8은 본 발명의 실시예에서 제공된 연합 계산 처리 장치의 구조 모식도이다.
도 9는 본 발명의 실시예의 연합 계산 처리 방법을 구현하기 위한 전자 기기의 블록도이다.
도 1은 본 발명의 실시예에서 제공된 연합 계산 처리 방법의 흐름 모식도이다.
도 2는 본 발명의 실시예에서 제공된 해시 버킷의 데이터 분할의 모식도이다.
도 3은 본 발명의 실시예에서 제공된 순차적 버킷의 데이터 분할의 모식도이다.
도 4는 본 발명의 실시예에서 제공된 다른 연합 계산 처리 방법의 흐름 모식도이다.
도 5는 본 발명의 실시예에서 제공된 연합 계산 플랫폼의 아키텍처 모식도이다.
도 6은 본 발명의 실시예에서 제공된 다른 연합 계산 처리 방법의 흐름 모식도이다.
도 7은 본 발명의 실시예에서 제공된 다른 연합 계산 플랫폼의 아키텍처 모식도이다.
도 8은 본 발명의 실시예에서 제공된 연합 계산 처리 장치의 구조 모식도이다.
도 9는 본 발명의 실시예의 연합 계산 처리 방법을 구현하기 위한 전자 기기의 블록도이다.
이하, 첨부된 도면을 결부하여 본 발명의 예시적 실시예를 설명하되, 여기에는 이해를 돕기 위한 본 발명의 실시예의 다양한 세부 사항이 포함되며, 이는 단지 예시적인 것으로 간주되어야 한다. 따라서, 당업자라면 본 발명의 범위와 사상을 벗어나지 않으면서, 여기서 설명되는 실시예에 대한 다양한 변경과 수정이 이루어질 수 있음을 이해해야 할 것이다. 마찬가지로, 명확성 및 간결성을 위해, 아래의 설명에서 공지된 기능과 구조에 대한 설명을 생략한다.
아래에 도면을 참조하여 본 발명의 실시예의 연합 계산 처리 방법, 장치, 전자 기기 및 저장 매체를 설명한다.
인공 지능은 컴퓨터로 인간의 특정 사유 과정과 지능적 행동(예를 들어, 학습, 추론, 사고, 계획 등)을 시뮬레이션하도록 연구하는 학문으로, 하드웨어 수준의 기술과 소프트웨어 수준의 기술을 모두 갖는다. 인공 지능 하드웨어 기술에는 일반적으로 센서, 전용 인공 지능 칩, 클라우드 컴퓨팅, 분산 저장, 빅데이터 처리와 같은 기술이 포함되고; 인공 지능 소프트웨어 기술에는 컴퓨터 비전 기술, 음성 인식 기술, 자연어 처리 기술 및 딥러닝, 빅데이터 처리 기술, 지식 그래프 기술과 같은 여러 주요 방향이 포함된다.
클라우드 컴퓨팅은 네트워크를 통해 탄력적으로 확장 가능한 공유 물리 또는 가상 리소스 풀에 액세스하는 것을 의미하며, 리소스에는 서버, 운영 체제, 네트워크, 소프트웨어, 애플리케이션 및 저장 기기 등이 포함되고, 주문형 및 셀프 서비스 방식으로 리소스를 배치하고 관리할 수 있는 기술 시스템이다. 클라우드 컴퓨팅 기술을 통해 인공 지능, 블록체인과 같은 기술 응용, 모델 트레이닝에 효율적이고 강력한 데이터 처리 기능을 제공할 수 있다.
아래 본 발명의 각 실시예를 결합하여 본 발명에서 제공된 연합 계산 처리 방법에 대해 상세하게 설명한다. 본 발명에서 제공된 연합 계산 처리 방법의 수행 주체는 연합 계산 플랫폼이다.
도 1은 본 발명의 실시예에서 제공된 연합 계산 처리 방법의 흐름 모식도이다.
도 1에 도시된 바와 같이, 상기 연합 계산 처리 방법은 하기와 같은 단계를 포함한다.
단계(101)에서, 수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득한다.
여기서, 수행할 태스크 식별자는 특정된 연합 계산 태스크를 유일하게 식별할 수 있는 어느 하나의 식별자일 수 있다.
본 발명에서 연합 계산 플랫폼은 우선 수행할 태스크 식별자를 결정하고, 따라서 각 참여자로부터 수행할 태스크 식별자와 관련된 메타데이터를 획득할 수 있다.
예를 들어, 연합 계산 플랫폼이 수행할 태스크는 음성 인식 모델을 트레이닝하는 것이고 참여자는 A와 B를 포함하며, 여기서 참여자 A 중 음성 인식 모델과 관련된 메타데이터는 a이고 참여자 B 중 음성 인식 모델과 관련된 메타데이터는 b이다. 이로써 연합 계산 플랫폼은 참여자 A로부터 메타데이터 a를 획득하고, 참여자 B로부터 메타데이터 b를 획득할 수 있다.
이해할 수 있는 것은, 연합 계산 플랫폼이 각각의 참여자로부터 획득한 메타데이터는 수행할 태스크 식별자와 관련된 매개 데이터이며, 즉 메타데이터는 각각의 참여자의 자기 소유 데이터의 특성을 기술할 수 있고, 모델 트레이닝과 같은 연합 계산 태스크에 사용되지만 자기 소유 데이터 자체가 아니다.
단계(102)에서, 각 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득한다.
선택적으로, 먼저 상기 수행할 태스크 식별자에 따라 데이터 분할 모드를 결정할 수 있다. 데이터 분할 모드는 해시 버킷 분할 및 순차적 버킷 분할을 포함할 수 있다.
데이터 분할 모드를 결정한 이후, 상기 데이터 분할 모드를 기반으로 각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득할 수 있으며, 여기서 n은 1보다 큰 양의 정수이다.
설명해야 할 것은, 필요에 따라 상이한 유형의 태스크 식별자에 상이한 분할 모드를 구성할 수 있다. 예를 들어, 해시 버킷 분할의 장점은 데이터를 찾고 삽입하는 속도가 매우 빠르며 공간 소모를 줄이는 것이다. 따라서 보안 암호화, 고유 식별, 데이터 검증, 해시 함수, 로드 균형(예를 들어, 일관된 해시) 또는 분산형 캐싱을 수행할 때 해시 버킷 분할을 사용할 수 있다. 특히 두 참여자 데이터 양의 크기가 다른 장면에서, 예를 들어 프라이버시 데이터 인터랙션(PSI) 알고리즘은 반드시 해시 버킷 분할을 사용해야 한다. 순차적 버킷 분할의 장점은 데이터 분할이 더 효율적이고 안정적이라는 것이다. 따라서 데이터 시퀀스가 비교적 균일한 경우 순차적 버킷 분할을 사용할 수 있다.
아래에 도 2를 결합하여 해시 버킷의 데이터 분할에 대해 상세하게 설명한다. 도 2는 본 발명의 실시예에서 제공된 해시 버킷의 데이터 분할의 모식도이다.
도 2에 도시된 바와 같이, 처리할 메타데이터는 {D1, D2, D3, D4, D5, D6}일 수 있고, 처리할 메타데이터에 대해 해시 버킷의 데이터 분할을 수행하여 얻은 데이터 분할 결과는 {[D1, D3, D4], [D2, D5, D6]}일 수 있다. 즉, 처리할 메타데이터를 2개의 작은 데이터 조각으로 분할하고, 해시 버킷 분할은 각 데이터의 고유 식별값에 따라 해시값을 구한 후 대응하는 버킷에 넣기 때문에 얻은 데이터 분할 결과는 처리할 메타데이터의 순서에 따라 분할된 것이 아니다.
아래에 도 3을 결합하여 순차적 버킷의 데이터 분할에 대해 상세하게 설명한다. 도 3은 본 발명의 실시예에서 제공된 순차적 버킷의 데이터 분할의 모식도이다.
도 3에 도시된 바와 같이, 처리할 메타데이터는 {D1, D2, D3, D4, D5, D6}일 수 있고, 처리할 메타데이터에 대해 순차적 버킷의 데이터 분할을 수행하여 얻은 데이터 분할 결과는 {[D1, D2, D3], [D4, D5, D6]}일 수 있다. 이로부터 보다시피, 순차적 버킷 분할은 각 데이터를 순서에 따라 각 버킷에 균일하게 넣는 것을 의미한다.
설명해야 할 것은, 상기 각 참여자에 대응하는 데이터를 n개의 데이터 조각으로 나누는 처리 과정은 각각의 참여자가 단독으로 수행할 수도 있다. 즉 각 참여자는 수행할 태스크 식별자를 기반으로 처리할 메타데이터를 결정하고, 처리할 메타데이터를 결정한 이후, 각 참여자는 각자의 각 메타데이터를 각각 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득한다. 이후 각각의 참여자는 다시 분할된 n개의 데이터 조각을 각각 연합 계산 플랫폼에 동기화하면 된다.
단계(103)에서, 각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성한다.
본 발명에서, 본 발명의 수행 주체는 각 참여자의 n개의 데이터 조각을, 자체를 제외한 다른 참여자에 대응되는 n개의 데이터 조각과 각각 조합하여 n개의 데이터 세트를 생성할 수 있다.
이해할 수 있는 것은, 각 데이터 세트에는 각 참여자의 하나의 데이터 조각이 포함된다.
단계(104)에서, 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리한다.
본 발명에서, 수행할 태스크 식별자에 대응되는 n개의 데이터 세트를 생성한 후, n개의 스레드를 호출하여 n개의 데이터 처리 서비스를 실행하여 각 데이터 세트를 각각 처리함으로써 연합 계산의 속도를 크게 향상시킬 수 있다.
단계(105)에서, 각 데이터 처리 서비스의 처리 결과에 따라 태스크 식별자에 대응되는 연합 계산 결과를 결정한다.
구체적으로, 각 데이터 세트에는 모두 각각 참여한 데이터 조각이 포함되므로, 즉 각 데이터 세트에 따라 얻은 처리 결과는 적은 양의 연합 데이터를 사용하여 연합 계산을 수행하여 얻은 결과인 것으로 간주할 수 있으며, 이후 다수의 처리 결과를 융합하여 연합 데이터의 전량에 대한 연합 계산 후의 계산 결과를 얻을 수 있다.
선택적으로, 다수의 데이터 처리 서비스의 처리 결과를 평균하여 연합 계산 결과를 얻을 수 있거나, 다수의 데이터 처리 서비스의 처리 결과에 대해 가중치 융합하여 연합 계산 결과를 얻을 수 있으며, 본 발명은 이에 대해 한정하지 않는다.
선택적으로, 태스크 식별자에 대응되는 연합 계산 결과를 결정한 후, 또한 상기 연합 계산 결과를 각각의 상기 참여자에 송신할 수 있다.
본 발명의 실시예에서, 수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득하고, 각 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득한 후, 각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성하며, 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리하고, 마지막에 각 데이터 처리 서비스의 처리 결과에 따라 태스크 식별자에 대응되는 연합 계산 결과를 결정한다. 이로써, 연합 계산 수행 시, 데이터 병렬 방식을 이용하여 연합 학습의 병렬화를 구현함으로써, 연합 계산 속도를 크게 향상시키고 대규모 데이터 프라이버시 계산 사용을 위해 기술적 실행 가능성을 제공한다.
상기 분석을 통해 알 수 있다시피, 본 발명에서, 각 데이터 처리 서비스의 처리 결과에 따라 태스크 식별자에 대응되는 연합 계산 결과를 결정할 수 있다. 가능한 일 구현 형태에서, 연합 계산의 과정은 여러 라운드의 반복 업데이트를 필요로 할 수 있으므로, 본 발명에서는 매번 연합 계산 결과를 얻은 후, 상기 태스크 식별자에 대응되는 수렴 조건에 따라 태스크 식별자에 대응되는 태스크가 종료되었는지 여부를 판단하여 연합 계산을 계속 수행할지 여부를 결정할 수 있다. 아래에 도 4를 결합하여 상술한 상황에 대해 설명하며, 도 4는 본 발명의 실시예에서 제공된 다른 연합 계산 처리 방법의 흐름 모식도이다.
도 4에 도시된 바와 같이, 상기 연합 계산 처리 방법은 하기와 같은 단계를 포함한다.
단계(401)에서, 수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득한다.
단계(402)에서, 각 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하되, 여기서 n은 1보다 큰 양의 정수이다.
단계(403)에서, 각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성한다.
단계(404)에서, 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리한다.
본 발명에서, 단계(401) 내지 단계(404)의 구체적인 구현 방식은 본 발명에서 다른 실시예의 상세한 설명을 참조할 수 있으며 여기서 더이상 반복 설명하지 않는다.
단계(405)에서, 각 데이터 처리 서비스에 의해 리턴된 처리 결과를 획득한다.
단계(406)에서, n개의 처리 결과를 융합하여 융합 결과를 획득한다.
본 발명에서, 연합 계산 플랫폼은 도 5에 도시된 아키텍처를 사용할 수 있다. 도 5는 본 발명의 실시예에서 제공된 연합 계산 플랫폼의 아키텍처 모식도이다.
도 5에서, 참여자가 참여자 A 및 참여자 B인 것을 예로 들면, 도 5에 도시된 바와 같이, 참여자 A에 대응되는 처리할 메타데이터는 X이다. 참여자 B에 대응되는 처리할 메타데이터는 Y이다. 수행 주체는 수행할 태스크 식별자를 기반으로 참여자 A 및 참여자 B로부터 X 및 Y를 획득한 후, 데이터 분할(split) 프로그램을 호출하여, X 및 Y에 대해 데이터 분할을 수행할 수 있다. 여기서, split 프로그램은 큰 파일을 많은 작은 파일로 분할할 수 있는 프로그램이다. 여기서 split 프로그램은 X 및 Y를 더 작은 데이터 조각으로 분할하며, 예를 들어 X 및 Y를 각각 분할한 후 참여자 A 및 참여자 B에 대응되는 n개의 데이터 조각을 얻고, 도 5 중의 FLA-0, FLA-1, FLA-…, FLA-n, FLB-0, FLB-1, FLB-…, FLB-n과 같다. 다시 참여자 A 중의 첫 번째 데이터 조각 및 참여자 B 중의 첫 번째 데이터 조각을 조합하여 하나의 데이터 세트를 얻고, 상기 방법에 따라 참여자 A와 참여자 B 중의 데이터 조각을 전부 조합하여 n개의 데이터 세트(FLA-0, FLB-0), (FLA-1, FLB-1), (FLA-…, FLB-…), (FLA-n, FLB-n)을 생성할 때까지 순차적으로 유추한다.
n개의 데이터 세트를 얻은 후, 상기 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 상기 데이터 처리 서비스를 이용하여 각 상기 데이터 세트를 처리할 수 있다. 마지막에 각 데이터 처리 서비스는 얻은 처리 결과를 데이터 융합 서비스에 송신할 수 있으며, 도 5 중의 PSA, PSB와 같이, PSA, PSB에 의해 각각의 데이터 처리 서비스의 처리 결과를 융합하여 태스크 식별자에 대응되는 연합 계산 결과를 생성한다.
본 발명에서, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리하여 n개의 처리 결과를 얻은 후, 대응하는 데이터 취합기를 호출하여, n개의 처리 결과를 융합함으로써 융합 결과를 얻을 수 있다.
이해할 수 있는 것은, 연합 계산 태스크의 지속적인 순환을 방지하기 위해, 본 발명에서, 연합 계산 플랫폼은 각 연합 계산 태스크에 모두 일정한 태스크 종료 조건을 설정함으로써 연합 계산 결과의 충분한 정확성을 보장하면서, 무효 계산의 횟수를 가능한 줄인다. 여기서 태스크 종료 조건은 예를 들어, 계산 횟수, 계산 결과의 정밀도 등 필요에 따라 설정될 수 있고, 본 발명은 이에 대해 한정하지 않는다.
본 발명에서, 매번 연합 계산 후의 융합 결과를 결정한 후, 현재 태스크 종료 조건에 도달하였는지 여부를 판단할 수 있다. 예를 들어, 수행된 연합 계산 횟수에 따라 종료 조건에 도달하였는지 여부를 판단할 수 있다. 또는 현재의 융합 결과와 마지막 연합 계산에 의해 얻은 융합 결과 간의 차이에 따라 태스크 종료 조건에 도달하였는지 여부를 결정할 수 있으며, 본 발명은 이에 대해 한정하지 않는다.
단계(407)에서, 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 융합 결과를 n개의 데이터 처리 서비스에 분배하여 각 데이터 처리 서비스가 융합 결과를 기반으로, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 n개의 처리 결과에 따라 태스크 식별자에 대응되는 연합 계산 결과를 결정한다.
본 발명에서, 먼저 태스크 식별자에 대응되는 태스크가 종료되었는지 여부를 결정할 수 있고, 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 융합 결과를 n개의 데이터 처리 서비스에 분배할 수 있다. 각 데이터 처리 서비스가 융합 결과를 수신한 후, 융합 결과를 기반으로, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리할 수 있다. 이어서, 최근 n개의 처리 결과에 따라 태스크 식별자에 대응되는 연합 계산 결과를 결정할 수 있다.
단계(408)에서, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 융합 결과를 태스크 식별자에 대응되는 연합 계산 결과로 결정한다.
본 발명에서, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 태스크 식별자에 대응되는 태스크가 종료된 후 얻은 융합 결과를 태스크 식별자에 대응되는 연합 계산 결과로 결정할 수 있다.
예를 들어, 태스크 식별자에 대응되는 태스크는 얼굴 인식 모델을 트레이닝하는 것일 수 있고, 트레이닝 횟수는 K회이다. 따라서 연합 계산 플랫폼은 매번 융합 결과를 얻은 후, 수행된 연합 계산 횟수가 K에 도달하였는지 여부를 판단할 수 있고, 수행된 연합 계산 횟수가 K에 도달하지 않으면 태스크가 종료되지 않은 것으로 결정하며, 수행된 연합 계산 횟수가 K에 도달하면 태스크가 종료된 것으로 결정한다.
본 발명의 실시예에서, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리한 후, 각 데이터 처리 서비스에 의해 리턴된 처리 결과를 획득할 수 있고, n개의 처리 결과를 융합하여 융합 결과를 획득하며, 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 융합 결과를 n개의 데이터 처리 서비스에 분배하여 각 데이터 처리 서비스가 융합 결과를 기반으로, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 n개의 처리 결과에 따라 태스크 식별자에 대응되는 연합 계산 결과를 결정하고, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 융합 결과를 태스크 식별자에 대응되는 연합 계산 결과로 결정한다. 이로써, 연합 계산 태스크를 위해 종료를 설정함으로써, 최종 연합 계산 결과의 정확성을 보장하면서 태스크에 대한 무효 계산의 상황을 가능한 방지하여 연합 계산의 속도를 더욱 향상시킨다.
아래 도 6을 결합하여 설명하며, 도 6은 본 발명의 실시예에서 제공된 다른 연합 계산 처리 방법의 흐름 모식도이다.
도 6에 도시된 바와 같이, 상기 연합 계산 처리 방법은 하기와 같은 단계를 포함한다.
단계(601)에서, 수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득한다.
단계(602)에서, 각 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하되, 여기서 n은 1보다 큰 양의 정수이다.
단계(603)에서, 각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성한다.
단계(604)에서, 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리한다.
본 발명에서, 단계(601) 내지 단계(604)의 구체적인 구현 방식은 본 발명에서 다른 실시예의 상세한 설명을 참조할 수 있으며 여기서 더이상 반복 설명하지 않는다.
단계(605)에서, 어느 하나의 데이터 처리 서비스에 의해 리턴된 융합 결과를 획득하되, 여기서 융합 결과는 어느 하나의 데이터 처리 서비스가 각 데이터 처리 서비스의 처리 결과를 융합한 후 생성된 것이다.
본 발명에서, 연합 계산 플랫폼은 도 7에 도시된 바와 같은 아키텍처를 사용할 수 있다. 도 7은 본 발명의 실시예에서 제공된 다른 연합 계산 플랫폼의 아키텍처 모식도이다.
도 7에서, 참여자가 참여자 A 및 참여자 B인 것을 예로 들면, 도 7에 도시된 바와 같이, 참여자 A에 대응되는 처리할 메타데이터는 데이터 A이고, 참여자 B에 대응되는 처리할 메타데이터는 데이터 B이다. 수행 주체는 수행할 태스크 식별자를 기반으로 참여자 A 및 참여자 B로부터 데이터 A 및 데이터 B를 획득한 후, 데이터 분할(split) 프로그램을 호출하여, 데이터 A 및 데이터 B에 대해 데이터 분할을 수행할 수 있다. 여기서, split 프로그램은 큰 파일을 많은 작은 파일로 분할할 수 있는 프로그램이다. 여기서 split 프로그램은 데이터 A 및 데이터 B를 더 작은 데이터 조각으로 분할함으로써, 참여자 A 및 참여자 B에 대응되는 n개의 데이터 조각을 얻을 수 있고, 예를 들어 도 7 중의 WorkerA-0, WorkerA-1, WorkerA-…, WorkerA-n, WorkerB-0, WorkerB-1, WorkerB-…, WorkerB-n과 같다. 다시 참여자 A 중의 첫 번째 데이터 조각 및 참여자 B 중의 첫 번째 데이터 조각을 조합하여 하나의 데이터 세트를 얻고, 상기 방법에 따라 참여자 A와 참여자 B 중의 데이터 조각을 전부 조합하여 n개의 데이터 세트(WorkerA-0, WorkerB-0), (WorkerA-1, WorkerB-1), (WorkerA-…, WorkerB-…), (WorkerA-n, WorkerB-n)을 생성할 때까지 순차적으로 유추한다.
n개의 데이터 세트를 얻은 후, 상기 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 상기 데이터 처리 서비스를 이용하여 각 상기 데이터 세트를 처리할 수 있다. 데이터 처리 서비스가 각 상기 데이터 세트를 처리하는 과정에서, 각 데이터 처리 서비스는 한 번의 데이터 처리 결과를 얻은 후, 상기 처리 결과를 나머지 데이터 처리 서비스에 동기화할 수 있으며, 이로써 각각의 데이터 처리 서비스가 다수의 처리 결과를 기반으로, 자체의 처리 결과를 업데이트하여 융합된 처리 결과를 얻을 수 있도록 한다. 마지막에 각 상기 데이터 처리 서비스에 의해 업데이트된 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정한다.
단계(606)에서, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 융합 결과를 태스크 식별자에 대응되는 연합 계산 결과로 결정한다.
단계(607)에서, 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 융합 결과를 어느 하나의 데이터 처리 서비스에 송신하여 각 데이터 처리 서비스가 융합 결과를 기반으로, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 융합 결과를 태스크 식별자에 대응되는 연합 계산 결과로 결정한다.
본 발명에서, 먼저 태스크 식별자에 대응되는 태스크가 종료되었는지 여부를 결정할 수 있고, 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 융합 결과를 태스크 식별자에 대응되는 태스크에 송신할 수 있다. 어느 하나의 데이터 처리 서비스는 융합 결과를 수신한 후, 융합 결과를 기반으로, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리할 수 있다. 본 발명의 수행 주체는 태스크 식별자에 대응되는 태스크가 종료된 후, 최근 융합 결과를 태스크 식별자에 대응되는 연합 계산 결과로 결정할 수 있다.
단계(608)에서, 연합 계산 결과를 각각의 참여자에 송신한다.
본 발명의 실시예에서, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리한 후, 어느 하나의 데이터 처리 서비스에 의해 리턴된 융합 결과를 획득할 수 있으며, 여기서 융합 결과는 어느 하나의 데이터 처리 서비스가 각 데이터 처리 서비스의 처리 결과를 융합한 후 생성된 것이고, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 융합 결과를 태스크 식별자에 대응되는 연합 계산 결과로 결정하며, 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 융합 결과를 어느 하나의 데이터 처리 서비스에 송신하여 각 데이터 처리 서비스가 융합 결과를 기반으로, 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 융합 결과를 태스크 식별자에 대응되는 연합 계산 결과로 결정한다. 이로써, 연합 계산 태스크를 위해 종료를 설정함으로써, 최종 연합 계산 결과의 정확성을 보장하면서 태스크에 대한 무효 계산의 상황을 가능한 방지하여 연합 계산의 속도를 더욱 향상시킨다.
상기 실시예를 구현하기 위해, 본 발명의 실시예는 연합 계산 처리 장치를 더 제공한다. 도 8은 본 발명의 실시예에서 제공된 연합 계산 처리 장치의 구조 모식도이다.
도 8에 도시된 바와 같이, 상기 연합 계산 처리 장치는 획득 모듈(810), 분할 모듈(820), 생성 모듈(830), 처리 모듈(840) 및 결정 모듈(850)을 포함한다.
획득 모듈은 수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득한다.
분할 모듈은 각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하되, 여기서 n은 1보다 큰 양의 정수이다.
생성 모듈은 각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성한다.
처리 모듈은 상기 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 상기 데이터 처리 서비스를 이용하여 각 상기 데이터 세트를 처리한다.
결정 모듈은 각 상기 데이터 처리 서비스의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정한다.
본 발명의 실시예의 가능한 일 구현방식에서, 상기 분할 모듈(820)은 구체적으로,
상기 수행할 태스크 식별자에 따라 데이터 분할 모드를 결정하고;
상기 데이터 분할 모드를 기반으로 각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득한다.
본 발명의 실시예의 가능한 일 구현방식에서, 상기 결정 모듈(850)은 구체적으로,
각 상기 데이터 처리 서비스에 의해 리턴된 처리 결과를 획득하고;
n개의 상기 처리 결과를 융합하여 융합 결과를 획득하며;
상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 상기 융합 결과를 상기 태스크 식별자에 대응되는 연합 계산 결과로 결정한다.
본 발명의 실시예의 가능한 일 구현방식에서, 상기 결정 모듈(850)은 또한,
상기 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 상기 융합 결과를 n개의 상기 데이터 처리 서비스에 분배하여 각 상기 데이터 처리 서비스가 상기 융합 결과를 기반으로, 상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 n개의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정한다.
본 발명의 실시예의 가능한 일 구현방식에서, 상기 결정 모듈(850)은 구체적으로,
어느 하나의 데이터 처리 서비스에 의해 리턴된 융합 결과를 획득하되, 상기 융합 결과는 상기 어느 하나의 데이터 처리 서비스가 각 상기 데이터 처리 서비스의 처리 결과를 융합한 후 생성된 것이고;
상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 상기 융합 결과를 상기 태스크 식별자에 대응되는 연합 계산 결과로 결정하며;
상기 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 상기 융합 결과를 상기 어느 하나의 데이터 처리 서비스에 송신하여 각 상기 데이터 처리 서비스가 상기 융합 결과를 기반으로, 상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 융합 결과를 상기 태스크 식별자에 대응되는 연합 계산 결과로 결정한다.
본 발명의 실시예의 가능한 일 구현방식에서, 상기 결정 모듈(850)은 또한,
상기 연합 계산 결과를 각각의 상기 참여자에 송신한다.
설명해야 할 것은, 전술한 연합 계산 처리 방법 실시예의 해석 설명도 상기 실시예의 연합 계산 처리 장치에 적용되므로 여기서 더이상 반복 설명하지 않는다.
본 발명의 실시예의 연합 계산 처리 장치는, 수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득하고, 각 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득한 후, 각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성하며, 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리하고, 마지막에 각 데이터 처리 서비스의 처리 결과에 따라 태스크 식별자에 대응되는 연합 계산 결과를 결정한다. 이로써, 연합 계산의 처리를 수행할 경우, 데이터 병렬 방식으로 우선 각 참여자에 대응되는 n개의 데이터 조각을 조합하여 데이터 세트를 생성한 후, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리하여 연합 계산 결과를 획득함으로써, 연합 학습의 병렬화를 구현하여, 계산 속도를 향상시키고 대규모 데이터 프라이버시 계산 사용을 위해 기술적 실행 가능성을 제공한다.
본 발명의 실시예에 따르면, 본 발명은 전자 기기, 판독 가능한 저장 매체 및 컴퓨터 프로그램 제품을 더 제공한다.
도 9는 본 발명의 실시예를 구현하기 위한 예시적인 전자 기기(900)의 예시적 블록도를 도시한다. 전자 기기는 랩톱 컴퓨터, 데스크톱 컴퓨터, 워크 벤치, 개인 정보 단말기, 서버, 블레이드 서버, 메인 프레임 컴퓨터, 및 다른 적합한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 의미한다. 전자 기기는 개인 디지털 처리, 셀룰러 폰, 스마트 폰, 웨어러블 기기 및 다른 유사한 컴퓨팅 장치와 같은 다양한 형태의 모바일 장치를 나타낼 수도 있다. 본 명세서에 개시된 부재, 이들의 연결 및 관계, 및 그 기능은 단지 예시에 불과하며, 본 명세서에 기술되거나 및/또는 요구된 본 발명의 구현을 한정하도록 의도되지 않는다.
도 9에 도시된 바와 같이, 기기(900)는 판독 전용 메모리(Read-Only Memory, ROM)(902)에 저장된 컴퓨터 프로그램 또는 저장 유닛(908)으로부터 랜덤 액세스 메모리(Random Access Memory, RAM)(903)에 로딩된 컴퓨터 프로그램에 따라 다양한 적절한 동작 및 처리를 수행할 수 있는 컴퓨팅 유닛(901)을 포함한다. RAM(903)에서, 또한 기기(900)의 조작에 필요한 다양한 프로그램과 데이터를 저장할 수 있다. 컴퓨팅 유닛(901), ROM(902) 및 RAM (903)은 버스(904)를 통해 서로 연결된다. 입력/출력(Input/Output, I/O) 인터페이스(905)도 버스(904)에 연결된다.
키보드, 마우스 등과 같은 입력 유닛(906); 다양한 유형의 디스플레이, 스피커 등과 같은 출력 유닛(907); 자기 디스크, 광 디스크 등과 같은 저장 유닛(908); 및 네트워크 카드, 모뎀, 무선 통신 트랜시버 등과 같은 통신 유닛(909)을 포함하는 기기(900)의 복수의 부재는 I/O 인터페이스(905)에 연결된다. 통신 유닛(909)은 기기(900)가 인터넷과 같은 컴퓨터 네트워크 및/또는 다양한 통신 네트워크를 통해 다른 기기와 정보/데이터를 교환하도록 허용한다.
컴퓨팅 유닛(901)은 처리 및 컴퓨팅 기능을 갖는 다양한 범용 및/또는 전용 처리 컴포넌트일 수 있다. 컴퓨팅 유닛(901)의 일부 예시는 중앙 처리 유닛(Central Processing Unit, CPU), 그래픽 처리 유닛(Graphic Processing Units, GPU), 다양한 전용 인공지능(Artificial Intelligence, AI) 컴퓨팅 칩, 기계 학습 모델 알고리즘을 실행하는 다양한 컴퓨팅 유닛, 디지털 신호 프로세서(Digital Signal Processor, DSP), 및 임의의 적절한 프로세서, 컨트롤러, 마이크로 컨트롤러 등을 포함하지만 이에 한정되지 않는다. 컴퓨팅 유닛(901)은 연합 계산 처리 방법과 같이 상술한 다양한 방법 및 처리를 수행한다. 예를 들어, 일부 실시예에서, 연합 계산 처리 방법은 저장 유닛(908)과 같은 기계 판독 가능 매체에 유형적으로 포함되는 컴퓨터 소프트웨어 프로그램으로 구현될 수 있다. 일부 실시예에서, 컴퓨터 프로그램의 일부 또는 전부는 ROM(902) 및/또는 통신 유닛(909)을 통해 기기(900)에 로딩 및/또는 설치될 수 있다. 컴퓨터 프로그램이 RAM(903)에 로딩되어 컴퓨팅 유닛(901)에 의해 실행될 경우, 상술한 연합 계산 처리 방법의 하나 이상의 단계를 수행할 수 있다. 대안적으로, 다른 실시예에서, 컴퓨팅 유닛(901)은 다른 임의의 적절한 방식(예를 들어, 펌웨어에 의함)을 통해 연합 계산 처리 방법을 수행하도록 구성될 수 있다.
본문에서 이상 설명된 시스템 및 기술의 다양한 실시형태는 디지털 전자 회로 시스템, 집적 회로 시스템, 필드 프로그래머블 어레이(Field Programmable Gate Array, FPGA), 전용 집적 회로(Application-Specific Integrated Circuit, ASIC), 전용 표준 제품(Application Specific Standard Product, ASSP), 시스텝 온 칩(System On Chip, SOC), 복합 프로그래머블 논리 소자(Complex Programmable Logic Device, CPLD), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합에서 구현될 수 있다. 이러한 다양한 실시형태는 하나 이상의 컴퓨터 프로그램에서 구현되는 것을 포함할 수 있고, 상기 하나 이상의 컴퓨터 프로그램은 적어도 하나의 프로그래머블 프로세서를 포함하는 프로그래머블 시스템에서 실행 및/또는 해석될 수 있으며, 상기 프로그래머블 프로세서는 전용 또는 범용 프로그래머블 프로세서일 수 있고, 저장 시스템, 적어도 하나의 입력장치, 및 적어도 하나의 출력장치로부터 데이터와 명령을 수신하며, 데이터와 명령을 상기 저장 시스템, 상기 적어도 하나의 입력장치, 및 상기 적어도 하나의 출력장치로 전송할 수 있다.
본 발명의 방법을 구현하기 위한 프로그램 코드는 하나 이상의 프로그래밍 언어의 임의의 조합으로 작성될 수 있다. 이러한 프로그램 코드는 범용 컴퓨터, 전용 컴퓨터 또는 다른 프로그래머블 데이터 처리 장치의 프로세서 또는 컨트롤러에 제공되어, 프로그램 코드가 프로세서 또는 컨트롤러에 의해 실행될 경우 흐름도 및/또는 블록도에서 규정된 기능/동작이 구현될 수 있도록 한다. 프로그램 코드는 완전히 기계에서 실행되거나, 부분적으로 기계에서 실행될 수 있으며, 독립형 소프트웨어 패키지로서 부분적으로 기계에서 실행되고 부분적으로 원격 기계에서 실행되거나 완전히 원격 기계 또는 서버에서 실행될 수도 있다.
본 발명의 컨텍스트에서, 기계 판독 가능 매체는 명령 실행 시스템, 장치 또는 기기에 의해 사용되거나 명령 실행 시스템, 장치 또는 기기와 결합되어 사용되는 프로그램을 포함하거나 저장할 수 있는 유형 매체일 수 있다. 기계 판독 가능 매체는 기계 판독 가능 신호 매체이거나 기계 판독 가능 저장 매체일 수 있다. 기계 판독 가능 매체는 전자적, 자기적, 광학적, 전자기적, 적외선, 또는 반도체 시스템, 장치 또는 기기, 또는 상술한 내용의 임의의 적절한 조합을 포함할 수 있지만 이에 한정되지 않는다. 기계 판독 가능 저장 매체의 보다 구체적인 예시는 하나 이상의 와이어를 기반으로 하는 전기적 연결, 휴대형 컴퓨터 디스크, 하드 디스크, RAM, ROM, 소거 가능 및 프로그래머블 읽기 전용 메모리(Electrically Programmable Read-Only-Memory, EPROM) 또는 플래쉬 메모리, 광섬유, 휴대용 컴팩트 읽기 전용 메모리(Compact Disc Read-Only Memory, CD-ROM), 광학 저장 기기, 자기 저장 기기, 또는 상술한 내용의 임의의 적절한 조합을 포함한다.
사용자와의 인터랙션을 제공하기 위해, 컴퓨터에서 여기에 설명된 시스템 및 기술을 구현할 수 있고, 상기 컴퓨터는 사용자에게 정보를 표시하기 위한 디스플레이 장치(예를 들어, 음극선관(cathode ray tube, CRT) 또는 액정표시장치(liquid crystal display, LCD) 모니터)와 키보드 및 포인팅 장치(예를 들어, 마우스 또는 트랙볼)를 구비하며, 사용자는 상기 키보드 및 상기 포인팅 장치를 통해 컴퓨터에 입력을 제공할 수 있다. 다른 종류의 장치를 사용하여 사용자와의 인터랙션을 제공할 수도 있는데 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 센싱 피드백(예를 들어, 시각적 피드백, 청각적 피드백, 또는 촉각적 피드백)일 수 있고; 임의의 형태(사운드 입력, 음성 입력 또는 촉각 입력을 포함함)를 통해 사용자로부터의 입력을 수신할 수 있다.
여기에 설명되는 시스템과 기술은 백엔드 부재를 포함하는 컴퓨팅 시스템(예를 들어, 데이터 서버로 사용됨), 또는 미들웨어 부재를 포함하는 컴퓨팅 시스템(예를 들어, 애플리케이션 서버), 또는 프론트 엔드 부재를 포함하는 컴퓨팅 시스템(예를 들어, 그래픽 사용자 인터페이스 또는 인터넷 브라우저를 구비하는 사용자 컴퓨터이고, 사용자는 상기 그래픽 사용자 인터페이스 또는 상기 웹 브라우저를 통해 여기에 설명되는 시스템 및 기술의 실시형태와 인터랙션할 수 있음), 또는 이러한 백엔드 부재, 미들웨어 부재, 또는 프론트 엔드 부재의 임의의 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 부재는 임의의 형태 또는 매체의 디지털 데이터 통신(예를 들어, 통신 네트워크)에 의해 상호 연결될 수 있다. 통신 네트워크의 예로는 근거리 통신망(Local Area Network, LAN), 광역 통신망(Wide Area Network, WAN), 인터넷 및 블록 체인 네트워크가 포함된다.
컴퓨터 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 멀리 떨어져 있으며, 일반적으로 통신 네트워크를 통해 인터랙션한다. 대응하는 컴퓨터에서 실행되며 서로 클라이언트-서버 관계를 가지는 컴퓨터 프로그램을 통해 클라이언트와 서버의 관계를 생성한다. 서버는 클라우드 컴퓨팅 서버 또는 클라우드 호스트로도 지칭되는 클라우드 서버일 수 있고, 클라우드 컴퓨팅 서비스 시스템 중의 호스트 제품으로서, 기존의 물리적 호스트와 VPS 서비스(Virtual Private Server, 가상 전용 서버)에서 존재하는 관리 상의 어려움이 크고, 서비스 확장이 약한 결함을 해결한다. 서버는 분산형 시스템의 서버, 또는 블록 체인이 결합된 서버일 수도 있다.
본 발명의 실시예에 따라 본 발명은 컴퓨터 프로그램 제품을 더 제공하며, 컴퓨터 프로그램 제품 중의 명령이 프로세서에 의해 실행될 경우, 본 발명의 상기 실시예에서 제공된 연합 계산 처리 방법을 수행한다.
본 발명의 실시예의 기술적 해결수단에 따르면, 빅데이터, 클라우드 컴퓨팅, 딥러닝 기술분야에 관한 것으로, 연합 계산의 처리를 수행할 경우, 데이터 병렬 방식으로 우선 각 참여자에 대응되는 n개의 데이터 조각을 조합하여 데이터 세트를 생성한 후, 각 데이터 처리 서비스를 이용하여 각 데이터 세트를 처리하여 연합 계산 결과를 획득함으로써, 연합 계산 수행 시, 데이터 병렬 방식을 이용하여 연합 학습의 병렬화를 구현함으로써, 연합 계산 속도를 크게 향상시키고 대규모 데이터 프라이버시 계산 사용을 위해 기술적 실행 가능성을 제공한다.
상술한 다양한 형태의 프로세스를 사용하여 단계를 재정렬, 추가 또는 삭제할 수 있음을 이해해야 한다. 예를 들어, 본 발명에 기재된 각 단계들은 병렬, 순차적 또는 상이한 순서로 수행될 수 있고, 본 발명에 개시된 기술적 해결수단이 원하는 결과를 달성할 수만 있으면, 별도로 한정하지 않는다.
상기 구체적인 실시형태는 본 발명의 보호범위에 대한 한정으로 구성되지 않는다. 당업자는 설계 요구 및 기타 요인에 따라, 다양한 수정, 조합, 서브 조합 및 대체가 이루어질 수 있음을 이해해야 할 것이다. 본 발명의 정신과 원칙 내에서 이루어진 모든 수정, 동등한 대체 및 개선은 모두 본 발명의 보호 범위 이내에 포함되어야 한다.
Claims (15)
- 연합 계산 처리 방법에 있어서,
수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득하는 단계;
각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하는 단계―n은 1보다 큰 양의 정수임;
각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성하는 단계;
상기 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 상기 데이터 처리 서비스를 이용하여 각 상기 데이터 세트를 처리하는 단계; 및,
각 상기 데이터 처리 서비스의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정하는 단계;를 포함하는,
것을 특징으로 하는 연합 계산 처리 방법. - 제1항에 있어서,
각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하는 단계는,
상기 수행할 태스크 식별자에 따라 데이터 분할 모드를 결정하는 단계; 및,
상기 데이터 분할 모드를 기반으로 각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하는 단계;를 포함하는,
것을 특징으로 하는 연합 계산 처리 방법. - 제1항에 있어서,
각 상기 데이터 처리 서비스의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정하는 단계는,
각 상기 데이터 처리 서비스에 의해 리턴된 처리 결과를 획득하는 단계;
n개의 상기 처리 결과를 융합하여 융합 결과를 획득하는 단계; 및,
상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 상기 융합 결과를 상기 태스크 식별자에 대응되는 연합 계산 결과로 결정하는 단계;를 포함하는,
것을 특징으로 하는 연합 계산 처리 방법. - 제3항에 있어서,
상기 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 상기 융합 결과를 n개의 상기 데이터 처리 서비스에 분배하여 각 상기 데이터 처리 서비스가 상기 융합 결과를 기반으로, 상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 n개의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정하는 단계;를 더 포함하는,
것을 특징으로 하는 연합 계산 처리 방법. - 제1항에 있어서,
각 상기 데이터 처리 서비스의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정하는 단계는,
어느 하나의 데이터 처리 서비스에 의해 리턴된 융합 결과를 획득하는 단계―상기 융합 결과는 상기 어느 하나의 데이터 처리 서비스가 각 상기 데이터 처리 서비스의 처리 결과를 융합한 후 생성된 것임;
상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 상기 융합 결과를 상기 태스크 식별자에 대응되는 연합 계산 결과로 결정하는 단계; 및,
상기 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 상기 융합 결과를 상기 어느 하나의 데이터 처리 서비스에 송신하여 각 상기 데이터 처리 서비스가 상기 융합 결과를 기반으로, 상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 융합 결과를 상기 태스크 식별자에 대응되는 연합 계산 결과로 결정하는 단계;를 포함하는,
것을 특징으로 하는 연합 계산 처리 방법. - 제1항 내지 제5항 중 어느 한 항에 있어서,
상기 연합 계산 결과를 각각의 상기 참여자에 송신하는 단계를 더 포함하는,
것을 특징으로 하는 연합 계산 처리 방법. - 연합 계산 처리 장치에 있어서,
수행할 태스크 식별자를 기반으로 각 참여자로부터 처리할 메타데이터를 획득하는 획득 모듈;
각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하는 분할 모듈―n은 1보다 큰 양의 정수임;
각 참여자에 대응되는 n개의 데이터 조각에 따라 n개의 데이터 세트를 생성하는 생성 모듈;
상기 태스크 식별자에 대응되는 n개의 데이터 처리 서비스를 호출하고, 각 상기 데이터 처리 서비스를 이용하여 각 상기 데이터 세트를 처리하는 처리 모듈; 및,
각 상기 데이터 처리 서비스의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정하는 결정 모듈;을 포함하는,
것을 특징으로 하는 연합 계산 처리 장치. - 제7항에 있어서,
상기 분할 모듈은,
상기 수행할 태스크 식별자에 따라 데이터 분할 모드를 결정하고;
상기 데이터 분할 모드를 기반으로 각 상기 메타데이터를 분할하여 각 참여자에 대응되는 n개의 데이터 조각을 획득하는,
것을 특징으로 하는 연합 계산 처리 장치. - 제7항에 있어서,
상기 결정 모듈은,
각 상기 데이터 처리 서비스에 의해 리턴된 처리 결과를 획득하고;
n개의 상기 처리 결과를 융합하여 융합 결과를 획득하며;
상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 상기 융합 결과를 상기 태스크 식별자에 대응되는 연합 계산 결과로 결정하는,
것을 특징으로 하는 연합 계산 처리 장치. - 제9항에 있어서,
상기 결정 모듈은 또한,
상기 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 상기 융합 결과를 n개의 상기 데이터 처리 서비스에 분배하여 각 상기 데이터 처리 서비스가 상기 융합 결과를 기반으로, 상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 n개의 처리 결과에 따라 상기 태스크 식별자에 대응되는 연합 계산 결과를 결정하는,
것을 특징으로 하는 연합 계산 처리 장치. - 제7항에 있어서,
상기 결정 모듈은,
어느 하나의 데이터 처리 서비스에 의해 리턴된 융합 결과를 획득하되, 상기 융합 결과는 상기 어느 하나의 데이터 처리 서비스가 각 상기 데이터 처리 서비스의 처리 결과를 융합한 후 생성된 것이고;
상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정된 경우, 상기 융합 결과를 상기 태스크 식별자에 대응되는 연합 계산 결과로 결정하며;
상기 태스크 식별자에 대응되는 태스크가 종료되지 않은 것으로 결정된 경우, 상기 융합 결과를 상기 어느 하나의 데이터 처리 서비스에 송신하여 각 상기 데이터 처리 서비스가 상기 융합 결과를 기반으로, 상기 태스크 식별자에 대응되는 태스크가 종료된 것으로 결정될 때까지 계속하여 대응되는 데이터 세트를 처리하도록 하며, 최근 융합 결과를 상기 태스크 식별자에 대응되는 연합 계산 결과로 결정하는,
것을 특징으로 하는 연합 계산 처리 장치. - 제7항 내지 제11항 중 어느 한 항에 있어서,
상기 결정 모듈은 또한,
상기 연합 계산 결과를 각각의 상기 참여자에 송신하는,
것을 특징으로 하는 연합 계산 처리 장치. - 전자 기기에 있어서,
적어도 하나의 프로세서; 및,
상기 적어도 하나의 프로세서에 통신 연결되는 메모리;를 포함하고;
상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되고, 상기 명령은 상기 적어도 하나의 프로세서에 의해 실행되어 상기 적어도 하나의 프로세서가 제1항 내지 제6항 중 어느 한 항에 따른 방법을 수행하도록 하는,
것을 특징으로 하는 전자 기기. - 컴퓨터 명령이 저장된 비일시적 컴퓨터 판독 가능 저장 매체에 있어서,
상기 컴퓨터 명령은 상기 컴퓨터가 제1항 내지 제6항 중 어느 한 항에 따른 방법을 수행하도록 하는데 사용되는,
것을 특징으로 하는 컴퓨터 명령이 저장된 비일시적 컴퓨터 판독 가능 저장 매체. - 컴퓨터 명령을 포함한 컴퓨터 프로그램 제품에 있어서,
상기 컴퓨터 명령이 프로세서에 의해 실행될 경우, 제1항 내지 제6항 중 어느 한 항에 따른 방법의 단계를 구현하는,
것을 특징으로 하는 컴퓨터 프로그램 제품.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110677839.9A CN113537508B (zh) | 2021-06-18 | 2021-06-18 | 联邦计算的处理方法、装置、电子设备和存储介质 |
CN202110677839.9 | 2021-06-18 | ||
PCT/CN2021/130307 WO2022262183A1 (zh) | 2021-06-18 | 2021-11-12 | 联邦计算的处理方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230006033A true KR20230006033A (ko) | 2023-01-10 |
Family
ID=78096309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227045230A KR20230006033A (ko) | 2021-06-18 | 2021-11-12 | 연합 계산 처리 방법, 장치, 전자 기기 및 저장 매체 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20230251898A1 (ko) |
EP (1) | EP4160440A4 (ko) |
JP (1) | JP2023534917A (ko) |
KR (1) | KR20230006033A (ko) |
CN (1) | CN113537508B (ko) |
WO (1) | WO2022262183A1 (ko) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113537508B (zh) * | 2021-06-18 | 2024-02-02 | 百度在线网络技术(北京)有限公司 | 联邦计算的处理方法、装置、电子设备和存储介质 |
CN113973125A (zh) * | 2021-10-26 | 2022-01-25 | 杭州博盾习言科技有限公司 | 联邦学习中的通信方法及装置、电子设备、存储介质 |
CN114900325B (zh) * | 2022-03-25 | 2024-03-26 | 杭州博盾习言科技有限公司 | 基于联邦学习的隐私集合求交方法、系统、设备及介质 |
US20230315604A1 (en) * | 2022-03-30 | 2023-10-05 | Lenovo Global Technology (United States) Inc. | Using a task identifier to identify processing services that have processed a task |
CN115378624B (zh) * | 2022-04-14 | 2024-01-30 | 中国电信股份有限公司 | 知识图谱构建方法、装置、电子设备及存储介质 |
CN114969444A (zh) * | 2022-05-24 | 2022-08-30 | 北京百度网讯科技有限公司 | 数据的处理方法、装置、电子设备和存储介质 |
CN114968525B (zh) * | 2022-05-26 | 2023-03-24 | 深圳致星科技有限公司 | 隐私计算和隐私数据保护的云原生任务调度方法及装置 |
US20230394152A1 (en) * | 2022-06-01 | 2023-12-07 | Micron Technology, Inc. | Establishing a chain of ownership of a device |
CN114925072B (zh) * | 2022-06-13 | 2023-07-21 | 深圳致星科技有限公司 | 数据管理方法、装置、系统、设备、介质 |
CN115827526B (zh) * | 2022-11-07 | 2023-10-27 | 北京百度网讯科技有限公司 | 数据处理方法、装置、设备以及存储介质 |
CN116737348B (zh) * | 2023-08-14 | 2024-01-02 | 腾讯科技(深圳)有限公司 | 一种多方任务的处理方法、装置及计算机设备、存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190122141A1 (en) * | 2017-10-23 | 2019-04-25 | Microsoft Technology Licensing, Llc | Fast hyperparameter search for machine-learning program |
CN111782385A (zh) * | 2019-04-04 | 2020-10-16 | 伊姆西Ip控股有限责任公司 | 用于处理任务的方法、电子设备和计算机程序产品 |
US20220344049A1 (en) * | 2019-09-23 | 2022-10-27 | Presagen Pty Ltd | Decentralized artificial intelligence (ai)/machine learning training system |
CN111898137A (zh) * | 2020-06-30 | 2020-11-06 | 深圳致星科技有限公司 | 一种联邦学习的隐私数据处理方法、设备及系统 |
CN111914038B (zh) * | 2020-09-21 | 2024-04-16 | 北京百度网讯科技有限公司 | 联邦计算方法、装置、设备及存储介质 |
CN112148437B (zh) * | 2020-10-21 | 2022-04-01 | 深圳致星科技有限公司 | 用于联邦学习的计算任务加速处理方法、装置及设备 |
CN112200713B (zh) * | 2020-10-28 | 2023-04-21 | 支付宝(杭州)信息技术有限公司 | 一种联邦学习中的业务数据处理方法、装置以及设备 |
CN112860970B (zh) * | 2021-03-02 | 2024-03-12 | 百度在线网络技术(北京)有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN113537508B (zh) * | 2021-06-18 | 2024-02-02 | 百度在线网络技术(北京)有限公司 | 联邦计算的处理方法、装置、电子设备和存储介质 |
-
2021
- 2021-06-18 CN CN202110677839.9A patent/CN113537508B/zh active Active
- 2021-11-12 WO PCT/CN2021/130307 patent/WO2022262183A1/zh unknown
- 2021-11-12 US US18/012,967 patent/US20230251898A1/en active Pending
- 2021-11-12 EP EP21945762.9A patent/EP4160440A4/en not_active Withdrawn
- 2021-11-12 KR KR1020227045230A patent/KR20230006033A/ko unknown
- 2021-11-12 JP JP2022581625A patent/JP2023534917A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4160440A1 (en) | 2023-04-05 |
EP4160440A4 (en) | 2024-01-03 |
US20230251898A1 (en) | 2023-08-10 |
JP2023534917A (ja) | 2023-08-15 |
WO2022262183A1 (zh) | 2022-12-22 |
CN113537508B (zh) | 2024-02-02 |
CN113537508A (zh) | 2021-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20230006033A (ko) | 연합 계산 처리 방법, 장치, 전자 기기 및 저장 매체 | |
KR102121159B1 (ko) | 이벤트-구동 블록체인 워크플로우 프로세싱 | |
CN113407850B (zh) | 一种虚拟形象的确定和获取方法、装置以及电子设备 | |
US20230222356A1 (en) | Federated learning | |
JP7414907B2 (ja) | 事前訓練済みモデルの決定方法及びその決定装置、電子機器並びに記憶媒体 | |
CN113965313B (zh) | 基于同态加密的模型训练方法、装置、设备以及存储介质 | |
CN114091672B (zh) | 分布式模型推理方法及装置、电子设备和介质 | |
US11734455B2 (en) | Blockchain-based data processing method and apparatus, device, and storage medium | |
CN111966361A (zh) | 用于确定待部署模型的方法、装置、设备及其存储介质 | |
CN109858285B (zh) | 区块链数据的处理方法、装置、设备和介质 | |
CN113032817A (zh) | 基于区块链的数据对齐方法、装置、设备和介质 | |
CN113657468A (zh) | 预训练模型的生成方法、装置、电子设备和存储介质 | |
CN113946816A (zh) | 基于云服务的鉴权方法、装置、电子设备和存储介质 | |
CN113037489A (zh) | 数据处理方法、装置、设备和存储介质 | |
US11755567B1 (en) | Blockchain-based data verification method and apparatus, device, and storage medium | |
CN117407584A (zh) | 确定推荐内容的方法、装置、电子设备及存储介质 | |
CN111951112A (zh) | 基于区块链的智能合约执行方法、终端设备和存储介质 | |
CN116756245A (zh) | 基于区块链全生命周期的成果保护方法、装置设备及介质 | |
CN113935069B (zh) | 一种基于区块链的数据验证方法、装置、设备及存储介质 | |
CN115510203A (zh) | 问题答案确定方法、装置、设备、存储介质及程序产品 | |
CN113361719A (zh) | 基于图像处理模型的增量学习方法和图像处理方法 | |
CN113360689A (zh) | 图像检索系统、方法、相关装置及计算机程序产品 | |
CN112527802A (zh) | 基于键值数据库的软链接方法及装置 | |
CN112559547A (zh) | 确定多存储对象副本之间一致性的方法及装置 | |
KR102531826B1 (ko) | 블록체인에 의해 난수를 획득하는 방법, 장치, 설비 및 매체 |