KR20220143854A - 인공 지능 기반 다-대-다 염기 호출 - Google Patents

인공 지능 기반 다-대-다 염기 호출 Download PDF

Info

Publication number
KR20220143854A
KR20220143854A KR1020227029021A KR20227029021A KR20220143854A KR 20220143854 A KR20220143854 A KR 20220143854A KR 1020227029021 A KR1020227029021 A KR 1020227029021A KR 20227029021 A KR20227029021 A KR 20227029021A KR 20220143854 A KR20220143854 A KR 20220143854A
Authority
KR
South Korea
Prior art keywords
base
sequencing
cycle
during
current
Prior art date
Application number
KR1020227029021A
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 KR20220143854A publication Critical patent/KR20220143854A/ko

Links

Images

Classifications

    • CCHEMISTRY; METALLURGY
    • C12BIOCHEMISTRY; BEER; SPIRITS; WINE; VINEGAR; MICROBIOLOGY; ENZYMOLOGY; MUTATION OR GENETIC ENGINEERING
    • C12QMEASURING OR TESTING PROCESSES INVOLVING ENZYMES, NUCLEIC ACIDS OR MICROORGANISMS; COMPOSITIONS OR TEST PAPERS THEREFOR; PROCESSES OF PREPARING SUCH COMPOSITIONS; CONDITION-RESPONSIVE CONTROL IN MICROBIOLOGICAL OR ENZYMOLOGICAL PROCESSES
    • C12Q1/00Measuring or testing processes involving enzymes, nucleic acids or microorganisms; Compositions therefor; Processes of preparing such compositions
    • C12Q1/68Measuring or testing processes involving enzymes, nucleic acids or microorganisms; Compositions therefor; Processes of preparing such compositions involving nucleic acids
    • C12Q1/6869Methods for sequencing
    • 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
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • G16B30/20Sequence assembly
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0445
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • 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/10Signal processing, e.g. from mass spectrometry [MS] or from PCR
    • 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

Abstract

개시된 기술은 인공 지능 기반 염기 호출에 관한 것이다. 개시된 기술은 서열분석 런의 서열분석 사이클들 동안 생성된 사이클별 분석물 채널 세트들의 진행에 액세스하는 것, 특정 서열분석 사이클이 상이한 위치들에 나타난 다수의 윈도우들로부터, 신경 네트워크 기반 염기 호출자(NNBC)가 서열분석 런의 서열분석 사이클들의 대상 윈도우 동안의 진행 시에 사이클별 분석물 채널 세트들의 대상 윈도우를 프로세싱하고 서열분석 사이클들의 대상 윈도우 내의 3개 이상의 서열분석 사이클들 동안 임시 염기 호출 예측들을 생성하도록 NNBC를 통해, 서열분석 런의 서열분석 사이클들의 윈도우들 동안의 진행 시에 사이클별 분석물 채널 세트들의 윈도우들을 프로세싱하는 것, NNBC를 사용하여 특정 서열분석 사이클 동안 임시 염기 호출 예측들을 생성하는 것, 및 복수의 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안의 염기 호출을 결정하는 것에 관한 것이다.

Description

인공 지능 기반 다-대-다 염기 호출
개시된 기술은 지능의 에뮬레이션을 위한; 그리고 불확실성 추리 시스템들(예컨대, 퍼지 논리 시스템들), 적응적 시스템들, 기계 학습 시스템들, 및 인공 신경 네트워크들을 포함하는, 인공 지능 유형 컴퓨터들 및 디지털 데이터 프로세싱 시스템들, 및 대응하는 데이터 프로세싱 방법들 및 제품들(즉, 지식 기반 시스템들, 추리 시스템들, 및 지식 획득 시스템들)에 관한 것이다. 특히, 개시된 기술은 데이터를 분석하기 위한 심층 콘볼루션(deep convolutional) 신경 네트워크들과 같은 심층 신경 네트워크들을 사용하는 것에 관한 것이다.
우선권 출원
본 출원은 발명의 명칭이 "ARTIFICIAL INTELLIGENCE-BASED MANY-TO-MANY BASE CALLING"이고 2020년 2월 20일자로 출원된 미국 가특허 출원 제62/979,414호(대리인 문서 번호 ILLM 1016-1/IP-1858-PRV) 및 발명의 명칭이 "ARTIFICIAL INTELLIGENCE-BASED MANY-TO-MANY BASE CALLING"이고 2021년 2월 19일자로 출원된 미국 특허 출원 제17/180,542호(대리인 문서 번호 ILLM 1016-2/IP-1858-US)에 대한 우선권 및 그의 이익을 주장한다. 우선권 출원들은 이로써 모든 목적들을 위해 본 명세서에 완전히 설명된 것처럼 참고로 포함된다.
참조 문헌들
하기는 본 명세서에 완전히 설명된 것처럼 참고로 포함된다:
발명의 명칭이 "ARTIFICIAL INTELLIGENCE-BASED BASE CALLING OF INDEX SEQUENCES"이고 2020년 2월 20일자로 출원된 미국 가특허 출원 제62/979,384호(대리인 문서 번호 ILLM 1015-1/IP-1857-PRV);
발명의 명칭이 "KNOWLEDGE DISTILLATION-BASED COMPRESSION OF ARTIFICIAL INTELLIGENCE-BASED BASE CALLER"이고 2020년 2월 20일자로 출원된 미국 가특허 출원 제62/979,385호(대리인 문서 번호 ILLM 1017-1/IP-1859-PRV);
발명의 명칭이 "DETECTING AND FILTERING CLUSTERS BASED ON ARTIFICIAL INTELLIGENCE-PREDICTED BASE CALLS"이고 2020년 8월 28일자로 출원된 미국 가특허 출원 제63/072,032호(대리인 문서 번호 ILLM 1018-1/IP-1860-PRV);
발명의 명칭이 "MULTI-CYCLE CLUSTER BASED REAL TIME ANALYSIS SYSTEM"이고 2020년 2월 20일자로 출원된 미국 가특허 출원 제62/979,412호(대리인 문서 번호 ILLM 1020-1/IP-1866-PRV);
발명의 명칭이 "DATA COMPRESSION FOR ARTIFICIAL INTELLIGENCE-BASED BASE CALLING"이고 2020년 2월 20일자로 출원된 미국 가특허 출원 제62/979,411호(대리인 문서 번호 ILLM 1029-1/IP-1964-PRV);
발명의 명칭이 "SQUEEZING LAYER FOR ARTIFICIAL INTELLIGENCE-BASED BASE CALLING"이고 2020년 2월 20일자로 출원된 미국 가특허 출원 제62/979,399호(대리인 문서 번호 ILLM 1030-1/IP-1982-PRV);
발명의 명칭이 "TRAINING DATA GENERATION FOR ARTIFICIAL INTELLIGENCE-BASED SEQUENCING"이고 2020년 3월 20일자로 출원된 미국 가특허 출원 제16/825,987호(대리인 문서 번호 ILLM 1008-16/IP-1693-US);
발명의 명칭이 "ARTIFICIAL INTELLIGENCE-BASED GENERATION OF SEQUENCING METADATA"이고 2020년 3월 20일자로 출원된 미국 특허 출원 제16/825,991호(대리인 문서 번호 ILLM 1008-17/IP-1741-US);
발명의 명칭이 "ARTIFICIAL INTELLIGENCE-BASED BASE CALLING"이고 2020년 3월 20일자로 출원된 미국 특허 출원 제16/826,126호(대리인 문서 번호 ILLM 1008-18/IP-1744-US);
발명의 명칭이 "ARTIFICIAL INTELLIGENCE-BASED QUALITY SCORING"이고 2020년 3월 20일자로 출원된 미국 특허 출원 제16/826,134호(대리인 문서 번호 ILLM 1008-19/IP-1747-US); 및
발명의 명칭이 "ARTIFICIAL INTELLIGENCE-BASED SEQUENCING"이고 2020년 3월 21일자로 출원된 미국 특허 출원 제16/826,168호(대리인 문서 번호 ILLM 1008-20/IP-1752-PRV-US).
이 섹션에서 논의되는 주제는 단지 이 섹션 내에서의 그의 언급의 결과로서 종래기술이라고 가정되어서는 안 된다. 유사하게, 이 섹션에서 언급되거나 배경기술로서 제공되는 주제와 연관된 문제는 종래기술에서 이전에 인식되었다고 가정되어서는 안 된다. 이 섹션에서의 주제는 단지 상이한 접근법들을 표현할 뿐이며, 그 접근법들 자체는 청구되는 기술의 구현들에 또한 대응할 수 있다.
심층 신경 네트워크들은, 하이-레벨 특징부들을 연속으로 모델링하기 위해 다수의 비선형 및 복잡한 변환 층들을 사용하는 일정 유형의 인공 신경 네트워크들이다. 심층 신경 네트워크들은 파라미터들을 조정하기 위해 관측된 출력과 예측된 출력 사이의 차이를 전달하는 역전파(backpropagation)를 통해 피드백을 제공한다. 심층 신경 네트워크들은 대용량 트레이닝 데이터세트들, 병렬형 및 분산형 컴퓨팅의 전력, 및 정교한 트레이닝 알고리즘들의 이용가능성을 진화시켰다. 심층 신경 네트워크들은 컴퓨터 비전, 스피치 인식, 및 자연 언어 프로세싱과 같은 다수의 도메인들에서 주요한 발전들을 용이하게 하였다.
콘볼루션 신경 네트워크(convolutional neural network, CNN)들 및 순환 신경 네트워크(recurrent neural network, RNN)들은 심층 신경 네트워크들의 컴포넌트들이다. 콘볼루션 신경 네트워크들은, 콘볼루션 층들, 비선형 층들, 및 풀링(pooling) 층들을 포함하는 아키텍처에 의한 이미지 인식에서 특히 성공하였다. 순환 신경 네트워크들은 퍼셉트론(perceptron)들, 장단기 메모리 유닛(long short-term memory unit)들, 및 게이트형 순환 유닛들과 같은 빌딩 블록들 사이에서 주기적 접속들을 갖는 입력 데이터의 순차적 정보를 활용하도록 설계된다. 또한, 심층 시공간 신경 네트워크들, 다차원 순환 신경 네트워크들, 및 콘볼루션 자동 인코더들과 같은 많은 다른 긴급 심층 신경 네트워크들이 제한된 상황들에 대해 제안되었다.
심층 신경 네트워크들을 트레이닝시키는 목표는 각각의 층에서의 가중치 파라미터들의 최적화이며, 이는 더 단순한 특징부들을 복잡한 특징부들로 점진적으로 조합하여, 가장 적합한 계층적 표현들이 데이터로부터 학습될 수 있게 한다. 최적화 프로세스의 단일 사이클이 하기와 같이 조직화된다. 먼저, 트레이닝 데이터세트가 주어지면, 순방향 패스는 각각의 층에서의 출력을 순차적으로 계산하고, 기능 신호들을 네트워크를 통해 전방으로 전파한다. 최종 출력 층에서, 목적 손실 함수(objective loss function)가 추론된 출력들과 주어진 라벨들 사이의 에러를 측정한다. 트레이닝 에러를 최소화하기 위해, 역방향 패스는 연쇄 법칙(chain rule)을 사용하여 에러 신호들을 역전파하고, 신경 네트워크 전체에 걸쳐서 모든 가중치들에 대해 기울기들을 계산한다. 마지막으로, 가중치 파라미터들은 확률적 경사 하강법(stochastic gradient descent)에 기초하여 최적화 알고리즘들을 사용하여 업데이트된다. 배치(batch) 경사 하강법은 각각의 완전한 데이터세트에 대한 파라미터 업데이트들을 수행하는 반면, 확률적 경사 하강법은 데이터 예들의 각각의 소규모 세트에 대한 업데이트들을 수행함으로써 확률적 근사치들을 제공한다. 몇몇 최적화 알고리즘들은 확률적 경사 하강법으로부터 유래한다. 예를 들어, Adagrad와 Adam의 트레이닝 알고리즘들은, 각각의 파라미터에 대한 기울기들의 업데이트 빈도 및 모멘트들에 기초하여 학습률들을 적응적으로 수정하면서 확률적 경사 하강법을 수행한다.
심층 신경 네트워크들의 트레이닝에 있어서의 다른 핵심 요소는 규칙화(regularization)인데, 이는 오버피팅(overfitting)을 피하고 따라서 양호한 일반화 성능을 달성하도록 의도된 전략들을 지칭한다. 예를 들어, 가중치 감쇠(decay)는 가중치 파라미터들이 더 작은 절대값들에 수렴하도록 목적 손실 함수에 패널티 항을 추가한다. 드롭아웃(dropout)은 트레이닝 동안 신경 네트워크들로부터 은닉 유닛들을 랜덤하게 제거하며, 가능한 서브네트워크들의 앙상블로 간주될 수 있다. 드롭아웃의 능력들을 향상시키기 위해, 새로운 활성화 함수 maxout, 및 rnnDrop으로 지칭되는 순환 신경 네트워크들에 대한 드롭아웃의 변형이 제안되었다. 더욱이, 배치 정규화(batch normalization)는 미니-배치 내에서의 각각의 활성화를 위한 스칼라 특징부들의 정규화를 통해, 그리고 각각의 평균 및 분산을 파라미터들로서 학습하는 것을 통해 새로운 규칙화 방법을 제공한다.
서열분석된 데이터가 다차원 및 고차원임을 고려하면, 심층 신경 네트워크들은 그들의 넓은 적용가능성 및 향상된 예측력(prediction power) 때문에 생명정보학 연구에 대해 큰 장래성을 갖는다. 콘볼루션 신경 네트워크들은 모티프(motif) 발견, 병원성 변이체 확인, 및 유전자 발현 추론과 같은, 유전체학에서의 서열 기반 문제들을 해결하기 위해 적응되었다. 콘볼루션 신경 네트워크들은 디옥시리보핵산(deoxyribonucleic acid, DNA)을 연구하는 데 특히 유용한 가중치 공유 전략을 사용하는데, 그 이유는 그것이 유의한 생물학적 기능들을 갖는 것으로 추정되는 DNA 내의 짧은 재발 국소 패턴들인 서열 모티프들을 캡처할 수 있기 때문이다. 콘볼루션 신경 네트워크들의 특질(hallmark)은 콘볼루션 필터들의 사용이다.
정교하게 설계되고 수동으로 제작된 특징부들에 기초하는 전통적인 분류 접근법들과는 달리, 콘볼루션 필터들은, 원시 입력 데이터를 유익한 정보를 주는 지식의 표현에 맵핑시키는 프로세스와 유사하게, 특징부들의 적응적 학습을 수행한다. 이러한 의미에서, 콘볼루션 필터들은 일련의 모티프 스캐너들로서의 역할을 하는데, 그 이유는 그러한 필터들의 세트가 트레이닝 절차 동안 입력 내의 관련 패턴들을 인식하고 그 자신들을 업데이트할 수 있기 때문이다. 순환 신경 네트워크들은 단백질 또는 DNA 서열들과 같은 다양한 길이들의 순차적 데이터에서 장거리 의존성들을 캡처할 수 있다.
따라서, 템플릿 생성 및 염기 호출(base calling)을 위한 원칙에 입각한 심층 학습 기반 프레임워크를 사용할 기회가 유발된다.
고처리량(high-throughput) 기술의 시대에서, 노력에 대해 최저 비용으로 최고 수율의 해석가능한 데이터를 축적하는 것은 유의한 도전으로 남아 있다. 클러스터 형성을 위해 브리지 증폭을 활용하는 것들과 같은 핵산 서열분석의 클러스터 기반 방법들은, 핵산 서열분석의 처리량을 증가시키는 목표를 향해 소중한 기여를 하였다. 이러한 클러스터 기반 방법들은 고체 지지체 상에 고정화된 핵산의 조밀한 개체군을 서열분석하는 것에 의존하고, 전형적으로, 고체 지지체 상의 별개의 위치들에 위치해 있는 다수의 클러스터들을 동시에 서열분석하는 과정에서 생성된 광학 신호들을 디콘볼루션하기 위한 이미지 분석 소프트웨어의 사용을 수반한다.
그러나, 그러한 고체상 핵산 클러스터 기반 서열분석 기술들은, 여전히, 달성될 수 있는 처리량의 양을 제한하는 상당한 장애물들에 직면한다. 예를 들어, 클러스터 기반 서열분석 방법들에서, 공간적으로 해결되기에는 서로 물리적으로 너무 가깝거나 또는 고체 지지체 상에서 사실상 물리적으로 중첩하는 2개 이상의 클러스터들의 핵산 서열들을 결정하는 것은 장애물이 될 수 있다. 예를 들어, 현재 이미지 분석 소프트웨어는 2개의 중첩 클러스터들 중 어느 것으로부터 광학 신호가 발산되었는지를 결정하기 위한 소중한 시간 및 계산 리소스들을 요구할 수 있다. 그 결과로서, 획득될 수 있는 핵산 서열 정보의 수량 및/또는 품질에 대해 다양한 검출 플랫폼들에 대한 절충들이 불가피하다.
고밀도 핵산 클러스터 기반 게놈 방법들이 또한 게놈 분석의 다른 영역들로 확장된다. 예를 들어, 핵산 클러스터 기반 게놈은 서열분석 응용, 진단 및 스크리닝, 유전자 발현 분석, 후성 분석, 다형성(polymorphism)의 유전 분석 등에서 사용될 수 있다. 이들 핵산 클러스터 기반 게놈 기술들 각각은, 역시, 긴밀하게 근접해 있거나 공간적으로 중첩하는 핵산 클러스터들로부터 생성된 데이터를 분해하는 능력이 없을 때 제한된다.
명백히, 유전체학(예컨대, 임의의 그리고 모든 동물, 식물, 미생물 또는 기타 생물학적 종들 또는 개체군들의 게놈 특성화를 위함), 약물 유전체학, 전사체학, 진단, 예후, 생물 의학 위험 평가, 임상 및 연구 유전학, 개인맞춤형 의학, 약물 효능 및 약물 상호작용 평가, 수의학, 농업, 진화 및 생물 다양성 연구, 양식, 임업, 해양학, 생태 및 환경 관리, 및 기타 목적을 포함한 매우 다양한 용도들에 대해 신속하고 비용 효과적으로 획득될 수 있는 핵산 서열분석 데이터의 수량 및 품질을 증가시킬 필요성이 남아 있다.
개시된 기술은 고처리량 핵산 서열분석 기술들에서 처리량의 레벨을 증가시키는 것을 포함한 이들 및 유사한 필요성들을 해결하는 신경 네트워크 기반 방법들 및 시스템들을 제공하고, 다른 관련 이점들을 제공한다.
도면에서, 유사한 도면 부호는, 대체로, 상이한 도면들 전체에 걸쳐서 유사한 부분들을 지칭한다. 또한, 도면은 반드시 축척대로인 것은 아니며, 그 대신, 대체적으로, 개시된 기술의 원리들을 예시할 시에 강조된다. 하기의 설명에서, 개시된 기술의 다양한 구현예들이 하기의 도면을 참조하여 기술된다.
도 1a, 도 1b, 및 도 1c는 개시된 다-대-다(many-to-many) 염기 호출을 도시한다.
도 1d 및 도 1e는 개시된 다-대-다 염기 호출의 상이한 예들을 도시한다.
도 2, 도 3 및 도 4는 염기 호출 생성기의 상이한 구현예들을 도시한다.
도 5는 개시된 다중-사이클 기울기 역전파의 하나의 구현예를 도시한다.
도 6은 개시된 기술의 하나의 구현예의 흐름도이다.
도 7은 개시된 기술의 기술적 효과 및 이점들을 도시한다.
도 8a 및 도 8b는 서열분석 시스템의 하나의 구현예를 도시한다. 서열분석 시스템은 구성가능한 프로세서를 포함한다.
도 9는 염기 호출 센서 출력들과 같은 서열분석 시스템으로부터의 센서 데이터의 분석을 위한 시스템의 간략화된 블록도이다.
도 10은 호스트 프로세서에 의해 실행되는 런타임 프로그램의 기능들을 포함한 염기 호출 동작의 태양들을 보여주는 간략화된 도면이다.
도 11은 도 9의 것과 같은 구성가능한 프로세서의 구성의 단순화된 도면이다.
도 12는 본 명세서에 개시된 염기 호출 기법들을 구현하기 위해 개시된 서열분석 시스템에 의해 사용될 수 있는 컴퓨터 시스템이다.
아래의 논의는 어느 당업자라도 개시된 기술을 제조하고 사용할 수 있게 하도록 제시되며, 특정의 응용 및 그의 요건과 관련하여 제공된다. 개시된 구현예들에 대한 다양한 변형들은 당업자들에게 용이하게 명백할 것이며, 본 명세서에서 정의된 일반적인 원리들은 개시된 기술의 사상 및 범주로부터 벗어남이 없이 다른 구현예들 및 응용예들에 적용될 수 있다. 따라서, 개시된 기술은 도시된 구현예들로 제한되도록 의도된 것이 아니라, 본 명세서에 개시된 원리들 및 특징들과 일치하는 가장 넓은 범주에 부합되어야 한다.
서열분석 이미지들
염기 호출은 서열의 뉴클레오티드 조성을 결정하는 프로세스이다. 염기 호출은 Illumina의 iSeq, HiSeqX, HiSeq 3000, HiSeq 4000, HiSeq 2500, NovaSeq 6000, NextSeq 550, NextSeq 1000, NextSeq 2000, NextSeqDx, MiSeq, 및 MiSeqDx와 같은 서열분석 기구에 의해 수행되는 서열분석 런(또는 서열분석 반응) 동안 생성된 이미지 데이터, 즉 서열분석 이미지들을 분석하는 것을 수반한다.
하기의 논의는 하나의 구현예에 따라, 서열분석 이미지들이 어떻게 생성되고 그들이 무엇을 묘사하는지의 개요를 서술한다.
염기 호출은 서열분석 이미지들에 인코딩된 세기 데이터를 뉴클레오티드 서열들로 디코딩한다. 하나의 구현예에서, Illumina 서열분석 플랫폼들은 염기 호출을 위한 순환 가역적 종결(cyclic reversible termination, CRT) 화학을 채용한다. 프로세스는 각각의 새롭게 추가된 뉴클레오티드의 방출된 신호를 추적하면서, 형광-라벨링된 뉴클레오티드들을 갖는 템플릿 가닥들에 상보적인 발생기 가닥들을 성장시키는 것에 의존한다. 형광-라벨링된 뉴클레오티드들은 뉴클레오티드 유형의 형광단 신호를 앵커링하는 3' 제거가능한 블록을 갖는다.
서열분석은 반복 사이클들에서 발생하는데, 각각은 3개의 단계들을 포함한다: (a) 형광-라벨링된 뉴클레오티드를 추가하는 것에 의한 발생기 가닥의 연장; (b) 서열분석 기구의 광학 시스템의 하나 이상의 레이저들을 사용한 형광단의 여기(excitation)하고 광학 시스템의 상이한 필터들을 통해 이미징하여, 서열분석 이미지들을 산출; (c) 다음 서열분석 사이클을 대비한 형광단의 절단(cleavage) 및 3' 블록의 제거. 혼입 및 이미징 사이클들은 지정된 수의 서열분석 사이클들까지 반복되어, 판독물 길이를 정의한다. 이러한 접근법을 사용하여, 각각의 사이클이 템플릿 가닥들을 따라 새로운 포지션을 심문한다.
Illumina 서열분석기들의 엄청난 힘은 CRT 반응들을 겪는 수백만 또는 심지어 수십억 개의 클러스터들("피분석물들"로도 칭해짐)을 동시에 실행하고 감지하는 그들의 능력으로부터 유래한다. 클러스터는 템블릿 가닥의 대략 1000개의 동일한 복제물들을 포함하지만, 클러스터들은 크기 및 형상이 다르다. 클러스터들은, 서열분석 런 전에, 입력 라이브러리의 브리지 증폭(bridge amplification) 또는 배제 증폭(exclusion amplification)에 의해 템플릿 가닥으로부터 성장된다. 증폭 및 클러스터 성장의 목적은 방출된 신호의 세기를 증가시키는 것인데, 이는 이미징 디바이스가 단일 가닥의 형광단 신호를 신뢰성 있게 감지할 수 없기 때문이다. 그러나, 클러스터 내의 가닥들의 물리적 거리는 작고, 따라서, 이미징 디바이스는 가닥들의 클러스터를 단일 스폿으로 인지한다.
서열분석은 플로우 셀(또는 바이오센서) - 입력 가닥들을 보유하는 작은 유리 슬라이드 - 에서 발생한다. 플로우 셀은 현미경 이미징, 여기 레이저들, 및 형광 필터들을 포함하는 광학 시스템에 접속된다. 플로우 셀은 레인들로 칭해지는 다수의 챔버들을 포함한다. 레인들은 서로 물리적으로 분리되어 있고, 샘플 교차 오염 없이 구별가능한 상이한 태깅된 서열분석 라이브러리들을 포함할 수 있다. 일부 구현예들에서, 플로우 셀은 패턴화된 표면을 포함한다. "패턴화된 표면"은 고체 지지체의 노출된 층 내의 또는 그 상에서의 상이한 영역들의 배열을 지칭한다.
서열분석 기구의 이미징 디바이스(예컨대, 전하 결합 소자(charge-coupled device, CCD) 또는 상보성 금속 산화물 반도체(complementary metal-oxide-semiconductor, CMOS) 센서와 같은 솔리드 스테이트 이미저)는 타일들로 칭해지는 일련의 비-중첩 영역들 내의 레인들을 따르는 다수의 위치들에서 스냅숏(snapshot)들을 촬영한다. 예를 들어, 레인당 64개 또는 96개의 타일들이 있을 수 있다. 타일은 수십만 내지 수백만 개의 클러스터들을 보유한다.
서열분석 런의 출력은 서열분석 이미지들이다. 서열분석 이미지들은 픽셀화된 단위들(예컨대, 픽셀들, 슈퍼픽셀들, 서브픽셀들)의 그리드(또는 어레이)를 사용하여 클러스터들 및 그들의 주변 배경의 세기 방출물들을 묘사한다. 세기 방출물들은 픽셀화된 단위들의 세기 값들로서 저장된다. 서열분석 이미지들은 픽셀화된 단위들의 그리드의 디멘션들 w x h를 가지며, 여기서 w(폭) 및 h(높이)는 1 내지 100,000 범위의 임의의 수들(예컨대, 115 x 115, 200 x 200, 1800 x 2000, 2200 x 25000, 2800 x 3600, 4000 x 400)이다 . 일부 구현예들에서, w 및 h는 동일하다. 다른 구현예들에서, w 및 h는 상이하다. 서열분석 이미지들은 서열분석 런 동안 뉴클레오티드 서열들 내의 뉴클레오티드 혼입의 결과로서 생성되는 세기 방출물들을 묘사한다. 세기 방출물들은 연관된 클러스터들 및 그들의 주변 배경으로부터의 것이다.
신경 네트워크 기반 염기 호출
하기의 논의는 본 명세서에 기술된 신경 네트워크 기반 염기 호출자(102)에 초점을 맞춘다. 먼저, 하나의 구현예에 따르면, 신경 네트워크 기반 염기 호출자(102)에 대한 입력이 기술된다. 이어서, 신경 네트워크 기반 염기 호출자(102)의 구조 및 형태의 예들이 제공된다. 마지막으로, 하나의 구현예에 따르면, 신경 네트워크 기반 염기 호출자(102)의 출력이 기술된다.
데이터 흐름 로직은 염기 호출을 위해 신경 네트워크 기반 염기 호출자(102)에 서열분석 이미지들을 제공한다. 신경 네트워크 기반 염기 호출자(102)는 패치 단위(또는 타일 단위)로 서열분석 이미지들에 액세스한다. 패치들 각각은 서열분석 이미지들을 형성하는 픽셀화된 단위들의 그리드 내의 픽셀화된 단위들의 서브그리드(또는 서브어레이)이다. 패치들은 픽셀화된 단위들의 서브그리드의 디멘션들 q x r을 가지며, 여기서 q(폭) 및 r(높이)은 1 내지 10,000 범위의 임의의 수들(예컨대, 3 x 3, 5 x 5, 7 x 7, 10 x 10, 15 x 15, 25 x 25, 64 x 64, 78 x 78, 115 x 115)이다 . 일부 구현예들에서, qr은 동일하다. 다른 구현예들에서, qr은 상이하다. 일부 구현예들에서, 서열분석 이미지로부터 추출된 패치들은 동일한 크기의 것들이다. 다른 구현예들에서, 패치들은 상이한 크기들의 것들이다. 일부 구현예들에서, 패치들은 (예컨대, 에지들 상에서) 중첩되는 픽셀화된 단위들을 가질 수 있다.
서열분석은 대응하는 m개의 이미지 채널들에 대해 서열분석 사이클당 m개의 서열분석 이미지들을 생성한다. 즉, 서열분석 이미지들 각각은 하나 이상의 이미지(또는 세기) 채널들(색상 이미지의 적색, 녹색, 청색(red, green, blue, RGB) 채널들과 유사함)을 갖는다. 하나의 구현예에서, 각각의 이미지 채널은 복수의 필터 파장 대역들 중 하나에 대응한다. 다른 구현예에서, 각각의 이미지 채널은 서열분석 사이클에서의 복수의 이미징 이벤트들 중 하나에 대응한다. 또 다른 구현예에서, 각각의 이미지 채널은 특정 레이저를 사용하는 조명과 특정 광학 필터를 통한 이미징의 조합에 대응한다. 이미지 패치들은 특정 서열분석 사이클 동안 m개의 이미지 채널들 각각으로부터 타일링(또는 액세스)된다. 4-, 2-, 및 1-채널 화학들과 같은 상이한 구현예들에서, m은 4 또는 2이다. 다른 구현예들에서, m은 1, 3, 또는 4 초과이다.
예를 들어, 서열분석 런이 2개의 상이한 이미지 채널들, 즉 청색 채널 및 녹색 채널을 사용하여 구현된다는 것을 고려한다. 이어서, 각각의 서열분석 사이클에서, 서열분석 런은 청색 이미지 및 녹색 이미지를 생성한다. 이러한 방식으로, 서열분석 런의 일련의 k개의 서열분석 사이클들 동안, 청색 및 녹색 이미지들의 k개의 쌍들의 서열이 출력으로서 생성되고, 서열분석 이미지들로서 저장된다. 따라서, 신경 네트워크 기반 염기 호출자(102)에 의한 패치 레벨 프로세싱에 대해, 청색 및 녹색 이미지 패치들의 k개의 쌍들의 서열이 생성된다.
염기 호출의 단일 반복(또는 단일 순방향 순회(traversal) 또는 순방향 패스의 단일 인스턴스)을 위한 신경 네트워크 기반 염기 호출자(102)에 대한 입력 이미지 데이터는 다수의 서열분석 사이클들의 슬라이딩 윈도우에 대한 데이터를 포함한다. 슬라이딩 윈도우는 예를 들어, 현재 서열분석 사이클, 하나 이상의 선행 서열분석 사이클들, 및 하나 이상의 연속 서열분석 사이클들을 포함할 수 있다.
하나의 구현예에서, 입력 이미지 데이터는 3개의 서열분석 사이클들 동안의 데이터를 포함하여서, 염기 호출될 현재(시간 t) 서열분석 사이클 동안의 데이터에 (i) 좌측 플랭킹/콘텍스트/이전/선행/우선(시간 t-1) 서열분석 사이클 동안의 데이터, 및 (ii) 우측 플랭킹/콘텍스트/다음/연속/후속(시간 t+1) 서열분석 사이클 동안의 데이터가 동반되도록 한다.
다른 구현예에서, 입력 이미지 데이터는 5개의 서열분석 사이클들 동안의 데이터를 포함하여서, 염기 호출될 현재(시간 t) 서열분석 사이클 동안의 데이터에 (i) 제1 좌측 플랭킹/콘텍스트/이전/선행/우선(시간 t-1) 서열분석 사이클 동안의 데이터, (ii) 제2 좌측 플랭킹/콘텍스트/이전/선행/우선(시간 t-2) 서열분석 사이클 동안의 데이터, (iii) 제1 우측 플랭킹/콘텍스트/다음/연속/후속(시간 t+1)에 대한 데이터, 및 (iv) 제2 우측 플랭킹/콘텍스트/다음/연속/후속(시간 t+2) 서열분석 사이클 동안의 데이터가 동반되도록 한다.
또 다른 구현예에서, 입력 이미지 데이터는 7개의 서열분석 사이클들 동안의 데이터를 포함하여서, 염기 호출될 현재(시간 t) 서열분석 사이클 동안의 데이터에 (i) 제1 좌측 플랭킹/콘텍스트/이전/선행/우선(시간 t-1) 서열분석 사이클 동안의 데이터, (ii) 제2 좌측 플랭킹/콘텍스트/이전/선행/우선(시간 t-2) 서열분석 사이클 동안의 데이터, (iii) 제3 좌측 플랭킹/콘텍스트/이전/선행/우선(시간 t-3) 서열분석 사이클 동안의 데이터, (iv) 제1 우측 플랭킹/콘텍스트/다음/연속/후속(시간 t+1)에 대한 데이터, (iv) 제2 우측 플랭킹/콘텍스트/다음/연속/후속(시간 t+2) 서열분석 사이클 동안의 데이터, 및 (v) 제3 우측 플랭킹/콘텍스트/다음/연속/후속(시간 t+3) 서열분석 사이클 동안의 데이터가 동반되도록 한다. 다른 구현예들에서, 입력 이미지 데이터는 단일 서열분석 사이클 동안의 데이터를 포함한다. 또 다른 구현예들에서, 입력 이미지 데이터는 10개, 15개, 20개, 30개, 58개, 75개, 92개, 130개, 168개, 175개, 209개, 225개, 230개, 275개, 318개, 325개, 330개, 525개, 또는 625개의 서열분석 사이클들 동안의 데이터를 포함한다.
신경 네트워크 기반 염기 호출자(102)는 하나의 구현예에 따르면, 이미지 패치들을 그의 콘볼루션 층들을 통해 프로세싱하고 대안적인 표현을 생성한다. 이어서, 대안적인 표현은, 바로 현재(시간 t) 서열분석 사이클 또는 서열분석 사이클들 각각, 즉 현재(시간 t) 서열분석 사이클, 제1 및 제2 선행(시간 t-1, 시간 t-2) 서열분석 사이클들, 및 제1 및 제2 후행(시간 t+1, 시간 t+2) 서열분석 사이클들 중 어느 하나의 서열분석 사이클 동안 염기 호출을 생성하기 위한 출력 층(예컨대, 소프트맥스 층)에 의해 사용된다. 생성된 염기 호출들은 서열분석 판독물들을 형성한다.
하나의 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 특정 서열분석 사이클 동안 단일 표적 클러스터에 대한 염기 호출을 출력한다. 다른 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 특정 서열분석 사이클 동안 복수의 표적 클러스터들 내의 각각의 표적 클러스터에 대한 염기 호출을 출력한다. 또 다른 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 복수의 서열분석 사이클들 중의 각각의 서열분석 사이클 동안 복수의 표적 클러스터들 내의 각각의 표적 클러스터에 대한 염기 호출을 출력하여, 이에 의해, 각각의 표적 클러스터에 대한 염기 호출 서열을 생성한다.
하나의 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 다층 퍼셉트론(multilayer perceptron, MLP)이다. 다른 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 피드포워드 신경 네트워크이다. 또 다른 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 완전 접속 신경 네트워크이다. 추가 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 완전 콘볼루션 신경 네트워크이다. 다른 추가 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 시맨틱 세그먼트화 신경 네트워크이다. 또 다른 추가 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 생성적 대립쌍 네트워크(generative adversarial network, GAN)이다.
하나의 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 복수의 콘볼루션 층들을 갖는 콘볼루션 신경 네트워크(CNN)이다. 다른 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 장단기 메모리 네트워크(short-term memory network, LSTM), 양방향 LSTM(bi-directional LSTM, Bi-LSTM), 또는 게이트형 순환 유닛(gated recurrent unit, GRU)과 같은 순환 신경 네트워크(recurrent neural network, RNN)이다. 또 다른 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 CNN 및 RNN 둘 모두를 포함한다.
또 다른 구현예들에서, 신경 네트워크 기반 염기 호출자(102)는 1D 콘볼루션, 2D 콘볼루션, 3D 콘볼루션, 4D 콘볼루션, 5D 콘볼루션, 확장형 또는 아트로스 콘볼루션, 전치 콘볼루션, 깊이별 분리가능 콘볼루션, 포인트별 콘볼루션, 1 x 1 콘볼루션, 그룹 콘볼루션, 편평형 콘볼루션, 공간 및 교차 채널 콘볼루션, 셔플 그룹형 콘볼루션, 공간 분리가능 콘볼루션, 및 디콘볼루션을 사용할 수 있다. 신경 네트워크 기반 염기 호출자(102)는 하나 이상의 손실 함수들, 예컨대 로지스틱 회귀(logistic regression)/로그(log) 손실, 다중클래스 교차-엔트로피(multi-class cross-entropy)/소프트맥스 손실, 이진 교차-엔트로피(binary cross-entropy) 손실, 평균 제곱 에러(mean-squared error) 손실, L1 손실, L2 손실, 평활한(smooth) L1 손실, 및 Huber 손실을 사용할 수 있다. 신경 네트워크 기반 염기 호출자(102)는 임의의 병렬성(parallelism), 효율성, 및 압축 스킴들, 예컨대 TFRecords, 압축 인코딩(예컨대, PNG), 샤딩(sharding), 맵 변환을 위한 병렬 호출, 배칭(batching), 프리페칭(prefetching), 모델 병렬성, 데이터 병렬성, 및 동기식/비동기식 확률적 기울기 하강법(stochastic gradient descent, SGD)을 사용할 수 있다. 신경 네트워크 기반 염기 호출자(102)는 업샘플링 층, 다운샘플링 층, 순환 접속, 게이트 및 게이트형 메모리 유닛(예컨대, LSTM 또는 GRU), 잔차 블록, 잔차 접속, 하이웨이 접속, 스킵 접속, 핍홀(peephole) 접속, 활성화 함수(예컨대, ReLU(rectifying linear unit), 리키 ReLU(leaky ReLU), ELU(exponential liner unit), 시그모이드 및 tanh(hyperbolic tangent)와 같은 비선형 변환 함수), 배치 정규화 층, 규칙화 층, 드롭아웃, 풀링 층(예컨대, 최대 또는 평균 풀링), 글로벌 평균 풀링 층, 및 감쇠 메커니즘을 포함할 수 있다.
신경 네트워크 기반 염기 호출자(102)는 역전파 기반 기울기 업데이트 기법들을 사용하여 트레이닝된다. 신경 네트워크 기반 염기 호출자(102)를 트레이닝시키기 위해 사용될 수 있는 예시적인 기울기 하강 기법들은 확률적 기울기 하강법, 배치 기울기 하강법, 및 미니 배치 기울기 하강법을 포함한다. 신경 네트워크 기반 염기 호출자(102)를 트레이닝시키는 데 사용될 수 있는 기울기 하강 최적화 알고리즘들의 일부 예들은 Momentum, Nesterov 가속화된 기울기, Adagrad, Adadelta, RMSprop, Adam, AdaMax, Nadam, 및 AMSGrad이다.
하나의 구현예에서, 신경 네트워크 기반 염기 호출자(102)는 특화된 아키텍처를 사용하여, 상이한 서열분석 사이클들 동안의 데이터의 프로세싱을 분리(segregate)한다. 특화된 아키텍처를 사용하기 위한 동기가 먼저 기술된다. 상기에서 논의된 바와 같이, 신경 네트워크 기반 염기 호출자(102)는 현재 서열분석 사이클, 하나 이상의 선행 서열분석 사이클들, 및 하나 이상의 연속 서열분석 사이클들 동안 이미지 패치들을 프로세싱한다. 추가적인 서열분석 사이클들 동안 데이터는 서열 특정 콘텍스트를 제공한다. 신경 네트워크 기반 염기 호출자(102)는 트레이닝 동안 서열 특정 콘텍스트를 학습하고, 그들을 염기 호출한다. 더욱이, 프리 및 포스트 서열분석 사이클들 동안의 데이터는 현재 서열분석 사이클 동안 프리-페이징 및 페이징 신호들의 2차 기여를 제공한다.
그러나, 상이한 서열분석 사이클들에서 그리고 상이한 이미지 채널들에서 캡처된 이미지들은 오정렬되어 있고, 서로에 대해 잔차 정합 에러를 갖는다. 이러한 오정렬을 처리하기 위해, 특화된 아키텍처는 서열분석 사이클들 사이의 정보를 혼합하지 않고 단지 서열분석 사이클 내에서의 정보만을 혼합하는 공간 콘볼루션 층을 포함한다.
공간 콘볼루션 층들(또는 공간 로직)은, 콘볼루션들의 "전용 비공유" 시퀀스를 통해 복수의 서열분석 사이클들 각각 동안 데이터를 독립적으로 프로세싱함으로써 분리를 조작할 수 있게 하는 소위 "분리형 콘볼루션들"을 사용한다. 분리형 콘볼루션들은, 임의의 다른 서열분석 사이클의 데이터 및 생성된 특징부 맵들에 걸쳐서 콘볼루션하지 않고서, 단지 주어진 서열분석 사이클, 즉, 사이클내(intra-cycle) 전용의 데이터 및 생성된 특징부 맵들에 걸쳐서 콘볼루션한다.
예를 들어, 입력 이미지 데이터는 (i) 염기 호출될 현재(시간 t) 서열분석 사이클 동안의 현재 이미지 패치, (ii) 이전(시간 t-1) 서열분석 사이클 동안의 이전 이미지 패치, 및 (iii) 다음(시간 t+1) 서열분석 사이클 동안의 다음 이미지 패치를 포함한다는 것을 고려한다. 이어서, 특화된 아키텍처는 3개의 별개의 콘볼루션 파이프라인들, 즉, 현재 콘볼루션 파이프라인, 이전 콘볼루션 파이프라인, 및 다음 콘볼루션 파이프라인을 개시한다. 현재 데이터 프로세싱 파이프라인은 현재(시간 t) 서열분석 사이클 동안 현재 이미지 패치를 입력으로서 수신하고, 이를 복수의 공간 콘볼루션 층들을 통해 독립적으로 프로세싱하여 최종 공간 콘볼루션 층의 출력으로서 소위 "현재 공간적으로 콘볼루션된 표현"을 생성한다. 이전 콘볼루션 파이프라인은 이전(시간 t-1) 서열분석 사이클 동안 이전 이미지 패치를 입력으로서 수신하고, 이를 복수의 공간 콘볼루션 층들을 통해 독립적으로 프로세싱하여 최종 공간 콘볼루션 층의 출력으로서 소위 "이전에 공간적으로 콘볼루션된 표현"을 생성한다. 다음 콘볼루션 파이프라인은 다음(시간 t+1) 서열분석 사이클 동안 다음 이미지 패치를 입력으로서 수신하고, 이를 복수의 공간 콘볼루션 층들을 통해 독립적으로 프로세싱하여 최종 공간 콘볼루션 층의 출력으로서 소위 "다음에 공간적으로 콘볼루션된 표현"을 생성한다.
일부 구현예들에서, 현재, 이전, 및 다음 콘볼루션 파이프라인들은 병렬로 실행된다. 일부 구현예들에서, 공간 콘볼루션 층들은 특화된 아키텍처 내의 공간 콘볼루션 네트워크(또는 서브네트워크)의 일부이다.
신경 네트워크 기반 염기 호출자(102)는 서열분석 사이클들 사이의, 즉, 사이클간(inter-cycle)의 정보를 혼합하는 시간 콘볼루션 층들(또는 시간 로직)을 추가로 포함한다. 시간 콘볼루션 층들은 공간 콘볼루션 네트워크로부터 그들의 입력들을 수신하고, 각자의 데이터 프로세싱 파이프라인들에 대해 최종 공간 콘볼루션 층에 의해 생성되는 공간적으로 콘볼루션된 표현들 상에서 동작한다.
시간 콘볼루션 층들의 사이클간 동작가능성 자유는, 공간 콘볼루션 네트워크에 대한 입력으로서 공급되는 이미지 데이터 내에 존재하는 오정렬 속성이 공간 콘볼루션 층들의 시퀀스에 의해 수행되는 분리형 콘볼루션들의 스택 또는 캐스케이드에 의해, 공간적으로 콘볼루션된 표현들로부터 제거된다(purged out)는 사실로부터 나온다.
시간 콘볼루션 층들은 슬라이딩 윈도우 단위로 연속 입력들에서 입력 채널들에 걸쳐서 그룹별로 콘볼루션하는 소위 "조합형 콘볼루션들"을 사용한다. 하나의 구현예에서, 연속 입력들은 이전 공간 콘볼루션 층 또는 이전 시간 콘볼루션 층에 의해 생성되는 연속 출력들이다.
일부 구현예들에서, 시간 콘볼루션 층들은 특화된 아키텍처 내의 시간 콘볼루션 네트워크(또는 서브네트워크)의 일부이다. 시간 콘볼루션 네트워크는 그의 입력들을 공간 콘볼루션 네트워크로부터 수신한다. 하나의 구현예에서, 시간 콘볼루션 네트워크의 제1 시간 콘볼루션 층은 서열분석 사이클들 사이의 공간적으로 콘볼루션된 표현들을 그룹별로 조합한다. 다른 구현예에서, 시간 콘볼루션 네트워크의 후속 시간 콘볼루션 층들은 이전 시간 콘볼루션 층들의 연속 출력들을 조합한다. 최종 시간 콘볼루션 층의 출력은 출력을 생성하는 출력 층에 공급된다. 출력은 하나 이상의 서열분석 사이클들에서 하나 이상의 클러스터들을 염기 호출하는 데 사용된다.
데이터 흐름 로직은 사이클별 클러스터 데이터를 신경 네트워크 기반 염기 호출자(102)에 제공한다. 사이클별 클러스터 데이터는 복수의 클러스터들, 및 서열분석 런의 서열분석 사이클들의 제1 서브세트에 대한 것이다. 예를 들어, 서열분석 런이 150개의 서열분석 사이클들을 갖는다는 것을 고려한다. 이어서, 서열분석 사이클들의 제1 서브세트는 150개의 서열분석 사이클들의 임의의 서브세트, 예를 들어, 150-사이클 서열분석 런의 처음 5개, 10개, 15개, 25개, 35개, 40개, 50개 또는 100개의 서열분석 사이클들을 포함할 수 있다. 또한, 각각의 서열분석 사이클은 복수의 클러스터들 중의 클러스터들의 세기 방출물들을 묘사하는 서열분석 이미지들을 생성한다. 이러한 방식으로, 복수의 클러스터들에 대한 그리고 서열분석 런의 서열분석 사이클들의 제1 서브세트에 대한 사이클별 클러스터 데이터는 150-사이클 서열분석 런의 처음 5개, 10개, 15개, 25개, 35개, 40개, 50개, 또는 100개의 서열분석 사이클들 동안의 서열분석 이미지들만을 포함하고, 150-사이클 서열분석 런의 나머지 서열분석 사이클들 동안의 서열분석 이미지들을 포함하지 않는다.
신경 네트워크 기반 염기 호출자(102)는 서열분석 사이클들의 제1 서브세트 내의 각각의 서열분석 사이클에서 복수의 클러스터들 중의 각각의 클러스터를 염기 호출한다. 그렇게 하기 위해, 신경 네트워크 기반 염기 호출자(102)는 사이클별 클러스터 데이터를 프로세싱하고, 사이클별 클러스터 데이터의 중간 표현들을 생성한다. 이어서, 신경 네트워크 기반 염기 호출자(102)는 출력 층을 통해 중간 표현들을 프로세싱하고, 각각의 클러스터에 대해 그리고 각각의 서열분석 사이클 동안 클러스터별, 사이클별 확률 쿼드러플(probability quadruple)을 생성한다. 출력 층의 예들은 소프트맥스 함수, 로그-소프트맥스 함수, 앙상블 출력 평균 함수, 다층 퍼셉트론 불확실성 함수, 베이즈 가우시안(Bayes Gaussian) 분포 함수, 및 클러스터 세기 함수를 포함한다. 클러스터별, 사이클별 확률 쿼드러플들은 확률 쿼드러플들로서 저장되고, 본 명세서에서 "염기별 가능성들"로 지칭되는데, 그 이유는 4개의 클레오티드 염기들 A, C, T, 및 G가 있기 때문이다.
소프트맥스 함수는 다중 클래스 분류를 위한 바람직한 함수이다. 소프트맥스 함수는 모든 가능한 표적 클래스들에 걸쳐 각각의 표적 클래스의 확률들을 계산한다. 소프트맥스 함수의 출력 범위는 0과 1 사이이고, 모든 확률들의 합은 1과 동일하다. 소프트맥스 함수는 주어진 입력 값의 지수 및 모든 입력 값들의 지수 값들의 합을 계산한다. 입력 값의 지수와 지수 값들의 합의 비는 소프트맥스 함수의 출력이고, 이는 본 명세서에서 "지수 정규화(exponential normalization)"로 지칭된다.
공식적으로, 소위 소프트맥스 분류기를 트레이닝시키는 것은 진정한 분류기라기보다는 클래스 확률로의 회귀이며, 이는 그것이 클래스를 반환하는 것이 아니라 오히려 각각의 클래스의 확률의 신뢰도 예측이기 때문이다. 소프트맥스 함수는 값들의 클래스를 취하고, 이들을 1로 합산하는 확률들로 변환한다. 소프트맥스 함수는 0 내지 1의 범위 내의 실제 값들의
Figure pct00001
-차원 벡터에 대한 임의의 실제 값들의
Figure pct00002
-차원 벡터를 스쿼싱한다. 따라서, 소프트맥스 함수를 사용하는 것은, 출력이 유효한 지수적으로 정규화된 확률 질량 함수(비-음성이고, 1로 합산함)인 것을 보장한다.
직관적으로, 소프트맥스 함수는 최대 함수의 "소프트" 버전이다. 용어 "소프트"는 소프트맥스 함수가 연속적이고 구별가능하다는 사실로부터 유래한다. 하나의 최대 요소를 선택하는 대신, 그것은 벡터를 전체의 부분들로 분해하며, 이때 최대 입력 요소는 비례적으로 더 큰 값을 얻고 다른 것은 더 적은 비율의 값을 얻게 된다. 확률 분포를 출력하는 속성은 소프트맥스 함수를 분류 태스크들에서 확률적 해석에 적합하게 만든다.
Figure pct00003
를 소프트맥스 층에 대한 입력들의 벡터로서 고려한다. 소프트맥스 층 유닛들은 소프트맥스 층의 노드들의 개수이고, 따라서,
Figure pct00004
벡터의 길이는 소프트맥스 층 내의 유닛들의 개수이다(10개의 출력 유닛들을 갖는 경우, 10개의
Figure pct00005
요소들이 있음).
Figure pct00006
-차원 벡터
Figure pct00007
의 경우, 소프트맥스 함수는 지수 정규화(exp)를 사용하여, 정규화된 값들이 범위 [0, 1] 내에 있고 1을 가산하는 다른
Figure pct00008
-차원 벡터
Figure pct00009
를 생성한다:
Figure pct00010
예를 들어, 소프트맥스 함수는
Figure pct00011
로서 3개의 클래스들에 적용된다. 3개의 출력들이 항상 1로 합산된다는 것에 유의한다. 따라서, 이들은 이산 확률 질량 함수를 한정한다.
특정 클러스터별, 사이클별 확률 쿼드러플은 특정 서열분석 사이클에서 특정 클러스터에 혼입된 염기가 A, C, T, 및 G일 확률들을 식별한다. 신경 네트워크 기반 염기 호출자(102)의 출력 층이 소프트맥스 함수를 사용할 때, 클러스터별, 사이클별 확률 쿼드러플에서의 확률들은 1을 합산하는 지수적으로 정규화된 분류 스코어들이다.
하나의 구현예에서, 본 방법은, 출력 층을 통해 콘볼루션된 표현을 프로세싱하여, 현재 서열분석 사이클에서 표적 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 생성하는 단계, 및 가능성들에 기초하여 염기를 A, C, T, 또는 G로서 분류하는 단계를 포함한다. 하나의 구현예에서, 가능성들은, 소프트맥스 층에 의해 생성되는 지수적으로 정규화된 스코어들이다.
하나의 구현예에서, 본 방법은, 출력으로부터, A, C, T, 또는 G인, 현재 서열분석 사이클에서 표적 분석물 내에 혼입된 염기의 클래스 라벨을 식별하는 표적 분석물에 대한 출력 쌍을 도출하는 단계, 및 클래스 라벨에 기초하여 표적 분석물을 염기 호출하는 단계를 포함한다. 하나의 구현예에서, 1, 0의 클래스 라벨은 A 염기를 식별하고, 0, 1의 클래스 라벨은 C 염기를 식별하고, 1, 1의 클래스 라벨은 T 염기를 식별하고, 0, 0의 클래스 라벨은 G 염기를 식별한다. 다른 구현예에서, 1, 1의 클래스 라벨은 A 염기를 식별하고, 0, 1의 클래스 라벨은 C 염기를 식별하고, 0.5, 0.5의 클래스 라벨은 T 염기를 식별하고, 0, 0의 클래스 라벨은 G 염기를 식별한다. 또 다른 구현예에서, 1, 0의 클래스 라벨은 A 염기를 식별하고, 0, 1의 클래스 라벨은 C 염기를 식별하고, 0.5, 0.5의 클래스 라벨은 T 염기를 식별하고, 0, 0의 클래스 라벨은 G 염기를 식별한다. 다른 추가 구현예에서, 1, 2의 클래스 라벨은 A 염기를 식별하고, 0, 1의 클래스 라벨은 C 염기를 식별하고, 1, 1의 클래스 라벨은 T 염기를 식별하고, 0, 0의 클래스 라벨은 G 염기를 식별한다. 하나의 구현예에서, 본 방법은, 출력으로부터, A, C, T, 또는 G인, 현재 서열분석 사이클에서 표적 분석물 내에 혼입된 염기를 식별하는 표적 분석물에 대한 클래스 라벨을 도출하는 단계, 및 클래스 라벨에 기초하여 표적 분석물을 염기 호출하는 단계를 포함한다. 하나의 구현예에서, 0.33의 클래스 라벨은 A 염기를 식별하고, 0.66의 클래스 라벨은 C 염기를 식별하고, 1의 클래스 라벨은 T 염기를 식별하고, 0의 클래스 라벨은 G 염기를 식별한다. 다른 구현예에서, 0.50의 클래스 라벨은 A 염기를 식별하고, 0.75의 클래스 라벨은 C 염기를 식별하고, 1의 클래스 라벨은 T 염기를 식별하고, 0.25의 클래스 라벨은 G 염기를 식별한다. 하나의 구현예에서, 본 방법은, 출력으로부터, 단일 출력 값을 도출하는 단계, 단일 출력 값을 염기들 A, C, T, 및 G에 대응하는 클래스 값 범위들과 비교하는 단계, 비교에 기초하여, 특정 클래스 값 범위에 단일 출력 값을 할당하는 단계, 및 할당에 기초하여 표적 분석물을 염기 호출하는 단계를 포함한다. 하나의 구현예에서, 단일 출력 값은 시그모이드 함수를 사용하여 도출되고, 단일 출력 값은 0 내지 1의 범위이다. 다른 구현예에서, 0 내지 0.25의 클래스 값 범위는 A 염기를 표현하고, 0.25 내지 0.50의 클래스 값 범위는 C 염기를 표현하고, 0.50 내지 0.75의 클래스 값 범위는 T 염기를 표현하고, 0.75 내지 1의 클래스 값 범위는 G 염기를 표현한다.
신경 네트워크 기반 염기 호출자(102)에 관한 추가적인 세부사항들은 발명의 명칭이 "ARTIFICIAL INTELLIGENCE-BASED SEQUENCING"이고 2019년 3월 21일자로 출원된 미국 가특허 출원 제62/821,766호(대리인 문서 번호 ILLM 1008-9/IP-1752-PRV)에서 찾을 수 있으며, 이는 본 명세서에 참고로 포함된다.
다-대-다 염기 호출
개시된 기술은, 하나의 구현예에 따르면, 신경 네트워크 기반 염기 호출자(102)가, 입력의 주어진 윈도우에 대해, 중심 서열분석 사이클 동안뿐만 아니라 플랭킹 서열분석 사이클들 동안에도 염기 호출들을 생성하게 한다. 즉, 하나의 구현예에서, 개시된 기술은 주어진 입력 윈도우 동안 사이클 N, 사이클 N+1, 사이클 N-1, 사이클 N+2, 사이클 N-2 등 동안 동시에 염기 호출들을 생성한다. 즉, 신경 네트워크 기반 염기 호출자(102)의 단일 순방향 전파/순회/염기 호출 반복은 서열분석 사이클들의 입력 윈도우 내의 다수의 서열분석 사이클들 동안 염기 호출들을 생성하는데, 이는 본 명세서에서 "다-대-다(many-to-many) 염기 호출"로 지칭된다.
이어서, 개시된 기술은, 개시된 다-대-다 염기 호출을 사용하여, 입력들의 다수의 슬라이딩 윈도우들에 걸쳐 나타난 동일한 표적 서열분석 사이클 동안 다수의 염기 호출들을 생성한다. 예를 들어, 표적 서열분석 사이클은 입력들의 다수의 슬라이딩 윈도우들 내의 상이한 위치들에 나타날 수 있다(예컨대, 제1 슬라이딩 윈도우 내의 위치 N+2에서 시작하고, 제2 슬라이딩 윈도우 내의 위치 N+1로 진행하고, 제3 슬라이딩 윈도우 내의 위치 N에서 종료됨).
표적 서열분석 사이클을 다수회 염기 호출하는 것은 표적 서열분석 사이클 동안 정확한 염기 호출의 다수의 후보들을 생성한다. 이어서, 개시된 기술은, 정확한 염기 호출의 다수의 후보들을 집적체(aggregate)로서 평가하고, 표적 서열분석 사이클 동안 최종 염기 호출을 결정한다. 표적 서열분석 사이클 동안의 최종 염기 호출은 평균화, 컨센서스(consensus), 및 가중화된 컨센서스와 같은 집적-분석 기법들을 사용하여 선택될 수 있다.
도 1a, 도 1b, 및 도 1c는 개시된 다-대-다 염기 호출(100)을 도시한다. 신경 네트워크 기반 염기 호출자(102)(즉, 염기 호출자(102))는 개시된 기술의 하나의 구현예에 따르면, 적어도 우측 플랭킹 입력, 중심 입력, 및 좌측 플랭킹 입력을 프로세싱하고, 적어도 우측 플랭킹 출력, 중심 출력, 및 좌측 플랭킹 출력을 생성한다.
다-대-다 염기 호출(100)은 염기 호출자(102)에 대한 입력으로서 n개의 서열분석 사이클들 동안의 데이터를 제공하도록, 그리고 염기 호출의 1회 반복(즉, 하나의 순방향 패스 인스턴스) 시에 n개의 사이클들 중 임의의 개수의 사이클들 동안 염기 호출들을 생성하도록 구성된다. 표적 서열분석 사이클(108)은 n회 염기 호출될 수 있고, n회의 염기 호출 반복 시에 다양한 위치들에 나타날 수 있고/발생할 수 있고/속할 수 있다.
표적 서열분석 사이클(108)은 일부 염기 호출 반복 시에 중심 서열분석 사이클(도 1b)일 수 있다. 다른 반복 시에, 표적 서열분석 사이클(108)은 중심 서열분석 사이클에 인접한 우측 플랭킹/콘텍스트 서열분석 사이클(도 1a)일 수 있거나, 또는 중심 서열분석 사이클에 인접한 좌측 플랭킹/콘텍스트 서열분석 사이클(도 1c)일 수 있다. 중심 서열분석 사이클로부터의 우측 또는 좌측 오프셋도 또한 변할 수 있다. 즉, n회의 염기 호출 반복 시의 표적 서열분석 사이클(108)은 n회의 염기 호출 반복 시의 중심 위치, 중심 위치의 바로 우측, 중심 위치의 바로 좌측, 중심 위치의 우측에 대한 임의의 오프셋, 중심 위치의 좌측에 대한 임의의 오프셋, 또는 임의의 다른 위치에 속할 수 있다. 표적 서열분석 사이클 동안의 염기 호출 반복들은 서열분석 사이클들의 주어진 입력 윈도우에서, 서열분석 사이클들의 가변 길이들의 입력들 및 또한, 다양한 길이들의 서열분석 사이클들 동안의 다수의 염기 호출 출력들을 가질 수 있다.
하나의 구현예에서, 개시된 기술은, 서열분석 런의 서열분석 사이클들 동안 생성된 사이클별 분석물 채널 세트들의 진행에 액세스하는 것, 특정 서열분석 사이클이 상이한 위치들에 나타난 다수의 윈도우들로부터, 신경 네트워크 기반 염기 호출자(102)가 서열분석 런의 서열분석 사이클들의 대상 윈도우 동안의 진행 시에 사이클별 분석물 채널 세트들의 대상 윈도우를 프로세싱하고 서열분석 사이클들의 대상 윈도우 내의 3개 이상의 서열분석 사이클들 동안 임시 염기 호출 예측들을 생성하도록 신경 네트워크 기반 염기 호출자(102)를 통해, 서열분석 런의 서열분석 사이클들의 윈도우들 동안의 진행 시에 사이클별 분석물 채널 세트들의 윈도우들을 프로세싱하는 것, 신경 네트워크 기반 염기 호출자(102)를 사용하여 특정 서열분석 사이클 동안 임시 염기 호출 예측들을 생성하는 것, 및 임시 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안의 염기 호출을 결정하는 것을 포함한다.
하나의 구현예에서, 개시된 기술은, 서열분석 런의 서열분석 사이클들 동안 생성된 일련의 사이클별 분석물 채널 세트들에 액세스하는 것, 신경 네트워크 기반 염기 호출자(102)가 서열분석 런의 서열분석 사이클들의 대상 윈도우 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 대상 윈도우를 프로세싱하고 서열분석 사이클들의 대상 윈도우 내의 2개 이상의 서열분석 사이클들 동안의 염기 호출 예측들을 생성하도록 신경 네트워크 기반 염기 호출자(102)를 통해, 서열분석 런의 서열분석 사이클들의 윈도우들 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 윈도우들을 프로세싱하는 것, 및 신경 네트워크 기반 염기 호출자(102)를 통해, 서열분석 런의 서열분석 사이클들의 복수의 윈도우들 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 복수의 윈도우들을 프로세싱하고 복수의 윈도우들 중의 각각의 윈도우 동안 출력을 생성하는 것을 포함한다.
복수의 윈도우들 중의 각각의 윈도우는 서열분석 런의 특정 서열분석 사이클 동안의 특정 사이클별 분석물 채널 세트를 포함할 수 있다. 복수의 윈도우들 중의 각각의 윈도우 동안의 출력은 (i) 특정 서열분석 사이클 동안의 염기 호출 예측, 및 (ii) 서열분석 런의 하나 이상의 추가적인 서열분석 사이클들 동안의 하나 이상의 추가적인 염기 호출 예측들을 포함하여, 이에 의해, 복수의 윈도우들에 걸친 특정 서열분석 사이클 동안 (예를 들어, 출력 층에 의해 병렬로 또는 동시에 생성되는) 복수의 염기 호출 예측들을 생성한다. 마지막으로, 개시된 기술은, 복수의 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안의 염기 호출을 결정하는 것을 포함한다.
우측 플랭킹 입력(132)은, 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들(예컨대, 사이클들 2 및 3) 동안 이전 이미지 데이터(104, 106)가 보충된, 서열분석 런의 현재 서열분석 사이클(예컨대, 사이클 4) 동안의 현재 이미지 데이터(108)를 포함한다. 우측 플랭킹 출력(142)은 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측(114) 및 이전 서열분석 사이클들 동안의 염기 호출 예측들(110, 112)을 포함한다.
중심 입력(134)은 이전 이미지 데이터(106)(예컨대, 사이클 3) 및 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들(예컨대, 사이클 5) 동안의 연속 이미지 데이터(116)가 보충된, 현재 이미지 데이터(108)를 포함한다. 중심 출력(144)은 현재 서열분석 사이클 동안의 중심 염기 호출 예측(120) 및 이전 서열분석 사이클들 및 연속 서열분석 사이클들 동안의 염기 호출 예측들(118, 122)을 포함한다.
좌측 플랭킹 입력(136)은 연속 이미지 데이터(116, 124)가 보충된, 현재 이미지 데이터(108)를 포함한다. 좌측 플랭킹 출력(146)은 현재 서열분석 사이클 동안의 좌측 플랭킹 염기 호출 예측(126) 및 연속 서열분석 사이클들(예컨대, 사이클들 5 및 6) 동안의 염기 호출 예측들(128, 130)을 포함한다.
도 1d 및 도 1e는 개시된 다-대-다 염기 호출의 상이한 예들을 도시한다. 도 1d 및 도 1e에서, 청색 박스는 특정 또는 표적 서열분석 사이클(또는 이에 따른 데이터)을 표현한다. 특정 서열분석 사이클은 또한, 개시된 기술의 다양한 구현예들에서, 현재 서열분석 사이클로 간주된다. 오렌지색 박스들은 특정 서열분석 사이클과는 상이한 서열분석 사이클들(또는 이들에 따른 데이터)을 표현한다. 녹색 원들은 특정 서열분석 사이클 동안 생성된 하나 이상의 염기 호출들을 표현한다. 염기 호출들은 Illumina의 실시간 분석(Real-Time Analysis, RTA) 소프트웨어 또는 개시된 신경 네트워크 기반 염기 호출자(102)와 같은 임의의 염기 호출자에 의해 생성될 수 있다. 서열분석 사이클들 동안의 데이터는 이미지들 또는 일부 다른 유형의 입력 데이터, 예컨대 현재 판독물들, 전압 변화들, pH 스케일 데이터 등일 수 있다.
도 1d를 참조하면, 제1 다-대-다 염기 호출 예(180)는 3회의 염기 호출 반복들(180a, 180b, 180c) 및 서열분석 사이클들 w1, w2, 및 w3(또는 이들에 따른 데이터)의 대응하는 3개의 입력 윈도우들/그룹들을 보여준다. 하나의 구현예에서, 염기 호출 반복들은 서열분석 사이클들의 대응하는 입력 윈도우 내의 각각의 서열분석 사이클 동안 염기 호출들을 생성한다. 다른 구현예에서, 염기 호출 반복들은 서열분석 사이클들의 대응하는 입력 윈도우 내의 서열분석 사이클들 중 일부 동안만(예컨대, 특정 서열분석 사이클 동안만) 염기 호출들을 생성한다. 또한, 특정 서열분석 사이클은 서열분석 사이클들 w1, w2, 및 w3의 입력 윈도우들/그룹들 내의 상이한 위치들에 나타날 수 있다. 다른 구현예들(도시되지 않음)에서, 서열분석 사이클들의 2개 이상의 입력 윈도우들/그룹들은 동일한 위치에서 특정 서열분석 사이클을 가질 수 있다. 더욱이, 서열분석 사이클들 w1, w2 및 w3의 입력 윈도우들/그룹들은 적어도 하나의 중첩 사이클로서의 특정 서열분석 사이클을 갖고, 또한, 하나 이상의 비중첩 사이클들을 갖는다. 즉, 서열분석 사이클들의 상이한 입력 윈도우들/그룹 내의 상이한 위치들에서의 오렌지색 박스들은 상이한 비중첩 사이클들을 표현한다. 마지막으로, 3회의 염기 호출 반복들(180a, 180b, 180c)은 특정 서열분석 사이클 동안 3개의 염기 호출들(즉, 3개의 녹색 원들)을 생성하는데, 이들은 임시 염기 호출들로 간주될 수 있고, 후속적으로, 집적체로서 분석되어 특정 서열분석 사이클 동안 최종 염기 호출을 행할 수 있다. 분석의 상이한 예들이 도 2, 도 3 및 도 4에서 후술된다.
다-대-다 염기 호출(181, 182)의 제2 및 제3 예들은, 특정 서열분석 사이클이 서열분석 사이클들의 입력 윈도우들/그룹 내의 임의의 위치에 있을 수 있고 임의의 수의 우측 및 좌측 플랭킹 사이클들을 가질 수 있거나 또는 어떠한 플랭킹 사이클들도 전혀 갖지 않을 수 있다는 것(예컨대, 제3 다-대-다 염기 호출 예(182)의 제3 윈도우(w3))을 예시한다. 3회의 염기 호출 반복들(181a, 181b, 181c)은 특정 서열분석 사이클 동안 3개의 염기 호출들(즉, 3개의 녹색 원들)을 생성하는데, 이들은 임시 염기 호출들로 간주될 수 있고, 후속적으로, 집적체로서 분석되어 특정 서열분석 사이클 동안 최종 염기 호출을 행할 수 있다. 분석의 상이한 예들이 도 2, 도 3 및 도 4에서 후술된다. 3회의 염기 호출 반복들(182a, 182b, 182c)은 특정 서열분석 사이클 동안 3개의 염기 호출들(즉, 3개의 녹색 원들)을 생성하는데, 이들은 임시 염기 호출들로 간주될 수 있고, 후속적으로, 집적체로서 분석되어 특정 서열분석 사이클 동안 최종 염기 호출을 행할 수 있다. 분석의 상이한 예들이 도 2, 도 3 및 도 4에서 후술된다.
도 1e는 5회의 염기 호출 반복들(183a 내지 183e)을 갖는 다-대-다 염기 호출 예(183)를 도시하며, 염기 호출 반복들 각각은 특정 서열분석 사이클 동안의 데이터가 상이한 위치들에서 발생하는 입력 데이터의 5개의 각자의 윈도우들/세트들/그룹들을 프로세싱함으로써 특정 서열분석 사이클들 동안 염기 호출 예측을 생성한다. 5회의 염기 호출 반복들(183a 내지 183e)은 특정 서열분석 사이클 동안 5개의 염기 호출들(즉, 5개의 녹색 원들)을 생성하는데, 이들은 임시 염기 호출들로 간주될 수 있고, 후속적으로, 집적체로서 분석되어 특정 서열분석 사이클 동안 최종 염기 호출을 행할 수 있다. 분석의 상이한 예들이 도 2, 도 3 및 도 4에서 후술된다.
도 2, 도 3 및 도 4는 염기 호출 생성기의 상이한 구현예들을 도시한다. 염기 호출 생성기(202)(예컨대, 호스트 프로세서 상에서 실행됨)는 (예컨대, PCIe 버스 또는 이더넷 또는 InfiniBand(IB)를 통해) 신경 네트워크 기반 염기 호출자(102)(예컨대, 칩 상에서 실행됨)에 커플링되고, 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측에 기초하여 현재 서열분석 사이클(예컨대, 사이클 4) 동안 염기 호출을 생성하도록 구성된다.
현재 서열분석 사이클 동안의 현재 이미지 데이터는 현재 서열분석 사이클에서 캡처된 분석물들 및 그들의 주변 배경의 세기 방출물들을 묘사한다. 현재 서열분석 사이클(예컨대, 사이클 4) 동안의 우측 플랭킹 염기 호출 예측(114), 중심 염기 호출 예측(120), 및 좌측 플랭킹 염기 호출 예측(126)은 현재 서열분석 사이클에서 분석물들 중 하나 이상의 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 식별한다. 하나의 구현예에서, 가능성들은, 염기 호출자(102)에 의해 출력 층으로서 사용되는 소프트맥스 층에 의해 생성되는 지수적으로 정규화된 스코어들이다.
하나의 구현예에서, 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측(114)은 현재 서열분석 사이클(예컨대, 사이클 4)과 이전 서열분석 사이클들 사이의 프리-페이징 효과를 설명한다. 하나의 구현예에서, 현재 서열분석 사이클(예컨대, 사이클 4) 동안의 중심 염기 호출 예측(120)은 현재 서열분석 사이클과 이전 서열분석 사이클들 사이의 프리-페이징 효과 및 현재 서열분석 사이클과 연속 서열분석 사이클들 사이의 페이징 효과를 설명한다. 하나의 구현예에서, 현재 서열분석 사이클(예컨대, 사이클 4) 동안의 좌측 플랭킹 염기 호출 예측(126)은 현재 서열분석 사이클과 연속 서열분석 사이클들 사이의 페이징 효과를 설명한다.
도 2에 도시된 바와 같이, 염기 호출 생성기는, 현재 서열분석 사이클(예컨대, 사이클 4) 동안 우측 플랭킹 염기 호출 예측(114), 중심 염기 호출 예측(120), 및 좌측 플랭킹 염기 호출 예측(126)에 걸친 가능성들을 염기별로 합산하고, 염기별 합들에 기초하여 염기별 평균들(212)을 결정하고, 염기별 평균들 중 가장 높은 염기별 평균(예컨대, 0.38)에 기초하여 현재 서열분석 사이클(예컨대, 사이클 4) 동안 염기 호출(214)을 생성하는 평균화기(204)를 포함하도록 추가로 구성된다.
도 3에 도시된 바와 같이, 염기 호출 생성기는, 가능성들 중 가능 높은 가능성에 기초하여 현재 서열분석 사이클(예컨대, 사이클 4) 동안의 우측 플랭킹 염기 호출 예측(114), 중심 염기 호출 예측(120), 및 좌측 플랭킹 염기 호출 예측(126) 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스(306)를 생성하고, 예비 염기 호출들의 시퀀스 내의 가장 보편적인 염기 호출(308)에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성하는 콘센서(consensor)(304)를 포함하도록 추가로 구성된다.
도 4에 도시된 바와 같이, 염기 호출 생성기는, 가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스(406)를 생성하고, 예비 염기 호출들의 시퀀스 내의 예비 염기 호출들 중의 각자의 예비 염기 호출들에 염기별 가중치들(408)을 적용하여 가중화된 예비 염기 호출들의 시퀀스(410)를 생성하고, 가중화된 예비 염기 호출들의 시퀀스 내의 가장 가중화된 염기 호출(412)에 기초하여 현재 서열분석 사이클(예컨대, 사이클 4) 동안 염기 호출을 생성하는 가중화된 콘센서(404)를 포함하도록 추가로 구성된다. 일부 구현예들에서, 염기별 가중치들(408)은, 예를 들어, 사이클 단위로 미리설정된다. 다른 구현예들에서, 염기별 가중치들(408)은, 예를 들어, 최소 제곱 접근법을 사용하여 학습된다.
도 6에 도시된 하나의 구현예에서, 개시된 기술은, 서열분석 런의 현재 서열분석 사이클 동안에는 현재 이미지 데이터에, 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안에는 이전 이미지 데이터에, 그리고 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안에는 연속 이미지 데이터에 액세스하는 것(액션(602)), 신경 네트워크 기반 염기 호출자를 통해 현재 이미지 데이터, 이전 이미지 데이터, 및 연속 이미지 데이터의 상이한 그룹들을 프로세싱하여 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들을 생성하는 것(액션(612)), 및 제1, 제2, 및 제3 염기 호출 예측들에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성하는 것(액션(622))을 포함한다.
하나의 구현예에서, 상이한 그룹들은 현재 이미지 데이터 및 이전 이미지 데이터를 포함하는 제1 그룹, 현재 이미지 데이터, 이전 이미지 데이터, 및 연속 이미지 데이터를 포함하는 제2 그룹, 및 현재 이미지 데이터 및 연속 이미지 데이터를 포함하는 제3 그룹을 포함한다.
하나의 구현예에서, 개시된 기술은, 신경 네트워크 기반 염기 호출자를 통해 제1 그룹을 프로세싱하여 제1 염기 호출 예측을 생성하는 것, 신경 네트워크 기반 염기 호출자를 통해 제2 그룹을 프로세싱하여 제2 염기 호출 예측을 생성하는 것, 및 신경 네트워크 기반 염기 호출자를 통해 제3 그룹을 프로세싱하여 제3 염기 호출 예측을 생성하는 것을 포함한다.
하나의 구현예에서, 현재 서열분석 사이클 동안의 제1, 제2, 및 제3 염기 호출 예측들은 현재 서열분석 사이클에서 분석물들 중 하나 이상의 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 식별한다.
하나의 구현예에서, 개시된 기술은, 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들에 걸친 가능성들을 염기별로 합산하고, 염기별 합산에 기초하여 염기별 평균들을 결정하고, 염기별 평균들 중 가장 높은 염기별 평균에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하는 것을 포함한다.
하나의 구현예에서, 개시된 기술은, 가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고, 예비 염기 호출들의 시퀀스 내의 가장 보편적인 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하는 것을 포함한다.
하나의 구현예에서, 개시된 기술은, 가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고, 예비 염기 호출들의 시퀀스 내의 예비 염기 호출들 중의 각자의 예비 염기 호출들에 염기별 가중치들을 적용하여 가중화된 예비 염기 호출들의 시퀀스를 생성하고, 가중화된 예비 염기 호출들의 시퀀스 내의 가장 가중화된 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하는 것을 포함한다.
"다중-사이클 트레이닝, 단일 사이클 추론"으로 불리는 하나의 구현예에서, 염기 호출자(102)는 염기 호출자 생성기를 사용하는 트레이닝 중에는, 2개 이상의 서열분석 사이클들 동안 2개 이상의 염기 호출 예측들을 생성하도록 트레이닝되지만, 추론 중에는, 단일 서열분석 사이클 동안만 염기 호출 예측을 생성한다.
"다중-사이클 트레이닝, 다중-사이클 추론"으로 불리는 하나의 구현예에서, 염기 호출자(102)는 트레이닝 중에는 2개 이상의 서열분석 사이클들 동안 2개 이상의 염기 호출 예측들을 생성하도록, 그리고 염기 호출자 생성기(202)를 사용하여 추론 중에 동일하게 행하도록 트레이닝된다.
다중-사이클 기울기 역전파
도 5는 개시된 "다중-사이클 기울기 역전파(500)"의 하나의 구현예를 도시한다. 도 5에 도시된 바와 같이, 다-대-다 염기 호출(100)은, 신경 네트워크 기반 염기 호출자(102)의 우측 플랭킹 출력(506), 중심 출력(504), 및 좌측 플랭킹 출력(502)에 기초하여 현재 서열분석 사이클(예컨대, 사이클 3), 이전 서열분석 사이클들(예컨대, 사이클 2), 및 연속 서열분석 사이클들(예컨대, 사이클 4) 동안 염기 호출 생성기(202)에 의해 생성된 염기 호출들과 각자의 실측 자료(ground truth) 염기 호출들(554, 534, 514) 사이의 에러들(512, 532, 552)을 계산하고, 에러들에 기초하여 현재 서열분석 사이클, 이전 서열분석 사이클들, 및 연속 서열분석 사이클들 동안 각자의 기울기들(542, 522, 562)을 결정하고, 기울기들을 역전파시킴으로써 신경 네트워크 기반 염기 호출자의 파라미터들을 업데이트하는 트레이너를 포함하도록 추가로 구성된다.
기술적 효과/이점
도 7은 개시된 기술의 기술적 효과 및 이점들을 도시한다.
"다중-사이클 트레이닝, 단일 사이클 추론" 구현예는 도 7에서 "DL 3C 중간"으로 불리고, 전통적인 비-신경 네트워크 기반 실시간 분석 염기 호출 소프트웨어를 통해 염기 호출 에러 레이트를 8%만큼 개선한다.
"다중-사이클 트레이닝, 다중-사이클 추론" 구현예는 도 7에서 "DL 3C 평균"으로 불리고, DL 3C 중간 구현예를 통해 염기 호출 에러 레이트를 다른 8%만큼 추가로 개선한다.
서열분석 사이클들을 다수회 염기 호출하는 것은 염기 호출 정확도를 개선하고, 염기 호출 불일치들 및 모호한 염기 호출들을 검출하고 해결한다.
다중-사이클 기울기 역전파는 또한, 염기 호출의 트레이닝 태스크를 통해 염기 호출자(102)의 기울기들 및 그의 염기 호출 정확도를 개선한다.
서열분석 시스템
도 8a 및 도 8b는 서열분석 시스템(800A)의 하나의 구현예를 도시한다. 서열분석 시스템(800A)은 구성가능한 프로세서(846)를 포함한다. 구성가능한 프로세서(846)는 본 명세서에 개시된 염기 호출 기법들을 구현한다. 서열분석 시스템은 "서열분석기"로도 지칭된다.
서열분석 시스템(800A)은 생물학적 또는 화학적 물질 중 적어도 하나에 관련된 임의의 정보 또는 데이터를 획득하도록 동작할 수 있다. 일부 구현예들에서, 서열분석 시스템(800A)은 벤치탑(bench-top) 디바이스 또는 데스크톱 컴퓨터와 유사할 수 있는 워크스테이션이다. 예를 들어, 원하는 반응들을 이행하기 위한 시스템들 및 컴포넌트들의 대부분(또는 전부)이 공통 하우징(802) 내에 있을 수 있다.
특정 구현예들에서, 서열분석 시스템(800A)은, 드 노보 서열분석(de novo sequencing), 전체 게놈들 또는 표적 게놈 영역들의 재서열분석, 및 메타게노믹스(metagenomics)를 포함하지만 이들로 제한되지 않는 다양한 응용들을 위해 구성된 핵산 서열분석 시스템이다. 서열분석기는 또한 DNA 또는 RNA 분석을 위해 사용될 수 있다. 일부 구현예들에서, 서열분석 시스템(800A)은 또한, 바이오센서 내의 반응 사이트들을 생성하도록 구성될 수 있다. 예를 들어, 서열분석 시스템(800A)은 샘플을 수용하도록, 그리고 샘플로부터 도출된 클론 증폭된 핵산의 표면 부착 클러스터들을 생성하도록 구성될 수 있다. 각각의 클러스터는 바이오센서 내의 반응 사이트를 구성하거나 그의 일부일 수 있다.
예시적인 서열분석 시스템(800A)은 바이오센서(812) 내에서 원하는 반응들을 수행하기 위해 바이오센서(812)와 상호작용하도록 구성된 시스템 리셉터클 또는 인터페이스(810)를 포함할 수 있다. 도 8a와 관련한 하기의 설명에서, 바이오센서(812)는 시스템 리셉터클(810) 내로 로딩된다. 그러나, 바이오센서(812)를 포함하는 카트리지는 시스템 리셉터클(810) 내로 삽입될 수 있고, 일부 상태들에서, 카트리지는 일시적으로 또는 영구적으로 제거될 수 있다는 것이 이해된다. 전술된 바와 같이, 카트리지는, 특히, 유체 제어 및 유체 저장 컴포넌트들을 포함할 수 있다.
특정 구현예들에서, 서열분석 시스템(800A)은 바이오센서(812) 내에서 다수의 병렬 반응들을 수행하도록 구성된다. 바이오센서(812)는 원하는 반응들이 발생할 수 있는 하나 이상의 반응 사이트들을 포함한다. 반응 사이트들은, 예를 들어, 바이오센서의 고체 표면에 고정화되거나, 또는 바이오센서의 대응하는 반응 챔버들 내에 위치되는 비드들(또는 다른 이동가능한 기재들)에 고정화될 수 있다. 반응 사이트들은, 예를 들어, 클론 증폭된 핵산의 클러스터들을 포함할 수 있다. 바이오센서(812)는 솔리드 스테이트 이미징 디바이스(예컨대, CCD 또는 CMOS 이미저) 및 이에 탑재되는 플로우 셀을 포함할 수 있다. 플로우 셀은, 서열분석 시스템(800A)으로부터 용액을 수용하고 그 용액을 반응 사이트들을 향해 지향시키는 하나 이상의 플로우 채널들을 포함할 수 있다. 선택적으로, 바이오센서(812)는 열 에너지를 플로우 채널 내로 또는 플로우 채널 밖으로 이송하기 위한 열 요소와 결합하도록 구성될 수 있다.
서열분석 시스템(800A)은 생물학적 또는 화학적 분석을 위한 미리결정된 방법 또는 검정 프로토콜을 수행하기 위해 서로 상호작용하는 다양한 컴포넌트들, 조립체들, 및 시스템들(또는 서브시스템들)을 포함할 수 있다. 예를 들어, 서열분석 시스템(800A)은 서열분석 시스템(800A)의 다양한 컴포넌트들, 조립체들, 및 서브시스템들, 및 또한 바이오센서(812)와 통신할 수 있는 시스템 제어기(806)를 포함한다. 예를 들어, 시스템 리셉터클(810)에 더하여, 서열분석 시스템(800A)은 또한, 서열분석 시스템(800A) 및 바이오센서(812)의 유체 네트워크 전체에 걸쳐 유체의 흐름을 제어하기 위한 유체 제어 시스템(808); 생물검정 시스템에 의해 사용될 수 있는 모든 유체들(예컨대, 기체 또는 액체류)을 보유하도록 구성된 유체 저장 시스템(814); 유체 네트워크, 유체 저장 시스템(814), 및/또는 바이오센서(812) 내의 유체의 온도를 조절할 수 있는 온도 제어 시스템(804); 및 바이오센서(812)를 조명하도록 구성된 조명 시스템(816)을 포함할 수 있다. 전술된 바와 같이, 바이오센서(812)를 갖는 카트리지가 시스템 리셉터클(810) 내로 로딩되는 경우, 카트리지는 또한 유체 제어 및 유체 저장 컴포넌트들을 포함할 수 있다.
또한, 도시된 바와 같이, 서열분석 시스템(800A)은 사용자와 상호작용하는 사용자 인터페이스(818)를 포함할 수 있다. 예를 들어, 사용자 인터페이스(818)는 사용자로부터의 정보를 디스플레이하거나 요청하기 위한 디스플레이(820) 및 사용자 입력들을 수신하기 위한 사용자 입력 디바이스(822)를 포함할 수 있다. 일부 구현예들에서, 디스플레이(820) 및 사용자 입력 디바이스(822)는 동일한 디바이스이다. 예를 들어, 사용자 인터페이스(818)는 개인의 터치의 존재를 검출하도록, 그리고 또한 디스플레이 상의 터치의 위치를 식별하도록 구성된 터치 감응형 디스플레이를 포함할 수 있다. 그러나, 마우스, 터치패드, 키보드, 키패드, 핸드헬드 스캐너, 음성 인식 시스템, 모션 인식 시스템 등과 같은 다른 사용자 입력 디바이스들(822)이 사용될 수 있다. 하기에서 더 상세히 논의되는 바와 같이, 서열분석 시스템(800A)은 원하는 반응들을 수행하기 위해, 바이오센서(812)(예컨대, 카트리지의 형태로 있음)를 포함하는 다양한 컴포넌트들과 통신할 수 있다. 서열분석 시스템(800A)은, 또한, 사용자에게 원하는 정보를 제공하기 위해 바이오센서로부터 획득된 데이터를 분석하도록 구성될 수 있다.
시스템 제어기(806)는 마이크로제어기들을 사용하는 시스템, 축약 명령어 세트 컴퓨터(reduced instruction set computer, RISC), 주문형 반도체(ASIC), 필드 프로그래밍가능 게이트 어레이(FPGA), 코어스-그레인드 재구성가능 아키텍처(CGRA), 논리 회로, 및 본 명세서에 기술된 기능들을 실행할 수 있는 임의의 다른 회로 또는 프로세서를 포함하는, 임의의 프로세서 기반 또는 마이크로프로세서 기반 시스템을 포함할 수 있다. 상기의 예들은 단지 예시적인 것이며, 따라서, 어떠한 방식으로든, 용어 "시스템 제어기"의 정의 및/또는 의미를 제한하도록 의도되지 않는다. 예시적인 구현예에서, 시스템 제어기(806)는 검출 데이터를 획득하는 것 및 분석하는 것 중 적어도 하나를 위해 하나 이상의 저장 요소들, 메모리들, 또는 모듈들에 저장된 명령어들의 세트를 실행한다. 검출 데이터는 픽셀 신호들의 복수의 시퀀스들을 포함하여, 수백만 개의 센서들(또는 픽셀들) 각각으로부터의 픽셀 신호들의 시퀀스가 많은 염기 호출 사이클들에 걸쳐서 검출될 수 있게 할 수 있다. 저장 요소들은 서열분석 시스템(800A) 내의 정보 소스들 또는 물리적 메모리 요소들의 형태로 있을 수 있다.
명령어들의 세트는 본 명세서에 기술된 다양한 구현예들의 방법들 및 프로세스들과 같은 특정 동작들을 수행하도록 서열분석 시스템(800A) 또는 바이오센서(812)에 지시하는 다양한 커맨드들을 포함할 수 있다. 명령어들의 세트는, 유형적(tangible)인 비일시적 컴퓨터 판독가능 매체 또는 매체들의 일부를 형성할 수 있는 소프트웨어 프로그램의 형태로 있을 수 있다. 본 명세서에 사용되는 바와 같이, 용어들 "소프트웨어" 및 "펌웨어"는 상호교환가능하며, RAM 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 및 비휘발성 RAM(NVRAM) 메모리를 포함한, 컴퓨터에 의한 실행을 위한 메모리에 저장된 임의의 컴퓨터 프로그램을 포함한다. 상기의 메모리 유형들은 단지 예시적이며, 따라서, 컴퓨터 프로그램의 저장을 위해 사용가능한 메모리의 유형들에 대한 제한은 아니다.
소프트웨어는 시스템 소프트웨어 또는 애플리케이션 소프트웨어와 같은 다양한 형태들로 있을 수 있다. 또한, 소프트웨어는 별개의 프로그램들의 집합의 형태, 또는 더 큰 프로그램 내의 프로그램 모듈 또는 프로그램 모듈의 일부분의 형태로 있을 수 있다. 소프트웨어는 또한 객체 지향 프로그래밍 형태의 모듈식 프로그래밍을 포함할 수 있다. 검출 데이터를 획득한 후에, 검출 데이터는 서열분석 시스템(800A)에 의해 자동으로 프로세싱될 수 있거나, 사용자 입력들에 응답하여 프로세싱될 수 있거나, 또는 다른 프로세싱 기계에 의해 이루어진 요청(예컨대, 통신 링크를 통한 원격 요청)에 응답하여 프로세싱될 수 있다. 예시된 구현예에서, 시스템 제어기(806)는 분석 모듈(844)을 포함한다. 다른 구현예들에서, 시스템 제어기(806)는 분석 모듈(844)을 포함하지 않고, 대신에, 분석 모듈(844)에 액세스한다(예컨대, 분석 모듈(844)은 클라우드 상에서 개별적으로 호스팅될 수 있음).
시스템 제어기(806)는 통신 링크들을 통해 서열분석 시스템(800A)의 바이오센서(812) 및 다른 컴포넌트들에 접속될 수 있다. 시스템 제어기(806)는 또한 현장외(off-site) 시스템들 또는 서버들에 통신가능하게 접속될 수 있다. 통신 링크들은 유선, 코드, 또는 무선일 수 있다. 시스템 제어기(806)는 사용자 인터페이스(818) 및 사용자 입력 디바이스(822)로부터 사용자 입력들 또는 커맨드들을 수신할 수 있다.
유체 제어 시스템(808)은 유체 네트워크를 포함하며, 유체 네트워크를 통한 하나 이상의 유체들의 유동을 지향시키고 조절하도록 구성된다. 유체 네트워크는 바이오센서(812) 및 유체 저장 시스템(814)과 유체 연통할 수 있다. 예를 들어, 선택 유체들이, 제어된 방식으로, 유체 저장 시스템(814)으로부터 인출되어 바이오센서(812)로 지향될 수 있거나, 또는 유체들이 바이오센서(812)로부터 인출되어, 예를 들어, 유체 저장 시스템(814) 내의 폐기물 저장조를 향해 지향될 수 있다. 도시되어 있지 않지만, 유체 제어 시스템(808)은 유체 네트워크 내의 유체들의 유량 또는 압력을 검출하는 유동 센서들을 포함할 수 있다. 센서들은 시스템 제어기(806)와 통신할 수 있다.
온도 제어 시스템(804)은 유체 네트워크, 유체 저장 시스템(814) 및/또는 바이오센서(812)의 상이한 영역들에서의 유체들의 온도를 조절하도록 구성된다. 예를 들어, 온도 제어 시스템(804)은, 바이오센서(812)와 인터페이싱하고 바이오센서(812) 내의 반응 사이트들을 따라 유동하는 유체의 온도를 제어하는 서모사이클러(thermocycler)를 포함할 수 있다. 온도 제어 시스템(804)은, 또한, 서열분석 시스템(800A) 또는 바이오센서(812)의 고체 요소들 또는 컴포넌트들의 온도를 조절할 수 있다. 도시되어 있지 않지만, 온도 제어 시스템(804)은 유체의 온도를 검출하기 위한 센서 또는 다른 컴포넌트들을 포함할 수 있다. 센서들은 시스템 제어기(806)와 통신할 수 있다.
유체 저장 시스템(814)은 바이오센서(812)와 유체 연통하고, 내부에서 원하는 반응을 이행하는 데 사용되는 다양한 반응 컴포넌트들 또는 반응물들을 저장할 수 있다. 유체 저장 시스템(814)은, 또한, 유체 네트워크 및 바이오센서(812)를 세척 또는 세정하기 위한 그리고 반응물들을 희석하기 위한 유체들을 저장할 수 있다. 예를 들어, 유체 저장 시스템(814)은 샘플들, 시약들, 효소들, 다른 생체분자들, 완충 용액들, 수성 및 비극성 용액들 등을 저장하기 위한 다양한 저장조들을 포함할 수 있다. 더욱이, 유체 저장 시스템(814)은, 또한, 바이오센서(812)로부터 폐기물들을 수용하기 위한 폐기물 저장조들을 포함할 수 있다. 카트리지를 포함하는 구현예들에서, 카트리지는 유체 저장 시스템, 유체 제어 시스템, 또는 온도 제어 시스템 중 하나 이상을 포함할 수 있다. 따라서, 그러한 시스템들에 관한 것으로 본 명세서에 기술된 컴포넌트들 중 하나 이상은 카트리지 하우징 내에 포함될 수 있다. 예를 들어, 카트리지는 샘플들, 시약들, 효소들, 다른 생체분자들, 완충 용액들, 수성 및 비극성 용액들, 폐기물 등을 저장하기 위한 다양한 저장소들을 가질 수 있다. 이와 같이, 유체 저장 시스템, 유체 제어 시스템 또는 온도 제어 시스템 중 하나 이상이 카트리지 또는 다른 바이오센서를 통해 생물검정 시스템과 제거가능하게 결합될 수 있다.
조명 시스템(816)은 바이오센서를 조명하기 위한 광원(예컨대, 하나 이상의 LED들) 및 복수의 광학 컴포넌트들을 포함할 수 있다. 광원들의 예들은 레이저, 아크 램프, LED, 또는 레이저 다이오드를 포함할 수 있다. 광학 컴포넌트들은, 예를 들어, 반사기, 다이크로익(dichroic), 빔 스플리터, 시준기, 렌즈, 필터, 웨지, 프리즘, 거울, 검출기 등일 수 있다. 조명 시스템을 사용하는 구현예들에서, 조명 시스템(816)은 여기 광을 반응 사이트들로 지향시키도록 구성될 수 있다. 하나의 예로서, 형광단들은 광의 녹색 파장들에 의해 여기될 수 있는데, 이는 여기 광의 그러한 파장이 대략 532 nm일 수 있기 때문이다. 하나의 구현예에서, 조명 시스템(816)은 바이오센서(812)의 표면의 표면 법선에 평행한 조명을 생성하도록 구성된다. 다른 구현예에서, 조명 시스템(816)은 바이오센서(812)의 표면의 표면 법선에 대해 오프각(off-angle)인 조명을 생성하도록 구성된다. 또 다른 구현예에서, 조명 시스템(816)은 일부 평행 조명 및 일부 오프각 조명을 포함한 복수의 각도들을 갖는 조명을 생성하도록 구성된다.
시스템 리셉터클 또는 인터페이스(810)는 기계적 방식, 전기적 방식 및 유체 방식 중 적어도 하나로 바이오센서(812)와 결합하도록 구성된다. 시스템 리셉터클(810)은 바이오센서(812)를 통한 유체의 유동을 용이하게 하기 위해 바이오센서(812)를 원하는 배향으로 보유할 수 있다. 시스템 리셉터클(810)은, 또한, 바이오센서(812)와 결합하도록 구성된 전기 접촉부들을 포함하여, 서열분석 시스템(800A)이 바이오센서(812)와 통신하고/하거나 바이오센서(812)에 전력을 제공할 수 있게 할 수 있다. 또한, 시스템 리셉터클(810)은 바이오센서(812)와 결합하도록 구성된 유체 포트들(예컨대, 노즐들)을 포함할 수 있다. 일부 구현예들에서, 바이오센서(812)는 기계적 방식으로, 전기적 방식으로, 그리고 또한 유체 방식으로 시스템 리셉터클(810)에 제거가능하게 커플링된다.
또한, 서열분석 시스템(800A)은 다른 시스템들 또는 네트워크들과 또는 다른 생물검정 시스템(800A)과 원격으로 통신할 수 있다. 생물검정 시스템(들)(800A)에 의해 획득된 검출 데이터는 원격 데이터베이스에 저장될 수 있다.
도 8b는 도 8a의 시스템에서 사용될 수 있는 시스템 제어기(806)의 블록도이다. 하나의 구현예에서, 시스템 제어기(806)는 서로 통신할 수 있는 하나 이상의 프로세서들 또는 모듈들을 포함한다. 프로세서들 또는 모듈들 각각은 특정 프로세스들을 수행하기 위한 알고리즘(예컨대, 유형적 그리고/또는 비일시적 컴퓨터 판독가능 저장 매체 상에 저장된 명령어들) 또는 서브알고리즘들을 포함할 수 있다. 시스템 제어기(806)는, 개념적으로는 모듈들의 집합으로서 예시되지만, 전용 하드웨어 보드, DSP, 프로세서 등의 임의의 조합을 활용하여 구현될 수 있다. 대안으로, 시스템 제어기(806)는 단일 프로세서 또는 다수의 프로세서들을 갖는 기성품(off-the-shelf) PC를 활용하여 구현될 수 있으며, 이때 기능 동작들이 프로세서들 사이에 분배된다. 추가 옵션으로서, 후술되는 모듈들은 소정의 모듈식 기능들이 전용 하드웨어를 활용하여 수행되는 하이브리드 구성을 활용하여 구현될 수 있는 반면, 나머지 모듈식 기능들은 기성품 PC 등을 활용하여 수행된다. 모듈들은 또한 프로세싱 유닛 내의 소프트웨어 모듈들로서 구현될 수 있다.
동작 동안, 통신 포트(850)는 정보(예컨대, 커맨드들)를 바이오센서(812)(도 8a) 및/또는 서브시스템들(808, 814, 804)(도 8a)로 송신할 수 있거나 정보(예컨대, 데이터)를 그들로부터 수신할 수 있다. 구현예들에서, 통신 포트(850)는 픽셀 신호들의 복수의 시퀀스들을 출력할 수 있다. 통신 링크(834)는 사용자 인터페이스(818)(도 8a)로부터 사용자 입력을 수신할 수 있고, 데이터 또는 정보를 사용자 인터페이스(818)로 송신할 수 있다. 바이오센서(812) 또는 서브시스템들(808, 814, 804)로부터의 데이터는 생물검정 세션 동안 실시간으로 시스템 제어기(806)에 의해 프로세싱될 수 있다. 추가로 또는 대안으로, 데이터는 생물검정 세션 동안 시스템 메모리에 일시적으로 저장될 수 있고, 실시간 또는 오프라인 동작보다 느리게 프로세싱될 수 있다.
도 8b에 도시된 바와 같이, 시스템 제어기(806)는, 중앙 프로세싱 유닛(CPU)(852)과 함께, 주 제어 모듈(824)과 통신하는 복수의 모듈들(824 내지 848)을 포함할 수 있다. 주 제어 모듈(824)은 사용자 인터페이스(818)(도 8a)와 통신할 수 있다. 모듈들(824 내지 848)이 주 제어 모듈(824)과 직접 통신하는 것으로 도시되어 있지만, 모듈들(824 내지 848)은 또한 서로, 사용자 인터페이스(818), 및 바이오센서(812)와 직접 통신할 수 있다. 또한, 모듈들(824 내지 848)은 다른 모듈들을 통해 주 제어 모듈(824)과 통신할 수 있다.
복수의 모듈들(824 내지 848)은 서브시스템들(808, 814, 804, 816)과 각각 통신하는 시스템 모듈들(828 내지 832, 826)을 포함한다. 유체 제어 모듈(828)은 유체 제어 시스템(808)과 통신하여, 유체 네트워크를 통한 하나 이상의 유체들의 유동을 제어하기 위해 유체 네트워크의 유동 센서들 및 밸브들을 제어할 수 있다. 유체 저장 모듈(830)은 유체들이 낮을 때 또는 폐기물 저장소가 최대 용량에 또는 그 근처에 있을 때 사용자에게 통지할 수 있다. 유체 저장 모듈(830)은, 또한, 온도 제어 모듈(832)과 통신하여, 유체들이 원하는 온도로 저장될 수 있게 할 수 있다. 조명 모듈(826)은 조명 시스템(816)과 통신하여, 프로토콜 동안의 지정된 시간들에, 예컨대 원하는 반응들(예컨대, 결합 이벤트들)이 발생한 후에, 반응 사이트들을 조명할 수 있다. 일부 구현예들에서, 조명 모듈(826)은 지정된 각도들로 반응 사이트들을 조명하기 위해 조명 시스템(816)과 통신할 수 있다.
복수의 모듈들(824 내지 848)은, 또한, 바이오센서(812)와 통신하는 디바이스 모듈(836) 및 바이오센서(812)에 관한 식별 정보를 결정하는 식별 모듈(838)을 포함할 수 있다. 디바이스 모듈(836)은, 예를 들어, 시스템 리셉터클(810)과 통신하여, 바이오센서가 서열분석 시스템(800A)과 전기적 및 유체 접속을 확립하였음을 확인할 수 있다. 식별 모듈(838)은 바이오센서(812)를 식별하는 신호들을 수신할 수 있다. 식별 모듈(838)은 다른 정보를 사용자에게 제공하기 위해 바이오센서(812)의 아이덴티티를 사용할 수 있다. 예를 들어, 식별 모듈(838)은 로트 번호, 제조 날짜, 또는 바이오센서(812)로 실행될 것이 추천되는 프로토콜을 결정할 수 있고, 이어서, 이를 디스플레이할 수 있다.
복수의 모듈들(824 내지 848)은, 또한, 바이오센서(812)로부터 신호 데이터(예컨대, 이미지 데이터)를 수신 및 분석하는 분석 모듈(844)(신호 프로세싱 모듈 또는 신호 프로세서로도 칭해짐)을 포함한다. 분석 모듈(844)은 검출/이미지 데이터를 저장하기 위한 메모리(예컨대, RAM 또는 플래시)를 포함한다. 검출 데이터는 픽셀 신호들의 복수의 시퀀스들을 포함하여, 수백만 개의 센서들(또는 픽셀들) 각각으로부터의 픽셀 신호들의 시퀀스가 많은 염기 호출 사이클들에 걸쳐서 검출될 수 있게 할 수 있다. 신호 데이터는 후속 분석을 위해 저장될 수 있거나, 또는 사용자에게 원하는 정보를 디스플레이하기 위해 사용자 인터페이스(818)로 송신될 수 있다. 일부 구현예들에서, 신호 데이터는 분석 모듈(844)이 신호 데이터를 수신하기 전에 솔리드 스테이트 이미저(예컨대, CMOS 이미지 센서)에 의해 프로세싱될 수 있다.
분석 모듈(844)은 복수의 서열분석 사이클들 각각에서 광 검출기들로부터 이미지 데이터를 획득하도록 구성된다. 이미지 데이터는 광 검출기들에 의해 검출된 방출 신호들로부터 도출되고, 염기 호출자(102)를 통해 복수의 서열분석 사이클들 각각 동안의 이미지 데이터를 프로세싱하고, 복수의 서열분석 사이클 각각 동안 분석물들 중 적어도 일부에 대한 염기 호출을 생성한다. 광 검출기들은 하나 이상의 오버헤드 카메라들(예컨대, 상부로부터 바이오센서(812) 상의 클러스터들의 이미지들을 촬영하는 Illumina의 GAIIx의 CCD 카메라)의 일부일 수 있거나, 또는 바이오센서(812) 자체의 일부일 수 있다(예컨대, Illumina의 iSeq의 CMOS 이미지 센서들은 바이오센서(812) 상의 클러스터들의 하부에 놓이고, 저부로부터 클러스터들의 이미지들을 촬영한다).
광 검출기들의 출력은 서열분석 이미지들이며, 각각은 클러스터들 및 그들의 주변 배경의 세기 방출물들을 묘사한다. 서열분석 이미지들은 서열분석 동안 서열들 내의 뉴클레오티드 혼입의 결과로서 생성되는 세기 방출물들을 묘사한다. 세기 방출물들은 연관된 분석물들 및 그들의 주변 배경으로부터의 것이다. 서열분석 이미지들은 메모리(848)에 저장된다.
프로토콜 모듈들(840, 842)은 미리결정된 검정 프로토콜들을 이행할 때 서브시스템들(808, 814, 804)의 동작을 제어하기 위해 주 제어 모듈(824)과 통신한다. 프로토콜 모듈들(840, 842)은 미리결정된 프로토콜들에 따라 특정 동작들을 수행할 것을 서열분석 시스템(800A)에 지시하기 위한 명령어들의 세트들을 포함할 수 있다. 도시된 바와 같이, 프로토콜 모듈은 합성에 의한 서열분석(sequencing-by-synthesis, SBS) 프로세스를 수행하기 위한 다양한 커맨드들을 발행하도록 구성된 SBS 모듈(840)일 수 있다. SBS에서, 템플릿 내의 뉴클레오티드의 서열을 결정하기 위해 핵산 템플릿을 따른 핵산 프라이머의 연장이 모니터링된다. 기초 화학적 프로세스는 중합화(예컨대, 폴리머라제 효소에 의해 촉매화되는 바와 같음) 또는 결찰(ligation)(예컨대, 리가아제 효소에 의해 촉매화됨)일 수 있다. 특정 폴리머라제 기반 SBS 구현예에서, 프라이머에 첨가되는 뉴클레오티드의 순서 및 유형의 검출이 템플릿의 서열을 결정하는 데 사용될 수 있도록 하는 템플릿 의존 방식으로, 형광 표지된 뉴클레오티드가 프라이머에 첨가된다(이에 의해, 프라이머를 연장함). 예를 들어, 제1 SBS 사이클을 개시하기 위해, 핵산 템플릿들의 어레이를 수용하는 플로우 셀 내로/플로우 셀을 통해 하나 이상의 표지된 뉴클레오티드, DNA 폴리머라제 등을 전달하기 위한 커맨드들이 제공될 수 있다. 핵산 템플릿들은 대응하는 반응 사이트들에 위치될 수 있다. 프라이머 연장이 표지된 뉴클레오티드가 혼입되게 하는 그러한 반응 사이트들이 이미징 이벤트를 통해 검출될 수 있다. 이미징 이벤트 동안, 조명 시스템(816)은 반응 사이트들에 여기 광을 제공할 수 있다. 선택적으로, 뉴클레오티드는, 일단 뉴클레오티드가 프라이머에 첨가되었다면, 추가 프라이머 연장을 종결시키는 가역적 종결 속성을 추가로 포함할 수 있다. 예를 들어, 가역적 종결자 모이어티를 갖는 뉴클레오티드 유사체가 프라이머에 첨가되어, 모이어티를 제거하기 위해 탈블록킹제(deblocking agent)가 전달될 때까지 후속 연장이 발생할 수 없게 할 수 있다. 따라서, 가역적 종결을 사용하는 구현예들에 대해, (검출이 발생하기 전 또는 발생한 후) 탈블록킹 시약을 플로우 셀에 전달하기 위한 커맨드가 제공될 수 있다. 다양한 전달 단계들 사이의 세척(들)을 달성하기 위해 하나 이상의 커맨드들이 제공될 수 있다. 이어서, 사이클은 n개의 뉴클레오티드에 의해 프라이머를 연장시키기 위해 n회 반복되어, 이에 의해, 길이 n의 서열을 검출할 수 있다. 예시적인 서열분석 기법들이, 예를 들어 문헌[Bentley et al., Nature 456:53-59 (2008)]; 국제 특허 공개 WO 04/018497호; 미국 특허 제7,057,026호; 국제 특허 공개 WO 91/06678호; 국제 특허 공개 WO 07/123744호; 미국 특허 제7,329,492호; 미국 특허 제7,211,414호; 미국 특허 제7,315,019호; 미국 특허 제7,405,281호, 및 미국 특허 출원 공개 제2008/014708082호에 기재되어 있으며, 이들 각각은 본 명세서에 참고로 포함된다.
SBS 사이클의 뉴클레오티드 전달 단계의 경우, 단일 유형의 뉴클레오티드가 한 번에 전달될 수 있거나, 또는 다수의 상이한 뉴클레오티드 유형들이(예컨대, A, C, T 및 G가 함께) 전달될 수 있다. 단일 유형의 뉴클레오티드만이 한 번에 존재하는 뉴클레오티드 전달 구성의 경우, 상이한 뉴클레오티드는 별개의 표지들을 가질 필요가 없는데, 이는 그들이 개별화된 전달 시에 고유한 시간적 분리에 기초하여 구별될 수 있기 때문이다. 따라서, 서열분석 방법 또는 장치는 단일 컬러 검출을 사용할 수 있다. 예를 들어, 여기 소스는 단일 파장의 또는 단일 파장 범위 내의 여기만을 제공할 필요가 있다. 전달이 플로우 셀 내에 한 번에 존재하는 다수의 상이한 뉴클레오티드를 생성하는 뉴클레오티드 전달 구성의 경우, 상이한 뉴클레오티드 유형들을 혼입하는 부위들은 혼합물 내의 각자의 뉴클레오티드 유형들에 부착되는 상이한 형광 표지들에 기초하여 구별될 수 있다. 예를 들어, 4개의 상이한 뉴클레오티드가 사용될 수 있으며, 각각은 4개의 상이한 형광단들 중 하나를 갖는다. 하나의 구현예에서, 4개의 상이한 형광단들은 스펙트럼의 4개의 상이한 영역들에서의 여기를 사용하여 구별될 수 있다. 예를 들어, 4개의 상이한 여기 방사선 소스들이 사용될 수 있다. 대안으로, 4개 미만의 상이한 여기 소스들이 사용될 수 있지만, 단일 소스로부터의 여기 방사선의 광학적 여과가 플로우 셀에서 상이한 범위들의 여기 방사선을 생성하는 데 사용될 수 있다.
일부 구현예들에서, 4개 미만의 상이한 컬러들이 4개의 상이한 뉴클레오티드를 갖는 혼합물에서 검출될 수 있다. 예를 들어, 뉴클레오티드의 쌍들은 동일한 파장에서 검출될 수 있지만, 그 쌍의 하나의 구성원에 대해 다른 구성원과 비교한 세기의 차이에 기초하여, 또는 그 쌍의 다른 구성원에 대해 검출된 신호와 비교한, 명백한 신호가 나타나거나 사라지게 하는 (예컨대, 화학적 변형, 광화학적 변형, 또는 물리적 변형을 통한) 그 쌍의 하나의 구성원에 대한 변화에 기초하여 구별될 수 있다. 4개 미만의 컬러들의 검출을 사용하여 4개의 상이한 뉴클레오티드를 구별하기 위한 예시적인 장치 및 방법들이, 예를 들어 미국 특허 출원 제61/538294호 및 제61/619,878호에 기재되어 있으며, 이들은 그들 전체가 본 명세서에 참고로 포함된다. 2012년 9월 21일자로 출원된 미국 출원 제13/624,200호가 또한 전체가 본 명세서에 참고로 포함된다.
복수의 프로토콜 모듈들은, 또한, 바이오센서(812) 내의 제품을 증폭시키기 위한 커맨드들을 유체 제어 시스템(808) 및 온도 제어 시스템(804)에 발행하도록 구성된 샘플 준비(또는 생성) 모듈(842)을 포함할 수 있다. 예를 들어, 바이오센서(812)는 서열분석 시스템(800A)에 결합될 수 있다. 증폭 모듈(842)은 필요한 증폭 성분들을 바이오센서(812) 내의 반응 챔버들로 전달하라는 명령어들을 유체 제어 시스템(808)에 발행할 수 있다. 다른 구현예들에서, 반응 사이트들은 증폭을 위한 일부 컴포넌트들, 예컨대 템플릿 DNA 및/또는 프라이머들을 이미 함유할 수 있다. 증폭 성분들을 반응 챔버들로 전달한 후에, 증폭 모듈(842)은 알려진 증폭 프로토콜들에 따라 상이한 온도 단계들을 통해 순환할 것을 온도 제어 시스템(804)에 지시할 수 있다. 일부 구현예들에서, 증폭 및/또는 뉴클레오티드 혼입은 등온적으로 수행된다.
SBS 모듈(840)은 클론 앰플리콘(clonal amplicon)들의 클러스터들이 플로우 셀의 채널 내의 국소화된 영역들 상에 형성되는 브리지 PCR을 수행하라는 커맨드들을 발행할 수 있다. 브리지 PCR을 통해 앰플리콘들을 생성한 후, 앰플리콘들은 단일 가닥 템플릿 DNA 또는 sstDNA를 만들기 위해 "선형화"될 수 있고, 서열분석 프라이머는 관심 영역을 플랭킹하는 유니버셜 서열에 혼성화될 수 있다. 예를 들어, 합성 방법에 의한 가역적 종결자 기반 서열분석은 상기에 기재된 바와 같이 또는 하기와 같이 사용될 수 있다.
각각의 염기 호출 또는 서열분석 사이클은, 예를 들어 변형된 DNA 폴리머라제 및 4개의 유형들의 뉴클레오티드의 혼합물을 사용함으로써 달성될 수 있는 단일 염기에 의해 sstDNA를 연장할 수 있다. 상이한 유형들의 뉴클레오티드는 고유 형광 표지들을 가질 수 있고, 각각의 뉴클레오티드는 각각의 사이클에서 단일 염기 혼입만이 발생하는 것을 허용하는 가역적 종결자를 추가로 가질 수 있다. 단일 염기가 sstDNA에 첨가된 후, 여기 광은 반응 사이트들 위로 입사할 수 있고, 형광 방출물들이 검출될 수 있다. 검출 후에, 형광 표지 및 종결자는 sstDNA로부터 화학적으로 절단될 수 있다. 다른 유사한 염기 호출 또는 서열분석 사이클이 이어질 수 있다. 그러한 서열분석 프로토콜에서, SBS 모듈(840)은 바이오센서(812)를 통해 시약 및 효소 용액들의 유동을 지향시킬 것을 유체 제어 시스템(808)에 지시할 수 있다. 본 명세서에 기술된 장치 및 방법들로 활용될 수 있는 예시적인 가역적 종결자 기반 SBS 방법들은, 미국 특허 출원 공개 제2007/0166705 A1호, 미국 특허 출원 공개 제2006/0188901 A1호, 미국 특허 제7,057,026호, 미국 특허 출원 공개 제2006/0240439 A1호, 미국 특허 출원 공개 제2006/02814714709 A1호, PCT 공개 공보 WO 05/065814호, 미국 특허 출원 공개 제2005/014700900 A1호, PCT 공개 공보 WO 06/08B199호 및 PCT 공개 공보 WO 07/01470251호에 기재되어 있으며, 이들 각각은 그 전체가 본 명세서에 참고로 포함된다. 가역적 종결자 기반 SBS를 위한 예시적인 시약들은 미국 특허 제7,541,444호; 미국 특허 제7,057,026호; 미국 특허 제7,414,14716호; 미국 특허 제7,427,673호; 미국 특허 제7,566,537호; 미국 특허 제7,592,435호, 및 국제 특허 출원 공개 WO 07/14835368호에 기재되어 있으며, 이들 각각은 그 전체가 본 명세서에 참고로 포함된다.
일부 구현예들에서, 증폭 및 SBS 모듈들은 단일 검정 프로토콜로 동작할 수 있는데, 여기서 예를 들어, 템플릿 핵산은 증폭되고, 후속으로, 동일한 카트리지 내에서 서열분석된다.
서열분석 시스템(800A)은, 또한, 사용자가 검정 프로토콜을 재구성하는 것을 허용할 수 있다. 예를 들어, 서열분석 시스템(800A)은 결정된 프로토콜을 수정하기 위한 옵션들을 사용자 인터페이스(818)를 통해 사용자에게 제공할 수 있다. 예를 들어, 바이오센서(812)가 증폭을 위해 사용될 것으로 결정되는 경우, 서열분석 시스템(800A)은 어닐링 사이클을 위한 온도를 요청할 수 있다. 더욱이, 서열분석 시스템(800A)은 사용자가 선택된 검정 프로토콜에 대해 대체적으로 수용가능하지 않은 사용자 입력들을 제공한 경우에 사용자에게 경고들을 발행할 수 있다.
구현예들에서, 바이오센서(812)는 수백만 개의 센서들(또는 픽셀들)을 포함하고, 이들 각각은 연속 염기 호출 사이클들에 걸쳐서 픽셀 신호들의 복수의 시퀀스들을 생성한다. 분석 모듈(844)은 픽셀 신호들의 복수의 시퀀스들을 검출하고, 이들을 센서들의 어레이 상의 센서들의 로우별 및/또는 컬럼별 위치에 따라 대응하는 센서들(또는 픽셀들)에 기인하게 한다.-
도 9는 염기 호출 센서 출력들과 같은, 서열분석 시스템(800A)으로부터의 센서 데이터의 분석을 위한 시스템의 단순화된 블록도이다. 도 9의 예에서, 시스템은 구성가능한 프로세서(846)를 포함한다. 구성가능한 프로세서(846)는, 중앙 프로세싱 유닛(CPU)(852)(즉, 호스트 프로세서)에 의해 실행되는 런타임 프로그램과 협력하여 염기 호출자(예컨대, 신경 네트워크 기반 염기 호출자(102))를 실행할 수 있다. 서열분석 시스템(800A)은 바이오센서(812) 및 플로우 셀들을 포함한다. 플로우 셀들은 하나 이상의 타일들을 포함할 수 있는데, 여기서 유전 물질의 클러스터들은 클러스터들 내의 반응들이 유전 물질 내의 염기들을 식별하게 하는 데 사용되는 분석물 유동들의 시퀀스에 노출된다. 센서들은 플로우 셀의 각각의 타일 내의 시퀀스의 사이클 각각 동안의 반응들을 감지하여 타일 데이터를 제공한다. 유전자 서열분석은 데이터 집약적 동작이며, 이는 염기 호출 센서 데이터를, 염기 호출 동작 동안에 감지된 유전 물질의 각각의 클러스터에 대한 염기 호출들의 서열들로 변환한다.
이러한 예에서의 시스템은 런타임 프로그램을 실행시켜서 염기 호출 동작들을 조정하는 CPU(852), 타일 데이터의 어레이들의 시퀀스들을 저장하기 위한 메모리(848B), 염기 호출 동작에 의해 생성되는 염기 호출 판독물들, 및 염기 호출 동작들에서 사용되는 다른 정보를 포함한다. 또한, 이러한 예시에서, 시스템은 구성 파일(또는 파일들), 예컨대 FPGA 비트 파일들, 및 구성가능한 프로세서(846)를 구성 및 재구성하기 위해 그리고 신경 네트워크들을 실행하기 위해 사용되는 신경 네트워크들에 대한 모델 파라미터들을 저장할 메모리(848A)를 포함한다. 서열분석 시스템(800A)은 구성가능한 프로세서를 구성하기 위한 프로그램, 및 일부 실시예들에서, 신경 네트워크들을 실행하기 위한 재구성가능한 프로세서를 포함할 수 있다.
서열분석 시스템(800A)은 버스(902)에 의해 구성가능한 프로세서(846)에 커플링된다. 버스(902)는, 하나의 예에서 PCI-SIG(PCI Special Interest Group)에 의해 현재 유지되고 개발되는 PCIe(Peripheral Component Interconnect Express) 표준들과 호환가능한 버스 기술과 같은 고처리량 기술을 사용하여 구현될 수 있다. 또한, 이러한 예에서, 메모리(848A)는 버스(906)에 의해 구성가능한 프로세서(846)에 커플링된다. 메모리(848A)는 구성가능한 프로세서(846)를 갖는 회로 보드 상에 배치된 온-보드 메모리일 수 있다. 메모리(848A)는 염기 호출 동작에서 사용되는 데이터를 작동시키는 구성가능한 프로세서(846)에 의한 고속 액세스를 위해 사용된다. 버스(906)는, 또한, PCIe 표준들과 호환가능한 버스 기술과 같은 고처리량 기술을 사용하여 구현될 수 있다.
FPGA, CGRA, 및 다른 구성가능한 그리고 재구성가능한 디바이스들을 포함한 구성가능한 프로세서들은, 컴퓨터 프로그램을 실행하는 범용 프로세서를 사용하여 달성될 수 있었던 것보다 더 효율적이거나 더 빠르게 다양한 기능들을 구현하도록 구성될 수 있다. 구성가능한 프로세서들의 구성은, 때때로 비트스트림 또는 비트 파일로 지칭되는 구성 파일을 생성하기 위한 기능 설명을 컴파일하는 것, 및 구성 파일을 프로세서 상의 구성가능한 요소들에 분배하는 것을 수반한다. 구성 파일은, 데이터 흐름 패턴들, 분산형 메모리 및 다른 온-칩 메모리 리소스들의 사용, 룩업 테이블 콘텐츠들, 승산 및 누산(multiply-and-accumulate) 유닛들과 같은 구성가능한 실행 유닛들 및 구성가능한 논리 블록들의 동작들, 구성가능한 상호접속부들, 및 구성가능한 어레이의 다른 요소들을 설정하도록 회로를 구성함으로써, 구성가능한 프로세서에 의해 실행될 논리 기능들을 정의한다. 구성가능한 프로세서는, 구성 파일이 필드 내에서 변경될 수 있는 경우, 로딩된 구성 파일을 변경함으로써 재구성가능하다. 예를 들어, 구성 파일은, 구성가능한 또는 재구성가능한 프로세서 상의 구성가능한 요소들의 어레이 사이에 분포되는, 휘발성 SRAM 요소들에, 비휘발성 판독-기록 메모리 요소들에, 그리고 이들의 조합들에 저장될 수 있다. 다양한 상업적으로 입수가능한 구성가능한 프로세서들이 본 명세서에 기술된 바와 같은 염기 호출 동작에 사용하는 데 적합하다. 예들은, Google의 Tensor Processing Unit(TPU)™, 랙마운트 솔루션들, 예컨대 GX4 Rackmount Series™, GX9 Rackmount Series™, NVIDIA DGX-1™, Microsoft의 Stratix V FPGA™, Graphcore의 Intelligent Processor Unit (IPU)™, Snapdragon processors™을 갖는 Qualcomm의 Zeroth Platform™, NVIDIA의 Volta™, NVIDIA의 DRIVE PX™, NVIDIA의 JETSON TX1/TX2 MODULE™, Intel의 Nirvana™, Movidius VPU™, Fujitsu DPI™, ARM의 DynamicIQ™, IBM TrueNorth™, Testa V100s™을 갖는 Lambda GPU 서버, Xilinx Alveo™ U200, Xilinx Alveo™ U250, Xilinx Alveo™ U280, Intel/Altera Stratix™ GX2800, Intel/Altera Stratix™ GX2800, 및 Intel Stratix™ GX10M을 포함한다. 일부 예들에서, 호스트 CPU는 구성가능한 프로세서와 동일한 집적 회로 상에서 구현될 수 있다.
본 명세서에 기술된 실시예들은 구성가능한 프로세서(846)를 사용하여 신경 네트워크 기반 염기 호출자(102)를 구현한다. 구성가능한 프로세서(846)에 대한 구성 파일은 HDL(high level description language) 또는 RTL(register transfer level) 언어 규격을 사용하여 실행될 논리 기능들을 특정함으로써 구현될 수 있다. 규격은 구성 파일을 생성하기 위해, 선택된 구성가능한 프로세서에 대해 설계된 리소스들을 사용하여 컴파일될 수 있다. 구성가능한 프로세서가 아닐 수 있는 ASIC에 대한 설계를 생성할 목적으로 동일한 또는 유사한 규격이 컴파일될 수 있다.
따라서, 구성가능한 프로세서(846)에 대한 대안들은, 본 명세서에 기술된 모든 실시예들에서, 본 명세서에 기술된 바와 같은 신경 네트워크 기반 염기 호출 동작을 실행시키도록 구성된, 주문형 ASIC 또는 특수 목적 집적 회로 또는 집적 회로들의 세트를 포함하는 구성된 프로세서, 또는 SOC(system-on-a-chip) 디바이스, 또는 GPU(graphics processing unit) 프로세서 또는 CGRA 프로세서를 포함한다.
대체로, 신경 네트워크의 런들을 실행하도록 구성된 바와 같은, 본 명세서에 기술된 구성가능한 프로세서 및 구성된 프로세서들은 본 명세서에서 신경 네트워크 프로세서들로 지칭된다.
구성가능한 프로세서(846)는, 이러한 예에서, CPU(852)에 의해 실행되는 프로그램을 사용하여 로딩된 구성 파일에 의해 또는 다른 소스들에 의해 구성되며, 이는 염기 호출 기능을 실행하기 위한 구성가능한 프로세서 상에, 구성가능한 요소들(916)(예컨대, 룩업 테이블(look up table, LUT)들, 플립플롭들, 계산 프로세싱 유닛(compute processing unit, PMU)들, 및 계산 메모리 유닛(compute memory unit, CMU)들과 같은 구성 로직 블록(configuration logic block, CLB)들, 구성가능한 I/O 블록들, 프로그래밍가능한 상호접속부들)의 어레이를 구성한다. 이러한 예에서, 구성은, 버스들(902, 906)에 커플링되고 염기 호출 동작에 사용되는 요소들 사이에서 데이터 및 제어 파라미터들을 분배하기 위한 기능들을 실행하는 데이터 흐름 로직(908)을 포함한다.
또한, 구성가능한 프로세서(846)는 신경 네트워크 기반 염기 호출자(102)를 실행하기 위해 염기 호출 실행 데이터 흐름 로직(908)을 갖도록 구성된다. 데이터 흐름 로직(908)은 다중-사이클 실행 클러스터들(예컨대, 914)을 포함하는데, 이는, 이러한 예에서, 실행 클러스터 1 내지 실행 클러스터 X를 포함한다. 다중-사이클 실행 클러스터들의 수는 동작의 원하는 처리량, 및 구성가능한 프로세서(846) 상의 이용가능한 리소스들을 수반하는 트레이드오프에 따라 선택될 수 있다.
다중-사이클 실행 클러스터들은 구성가능한 프로세서(846) 상의 구성가능한 상호접속부 및 메모리 리소스들을 사용하여 구현되는 데이터 흐름 경로들(910)에 의해 데이터 흐름 로직(908)에 커플링된다. 또한, 다중-사이클 실행 클러스터들은, 예를 들어 구성가능한 프로세서(846) 상의 구성가능한 상호접속부 및 메모리 리소스들을 사용하여 구현된 제어 경로들(912)에 의해 데이터 흐름 로직(908)에 커플링되며, 이들은 이용가능한 실행 클러스터들을 나타내는 제어 신호들, 신경 네트워크 기반 염기 호출자(102)의 런의 실행을 위한 입력 유닛들을 이용가능한 실행 클러스터들에 제공하기 위한 준비성(readiness), 신경 네트워크 기반 염기 호출자(102)에 대한 트레이닝된 파라미터들을 제공하기 위한 준비성, 염기 호출 분류 데이터의 출력 패치들을 제공하기 위한 준비성, 및 신경 네트워크 기반 염기 호출자(102)의 실행을 위해 사용되는 다른 제어 데이터를 제공한다.
구성가능한 프로세서(846)는 트레이닝된 파라미터들을 사용하여 신경 네트워크 기반 염기 호출자(102)의 런들을 실행하여, 염기 호출 동작의 감지 사이클들 동안 분류 데이터를 생성하도록 구성된다. 신경 네트워크 기반 염기 호출자(102)의 런이 실행되어, 염기 호출 동작의 대상 감지 사이클 동안 분류 데이터를 생성한다. 신경 네트워크 기반 염기 호출자(102)의 런은 N개의 감지 사이클들의 각자의 감지 사이클들로부터 타일 데이터의 N개의 어레이들을 포함하는 시퀀스로 동작하며, 여기서 N개의 감지 사이클들은 본 명세서에 기술된 예들에서 시간 시퀀스 내의 동작마다 하나의 염기 포지션에 대한 상이한 염기 호출 동작들을 위한 센서 데이터를 제공한다. 선택적으로, N개의 감지 사이클들 중 일부는 실행되는 특정 신경 네트워크 모델에 따라, 필요한 경우, 시퀀스 이외일 수 있다. 수 N은 1 초과의 임의의 수일 수 있다. 본 명세서에 기술된 일부 예들에서, N개의 감지 사이클들의 감지 사이클들은 시간 시퀀스에서 대상 감지 사이클에 선행하는 적어도 하나의 감지 사이클 및 대상 사이클에 뒤이은 적어도 하나의 감지 사이클에 대한 감지 사이클들의 세트를 표현한다. 수 N이 5 이상의 정수인 예들이 본 명세서에 기술된다.
데이터 흐름 로직(908)은 N개의 어레이들의 공간적으로 정렬된 패치들에 대해 타일 데이터를 포함하는 주어진 런에 대한 입력 유닛들을 사용하여, 신경 네트워크 기반 염기 호출자(102)의 런들을 위한 타일 데이터 및 모델 파라미터들의 적어도 일부의 트레이닝된 파라미터들을 메모리(848A)로부터 구성가능한 프로세서(846)로 이동시키도록 구성된다. 입력 유닛들은 하나의 DMA 동작에서 직접 메모리 액세스 동작들에 의해 이동될 수 있거나, 또는 더 작은 유닛들에서, 전개된 신경 네트워크의 실행과 협력하여 이용가능한 시간 슬롯들 동안 이동될 수 있다.
본 명세서에 기술된 바와 같은 감지 사이클 동안의 타일 데이터는 하나 이상의 특징부들을 갖는 센서 데이터의 어레이를 포함할 수 있다. 예를 들어, 센서 데이터는 DNA, RNA, 또는 다른 유전 물질의 유전자 서열 내의 염기 포지션에서 4개의 염기들 중 하나를 식별하기 위해 분석되는 2개의 이미지들을 포함할 수 있다. 타일 데이터는, 또한, 이미지들 및 센서들에 관한 메타데이터를 포함할 수 있다. 예를 들어, 염기 호출 동작의 실시예들에서, 타일 데이터는 타일 상의 유전 물질의 클러스터의 중심으로부터 센서 데이터의 어레이 내의 각각의 픽셀의 거리를 나타내는 중심 정보로부터의 거리와 같은, 클러스터들과의 이미지들의 정렬에 관한 정보를 포함할 수 있다.
후술되는 바와 같은 신경 네트워크 기반 염기 호출자(102)의 실행 동안, 타일 데이터는, 또한, 중간 데이터로 지칭되는, 신경 네트워크 기반 염기 호출자(102)의 실행 동안 생성된 데이터를 포함할 수 있는데, 이는 신경 네트워크 기반 염기 호출자(102)의 런 동안 재계산되기보다는 재사용될 수 있다. 예를 들어, 신경 네트워크 기반 염기 호출자(102)의 실행 동안, 데이터 흐름 로직(908)은 타일 데이터의 어레이의 주어진 패치에 대해 센서 데이터 대신에 중간 데이터를 메모리(848A)에 기록할 수 있다. 이와 같은 실시예들이 더욱 상세하게 후술된다.
도시된 바와 같이, 염기 호출 동작의 감지 사이클들로부터 타일에 대한 센서 데이터를 포함하는 타일 데이터를 저장하는 런타임 프로그램에 의해 액세스가능한 메모리(예컨대, 848A)를 포함하는, 염기 호출 센서 출력의 분석을 위한 시스템이 기술된다. 또한, 시스템은 메모리에 액세스하는 구성가능한 프로세서(846)와 같은 신경 네트워크 프로세서를 포함한다. 신경 네트워크 프로세서는 감지 사이클들 동안 분류 데이터를 생성하기 위해 트레이닝된 파라미터들을 사용하여 신경 네트워크의 런들을 실행하도록 구성된다. 본 명세서에 기술된 바와 같이, 대상 사이클 동안 분류 데이터를 생성하기 위해, 대상 사이클을 포함하는 N개의 감지 사이클들의 각자의 감지 사이클들로부터의 타일 데이터의 N개의 어레이들의 시퀀스 상에서 신경 네트워크의 런이 동작하고 있다. 데이터 흐름 로직(908)은 N개의 감지 사이클들의 각자의 감지 사이클들로부터 N개의 어레이들의 공간적으로 정렬된 패치들에 대한 데이터를 포함하는 입력 유닛들을 사용하여 신경 네트워크의 런들을 위해 타일 데이터 및 트레이닝된 파라미터들을 메모리로부터 신경 네트워크 프로세서로 이동시키도록 제공된다.
또한, 신경 네트워크 프로세서가 메모리에 액세스하고 복수의 실행 클러스터들을 포함하는 시스템이 기술되는데, 복수의 실행 클러스터들 중의 실행 클러스터들은 신경 네트워크를 실행시키도록 구성된다. 데이터 흐름 로직(908)은 메모리 및 복수의 실행 클러스터들 중의 실행 클러스터들에 액세스하여, 타일 데이터의 입력 유닛들을 복수의 실행 클러스터들 중 이용가능한 실행 클러스터들에 제공하고 - 입력 유닛들은 대상 감지 사이클을 포함하는 각자의 감지 사이클들로부터 타일 데이터의 어레이들의 N개의 공간적으로 정렬된 패치들을 포함함 -, 실행 클러스터들이 N개의 공간적으로 정렬된 패치들을 신경 네트워크에 적용하여 대상 감지 사이클의 공간적으로 정렬된 패치에 대한 분류 데이터의 출력 패치들을 생성하게 하며, 여기서 N은 1 초과이다.
도 9 및 도 10에 도시된 바와 같이, 하나의 구현예에서, 개시된 기술은 염기 호출을 위한 인공 지능 기반 시스템을 포함한다. 시스템은 호스트 프로세서, 호스트 프로세서에 의해 액세스가능하고 서열분석 런의 서열분석 사이클들 동안 이미지 데이터를 저장하는 메모리 - 서열분석 런의 현재 서열분석 사이클 동안의 현재 이미지 데이터는 현재 서열분석 사이클에서 캡처된 분석물들 및 그들의 주변 배경의 세기 방출물들을 표사함 -, 및 메모리에 액세스하는 구성가능한 프로세서를 포함하며, 구성가능한 프로세서는 복수의 실행 클러스터들 - 복수의 실행 클러스터들 중의 실행 클러스터들은 신경 네트워크를 실행시키도록 구성됨 -, 및 메모리 및 복수의 실행 클러스터들 중의 실행 클러스터들에 액세스하고, 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안에는 현재 이미지 데이터 및 이전 이미지 데이터를, 그리고 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안에는 연속 이미지 데이터를 복수의 실행 클러스터들 중의 이용가능한 실행 클러스터들에 제공하도록, 실행 클러스터들이, 현재 이미지 데이터, 이전 이미지 데이터, 및 연속 이미지 데이터의 상이한 그룹들을 신경 네트워크에 적용하여 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들을 생성하게 하도록, 그리고 제1, 제2, 및 제3 염기 호출 예측들에 기초하여 현재 서열분석 사이클 동안 염기 호출의 생성에 사용하기 위해 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들을 메모리에 피드백하도록 구성된 데이터 흐름 로직을 포함한다.
하나의 구현예에서, 상이한 그룹들은 현재 이미지 데이터 및 이전 이미지 데이터를 포함하는 제1 그룹, 현재 이미지 데이터, 이전 이미지 데이터, 및 연속 이미지 데이터를 포함하는 제2 그룹, 및 현재 이미지 데이터 및 연속 이미지 데이터를 포함하는 제3 그룹을 포함한다.
하나의 구현예에서, 실행 클러스터들은 신경 네트워크에 제1 그룹을 적용하여 제1 염기 호출 예측을 생성하고, 신경 네트워크에 제2 그룹을 적용하여 제2 염기 호출 예측을 생성하고, 신경 네트워크에 제3 그룹을 적용하여 제3 염기 호출 예측을 생성한다.
하나의 구현예에서, 현재 서열분석 사이클 동안의 제1, 제2, 및 제3 염기 호출 예측들은 현재 서열분석 사이클에서 분석물들 중 하나 이상의 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 식별한다.
하나의 구현예에서, 데이터 흐름 로직은, 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들에 걸친 가능성들을 염기별로 합산하고, 염기별 합산에 기초하여 염기별 평균들을 결정하고, 염기별 평균들 중 가장 높은 염기별 평균에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하도록 추가로 구성된다.
하나의 구현예에서, 데이터 흐름 로직은, 가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고, 예비 염기 호출들의 시퀀스 내의 가장 보편적인 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하도록 추가로 구성된다.
하나의 구현예에서, 데이터 흐름 로직은, 가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고, 예비 염기 호출들의 시퀀스 내의 예비 염기 호출들 중의 각자의 예비 염기 호출들에 염기별 가중치들을 적용하여 가중화된 예비 염기 호출들의 시퀀스를 생성하고, 가중화된 예비 염기 호출들의 시퀀스 내의 가장 가중화된 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하도록 추가로 구성된다.
도 10은 호스트 프로세서에 의해 실행되는 런타임 프로그램의 기능들을 포함한 염기 호출 동작의 태양들을 보여주는 간략화된 도면이다. 이러한 도면에서, 플로우 셀로부터의 이미지 센서들의 출력은 라인들(1000) 상에서 이미지 프로세싱 스레드들(1001)에 제공되는데, 이는 개별 타일들에 대한 센서 데이터의 어레이에서의 정렬 및 배열 그리고 이미지들의 리샘플링과 같은 이미지들에 대한 프로세스들을 수행할 수 있고, 플로우 셀 내의 각각의 타일에 대한 타일 클러스터 마스크를 계산하는 프로세스들에 의해 사용될 수 있으며, 이는 플로우 셀의 대응하는 타일 상의 유전 물질의 클러스터들에 대응하는 센서 데이터의 어레이 내의 픽셀들을 식별한다. 이미지 프로세싱 스레드들(1001)의 출력들은 라인들(1002) 상에서 CPU 내의 디스패치 로직(1010)에 제공되는데, 이는 염기 호출 동작의 상태에 따라, 도 9의 구성가능한 프로세서(846)와 같은, 신경 네트워크 프로세서 하드웨어(1020)로의 고속 버스(1003) 상에서 또는 고속 버스(1005) 상에서 데이터 캐시(1004)(예컨대, SSD 저장소)로 타일 데이터의 어레이들을 라우팅한다. 프로세싱되고 변환된 이미지들은 이전에 사용되었던 감지 사이클들 동안 데이터 캐시(1004) 상에 저장될 수 있다. 하드웨어(1020)는 신경 네트워크에 의해 출력된 분류 데이터를 디스패치 로직(1010)에 반환하는데, 이는 데이터 캐시(1004)로, 또는 라인들(1011) 상에서, 분류 데이터를 사용하여 염기 호출 및 품질 스코어 계산들을 수행하는 스레드들(1002)로 정보를 전달하고, 염기 호출 판독물들에 대한 표준 포맷들로 데이터를 배열할 수 있다. 염기 호출 및 품질 스코어 계산들을 수행하는 스레드들(1002)의 출력들은, 라인들(1012) 상에서, 염기 호출 판독물들을 집적하고, 데이터 압축과 같은 다른 동작들을 수행하고, 고객들에 의한 활용을 위해, 생성된 염기 호출 출력들을 특정된 목적지들에 기록하는 스레드들(1003)로 제공된다.
일부 실시예들에서, 호스트는 신경 네트워크의 지원 시에 하드웨어(1020)의 출력의 최종 프로세싱을 수행하는 스레드들(도시되지 않음)을 포함할 수 있다. 예를 들어, 하드웨어(1020)는 다중 클러스터 신경 네트워크의 최종 층으로부터의 분류 데이터의 출력들을 제공할 수 있다. 호스트 프로세서는 염기 호출 및 품질 스코어 스레드들(1002)에 의해 사용하기 위한 데이터를 구성하기 위해 분류 데이터에 걸쳐, 소프트맥스 함수와 같은 출력 활성화 함수를 실행할 수 있다. 또한, 호스트 프로세서는 하드웨어(1020)에 입력되기 전에 타일 데이터의 배치 정규화와 같은 입력 동작들(도시되지 않음)을 실행할 수 있다.
도 11은 도 9의 것과 같은 구성가능한 프로세서(846)의 구성의 단순화된 도면이다. 도 11에서, 구성가능한 프로세서(846)는 복수의 고속 PCIe 인터페이스들을 갖는 FPGA를 포함한다. FPGA는 도 9를 참조하여 기술된 데이터 흐름 로직(908)을 포함하는 래퍼(wrapper)(1100)를 갖도록 구성된다. 래퍼(1100)는 CPU 통신 링크(1109)를 통해 CPU에서의 런타임 프로그램과의 협력 및 인터페이스를 관리하고, DRAM 통신 링크(1110)를 통해 온-보드 DRAM(1102)(예컨대, 메모리(848A))과의 통신을 관리한다. 래퍼(1100) 내의 데이터 흐름 로직(908)은, N개의 사이클들 동안 온-보드 DRAM(1102) 상에서 타일 데이터의 어레이들을 클러스터(1101)로 순회시킴으로써 검색된 패치 데이터를 제공하고, 온-보드 DRAM(1102)으로 다시 전달하기 위해 클러스터(1101)로부터 프로세스 데이터(1115)를 검색한다. 래퍼(1100)는, 또한, 타일 데이터의 입력 어레이들 및 분류 데이터의 출력 패치들 둘 모두에 대해, 온-보드 DRAM(1102)과 호스트 메모리 사이에서의 데이터의 이송을 관리한다. 래퍼는 라인(1113) 상의 패치 데이터를 할당된 클러스터(1101)로 이송한다. 래퍼는 라인(1112) 상의 가중치들 및 바이어스들과 같은 트레이닝된 파라미터들을 온-보드 DRAM(1102)으로부터 검색된 클러스터(1101)에 제공한다. 래퍼는 라인(1111) 상의 구성 및 제어 데이터를, CPU 통신 링크(1109)를 통해 호스트 상의 런타임 프로그램으로부터 제공되거나 그에 응답하여 생성되는 클러스터(1101)에 제공한다. 클러스터는, 또한, 라인(1116) 상의 상태 신호들을 래퍼(1100)에 제공할 수 있는데, 이들은 타일 데이터의 어레이들의 순회를 관리하여 공간적으로 정렬된 패치 데이터를 제공하기 위해 그리고 클러스터(1101)의 리소스들을 사용하여 패치 데이터에 걸쳐서 다중-사이클 신경 네트워크를 실행하기 위해 호스트로부터의 제어 신호들과 협력하여 사용된다.
상기에서 언급된 바와 같이, 타일 데이터의 다수의 패치들 중 대응하는 패치들 상에서 실행하기 위해 구성된, 래퍼(1100)에 의해 관리되는 단일의 구성가능한 프로세서 상에 다수의 클러스터들이 있을 수 있다. 각각의 클러스터는 본 명세서에 기술된 다수의 감지 사이클들의 타일 데이터를 사용하여 대상 감지 사이클에서 염기 호출들에 대한 분류 데이터를 제공하도록 구성될 수 있다.
시스템의 예들에서, 필터 가중치들 및 바이어스들과 같은 커널 데이터를 포함하는 모델 데이터가 호스트 CPU로부터 구성가능한 프로세서로 전송되어, 모델이 사이클 수의 함수로서 업데이트될 수 있게 할 수 있다. 염기 호출 동작은, 대표적인 예의 경우에, 대략 수백개의 감지 사이클들을 포함할 수 있다. 염기 호출 동작은, 일부 실시예들에서, 쌍형성된 최종 판독물들을 포함할 수 있다. 예를 들어, 모델 트레이닝된 파라미터들은 20개의 사이클들(또는 다른 수의 사이클들)마다 1회, 또는 특정 시스템들 및 신경 네트워크 모델들에 대해 구현되는 업데이트 패턴들에 따라 업데이트될 수 있다. 타일 상의 유전 클러스터 내의 주어진 스트링에 대한 서열이 제1 말단부로부터 스트링 아래로(또는 위로) 연장되는 제1 부분, 및 제2 말단부로부터 스트링 위로(또는 아래로) 연장되는 제2 부분을 포함하는 쌍형성된 최종 판독물들을 포함하는 일부 실시예들에서, 트레이닝된 파라미터들은 제1 부분으로부터 제2 부분으로의 전이 시에 업데이트될 수 있다.
일부 예들에서, 타일에 대한 감지 데이터의 다수의 사이클들 동안의 이미지 데이터는 CPU로부터 래퍼(1100)로 전송될 수 있다. 래퍼(1100)는, 선택적으로, 감지 데이터의 일부 사전프로세싱 및 변환을 행할 수 있고, 정보를 온-보드 DRAM(1102)에 기록할 수 있다. 각각의 감지 사이클에 대한 입력 타일 데이터는, 타일당 감지 사이클당 4000 x 3000개 정도 또는 그 이상의 픽셀들 - 2개의 특징부들이 타일의 2개의 이미지들의 컬러들을 표현함 -, 및 픽셀당 특징부당 1 또는 2 바이트를 포함하는 센서 데이터의 어레이들을 포함할 수 있다. 수 N이 다중-사이클 신경 네트워크의 각각의 런에 사용될 3개의 감지 사이클들인 실시예의 경우, 다중-사이클 신경 네트워크의 각각의 런에 대한 타일 데이터의 어레이는 타일당 수백 메가바이트 정도를 소비할 수 있다. 시스템의 일부 실시예들에서, 타일 데이터는, 또한, 타일당 1회 저장된 DFC 데이터의 어레이, 또는 센서 데이터 및 타일들에 관한 다른 유형의 메타데이터를 포함한다.
동작 시에, 다중-사이클 클러스터가 이용가능할 때, 래퍼는 클러스터에 패치를 할당한다. 래퍼는 타일의 순회에서 타일 데이터의 다음 패치를 페치(fetch)하고, 적절한 제어 및 구성 정보와 함께 그것을 할당된 클러스터로 전송한다. 클러스터는, 적소에 작동 중인, 일부 시스템들에서 다수의 사이클들로부터의 패치들을 포함하는 데이터의 패치, 및 프로세싱의 현재 패치가 다양한 실시예들에서 핑퐁 버퍼 기법 또는 래스터 스캐닝 기법을 사용하여 마무리될 때 작동되어야 하는 데이터의 패치를 보유하기에 충분한 메모리를 구성가능한 프로세서 상에 갖도록 구성될 수 있다.
할당된 클러스터가 현재 패치에 대한 신경 네트워크의 그의 런을 완료하고 출력 패치를 생성할 때, 그것은 래퍼를 시그널링할 것이다. 래퍼는 할당된 클러스터로부터의 출력 패치를 판독할 것이거나, 또는 대안으로, 할당된 클러스터는 데이터를 래퍼로 푸시아웃할 것이다. 이어서, 래퍼는 DRAM(1102) 내의 프로세싱된 타일에 대한 출력 패치들을 어셈블할 것이다. 전체 타일의 프로세싱이 완료되었고, 데이터의 출력 패치들이 DRAM으로 이송되었을 때, 래퍼는 타일에 대한 프로세싱된 출력 어레이를 지정된 포맷으로 호스트/CPU로 다시 전송한다. 일부 실시예들에서, 온-보드 DRAM(1102)은 래퍼(1100) 내의 메모리 관리 로직에 의해 관리된다. 런타임 프로그램은, 실시간 분석을 제공하기 위해 연속적인 흐름 중 런에서의 모든 사이클들에 대한 타일 데이터의 모든 어레이들의 분석을 완료하도록 서열분석 동작들을 제어할 수 있다.
컴퓨터 시스템
도 12는 본 명세서에 개시된 염기 호출 기법들을 구현하기 위해 서열분석 시스템(800A)에 의해 사용될 수 있는 컴퓨터 시스템(1200)이다. 컴퓨터 시스템(1200)은 버스 서브시스템(1255)을 통해 다수의 주변 디바이스들과 통신하는 적어도 하나의 중앙 프로세싱 유닛(CPU)(1272)을 포함한다. 이러한 주변 디바이스들은, 예를 들어 메모리 디바이스들 및 파일 저장 서브시스템(1236)을 포함하는 저장 서브시스템(1210), 사용자 인터페이스 입력 디바이스들(1238), 사용자 인터페이스 출력 디바이스들(1276), 및 네트워크 인터페이스 서브시스템(1274)을 포함할 수 있다. 입력 및 출력 디바이스들은 컴퓨터 시스템(1200)과의 사용자 상호작용을 허용한다. 네트워크 인터페이스 서브시스템(1274)은 다른 컴퓨터 시스템들에서의 대응하는 인터페이스 디바이스들에 대한 인터페이스를 포함하는 인터페이스를 외부 네트워크들에 제공한다.
하나의 구현예에서, 시스템 제어기(806)는 저장 서브시스템(1210) 및 사용자 인터페이스 입력 디바이스들(1238)에 통신가능하게 링크된다.
사용자 인터페이스 입력 디바이스들(1238)은 키보드; 마우스, 트랙볼, 터치패드, 또는 그래픽 태블릿과 같은 포인팅 디바이스들; 스캐너; 디스플레이 내에 통합된 터치 스크린; 음성 인식 시스템들 및 마이크로폰들과 같은 오디오 입력 디바이스들; 및 다른 유형들의 입력 디바이스들을 포함할 수 있다. 일반적으로, 용어 "입력 디바이스"의 사용은 정보를 컴퓨터 시스템(1200)에 입력하기 위한 모든 가능한 유형들의 디바이스들 및 방식들을 포함하도록 의도된다.
사용자 인터페이스 출력 디바이스들(1276)은 디스플레이 서브시스템, 프린터, 팩스 기계, 또는 오디오 출력 디바이스들과 같은 비시각적 디스플레이들을 포함할 수 있다. 디스플레이 서브시스템은 LED 디스플레이, 음극선관(CRT), 액정 디스플레이(LCD)와 같은 평면 디바이스, 프로젝션 장치, 또는 가시적인 이미지를 생성하기 위한 일부 다른 메커니즘을 포함할 수 있다. 디스플레이 서브시스템은 또한, 오디오 출력 디바이스들과 같은 비시각적 디스플레이를 제공할 수 있다. 대체적으로, "출력 디바이스"라는 용어의 사용은 정보를 컴퓨터 시스템(1200)으로부터 사용자에게 또는 다른 기계 또는 컴퓨터 시스템에 출력하기 위한 모든 가능한 유형들의 디바이스들 및 방식들을 포함하도록 의도된다.
저장 서브시스템(1210)은 본 명세서에 기술된 모듈들 및 방법들 중 일부 또는 전부의 기능을 제공하는 프로그래밍 및 데이터 구성들을 저장한다. 이들 소프트웨어 모듈들은, 대체적으로, 심층 학습 프로세서들(1278)에 의해 실행된다.
심층 학습 프로세서들(1278)은 그래픽 프로세싱 유닛(GPU)들, 필드 프로그래밍가능 게이트 어레이(FPGA)들, 주문형 반도체(ASIC)들, 및/또는 코어스-그레인드 재구성가능 아키텍처(CGRA)들일 수 있다. 심층 학습 프로세서들(1278)은 Google Cloud Platform™, Xilinx™, 및 Cirrascale™과 같은 심층 학습 클라우드 플랫폼에 의해 호스팅될 수 있다. 심층 학습 프로세서들(1278)의 예들은 Google의 Tensor Processing Unit(TPU)™, 랙마운트 솔루션들, 예컨대 GX4 Rackmount Series™, GX12 Rackmount Series™, NVIDIA DGX-1™, Microsoft의 Stratix V FPGA™, Graphcore의 Intelligent Processor Unit (IPU)™, Snapdragon processors™을 갖는 Qualcomm의 Zeroth Platform™, NVIDIA의 Volta™, NVIDIA의 DRIVE PX™, NVIDIA의 JETSON TX1/TX2 MODULE™, Intel의 Nirvana™, Movidius VPU™, Fujitsu DPI™, ARM의 DynamicIQ™, IBM TrueNorth™, Testa V100s™을 갖는 Lambda GPU 서버 등을 포함한다.
저장 서브시스템(1210)에 사용되는 메모리 서브시스템(1222)은 프로그램 실행 동안 명령어들 및 데이터의 저장을 위한 메인 랜덤 액세스 메모리(RAM)(1232) 및 고정된 명령어들이 저장되는 판독 전용 메모리(ROM)(1234)를 포함하는 다수의 메모리들을 포함할 수 있다. 파일 저장 서브시스템(1236)은 프로그램 및 데이터 파일을 위한 영구 저장소를 제공할 수 있고, 하드 디스크 드라이브, 연관된 착탈 가능 매체와 함께 플로피 디스크 드라이브, CD-ROM 드라이브, 광학 드라이브, 또는 착탈 가능 매체 카트리지를 포함할 수 있다. 소정 구현예들의 기능을 구현하는 모듈들은 저장 서브시스템(1210) 내의 파일 저장 서브시스템(1236)에 의해, 또는 프로세서에 의해 액세스가능한 다른 기계들에 저장될 수 있다.
버스 서브시스템(1255)은 컴퓨터 시스템(1200)의 다양한 컴포넌트들 및 서브시스템들이 의도된 대로 서로 통신하게 하기 위한 메커니즘을 제공한다. 버스 서브시스템(1255)이 개략적으로 단일 버스로서 도시되어 있지만, 버스 서브시스템의 대안적인 구현예들은 다수의 버스들을 사용할 수 있다.
컴퓨터 시스템(1200) 자체는 개인용 컴퓨터, 휴대용 컴퓨터, 워크스테이션, 컴퓨터 단말기, 네트워크 컴퓨터, 텔레비전, 메인프레임, 서버 팜, 느슨하게 네트워킹된 컴퓨터들의 광범위하게 분포된 세트, 또는 임의의 다른 데이터 프로세싱 시스템 또는 사용자 디바이스를 포함한 다양한 유형들의 것일 수 있다. 컴퓨터들 및 네트워크들의 변화하는(ever-changing) 특성으로 인해, 도 12에 묘사된 컴퓨터 시스템(1200)의 설명은 본 발명의 바람직한 구현예들을 예시하기 위한 특정 예로서만 의도된다. 도 12에 묘사된 컴퓨터 시스템보다 더 많은 또는 더 적은 컴포넌트들을 갖는 컴퓨터 시스템(1200)의 많은 다른 구성들이 가능하다.
항목들
하기 항목들이 개시되어 있다:
1. 염기 호출하기 위한 인공 지능 기반 시스템으로서,
적어도 우측 플랭킹 입력, 중심 입력, 및 좌측 플랭킹 입력을 프로세싱하고, 적어도 우측 플랭킹 출력, 중심 출력, 및 좌측 플랭킹 출력을 생성하는 신경 네트워크 기반 염기 호출자
- 우측 플랭킹 입력은, 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안의 이전 이미지 데이터가 보충된, 서열분석 런의 현재 서열분석 사이클 동안의 현재 이미지 데이터를 포함하고, 우측 플랭킹 출력은 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측 및 이전 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
중심 입력은 이전 이미지 데이터 및 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안의 연속 이미지 데이터가 보충된, 현재 이미지 데이터를 포함하고, 중심 출력은 현재 서열분석 사이클 동안의 중심 염기 호출 예측, 및 이전 서열분석 사이클들 및 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
좌측 플랭킹 입력은 연속 이미지 데이터가 보충된, 현재 이미지 데이터를 포함하고, 좌측 플랭킹 출력은 현재 서열분석 사이클 동안의 좌측 플랭킹 염기 호출 예측 및 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함함 -; 및
신경 네트워크 기반 염기 호출자에 커플링되고, 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성하도록 구성된 염기 호출 생성기를 포함하는, 인공 지능 기반 시스템.
2. 항목 1에 있어서, 현재 서열분석 사이클 동안의 현재 이미지 데이터는 현재 서열분석 사이클에서 캡처된 분석물들 및 그들의 주변 배경의 세기 방출물들을 묘사하는, 인공 지능 기반 시스템.
3. 항목 2에 있어서, 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측은 현재 서열분석 사이클에서 분석물들 중 하나 이상의 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 식별하는, 인공 지능 기반 시스템.
4. 항목 3에 있어서, 염기 호출 생성기는,
현재 서열분석 사이클 동안 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측에 걸쳐 가능성들을 염기별로 합산하고;
염기별 합들에 기초하여 염기별 평균들을 결정하고;
염기별 평균들 중 가장 높은 염기별 평균에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성하는 평균화기를 포함하도록 추가로 구성되는, 인공 지능 기반 시스템.
5. 항목 3에 있어서, 염기 호출 생성기는,
가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
예비 염기 호출들의 시퀀스 내의 가장 보편적인 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성하는 콘센서를 포함하도록 추가로 구성되는, 인공 지능 기반 시스템.
6. 항목 3에 있어서, 염기 호출 생성기는,
가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
예비 염기 호출들의 시퀀스 내의 예비 염기 호출들 중의 각자의 예비 염기 호출들에 염기별 가중치들을 적용하여 가중화된 예비 염기 호출들의 시퀀스를 생성하고;
가중화된 예비 염기 호출들의 시퀀스 내의 가장 가중화된 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성하는 가중화된 콘센서를 포함하도록 추가로 구성되는, 인공 지능 기반 시스템.
7. 항목 3에 있어서, 가능성들은 소프트맥스 층에 의해 생성된 지수적으로 정규화된 스코어들인, 인공 지능 기반 시스템.
8. 항목 1에 있어서, 트레이닝 동안,
신경 네트워크 기반 염기 호출자의 우측 플랭킹 출력, 중심 출력, 및 좌측 플랭킹 출력에 기초하여 현재 서열분석 사이클, 이전 서열분석 사이클들, 및 연속 서열분석 사이클들 동안 염기 호출 생성기에 의해 생성된 염기 호출들과 실측 자료 염기 호출들 사이의 에러들을 계산하고;
에러들에 기초하여 현재 서열분석 사이클, 이전 서열분석 사이클들, 및 연속 서열분석 사이클들 동안의 기울기들을 결정하고;
기울기들을 역전파시킴으로써 신경 네트워크 기반 염기 호출자의 파라미터들을 업데이트하는 트레이너를 포함하도록 추가로 구성되는, 인공 지능 기반 시스템.
9. 항목 1에 있어서, 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측은 현재 서열분석 사이클과 이전 서열분석 사이클들 사이의 프리-페이징 효과를 설명하는, 인공 지능 기반 시스템.
10. 항목 9에 있어서, 현재 서열분석 사이클 동안의 중심 염기 호출 예측은 현재 서열분석 사이클과 이전 서열분석 사이클들 사이의 프리-페이징 효과 및 현재 서열분석 사이클과 연속 서열분석 사이클들 사이의 페이징 효과를 설명하는, 인공 지능 기반 시스템.
11. 항목 10에 있어서, 현재 서열분석 사이클 동안의 좌측 플랭킹 염기 호출 예측은 현재 서열분석 사이클과 연속 서열분석 사이클들 사이의 페이징 효과를 설명하는, 인공 지능 기반 시스템.
12. 염기 호출하기 위한 인공 지능 기반 시스템으로서,
호스트 프로세서;
서열분석 런의 서열분석 사이클들 동안 이미지 데이터를 저장하는, 호스트 프로세서에 의해 액세스가능한 메모리 - 서열분석 런의 현재 서열분석 사이클 동안의 현재 이미지 데이터는 현재 서열분석 사이클에서 캡처된 분석물들 및 그들의 주변 배경의 세기 방출물들을 묘사함 -; 및
메모리에 액세스하는 구성가능한 프로세서를 포함하고, 구성가능한 프로세서는,
복수의 실행 클러스터들 - 복수의 실행 클러스터들 중의 실행 클러스터들은 신경 네트워크를 실행하도록 구성됨 -; 및
메모리 및 복수의 실행 클러스터들 중의 실행 클러스터들에 액세스하고, 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안에는 현재 이미지 데이터 및 이전 이미지 데이터를, 그리고 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안에는 연속 이미지 데이터를 복수의 실행 클러스터들 중의 이용가능한 실행 클러스터들에 제공하도록, 실행 클러스터들이, 현재 이미지 데이터, 이전 이미지 데이터, 및 연속 이미지 데이터의 상이한 그룹들을 신경 네트워크에 적용하여 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들을 생성하게 하도록, 그리고 제1, 제2, 및 제3 염기 호출 예측들에 기초하여 현재 서열분석 사이클 동안 염기 호출의 생성에 사용하기 위해 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들을 메모리에 피드백하도록 구성된 데이터 흐름 로직을 포함하는, 인공 지능 기반 시스템.
13. 항목 12에 있어서, 상이한 그룹들은 현재 이미지 데이터 및 이전 이미지 데이터를 포함하는 제1 그룹, 현재 이미지 데이터, 이전 이미지 데이터, 및 연속 이미지 데이터를 포함하는 제2 그룹, 및 현재 이미지 데이터 및 연속 이미지 데이터를 포함하는 제3 그룹을 포함하는, 인공 지능 기반 시스템.
14. 항목 13에 있어서, 실행 클러스터들은 신경 네트워크에 제1 그룹을 적용하여 제1 염기 호출 예측을 생성하고, 신경 네트워크에 제2 그룹을 적용하여 제2 염기 호출 예측을 생성하고, 신경 네트워크에 제3 그룹을 적용하여 제3 염기 호출 예측을 생성하는, 인공 지능 기반 시스템.
15. 항목 12에 있어서, 현재 서열분석 사이클 동안의 제1, 제2, 및 제3 염기 호출 예측들은 현재 서열분석 사이클에서 분석물들 중 하나 이상의 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 식별하는, 인공 지능 기반 시스템.
16. 항목 15에 있어서, 데이터 흐름 로직은,
현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들에 걸쳐 가능성들을 염기별로 합산하고;
염기별 합산에 기초하여 염기별 평균들을 결정하고;
염기별 평균들 중 가장 높은 염기별 평균에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하도록 추가로 구성되는, 인공 지능 기반 시스템.
17. 항목 15에 있어서, 데이터 흐름 로직은,
가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안의 제1, 제2, 및 제3 염기 호출 예측들 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
예비 염기 호출들의 시퀀스 내의 가장 보편적인 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하도록 추가로 구성되는, 인공 지능 기반 시스템.
18. 항목 15에 있어서, 데이터 흐름 로직은,
가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안의 제1, 제2, 및 제3 염기 호출 예측들 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
예비 염기 호출들의 시퀀스 내의 예비 염기 호출들 중의 각자의 예비 염기 호출들에 염기별 가중치들을 적용하여 가중화된 예비 염기 호출들의 시퀀스를 생성하고;
가중화된 예비 염기 호출들의 시퀀스 내의 가장 가중화된 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하도록 추가로 구성되는, 인공 지능 기반 시스템.
19. 염기 호출의 인공 지능 기반 방법으로서,
서열분석 런의 현재 서열분석 사이클 동안에는 현재 이미지 데이터에, 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안에는 이전 이미지 데이터에, 그리고 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안에는 연속 이미지 데이터에 액세스하는 단계;
신경 네트워크 기반 염기 호출자를 통해 현재 이미지 데이터, 이전 이미지 데이터, 및 연속 이미지 데이터의 상이한 그룹들을 프로세싱하고, 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들을 생성하는 단계; 및
제1, 제2, 및 제3 염기 호출 예측들에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 포함하는, 인공 지능 기반 방법.
20. 항목 19에 있어서, 상이한 그룹들은,
현재 이미지 데이터 및 이전 이미지 데이터를 포함하는 제1 그룹,
현재 이미지 데이터, 이전 이미지 데이터, 및 연속 이미지 데이터를 포함하는 제2 그룹, 및
현재 이미지 데이터 및 연속 이미지 데이터를 포함하는 제3 그룹을 포함하는, 인공 지능 기반 방법.
21. 항목 20에 있어서,
신경 네트워크 기반 염기 호출자를 통해 제1 그룹을 프로세싱하여 제1 염기 호출 예측을 생성하는 단계,
신경 네트워크 기반 염기 호출자를 통해 제2 그룹을 프로세싱하여 제2 염기 호출 예측을 생성하는 단계, 및
신경 네트워크 기반 염기 호출자를 통해 제3 그룹을 프로세싱하여 제3 염기 호출 예측을 생성하는 단계를 추가로 포함하는, 인공 지능 기반 방법.
22. 항목 19에 있어서, 현재 서열분석 사이클 동안의 제1, 제2, 및 제3 염기 호출 예측들은 현재 서열분석 사이클에서 분석물들 중 하나 이상의 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 식별하는, 인공 지능 기반 방법.
23. 항목 22에 있어서,
현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들에 걸쳐 가능성들을 염기별로 합산하고;
염기별 합산에 기초하여 염기별 평균들을 결정하고;
염기별 평균들 중 가장 높은 염기별 평균에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 추가로 포함하는, 인공 지능 기반 방법.
24. 항목 22에 있어서,
가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안의 제1, 제2, 및 제3 염기 호출 예측들 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
예비 염기 호출들의 시퀀스 내의 가장 보편적인 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 추가로 포함하는, 인공 지능 기반 방법.
25. 항목 22에 있어서,
가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안의 제1, 제2, 및 제3 염기 호출 예측들 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
예비 염기 호출들의 시퀀스 내의 예비 염기 호출들 중의 각자의 예비 염기 호출들에 염기별 가중치들을 적용하여 가중화된 예비 염기 호출들의 시퀀스를 생성하고;
가중화된 예비 염기 호출들의 시퀀스 내의 가장 가중화된 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 추가로 포함하는, 인공 지능 기반 방법.
26. 염기 호출의 인공 지능 기반 방법으로서,
신경 네트워크 기반 염기 호출자를 통해 적어도 우측 플랭킹 입력, 중심 입력, 및 좌측 플랭킹 입력을 프로세싱하고, 적어도 우측 플랭킹 출력, 중심 출력, 및 좌측 플랭킹 출력을 생성하는 단계
- 우측 플랭킹 입력은, 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안의 이전 이미지 데이터가 보충된, 서열분석 런의 현재 서열분석 사이클 동안의 현재 이미지 데이터를 포함하고, 우측 플랭킹 출력은 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측 및 이전 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
중심 입력은 이전 이미지 데이터 및 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안의 연속 이미지 데이터가 보충된, 현재 이미지 데이터를 포함하고, 중심 출력은 현재 서열분석 사이클 동안의 중심 염기 호출 예측, 및 이전 서열분석 사이클들 및 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
좌측 플랭킹 입력은 연속 이미지 데이터가 보충된, 현재 이미지 데이터를 포함하고, 좌측 플랭킹 출력은 현재 서열분석 사이클 동안의 좌측 플랭킹 염기 호출 예측 및 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함함 -; 및
현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 포함하는, 인공 지능 기반 방법.
27. 항목 26에 있어서, 현재 서열분석 사이클 동안의 현재 이미지 데이터는 현재 서열분석 사이클에서 캡처된 분석물들 및 그들의 주변 배경의 세기 방출물들을 묘사하는, 인공 지능 기반 방법.
28. 항목 26에 있어서, 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측은 현재 서열분석 사이클에서 분석물들 중 하나 이상의 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 식별하는, 인공 지능 기반 방법.
29. 항목 28에 있어서,
현재 서열분석 사이클 동안 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측에 걸쳐 가능성들을 염기별로 합산하고;
염기별 합산에 기초하여 염기별 평균들을 결정하고;
염기별 평균들 중 가장 높은 염기별 평균에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 추가로 포함하는, 인공 지능 기반 방법.
30. 항목 28에 있어서,
가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
예비 염기 호출들의 시퀀스 내의 가장 보편적인 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 추가로 포함하는, 인공 지능 기반 방법.
31. 항목 28에 있어서,
가능성들 중 가장 높은 가능성에 기초하여 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측, 중심 염기 호출 예측, 및 좌측 플랭킹 염기 호출 예측 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
예비 염기 호출들의 시퀀스 내의 예비 염기 호출들 중의 각자의 예비 염기 호출들에 염기별 가중치들을 적용하여 가중화된 예비 염기 호출들의 시퀀스를 생성하고;
가중화된 예비 염기 호출들의 시퀀스 내의 가장 가중화된 염기 호출에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성함으로써 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 추가로 포함하는, 인공 지능 기반 방법.
32. 항목 28에 있어서, 가능성들은 소프트맥스 층에 의해 생성된 지수적으로 정규화된 스코어들인, 인공 지능 기반 방법.
33. 항목 26에 있어서, 트레이닝 동안,
신경 네트워크 기반 염기 호출자의 우측 플랭킹 출력, 중심 출력, 및 좌측 플랭킹 출력에 기초하여 현재 서열분석 사이클, 이전 서열분석 사이클들, 및 연속 서열분석 사이클들 동안 염기 호출 생성기에 의해 생성된 염기 호출들과 실측 자료 염기 호출들 사이의 에러들을 계산하는 단계;
에러들에 기초하여 현재 서열분석 사이클, 이전 서열분석 사이클들, 및 연속 서열분석 사이클들 동안의 기울기들을 결정하는 단계; 및
기울기들을 역전파시킴으로써 신경 네트워크 기반 염기 호출자의 파라미터들을 업데이트하는 단계를 추가로 포함하는, 인공 지능 기반 방법.
34. 항목 26에 있어서, 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측은 현재 서열분석 사이클과 이전 서열분석 사이클들 사이의 프리-페이징 효과를 설명하는, 인공 지능 기반 방법.
35. 항목 34에 있어서, 현재 서열분석 사이클 동안의 중심 염기 호출 예측은 현재 서열분석 사이클과 이전 서열분석 사이클들 사이의 프리-페이징 효과 및 현재 서열분석 사이클과 연속 서열분석 사이클들 사이의 페이징 효과를 설명하는, 인공 지능 기반 방법.
36. 항목 35에 있어서, 현재 서열분석 사이클 동안의 좌측 플랭킹 염기 호출 예측은 현재 서열분석 사이클과 연속 서열분석 사이클들 사이의 페이징 효과를 설명하는, 인공 지능 기반 방법.
37. 염기 호출의 인공 지능 기반 방법으로서,
신경 네트워크 기반 염기 호출자를 통해 적어도 제1, 제2 및 제3 입력들을 프로세싱하고, 적어도 제1, 제2 및 제3 출력들을 생성하는 단계
- 제1 입력은, 특정 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안의 이전 이미지 데이터가 보충된, 서열분석 런의 특정 서열분석 사이클 동안의 특정 이미지 데이터를 포함하고, 제1 출력은 특정 서열분석 사이클 동안의 제1 염기 호출 예측 및 이전 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
제2 입력은 이전 이미지 데이터 및 특정 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안의 연속 이미지 데이터가 보충된, 특정 이미지 데이터를 포함하고, 제2 출력은 특정 서열분석 사이클 동안의 제2 염기 호출 예측, 및 이전 서열분석 사이클들 및 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
제3 입력은 연속 이미지 데이터가 보충된, 특정 이미지 데이터를 포함하고, 제3 출력은 특정 서열분석 사이클 동안의 제3 염기 호출 예측 및 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함함 -; 및
특정 서열분석 사이클 동안의 제1, 제2, 및 제3 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안 염기 호출을 생성하는 단계를 포함하는, 인공 지능 기반 방법.
38. 항목 37에 있어서, 항목 1에 궁극적으로 의존하는 항목들 각각을 구현하는, 인공 지능 기반 방법.
39. 인공 지능 기반 염기 호출을 수행하기 위한 컴퓨터 프로그램 명령어들이 저장된 비일시적 컴퓨터 판독가능 저장 매체로서, 명령어들은, 프로세서 상에서 실행될 때,
서열분석 런의 현재 서열분석 사이클 동안에는 현재 이미지 데이터에, 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안에는 이전 이미지 데이터에, 그리고 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안에는 연속 이미지 데이터에 액세스하는 단계;
신경 네트워크 기반 염기 호출자를 통해 현재 이미지 데이터, 이전 이미지 데이터, 및 연속 이미지 데이터의 상이한 그룹들을 프로세싱하고, 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들을 생성하는 단계; 및
제1, 제2, 및 제3 염기 호출 예측들에 기초하여 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 포함하는 방법을 구현하는, 비일시적 컴퓨터 판독가능 저장 매체.
40. 항목 39에 있어서, 항목 1에 궁극적으로 의존하는 항목들 각각을 구현하는, 비일시적 컴퓨터 판독가능 저장 매체.
41. 인공 지능 기반 염기 호출을 수행하기 위한 컴퓨터 프로그램 명령어들이 저장된 비일시적 컴퓨터 판독가능 저장 매체로서, 명령어들은, 프로세서 상에서 실행될 때,
신경 네트워크 기반 염기 호출자를 통해 적어도 제1, 제2 및 좌측 입력들을 프로세싱하고, 적어도 제1, 제2 및 좌측 출력들을 생성하는 단계
- 제1 입력은, 특정 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안의 이전 이미지 데이터가 보충된, 서열분석 런의 특정 서열분석 사이클 동안의 특정 이미지 데이터를 포함하고, 제1 출력은 특정 서열분석 사이클 동안의 제1 염기 호출 예측 및 이전 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
제2 입력은 이전 이미지 데이터 및 특정 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안의 연속 이미지 데이터가 보충된, 특정 이미지 데이터를 포함하고, 제2 출력은 특정 서열분석 사이클 동안의 제2 염기 호출 예측, 및 이전 서열분석 사이클들 및 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
좌측 입력은 연속 이미지 데이터가 보충된, 특정 이미지 데이터를 포함하고, 좌측 출력은 특정 서열분석 사이클 동안의 좌측 염기 호출 예측 및 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함함 -; 및
특정 서열분석 사이클 동안의 제1, 제2, 및 좌측 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안 염기 호출을 생성하는 단계를 포함하는 방법을 구현하는, 비일시적 컴퓨터 판독가능 저장 매체.
44. 항목 43에 있어서, 항목 1에 궁극적으로 의존하는 항목들 각각을 구현하는, 비일시적 컴퓨터 판독가능 저장 매체.
45. 염기 호출의 인공 지능 기반 방법으로서,
서열분석 런의 서열분석 사이클들 동안 생성된 사이클별 분석물 채널 세트들의 진행에 액세스하는 단계;
신경 네트워크 기반 염기 호출자를 통해, 서열분석 런의 서열분석 사이클들의 윈도우들 동안의 진행 시에 사이클별 분석물 채널 세트들의 윈도우들을 프로세싱하여,
신경 네트워크 기반 염기 호출자가,
서열분석 런의 서열분석 사이클들의 대상 윈도우 동안의 진행 시에 사이클별 분석물 채널 세트들의 대상 윈도우를 프로세싱하고,
서열분석 사이클들의 대상 윈도우 내의 3개 이상의 서열분석 사이클들 동안 임시 염기 호출 예측들을 생성하도록 하는 단계;
특정 서열분석 사이클이 상이한 위치들에 나타난 다수의 윈도우들로부터, 신경 네트워크 기반 염기 호출자를 사용하여 특정 서열분석 사이클 동안 임시 염기 호출 예측들을 생성하는 단계; 및
복수의 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안 염기 호출을 결정하는 단계를 포함하는, 인공 지능 기반 방법.
46. 항목 45에 있어서, 항목 1에 궁극적으로 의존하는 항목들 각각을 구현하는, 인공 지능 기반 방법.
47. 메모리에 커플링된 하나 이상의 프로세서들을 포함하는 시스템으로서, 메모리에는 인공 지능 기반 염기 호출을 수행하기 위한 컴퓨터 명령어들이 로딩되고, 명령어들은, 프로세서들 상에서 실행될 때,
서열분석 런의 서열분석 사이클들 동안 생성된 사이클별 분석물 채널 세트들의 진행에 액세스하는 단계;
신경 네트워크 기반 염기 호출자를 통해, 서열분석 런의 서열분석 사이클들의 윈도우들 동안의 진행 시에 사이클별 분석물 채널 세트들의 윈도우들을 프로세싱하여,
신경 네트워크 기반 염기 호출자가,
서열분석 런의 서열분석 사이클들의 대상 윈도우 동안의 진행 시에 사이클별 분석물 채널 세트들의 대상 윈도우를 프로세싱하고,
서열분석 사이클들의 대상 윈도우 내의 3개 이상의 서열분석 사이클들 동안 임시 염기 호출 예측들을 생성하도록 하는 것;
특정 서열분석 사이클이 상이한 위치들에 나타난 다수의 윈도우들로부터, 신경 네트워크 기반 염기 호출자를 사용하여 특정 서열분석 사이클 동안 임시 염기 호출 예측들을 생성하는 것; 및
복수의 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안 염기 호출을 결정하는 것을 포함하는 액션들을 구현하는, 시스템.
48. 항목 47에 있어서, 항목 1에 궁극적으로 의존하는 항목들 각각을 구현하는, 시스템.
49. 인공 지능 기반 염기 호출을 수행하기 위한 컴퓨터 프로그램 명령어들이 저장된 비일시적 컴퓨터 판독가능 저장 매체로서, 명령어들은, 프로세서 상에서 실행될 때,
서열분석 런의 서열분석 사이클들 동안 생성된 사이클별 분석물 채널 세트들의 진행에 액세스하는 단계;
신경 네트워크 기반 염기 호출자를 통해, 서열분석 런의 서열분석 사이클들의 윈도우들 동안의 진행 시에 사이클별 분석물 채널 세트들의 윈도우들을 프로세싱하여,
신경 네트워크 기반 염기 호출자가,
서열분석 런의 서열분석 사이클들의 대상 윈도우 동안의 진행 시에 사이클별 분석물 채널 세트들의 대상 윈도우를 프로세싱하고,
서열분석 사이클들의 대상 윈도우 내의 3개 이상의 서열분석 사이클들 동안 임시 염기 호출 예측들을 생성하도록 하는 단계;
특정 서열분석 사이클이 상이한 위치들에 나타난 다수의 윈도우들로부터, 신경 네트워크 기반 염기 호출자를 사용하여 특정 서열분석 사이클 동안 임시 염기 호출 예측들을 생성하는 단계; 및
복수의 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안 염기 호출을 결정하는 단계를 포함하는 방법을 구현하는, 비일시적 컴퓨터 판독가능 저장 매체.
50. 항목 49에 있어서, 항목 1에 궁극적으로 의존하는 항목들 각각을 구현하는, 비일시적 컴퓨터 판독가능 저장 매체.
51. 염기 호출의 인공 지능 기반 방법으로서,
서열분석 런의 서열분석 사이클들 동안 생성된 일련의 사이클별 분석물 채널 세트들에 액세스하는 단계;
신경 네트워크 기반 염기 호출자를 통해, 서열분석 런의 서열분석 사이클들의 윈도우들 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 윈도우들을 프로세싱하여,
신경 네트워크 기반 염기 호출자가,
서열분석 런의 서열분석 사이클들의 대상 윈도우 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 대상 윈도우를 프로세싱하고,
서열분석 사이클들의 대상 윈도우 내의 2개 이상의 서열분석 사이클들 동안 염기 호출 예측들을 생성하도록 하는 단계;
신경 네트워크 기반 염기 호출자를 통해,
서열분석 런의 서열분석 사이클들의 복수의 윈도우들 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 복수의 윈도우들을 프로세싱하고,
복수의 윈도우들 중의 각각의 윈도우 동안 출력을 생성하는 단계
- 복수의 윈도우들 중의 각각의 윈도우는 서열분석 런의 특정 서열분석 사이클 동안의 특정 사이클별 분석물 채널 세트를 포함하고,
복수의 윈도우들 중의 각각의 윈도우 동안의 출력은,
(i) 특정 서열분석 사이클 동안의 염기 호출 예측, 및
(ii) 서열분석 런의 하나 이상의 추가적인 서열분석 사이클들 동안의 하나 이상의 추가적인 염기 호출 예측들을 포함하여, 이에 의해, 복수의 윈도우들에 걸친 특정 서열분석 사이클 동안 복수의 염기 호출 예측들을 생성함 -; 및
복수의 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안 염기 호출을 결정하는 단계를 포함하는, 인공 지능 기반 방법.
52. 메모리에 커플링된 하나 이상의 프로세서들을 포함하는 시스템으로서, 메모리에는 인공 지능 기반 염기 호출을 수행하기 위한 컴퓨터 명령어들이 로딩되고, 명령어들은, 프로세서들 상에서 실행될 때,
서열분석 런의 서열분석 사이클들 동안 생성된 일련의 사이클별 분석물 채널 세트들에 액세스하는 단계;
신경 네트워크 기반 염기 호출자를 통해, 서열분석 런의 서열분석 사이클들의 윈도우들 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 윈도우들을 프로세싱하여,
신경 네트워크 기반 염기 호출자가,
서열분석 런의 서열분석 사이클들의 대상 윈도우 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 대상 윈도우를 프로세싱하고,
서열분석 사이클들의 대상 윈도우 내의 2개 이상의 서열분석 사이클들 동안 염기 호출 예측들을 생성하도록 하는 것;
신경 네트워크 기반 염기 호출자를 통해,
서열분석 런의 서열분석 사이클들의 복수의 윈도우들 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 복수의 윈도우들을 프로세싱하고,
복수의 윈도우들 중의 각각의 윈도우 동안 출력을 생성하는 것
- 복수의 윈도우들 중의 각각의 윈도우는 서열분석 런의 특정 서열분석 사이클 동안의 특정 사이클별 분석물 채널 세트를 포함하고,
복수의 윈도우들 중의 각각의 윈도우 동안의 출력은,
(i) 특정 서열분석 사이클 동안의 염기 호출 예측, 및
(ii) 서열분석 런의 하나 이상의 추가적인 서열분석 사이클들 동안의 하나 이상의 추가적인 염기 호출 예측들을 포함하여, 이에 의해, 복수의 윈도우들에 걸친 특정 서열분석 사이클 동안 복수의 염기 호출 예측들을 생성함 -; 및
복수의 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안 염기 호출을 결정하는 것을 포함하는 액션들을 구현하는, 시스템.
53. 항목 52에 있어서, 항목 1에 궁극적으로 의존하는 항목들 각각을 구현하는, 시스템.
54. 인공 지능 기반 염기 호출을 수행하기 위한 컴퓨터 프로그램 명령어들이 저장된 비일시적 컴퓨터 판독가능 저장 매체로서, 명령어들은, 프로세서 상에서 실행될 때,
서열분석 런의 서열분석 사이클들 동안 생성된 일련의 사이클별 분석물 채널 세트들에 액세스하는 단계;
신경 네트워크 기반 염기 호출자를 통해, 서열분석 런의 서열분석 사이클들의 윈도우들 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 윈도우들을 프로세싱하여,
신경 네트워크 기반 염기 호출자가,
서열분석 런의 서열분석 사이클들의 대상 윈도우 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 대상 윈도우를 프로세싱하고,
서열분석 사이클들의 대상 윈도우 내의 2개 이상의 서열분석 사이클들 동안 염기 호출 예측들을 생성하도록 하는 단계;
신경 네트워크 기반 염기 호출자를 통해,
서열분석 런의 서열분석 사이클들의 복수의 윈도우들 동안 일련의 사이클별 분석물 채널 세트들 내의 사이클별 분석물 채널 세트들의 복수의 윈도우들을 프로세싱하고,
복수의 윈도우들 중의 각각의 윈도우 동안 출력을 생성하는 단계
- 복수의 윈도우들 중의 각각의 윈도우는 서열분석 런의 특정 서열분석 사이클 동안의 특정 사이클별 분석물 채널 세트를 포함하고,
복수의 윈도우들 중의 각각의 윈도우 동안의 출력은,
(i) 특정 서열분석 사이클 동안의 염기 호출 예측, 및
(ii) 서열분석 런의 하나 이상의 추가적인 서열분석 사이클들 동안의 하나 이상의 추가적인 염기 호출 예측들을 포함하여, 이에 의해, 복수의 윈도우들에 걸친 특정 서열분석 사이클 동안 복수의 염기 호출 예측들을 생성함 -; 및
복수의 염기 호출 예측들에 기초하여 특정 서열분석 사이클 동안 염기 호출을 결정하는 단계를 포함하는 방법을 구현하는, 비일시적 컴퓨터 판독가능 저장 매체.
55. 항목 54에 있어서, 항목 1에 궁극적으로 의존하는 항목들 각각을 구현하는, 비일시적 컴퓨터 판독가능 저장 매체.
상기에 기술된 방법의 다른 구현예들은 전술된 방법들 중 임의의 것을 수행하도록 프로세서에 의해 실행가능한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체를 포함할 수 있다. 이 섹션에 기술된 방법의 또 다른 구현예는 메모리, 및 메모리에 저장된 명령어들을 실행하여 전술된 방법들 중 임의의 것을 수행하도록 동작가능한 하나 이상의 프로세서들을 포함하는 시스템을 포함할 수 있다.

Claims (20)

  1. 염기 호출하기 위한 인공 지능 기반 시스템으로서,
    적어도 우측 플랭킹 입력, 중심 입력, 및 좌측 플랭킹 입력을 프로세싱하고, 적어도 우측 플랭킹 출력, 중심 출력, 및 좌측 플랭킹 출력을 생성하는 신경 네트워크 기반 염기 호출자
    - 상기 우측 플랭킹 입력은, 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안의 이전 이미지 데이터가 보충된, 서열분석 런의 상기 현재 서열분석 사이클 동안의 현재 이미지 데이터를 포함하고, 상기 우측 플랭킹 출력은 상기 현재 서열분석 사이클 동안의 우측 플랭킹 염기 호출 예측 및 상기 이전 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
    상기 중심 입력은 상기 이전 이미지 데이터 및 상기 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안의 연속 이미지 데이터가 보충된, 상기 현재 이미지 데이터를 포함하고, 상기 중심 출력은 상기 현재 서열분석 사이클 동안의 중심 염기 호출 예측, 및 상기 이전 서열분석 사이클들 및 상기 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함하고;
    상기 좌측 플랭킹 입력은 상기 연속 이미지 데이터가 보충된, 상기 현재 이미지 데이터를 포함하고, 상기 좌측 플랭킹 출력은 상기 현재 서열분석 사이클 동안의 좌측 플랭킹 염기 호출 예측 및 상기 연속 서열분석 사이클들 동안의 염기 호출 예측들을 포함함 -; 및
    상기 신경 네트워크 기반 염기 호출자에 커플링되고, 상기 현재 서열분석 사이클 동안의 상기 우측 플랭킹 염기 호출 예측, 상기 중심 염기 호출 예측, 및 상기 좌측 플랭킹 염기 호출 예측에 기초하여 상기 현재 서열분석 사이클 동안 염기 호출을 생성하도록 구성된 염기 호출 생성기를 포함하는, 인공 지능 기반 시스템.
  2. 제1항에 있어서, 상기 현재 서열분석 사이클 동안의 상기 현재 이미지 데이터는 상기 현재 서열분석 사이클에서 캡처된 분석물들 및 그들의 주변 배경의 세기 방출물들을 묘사하는, 인공 지능 기반 시스템.
  3. 제2항에 있어서, 상기 현재 서열분석 사이클 동안의 상기 우측 플랭킹 염기 호출 예측, 상기 중심 염기 호출 예측, 및 상기 좌측 플랭킹 염기 호출 예측은 상기 현재 서열분석 사이클에서 상기 분석물들 중 하나 이상의 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 식별하는, 인공 지능 기반 시스템.
  4. 제3항에 있어서, 상기 염기 호출 생성기는,
    상기 현재 서열분석 사이클 동안 상기 우측 플랭킹 염기 호출 예측, 상기 중심 염기 호출 예측, 및 상기 좌측 플랭킹 염기 호출 예측에 걸쳐 상기 가능성들을 염기별로 합산하고;
    상기 염기별 합들에 기초하여 염기별 평균들을 결정하고;
    상기 염기별 평균들 중 가장 높은 염기별 평균에 기초하여 상기 현재 서열분석 사이클 동안 상기 염기 호출을 생성하는 평균화기를 포함하도록 추가로 구성되는, 인공 지능 기반 시스템.
  5. 제3항에 있어서, 상기 염기 호출 생성기는,
    상기 가능성들 중 가장 높은 가능성에 기초하여 상기 현재 서열분석 사이클 동안의 상기 우측 플랭킹 염기 호출 예측, 상기 중심 염기 호출 예측, 및 상기 좌측 플랭킹 염기 호출 예측 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
    상기 예비 염기 호출들의 시퀀스 내의 가장 보편적인 염기 호출에 기초하여 상기 현재 서열분석 사이클 동안 상기 염기 호출을 생성하는 콘센서(consensor)를 포함하도록 추가로 구성되는, 인공 지능 기반 시스템.
  6. 제3항에 있어서, 상기 염기 호출 생성기는,
    상기 가능성들 중 가장 높은 가능성에 기초하여 상기 현재 서열분석 사이클 동안의 상기 우측 플랭킹 염기 호출 예측, 상기 중심 염기 호출 예측, 및 상기 좌측 플랭킹 염기 호출 예측 각각에 대한 예비 염기 호출을 결정하여, 이에 의해, 예비 염기 호출들의 시퀀스를 생성하고;
    상기 예비 염기 호출들의 시퀀스 내의 예비 염기 호출들 중의 각자의 예비 염기 호출들에 염기별 가중치들을 적용하여 가중화된 예비 염기 호출들의 시퀀스를 생성하고;
    상기 가중화된 예비 염기 호출들의 시퀀스 내의 가장 가중화된 염기 호출에 기초하여 상기 현재 서열분석 사이클 동안 상기 염기 호출을 생성하는 가중화된 콘센서를 포함하도록 추가로 구성되는, 인공 지능 기반 시스템.
  7. 제3항에 있어서, 상기 가능성들은 소프트맥스 층에 의해 생성된 지수적으로 정규화된 스코어들인, 인공 지능 기반 시스템.
  8. 제1항에 있어서, 트레이닝 동안,
    상기 신경 네트워크 기반 염기 호출자의 상기 우측 플랭킹 출력, 상기 중심 출력, 및 상기 좌측 플랭킹 출력에 기초하여 상기 현재 서열분석 사이클, 상기 이전 서열분석 사이클들, 및 상기 연속 서열분석 사이클들 동안 상기 염기 호출 생성기에 의해 생성된 염기 호출들과 실측 자료(ground truth) 염기 호출들 사이의 에러들을 계산하고;
    상기 에러들에 기초하여 상기 현재 서열분석 사이클, 상기 이전 서열분석 사이클들, 및 상기 연속 서열분석 사이클들 동안의 기울기들을 결정하고;
    상기 기울기들을 역전파시킴으로써 상기 신경 네트워크 기반 염기 호출자의 파라미터들을 업데이트하는 트레이너를 포함하도록 추가로 구성되는, 인공 지능 기반 시스템.
  9. 제1항에 있어서, 상기 현재 서열분석 사이클 동안의 상기 우측 플랭킹 염기 호출 예측은 상기 현재 서열분석 사이클과 상기 이전 서열분석 사이클들 사이의 프리-페이징 효과(prephasing effect)를 설명하는, 인공 지능 기반 시스템.
  10. 제9항에 있어서, 상기 현재 서열분석 사이클 동안의 상기 중심 염기 호출 예측은 상기 현재 서열분석 사이클과 상기 이전 서열분석 사이클들 사이의 프리-페이징 효과 및 상기 현재 서열분석 사이클과 상기 연속 서열분석 사이클들 사이의 페이징 효과를 설명하는, 인공 지능 기반 시스템.
  11. 제10항에 있어서, 상기 현재 서열분석 사이클 동안의 상기 좌측 플랭킹 염기 호출 예측은 상기 현재 서열분석 사이클과 상기 연속 서열분석 사이클들 사이의 페이징 효과를 설명하는, 인공 지능 기반 시스템.
  12. 염기 호출하기 위한 인공 지능 기반 시스템으로서,
    호스트 프로세서;
    서열분석 런의 서열분석 사이클들 동안 이미지 데이터를 저장하는, 상기 호스트 프로세서에 의해 액세스가능한 메모리 - 상기 서열분석 런의 현재 서열분석 사이클 동안의 현재 이미지 데이터는 상기 현재 서열분석 사이클에서 캡처된 분석물들 및 그들의 주변 배경의 세기 방출물들을 묘사함 -; 및
    상기 메모리에 액세스하는 구성가능한 프로세서를 포함하고, 상기 구성가능한 프로세서는,
    복수의 실행 클러스터들 - 상기 복수의 실행 클러스터들 중의 실행 클러스터들은 신경 네트워크를 실행하도록 구성됨 -; 및
    상기 메모리 및 상기 복수의 실행 클러스터들 중의 실행 클러스터들에 액세스하고, 상기 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안에는 상기 현재 이미지 데이터 및 이전 이미지 데이터를, 그리고 상기 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안에는 연속 이미지 데이터를 상기 복수의 실행 클러스터들 중의 이용가능한 실행 클러스터들에 제공하도록, 상기 실행 클러스터들이, 상기 현재 이미지 데이터, 상기 이전 이미지 데이터, 및 상기 연속 이미지 데이터의 상이한 그룹들을 상기 신경 네트워크에 적용하여 상기 현재 서열분석 사이클 동안 제1, 제2, 및 제3 염기 호출 예측들을 생성하게 하도록, 그리고 상기 제1, 제2, 및 제3 염기 호출 예측들에 기초하여 상기 현재 서열분석 사이클 동안 염기 호출의 생성에 사용하기 위해 상기 현재 서열분석 사이클 동안 상기 제1, 제2, 및 제3 염기 호출 예측들을 상기 메모리에 피드백하도록 구성된 데이터 흐름 로직을 포함하는, 인공 지능 기반 시스템.
  13. 제12항에 있어서, 상기 상이한 그룹들은 상기 현재 이미지 데이터 및 상기 이전 이미지 데이터를 포함하는 제1 그룹, 상기 현재 이미지 데이터, 상기 이전 이미지 데이터, 및 상기 연속 이미지 데이터를 포함하는 제2 그룹, 및 상기 현재 이미지 데이터 및 상기 연속 이미지 데이터를 포함하는 제3 그룹을 포함하는, 인공 지능 기반 시스템.
  14. 제13항에 있어서, 상기 실행 클러스터들은 상기 신경 네트워크에 상기 제1 그룹을 적용하여 상기 제1 염기 호출 예측을 생성하고, 상기 신경 네트워크에 상기 제2 그룹을 적용하여 상기 제2 염기 호출 예측을 생성하고, 상기 신경 네트워크에 상기 제3 그룹을 적용하여 상기 제3 염기 호출 예측을 생성하는, 인공 지능 기반 시스템.
  15. 제12항에 있어서, 상기 현재 서열분석 사이클 동안의 상기 제1, 제2, 및 제3 염기 호출 예측들은 상기 현재 서열분석 사이클에서 상기 분석물들 중 하나 이상의 분석물 내에 혼입된 염기가 A, C, T, 및 G일 가능성들을 식별하는, 인공 지능 기반 시스템.
  16. 제15항에 있어서, 상기 데이터 흐름 로직은,
    상기 현재 서열분석 사이클 동안 상기 제1, 제2, 및 제3 염기 호출 예측들에 걸쳐 상기 가능성들을 염기별로 합산하고;
    상기 염기별 합산에 기초하여 염기별 평균들을 결정하고;
    상기 염기별 평균들 중 가장 높은 염기별 평균에 기초하여 상기 현재 서열분석 사이클 동안 상기 염기 호출을 생성함으로써 상기 현재 서열분석 사이클 동안 상기 염기 호출을 생성하도록 추가로 구성되는, 인공 지능 기반 시스템.
  17. 염기 호출의 인공 지능 기반 방법으로서,
    서열분석 런의 현재 서열분석 사이클 동안에는 현재 이미지 데이터에, 상기 현재 서열분석 사이클에 선행하는 하나 이상의 이전 서열분석 사이클들 동안에는 이전 이미지 데이터에, 그리고 상기 현재 서열분석 사이클에 후행하는 하나 이상의 연속 서열분석 사이클들 동안에는 연속 이미지 데이터에 액세스하는 단계;
    신경 네트워크 기반 염기 호출자를 통해 상기 현재 이미지 데이터, 상기 이전 이미지 데이터, 및 상기 연속 이미지 데이터의 상이한 그룹들을 프로세싱하고, 상기 현재 서열분석 사이클 동안 복수의 호출 예측들을 생성하는 단계; 및
    상기 복수의 염기 호출 예측들에 기초하여 상기 현재 서열분석 사이클 동안 염기 호출을 생성하는 단계를 포함하는, 인공 지능 기반 방법.
  18. 염기 호출의 인공 지능 기반 방법으로서,
    염기 호출자의 각자의 반복들을 실행하는 것에 응답하여 특정 서열분석 사이클 동안 각각의 염기 호출들을 생성하는 단계를 포함하고,
    상기 각자의 반복들은 서열 사이클들의 각자의 윈도우들 동안 각자의 입력 세트들을 프로세싱하고;
    상기 서열분석 사이클들의 각자의 윈도우들은 적어도 하나의 중첩 사이클로서의 상기 특정 서열분석 사이클, 및 하나 이상의 비-중첩 사이클들을 갖는, 인공 지능 기반 방법.
  19. 제18항에 있어서, 상기 특정 서열분석 사이클은 상기 서열 사이클들의 각자의 윈도우들 내의 상이한 위치들에 나타나는, 인공 지능 기반 시스템.
  20. 제18항에 있어서, 상기 특정 서열분석 사이클은 서열 사이클들의 2개의 윈도우들 사이의 동일한 위치에 나타나는, 인공 지능 기반 시스템.
KR1020227029021A 2020-02-20 2021-02-19 인공 지능 기반 다-대-다 염기 호출 KR20220143854A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202062979414P 2020-02-20 2020-02-20
US62/979,414 2020-02-20
US17/180,542 US11749380B2 (en) 2020-02-20 2021-02-19 Artificial intelligence-based many-to-many base calling
PCT/US2021/018910 WO2021168353A2 (en) 2020-02-20 2021-02-19 Artificial intelligence-based many-to-many base calling
US17/180,542 2021-02-19

Publications (1)

Publication Number Publication Date
KR20220143854A true KR20220143854A (ko) 2022-10-25

Family

ID=77366218

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227029021A KR20220143854A (ko) 2020-02-20 2021-02-19 인공 지능 기반 다-대-다 염기 호출

Country Status (11)

Country Link
US (2) US11749380B2 (ko)
EP (1) EP4107735A2 (ko)
JP (1) JP2023515108A (ko)
KR (1) KR20220143854A (ko)
CN (1) CN115136244A (ko)
AU (1) AU2021224871A1 (ko)
BR (1) BR112022016415A2 (ko)
CA (1) CA3168435A1 (ko)
IL (1) IL295560A (ko)
MX (1) MX2022010276A (ko)
WO (1) WO2021168353A2 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023049212A2 (en) * 2021-09-22 2023-03-30 Illumina, Inc. State-based base calling
WO2024059852A1 (en) * 2022-09-16 2024-03-21 Illumina, Inc. Cluster segmentation and conditional base calling
CN117437976B (zh) * 2023-12-21 2024-04-02 深圳人体密码基因科技有限公司 基于基因检测的疾病风险筛查方法及系统

Family Cites Families (161)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991006678A1 (en) 1989-10-26 1991-05-16 Sri International Dna sequencing
US5641658A (en) 1994-08-03 1997-06-24 Mosaic Technologies, Inc. Method for performing amplification of nucleic acid with two primers bound to a single solid support
US6090592A (en) 1994-08-03 2000-07-18 Mosaic Technologies, Inc. Method for performing amplification of nucleic acid on supports
AU6846798A (en) 1997-04-01 1998-10-22 Glaxo Group Limited Method of nucleic acid sequencing
AR021833A1 (es) 1998-09-30 2002-08-07 Applied Research Systems Metodos de amplificacion y secuenciacion de acido nucleico
CN100462433C (zh) 2000-07-07 2009-02-18 维西根生物技术公司 实时序列测定
US7211414B2 (en) 2000-12-01 2007-05-01 Visigen Biotechnologies, Inc. Enzymatic nucleic acid synthesis: compositions and methods for altering monomer incorporation fidelity
AR031640A1 (es) 2000-12-08 2003-09-24 Applied Research Systems Amplificacion isotermica de acidos nucleicos en un soporte solido
EP1436596A2 (en) 2001-09-28 2004-07-14 Ciencia, Incorporated Compact multiwavelength phase fluorometer
US7057026B2 (en) 2001-12-04 2006-06-06 Solexa Limited Labelled nucleotides
US20040002090A1 (en) 2002-03-05 2004-01-01 Pascal Mayer Methods for detecting genome-wide sequence variations associated with a phenotype
SI3587433T1 (sl) 2002-08-23 2020-08-31 Illumina Cambridge Limited Modificirani nukleotidi
WO2004059006A1 (en) 2002-12-25 2004-07-15 Casio Computer Co., Ltd. Optical dna sensor, dna reading apparatus, identification method of dna and manufacturing method of optical dna sensor
US7575865B2 (en) 2003-01-29 2009-08-18 454 Life Sciences Corporation Methods of amplifying and sequencing nucleic acids
GB0321306D0 (en) 2003-09-11 2003-10-15 Solexa Ltd Modified polymerases for improved incorporation of nucleotide analogues
KR100955023B1 (ko) 2003-12-01 2010-04-27 엘지전자 주식회사 디지털 복합 녹화기에서의 데이터 연속 기록방법
US20110059865A1 (en) 2004-01-07 2011-03-10 Mark Edward Brennan Smith Modified Molecular Arrays
CA2575859A1 (en) 2004-08-11 2006-02-23 Aureon Laboratories, Inc. Systems and methods for automated diagnosis and grading of tissue images
CA2579150C (en) 2004-09-17 2014-11-25 Pacific Biosciences Of California, Inc. Apparatus and method for analysis of molecules
EP1828412B2 (en) 2004-12-13 2019-01-09 Illumina Cambridge Limited Improved method of nucleotide detection
WO2006125674A1 (en) 2005-05-25 2006-11-30 Stiftelsen Universitetsforskning Bergen Microscope system and screening method for drugs, physical therapies and biohazards
FR2886433B1 (fr) 2005-05-30 2007-09-07 Commissariat Energie Atomique Methode de segmentation d'une sequence d'images tridimensionnelles, notamment en pharmaco-imagerie.
US8045998B2 (en) 2005-06-08 2011-10-25 Cisco Technology, Inc. Method and system for communicating using position information
EP2463386B1 (en) 2005-06-15 2017-04-12 Complete Genomics Inc. Nucleic acid analysis by random mixtures of non-overlapping fragments
GB0514936D0 (en) 2005-07-20 2005-08-24 Solexa Ltd Preparation of templates for nucleic acid sequencing
GB0517097D0 (en) 2005-08-19 2005-09-28 Solexa Ltd Modified nucleosides and nucleotides and uses thereof
US7405281B2 (en) 2005-09-29 2008-07-29 Pacific Biosciences Of California, Inc. Fluorescent nucleotide analogs and uses therefor
GB0522310D0 (en) 2005-11-01 2005-12-07 Solexa Ltd Methods of preparing libraries of template polynucleotides
JP2007199397A (ja) 2006-01-26 2007-08-09 Nikon Corp 顕微鏡装置
EP2021503A1 (en) 2006-03-17 2009-02-11 Solexa Ltd. Isothermal methods for creating clonal single molecule arrays
EP4105644A3 (en) 2006-03-31 2022-12-28 Illumina, Inc. Systems and devices for sequence by synthesis analysis
US7414716B2 (en) 2006-10-23 2008-08-19 Emhart Glass S.A. Machine for inspecting glass containers
US20080242560A1 (en) 2006-11-21 2008-10-02 Gunderson Kevin L Methods for generating amplified nucleic acid arrays
WO2008092155A2 (en) 2007-01-26 2008-07-31 Illumina, Inc. Image data efficient genetic sequencing method and system
JP2010521272A (ja) 2007-03-16 2010-06-24 エスティーアイ・メディカル・システムズ・エルエルシー 標準化された撮像データを実現するために撮像デバイスに自動品質フィードバックを与える方法
CA2689626C (en) 2007-06-06 2016-10-25 Pacific Biosciences Of California, Inc. Methods and processes for calling bases in sequence by incorporation methods
US8703422B2 (en) 2007-06-06 2014-04-22 Pacific Biosciences Of California, Inc. Methods and processes for calling bases in sequence by incorporation methods
US8407012B2 (en) 2008-07-03 2013-03-26 Cold Spring Harbor Laboratory Methods and systems of DNA sequencing
AU2009281762A1 (en) 2008-08-15 2010-02-18 Brown University Method and apparatus for estimating body shape
US8175379B2 (en) 2008-08-22 2012-05-08 Adobe Systems Incorporated Automatic video image segmentation
WO2010039553A1 (en) 2008-10-03 2010-04-08 Illumina, Inc. Method and system for determining the accuracy of dna base identifications
US20100157086A1 (en) 2008-12-15 2010-06-24 Illumina, Inc Dynamic autofocus method and system for assay imager
US8594439B2 (en) 2009-05-28 2013-11-26 Hewlett-Packard Development Company, L.P. Image processing
US9524369B2 (en) 2009-06-15 2016-12-20 Complete Genomics, Inc. Processing and analysis of complex nucleic acid sequence data
US8182994B2 (en) 2009-09-15 2012-05-22 Illumina Cambridge Limited Centroid markers for image analysis of high denisty clusters in complex polynucleotide sequencing
US20140152801A1 (en) 2009-10-28 2014-06-05 Alentic Microscience Inc. Detecting and Using Light Representative of a Sample
US9023769B2 (en) 2009-11-30 2015-05-05 Complete Genomics, Inc. cDNA library for nucleic acid sequencing
US8965076B2 (en) 2010-01-13 2015-02-24 Illumina, Inc. Data processing system and methods
US10619195B2 (en) 2010-04-06 2020-04-14 Massachusetts Institute Of Technology Gene-expression profiling with reduced numbers of transcript measurements
EP2569721A4 (en) 2010-05-14 2013-11-27 Datalogic Adc Inc SYSTEMS AND METHODS FOR OBJECT DETECTION USING A LARGE DATABASE
EP2390810B1 (en) 2010-05-26 2019-10-16 Tata Consultancy Services Limited Taxonomic classification of metagenomic sequences
US20120015825A1 (en) 2010-07-06 2012-01-19 Pacific Biosciences Of California, Inc. Analytical systems and methods with software mask
EP2632593B1 (en) 2010-10-27 2021-09-29 Illumina, Inc. Flow cells for biological or chemical analysis
DE102010062341B4 (de) 2010-12-02 2023-05-17 Carl Zeiss Microscopy Gmbh Vorrichtung zur Erhöhung der Tiefendiskriminierung optisch abbildender Systeme
US10241075B2 (en) 2010-12-30 2019-03-26 Life Technologies Corporation Methods, systems, and computer readable media for nucleic acid sequencing
US20130060482A1 (en) 2010-12-30 2013-03-07 Life Technologies Corporation Methods, systems, and computer readable media for making base calls in nucleic acid sequencing
CN103843001B (zh) 2011-04-14 2017-06-09 考利达基因组股份有限公司 复杂核酸序列数据的处理和分析
US9453258B2 (en) 2011-09-23 2016-09-27 Illumina, Inc. Methods and compositions for nucleic acid sequencing
WO2013096692A1 (en) 2011-12-21 2013-06-27 Illumina, Inc. Apparatus and methods for kinetic analysis and determination of nucleic acid sequences
US8660342B2 (en) 2012-01-24 2014-02-25 Telefonica, S.A. Method to assess aesthetic quality of photographs
US8906320B1 (en) 2012-04-16 2014-12-09 Illumina, Inc. Biosensors for biological or chemical analysis and systems and methods for same
US8804421B2 (en) 2012-10-31 2014-08-12 Intel Corporation Center read reference voltage determination based on estimated probability density function
EP2928781B1 (en) 2012-11-28 2018-01-10 Graphic Packaging International, Inc. Carton with detachable container panel for forming a container, blank and method of forming a carton
US10068054B2 (en) 2013-01-17 2018-09-04 Edico Genome, Corp. Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform
CA2907484C (en) 2013-03-13 2021-06-29 Illumina, Inc. Methods and systems for aligning repetitive dna elements
EP2971070B2 (en) 2013-03-14 2021-03-03 Illumina, Inc. Modified polymerases for improved incorporation of nucleotide analogues
US10176579B2 (en) 2013-03-15 2019-01-08 Ventana Medical Systems, Inc. Tissue object-based machine learning system for automated scoring of digital whole slides
CN105378113B (zh) 2013-05-06 2020-02-21 加利福尼亚太平洋生物科学股份有限公司 实时电子测序
ES2875892T3 (es) 2013-09-20 2021-11-11 Spraying Systems Co Boquilla de pulverización para craqueo catalítico fluidizado
US9299004B2 (en) 2013-10-24 2016-03-29 Adobe Systems Incorporated Image foreground detection
ES2808824T3 (es) 2013-12-03 2021-03-02 Illumina Inc Métodos y sistemas para analizar datos de imagen
JP6672149B2 (ja) 2013-12-10 2020-03-25 イラミーナ インコーポレーテッド 生物学的または化学的な分析のためのバイオセンサおよびその製造方法
US10068053B2 (en) 2013-12-16 2018-09-04 Complete Genomics, Inc. Basecaller for DNA sequencing using machine learning
GB201408853D0 (en) 2014-05-19 2014-07-02 Diamond Light Source Ltd Analysis of signals from pixellated detectors of ionizing radiation
US10127448B2 (en) 2014-08-27 2018-11-13 Bae Systems Information And Electronic Systems Integration Inc. Method and system for dismount detection in low-resolution UAV imagery
HUE058678T2 (hu) 2014-09-12 2022-09-28 Illumina Cambridge Ltd Repeat expanziók kimutatása short read szekvenálási adatokkal
GB2559013B (en) 2014-12-02 2019-07-17 Shanghai United Imaging Healthcare Co Ltd A method and system for image processing
CN107735496B (zh) 2014-12-26 2021-05-07 株式会社日立高新技术 核酸分析装置
IL236598A0 (en) 2015-01-05 2015-05-31 Superfish Ltd Image similarity as a function of image weighted image descriptors generated from neural networks
US10410118B2 (en) 2015-03-13 2019-09-10 Deep Genomics Incorporated System and method for training neural networks
US10733417B2 (en) 2015-04-23 2020-08-04 Cedars-Sinai Medical Center Automated delineation of nuclei for three dimensional (3-D) high content screening
US10061972B2 (en) 2015-05-28 2018-08-28 Tokitae Llc Image analysis systems and related methods
US9836839B2 (en) 2015-05-28 2017-12-05 Tokitae Llc Image analysis systems and related methods
US10185803B2 (en) 2015-06-15 2019-01-22 Deep Genomics Incorporated Systems and methods for classifying, prioritizing and interpreting genetic variants and therapies using a deep neural network
CA2894317C (en) 2015-06-15 2023-08-15 Deep Genomics Incorporated Systems and methods for classifying, prioritizing and interpreting genetic variants and therapies using a deep neural network
US20160371431A1 (en) 2015-06-22 2016-12-22 Counsyl, Inc. Methods of predicting pathogenicity of genetic sequence variants
WO2017027783A1 (en) 2015-08-13 2017-02-16 Centrillion Technology Holdings Corporation Methods for synchronising nucleic acid molecules
US10755810B2 (en) 2015-08-14 2020-08-25 Elucid Bioimaging Inc. Methods and systems for representing, storing, and accessing computable medical imaging-derived quantities
US10176408B2 (en) 2015-08-14 2019-01-08 Elucid Bioimaging Inc. Systems and methods for analyzing pathologies utilizing quantitative imaging
US11094058B2 (en) 2015-08-14 2021-08-17 Elucid Bioimaging Inc. Systems and method for computer-aided phenotyping (CAP) using radiologic images
EP3147650A1 (en) 2015-09-22 2017-03-29 MyCartis N.V. Cross-talk correction in multiplexing analysis of biological sample
US10930372B2 (en) 2015-10-02 2021-02-23 Northrop Grumman Systems Corporation Solution for drug discovery
US10474951B2 (en) 2015-10-23 2019-11-12 Nec Corporation Memory efficient scalable deep learning with model parallelization
EP3387613B1 (en) 2015-12-10 2020-07-01 QIAGEN GmbH Background compensation
KR102592076B1 (ko) 2015-12-14 2023-10-19 삼성전자주식회사 딥러닝 기반 영상 처리 장치 및 방법, 학습 장치
GB2549554A (en) 2016-04-21 2017-10-25 Ramot At Tel-Aviv Univ Ltd Method and system for detecting an object in an image
EP4224219A3 (en) 2016-04-22 2023-08-30 Illumina Inc Photonic stucture-based devices and compositions for use in luminescent imaging of multiple sites within a pixel, and methods of using the same
WO2017189469A1 (en) 2016-04-29 2017-11-02 Microsoft Technology Licensing, Llc Trace reconstruction from noisy polynucleotide sequencer reads
US10354747B1 (en) 2016-05-06 2019-07-16 Verily Life Sciences Llc Deep learning analysis pipeline for next generation sequencing
EP4009330A1 (en) 2016-06-01 2022-06-08 Quantum-si Incorporated Pulse caller and base caller
US20180107927A1 (en) 2016-06-15 2018-04-19 Deep Genomics Incorporated Architectures for training neural networks using biological sequences, conservation, and molecular phenotypes
US10648027B2 (en) 2016-08-08 2020-05-12 Roche Sequencing Solutions, Inc. Basecalling for stochastic sequencing processes
CN106529424B (zh) 2016-10-20 2019-01-04 中山大学 一种基于选择性搜索算法的车标检测识别方法及系统
US11004199B2 (en) 2016-11-11 2021-05-11 University Of South Florida Automated stereology for determining tissue characteristics
CN110088804B (zh) 2016-12-22 2023-06-27 文塔纳医疗系统公司 基于原色和免疫组织化学图像的计算机评分
CN110366596A (zh) 2016-12-28 2019-10-22 埃斯库斯生物科技股份公司 用于对复杂异质群落中的完整微生物株系进行分析、确定其功能关系及相互作用以及基于此来识别和合成生物活性改性剂的方法、设备和系统
WO2018129314A1 (en) 2017-01-06 2018-07-12 Illumina, Inc. Phasing correction
US10740880B2 (en) 2017-01-18 2020-08-11 Elucid Bioimaging Inc. Systems and methods for analyzing pathologies utilizing quantitative imaging
SG11201906428SA (en) 2017-01-18 2019-08-27 Illumina Inc Methods and systems for generation and error-correction of unique molecular index sets with heterogeneous molecular lengths
KR102373741B1 (ko) 2017-03-07 2022-03-11 일루미나, 인코포레이티드 단일 광원, 2-광학 채널 서열분석
NL2018852B1 (en) 2017-05-05 2018-11-14 Illumina Inc Optical distortion correction for imaged samples
US10713794B1 (en) 2017-03-16 2020-07-14 Facebook, Inc. Method and system for using machine-learning for object instance segmentation
DK3872187T3 (da) 2017-04-23 2022-12-05 Illumina Cambridge Ltd Sammensætninger og fremgangsmåder til forbedring af prøveidentificering i indekserede nukleinsyrebiblioteker
SG11201909697TA (en) 2017-05-01 2019-11-28 Illumina Inc Optimal index sequences for multiplex massively parallel sequencing
US10552663B2 (en) 2017-05-02 2020-02-04 Techcyte, Inc. Machine learning classification and training for digital microscopy cytology images
GB201707138D0 (en) 2017-05-04 2017-06-21 Oxford Nanopore Tech Ltd Machine learning analysis of nanopore measurements
SG10202113017YA (en) 2017-05-08 2021-12-30 Illumina Inc Universal short adapters for indexing of polynucleotide samples
CN111742370A (zh) 2017-05-12 2020-10-02 密歇根大学董事会 个体和队列药理学表型预测平台
CN110997944A (zh) 2017-05-26 2020-04-10 生命科技股份有限公司 用于检测brca1/2中的大片段重排方法和系统
US11587644B2 (en) 2017-07-28 2023-02-21 The Translational Genomics Research Institute Methods of profiling mass spectral data using neural networks
US20200202977A1 (en) 2017-07-31 2020-06-25 Illumina, Inc. Sequencing system with multiplexed biological sample aggregation
EP4289967A3 (en) 2017-08-01 2024-03-20 Illumina, Inc. Spatial indexing of genetic material and library preparation using hydrogel beads and flow cells
CN107563150B (zh) 2017-08-31 2021-03-19 深圳大学 蛋白质结合位点的预测方法、装置、设备及存储介质
US11507806B2 (en) 2017-09-08 2022-11-22 Rohit Seth Parallel neural processor for Artificial Intelligence
US10706535B2 (en) 2017-09-08 2020-07-07 International Business Machines Corporation Tissue staining quality determination
CN111094540A (zh) 2017-09-15 2020-05-01 伊鲁米纳公司 序列检测系统的调整与校准特征
WO2019075247A1 (en) 2017-10-11 2019-04-18 Beyond Limits, Inc. DYNAMIC ENGINE FOR COGNITIVE TANK SYSTEM
EP3622519B1 (en) 2017-10-16 2023-09-13 Illumina, Inc. Deep learning-based aberrant splicing detection
US10540591B2 (en) 2017-10-16 2020-01-21 Illumina, Inc. Deep learning-based techniques for pre-training deep convolutional neural networks
KR102362711B1 (ko) 2017-10-16 2022-02-14 일루미나, 인코포레이티드 변이체 분류를 위한 심층 컨볼루션 신경망
EP3701260A4 (en) 2017-10-26 2021-10-27 Essenlix Corporation IMAGE-BASED ANALYSIS SYSTEM AND METHODS USING MACHINE LEARNING AND CROF
EP3704640A4 (en) 2017-10-27 2021-08-18 Apostle, Inc. PREDICTION OF CANCER-RELATED PATHOGENIC EFFECTS OF SOMATIC MUTATIONS USING DEEP LEARNING METHODS
KR20230028569A (ko) 2017-11-06 2023-02-28 일루미나, 인코포레이티드 핵산 색인 기술
US11062176B2 (en) 2017-11-30 2021-07-13 Kofax, Inc. Object detection and image cropping using a multi-detector approach
WO2019108888A1 (en) 2017-11-30 2019-06-06 The Research Foundation For The State University Of New York SYSTEM AND METHOD TO QUANTIFY TUMOR-INFILTRATING LYMPHOCYTES (TILs) FOR CLINICAL PATHOLOGY ANALYSIS
EP3721406B1 (en) 2017-12-05 2024-01-24 Ventana Medical Systems, Inc. Method of computing tumor spatial and inter-marker heterogeneity
US11288576B2 (en) 2018-01-05 2022-03-29 Illumina, Inc. Predicting quality of sequencing results using deep neural networks
US11561196B2 (en) 2018-01-08 2023-01-24 Illumina, Inc. Systems and devices for high-throughput sequencing with semiconductor-based detection
WO2019140146A1 (en) 2018-01-12 2019-07-18 Life Technologies Corporation Methods for flow space quality score prediction by neural networks
CA3065939A1 (en) 2018-01-15 2019-07-18 Illumina, Inc. Deep learning-based variant classifier
MX2020007904A (es) * 2018-01-26 2020-09-07 Quantum Si Inc Llamado de pulso y base habilitado por maquina de aprendizaje para dispositivos de secuenciacion.
JP6992590B2 (ja) 2018-02-23 2022-01-13 日本電信電話株式会社 特徴表現装置、特徴表現方法、およびプログラム
WO2019197509A1 (en) 2018-04-13 2019-10-17 Ventana Medical Systems, Inc. Systems for cell shape estimation
US10649459B2 (en) 2018-04-26 2020-05-12 Zoox, Inc. Data segmentation using masks
US20200251183A1 (en) 2018-07-11 2020-08-06 Illumina, Inc. Deep Learning-Based Framework for Identifying Sequence Patterns that Cause Sequence-Specific Errors (SSEs)
US10635979B2 (en) 2018-07-20 2020-04-28 Google Llc Category learning neural networks
US11446008B2 (en) 2018-08-17 2022-09-20 Tokitae Llc Automated ultrasound video interpretation of a body part with one or more convolutional neural networks
US11600360B2 (en) 2018-08-20 2023-03-07 Microsoft Technology Licensing, Llc Trace reconstruction from reads with indeterminant errors
EP3640837A1 (en) 2018-10-15 2020-04-22 Koninklijke Philips N.V. System for co-registration of medical images using a classifier
GB201819378D0 (en) 2018-11-28 2019-01-09 Oxford Nanopore Tech Ltd Analysis of nanopore signal using a machine-learning technique
EP3895171A1 (en) 2018-12-10 2021-10-20 Life Technologies Corporation Deep basecaller for sanger sequencing
US10783632B2 (en) 2018-12-14 2020-09-22 Spectral Md, Inc. Machine learning systems and method for assessment, healing prediction, and treatment of wounds
US10789462B2 (en) 2019-01-15 2020-09-29 International Business Machines Corporation Weakly and fully labeled mammogram classification and localization with a dual branch deep neural network
US11783917B2 (en) 2019-03-21 2023-10-10 Illumina, Inc. Artificial intelligence-based base calling
US11210554B2 (en) 2019-03-21 2021-12-28 Illumina, Inc. Artificial intelligence-based generation of sequencing metadata
SG10201902958PA (en) 2019-04-02 2020-11-27 Accenture Global Solutions Ltd Artificial intelligence based plantable blank spot detection
CN110245685B (zh) 2019-05-15 2022-03-25 清华大学 基因组单位点变异致病性的预测方法、系统及存储介质
CA3104851A1 (en) 2019-05-16 2020-11-19 Illumina, Inc. Base calling using convolutions
US11593649B2 (en) 2019-05-16 2023-02-28 Illumina, Inc. Base calling using convolutions
EP4018365A1 (en) 2019-08-23 2022-06-29 Memorial Sloan Kettering Cancer Center Identifying regions of interest from whole slide images
US11327178B2 (en) 2019-09-06 2022-05-10 Volvo Car Corporation Piece-wise network structure for long range environment perception

Also Published As

Publication number Publication date
WO2021168353A3 (en) 2021-09-23
IL295560A (en) 2022-10-01
EP4107735A2 (en) 2022-12-28
US11749380B2 (en) 2023-09-05
MX2022010276A (es) 2022-09-19
AU2021224871A1 (en) 2022-09-08
BR112022016415A2 (pt) 2022-10-11
JP2023515108A (ja) 2023-04-12
US20240055078A1 (en) 2024-02-15
CA3168435A1 (en) 2021-08-26
WO2021168353A2 (en) 2021-08-26
US20210265017A1 (en) 2021-08-26
CN115136244A (zh) 2022-09-30

Similar Documents

Publication Publication Date Title
US20210265018A1 (en) Knowledge Distillation and Gradient Pruning-Based Compression of Artificial Intelligence-Based Base Caller
KR20220143854A (ko) 인공 지능 기반 다-대-다 염기 호출
US20210265015A1 (en) Hardware Execution and Acceleration of Artificial Intelligence-Based Base Caller
KR20220144375A (ko) 인공 지능 기반 염기 호출자를 위한 버스 네트워크
US20220067489A1 (en) Detecting and Filtering Clusters Based on Artificial Intelligence-Predicted Base Calls
US20230005253A1 (en) Efficient artificial intelligence-based base calling of index sequences
US20220319639A1 (en) Artificial intelligence-based base caller with contextual awareness
US20230029970A1 (en) Quality score calibration of basecalling systems
CA3223746A1 (en) Quality score calibration of basecalling systems
CA3183578A1 (en) Artificial intelligence-based base caller with contextual awareness
CN117529780A (zh) 碱基检出系统的质量分数校准
CN117501373A (zh) 基于人工智能的索引序列的高效碱基检出

Legal Events

Date Code Title Description
A201 Request for examination