KR20230004566A - 머신 러닝 모델을 사용한 로컬 조상 추론 - Google Patents

머신 러닝 모델을 사용한 로컬 조상 추론 Download PDF

Info

Publication number
KR20230004566A
KR20230004566A KR1020227038840A KR20227038840A KR20230004566A KR 20230004566 A KR20230004566 A KR 20230004566A KR 1020227038840 A KR1020227038840 A KR 1020227038840A KR 20227038840 A KR20227038840 A KR 20227038840A KR 20230004566 A KR20230004566 A KR 20230004566A
Authority
KR
South Korea
Prior art keywords
snp
ancestral
segment
origin
ancestral origin
Prior art date
Application number
KR1020227038840A
Other languages
English (en)
Inventor
다니엘 마스 몬트서라트
알렉산더 이오안니디즈
아빈드 쿠마
카를로스 버스타만테
리차 라스토기
헬기 힐마르손
Original Assignee
찬 주커버그 바이오허브, 인크.
더 보드 어브 트러스티스 어브 더 리랜드 스탠포드 주니어 유니버시티
더 보드 어브 트러스티스 어브 더 리랜드 스탠포드 주니어 유니버시티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 찬 주커버그 바이오허브, 인크., 더 보드 어브 트러스티스 어브 더 리랜드 스탠포드 주니어 유니버시티, 더 보드 어브 트러스티스 어브 더 리랜드 스탠포드 주니어 유니버시티 filed Critical 찬 주커버그 바이오허브, 인크.
Publication of KR20230004566A publication Critical patent/KR20230004566A/ko

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B40/00ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
    • G16B40/20Supervised data analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B10/00ICT specially adapted for evolutionary bioinformatics, e.g. phylogenetic tree construction or analysis
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B20/00ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
    • G16B20/20Allele or variant detection, e.g. single nucleotide polymorphism [SNP] detection
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B20/00ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
    • G16B20/40Population genetics; Linkage disequilibrium

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Evolutionary Biology (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Biotechnology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Genetics & Genomics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Analytical Chemistry (AREA)
  • Chemical & Material Sciences (AREA)
  • Proteomics, Peptides & Aminoacids (AREA)
  • Epidemiology (AREA)
  • Bioethics (AREA)
  • Public Health (AREA)
  • Databases & Information Systems (AREA)
  • Physiology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Animal Behavior & Ethology (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Ecology (AREA)
  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Feedback Control In General (AREA)

Abstract

컴퓨터 구현 방법은 다음의 것을 포함한다: 트레이닝된 머신 러닝 모델을 저장하는 것으로서, 머신 러닝 모델은 예측기 서브모델 및 평활화 서브모델을 포함하고, 머신 러닝 모델은 공지된 조상 기원을 갖는 트레이닝 게놈 서열의 세그먼트에 기초하여 트레이닝되는, 트레이닝된 머신 러닝 모델을 저장하는 것; 대상의 입력 게놈 서열을 나타내는 데이터를 수신하는 것으로서, 입력 게놈 서열은 대상의 게놈의 복수의 단일 뉴클레오타이드 다형성(SNP) 부위를 포함하는 복수의 세그먼트를 커버하고, 각각의 세그먼트는 SNP 부위에서의 SNP 값의 서열을 포함하고, 각각의 SNP 값은 SNP 부위에서의 변이체를 명시하는, 상기 데이터를 수신하는 것; 예측기 서브모델을 사용하여 그리고 데이터에 기초하여, SNP 값의 각각의 세그먼트의 초기 조상 기원 추정치를 결정하는 것; 및 각각의 세그먼트에 대한 평활화 서브 모델에 의해, 세그먼트의 조상 기원에 대한 최종 예측 결과를 획득하기 위해 초기 조상 기원 추정치에 대한 평활화 동작을 수행하는 것.

Description

머신 러닝 모델을 사용한 로컬 조상 추론
본 발명은 미국 국립 보건원(National Institutes of Health)에 의해 수여된 허여 번호 HG009080 하에서의 정부 지원을 통해 이루어졌다. 정부는 본 발명에서 소정의 권리를 갖는다.
본 특허 출원은, 본 특허 출원의 양수인에게 양도되고 모든 목적을 위해 그 전체가 참조에 의해 본 명세서에 통합되는, 2020년 4월 15일자로 출원된 발명의 명칭이 "LOCAL-ANCESTRY INFERENCE WITH MACHINE LEARNING MODEL"인 미국 특허 가출원 일련 번호 제63/010,467호에 대한 우선권을 주장한다.
데옥시리보핵산(deoxyribonucleic acid: DNA) 서열의 대부분의 부위(site)가 개인 사이에서 변하지는 않지만, 약 2 퍼센트(5백만개 포지션)는 변한다. 이들은 단일 뉴클레오타이드 다형성(single nucleotide polymorphism: SNP)으로 지칭된다. 상이한 대륙 및 상이한 아대륙(subcontinental) 지역으로부터 기원하는 인간 모집단은, 그들의 게놈의 DNA 서열의 각각의 부위에서 SNP 변이체(variant)의 빈도에서 식별 가능한 차이를 나타낸다. DNA가 각각의 세대에서 조상의(두 부모 DNA 서열 사이의) 희귀하고 랜덤한 스왑만을 갖는 온전한 서열로서 유전되기 때문에, 조상의 SNP는 인접한 SNP 변이체의 패턴에 기초하여 강력한 조상 추론을 허용하는 인접한 세그먼트를 형성한다.
로컬 조상 추론(local-ancestry inference)은 개인의 DNA의 조상 기원(ancestral origin)을 추정하기 위해 개인의 게놈을 따라 다양한 부위에서 관찰되는 변동의 패턴을 사용한다. milliMorgan 해상도에서 개인의 DNA의 각각의 세그먼트에 대한 조상을 정확하게 추론하는 능력은, 질병 소인(predisposition)을 포함하는 복잡한 특성에 대한 유전학 및 환경의 역할을 분리하는 데 중요한데, 그 이유는 공통 조상을 가진 모집단이 복잡한 신체적 및 의학적 특성을 공유하기 때문이다. 예를 들면, 미국에 거주하는 푸에르토리코인(Puerto Rican)은 천식 사망률이 가장 높고 멕시코인(Mexican)은 가장 낮다. (신장, 혈압, 콜레스테롤 레벨, 소정의 질병에 대한 소인과 같은) 생물의학적 특성에 대한 모집단 내 유전적 관련성을 설명하는 것은 치료법의 개발에 정보를 제공할 수 있고, 다유전자 위험 점수(polygenic risk score)로서 공지되어 있는 질병 위험의 예측기(predictor)의 구축을 허용할 수 있다. 그러나, 이웃하는 유전적 변이체 사이의 상관 관계가 조상 종속적이기 때문에, 이들 위험 점수를 개인의 게놈에 적용하는 것은 게놈을 따라 각각의 부위에서 개인의 조상의 지식을 필요로 한다. 혼합된 현대의 전세계 모집단의 다양성이 증가함에 따라, 게놈에 따른 그러한 조상 고유의 분석은 점점 더 복잡하고 중요한 계산 문제가 되고 있다.
따라서, 새로운 기술이 DNA 서열에서 유전적 변이체(예를 들면, SNP)의 세그먼트의 조상 기원(들)을 추정하는 것이 바람직하다.
본 개시내용의 실시형태는 머신 러닝 모델을 사용하여 DNA 서열에서 유전적 변이체(예를 들면, SNP)의 세그먼트의 조상 기원(들)을 추정하기 위한 방법, 시스템, 및 장치를 제공한다. 머신 러닝 모델은, 예를 들면, 대상(subject)의 게놈 서열을 제공하는 게놈 시퀀싱 동작(genome sequencing operation), DNA의 세그먼트를 포함하는 DNA 마이크로어레이 등으로부터 획득되는 반수체(haploid) 또는 이배체(diploid) DNA 서열을 나타내는 데이터를 프로세싱할 수 있다. 머신 러닝 모델은 고해상도에서, 예컨대, milliMorgan 해상도에서 (예를 들면, 참조 게놈의 상이한 영역으로 매핑되는) 게놈의 SNP의 세그먼트에 대한 조상 기원의 예측을 생성할 수 있다.
몇몇 실시형태에 따르면, 머신 러닝 모델은 SNP의 세그먼트의 초기 조상 기원 추정치를 생성하기 위한 예측기 서브모델(predictor sub-model), 및 초기 추정치에 대해 평활화 동작을 수행하기 위한 평활화 서브모델(smoothing sub-model)을 포함한다. 평활화 서브모델은 평활화 동작을 수행하여 초기 조상 기원 추정치에서 불연속성을 제거하거나 또는 감소시킬 수 있다. 몇몇 예에서, 예측기 서브모델은, 분류 동작에 기초하여, SNP의 세그먼트를, 후보 조상 기원 카테고리의 세트(예를 들면, 동아시아, 남아시아, 중동, 아프리카, 유럽, 폴리네시아, 오세아니아 등) 중 하나로 분류하는 분류기로서 구성될 수 있다. 몇몇 예에서, 예측기 서브모델은 회귀 동작에 기초하여 SNP의 세그먼트의 조상 기원 로케일(ancestral origin locale)의 지리적 좌표(예컨대, 위도 및 경도)를 추정하기 위한 회귀자(regressor)로서 구성될 수 있다. 조상 기원 로케일의 지리적 좌표는 후보 조상 기원 카테고리의 유한한 세트보다 훨씬 더 높은 해상도, 및 지속적으로 변하는 지리적 위치의 세트를 정확하게 위치를 지적할 수 있다. 예를 들면, 지리적 좌표는 특정한 국가(예를 들면, 영국) 내의 임의의 위치(예를 들면, Oxford)를 가리킬 수 있고, 반면 조상 기원 카테고리는, 위치의 유한한 세트, 통상적으로 대륙(예를 들면, 아프리카) 또는 아대륙(예를 들면, 북아프리카) 또는 국가(예를 들면, 일본)를 가리킬 수 있다. 또한, 몇몇 경우에, 회귀자가 심지어 밀접하게 관련된 모집단에 대해서도 유용한 조상 추정치를 제공할 수 있는데, 이것은, 비록 일부 조상이 다른 조상보다 훨씬 더 관련되더라도, 각각의 조상 오분류를 동등하게 처리하는 분류기에 대해 문제를 제시할 수 있다. 몇몇 예에서, 머신 러닝 모델은 차원수 감소(dimensionality-reduction)로부터 획득되는 차원을 갖는 다차원 공간에서 조상 기원/혈통(breed)을 나타내는 좌표를 생성하도록 트레이닝될 수 있다.
예측기 서브모델 및 평활화 서브모델은, 신경망 모델, 구배 부스팅 모델(gradient boosting model) 등과 같은 다양한 토폴로지를 포함할 수 있다. 하나의 예에서, 예측기 서브모델은 하나 이상의 완전히 연결된 신경망을 포함할 수 있는데, 각각은 세그먼트의 초기 조상 기원 추정치를 생성하기 위해 입력 DNA 서열의 SNP의 세그먼트를 프로세싱하도록 할당된다. 초기 조상 기원 추정치는, 예를 들면, 특정한 조상 기원 카테고리에 속하는 SNP의 세그먼트의 확률, 조상 기원 로케일의 지리적 좌표의 추정치 등을 포함할 수도 있다. 평활화 서브모델은, 평활화 동작의 일부로서, 커널을 이웃하는 초기 조상 기원 추정치의 세트와 컨볼빙하여(convolve) 최종 예측치로서 초기 추정치의 평활화된 버전을 생성하는 컨볼루션 신경망(convolutional neural network)을 포함할 수 있다. 몇몇 예에서, 예측기 서브모델은 복수의 완전히 연결된 신경망을 포함할 수 있는데, 각각의 네트워크는 SNP 세그먼트를 프로세싱하기 위해 SNP 부위의 상이한 세트에 대해 트레이닝되는 가중치의 상이한 세트를 갖는다. 몇몇 예에서, 예측기 서브모델은 상이한 SNP 세그먼트를 프로세싱하기 위해 가중치의 단일의 세트를 갖는 단일의 완전히 연결된 신경망을 포함할 수 있다. 단일의 완전히 연결된 신경망은 또한 각각의 SNP 세그먼트와 관련되는 세그먼트 인덱스를 수락하는데, 이것은 신경망이 가중치의 동일한 세트를 사용하여 상이한 SNP 세그먼트를 상이하게 프로세싱하는 것을 허용한다.
다른 예에서, 예측기 서브모델 및 평활화 서브모델은 복수의 의사 결정 트리 모델(decision tree model)을 포함할 수 있다. 예측기 서브모델에서의 의사 결정 트리 모델은 SNP의 세그먼트에 대한 의사 결정 출력(decision output)을 생성할 수 있다. 의사 결정 트리 모델의 출력은 결합되어 초기 조상 기원 추정치를 생성할 수 있다. 평활화 서브모델에서의 의사 결정 트리는 초기 조상 기원 추정치의 서브세트에 기초하여 의사 결정 출력을 생성할 수 있고, 의사 결정 출력은 결합되어 최종 예측치로서 초기 추정치의 평활화된 버전을 제공할 수 있다. 몇몇 예에서, 예측기 서브모델은 복수의 의사 결정 트리 모델을 포함할 수 있는데, 각각의 의사 결정 트리 모델은, SNP 세그먼트를 프로세싱하기 위해 SNP 부위의 상이한 세트에 대해 트레이닝되는 트리 파라미터의 상이한 세트(예를 들면, 상이한 토폴로지, 상이한 의사 결정 기준 등)를 갖는다. 몇몇 예에서, 예측기 서브모델은 상이한 SNP 세그먼트를 프로세싱하기 위해 트리 파라미터의 단일의 세트(예를 들면, 단일의 토폴로지, 의사 결정 기준의 단일의 세트 등)를 갖는 단일의 의사 결정 트리 모델을 포함할 수 있다. 단일의 의사 결정 트리 모델은 또한 각각의 SNP 세그먼트와 관련되는 세그먼트 인덱스를 수락하는데, 이것은 단일의 의사 결정 트리 모델이 트리 파라미터의 동일한 세트를 사용하여 상이한 SNP 세그먼트를 상이하게 프로세싱하는 것을 허용한다.
머신 러닝 모델은 다양한 기술을 사용하여 트레이닝될 수 있다. 예를 들면, 머신 러닝 모델이 신경망 모델을 포함하는 경우, 머신 러닝 모델은, 머신 러닝 모델에 의해 출력되는 조상 기원의 예측치와 트레이닝 SNP 서열의 세그먼트의 실제 조상 기원을 비교하는 손실 함수를 최소화하는 것에 기초하여 트레이닝될 수 있다. 손실 구배는 손실 함수로부터 생성될 수 있고, 손실 구배는, 예측기 서브모델의 완전히 연결된 신경망의 가중치뿐만 아니라, 평활화 서브모델의 컨볼루션 신경망 커널을 업데이트하기 위해 사용될 수 있다. 머신 러닝 모델이 의사 결정 트리를 포함하는 경우, 예측기 서브모델 및 평활화 서브모델의 의사 결정 트리는, 조정 결과에 따라 새로운 의사 결정 트리를 순차적으로 추가하는 구배 부스팅 동작(gradient boosting operation)에 기초하여 별개로 트레이닝될 수 있는데, 구배 부스팅 동작은, 트레이닝 SNP 서열의 세그먼트의 조상 기원 로케일의 공지된 지리적 좌표 및/또는 공지된 조상 기원 카테고리를 더 잘 적합시키기 위해 선행하는 의사 결정 트리의 의사 결정을 조정하는 것의 결과에 기초하여 새로운 의사 결정 트리를 순차적으로 추가한다.
머신 러닝 모델은, 아프리카, 동아시아 및 유럽의 다양한 로케일뿐만 아니라, 더 작은 지리적 영역으로부터의 개인을 비롯하여, 공지된 조상 기원의 모집단의 전체 데이터로부터 유도되는 트레이닝 데이터에 기초하여 트레이닝될 수 있다. 이들 개인의 전체 게놈 서열로부터, 일련의 세대에 걸친 순방향 시뮬레이션(예를 들면, Wright-Fisher)에 기초하여, 이들 개인의 시뮬레이팅된 혼합된 자손의 시뮬레이팅된 게놈 서열이 생성될 수 있다. (예를 들면, 다수의 세대에 걸친) 이들 개인의 시뮬레이팅된 혼합된 자손의 게놈 서열뿐만 아니라, 시뮬레이팅된 게놈 서열의 SNP 세그먼트의 공지된 조상 기원을 포함하는 트레이닝 데이터의 세트가 머신 러닝 모델을 트레이닝시키고 유효성 확인하기(validate) 위해 사용될 수 있다. 트레이닝은, 머신 러닝 모델이, 상이한 DNA 부위로 매핑되는 SNP 변이체의 패턴과 그들의 조상 기원 사이의 관계로부터 학습하여 로컬 조상 추론을 수행하는 것을 허용한다. 예측기 모델이 단일의 신경망 모델 또는 단일의 의사 결정 트리 모델을 포함하는 경우, 모델은, 단일의 모델이 가중치를 조정하여 상이한 SNP 부위를 고려하는 것을 허용하도록, 세그먼트 인덱스를 포함하는 입력에 기초하여 트레이닝될 수 있다.
개시된 실시형태에서, 머신 러닝 모델은, 고해상도를 가지고 SNP의 서열의(예를 들면, milliMorgan 해상도에서 SNP의 세그먼트에 대한) 조상 고유의 패턴을 식별하도록 트레이닝될 수 있다. 이들 개인의 많은 시뮬레이팅된 혼합된 자손의 게놈 서열을 포함하는 트레이닝 데이터를 사용하여 머신 러닝 모델을 트레이닝시키는 것에 의해, 머신 러닝 모델은 상이한 혼합 이력을 갖는 개인 및 모집단에 대해 강건하게 될 수 있다. 머신 러닝 모델의 강건성은, 회귀 동작에 기초하여 SNP의 세그먼트의 조상 기원 로케일의 지리적 좌표를 추정하기 위해 모델이 회귀자로서 트레이닝될 때 향상될 수 있는데, 이것은 심지어 밀접하게 관련된 모집단에 대해서도 유용한 조상 추정치를 제공할 수 있다. 머신 러닝 모델의 강건성은, 초기 조상 기원 추정치에서 불연속성을 제거할 수 있을 뿐만 아니라, 불연속성을 제거하기 위해 트레이닝 데이터에 의해 또한 트레이닝될 수 있는 평활화 서브모델에 의해 추가로 향상될 수 있다.
또한, 머신 러닝 모델은 로컬 조상 추론을 수행하기 위한 이식 가능하고 공개적으로 액세스 가능한 메커니즘을 제공한다. 구체적으로, 머신 러닝 모델을 트레이닝시키기 위해 사용되는 트레이닝 데이터가 프라이버시 제한에 의해 보호되거나 또는 다르게는 대중이 액세스 가능하지 않은 독점적인 인간 게놈 서열 데이터를 포함하는 데이터세트를 포함하지만, 머신 러닝 모델의 트레이닝된 파라미터(예를 들면, 신경망 가중치, 의사 결정 시퀀스, 및 의사 결정 트리의 임계치 등)는 개인을 식별하지 않으며 공개적으로 이용 가능하게 만들어질 수 있다. 결과적으로, 머신 러닝 모델은, 대상의 질병의 위험을 예측하는 것, 대상의 유전적 구성과 대상의 소정의 생물학적 특성 사이의 링크를 결정하는 것, 대상에 대한 치료를 결정하는 것 등과 같은, 다양한 생물의학적 애플리케이션을 지원하기 위해 로컬 조상 추론을 수행하는 데 공개적으로 이용 가능하게 만들어질 수 있다.
몇몇 실시형태는 본 명세서에서 설명되는 방법과 관련되는 시스템 및 컴퓨터 판독 가능 매체에 관한 것이다.
본 개시내용의 실시형태의 본질 및 이점의 더 나은 이해는 다음의 상세한 설명 및 첨부의 도면을 참조하여 얻어질 수도 있다.
도 1a 및 도 1b는 게놈에서의 단일 뉴클레오타이드 다형성(SNP)의 예 및 SNP의 조상 기원을 예시한다;
도 2a, 도 2b, 도 2c, 도 2d 및 도 2e는, 몇몇 실시형태에 따른, 로컬 조상 추론을 수행하기 위한 머신 러닝 모델의 예를 예시한다;
도 3a, 도 3b 및 도 3c는, 몇몇 실시형태에 따른, 도 2a 내지 도 2c의 머신 러닝 모델의 예시적인 컴포넌트 및 그들의 동작을 예시한다;
도 4a 및 도 4b는, 몇몇 실시형태에 따른, 도 2a 내지 도 2c의 머신 러닝 모델의 예시적인 컴포넌트를 예시한다;
도 5a 및 도 5b는 트레이닝 동작의 예를 예시한다;
도 6a, 도 6b 및 도 6c는, 몇몇 실시형태에 따른, 도 2a 내지 도 2c의 머신 러닝 모델의 예시적인 컴포넌트를 예시한다;
도 7a 및 도 7b는, 몇몇 실시형태에 따른, 도 2a 내지 도 2c의 머신 러닝 모델의 예시적인 테스트 결과 및 애플리케이션을 예시한다;
도 8은, 몇몇 실시형태에 따른, 로컬 조상 추론을 수행하는 예시적인 방법을 예시한다; 그리고
도 9는 본 개시내용의 실시형태가 구현될 수 있는 컴퓨터 시스템을 예시한다.
로컬 조상 추론은 개인의 DNA를 따라 다양한 부위에서 관찰되는 유전적 변동의 패턴을 사용하여 개인 DNA의 각각의 세그먼트의 조상 기원을 추정한다. DNA가 각각의 세대에서 조상의(두 부모 DNA 서열 사이의) 희귀하고 랜덤한 스왑만을 갖는 온전한 서열로서 유전되기 때문에, 조상의 SNP는 인접한 SNP 변이체의 패턴에 기초하여 강력한 조상 추론을 허용하는 인접한 세그먼트를 형성한다.
본 개시내용의 실시형태는 트레이닝된 머신 러닝 모델을 사용하여 DNA 서열에서 유전적 변이체(예를 들면, SNP)의 세그먼트의 조상 기원(들)을 추정하기 위한 방법, 시스템, 및 장치를 제공한다. 추정은 고해상도에, 예컨대, milliMorgan 해상도에 있을 수 있다. 하나의 예에서, 컴퓨터 구현 방법은 대상(예를 들면, 사람)의 입력 게놈 서열을 나타내는 데이터를 수신하는 것을 포함한다. 입력 게놈 서열은, 대상의 게놈의 복수의 단일 뉴클레오타이드 다형성(SNP) 부위를 각각 포함하는 복수의 세그먼트를 커버할 수도 있다. 각각의 세그먼트는, 데이터에서, SNP 부위에서의 SNP 값의 서열에 의해 표현될 수도 있는데, 각각의 SNP 값은 SNP 부위에서의 변이체를 명시한다. 데이터는 반수체 또는 이배체 DNA 서열로부터 획득될 수 있다. 데이터는, 예를 들면, 대상의 게놈 서열을 제공하는 게놈 시퀀싱 동작, DNA의 세그먼트를 포함하는 DNA 마이크로어레이 등으로부터 획득될 수 있다. 데이터에서의 일배체형 정보(haplotype information)는, 예를 들면, 상이한 변이체에 대해 상이한 값을 포함하도록 인코딩될 수 있다. 제1 값은 대상이 SNP 부위에서 공통 변이체(예를 들면, -1의 값)를 갖는다는 것을 나타낼 수 있다. 제2 값은 대상이 SNP 부위에서 소수 변이체(예를 들면, +1의 값)를 갖는다는 것을 나타낼 수 있다. 제3 값(예를 들면, 0의 값)은 SNP 부위에서 게놈 정보가 누락된다는 것을 나타낼 수 있다. 몇몇 예에서, 공통 변이체(예를 들면, [0, 1]), 소수 변이체(예를 들면, [1, 0]), 및 누락(예를 들면, [0, 0])을 나타내기 위해, 2 비트값이 사용될 수 있다.
방법은 트레이닝된 머신 러닝 모델을 저장하는 것을 더 포함하는데, 머신 러닝 모델은 예측기 서브모델 및 평활화 서브모델을 포함한다. 머신 러닝 모델은 트레이닝 게놈 서열 및 트레이닝 게놈 서열의 공지된 조상 기원에 기초하여 트레이닝될 수 있다. 예측기 서브모델을 사용하여 그리고 데이터에 기초하여, SNP 값의 각각의 세그먼트의 초기 조상 기원 추정치가 결정될 수 있다. 또한, 복수의 세그먼트의 각각의 세그먼트에 대해, 대상의 게놈에서 세그먼트와 이웃하는 이웃 세그먼트의 서브세트. 이웃 세그먼트의 서브세트에 대한 초기 조상 기원 추정치는 세그먼트 및 이웃 세그먼트의 서브세트에 걸친 평활화 동작을 수행하기 위해 평활화 서브모델에 입력될 수 있다. 평활화 동작의 결과로서, 복수의 세그먼트 중 각각의 세그먼트의 조상 기원에 대한 최종 예측 결과가 결정될 수 있다. 그 다음, 각각의 세그먼트에 대해 획득되는 최종 예측 결과에 기초하여, 대상의 게놈의 상이한 부분에 대한 조상 기원이 결정될 수 있다. 대상의 게놈의 상이한 부분에 대해 결정되는 조상 기원은, 대상이 소정의 질병을 가질 위험을 예측하는 것, 대상의 유전적 구성과 대상의 소정의 생물학적 특성 사이의 링크를 결정하는 것, 대상에 대한 치료를 결정하는 것 등과 같은, 다른 동작을 수행하기 위해, 다양한 애플리케이션에 제공될 수 있다.
예측기 서브모델은, 예를 들면, 하나 이상의 분류기, 하나 이상의 회귀자 등을 포함할 수도 있다. 분류기는, 세그먼트가 특정한 조상 기원으로부터 유래하는 확률(이진수 0 및 1을 포함함)을 식별할 수 있고; 그러한 확률은 후보 조상 기원 카테고리의 사전 결정된 목록 각각에 대해 결정될 수 있다. 세그먼트에 대한 초기 조상 기원 추정치는 가장 높은 확률을 갖는 후보 조상 기원 카테고리로서 결정될 수 있다. 또한, 회귀자는, 예를 들면, 서로 가까이 있는 특정한 로케일 내에서 정확한 결과를 제공하기 위해, 지리적 좌표, 또는 다른 타입의 식별자에 매핑하는 예측치를 제공할 수 있다.
몇몇 예에서, 각각의 분류기는 분류기 출력을 생성하기 위해 SNP의 비중첩 세그먼트에 대해 분류 동작을 수행할 수 있다. 각각의 분류기는 세그먼트의 확률이 각각의 후보 조상 기원 카테고리(예를 들면, 아프리카, 동아시아 및 유럽)로 분류될 확률을 결정할 수 있고, 분류기에 의해 출력되는 확률은 결합되어, 가장 높은 확률을 갖는 후보 조상 기원 카테고리에 기초하여, 초기 조상 기원 추정치를 출력할 수 있다. 몇몇 예에서, 각각의 회귀자는 SNP의 세그먼트의 SNP의 랜덤 서브세트에 대해 회귀 동작을 수행할 수 있는데, 이것은 결합되어 SNP의 세그먼트의 조상 기원을 나타내는 하나 이상의 기원 추정치를 출력할 수 있다. 하나 이상의 기원 추정치는, 예를 들면, 조상 기원 로케일의 지리적 좌표(예를 들면, 경도 및 위도), 조상 기원 로케일을 나타내는 코드 등을 포함할 수 있다. 몇몇 경우에, 회귀자가 심지어 밀접하게 관련된 모집단에 대해서도 유용한 조상 추정치를 제공할 수 있는데, 이것은, 비록 일부 조상이 다른 조상보다 훨씬 더 관련되더라도, 각각의 조상 오분류를 동등하게 처리하는 분류기에 대해 문제를 제시할 수 있다. 복수의 분류기 및 회귀자는, 분산형 컴퓨팅 환경에서 로컬 조상 추론 동작을 지원하기 위해, 각각, 분류 동작 및 회귀 동작을 병렬로 수행할 수 있는데, 이것은 추론 동작을 더욱 확장 가능하게 만들고 계산 효율적으로 만든다.
몇몇 예에서, 예측기 서브모델은 단일의 예측 모델(예를 들면, 단일의 분류기 모델, 단일의 회귀 모델 등)을 포함할 수 있다. 단일의 예측 모델은, 상이한 SNP 세그먼트에 대한 분류 출력 또는 회귀 출력(이들은 좌표를 포함할 수 있음)을 생성하기 위해 상이한 SNP 세그먼트와 결합될 수 있는 모델 파라미터의 단일의 세트를 포함할 수 있다. 단일의 예측 모델은 또한 각각의 SNP 세그먼트에 대해, SNP 세그먼트와 관련되는 세그먼트 인덱스를 수락하고, 모델 파라미터를 SNP 인덱스 및 SNP 세그먼트와 결합하여 예측을 수행할 수 있다. 세그먼트 인덱스는 SNP 부위의 특정한 세트를 나타낼 수 있고, 단일 숫자의 형태(예를 들면, 1, 2, 3 등) 또는 하나의 핫 인코딩의 형태(예를 들면, [1, 0, .. 0], [0, 1, ... 0] 등)일 수 있다. 세그먼트 인덱스를 나타내기 위해, 트랜스포머 신경망(Transformers neural network)에서의 포지션 인코딩과 같은 다른 타입의 인코딩이 또한 사용될 수 있다. 세그먼트 인덱스는, 단일의 예측 모델이, 모델 파라미터의 동일한 세트를 사용하여 상이한 SNP 세그먼트에 대해 예측을 상이하게 수행하는 것을 허용한다.
또한, 평활화 서브모델은 이웃 세그먼트의 서브세트의 초기 조상 기원 추정치에 대해 평활화 동작을 수행할 수 있다. 평활화 동작은 분류기 또는 회귀자에 의해 도입되는 세그먼트 사이의 초기 조상 기원 추정치에서 불연속성을 제거/감소할 수 있다. 그 다음, 세그먼트의 평활화된 조상 기원 추정치(분류기 출력, 회귀자 출력 등)는 대상의 게놈의 상이한 부분의 결정된 조상 기원으로서 사슬 연결될(concatenated) 수 있다.
머신 러닝 모델을 구현하기 위해 다양한 기술이 제안된다. 하나의 예에서, 트레이닝된 머신 러닝 모델은 하나 이상의 신경망 모델을 포함할 수도 있다. 구체적으로, 예측기 서브모델의 각각의 분류기 또는 회귀자는 완전히 연결된 신경망 모델을 포함할 수도 있다. 완전히 연결된 신경망 모델은 적어도 입력 레이어 및 출력 레이어를 포함한다. 입력 레이어는 복수의 입력 노드를 포함하고, 반면, 출력 레이어는 복수의 출력 노드를 포함한다. 각각의 입력 노드는 분류기에 의해 수신되는 세그먼트의 특정한 SNP 부위에 대응한다. 각각의 입력 노드는 대응하는 SNP 부위에서 SNP 변이체의 인코딩된 값(예를 들면, 1, 0, -1)을 수신할 수 있다. 입력 노드는 가중치의 제1 세트로 대응하는 인코딩된 값을 스케일링하여 스케일링된 인코딩된 값의 세트를 생성할 수 있다.
출력 레이어의 각각의 출력 노드는 스케일링된 인코딩된 값에 기초하여 입력을 수신할 수 있고 그 입력을 합산할 수 있다. 각각의 출력 노드는, 예를 들면, 아프리카, 동아시아, 및 유럽과 같은 복수의 후보 조상 기원 중 하나에 대응할 수 있다. 각각의 출력 노드는 초기 조상 기원 추정치를 생성하기 위해 입력의 합에 활성화 함수를 또한 적용할 수도 있다. 출력 노드에 의해 출력되는 초기 조상 기원 추정치는 신경망 모델에 의해 프로세싱되는 SNP의 세그먼트가 대응하는 후보 조상 기원(예를 들면, 아프리카, 동아시아, 및 유럽 등 중 하나)으로 분류되는지의 여부를 나타내는 값, 예컨대, 상기에서 설명되는 바와 같이, 후보 조상 기원을 갖는 SNP의 세그먼트의 확률을 포함할 수 있다.
예측기 서브모델의 완전히 연결된 신경망 모델은 다양한 신경망 아키텍처를 사용하여 구현될 수 있다. 몇몇 예에서, 완전히 연결된 신경망 모델은 입력 레이어 및 출력 레이어만을 포함한다. 그러한 배열체(arrangement)는 더 작고 덜 복잡한 분류기가 예측기 서브모델에서 구현되는 것을 허용하는데, 이것은, 결국에는, 분류기가 트레이닝되는 것 및 더 적은 시간 및 계산 리소스를 사용하여 분류 동작을 수행하는 것을 허용한다. 또한, 입력 레이어의 가중치는 SNP 세그먼트의 조상 기원을 식별함에 있어서 각각의 SNP의 중요성을 명시할 수 있는데, 이것은 더욱 해석 가능한 네트워크로 이어질 수 있다.
몇몇 예에서, 완전히 연결된 신경망 모델은 입력 레이어와 출력 레이어 사이에서 은닉 레이어를 포함한다. 은닉 레이어는 입력 SNP 세그먼트에서 소정의 정보의 은닉된 표현(예를 들면, 피처 벡터의 형태로 캡처됨)을 식별할 수 있으며, 은닉된 표현은 조상 기원 로케일의 좌표, 또는 후보 조상 기원 중 하나로 매핑될 수 있다. 은닉 레이어는 입력 SNP 세그먼트와 조상 기원 분류 출력 또는 조상 기원 로케일 좌표 사이의 비선형 매핑을 제공할 수 있는데, 이것은 조상 기원 추정치의 정확도를 향상시킬 수 있다.
완전히 연결된 신경망의 은닉 레이어는 복수의 중간 노드를 포함할 수도 있다. 각각의 중간 노드는 각각의 입력 노드로부터 SNP의 스케일링된 인코딩된 값을 수신할 수 있고, 스케일링된 인코딩된 값을 합산할 수 있고, 가중치의 제2 세트를 사용하여 그 합계를 스케일링할 수 있고, 스케일링된 합에 대해 활성화 함수를 적용하여 중간 출력의 세트를 생성할 수 있다. 출력 레이어는 각각의 중간 노드로부터의 중간 출력을 입력으로서 수신할 수 있고, 중간 출력에 기초하여 초기 조상 기원 추정치를 생성할 수 있다. 중간 출력은, 입력 SNP 세그먼트와 조상 기원 분류 출력 또는 조상 기원 로케일 좌표 사이의 비선형 매핑을 제공할 수 있는 은닉된 표현을 포함할 수 있다.
또한, 평활화 서브모델은 예측기 서브모델로부터의 초기 조상 기원 추정치의 서브세트에 대해 평활화 동작을 수행하여 초기 조상 기원 추정치에서 불연속성을 제거할/감소시킬 수 있다. 평활화 동작은 세그먼트 단위 기반으로 평활화할 수 있다. 각각의 세그먼트에 대해, 주어진 세그먼트의 조상 기원을 결정하기 위해, 이웃 세그먼트의 서브세트(예를 들면, 윈도우)가 사용될 수 있다. 몇몇 예에서, 평활화 서브모델은, 커널과 입력 SNP 서열의 각각의 세그먼트에 대해 생성되는 초기 조상 기원 추정치 사이에서 컨볼루션 연산을 수행할 수 있는 컨볼루션 신경망(convolutional neural network: CNN)을 포함할 수 있고, 컨볼루션 연산의 결과는 최종 조상 기원 예측 결과로서 출력될 수 있다.
컨볼루션 연산의 일부로서, 가중치의 어레이를 포함하는 커널은 슬라이딩 윈도우에 포함되는 이웃 세그먼트의 서브세트의 초기 조상 기원 추정치와 승산될 수 있다. 그 다음, 승산 결과는 합산되어 평활화된 조상 기원 추정치를 생성할 수 있다. 윈도우는 평활화 동작에 의해 대체될 목표 초기 조상 기원 추정치뿐만 아니라, 목표 초기 조상 기원 추정치 전후의 사전 결정된 수의 초기 조상 기원 추정치를 중심으로 할 수 있다. 커널에 포함되는 각각의 가중치는 초기 조상 기원 추정치에 매핑될 수 있다. 컨볼루션 연산을 통해, 윈도우 내에서 초기 조상 기원 추정치의 가중된 평균화를 수행하는 것에 의해 초기 조상 기원 추정치가 평활화될 수 있는데, 이것은 예측기 서브모델에 의해 도입되는 세그먼트 사이의 초기 조상 기원 추정치에서 불연속성을 제거할 수 있다.
몇몇 예에서, 가중된 평균화 연산의 일부로서, 평활화 서브모델은 각각의 초기 조상 기원 추정치에 의해 표현되는 SNP의 세그먼트의 유용성 메트릭(usefulness metric)에 기초하여 각각의 초기 조상 기원 추정치에 가중치를 할당할 수 있다. 유용성 메트릭은, 예를 들면, 세그먼트의 소정의 SNP 부위에서의 SNP 변이체의 조상 기원이 정확하게 예측될 수 있는지의 여부를 반영할 수 있다. 유용성 메트릭은, 예를 들면, 모집단의 게놈의 세그먼트의 사전 예측 결과에 기초하여 결정될 수 있는 세그먼트에 대한 조상 기원의 예측 오차의 확률에 기초할 수 있다. 예측 오차의 더 높은 확률을 갖는 SNP의 세그먼트에 대한 초기 조상 기원 추정치에 대해 더 작은 가중치가 할당될 수 있고, 반면, 예측 오차의 더 낮은 확률을 갖는 SNP의 세그먼트에 대한 초기 조상 기원 추정치에 대해 더 큰 가중치가 할당될 수 있다. 가중치는 컨볼루션 연산의 커널의 일부일 수 있거나, 또는 컨볼루션 연산 이전에 각각의 초기 조상 기원 추정치에 적용될 수 있다.
몇몇 예에서, 입력 SNP 서열(예를 들면, 이배체)는 대상의 모계 SNP 서열 및 부계 SNP 서열을 포함할 수 있고, 그 다음, CNN은, 모계 및 부계 SNP 서열의 세그먼트에 대한 조상 기원(들)의 최종 조상 기원 예측 결과를 생성하기 위해, 모계 및 부계 SNP 서열에 대한 분류기 출력과 커널 사이에서 컨볼루션 연산을 수행할 수 있다. 그러한 배열체를 통해, 최종 예측 결과는, 입력 SNP 서열에서 모계 SNP 서열 및 부계 SNP 서열이 제시되는 순서에 영향을 받지 않게 될 수 있다.
몇몇 예에서, 예측기 서브모델 및 평활화 서브모델은 복수의 의사 결정 트리를 포함할 수 있다. 구체적으로, 예측기 서브모델의 각각의 분류기 또는 회귀자는 제1 복수의 의사 결정 트리를 포함할 수 있다. 각각의 의사 결정 트리는 의사 결정을 생성하기 위해 SNP의 서열의 랜덤 서브세트를 프로세싱할 수 있고, 복수의 의사 결정 트리의 의사 결정은 결합되어 초기 조상 기원 추정치를 생성할 수 있다. 복수의 의사 결정 트리가 분류기를 형성하는 경우, 각각의 의사 결정 트리는, 랜덤 샘플에 기초하여 SNP의 세그먼트가 특정한 조상 기원 카테고리로 분류될 확률을 출력할 수 있고, 그 확률은 평균화되어 초기 조상 기원 추정치를 생성할 수 있다. 복수의 의사 결정 트리가 회귀자를 형성하는 경우, 의사 결정 트리는 트레이닝 데이터의 SNP를 SNP의 공지된 조상 기원 로케일의 지리적 좌표에 적합화시키는 회귀 모델을 나타내는 의사 결정 출력을 생성하도록 트레이닝될 수 있다. 그 다음, 의사 결정 트리는 SNP의 입력 서열의 랜덤 서브세트를 프로세싱하여 중간 지리적 좌표를 출력할 수 있다. 그 다음, 중간 지리적 좌표는 결합되어(예를 들면, 합산되어) SNP의 서브세트에 대한 조상 기원 로케일의 초기 지리적 좌표 추정치를 생성할 수 있다. 의사 결정 트리는 분산형 컴퓨팅 환경에서 회귀/분류 동작을 병렬로 수행할 수 있는데, 이것은 동작을 더욱 확장 가능하게 그리고 계산 효율적으로 만든다.
또한, 평활화 서브모델은 평활화 함수를 수행하기 위한 제2 복수의 의사 결정 트리를 또한 포함할 수 있다. 상기에서 설명되는 바와 같은 컨볼루션 신경망과 유사하게, 평활화 함수는 슬라이딩 윈도우 접근법에 기초하여 이웃 세그먼트의 서브세트의 초기 조상 기원 추정치에 대해 적용될 수 있다. 윈도우는 평활화될 목표 초기 조상 기원을 중심으로 할 수 있고 목표 초기 조상 기원 전후에 사전 결정된 수의 초기 조상 기원 추정치를 포함할 수 있다. 윈도우 내의 초기 조상 기원 추정치의 상이한 랜덤 서브세트가 제2 복수의 의사 결정 트리 각각에 입력될 수 있다. 그 다음, 의사 결정 트리에 의해 출력되는 의사 결정은 결합되어, 목표 초기 조상 기원을 대체할 수 있는 최종 조상 기원 추정치를 생성할 수 있다. 예를 들면, 의사 결정 트리는 초기 조상 기원 추정치에서 불연속성을 제거하기 위해 윈도우 내에서 이웃하는 초기 조상 기원 추정치의 가중된 평균화를 수행하도록 트레이닝될 수 있다. 윈도우는, CNN에 의해 수행되는 컨볼루션 연산과 유사하게, SNP의 상이한 세그먼트에 대한 최종 조상 기원 예측 결과를 생성하기 위해 초기 조상 기원 추정치의 상이한 서브세트를 커버하도록 슬라이딩/이동될 수 있다. 각각의 초기 조상 기원 추정치에 할당되는 가중치는, 상기에서 설명되는 바와 같이, 각각의 초기 조상 기원 추정치에 의해 표현되는 SNP의 세그먼트의 유용성의 측정치 기초할 수 있다.
머신 러닝 모델은 예측의 정확도를 향상시키도록 트레이닝될 수 있다. 머신 러닝 모델은 공지된 조상 기원을 갖는 트레이닝 게놈 서열의 세그먼트에 기초하여 트레이닝될 수 있다. 구체적으로, 머신 러닝 모델은 머신 러닝 모델에 의해 식별될 공지된 조상 기원의 모집단의 전체 게놈 데이터로부터 유도되는 트레이닝 데이터에 기초하여 트레이닝될 수 있다. 예를 들면, 머신 러닝 모델이 SNP의 세그먼트를 아프리카, 동아시아, 유럽 중 하나로 분류해야 하는 경우, 트레이닝 데이터는 아프리카, 동아시아, 및 유럽의 다양한 로케일뿐만 아니라, 더 작은 지리적 영역으로부터의 개인의 게놈 데이터를 포함할 수 있다. 이들 개인의 전체 게놈 서열로부터, 일련의 세대에 걸친 시뮬레이션(예를 들면, Wright-Fisher 순방향 시뮬레이션)에 기초하여 이들 개인의 시뮬레이팅된 혼합된 자손의 시뮬레이팅된 게놈 서열이 생성될 수 있다. (예를 들면, 다수의 세대에 걸친) 이들 개인의 시뮬레이팅된 혼합된 자손의 게놈 서열뿐만 아니라, 시뮬레이팅된 게놈 서열의 SNP 세그먼트의 공지된 조상 기원을 포함하는 트레이닝 데이터의 세트가 머신 러닝 모델을 트레이닝시키고 유효성 확인하기 위해 사용될 수 있다. 트레이닝은, 머신 러닝 모델이, 상이한 DNA 부위에서의 SNP 변이체의 패턴과 그들의 조상 기원 사이의 관계로부터 학습하여 로컬 조상 추론을 수행하는 것을 허용한다.
트레이닝 동작은 순방향 전파 동작 및 역방향 전파 동작을 포함할 수 있다. 순방향 전파 동작의 일부로서, 머신 러닝 모델은 공지된 조상 기원의 SNP의 서열을 포함하는 트레이닝 데이터를 수신하여 서열의 조상 기원의 예측치를 생성할 수 있다. 각각의 SNP 세그먼트의 예측된 조상 기원 카테고리와 실제 조상 기원 카테고리 사이(또는 조상 기원 로케일의 예측된 지리적 좌표와 공지된 지리적 좌표 사이)의 비교가 이루어질 수 있다. 예측된 조상 기원과 실제 조상 기원 사이의 매칭을 최대화하기 위해, 예측기 서브모델 및 평활화 서브모델의 다양한 파라미터, 예컨대, 완전히 연결된 신경망 모델의 가중치, 컨볼루션 신경망 모델의 커널의 파라미터, 의사 결정 트리, 평활화 동작에서 SNP 세그먼트와 관련되는 가중치 등이 트레이닝 동작에서 조정될 수 있다.
머신 러닝 모델을 트레이닝시키는 다양한 기술이 제안된다. 머신 러닝 모델이 분류기로서 동작하는 경우, 트레이닝 동작은, 예측기 서브모델과 관련되는 제1 손실 함수 및 평활화 서브모델과 관련되는 제2 손실 함수의 선형 조합을 포함할 수 있는 결합된 교차 엔트로피 손실 함수(combined cross-entropy loss function)에 기초할 수 있다. 제1 손실 함수는, 트레이닝 데이터의 SNP의 세그먼트에 대한 예측기 서브모델에 의해 출력되는 초기 조상 기원 추정치를 그들의 실제 조상 기원과 비교하여 제1 손실 구배를 생성할 수 있는데, 이것은 제1 손실 함수를 최소화하도록 예측기 서브모델의 가중치 또는 의사 결정 임계치를 조정하기 위해 사용될 수 있다. 또한, 제2 손실 함수는 SNP의 세그먼트에 대한 평활화 서브모델에 의해 출력되는 최종 조상 기원 예측 결과를 그들의 실제 조상 기원과 비교하여 제2 손실 구배를 생성할 수 있는데, 이것은 제2 손실 함수를 최소화하도록 평활화 서브모델의 커널 또는 의사 결정 임계치를 조정하기 위해 사용될 수 있다.
또한, 예측기 서브모델 및 평활화 서브모델 둘 모두가 회귀 동작을 수행하기 위한 의사 결정 트리를 포함하는 경우, 트레이닝 동작은 구배 트리 부스팅 동작에 기초할 수 있다. 구체적으로, 트레이닝 동작은 제1 의사 결정 출력(예를 들면, 조상 기원 추정치, 조상 기원 로케일의 지리적 좌표 등)을 SNP의 세그먼트와 적합시키기 위해 제1 하위 네트워크에 대한 제1 의사 결정 트리를 생성하는 것으로 시작될 수 있다. 예를 들면, 제1 의사 결정 트리로부터의 예측된 조상 기원과 실제 조상 기원 사이의 차이, 제1 의사 결정 트리로부터의 조상 기원 로케일의 예측된 지리적 좌표와 조상 기원 로케일의 실제 지리적 좌표 사이의 차이 등에 기초하여, 잔차의 제1 세트가 결정될 수 있다.
그 다음, 제2 의사 결정 트리가 생성되어 잔차의 제1 세트에 대해 제2 의사 결정 출력을 적합시키도록 트레이닝될 수 있다. 예를 들면, 제2 의사 결정 트리는, 제1 의사 결정 출력에 입력되는 SNP의 동일한 세그먼트에 대해, 잔차의 제1 세트와 가능한 한 많이 매치하도록 제2 의사 결정 출력을 생성하도록 트레이닝될 수 있다. 잔차의 제2 세트는 제2 의사 결정 출력과 잔차의 제1 세트 사이의 차이에 기초하여 결정될 수 있다. 그 다음, 제3 의사 결정 트리가 생성되고 잔차의 제2 세트에 대해 제3 의사 결정 출력을 적합시키도록 트레이닝될 수 있다. 트레이닝 프로세스는, 예를 들면, 사전 결정된 수의 트리에 도달될 때까지, 잔차의 사전 결정된 임계 레벨이 달성될 때까지 등까지 반복될 수 있다. 의사 결정 트리 출력을 잔차와 적합시키기 위한 새로운 의사 결정 트리의 추가를 통해, 의사 결정 트리는 SNP와 조상 기원 추정치 및/또는 조상 기원 로케일의 지리적 좌표 사이의 관계의 회귀 모델을 표현할 수 있다.
I. SNP에 기초한 로컬 조상 추론
단일 뉴클레오타이드 다형성(SNP)은, 게놈의 단일 뉴클레오타이드 아데닌(A), 티민(T), 시토신(C), 또는 구아닌(G)이 종의 멤버 사이에서 다를 때 발생하는 DNA 서열 변동을 지칭할 수도 있다.
도 1a는 SNP의 예를 예시한다. 도 1a는 상이한 개인으로부터의 두 개의 서열화된 DNA 단편(102 및 104)을 예시한다. 서열화된 DNA 단편(102)은 염기 쌍 AT-AT-CG-CG-CG-TA-AT의 서열을 포함하고, 반면, 서열화된 DNA 단편(104)은 염기 쌍 AT-AT-CG-CG-TA-TA-AT의 서열을 포함한다. 도 1a에 도시된 바와 같이, DNA 단편(102 및 104)는 뉴클레오타이드의 단일의 염기 쌍(CG 대 TA, 통상적으로 C 및 T로 지칭됨)에서의 차이를 포함한다. 차이는 단일의 SNP로서 간주될 수 있다. SNP는 SNP가 공통 변이체인지 또는 소수 변이체인지의 여부에 기초한 값으로 인코딩될 수 있다. 공통 변이체는 모집단에서 더 많이(예를 들면, 80%) 일반적일 수 있고, 반면, 소수 변이체는 더 적은 개인에서 발생한다. 몇몇 예에서, 공통 변이체는 -1의 값으로 인코딩될 수 있고, 반면, 소수 변이체는 +1의 값으로 인코딩될 수 있다.
상이한 대륙 및 상이한 아대륙 지역으로부터 기원하는 현대의 인간 모집단은, 유전적 드리프트 및 지난 50,000년에 걸친 다양한 인구 통계학적 이력(병목 현상, 확장 및 혼합)에 기인하여, 그들의 게놈의 DNA 서열의 각각의 부위에서 SNP 변이체의 빈도에서, 그리고 상이한 근처 부위에서의 이들 변이체 사이의 상관 관계에서 식별 가능한 차이를 나타낸다. DNA가 각각의 세대에서 조상의(두 부모 DNA 서열 사이의) 희귀하고 랜덤한 스왑만을 갖는 온전한 서열로서 유전되기 때문에, 조상의 SNP는 인접한 SNP 변이체의 패턴에 기초하여 강력한 조상 추론을 허용하는 인접한 세그먼트를 형성한다.
도 1b는 개인의 각각의 부모로부터 하나씩의 개인의 염색체의 혼합된 쌍의 SNP의 세그먼트 사이의 조상 기원의 분포의 예를 예시한다. 분포(112)는 개인의 상이한 SNP 부위에서 유전 물질의 진정한 조상 기원을 예시한다. 도 1b의 예에서, SNP의 조상 기원은 아프리카, 동아시아, 및 유럽을 포함할 수도 있다. 분포(114)는 SNP의 디코딩된 조상 기원을 예시하는데, 이것은 세그먼트에서의 조상 기원 불연속성, 예컨대, 세그먼트(118)(동아시아)에서의 불연속성(116)(아프리카) 및 세그먼트(122)(아프리카)에서의 불연속성(120)(동아시아) 등을 제거하기 위해 분포(112)에 대해 평활화 동작을 수행하는 것으로부터 유도될 수 있다.
고해상도에서 게놈을 따라 조상을 정확하게 추론하는 능력은, 소정의 질병에 대한 소인, 소정의 생물의학적 특성(예를 들면, 혈압, 콜레스테롤 레벨 등)과 같은 복잡한 특성에 대한 유전학 및 환경의 역할을 이해하는 데 중요하다. 이것은 복잡한 신체적 및 의학적 특성을 공유하는 공통 조상을 갖는 모집단에 기인할 수 있다. 예를 들면, 소정의 민족 그룹은 상대적으로 높은 천식 사망률을 가질 수도 있고, 반면, 다른 민족 그룹은 상대적으로 낮은 천식 사망률을 가질 수도 있다. 소정의 질병 및 생물의학적 특성에 대한 소인에 대한 모집단 내 유전적 관련성을 설명하는 것은 치료법의 개발에 정보를 제공할 수 있고, 다유전자 위험 점수로서 공지되어 있는 질병 위험의 예측기의 구축을 허용할 수 있다. 그러나, 이웃하는 유전적 변이체(예를 들면, SNP) 사이의 상관 관계가 조상 종속적이기 때문에, 이들 위험 점수를 개인의 게놈에 적용하는 것은 게놈을 따라 각각의 부위에서 개인의 조상의 지식을 필요로 한다. 혼합된 현대의 전세계 모집단의 다양성이 증가함에 따라, 도 1b의 예에 도시된 바와 같이, 개인의 게놈에 다수의 조상 기원을 갖는다는 것이 점점 더 일반화되고 있다. 결과적으로, 게놈에 따른 조상 고유의 분석은 점점 더 복잡하고 중요한 계산 문제가 되고 있다.
II. 머신 러닝 모델을 사용한 로컬 조상 추론
대상의 게놈 데이터에 대한 조상 고유의 분석을 수행하기 위해 정확하고 공개적으로 액세스 가능한 메커니즘을 제공하기 위해 머신 러닝 모델이 사용될 수 있다. 구체적으로, SNP의 다양한 조상 고유의 패턴을 학습하기 위해, 그리고 학습을 적용하여 입력 게놈 데이터로부터 더욱 정확한 방식으로 SNP의 조상 고유의 패턴을 식별하기 위해, 머신 러닝 모델은 공지된 조상 기원을 갖는 개인의 게놈 데이터를 사용하여 트레이닝될 수 있다. 또한, 머신 러닝 모델을 트레이닝시키기 위해 사용되는 트레이닝 데이터가 프라이버시 제한에 의해 보호되거나 또는 다르게는 대중이 액세스 가능하지 않은 독점적인 인간 게놈 서열 데이터를 포함하는 데이터세트를 포함하지만, 머신 러닝 모델의 트레이닝된 파라미터는 개인을 식별하지 않으며 공개적으로 이용 가능하게 만들어질 수 있다. 따라서, 머신 러닝 모델은, 대상의 질병의 위험을 예측하는 것, 대상의 유전적 구성과 대상의 소정의 생물학적 특성 사이의 링크를 결정하는 것, 대상에 대한 치료를 결정하는 것 등과 같은, 다양한 생물의학적 애플리케이션을 지원하기 위해 로컬 조상 추론을 수행하는 데 공개적으로 이용 가능하게 만들어질 수 있다.
A. 일반 토폴로지
도 2a는, 몇몇 실시형태에 따른, 로컬 조상 추론을 수행하기 위한 머신 러닝 모델(200)의 일반적인 토폴로지를 예시한다. 도 2a에 도시된 바와 같이, 머신 러닝 모델(200)은 대상(예를 들면, 사람)의 입력 게놈 서열을 나타내는 데이터(202)를 수신할 수 있다. 입력 게놈 서열은, 대상의 게놈의 복수의 단일 뉴클레오타이드 다형성(SNP) 부위를 각각 포함하는 복수의 세그먼트를 커버할 수도 있다. 각각의 세그먼트는, 데이터(202)에서, SNP 부위에서의 SNP 값의 서열에 의해 표현될 수도 있는데, 각각의 SNP 값은 SNP 부위에서의 변이체를 명시한다. 데이터는 반수체 또는 이배체 DNA 서열로부터 획득될 수 있다. 데이터(202)는, 예를 들면, 대상의 게놈 서열을 제공하는 게놈 시퀀싱 동작, DNA의 세그먼트를 포함하는 DNA 마이크로어레이 등으로부터 획득될 수 있다. 일배체형 정보는, 예를 들면, 특정한 SNP가 SNP 부위에서 공통 변이체이다는 것을 나타내는 제1 값(예를 들면, -1의 값), SNP가 SNP 부위에서 소수 변이체이다는 것을 나타내는 제2 값(예를 들면, +1의 값), 또는 SNP 부위에서 게놈 정보가 누락되었다는 것을 나타내는 제3 값(예를 들면, 0의 값)을 포함하도록 인코딩될 수 있다. 데이터(202)는 SNP(204a, 204b, 204c, 204n) 등의 세그먼트를 비롯한, 비중첩 세그먼트로 분할될 수 있다. 몇몇 예에서, 각각의 세그먼트는 500개의 SNP를 포함할 수 있다. 머신 러닝 모델(200)은 모계 반수체 DNA 서열 및 부계 반수체 DNA 서열을 별개로 포함하는 데이터(202)를 프로세싱할 수 있고, 각각의 서열의 SNP의 세그먼트에 대한 조상 기원 예측치(205a 및 205b)을 생성할 수 있다.
몇몇 예에서, 머신 러닝 모델(200)은 예측기 서브모델(206) 및 평활화 서브모델(208)을 포함하는 두 개의 서브모델을 포함할 수도 있다. 예측기 서브모델(206)은 예측기 유닛(216a, 216b, 216c, ..., 210n)을 비롯한, 복수의 예측기 유닛을 포함할 수 있다. 각각의 예측기 유닛(216)은, SNP의 세그먼트에 대한 초기 조상 기원 추정치(218)를 생성하기 위해 SNP(204)의 세그먼트 내의 SNP 값과 결합될 수 있는 모델 파라미터의 세트를 구비할 수 있다. 예를 들면, 예측기 유닛(216a)은 SNP(204a)의 세그먼트에 대한 초기 조상 기원 추정치(218a)를 생성할 수 있고, 예측기 유닛(216b)은 SNP(204b)의 세그먼트에 대한 초기 조상 기원 추정치(218b)를 생성할 수 있고, 예측기 유닛(216c)은 SNP(204c)의 세그먼트에 대한 초기 조상 기원 추정치(218c)를 생성할 수 있고, 반면 예측기 유닛(216n)은 SNP(204n)의 세그먼트에 대한 초기 조상 기원 추정치(218n)를 생성할 수 있다. 하기에서 설명되는 바와 같이, 초기 조상 기원 추정치(218)는 상이한 타입의 정보, 예컨대, 소정의 조상 기원을 가질 확률, 조상 기원 로케일의 지리적 좌표, 조상 및 유전 정보를 나타내는 다차원 공간에서의 좌표, 조상 표현을 포함하는 피처 벡터 등을 포함할 수 있다.
각각의 예측기 유닛(216)은 SNP 세그먼트에 대응하는 SNP 부위의 특정한 세트에 대해 고유한 상이한 모델 파라미터를 가질 수 있다. 예를 들면, 예측기 유닛(216a)은 SNP(204a)의 세그먼트에 대응하는 SNP 부위에 대해 고유한 모델 파라미터의 세트를 가질 수 있고, 반면, 예측기 유닛(216b)은 SNP(204b)의 세그먼트에 대응하는 SNP 부위에 대해 고유한 모델 파라미터의 상이한 세트를 가질 수 있다. 하기에서 설명될 바와 같이, 각각의 예측기 유닛(216)의 모델 파라미터는 대응하는 SNP 부위에서 공지된 조상 기원의 SNP의 세그먼트를 포함하는 트레이닝 데이터에 기초하여 트레이닝될 수 있다. 예측기 유닛은 병렬로 동작할 수 있는데, 이것은, 예측기 유닛의 동작이, 분산형 컴퓨팅 환경에서 수행되는 것을 허용하고, 이것은 예측기 유닛의 동작을 더욱 확장 가능하고 계산 효율적으로 만든다. 몇몇 예에서, 예측기 유닛(216a 내지 216n)에 대해 모델 파라미터의 상이한 세트를 각각 구비하는 상이한 예측기 서브모델(206)은 상이한 염색체로부터의 SNP의 세그먼트를 프로세싱하기 위해 사용될 수 있다.
또한, 평활화 서브모델(208)은 최종 예측 결과(220a, 220b, 220c, 220n 등)와 같은 최종 예측 결과(220)를 생성하기 위해 다수의 이웃 세그먼트에 대응하는 초기 조상 기원 추정치(218)에 대해 평활화 동작을 수행할 수 있다. 최종 예측 결과(220)는 소정의 조상 기원을 가질 확률의 예측치, 조상 기원 로케일의 지리적 좌표, 조상/혈통 및 유전 정보를 나타내는 다차원 공간에서의 일반화된 좌표 등을 또한 포함할 수 있다. 각각의 최종 예측 결과는 SNP의 세그먼트에 대해 생성될 수 있고, 최종 예측 결과는 사슬 연결되어, 조상 기원 예측치(205a 및 205b)를 비롯하여, 대상의 게놈의 상이한 부분의 조상 기원의 최종 예측 결과가 될 수 있다. 평활화 동작은 세그먼트 사이의 초기 조상 기원 추정치에서 불연속성을 제거할/감소시킬 수 있다. 몇몇 예에서, 평활화 서브모델(208)은 조상 표현을 포함하는 피처 벡터를 또한 수신할 수 있고, 그 다음, 피처 벡터에 기초하여 최종 예측 결과(220)를 생성할 수 있다. 몇몇 예에서, 평활화 서브모델(208)은, 피처 벡터뿐만 아니라, 확률, 지리적 좌표, 일반화된 좌표 등의 초기 조상 기원 추정치(218)에 기초하여 최종 예측 결과(220)를 또한 생성할 수 있다.
도 2a에 도시된 바와 같이, 평활화 동작은 슬라이딩 윈도우에서 초기 조상 기원 추정치(218)의 서브세트의 가중된 합/평균을 수행하여 최종 예측 결과를 생성하는 것을 포함할 수 있고, 최종 예측 결과는 초기 조상 기원 추정치 대신 출력될 수 있다. 슬라이딩 윈도우는 최종 예측 결과에 의해 대체될 목표 초기 조상 기원 추정치를 중심으로 할 수 있다. 예를 들면, 초기 조상 기원 추정치(218c)를 대체할 최종 예측 결과(220c)를 생성하기 위해, 슬라이딩 윈도우는 초기 조상 기원 추정치(218c)뿐만 아니라, 초기 조상 기원 추정치(218c) 앞뒤에 사전 결정된 수의 초기 조상 기원 추정치(218)를 포함할 수 있다.
A. 분류기 및 회귀에 기초한 로컬 조상 간섭
예측기 서브모델(206)은 SNP의 세그먼트에 대한 초기 조상 기원 추정치를 생성하기 위해 다양한 기술을 활용할 수 있는데, 예컨대, 분류 및 회귀 동작을 수행할 수 있다. 분류기로서 동작할 때, SNP 세그먼트가 조상 기원을 가질 확률을 계산하기 위해, 예측기 유닛은 SNP 세그먼트의 SNP 부위에서 인코딩된 SNP 값을 사용할 수 있다. 조상 기원은 후보 조상 기원의 세트로부터 선택될 수 있다. 그 다음, 예측기 유닛은 SNP 세그먼트를 가장 높은 확률과 관련되는 조상 기원을 갖는 것으로 분류할 수 있다.
도 2b는 예시적인 분류 동작을 예시한다. 도 2b에 도시된 바와 같이, 예측기 유닛(216a)은 조상 기원 A, B, C 등을 갖는 SNP 세그먼트(204a)의 확률을 계산할 수 있다.
예측기 유닛(216a)은 다양한 형태로 출력을 생성할 수 있다. 하나의 예에서, 예측기 유닛(216a)은 세그먼트(204a)를 가장 높은 확률을 갖는 조상 기원으로 분류하는 분류 출력을 생성할 수 있다. 다른 예에서, 예측기 유닛(216a)은 원 핫(one-hot) 인코딩 포맷으로 분류 출력을 생성할 수 있는데, 논리 1은 가장 높은 확률을 갖는 조상 기원에 할당되고 논리 0은 조상 기원의 나머지에 할당된다. 도 2b에서, 조상 기원 A는 가장 높은 확률을 가지며, 따라서, 예측기 유닛(216a)은 세그먼트(204a)에 대한 조상 기원 A 또는 [1, 0, 0](1은 조상 기원 A를 나타냄)을 출력할 수 있다. 몇몇 예에서, 예측기 유닛(216a)은 또한 확률을 직접적으로 평활화 레이어에 출력할 수 있거나 또는 각각의 확률에 대한 로짓(logit) 값, (서포트 벡터 머신에서와 같이) 클래스에 속하는 점수 등을 포함하는 다른 타입의 수치 출력을 출력할 수 있다. 몇몇 예에서, 예측기 유닛(216a)은 조상 표현을 포함하는 피처 벡터를 또한 생성할 수 있다. 예를 들면, 피처 벡터는, 조상 기원에 대한 각각의 확률 값을 갖는 확률 값의 어레이를 포함할 수 있다.
B. 회귀에 기초한 로컬 조상 간섭
예측기 유닛이 회귀자로서 동작하는 경우, 예측기 유닛은, 사전 결정된 SNP 부위에서의 SNP 값의 다양한 패턴을 조상 기원 로케일의 지리적 좌표에 관련시키는 회귀 모델을 저장할 수 있다. 회귀 모델은 각각의 SNP 부위로 매핑되는 모델 파라미터를 포함할 수 있다. 모델 파라미터는, SNP 세그먼트의 조상 기원 로케일의 지리적 좌표를 계산하기 위해, SNP 부위에서 SNP 인코딩 값의 서열와 결합될 수 있다. 회귀 모델은, 예를 들면, SNP 세그먼트의 조상 기원 로케일의 예측된 지리적 좌표와 대상의 모집단에 대한 공지된 지리적 좌표 사이의 거리를 최소화하는 것에 기초하여 트레이닝될 수 있다.
도 2c는 예시적인 회귀 동작을 예시한다. 도 2c에 도시된 바와 같이, 예측기 유닛(216a)은, SNP 세그먼트(204a)의 조상 기원 로케일의 지리적 좌표(240)(예를 들면, 경도 및 위도), 또는 다른 식별 정보를 계산하기 위해, SNP 세그먼트(204a)를 회귀 모델(230)에 입력할 수 있다. 지리 좌표(240)는, 예를 들면, 조상 기원 A 내에서의 위치를 나타낼 수 있다.
몇몇 예에서, 도 2d에 도시된 바와 같이, 상이한 모델 파라미터를 각각 갖는 복수의 예측기 유닛(216a-n)을 구비하는 대신, 상이한 SNP 세그먼트에 대한 초기 조상 기원 추정치(218)를 생성하기 위해, 예측기 서브모델(206)은 모델 파라미터의 단일의 세트(예를 들면, 단일의 분류기, 단일의 회귀자 등)를 포함하는 단일의 예측기 유닛(216)을 포함할 수 있다. SNP 세그먼트를 프로세싱하기 위해 상이한 모델 파라미터를 갖는 상이한 예측기 유닛이 사용되는 도 2a와 비교하여, 도 2d의 배열체는 모델 파라미터의 총 사이즈를 감소시킬 수 있는데, 이것은 예측기 서브모델(206)뿐만 아니라 머신 러닝 모델(200)이 더 소형이 되는 것을 허용하고 더 적은 메모리 리소스를 필요로 한다.
도 2d에 도시된 바와 같이, 단일의 예측기 유닛(216)은, SNP 세그먼트의 SNP 값에 더하여, SNP 세그먼트와 관련되는 세그먼트 인덱스(254)를 입력으로서 수용할 수 있다. 각각의 세그먼트 인덱스는 특정한 SNP 세그먼트의 SNP 부위를 나타낼 수 있다. 세그먼트 인덱스는 초기 조상 기원 추정치(218)를 생성하기 위해 모델 파라미터의 단일의 세트와 결합될 수 있는데, 이것은 단일의 예측기 유닛(216)이 모델 파라미터의 동일한 세트를 사용하여 SNP 부위의 상이한 세트에 대해 조상 기원 예측을 상이하게 수행하는 것을 허용한다. 예를 들면, 단일의 예측기 유닛(216)은 SNP 세그먼트(204a) 및 세그먼트 인덱스(254a)에 기초하여 초기 기원 추정치(218a)를 생성할 수 있다. 또한, 초기 기원 추정치(218b)는 SNP 세그먼트(254b) 및 세그먼트 인덱스(254b)에 기초하여 생성될 수 있다. 또한, 초기 기원 추정치(218c)는 SNP 세그먼트(204c) 및 세그먼트 인덱스(254c)에 기초하여 생성될 수 있다. 하기에서 설명될 바와 같이, 상이한 세그먼트 인덱스는 SNP 부위의 상이한 세트에 대해 조상 기원 예측을 상이하게 수행하도록 단일의 예측기 유닛(216)을 트레이닝시키기 위한 트레이닝 데이터의 일부일 수 있다.
몇몇 예에서, 모델 파라미터의 단일의 세트를 갖는 단일의 예측기 유닛(216)은 상이한 염색체에 대한 초기 추정치(218)를 생성하기 위해 상이한 염색체의 SNP 세그먼트의 SNP 값을 프로세싱할 수 있다. 세그먼트 인덱스에 더하여, 단일의 예측기(216)는 특정한 염색체와 관련되는 염색체 인덱스를 또한 수용할 수 있다. 염색체 인덱스는 단일의 예측기(216)가 모델 파라미터의 동일한 세트를 사용하여 상이한 염색체에 대해 조상 기원의 초기 추정치를 상이하게 생성하는 것을 허용한다. 예를 들면, 도 2e에 도시된 바와 같이, 단일의 예측기 유닛(216)은 제1 염색체에 대한 입력(256a)을 수용할 수 있고 제1 염색체에 대한 초기 추정치(270a)의 세트를 생성할 수 있다. 또한, 단일의 예측기 유닛(216)은 제2 염색체에 대한 입력(256b)을 수용할 수 있고 제2 염색체에 대한 초기 추정치(270b)의 세트를 생성할 수 있다. 입력(256a)은, 각각이 세그먼트 인덱스(254a 내지 254n)와, 각각, 관련되는 SNP 세그먼트(204a 내지 204n)를 포함할 수 있다. 또한, 입력(256a)은 제1 염색체와 관련되는 염색체 인덱스(260a)를 또한 포함한다. 또한, 입력(256b)은, 각각이 세그먼트 인덱스(254a 내지 254n)와, 각각, 관련되는 SNP 세그먼트(204a 내지 204n)를 포함할 수 있다. 또한, 입력(256b)은 제2 염색체와 관련되는 염색체 인덱스(260b)를 또한 포함할 수 있다. 도 2e의 배열체는, 모델 파라미터의 하나의 세트가, 상이한 SNP 세그먼트 사이에서, 뿐만 아니라, 또한, 상이한 염색체 사이에서 재사용되는 것을 허용하는데, 이것은 예측기 서브모델(206)뿐만 아니라 머신 러닝 모델(200)이 훨씬 더 소형이 되는 것을 허용하고 더 적은 메모리 리소스를 필요로 한다.
머신 러닝 모델(200)은 다양한 기술을 사용하여 구현될 수 있다. 몇몇 예에서, 예측기 서브모델(206)의 각각의 분류기 또는 회귀자는 완전히 연결된 신경망 모델을 포함할 수도 있는데, 이것은 은닉 레이어를 포함할 수도 있고, 한편 평활화 서브모델(208)은 컨볼루션 신경망(CNN)을 포함할 수도 있다. 몇몇 예에서, 평활화 서브모델(208) 뿐만 아니라 예측기 서브모델(206)의 각각의 분류기 또는 회귀자는 복수의 의사 결정 트리를 포함할 수도 있다.
C. 예측기 서브모델로서의 완전히 연결된 신경망
도 3a 내지 도 3c는 인공 신경망 모델을 사용하여 구현되는 예측기 서브모델(206)의 예를 예시한다. 인공 신경망은 생물학적 신경망에 기초하는 아키텍처를 갖는 컴퓨팅 시스템이다. 인공 신경망은 가중치의 세트를 포함할 수 있다. 계산을 통해, 가중치는 입력 데이터와 결합되어 정보를 추출할 수 있고, 추출된 정보에 기초하여 출력(예를 들면, 의사 결정, 계산된 값 등)이 만들어질 수 있다. 신경망의 예는, 완전히 연결된 신경망, 컨볼루션 신경망, 순환 신경망(recurrent neural network)(예를 들면, 장단기 메모리(Long Short Term Memory: LSTM) 네트워크, 게이트식 순환 유닛(Gated Recurrent Unit: GRU) 네트워크, 셀프 어텐션 레이어, 트랜스포머 레이어(transformer layer), 잔차 블록(residual block) 등을 포함할 수 있다. 예측기 서브모델(206)은 이들 신경망 중 임의의 것을 사용하여 구현될 수 있다. 도 3a 내지 도 3c에서, 다중 레이어의 완전히 연결된 신경망을 사용하여 구현되는 예측기 서브모델(206)의 한 예가 예시된다.
1. 2 레이어 신경망
도 3a는 신경망(302)을 포함하며 분류기로서 트레이닝되는 예측기(216a)의 예를 예시한다. 신경망(302)은 입력 레이어(304) 및 출력 레이어(306)를 포함한다. 입력 레이어(304)는, 예를 들면, 입력 노드(304a, 304b, ..., 304n)와 같은 복수의 입력 노드를 포함한다. 또한, 출력 레이어(306)는, 예를 들면, 출력 노드(306a, 306b, 및 306c)와 같은 복수의 출력 노드를 포함한다.
각각의 입력 노드는 분류기에 의해 수신되는 세그먼트의 특정한 SNP 부위에서 SNP 값의 인코딩된 값(예를 들면, 1, 1, -1)을 수신한다. 예를 들면, 입력 노드(304a)는 인코딩된 값(s0)을 수신하고, 입력 노드(304b)는 인코딩된 값(s1)을 수신하고, 반면, 입력 노드(304n)는 인코딩된 값(sn)을 수신한다. 각각의 입력 노드는 가중치의 세트와 관련된다. 예를 들면, 입력 노드(304a)는 가중치의 세트(W0)와 관련되고, 입력 노드(304b)는 가중치의 세트(W1)와 관련되고, 반면, 입력 노드(304n)는 가중치의 세트(Wn)와 관련된다. 각각의 입력 노드는 가중치의 관련된 세트를 사용하여 입력된 인코딩 값을 스케일링하여 스케일링된 인코딩된 값의 세트를 생성할 수 있고, 스케일링된 인코딩된 값을 출력 레이어(306)의 출력 노드로 송신할 수 있다. 예측기(216a)가 500개의 SNP의 세그먼트를 수신하는 경우, 입력 레이어(304)는 500개의 입력 노드를 포함할 수 있다.
도 3a에서, 신경망(302)은 완전히 연결된 신경망일 수 있고, 출력 레이어(306)의 각각의 출력 노드는 입력 레이어(304)의 각각의 입력 노드에 연결되고 각각의 입력 노드로부터 스케일링된 인코딩된 값을 수신한다. 구체적으로, 입력 노드의 가중치의 각각의 세트는 각각의 출력 노드에 대한 스케일링된 인코딩된 값을 생성하기 위해 각각의 출력 노드에 대응하는 가중치 엘리먼트를 포함할 수 있다. 예를 들면, 입력 노드(304a)의 가중치의 세트(W0)는 출력 노드(306a, 306b, 및 306c)에 각각 대응하는 가중치 엘리먼트(w0,0, w0,1, w0,2)를 포함한다. 또한, 입력 노드(304b)의 가중치의 세트(W1)는, 또한 출력 노드(306a, 306b, 및 306c)에도 각각 대응하는 가중치 엘리먼트(w1,0, w1,1, w1,2)를 포함한다. 게다가, 입력 노드(304n)의 가중치의 세트(W1)는, 또한 출력 노드(306a, 306b, 및 306c)에도 각각 대응하는 가중치 엘리먼트(wn,0, wn,1 및 wn,2)를 포함한다.
각각의 출력 노드는 후보 조상 기원 카테고리에 대응할 수 있다. 각각의 출력 노드는, 인코딩된 값(s0, s1, sn 등)의 서열에 의해 표현되는 입력 SNP 세그먼트가 출력 노드에 대응하는 후보 조상 기원 카테고리로 분류될 확률을 계산할 수 있다. 예를 들면, 후보 조상 기원 세트가 아프리카, 유럽, 및 동아시아를 포함하는 경우, 출력 노드(306a)는 입력 SNP 세그먼트가 아프리카 기원으로 분류될 확률을 출력할 수 있고, 출력 노드(306b)는 입력 SNP 세그먼트가 유럽 기원으로 분류될 확률을 출력할 수 있고, 반면, 출력 노드(306c)는 입력 SNP 세그먼트가 동아시아 기원으로 분류될 확률을 출력할 수 있다.
각각의 출력 노드는 각각의 입력 노드로부터 스케일링된 인코딩된 값을 수신할 수 있고 스케일링된 값을 합산하여 중간 합계를 생성할 수 있는데, 중간 합계는, 그 다음, 입력 SNP 서열이 출력 노드에 대응하는 후보 조상 기원을 가질 확률을 계산하기 위해 사용될 수 있다. 예를 들면, 출력 노드(306a)는 다음과 같이 중간 합계(sum306a)를 계산할 수 있다:
Figure pct00001
수학식 1에서, si는 각각의 입력 노드에 의해 수신되는 인코딩된 SNP 값(예를 들면, s0, s1 등)을 나타내고, 반면, w0,i는, 가중치 세트(W0)의 가중치 엘리먼트(w0,0), 가중치 세트(W1)의 가중치 엘리먼트(w1,0) 등을 비롯한, 출력 노드(306a)에 대응하는 각각의 입력 노드의 가중치 세트 내의 가중치 엘리먼트를 나타낸다.
각각의 출력 노드는 중간 합계가 주어지면 그 노드의 출력을 정의하는 활성화 함수를 또한 구현한다. 활성화 함수는 생물학적 신경망의 의사 결정을 모방할 수 있다. 출력 노드(306)에 의해 구현되는 활성화 함수의 하나의 예는 다음의 수학식에 따라 정의되는 시그모이드(Sigmoid) 함수를 포함할 수도 있다:
Figure pct00002
시그모이드 외에도, 예를 들면, ReLU 함수, softmax 함수, 소프트플러스 함수(이것은 ReLU 함수의 평활화 근사일 수 있음), 쌍곡선 탄젠트 함수(tanh), 아크 탄젠트 함수(arctan), 시그모이드 함수, 가우스 함수(Gaussian function) 등을 포함하는 다른 형태의 활성화 함수도 또한 사용될 수 있다. ReLU 및 softmax 함수에 대한 예시적인 수학식이 하기에서 제공된다:
Figure pct00003
수학식 4에서, softmax 함수에 대한 입력(xi)은 k개의 엘리먼트(x1, x2, ..., xK)를 갖는 벡터의 엘리먼트이다.
그 다음, 각각의 출력 노드는 시그모이드 함수, softmax 함수 등과 같은 활성화 함수를 중간 합계에 적용하여, 출력 노드에 대응하는 후보 조상 기원을 갖는 입력 SNP 서열의 확률을 계산할 수 있다. 중간 합계의 세트로부터 피처 벡터를 계산하기 위해 다른 활성화 함수가 또한 사용될 수 있다. 예를 들면, 출력 노드(306a)는 다음과 같이 아프리카 기원을 갖는 입력 SNP 서열의 확률(P0)을 계산할 수 있다:
Figure pct00004
출력 노드(306b 및 306c)는 또한, 수학식 5에 기초하여, 유럽 기원을 갖는 입력 SNP 서열의 확률(P1)뿐만 아니라, 동아시아 기원을 갖는 입력 SNP 서열의 확률(P2)를, 각각, 계산할 수 있다.
도 3b는 신경망(312)을 포함하며 회귀자로서 트레이닝되는 예측기(216a)의 예를 예시한다. 신경망(312)은 입력 레이어(314) 및 출력 레이어(316)를 포함한다. 입력 레이어(314)는, 도 3a에서와 같이, SNP 서열의 인코딩된 값에 각각 매핑되는 입력 노드(314a, 314b, ..., 314n)와 같은 복수의 입력 노드를 포함한다. 또한, 출력 레이어(316)는 복수의 출력 노드(316a 및 316b)를 포함한다. 각각의 출력 노드는 조상 기원 로케일의 지리적 좌표의 성분에 대응할 수 있다. 예를 들면, 출력 노드(316a)는 경도(L0)를 출력할 수 있고, 반면, 출력 노드(316b)는 위도(L1)를 출력할 수 있다. 각각의 입력 노드는 출력 노드(316a 및 316b)에 각각 대응하는 두 개의 가중치 엘리먼트를 각각 포함하는 가중치의 세트와 관련된다. 각각의 입력 노드는 출력 노드(316a 및 316b)에 대한 두 개의 인코딩된 값을 생성하기 위해 가중치의 관련된 세트를 사용하여 입력된 인코딩 값을 스케일링할 수 있다. 각각의 출력 노드는, 수학식 1에서와 같이, 입력 노드(314a, ..., 314n)로부터 수신되는 스케일링된 인코딩된 값을 합산하여, 조상 기원 로케일의 지리적 좌표의 대응하는 성분을 생성할 수 있다.
몇몇 예에서, 신경망(312)은, 조상 기원/혈통을 나타내기 위해, 좌표, 또는 코드를 생성하도록 또한 트레이닝될 수 있다. 하기에서 설명될 바와 같이, 좌표는 차원수 감소 연산으로부터 의해 획득되는 차원에 의해 정의되는 다차원 공간에서 정의될 수 있다. 신경망(312)은 순수 혈통 대상, 또는 모든 SNP 세그먼트에 대한 단일의 조상 기원을 갖는 대상의 전체 게놈 서열을 나타내는 벡터, 및 벡터에 대한 차원수 감소 연산을 통해 획득되는 다차원 공간에서의 기준 좌표를 사용하여 트레이닝될 수 있다. 그러한 예에서, 출력 노드(316a 및 316b)는 특정한 SNP 세그먼트의 조상 기원, 또는 혈통을 나타내는 좌표를 출력할 수 있고, 좌표는 지리적 로케일을 나타낼 수도 있거나 또는 지리적 로케일이 아닌 혈통 로케일, 또는 혈통 좌표를 나타낼 수도 있다. (예를 들면, 작물 또는 동물의) 특정한 혈통의 혈통 좌표는 순수 혈통(즉, 공지된 조상 기원)의 게놈 서열로부터 생성될 수 있다. 예를 들면, SNP 부위는 인코딩될 수 있고(예를 들면, 0 또는 1), 예를 들면, 주 성분 분석(principal component analysis: PCA)을 사용하여 차원수 감소가 수행될 수 있다. 이들 혈통 좌표는, 예를 들면, 지리적 좌표가 사용될 수 있는 것과 유사한 방식으로, 그러나 더욱 일반화된 의미에서, 감독 트레이닝을 위한 출력 라벨로서 사용될 수 있다.
2. 은닉 레이어
몇몇 예에서, 예측기 서브모델(206)의 완전히 연결된 신경망 모델은 입력 레이어와 출력 레이어 사이에서 은닉 레이어를 포함할 수도 있다. 은닉 레이어는 SNP의 입력 세그먼트를 후보 조상 기원의 후보 로케일로 분류할 수 있다. 그 다음, 출력 레이어는 은닉 레이어에 의해 출력되는 로케일에 기초하여 SNP의 입력 세그먼트를 후보 조상 기원으로 추가적인 분류할 수 있다. 은닉 레이어는 조상 기원 로케일의 지리적 좌표 계산을 위한 추가적인 회귀 파라미터를 또한 제공할 수 있다.
도 3c는 입력 레이어(324) 및 출력 레이어(326)뿐만 아니라, 입력 레이어(324)와 출력 레이어(326) 사이의 은닉 레이어(328)을 구비하는 신경망(322)을 포함하는 예측기(216a)의 예를 예시한다. 입력 레이어(324)는 입력 노드(324a, 324b, ..., 324n)를 포함하는 복수의 입력 노드를 포함한다. 입력 레이어(324)의 각각의 입력 노드는 분류기에 의해 수신되는 세그먼트의 특정한 SNP 부위에서 SNP 값의 인코딩된 값(예를 들면, 1, 1, -1)을 수신한다. 예를 들면, 입력 노드(324a)는 인코딩된 값(s0)을 수신하고, 입력 노드(324b)는 인코딩된 값(s1)을 수신하고, 반면, 입력 노드(324n)는 인코딩된 값(sn)을 수신한다. 입력 레이어(324)가 세그먼트에서 500개의 SNP를 수신하는 경우, 입력 레이어(324)는 500개의 입력 노드를 포함할 수도 있다. 또한, 출력 레이어(326)는, 출력 노드(326a, 326b, 및 326c)를 비롯하여, 복수의 출력 노드를 포함한다. 도 3c에서, 신경망(322)은 분류기로서 구성될 수 있고, 각각의 출력 노드는 신경망(302)에서와 같이 후보 조상 기원에 대응할 수 있다. 신경망(322)이 회귀자로서 구성되는 경우, 각각의 출력 노드는 조상 기원 로케일의 지리적 좌표의 성분에 대응할 수 있다. 출력 레이어(326)는 신경망(312)에서와 같이 두 개의 출력 노드를 포함할 수도 있다.
또한, 은닉 레이어(328)는, 예를 들면, 중간 노드(330a, 330b, 330m 등)를 포함하는 복수의 중간 노드를 포함한다. 각각의 중간 노드는 각각의 입력 노드로부터 SNP의 스케일링된 인코딩된 값을 수신할 수 있고, 스케일링된 인코딩된 값을 합산할 수 있고, 가중치의 제2 세트를 사용하여 그 합계를 스케일링할 수 있고, 스케일링된 합에 대해 활성화 함수를 적용하여 중간 출력의 세트를 생성할 수 있다. 출력 레이어는 각각의 중간 노드로부터의 중간 출력을 입력으로서 수신할 수 있고, 중간 출력에 기초하여 초기 조상 기원 추정치(예를 들면, 분류 출력, 조상 기원 로케일의 좌표 등)를 생성할 수 있다. 중간 출력은 입력 SNP 세그먼트와 조상 기원 분류 출력(신경망(322)이 분류기로서 구성되는 경우) 또는 조상 기원 로케일 좌표(신경망(322)이 회귀자로서 구성되는 경우) 사이의 비선형 매핑을 제공하기 위해 은닉 표현/피처를 포함할 수 있다. 몇몇 예에서, 은닉 레이어(328)는 30개의 중간 노드를 포함한다.
도 3c의 예에서, 신경망(322)은 완전히 연결된 신경망일 수 있는데, 여기서 은닉 레이어(328)의 각각의 중간 노드는 입력 레이어(324)의 각각의 입력 노드로부터 입력을 수신하고, 입력 레이어의 각각의 입력 노드와 연결되며, 출력 레이어(326)의 각각의 출력 노드는 은닉 레이어(328)의 각각의 중간 노드로부터 입력을 수신하고, 은닉 레이어의 각각의 중간 노드와 연결된다. 구체적으로, 입력 레이어(324)의 각각의 입력 노드는 인코딩된 SNP 값의 세트를 생성하기 위해 은닉 레이어(328)의 중간 노드에 각각 대응하는 가중치의 세트와 관련되며, 각각의 입력 노드는 스케일링된 인코딩된 SNP 값을 은닉 레이어(328)의 중간 노드 중 하나로 송신한다. 각각의 중간 노드는 (예를 들면, 수학식 1에 기초하여) 스케일링된 인코딩된 SNP 값을 합산하여 합계를 생성하고 시그모이드 함수, softmax 함수, ReLU 함수 등과 같은 활성화 함수를 적용하여 중간 출력을 생성할 수 있다. 또한, 옵션 사항의(optional) 배치 정규화 프로세스(batch normalization process)는, 예를 들면, 신경망(322)의 속도, 성능, 및 안정성을 증가시키기 위해, 중간 출력을 정규화하도록 각각의 노드에서 수행될 수 있다. 정규화 프로세스는, 예를 들면, 각각의 중간 출력으로부터 중간 출력의 평균을 감산하는 것, 및 감산 결과를 중간 출력의 표준 편차로 제산하여, 정규화된 중간 출력을 생성하는 것을 포함할 수 있다. 몇몇 예에서, 정규화 연산은 활성화 함수를 적용하기 이전에 수행될 수 있다.
출력 레이어(326)의 각각의 출력 노드는 은닉 레이어(328)의 각각의 중간 노드로부터 정규화된 중간 출력을 수신할 수 있다. 각각의 출력 노드에 의해 수신되는 정규화된 중간 출력은, 예를 들면, 각각의 중간 노드에 의해 나타내어지는 각각의 로케일에서 조상 기원을 갖는 입력 SNP 서열의 확률의 분포, 로케일과 관련되는 회귀 파라미터 등을 나타낼 수 있다. 신경망(322)이 분류기로서 구성되는 경우, 각각의 출력 노드는 정규화된 중간 출력에 대해 softmax 함수를 수행할 수 있다. 확률의 분포에 기초하여, softmax 함수는, 은닉 레이어(328)를, 출력 노드(326a, 326b, 및 326c)에 의해 표현되는 후보 조상 기원(예를 들면, 아프리카, 유럽 및 동아시아) 각각에 대한 할당을 위한 확률에 매핑할 수 있다. 도 3a의 신경망(302)에서와 같이, 신경망(322)은 입력 SNP 서열에 대해 가장 높은 확률을 갖는 조상 기원, 각각의 후보 조상 기원에 대한 확률 등을 출력할 수 있다. 각각의 출력 노드는 피처 벡터를 생성하기 위해 ReLU와 같은 다른 활성화 함수를 또한 수행할 수 있다.
신경망(322)은 또한 회귀자로서, 또는 차원수 감소 연산으로부터 획득되는 다차원 공간에서 정의되는 좌표를 생성하도록, 트레이닝될 수 있다. 두 경우 모두에서, 은닉 레이어(328)의 각각의 중간 노드는 입력 SNP 서열 대 조상 기원 로케일 좌표, 또는 차원수 감소 연산으로부터 획득되는 다차원 공간에서의 좌표를 나타내는 중간 출력 사이의 비선형 매핑을 제공할 수 있다.
D. 평활화 서브모델로서의 컨볼루션 신경망
상기에서 설명되는 바와 같이, 예측기 서브모델(206)에 더하여, 머신 러닝 모델(200)은, 초기 조상 기원 추정치에서 불연속성을 제거/감소하기 위해, 예측기 서브모델(206)에 의해 생성되는 초기 조상 기원 추정치(예를 들면, 조상 기원의 분류, 조상 기원의 지리적 좌표 등)의 서브세트에 대해 평활화 동작을 수행하기 위한 평활화 서브모델(208)을 더 포함한다. 몇몇 예에서, 평활화 서브모델(208)은, 커널과 입력 SNP 서열의 각각의 세그먼트에 대해 생성되는 초기 조상 기원 추정치 사이에서 컨볼루션 연산을 수행할 수 있는 컨볼루션 신경망(CNN)을 포함할 수 있고, 컨볼루션 연산의 결과는 최종 조상 기원 예측 결과로서 출력될 수 있다. 평활화 서브모델(208)을 구현하기 위해, 순환 신경망(예를 들면, LSTM 및 GRU), 셀프 어텐션 레이어, 트랜스포머 레이어, 잔차 블록 등과 같은 다른 신경망 토폴로지가 또한 사용될 수 있다.
1. 평활화 동작
도 4a는 평활화 서브모델(208)에 의해 수행될 예시적인 평활화 동작을 예시한다. 커널(402)은 슬라이딩 윈도우(404)에 포함되는 초기 조상 기원 추정치와 함께, 이웃하는 SNP 세그먼트의 서브세트로부터 생성되는 피처 벡터 및/또는 초기 조상 기원 추정치에 대해 동작할 수 있다. 구체적으로, 커널(402)은 슬라이딩 윈도우(404)의 초기 조상 기원 추정치에 각각 대응하는 가중치의 어레이를 포함할 수도 있다. 가중치는 대응하는 초기 조상 기원 추정치와 승산될 수 있고, 적(product)은 합산되어 SNP 세그먼트에 대한 최종 조상 기원 예측 결과(예를 들면, 최종 조상 기원 예측 결과(406))를 생성할 수 있다. 최종 조상 기원 예측 결과는 머신 러닝 모델(200)의 출력으로서 세그먼트의 목표 초기 조상 기원 추정치를 대체할 수 있다. 슬라이딩 윈도우(404)는 평활화 동작에 의해 대체될 목표 초기 조상 기원 추정치뿐만 아니라, 목표 초기 조상 기원 추정치 전후의 사전 결정된 수의 초기 조상 기원 추정치를 포함할 수 있다. 몇몇 예에서, 슬라이딩 윈도우(404)는 75개의 이웃하는 초기 조상 기원 추정치, 및 상이한 목표 초기 조상 기원 추정치에 대한 윈도우의 포지션 변화를 포함할 수 있다.
커널(402)은 다수의 서브커널을 포함할 수도 있는데, 각각의 서브커널은 채널을 나타내고 가중치의 어레이를 포함한다. 각각의 채널은 출력 레이어(306)의 출력 노드에 대응할 수 있다. 예를 들면, 커널(402)은 서브커널(402a), 서브커널(402b), 및 서브커널(402c)을 포함할 수도 있다. 각각의 서브커널은 슬라이딩 윈도우(404) 내의 출력 노드로부터의 초기 조상 기원 추정치에 대해 동작할 수 있다. 서브커널의 각각의 가중치는 대응하는 초기 조상 기원 추정치와 승산되어 적을 생성할 수 있고, 적은 합산되어 최종 조상 기원 예측 결과를 생성할 수 있다. 최종 예측 결과는 윈도우의 초기 조상 기원 추정치의 가중된 평균을 나타낼 수 있다. 예를 들면, 서브커널(402a)은 슬라이딩 윈도우(404) 내의 출력 노드(306a)에 의해 출력되는 초기 조상 기원 추정치의 가중된 평균을 생성하기 위해 사용될 수 있다. 또한, 서브커널(402b)은 슬라이딩 윈도우(404) 내의 출력 노드(306b)에 의해 출력되는 초기 조상 기원 추정치의 가중된 평균을 생성하기 위해 사용될 수 있다. 게다가, 서브커널(402c)은 슬라이딩 윈도우(404) 내의 출력 노드(306c)에 의해 출력되는 초기 조상 기원 추정치의 가중된 평균을 생성하기 위해 또한 사용될 수 있다.
몇몇 예에서, 가중된 평균화 연산의 일부로서, 평활화 서브모델(208)은 각각의 초기 조상 기원 추정치에 의해 표현되는 SNP의 세그먼트의 유용성 메트릭에 기초하여 각각의 초기 조상 기원 추정치에 가중치를 할당할 수 있다. 유용성 메트릭은, 예를 들면, 세그먼트의 소정의 SNP 부위에서의 SNP 변이체의 조상 기원이 정확하게 예측될 수 있는지의 여부를 반영할 수 있다. 유용성 메트릭은, 예를 들면, 모집단의 게놈의 세그먼트의 사전 예측 결과에 기초하여 결정될 수 있는 세그먼트에 대한 조상 기원의 예측 오차의 확률에 기초할 수 있다. 예측 오차의 더 높은 확률을 갖는 SNP의 세그먼트에 대한 초기 조상 기원 추정치에 대해 더 작은 가중치가 할당될 수 있고, 반면, 예측 오차의 더 낮은 확률을 갖는 SNP의 세그먼트에 대한 초기 조상 기원 추정치에 대해 더 큰 가중치가 할당될 수 있다. 가중치는 커널(402)의 일부일 수 있거나, 또는 커널(402)과 승산되기 이전에 각각의 초기 조상 기원 추정치에 적용될 수 있다.
몇몇 예에서, 도 2a의 데이터(202)와 같은 입력 SNP 서열은 대상의 모계 SNP 서열 및 부계 SNP 서열을 포함할 수 있다. 모계 및 부계 SNP 서열은 모계 SNP 서열 및 부계 SNP 서열에 대한 초기 조상 기원 추정치(420a 및 420b)를 생성하기 위해 예측기 서브모델(206)에 의해 별개로 프로세싱될 수 있다. 서브커널(402a, 402b, 및 402c) 각각은 가중치를 포함할 수 있는데, 각각의 가중치는 모계 SNP 서열 및 부계 SNP 서열 둘 모두에 대한 출력 노드에 의해 출력되는 초기 조상 기원 추정치에 대응한다. 가중치는 대응하는 초기 조상 기원 추정치와 승산되어 합계의 두 세트를 생성할 수 있고, 모계 SNP 서열 및 부계 SNP 서열 각각에 대한 최종 예측 결과가 생성될 수 있다. 결과적으로, 최종 예측 결과(430a 및 430b)를 비롯하여, 최종 예측 결과의 두 세트가 모계 SNP 서열 및 부계 SNP 서열에 대해 생성될 수 있다. 그 다음, 세그먼트에 대한 최종 예측 결과(430a 및 430b)는 연결되어 각각의 서열의 SNP의 세그먼트에 대한 조상 기원 예측치(205a 및 205b)가 될 수 있다. 그러한 배열체를 통해, 최종 예측 결과는, 입력 SNP 서열에서 모계 SNP 서열 및 부계 SNP 서열이 제시되는 순서에 영향을 받지 않게 될 수 있다.
2. 컨볼루션 신경망
도 4b는 평활화 서브모델(208)의 일부일 수 있는 컨볼루션 신경망(CNN)(440)의 예를 예시한다. CNN(440)은, 노드(442a, 442b, 442m 등)를 포함하는 레이어(442)를 포함할 수 있다. 레이어(442)의 각각의 노드는 슬라이딩 윈도우(404)에 따라 예측기 서브모델(206)의 예측기 유닛(216)의 서브세트에 연결될 수 있다. 예를 들면, 슬라이딩 윈도우(404)가 75개의 초기 조상 기원 추정치를 포함하는 경우, 노드(442a)는 예측기 유닛(216a)으로부터 시작하는 75개의 예측기 유닛에 연결될 수 있고, 노드(442b)는 예측기 유닛(216b)으로부터 시작하는 75개의 예측기 유닛에 연결될 수 있고, 반면, 노드(442m)는 예측기 유닛(216n)에서 끝나는 75개의 예측기 유닛에 연결될 수 있다. 레이어(442)의 각각의 노드는 커널(402)을 구현할 수 있고 출력 노드에 대한, 최종 예측 결과(220a, 220b, 220k 등)를 비롯한, 최종 예측 결과를 생성할 수 있다. 구체적으로, 레이어(442)의 각각의 노드는 슬라이딩 윈도우를 나타내는 예측기 유닛의 그룹을 중첩시키는 것에 의해 출력되는 초기 조상 기원 추정치의 가중된 평균을 생성할 수 있다. 예를 들면, 노드(442a)는 예측기 유닛(216a, 216b, 216c, ..., 216n-2)으로부터 입력을 수신하고, 반면, 노드(442b)는 예측기 유닛(216b, 216c, ..., 216n-1)으로부터 입력을 수신한다. 몇몇 예에서, 컨볼루션 연산은, 동일한 입력 및 출력 사이즈를 유지하기 위해, 적절한 반사 패딩을 가지고 수행될 수 있다. 예를 들면, (예를 들면, 염색체의 시작 또는 끝에서) 레이어(442)의 노드에 입력되도록 이용 가능한 75 개보다 더 적은 초기 조상 기원 추정치가 존재하는 경우, 노드에 대한 입력으로서 누락된 초기 조상 기원 추정치를 대체하기 위해 (예를 들면, 제로 패딩에 의해) 반사 패딩이 적용될 수 있다. CNN(440)이 예측기 유닛(216)으로부터 n개의 초기 조상 기원 추정치를 수신하는 경우, CNN(440)은 반사 패딩에 기초하여 n개의 최종 예측 결과를 또한 생성할 수 있다.
E. 신경망 서브모델의 트레이닝
머신 러닝(200)은 예측의 정확도를 향상시키도록 트레이닝될 수 있다. 머신 러닝 모델(200)은 머신 러닝 모델에 의해 식별될 공지된 조상 기원의 모집단의 전체 게놈 데이터로부터 유도되는 트레이닝 데이터에 기초하여 트레이닝될 수 있다. 예를 들면, 머신 러닝 모델이 SNP의 세그먼트를 동아시아, 아프리카, 및 유럽 중 하나로 분류할 경우, 트레이닝 데이터는, 예를 들면, 중국, 일본, 한국, 영국, 프랑스, 스페인, 남아프리카 공화국, 이집트 등과 같은, 동아시아, 아프리카, 및 유럽의 다양한 로케일로부터의 개인의 게놈 데이터를 포함할 수 있다.
이들 개인의 전체 게놈 서열로부터, 이들 개인의 시뮬레이팅된 혼합된 자손의 시뮬레이팅된 게놈 서열은 일련의 세대에 걸쳐, 예컨대, 2, 4, 16, 32, 및 64 세대 이후에, Wright-Fisher 순방향 시뮬레이션에 기초하여 생성된다. 초기 혼합에 후속하는 세대의 수가 증가함에 따라, 시뮬레이팅된 자손은 게놈을 따라 증가하는 수의 조상 스위치(ancestry switch)를 가지는데, 이것은 더 어려운 추론 동작으로 이어질 수 있다. 광범위한 세대를 갖는 이들 개인의 시뮬레이팅된 혼합된 자손의 게놈 서열을 포함하는 트레이닝 데이터의 세트뿐만 아니라, 시뮬레이팅된 게놈 서열의 SNP 세그먼트의 공지된 조상 기원이 머신 러닝 모델을 트레이닝시키고 유효성 확인하기 위해 사용될 수 있는데, 이것은 머신 러닝 모델이 트레이닝 데이터에서 반영되는 상이한 SNP 부위에서의 SNP 변이체의 패턴과 그들의 조상 기원 사이의 관계로부터 학습하여 로컬 조상 추론을 수행하는 것을 허용한다. 누락된 SNP 데이터를 핸들링함에 있어서 트레이닝된 머신 러닝 모델의 강건성을 향상시키기 위해, 누락된 입력 SNP를 모델링하기 위해 트레이닝 데이터에 드롭아웃 정규화(dropout regularization)가 적용될 수 있는데, 이것은 입력 데이터가 DNA 마이크로어레이와 같은 유전자형 어레이(genotyping array)로부터 유래하는 경우 일반적으로 발생한다.
또한, 예측기 서브모델이 SNP 부위의 대응하는 세트에서 SNP 세그먼트를 각각 프로세싱하기 위한 복수의 예측기 유닛을 포함하는 경우, 각각의 예측기 유닛은 SNP 부위의 대응하는 세트에서 SNP 데이터에 기초하여 트레이닝될 수 있고, 각각의 예측기 유닛은 트레이닝의 결과로서 모델 파라미터(예를 들면, 가중치, 의사 결정 트리 토폴로지, 의사 결정 기준 등)의 상이한 세트를 포함할 수 있다. 예측기 서브모델이 단일의 예측기 유닛을 포함하는 경우, 서브모델이 학습의 결과로서 SNP 부위의 상이한 세트를 구별하는 것을 가능하게 하기 위해, 예측기 서브모델은 SNP 세그먼트 데이터뿐만 아니라 그들의 관련된 세그먼트 인덱스에 기초하여 트레이닝될 수 있다. 이것은 예측기 서브모델이 모델 파라미터의 동일한 세트를 사용하여 상이한 SNP 부위에 대해 예측을 상이하게 수행하는 것을 허용한다.
트레이닝 동작은 순방향 전파 동작 및 역방향 전파 동작을 포함할 수 있다. 순방향 전파 동작의 일부로서, 머신 러닝 모델은 공지된 조상 기원의 SNP의 서열을 포함하는 트레이닝 데이터를 수신하여 서열의 조상 기원의 예측치를 생성할 수 있다. 각각의 SNP 세그먼트의 예측된 조상 기원과 실제 조상 기원 사이(또는 조상 기원 로케일의 예측된 지리적 좌표와 공지된 지리적 좌표 사이)의 비교가 이루어질 수 있다. 예측된 조상 기원과 실제 조상 기원 사이의 매칭의 정도를 최대화하기 위해, 예측기 서브모델 및 평활화 서브모델의 다양한 파라미터, 예컨대, 완전히 연결된 신경망 모델의 가중치, 컨볼루션 신경망 모델의 커널의 파라미터, 의사 결정 트리, 평활화 동작에서 SNP 세그먼트와 관련되는 가중치 등이 조정될 수 있다.
머신 러닝 모델(200)이 SNP 세그먼트를 후보 조상 기원 중 하나로 분류하는 분류기로서 동작하는 경우, 머신 러닝 모델(200)은 교차 엔트로피 손실 함수에 기초하여 트레이닝될 수 있다. 교차 엔트로피는 일반적으로 이벤트의 세트 또는 주어진 랜덤 변수에 대한 두 개의 확률 분포 사이의 차이의 측정치를 가리킨다. 엔트로피는 확률 분포로부터의 랜덤하게 선택된 이벤트를 송신하는 데 필요한 비트의 수이고, 반면, 교차 엔트로피는 다른 분포와 비교하여 하나의 분포로부터의 평균 이벤트를 나타내는 데 또는 송신하는 데 필요한 비트의 수를 계산한다. 목표 분포(P)와 목표 분포의 근사치(Q) 사이의 교차 엔트로피는, 다음과 같이, P 및 Q로부터의 이벤트의 확률을 사용하여 계산될 수 있다:
Figure pct00005
수학식 6에서, P(x)는 P에서 이벤트(x)의 확률이고, 반면 Q(x)는 Q에서 이벤트(x)의 확률이다.
교차 엔트로피는 분류기로서 동작하는 머신 러닝 모델(200)을 최적화하기 위한 손실 함수로서 사용될 수 있다. 상기에서 설명되는 바와 같이, 머신 러닝 모델(200)은, SNP 세그먼트에 대해, 각각의 후보 조상 기원에 대한 확률을 계산할 수 있다. 교차 엔트로피 손실 함수는, 수학식 6에 기초하여, 트레이닝 데이터의 각각의 후보 조상 기원의 예상된 확률에 기초하여(예를 들면, 시뮬레이팅된 혼합된 자손의 시뮬레이팅된 게놈 서열에서 공지된 조상 기원의 분포에 기초하여) 그리고 각각의 후보 조상 기원에 대한 머신 러닝 모델(200)에 의해 출력되는 예측된 확률에 기초하여 그 SNP 세그먼트에 대해 결정될 수 있다. 수학식 6을 참조하면, 이벤트(x)는 후보 조상 기원의 세트(예를 들면, 아프리카, 동아시아, 유럽)일 수 있고, P(x)는 각각의 후보 조상 기원의 예상된 확률일 수 있고, 반면, Q(x)는 각각의 후보 조상 기원에 대해 머신 러닝 모델에 의해 출력되는 예측된 확률일 수 있다.
몇몇 예에서, 트레이닝 동작은, 다음과 같이, 예측기 서브모델(206)과 관련되는 제1 교차 엔트로피 손실 함수 및 평활화 서브모델(208)과 관련되는 제2 교차 엔트로피 손실 함수의 선형 조합을 포함할 수 있는 결합된 교차 엔트로피 손실 함수에 기초할 수 있다:
Figure pct00006
수학식 7에서,
Figure pct00007
는 예측기 서브모델(206)과 관련되는 제1 교차 엔트로피 손실 함수를 포함할 수 있다. 제1 교차 엔트로피 손실 함수(
Figure pct00008
)는 트레이닝 데이터의 SNP의 세그먼트에 대한 예측기 서브모델에 의해 출력되는 초기 조상 기원 추정치(
Figure pct00009
)(예를 들면, 각각의 후보 조상 기원에 대한 예측된 확률)를 그들의 실제 조상 기원(y)(예를 들면, 각각의 조상 기원에 대한 예상된 확률)과 비교하여 제1 손실 구배 를 생성할 수 있는데, 제1 손실 구배는 제1 교차 엔트로피 손실 함수를 최소화하도록 예측기 서브모델(206)의 완전히 연결된 신경망에서 가중치를 조정하기 위해 사용될 수 있다. 또한, 제2 교차 엔트로피 손실 함수(
Figure pct00010
)는 트레이닝 데이터의 SNP의 세그먼트에 대한 예측기 서브모델에 의해 출력되는 최종 예측 결과(
Figure pct00011
)(예를 들면, 각각의 후보 조상 기원에 대한 예측된 확률)를 그들의 실제 조상 기원(y)(예를 들면, 각각의 조상 기원에 대한 예상된 확률)과 비교하여 제2 손실 구배를 생성할 수 있는데, 제2 손실 구배는 평활화 서브모델(208)의 CNN의 커널을 조정하기 위해 사용될 수 있다. λ1 > 0인 경우, 예측기 서브모델(206)의 출력(
Figure pct00012
)은 분류기에 의해 추정되는 확률을 나타내며, 그렇지 않으면, 분류기의 출력은 은닉 레이어로서 해석될 수 있다. 몇몇 예에서, λ1 및 λ2 각각은 1/2로 설정될 수 있다. 전체 머신 러닝 모델의 신경망은 Adam(아담) 옵티마이저, 확률론적 경사 하강법(stochastic gradient descent: SGD), rmsprop 등과 같은 다양한 옵티마이저, 및 100 에포크(epoch)에 걸친 0.01의 학습률을 사용하여 또한 트레이닝될 수 있다.
또한, 트레이닝 동작 동안, 트레이닝 데이터의 SNP의 각각의 세그먼트에 대한 예측기 서브모델(206)의 출력은 SNP의 세그먼트의 유용성 메트릭을 결정하기 위해 사용될 수 있다. 상기에서 설명되는 바와 같이, 가중된 평균화 연산의 일부로서, 평활화 서브모델(208)은 각각의 초기 조상 기원 추정치에 의해 표현되는 SNP의 세그먼트의 유용성 메트릭에 기초하여 각각의 초기 조상 기원 추정치에 가중치를 할당할 수 있다. 유용성 메트릭은, 예를 들면, 세그먼트의 소정의 SNP 부위에서의 SNP 변이체의 조상 기원이 정확하게 예측될 수 있는지의 여부를 반영할 수 있다. 유용성 메트릭은, 예를 들면, 모집단의 게놈의 세그먼트의 사전 예측 결과에 기초하여 결정될 수 있는 세그먼트에 대한 조상 기원의 예측 오차의 확률에 기초할 수 있다. 여기서, 제1 교차 엔트로피 손실 함수에 기초하여, 예측기 서브모델(206)에서의 예측 오차의 확률은 유용성 메트릭의 일부로서 각각의 세그먼트에 대해 결정될 수 있다. 확률 예측 오차는 평활화 서브모델(208)로 포워딩될 수 있고 제2 교차 엔트로피 손실 함수(
Figure pct00013
)의 출력과 결합되어 가중치를 업데이트할 수 있다.
상기 신경망의 예의 경우, 계산 효율성을 향상시키기 위해 파라미터의 수는 감소될 수 있다. 파라미터의 수를 감소시키기 위한 예시적인 기술은 가중치 공유, 가중치 인수분해, 가중치 양자화 등을 포함할 수도 있다. 또한, 분류 및 회귀 둘 모두를 동시에 제공하는 다중 태스크 시스템이 시스템의 출력의 수를 확장시키는 것에 의해 구현될 수 있다. 트레이닝은 분류 및 회귀 둘 모두 제공하도록 또한 적응될 수 있다.
F. 차원수 감소 연산으로부터의 데이터를 사용한 트레이닝
상기에서 설명되는 바와 같이, 예측기 서브모델(206)은 차원수 감소 연산으로부터 획득되는 트레이닝 데이터를 사용하여 트레이닝될 수 있다. 차원수 감소는 고차원 공간으로부터 저차원 공간으로의 데이터의 변환을 일반적으로 수반한다. 예측기 서브모델(206)의 경우, 저차원 표현은 SNP의 입력 세그먼트의 상이한 조상 기원 사이를 구별하는 출력 라벨로서 사용될 수 있다. 차원수 감소 연산의 예는, 예를 들면, 주 성분 분석(PCA), 커널 PCA, 오토인코더, T-분산 확률론적 이웃 임베딩(T-distributed Stochastic Neighbor Embedding: t-SNE), 균일한 매니폴드 근사 및 투영(uniform manifold approximation and projection: UMAP) 등을 포함한다.
도 5a는 주 성분 분석(PCA) 동작(500)의 예를 예시한다. 도 5a의 좌측 상에 도시된 바와 같이, 대상의 게놈 서열(502)는, 예를 들면, 특정한 SNP 부위(예를 들면, SNP 부위 0, SNP 부위 1, SNP 부위 2, ..., SNP 부위 n)를 나타내는 각각의 차원을 갖는 고차원 공간(504)에서 표현될 수 있다. 게놈이 백만 개의 SNP 부위를 갖는 경우, 고차원 공간(504)은 백만 개의 차원을 가질 수 있다. 게놈 서열은 차원에 의해 표현되는 SNP 부위에 대한 SNP 값을 나타내는 각각의 차원에서 좌표(예를 들면, 하나의 대립 유전자의 경우 0, 다른 대립 유전자의 경우 1)를 가질 수 있고, 각각의 차원에서의 좌표는 백만 개의 차원의 벡터를 형성할 수 있다. 혈통 좌표와 함께 사용하기 위한 트레이닝 세트를 생성할 때, 트레이닝 샘플(기준 대상)은 공지된 조상 기원을 갖는 순수 혈통일 수 있다.
PCA 동작(500)의 일부로서, 고차원 공간(504)에서 게놈 서열(502)를 나타내는 벡터에 대해, 차원 1 및 차원 2로 라벨링되는 두 개의 차원을 포함할 수 있는 저차원 공간(506)으로의 선형 변환이 수행될 수 있다. 변환은, 벡터의 몇몇 스칼라 투영에 의한 가장 큰 분산이 제1 주 성분일 수 있는 차원 1 상에 놓이고, 두 번째로 가장 큰 분산이 제2 주 성분일 수 있는 차원 2 상에 놓일 수 있도록 하는 그러한 것일 수 있다. 다른 예에서, 저차원 공간(506)은 두 개보다 더 많은 차원을 포함할 수 있다. 변환은 다음의 수학식에 의해 표현될 수 있다:
Figure pct00014
수학식 8에서, zi는 라벨 i 및 고차원 공간(504)에 정의되는 p 차원과 관련되는 게놈 서열을 나타내는 벡터일 수 있고, 반면, w는 p 차원 가중치 벡터(w1, w2, ... wp)일 수 있다. 또한, 주 성분 점수의 새로운 벡터(ti)는 zi와 w 사이의 내적(dot product)으로부터 생성될 수 있다. 주 성분 점수는 저차원 공간(506)에서 벡터(zi)의 좌표를 또한 나타낼 수 있다.
도 3b 및 도 3c를 다시 참조하면, PCA 동작이 기준 대상의 세트의 게놈 서열에 대해 수행되고 저차원 공간(506)에서의 그들의 좌표가 획득된 이후, 기준 대상의 세트의 게놈 서열 및 그들의 기준 좌표는 도 3a 내지 도 3d의 신경망을 트레이닝시키기 위해 사용될 수 있다. 트레이닝 동작의 일부로서, 가중치의 세트(W0, W1, ..., Wn-1)는 신경망에 의해(예를 들면, 출력 레이어(316 및 326 등)에 의해) 출력되는 좌표와 기준 대상의 세트의 게놈 서열의 각각의 SNP 세그먼트에 대한 기준 좌표 사이의 차이를 최소화하도록 업데이트된다. 트레이닝에서 사용되는 기준 대상의 전체 게놈 서열은 공지된 순수한 조상 기원, 인종, 혈통 등을 가질 수 있고, 그 결과, 게놈 서열의 모든 SNP 부위는 순수한 조상 기원, 인종, 또는 혈통을 나타내는 SNP 값을 지니고, 신경망은, 모든 SNP 부위에 대한 출력 좌표가 동일한 조상 기원, 인종, 혈통 등을 나타내도록 트레이닝될 수 있다. 신경망의 가중치가 트레이닝된 이후, 그 다음, 저차원 공간(506)에서 각각의 세그먼트의 좌표를 결정하기 위해, 새로운 대상의 SNP의 세그먼트가 신경망에 공급될 수 있다. 좌표는 그 세그먼트에 의해 나타내어지는 조상의 기원/인종/혈통을 반영할 수 있다.
PCA 동작을 통해, 게놈 서열(또는 SNP 부위의 세그먼트)는 다차원 공간, 예컨대, 저차원 공간(504)에서 좌표(혈통 좌표)의 세트에 의해 표현될 수 있다. 저차원 공간(506)에서의 차원이 고분산의 벡터의 투영을 나타내기 때문에, 이들 벡터는, 대상의 조상 기원 사이를 구별하는 게놈 서열의 중요한 피처(예를 들면, SNP 부위에서의 SNP 값의 패턴)에서의 차이를 강조하기 위해, 좌표의 세트로 인코딩될 수 있고, 그러한 중요한 피처에서 차이를 갖는 게놈 서열은 저차원 공간(346)에서 클러스터로 분리될 수 있다. 예를 들면, 도 5a에 도시된 바와 같이, 게놈 서열(502)는 저차원 공간(506)에서의 그들의 표현을 통해 클러스터(508a, 508b, 508c, 및 508d)로 집성될 수 있다. 각각의 클러스터는 상이한 조상 기원/인종/혈통에 대응할 수 있다. 새로운 대상의 SNP 세그먼트 좌표는, 그 세그먼트에 의해 표현되는 조상 기원/인종/혈통을 예측하기 위해, 이들 클러스터의 좌표와 비교될 수 있다.
도 5b는 도 2a 내지 도 2c의 머신 러닝 모델(200)을 트레이닝시키기 위해 트레이닝 데이터를 공급하기 위한 차원수 감소 연산의 다른 예를 예시한다. 도 5b에서, 트레이닝 데이터는, 입력 게놈 서열의 각각의 염색체 위치에서, 혈통 또는 조상 기원을 나타내는 좌표를 결정하도록 머신 러닝 모델(200)을 트레이닝시키기 위해 사용될 수 있다. 예를 들면, 머신 러닝 모델(200)은, PCA-1 및 PCA-2로 라벨링되는, 이차원을 갖는 이차원 공간의 각각의 염색체 포지션/SNP 부위에서 SNP에 대한 좌표를 생성하기 위해, 순수 혈통의 유럽 테리어(European terrier) 및 동아시아 유래의 개의 전체 게놈 서열을 사용하여 트레이닝될 수 있다. 각각의 전체 게놈 서열은 약 1백만개의 SNP 부위를 포함할 수도 있다. 다른 실시형태는 약 10,000개에서부터 약 1천만개까지의 SNP 부위를 사용할 수 있다. 전체 게놈 서열은 PCA-1차원에서 그리고 PCA-2차원에서 한 쌍의 좌표에 의해 표현된다. 차원수 감소 연산은 공간에 대해 2차원보다 더 많은 차원(예를 들면, 3차원 이상)을 생성할 수 있다는 것이 이해된다. 또한, SNP는 일반적으로 이중 대립 유전자이며, 전체 게놈 서열을 나타내는 벡터는 (0.1) 인코딩 또는 다른 인코딩을 사용할 수 있다.
도 5b의 상단은, 이차원 공간에서, 순수 혈통의 유럽 테리어 및 동아시아 유래의 개를 비롯한, PCA에 의해 생성되는 기준 대상의 전체 게놈 서열의 좌표의 분포의 그래프(510)를 예시한다. 그래프에 도시된 바와 같이, 유럽 테리어는 PCA-1차원을 따라 상대적으로 높은 좌표값(예를 들면, 0 내지 80)을 갖는 경향이 있고, PCA-2차원을 따라 상대적으로 낮은 좌표(예를 들면, -20 내지 0)를 갖는 경향이 있다. 대조적으로, 동아시아 유래의 개는 PCA-2차원을 따라 상대적으로 높은 좌표값(예를 들면, 20 내지 80)을 갖는 경향이 있고 PCA-1차원을 따라 상대적으로 낮은 좌표값(예를 들면, 0 내지 20)을 갖는 경향이 있다.
도 5b의 저부는, 트레이닝된 머신 러닝 모델(200)에 의해 출력되는 PCA-1차원 및 PCA-2차원을 따라 새로운 대상의 각각의 염색체 포지션에 대한 좌표값을 나타내는 그래프(512a 및 512b)를 예시한다. 머신 러닝 모델(200)은 그래프(510)에 도시된 PCA-1 및 PCA-2차원을 따라 기준 대상의 전체 게놈 서열 및 그들의 기준 좌표를 사용하여 트레이닝될 수 있다. 그래프(512a 및 512b)에 도시된 바와 같이, 염색체 포지션(0 내지 K) 사이의 염색체의 제1 영역에 대한 좌표값은 PCA-1차원에서 상대적으로 높은 좌표값을 가질 수도 있고 PCA-2차원에서 상대적으로 낮은 좌표값을 가질 수도 있는데, 이것은 염색체의 제1 영역이 유럽 테리어로부터 유래할 수도 있다는 것을 나타낼 수 있다. 또한, K에서부터 300k까지의 염색체의 제2 영역은 PCA-1차원에서 상대적으로 낮은 좌표값을 가질 수도 있고 PCA-1차원에서 상대적으로 높은 좌표값을 가질 수도 있는데, 이것은 염색체의 제2 영역이 동아시아 유래의 개로부터 유래할 수도 있다는 것을 나타낼 수 있다. 특히, 각각의 영역(또는 슬라이딩 윈도우)은 PCA-1 및 PCA-2에 대한 특정한 값으로 매핑될 수 있는데, 그 특정한 값은, 그 다음, 혈통의 공지된 좌표에 비교될 수 있다. 새로운 테스트 대상의 좌표와 기준 대상의 좌표 사이의 거리는 주어진 영역에 대한 유사도의 레벨을 제공할 수 있다.
G. 예측 및 평활화 서브모델로서의 의사 결정 트리
신경망 외에, 예측기 서브모델(206) 및 평활화 서브모델(208)은 의사 결정 트리와 같은 다른 기술을 사용하여 구현될 수 있다. 신경망과 비교하여, 의사 결정 트리의 트레이닝 및 실행은 계산 집약도가 더 낮을 수 있고 더 많은 병렬 실행을 허용할 수 있는데, 이것은 의사 결정 트리를 사용하여 구축되는 머신 러닝 모델이, 더 적은 계산 리소스 및/또는 더 낮은 대역폭을 갖는 플랫폼을 비롯하여, 다양한 하드웨어 플랫폼 상에서 실행 및 트레이닝되는 것을 허용한다. 이것은 로컬 조상 추론 동작의 액세스 가능성을 추가로 향상시킬 수 있다. 몇몇 예에서, 신경망과 의사 결정 트리의 조합은 예측기 서브모델(206) 및 평활화 서브모델(208) 둘 모두에서 구현될 수 있다.
도 6a는 입력 SNP 서열 {s0, s1}에 관한 의사 결정을 생성하도록 구성될 수 있는 의사 결정 트리(600)의 예를 예시한다. 의사 결정은, 예를 들면, 특정한 조상 기원을 갖는 입력 SNP 서열의 확률, 입력 SNP 서열의 조상 기원의 지리적 좌표 등을 포함할 수 있다. 의사 결정 트리의 하나의 예는, 예를 들면, XGBoost 트리를 포함할 수도 있다.
도 6a에 도시된 바와 같이, 의사 결정 트리(600)는 루트 노드(602)와 같은 루트 노드뿐만 아니라, 자식 노드(604, 606, 608 및 610)와 같은 자식 노드를 포함할 수 있다. 자식 노드(예를 들면, 노드(602 및 604))를 갖는 각각의 부모 노드는 입력 SNP 서열을 자식 노드로 분류하기 위한 사전 결정된 분류 기준(예를 들면, s0, s1 또는 이들 둘 모두의 조합에 대한 임계치)과 관련될 수 있다. 자식 노드를 갖지 않는 자식 노드는 말단 노드이다. 말단 노드는 노드(606, 608 및 610)를 포함하는데, 각각은 의사 결정 트리에 의해 출력되는 의사 결정과 관련된다. 도 6a의 예에서, 의사 결정 트리(600)는 3의 깊이를 가질 수 있다. 의사 결정 트리(600)는 두 개의 SNP의 서열을 프로세싱할 수 있고 특정한 조상 기원(예를 들면, 아프리카, 동아시아, 또는 유럽 중 하나)을 갖는 입력 SNP 서열의 확률을 생성할 수 있으며, 노드(606, 608 및 610) 각각은 확률(P0, P1, 및 P2)과 각각 관련된다. 부모 노드에서의 기준의 조합에 기초하여, 의사 결정 트리(600)는 입력 SNP 서열의 상이한 패턴에 대해 상이한 확률을 출력할 수 있다. 의사 결정 트리(600)는 예시적인 예로서 제공된다는 것을 주목한다. 예측기 서브모델(206)에 사용되는 의사 결정 트리는 상이한 수의 노드, 상이한 깊이를 가질 수 있고, 서열의 상이한 수의 SNP를 프로세싱할 수 있다는 것이 이해된다.
도 2a를 다시 참조하면, 예측기 유닛(216a)과 같은 예측기 유닛은 다수의 의사 결정 트리를 포함할 수 있다. 각각의 의사 결정 트리는 SNP 세그먼트의 상이한 서브세트를 프로세싱하도록 할당될 수 있고, 의사 결정 트리에 의해 출력되는 의사 결정은 결합되어 초기 조상 기원 추정치를 생성할 수 있는데, 이것은 SNP 세그먼트가 각각의 후보 조상 기원으로 분류될 확률, SNP 세그먼트의 조상 기원 로케일의 지리적 좌표 등을 포함할 수 있다.
도 6b는 의사 결정 트리에 기초하여 구현되는 예측기 유닛(216a)의 예를 예시한다. 도 6b에 도시된 바와 같이, 예측기 유닛(216a)은 의사 결정 트리(600a, 600b, 600c, 600n 등)을 포함하는 복수의 의사 결정 트리를 포함한다. 각각의 의사 결정 트리는 상이한 트리 구조(예를 들면, 상이한 수의 부모 노드 및 자식 노드, 상이한 깊이 등)뿐만 아니라, 상이한 의사 결정 기준을 가질 수 있다. 각각의 의사 결정 트리는 입력 세그먼트(204a)의 SNP의 서브세트를 프로세싱하도록 할당될 수 있다. 의사 결정 트리(600a)는 의사 결정 트리 출력(612a)을 생성하도록 프로세스 서브세트(610a)에 할당될 수 있고, 의사 결정 트리(600b)는 의사 결정 트리 출력(612b)을 생성하도록 프로세스 서브세트(610b)에 할당될 수 있고, 의사 결정 트리(600c)는 의사 결정 트리 출력(612c)을 생성하도록 프로세스 서브세트(610c)에 할당될 수 있고, 반면, 의사 결정 트리(600n)는 의사 결정 트리 출력(612n)을 생성하도록 프로세스 서브세트(610n)에 할당될 수 있다. 의사 결정 트리(600a-n) 각각은 상이한 트리 구조, 상이한 분류 기준 등을 가질 수 있다. 또한, 상이한 예측기 유닛은 상이한 수의 의사 결정 트리를 또한 가질 수 있으며, 의사 결정 트리는 상이한 예측기 유닛 사이에서 상이한 트리 구조 및 분류 기준을 가질 수 있다.
예측기 유닛(216a)은 의사 결정 트리 출력을 초기 조상 기원 추정치(218a)로 결합하기 위한 출력 결합기(620)를 더 포함한다. 몇몇 예에서, 출력 결합기(620)는, 예를 들면, 확률 추정치를 생성하기 위해 의사 결정 트리에 의한 의사 결정 트리 출력을 평균화/합산하는 것에 기초하여 초기 조상 기원 추정치(218a)를 생성할 수 있다. 몇몇 예에서, 예측기 유닛(216a)은 회귀자로서 구성될 수 있고, 출력 결합기(620)는 회귀 모델 파라미터에 기초하여 의사 결정 트리 출력의 가중된 합계를 수행하여 입력 세그먼트에 대한 조상 기원 로케일의 지리적 좌표를 생성할 수 있다.
예측기 서브모델(206) 외에, 평활화 서브모델(208)이 의사 결정 트리에 기초하여 또한 구현될 수 있다. 도 6c는 복수의 의사 결정 트리(630)를 포함하는 평활화 서브모델(208)의 예를 예시한다. 각각의 의사 결정 트리(630)(예를 들면, 의사 결정 트리(630a, 630m 등)는 도 6a에 도시된 의사 결정 트리(600)와 유사한 구조(예를 들면, 부모 및 자식 노드를 포함함)를 가질 수 있다. 각각의 의사 결정 트리는 초기 조상 기원 추정치(218)을 프로세싱하여, 의사 결정 트리 출력(632)을 생성하도록 할당될 수 있다. 각각의 의사 결정 트리 출력은 입력 조상 기원 추정치(218)의 가중된 버전을 나타낼 수 있는데, 각각의 가중치는 커널(예를 들면, 도 4a의 커널(402))의 가중치를 나타낸다. 평활화 서브모델(208)은 의사 결정 트리 출력을 결합하기 위한 출력 결합기(640)를 더 포함한다. 출력 결합기(640)는, 예를 들면, 의사 결정 트리 출력을 합산하여 최종 예측 결과(220)를 생성할 수 있다.
의사 결정 트리(630)는, 출력 결합기(640)와 함께, 도 4a에서와 같이 슬라이딩 윈도우에 기초하여 평활화 함수를 수행할 수 있다. 예를 들면, 도 6c에 도시된 바와 같이, 의사 결정 트리(630)는 초기 조상 기원 추정치(218a 내지 218i-1), 초기 조상 기원 추정치(218i), 및 초기 조상 기원 추정치(218i+1 내지 218m)를 포함하는 윈도우에 포함되는 초기 조상 기원 추정치의 세트를 프로세싱하여, 목표 초기 조상 기원 추정치(218i)를 대체할 최종 예측 결과(220i)를 생성하도록 할당될 수 있다. 윈도우는 목표 초기 조상 기원 추정치(218i)를 중심으로 하도록 구성될 수 있다. 예를 들면, 윈도우는 목표 초기 조상 기원 추정치(218i) 전후에 k(예를 들면, 50)개의 초기 조상 기원 추정치를 포함할 수 있다. 다음 번 최종 예측 결과를 위해, 초기 조상 기원의 상이한 윈도우가 의사 결정 트리(630)에 입력되어 최종 예측 결과를 생성할 수 있다.
H. 의사 결정 트리 서브모델의 트레이닝
예측기 서브모델(206) 및 평활화 서브모델(208)의 의사 결정 트리는, 아프리카, 동아시아, 및 유럽의 다양한 로케일로부터의 개인을 비롯하여, 공지된 조상 기원의 모집단의 전체 게놈 데이터로부터 유도되는 트레이닝 데이터를 사용하여 트레이닝될 수 있다. 이들 개인의 전체 게놈 서열로부터, 이들 개인의 시뮬레이팅된 혼합된 자손의 시뮬레이팅된 게놈 서열은 일련의 세대에 걸친 Wright-Fisher 순방향 시뮬레이션에 기초하여 생성된다. 광범위한 세대를 갖는 이들 개인의 시뮬레이팅된 혼합된 자손의 게놈 서열을 포함하는 트레이닝 데이터의 세트뿐만 아니라, 시뮬레이팅된 게놈 서열의 SNP 세그먼트의 공지된 조상 기원이 머신 러닝 모델을 트레이닝시키고 유효성 확인하기 위해 사용될 수 있는데, 이것은 머신 러닝 모델이 트레이닝 데이터에서 반영되는 상이한 DNA 부위에서의 SNP 변이체의 패턴과 그들의 조상 기원 사이의 관계로부터 학습하여 로컬 조상 추론을 수행하는 것을 허용한다.
예측기 서브모델(206) 및 평활화 서브모델(208)의 의사 결정 트리는 구배 트리 부스팅 동작에 기초하여 트레이닝될 수 있다. 구체적으로, 트레이닝 동작은 제1 의사 결정 출력(예를 들면, 조상 기원 추정치, 조상 기원 로케일의 지리적 좌표 등)을 트레이닝 데이터의 SNP의 세그먼트와 적합시키기 위해 제1 의사 결정 트리를 생성하는 것으로 시작될 수 있다. 제1 의사 결정 트리의 제1 의사 결정 출력과 실측 자료(ground truth) 사이의 차이를 나타낼 수 있는 잔차의 제1 세트가 결정될 수 있다. 제1 의사 결정 트리의 제1 의사 결정 출력에 의해 제공되는 실측 자료/목표 조상 기원과 SNP 세그먼트 사이의 제1 회귀 관계는 다음과 같을 수 있다:
Figure pct00015
수학식 9에서, Y는 실측 자료/목표 조상 기원이고, 반면, f1(x)은 트레이닝 데이터의 SNP 세그먼트를 Y에 관련시키는 회귀 모델을 나타낸다. 제1 의사 결정 트리에 의한 회귀 추정치와 실측 자료/목표 조상 기원 사이의 차이를 나타내는 잔차의 제1 세트는 다음과 같을 수 있다:
Figure pct00016
그 다음, 잔차의 제1 세트에 걸쳐 제2 의사 결정 출력을 적합시키기 위해, 제2 의사 결정 트리가 생성되어 트레이닝될 수 있다. 예를 들면, 제2 의사 결정 트리는, 제1 의사 결정 트리에 입력되는 SNP의 동일한 세그먼트에 대해, 잔차의 제1 세트와 가능한 한 많이 매치하는 제2 의사 결정 출력을 생성하도록 트레이닝될 수 있다. 제2 의사 결정 트리의 제2 의사 결정 출력에 의해 제공되는, 잔차의 제1 세트와 SNP 세그먼트 사이의 제2 회귀 관계는 다음과 같을 수 있다:
Figure pct00017
제2 의사 결정 트리에 의한 회귀 추정치와 잔차의 제1 세트 사이의 차이를 나타내는 잔차의 제2 세트는 다음과 같을 수 있다:
Figure pct00018
그 다음, 제3 의사 결정 트리가 생성되고 잔차의 제2 세트에 대해 제3 의사 결정 출력을 적합시키도록 트레이닝될 수 있다. 트레이닝 프로세스는, 예를 들면, 사전 결정된 수의 트리에 도달될 때까지, 잔차의 사전 결정된 임계 레벨이 달성될 때까지 등까지 반복될 수 있다. 의사 결정 트리 출력을 잔차와 적합시키기 위한 새로운 의사 결정 트리의 추가를 통해, 의사 결정 트리는 SNP와 조상 기원 추정치 및/또는 조상 기원 로케일의 지리적 좌표 사이의 관계의 회귀 모델을, 다음과 같이, 표현할 수 있다:
Figure pct00019
예측기 서브모델(206) 및 평활화 서브모델(208)의 의사 결정 트리는 별개의 구배 트리 부스팅 동작에서 별개로 트레이닝될 수 있고 상이한 학습률을 가질 수 있다. 예를 들면, 예측기 서브모델(208)은 0.1의 학습률에 기초하여 트레이닝될 수 있고, 반면, 평활화 서브모델(208)은 0.3의 학습률에 기초하여 트레이닝될 수 있다.
신경망과 비교하여, 의사 결정 트리의 트레이닝 및 실행은 계산 집약도가 더 낮을 수 있고 더 많은 병렬 실행을 허용할 수 있는데, 이것은 의사 결정 트리를 사용하여 구축되는 머신 러닝 모델이, 더 적은 계산 리소스 및/또는 더 낮은 대역폭을 갖는 플랫폼을 비롯하여, 다양한 하드웨어 플랫폼 상에서 실행 및 트레이닝되는 것을 허용한다. 이것은 로컬 조상 추론 동작의 액세스 가능성을 추가로 향상시킬 수 있다. 또한, 머신 러닝 모델의 강건성은, 회귀 동작에 기초하여 SNP의 세그먼트의 조상 기원 로케일의 지리적 좌표를 추정하기 위해 모델이 회귀자로서 트레이닝될 때 향상될 수 있는데, 이것은 심지어 밀접한 관련된 모집단에 대해서도 유용한 조상 추정치를 제공할 수 있다.
몇몇 예에서 도 6a 내지 도 6c에 도시된 의사 결정 트리는, 상기 도 5a 및 도 5b에서 설명되는 바와 같이, 조상 기원/혈통을 나타내기 위해, 좌표, 또는 코드를 생성하기 위한 회귀자로서 또한 트레이닝될 수 있다. 의사 결정 트리는 순수 혈통 대상, 또는 모든 SNP 세그먼트에 대한 단일의 조상 기원을 갖는 대상의 전체 게놈 서열을 나타내는 벡터, 및 벡터에 대한 차원수 감소 연산을 통해 획득되는 다차원 공간에서의 기준 좌표를 사용하여 트레이닝될 수 있다.
II. 실험 결과
A. 신경망에 기초한 로컬 조상 추론
예측기 서브모델(206)로서 은닉 레이어를 갖는 완전히 연결된 신경망뿐만 아니라, 평활화 서브모델(208)로서 컨볼루션 신경망을 포함하는, 도 3a 내지 도 3c의 머신 러닝 모델(200)의 예가 개발되어 트레이닝된다. 트레이닝 데이터는 동아시아(EAS), 아프리카(AFR) 및 유럽(EUR) 조상으로부터의 총 1668명의 단일의 모집단 개인의 전체 게놈 서열로부터 유도된다. 동아시아 그룹은 다음의 개인으로 구성된다: 103명의 중국 베이징의 중국 한족(CHB), 104명의 일본 도쿄의 일본인(JPT), 105명의 중국 남부 한족(CHS), 93명의 중국 시솽반나(Xishuangbanna)의 중국 다이족(Chinese Dai)(CDX) 및 99명의 베트남 호치민의 킨족(Kinh)(KHV). 아프리카 그룹은 다음의 개인으로 구성된다: 108명의 나이지리아 이바단(Ibadan)의 요루바족(Yoruba)(YRI), 99명의 케냐 웨부예(Webuye)의 루히아족(Luhya)(LWK), 113명의 감비아 서부 구역의 감비아인(Gambian)(GWD), 85명의 시에라리온의 멘데족(Mende)(MSL), 99명의 나이지리아 에산족(Esan)(ESN), 61명의 미국 남서부의 아프리카 조상의 미국인(ASW) 및 96명의 바베이도스의 아프리카 카리브인(ACB). 마지막으로, 유럽 그룹은 다음의 하위 모집단으로 구성된다: 북부 및 서부 유럽 조상(CEU)을 갖는 99명의 유타주 거주인(CEPH), 107명의 이탈리아 토스카나인(Toscani)(TSI), 99명의 핀란드의 핀란드인(FIN), 91명의 영국인 및 스코틀랜드의 영국인(GBR) 및 107명의 스페인 이베리아인 모집단(IBS).
이들 개인의 전체 게놈을 사용하여, 일련의 세대에 걸친 Wright-Fisher 순방향 시뮬레이션을 사용하여 시뮬레이팅된 혼합된 자손의 게놈 데이터가 획득한다. 특히, 1668명의 단일의 모집단 개인으로부터, 1328명이 선택되어 트레이닝을 위한 600명의 혼합된 개인을 생성하였고, 170명이 사용되어 유효성 확인을 위한 400명의 혼합된 개인을 생성하였고, 나머지 170명이 사용되어 테스트를 위한 400명의 혼합된 개인을 생성하였다. 유효성 확인 및 테스트 세트는 17개의 상이한 조상 각각에 대해 10명의 개인을 사용하여 생성되었다. 트레이닝 세트의 600명의 혼합된 개인은 2, 4, 16, 32 및 64세대 이후에 생성된 100명의 개인 그룹에 의해 구성되었다. 유효성 확인 및 테스트 세트의 400명의 혼합된 개인이 각각 6, 12, 24 및 48세대를 가지고 생성되었다.
게놈 데이터는 트레이닝 데이터 세트, 유효성 확인 데이터 세트, 및 테스트 데이터 세트로 분할된다. 전체 머신 러닝 모델(예측기 서브모델(206) 및 평활화 서브모델(208)을 포함함)은 트레이닝 데이터 세트를 사용하여 그리고 수학식 7의 결합된 교차 엔트로피 손실 함수에 기초하여 트레이닝된다. 또한, 결합된 교차 엔트로피 손실 함수의 파라미터(예를 들면, λ1 및 λ2), 예측기 유닛에 의해 프로세싱되는 SNP 서열의 수, 윈도우에 포함되는 초기 조상 기원 추정치의 수, 은닉 레이어 사이즈, 평활화 커널 사이즈 등과 같은 머신 러닝 모델의 다양한 하이퍼 파라미터가 유효성 확인 데이터 세트로부터 결정될 수 있다. 그 다음, 테스트 데이터 세트는, 트레이닝 이후 그리고 유효성 확인 데이터에 기초하여 업데이트되는 하이퍼 파라미터를 사용하여, 머신 러닝 모델을 테스트하기 위해 사용된다.
1. 테스트 및 유효성 확인 결과
아래의 표 1은, 평활화 동작이 있는 또는 없는 상태에서의, 도 3a 및 도 3b(은닉 레이어 없음)의 그리고 도 3c(은닉 레이어 있음)의 머신 러닝 모델(200)의 예의 염색체 20에 대한 정확도 결과를 제시한다.
Figure pct00020
상기 표 1은 신경망에 기초한 머신 러닝 모델(200)이 최첨단 성능을 달성할 수 있다는 것을 시사한다. 단지 두 개 및 세 개의 레이어만을 가지면, 네트워크의 모델 사이즈는 약 10 Mb(은닉 레이어 없음) 및 약 100 Mb(은닉 레이어 있음)이다. 모델 둘 모두는 염색체 20으로부터의 데이터를 사용하여 여기에서 트레이닝되었으며, 그들의 사이즈는 더 큰 염색체와 함께 선형적으로 확장될 수 있다.
2. 누락 데이터 강건성
유전자형 데이터와 함께 동작하는 애플리케이션은 유전자형 오차에 기인하여 노이즈가 있는 또는 불완전한 데이터에 일반적으로 직면한다. 다른 경우에, 상이한 상용 유전자형 어레이에 기인하여 SNP의 서브세트만이 이용 가능할 수도 있다. 따라서, 누락 데이터에 대한 강건성은 중요한 요소이다. 누락된 데이터를 핸들링함에 있어서 머신 러닝 모델(200)의 강건성을 향상시키기 위해, 머신 러닝 모델은 누락된 입력 SNP의 상이한 백분율을 사용하여 트레이닝 및 테스트될 수 있다. 네트워크의 구조는 변경되지 않았으며 누락된 라벨은 트레이닝 및 테스트 둘 모두에서 입력 데이터에 드롭아웃을 적용하는 것에 의해 모델링되었다(즉, 누락된 SNP는 0으로 설정됨).
아래의 표 2는, 평활화 서브모델(208)이 있는 또는 없는 상태에서의, 상이한 백분율의 누락된 입력 SNP를 사용한 도 3a 내지 도 3c의 머신 러닝 모델(200)에 의한 조상 기원 추정치의 정확도 값을 제시한다.
Figure pct00021
정확도 결과는, 심지어 입력 SNP의 50%가 누락되는 경우에도, 네트워크는 정확도의 상당한 손실 없이 조상을 정확하게 추론할 수 있다는 것을 시사한다. 다른 이점은 배치 동안 입력 SNP의 단지 50%만이 사용되는 경우, 모델 파라미터의 절반만이 저장될 필요가 있고 데이터의 절반만이 프로세싱될 필요가 있다는 것이다. 이것은 누락된 데이터를 성가심으로부터, 입력으로서 입력 SNP의 수의 어떤 분율을 필요로 하는 더 작고 더 빠른 네트워크를 설계하기 위한 피처로 변환한다.
3. 페이징(phasing) 오차 강건성
인간은, 각각의 부모로부터 하나씩의 두 개의 완전한 게놈의 사본을 지닌다. 현재의 시퀀싱 기술은 통상적으로 두 개의 이웃하는 SNP 변이체가 동일한 서열(모계 또는 부계)에 속하는지 또는 반대 서열에 속하는지의 여부를 확인할 수 없다. 즉, 판독된 염기 쌍은 부계 또는 모계 서열에 적절하게 할당될 수 없다. 그들의 올바른 서열에 변이체를 할당하는 것은 페이징(phasing)으로 공지되어 있으며, 기준 모집단에서 이웃하는 SNP 변이체 대립 유전자 사이의 관찰된 상관 관계에 기초하여 이 문제를 해결하기 위해 통계적 알고리즘이 개발되었다.
도 3a 내지 도 3c의 머신 러닝 모델(200)의 예는 상이한 백분율의 페이징 오차를 포함하는 데이터를 사용하여 트레이닝 및 테스트될 수 있다. 이들 오차를 모델링하기 위해, 게놈 서열은 모계 및 부계 서열에서 염기 쌍이 달랐던 위치에서 랜덤하게 교환된다. 다시 말하면, SNP를 -1과 1로 인코딩한 이후, 부계 및 모계가 1 및 -1 또는 그 반대인 위치에서 SNP의 부호가 확률(p)을 가지고 스위칭되었다.
표 3은, p의 상이한 값이 트레이닝 및 평가를 위해 사용되었을 때, 평활화 서브모델(208)이 있는 또는 없는 상태에서의 머신 러닝 모델(200)의 정확도 결과를 제시한다. 결과는, 네트워크가 작은 레벨 및 중간 레벨의 페이징 오차를 핸들링할 수 있지만, 그러나 매우 높은 페이징 오차(~ 40%)가 존재하는 경우 정확도가 상당히 감소한다는 것을 시사한다.
Figure pct00022
B. 의사 결정 트리에 기초한 로컬 조상 추론
예측기 서브모델(206) 및 평활화 서브모델(208)의 의사 결정 트리를 포함하는 도 5a 내지 도 5c의 머신 러닝 모델(200)의 예가 개발되고 트레이닝된다. 머신 러닝 모델은 XGBoost 시스템에 기초하여 구현될 수 있다. 트레이닝 데이터는 동아시아(EAS), 아프리카(AFR) 및 유럽(EUR) 조상으로부터의 총 318명의 단일의 모집단 개인의 전체 게놈 서열로부터 유도된다. 아프리카 그룹은, 108명의 나이지리아 이바단 출신의 요루바족(YRI)으로 구성되었고, 동아시아 그룹은 중국 베이징 출신의 103명의 중국 한족(CHB)으로 구성되었고, 그리고 유럽 그룹은 107명의 스페인 사람 개인(IBS)으로 구성되었다.
이들 개인의 전체 게놈을 사용하여, 일련의 세대에 걸친 Wright-Fisher 순방향 시뮬레이션을 사용하여 시뮬레이팅된 혼합된 자손의 게놈 데이터가 획득한다. 특히, 318명의 단일 모집단 개인으로부터, 258명을 선택되어 트레이닝을 위한 600명의 혼합된 개인을 생성하였다. 열 명의 개인이 선택되어 유효성 확인을 위한 300명의 혼합된 개인을 생성하였고 나머지 열 명이 선택되어 테스트를 위한 300명의 혼합된 개인을 생성하였다. 600명의 혼합된 개인으로 구성되는 트레이닝 세트는 2, 8, 12, 32, 48 및 64 세대에 의해 생성되는 100명의 개인의 6 개 그룹으로 구성된다. 각각 300명의 혼합된 개인으로 구성되는 유효성 확인 및 테스트 세트는 4, 16, 및 24 세대에 의해 생성되는 100명의 개인의 세 개의 그룹으로 구성된다.
추가적으로, 까다로운 혼합된 개인과 직면했을 때 방법의 성능의 정성적 평가를 수행하기 위해 밀접하게 위치된(그리고 유전적으로 유사한) 모집단을 갖는 데이터세트. 400명의 시뮬레이팅된 혼합된 개인은 다음을 포함하는 아시아 전역에 위치되는 모집단을 사용하여 생성된다: 182명의 중국 한족(CHB 및 CHS), 83명의 중국 다이족(CDX), 89명의 베트남 킨족(KHV), 94명의 일본인(JPT), 93명의 구자라트 인디언(Gujarati Indian)(GIH), 86명의 파키스탄 펀자브인(Punjabi)(PJL), 76명의 방글라데시 벵골인(Bengali)(BEB), 92명의 스리랑카 타밀족(Tamil)(STU) 및 92명의 인도 텔루구족(Telugu)(ITU). 모집단마다 총 10명의 개인이 사용되어 테스트를 위한 200명의 개인을 생성하였다. 나머지 개인이 사용되어 트레이닝을 위한 200명의 혼합된 개인을 생성하였다. 트레이닝 및 테스트 개인 둘 모두는 2 세대 및 4 세대 이후에 생성되었다. 로컬 조상 추론 방법이, 개인의 혼합 이력(혼합 이후 상이한 세대 시간)에 관계없이, 개인으로부터 조상을 정확하게 추정해야만 하기 때문에, 광범위한 세대에 걸쳐 시뮬레이팅되는 혼합된 개인을 사용하여 방법을 트레이닝시키고 평가하는 것이 중요하다.
게놈 데이터는 트레이닝 데이터 세트, 유효성 확인 데이터 세트, 및 테스트 데이터 세트로 분할된다. 전체 머신 러닝 모델(예측기 서브모델(206) 및 평활화 서브모델(208)을 포함함)은 상기에서 설명되는 바와 같은 구배 트리 부스팅 동작에 기초하여 트레이닝 데이터 세트를 사용하여 트레이닝된다. 또한, 의사 결정 트리에 의해 프로세싱되는 SNP의 수, 각각의 예측기 유닛에 포함되는 의사 결정 트리의 수, 트리의 레벨, 학습률 등과 같은 머신 러닝 모델의 다양한 하이퍼 파라미터는 유효성 확인 데이터 세트에 기초할 수 있다. 그 다음, 테스트 데이터 세트는, 트레이닝 이후 그리고 유효성 확인 데이터에 기초하여 업데이트되는 하이퍼 파라미터를 사용하여, 머신 러닝 모델을 테스트하기 위해 사용된다.
1. 테스트 및 유효성 확인 결과
아래의 표 4는, 평활화 동작이 있는 또는 없는 상태에서의, 분류 모델 및 회귀 모델로서 트레이닝되는 도 6a 내지 도 6c의 머신 러닝 모델(200)의 예의 염색체 20에 대한 정확도 결과를 제시한다.
Figure pct00023
테스트는, 분류 모델 또는 회귀 모델로서 구성되는 의사 결정 트리 기반의 머신 러닝 모델 둘 모두가 분류 모델과 회귀 모델 사이에서 유의미한 차이 없이 최첨단 정확도를 달성할 수 있다는 것을 시사한다.
2. 누락 데이터 강건성
도 6a 내지 도 6c의 머신 러닝 모델(200)의 예는 누락된 SNP 데이터를 핸들링함에 있어서의 그들의 성능에 대해 또한 테스트된다. 유전자형 데이터는 유전자형 오차에 기인하여 불완전할 수 있거나, 또는 사용되는 상용 유전자형 어레이에 따라 SNP의 서브세트만이 이용 가능할 수도 있다. 따라서, 누락된 SNP 데이터에 대해 강건한 방법이 선호된다. 아래의 표 5는 상이한 백분율의 누락된 입력 SNP를 사용하여 분류기로서 트레이닝되는 도 6a 내지 도 6c의 머신 러닝 모델(200)의 예측 정확도를 제시한다.
Figure pct00024
상기 표 5는, 심지어 입력 SNP의 80%가 누락되는 경우에도 머신 러닝 모델이 정확도의 유의미한 손실 없이 조상을 추정할 수 있다는 것을 시사한다. 이것은 또한, 배포 시간 및 효율성이 가장 중요한 경우, 입력 데이터의 작은 분율(예를 들면, 20%)만을 사용하는 가볍고 빠른 방법의 개발을 가능하게 한다.
3. 밀접하게 관련된 동물 모집단 및 작물에 대한 조상 기원 추정
SNP 세그먼트의 조상 기원의 지리적 좌표를 결정하기 위한 회귀 모델로서 구성되는 의사 결정 트리 기반의 머신 러닝 모델(200)의 정성적 평가가 또한 수행된다. 분류 기반의 접근법이 밀접하게 관련된 모집단에서 실패하지만(이 데이터세트에서 ~15% 정확도를 획득함), 좌표 회귀 기반의 모델은 개인의 조상의 의미 있는 표현을 제공할 수 있다.
도 6a 및 도 6b는 모든 아시아 모집단에 대해 트레이닝되는 머신 러닝 모델(200)을 사용한 이중 조상이 혼합된 개인의 추정된 밀도 맵의 예를, 각각 포인트 클라우드 맵 및 등고선 맵의 형태로, 예시한다. 다수의 조상 기원을 가진 작물/동물의 유사한 밀도 맵이 머신 러닝 모델(200)을 사용하여 또한 획득될 수 있다.
4. 확장된 실험 결과
또한, 각각의 의사 결정 트리에 의해 프로세싱되는 SNP의 수, 평활화 윈도우 사이즈, 및 시뮬레이팅된 혼합 이후의 세대 시간과 같은, 의사 결정 트리 기반의 머신 러닝 모델(200)의 예측 정확도에 대한 다양한 영향이 연구된다.
아래의 표 6은 혼합 이후 상이한 수의 세대로부터의 개인에 대한 평활화 윈도우 사이즈의 영향을 예시한다. 결과는, 혼합에 후속하여 큰 세 대 값을 갖는 개인을 제외하면, 더 큰 평활화 윈도우 사이즈가 더 나은 정확도를 제공한다는 것을 나타낸다. 이것은, 혼합 프로세스가 많은 세대 이전에 발생한 개인이 많은 조상 스위치를 가질 것이기 때문일 수 있다. 결과적으로, 이들 개인은 조상 기원이 일정하게 유지되는 SNP의 작은 조각만을 갖는다. 그러한 시나리오에서, 먼 윈도우로부터의 정보는 유용하지 않으며 더 큰 평활화 윈도우 사이즈는 예측 정확도를 향상시키지 못할 수도 있다. 다른 한편으로, 혼합 프로세스가 최근에 발생한 개인의 경우, 조상 전환 빈도가 통상적으로 낮고, 먼 게놈 영역은 여전히 정보를 제공할 수도 있다.
Figure pct00025
하기 표 7은 윈도우에서 각각의 예측기 유닛에 의해 프로세싱되는 SNP의 수와 관련하여 평활화를 포함하는 것의 효과를 나타낸다. 작은 윈도우 사이즈(500개의 SNP)의 경우, 평활화가 있는 상태와 없는 상태에서의 정확도 차이가 상당히 크다(~7%)는 것을 관찰할 수 있다. 그러나, 큰 윈도우 사이즈(2000개의 SNP)를 사용하는 경우, 정확도 차이는 더 낮다(~8%). 정확도에서의 차이는, 예를 들면, 더 큰 윈도우 사이즈가 SNP 사이의 관계를 더 멀리 캡처할 수 있는 것에 기인할 수 있다.
Figure pct00026
표 6 및 표 7에서 관찰될 수 있는 일반적인 거동은, 혼합 프로세스에 후속하는 세대의 수가 증가함에 따라 정확도가 감소한다는 것이다. 이것은 더 큰 세대 수가 더 많은 조상 스위치를 의미하고 따라서 일정한 조상 기원을 갖는 더 짧은 서열을 의미하기 때문에, 스위치는 검출하기가 더 어려워지기 때문일 수 있다.
표 8은 혼합된 시뮬레이팅된 데이터세트 둘 모두에서의 의사 결정 트리 기반의 머신 러닝 모델(200)의 평균 절대 오차를 예시한다. 절대 오차는 모델에 의해 출력되는 지리적 좌표(위도 및 경도)에서의 오차의 관점에서 측정된다. 조상 내에서의 지리적 거리가 대륙 데이터세트 아프리카/동아시아/유럽("AFR-EUR-EAS")에서 더 크지만, 방법이 세 개의 발산하는 조상 사이에서 적절하게 구별될 수 있기 때문에, 평균 오차는 더 낮다. 아시아 데이터세트 내에서, 관련된(국가 내의) 조상은 로컬 조상 접근법을 통해 구별하기에 매우 어렵고, 더 높은 평균 오차로 이어진다.
Figure pct00027
III. 방법
도 8은 대상(예를 들면, 사람)의 게놈의 상이한 부분에 대한 조상 기원을 결정하기 위한 방법(800)의 플로우차트를 예시한다. 방법(800)은 컴퓨터에 의해 구현될 수 있다.
도 8은, 컴퓨터가 컴퓨터의 메모리에 도 2a의 머신 러닝 모델(200)과 같은 트레이닝된 머신 러닝 모델을 저장하는 단계(802)에서 시작한다. 머신 러닝 모델은 예측기 서브모델(예를 들면, 예측기 서브모델(206)) 및 평활화 서브모델(예를 들면, 평활화 서브모델(208))을 포함한다. 예측기 서브모델은, 예를 들면, 복수의 분류기, 복수의 회귀자 등을 포함할 수도 있다. 분류기는, 세그먼트가 특정한 조상 기원으로부터 유래하는 확률(이진수 0 및 1을 포함함)을 식별할 수 있고; 그러한 확률은 후보 조상 기원 카테고리의 사전 결정된 목록 각각에 대해 결정될 수 있다. 세그먼트에 대한 초기 조상 기원 추정치는 가장 높은 확률을 갖는 후보 조상 기원 카테고리로서 결정될 수 있다. 또한, 회귀자는, 예를 들면, 서로 가까이 있는 특정한 로케일 내에서 정확한 결과를 제공하기 위해, 지리적 좌표, 또는 다른 타입의 식별자에 매핑하는 예측치를 제공할 수 있다. 각각의 분류기 및 회귀자는, 도 3a 내지 도 3c에 도시된 바와 같이, 신경망에 기초하여 구현될 수 있거나, 또는 도 6a 내지 도 6c에 도시된 바와 같이 의사 결정 트리의 세트에 기초하여 구현될 수 있다.
머신 러닝 모델은 공지된 조상 기원을 갖는 트레이닝 게놈 서열의 세그먼트에 기초하여 트레이닝될 수 있다. 머신 러닝 모델은 머신 러닝 모델에 의해 식별될 공지된 조상 기원의 모집단의 전체 게놈 데이터로부터 유도되는 트레이닝 데이터에 기초하여 트레이닝될 수 있다. 예를 들면, 머신 러닝 모델이 세그먼트를 아프리카, 동아시아, 유럽 중 하나로 분류해야 하는 경우, 트레이닝 데이터는 아프리카, 동아시아, 및 유럽의 다양한 로케일뿐만 아니라, 더 작은 지리적 영역으로부터의 개인의 게놈 데이터를 포함할 수 있다. 이들 개인의 전체 게놈 서열로부터, 일련의 세대에 걸친 시뮬레이션(예를 들면, Wright-Fisher 순방향 시뮬레이션)에 기초하여 이들 개인의 시뮬레이팅된 혼합된 자손의 시뮬레이팅된 게놈 서열이 생성될 수 있다. (예를 들면, 다수의 세대에 걸친) 이들 개인의 시뮬레이팅된 혼합된 자손의 게놈 서열뿐만 아니라, 시뮬레이팅된 게놈 서열의 세그먼트의 공지된 조상 기원을 포함하는 트레이닝 데이터의 세트가 머신 러닝 모델을 트레이닝시키고 유효성 확인하기 위해 사용될 수 있다. 트레이닝은, 예를 들면, 결합된 교차 엔트로피 손실 함수, 구배 트리 부스팅 동작 등에 기초할 수 있다.
단계(804)에서, 컴퓨터는 대상의 입력 게놈 서열을 나타내는 데이터를 수신하는데, 입력 게놈 서열은 대상의 게놈의 복수의 단일 뉴클레오타이드 다형성(SNP) 부위를 포함하는 복수의 세그먼트를 커버하고, 여기서 각각의 세그먼트는 SNP 부위에서의 SNP 값의 서열을 포함하고, 각각의 SNP 값은 SNP 부위에서의 변이체를 명시한다. 구체적으로, 데이터는 반수체 또는 이배체 DNA 서열로부터 획득될 수 있다. 데이터는, 예를 들면, 대상의 게놈 서열을 제공하는 게놈 시퀀싱 동작, DNA의 세그먼트를 포함하는 DNA 마이크로어레이 등으로부터 획득될 수 있다. 데이터에서의 일배체형 정보는, 예를 들면, 상이한 변이체에 대해 상이한 값을 포함하도록 인코딩될 수 있다. 제1 값은 대상이 SNP 부위에서 공통 변이체(예를 들면, -1의 값)를 갖는다는 것을 나타낼 수 있다. 제2 값은 대상이 SNP 부위에서 소수 변이체(예를 들면, +1의 값)를 갖는다는 것을 나타낼 수 있다. 제3 값(예를 들면, 0의 값)은 SNP 부위에서 게놈 정보가 누락된다는 것을 나타낼 수 있다.
단계(806)에서, 컴퓨터는, 예측기 서브모델을 사용하여 그리고 데이터에 기초하여, SNP 값의 각각의 세그먼트의 초기 조상 기원 추정치를 결정한다. 구체적으로, 몇몇 예에서, 각각의 분류기는 분류기 출력을 생성하기 위해 SNP의 비중첩 세그먼트에 대해 분류 동작을 수행할 수 있다. 각각의 분류기는 세그먼트의 확률이 각각의 후보 조상 기원 카테고리(예를 들면, 아프리카, 동아시아 및 유럽)로 분류될 확률을 결정할 수 있고, 분류기에 의해 출력되는 확률은 결합되어, 가장 높은 확률을 갖는 후보 조상 기원 카테고리에 기초하여, 초기 조상 기원 추정치를 출력할 수 있다.
또한, 몇몇 예에서, 각각의 회귀자는 SNP의 세그먼트의 SNP의 랜덤 서브세트에 대해 회귀 동작을 수행할 수 있는데, 이것은 결합되어 SNP의 세그먼트의 조상 기원을 나타내는 하나 이상의 기원 추정치를 출력할 수 있다. 하나 이상의 기원 추정치는, 예를 들면, 조상 기원 로케일의 지리적 좌표(예를 들면, 경도 및 위도), 조상 기원 로케일을 나타내는 코드 등을 포함할 수 있다. 게다가, 몇몇 예에서, 회귀자는 차원수 감소 연산으로부터 획득되는 다차원 공간에서의 좌표를 출력하도록 또한 트레이닝될 수 있는데, 좌표는 대상의 조상 기원/혈통을 나타낸다.
단계(808)에서, 컴퓨터는 각각의 세그먼트에 대한 조상 기원의 최종 예측 결과를 생성하기 위해 초기 조상 기원 추정치를 평활화할 수 있다. 복수의 세그먼트의 각각의 세그먼트에 대해, 컴퓨터는, 단계(808a)에서, 게놈에서 세그먼트와 이웃하는 이웃 세그먼트의 서브세트를 식별할 수 있다. 식별은, 도 4a 및 도 6c에 도시된 바와 같이, 최종 예측 결과에 의해 대체될 목표 초기 조상 기원 추정치를 사용하여 이동하는 슬라이딩 윈도우에 기초할 수 있다. 그 다음, 컴퓨터는, 단계(808b)에서, 평활화 서브모델에 이웃 세그먼트의 서브세트에 대한 초기 조상 기원 추정치를 입력할 수 있다. 그 다음, 컴퓨터는, 단계(808c)에서, 세그먼트의 조상 기원에 대한 최종 예측 결과를 획득하기 위해, 초기 조상 기원 추정치를 사용하여 세그먼트 및 이웃 세그먼트의 서브세트에 대해, 평활화 서브모델을 사용하여, 평활화 동작을 수행할 수 있다. 평활화 동작은 윈도우 내에서 초기 조상 기원 추정치의 가중된 평균을 계산하는 것을 포함할 수 있다. 몇몇 예에서, 가중치는 초기 조상 기원이 결정되는 세그먼트의 유용성 메트릭에 기초하여 각각의 초기 조상 기원에 할당될 수 있다. 평활화 서브모델은, 예를 들면, 컨볼루션 신경망, 의사 결정 트리의 세트 등을 포함할 수 있다.
IV. 컴퓨터 시스템
본 명세서에서 언급되는 컴퓨터 시스템 중 임의의 것은 임의의 적절한 수의 서브시스템을 활용할 수도 있다. 그러한 서브시스템의 예는 도 9의 컴퓨터 시스템(10)에서 도시된다. 몇몇 실시형태에서, 컴퓨터 시스템은 단일의 컴퓨터 장치를 포함하는데, 여기서 서브시스템은 컴퓨터 장치의 컴포넌트일 수 있다. 다른 실시형태에서, 컴퓨터 시스템은 다수의 컴퓨터 장치를 포함할 수 있는데, 각각은 내부 컴포넌트를 갖는 서브시스템이다. 컴퓨터 시스템은 데스크탑 및 랩탑 컴퓨터, 태블릿, 이동 전화 및 다른 모바일 디바이스를 포함할 수 있다. 몇몇 실시형태에서, 클라우드 인프라(infrastructure)(예를 들면, Amazon Web Services), 그래픽 프로세싱 유닛(graphical processing unit: GPU) 등이 개시된 기술을 구현하기 위해 사용될 수 있다.
도 9에 도시된 서브시스템은 시스템 버스(75)를 통해 인터커넥트된다. 프린터(74), 키보드(78), 스토리지 디바이스(들)(79), 디스플레이 어댑터(82)에 커플링되는 모니터(76), 및 기타와 같은 추가적인 서브시스템이 도시되어 있다. I/O 컨트롤러(71)에 커플링되는 주변장치 및 입력/출력(input/output: I/O) 디바이스는 입력/출력(I/O) 포트(77)(예를 들면, USB, FireWire®)와 같은 기술 분야에서 공지되어 있는 임의의 수의 수단에 의해 컴퓨터 시스템에 연결될 수 있다. 예를 들면, I/O 포트(77) 또는 외부 인터페이스(81)(예를 들면, 이더넷, Wi-Fi 등)는 컴퓨터 시스템(10)을 인터넷과 같은 광역 네트워크, 마우스 입력 디바이스, 또는 스캐너에 연결하기 위해 사용될 수 있다. 시스템 버스(75)를 통한 상호 접속은, 중앙 프로세서(73)가, 각각의 서브시스템과 통신하는 것 및 시스템 메모리(72) 또는 스토리지 디바이스(들)(79)(예를 들면, 고정식 디스크, 예컨대, 하드 드라이브, 또는 광학 디스크)로부터의 복수 명령어의 실행뿐만 아니라, 서브시스템 사이의 정보의 교환을 제어하는 것을 허용한다. 시스템 메모리(72) 및/또는 스토리지 디바이스(들)(79)는 컴퓨터 판독 가능 매체를 구체화할 수도 있다. 다른 서브시스템은 데이터 수집 디바이스(85), 예컨대, 카메라, 마이크, 가속도계, 및 등이다. 본 명세서에서 언급되는 데이터 중 임의의 것은 하나의 컴포넌트로부터 다른 컴포넌트로 출력될 수 있고 유저에게 출력될 수 있다.
컴퓨터 시스템은, 예를 들면, 외부 인터페이스(81)에 의해 또는 내부 인터페이스에 의해 함께 연결되는, 복수의 동일한 컴포넌트 또는 서브시스템을 포함할 수 있다. 몇몇 실시형태에서, 컴퓨터 시스템, 서브시스템, 또는 장치는 네트워크를 통해 통신할 수 있다. 그러한 인스턴스에서, 하나의 컴퓨터는 클라이언트로서 그리고 다른 컴퓨터는 서버로서 간주될 수 있는데, 여기서 각각은 동일한 컴퓨터 시스템의 일부일 수 있다. 클라이언트 및 서버 각각은 다수의 시스템, 서브시스템, 또는 컴포넌트를 포함할 수 있다.
실시형태의 양태는 하드웨어(예를 들면, 주문형 집적 회로 또는 필드 프로그래머블 게이트 어레이)를 사용하여 및/또는 모듈식 또는 통합 방식으로 일반적으로 프로그래밍 가능한 프로세서와 함께 컴퓨터 소프트웨어를 사용하여 제어 로직의 형태로 구현될 수 있다. 본 명세서에서 사용되는 바와 같이, 프로세서는 단일 코어 프로세서, 동일한 집적 칩 상의 다중 코어 프로세서, 또는 단일의 회로 기판 상의 또는 네트워크화되는 다수의 프로세싱 유닛을 포함한다. 본 명세서에서 제공되는 본 개시 및 교시에 기초하여, 기술 분야에서 통상의 기술을 가진 자는 하드웨어 및 하드웨어와 소프트웨어의 조합을 사용하여 본 개시내용의 실시형태를 구현하는 다른 방식 및/또는 방법을 이해할 것이고 인식할 것이다.
이 애플리케이션에서 설명되는 소프트웨어 컴포넌트 또는 기능 중 임의의 것은, 예를 들면, 종래의 또는 객체 지향 기술을 사용하여, 예를 들면, Java, C, C++, C#, Objective-C, Swift와 같은 임의의 적절한 컴퓨터 언어, 또는 Perl 또는 Python과 같은 스크립팅 언어를 사용하여 프로세서에 의해 실행될 소프트웨어 코드로서 구현될 수도 있다. 소프트웨어 코드는 저장 및/또는 송신을 위해 컴퓨터 판독 가능 매체 상에서 일련의 명령어 또는 커맨드로서 저장될 수도 있다. 적절한 비일시적 컴퓨터 판독 가능 매체는 랜덤 액세스 메모리(random access memory: RAM), 리드 온리 메모리(read only memory: ROM), 하드 드라이브 또는 플로피 디스크와 같은 자기 매체, 또는 컴팩트 디스크(compact disk: CD) 또는 DVD(digital versatile disk: 디지털 다기능 디스크), 플래시 메모리, 및 등과 같은 광학 매체를 포함할 수 있다. 컴퓨터 판독 가능 매체는 그러한 저장 또는 송신 디바이스의 임의의 조합일 수도 있다.
그러한 프로그램은 또한, 인터넷을 비롯하여, 다양한 프로토콜을 따르는 유선, 광학, 및/또는 무선 네트워크를 통한 송신을 위해 적응되는 캐리어 신호를 사용하여 인코딩 및 송신될 수도 있다. 그러한 만큼, 그러한 프로그램으로 인코딩되는 데이터 신호를 사용하여 컴퓨터 판독 가능 매체가 생성될 수도 있다. 프로그램 코드로 인코딩되는 컴퓨터 판독 가능 매체는 호환 가능한 디바이스와 함께 패키징될 수도 있거나 또는 다른 디바이스와는 별개로 (예를 들면, 인터넷 다운로드를 통해) 제공될 수도 있다. 임의의 그러한 컴퓨터 판독 가능 매체는 단일의 컴퓨터 제품(예를 들면, 하드 드라이브, CD 또는 전체 컴퓨터 시스템) 상에서 또는 내에서 상주할 수도 있고, 시스템 또는 네트워크 내의 상이한 컴퓨터 제품 상에서 또는 내에서 존재할 수도 있다. 컴퓨터 시스템은 본 명세서에서 언급되는 결과 중 임의의 것을 유저에게 제공하기 위한 모니터, 프린터, 또는 다른 적절한 디스플레이를 포함할 수도 있다.
본 명세서에서 설명되는 방법 중 임의의 것은, 단계를 수행하도록 구성될 수 있는 하나 이상의 프로세서를 포함하는 컴퓨터 시스템을 사용하여 전체적으로 또는 부분적으로 수행될 수도 있다. 따라서, 실시형태는, 잠재적으로 각각의 단계 또는 단계의 각각의 그룹을 수행하는 상이한 컴포넌트와 함께, 본 명세서에서 설명되는 방법 중 임의의 것의 단계를 수행하도록 구성되는 컴퓨터 시스템에 관한 것일 수 있다. 비록 번호가 매겨진 단계로서 제시되지만, 본 명세서에서의 방법의 단계는 동시에 또는 상이한 순서로 수행될 수 있다. 추가적으로, 이들 단계의 일부는 다른 방법으로부터의 다른 단계의 일부와 함께 사용될 수도 있다. 또한, 단계의 전체 또는 일부는 옵션 사항일 수도 있다. 추가적으로, 방법 중 임의의 것의 단계 중 임의의 것은 이들 단계를 수행하기 위한 모듈, 유닛, 회로, 또는 다른 수단을 사용하여 수행될 수 있다.
특정한 실시형태의 특정한 세부 사항은, 본 개시내용의 실시형태의 취지 및 범위로부터 벗어나지 않으면서 임의의 적절한 방식으로 조합될 수도 있다. 그러나, 본 개시내용의 다른 실시형태는 각각의 개개의 양태에 관련이 있는 특정한 실시형태, 또는 이들 개개의 양태의 특정한 조합에 관한 것일 수도 있다.
본 개시내용의 예시적인 실시형태의 상기 설명은 예시 및 설명의 목적을 위해 제시되었다. 그것은 망라하도록 또는 본 개시내용을 설명되는 정확한 형태로 제한하도록 의도되지 않으며, 상기 교시에 비추어 많은 수정 및 변동이 가능하다.
단수형태의 기재는, 구체적으로 그렇지 않다고 지시되지 않는 한, "하나 이상"을 의미하도록 의도된다. "또는"의 사용은, 구체적으로 그렇지 않다고 지시되지 않는 한, "배타적 또는"이 아닌 "포괄적 또는"을 의미하도록 의도된다. "제1" 컴포넌트에 대한 언급은 반드시 제2 컴포넌트가 제공되어야 한다는 것을 규정하는 것은 아니다. 또한, "제1" 또는 "제2" 컴포넌트에 대한 언급은, 명시적으로 언급되지 않는 한, 언급된 컴포넌트를 특정한 위치로 제한하지는 않는다.
본 명세서에서 언급되는 모든 특허, 특허 출원, 간행물 및 설명은 모든 목적을 위해 그들 전체가 참조에 의해 통합된다. 어느 것도 선행 기술로 인정되지 않는다.
이 설명에는, 소정의 실시형태에 관한 추가적인 정보를 포함하는 부록이 첨부되어 있다. 부록에서 사용되는 다른 용어는 또한 (아직) 업계에서 일반적으로 사용되는 용어가 아닐 수도 있다.

Claims (30)

  1. 대상(subject)의 게놈의 상이한 부분에 대한 조상 기원(ancestral origin)을 결정하기 위한 컴퓨터 구현 방법으로서,
    트레이닝된 머신 러닝 모델을 저장하는 단계로서, 상기 머신 러닝 모델은 예측기 서브모델(predictor sub-model) 및 평활화 서브모델(smoothing sub-model)을 포함하고, 상기 머신 러닝 모델은 공지된 조상 기원을 갖는 트레이닝 게놈 서열의 세그먼트에 기초하여 트레이닝되는, 상기 트레이닝된 머신 러닝 모델을 저장하는 단계;
    상기 대상의 입력 게놈 서열을 나타내는 데이터를 수신하는 단계로서, 상기 입력 게놈 서열은 상기 대상의 상기 게놈의 복수의 단일 뉴클레오타이드 다형성(single nucleotide polymorphism: SNP) 부위(site)를 포함하는 복수의 세그먼트를 커버하고, 각각의 세그먼트는 상기 SNP 부위에서의 SNP 값의 서열을 포함하고, 각각의 SNP 값은 상기 SNP 부위에서의 변이체(variant)를 명시하는, 상기 데이터를 수신하는 단계;
    상기 예측기 서브모델을 사용하여 그리고 상기 데이터에 기초하여, SNP 값의 각각의 세그먼트의 초기 조상 기원 추정치를 결정하는 단계; 및
    상기 복수의 세그먼트의 각각의 세그먼트에 대해,
    상기 게놈에서 상기 세그먼트와 이웃하는 이웃 세그먼트의 서브세트를 식별하는 단계;
    상기 평활화 서브모델에, 상기 이웃 세그먼트의 서브세트에 대한 상기 초기 조상 기원 추정치를 입력하는 단계; 및
    상기 평활화 서브 모델에 의해, 상기 세그먼트의 상기 조상 기원에 대한 최종 예측 결과를 획득하기 위해, 상기 초기 조상 기원 추정치를 사용하여 상기 세그먼트 및 상기 이웃 세그먼트의 서브세트에 대해 평활화 동작을 수행하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서, 상기 예측기 서브모델은 하나 이상의 예측기 유닛을 포함하고; 그리고
    각각의 세그먼트의 상기 초기 조상 기원 추정치를 결정하는 단계는 상기 복수의 세그먼트 중 상이한 세그먼트의 SNP 값의 서열을 상기 하나 이상의 예측기 유닛에 입력하여 초기 조상 기원 추정치를 생성하는 단계를 포함하되, 상기 초기 조상 기원 추정치는 분류 출력 또는 좌표 출력 중 하나를 포함하고;
    상기 분류 출력은, 복수의 후보 조상 기원 카테고리 중, 상기 예측기 유닛에 입력되는 상기 세그먼트의 조상 기원 카테고리를 나타내고; 그리고
    상기 좌표 출력은 상기 세그먼트의 혈통(breed) 또는 조상 기원을 나타내는 좌표를 포함하는, 방법.
  3. 제2항에 있어서, 상기 좌표는 물리적 공간에서 상기 조상 기원의 로케일(locale)의 지리적 좌표를 포함하는, 방법.
  4. 제2항에 있어서, 상기 좌표는 혈통 좌표를 포함하고; 그리고
    상이한 혈통의 대상은 상기 상이한 혈통의 상기 대상의 게놈 서열로부터 생성되는 상이한 혈통 좌표를 갖는, 방법.
  5. 제4항에 있어서, 상기 혈통 좌표는 다차원 공간에서 정의되되, 상기 다차원 공간은 SNP 부위의 인코딩에 대한 차원 감소 연산(dimension reduction operation)으로부터 획득되는 차원에 의해 정의되고; 그리고
    상기 예측기 서브모델은 기준 대상의 게놈 서열을 나타내는 벡터 및 상기 벡터에 대해 상기 차원 감소 연산을 수행하는 것으로부터 획득되는 기준 혈통 좌표를 사용하여 트레이닝되는, 방법.
  6. 제2항 내지 제5항 중 어느 한 항에 있어서, 각각의 세그먼트의 상기 초기 조상 기원 추정치를 결정하는 단계는,
    상기 복수의 후보 조상 기원 각각에 대해, 상기 세그먼트가 상기 후보 조상 기원으로 분류될 확률을 결정하는 단계; 및
    가장 높은 확률을 갖는 상기 후보 조상 기원을 상기 세그먼트의 상기 조상 기원으로서 선택하는 단계
    를 포함하는, 방법.
  7. 제2항 내지 제6항 중 어느 한 항에 있어서, 상기 예측기 서브모델은 단일의 예측기 유닛을 포함하고; 그리고
    각각의 세그먼트의 상기 초기 조상 기원 추정치를 결정하는 단계는, 상기 복수의 세그먼트 중 상이한 세그먼트의 SNP 값의 서열뿐만 아니라, 상기 SNP 값의 서열와 관련되는 세그먼트 인덱스를 상기 예측기 유닛에 입력하여, 초기 조상 기원 추정치를 생성하는 단계를 포함하는, 방법.
  8. 제2항 내지 제7항 중 어느 한 항에 있어서,
    각각의 예측기 유닛은 신경망 모델을 포함하고;
    상기 신경망 모델은,
    복수의 입력 노드를 포함하는 입력 레이어로서, 각각의 입력 노드는 상기 예측기 유닛에 입력되는 상기 세그먼트의 SNP 값을 수신하고, 각각의 입력 노드는 상기 SNP 값을 상기 입력 레이어의 가중치를 사용하여 스케일링하는, 상기 입력 레이어, 및
    복수의 출력 노드를 포함하는 출력 레이어로서, 상기 출력 노드 각각은 상기 스케일링된 SNP 값의 합에 기초한 입력을 수신하고 상기 입력에 기초하여 출력을 생성하는, 상기 출력 레이어
    를 포함하고; 그리고
    각각의 예측기 유닛으로부터의 상기 초기 조상 기원 추정치는 상기 예측기 유닛의 상기 출력 노드의 상기 출력에 기초하여 생성되는, 방법.
  9. 제8항에 있어서, 각각의 예측기 유닛에서,
    상기 출력 레이어의 각각의 출력 노드는 상기 복수의 후보 조상 기원 중 하나에 대응하고; 그리고
    각각의 출력 노드의 상기 출력은 상기 세그먼트가 상기 대응하는 후보 조상 기원으로 분류된다는 것을 나타내는, 방법.
  10. 제8항 또는 제9항에 있어서, 각각의 예측기 유닛에서,
    상기 출력 레이어의 각각의 출력 노드는, 조상 기원 로케일의 지리적 좌표의 성분을 출력하고; 그리고
    상기 입력 노드에 의한 상기 SNP 값의 상기 스케일링은 회귀 모델에 기초하는, 방법.
  11. 제8항 내지 제10항 중 어느 한 항에 있어서, 각각의 출력 노드는 활성화 함수를 더 포함하고; 그리고
    상기 출력은 상기 입력에 상기 활성화 함수를 적용하는 것에 기초하여 생성되는, 방법.
  12. 제8항 내지 제11항 중 어느 한 항에 있어서, 각각의 예측기 유닛에서, 상기 출력 노드 각각은 상기 복수의 입력 노드 각각으로부터의 상기 스케일링된 SNP 값의 합계를 상기 입력으로서 수신하는, 방법.
  13. 제8항 내지 제12항 중 어느 한 항에 있어서, 각각의 예측기 유닛에서,
    상기 신경망 모델은 복수의 중간 노드를 포함하는 은닉 레이어를 더 포함하고;
    상기 중간 노드 각각은 상기 복수의 입력 노드 각각으로부터의 상기 스케일링된 SNP 값의 합계를 수신하고 상기 은닉 레이어의 가중치를 사용하여 상기 합계를 스케일링하는 것에 기초하여 중간 출력을 생성하고; 그리고
    출력 노드 각각은 상기 중간 노드 각각으로부터의 상기 중간 출력을 입력으로서 수신하는, 방법.
  14. 제13항에 있어서, 후보 조상 기원 각각은 복수의 복수의 로케일과 관련되고;
    상기 중간 노드 각각은 상기 후보 조상 기원의 상기 복수의 로케일 중 한 로케일에 대응하고; 그리고
    중간 노드의 상기 중간 출력은 상기 세그먼트가 상기 대응하는 로케일로 분류되는지의 여부를 나타내는, 방법.
  15. 제1항 내지 제14항 중 어느 한 항에 있어서, 상기 평활화 서브모델은 컨볼루션 신경망 모델(convolutional neural network model)을 포함하고; 그리고
    상기 평활화 동작은 상기 컨볼루션 신경망 모델에 의해 슬라이딩 윈도우에 포함되는 상기 초기 조상 기원 추정치의 서브세트와 커널 사이에서 컨볼루션 연산(convolution operation)을 수행하는 것에 기초하는, 방법.
  16. 제15항에 있어서, 상기 슬라이딩 윈도우에 포함되는 각각의 초기 조상 기원 추정치는, 상기 초기 조상 기원이 생성되는 상기 세그먼트의 사전 결정된 유용성 메트릭(usefulness metric)을 나타내는 가중치에 의해 스케일링되고; 그리고
    상기 컨볼루션 연산은 상기 커널과 상기 스케일링된 초기 조상 기원 추정치 사이에서 수행되는, 방법.
  17. 제16항에 있어서, 세그먼트의 상기 유용성 메트릭은 상기 세그먼트가 위치되는 상기 게놈의 상기 부위와 관련되는 예측 오차율에 기초하여 결정되는, 방법.
  18. 제2항 내지 제17항 중 어느 한 항에 있어서,
    상기 하나 이상의 예측기 유닛의 각각의 예측기 유닛은 복수의 의사 결정 트리(decision tree)를 포함하고;
    각각의 의사 결정 트리는 상기 예측기 유닛에 입력되는 상기 세그먼트의 SNP의 상이한 서브세트를 수신하고 상기 SNP의 서브세트에 기초하여 의사 결정 트리 출력을 생성하고; 그리고
    각각의 예측기 유닛으로부터의 상기 초기 조상 기원 추정치는 상기 복수의 의사 결정 트리의 상기 의사 결정 트리 출력에 기초하여 생성되는, 방법.
  19. 제17항에 있어서, 각각의 예측기 유닛에서, 상기 의사 결정 트리 출력은 결합되어, 상기 초기 조상 기원 추정치로서, 회귀 모델에 기초하여 조상 기원 로케일의 지리적 좌표를 생성하는, 방법.
  20. 제18항 또는 제19항에 있어서, 각각의 예측기 유닛에서, 상기 의사 결정 트리 출력은 결합되어, 상기 복수의 후보 조상 기원 각각에 대해, 상기 후보 조상 기원을 갖는 상기 예측기 유닛에 입력되는 상기 세그먼트의 확률을 생성하고; 그리고
    상기 복수의 후보 조상 기원 중에서 가장 높은 확률과 관련되는 상기 후보 조상 기원은 상기 예측기 유닛의 상기 초기 조상 기원 추정치로서 선택되는, 방법.
  21. 제17항 내지 제20항 중 어느 한 항에 있어서, 상기 평활화 서브모델은 복수의 의사 결정 트리를 포함하는, 방법.
  22. 제1항 내지 제20항 중 어느 한 항에 있어서, 상이한 세그먼트는 중첩되지 않는, 방법.
  23. 제1항 내지 제22항 중 어느 한 항에 있어서,
    상기 머신 러닝 모델은 결합된 교차 엔트로피 손실 함수(combined cross-entropy loss function)에 기초한 트레이닝 동작에서 트레이닝되되, 상기 결합된 교차 엔트로피 손실 함수는 제1 교차 엔트로피 손실 함수와 제2 교차 엔트로피 손실 함수의 선형 조합이고;
    상기 제1 교차 엔트로피 손실 함수는 SNP의 트레이닝 서열의 세그먼트의 실측 자료 조상 기원(ground truth ancestral origin)을 SNP의 상기 트레이닝 서열의 상기 세그먼트에 대한 상기 예측기 서브모델에 의해 출력되는 초기 조상 기원 추정치와 비교하여, 제1 비교 결과를 생성하고;
    상기 예측기 서브모델의 가중치는 상기 제1 비교 결과에 기초하여 업데이트되고;
    상기 제2 교차 엔트로피 손실 함수는 SNP의 상기 트레이닝 서열의 상기 세그먼트의 상기 실측 자료 조상 기원을 SNP의 상기 트레이닝 서열의 상기 세그먼트에 대한 상기 평활화 서브모델에 의해 출력되는 최종 예측 결과와 비교하여, 제2 비교 결과를 생성하고; 그리고
    상기 평활화 서브모델의 가중치는 상기 제2 비교 결과에 기초하여 업데이트되는, 방법.
  24. 제1항 내지 제21항 중 어느 한 항에 있어서, 상기 머신 러닝 모델은 복수의 의사 결정 트리를 포함하고; 그리고
    상기 머신 러닝 모델은, SNP 서열의 패턴을 조상 기원에 관련시키는 회귀 모델에 상기 복수의 의사 결정 트리를 적합화시키는 구배 트리 부스팅 동작(gradient tree boosting operation)에 기초하여 트레이닝되는, 방법.
  25. 제1항 내지 제24항 중 어느 한 항에 있어서, 애플리케이션이, 상기 최종 예측 결과 및 상기 SNP의 서열에 기초하여, 상기 대상의 질병의 위험을 결정하는 것 및 상기 위험을 출력하는 것을 가능하게 하기 위해, 상기 최종 예측 결과를 상기 애플리케이션으로 포워딩하는 단계를 더 포함하는, 방법.
  26. 상기 방법 중 임의의 방법의 동작을 수행하도록 컴퓨터 시스템을 제어하기 위한 복수의 명령어를 저장하는 컴퓨터 판독 가능 매체를 포함하는 컴퓨터 제품.
  27. 시스템으로서,
    제26항의 상기 컴퓨터 제품; 및
    상기 컴퓨터 판독 가능 매체 상에 저장되는 명령어를 실행하기 위한 하나 이상의 프로세서
    를 포함하는, 시스템.
  28. 상기 방법 중 임의의 방법을 수행하기 위한 수단을 포함하는 시스템.
  29. 상기 방법 중 임의의 방법을 수행하도록 구성되는 시스템.
  30. 상기 방법 중 임의의 방법의 상기 단계를 각각 수행하는 모듈을 포함하는 시스템.
KR1020227038840A 2020-04-15 2021-04-15 머신 러닝 모델을 사용한 로컬 조상 추론 KR20230004566A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063010467P 2020-04-15 2020-04-15
US63/010,467 2020-04-15
PCT/US2021/027478 WO2021211840A1 (en) 2020-04-15 2021-04-15 Local-ancestry inference with machine learning model

Publications (1)

Publication Number Publication Date
KR20230004566A true KR20230004566A (ko) 2023-01-06

Family

ID=78084632

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227038840A KR20230004566A (ko) 2020-04-15 2021-04-15 머신 러닝 모델을 사용한 로컬 조상 추론

Country Status (6)

Country Link
US (1) US20230197204A1 (ko)
EP (1) EP4136247A4 (ko)
JP (1) JP2023521893A (ko)
KR (1) KR20230004566A (ko)
AU (1) AU2021254788A1 (ko)
WO (1) WO2021211840A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114512185B (zh) * 2022-01-13 2024-04-05 湖南大学 一种变异数据降维输入的驴种群自然选择分类系统
CN114999573B (zh) * 2022-04-14 2023-07-07 哈尔滨因极科技有限公司 一种基因组变异检测方法及检测系统
CN115186776B (zh) * 2022-09-13 2022-12-13 国检中心深圳珠宝检验实验室有限公司 一种红宝石产地分类的方法、装置及存储介质
CN117437976B (zh) * 2023-12-21 2024-04-02 深圳人体密码基因科技有限公司 基于基因检测的疾病风险筛查方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1130114A1 (en) * 2000-03-03 2001-09-05 Dr. van Haeringen Laboratorium B.V. Universal variable fragments
US9670530B2 (en) * 2014-01-30 2017-06-06 Illumina, Inc. Haplotype resolved genome sequencing
WO2016193891A1 (en) * 2015-05-30 2016-12-08 Ancestry.Com Dna, Llc Discovering population structure from patterns of identity-by-descent
US10332028B2 (en) * 2015-08-25 2019-06-25 Qualcomm Incorporated Method for improving performance of a trained machine learning model
US20180305757A1 (en) * 2015-10-16 2018-10-25 The Regents Of The University Of California Repetitive Element (RE)-based Genome Analysis and Dynamic Genetics Surveillance Systems

Also Published As

Publication number Publication date
EP4136247A4 (en) 2024-05-15
WO2021211840A1 (en) 2021-10-21
JP2023521893A (ja) 2023-05-25
EP4136247A1 (en) 2023-02-22
AU2021254788A1 (en) 2022-10-13
US20230197204A1 (en) 2023-06-22

Similar Documents

Publication Publication Date Title
KR20230004566A (ko) 머신 러닝 모델을 사용한 로컬 조상 추론
Qu et al. Supervised cluster analysis for microarray data based on multivariate Gaussian mixture
Gower et al. Detecting adaptive introgression in human evolution using convolutional neural networks
Shah et al. Data mining and genetic algorithm based gene/SNP selection
Lee et al. Gene selection and sample classification on microarray data based on adaptive genetic algorithm/k-nearest neighbor method
WO2003100557A2 (en) Computer systems and methods for subdividing a complex disease into component diseases
JP2008546046A (ja) マハラノビスの距離の遺伝的アルゴリズムの方法及びシステム
US20190347567A1 (en) Methods for data segmentation and identification
Montserrat et al. Lai-net: Local-ancestry inference with neural networks
Han et al. Heuristic hyperparameter optimization of deep learning models for genomic prediction
Peña-Malavera et al. Comparison of algorithms to infer genetic population structure from unlinked molecular markers
Fortes‐Lima et al. Complex genetic admixture histories reconstructed with Approximate Bayesian Computation
Zhu et al. Genomic prediction of growth traits in scallops using convolutional neural networks
Moore et al. Symbolic discriminant analysis for mining gene expression patterns
Nguembang Fadja et al. Identification of natural selection in genomic data with deep convolutional neural network
Lee et al. Survival prediction and variable selection with simultaneous shrinkage and grouping priors
US20230326542A1 (en) Genomic sequence dataset generation
Mesa et al. Hidden Markov models for gene sequence classification: Classifying the VSG gene in the Trypanosoma brucei genome
Qiu et al. Genomic processing for cancer classification and prediction-Abroad review of the recent advances in model-based genomoric and proteomic signal processing for cancer detection
Zhang et al. Ridge regression based hybrid genetic algorithms for multi-locus quantitative trait mapping
Videla et al. Relative performance of cluster algorithms and validation indices in maize genome-wide structure patterns
Budiarto et al. Explainable supervised method for genetics ancestry estimation
Nguyen Methods for inferring gene regulatory networks from time series expression data
US20240087755A1 (en) Creating synthetic patient data using a generative adversarial network having a multivariate gaussian generative model
Ramkumar et al. Research Article Healthcare Biclustering-Based Prediction on Gene Expression Dataset

Legal Events

Date Code Title Description
A201 Request for examination