KR102634785B1 - 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅 - Google Patents

보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅 Download PDF

Info

Publication number
KR102634785B1
KR102634785B1 KR1020217034758A KR20217034758A KR102634785B1 KR 102634785 B1 KR102634785 B1 KR 102634785B1 KR 1020217034758 A KR1020217034758 A KR 1020217034758A KR 20217034758 A KR20217034758 A KR 20217034758A KR 102634785 B1 KR102634785 B1 KR 102634785B1
Authority
KR
South Korea
Prior art keywords
data
algorithm
assets
data assets
delete delete
Prior art date
Application number
KR1020217034758A
Other languages
English (en)
Other versions
KR20210143879A (ko
Inventor
레이첼 콜컷
마이클 블룸
조 헤세
로버트 디. 로저스
스콧 하몬드
매리 엘리자베스 초크
Original Assignee
더 리전트 오브 더 유니버시티 오브 캘리포니아
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 더 리전트 오브 더 유니버시티 오브 캘리포니아 filed Critical 더 리전트 오브 더 유니버시티 오브 캘리포니아
Priority to KR1020247004049A priority Critical patent/KR20240019868A/ko
Publication of KR20210143879A publication Critical patent/KR20210143879A/ko
Application granted granted Critical
Publication of KR102634785B1 publication Critical patent/KR102634785B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/256Integrating or interfacing systems involving database management systems in federated or virtual databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Geometry (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 개시내용은, 개인정보 보호되고 조율된 데이터의 복수의 소스에 분석을 분산시킴으로써 인공 지능 알고리즘을 개발하기 위한 기술들에 관한 것이다. 특히, 양태들은 컴퓨터 구현된 방법에 관한 것으로, 이 방법은, 알고리즘 및 알고리즘과 연관된 입력 데이터 요건들을 수신하는 단계, 데이터 자산들을 입력 데이터 요건들에 기초하여 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계, 데이터 자산들을 데이터 호스트의 인프라스트럭처 내에 있는 데이터 저장 구조 내에 큐레이팅하는 단계, 알고리즘을 보안 캡슐 컴퓨팅 프레임워크 내에 통합하는 단계를 포함한다. 보안 캡슐 컴퓨팅 프레임워크는, 데이터 저장 구조 내의 데이터 자산들을, 데이터 자산들의 개인정보 및 알고리즘을 보호하는 보안된 방식으로 알고리즘에게 서비스한다. 컴퓨터 구현된 방법은 추론을 획득하기 위해 알고리즘을 통해 데이터 자산들을 운영하는 단계를 더 포함한다.

Description

보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅
관련 출원의 상호참조
본 출원은, 모든 목적을 위해 그 전체 내용이 참조에 의해 본 명세서에 포함되는, 2019년 12월 16일 출원된 발명의 명칭이 "DISTRIBUTED PRIVACY-PRESERVING COMPUTING ON PROTECTED DATA"인 미국 가출원 번호 제62/948,556호 및 2019년 3월 26일 출원된 발명의 명칭이 "FEDERATED MACHINE LEARNING TECHNIQUES FOR HIGHLY CURATED HEALTH-CARE DATA SETS"인 미국 가출원 번호 제62/824,183호의 우선권을 주장한다.
분야
본 발명은 개인정보 보호 컴퓨팅에 관한 것으로, 특히, 개인정보 보호된 조율된 데이터의 복수의 소스로의 분산된 분석의 이용을 통해 인공 지능 애플리케이션들 및/또는 알고리즘들을 개발하기 위한 기술들(예를 들어, 하나 이상의 프로세서에 의해 실행가능한 코드 또는 명령어들을 저장한 시스템들, 방법들, 컴퓨터 프로그램 제품들)에 관한 것이다. 본 발명은 개인정보 보호되고 조율된 임상 및 건강 데이터를 이용하여 규제된 의료 애플리케이션들을 위한 인공 지능 알고리즘을 개발하는데 특히 효과적이다.
광범위하게 이용가능한 다양한 머신 학습 및 심층 학습 알고리즘 아키텍쳐들과 결합된, 클라우드 컴퓨팅, 데이터 병렬 클러스터 컴퓨팅, 고성능 컴퓨팅을 비롯한 현대의 컴퓨팅 패러다임은, 기저 알고리즘을 적절하게 최적화하기 위한 충분한 데이터가 이용가능한 경우 거의 모든 산업에서 문제점들을 해결하기 위해 방대한 AI(인공 지능) 애플리케이션이 개발될 수 있는 환경을 생성했다. 이제, 데이터에 대한 액세스가 AI 애플리케이션들의 개발에 대한 주요 장벽이라는 것이 분명하다. 실제로, 많은 산업에서, 강력하고 일반화가능한 AI를 생성하기 위해서는 다양한 소스로부터의 데이터를 이용할 필요가 있다. 과제는, 일반적으로, 데이터 소유자들이 데이터를 공유하거나 데이터가 그들의 통제를 벗어나는 것을 허용할 수 없거나 허용하지 않을 것이라는 것이다. 이것은, 데이터는 자산이고, 종종 매우 민감한 사적인 및/또는 개인적인 데이터를 포함하고 공유를 어렵게하거나 불가능케하는 방식들로 규제될 수 있기 때문에 이해할 수 있다. 이들 과제는 특히 보건 AI 개발에서 극복하기 어렵다.
전 세계에 저장된 모든 데이터 중 약 30%가 보건 분야에 있고, 이것은 AI 알고리즘들의 개발 및 자금조달을 촉진하고 있다. AI 및 머신 학습("ML")에 의해 생성된 통찰력은 임상 의사 결정을 향상시키고, 치료 정밀도를 가능케하며, 디지털 치료법들을 생성하는데 필요한 복잡한 데이터 내에서 연관성들(즉, 상관관계들)의 학습을 약속한다. 보건 AI는, 생명 공학, 제약, 의료 정보 기술, 분석 및 유전자 검사, 의료 디바이스들의 분야와 관련성을 갖는다. 머신 학습 시스템들을 포함한 인공 지능 접근법들은 복잡한 데이터에서 패턴들을 식별할 수 있다. 일반적으로, 알고리즘들과 모델들을 생성하는데 이용되는 데이터의 충실도와 다양성이 높을수록, 알고리즘들과 모델들은 다양한 환경과 인구에서 더 정확하고 일관성 있게 수행된다. 따라서, 이들 AI 접근법은, 모델들을 개발, 최적화 및 검증하기 위해 다양하고 충실도가 높은 데이터에 액세스할 것을 요구한다. 그러나, 대부분의 AI 알고리즘 개발자들은 데이터 액세스에 대한 심각한 장벽들을 극복하지 않고 그들의 알고리즘들과 모델들을 훈련, 테스트 및 검증하기에 충분한 충실도와 다양성을 갖춘 의료 데이터 자산들이 부족하다. 더욱이, AI 알고리즘 개발자들은 충분한 데이터 자산들을 가지고 있더라도, 제3자 검증을 수행하는 개발자들은 거의 없기 때문에, 생산 또는 임상 환경에 적용될 수 있는 솔루션이 아닌 본질적으로 개념 연구의 증거인 알고리즘들과 모델들이 생성된다. 생산 또는 임상 이용을 위한 AI 모델들 및 알고리즘들의 추가 개발은 충실도가 높고 다양한 개인정보 보호된 데이터에 대한 적시 액세스라는 주요 장애물에 의해 크게 방해받는 것으로 보인다.
보건에는, 환자 정보의 개인정보 보호를 유지하기 위한 규제, 법적 및 윤리적 요건들이 있다. 개인정보 목표에는, 비인가된 액세스로부터 데이터를 보호하고, 개인의 개인정보 동의에 따라 이용의 투명성을 제공하며, 가능할 때는 언제나 개인 식별 데이터의 이용을 최소화하는 것이 포함된다. 따라서, 데이터 개인정보 및 그 보호는, 충실도가 높은 실시간의 다양한 데이터에 대한 적시 액세스를 요구하는 AI의 장벽이다. 보건 AI에서의 기회는, 개인정보 보호 컴퓨팅을 이용하여 식별가능한 정보 노출의 위험을 제거하는 것이다. 이들 고려사항은, 데이터의 민감성(예를 들어, 영업 비밀들 또는 개인들에 대한 사적 데이터를 포함하는지 여부)으로 인해 데이터 보호를 담당하는 조직의 경계 외부에서의 그 공유가 배제되는 많은 산업에서의 AI 개발에 적용된다.
따라서, 충실도가 높은 다양한 데이터에 대한 적시 액세스를 용이화하기 위해 여러 조직에 걸쳐 개인정보 보호 컴퓨팅을 확립할 필요성이 존재한다.
하나 이상의 컴퓨터로 이루어진 시스템은, 동작시에 시스템으로 하여금 그 행동들을 수행하게 하는 시스템 상에 설치된 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합을 가짐으로써 특정한 동작들 또는 행동들을 수행하도록 구성될 수 있다. 하나 이상의 컴퓨터 프로그램은, 데이터 처리 장치에 의해 실행될 때 장치로 하여금 행동들을 수행하게 하는 명령어들을 포함함으로써 특정한 동작들 또는 행동들을 수행하도록 구성될 수 있다. 한 일반적인 양태는 방법을 포함하고, 이 방법은 : 데이터 처리 시스템에서, 알고리즘 및 그 알고리즘과 연관된 입력 데이터 요건들을 수신하는 단계를 포함하고, 여기서 입력 데이터 요건들은 알고리즘에 관해 운영될 데이터 자산들에 대한 최적화 및/또는 검증 선택 기준을 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 자산들에 대한 최적화 및/또는 검증 선택 기준에 기초하여 데이터 자산들을 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 자산들을, 데이터 호스트의 인프라스트럭처 내의 데이터 저장 구조 내에 큐레이팅하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘에 의한 처리를 위해 데이터 저장 구조 내의 데이터 자산들을 준비하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘을 보안 캡슐 컴퓨팅 프레임워크 내에 통합하는 단계를 포함하고, 여기서 보안 캡슐 컴퓨팅 프레임워크는, 데이터 저장 구조 내의 데이터 자산들을 데이터 자산들의 개인정보와 알고리즘을 보호하는 보안된 방식으로 알고리즘에게 서비스한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘을 통해 데이터 자산들을 운영하는 단계를 포함한다. 이 양태의 다른 실시예들은, 대응하는 컴퓨터 시스템, 장치, 및 방법들의 행동들을 수행하도록 각각 구성된 하나 이상의 컴퓨터 저장 디바이스에 기록된 컴퓨터 프로그램을 포함한다.
구현들은 다음과 같은 피처들 중 하나 이상을 포함할 수 있다. 알고리즘 및 입력 데이터 요건들이 데이터 호스트와는 상이한 엔티티인 알고리즘 개발자로부터 수신되고, 최적화 및/또는 검증 선택 기준은, 알고리즘에 관해 운영될 데이터 자산들에 대한 특성들, 포멧들, 및 요건들을 정의하는 방법. 데이터 자산들의 특성들 및 요건들이 다음에 기초하여 정의되는 방법: (i) 알고리즘의 환경, (ii) 입력 데이터에서 예들의 분포, (iii) 입력 데이터를 생성하는 디바이스들의 유형들 및 파라미터들, (iv) 분산 대 편향, (v) 알고리즘에 의해 구현된 작업들, 또는 (vi) 이들의 임의의 조합. 이 방법은, 데이터 처리 시스템에 의해, 데이터 호스트를 온보딩(onboarding)하는 단계를 더 포함하고, 여기서 온보딩하는 단계는, 알고리즘에서의 데이터 자산들의 이용이 데이터 개인정보 요건들을 준수함을 확인하는 단계를 포함한다. 데이터 자산들을 준비하는 것은, 데이터 자산들에 하나 이상의 변환을 적용하는 단계, 데이터 자산들에 주석부기하는 단계, 데이터 자산들을 조율하는 단계, 또는 이들의 조합을 포함하는, 방법. 알고리즘을 통해 데이터 자산들을 운영하는 단계는 훈련 워크플로우를 실행하는 단계를 포함하고, 훈련 워크플로우를 실행하는 단계는 : 모델의 복수의 인스턴스를 생성하는 단계, 데이터 자산들을 훈련 데이터 세트들 및 하나 이상의 테스트 데이터 세트들로 분할하는 단계, 훈련 데이터 세트들에 관해 모델의 복수의 인스턴스를 훈련시키는 단계, 모델의 복수의 인스턴스 각각의 훈련 결과들을 완전 연합된 모델 내에 통합하는 단계, 완전 연합된 모델을 통해 하나 이상의 테스트 데이터 세트를 운영하는 단계, 하나 이상의 테스트 데이터 세트의 운영에 기초하여 완전 연합된 모델의 성능을 컴퓨팅하는 단계를 포함하는, 방법. 설명된 기술들의 구현들은, 하드웨어, 방법 또는 프로세스, 또는 컴퓨터 액세스가능한 매체 상의 컴퓨터 소프트웨어를 포함할 수 있다.
구현들은 다음과 같은 피처들 중 하나 이상을 포함할 수 있다. 보안 캡슐 컴퓨팅 프레임워크가, 알고리즘을 실행하는데 요구되는 암호화된 코드를 수락하도록 구성된 컴퓨팅 인프라스트럭처 내에서 공급되고, 컴퓨팅 인프라스트럭처를 공급하는 단계는, 컴퓨팅 인프라스트럭처 상에서 보안 캡슐 컴퓨팅 프레임워크를 인스턴스화하는 단계, 알고리즘 개발자에 의해, 보안 캡슐 컴퓨팅 프레임워크 내부에 암호화된 코드를 예치하는 단계, 일단 보안 캡슐 컴퓨팅 프레임워크가 인스턴스화되고 나면, 암호화된 코드를 해독하는 단계를 포함하는, 방법. 알고리즘을 통해 데이터 자산들을 운영하는 것은 검증 워크플로우를 실행하는 단계를 포함하고, 이 검증 워크플로우를 실행하는 단계는 : 데이터 자산들을 하나 이상의 검증 데이터 세트로 분할하는 단계, 알고리즘을 통해 하나 이상의 검증 데이터 세트를 운영하는 단계, 하나 이상의 검증 데이터 세트의 운영에 기초하여 알고리즘의 성능을 컴퓨팅하는 단계를 포함하는, 방법. 식별하는 단계는, 데이터 자산들 내의 개인들에 대한 사적 정보를 보류하면서 데이터 자산들 내의 그룹들의 패턴들을 기술함으로써 데이터 자산들 내의 정보를 공유하기 위한 차별적 개인정보를 이용하여 수행되며, 큐레이팅하는 단계는, 복수의 데이터 저장 구조로부터 데이터 저장 구조를 선택하는 단계 및 데이터 저장 구조를 데이터 호스트의 인프라스트럭처 내에 공급하는 단계를 포함하고, 데이터 저장 구조의 선택은, 알고리즘의 유형, 데이터 자산들 내의 데이터의 유형, 데이터 처리 시스템의 시스템 요건들, 또는 이들의 조합에 기초하는, 방법. 설명된 기술들의 구현들은, 하드웨어, 방법 또는 프로세스, 또는 컴퓨터 액세스가능한 매체 상의 컴퓨터 소프트웨어를 포함할 수 있다.
한 일반적인 양태는 방법을 포함하고, 이 방법은 : 알고리즘의 복수의 인스턴스를 식별하는 단계를 포함하고, 여기서, 알고리즘의 각각의 인스턴스는 하나 이상의 보안 캡슐 컴퓨팅 프레임워크 내에 통합되고, 하나 이상의 보안 캡슐 컴퓨팅 프레임워크는, 하나 이상의 데이터 호스트의 하나 이상의 데이터 저장 구조 내의 훈련 데이터 자산들을, 훈련 데이터 자산들의 개인정보 및 알고리즘의 각각의 인스턴스를 보호하는 보안된 방식으로 알고리즘의 각각의 인스턴스에게 서비스한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘의 각각의 인스턴스에 관해 연합된 훈련 워크플로우를 실행하는 단계를 포함하고, 여기서, 연합된 훈련 워크플로우는, 입력으로서 훈련 데이터 자산들을 취하고, 파라미터들을 이용하여 훈련 데이터 자산들의 피처들을 타겟 추론에 맵핑하고, 손실 또는 오류 함수를 컴퓨팅하고, 손실 또는 오류 함수를 최소화하기 위해 파라미터들을 학습된 파라미터들로 업데이트하고, 알고리즘의 하나 이상의 훈련된 인스턴스를 출력한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘의 각각의 훈련된 인스턴스에 대한 학습된 파라미터들을 완전 연합된 알고리즘 내에 통합하는 단계를 포함하며, 여기서, 통합하는 단계는 학습된 파라미터들을 집결하여 집결된 파라미터들을 획득하고 완전 연합된 알고리즘의 학습된 파라미터들을 집결된 파라미터들로 업데이트하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 완전 연합된 알고리즘에 관해 테스트 워크플로우를 실행하는 단계를 포함하고, 여기서, 테스트 워크플로우는 입력으로서 테스트 데이터를 취하고, 업데이트된 학습된 파라미터들을 이용하여 테스트 데이터에서 패턴들을 발견하고, 추론을 출력한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 추론을 제공하는데 있어서 완전 연합된 알고리즘의 성능을 계산하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 완전 연합된 알고리즘의 성능이 알고리즘 종료 기준을 충족하는지를 결정하는 단계를 포함한다. 이 방법은 또한, 완전 연합된 알고리즘의 성능이 알고리즘 종료 기준을 충족하지 않을 때, 데이터 처리 시스템에 의해, 알고리즘의 각각의 인스턴스를 완전 연합된 알고리즘으로 교체하는 단계 및 완전 연합된 알고리즘의 각각의 인스턴스에 관해 연합된 훈련 워크플로우를 재실행하는 단계를 포함한다. 이 방법은 또한, 완전 연합된 알고리즘의 성능이 알고리즘 종료 기준을 충족할 때, 데이터 처리 시스템에 의해, 완전 연합된 알고리즘의 성능 및 집결된 파라미터들을 그 알고리즘의 알고리즘 개발자에게 제공하는 단계를 포함한다. 이 양태의 다른 실시예들은, 대응하는 컴퓨터 시스템, 장치, 및 방법들의 행동들을 수행하도록 각각 구성된 하나 이상의 컴퓨터 저장 디바이스에 기록된 컴퓨터 프로그램을 포함한다.
구현들은 다음과 같은 피처들 중 하나 이상을 포함할 수 있다. 알고리즘의 복수의 인스턴스를 식별하는 단계는, 데이터 처리 시스템에서, 알고리즘 및 그 알고리즘과 연관된 입력 데이터 요건들을 수신하는 단계를 포함하고, 여기서, 입력 데이터 요건들은 알고리즘에 관해 운영될 데이터 자산들에 대한 최적화 및/또는 검증 선택 기준을 포함하는, 방법. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 자산들에 대한 최적화 및/또는 검증 선택 기준에 기초하여 데이터 자산들을 하나 이상의 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계를 포함할 수 있다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 자산들을, 하나 이상의 데이터 호스트 중의 각각의 데이터 호스트의 인프라스트럭처 내에 있는 데이터 저장 구조 내에 큐레이팅하는 단계를 포함할 수 있다. 이 방법은 또한, 데이터 자산들의 적어도 일부를, 하나 이상의 데이터 호스트 중의 각각의 데이터 호스트의 인프라스트럭처 내에 있는 데이터 저장 구조 내의 훈련 데이터 자산들로 분할하는 단계를 포함할 수 있다. 알고리즘 및 입력 데이터 요건들이 하나 이상의 데이터 호스트와는 상이한 엔티티인 알고리즘 개발자로부터 수신되고, 최적화 및/또는 검증 선택 기준은, 알고리즘에 관해 운영될 데이터 자산들에 대한 특성들, 포멧들, 및 요건들을 정의하는, 방법. 연합된 훈련 워크플로우는 훈련 경도(training gradient)들을 암호화하는 단계를 더 포함하고, 통합하는 단계는 훈련 경도들을 해독하는 단계를 포함하는, 방법. 설명된 기술들의 구현들은, 하드웨어, 방법 또는 프로세스, 또는 컴퓨터 액세스가능한 매체 상의 컴퓨터 소프트웨어를 포함할 수 있다.
구현들은 다음과 같은 피처들 중 하나 이상을 포함할 수 있다. 이 방법은 : 완전 연합된 알고리즘의 성능이 알고리즘 종료 기준을 충족할 때, 데이터 처리 시스템에 의해, 집결된 파라미터들을 알고리즘의 각각의 인스턴스에 전송하는 단계를 더 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘의 각각의 인스턴스에 관해 업데이트 훈련 워크플로우를 실행하는 단계를 포함할 수 있고, 여기서, 업데이트 훈련 워크플로우는 학습된 파라미터들을 집결된 파라미터들로 업데이트하고, 알고리즘의 하나 이상의 업데이트되고 훈련된 인스턴스를 출력한다. 이 방법은, 데이터 처리 시스템에 의해, 알고리즘의 각각의 인스턴스를 통해 데이터 자산들의 나머지를 운영하는 단계를 더 포함한다. 알고리즘의 각각의 인스턴스를 통해 데이터 자산들을 운영하는 단계는 검증 워크플로우를 실행하는 단계를 포함하고, 검증 워크플로우를 실행하는 단계는 : 데이터 자산들의 적어도 일부를 하나 이상의 검증 데이터 세트로 더 분할하는 단계, 알고리즘의 각각의 인스턴스를 통해 하나 이상의 검증 데이터 세트를 운영하는 단계, 및 하나 이상의 검증 데이터 세트의 운영에 기초하여 알고리즘의 각각의 인스턴스의 성능을 컴퓨팅하는 단계를 포함하는, 방법. 설명된 기술들의 구현들은, 하드웨어, 방법 또는 프로세스, 또는 컴퓨터 액세스가능한 매체 상의 컴퓨터 소프트웨어를 포함할 수 있다.
하나의 일반적인 양태는 방법을 포함하고, 이 방법은 : 데이터 처리 시스템에 의해, 데이터 자산들에 대한 선택 기준에 기초하여 데이터 자산들을 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 자산들을, 데이터 호스트의 인프라스트럭처 내의 데이터 저장 구조 내에 큐레이팅하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 변환을 위한 알고리즘 개발에 대한 가이드로서 이용할 데이터의 변환기 프로토타입 세트를 준비하는 단계를 포함하고, 여기서, 데이터의 변환기 프로토타입 세트는 조율 프로세스의 주요 속성들을 포착한다. 이 방법은 또한, 데이터 처리 시스템을 이용하여, 데이터의 변환기 프로토타입 세트 내의 데이터의 현재 포멧에 기초하여 데이터 자산들의 변환을 위한 조율 변환기들의 제1 세트를 생성하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 조율 변환기들의 제1 세트를 데이터 자산들에 적용하여 변환된 데이터 자산들을 생성하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 변환을 위한 알고리즘 개발에 대한 가이드로서 이용할 데이터의 조율 프로토타입 세트를 준비하는 단계를 포함하고, 여기서, 데이터의 조율 프로토타입 세트는 조율 프로세스의 주요 속성들을 포착한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터의 조율 프로토타입 세트 내의 데이터의 현재 포멧에 기초하여 변환된 데이터 자산들의 변환을 위한 조율 변환기들의 제2 세트를 생성하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 조율 변환기들의 제2 세트를 변환된 데이터 자산들에 적용하여 조율된 데이터 자산들을 생성하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘을 통해 조율된 데이터 자산들을 운영하는 단계를 포함하고, 여기서, 알고리즘은, 데이터 저장 구조 내의 조율된 데이터 자산들을, 조율된 데이터 자산들의 개인정보 및 알고리즘을 보호하는 보안된 방식으로 알고리즘에 서비스하는 보안 캡슐 컴퓨팅 프레임워크에 있다. 이 양태의 다른 실시예들은, 대응하는 컴퓨터 시스템, 장치, 및 방법들의 행동들을 수행하도록 각각 구성된 하나 이상의 컴퓨터 저장 디바이스에 기록된 컴퓨터 프로그램을 포함한다.
구현들은 다음과 같은 피처들 중 하나 이상을 포함할 수 있다. 선택 기준은 데이터 호스트와는 상이한 엔티티인 알고리즘 개발자로부터 수신되고, 선택 기준은 알고리즘에 관해 운영될 데이터 자산들에 대한 특성들, 포멧들 및 요건들을 정의하는, 방법. 데이터 자산들의 특성들 및 요건들이 다음에 기초하여 정의되는 방법: (i) 알고리즘의 환경, (ii) 입력 데이터에서 예들의 분포, (iii) 입력 데이터를 생성하는 디바이스들의 유형들 및 파라미터들, (iv) 분산 대 편향, (v) 알고리즘에 의해 구현된 작업, 또는 (vi) 이들의 임의의 조합. 이 방법은, 데이터 자산들의 변환을 위한 조율 변환기들의 제1 세트를 생성할 목적으로 데이터의 변환기 프로토타입 세트를 개인식별불능화(de-identify)하고 개인식별불능화된 데이터의 변환기 프로토타입 세트를 알고리즘 개발자에게 이용가능하게하는 단계를 더 포함한다. 데이터 자산들에 조율 변환기들 제1 세트를 적용하는 단계는 데이터 구조 내에서 수행되는, 방법. 이 방법은, 데이터 처리 시스템을 이용하여, 미리정의된 주석부기 프로토콜에 따라 변환된 데이터 자산들에 주석부기하여 주석부기된 데이터 세트들을 생성하는 단계를 더 포함하고, 여기서, 변환된 데이터에 주석부기하는 단계는 데이터 구조 내에서 수행되고, 조율 변환기들의 제2 세트가 주석부기된 데이터 세트에 적용되어 조율된 데이터 자산들을 생성한다. 조율 변환기들의 제2 세트를 주석부기된 데이터 자산들에 적용하는 단계는 데이터 구조 내에서 수행되는, 방법. 이 방법은, 조율 변환기들의 제1 세트, 주석부기들, 및 조율 변환기들의 제2 세트가 성공적으로 적용되고 데이터 개인정보 요건들을 위반하지 않고 적용되는지를 결정하는 단계를 더 포함한다. 설명된 기술들의 구현들은, 하드웨어, 방법 또는 프로세스, 또는 컴퓨터 액세스가능한 매체 상의 컴퓨터 소프트웨어를 포함할 수 있다.
한 일반적인 양태는 방법을 포함하고, 이 방법은 : 알고리즘 또는 모델을 식별하는 단계를 포함하고, 여기서 알고리즘 또는 모델은 보안 캡슐 컴퓨팅 프레임워크 내에 통합되고, 보안 캡슐 컴퓨팅 프레임워크는 데이터 호스트의 데이터 저장 구조들 내의 훈련 데이터 자산들을 훈련 데이터 자산들의 개인정보 및 알고리즘 또는 모델을 보호하는 보안된 방식으로 알고리즘 또는 모델에게 서비스한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘 또는 모델에 관해 연합된 훈련 워크플로우를 실행하는 단계를 포함하고, 여기서, 연합된 훈련 워크플로우는 입력으로서 훈련 데이터 자산들을 취하고, 파라미터들을 이용하여 훈련 데이터 자산들의 피처들을 타겟 추론에 맵핑하고, 손실 또는 오류 함수를 컴퓨팅하고, 손실 또는 오류 함수를 최소화하기 위해 파라미터들을 학습된 파라미터들로 업데이트하고, 훈련된 알고리즘 또는 모델을 출력한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘 또는 모델에 대한 학습된 파라미터들을 완전 연합된 알고리즘 또는 모델 내에 통합하는 단계를 포함하고, 여기서, 통합하는 단계는 학습된 파라미터들을 집결하여 집결된 파라미터들을 획득하는 단계 및 완전 연합된 알고리즘 또는 모델의 학습된 파라미터들을 집결된 파라미터들로 업데이트하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 완전 연합된 알고리즘 또는 모델에 관해 테스트 워크플로우를 실행하는 단계를 포함하고, 여기서, 테스트 워크플로우는 입력으로서 테스트 데이터를 취하고, 업데이트된 학습된 파라미터들을 이용하여 테스트 데이터에서 패턴들을 발견하고, 추론을 출력한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 추론을 제공하는데 있어서 완전 연합된 알고리즘의 성능을 계산하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 완전 연합된 알고리즘 또는 모델의 성능이 알고리즘 종료 기준을 충족하는지를 결정하는 단계를 포함한다. 이 방법은 또한, 완전 연합된 알고리즘 또는 모델의 성능이 알고리즘 종료 기준을 충족하지 않는 때, 데이터 처리 시스템에 의해, 알고리즘 또는 모델을 완전 연합된 알고리즘 또는 모델로 교체하는 단계, 및 완전 연합된 알고리즘 또는 모델에 관해 연합된 훈련 워크플로우를 재실행하는 단계를 포함한다. 이 방법은 또한, 완전 연합된 알고리즘 또는 모델의 성능이 알고리즘 종료 기준을 충족할 때, 데이터 처리 시스템에 의해, 완전 연합된 알고리즘 또는 모델의 성능 및 집결된 파라미터들을 그 알고리즘 또는 모델의 알고리즘 개발자에게 제공하는 단계를 포함한다. 이 양태의 다른 실시예들은, 대응하는 컴퓨터 시스템, 장치, 및 방법들의 행동들을 수행하도록 각각 구성된 하나 이상의 컴퓨터 저장 디바이스에 기록된 컴퓨터 프로그램을 포함한다.
구현들은 다음과 같은 피처들 중 하나 이상을 포함할 수 있다. 알고리즘을 식별하는 단계는, 데이터 처리 시스템에서, 알고리즘 및 그 알고리즘과 연관된 입력 데이터 요건들을 수신하는 단계를 포함하고, 여기서, 입력 데이터 요건들은 알고리즘에 관해 운영될 데이터 자산들에 대한 검증 선택 기준을 포함하는, 방법. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 자산들에 대한 검증 선택 기준에 기초하여 데이터 자산들을 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계를 포함할 수 있다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 자산들을, 데이터 호스트의 인프라스트럭처 내의 데이터 저장 구조 내에 큐레이팅하는 단계를 포함할 수 있다. 이 방법은 또한, 데이터 자산들의 적어도 일부를, 데이터 호스트의 인프라스트럭처 내에 있는 데이터 저장 구조 내의 검증 데이터 자산들로 분할하는 단계를 포함할 수 있다. 이 방법은, 데이터 처리 시스템에 의해, 데이터 호스트를 온보딩(onboarding)하는 단계를 더 포함하고, 여기서 온보딩하는 단계는, 알고리즘에서의 데이터 자산들의 이용이 데이터 개인정보 요건들을 준수함을 확인하는 단계를 포함한다. 이 방법은 또한, 알고리즘을 검증할 목적으로 데이터 호스트로부터의 데이터 자산들을 이용하기 위한 기관 검토 위원회의 승인을 포함한 통제 및 준수 요건들을 완료하는 단계를 포함할 수 있다. 이 방법은 또한, 큐레이팅하는 단계가 복수의 데이터 저장 구조로부터 데이터 저장 구조를 선택하는 단계 및 데이터 호스트의 인프라스트럭처 내에 데이터 저장 구조를 공급하는 단계를 포함하고, 데이터 저장 구조의 선택은, 알고리즘 내의 알고리즘의 유형, 데이터 자산들 내의 데이터의 유형, 데이터 처리 시스템의 시스템 요건들, 또는 이들의 조합에 기초하는 경우를 포함할 수 있다. 이 방법은, 알고리즘의 성능이 검증 기준을 충족할 때, 데이터 처리 시스템에 의해, 검증 데이터 자산들의 개인정보 및 알고리즘을 보호하는 보안된 방식으로 알고리즘 및 검증 데이터 자산들을 유지하는 단계를 더 포함한다.
이 방법은, 검증 데이터 자산들이 복수의 분리된 세트들의 데이터 자산들이고, 암호화된 코드가 데이터 처리 시스템에 의해 서명되어 데이터 저장 보관소에 저장되고, 알고리즘의 성능이 복수의 분리된 세트의 데이터 자산들에 관해 수행된 복수의 검증으로부터 집결된 알고리즘의 검증에 대한 단일 검증 보고서로서 제공되는 경우를 포함한다. 설명된 기술들의 구현들은, 하드웨어, 방법 또는 프로세스, 또는 컴퓨터 액세스가능한 매체 상의 컴퓨터 소프트웨어를 포함할 수 있다.
한 일반적인 양태는 방법을 포함하고, 이 방법은 : 알고리즘을 식별하는 단계를 포함하며, 여기서 알고리즘은 알고리즘 개발자에 의해 제공되고 보안 캡슐 컴퓨팅 프레임워크 내에 통합되며, 보안 캡슐 컴퓨팅 프레임워크는 데이터 저장 구조 내의 검증 데이터 자산들을 검증 데이터 자산들의 개인정보 및 알고리즘을 보호하는 보안된 방식으로 알고리즘에게 서비스한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘에 관한 검증 워크플로우를 실행하는 단계를 포함하고, 여기서, 검증 워크플로우는 검증 데이터 자산들을 입력으로서 취하고 학습된 파라미터들을 이용하여 검증 데이터 자산들에 알고리즘을 적용하고, 추론을 출력한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 추론을 제공함에 있어서 알고리즘의 성능을 계산하는 단계를 포함하고, 여기서, 성능은 골드 표준 라벨(gold standard label)들에 기초하여 계산된다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘의 성능이 알고리즘 개발자에 의해 정의된 검증 기준을 충족하는지를 결정하는 단계를 포함한다. 이 방법은 또한, 알고리즘의 성능이 검증 기준을 충족하지 않을 때, 데이터 처리 시스템을 이용하여, 알고리즘의 하나 이상의 하이퍼파라미터를 최적화하고, 최적화된 하나 이상의 하이퍼파라미터를 이용하여 알고리즘에 관한 검증 워크플로우를 재실행하는 단계를 포함한다. 이 방법은 또한, 알고리즘의 성능이 검증 기준을 충족할 때 데이터, 처리 시스템에 의해, 알고리즘의 성능 및 하나 이상의 하이퍼파라미터를 알고리즘 개발자에게 제공하는 단계를 포함한다. 이 양태의 다른 실시예들은, 대응하는 컴퓨터 시스템, 장치, 및 방법들의 행동들을 수행하도록 각각 구성된 하나 이상의 컴퓨터 저장 디바이스에 기록된 컴퓨터 프로그램을 포함한다.
구현들은 다음과 같은 피처들 중 하나 이상을 포함할 수 있다. 검증 선택 기준이, 임상 코호트 기준, 인구통계학적 기준, 및/또는 데이터 세트 클래스 균형을 포함하고, 임상 코호트 기준이, 코호트 연구를 위해 데이터 자산들이 획득될 사람들의 그룹, 코호트 연구의 유형, 한 그룹의 사람들이 소정 기간 동안 노출될 수 있는 위험 요소들, 해결해야 할 질문 또는 가설 및 연관된 질병 또는 상태, 코호트 연구에 대한 기준을 정의하는 기타의 파라미터들, 또는 이들의 임의의 조합을 정의하는, 방법. 보안 캡슐 컴퓨팅 프레임워크가, 알고리즘을 실행하는데 요구되는 암호화된 코드를 수락하도록 구성된 컴퓨팅 인프라스트럭처 내에서 공급되고, 컴퓨팅 인프라스트럭처를 공급하는 단계는, 컴퓨팅 인프라스트럭처 상에서 보안 캡슐 컴퓨팅 프레임워크를 인스턴스화하는 단계, 알고리즘 개발자에 의해, 보안 캡슐 컴퓨팅 프레임워크 내부에 암호화된 코드를 예치하는 단계, 일단 보안 캡슐 컴퓨팅 프레임워크가 인스턴스화되고 나면, 암호화된 코드를 해독하는 단계를 포함하는, 방법. 설명된 기술들의 구현들은, 하드웨어, 방법 또는 프로세스, 또는 컴퓨터 액세스가능한 매체 상의 컴퓨터 소프트웨어를 포함할 수 있다.
한 일반적인 양태는 방법을 포함하고, 이 방법은 : 데이터 처리 시스템에서, 알고리즘 및 그 알고리즘과 연관된 입력 데이터 요건들을 수신하는 단계를 포함하고, 여기서 입력 데이터 요건들은 알고리즘에 관해 운영될 데이터 자산들에 대한 검증 선택 기준을 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 자산들에 대한 검증 선택 기준에 기초하여 데이터 자산들을 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 데이터 자산들을, 데이터 호스트의 인프라스트럭처 내의 데이터 스토리지 구조 내에 큐레이팅하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘에 의한 처리를 위해 데이터 저장 구조 내의 데이터 자산들을 준비하는 단계를 포함한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘을 보안 캡슐 컴퓨팅 프레임워크 내에 통합하는 단계를 포함하고, 여기서 보안 캡슐 컴퓨팅 프레임워크는, 데이터 저장 구조 내의 데이터 자산들을, 데이터 자산들의 개인정보와 알고리즘을 보호하는 보안된 방식으로 알고리즘에게 서비스한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘에 관한 검증 워크플로우를 실행하는 단계를 포함하고, 여기서, 검증 워크플로우는 데이터 자산들을 입력으로서 취하고, 학습된 파라미터들을 이용하여 데이터 자산들에서 패턴들을 발견하고, 추론을 출력한다. 이 방법은 또한, 데이터 처리 시스템에 의해, 추론을 제공함에 있어서 알고리즘의 성능을 계산하는 단계를 포함하고, 여기서, 성능은 골드 표준 라벨들에 기초하여 계산된다. 이 방법은 또한, 데이터 처리 시스템에 의해, 알고리즘의 성능을 알고리즘 개발자에게 제공하는 단계를 포함한다. 이 양태의 다른 실시예들은, 대응하는 컴퓨터 시스템, 장치, 및 방법들의 행동들을 수행하도록 각각 구성된 하나 이상의 컴퓨터 저장 디바이스에 기록된 컴퓨터 프로그램을 포함한다.
구현들은 다음과 같은 피처들 중 하나 이상을 포함할 수 있다. 검증 선택 기준이, 임상 코호트 기준, 인구통계학적 기준, 및/또는 데이터 세트 클래스 균형을 포함하고, 임상 코호트 기준이, 코호트 연구를 위해 데이터 자산들이 획득될 사람들의 그룹, 코호트 연구의 유형, 한 그룹의 사람들이 소정 기간 동안 노출될 수 있는 위험 요소들, 해결해야 할 질문 또는 가설 및 연관된 질병 또는 상태, 코호트 연구에 대한 기준을 정의하는 기타의 파라미터들, 또는 이들의 임의의 조합을 정의하는, 방법. 이 방법은, 데이터 처리 시스템에 의해, 데이터 호스트를 온보딩(onboarding)하는 단계를 더 포함하고, 여기서 온보딩하는 단계는, 알고리즘에서의 데이터 자산들의 이용이 데이터 개인정보 요건들을 준수함을 확인하는 단계를 포함한다. 이 방법은 또한, 알고리즘을 검증할 목적으로 데이터 호스트로부터의 데이터 자산들을 이용하기 위한 기관 검토 위원회의 승인을 포함한 통제 및 준수 요건들을 완료하는 단계를 포함할 수 있다. 이 방법은 또한, 큐레이팅하는 단계가 복수의 데이터 저장 구조로부터 데이터 저장 구조를 선택하는 단계 및 데이터 호스트의 인프라스트럭처 내에 데이터 저장 구조를 공급하는 단계를 포함하고, 데이터 저장 구조의 선택은, 알고리즘 내의 알고리즘의 유형, 데이터 자산들 내의 데이터의 유형, 데이터 처리 시스템의 시스템 요건들, 또는 이들의 조합에 기초하는 경우를 포함할 수 있다. 이 방법은, 데이터 처리 시스템에 의해, 데이터 자산들의 개인정보 및 알고리즘을 보호하는 보안된 방식으로 알고리즘 및 데이터 자산들을 유지하는 단계를 더 포함한다. 설명된 기술들의 구현들은, 하드웨어, 방법 또는 프로세스, 또는 컴퓨터 액세스가능한 매체 상의 컴퓨터 소프트웨어를 포함할 수 있다.
구현들은 다음과 같은 피처들 중 하나 이상을 포함할 수 있다. 보안 캡슐 컴퓨팅 프레임워크가, 알고리즘을 실행하는데 요구되는 암호화된 코드를 수락하도록 구성된 컴퓨팅 인프라스트럭처 내에서 공급되고, 컴퓨팅 인프라스트럭처를 공급하는 단계는, 컴퓨팅 인프라스트럭처 상에서 보안 캡슐 컴퓨팅 프레임워크를 인스턴스화하는 단계, 알고리즘 개발자에 의해, 보안 캡슐 컴퓨팅 프레임워크 내부에 암호화된 코드를 예치하는 단계, 일단 보안 캡슐 컴퓨팅 프레임워크가 인스턴스화되고 나면, 암호화된 코드를 해독하는 단계를 포함하는, 방법. 이 양태의 다른 실시예들은, 대응하는 컴퓨터 시스템, 장치, 및 방법들의 행동들을 수행하도록 각각 구성된 하나 이상의 컴퓨터 저장 디바이스에 기록된 컴퓨터 프로그램을 포함한다. 이 방법은, 데이터 자산들이 복수의 분리된 세트들의 데이터 자산들이고, 암호화된 코드가 데이터 처리 시스템에 의해 서명되어 데이터 저장 보관소에 저장되고, 알고리즘의 성능이 복수의 분리된 세트의 데이터 자산들에 관해 수행된 복수의 검증으로부터 집결된 알고리즘의 검증에 대한 단일 검증 보고서로서 제공되는 경우를 포함한다. 설명된 기술들의 구현들은, 하드웨어, 방법 또는 프로세스, 또는 컴퓨터 액세스가능한 매체 상의 컴퓨터 소프트웨어를 포함할 수 있다.
일부 실시예에서, 하나 이상의 데이터 프로세서, 및 하나 이상의 데이터 프로세서에서 실행될 때 하나 이상의 데이터 프로세서로 하여금 여기서 개시된 하나 이상의 방법을 일부 또는 전부를 수행하게 하는 명령어들을 포함하는 비일시적인 컴퓨터 판독가능한 저장 매체를 포함하는 시스템이 제공된다.
일부 실시예에서, 비일시적인 머신 판독가능한 저장 매체에 유형적으로 구현되고 하나 이상의 데이터 프로세서로 하여금 여기서 개시된 하나 이상의 방법의 일부 또는 전부를 수행하게 하도록 구성된 명령어들을 포함하는 컴퓨터 프로그램 제품이 제공된다.
본 개시내용의 일부 실시예는 하나 이상의 데이터 프로세서를 포함하는 시스템을 포함한다. 일부 실시예에서, 시스템은, 하나 이상의 데이터 프로세서 상에서 실행될 때, 하나 이상의 데이터 프로세서로 하여금 여기서 개시된 하나 이상의 방법의 일부 또는 전부 및/또는 하나 이상의 프로세스의 일부 또는 전부를 수행하게 하도록 구성된 명령어들을 포함하는 비일시적인 컴퓨터 판독가능한 저장 매체를 포함한다. 본 개시내용의 일부 실시예는, 하나 이상의 데이터 프로세서로 하여금, 여기서 개시된 하나 이상의 방법의 일부 또는 전부 및/또는 하나 이상의 프로세스의 일부 또는 전부를 수행하게 하는 명령어들을 포함하는 비일시적인 머신 판독가능한 저장 매체에 유형적으로 구현된 컴퓨터 프로그램 제품을 포함한다.
채용된 용어와 표현들은 제한이 아닌 설명의 관점으로서 사용된 것이고, 이러한 용어와 표현의 사용에 발명 있어서, 도시되고 설명된 피처들또는 그 일부)의 어떠한 균등물을 배제하려는 의도는 없으며, 청구된 발명의 범위 내에서 다양한 수정이 가능하다는 것을 이해해야 한다. 따라서, 청구된 본 발명이 실시예들 및 선택사항적인 피처들에 의해 구체적으로 개시되었지만, 여기서 개시된 개념들의 수정 및 변형이 본 기술분야의 통상의 기술자에 의해 의지될 수 있고 이러한 수정들 및 변형들은 첨부된 청구항들에 의해 정의된 본 발명의 범위 내에 있는 것으로 간주된다는 것을 이해해야 한다.
본 발명은 다음과 같은 비제한적인 도면들을 통해 더 잘 이해될 것이며, 여기서:
도 1은 다양한 실시예에 따른 AI 생태계를 도시한다;
도 2는 다양한 실시예에 따른 AI 알고리즘 개발 플랫폼을 도시한다;
도 3은 다양한 실시예에 따른 데이터(예를 들어, 임상 및 건강 데이터)에 관해 모델들을 최적화 및/또는 검증하기 위한 핵심 프로세스를 도시한다;
도 4는 다양한 실시예에 따른 AI 알고리즘 개발 플랫폼에 하나 이상의 데이터 호스트를 가져와 온보드하기 위한 프로세스를 도시한다;
도 5는 다양한 실시예에 따른 AI 알고리즘 개발 플랫폼과 함께 이용될 데이터 자산들을 식별, 취득, 및 큐레이팅하기 위한 프로세스를 도시한다;
도 6은 다양한 실시예에 따른 AI 알고리즘 개발 플랫폼과 함께 이용될 데이터 자산들을 변환하기 위한 프로세스를 도시한다;
도 7은 다양한 실시예에 따른 AI 알고리즘 개발 플랫폼과 함께 이용될 데이터 자산들에 주석부기하기 위한 프로세스를 도시한다;
도 8은 다양한 실시예에 따라 AI 알고리즘 개발 플랫폼과 함께 이용될 데이터 자산들을 조율하기 위한 프로세스를 도시한다;
도 9는 다양한 실시예에 따른 AI 알고리즘 개발 플랫폼을 이용하여 하나 이상의 모델을 최적화하기 위한 프로세스를 도시한다;
도 10은 다양한 실시예에 따른 AI 알고리즘 개발 플랫폼을 이용하여 하나 이상의 모델을 검증하기 위한 프로세스를 도시한다;
도 11은 다양한 실시예에 따른 임상 및 건강 데이터에 관한 모델들을 최적화 및/또는 검증하기 위한 예시적인 흐름을 도시한다; 및
도 12는 다양한 실시예에 따른 데이터 처리 시스템의 일부로서의 예시적인 컴퓨팅 디바이스를 도시한다.
I. 서언
본 개시내용은 개인정보 보호되고 조율된 데이터(예를 들어, 임상 및 건강 데이터)의 복수의 소스에 분석을 분산시킴으로써 AI 애플리케이션들 및/또는 알고리즘들을 개발하기 위한 기술들을 설명한다. 더 구체적으로, 본 개시내용의 일부 실시예는, 개인정보 보호되고 조율된 데이터(예를 들어, 임상 및 건강 데이터)의 복수의 소스에 분석을 분산시킴으로써 (여기서는 개별적으로 또는 집합적으로 알고리즘 개발이라고 언급될 수 있는) 애플리케이션 및/또는 알고리즘 개발을 가속하는 AI 알고리즘 개발 플랫폼을 제공한다. 보건 산업에서의 문제들을 해결하기 위해 AI 알고리즘들이 개발되는 머신 학습 및 알고리즘 아키텍쳐의 다양한 실시예가 여기서 개시되지만, 이들 아키텍쳐 및 기술은 다른 유형들의 시스템 및 설정에서 구현될 수 있다는 것을 이해해야 한다. 예를 들어, 이들 아키텍쳐와 기술은 데이터의 민감도(예를 들어, 데이터가 영업 비밀 또는 개인들에 대한 사적 데이터를 포함하는지)로 인해 데이터를 보호할 책임이 있는 조직의 경계 외부에서의 데이터 공유가 배제되는 많은 산업들(금융, 생명 과학, 공급망, 국가 안보, 법 집행, 공공 안전 등)에서 AI 알고리즘들의 개발에서 구현될 수 있다.
여기서 개시된 다양한 실시예는, 훈련, 테스팅, 최적화 및 검증을 포함하는 알고리즘 및 모델 개발을 위한 기술들을 설명한다. "알고리즘(들)" 및 "모델(들)"이라는 용어들은 가독성과 간결성을 위해 상세한 설명(청구항들이 아님)에서 서로 바꾸어 사용되며, 따라서 여기서 "알고리즘(들)"이라는 용어가 사용되는 경우 "모델(들)"이라는 용어로 대체될 수 있고 "모델(들)"이라는 용어가 사용되는 경우 "알고리즘(들)"이라는 용어로 대체될 수 있다. 그러나, 이들 용어는 별도의 의미를 갖는다는 것을 이해해야 한다 : "알고리즘(들)"은 작업을 완료하거나 문제를 해결하기 위해 구현되는 기능들, 방법들, 또는 절차들이다; 반면 "모델(들)"은 하나 이상의 알고리즘으로 구성된 명확하게 정의된 계산들이며 어떤 값 또는 값들의 세트를 입력으로서 취하고 어떤 값 또는 값들의 세트를 출력으로서 생성한다. 예를 들어, 변수들이 선형적으로 관련된 경우 x의 소정 값에 대해 y의 값을 발견하기 위해, y = mx + b 등의 알고리즘을 이용하여 x와 y 변수들 사이의 선형 관계를 기술할 수 있다. 기울기(m) 및 절편(c)에 대한 값들을 갖는 모델은, 훈련, 테스트, 최적화, 또는 검증될 수 있고, 그 후, 모델은 알고리즘 y = mx + b 및 기울기(m) 및 절편(c)에 대한 값들을 이용하여 x의 상이한 점들에 대한 y의 값들을 발견하는데 이용될 수 있다. 전형적으로 규제되는 AI 및 ML 알고리즘들(예를 들어, 의료 애플리케이션들에서 이용하도록 의도된 알고리즘들)은 일반화할 수 있는 방식으로 수행되어야 하므로, 알고리즘이 이용되는 환경에 관계없이, 인종, 애플리케이션 환경 및 워크플로우(예를 들어, 특정한 임상 환경) 및 지리 등의 상세사항에 대해 알지 못한다. 일관된 성능을 달성하기 위하여, 알고리즘들은, 발견, 최적화 및 검증을 가능케하는 매우 다양한 데이터에 적시에 액세스해야 한다.
규제된 AI 및 ML 알고리즘들의 발견, 최적화 및 검증에 대한 가장 큰 장벽들 중 하나는, 많은 경우 개인정보-보호된 데이터인 매우 다양한 데이터에 적시에 액세스할 수 없다는 것이다. 개인정보-보호된 데이터는 법적으로 보호되고, 기관에 의해 조직 자산으로 간주되며, "소유자들"이 상이한 격리된 저장소들에 상주하고, 알고리즘 개발자가 데이터에 액세스할 수 있는 경우에도, 계산가능한 형태가 아닐 가능성이 높다. 의료 산업 내에서, NIH(National Institutes of Health) 소장인 Francis Collins, MD, PhD가 2018년 7월 NIH Workshop on Harnessing Artificial Intelligence and Machine Learning to Advance Biomedical에 대한 프리젠테이션에서 강조한 바와 같이 이 문제는 널리 이해되고 있으며, 워크샵에서 그는 "많은 연구자들이 데이터에 액세스하고 이것을 분석가능하게 만드는데 상당한 시간을 투자합니다; 이러한 측면은 개선될 필요가 있습니다"라고 말했다. 또한, NIH는, "Strategic Plan for Data Science"에서, "현재로서는 혁신적인 알고리즘들 및 도구들을 . . . 사용 용이성 및 운영 효율성의 업계 표준을 충족하는 엔터프라이즈급 자원으로 변환하거나 강화할 일반적인 시스템이 없다"라고 인정했다. 이들 과제는, 데이터 자산들이 상이한 위치들에 분산되어 있고 민감하거나 사적인 데이터를 포함하는 산업들 전반에 걸쳐 광범위하게 적용된다.
AI 솔루션 개발의 주요 역할에는, 알고리즘 개발자, 데이터 제공자, 제3자 주석부기자들, 제3자 검증자(들), 알고리즘 규제 기관(들), 최종 사용자 또는 고객(예를 들어, 보건 기관들)이 포함된다. (의료, 금융, 법 집행, 훈련 등의) 규제된 환경에서 알고리즘들을 개발하는 프로세스의 복잡성에 대한 한 예로서, 보건을 위한 AI 또는 ML 규제된 알고리즘을 개발하는 회사들의 현재의 프로세스를 고려하자. 이러한 회사들은 전형적으로 업계 표준을 충족하는 알고리즘을 생성하기 위해 긴 프로세스를 거친다. 이 프로세스는, 데이터 제공자들의 보호, 기술적 환경 확립, 보안 및 개인정보 검토 확립, 데이터 준비(예를 들어, 큐레이션 및 개인식별불능화), 개인식별불능화된 데이터를 알고리즘 개발자들에게 전달, 알고리즘 발견 및 개발을 위해 개인식별불능화된 데이터에 AI 또는 ML의 적용, 알고리즘 발견 및 개발의 결과들의 문서화, 및 검토 및 승인을 위해 알고리즘 또는 모델의 규제 기관(예를 들어, 식품의약국(FDA)) 제출을 포함할 수 있다. 이 프로세스는, 재구성 공격들(원시 데이터로부터 추출된 노출된 피처들로부터 원시 사적 데이터를 재구성하는 것), 모델 반전 공격들(모델로부터 수신된 응답들을 이용하여 피처 벡터들을 생성하는 것), 멤버십 추론 공격들(샘플이 ML 모델을 구축하는데 이용되는 훈련 세트의 멤버인지를 결정), 및 사적 데이터의 재식별을 포함한 다수의 개인정보 위협들을 포함한다.
많은 종래의 개인정보 보호 강화 기술들은, 데이터 제공자들과 알고리즘 개발자들이 이들 개인정보 위협들을 극복하거나 최소화하기 위해 보안 통신, 암호화 접근들 또는 차등적-사적 데이터 릴리스(섭동 기술들)를 이용하는 것을 허용하는데 집중하고 있다. 예를 들어, 차등적 개인정보는 멤버쉽 추론 공격을 방지하는데 효과적이다. 추가로, 모델 추론 출력을 제한함으로써 모델 반전 및 멤버십 추론 공격들의 성공이 감소될 수 있다(예를 들어, 클래스 라벨들만). 발견, 최적화 및 검증을 수행하는 동안 사적 데이터를 보호하는 전술한 기술들에도 불구하고, 많은 알고리즘 개발자들은, 알고리즘 개발의 출시 시간 증가, 비용 및 복잡성 증가로 인해 (의료 기관의 임상 데이터를 포함한) 개인정보-보호된 데이터의 이용을 회피하므로, 그에 따라 충실도(임상 포함)의 부족으로 인해 고유한 편향을 구축하고 개인정보에 민감한 산업들에서 이용할 AI를 생성하는 실제 연구보다는 본질적으로 개념 연구의 증명인 알고리즘들을 생성한다. 예를 들어, 개인정보-보호된 데이터를 보호하기 위해 요구되는 단계들을 완료하는 일정은 전형적인 벤처 투자 수익 기대치를 능가한다. 자본 시장은 덜 민감한 데이터를 활용하는 산업들이 알고리즘들을 생성하고 개인정보에 민감한 산업들(보건 포함)에서 동일한 것을 기대하는 적시성을 경험했다. 예를 들어, 수익을 달성하기 위한 이러한 인내심 부족은, 초기 단계의 회사들이 임상적으로 배치된 알고리즘들에 대해 요구되는 다중-사이트 훈련을 계속할 현금이 바닥나면서 보건 AI에 대한 대부분의 투자가 목표에 미치지 못한다는 것을 의미한다.
이들 문제를 해결하기 위해, 다양한 실시예는, 개인정보 보호되고 조율된 임상 및 건강 데이터의 복수의 소스에 분석을 분산시킴으로써 인공 지능 애플리케이션을 개발하기 위한 플랫폼 및 기술들에 관한 것이다. 예를 들어, 보건 AI 알고리즘 개발의 정황에서, 플랫폼은, 인종 및 장비 다양성을 갖춘 데이터를 집합적으로 나타내는 전 세계의 참여 보건 데이터 제공자 조직 그룹을 포함할 수 있다. 이 그룹은, 알고리즘 개발자가 복수의 데이터 소스에 액세스하는 하나의 계약을 설정할 수 있게 하는 중앙 집중식 계약 및 가격 책정 모델에 참여할 수 있다. 데이터 조율, 주석부기, 검증 및 연합된 훈련을 위한 공유 기술 인프라스트럭처의 플랫폼내 확립은, 알고리즘 개발자가 단일의 개발 및 배치 환경에서 복수의 데이터 소스에 액세스할 수 있게 한다. 다중-조직 협업은, 알고리즘 개발자가 복수의 조직에 걸쳐 적용할 수 있는 단일의 표준화된 보안 및 개인정보 검토를 수행할 수 있게 하는 협업 하에 중앙 집중화될 표준화된 보안 및 개인정보 검토를 채택할 수 있는 능력을 가질 수 있다. 데이터 준비는 : (생명 과학 회사들의 정황에서 이용되는) 표준화된 다중-조직 IRB(Institutional Review Board Approval) 포멧을 채택하여 복수의 조직과의 작업의 중복성을 제거하는 것; 및 알고리즘 개발자들을 기저 데이터 세트들에 노출시키지 않아 기저 자산들을 보호하는 방식으로, 데이터 큐레이션, 개인식별불능화, 변환, 및 증강을 수행하고 디버그하기 위한 큐레이션, 개인식별불능화, 및 증강 툴들 및 워크플로우들을 개발하는 것(하나의 데이터 호스트용으로 개발된 툴들이 추가적인 데이터 호스트들로부터의 데이터에서의 재사용을 위해 재사용 또는 수정될 수 있음)을 포함할 수 있다. 알고리즘들의 발견, 검증 또는 훈련에 이용할 데이터 준비는 원래의 데이터 소유자의 통제로부터 절대 이전되지 않는다. 발견, 검증 및/또는 훈련 실행을 담당하는 소프트웨어 컴포넌트들은, 데이터 호스트에 의해 제어되는 인프라스트럭처 내에서 캡슐화된 포멧으로 실행된다. 이 인프라스트럭처는 구역내 또는 클라우드 상에 있을 수 있지만 완전히 데이터 호스트의 도메인 제어 내에 있다.
플랫폼은, 개인정보 보호 방식으로 준비된 데이터에 AI 또는 ML을 적용하는 보안 캡슐 컴퓨팅 서비스 프레임워크를 제공한다. 일부 경우에, 이 프로세스의 일부로서 기술적 캘리브레이션이 수행되지만 종단간 계산 파이프라인이 완료되었음을 보장하기 위해 준비된 데이터의 작은 부분에 관해 반복적 프로세스로 초기에 수행될 수도 있다. 이들 단계는 플랫폼의 표준화된 인프라스트럭처 내에서 동작하기 때문에, 이 프로세스는 데이터 호스트의 직원이 아니라 플랫폼에 의해 관리될 수 있다. 이것은 프로세스가 반복가능하고 신축가능(scalable)하며, 잘 훈련되고 프로세스에 익숙한 개인들에 의해 수행됨을 의미한다. 준비된 데이터에 AI 또는 ML을 적용하는 것은, 알고리즘 발견, 알고리즘 최적화, 및/또는 알고리즘 검증을 포함할 수 있다.
일부 경우에는, 알고리즘 발견 동작이 완전히 데이터 호스트의 기술적 제어 내에서 구현될 수 있어서, 소정 범위의 기저 데이터의 보호 레벨들을 허용한다. 소정 유형들의 알고리즘 개발 활동은 데이터 유출 위험의 최소화를 보장하기 위해 차등적 개인정보 기술들을 이용하여 보호될 수 있다. 당사자들 사이의 신뢰 수준에 따라, 데이터 호스트 환경에서 실행되는 캡슐화된 소프트웨어의 알고리즘 활동 및 송출 트래픽에 대한 광범위한 모니터링을 통해 새로운 알고리즘 발견 방법들이 가능케될 수 있다. 본 개시내용의 예시적인 한 실시예는 : 데이터 처리 시스템에서, 알고리즘 또는 모델, 및 알고리즘 또는 모델과 연관된 입력 데이터 요건들을 수신하는 단계, ―입력 데이터 요건들은 알고리즘 또는 모델에 관해 실행될 데이터 자산들에 대한 최적화 및/또는 검증 선택 기준을 포함함―; 데이터 처리 시스템에 의해, 데이터 자산들에 대한 최적화 및/또는 검증 선택 기준에 기초하여 데이터 자산들이 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계; 데이터 처리 시스템에 의해, 데이터 자산들을 데이터 호스트의 인프라스트럭처 내의 데이터 저장 구조 내에 큐레이팅하는 단계; 데이터 처리 시스템에 의해, 알고리즘 또는 모델에 의한 처리를 위해 데이터 저장 구조 내의 데이터 자산들을 준비하는 단계; 데이터 처리 시스템에 의해, 알고리즘 또는 모델을 보안 캡슐 컴퓨팅 프레임워크 내에 통합하는 단계, ―보안 캡슐 컴퓨팅 프레임워크는 데이터 자산들의 개인정보 및 알고리즘 또는 모델을 보호하는 보안된 방식으로 데이터 저장 구조 내의 데이터 자산들을 알고리즘 또는 모델에게 서비스함―; 및 데이터 처리 시스템에 의해, 알고리즘 또는 모델을 통해 데이터 자산들을 운영하는 단계를 포함한다.
일부 경우에, 최적화는, 데이터의 외부 공유가 요구되지 않고, 완전히 데이터 호스트의 인프라스트럭처 및 제어 내에서 수행될 수 있다. 데이터 호스트에 의해 선택된 보안 레벨에 따라, 훈련 데이터의 유출 가능성이 없는 알고리즘 최적화 지원이 가능하다(예를 들어, 동형 암호화(homomorphic encryption) 및 리팩터링된 알고리즘(refactored algorithm)들을 이용하여). 코호트 개발을 위한 모든 툴들은, 개인 데이터에 관한 재구성, 구별, 추적 및 기타의 공격을 방지하기 위해 엄격한 차등 개인정보 제어로 관리될 수 있다. 본 개시내용의 한 예시적인 실시예는 : 알고리즘 또는 모델을 식별하는 단계를 포함하며, ―알고리즘 또는 모델은 보안 캡슐 컴퓨팅 프레임워크 내에 통합되고, 보안 캡슐 컴퓨팅 프레임워크는 훈련 데이터 자산들의 개인정보와 알고리즘 또는 모델을 보호하는 보안된 방식으로 데이터 호스트의 데이터 저장 구조들 내의 훈련 데이터 자산들을 알고리즘 또는 모델에게 서비스함―; 데이터 처리 시스템에 의해, 알고리즘 또는 모델에 관한 연합된 훈련 워크플로우 실행하는 단계, ―연합된 훈련 워크플로우는, 훈련 데이터 자산들을 입력으로서 취하고, 훈련 데이터 자산들의 피처들을 파라미터들을 이용하여 타겟 추론에 맵핑하고, 손실 또는 오류 함수를 컴퓨팅하고, 손실 또는 오류 함수를 최소화하기 위해 파라미터들을 학습된 파라미터들로 업데이트하고, 훈련된 알고리즘 또는 모델을 출력함―; 데이터 처리 시스템에 의해, 알고리즘 또는 모델에 대한 학습된 파라미터들을 완전 연합된 알고리즘 또는 모델 내에 통합하는 단계, ―통합하는 단계는, 학습된 파라미터들을 집결하여 집결된 파라미터들을 획득하는 단계 및 완전 연합된 알고리즘 또는 모델의 학습된 파라미터들을 집결된 파라미터들로 업데이트하는 단계를 포함함―; 데이터 처리 시스템에 의해, 완전 연합된 알고리즘 또는 모델에 관해 테스트 워크플로우를 실행하는 단계, ―테스트 워크플로우는, 테스트 데이터를 입력으로서 취하고, 업데이트된 학습된 파라미터들을 이용하여 테스트 데이터에서 패턴들을 발견하고, 추론(입력 데이터, 학습된 파라미터들, 및 알고리즘 또는 모델의 구성에 기초하여 획득된 결론(예를 들어, 모델의 예측 또는 알고리즘의 결과))을 출력함―; 데이터 처리 시스템에 의해, 추론을 제공함에 있어서 완전 연합된 알고리즘의 성능을 계산하는 단계; 데이터 처리 시스템에 의해, 완전 연합된 알고리즘 또는 모델의 성능이 알고리즘 종료 기준을 충족하는지를 결정하는 단계; 완전 연합된 알고리즘 또는 모델의 성능이 알고리즘 종료 기준을 충족하지 않을 때, 데이터 처리 시스템에 의해, 알고리즘 또는 모델을 완전 연합된 알고리즘 또는 모델로 교체하고, 완전 연합된 알고리즘 또는 모델에 관해 연합된 훈련 워크플로우를 재실행하는 단계; 및 완전 연합된 알고리즘 또는 모델의 성능이 알고리즘 종료 기준을 충족할 때, 데이터 처리 시스템에 의해, 완전 연합된 알고리즘 또는 모델의 성능 및 집결된 파라미터들을 알고리즘 또는 모델의 알고리즘 개발자에게 제공하는 단계를 포함한다.
일부 경우에, 검증은, 데이터의 외부 공유가 요구되지 않고, 완전히 데이터 호스트의 인프라스트럭처 및 제어 내에서 수행될 수 있다. 검증 데이터의 유출 가능성은 없으며 코호트 개발을 위한 모든 툴은, 개인 데이터에 관한 재구성, 구별, 추적 및 기타의 공격들을 방지하기 위해 엄격한 차등 개인정보 제어로 관리된다. 본 개시내용의 예시적인 한 실시예는 : 데이터 처리 시스템에서, 알고리즘, 및 알고리즘과 연관된 입력 데이터 요건들을 수신하는 단계, ―입력 데이터 요건들은 알고리즘에 관해 실행될 데이터 자산들에 대한 검증 선택 기준을 포함함―; 데이터 처리 시스템에 의해, 데이터 자산들에 대한 검증 선택 기준에 기초하여 데이터 자산들이 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계; 데이터 처리 시스템에 의해, 데이터 자산들을 데이터 호스트의 인프라스트럭처 내의 데이터 저장 구조 내에 큐레이팅하는 단계; 데이터 처리 시스템에 의해, 알고리즘에 의한 처리를 위해 데이터 저장 구조 내의 데이터 자산들을 준비하는 단계; 데이터 처리 시스템에 의해, 알고리즘을 보안 캡슐 컴퓨팅 프레임워크 내에 통합하는 단계, ―보안 캡슐 컴퓨팅 프레임워크는 데이터 자산들의 개인정보 및 알고리즘을 보호하는 보안된 방식으로 데이터 저장 구조 내의 데이터 자산들을 알고리즘에게 서비스함―; 데이터 처리 시스템에 의해, 알고리즘에 관한 검증 워크플로우를 실행하는 단계, ―검증 워크플로우는 검증 데이터 자산들을 입력으로서 취하고, 학습된 파라미터들을 이용하여 검증 데이터 자산들에서 패턴들을 발견하고, 추론을 출력함― ; 데이터 처리 시스템에 의해, 추론을 제공하는데 있어서 알고리즘의 성능을 계산하는 단계, ―성능은 골드 표준 라벨들에 기초하여 계산됨―; 및 데이터 처리 시스템에 의해, 알고리즘의 성능을 알고리즘 개발자에게 제공하는 단계를 포함한다. 규제 제출(regulatory submission)을 요구하는 이들 알고리즘 또는 모델의 핵심 요건은, 종종, 상이한 지역들로부터의 다양하고 분리된 데이터 세트들에 대한 알고리즘들 또는 모델들의 검증이다. 플랫폼이 일관된 동작 파라미터들 및 검증 보고서들로 분리된 데이터 세트에 대한 검증을 수행하고, 플랫폼이 각각의 데이터 세트의 기저 특성들(인구통계, 이용된 장비, 데이터 수집에 이용된 프로토콜)에 관해 보고하기 때문에, 훨씬 더 쉽고 빠르며, 대부분의 규제 제출에 필요한 검증을 완료하는데 비용이 적게 든다.
유리하게는, 이들 기술은, 알고리즘들 및 모델들의 다중-사이트 개발을 지원하기 위해 개인정보-보호 분산형 플랫폼의 배치를 허용한다. 또한, 이들 기술은, 알고리즘 개발자들이 알고리즘 또는 모델 출시 시간을 가속하고, 상업적 실행가능성을 최적화하고, 사적 데이터를 이용하는 알고리즘들 및 모델들에 대한 투자 위험을 줄이는데 도움이 될 수 있다. 또한, 이들 기술은, 데이터 호스트가 적용가능한 데이터 세트들에서 자신들의 데이터가 표시된 개인들의 개인정보를 보호하고 환자 결과들을 최적화하며(보건 애플리케이션에서), 이 분야에서 혁신적인 사고 리더십을 창출하는 방식으로, 그들의 데이터 자산들의 가치를 최적화하는데 도움이 될 수 있다.
Ⅱ. 인공지능(AI) 생태계
도 1은, 데이터 세트(105a-n)로부터의 데이터의 증강, 알고리즘/모델(110a-n) 배치, 알고리즘/모델(110a-n) 검증, 알고리즘/모델(110a-n) 최적화(훈련/테스트), 및 복수의 데이터 세트(105a-n)에 관한 알고리즘들/모델들(110a-n)의 연합된 훈련을 포함한, 사적 데이터 세트들(105a-n)('n'은 임의의 자연수를 나타냄)에 관한 보안되고 연합된 컴퓨팅을 허용하는 AI 생태계(100)를 도시한다. AI 개발 플랫폼(110)은, AI 시스템(115) 및 보안 캡슐 컴퓨팅 서비스들(120a-n)을 포함한다. AI 시스템(115)은 AI 생태계(100)에서 소프트웨어 자산들의 개발 및 배치를 관리한다. 훈련, 최적화, 채점 및 검증을 위한 미리훈련된 알고리즘들/모델들(110a-n), 및 (데이터에 관해 알고리즘들/모델들을 훈련하기 위한) 알고리즘 훈련 코드를 포함하는 다양한 소프트웨어 모듈이 AI 시스템(115)을 통해 개발되고 배치된다. 예를 들어, AI 시스템(115)은 다양한 소프트웨어 컴포넌트를 하나 이상의 보안 캡슐 컴퓨팅 서비스(120a-n)에 배치하거나 출력할 수 있다. 보안 캡슐 컴퓨팅 서비스들(120a-n)은, 완전히 데이터 호스트의 컴퓨팅 도메인 내에서 보안 캡슐 컴퓨팅 서비스 환경에서 컴퓨팅될 수 있는 캡슐화되거나 기타의 방식으로 휴대형 소프트웨어 컴포넌트들이다.
보안 캡슐 컴퓨팅 서비스들은, 검증 및/또는 훈련될 알고리즘들을 포함한 소프트웨어를 외부 환경(이 경우, 데이터 호스트의 컴퓨팅 환경)에 배치하는 것을 용이화하고, 캡슐 내에 배치된 소프트웨어의 개인정보와 호스트 컴퓨팅 환경의 보안 양쪽 모두를 보호하는 보안 서비스들을 추가로 제공한다. 상이한 실시예들에서, 암호화, 보안 캡슐 컴퓨팅 프레임워크, 격리, 난독화 및 기타의 방법들을 이용하여 모든 당사자에게 보안을 제공할 수 있다. 예를 들어, 일부 경우에, 보안 캡슐화된 컴퓨팅 모듈(예를 들어, 데이터 호스트)에서 소프트웨어를 실행하는 조직이 알고리즘 개발자의 전용 소프트웨어를 검사, 복사 또는 수정할 수 없다는 것이 알고리즘 개발자에게 중요할 수 있다. 보안 캡슐화된 컴퓨팅 서비스들은 이러한 컴퓨팅 모델을 지원하는 휴대형 환경을 제공한다. 또한, 많은 경우에, 보안 캡슐화된 컴퓨팅 서비스들을 실행하는 이해 관계자는 호스팅되는 소프트웨어가 악의적이며 호스트의 인프라스트럭처에 해를 끼치거나 데이터 개인정보를 손상시킬 수 있는 가능성에 대비한 보호를 원할 것이다. 추가적으로, AI 시스템(115)은, 훈련(예를 들어, 부모-교사 훈련 패러다임)을 위한 데이터 자원들, 모델 파라미터들, 또는 공유된 데이터를 배치하거나 출력할 수 있다. 그 대가로, AI 시스템(115)은, 컴퓨팅 결과들, 데이터, 및 컴퓨팅 모니터링 결과들, 훈련된 모델들, 모델 파라미터들, 또는 보안 캡슐 컴퓨팅 서비스들(120a-n) 등의 배치된 컴퓨팅 컴포넌트들 및 프로세스들의 기타의 결과들을 포함하는 입력을 수신할 수 있다.
보안 캡슐 컴퓨팅 서비스들(120a-n)은 동일하거나 상이한 기능들 또는 동작들을 제공할 수 있다. 예를 들어, 보안 캡슐 컴퓨팅 서비스들(120a 및 120n)은 데이터 변환들 및 컴퓨팅 활동들을 관리할 수 있다; 그러나, 이들은 컴퓨팅 활동들을 수행할 때 상이한 기능들이나 동작들을 구현할 수 있다. 보안 캡슐 컴퓨팅 서비스(120a)는 AI 시스템(100)으로부터 데이터 및 소프트웨어를 수신하고 데이터 소스들(125a-n)(예를 들어, 데이터 소스들 120a, 120b)로부터 선별되지 않은 데이터를 수신할 수 있다. 데이터는, 임포팅되고, 선택사항적으로 저장되고, 변환되고, 기타의 방식으로 조율된 다음 AI 시스템(100)으로부터의 소프트웨어(예를 들어, 알고리즘들/모델들(110a-n))에 의해 컴퓨팅될 수 있다. 대조적으로, 보안 캡슐 컴퓨팅 서비스(120n)는, AI 시스템(100)으로부터 데이터 및 소프트웨어를 수신하고, 데이터 소스들(125a-n)(예를 들어, 데이터 소스들 120a 및 120b)로부터 선별되지 않은 데이터를 수신하고, 하나 이상의 제3자(130)로부터의 데이터를 결합할 수 있다. 데이터는, 임포팅되고, 선택사항적으로 저장되고, 변환되고, 다른 데이터와 결합되고, 기타의 방식으로 조율된 다음 AI 시스템(100)으로부터의 소프트웨어(예를 들어, 알고리즘들/모델들(110a-n))에 의해 컴퓨팅될 수 있다. 보안 캡슐 컴퓨팅 서비스들(120a-n)은 통신 네트워크(135)를 통해 데이터 소스(125a-n) 및 선택사항으로서 제3자(130)와 통신한다. 통신 네트워크(135)의 예들은, 모바일 네트워크, 무선 네트워크, 셀룰러 네트워크, 영역 네트워크(LAN), 광역 네트워크(WAN), 기타의 무선 통신 네트워크, 또는 이들의 조합을 포함할 수 있다.
도 2는, 개인정보 보호되고 조율된 데이터의 복수의 소스에 분석을 분산시킴으로써 인공 지능 알고리즘들을 개발하기 위한 AI 알고리즘 개발 플랫폼(200)(예를 들어, 도 1과 관련하여 설명된 AI 생태계(100) 내에서 구현된 데이터 처리 시스템)을 도시한다. 일부 예에서, 플랫폼(200)은, 보안 캡슐 컴퓨팅 서비스(210)의 네트워크와 통신하는 AI 시스템(205)을 포함한다(간소화를 위해, 하나의 보안 캡슐 컴퓨팅 서비스만이 도시됨). AI 시스템(205)은, 데이터 과학 개발 모듈(215), 데이터 조율기 워크플로우 생성 모듈(220), 소프트웨어 배치 모듈(225), 연합된 마스터 알고리즘 훈련 모듈(230), 시스템 모니터링 모듈(235), 및 전역적 결합 데이터(240)를 포함하는 데이터 저장소를 포함할 수 있다. AI 시스템(205)은 하나 이상의 알고리즘 개발자와 통신할 수 있고 새로운 프로젝트에서 최적화 및/또는 검증될 하나 이상의 알고리즘 또는 모델을 수신하도록 구성된다.
데이터 과학 개발 모듈(215)은 하나 이상의 모델의 최적화 및/또는 검증을 위해 하나 이상의 알고리즘 개발자로부터 입력 데이터 요건들을 수신하도록 구성될 수 있다. 입력 데이터 요건들은, 데이터 큐레이션, 데이터 변환, 및 데이터 조율 워크플로우의 목표를 정의한다. 입력 데이터 요건들은 또한, 하나 이상의 모델에서 이용하기에 수락가능한 데이터 자산들을 식별하기 위한 제약들을 제공한다. 데이터 조율기 워크플로우 생성 모듈(220)은, 변환, 조율, 및 주석부기 프로토콜 개발 및 배치를 관리하도록 구성될 수 있다. 소프트웨어 배치 모듈(225)은, 하나 이상의 모델에서 이용하기 위한 데이터 자산들을 평가하기 위해 데이터 과학 개발 모듈(215) 및 데이터 조율기 워크플로우 생성 모듈(220)과 함께 구성될 수 있다. 이 프로세스는 자동화되거나 대화식 검색/질의 프로세스일 수 있다. 소프트웨어 배치 모듈(225)은 또한, 요구되는 라이브러리 및 자원들과 함께 보안 캡슐 컴퓨팅 프레임워크 내에 모델들을 통합하기 위해 데이터 과학 개발 모듈(215)과 함께 구성될 수 있다.
일부 실시예에서, 소스들(260)(예를 들어, 환자들)로부터 데이터 호스트들(255)에 의해 수집된 복수의 분리된 사적 데이터 세트들(245, 250)(예를 들어, 임상 및 건강 데이터)로부터 학습된 강력하고 우수한 알고리즘/모델을 개발하는 것이 바람직하다. 연합된 마스터 알고리즘 훈련 모듈(230)은 분리된 데이터 세트들로부터의 학습을 단일의 마스터 알고리즘 내에 집결하도록 구성될 수 있다. 상이한 실시예들에서, 연합된 훈련을 위한 알고리즘 방법론은 상이할 수 있다. 예를 들어, 모델 파라미터들의 공유, 앙상블 학습, 공유된 데이터에 관한 부모-교사 학습 및 기타의 많은 방법들을 개발하여 연합된 훈련을 허용할 수 있다. 개인정보 및 보안 요건들은, 각각의 데이터 시스템이 데이터 액세스에 대해 지불해야 하는 금액 등의 상업적 고려사항과 함께, 어떤 연합된 훈련 방법론이 이용될지를 결정할 수 있다.
시스템 모니터링 모듈(235)은 보안 캡슐 컴퓨팅 서비스(210)에서의 활동을 모니터링한다. 모니터링되는 활동은, 예를 들어 컴퓨팅 워크로드, 오류 상태, 및 접속 상태 등의 동작 추적으로부터, 처리된 데이터의 양, 알고리즘 수렴 상태, 데이터 특성들에서의 변화들, 데이터 오류들, 알고리즘/모델 성능 메트릭들, 및 각각의 이용 사례 및 실시예에서 요구되는, 일단의 추가적인 메트릭들의 호스트 등의, 데이터 과학 모니터링에까지 이른다.
일부 경우에, 사적 데이터 세트들(245, 250)을 추가 데이터(240)(결합 데이터)로 증강시키는 것이 바람직하다. 예를 들어, 지리위치 공기 품질 데이터는 환경 노출들을 확인하기 위해 환자들의 지리위치 데이터와 결합될 수 있다. 소정의 예들에서, 결합 데이터(240)는, 데이터 조율 또는 컴퓨팅 동안 데이터(245, 250)와 결합될 보안 캡슐 컴퓨팅 서비스들(210)에 전송될 수 있다.
보안 캡슐 컴퓨팅 서비스들(210)은, 조율기 워크플로우 모듈(265), 조율된 데이터(270), 원격 컴퓨팅 모듈(275), 시스템 모니터링 모듈(280), 및 데이터 관리 모듈(285)을 포함할 수 있다. 데이터 조율기 워크플로우 생성 모듈(230)에 의해 관리되는 변환, 조율 및 주석부기 워크플로우들은, 변환들 및 조율된 데이터(270)를 이용하여 조율기 워크플로우 모듈(265)에 의해 환경에 배치되고 수행될 수 있다. 일부 경우에, 결합 데이터(240)는 데이터 조율 동안 데이터(245, 250)와 결합되기 위해 조율기 워크플로우 모듈(265)에 전송될 수 있다. 원격 컴퓨팅 모듈(275)은 알고리즘/모델을 통해 사적 데이터 세트들(245, 250)을 운영하도록 구성될 수 있다. 일부 실시예에서, 운영하는 단계는 훈련 워크플로우를 실행하는 단계를 포함하고, 훈련 워크플로우는 : 알고리즘/모델의 복수의 인스턴스를 생성하는 단계, 사적 데이터 세트들(245, 250)을 훈련 데이터 세트들 및 하나 이상의 테스트 데이터 세트로 분할하는 단계, 훈련 데이터 세트들에 관해 알고리즘/모델의 복수의 인스턴스를 훈련시키는 단계, 모델의 복수의 인스턴스 각각으로부터의 훈련 결과들을 완전 연합된 알고리즘/모델 내에 통합하는 단계, 완전 연합된 알고리즘/모델을 통해 하나 이상의 테스트 데이터 세트를 운영하는 단계, 하나 이상의 테스트 데이터 세트의 운영에 기초하여 완전 연합된 모델의 성능을 컴퓨팅하는 단계를 포함한다. 다른 실시예들에서, 운영하는 단계는 검증 워크플로우를 실행하는 단계를 포함하고, 검증 워크플로우는 : 사적 데이터 세트들(245, 250)을 하나 이상의 검증 데이터 세트로 분할, 결합 및/또는 변환하는 단계, 머신-학습 알고리즘/모델을 통해 하나 이상의 검증 데이터 세트를 운영하는 단계, 및 하나 이상의 검증 데이터 세트의 운영에 기초하여 머신-학습 알고리즘/모델의 성능을 컴퓨팅하는 단계를 포함한다. 일부 경우에, 결합 데이터(240)는 컴퓨팅 동안 데이터(245, 250)와 결합되도록 원격 컴퓨팅 모듈(275)에 전송될 수 있다.
시스템 모니터링 모듈(280)은 보안 캡슐 컴퓨팅 서비스(210)에서의 활동을 모니터링한다. 모니터링된 활동은, 각각의 이용 사례 및 실시예에서 요구되는 바와 같은, 알고리즘/모델 섭취, 워크플로우 구성, 및 데이터 호스트 온보딩 등의, 동작 추적을 포함할 수 있다. 데이터 관리 모듈(285)은, 데이터 호스트(255)의 기존 인프라스트럭처 내에 데이터 자산들을 유지하면서 데이터 호스트(255)로부터 사적 데이터 세트들(245, 250) 등의 데이터 자산들을 임포팅하도록 구성될 수 있다.
III. 모델들을 최적화 및/또는 검증하기 위한 기술들
다양한 실시예에서, 개인정보 보호되고 조율된 데이터(예를 들어, 조율된 임상 및 건강 데이터)의 하나 이상의 소스를 이용하여 하나 이상의 모델을 최적화하고 검증하기 위한 기술들이 제공된다. 모델들은 제1 엔티티(예를 들어, 생명 과학 회사 등의 알고리즘 개발자)에 의해 제공될 수 있고, 데이터 세트들은 제2 엔티티(예를 들어, 학술 의료 센터 등의 데이터 호스트)에 의해 제공될 수 있다. 예를 들어, 생명 과학 회사들은, 개인정보 보호되고, 조율된 임상 및 건강 데이터의 하나 이상의 소스에 관한 모델의 실행 성능을 최적화하거나 평가함으로써, 제품들 및 서비스들의 출시 시간을 가속하거나 제품들 및 서비스들의 상업적 실행가능성을 최적화하는데 관심이 있을 수 있다. 또한, 학술 의료 센터들은, 데이터 개인정보를 유지하는 방식으로 그들의 임상 및 건강 데이터의 가치를 높이는데 관심이 있을 수 있다. 도 3에 도시된 바와 같이, 이들 2개의 엔티티의 요구를 충족시키기 위해, 임상 및 건강 데이터에 관해 모델들을 최적화 및/또는 검증하기 위한 핵심 프로세스(300)는, 인공 지능 알고리즘 개발 플랫폼(예를 들어, 도 1 및 2와 관련하여 설명된 플랫폼들 및 시스템들)을 이용하여 수행될 수 있다.
블록 305에서, 제3자 알고리즘 개발자(제1 엔티티)는 새로운 프로젝트에서 최적화되거나 및/또는 검증될 하나 이상의 알고리즘 또는 모델을 제공한다. 하나 이상의 알고리즘 또는 모델은, 알고리즘 개발자에 의해, 그들 자신의 자체 개발 환경, 툴들, 및 씨드 데이터 세트들(예를 들어, 훈련/테스트 데이터 세트들)을 이용하여 개발될 수 있다. 일부 경우에, 모델들은 하나 이상의 예측 모델을 포함한다. 예측 모델들은, 임의의 알고리즘, 예를 들어, 콘볼루션 신경망("CNN"), 예를 들어, 인셉션(inception) 신경망, 잔차 신경망("Resnet"), 또는 재발적 신경망, 예를 들어 장기 단기 기억("LSTM") 모델 또는 게이팅형 재발적 유닛들("GRUs") 모델들을 그러나 이것으로 제한되지 않는 ML 모델을 포함할 수 있다. 예측 모델은 또한, 직접 측정될 수 없거나 미래에 발생할 어떤 것을 예측하거나 데이터로부터 추론(결론(예를 들어, 모델의 예측 또는 알고리즘의 결과))을 만들도록 훈련된 기타 임의의 적절한 ML 모델일 수 있다. 예를 들어, 보건 애플리케이션들에서, 이들은, 3차원 CNN("3DCNN"), 동적 시간 워핑("DTW") 기술, 은닉된 Markov 모델("HMM") 등, 또는 이러한 기술들 중 하나 이상의 조합들 ―예를 들어, CNN-HMM 또는 MCNN(멀티-스케일 콘볼루션 신경망) 등의, 이미지들 또는 비디오 프레임들로부터의 임상적 징후, 정체성, 진단, 또는 예후일 수 있다. 알고리즘 개발자는, 동일한 유형의 예측 모델 또는 상이한 유형들의 예측 모델들(예를 들어, 앙상블 ML 기술)을 이용하여, 예를 들어, 임상 징후, 정체성, 진단 또는 예후를, 예측 또는 추론할 수 있다. 씨드 데이터 세트들은, 모델들의 초기 훈련 및 테스트를 위해 알고리즘 개발자에 의해 획득된 초기 데이터 세트(예를 들어, 사적 또는 공공 임상 또는 건강 데이터)일 수 있다.
블록 310에서, 알고리즘 개발자는 하나 이상의 모델의 최적화 및/또는 검증을 위한 제약들을 제공한다. 제약들은, 다음 중 하나 이상을 포함할 수 있다: (i) 훈련 제약들, (ii) 데이터 준비 제약들, 및 (iii) 검증 제약들. 이들 제약들은, 도 4 내지 도 12에 관하여 더 상세히 설명되는 바와 같이, 데이터 준비(예를 들어, 데이터 큐레이션, 데이터 변환, 데이터 조율, 및 데이터 주석부기), 모델 훈련, 모델 검증, 및 보고를 포함한, 하나 이상의 모델의 최적화 및/또는 검증을 위한 목표들을 근본적으로 정의한다. 이해해야 하는 바와 같이, 알고리즘 개발자가 데이터 호스트(제2 엔티티)로부터 이용가능한 훈련/테스트 데이터 세트들을 이용하여 그들의 모델들 중 하나 이상을 최적화할 것을 요청하는 경우, 알고리즘 개발자는 모델들, 훈련 제약들, 및 데이터 준비 제약들을 제공할 수 있다. 다른 사례들에서, 알고리즘 개발자가 데이터 호스트로부터 이용가능한 검증 데이터 세트들을 이용하여 그들의 모델들 중 하나 이상을 검증할 것을 요청하는 경우, 알고리즘 개발자는, 모델들, 검증 제약들 및 데이터 준비 제약들을 제공할 수 있다. 역시 다른 사례들에서, 알고리즘 개발자가 데이터 호스트로부터 이용가능한 훈련/테스트/검증 데이터 세트들을 이용하여 그들의 모델들 중 하나 이상을 최적화하고 검증할 것을 요청하는 또 다른 사례에서, 알고리즘 개발자는, 모델, 훈련 제약들, 검증 제약들, 및 데이터 준비 제약들을 제공할 수 있다.
일부 실시예에서, 훈련 제약들은 다음 중 하나 이상을 포함하지만 이것으로 제한되는 것은 아니다 : 하이퍼파라미터들, 정규화 기준, 수렴 기준, 알고리즘 종료 기준, 하나 이상의 알고리즘에서 이용하기 위해 정의된 훈련/검증/테스트 데이터 분할, 및 훈련/ 테스트 보고서 요건들. 모델 하이퍼 파라미터는 모델 외부에 있고 그 값이 데이터로부터 추정될 수 없는 구성이다. 하이퍼파라미터들은, 머신 학습 알고리즘의 거동을 제어하고 모델 파라미터들을 추정하거나 학습하는 것을 돕도록 튜닝되거나 최적화할 수 있는 설정이다. 하이퍼파라미터들을 선택하고 최적화하는 프로세스는 많은 머신 학습 솔루션들의 핵심 양태다. 대부분의 머신 학습 알고리즘은 메모리 또는 실행 비용 등의 모델들의 상이한 양태들을 제어하는 하이퍼파라미터들을 명시적으로 정의한다. 하이퍼파라미터들은 알고리즘 개발자에 의해 명시되고 휴리스틱 등의 하나 이상의 문제 해결 기술을 이용하여 설정될 수 있다. 그러나, 특정한 시나리오에 맞게 알고리즘을 적합화하기 위해 추가의 하이퍼파라미터들이 정의될 수 있다. 예를 들어, 하이퍼파라미터들은, 모델의 은닉 유닛의 수, 모델의 학습률, 또는 모델에 대한 콘볼루션 커널 폭을 포함할 수 있다.
정규화는 계수 추정값들을 0으로 제약하거나 축소한다. 다시 말해, 이 기술은 과적합의 위험을 피하도록 더 복잡하거나 유연한 모델 학습을 권장하지 않는다. 정규화는, 편향(bias)을 크게 증가시키지 않으면서, 모델의 분산(variance)을 크게 감소시킨다. 따라서, 정규화 기술들에 이용되는, 튜닝 파라미터 λ 등의 정규화의 제약들은 편향 및 분산에 미치는 영향을 제어한다. λ 값이 상승함에 따라, 계수들의 값을 감소시키고 그에 따라 분산을 감소시킨다. 어느 시점까지, λ의 이러한 증가는 데이터에서의 어떠한 중요한 속성도 잃지 않고 분산을 감소시키기만 하므로(그에 따라 과적합을 회피하므로) 유익하다. 그러나 소정 값 이후에, 모델은 중요한 속성들을 잃기 시작하여, 모델에서 편향과 그에 따른 과소적합을 야기한다. 따라서, λ 값 등의 정규화의 제약들을 선택하여 모델들 내에서 다양한 정규화 기술을 구현할 수 있다. 대조적으로, 수렴 기준은 시퀀스의 수렴(예를 들어, 다수의 반복 후 하나 이상의 가중치의 수렴)을 확인하는데 이용된다. 수렴 기준은, 고정된 에포크(epoch) 수, 목표 정의, 조기 중지 등 다양한 형태로 구현될 수 있으므로, 수렴 기준에 대한 제약들은, 이용될 형태 또는 기술과, 수행될 훈련의 반복수, 목표 값들, 성능 값, 이용될 검증 데이터 세트, 정의된 개선 등의 형태 또는 기술에 대한 변수들을 포함할 수 있다.
알고리즘 종료 기준은 모델이 충분한 훈련을 달성했는지를 결정하는 파라미터들을 정의한다. 알고리즘 훈련은 반복적인 최적화 프로세스이기 때문에, 훈련 알고리즘은 다음과 같은 단계들을 복수회 수행할 수 있다 : 훈련 데이터의 전부 또는 일부에 관해 동작, 모델 파라미터들을 업데이트한 다음 모델의 성능을 재평가. 일반적으로, 종료 기준은, 처리를 계속하기 위하여, 종종 반복 또는 반복 세트당 성능 향상의 최소량으로서 정의되는 알고리즘 성능 목표를 포함할 수 있다. 일부 경우에, 종료 기준은, 훈련 모델 업데이트 프로세스의 최대 반복 횟수 또는 훈련에 할당될 클록 시간 또는 컴퓨팅 사이클의 최대량을 포함할 수 있다. 반복 훈련 프로세스를 중지할 때를 결정하는 다른 방법들도 역시 생각해 볼 수 있다. 훈련/검증/테스트 데이터 분할은, 데이터 자산들을, 훈련 세트들, 검증, 및/또는 테스트 세트들로 분할하기 위한 기준을 포함한다. 훈련 데이터 세트는 모델을 부합시키거나 훈련시키는데 이용되는 데이터 세트이다. 검증 데이터 세트는, 모델 파라미터들을 튜닝하는 동안 훈련 데이터세트에 관해 부합시키거나 훈련시킨 모델의 편향되지 않은 평가를 제공하는데 이용되는 데이터 세트이다. 테스트 데이터 세트는, 훈련 데이터 세트에 관해 부합시키거나 훈련시킨 최종 모델의 편향되지 않은 평가를 제공하는데 이용되는 데이터 세트이다. 이들 데이터 세트의 분할은, 모델들을, 훈련, 테스트, 및/또는 검증하는데 이용될 데이터로부터 이용가능한 총 샘플 수를 포함하는 다수의 요인에 따라 의존할 수 있다. 예를 들어, 일부 모델은, 훈련을 위해 상당한 데이터를 필요로 하므로, 이 경우 알고리즘 개발자는 더 큰 훈련 세트들에 최적화할 제약들을 정의할 수 있다. 또한, 매우 적은 수의 파라미터들을 갖는 모델들은 검증 및 튜닝하기에 더 간단할 수 있으므로, 알고리즘 개발자는 검증 세트의 크기를 감소시키는 제약들을 정의할 수 있다. 그러나, 모델이 많은 파라미터들을 갖는다면, 알고리즘 개발자는 (교차 검증도 역시 고려되어 제약들 내에 포함될 수 있지만) 큰 검증 세트를 수용하는 제약들을 정의하기를 원할 수 있다.
훈련/테스트 보고서는, 알고리즘 개발자가, 하나 이상의 모델의 훈련, 최적화 및/또는 테스트에서 관찰의 관심대상으로 삼는 메트릭 및 기준을 포함할 수 있다. 일부 경우에, 모델의 성능을 예시하기 위해 메트릭들 및 기준에 대한 제약들이 선택된다. 예를 들어, 평균 백분율 오류 등의 메트릭들 및 기준은, 편향, 분산, 및 소실되거나 폭발하는 경도들 등의 모델을 마무리할 때 발생할 수 있는 기타의 오류에 관한 정보를 제공할 수 있다. 편향은, 학습 알고리즘이 데이터로부터 학습하기에 취약할 때 학습 알고리즘에서의 오류이다. 편향이 높은 경우, 학습 알고리즘은 데이터에서 관련 상세사항을 학습할 수 없다. 따라서, 모델은 테스트 데이터세트뿐만 아니라 훈련 데이터에 관해서도 좋지 않은 성능을 보인다. 대조적으로, 분산은, 학습 알고리즘이 데이터세트로부터 과도-학습을 시도하거나 훈련 데이터를 가능한 한 가깝게 부합시키려고 할 때 학습 알고리즘에서의 오류이다. 분산이 높은 경우, 알고리즘은 테스트 데이터세트에 관해 성능이 좋지 않지만, 훈련 데이터세트에 관해서는 꽤 성능이 좋을 수 있다. 또한, 평균 백분율 오류 및 R2 점수 등의 일반적인 오류 메트릭들은 항상 모델의 정확도를 나타내는 것은 아니므로, 알고리즘 개발자는 모델의 정확도를 보다 심층적으로 살펴보기 위해 추가 메트릭들 및 기준을 정의하기를 원할 수 있다. 예를 들어, 선택된 데이터 세트가, 시간적으로 상관되는 경향이 있고 종종 상당한 자기상관을 보이는 시계열 데이터를 포함한다면(값을 직접 예측하는 그 능력의 측면에서 모델을 평가할 때, 평균 백분율 오류 및 R2(결정의 계수) 등의 공통 오류 메트릭들 양쪽 모두가 잘못된 높은 예측 정확도를 나타낼 때), 알고리즘 개발자는 하나 이상의 추가 메트릭 또는 기준을 이용하여 자기상관을 모니터링하기를 원할 수 있다.
일부 실시예에서, 데이터 준비 제약들은 입력 데이터 요건들 및 주석부기 프로토콜 요건들 중 하나 이상을 포함하지만 이것으로 제한되는 것은 아니다. 입력 데이터 요건들은, 알고리즘 또는 모델에 관해 운영될 데이터 자산들에 대한 최적화 및/또는 검증 선택 기준을 포함할 수 있다. 최적화 및/또는 검증 선택 기준은, 모델들에서 이용가능한 입력 데이터(예를 들어, 외부 데이터)에 대한 특성들, 데이터 포멧들 및 요건들을 정의한다. 입력 데이터에 대한 특성들 및 요건들이란, 데이터가 모델을 최적화 및/또는 검증하는데 이용가능하게 되도록 하는 데이터의 특성들 및 요건들을 말한다. 예를 들어, 모델에 의해 구현된 알고리즘은, 더 일반화가능한 알고리즘을 생성하기 위해 상이한 인종 또는 지리적 데이터 등과 같은 모델이 동작할 환경을 정확하게 나타내는 훈련 데이터를 필요로 할 수 있다. 일부 경우에, 입력 데이터의 특성들 및 요건들은 다음에 기초하여 정의된다 : (i) 모델의 환경, (ii) 50% 남성 및 50% 여성 등의 예들의 분포, (iii) 데이터(예를 들어, 이미지 데이터) 및/또는 측정값을 생성하는 디바이스들의 유형들 및 파라미터들, (iv) 분산 대 편향 ―높은 분산을 갖는 모델들은 훈련 데이터에 용이하게 부합될 수 있고 복잡성을 환영할 수 있지만 노이즈에 민감하다; 반면, 높은 편향을 갖는 모델들은 더 엄격하고, 데이터 및 노이즈에서의 변화들에 덜 민감하며, 복잡성을 놓치는 경향이 있다, (v) 분류, 클러스터링, 회귀, 순위결정 등의 모델들에 의해 구현된 작업(들), 또는 (vi) 이들의 임의의 조합. 예를 들어, 분류 및 클러스터링 기술들을 이용하여 종양의 존재를 예측하기 위해 개발된 모델들에 대한 데이터의 특성들 및 요건들은, 3차원 촬영 데이터 및/또는 이러한 종양의 식별에 이용되는 30세 내지 60세의 여성들과 남성들을 동등하게 혼합하여 얻은 바이오마커 테스트 데이터에 대한 요건들을 포함할 수 있다. 포멧팅이란, 데이터의 파일 포멧(예를 들어, 모든 이미지 데이터는 .jpeg 파일 포멧이어야 함)뿐만 아니라, 레코드들 자체의 일관성도 지칭한다. 예를 들어, 데이터 포멧에 대한 제약들은, 모델들에 의해 인식된 데이터 세트들에 대한 표준 명명 시스템을 정의할 수 있다(예를 들어, 해부학, 질병들, 발견물들, 절차들, 미생물들, 물질들 등을 다루는 표준화된 코드들, 용어들, 동의어들 및 정의들을 제공).
주석부기 프로토콜 요건들은, 모델들에 이용될 상이한 유형들의 데이터 주석부기를 포함할 수 있다. 데이터 주석부기는, 구조화된 숫자, 텍스트, 오디오, 이미지들, 또는 비디오 등의 임의의 형태일 수 있는 데이터(예를 들어, 최적화 및/또는 검증을 위한 데이터 세트들)를 라벨링하는 작업이다. 데이터 주석부기는, 지도형 머신 학습에서 데이터 준비의 중요한 스테이지이다. 모델은 주석부기된 데이터에서 재발적 패턴들을 인식하는 것을 학습한다. 알고리즘이 충분한 주석부기된 데이터를 처리한 후, 주석부기되지 않은 새로운 데이터가 제시될 때 동일한 패턴들을 인식하기 시작할 수 있다. 제약들에 기초하여 주석부기 프로토콜 내에서 정의될 수 있는 다양한 유형들의 주석부기가 있다. 예를 들어, 의미론적 주석부기는, 분석 데이터, 의료 기록들, 또는 진단 코드들 등의, 텍스트 내의 다양한 개념들에 대해 정의될 수 있다. 또한, 문서들에 미리정의된 범주들을 할당하기 위해 텍스트 범주화 및 콘텐츠 범주화가 정의될 수 있다. 예를 들어, 문서 내에서 주제별로 문장들 또는 단락들이 태깅되거나, 내과, 종양학, 혈액학, 미생물학 등의 과목별로 의학 출판물들이 조직화될 수 있다. 이미지 및 비디오 주석부기의 경우, 이미지들이나 비디오의 프레임들 상에 그려진 가상의 박스들인 경계 박스들이 이용될 수 있다. 경계 박스의 콘텐츠는, 콘텐츠를 종양 또는 부러진 뼈 등의 별개의 유형의 객체로서 인식하는데 있어서 모델들을 보조하기 위해 주석부기될 수 있다. 오디오 주석부기의 경우, 엔티티 주석부기, 엔티티 링킹, 및 구문 청킹(chunking)을 이용하여, 구조화되지 않은 음성의 부분들을 라벨링 및 정의하고, 음성의 부분들을 그들의 언어적 또는 문법적 의미로 태깅할 수 있다.
일부 실시예에서, 검증 제약들은, 다음 중 하나 이상을 포함하지만 이것으로 제한되는 것은 아니다 : 검증 데이터 선택 기준, 검증 종료 기준, 및 검증 보고서 요건들. 검증 데이터 선택 기준은, 개발 중인 애플리케이션에 대한 데이터의 적절한 서브세트를 선택하는데 요구되는 임의의 요소들을 포함할 수 있는 검증 데이터 세트에 대한 선택 기준을 포함할 수 있다. 예를 들어, 보건 애플리케이션들에서, 코호트 선택은, 임상 코호트 기준, 인구통계학적 기준, 및 데이터 세트 클래스 균형을 포함하지만, 이것으로 제한되는 것은 아니다. 보건 알고리즘 개발에서, 코호트 연구들은, 질병의 원인을 조사하고, 코호트로서 알려진, 사람들의 그룹들에서 위험 요인들과 건강 결과들 사이의 링크들을 확립하는데 이용되는 의료 연구 유형이다. 후향적 코호트(retrospective cohort) 연구들은, 이미 존재하는 데이터를 살펴보고 특정한 상태들에 대한 위험 요소들을 식별하려고 시도한다. 전향적 코호트(prospective cohort) 연구에서, 연구자들은 질병을 유발할 수 있는 요인에 대해 질문을 하고 가설을 형성한다. 그 다음, 연구자들은 가설을 증명하거나 반증하기 위해, 소정 기간 동안 코호트를 관찰한다. 따라서, 임상 코호트 기준은, 연구를 위해 데이터가 획득되어질 사람들의 그룹, 연구 유형(예를 들어, 후향적 또는 전향적), 그룹이 소정 기간 동안 노출될 수 있는 위험 요인들, 해결될 질문/가설 및 연관된 질병 또는 상태, 및/또는 코호트 연구에 대한 기준을 정의하는 기타의 파라미터들을 정의할 수 있다. 인구통계학적 기준은 연구를 위해 데이터가 획득되어질 사람들의 그룹에 대한 인구통계학적 요인들을 정의한다. 인구통계학적 요인은, 예를 들어, 연령, 성별, 훈련 수준, 소득 수준, 결혼 상태, 직업, 종교, 출생률, 사망률, 평균 가족 규모, 평균 결혼 연령을 포함할 수 있다. 데이터 세트 클래스 균형은 연구를 위해 데이터가 프리젠팅될지의 여부와 방법을 정의한다. 예를 들어, 많은 경우, 데이터 세트는 불균형적이다(예를 들어, 긍정적인 분석 테스트 결과를 가진 환자들에 비교하여 부정적인 분석 테스트 결과들을 가진 더 많은 환자들). 불균형 데이터 세트들을 수정하는 간단한 방식은, 소수 클래스의 인스턴스들을 오버샘플링하거나 다수 클래스의 인스턴스들을 언더샘플링함으로써 이들을 균형잡는 것이다. 따라서, 데이터 세트 클래스 균형에 대한 제약들은, (i) 데이터 세트가 균형을 유지해야 하는지, (ii) 데이터 세트가 어떻게 균형을 유지해야 하는지, 예를 들어 80:20에 비해 40:60이 허용가능한지 또는 50:50이 되어야 하는지, 및 (iii) 균형을 수행하는 방법, 예를 들어, 소수 클래스를 오버샘플링을 정의할 수 있다. 보건에서 이들 코호트 정의 고려사항들 중 많은 것이 다른 응용 분야들에서 유사하다.
검증 종료 기준은 모델이 충분한 검증을 달성했는지를 정의한다. 검증 보고서는, 알고리즘 개발자가 하나 이상의 모델 검증에서 관찰의 관심대상으로 삼는 메트릭 및 기준을 포함할 수 있다. 일부 경우에, 모델들의 전체 성능 및/또는 정확성을 예시하기 위해 메트릭들 및 기준에 대한 제약들이 선택된다. 예를 들어, 메트릭들 및 기준은, 모델들에 의해 입수된 데이터의 새로운 데이터 묶음 내에 데이터 오류들이 있는지(예를 들어, 데이터의 예상 상태와 실제 상태 사이의 불일치), 데이터 묶음들 사이에서 명백한 오류가 있는지, 훈련과 테스트 사이에 피처 왜곡(feature skew)이 있는지, 훈련과 테스트 사이에 분포 왜곡이 있는지, 예상 데이터와 훈련 코드에서 이루어진 가정 사이에 불일치가 있는지, 모델들의 품질, 모델들의 정확도, 모델들의 정밀도, 모델들의 성능, 및 모델-품질 문제 진단을 보조하는 경험적 데이터에 관한 정보를 제공할 수 있다. 소정 실시예들에서, 메트릭들 및 기준은 모델 성능을 증가시키도록 튜닝될 수 있는 하이퍼파라미터들에 관한 정보를 제공할 수 있다.
블록 315에서, 하나 이상의 데이터 호스트는 도 4와 관련하여 상세히 설명되는 프로세스를 이용하여 플랫폼에 온보드된다. 일부 경우에, 잠재적인 데이터 호스트들은, 데이터 개인정보를 유지하는 방식들로 데이터 자산들(예를 들어, 임상 및 건강 데이터)에서 추가적인 가치를 도출할 수 있는 가능한 기회들을 통보받을 수 있다. 플랫폼을 통해 그들의 데이터 자산들을 이용가능하게 만드는데 관심이 있는 데이터 호스트들의 경우, 플랫폼은 다음과 같은 단계들을 포함하는 프로세스를 이용하여 하나 이상의 데이터 호스트를 온보드시킬 수 있다 : 데이터 호스트의 인프라스트럭처(예를 들어, 저장 인프라스트럭처를 인스턴스화하기 전의 데이터 호스트의 기존의 인프라스트럭처 내에 데이터 호스트 컴퓨팅 및 저장 인프라스트럭처를 공급하는 단계), 플랫폼을 통한 데이터 자산들의 노출과 관련된 통제 및 준수 요건들을 완료하는 단계, 및 데이터 호스트가 플랫폼을 통해 알고리즘 개발자들(제1 엔티티)에게 이용가능하게 하는데 관심이 있는 데이터 자산들을 획득하는 단계. 일단, 온보드되고 나면, 획득된 데이터 자산들은 데이터 개인정보를 유지하는 방식으로 제3자가 검색가능하고 평가가능할 수 있다.
블록 320에서, 모델들에서 이용될 데이터 자산들이, 도 5와 관련하여 상세히 설명된 프로세스를 이용하여 식별되고, 취득되고, 큐레이팅된다. 일부 예에서, 블록 310에서 알고리즘 개발자에 의해 정의된 데이터 자산들은, 변환, 주석부기 및 컴퓨팅을 위해, 플랫폼에 의해 식별되고, 취득되고 큐레이팅된다. 모든 데이터 자산들은 데이터 호스트의 환경 내에 남아 있고, 클라우드 기반 데이터 구조에서 물리적으로 조직화될 수 있거나, 데이터 자산들은 기존의 데이터 저장 인프라스트럭처 내에서 논리적으로 조직화될 수 있다. 저장 공간은, 메타데이터, 중간 계산 단계들, 구성들 및 데이터, 모델 출처 및 계산 결과들을 저장하기 위해 식별될 수 있다. 일부 경우에, 데이터 세트들, 메타데이터, 및 출처 데이터는, 향후 참조 및 규제 검토를 위해 영구 저장소에 보존될 수 있다.
블록 325에서, 큐레이팅된 데이터 자산들이 주석부기 프로토콜(예를 들어, 블록 310에서 정의된 주석부기 프로토콜)에 따라 주석부기되었는지에 관한 결정이 이루어진다. 일부 경우에, 주석부기 프로토콜의 제약들을 큐레이팅된 데이터 자산들에 현재 적용된 주석부기와 비교함으로써 결정이 이루어질 수 있다. 큐레이팅된 데이터 자산들이 주석부기 프로토콜에 따라 주석부기되어 있을 때, 주석부기는 요구되지 않으며 프로세스는 블록 340에서 계속된다. 큐레이팅된 데이터 자산들이 주석부기 프로토콜에 따라 주석부기되어 있지 않을 때, 주석부기는 요구되며 프로세스는 블록 330에서 계속된다. 블록 330에서, 큐레이팅된 데이터 자산들은 도 6과 관련하여 상세히 설명된 바와 같이 주석부기를 위해 준비된다. 일부 경우에, 주석부기 프로토콜은 데이터 자산들이 주석부기를 위해 특정한 포멧으로 변환되거나 특정한 방식으로 수정될 것을 요구한다. 예를 들어, 복수의 이미지로 구성된 비디오는, 시청 및 주석부기를 위해 개개의 프레임들 또는 이미지들로 분리될 필요가 있을 수 있다. 변환 프로세스는, 대개 데이터가 모델(들)의 하나 이상의 알고리즘에 의해 요구되는 형태로 입력되는, 조율이라는 궁극적인 목표를 향한 중간 단계가 될 것이다.
블록 335에서, 일단 데이터 자산들이 주석부기를 위해 준비되고 나면, 데이터 자산들은 도 7과 관련하여 상세히 설명된 바와 같이 주석부기된다. 모델들의 각각의 알고리즘은 데이터가 특정한 방식으로 라벨링될 것을 요구할 수 있다. 예를 들어, 유방암 검출/선별 시스템은 특정한 병변들의 크기를 파악하고 식별할 것을 요구할 수 있다. 또 다른 예는, 위장관 암 디지털 병리학으로서, 각각의 이미지는 세그먼트화되고 존재하는 조직의 유형(정상, 괴사, 악성 등)에 의해 라벨링될 것을 필요로 할 수 있다. 텍스트 또는 임상 데이터를 수반하는 일부 사례에서, 주석부기는 텍스트 및 구조화된 데이터의 선택된 서브세트들에 라벨링 온톨로지(labeling ontology)를 적용하는 단계를 포함할 수 있다. 주석부기는 보안 캡슐 컴퓨팅 서비스의 데이터 호스트에만 수행된다. 변환 및 주석부기 프로세스의 핵심 원리는, 플랫폼이 데이터 정리 및 변환 알고리즘을 적용하고 개선하는 다양한 프로세스를 용이화하는 한편, 데이터 자산들의 개인정보를 보호하면서 데이터가 데이터 호스트의 기술 범위 외부로 이동될 것을 요구하지 않고 모두 가능하다는 것이다.
블록 340에서, 주석부기된 데이터 자산들이 알고리즘 프로토콜(예를 들어, 블록 310에서 정의된 훈련 및/또는 검증 제약들)에 따라 조율되는지에 관한 결정이 이루어진다. 데이터 조율은, 다양한 파일 포멧들, 명명 규약들, 및 열들의 데이터 세트들을 함께 모아, 하나의 응집된 데이터 세트로 변환하는 프로세스이다. 일부 경우에, 훈련 및/또는 검증 제약들을 주석부기된 데이터 자산들의 조율과 비교함으로써 결정이 이루어질 수 있다. 주석부기된 데이터 자산들이 알고리즘 프로토콜에 따라 조율되어 있을 때, 추가 조율은 요구되지 않고 프로세스는 블록 360에서 계속된다. 주석부기된 데이터 자산들이 알고리즘 프로토콜에 따라 조율되어 있지 않을 때, 조율이 요구되고 프로세스는 블록 345에서 계속된다. 블록 345에서, 주석부기된 데이터 자산들은 도 8과 관련하여 상세히 설명된 바와 같이 조율된다. 일부 경우에, 알고리즘 프로토콜은 데이터 자산들이 계산을 위해 특정한 포멧으로 변환되거나 특정한 방식으로 수정될 것을 요구한다. 데이터의 조율은 데이터 자산들을 특정한 포멧으로 변환하거나 특정한 방식으로 수정하도록 수행될 수 있다.
블록 350 및 355에서, 모델들은 데이터 자산들에 관한 컴퓨팅을 위해 준비된다. 블록들 350 및 355에서 수행되는 프로세스들은, 데이터 자산들의 준비(예를 들어, 변환 및 주석부기) 이후에, 데이터 자산들의 준비 이전에, 또는 데이터 자산들의 준비와 병행하여 수행될 수 있다. 선택사항적 블록 350에서, 모델들은 리팩터링될 수 있다. 이 프로세스는, 모델들이 플랫폼 내에서 동작하는 것을 허용하기 위해 특별한 라이브러리들 또는 최적화들을 지원하도록 수행될 수 있다. 예를 들어, 동형 암호화된 데이터(homomorphically encrypted data)에 관해 효율적으로 동작하기 위하여, 모델 코드에는 특별한 라이브러리들이 포함될 필요가 있을 수 있다. 이들 라이브러리는 리팩터링 프로세스 동안에 모델에 통합될 수 있다. 그러나, 모든 최적화 및/또는 검증 알고리즘에 대해 리팩터링 프로세스가 요구되는 것은 아니라는 것을 이해해야 한다.
블록 355에서, 모델들은 보안 캡슐 컴퓨팅 서비스 프레임워크 내에 통합되어, 검증 및/또는 훈련될 알고리즘들을 포함한 소프트웨어를 외부 환경(이 경우, 데이터 호스트의 컴퓨팅 환경)에 배치하는 것을 용이화하고, 캡슐 내에 배치된 소프트웨어의 개인정보와 호스트 컴퓨팅 환경의 보안 양쪽 모두를 보호하는 보안 서비스들을 추가로 제공한다. 보안 캡슐 컴퓨팅 서비스 프레임워크는 플랫폼 내에 공급된 모델 서빙 시스템을 포함한다. 모델 서빙 시스템은 각각의 모델을 하나 이상의 보안 배치 캡슐과 연관시키고, 하나 이상의 보안 배치 캡슐 내의 모델들을 데이터 호스트에 배치하며, 모델들은 하나 이상의 보안 API(애플리케이션 프로그램 인터페이스)를 통한 최적화 및/또는 검증을 위해 하나 이상의 보안 캡슐 내로부터 제공되거나 이용될 수 있다. 예를 들어, 일단 모델이 보안 캡슐 컴퓨팅 서비스의 일부로서 데이터 호스트에 배치되고 나면, 플랫폼은, 훈련(예를 들어, 부모-교사 훈련 패러다임)을 위한 데이터 자원들, 모델 파라미터들, 또는 공유된 데이터를, 알고리즘 API를 통해 모델에 배치하거나 출력할 수 있다. 그 대가로, 플랫폼은, 컴퓨팅 결과들, 데이터, 및 컴퓨팅 모니터링 결과들, 훈련된 모델들, 모델 파라미터들, 또는 보안 캡슐 컴퓨팅 서비스들 등의 배치된 컴퓨팅 컴포넌트들 및 프로세스들의 기타의 결과들을 포함하는 입력을 알고리즘 API를 통해 수신할 수 있다. 보안 배치 캡슐들은, 데이터 자산들의 개인정보 및 모델(예를 들어, 알고리즘들)을 유지하면서 격리된 방식으로 데이터 호스트의 인프라스트럭처 내로부터 모델이 실행되는 것을 허용한다. 또한, 하나 이상의 보안 배치 캡슐에서 모델을 실행하고 있는 데이터 호스트는 알고리즘 개발자의 전용 소프트웨어를, 검사, 복사 또는 수정하지 못할 수도 있다. 게다가, 하나 이상의 보안 배치 캡슐에서 모델을 실행하고 있는 데이터 호스트는, 호스트되고 있는 모델이 악의적이며 조직의 인프라스트럭처에 해를 끼치거나 데이터 개인정보를 손상시킬 수 있는 가능성에 대비하여 보호될 수 있다.
다양한 실시예에서, 보안 캡슐 컴퓨팅 프레임워크는 알고리즘을 실행하는데 요구되는 암호화된 코드를 수락하도록 구성된 컴퓨팅 인프라스트럭처(예를 들어, 하나 이상의 서버, 하나 이상의 컴퓨팅 노드, 하나 이상의 가상 컴퓨팅 디바이스 등) 내에 공급된다. 암호화는 산업 표준 공개 키/개인 키 암호화(예를 들어, AES 256)일 수 있다. 이 컴퓨팅 인프라스트럭처는 데이터 호스트의 컴퓨팅 인프라스트럭처에서 실행되거나 데이터 호스트의 클라우드 인프라스트럭처에서 실행될 수 있다. 암호화된 코드는 플랫폼에 의해 서명되고 보관소(예를 들어, 데이터 저장 디바이스)에 저장된다. 플랫폼은 암호화된 코드의 콘텐츠를 볼 수 없지만, FDA(식품의약국) 등의 규제 기관에 의해 요청받은 경우 플랫폼에 의해 검증된 정확한 알고리즘의 기록을 설정한다. 보안 캡슐 컴퓨팅 프레임워크는 컴퓨팅 인프라스트럭처에서 인스턴스화되고 암호화된 코드는 알고리즘 개발자에 의해 보안 캡슐 컴퓨팅 프레임워크 내부에 예치된다. 이 시점에서, 암호화된 코드가 해독된다. 일부 경우에, 암호화된 코드는 보안 캡슐 컴퓨팅 프레임워크에 올바른 개인 키를 전달함으로써 알고리즘 개발자에 의해 해독될 수 있다. 보안 캡슐 컴퓨팅 프레임워크는, 서버의 CPU 하드웨어에 저장된 개인 키들로 메모리의 콘텐츠들을 암호화함으로써 생성될 수 있어서, 일단 보안 캡슐 컴퓨팅 프레임워크가 론칭되고 나면, 여기서 설명된 정의된 API를 통한 경우를 제외하고, 보안 캡슐 컴퓨팅 프레임워크의 콘텐츠들과 상호작용하는 것이 불가능하게 한다. 콘텐츠들은 CPU 하드웨어에만 액세스될 수 있는 키로 암호화되기 때문에, 운영 체제 자체도 보안 캡슐 컴퓨팅 프레임워크의 콘텐츠와 상호작용할 수 없다. 이것은, 운영 체제가 손상되더라도 보안 캡슐 컴퓨팅 프레임워크의 콘텐츠가 모니터링되거나 판독될 수 없다는 것을 의미한다.
블록 360에서, 모델들의 최적화 및/또는 검증은 데이터 자산들을 이용하여 수행된다. 일부 경우에, 최적화는 가중치들 및 편향들에 대한 미리정의된 값들 또는 무작위 값들로 알고리즘들을 초기화하고 이들 값으로 출력을 예측하려고 시도하는 것을 포함한다. 소정의 경우들에, 모델들은 알고리즘 개발자에 의해 미리훈련되므로, 알고리즘들은 이미 가중치들 및 편향들로 초기화될 수 있다. 다른 예들에서, 가중치 및 편향에 대한 미리정의된 값들 또는 무작위 값들은 블록 310에서 알고리즘 개발자에 의해 정의되고 블록 360에서 알고리즘들 내에 채워질 수 있다. 그 후, 데이터 자산들 및 하이퍼파라미터들이 알고리즘들 내에 입력될 수 있고, 추론들 또는 예측들이 컴퓨팅될 수 있으며, 훈련된 모델들이 출력을 얼마나 정확하게 예측했는지를 결정하기 위해 테스트 또는 비교가 이루어질 수 있다. 최적화는, 도 9와 관련하여 상세하게 설명된 바와 같이 모델들의 성능을 최적화(예를 들어, 가중치들 및 편향들을 최적화)하기 위한 시도로 데이터 자산들과 함께 하나 이상의 훈련 및/또는 테스트 인스턴스를 실행하는 것을 포함할 수 있다. 검증은, 도 10과 관련하여 상세히 설명된 바와 같이 골드 표준 라벨들에 기초하여 모델들을 검증하기 위한 시도로 데이터 자산들과 함께 하나 이상의 검증 인스턴스를 실행하는 것을 포함할 수 있다. 블록 365에서, 하나 이상의 보고서가 생성되어 블록 360의 결과에 기초하여 알고리즘 개발자에게 전달된다. 일부 경우에, 보고서들은, 블록 310에서 정의된 훈련/테스트 보고서 요건들 및/또는 검증 보고서 요건들에 따라 생성된다.
도 4는 하나 이상의 데이터 호스트를 인공 지능 알고리즘 개발 플랫폼(예를 들어, 도 1 및 도 2와 관련하여 설명된 플랫폼 및 시스템들)에 온보드시키기 위한 프로세스(400)를 도시한다. 블록 405에서, 데이터 호스트 컴퓨팅 및 저장 인프라스트럭처(예를 들어, 도 1 및 도 2와 관련하여 설명된 보안 캡슐 컴퓨팅 서비스)가 데이터 호스트의 인프라스트럭처 내에 공급된다. 일부 경우에, 공급은, 캡슐화된 알고리즘들의 인프라스트럭처내 배치, 적절하게 공급된 하드웨어 및 소프트웨어를 갖춘 물리적 컴퓨팅 디바이스의 인프라스트럭처내 배치, 스토리지(물리적 데이터 저장소 또는 클라우드 기반의 스토리지)의 배치, 인프라스트럭처를 통해 액세스가능한 공용 또는 사설 클라우드 인프라스트럭처 상의 배치 등을 포함한다.
블록 410에서, 통제 및 준수 요건들이 완료된다. 일부 경우에, 통제 및 준수 요건들의 완료는, 기관 검토 위원회(IRB)의 승인을 포함한다. IRB는 플랫폼의 일부로 셋업되거나 데이터 호스트와 제휴된 별개의 엔티티일 수 있다. IRB는, 알고리즘 개발, 검증, 및 연합된 훈련을 포함한 훈련의 목적으로, 데이터 호스트로부터의 데이터 자산들의 이용에 대한 검토 및 승인에 이용될 수 있다. 소정의 경우들에서, 플랫폼 상에서 실행될 특정한 프로젝트들이 검토 및 승인 프로세스를 간소화(streamline)하기 위해 IRB에 대한 수정안들로서 검토될 것이다. 통제 및 준수 요건들의 완료는, HIPAA(Health Insurance Portability and Accountability Act) 등의 준거법 하에서 플랫폼에 의해 및/또는 플랫폼 자체에서 수행 중인 프로젝트의 준수에 대한 검토 및 승인을 더 포함할 수 있다. 일부 경우에, 캡슐화된 알고리즘들의 기존 인프라스트럭처내 배치, 적절하게 공급된 하드웨어 및 소프트웨어를 갖춘 물리적 어플라이언스의 배치, 공용 또는 사설 클라우드 인프라스트럭처 상의 배치 등을 포함한 플랫폼, 프로젝트를 실행하기 위한 플랫폼 내의 및 플랫폼에 부수적인 일부 또는 모든 활동은, 준거법을 준수해야 한다(예를 들어, 100% HIPAA 준수). 이 프로세스 단계는 플랫폼의 준거법 준수를 검토하고 승인하는데 요구되는 데이터 호스트에 의한 활동들을 포착하기 위한 것이다. 일부 경우에, HyTrust Certification 등의 미리정의된 인증의 주장이 이 프로세스에 대해 충분할 수 있다.
통제 및 준수 요건들의 완료는 보안 인증 획득을 더 포함할 수 있다. 예를 들어, 데이터 호스트가 새로이 공급된 모든 하드웨어 및 소프트웨어 시스템들에 보안 검토 프로세스를 적용하는 것이 일반적이다. 보안 검토의 상세사항은 데이터 호스트에서 정의될 수 있고 보안 인증을 획득하기 위해 사례별로 결정될 수 있다; 그러나 플랫폼은 명확하게 문서화되고 시연될 수 있는 최상의 보안 사례를 준수하도록 공급되어야 한다. 통제 및 준수 요건들의 완료는, 추가적인 통제/준수 활동들 하에서 플랫폼에 의해 및/또는 플랫폼 자체에서 수행 중인 임의의 프로젝트의 검토 및 준수 승인을 포함할 수 있다. 예를 들어, 각각의 데이터 호스트 또는 데이터 호스트가 위치해 있는 정부 지역은 추가적인 통제/준수 활동들을 가질 수 있다. 캡슐화된 알고리즘들의 기존 인프라스트럭처내 배치, 적절하게 공급된 하드웨어 및 소프트웨어를 갖춘 물리적 어플라이언스의 배치, 공용 또는 사설 클라우드 인프라스트럭처 상의 배치 등을 포함한 플랫폼, 프로젝트를 실행하기 위한 플랫폼 내의 및 플랫폼에 부수적인 일부 또는 모든 활동은, 추가적인 통제/준수 활동들을 준수해야 한다. 이 프로세스 단계는 플랫폼의 추가적인 통제/준수 활동들을 검토하고 승인하는데 요구되는 데이터 호스트에 의한 활동들을 포착하기 위한 것이다. 일부 경우에, 미리정의된 인증의 주장이 이 프로세스에 대해 충분할 수 있다.
블록 415에서, 데이터 호스트가 모델들의 최적화 및/또는 검증에 대해 이용가능하게 되기를 원하는 데이터 자산들이 회수된다. 일부 경우에, 데이터 자산들은, 기존의 저장 위치들 및 포멧들로부터, 플랫폼에 의한 이용을 위한 (플랫폼에 의해 액세스가능한 하나 이상의 데이터 저장소 내에 큐레이팅된) 공급된 스토리지(물리적 데이터 저장소 또는 클라우드 기반의 스토리지)에 전송될 수 있다. 예를 들어, 데이터 자산들의 제1 데이터 세트는 데이터 호스트(제2 엔티티)의 제1 데이터베이스에서 이용가능한 것으로 식별될 수 있고 데이터 세트들의 제2 데이터 세트는 데이터 호스트의 제2 데이터베이스에서 이용가능한 것으로서 식별될 수 있다. 이 경우에, 데이터 자산들의 회수는 데이터 개인정보를 유지하는 방식으로 공급된 스토리지 내에 제1 데이터 세트 및 제2 데이터 세트를 물리적으로 조율하는 것을 포함할 수 있다. 공급된 스토리지는, 단계 505에서 새로이 공급되거나 플랫폼에 대한 새로운 액세스 허용이 정의된 기존의 스토리지일 수 있다. 다른 경우들에서, 데이터 자산들은 공급된 스토리지로 물리적으로 이동되지 않을 수도 있지만, 논리적 주소들의 모음이, 플랫폼에 액세스될 수 있는 공급된 스토리지 또는 기존의 스토리지(데이터 호스트의 기존 인프라스트럭처의 일부인 물리적 데이터 저장소 또는 클라우드 기반의 스토리지)에 기록될 수 있다. 데이터 자산들이 (물리적 또는 논리적으로) 회수되고 저장될 때, 데이터 출처는 프로젝트 관리 및 데이터 품질 보증에서 플랫폼에 의한 이용을 위해 문서화될 수 있다. 이해해야 하는 바와 같이, 데이터 자산들은 (새로이 공급된 스토리지 또는 기존의 스토리지일 수 있는) 데이터 호스트의 인프라스트럭처 외부로 이동되지 않는다.
블록 415는, 데이터 호스트가 새로운 데이터를 수집하거나 새로운 데이터 자산들을 플랫폼에 이용가능하게 하면 새로운 데이터로 플랫폼을 업데이트하기 위해 시간 경과에 따라 반복적으로 수행될 수 있다. 이들 업데이트는 연속적이거나 일괄처리될 수 있지만, 출처 정보를 포함한, 회수된 데이터 자산들에 대한 모든 변경은 각각의 프로젝트의 각각의 국면에서 이용된 데이터가 정확하게 복제되고 출처를 이해할 수 있도록 보장하기 위해 기록될 수 있다.
선택사항으로서, 블록 420에서, 데이터 자산들은 개인식별불능화될 수 있다. 일부 경우에, 플랫폼에서 이용하기 전에 데이터 자산들은 개인식별불능화될 필요가 있을 수 있다. 개인식별불능화는 누군가의 개인 신원이 노출되는 단계를 방지하는데 이용되는 프로세스이다. 예를 들어, 인간 대상 연구 동안에 생성된 데이터는 연구 참가자들의 개인정보를 보호하기 위해 개인식별불능화될 수 있다. 개인식별불능화를 위한 전략들은, 개인 이름 등의 개인 식별자를 삭제하거나 마스킹하고, 생년월일 등의 유사 식별자들을 억제하거나 일반화하는 것을 포함할 수 있다. 소정의 사례들에서, 데이터 자산들은 개인식별불능화될 수 있고 적절한 재식별 정보가 보호된 형태(예를 들어, 암호화)로 기록될 수 있다.
선택사항으로서, 블록 425에서, 데이터 자산들이 난독화될 수 있다. 일부 경우에, 플랫폼에서 이용하기 전에 데이터 자산들은 난독화될 필요가 있을 수도 있다. 데이터 난독화는 데이터 암호화 또는 토큰화를 포함하는 프로세스이다. 데이터 암호화는 민감한 데이터가 알고리즘 및 암호화 키를 이용하여 인코딩되는 보안 프로세스이며, 알고리즘과 올바른 암호화 키를 가진 사용자에 의해서만 액세스되거나 해독될 수 있다. 일부 실시예에서, 데이터는 전통적인 암호화 알고리즘(예를 들어, RSA) 또는 동형 암호화를 이용하여 암호화된다. 특정한 알고리즘에 의한 암호화에 대한 선택은, 규제 요건들과 비즈니스 요건들의 조합에 의해 결정될 수 있다. 예를 들어, 데이터 호스트는 알고리즘 검증의 목적을 위해 동형 암호화된 데이터에 대한 광범위한 액세스를 제공할 수 있지만, 알고리즘 훈련을 위해 RSA-암호화된 데이터에 대한 액세스를 매우 제한적으로 제공할 수 있다. 데이터 토큰화는, 민감한 데이터가 토큰이라고 불리는 무작위 문자열로 변환되는 보안 방법이고, 토큰은 침탈시 어떠한 의미있는 값도 갖지 않고, 민감한 값과 토큰 사이의 관계를 저장한, 토큰 볼트(token vault)에 대한 액세스 권한이 있는 사용자에 의해서만 액세스되거나 해독될 수 있다. 일부 실시예에서, 데이터는 토큰화되고 토큰 볼트는 데이터 호스트에 의해 유지된다.
블록 430에서, 데이터 자산들은 인덱싱될 수 있다. 데이터 인덱싱은 조회들을 통해 데이터베이스로부터 데이터를 효율적으로 회수하는 것을 허용한다. 인덱스들은 특정한 테이블과 관련될 수 있고 인덱스에서 조회될 하나 이상의 키 또는 값으로 구성될 수 있다(예를 들어, 키들은 데이터 테이블의 열 또는 행에 기초할 수 있음). 조회 조건들을 인덱스 내의 키들과 비교함으로써, 동일한 값을 가진 하나 이상의 데이터베이스 레코드를 효율적인 방식으로 발견할 수 있다. 일부 경우에, 데이터 필드들의 메타데이터 및 통계 속성들 등의 기본 정보는 하나 이상의 키로서 컴퓨팅되어 인덱스에 저장된다. 어떤 기본 정보가 수집되는지 및 플랫폼 내에서 검색을 위해 어떻게 노출되는지에 대한 상세사항은, 데이터 유형 및 예상된 이용 사례에 의존한다. 일반적으로, 이 기본 정보는, 프로젝트들 및 데이터의 속성들에 대해 플랫폼에서 어떤 데이터가 이용할 수 있는지를 식별함으로써 조회들을 보조하기 위한 것이다. 기본 정보는 또한, 플랫폼 또는 최종 사용자에게 데이터 자산들과 함께 작업하는데 필요할 수 있는 데이터 변환 및 조율 방법들을 통보하는데 이용될 수 있다. 또한, 기본 정보는 이상 검출 및 일반 데이터 품질 보증 목적에 이용될 수 있다.
도 5는 새로운 프로젝트(예를 들어, 도 3의 블록 305에서 수신된 모델(들)의 최적화 및/또는 검증)를 완료하기 위해 플랫폼(예를 들어, 도 1 및 도 2와 관련하여 설명된 플랫폼 및 시스템들)에서 이용될 데이터 자산들을 식별, 취득 및 큐레이팅하기 위한 프로세스(500)를 도시한다. 블록 505에서, 모델들에서 이용될 데이터 자산들이 플랫폼에서 이미 이용가능한지(이미 온보드인지)에 관한 결정이 이루어진다. 플랫폼 상의 데이터 자산들의 존재(또는 그 부족)를 식별함으로써 결정이 이루어질 수 있다. 데이터 자산들은, 도 4와 관련하여 설명된 바와 같이, 온보드 데이터 호스트들(예를 들어, 파트너 학술 의료 센터)로부터 회수된 데이터 자산들에 대한 조회들을 실행함으로써 식별될 수 있다. 일부 예에서, 입력 데이터 요건들(예를 들어, 입력 데이터 특성들, 데이터 포멧들, 및 도 3의 블록 310에서 획득된 모델들에서 이용가능한 외부 데이터에 대한 요건들)은, 검색어들, 필터들, 및/또는 플랫폼에 이용가능하고 언급된 목표들을 달성하기 위해 모델들에 의해 이용가능한 데이터 자산들을 식별하기 위한 추가 정보로서 플랫폼에 의해 이용될 수 있다.
식별 프로세스는, 플랫폼이 입력 데이터 요건들을 검색어들 및/또는 필터들로서 이용하여 데이터 자산들에 대한 조회들을 실행함으로써(예를 들어, 데이터 인덱스들을 이용하여 공급된 데이터 저장소들에 관한 조회들을 실행함으로써) 자동으로 수행될 수 있다. 대안으로서, 이 프로세스는 대화식 프로세스를 이용하여 수행될 수 있다, 예를 들어, 알고리즘 개발자는 플랫폼에 검색어들 및/또는 필터들을 제공할 수 있고, 이에 응답하여, 플랫폼은 추가 정보를 획득하기 위해 질문을 공식화할 수 있고, 알고리즘 개발자는 추가 정보를 제공할 수 있고, 플랫폼은, 검색어들, 필터들, 및/또는 추가 정보를 이용하여 데이터 자산들에 대한 조회들(예를 들어, 하나 이상의 데이터 호스트의 데이터베이스에 대한 조회 실행 또는 데이터 자산들이 가질 수 있는 데이터 호스트들을 식별하기 위한 웹 크롤링)을 실행할 수 있다. 어느 경우든, 식별은, 데이터 자산들 내의 개인들에 관한 사적 정보를 보류하면서 데이터 자산들 내의 그룹 패턴들을 기술함으로써 데이터 자산들 내의 정보 공유를 위한 차등 개인정보를 이용하여 수행된다. 데이터 자산들이 플랫폼에서 이용가능할 때(예를 들어, 검색이 입력 데이터 요건들의 조회 또는 제약들을 충족하는 데이터 자산들을 식별함), 프로세스는 블록 510으로 진행하여 데이터 자산들에 대한 새로운 프로젝트를 구성한다. 데이터 자산들이 플랫폼에서 이용가능하지 않을 때(예를 들어, 검색이 입력 데이터 요건들의 조회 또는 제약들을 충족하는 데이터 자산들을 식별하지 못하는 경우), 프로세스는 블록 525로 진행하여 데이터 자산들이 기존의 데이터 호스트로부터 이용가능한지를 결정한다.
블록 510에서, 데이터 자산들에 대해 새로운 프로젝트가 구성된다. 일부 경우에, 데이터 호스트 컴퓨터와 스토리지 인프라스트럭처가 식별된 데이터 자산들과의 새로운 프로젝트를 처리하도록 데이터 호스트의 인프라스트럭처 내에서 공급되거나 구성된다. 일부 경우에, 공급 또는 구성은 도 4의 블록 405에서 설명된 프로세스와 유사한 방식으로 수행된다. 예를 들어, 공급 또는 구성은, 인프라스트럭처 내의 새로운 프로젝트 특유의 캡슐화된 알고리즘들의 배치, 새로운 프로젝트 특유의 스토리지(물리적 데이터 저장소 또는 클라우드 기반의 스토리지)의 배치, 인프라스트럭처를 통해 액세스가능한 공용 또는 사설 클라우드 인프라스트럭처 상에서의 배치 등을 포함할 수 있다.
블록 515에서, 규제 승인들(예를 들어, IRB 및 기타의 데이터 통제 프로세스들)이 완료되고 문서화된다. 일부 경우에, 규제 승인들이 이미 존재하고 새로운 프로젝트에 대해 단순히 업데이트될 필요가 있거나 하거나 새로운 프로젝트에 대해 완전히 완료될 필요가 있을 수 있다. 일부 경우에, 규제 승인들은 도 4의 블록 410에 설명된 프로세스와 유사한 방식으로 완료된다. 예를 들어, 통제 및 준수 요건들의 완료는, IRB 셋업 또는 현재의 IRB 보정, 준거법 하에서의 새로운 프로젝트 및/또는 플랫폼의 준수의 검토 및 승인, 보안 인증 획득, 추가적인 통제/준수 활동들 하에서의 새로운 프로젝트 및/또는 플랫폼의 준수의 검토 및 승인을 포함할 수 있다.
블록 520에서, 플랫폼 상에서 식별된 새로운 데이터 자산들 또는 온보드되는 새로운 데이터 자산들에 대해 데이터 스토리지가 공급되고 데이터 포멧팅이 구성된다. 일부 예에서, 데이터 스토리지 공급은, 적절한 데이터 저장 및 조회 구조의 생성과 함께, 새로운 논리적 데이터 저장 위치의 식별 및 공급을 포함한다. 예를 들어, 일부 실시예에서, 데이터는 관계형 데이터베이스, 비SQL 데이터 저장소, 플랫 파일들(예를 들어, JSON), 또는 기타의 구조에 저장될 수 있다. 이들 액세스 모델들 내에서, 데이터는, 다른 많은 가능성들 중에서도 특히, 관계형 데이터 스키마(예를 들어, 스타 스키마)로서 또는 데이터 프레임들의 세트로서 조직화될 수 있다. 저장 모델의 결정은, 데이터 유형, 알고리즘 유형 및 기저 알고리즘 소프트웨어에 의해 영향을 받거나, 플랫폼 자체에 의해 설정된 시스템 요건들에 의해 결정될 수 있다. 플랫폼 내로의 데이터 수집 및 집결이 진행 중인 경우(전향적 연구의 경우와 같이), 훈련 또는 검증 프로세스의 각각의 단계에서 어떤 데이터 세트가 이용되었는지 정확히 식별하기 위해 추가 문서가 저장되어 진행 중인 성능 메트릭들이 적절히 비교될 수 있게 할 수 있다. (데이터 세트가 성장함에 따른) 데이터 세트의 총 허용 크기와, 결함 데이터가 훈련 세트들에 도입되는 것을 회피하도록 지속적인 품질 평가가 실행되는 방법을 포함한, 추가적인 공급 요소들이 여기서 고려될 필요가 있을 수 있다. 추가로, 이것은 기존의 데이터 호스트들을 위한 새로운 프로젝트이므로, 데이터 호스트 컴퓨팅 및 저장 인프라스트럭처가 공급되거나 재구성되어야 할 필요가 있을 수 있고, 블록 510 및 515와 관련하여 설명된 바와 같이 새로운 데이터 자산들의 의도된 이용을 감안하기 위해 규제 승인들(예를 들어, IRB 및 기타의 데이터 통제 프로세스)이 완료되고 문서화될 필요가 있을 수 있다.
블록 525에서, 모델들에서 이용될 데이터 자산들이 알려진 또는 기존의 데이터 호스트(이전에 온보드되지 않음)로부터 이용가능한지에 관한 결정이 이루어진다. 이 결정은, 플랫폼이 입력 데이터 요건들(예를 들어, 도 3의 블록 310에서 획득된 모델들에서 이용가능한 입력 데이터 특성들, 데이터 포멧들, 및 외부 데이터에 대한 요건들)과 함께 데이터 자산 요청을 알려진 또는 기존의 데이터 호스트에 전송함으로써 이루어질 수 있다. 데이터 호스트들은 기회를 통보받고 데이터 자산들은 입력 데이터 요건들에 기초하여 데이터 호스트들에 의해 식별될 수 있다. 데이터 자산들이 알려진 또는 기존의 데이터 호스트로부터 이용가능할 때(예를 들어, 하나 이상의 데이터 호스트가 요청에 응답할 때), 프로세스는 블록 510으로 진행하여 새로운 프로젝트를 구성하고 데이터 자산들을 온보드한다(알려진 또는 기존의 데이터 호스트는 이전에 온보드된 다른 데이터 세트들을 가졌을 수도 있지만, 이 경우에는 새로운 데이터 자산들이 온보드된다). 데이터 자산들이 알려진 또는 기존의 데이터 호스트로부터 이용가능하지 않을 때(예를 들어, 하나 이상의 데이터 호스트가 요청에 응답하지 않을 때), 프로세스는 블록 530으로 진행하여 새로운 호스트를 찾아본다(예를 들어, 잠재적인 데이터 호스트들은, 도 3의 블록 315와 관련하여 설명된 바와 같이 데이터 개인정보를 유지하는 방식으로 그들의 데이터 자산들로부터 추가적인 가치를 도출할 기회로서 새로운 프로젝트를 통보받을 수 있다).
블록 530에서, 하나 이상의 새로운 데이터 호스트가 플랫폼에 온보드된다. 하나 이상의 새로운 데이터 호스트가 새로운 프로젝트의 통보에 응답하는 경우, 하나 이상의 새로운 데이터 호스트 및 그들의 데이터 자산들은 도 4와 관련하여 설명된 바와 같이 플랫폼에 온보드될 수 있다. 데이터 자산들이 하나 이상의 새로운 데이터 호스트로부터 이용가능할 때(예를 들어, 하나 이상의 데이터 호스트가 온보드될 때), 프로세스는 블록 510으로 진행하여 새로운 프로젝트를 구성하고 새로운 데이터 자산들을 온보드한다.
도 6은 새로운 프로젝트(예를 들어, 도 3의 블록 305에서 수신된 모델(들)의 최적화 및/또는 검증)를 완료하기 위해 플랫폼(예를 들어, 도 1 및 도 2와 관련하여 설명된 플랫폼 및 시스템들)에서 이용될 데이터 자산들을 변환하기 위한 프로세스(600)를 도시한다. 프로세스(600)의 목표는, 주석부기를 위해 데이터 자산들을 준비하는 것이며, 이것은 주석부기를 위해 데이터가 특정한 포멧으로 프리젠팅되거나 수정될 것을 요구할 수 있다. 블록 605에서, 모범 데이터가 준비될 수 있다. 일부 경우에, 모범 데이터 준비는, 조율 프로세스의 주요 속성들을 포착하는 데이터 세트의 식별 또는 생성을 포함한다. 소정의 사례들에서, 준비는 모범 데이터의 개인식별불능화를 포함한다. 예를 들어, 데이터 호스트는, 데이터 변환을 위한 데이터 변환 모델들에 대한 알고리즘들을 개발하기 위한 가이드로서 이용할 작은 대표적인 모범 데이터 세트(변환기 프로토타입 세트)를 식별하거나 생성할 수 있다. 변환기 프로토타입 세트의 데이터는 개인식별불능화될 수 있고 조율 프로세스를 구현하기 위해 원격 조율 변환기들의 생성을 위해 알고리즘 개발자에게 이용가능하게 될 수 있다.
블록 610에서, 변환기 프로토타입 세트 내의 데이터의 현재 포멧에 기초하여 데이터 자산들의 변환을 위해 조율 변환기들이 생성된다. 조율 변환기들은, (i) 훈련 제약들, (ii) 데이터 준비 제약들, 및 (iii) 도 3의 블록 310에서 정의된 검증 제약들에 따라 생성될 수 있다. 조율 변환기들은, 궁극적으로 데이터 호스트의 원시 데이터 자산들을 주석부기에 이용가능한 포멧으로 변환하는데 이용될 것이다. 블록 615에서, 변환기 프로토타입 세트를 위해 개발된 조율 변환기들은 프로젝트에 이용가능하게 된 데이터 호스트의 원시 데이터 자산들에 적용된다. 조율 변환기들은, 데이터 자산들의 개인정보를 유지하기 위하여 데이터 호스트의 인프라스트럭처 내에서 플랫폼 또는 데이터 호스트에 의해 데이터 자산들에 관해 실행된다. 블록 620에서, 플랫폼 또는 데이터 호스트는, 변환들이 성공적으로 적용되고 데이터 개인정보 요건들을 위반하지 않고 적용되는지를 결정하기 위해 결과적 변환된 데이터 세트들(사전 주석부기)을 검토한다. 일부 경우에, 결정은, 초기 변환기 프로토타입 세트에서의 갭들 및/또는 변환기 실행의 오류들을 식별하는 것을 포함한다. 변환 프로세스에 장애가 있을 때, 프로세스는 블록 605로 돌아가서 변환기 프로토타입 세트에 대한 새로운 데이터 멤버들을 식별한다. 데이터 자산들이 성공적으로 변환되면, 프로세스는 변환된 데이터 자산들에 주석부기하기 위한 주석부기 프로세스로 진행한다.
도 7은 새로운 프로젝트(예를 들어, 도 3의 블록 305에서 수신된 모델(들)의 최적화 및/또는 검증)를 완료하기 위해 플랫폼(예를 들어, 도 1 및 도 2와 관련하여 설명된 플랫폼 및 시스템들)에서 이용될 데이터 자산들에 주석부기하기 위한 프로세스(700)를 도시한다. 블록 705에서, 알고리즘 개발자는, 모델들의 훈련, 테스트, 및 검증을 위한 골드 표준 라벨들을 생성하기 위한 주석부기 프로토콜을 정의한다. 주석부기 프로토콜은, 도 3의 블록 310과 관련하여 설명된 바와 같이 정의될 수 있다. 블록 710에서, 알고리즘 개발자는 주석부기자들을 위한 훈련 자료들을 생성한다. 훈련 자료는, 예시적 데이터에 관해 수행된 주석부기의 비디오, 알고리즘 개발자 소스들로부터의 주석부기된 예시적 데이터, 데이터 호스트 소스들로부터의 개인식별불능화된 데이터에 대한 주석부기된 예들, 작성된 플로차트들, 주석부기 소프트웨어로부터 이용가능한 자동화된 스크립트들 및 툴들을 포함할 수 있지만 이것으로 제한되는 것은 아니다. 블록 715에서, 주석부기 인프라스트럭처가 배치될 수 있다. 인프라스트럭처의 배치는, 주석부기 인터페이스 및 주석부기된 데이터에 대한 백엔드 데이터 저장 환경을 셋업하는 것을 포함할 수 있다. 일부 경우에, 주석부기 인프라스트럭처가 데이터 호스트의 인프라스트럭처 내에 배치되어 데이터 자산들의 개인정보를 유지한다. 이 프로세스는, 충분한 주석부기자 로그인을 위한 라이선스를 입수하는 것, 프로젝트 상태 및 데이터의 출처에 관한 주석부기자의 성과, 주석부기 및 기타의 메타데이터를 추적하는 것을 포함할 수 있다.
블록 720에서, 주석부기자(들)은 플랫폼에 온보드된다. 예를 들어, 주석부기자들이 식별되고, 참여되고 훈련받을 수 있다. 로그인 자격 증명서는, 임의의 컴퓨팅 또는 액세스 요건들(컴퓨터들, 클라우드 컴퓨팅 액세스, 디스플레이 워크스테이션들 등)과 함께 주석부기자들에게 제공될 수 있다. 작업의 조건들, 보상을 포함한 계약, HIPAA 준수 등이, 주석부기 전체에 걸쳐 데이터 자산들의 개인정보가 유지되게끔 보장하도록 구현될 수 있다. 블록 725에서, 주석부기 프로젝트가 셋업되거나 구성된다. 일부 경우에, 데이터 호스트가 알고리즘 개발자와 협력하여 프로젝트 목표들과 주석부기자 작업목록 전략을 정의할 수 있다. 그 다음, 프로젝트 목표 및 주석부기자 작업 목록 전략을 이용하여 주석부기 프로젝트를 셋업하는 것을 가이드하거나 구성할 수 있다. 예를 들어, 측정가능하고 핵심 성과 표시자들(예를 들어, 하루당 또는 세션당 주석부기될 데이터 포인트들의 수)을 포함하는 프로젝트 목표들이 정의될 수 있으며, 이것은 주석부기 프로젝트의 성공을 평가하는데 이용될 수 있다. 또한, 주석부기 작업목록 전략은, 테스트 데이터(알려진 라벨들과 함께 알고리즘 개발자에 의해 제공됨), (예를 들어, 인터-오퍼레이터 변동성 및 주석부기자 정확도 모니터링을 위한) 복수의 주석부기자에 대한 데이터의 노출, (예를 들어, 인트라-오퍼레이터 변동성을 모니터링하기 위한) 동일한 주석부기자에 대한 데이터의 복수의 노출, 및 기타의 동작상 고려사항들을 포함한, 주석부기자들 사이의 데이터의 분할을 포함한 하나 이상의 동작상의 고려사항을 감안하도록 정의될 수 있다.
블록 730에서, 데이터의 주석부기(예를 들어, 프로세스(600)로부터의 변환된 데이터)는, 정의된 주석부기 프로토콜에 따라, 및 블록 725에서 정의된 프로젝트 구조를 따라 수행된다. 블록 735에서, 주석부기 프로세스의 성능 및 데이터 개인정보 요건들의 준수가 모니터링된다. 알고리즘 개발자, 데이터 호스트, 또는 이들의 조합은, 주석부기자들의 성과를 모니터링할 수 있다. 이러한 정황에서, 성과는 작업 속도 및 작업 정확도(블록 740에서 별도로 모니터링될 수 있음) 양쪽 모두를 포함할 수 있고, 주석부기자 및 데이터 유형에 의해 세분될 수 있다. 예를 들어, 주석부기자들이 계약 상의 의무들을 충족하고 프로젝트 목표를 향해 가고 있는지를 결정하기 위해 각각의 주석부기자에 의한 일별 주석부기 수와 총 주석부기 수가 모니터링될 수 있다. 주석부기의 정확성은 다수의 수단에 의해 모니터링될 수 있다. 예를 들어, 테스트 데이터는 알고리즘 개발자에 의해 제공될 수 있고, 알려진 라벨들을 갖는 테스트 데이터가 주석부기자들에게 제공되어 그들이 프로토콜을 실질적으로 따르고 있음을 보장할 수 있다. 일부 실시예에서, 동일한 데이터가 복수의 주석부기자에게 제공되어 주석부기자 정확도를 평가/추정할 수 있다. 여기서 사용될 때, 용어들 "실질적으로", "대략" 및 "약"은, 본 기술분야의 통상의 기술자가 이해하는 바와 같이 반드시는 아니지만 대체적으로 그 명시된 내용인(전체적으로 명시된 내용을 포함하는) 것으로서 정의된다. 임의의 개시된 실시예에서, 용어 "실질적으로", "대략", 또는 "약"은 그 명시된 내용의 "[소정 %] 이내"로 대체될 수 있으며, 여기서 백분율은 0.1, 1, 5, 및 10%를 포함한다. 자동화된 주석부기 기술이 블록 730에서 역시 통합될 수 있다고 생각해 볼 수 있다. 일부 경우에, 기존의 자동화된 주석부기 기술이 일부 주석부기 작업들에 이용될 수 있다. 다른 경우들에서, 데이터가 주석부기될 때, 주석부기 프로세스를 자동화, 가속 및/또는 증강하기 위한 모델들이 개발될 것이다. 그 다음, 이러한 툴들은 상이한 데이터 세트들 및 상이한 알고리즘 개발자 프로젝트들과 연관될 수 있는 미래의 주석부기 작업들에서 이용될 수 있다.
도 8은 새로운 프로젝트(예를 들어, 도 3의 블록 305에서 수신된 모델(들)의 최적화 및/또는 검증)를 완료하기 위해 플랫폼(예를 들어, 도 1 및 도 2와 관련하여 설명된 플랫폼 및 시스템들)에서 이용될 데이터 자산들을 조율하기 위한 프로세스(800)를 도시한다. 프로세스(800)의 목표는 하나 이상의 알고리즘에 의한 컴퓨팅을 위해 데이터 자산들을 준비하는 것이며, 이것은 데이터가 처리를 위해 특정한 포멧으로 프리젠팅되거나 수정될 것을 요구할 수 있다. 블록 805에서, 모범 데이터가 준비될 수 있다. 일부 경우에, 모범 데이터 준비는, 조율 프로세스의 주요 속성들을 포착하는 데이터 세트의 식별 또는 생성을 포함한다. 소정의 사례들에서, 준비는 모범 데이터의 개인식별불능화를 포함한다. 예를 들어, 데이터 호스트는 데이터 변환을 위한 모델들로서 이용할 작은 대표적인 모범 데이터 세트(조율 프로토타입 세트)를 식별하거나 생성할 수 있다. 조율 프로토타입 세트의 데이터는 개인식별불능화될 수 있고 조율 프로세스를 구현하기 위해 원격 조율 변환기들의 생성을 위해 알고리즘 개발자에게 이용가능하게 될 수 있다. 모범 데이터는 도 6(변환기 프로토타입 세트)과 관련하여 설명된 변환 프로세스에서 이용된 모범 데이터의 동일한 세트이거나, 보완된 데이터 세트(예를 들어, 조율 프로토타입 세트를 생성하기 위해 변환기 프로토타입 세트에 추가된 새로운 데이터 멤버들)이거나, 조율을 위한 완전히 새로운 데이터 세트일 수 있다.
블록 810에서, 조율 프로토타입 세트의 현재 데이터 포멧에 기초하여 데이터 자산들의 조율을 위해 조율 변환기들이 생성된다. 조율 변환기들은, (i) 훈련 제약들, (ii) 데이터 준비 제약들, 및 (iii) 도 3의 블록 310에서 정의된 검증 제약들에 따라 생성될 수 있다. 조율 변환기들은 궁극적으로 데이터 호스트의 변환되고/주석부기된 데이터 자산들을 모델들 내로의 입력에 이용가능한 포멧으로 변환하는데 이용될 것이다. 블록 815에서, 조율 프로토타입 세트를 위해 개발된 조율 변환기들이 프로젝트에 이용가능하게 된 데이터 호스트의 변환된/주석부기된 데이터 자산들에 적용된다. 데이터 변환기들은, 데이터 자산들의 개인정보를 유지하기 위하여 데이터 호스트의 인프라스트럭처 내에서 플랫폼 또는 데이터 호스트에 의해 변환된/주석부기된 데이터 자산들에 관해 실행된다. 블록 820에서, 플랫폼 또는 데이터 호스트는 변환들이 성공적으로 적용되고 데이터 개인정보 요건들을 위반하지 않고 적용되는지를 결정하기 위해 (모델 실행 이전에) 결과적인 조율 데이터 세트들을 검토한다. 일부 경우에, 결정은, 초기 변환기 프로토타입 세트에서의 갭들 및/또는 변환기 실행의 오류들을 식별하는 것을 포함한다. 변환 프로세스에 장애가 있을 때, 프로세스는 블록 805로 돌아가서 조율 프로토타입 세트에 대한 새로운 데이터 멤버들을 식별한다. 데이터 자산들이 성공적으로 변환되면, 프로세스는 모델들에서 조율된 데이터 자산들을 이용하기 위한 최적화 및/또는 검증 프로세스로 진행된다. 유리하게는, 알고리즘에서 이용하기 위한 데이터의 다단계 조율 및 주석부기를 용이화하기 위한 이들 단계는 기저 데이터를 알고리즘 개발자에게 노출하지 않고 구현될 수 있다.
도 9는 플랫폼(예를 들어, 도 1 및 도 2와 관련하여 설명된 플랫폼 및 시스템들)을 이용하여 하나 이상의 모델을 최적화하기 위한 프로세스(900)를 도시한다. 블록 905에서, 알고리즘의 각각의 인스턴스에 관한 훈련 데이터 세트들(데이터 자산들로부터 분할된 훈련 데이터 세트들)에 대해 연합된 훈련 워크플로우가 실행된다. 일부 경우에, 훈련된 모델들을 생성하기 위해 훈련 데이터 세트들에 관해 알고리즘 훈련이 수행된다. 훈련 데이터 세트들은, 도 3 및 4와 관련하여 논의된 바와 같이 하나 이상의 데이터 호스트에 의해 호스팅될 수 있다. 연합된 훈련 워크플로우는 입력으로서 훈련 데이터 자산들을 취하고, 파라미터들을 이용하여 훈련 데이터 자산들의 피처들을 타겟 추론에 맵핑하고, 손실 또는 오류 함수를 컴퓨팅하고, 손실 또는 오류 함수를 최소화하기 위해 파라미터들을 학습된 파라미터들로 업데이트하고, 모델의 하나 이상의 훈련된 인스턴스를 출력한다. 예를 들어, 연합된 훈련 워크플로우는 훈련 데이터 자산들을 입력으로 취할 수 있고, 모델 파라미터들을 이용하여 훈련 데이터 자산들의 속성들을 타겟 예측에 맵핑하는 패턴들을 훈련 데이터 자산들에서 발견하고, 손실 또는 오류 함수의 훈련 경도들을 계산하고, 훈련 경도들에 응답하여 모델 파라미터들을 학습된 모델 파라미터들로 업데이트하고, 학습된 모델 파라미터들을 이용하여 훈련 데이터 자산들에서 패턴들을 포착하는 알고리즘의 훈련된 인스턴스를 출력할 수 있다.
훈련 세트로부터의 데이터는 API를 통해 데이터 호스트에 의해 보안 캡슐 컴퓨팅 프레임워크에 전달되고 하나 이상의 모델의 응답(예를 들어, 훈련 경도)들은 플랫폼으로 다시 전달되며, 여기서 응답들은 훈련 보고서 내에 집결된다. 이 상호작용 외에, 보안 캡슐 컴퓨팅 프레임워크 내부로부터 보안 캡슐 컴퓨팅 프레임워크 외부로의 통신은, 불량 알고리즘이 보안 캡슐 컴퓨팅 프레임워크 외부에서 사적 데이터를 전달하는 것을 방지하는 것이 허용되지 않는다. 일부 실시예에서, 연합된 훈련 워크플로우는 알고리즘 훈련이 완전히 수렴되고 모든 하이퍼파라미터들이 최적화되는 전체 모델 훈련을 포함한다. 다른 실시예들에서, 연합된 훈련 워크플로우는 증분 훈련(incremental training)을 실행한다. 어느 경우든, 파라미터들 및/또는 훈련 경도들 등의 훈련 결과들은, "완전 연합된 모델"로의 통합을 위해 마스터 알고리즘 모듈에 전송된다. 파라미터들 및/또는 훈련 경도들 등의 결과들은, 데이터 자산 및 모델 개인정보를 보장하기 위해 전송 전에 암호화될 수 있다.
블록 910에서, 모델의 각각의 훈련된 인스턴스에 대한 파라미터들 및/또는 훈련 경도들을 포함하는 결과들이 완전 연합된 모델 내에 통합된다. 통합은, 집결된 파라미터들 및/또는 훈련 경도들을 획득하기 위해 파라미터들 및/또는 훈련 경도들 등의 결과들을 집결하는 단계 및 집결된 파라미터들 및/또는 훈련 경도들로 완전 연합된 모델의 학습된 모델 파라미터들을 업데이트하는 단계를 포함한다. 일부 예에서, 집결은, 수평 연합된 학습, 수직 연합된 학습, 연합된 전달 학습, 또는 이들의 임의의 조합을 이용하여 수행된다.
블록 915에서, 테스트 워크플로우는 완전 연합된 모델에서 실행된다. 테스트 워크플로우는 테스트 데이터를 입력으로서 취하고, 업데이트된 학습된 모델 파라미터들을 이용하여 테스트 데이터에서 패턴들을 발견하고, 추론을 출력한다. 또한, 추론을 제공하는데 있어서 완전 연합된 모델의 성능이 컴퓨팅되고 완전 연합된 모델이 알고리즘 종료 기준(즉, 모델이 충분한 훈련을 달성했는지를 정의하는 기준)을 충족했는지에 관한 결정이 이루어진다. 일부 경우에, 모델의 하이퍼파라미터들 및 모델 파라미터들은, 도 3의 블록 310에서 알고리즘 개발자에 의해 정의된 알고리즘 종료 기준에 따라, 수렴, 오류 상태, 수렴 실패 등에 대해 테스트된다. 종료 기준에 도달하지 않은 경우, 프로세스는, 업데이트된 모델(예를 들어, 완전 연합된 모델)이 훈련 데이터 세트들에 대한 추가 훈련을 위해 각각의 데이터 호스트에 배포되는 블록 905로 다시 진행한다. 이 반복 프로세스는 알고리즘 종료 기준이 충족될 때까지 반복된다. 보고 제약들에 따라 이 단계 동안에 알고리즘 훈련 프로세스의 진행 상태가 알고리즘 개발자에게 보고될 수 있다. 알고리즘 종료 기준이 충족되면, 프로세스는 블록 920으로 진행한다.
블록 920에서, 일단 반복적 알고리즘 훈련 프로세스가 알고리즘 종료 기준을 충족하고 나면, 보고 제약들에 따른 성능 메트릭들의 보고와 함께, 완전 연합된 모델의 집결된 파라미터들 및/또는 훈련 경도들 등의 집결 결과들이 알고리즘 개발자에게 전달될 수 있다. 블록 925에서, 최적화 프로세스는 알고리즘 개발자에 의해 완료되는 것으로 결정될 수 있다. 일부 경우에, 알고리즘 종료 기준을 충족하는 반복 알고리즘 훈련 프로세스시에 또는 알고리즘 개발자의 요청시에, 집결된 파라미터들 및/또는 훈련 경도들 등의 집결 결과들이 모델의 각각의 인스턴스에 전송될 수 있다. 업데이트 훈련 워크플로우는 모델의 각각의 인스턴스에서 실행될 수 있다. 업데이트 훈련 워크플로우는 학습된 모델 파라미터들을 집결된 파라미터들 및/또는 훈련 경도들로 업데이트하고, 업데이트된 학습된 모델 파라미터들을 이용하여 훈련 및 테스트 데이터 자산들에서 패턴들을 포착하는 모델의 업데이트된 인스턴스를 출력한다.
소정의 경우들에, 훈련 프로세스들에서 이용된 모델 및 데이터 세트들은 미래의 목적(예를 들어, 규제 검토)을 위해 유지된다. 예를 들어, 일단 훈련 활동이 완료되고 나면, 전체 보안 캡슐 컴퓨팅 프레임워크와 그 콘텐츠들 모두가 안전하게 삭제되어 전송된 데이터나 모델에 지속적으로 노출될 위험이 없게 한다. 훈련을 위해 제출된 원래의 암호화된 코드는 규제자들에 의한 검사에 항상 이용가능하도록 보장하기 위해 플랫폼에 의해 보관된다.
도 10은 플랫폼(예를 들어, 도 1 및 도 2와 관련하여 설명된 플랫폼 및 시스템들)을 이용하여 하나 이상의 모델을 검증하기 위한 프로세스(1000)를 도시한다. 블록 1005에서, 초기 모델이 획득된다. 일부 경우에, 획득된 모델이 알고리즘 개발자로부터 획득된 기존의 훈련된 모델이다. 초기 모델은 도 3과 관련하여 논의된 바와 같이 획득될 수 있다. 블록 1010에서, 검증 데이터 세트들(데이터 자산들로부터 분할된 검증 데이터 세트들)에 대해 검증 워크플로우가 실행된다. 일부 경우에, 검증 데이터 세트들에 관해 검증을 수행하여 모델 성능 또는 정확도를 결정한다. 검증 데이터 세트는 도 3 및 도 4와 관련하여 논의된 바와 같이 하나 이상의 데이터 호스트에 의해 호스팅될 수 있다. 검증 워크플로우는 검증 데이터 세트들을 입력으로서 취하고, 학습된 모델 파라미터들을 이용하여 검증 데이터 세트들에서 패턴들을 발견하고, 추론을 출력한다. 검증 세트로부터의 데이터는 API를 통해 데이터 호스트에 의해 보안 캡슐 컴퓨팅 프레임워크에 전달되고 하나 이상의 모델의 응답(예를 들어, 추론)들은 플랫폼으로 다시 전달되며, 여기서 응답들은 검증 보고서 내에 집결된다. 이 상호작용 외에, 보안 캡슐 컴퓨팅 프레임워크 내부로부터 보안 캡슐 컴퓨팅 프레임워크 외부로의 통신은, 불량 알고리즘이 보안 캡슐 컴퓨팅 프레임워크 외부에서 사적 데이터를 전달하는 것을 방지하는 것이 허용되지 않는다.
블록 1015에서, 모델의 성능 또는 정확도는 골드 표준 라벨들(즉, 실측 자료들)에 기초하여 컴퓨팅되고 모델이 검증되었는지 여부에 관한 결정이 이루어진다. 예를 들어, 유방 X선 촬영에서 유방암 병변을 검출하도록 설계된 알고리즘은, 의료 전문가들에 의해 병변을 포함하거나 포함하지 않는 것으로서 라벨링된 유방 X선 촬영 세트에 관해 검증받을 수 있다. 이러한 전문적으로 라벨링된 유방 X선 촬영 세트에 관한 알고리즘의 성능은 검증 보고서이다. 일부 경우에, 모델의 피처 선택, 분류, 및 파라미터화가 도 3의 블록 310에서 알고리즘 개발자에 의해 정의된 검증 기준(즉, 모델의 검증이 결정되기 위해 기초하는 기준)에 따라 시각화되고(예를 들어, 곡선 분석 아래의 영역을 이용) 순위결정된다. 일부 경우에, 모델이 검증되었는지를 결정하는 것은, 모델이 도 3의 블록 310에서 알고리즘 개발자에 의해 정의된 검증 종료 기준(즉, 모델이 충분한 검증을 달성했는지를 정의하는 기준)을 충족했는지를 결정하는 것을 포함한다.
모델의 성능이 검증되지 않은 경우, 프로세스는 모델이 정밀 튜닝될 수 있는(예를 들어, 하이퍼파라미터들을 최적화할 수 있는) 블록 1020으로 다시 진행한다. 하이퍼파라미터들의 최적화는, 그리드 검색 및 무작위 검색 기술들 등의 임의의 알려진 최적화 기술을 이용하여 수행될 수 있다. 이러한 반복적 프로세스는 모델이 검증될 때까지 또는 검증 종료 기준이 충족될 때까지 반복된다. 보고 제약들에 따라 이 단계 동안에 검증 프로세스의 진행 상태가 알고리즘 개발자에게 보고될 수 있다. 검증 종료 기준이 충족되면, 프로세스는 블록 1025로 진행한다. 블록 1025에서, 일단 검증 종료 기준이 충족되고 나면, 보고 제약들에 따른 성능 메트릭들의 보고와 함께, 검증된 모델의 최적화된 하이퍼파라미터들이 알고리즘 개발자에게 전달될 수 있다. 일부 경우에, 성능 메트릭들의 보고서는 단일 세트의 데이터 자산들에 관한 알고리즘 또는 모델의 검증을 위한 단일 검증 보고서로서 제공될 수 있다. 다른 경우들에서, 성능 메트릭들의 보고서는 임의의 수의 분리된 세트들의 데이터 자산들에 관한 검증들로부터 집결된 알고리즘 또는 모델의 검증을 위한 단일 검증 보고서로서 제공될 수 있다. 그 후, 검증 프로세스는 알고리즘 개발자에 의해 완료되는 것으로 결정될 수 있다. 소정의 경우들에서, 검증 프로세스들에서 이용된 모델 및 데이터 세트들은 미래의 목적들(예를 들어, 규제 검토)을 위해 유지된다. 예를 들어, 일단 검증 활동이 완료되고 나면, 전체 보안 캡슐 컴퓨팅 프레임워크와 그 콘텐츠들 모두가 안전하게 삭제되어 전송된 데이터나 모델에 지속적으로 노출될 위험이 없게 한다. 검증을 위해 제출된 원래의 암호화된 코드는 규제자들에 의한 검사에 항상 이용가능하도록 보장하기 위해 플랫폼에 의해 보관된다.
도 11은 모델 개발 플랫폼 및 시스템(예를 들어, 도 1 내지 도 10과 관련하여 설명된 모델 개발 플랫폼 및 시스템)을 이용하여 모델을 최적화 및/또는 검증하기 위한 처리의 한 예를 나타내는 간소화된 플로차트(1100)이다. 프로세스(1100)는, 모델 및 모델과 연관된 입력 데이터 요건들이 알고리즘 개발자(예를 들어, 제1 엔티티)로부터 수신되는 블록 1105에서 시작한다. 입력 데이터 요건들은, 모델에 관해 실행될 데이터 자산들에 대한 최적화 및/또는 검증 선택 기준을 포함할 수 있다. 최적화 및/또는 검증 선택 기준은, 모델에 관해 실행될 데이터 자산들의 특성들, 포멧들 및 요건들을 정의한다. 블록 1110에서, 데이터 자산들은 데이터 자산들에 대한 입력 데이터 요건들(예를 들어, 최적화 및/또는 검증 선택 기준)에 기초하여 데이터 호스트로부터 이용가능한 것으로 식별된다. 데이터 자산들은, 최적화 및/또는 검증 선택 기준에 기초하여 하나 이상의 호스트의 데이터 저장 구조들에 관해 하나 이상의 조회를 실행함으로써 식별될 수 있다.
블록 1115에서, 데이터 호스트가 온보드된다(이전에 온보드되지 않은 경우). 온보딩은, 모델에서의 데이터 자산들의 이용이 데이터 개인정보 요건들을 준수하는지를 확인하는 것을 포함한다. 블록 1120에서, 데이터 자산들은 데이터 호스트의 인프라스트럭처 내에 있는 데이터 저장 구조 내에 큐레이팅된다. 큐레이팅은 복수의 데이터 저장 구조로부터 데이터 저장 구조를 선택하는 단계 및 데이터 호스트의 인프라스트럭처 내에서 데이터 저장 구조를 공급하는 단계를 포함할 수 있다. 데이터 저장 구조의 선택은, 모델 내의 알고리즘의 유형, 데이터 자산들 내의 데이터의 유형, 컴퓨팅 디바이스의 시스템 요건들, 또는 이들의 조합에 기초할 수 있다. 블록 1125에서, 데이터 자산들은 모델에 의한 처리를 위해 데이터 저장 구조 내에서 준비된다. 데이터 자산들을 준비하는 것은, 데이터 자산들에 하나 이상의 변환을 적용하는 단계, 데이터 자산들에 주석부기하는 단계, 및 데이터 자산들을 조율하는 단계, 또는 이들의 조합을 포함할 수 있다.
블록 1130에서, 모델은 보안 캡슐 컴퓨팅 프레임워크 내에 통합된다. 보안 캡슐 컴퓨팅 프레임워크는, 데이터 자산들의 개인정보를 보호하는 보안된 방식으로 애플리케이션 프로그램 인터페이스를 통해 데이터 저장 구조 내의 데이터 자산들을 모델에게 서비스할 수 있다. 블록 1135에서, 데이터 자산들은 모델을 통해 운영된다. 일부 실시예에서, 모델을 통해 데이터 자산들을 운영하는 단계는 훈련 워크플로우를 실행하는 단계를 포함하고, 훈련 워크플로우를 실행하는 단계는, 모델의 복수의 인스턴스를 생성하는 단계, 데이터 자산들을 훈련 데이터 세트 및 하나 이상의 테스트 데이터 세트로 분할하는 단계, 훈련 데이터 세트에 관해 모델의 복수의 인스턴스를 훈련시키는 단계, 모델의 복수의 인스턴스 각각의 훈련 결과들을 완전 연합된 모델 내에 통합하는 단계, 완전 연합된 모델을 통해 하나 이상의 테스트 데이터 세트를 운영하는 단계, 및 하나 이상의 테스트 데이터 세트의 운영에 기초하여 완전 연합된 모델의 성능을 컴퓨팅하는 단계를 포함한다. 다른 실시예들에서, 모델을 통해 데이터 자산들을 운영하는 단계는, 검증 워크플로우를 실행하는 단계를 포함하고, 이 검증 워크플로우를 실행하는 단계는 : 데이터 자산들을 하나 이상의 검증 데이터 세트로 분할하는 단계, 모델을 통해 하나 이상의 검증 데이터 세트를 운영하는 단계, 하나 이상의 검증 데이터 세트의 운영에 기초하여 모델의 성능을 컴퓨팅하는 단계를 포함한다. 블록 1140에서, 블록 1145에서 모델의 운영에 관한 보고서가 알고리즘 개발자에게 제공될 수 있다.
도 12는 본 개시내용에 따라 개인정보 보호되고 조율된 임상 및 건강 데이터의 복수의 소스에 분석을 분산시킴으로써 인공 지능 알고리즘을 개발하기 위한 시스템들 및 방법들에서 이용하기에 적합한 예시적인 컴퓨팅 디바이스(1200)를 나타낸다. 예시적인 컴퓨팅 디바이스(1200)는, 하나 이상의 통신 버스(1215)를 이용하여 메모리(1210) 및 컴퓨팅 디바이스(1200)의 다른 컴포넌트들과 통신하는 프로세서(1205)를 포함한다. 프로세서(1205)는, 메모리(1210)에 저장된 프로세서 실행가능 명령어들을 실행하여 도 11과 관련하여 전술된 예시적인 방법(1100)의 일부 또는 전부 등의 상이한 예들에 따른 인공 지능 알고리즘을 개발하기 위한 하나 이상의 방법을 수행하도록 구성된다. 이 예에서, 메모리(1210)는 도 1 내지 도 11과 관련하여 앞서 논의된 바와 같이 모델들 및 데이터 자산들 및 모델 성능 분석(1225)을 이용하여 추론들(1220)을 제공하는 프로세서 실행가능 명령어들을 저장한다. 이 예에서, 컴퓨팅 디바이스(1200)는 또한, 사용자 입력을 수락하기 위해, 키보드, 마우스, 터치스크린, 마이크로폰 등의 하나 이상의 사용자 입력 디바이스(1230)를 포함한다. 컴퓨팅 디바이스(1200)는 또한, 사용자 인터페이스 등의 시각적 출력을 사용자에게 제공하는 디스플레이(1235)를 포함한다.
컴퓨팅 디바이스(1000)는 또한, 통신 인터페이스(1240)를 포함한다. 일부 예에서, 통신 인터페이스(1240)는, 영역 네트워크("LAN"); 인터넷 등의 광역 네트워크("WAN"); 대도시권 네트워크("MAN"); 포인트 투 포인트 또는 피어 투 피어 접속; 등을 포함한 하나 이상의 네트워크를 이용하여 통신을 가능케한다. 다른 디바이스들과의 통신은 임의의 적절한 네트워킹 프로토콜을 이용하여 달성될 수 있다. 예를 들어, 한 적절한 네트워킹 프로토콜은, 인터넷 프로토콜("IP"), 전송 제어 프로토콜("TCP"), 사용자 데이터그램 프로토콜("UDP"), 또는 TCP/IP 또는 UDP/IP 등의 이들의 조합들을 포함할 수 있다.
여기서의 방법들 및 시스템들의 일부 예가 다양한 머신 상에서 실행되는 소프트웨어의 측면에서 설명되었지만, 이 방법들 및 시스템들은 또한, 특히 본 개시내용에 따른 다양한 방법을 실행하기 위해 필드 프로그래머블 게이트 어레이(FPGA) 등의, 특별히-구성된 하드웨어로서 구현될 수 있다. 예를 들어, 예들은, 디지털 전자 회로, 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수 있다. 한 예에서, 디바이스는 프로세서 또는 프로세서들을 포함할 수 있다. 프로세서는, 프로세서에 결합된 랜덤 액세스 메모리(RAM) 등의, 컴퓨터-판독가능한 매체를 포함한다. 프로세서는, 하나 이상의 컴퓨터 프로그램을 실행하는 등의, 메모리에 저장된 컴퓨터-실행가능한 프로그램 명령어들을 실행한다. 이러한 프로세서들은, 마이크로프로세서, 디지털 신호 처리기(DSP), 알고리즘-특유의 집적 회로(ASIC), 필드 프로그래머블 게이트 어레이(FPGA)들, 및 상태 머신들을 포함할 수 있다. 이러한 프로세서들은, PLC, PIC(programmable interrupt controller), PLD(programmable logic device), PROM(programmable read-only memory), EPROM 또는 EEPROM(electronically programmable read-only memory), 또는 기타의 유사한 디바이스들과 같은 프로그래머블 전자 디바이스들을 더 포함할 수 있다.
이러한 프로세서들은, 예를 들어, 프로세서에 의해 실행될 때, 프로세서로 하여금 프로세서에 의해 실행되거나 보조되는 본 개시내용에 따른 방법들을 수행하게 하는, 프로세서-실행가능한 명령어들을 저장할 수 있는 매체, 예를 들어 하나 이상의 비일시적인 컴퓨터-판독가능한 매체를 포함하거나 이와 통신할 수 있다. 비일시적인 컴퓨터 판독가능한 매체의 예들은, 전자적, 광학적, 자기적, 또는 웹 서버 내의 프로세서 등의 프로세서에게 프로세서-실행가능한 명령어들을 제공할 수 있는 기타의 저장 디바이스를 포함할 수 있지만, 이것으로 제한되는 것은 아니다. 비일시적인 컴퓨터-판독가능한 매체의 다른 예들은, 플로피 디스크, CD-ROM, 자기 디스크, 메모리 칩, ROM, RAM, ASIC, 구성된 프로세서, 모든 광학 매체, 모든 자기 테이프 또는 기타의 자기 매체, 또는 컴퓨터 프로세서가 판독할 수 있는 기타 임의의 매체를 포함하지만, 이것으로 제한되는 것은 아니다. 설명된 프로세서, 처리는 하나 이상의 구조일 수도 있고, 하나 이상의 구조를 통해 분산될 수도 있다. 프로세서는 본 개시내용에 따른 방법들(또는 방법들의 부분들)을 실행하기 위한 코드를 포함할 수 있다.
IV. 추가적인 고려사항들
상기의 상세한 설명에서는 실시예들의 철저한 이해를 제공하기 위해 특정한 상세사항들이 주어졌다. 그러나, 실시예들은 이들 구체적인 상세사항들 없이도 실시될 수 있다는 것을 이해할 것이다. 예를 들어, 회로들은 불필요한 상세사항들로 실시예들을 모호하게 하지 않도록 블록도들로 도시될 수 있다. 다른 사례들에서, 공지된 회로들, 프로세스들, 알고리즘들, 구조들, 및 기술들은, 실시예들을 모호하게 하지 않도록 불필요한 상세사항없이 도시될 수 있다.
전술된 기술들, 블록들, 단계들, 및 수단들의 구현은 다양한 방식으로 이루어질 수 있다. 예를 들어, 이들 기술들, 블록들, 단계들 및 수단들은, 하드웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수 있다. 하드웨어 구현을 위해, 처리 유닛들은, 하나 이상의 알고리즘 특유의 집적 회로들(ASICs), 디지털 신호 처리 프로세서들(DSPs), 디지털 신호 처리 디바이스들(DSPDs), 프로그램가능한 로직 디바이스들(PLDs), 필드 프로그램가능한 게이트 어레이들(FPGAs), 프로세서들, 제어기들, 마이크로제어기들, 마이크로프로세서들, 전술된 기능들을 수행하도록 설계된 기타의 전자 유닛들, 및/또는 이들의 조합 내에서 구현될 수 있다.
또한, 실시예들은, 플로차트, 흐름도, 데이터 흐름도, 구조도, 또는 블록도로서 도시된 프로세스로서 기술될 수 있다는 점에 유의해야 한다. 플로차트가 순차적 프로세스로서 동작들을 설명하고 있지만, 많은 동작들은 병렬로 또는 동시에 수행될 수 있다. 또한, 동작들의 순서는 재배열될 수 있다. 프로세스는 그 동작들이 완료될 때 종료될 수 있지만, 도면에 포함되지 않은 추가적인 단계들을 가질 수도 있다. 프로세스는, 방법, 함수, 프로시져, 서브루틴, 서브프로그램 등에 대응할 수 있다. 프로세스가 함수에 대응하는 경우, 그 종료는 그 함수를 호출한 함수 또는 주 함수로의 그 함수의 귀환에 대응한다.
또한, 실시예들은, 하드웨어, 소프트웨어, 스크립팅 언어들, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 기술 언어들, 및/또는 이들의 임의의 조합으로 구현될 수 있다. 소프트웨어, 펌웨어, 미들웨어, 스크립팅 언어, 및/또는 마이크로코드로 구현될 때, 필요한 작업들을 수행하는 프로그램 코드나 코드 세그먼트들은 저장 매체 등의 머신 판독가능한 매체에 저장될 수 있다. 코드 세그먼트 또는 머신 실행가능 명령어는, 프로시져, 함수, 서브프로그램, 프로그램, 루틴, 서브루틴, 모듈, 소프트웨어 팩키지, 스크립트, 클래스, 또는 명령어들, 데이터 구조들, 및/또는 프로그램 명령문들의 임의의 조합을 나타낼 수 있다. 코드 세그먼트는, 정보, 데이터, 인수들, 파라미터들, 및/또는 메모리 콘텐츠를 전달 및/또는 수신함으로써 또 다른 코드 세그먼트나 하드웨어 회로에 결합될 수 있다. 정보, 인수들, 파라미터들, 데이터 등은, 메모리 공유, 메시지 전달, 티켓 전달, 네트워크 전송 등을 포함한 임의의 적절한 수단을 통해, 전달, 포워딩 또는 전송될 수 있다.
펌웨어 및/또는 소프트웨어 구현의 경우, 방법론들은 여기서 설명된 기능들을 수행하는 모듈들(예를 들어, 프로시져들, 기능들, 등)로 구현될 수 있다. 명령어들을 유형적으로 구현하는 임의의 머신 판독가능한 매체는 여기서 설명된 방법론들을 구현하는데 이용될 수 있다. 예를 들어, 소프트웨어 코드들은 메모리에 저장될 수 있다. 메모리는 프로세서 내에서 구현되거나 프로세서 외부에서 구현될 수 있다. 여기서 사용된 용어 "메모리"는, 임의의 유형의 장기, 단기, 휘발성, 비휘발성, 또는 기타의 저장 매체를 지칭하며, 임의의 특정한 유형의 메모리 또는 메모리의 수, 또는 메모리가 저장되는 저장 매체의 유형으로 제한되는 것은 아니다.
게다가, 여기서 개시된 바와 같이, 용어 "저장 매체", "스토리지" 또는 "메모리"는, 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 자기 RAM, 코어 메모리, 자기 디스크 저장 매체들, 광학 저장 매체들, 플래시 메모리 디바이스들 및/또는 정보를 저장하기 위한 기타의 머신 판독가능한 매체들을 포함한, 데이터를 저장하기 위한 하나 이상의 메모리를 나타낼 수 있다. 용어 "머신-판독가능한 매체는, 휴대형 또는 고정형 저장 디바이스들, 광학 저장 디바이스들, 무선 채널들, 및/또는 명령어(들) 및/또는 데이터를 포함하거나 운반할 수 있는 다양한 다른 저장 매체들을 포함할 수 있지만, 이것으로 제한되는 것은 아니다.
본 개시내용의 원리들이 특정한 장치들 및 방법들과 관련하여 위에서 설명되었지만, 이러한 설명은 본 개시내용의 범위를 제한하는 것이 아니라 단지 예로서 이루어진 것임을 분명히 이해해야 한다.

Claims (58)

  1. 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 방법으로서,
    데이터 처리 시스템에서, 알고리즘 및 상기 알고리즘과 연관된 입력 데이터 요건들을 수신하는 단계, ―상기 입력 데이터 요건들은 상기 알고리즘에 관해 운영될 데이터 자산들에 대한 최적화 또는 검증 선택 기준을 포함하고, 상기 알고리즘 및 입력 데이터 요건들은 알고리즘 개발자로부터 수신됨―;
    상기 데이터 처리 시스템에 의해, 상기 데이터 자산들에 대한 상기 최적화 또는 검증 선택 기준에 기초하여 상기 데이터 자산들을 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계, ―상기 데이터 호스트는 상기 알고리즘 개발자와는 상이한 엔티티임―;
    상기 데이터 처리 시스템에 의해, 상기 데이터 호스트의 인프라스트럭처 내에 있는 데이터 저장 구조 내에 상기 데이터 자산들을 큐레이팅하는 단계;
    상기 데이터 처리 시스템에 의해, 상기 알고리즘에 의한 처리를 위해 상기 데이터 저장 구조 내의 상기 데이터 자산들을 준비하는 단계;
    상기 데이터 처리 시스템에 의해, 상기 데이터 호스트의 상기 인프라스트럭처의 컴퓨팅 인프라스트럭처 내에 보안 캡슐 컴퓨팅 프레임워크를 공급하는 단계, ―상기 보안 캡슐 컴퓨팅 프레임워크는, 상기 데이터 저장 구조 내의 상기 데이터 자산들을, 상기 데이터 자산들의 개인정보와 상기 알고리즘을 보호하는 보안된 방식으로 상기 알고리즘에게 서비스함―;
    상기 데이터 처리 시스템에 의해, 상기 알고리즘을 상기 보안 캡슐 컴퓨팅 프레임워크 내에 통합하는 단계, ―상기 통합하는 단계는 상기 알고리즘 개발자에 의해, 상기 보안 캡슐 컴퓨팅 프레임워크 내에서 상기 알고리즘을 실행하기 위한 암호화된 코드를 예치하는 단계, 및 상기 알고리즘 개발자에 의해, 상기 암호화된 코드를 해독하여 상기 알고리즘을 실행하기 위한 해독된 코드를 획득하는 단계를 포함함―; 및
    상기 데이터 처리 시스템에 의해, 상기 알고리즘을 통해 상기 데이터 자산들을 운영하는 단계
    를 포함하고, 상기 운영하는 단계는 하나 이상의 보안 애플리케이션 프로그램 인터페이스들을 통해 상기 데이터 저장 구조로부터 상기 보안 캡슐 컴퓨팅 프레임워크 내의 상기 알고리즘으로 상기 데이터 자산들을 전달하는 단계, 상기 데이터 자산들 및 상기 해독된 코드를 사용하여 상기 알고리즘으로 추론을 최적화, 검증 또는 컴퓨팅하는 단계, 및 상기 추론 최적화, 검증 또는 컴퓨팅의 결과들을 상기 하나 이상의 보안 애플리케이션 프로그램 인터페이스들을 통해 상기 알고리즘 개발자 또는 상기 데이터 호스트로 전달하는 단계를 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 방법.
  2. 제1항에 있어서, 상기 최적화 또는 검증 선택 기준은, 상기 알고리즘에 관해 운영될 상기 데이터 자산들에 대한 특성들, 포멧들, 및 요건들을 정의하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 방법.
  3. 제2항에 있어서, 상기 데이터 자산들의 특성들 및 요건들은, (i) 알고리즘의 환경, (ii) 상기 입력 데이터에서 예들의 분포, (iii) 상기 입력 데이터를 생성하는 디바이스들의 유형들 및 파라미터들, (iv) 분산 대 편향, (v) 상기 알고리즘에 의해 구현된 작업들, 또는 (vi) 이들의 임의의 조합에 기초하여 정의되는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 방법.
  4. 제2항에 있어서, 상기 식별하는 단계는, 상기 데이터 자산들 내의 개인들에 대한 사적 정보를 보류하면서 상기 데이터 자산들 내의 그룹들의 패턴들을 기술함으로써 상기 데이터 자산들 내의 정보를 공유하기 위한 차별적 개인정보를 이용하여 수행되며, 상기 큐레이팅하는 단계는, 복수의 데이터 저장 구조로부터 상기 데이터 저장 구조를 선택하는 단계 및 상기 데이터 저장 구조를 상기 데이터 호스트의 상기 인프라스트럭처 내에 공급하는 단계를 포함하고, 상기 데이터 저장 구조의 선택은, 상기 알고리즘의 유형, 상기 데이터 자산들 내의 데이터의 유형, 상기 데이터 처리 시스템의 시스템 요건들, 또는 이들의 조합에 기초하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 방법.
  5. 제1항에 있어서, 상기 데이터 처리 시스템에 의해, 상기 데이터 호스트를 온보딩(onboarding)하는 단계를 더 포함하고, 상기 온보딩하는 단계는, 상기 알고리즘에서의 상기 데이터 자산들의 이용이 데이터 개인정보 요건들을 준수함을 확인하는 단계를 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 방법.
  6. 제1항에 있어서, 상기 데이터 자산들을 준비하는 단계는, 상기 데이터 자산들에 하나 이상의 변환을 적용하는 단계, 상기 데이터 자산들에 주석부기(annotating)하는 단계, 또는 상기 데이터 자산들을 조율하는 단계, 또는 이들의 조합을 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 방법.
  7. 제1항에 있어서, 상기 알고리즘을 통해 상기 데이터 자산들을 운영하는 단계는 훈련 워크플로우를 실행하는 단계를 더 포함하고, 상기 훈련 워크플로우를 실행하는 단계는 : 상기 알고리즘의 복수의 인스턴스를 생성하는 단계, 상기 데이터 자산들을 훈련 데이터 세트들 및 하나 이상의 테스트 데이터 세트들로 분할하는 단계, 상기 훈련 데이터 세트들에 관해 상기 알고리즘의 복수의 인스턴스를 훈련시키는 단계, 상기 알고리즘의 복수의 인스턴스 각각의 훈련 결과들을 완전 연합된 알고리즘 내에 통합하는 단계, 상기 완전 연합된 알고리즘을 통해 상기 하나 이상의 테스트 데이터 세트를 운영하는 단계, 상기 하나 이상의 테스트 데이터 세트의 운영에 기초하여 상기 완전 연합된 알고리즘의 성능을 컴퓨팅하는 단계를 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 방법.
  8. 제1항에 있어서, 상기 알고리즘을 통해 상기 데이터 자산들을 운영하는 단계는 검증 워크플로우를 실행하는 단계를 더 포함하고, 상기 검증 워크플로우를 실행하는 단계는 : 상기 데이터 자산들을 하나 이상의 검증 데이터 세트로 분할하는 단계, 상기 알고리즘을 통해 상기 하나 이상의 검증 데이터 세트를 운영하는 단계, 상기 하나 이상의 검증 데이터 세트의 운영에 기초하여 상기 알고리즘의 성능을 컴퓨팅하는 단계를 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 방법.
  9. 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 시스템으로서,
    하나 이상의 데이터 프로세서; 및
    상기 하나 이상의 데이터 프로세서 상에서 실행될 때, 상기 하나 이상의 데이터 프로세서로 하여금 동작들을 수행하게 하는 명령어들을 포함하는 비일시적인 컴퓨터 판독가능한 저장 매체
    를 포함하고, 상기 동작들은 :
    알고리즘 및 상기 알고리즘과 연관된 입력 데이터 요건들을 수신하는 단계, ―상기 입력 데이터 요건들은 상기 알고리즘에 관해 운영될 데이터 자산들에 대한 최적화 또는 검증 선택 기준을 포함하고, 상기 알고리즘 및 입력 데이터 요건들은 알고리즘 개발자로부터 수신됨―;
    상기 데이터 자산들에 대한 상기 최적화 또는 검증 선택 기준에 기초하여 상기 데이터 자산들을 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계, ―상기 데이터 호스트는 상기 알고리즘 개발자와는 상이한 엔티티임―;
    상기 데이터 호스트의 인프라스트럭처 내에 있는 데이터 저장 구조 내에 상기 데이터 자산들을 큐레이팅하는 단계;
    상기 알고리즘에 의한 처리를 위해 상기 데이터 저장 구조 내의 상기 데이터 자산들을 준비하는 단계;
    상기 데이터 호스트의 상기 인프라스트럭처의 컴퓨팅 인프라스트럭처 내에 보안 캡슐 컴퓨팅 프레임워크를 공급하는 단계, ―상기 보안 캡슐 컴퓨팅 프레임워크는, 상기 데이터 저장 구조 내의 상기 데이터 자산들을, 상기 데이터 자산들의 개인정보와 상기 알고리즘을 보호하는 보안된 방식으로 상기 알고리즘에게 서비스함―;
    상기 알고리즘을 상기 보안 캡슐 컴퓨팅 프레임워크 내에 통합하는 단계, ―상기 통합하는 단계는 상기 알고리즘 개발자에 의해, 상기 보안 캡슐 컴퓨팅 프레임워크 내에서 상기 알고리즘을 실행하기 위한 암호화된 코드를 예치하는 단계, 및 상기 알고리즘 개발자에 의해, 상기 암호화된 코드를 해독하여 상기 알고리즘을 실행하기 위한 해독된 코드를 획득하는 단계를 포함함―; 및
    상기 알고리즘을 통해 상기 데이터 자산들을 운영하는 단계
    를 포함하고, 상기 운영하는 단계는 하나 이상의 보안 애플리케이션 프로그램 인터페이스들을 통해 상기 데이터 저장 구조로부터 상기 보안 캡슐 컴퓨팅 프레임워크 내의 상기 알고리즘으로 상기 데이터 자산들을 전달하는 단계, 상기 데이터 자산들 및 상기 해독된 코드를 사용하여 상기 알고리즘으로 추론을 최적화, 검증 또는 컴퓨팅하는 단계, 및 상기 추론 최적화, 검증 또는 컴퓨팅의 결과들을 상기 하나 이상의 보안 애플리케이션 프로그램 인터페이스들을 통해 상기 알고리즘 개발자 또는 상기 데이터 호스트로 전달하는 단계를 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 시스템.
  10. 제9항에 있어서, 상기 최적화 또는 검증 선택 기준은, 상기 알고리즘에 관해 운영될 상기 데이터 자산들에 대한 특성들, 포멧들, 및 요건들을 정의하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 시스템.
  11. 제10항에 있어서, 상기 데이터 자산들의 특성들 및 요건들은, (i) 알고리즘의 환경, (ii) 상기 입력 데이터에서 예들의 분포, (iii) 상기 입력 데이터를 생성하는 디바이스들의 유형들 및 파라미터들, (iv) 분산 대 편향, (v) 상기 알고리즘에 의해 구현된 작업들, 또는 (vi) 이들의 임의의 조합에 기초하여 정의되는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 시스템.
  12. 제9항에 있어서, 상기 식별하는 단계는, 상기 데이터 자산들 내의 개인들에 대한 사적 정보를 보류하면서 상기 데이터 자산들 내의 그룹들의 패턴들을 기술함으로써 상기 데이터 자산들 내의 정보를 공유하기 위한 차별적 개인정보를 이용하여 수행되며, 상기 큐레이팅하는 단계는, 복수의 데이터 저장 구조로부터 상기 데이터 저장 구조를 선택하는 단계 및 상기 데이터 저장 구조를 상기 데이터 호스트의 상기 인프라스트럭처 내에 공급하는 단계를 포함하고, 상기 데이터 저장 구조의 선택은, 상기 알고리즘의 유형, 상기 데이터 자산들 내의 데이터의 유형, 상기 시스템의 요건들, 또는 이들의 조합에 기초하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 시스템.
  13. 제9항에 있어서, 상기 동작들은 상기 데이터 호스트를 온보딩하는 단계를 더 포함하고, 상기 온보딩하는 단계는, 상기 알고리즘에서의 상기 데이터 자산들의 이용이 데이터 개인정보 요건들을 준수함을 확인하는 단계를 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 시스템.
  14. 제9항에 있어서, 상기 데이터 자산들을 준비하는 단계는, 상기 데이터 자산들에 하나 이상의 변환을 적용하는 단계, 상기 데이터 자산들에 주석부기하는 단계, 또는 상기 데이터 자산들을 조율하는 단계, 또는 이들의 조합을 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 시스템.
  15. 제9항에 있어서, 상기 알고리즘을 통해 상기 데이터 자산들을 운영하는 단계는 훈련 워크플로우를 실행하는 단계를 더 포함하고, 상기 훈련 워크플로우를 실행하는 단계는 : 상기 알고리즘의 복수의 인스턴스를 생성하는 단계, 상기 데이터 자산들을 훈련 데이터 세트들 및 하나 이상의 테스트 데이터 세트들로 분할하는 단계, 상기 훈련 데이터 세트들에 관해 상기 알고리즘의 복수의 인스턴스를 훈련시키는 단계, 상기 알고리즘의 복수의 인스턴스 각각의 훈련 결과들을 완전 연합된 알고리즘 내에 통합하는 단계, 상기 완전 연합된 알고리즘을 통해 상기 하나 이상의 테스트 데이터 세트를 운영하는 단계, 상기 하나 이상의 테스트 데이터 세트의 운영에 기초하여 상기 완전 연합된 알고리즘의 성능을 컴퓨팅하는 단계를 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 시스템.
  16. 제9항에 있어서, 상기 알고리즘을 통해 상기 데이터 자산들을 운영하는 단계는 검증 워크플로우를 실행하는 단계를 더 포함하고, 상기 검증 워크플로우를 실행하는 단계는 : 상기 데이터 자산들을 하나 이상의 검증 데이터 세트로 분할하는 단계, 상기 알고리즘을 통해 상기 하나 이상의 검증 데이터 세트를 운영하는 단계, 상기 하나 이상의 검증 데이터 세트의 운영에 기초하여 상기 알고리즘의 성능을 컴퓨팅하는 단계를 포함하는, 인공 지능 애플리케이션들 또는 알고리즘들을 개발하기 위한 시스템.
  17. 하나 이상의 데이터 프로세서로 하여금 동작들을 수행하게 하도록 구성된 명령어들을 포함하는 비일시적인 머신 판독가능한 저장 매체에 저장된 컴퓨터 프로그램으로서, 상기 동작들은 :
    알고리즘 및 상기 알고리즘과 연관된 입력 데이터 요건들을 수신하는 단계, ―상기 입력 데이터 요건들은 상기 알고리즘에 관해 운영될 데이터 자산들에 대한 최적화 또는 검증 선택 기준을 포함하고, 상기 알고리즘 및 입력 데이터 요건들은 알고리즘 개발자로부터 수신됨―;
    상기 데이터 자산들에 대한 상기 최적화 또는 검증 선택 기준에 기초하여 상기 데이터 자산들을 데이터 호스트로부터 이용가능한 것으로서 식별하는 단계, ―상기 데이터 호스트는 상기 알고리즘 개발자와는 상이한 엔티티임―;
    상기 데이터 호스트의 인프라스트럭처 내에 있는 데이터 저장 구조 내에 상기 데이터 자산들을 큐레이팅하는 단계;
    상기 알고리즘에 의한 처리를 위해 상기 데이터 저장 구조 내의 상기 데이터 자산들을 준비하는 단계;
    상기 데이터 호스트의 상기 인프라스트럭처의 컴퓨팅 인프라스트럭처 내에 보안 캡슐 컴퓨팅 프레임워크를 공급하는 단계, ―상기 보안 캡슐 컴퓨팅 프레임워크는, 상기 데이터 저장 구조 내의 상기 데이터 자산들을, 상기 데이터 자산들의 개인정보와 상기 알고리즘을 보호하는 보안된 방식으로 상기 알고리즘에게 서비스함―;
    상기 알고리즘을 상기 보안 캡슐 컴퓨팅 프레임워크 내에 통합하는 단계, ―상기 통합하는 단계는 상기 알고리즘 개발자에 의해, 상기 보안 캡슐 컴퓨팅 프레임워크 내에서 상기 알고리즘을 실행하기 위한 암호화된 코드를 예치하는 단계, 및 상기 알고리즘 개발자에 의해, 상기 암호화된 코드를 해독하여 상기 알고리즘을 실행하기 위한 해독된 코드를 획득하는 단계를 포함함―; 및
    상기 알고리즘을 통해 상기 데이터 자산들을 운영하는 단계
    를 포함하고, 상기 운영하는 단계는 하나 이상의 보안 애플리케이션 프로그램 인터페이스들을 통해 상기 데이터 저장 구조로부터 상기 보안 캡슐 컴퓨팅 프레임워크 내의 상기 알고리즘으로 상기 데이터 자산들을 전달하는 단계, 상기 데이터 자산들 및 상기 해독된 코드를 사용하여 상기 알고리즘으로 추론을 최적화, 검증 또는 컴퓨팅하는 단계, 및 상기 추론 최적화, 검증 또는 컴퓨팅의 결과들을 상기 하나 이상의 보안 애플리케이션 프로그램 인터페이스들을 통해 상기 알고리즘 개발자 또는 상기 데이터 호스트로 전달하는 단계를 포함하는, 컴퓨터 프로그램.
  18. 제17항에 있어서, 상기 최적화 또는 검증 선택 기준은, 상기 알고리즘에 관해 운영될 상기 데이터 자산들에 대한 특성들, 포멧들, 및 요건들을 정의하는, 컴퓨터 프로그램.
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
  43. 삭제
  44. 삭제
  45. 삭제
  46. 삭제
  47. 삭제
  48. 삭제
  49. 삭제
  50. 삭제
  51. 삭제
  52. 삭제
  53. 삭제
  54. 삭제
  55. 삭제
  56. 삭제
  57. 삭제
  58. 삭제
KR1020217034758A 2019-03-26 2020-03-26 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅 KR102634785B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020247004049A KR20240019868A (ko) 2019-03-26 2020-03-26 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962824183P 2019-03-26 2019-03-26
US62/824,183 2019-03-26
US201962948556P 2019-12-16 2019-12-16
US62/948,556 2019-12-16
PCT/US2020/025083 WO2020198542A1 (en) 2019-03-26 2020-03-26 Distributed privacy-preserving computing on protected data

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020247004049A Division KR20240019868A (ko) 2019-03-26 2020-03-26 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅

Publications (2)

Publication Number Publication Date
KR20210143879A KR20210143879A (ko) 2021-11-29
KR102634785B1 true KR102634785B1 (ko) 2024-02-08

Family

ID=72606244

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020247004049A KR20240019868A (ko) 2019-03-26 2020-03-26 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅
KR1020217034758A KR102634785B1 (ko) 2019-03-26 2020-03-26 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020247004049A KR20240019868A (ko) 2019-03-26 2020-03-26 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅

Country Status (10)

Country Link
US (3) US11531904B2 (ko)
EP (1) EP3948570A4 (ko)
JP (1) JP7439125B2 (ko)
KR (2) KR20240019868A (ko)
CN (1) CN113892093A (ko)
AU (1) AU2020244856B2 (ko)
BR (1) BR112021018241A2 (ko)
CA (1) CA3133466A1 (ko)
IL (1) IL286232A (ko)
WO (1) WO2020198542A1 (ko)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11763950B1 (en) 2018-08-16 2023-09-19 Clarify Health Solutions, Inc. Computer network architecture with machine learning and artificial intelligence and patient risk scoring
US11087004B2 (en) * 2019-02-01 2021-08-10 Rsa Security Llc Anonymizing data sets in risk management applications
KR20240019868A (ko) 2019-03-26 2024-02-14 더 리전트 오브 더 유니버시티 오브 캘리포니아 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅
US11625789B1 (en) * 2019-04-02 2023-04-11 Clarify Health Solutions, Inc. Computer network architecture with automated claims completion, machine learning and artificial intelligence
US11621085B1 (en) 2019-04-18 2023-04-04 Clarify Health Solutions, Inc. Computer network architecture with machine learning and artificial intelligence and active updates of outcomes
US11238469B1 (en) 2019-05-06 2022-02-01 Clarify Health Solutions, Inc. Computer network architecture with machine learning and artificial intelligence and risk adjusted performance ranking of healthcare providers
US11238167B2 (en) * 2019-06-14 2022-02-01 Sap Se Secure sublinear time differentially private median computation
JP7114528B2 (ja) * 2019-07-08 2022-08-08 株式会社東芝 推論装置、学習装置、推論方法及び学習方法
US11449797B1 (en) * 2019-09-23 2022-09-20 Amazon Technologies, Inc. Secure machine learning workflow automation using isolated resources
US11531846B1 (en) * 2019-09-30 2022-12-20 Amazon Technologies, Inc. Extending sensitive data tagging without reannotating training data
US11270785B1 (en) 2019-11-27 2022-03-08 Clarify Health Solutions, Inc. Computer network architecture with machine learning and artificial intelligence and care groupings
US11361749B2 (en) 2020-03-11 2022-06-14 Nuance Communications, Inc. Ambient cooperative intelligence system and method
CN115917553A (zh) * 2020-06-12 2023-04-04 甲骨文国际公司 在聊天机器人中实现稳健命名实体识别的实体级数据扩充
WO2022072776A1 (en) 2020-10-01 2022-04-07 Nec Laboratories America, Inc. Voting-based approach for differentially private federated learning
CN112948836B (zh) * 2020-11-16 2022-05-17 支付宝(杭州)信息技术有限公司 保护神经网络模型安全的方法及装置
US11366894B1 (en) * 2020-12-08 2022-06-21 International Business Machines Corporation Secure computing resource deployment using homomorphic encryption
CN112598311A (zh) * 2020-12-29 2021-04-02 中国农业银行股份有限公司 一种风险操作识别模型构建方法、风险操作识别方法
CN113807544B (zh) * 2020-12-31 2023-09-26 京东科技控股股份有限公司 一种联邦学习模型的训练方法、装置及电子设备
CN113807380B (zh) * 2020-12-31 2023-09-01 京东科技信息技术有限公司 一种联邦学习模型的训练方法、装置及电子设备
US20220237503A1 (en) * 2021-01-26 2022-07-28 International Business Machines Corporation Machine learning model deployment within a database management system
US11847245B2 (en) * 2021-02-17 2023-12-19 Capital One Services, Llc Privacy preserving data labeling
US11783083B2 (en) 2021-03-19 2023-10-10 International Business Machines Corporation Computing trade-offs between privacy and accuracy of data analysis
US20220318420A1 (en) * 2021-03-30 2022-10-06 Adobe Inc. Platform for unsupervised machine learning training on unseeable user generated assets
KR102437715B1 (ko) * 2021-06-07 2022-08-26 성신여자대학교 연구 산학협력단 데이터 분산처리 장치 및 이의 동작방법
US20220398327A1 (en) * 2021-06-10 2022-12-15 International Business Machines Corporation Applying noise to formats with masking restrictions
US20230025754A1 (en) * 2021-07-22 2023-01-26 Accenture Global Solutions Limited Privacy-preserving machine learning training based on homomorphic encryption using executable file packages in an untrusted environment
WO2023028694A1 (en) * 2021-09-03 2023-03-09 Bitnobi, Inc. Federated, decentralized data sharing
CA3233034A1 (en) * 2021-09-27 2023-03-30 Fairly Ai Inc. System and method for artificial intelligence and machine learning model validation
WO2023056546A1 (en) * 2021-10-04 2023-04-13 Fuseforward Technology Solutions Limited Machine learning training system and method
CN114154645B (zh) * 2021-12-03 2022-05-17 中国科学院空间应用工程与技术中心 跨中心图像联合学习方法、系统、存储介质及电子设备
CN114239064A (zh) * 2021-12-20 2022-03-25 杭州趣链科技有限公司 隐私计算方法、装置、电子设备及计算机可读存储介质
US20230205917A1 (en) * 2021-12-24 2023-06-29 BeeKeeperAI, Inc. Systems and methods for data validation and transformation of data in a zero-trust environment
CN114638376A (zh) * 2022-03-25 2022-06-17 支付宝(杭州)信息技术有限公司 一种复合样本场景中的多方联合模型训练方法及装置
US20240020417A1 (en) * 2022-04-29 2024-01-18 BeeKeeperAI, Inc. Systems and methods for federated feedback and secure multi-model training within a zero-trust environment
US20230376859A1 (en) * 2022-05-19 2023-11-23 Microsoft Technology Licensing, Llc Federated Learning Solutions for Machine Learning
US20230394366A1 (en) * 2022-06-06 2023-12-07 Epistamai LLC Bias reduction in machine learning model training and inference
US20230394357A1 (en) 2022-06-06 2023-12-07 Epistamai LLC Bias reduction in machine learning model training and inference
US20240037299A1 (en) * 2022-07-29 2024-02-01 BeeKeeperAI, Inc. Systems and methods for algorithm performance modeling in a zero-trust environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090254971A1 (en) 1999-10-27 2009-10-08 Pinpoint, Incorporated Secure data interchange
US20170258390A1 (en) 2016-02-12 2017-09-14 Newton Howard Early Detection Of Neurodegenerative Disease
US20180182037A1 (en) 2014-03-28 2018-06-28 Jeffrey S. Lange Systems and methods for crowdsourcing of algorithmic forecasting
US20180294047A1 (en) 2017-03-01 2018-10-11 Seqster Pdm, Inc. Personal data marketplace for genetic, fitness, and medical information including health trust management

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8346534B2 (en) 2008-11-06 2013-01-01 University of North Texas System Method, system and apparatus for automatic keyword extraction
US10133878B2 (en) * 2014-07-30 2018-11-20 Microsoft Technology Licensing, Llc Stochastic privacy
CN109716345B (zh) * 2016-04-29 2023-09-15 普威达有限公司 计算机实现的隐私工程系统和方法
JP6329331B1 (ja) 2016-07-04 2018-05-23 株式会社Seltech 人工知能を有するシステム
US20180150609A1 (en) * 2016-11-29 2018-05-31 Electronics And Telecommunications Research Institute Server and method for predicting future health trends through similar case cluster based prediction models
US10198399B1 (en) * 2018-03-06 2019-02-05 KenSci Inc. Cryptographically secure machine learning
WO2019231481A1 (en) * 2018-05-29 2019-12-05 Visa International Service Association Privacy-preserving machine learning in the three-server model
US10867067B2 (en) * 2018-06-07 2020-12-15 Cisco Technology, Inc. Hybrid cognitive system for AI/ML data privacy
US11443182B2 (en) * 2018-06-25 2022-09-13 International Business Machines Corporation Privacy enhancing deep learning cloud service using a trusted execution environment
US11816575B2 (en) * 2018-09-07 2023-11-14 International Business Machines Corporation Verifiable deep learning training service
CN112585620A (zh) * 2018-09-28 2021-03-30 苹果公司 用于监督式学习的分布式标记
US10970402B2 (en) * 2018-10-19 2021-04-06 International Business Machines Corporation Distributed learning preserving model security
US11449775B2 (en) * 2018-12-27 2022-09-20 Hubspot, Inc. Multi-client service system platform
US20200293918A1 (en) * 2019-03-15 2020-09-17 Cognitive Scale, Inc. Augmented Intelligence System Assurance Engine
KR20240019868A (ko) 2019-03-26 2024-02-14 더 리전트 오브 더 유니버시티 오브 캘리포니아 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090254971A1 (en) 1999-10-27 2009-10-08 Pinpoint, Incorporated Secure data interchange
US20180182037A1 (en) 2014-03-28 2018-06-28 Jeffrey S. Lange Systems and methods for crowdsourcing of algorithmic forecasting
US20170258390A1 (en) 2016-02-12 2017-09-14 Newton Howard Early Detection Of Neurodegenerative Disease
US20180294047A1 (en) 2017-03-01 2018-10-11 Seqster Pdm, Inc. Personal data marketplace for genetic, fitness, and medical information including health trust management

Also Published As

Publication number Publication date
CA3133466A1 (en) 2020-10-01
US20230325682A1 (en) 2023-10-12
JP2022526948A (ja) 2022-05-27
WO2020198542A1 (en) 2020-10-01
IL286232A (en) 2021-10-31
KR20240019868A (ko) 2024-02-14
US20230080780A1 (en) 2023-03-16
EP3948570A4 (en) 2022-12-21
US11748633B2 (en) 2023-09-05
JP7439125B2 (ja) 2024-02-27
AU2020244856A1 (en) 2021-10-28
CN113892093A (zh) 2022-01-04
EP3948570A1 (en) 2022-02-09
KR20210143879A (ko) 2021-11-29
AU2020244856B2 (en) 2024-05-16
BR112021018241A2 (pt) 2022-02-01
US20200311300A1 (en) 2020-10-01
US11531904B2 (en) 2022-12-20

Similar Documents

Publication Publication Date Title
KR102634785B1 (ko) 보호된 데이터에 관한 분산형 개인정보 보호 컴퓨팅
Weissler et al. The role of machine learning in clinical research: transforming the future of evidence generation
Li et al. Predicting breast cancer 5-year survival using machine learning: A systematic review
Norgeot et al. Minimum information about clinical artificial intelligence modeling: the MI-CLAIM checklist
Raja et al. A systematic review of healthcare big data
Dey et al. Big data analytics for intelligent healthcare management
US20140088989A1 (en) Rapid Learning Community for Predictive Models of Medical Knowledge
Chowdhury et al. A review of medical federated learning: Applications in oncology and cancer research
Meldolesi et al. Standardized data collection to build prediction models in oncology: a prototype for rectal cancer
US20220148710A9 (en) Methods, Systems and Computer Program Products for Retrospective Data Mining
Keikhosrokiani Big data analytics for healthcare: datasets, techniques, life cycles, management, and applications
Charles Accelerating life sciences research with blockchain
Rao et al. Survey on electronic health record management using amalgamation of artificial intelligence and blockchain technologies
Trottet et al. Modular Clinical Decision Support Networks (MoDN)—Updatable, interpretable, and portable predictions for evolving clinical environments
Elvas et al. Health Data Sharing towards Knowledge Creation
Wassan et al. Deep convolutional neural network and IoT technology for healthcare
Holzinger et al. Machine Learning and Knowledge Extraction: 7th IFIP TC 5, TC 12, WG 8.4, WG 8.9, WG 12.9 International Cross-Domain Conference, CD-MAKE 2023, Benevento, Italy, August 29–September 1, 2023, Proceedings
Tarcar Advancing healthcare solutions with federated learning
Nolte et al. Federated learning framework integrating REFINED CNN and Deep Regression Forests
Liang et al. A blockchain-empowered federated learning system and the promising use in drug discovery
Cao et al. PPChain: A Blockchain for Pandemic Prevention and Control Assisted by Federated Learning
US20240020417A1 (en) Systems and methods for federated feedback and secure multi-model training within a zero-trust environment
US20240120109A1 (en) Artificial intelligence architecture for providing longitudinal health record predictions
Smith et al. NMS 2018-2021 Life-sciences and healthcare project" Digital health: curation of healthcare data"-final report
Torres et al. Clearing histology with MultiPhoton microscopy: Primary diagnosis of prostate biopsies in un-embedded specimens

Legal Events

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