KR102339723B1 - Dna 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치 - Google Patents

Dna 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치 Download PDF

Info

Publication number
KR102339723B1
KR102339723B1 KR1020200080464A KR20200080464A KR102339723B1 KR 102339723 B1 KR102339723 B1 KR 102339723B1 KR 1020200080464 A KR1020200080464 A KR 1020200080464A KR 20200080464 A KR20200080464 A KR 20200080464A KR 102339723 B1 KR102339723 B1 KR 102339723B1
Authority
KR
South Korea
Prior art keywords
sequence
base
computer
quality score
probability
Prior art date
Application number
KR1020200080464A
Other languages
English (en)
Other versions
KR20210023674A (ko
Inventor
김성환
박호성
알버트 노
김재원
정재호
노종선
Original Assignee
서울대학교산학협력단
전남대학교산학협력단
울산대학교 산학협력단
홍익대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 서울대학교산학협력단, 전남대학교산학협력단, 울산대학교 산학협력단, 홍익대학교 산학협력단 filed Critical 서울대학교산학협력단
Priority to PCT/KR2020/010571 priority Critical patent/WO2021033981A1/ko
Publication of KR20210023674A publication Critical patent/KR20210023674A/ko
Application granted granted Critical
Publication of KR102339723B1 publication Critical patent/KR102339723B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/001Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits characterised by the elements used

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

DNA 저장 장치의 연성 정보 기반 복호화 방법, 프로그램, 장치가 제공된다. 본 발명의 일 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 방법은, 컴퓨터가 제1 시퀀스 및 상기 제1 시퀀스에 대한 품질 점수(quality score)를 획득하는 단계 및 상기 컴퓨터가 상기 품질 점수를 기반으로, 상기 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출하는 단계를 포함하고, 상기 품질 점수는, 상기 제1 시퀀스에 포함된 각각의 염기의 오류율을 포함하고, 상기 염기 확률은, 상기 제1 시퀀스의 특정 위치의 염기가 아데닌(A, Adenine), 구아닌(G, Guanine), 시토신(C, Cytosine) 및 티민(T, Thymine) 각각에 해당할 확률인 것일 수 있다.

Description

DNA 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치{METHOD, PROGRAM, AND APPRATUS OF DECODING BASED ON SOFT INFORMATION OF A DNA STORAGE DEVICE}
본 발명은 DNA 저장 장치의 연성 정보 기반 복호화 방법, 프로그램, 장치에 관한 것이다.
현대 사회에서는 스마트 기기들의 보급, SNS 사용량의 증가 및 IoT 시스템의 보급 등으로 데이터가 넘쳐나고 있으며, 2020년이면 44조 GB 이상의 데이터가 인터넷에 존재할 것으로 예상된다.
이와 같이 많은 양의 데이터는 일반적으로 하드웨어 장치 자체, 외장 하드 및 웹 하드 등 많은 저장 장치를 이용하여 곳곳에 데이터를 보관하고 있다.
그러나, 이러한 데이터의 보관 방식은 용량이나 비용뿐만 아니라 불편함까지 초래하는 많은 한계들이 있어, 최근 DNA 스토리지 기술에 대한 많은 연구가 이루어지고 있다.
DNA 스토리지 기술이란, DNA의 염기를 0과 1로 치환하여 디지털 데이터를 저장하는 방식으로서, DNA에 유전이 아닌 디지털 데이터를 저장한다면 1g의 DNA에 4550억 GB 정도의 데이터를 저장할 수 있게 되며, 이는 1TB 하드디스크보다 215,000배 더 많은 데이터 저장 능력인 것이다.
따라서 최근, 각 디지털 데이터를 DNA 데이터로 인코딩 하는 방법과 DNA 데이터를 디지털 데이터로 복호화하는 방법에 대한 연구가 계속해서 이루어지고 있다.
현재까지 연구되어 사용되고 있는 DNA 데이터를 디지털 데이터로 복호화하는 방법은, 오류를 제거하기 위해 바이너리 정보가 포함된 DNA를 대량 증식하여 여러 번 읽어 오는 단계를 거쳐 오류와 상관없이 A(아데닌), T(티민), G(구아닌), C(시토신)의 개수가 가장 많은 것을 선택하는 방식을 취하고 있다.
그러나, 이와 같은 방법은 많은 수의 리드가 필요하므로 이로 인한 복호화의 시간 지연 및 고비용이 발생하는 문제점이 있다.
상술한 바와 같은 문제점을 해결하기 위한 본 발명은 적은 수의 리드로 효율적인 복호화가 가능한 DNA 저장 장치의 연성 정보 기반 복호화 방법, 프로그램, 장치를 제공하고자 한다.
또한, 본 발명은 단순 오류 확인뿐만 아니라 오류를 정정할 수 있는 DNA 저장 장치의 연성 정보 기반 복호화 방법, 프로그램, 장치를 제공하고자 한다.
또한, 본 발명은 대체 오류, 삽입 오류, 삭제 오류 및 위치 오류의 4가지 종류의 오류를 모두 고려하여 오류를 정정할 수 있는 DNA 저장 장치의 연성 정보 기반 복호화 방법, 프로그램, 장치를 제공하고자 한다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 방법은, 컴퓨터가 제1 시퀀스 및 상기 제1 시퀀스에 대한 품질 점수(quality score)를 획득하는 단계 및 상기 컴퓨터가 상기 품질 점수를 기반으로, 상기 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출하는 단계를 포함하고, 상기 품질 점수는, 상기 제1 시퀀스에 포함된 각각의 염기의 오류율을 포함하고, 상기 염기 확률은, 상기 제1 시퀀스의 특정 위치의 염기가 아데닌(A, Adenine), 구아닌(G, Guanine), 시토신(C, Cytosine) 및 티민(T, Thymine) 각각에 해당할 확률인 것일 수 있다.
또한, 상기 제1 시퀀스는, 해독 염기 서열 파일에 포함된 복수의 올리고 리드를 스티칭(stitching)하여 획득된 타겟 길이의 시퀀스인 것일 수 있다.
또한, 상기 염기 확률을 산출하는 단계는, 상기 컴퓨터가 상기 제1 시퀀스의 각각의 위치에 대한 조건부 위치 오류율을 산출하는 단계 및 상기 컴퓨터가 상기 품질 점수 및 상기 조건부 위치 오류율을 기초로 염기 확률을 산출하는 단계를 포함할 수 있다.
또한, 상기 조건부 위치 오류율을 산출하는 단계는, 제1 시퀀스, 제2 시퀀스 및 제3 시퀀스의 염기 서열을 비교하여 상기 제1 시퀀스의 각각의 위치에 대한 조건부 위치 오류율을 산출하는 것이고, 상기 제2 시퀀스는, 상기 제1 시퀀스로부터 편집 거리(edit distance)를 이용하여 획득된 시퀀스이고, 상기 제3 시퀀스는, 상기 제1 시퀀스의 정답 시퀀스인 것일 수 있다.
또한, 상기 제2 시퀀스는, 복수의 후보 시퀀스 중 상기 제1 시퀀스와 편집 거리가 가장 가까운 시퀀스인 것일 수 있다.
또한, 상기 조건부 위치 오류율은, 대체 오류, 삽입 오류, 삭제 오류 및 위치 오류 중 적어도 하나를 포함하는 오류율을 나타내는 것일 수 있다.
또한, 상기 컴퓨터가 산출된 상기 염기 확률을 기초로, 상기 제1 시퀀스의 각각의 염기에 대응되는 비트의 로그 우도 비(LLR, Log-Likelihood Ratio)를 산출하는 단계를 더 포함할 수 있다.
또한, 상기 로그 우도 비를 산출하는 단계는, 상기 제1 시퀀스의 특정 위치의 염기에 대응되는 두개의 비트 각각에 대하여 로그 우도 비를 산출하는 것일 수 있다.
본 발명의 다른 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 프로그램은, 하드웨어인 컴퓨터와 결합되어, 상기 방법 중 어느 하나의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된다.
본 발명의 또 다른 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 장치는, 제1 시퀀스 및 상기 제1 시퀀스에 대한 품질 점수를 획득하고, 상기 품질 점수를 기반으로, 상기 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출하고, 상기 품질 점수는, 상기 제1 시퀀스에 포함된 각각의 염기의 오류율을 포함하고, 상기 염기 확률은, 상기 제1 시퀀스의 특정 위치의 염기가 아데닌(A, Adenine), 구아닌(G, Guanine), 시토신(C, Cytosine) 및 티민(T, Thymine) 각각에 해당할 확률인 것일 수 있다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
상기와 같은 본 발명에 따르면, DNA를 많이 읽지 않고도 오류를 확인하고 정정할 수 있으므로, 복호화의 시간이 적게 걸리며, 비용을 절감할 수 있는 효과가 있다.
또한, 본 발명에 따르면, 오류의 확인뿐만 아니라, 오류의 정정까지 가능하며, 4종류의 오류를 모두 고려하므로 보다 정확하게 복호화를 수행할 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 방법을 설명하기 위한 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 염기 확률 산출 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 전처리 및 복호화 알고리즘을 설명하기 위한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 전처리 과정 중 H 매트릭스 생성 방법을 설명하기 위한 예시도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
명세서에서 사용되는 "부" 또는 "모듈"이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 "모듈"은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 "모듈"은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 "모듈"은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 "모듈"은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 "모듈"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 "모듈"들로 결합되거나 추가적인 구성요소들과 "부" 또는 "모듈"들로 더 분리될 수 있다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
본 명세서에서 '컴퓨터'는 연산처리를 수행할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 컴퓨터는 데스크 탑 PC, 노트북(Note Book) 뿐만 아니라 스마트폰(Smart phone), 태블릿 PC, 셀룰러폰(Cellular phone), 피씨에스폰(PCS phone; Personal Communication Service phone), 동기식/비동기식 IMT-2000(International Mobile Telecommunication-2000)의 이동 단말기, 팜 PC(Palm Personal Computer), 개인용 디지털 보조기(PDA; Personal Digital Assistant) 등도 해당될 수 있다. 컴퓨터는 클라이언트로부터 정보를 수신하는 서버컴퓨터가 해당될 수도 있다. 또한, 컴퓨터에는 시퀀싱을 수행하는 시퀀싱 장치가 해당될 수 있다.
본 명세서에서 '올리고(oligo)' 또는 '올리고 리드(oligo read)'는 특정한 염기(아데닌, 구아닌, 시토신 또는 티민)를 포함하는 복수개의 뉴클레오타이드(nucleotide) 단위체가 합성된 중합체를 의미한다.
본 명세서에서 '시퀀스(sequence)'는 특정한 올리고 리드를 순서대로 판독(시퀀싱)하여 읽어낸 염기 서열을 의미한다. 본 명세서에서 '시퀀스'와 '올리고 리드'는 혼용되어 사용될 수 있다. 예를 들어, '스티치된 시퀀스'는 구체적으로 '스티치된 올리고 리드의 시퀀스'를 의미할 수 있다.
본 발명은 특정 데이터를 DNA의 염기 서열과의 매핑을 통해 DNA 데이터로 인코딩된 데이터를 다시 복호화(디코딩) 하는 과정에 대한 것이다.
따라서, 본 명세서에서는 인코딩된 데이터를 복호화 하는 과정에 대하여 기술하고 있으며, 다양한 방법으로 인코딩된 데이터를 모두 포함할 수 있다.
특히, 본 발명은 루비 트랜스폼(LT, Luby Transform) 코드, 파운틴(Fountain) 코드, 터보(Turbo) 코드, 폴라(Polar) 코드 또는 LDPC(Low Density Parity Check) 코드로 인코딩된 데이터를 복호화하는 것에 적합할 수 있으나, 특정 방식으로 인하여 인코딩된 데이터를 복호화하는 것으로 한정하지는 않고, 어떠한 방식으로든 인코딩된 데이터에 대하여 모두 적용될 수 있다.
본 발명인 복호화 방법의 설명을 돕기 위하여, 특정 데이터를 DNA 데이터로 인코딩하는 방법에 대하여 간략하게 설명한다.
하기의 예시는, 루비 트랜스폼 코드를 이용하여 인코딩하는 일반적인 방법의 예시이다.
특정 이미지 파일을 DNA 데이터로 인코딩 하는 과정에서, 하나의 이미지를 길이 L의 KLT개의 패킷으로 나눈다. 나뉘어진 KLT개의 패킷을 루비 트랜스폼 인코딩을 통하여 하나의 인코딩된 패킷으로 생성한다. 이후, 선형 피드백 시프트 레지스터(LFSR, Linear-Feedback Shift Register)에 의해 얻어진 시드 비트를 붙이고, 특정 값 이상에 해당하는 RS(Reed Solomon) 인코딩 비트를 붙인다.
최종 인코딩된 비트를 정해진 규칙에 의해 염기 서열로 변환한다. 구체적으로 '비트 {00, 01, 10, 11} → 염기 {A, C, G, T}'의 규칙에 의해 인코딩된 비트가 변환된 인코딩 올리고 리드(인코딩 시퀀스)를 생성할 수 있다.
생성된 인코딩 올리고 리드(인코딩 시퀀스)들에 대해 최대 호모 폴리머 길이가 미리 정해진 길이보다 작거나 같고, 구아닌, 시토신 함량 비가 미리 정해진 비율에 속하는지를 확인하고, 상기 조건을 만족하는 시퀀스는 선택하고, 상기 조건을 만족하지 않는 시퀀스는 폐기한다. 상기와 같은 절차를 목표 개수의 시퀀스가 선택될 때까지 반복함으로써, DNA 데이터로 인코딩되는 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 방법을 설명하기 위한 흐름도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 방법은, 컴퓨터가 제1 시퀀스 및 품질 점수(quality score)를 획득하는 단계(S100), 컴퓨터가 품질 점수를 기반으로 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출하는 단계(S200)를 포함할 수 있다.
컴퓨터가 제1 시퀀스 및 제1 시퀀스에 대한 품질 점수(quality score)를 획득한다(S100).
일 실시예에서, 제1 시퀀스는 컴퓨터가 상술한 인코딩 방법에 의하여 인코딩된 시퀀스들의 해독 염기 서열 파일을 수신하여 획득되는 것일 수 있다.
해독 염기 서열 파일은 DNA 염기 서열을 나타내는 텍스트 기반의 표준 염기 데이터 형식의 파일이며, 예컨대, FASTQ 파일을 의미할 수 있다. 해독 염기 서열 파일은 강성 정보 및 연성 정보를 포함한다.
강성 정보란, 각 리드(read)의 식별정보(순서, 길이 등), 각 리드의 시퀀스(즉, 염기 서열) 정보를 포함할 수 있다.
연성 정보는 시퀀스의 품질 점수(quality score)를 포함할 수 있다. 품질 점수는 시퀀스에 포함된 염기 호출(base call) 각각의 품질을 나타내는 지표로, 각각의 염기 호출 결과가 오류일 확률을 나타낼 수 있다. 구체적으로, 특정 염기 호출 결과가 오류일 확률이 P일때, 상기 특정 염기 호출에 대한 품질 점수 Q는 하기 수학식 1과 같이 계산될 수 있다.
[수학식 1]
Figure 112020067943803-pat00001
본 발명에서는, 해독 염기 서열 파일의 연성 정보를 강성 정보와 함께 이용함으로써, 획득된 시퀀스를 복호화한다.
기존에는 연성 정보를 고려함이 없이, 복호화 과정에서 DNA를 시퀀싱하고, RS 코드로 필터링 후 바이너리(binary)정보가 포함된 DNA를 대량 증식하여 여러 번 읽어 오는 단계를 거쳐, 오류와 상관없이 읽어온 정보를 계속 연결하여 아데닌(A), 구아닌(G), 시토신(C), 티민(T)의 개수가 가장 많은 것을 선택하는 복호화 방식을 사용하였다.
이러한 방법을 이용하는 경우에는, 많은 수의 리드가 필요하여 시간이 지연되며 고비용이 발생하는 등의 문제가 발생한다.
본 발명에서는, 강성 정보뿐만 아니라 연성 정보를 함께 이용함으로써, 복호화 시 상대적으로 적은 수의 리드가 필요하며, 결과적으로 빠르게 복호화할 수 있으며 비용 또한 절감할 수 있는 효과가 있다.
뿐만 아니라, FASTQ 파일에 사용하고 있는 일부 색상정보를 기반으로 하여 개선된 색상 정보를 활용하여 강성정보를 추출할 수도 있다. 강성정보를 추출하는 방법으로는 인코딩된 DNA와 동일한 DNA 쌍을 만들어서 각 염기에 형광반응을 시킨 후, DNA 오류에 의해 DNA 정보가 바뀌면서 다양한 색상의 이미지 정보를 획득할 수 있다. 이 때, 획득된 이미지 정보에서 RGB와 같은 특정 파장대의 색상에 대한 각각의 색상 정보를 측정함으로써 강성 정보를 추출할 수 있다.
또한, 일 실시예에서, 제1 시퀀스는 해독 염기 서열 파일에 대하여 스티치(stitch) 알고리즘을 이용하여 획득된 타겟 길이의 시퀀스를 의미할 수 있다.
스티치 알고리즘은 다양한 길이의 양방향 리드(paired-end read)의 겹침(overlap)을 평가하여 병합함으로써 타겟 길이의 시퀀스를 획득하기 위한 알고리즘이며, 예컨대, PEAR(Paired-End reAd mergeR) 알고리즘일 수 있다. 즉, 스티치 알고리즘을 통해 다양한 길이의 인코딩 올리고 리드(인코딩 시퀀스)들을 스티칭(stitching)하여, 타겟 길이의 복수의 제1 시퀀스(타겟 길이로 병합된 인코딩 올리고 리드의 시퀀스)를 획득할 수 있다.
또한, 컴퓨터는 스티치된 제1 시퀀스에 대한 해독 염기 서열 파일을 통해, 제1 시퀀스에 대한 품질 점수를 획득할 수 있다. 즉, 제1 시퀀스에 포함된 복수의 염기 호출(base call) 각각의 오류율을 획득할 수 있다.
이어서, 컴퓨터가 품질 점수를 기반으로 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출한다(S200).
염기 확률은, 제1 시퀀스의 특정 위치의 염기가 아데닌(A, Adenine), 구아닌(G, Guanine), 시토신(C, Cytosine) 및 티민(T, Thymine) 각각에 해당할 확률인 것일 수 있다. 예를 들어, 제1 시퀀스의 m번째 위치(즉, 올리고의 m번째 뉴클레오타이드)의 염기가 아데닌(A)일 확률, 구아닌(G)일 확률, 시토신(C)일 확률, 티민(T)일 확률을 포함할 수 있다.
FASTQ 파일은 각 위치에 대하여 염기 호출된 하나의 염기에 대하여만 품질 점수(염기 호출의 오류율)를 제공하나, 본 발명은 각 위치에 대하여 4개의 염기 각각에 해당할 확률을 산출함으로써, 다른 염기의 품질 점수까지 산출하는 것이다.
도 2는 본 발명의 일 실시예에 따른 염기 확률 산출 방법을 설명하기 위한 흐름도이다.
이하, 도 2를 참조하여 본 발명의 일 실시예에 따른 염기 확률 산출 방법을 상세히 설명한다.
일 실시예에서, S200 단계는, 컴퓨터가 제1 시퀀스의 각각의 위치에 대한 조건부 위치 오류율을 산출하는 단계(S210), 컴퓨터가 품질 점수 및 조건부 위치 오류율을 기초로 염기 확률을 산출하는 단계(S220)를 포함할 수 있다.
컴퓨터가 제1 시퀀스의 각각의 위치에 대한 조건부 위치 오류율을 산출한다(S210).
인코딩된 시퀀스로부터 도출하는 오류는 네 가지 유형의 오류로서 대체(substitution) 오류, 삽입(insertion) 오류, 삭제(deletion) 오류 및 위치(position) 오류를 포함한다. 본 발명에서는 상술한 오류를 정정하는 것에 특징이 있으며, 특히 위치 오류를 정정하는 것에 특징이 있다.
조건부 위치 오류율은, 대체 오류, 삽입 오류, 삭제 오류 및 위치 오류 중 적어도 하나를 포함하는 오류율을 나타내는 것일 수 있다.
일 실시예에서, S210 단계는, 제1 시퀀스, 제2 시퀀스 및 제3 시퀀스의 염기 서열을 비교하여, 제1 시퀀스의 각각의 위치에 대한 조건부 위치 오류율을 산출하는 것일 수 있다.
제1 시퀀스는 상술한 바와 같이, 특정한 인코딩 방법에 의하여 인코딩된 시퀀스들을 스티칭하여 획득한 타겟 길이의 시퀀스일 수 있다.
제2 시퀀스는 제1 시퀀스를 기초로 획득한 추측 인코딩 시퀀스일 수 있다.
구체적인 예로, 제2 시퀀스는 제1 시퀀스로부터 편집 거리(edit distance)를 이용하여 획득될 수 있다. 예를 들어, 제2 시퀀스는 제1 시퀀스에 대한 복수의 후보 인코딩 시퀀스 중에서 제1 시퀀스와 편집 거리가 가장 가까운 시퀀스일 수 있다. 또한, 제2 시퀀스와 제1 시퀀스 간 계산된 편집 거리의 경로를 추적하여, 어떤 위치에서 어떤 유형의 오류(대체, 삽입, 삭제, 위치 오류)가 발생했는지 획득할 수 있고, 이를 기초로 각각의 오류에 대한 통계를 생성할 수도 있다.
제3 시퀀스는 제1 시퀀스에 대한 정답 인코딩 시퀀스인 것일 수 있다. 즉, 제3 시퀀스는 특정한 제1 시퀀스에 대응되는 것으로, 입력데이터가 오류 없이 인코딩된 경우의 시퀀스일 수 있다.
또한, S100 단계에서 컴퓨터가 복수의 제1 시퀀스를 획득한 경우, 각각의 제1 시퀀스에 대한 제2 시퀀스 및 제3 시퀀스를 모두 획득할 수 있다.
컴퓨터가 제1 시퀀스를 제2 시퀀스 및 제3 시퀀스와 비교하여, 제1 시퀀스의 각각의 위치에 대한 조건부 위치 오류율(conditional position error rate)을 산출한다. 이하, 조건부 위치 오류율 산출 과정에 대해 상세히 설명한다.
우선, Z[n]={1, 2, …, n}이라고 할 때, n은 양의 정수이고, Nread는 획득한 제1 시퀀스(올리고 리드)의 개수이다. 각각의 제1 시퀀스의 인덱스를 j 라고 할 때, j는 Z[Nread]에 속하는 것으로 j ∈ Z[Nread]를 만족하고, g(j)는 각각의 제1 시퀀스에 대응되는 제2 시퀀스의 인덱스이다. 즉, j번째 제1 시퀀스에 대하여 편집 거리가 가장 가깝도록 획득한 시퀀스가 g(j)번째 제2 시퀀스가 된다.
또한, 각각의 시퀀스 내의 특정 위치의 인덱스를 i로, xm,n은 n번째 제2 시퀀스 내에서 m번째 위치의 염기로, ym,n'은 n'번째 제1 시퀀스 내에서 m번째 위치의 염기 호출로, b(1),b(2) ∈ {A, C, G, T}, b(1)≠b(2)로, fi(b(1) -> b(2))=
Figure 112020067943803-pat00002
으로 정의한다. I(·)는 지시 함수(indicator function)이다.
또한, h(j)는 j번째 제1 시퀀스에 대응되는 제3 시퀀스의 인덱스로 정의하면, j번째 제1 시퀀스의 i번째 조건부 위치 오류율은 하기 수학식 2와 같이 정의된다.
[수학식 2]
Figure 112020067943803-pat00003
여기에서, b(1),b(2), b(3),b(4) ∈ {A, C, G, T}이고, Ni(b(k))=
Figure 112020067943803-pat00004
이고, k ∈ Z[4]이다. 즉, Ni(b(k))는 복수의 제2 시퀀스들의 i번째 위치에서의 각각의 염기(A, C, G, T)의 개수이다.
이어서, 컴퓨터가 품질 점수 및 조건부 위치 오류율을 기초로 염기 확률을 산출한다(S220).
제1 시퀀스의 염기 호출의 정답률은 P(xi,h(j)=b(2)|yi,j=b(2))으로 표현될 수 있으며, 이는 품질 점수로부터 계산할 수 있다. 즉, 상기 수학식 1에서 염기 호출의 정답률(1-p)은 1-p=1-10-Q/10가 되기 때문에, 품질 점수(Q) 및 상기 수학식 2를 기초로 각각의 위치에 대하여 조건부 위치 오류율을 계산하면 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출할 수 있다.
구체적으로, b, b' ∈ {A, C, G, T}일 때, Pi j,b(b')=P(xi,h(j)=b'|yi,j=b)라고 정의하면, j번째 제1 시퀀스의 i번째 위치의 염기 호출의 정답률은 Pi j,b(b)(즉, b=b')로 표현될 수 있으며, 이는 상술한 바와 같이 품질 점수로부터 계산할 수 있다.
이에 따라, 염기 호출된 염기(b)를 제외한 3개의 염기(b(k)) 각각에 해당할 확률은 다음의 수학식 3과 같이 계산할 수 있다. 이때, k∈Z[3], b(k) ∈{A, C, G, T}이고, b(k)≠b이다.
[수학식 3]
Figure 112020067943803-pat00005
즉, 상술한 본 발명에 따르면 특정한 제1 시퀀스의 특정 위치의 염기 호출(A, G, C, T 중 하나)에 대한 오류율만 나타내는 품질 점수로부터, 상기 특정 위치의 염기가 아데닌(A), 구아닌(G), 시토신(C), 티민(T) 각각에 해당할 4개의 확률을 모두 산출할 수 있으며, 이를 기반으로 복호화를 수행할 수 있다.
기존의 복호화 방식은 연성 정보를 고려함이 없이, 강성 정보(즉, 염기 호출)만을 고려하여 DNA를 대량 증식된 많은 수의 올리고 리드의 각각의 위치에 대하여 아데닌, 구아닌, 시토신, 티민 중 개수가 가장 많은 염기를 정답으로 추측하는 복호화 방식을 이용하였다. 이에 따라 정확한 복호화를 위해서는 많은 수의 리드가 필요하여 시간 지연, 고비용의 문제가 발생하였다.
상기 본 발명에 따르면, 연성 정보(품질 점수)를 이용하여 올리고 리드의 특정 위치에 4개의 염기(아데닌, 구아닌, 시토신, 티민) 각각이 해당할 확률을 모두 산출하고, 이를 고려하여 복호화함에 따라 복호화에 필요한 리드의 개수를 감소시킬 수 있어, 저비용으로 정확하고 신속한 복호화가 가능한 효과가 있다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 전처리 방법을 설명하기 위한 흐름도이다.
도 3 및 도 4를 참조하면, 본 발명의 일 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 방법은, 염기 확률이 산출된 제1 시퀀스를 복호화 알고리즘에 입력하기 전에 데이터 전처리 단계(S300)를 더 포함할 수 있다.
도면에 도시되지는 않았으나, 일 실시예에서, 전처리(S300) 단계는 다음과 같은 단계를 포함할 수 있다.
S310 단계: 염기 비호출(uncalled base)이 존재하지 않는 타겟 길이의 스티치된 제1 시퀀스를 선택한다.
S320 단계: 시드값의 강성 정보를 비교하여 같은 값의 시드에 대응시키고, 시드와 RS를 제외한 부분의 LLR을 병합한다.
S330 단계: RS 부분의 병합의 경우 A, G, C, T 각각 확률을 곱하여 최대값을 강성 정보로 결정한다.
S340 단계: 같은 시드값이 많은 수부터 2개까지 내림차순으로 배치하여 시드 수가 많은 순으로 최종 Lm개의 병합된 시퀀스(올리고 리드) 정보를 선정한다. (Lm<=NLT)
S350 단계: Lm개의 시드값에 대응하는 H 매트릭스를 생성한다.
일 실시예에서, S320 단계를 위해, 컴퓨터가 산출된 염기 확률을 기초로, 제1 시퀀스의 각각의 염기에 대응되는 비트의 로그 우도 비(LLR, Log-Likelihood Ratio)를 산출하는 단계를 더 포함할 수 있다.
각 염기에 대응되는 비트의 로그 우도 비를 산출하는 이유는, 로그화하여 계산할 경우 연성 정보의 판단이 더 쉽기 때문이다. 따라서, 각 염기의 각 비트에 대한 확률 산출을 위해 각 비트에 대해서 로그 우도 비를 산출한다.
구체적으로, S320 단계는, 제1 시퀀스의 특정 위치의 염기에 대응되는 두개의 비트 각각에 대하여 로그 우도 비를 산출하는 것일 수 있다.
신뢰 전파(BP, belief propagation) 알고리즘을 사용하기 위하여 각 비트에 대하여 로드 우도 비를 계산해야 하며, 상술한 예시와 같이 {A, C, G, T} → {00, 01, 10, 11}로 매핑되는 경우에 있어서, y1 i,,j 및 y2 i,,j는 j번째 제1 시퀀스의 i번째 위치에 대한 1번째 비트 및 2번째 비트로 정의한다.
이때, 상기 수학식 3에서 산출한 염기 확률을 기초로, 특정 위치의 염기 호출의 각 비트에 대한 로그 우도 비를 다음의 수학식 4와 같이 산출할 수 있다.
[수학식 4]
Figure 112020067943803-pat00006
로그 우도 비는 각각의 확률을 비율로 산출하는 것으로서, 연성 정보를 보다 더 쉽게 판단할 수 있으며, 로그 우도 비를 이용함으로써 오류 수정에 앞서 각각의 확률에 대하여 가공을 할 수 있다.
또한, 일 실시예에서, S350 단계는 H 매트릭스를 생성하는 단계일 수 있다. 다만, S350 단계는, 해독 염기 서열 파일이 루비 트랜스폼(LT, Luby Transform) 코드 또는 파운틴(Fountain) 코드로 인코딩된 것을 기반으로 한 경우에 수행될 수 있다.
도 4는 본 발명의 일 실시예에 따른 H 매트릭스 생성 방법을 설명하기 위한 예시도이다.
도 4를 참조하면, H 매트릭스는 패리티 검사 행렬(Parity check matrix)일 수 있다. 즉, 루비 트랜스폼 코드 또는 파운틴 코드와 같이 정보 전달 과정에서의 오류 발생 여부를 검사하기 위해 정보 비트(10, information bit)에 패리티 비트(30, parity bit)를 더하여 인코딩한 경우, 오류 검사를 효율적으로 수행하기 위해 H 매트릭스를 생성할 수 있다. 예를 들어, 구멍난 정보 비트(punctured information bit)에는 0의 LLR 값을 할당하고, 수신한 패리티 비트(received parity bit)에는 계산된 LLR 값을 할당하여 H 매트릭스를 생성할 수 있다.
다시 도 3을 참조하면, 본 발명의 일 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 방법은, 상술한 전처리 단계(S300)를 거친 데이터를 복호화 알고리즘에 입력하는 단계(S400)를 더 포함할 수 있다.
도면에 도시되지는 않았으나, 일 실시예에서, 상기 복호화 알고리즘은 다음과 같이 구성될 수 있다.
입력값은, 시드값을 포함하는 Lm개의 병합된 시퀀스(올리고 리드), 최대 재복호화 수 nre, 병합된 시퀀스에 대한 LLR 값 및 RS 패리티를 포함할 수 있다.
출력값은, KLT X L개의 정보 비트일 수 있다.
초기값은, i=0 일 수 있다.
S410 단계: L 바이너리 루비 트랜스폼 코드의 연성 복호화를 수행한다.
S420 단계: 각 디코딩된 올리고에 대하여 RS 복호화를 수행한다.
S430 단계: 모든 RS 복호화가 시드 위치에서 오류 없이 성공한다면, 복호된 패리티 비트(인코딩된 비트)를 사용하여 천공된 정보 비트를 찾아 다음 단계를 건너 뛴다.
S440 단계: i=nre 이면, 복호화는 실패로서, 다음 단계를 건너 뛴다.
S450 단계: i <nre 이고, 시드 위치에서 오류를 가지고 있는 올리고 또는 오류가 있는 RS 복호화의 경우, 해당 올리고를 제거하고, H를 재구성한다. 그런 다음, 올리고의 다른 비트와 i ← i+1에 대해 초기 로그 우도 비와 함께 S410 단계로 돌아간다.
상기 S440 단계에서는 루비 트랜스폼 코드의 재복호화 횟수를 제한한다. 루비 트랜스폼 코드들의 연성 복호화는 시드 값으로부터 구성된 H에 기초하여 수행되므로, RS(Reed Solomon) 복호기가 시드 위치에서 오류가 있다고 결정하면 복호화 결과를 신뢰할 수 없기 때문이다. 또한, RS(Reed Solomon) 복호화 실패가 있는 올리고가 존재하는 경우의 복호화 결과도 신뢰할 수 없기 때문이다.
따라서, S450 단계의 두 가지 경우에 해당되는 올리고를 제거함으로써 초기 로그 우도 비를 사용하여 루비 트랜스폼 코드를 재디코딩 하는 것이다.
상술한 본 발명의 일 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 컴퓨터로 판독 가능한 기록매체에 저장될 수 있다.
상기 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
또한, 본 발명의 다른 실시예에 따른 DNA 저장 장치의 연성 정보 기반 복호화 컴퓨팅 장치는, 제1 시퀀스 및 상기 제1 시퀀스에 대한 품질 점수를 획득하고, 상기 품질 점수를 기반으로, 상기 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출하고, 상기 품질 점수는, 상기 제1 시퀀스에 포함된 각각의 염기의 오류율을 포함하고, 상기 염기 확률은, 상기 제1 시퀀스의 특정 위치의 염기가 아데닌(A, Adenine), 구아닌(G, Guanine), 시토신(C, Cytosine) 및 티민(T, Thymine) 각각에 해당할 확률인 것일 수 있다.
DNA 저장 장치의 연성 정보 기반 복호화 컴퓨팅 장치에는, 도 1 내지 도 4에서 상술한 내용이 동일하게 적용될 수 있다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모델로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모델은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.

Claims (10)

  1. 컴퓨터가 제1 시퀀스 및 상기 제1 시퀀스에 대한 품질 점수(quality score)를 획득하는 단계; 및
    상기 컴퓨터가 상기 품질 점수를 기반으로, 상기 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출하는 단계를 포함하고,
    상기 품질 점수는, 상기 제1 시퀀스에 포함된 각각의 염기의 오류율을 포함하고,
    상기 염기 확률은, 상기 제1 시퀀스의 특정 위치의 염기가 아데닌(A, Adenine), 구아닌(G, Guanine), 시토신(C, Cytosine) 및 티민(T, Thymine) 각각에 해당할 확률이며,
    상기 염기 확률을 산출하는 단계는,
    상기 컴퓨터가 상기 제1 시퀀스의 각각의 위치에 대한 조건부 위치 오류율을 산출하는 단계; 및
    상기 컴퓨터가 상기 품질 점수 및 상기 조건부 위치 오류율을 기초로 염기 확률을 산출하는 단계를 포함하며,
    상기 조건부 위치 오류율을 산출하는 단계는,
    제1 시퀀스, 제2 시퀀스 및 제3 시퀀스의 염기 서열을 비교하여 상기 제1 시퀀스의 각각의 위치에 대한 조건부 위치 오류율을 산출하는 것이고,
    상기 제2 시퀀스는, 상기 제1 시퀀스로부터 편집 거리(edit distance)를 이용하여 획득된 추측 인코딩 시퀀스이고,
    상기 제3 시퀀스는, 상기 제1 시퀀스에 대한 정답 인코딩 시퀀스인 것을 특징으로 하는, DNA 저장 장치의 연성 정보 기반 복호화 방법.
  2. 제1 항에 있어서,
    상기 제1 시퀀스는, 해독 염기 서열 파일에 포함된 복수의 올리고 리드를 스티칭(stitching)하여 획득된 타겟 길이의 시퀀스인 것을 특징으로 하는, DNA 저장 장치의 연성 정보 기반 복호화 방법.
  3. 삭제
  4. 삭제
  5. 제1 항에 있어서,
    상기 제2 시퀀스는,
    복수의 후보 인코딩 시퀀스 중 상기 제1 시퀀스와 편집 거리가 가장 가까운 시퀀스인 것을 특징으로 하는, DNA 저장 장치의 연성 정보 기반 복호화 방법.
  6. 제1 항에 있어서,
    상기 조건부 위치 오류율은,
    대체 오류, 삽입 오류, 삭제 오류 및 위치 오류 중 적어도 하나를 포함하는 오류율을 나타내는 것인, DNA 저장 장치의 연성 정보 기반 복호화 방법.
  7. 컴퓨터가 제1 시퀀스 및 상기 제1 시퀀스에 대한 품질 점수(quality score)를 획득하는 단계; 및
    상기 컴퓨터가 상기 품질 점수를 기반으로, 상기 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출하는 단계를 포함하고,
    상기 품질 점수는, 상기 제1 시퀀스에 포함된 각각의 염기의 오류율을 포함하고,
    상기 염기 확률은, 상기 제1 시퀀스의 특정 위치의 염기가 아데닌(A, Adenine), 구아닌(G, Guanine), 시토신(C, Cytosine) 및 티민(T, Thymine) 각각에 해당할 확률이며,
    상기 컴퓨터가 산출된 상기 염기 확률을 기초로, 상기 제1 시퀀스의 각각의 염기에 대응되는 비트의 로그 우도 비(LLR, Log-Likelihood Ratio)를 산출하는 단계를 더 포함하는 것을 특징으로 하는, DNA 저장 장치의 연성 정보 기반 복호화 방법.
  8. 제7 항에 있어서,
    상기 로그 우도 비를 산출하는 단계는,
    상기 제1 시퀀스의 특정 위치의 염기에 대응되는 두개의 비트 각각에 대하여 로그 우도 비를 산출하는 것을 특징으로 하는, DNA 저장 장치의 연성 정보 기반 복호화 방법.
  9. 하드웨어인 컴퓨터와 결합되어, 제1 항, 제2 항, 제5 항 내지 제8 항 중 어느 한 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된, DNA 저장 장치의 연성 정보 기반 복호화 프로그램.
  10. 제1 시퀀스 및 상기 제1 시퀀스에 대한 품질 점수를 획득하고,
    상기 품질 점수를 기반으로, 상기 제1 시퀀스의 각각의 위치에 대한 염기 확률을 산출하고,
    상기 염기 확률을 기초로, 상기 제1 시퀀스의 각각의 염기에 대응되는 비트의 로그 우도 비(LLR, Log-Likelihood Ratio)를 산출하며,
    상기 품질 점수는, 상기 제1 시퀀스에 포함된 각각의 염기의 오류율을 포함하고,
    상기 염기 확률은, 상기 제1 시퀀스의 특정 위치의 염기가 아데닌(A, Adenine), 구아닌(G, Guanine), 시토신(C, Cytosine) 및 티민(T, Thymine) 각각에 해당할 확률인 것을 특징으로 하는, DNA 저장 장치의 연성 정보 기반 복호화 컴퓨팅 장치.
KR1020200080464A 2019-08-21 2020-06-30 Dna 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치 KR102339723B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2020/010571 WO2021033981A1 (ko) 2019-08-21 2020-08-10 Dna 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190102191 2019-08-21
KR20190102191 2019-08-21

Publications (2)

Publication Number Publication Date
KR20210023674A KR20210023674A (ko) 2021-03-04
KR102339723B1 true KR102339723B1 (ko) 2021-12-15

Family

ID=75174707

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200080464A KR102339723B1 (ko) 2019-08-21 2020-06-30 Dna 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치

Country Status (1)

Country Link
KR (1) KR102339723B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102574250B1 (ko) * 2021-08-09 2023-09-06 서울대학교산학협력단 저밀도 패리티 체크 부호를 이용한 dna 데이터 부호화 및 복호화 방법, 프로그램 및 장치
CN116187435B (zh) * 2022-12-19 2024-01-05 武汉大学 基于大小喷泉码及mrc算法利用dna进行信息存储方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100609656B1 (ko) * 2005-02-04 2006-08-08 재단법인서울대학교산학협력재단 디엔에이 서열 어셈블리 방법 및 그 기록매체

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100609656B1 (ko) * 2005-02-04 2006-08-08 재단법인서울대학교산학협력재단 디엔에이 서열 어셈블리 방법 및 그 기록매체

Also Published As

Publication number Publication date
KR20210023674A (ko) 2021-03-04

Similar Documents

Publication Publication Date Title
Ochoa et al. QualComp: a new lossy compressor for quality scores based on rate distortion theory
US20240004838A1 (en) Quality score compression for improving downstream genotyping accuracy
KR102339723B1 (ko) Dna 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치
US10572544B1 (en) Method and system for document similarity analysis
WO2021033981A1 (ko) Dna 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치
CN109857744B (zh) 稀疏张量计算方法、装置、设备及存储介质
US10664481B2 (en) Computer system programmed to identify common subsequences in logs
US20150186502A1 (en) Method and apparatus and computer readable medium for computing string similarity metric
CN111126045A (zh) 一种文本纠错方法和装置
EP2595076A2 (en) Compression of genomic data
CN109408682A (zh) 一种正则表达式匹配的方法、系统及设备
CN112804029A (zh) 基于ldpc码的bats码的传输方法、装置、设备及可读存储介质
CN107832341B (zh) Agnss用户去重统计方法
US20220171815A1 (en) System and method for generating filters for k-mismatch search
CN112530522B (zh) 序列纠错方法、装置、设备和存储介质
EP3360068A1 (en) System for generating genomics data, and device, method, and software product for use therein
CN112861519A (zh) 医疗文本纠错方法、装置以及存储介质
CN108984515B (zh) 错别字检测方法、装置及计算机可读存储介质、终端设备
CN103326731B (zh) 一种基于分布式算术编码的隐马尔科夫相关信源编码方法
WO2021156110A1 (en) Improved quality value compression framework in aligned sequencing data based on novel contexts
CN106302573B (zh) 一种采用擦除码处理数据的方法、系统及装置
KR102189920B1 (ko) 비트 매칭 기반으로 선형 부호를 고속 복호화하는 방법 및 장치
WO2023092723A1 (zh) 数据纠错方法、装置及电子设备
RU2808759C1 (ru) Способ контроля целостности данных на основе неравномерного кодирования
KR102429200B1 (ko) Rsd 코드에 기반한 dna 코드 생성 방법

Legal Events

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