테마 선택

📚 지식 노트

AI·하드웨어·주변기기·게임·컴퓨터 시스템·이론 컴퓨터 과학·수학·개발과 운영·보안·응용 분야에 대해 알아 두면 좋은 내용을 정리한 노트다. 위에서 분야를 고르고 아래에서 노트를 고른다.

생물정보학

DNA는 네 글자로 쓴 아주 긴 문자열이다. 그 문자열을 읽어 들이는 시퀀싱, 두 서열을 맞대 보는 정렬, 조각을 이어 붙이는 조립, 다른 글자를 찾는 변이 분석, 서열에서 단백질 모양을 맞히는 구조 예측까지 — 생물학 문제를 문자열·그래프·확률 문제로 바꿔 푸는 방법을 작은 예를 직접 계산한 그림으로 따라간다.

목차 (13)
  1. 생명의 정보: DNA·RNA·단백질
  2. 염기 서열 데이터: FASTA와 FASTQ
  3. 시퀀싱 기술
  4. 서열 정렬: 니들먼–분쉬
  5. 지역 정렬과 BLAST
  6. 유전체 조립: k-mer와 드 브루인 그래프
  7. 변이 찾기
  8. 발현 분석과 다중 검정
  9. 유전체 프로젝트와 비용
  10. 계통수: 거리에서 나무로
  11. 단백질 구조 예측
  12. 유전 정보와 개인정보·윤리
  13. 핵심 자료

생명의 정보: DNA·RNA·단백질

DNA는 A·C·G·T 네 가지 염기가 늘어선 두 가닥 사슬이다. 한쪽 가닥의 A는 맞은편의 T와, G는 C와 짝을 이루므로 한 가닥만 알면 다른 가닥이 정해진다(상보 가닥). 생물정보학에서 DNA는 대개 이 네 글자로 쓴 문자열로 다룬다. 사람 유전체는 이런 글자가 약 30억 개인 문자열이 한 벌이다.

세포는 이 문자열을 중심 원리(central dogma)의 순서로 쓴다. 유전자 구간의 DNA를 RNA로 베끼는 전사에서 T가 U로 바뀌고, 리보솜이 mRNA를 세 글자씩 끊어 읽으며 아미노산을 잇는 번역으로 단백질이 만들어진다. 세 글자 묶음이 코돈이다. 글자 넷으로 만들 수 있는 코돈은 4³ = 64개인데 아미노산은 20가지뿐이라, 여러 코돈이 같은 아미노산을 뜻한다(류신은 TTA·TTG·CTT·CTC·CTA·CTG 여섯 개). AUG(DNA로는 ATG)는 메티오닌이자 대개의 시작 신호이고, UAA·UAG·UGA는 "여기서 끝"이라는 종결 코돈이다. 이 대응표가 유전 부호이며, 미토콘드리아 등 일부는 조금 다른 표를 쓴다(NCBI가 표를 모아 둔다).

DNA ATGGAGCTGTTCTAA가 mRNA로 전사되고 코돈마다 아미노산으로 번역되는 그림DNA전사 ↓mRNA번역 ↓단백질ATGAUGGAGGAGCTGCUGTTCUUCTAAUAAMetGluLeuPhe종결AUG가 시작(Met), UAA가 종결 → 단백질 MELF (4개 아미노산)
예제 유전자 ATGGAGCTGTTCTAA(GC 비율 40%)의 전사와 번역. 코돈 다섯 개 가운데 마지막이 종결이라 단백질은 MELF 네 글자다. 표는 표준 유전 부호로 계산했다.

실제 유전자는 이렇게 깔끔하지 않다. 진핵생물의 유전자는 단백질로 번역되는 엑손 사이에 잘려 나가는 인트론이 끼어 있고, 같은 유전자에서 엑손을 다르게 이어 붙여(선택적 이어 맞추기) 여러 단백질이 나오기도 한다. 그래서 "유전체에서 유전자가 어디 있는가"(유전자 주석) 자체가 큰 계산 문제다.

염기 서열 데이터: FASTA와 FASTQ

서열 파일은 대부분 평범한 텍스트다. FASTA는 >로 시작하는 이름 줄 하나와 서열 줄로 끝이다. 참조 유전체나 단백질 서열 데이터베이스가 이 형식으로 배포된다. 시퀀서가 쏟아 내는 원자료는 FASTQ다. 읽기(read) 하나가 네 줄인데, @ 이름 줄, 염기 줄, + 구분 줄, 그리고 염기마다 "이 글자가 얼마나 믿을 만한가"를 글자 하나로 적은 품질 줄이 온다.

품질은 Phred 점수 Q = −10·log₁₀ p로 적는다. p는 그 염기가 틀렸을 확률이다. 로그 눈금이라 Q가 10 오를 때마다 오류가 10분의 1로 준다. Q20은 100번에 한 번, Q30은 1,000번에 한 번 틀린다는 뜻이다. 점수를 그대로 숫자로 쓰면 자리 맞추기가 번거로우니, 요즘 표준(Sanger FASTQ)은 Q에 33을 더한 ASCII 글자 하나로 적는다. I(73)는 Q40, #(35)는 Q2다. 예전 Solexa·Illumina 장비는 다른 오프셋을 써서, 형식을 잘못 짚으면 품질이 통째로 어긋난다.

FASTQ 레코드 네 줄과 염기 열 개의 Phred 품질 점수 막대@read_001이름GATTACAGCT염기+구분 줄II?5+#IIA@품질: 글자 하나가 염기 하나(ASCII − 33 = Q)Q20Q3040G40A30T20T10A2C40A40G32C31T
FASTQ 레코드 하나와 품질 줄을 푼 값. 막대가 짧을수록 그 염기를 덜 믿는다. 분석 전에 품질이 낮은 끝부분을 잘라 내는(트리밍) 단계가 거의 늘 들어간다.

정렬이 끝난 읽기는 SAM(텍스트)이나 그 압축 이진판 BAM·CRAM에, 찾아낸 변이는 VCF에 담는다. 형식이 단순한 텍스트라 유닉스 도구로 바로 들여다볼 수 있지만, 사람 한 명의 원자료가 수십 GB를 넘기 쉬워 압축·색인·분산 처리가 함께 따라온다(빅데이터 노트).

형식을 오갈 때 가장 흔한 실수는 좌표의 출발점이다. 염색체 1번의 첫 100염기를 UCSC의 BED 형식은 시작 0, 끝 100(끝은 포함하지 않는 반열린 구간)으로 적고, 게놈 브라우저 화면과 GTF·GFF 같은 다른 형식은 1부터 100(양끝 포함)으로 적는다(UCSC 좌표 체계). 0 기반을 1 기반으로 바꿀 때는 시작에만 1을 더하고 끝은 그대로 둔다. 이것을 잊으면 모든 변이가 한 칸씩 밀려 이웃 염기를 가리킨다. 참조 유전체 판(GRCh37·GRCh38)이 다르면 같은 번호도 다른 자리이므로, 좌표에는 늘 판을 함께 적는다.

시퀀싱 기술

DNA 글자를 읽어 내는 기계는 세대마다 방식이 다르다.

  • 생어 시퀀싱(1977년 발표): 복제를 일부러 무작위 자리에서 멈추게 하는 사슬 종결 방식이다. 길이가 다른 조각을 전기영동으로 줄 세워 끝 글자를 읽는다. 한 번에 한 조각이지만 정확해서 지금도 짧은 구간을 확인하는 데 쓴다. 인간 유전체 프로젝트의 주력 기술이었다.
  • 짧은 읽기(차세대 시퀀싱, 일루미나가 대표): DNA를 잘게 잘라 판 위에 수많은 덩어리로 불린 뒤, 형광 표지 염기를 한 글자씩 붙이며 사진을 찍는다. 수억 개의 조각을 동시에 읽어 값이 싸고 정확도가 높지만, 조각 하나가 짧다.
  • 긴 읽기(PacBio, Oxford Nanopore): 분자 하나를 끊지 않고 길게 읽는다. PacBio는 효소가 DNA를 복제하는 순간의 빛을, Nanopore는 DNA가 아주 작은 구멍을 지날 때 바뀌는 전류를 읽는다. 조각이 길어 반복 구간과 큰 구조 변이를 건너뛸 수 있다. 예전에는 오류율이 높았지만 같은 분자를 여러 번 읽는 방식 등으로 크게 좋아졌다.
생어, 짧은 읽기, 긴 읽기 시퀀싱이 같은 유전체 구간을 덮는 방식 비교유전체반복 구간생어모세관 전기영동짧은 읽기일루미나 등긴 읽기PacBio·Nanopore한 번에 한 조각, 정확하지만 느리다긴 조각은 반복 구간을 통째로 건너 이어 붙이기 쉽다
같은 구간을 덮는 세 방식(길이와 개수는 개념만 나타낸다). 짧은 읽기는 반복 구간 안쪽에서 어느 반복에서 왔는지 알 수 없어, 뒤의 조립 절에서 보는 갈림길이 생긴다.

어느 방식이든 한 자리를 여러 번 읽는다. 같은 자리를 평균 몇 번 읽었는지가 깊이(coverage)이고, 무작위 오류는 깊이가 깊을수록 다수결로 걸러진다.

서열 정렬: 니들먼–분쉬

두 서열이 얼마나 닮았는지 보려면 글자를 맞대 줄 세워야 한다. 진화하면서 글자가 바뀌기도(치환), 빠지거나 끼어들기도(삽입·결실) 하므로 단순히 같은 자리끼리 비교하면 안 된다. 빈칸(-)을 넣어 가며 맞춰 보고, 맞으면 점수를 주고 틀리거나 빈칸이면 깎아 총점이 가장 높은 줄 세우기를 찾는다. 가능한 줄 세우기는 길이에 따라 폭발적으로 늘지만, 동적 계획법(알고리즘 › 설계 기법)으로 표 한 장을 채우면 길이의 곱에 비례하는 시간에 최적을 찾는다. 1970년에 발표된 니들먼–분쉬 알고리즘이다.

표의 칸 (i, j)는 "한쪽 앞 i글자와 다른 쪽 앞 j글자를 맞춘 최고 점수"다. 이 값은 세 이웃만 보면 된다. 대각선에서 오면 두 글자를 맞대고, 위에서 오면 한쪽에 빈칸을, 왼쪽에서 오면 다른 쪽에 빈칸을 넣은 것이다. 편집 거리(레벤슈타인 거리)와 같은 구조이고, 점수만 바꾼 것이다.

ACGTC와 AGTC의 니들먼–분쉬 점수 표를 한 줄씩 채우고 되짚는 단계 그림−ACGTC−AGTC0←−1←−2←−3←−4←−5↑−1↖1←0←−1←−2←−3↑−2↑0↖0↖1←0←−1↑−3↑−1↖−1↑0↖2←1↑−4↑−2↖0↑−1↑1↖3맞음 +1 · 틀림 −1빈칸 −1줄 1의 마지막 칸대각선 −5 (틀림)위 −6 · 왼쪽 −3→ 최댓값 −3줄 2의 마지막 칸대각선 −3 (틀림)위 −4 · 왼쪽 −1→ 최댓값 −1줄 3의 마지막 칸대각선 −1 (틀림)위 −2 · 왼쪽 1→ 최댓값 1줄 4의 마지막 칸대각선 3 (맞음)위 0 · 왼쪽 0→ 최댓값 3끝 칸 점수 3화살표를 따라(0, 0)까지 되짚기ACGTC| |||A-GTC점수 3
1 / 7

점수 규칙: 맞음 +1, 틀림 −1, 빈칸 −1. 첫 줄과 첫 칸은 "앞을 모두 빈칸으로 맞춘" 점수라 0, −1, −2 …로 줄어든다.

니들먼–분쉬 전역 정렬. 표의 칸 (i, j)는 행 서열 앞 i글자와 열 서열 앞 j글자를 맞춘 최고 점수다. 작은 문제의 답으로 큰 문제를 푸는 동적 계획법이다.

실제 도구는 점수를 더 섬세하게 준다. 단백질은 성질이 비슷한 아미노산끼리 바뀌면 덜 깎는 치환 행렬(BLOSUM, PAM)을 쓰고, 빈칸은 여는 비용을 크게, 늘이는 비용을 작게 매긴다(아핀 빈칸). 진화에서 한 번에 여러 글자가 함께 빠지는 일이 흔하기 때문이다.

지역 정렬과 BLAST

서로 다른 단백질이 일부 구간(도메인)만 닮은 경우가 많다. 이럴 때 전체를 억지로 맞추면 점수가 엉망이 된다. 1981년의 스미스–워터먼 알고리즘은 같은 표를 채우되 점수가 0 아래로 내려가면 0으로 끊어 새로 시작하게 하고, 끝 칸이 아니라 표 전체의 최댓값에서 0을 만날 때까지 되짚는다. 그러면 가장 잘 맞는 부분 구간만 남는다.

CACGTT와 GACGA의 스미스–워터먼 표에서 최댓값 3을 되짚어 ACG를 찾는 그림−CACGTT−GACGA000000000001000010000010210000013210010221점수가 0 아래로 내려가면0에서 새로 시작한다표 전체의 최댓값 3에서0을 만날 때까지 되짚기지역 정렬ACGACG
스미스–워터먼 표. 0(흐린 칸)이 많아 '여기서 새로 시작'이 쉽게 일어나고, 최댓값 3에서 되짚으면 두 서열이 함께 가진 ACG만 남는다.

문제는 속도다. 수십억 글자 데이터베이스 전체와 표를 채우면 너무 느리다. 1990년에 발표된 BLAST는 휴리스틱으로 이를 피한다. 질의를 짧은 조각(단어)으로 잘라 데이터베이스에서 똑같은 조각이 나오는 자리(씨앗)를 색인으로 빨리 찾고, 씨앗 주변으로만 정렬을 늘려 점수가 충분히 높은 것만 남긴다. 결과마다 붙는 E값은 "이만한 점수가 우연히 나올 기대 횟수"라서 작을수록 의미가 있다.

질의 TGCATGCA와 DB 서열의 4글자 씨앗 위치와, 같은 대각선 씨앗을 늘린 구간질의DB 서열다른 대각선의 TGCA 씨앗 → 버림TGCATGCAAATTGCATGGCAGT××같은 대각선에 씨앗 3개(TGCA·GCAT·CATG) → 양쪽으로 늘려 맞는 구간 6글자표 전체 대신 씨앗 근처만 정렬해 빠르다. 대신 놓치는 정렬이 생길 수 있다.
BLAST의 발상. 4글자 씨앗 네 개 가운데 셋이 같은 대각선(같은 어긋남)에 모여 있어 그쪽을 늘린다. 실제 BLAST는 똑같은 단어만이 아니라 점수가 높은 비슷한 단어도 씨앗으로 쓴다.

시퀀서가 낸 짧은 읽기 수억 개를 참조 유전체에 붙이는 일(읽기 매핑)도 같은 고민이다. BWA·Bowtie·minimap2 같은 매퍼는 참조 유전체를 미리 압축 색인(FM-index 등)해 두고 씨앗을 찾은 뒤 근처만 정밀하게 정렬한다.

유전체 조립: k-mer와 드 브루인 그래프

참조 유전체가 없는 새 생물이라면 조각들만으로 원래 문자열을 복원해야 한다. 조각끼리 겹치는 부분을 모두 비교해 잇는 방식(겹침–배치–합의)은 조각이 수억 개면 비교 쌍이 너무 많다. 짧은 읽기 조립기는 대신 읽기를 길이 k인 조각(k-mer)으로 자르고, k-mer 하나를 "앞 k−1글자 마디 → 뒤 k−1글자 마디" 간선으로 바꾼 드 브루인 그래프를 만든다. 그러면 조립은 간선을 모두 한 번씩 지나는 길(오일러 경로)을 찾는 문제가 되고, 이는 그래프 크기에 비례하는 시간에 풀린다(알고리즘 › 그래프).

읽기 세 개를 3-mer로 자르고 드 브루인 그래프를 만들어 두 가지 조립 결과를 얻는 단계 그림유전체(모름)ATGGCGTGCA읽기ATGGCGGGCGTGCGTGCA3-mer 8개(중복 제거)ATGTGGGGCGCGCGTGTGTGCGCAATTGGGGCCGGTCAATGTGGGGCGCGCGTGTGTGCGCA간선 = 3-mer, 마디 = 2글자12345678길 1: AT → TG → GG → GC → CG → GT → TG → GC → CAATGGCGTGCA= 원래 유전체16734528길 2: AT → TG → GC → CG → GT → TG → GG → GC → CAATGCGTGGCA≠ 원래 유전체, 그래도 간선은 모두 썼다
1 / 5

원래 유전체(흐리게, 실제로는 모른다)에서 겹쳐 잘린 읽기 3개가 나왔다. 어느 자리에서 왔는지는 모른다.

드 브루인 그래프로 유전체 조립하기. 짧은 조각을 서로 맞춰 보는 대신 k-mer를 간선으로 바꿔, 모든 간선을 한 번씩 지나는 길을 찾는다.

실제 조립은 이보다 지저분하다. 시퀀싱 오류가 가짜 k-mer와 가짜 가지를 만들고, 깊이가 고르지 않으며, 사람 유전체의 상당 부분이 반복 서열이다. 그래서 조립 결과는 보통 한 줄이 아니라 반복에서 끊긴 여러 조각(콘티그)이고, 긴 읽기와 다른 보조 자료로 이들을 순서대로 엮는다. 2022년에야 사람 유전체를 끝에서 끝까지(T2T) 빈틈없이 읽었다고 발표된 것도 긴 읽기 덕분이다.

변이 찾기

사람끼리는 유전체 대부분이 같고 일부 자리만 다르다. 시퀀싱의 흔한 목적은 이 다른 자리, 곧 변이를 찾는 것이다. 한 글자가 바뀐 SNV, 몇 글자가 빠지거나 끼어든 indel, 큰 구간이 뒤집히거나 복제된 구조 변이가 있다. 기본 흐름은 읽기를 참조 유전체에 매핑하고, 자리마다 위에 쌓인 읽기의 글자를 세는 것(pileup)이다.

까다로운 점은 시퀀싱 오류와 진짜 변이를 가르는 것이다. 사람은 염색체를 두 벌 가지므로 한쪽만 바뀐 이형접합 변이는 읽기의 절반쯤에서, 양쪽이 바뀐 동형접합 변이는 거의 전부에서 보인다. 한두 개 읽기에만 나타난 다른 글자는 오류일 가능성이 크다. 실제 변이 호출기(GATK, DeepVariant 등)는 단순한 비율 기준 대신 품질 점수·매핑 품질·가닥 치우침을 함께 넣은 확률 모형이나 신경망으로 판단한다.

참조 서열 위에 읽기 여섯 개를 쌓아 위치 5의 변이와 위치 7의 오류를 가르는 그림참조읽기센 결과A0C1G2T3T4A5G6C7A8T9·····C·········C······G···C·········C3 A3C3 G1위치 5: 깊이 6에서 C 3개(50%) → 한쪽 염색체만 바뀐 이형접합 변이 후보위치 7: G가 한 읽기에만 있다 → 시퀀싱 오류로 보고 버린다
pileup에서 변이 부르기. 점(·)은 참조와 같은 글자, 붉은 글자는 다른 글자다. 기준(깊이 3 이상, 다른 글자 30% 이상)은 설명을 위해 정한 값이다.

찾은 변이가 병과 관련 있는지는 또 다른 문제다. 대부분의 변이는 해가 없고, 어떤 변이가 질병을 일으키는지는 많은 사람의 자료를 모은 통계(유전체 전체 연관 분석)와 기능 실험으로 조금씩 밝혀진다. 확률과 다중 비교의 함정은 확률과 통계 노트에 있다.

발현 분석과 다중 검정

DNA는 세포마다 거의 같지만, 어떤 유전자가 얼마나 켜져 있는지는 조직과 상태마다 다르다. RNA-seq은 세포 안의 RNA를 읽어 유전자마다 읽기가 몇 개 붙었는지 센다. 결과는 행이 유전자, 열이 표본인 정수 개수 표다. 약을 준 표본과 안 준 표본에서 어떤 유전자의 개수가 의미 있게 달라졌는지 찾는 것이 차등 발현 분석이다. 널리 쓰는 Bioconductor의 DESeq2는 이 개수를 음이항 분포로 모형화하고, 입력으로 정규화하지 않은 원래 개수를 받는다. 표본마다 읽은 양이 달라 생기는 차이를 모형 안에서 직접 보정하기 때문이다.

함정은 검정의 수다. 유전자 2만 개를 각각 p < 0.05로 검정하면, 실제로 아무것도 달라지지 않았어도 우연만으로 약 2만 × 0.05 = 1,000개가 “유의”하게 나온다. 그래서 유전체 분석은 p값 대신 여러 검정을 고려해 고친 보정 p값을 보고, 발견 중 거짓의 비율(거짓 발견율, FDR)을 기준으로 자른다. DESeq2는 보정 p값 열(padj)을 따로 내고, 기본 FDR 기준을 0.1로 둔다(DESeq2 안내서).

정렬부터 변이 호출·발현 분석까지는 도구 열 개 남짓을 차례로 잇는 파이프라인이다. 손으로 명령을 이어 치면 몇 달 뒤 같은 결과를 다시 만들기 어렵다. 그래서 단계와 입출력 파일을 규칙으로 적어 두고 노트북·클러스터·클라우드 어디서든 같은 순서로 돌리는 워크플로 도구(Nextflow, Python 기반 문법의 Snakemake)와 도구 판을 고정하는 컨테이너를 함께 쓴다. 재현할 수 있는 분석이 이 분야의 기본 요구다.

유전체 프로젝트와 비용

인간 유전체 프로젝트는 1990년에 시작해 2003년 4월에 "사실상 완성"을 발표했다. 원래 목표인 2005년보다 2년쯤 이르다. 그때 읽은 범위는 유전체의 약 92%였고, 반복이 많아 읽기 어려운 나머지 틈은 2022년 T2T 컨소시엄이 채웠다. 처음 잡은 예산은 약 30억 달러였고, 정확한 집계는 어렵지만 대체로 이 값에 가깝다고 본다.

사람 유전체 한 벌을 읽는 값은 그 뒤 극적으로 떨어졌다. 미국 국립 인간 유전체 연구소(NHGRI)는 첫 유전체의 비용을 5억~10억 달러 사이로 추정한다. 2006년에는 고품질 초안 하나가 약 1,400만 달러, 2015년 중반에는 4,000달러 남짓, 2015년 말에는 1,500달러 아래였다. NHGRI의 비용 그래프는 2008년 무렵 차세대 시퀀싱으로 넘어가면서 하락 속도가 컴퓨터 성능이 두 배가 되는 무어의 법칙 곡선을 크게 앞질렀다고 설명한다.

인간 유전체 프로젝트부터 2015년까지 사람 유전체 시퀀싱 비용을 로그 눈금으로 비교한 막대그래프1천 달러100만 달러10억 달러인간 유전체 프로젝트5억~10억 달러로 추정(아래쪽 값)2006년1,400만 달러고품질 초안2015년 중반4,000달러고품질 초안2015년 말1,500달러1,500달러 아래5억~10억로그 눈금 · 출처 genome.gov
사람 유전체 한 벌의 시퀀싱 비용(genome.gov). 로그 눈금이라 눈금 한 칸이 1,000배다. 이 값에는 장비 구입·분석·저장 비용이 빠져 있고, 그 뒤 해의 값은 출처마다 기준이 달라 싣지 않았다.

읽는 값이 싸지자 병목이 계산과 저장으로 옮겨 갔다. 원자료를 보관하고, 수천~수만 명의 유전체를 같은 기준으로 다시 분석하고, 결과를 연구자끼리 안전하게 나누는 일이 이제 더 큰 비용과 기술 문제다.

계통수: 거리에서 나무로

여러 생물의 같은 유전자를 정렬하면, 쌍마다 몇 글자가 다른지로 거리 행렬을 만들 수 있다. 서로 덜 다를수록 더 최근에 갈라졌다고 보고 나무 모양으로 그린 것이 계통수다. 가장 단순한 방법인 UPGMA는 가장 가까운 두 묶음을 합치고, 새 묶음과 나머지 사이 거리는 원소 거리의 평균으로 다시 계산하기를 하나가 남을 때까지 되풀이한다.

종 A, B, C, D의 거리 행렬과 UPGMA로 만든 계통수거리 행렬(가상의 예)AABBCCDD0261020610660101010100가장 작은 A–B부터 합친다135ABCD012345가지 높이 = 거리 ÷ 2
UPGMA. A–B(거리 2)를 먼저 합쳐 높이 1에 매달고, C까지의 평균 거리 6으로 높이 3, D까지 10으로 높이 5에 매단다. 거리는 설명을 위해 만든 값이다.

UPGMA는 모든 갈래가 같은 속도로 변한다(분자 시계)고 가정해, 속도가 다르면 틀린 나무를 그린다. 그래서 실제로는 이 가정이 없는 이웃 결합(neighbor joining)이나, 치환 모형을 두고 자료가 나올 가능성이 가장 높은 나무를 찾는 최대 가능도·베이즈 방법을 많이 쓴다. 바이러스 변이주가 어디서 퍼졌는지 추적하는 것도 같은 계산이다.

단백질 구조 예측

단백질은 아미노산 사슬이 저절로 접혀 정해진 3차원 모양을 이루고, 그 모양이 기능을 정한다. 사슬 순서가 1차 구조, 나선·병풍 같은 국소 무늬가 2차 구조, 전체 접힘이 3차 구조다. 서열은 읽기 쉽지만 구조는 X선 결정학·저온 전자 현미경 등으로 오래 걸려 얻어야 했다. "서열만으로 구조를 맞힐 수 있는가"는 반세기 동안 풀리지 않은 문제였고, 2년마다 열리는 예측 대회 CASP가 진척을 재 왔다.

Google DeepMind의 AlphaFold가 이 흐름을 바꿨다. 노벨 위원회의 설명에 따르면 AlphaFold2는 2020년 CASP에서 대부분의 경우 X선 결정학에 거의 맞먹는 정확도를 보였다. 핵심 단서는 진화다. 비슷한 서열을 많이 모아 정렬하면, 접혔을 때 맞닿는 두 자리는 함께 바뀌는 경향이 있어 거리 정보가 숨어 있다. AlphaFold는 이 정렬과 서열을 신경망(딥러닝 노트)에 넣어 원자 좌표와 자리별 신뢰도를 내놓는다.

서열에서 신경망을 거쳐 3차원 구조를 예측하는 흐름과 단백질 1·2·3차 구조의 모양아미노산 서열MELF…비슷한 서열모아 정렬신경망(AlphaFold 등)3차원 좌표+ 자리별 신뢰도단백질 구조의 층1차: 서열(줄)2차: 나선·병풍3차: 접힌 모양
구조 예측의 흐름과 단백질 구조의 층. 예측 결과에는 자리마다 신뢰도가 붙어, 잘 접히지 않는 꼬리나 고리 부분은 낮게 나온다.

2024년 노벨 화학상은 이 일에 돌아갔다. 절반은 AlphaFold를 만든 데미스 허사비스와 존 점퍼가, 나머지 절반은 컴퓨터로 자연에 없던 새 단백질을 설계하는 방법을 개발한 데이비드 베이커가 받았다. 노벨 위원회는 AlphaFold로 알려진 단백질 약 2억 개 거의 전부의 구조를 예측할 수 있게 되었다고 설명한다. 다만 예측은 실험을 대신하는 증거가 아니라 좋은 출발점이다. 여러 단백질이 맞물리는 복합체, 약물이 붙을 때의 미세한 모양 변화, 움직이는 구조는 여전히 실험으로 확인해야 한다.

유전 정보와 개인정보·윤리

유전 정보는 다른 개인정보와 성질이 다르다. 비밀번호처럼 바꿀 수 없고, 평생 그대로이며, 나만의 것이 아니다. 내 유전체는 부모·형제·자녀와 상당 부분을 함께 가지므로, 내가 공개하면 동의하지 않은 친척의 정보도 일부 드러난다. 이름을 지운 유전체 자료라도 공개된 족보·유전자 계보 서비스 자료와 맞대면 사람을 다시 알아낼 수 있다는 연구가 여러 번 나왔다.

친족 차수별로 평균적으로 함께 가진 유전체 비율 막대그래프1차 친족부모·자녀·형제자매50%2차 친족조부모·손주·삼촌·이모25%3차 친족사촌12.5%4차 친족사촌의 자녀 등6.25%평균값이다. 실제로는 사람마다 조금씩 다르고, 일란성 쌍둥이는 거의 100%다.
친족 차수별로 평균적으로 함께 가진 유전체 비율(0.5^차수). 사촌만 해도 8분의 1을 함께 가진다. 개인의 결정이 가족 전체의 정보에 닿는 이유다.
  • 동의: 어떤 목적으로, 누가, 얼마나 오래 쓰는지 알고 동의해야 한다. 연구용으로 기증한 시료를 나중에 다른 목적으로 쓰려면 다시 묻거나 처음부터 넓은 동의를 받아 두는 방식이 쓰인다.
  • 안전한 공유: 원자료를 내보내는 대신 분석 코드를 데이터 쪽으로 보내는 방식, 접근 심사, 통계만 공개하기 같은 방법을 쓴다. GA4GH 같은 단체가 국제 표준과 정책 틀을 만든다. 일반적인 데이터 보호는 보안 노트에 있다.
  • 차별과 오해: 보험·고용에서 유전 정보로 차별받지 않도록 나라마다 법을 둔다. 한국에서는 생명윤리 및 안전에 관한 법률이 유전자 검사와 유전 정보 이용을 다룬다. 소비자 직접 의뢰(DTC) 유전자 검사의 "질병 위험"은 대개 확률을 조금 바꾸는 정보일 뿐 진단이 아니다.

이 절은 개념을 정리한 것이고 법률 해석이 아니다. 구체적인 경우는 해당 기관이나 전문가에게 확인해야 한다.

핵심 자료

정렬에 쓰인 동적 계획법은 알고리즘 › 설계 기법, 대규모 유전체 자료 처리는 빅데이터 노트에 있다.

자료종류요지링크
Rosalind연습 문제GC 비율, 번역, 정렬, 조립 같은 생물정보학 문제를 직접 코드로 풀며 익힌다. 이 노트의 계산 대부분이 문제로 있다.rosalind.info
BLAST도구미국 NCBI가 운영하는 서열 유사성 검색. 서열을 붙여 넣으면 데이터베이스에서 비슷한 서열을 찾아 정렬과 함께 보여 준다.NCBI
AlphaFold Protein Structure Database데이터베이스AlphaFold가 예측한 단백질 구조 2억 6천만 개 이상을 공개한다. 구조마다 자리별 신뢰도가 색으로 칠해져 있다.EMBL-EBI
Human Genome Project Fact Sheet자료인간 유전체 프로젝트의 기간(1990~2003), 범위, 비용, 2022년 T2T 완전 서열까지의 경과를 정리했다.genome.gov
The Sanger FASTQ file format논문FASTQ 형식과 품질 글자의 오프셋(Sanger 33, 옛 Solexa·Illumina 변형)을 정리한 2010년 논문.Nucleic Acids Research
GA4GH표준 단체유전체·건강 데이터를 책임 있게 나누어 쓰기 위한 국제 표준과 정책 틀을 만든다.ga4gh.org