Annovar: Population frequency, in-silico prediction tool 및 기타 database 활용

오늘 포스팅은 Annovar에 관한 내용으로 작성해볼까 합니다. 언젠가 한번은 정리할 필요가 생각하고 있던 내용인데, 이제서야 차례가 왔네요. 시퀀싱 기술이 보편화되면서, 대부분 표준화된 파이프라인을 이용하여 시퀀싱 raw data로부터 변이를 검출하는 Up-stream analysis는 대부분의 업체에서 대동소이한 결과를  주고 있습니다. 연구자의 입장에서 사실 더 중요한 것은 이 정보를 어떻게 효과적으로 이용할까 하는 부분에 있고, 그래서 Bam file 또는 VCF file에서 시작하는 Down-stream analysis가 더 중요하다고 볼 수 있습니다. 그 첫 단계로 필요한 적절한 정보를 활용하여 주석을 다는 과정이 있고, 이를 우리는 Annotation (주석 달기) 과정이라고 합니다. 그리고 이 과정에서 우리는 대부분 Annovar를 사용하게 됩니다. 물론 업체에 의뢰하면 대부분 기본적인 Annotation이 끝난 파일도 전달을 받게 되는데, 사실 필요 없는 내용이 잔뜩 달려서 파일의 용량만 무지막지하게 커진다거나, 정작 필요한 내용이 빠진 경우도 종종 발생합니다. 그래서 이번에 다룰 내용은 주석 달기의 각 항목에 대한 의미와 주요 활용 항목에 대해서 정리해보겠습니다.

관련 포스팅 보기>

NGS 분석 파이프 라인의 이해: GATK Best Practice

Annovar는 Perl script 기반으로 짜여 있어서, linux에서 명령어를 주면 자동으로 annotation을 달아주게 되어있습니다. 이때 몇가지 option에 따라서 원하는 내용대로 다양한 Database에서 관련 내용을 annotation 할 수가 있습니다. 더 많은 내용을 추가함에 따라서 연산 시간과 최종 파일 용량은 커지고, 가끔은 이것이 오히려 독이 되기도 합니다. 따라서 원하는 내용을 입맛에 따라 최적화하여 활용하는 것이 필요하게 됩니다. 아래 그림은 Annovar를 이용하여, 주석을 다는 과정의 전반적인 흐름을 보여주고 있습니다. 간단히, “Database 파일을 통째로 다운 받아서, Perl script 기반의 annotate_variation.pl을 실행하면, 그에 맞는 내용을 찾아서 주석으로 달아준다.” 정도로 말할 수 있겠습니다.

ANNOVAR_main_package_workflows.svg.png

Annovar에서 제공하는 Database 목록 보기

위 페이지에서는 다운로드 가능한 Database의 목록들을 보여주고 있습니다. 필요한 항목의 이름과 업데이트 날짜 등을 참고하여, DB를 다운로드하고 적절하게 활용하기 바랍니다.

annotate_variation.pl -buildver hg19 -downdb -webfrom annovar [위 목록의 Database 이름] humandb/

 


I. Gene-based Annotation

VCF 파일에서 가장 핵심 정보는 사실 몇개 없습니다. 정확하게는 5개 정보만 있어도 충분한데, “몇번째 염색체 (Chr)의 몇번째 염기 위치 (Position)가 원래 무엇인데 (Ref) 무엇 (Alt)으로 바뀌었다.” (흔히 이러한 형태의 파일을 MAF format이라고 합니다.) 이 말을 하기 위해서, 부수적인 내용들이 잔뜩 달려 있는 셈이죠. 그러나 이 정보만을 이용해서는 사람들이 알아들을 수가 없습니다. 우리는 “어떤 유전자의 몇번째 엑손 영역의 몇번째 아미노산이 무엇으로 바뀌었다“와 같은 정보가 필요하죠. 그런데 사실 아직도 유전자의 정확한 정의와 위치에 대해서는 100% 밝혀지지 않았습니다. 따라서 이 유전자라고 하는 부분도 다양한 데이터 베이스가 존재하게 됩니다. 대표적으로 RefGene, UCSC/Ensemble Gene, Known Gene, CCDS 등등의 데이터 베이스가 있습니다. 따라서 여기서 어떤 데이터 베이스를 이용하여, annotation을 하냐에 따라서 출력이 달라집니다. (하지만 사실 큰 차이는 없습니다. 대부분의 업체에서는 2~3개의 데이터 베이스를 이용하여 annotation을 해주는데, 대부분 내용이 중복되어 용량만 커짐… 그래서 개인적으로는 그냥 RefGene만으로도 충분합니다.)

<가장 핵심적인 VCF 파일의 정보> = MAF format

Chromosome : Position (Start_End) : Reference sequence > Alternative sequence

위의 database를 이용하면, 위의 정보가 어떤 유전자에 속하고, 해당 유전자에서 어떤 기능을 하는 어떤 부위의 변이인지, 기능적으로 변화가 있는지 없는지 등에 대한 기본적인 정보를 제공해주게 됩니다. 어떻게 보면 가장 핵심적인 정보를 추가하는 부분이라고 할 수 있습니다.

 

II. Filter-based Annotation

사실 변이를 Genome Browser에서 찾는 가장 빠른 방법은 rsID를 이용하는 것입니다. 그런 점에서 dbSNP 또는 avSNP의 rsID를 주석으로 달아놓는 것은 활용도가 높습니다. rsID는 변이 보고가 점점 늘어남에 따라서 계속 갱신되고 있는데, 가장 최근 database는 avSNP 151 버젼이지만, 보편적으로 아직까지는 avSNP 147 버젼을 사용하고 있는 것 같습니다.

관련 포스팅 보기>

바이오 연구자를 위한 Genome Browser 비교 및 활용

아미노산 치환의 효과 예측: In silico tool의 원리와 종류

변이빈도와 효과 크기

사실 변이의 생물학적 의미를 해석하는 과정에서 정말로 중요한 내용은 일반 인구 집단에서 얼마나 흔하게 존재하는가?에 있다고 할 수 있습니다. 그러한 의미에서 Population Frequency 정보는 변이의 의미를 파악하는데 매우 중요한 단서를 제공해 줍니다. 이와 같은 Population Frequency는 다양한 집단에서 시퀀싱을 시행하여, 그 빈도를 계산한 다양한 데이터 베이스에 기반하게 되는데, 대표적으로 EXAC, gnomAD, 1000Genome, ESP database 등이 있습니다. 이때 중요한 점은 인구 집단이 얼마나 대표성을 띄는가?에 있다고 볼 수 있는데, 빈도를 계산한 인구 집단의 크기 (n수)와 인종적 배경 (Ethnicity) 등이 특히 중요합니다. 더불어, Rare variant의 경우는 더욱더 인종에 따른 차이가 크기 때문에 일반적으로는 한국인의 경우는 EAS (East Asian population) 정보를 이용하지만, 해당 데이터 베이스가 충분히 한국인을 대표하지 못하는 경우가 많습니다. (위의 데이터 베이스에서는 gnomAD가 가장 n 수가 가장 크기 때문에 저는 주로 EXAC과 gnomAD의 EAS 인구 집단 정보를 활용하고 있습니다.)

사실 데이터 용량이 가장 뻥튀기 되는 부분이 in-silico prediction tool 부분에 있습니다. 아미노산 치환 효과를 예측해주는 tool은 100가지가 넘게 있는데, 각 tool 들이 예측해주는 정보를 얼마나 포함할 것인가에 따라서 추가되는 정보도 달라집니다. 크게 얼마나 진화적으로 보존된 지역인지 또는 아미노산 구조적으로 변화를 유발하는지 등에 기반한 알고리즘으로 개발되어, SIFT, PolyPhen과 같은 고전적 tool부터, GERP, SiPhy, MutationTaster, FATHMM, MetaSVM, CADD, DANN과 같은 다양한 tool이 존재합니다. (역시나 이쪽도 절대 지존은 없기 때문에 경우에 따라 적절하게 활용합니다. 보통 Voting Method, 즉 10개 또는 선택된 갯수의 서로 다른 알고리즘 중에서 몇개가 Deleterious로 예측하는가? 와 같은 방식으로 많은 경우 활용하게 됩니다. 저는 개인적으로 Ensemble 기반의 tool을 주로 활용하고 있습니다.)

마지막으로 임상 정보들을 annotation 하는 database가 존재하는데, 대표적으로 OMIM, HGMD, ClinVar, COSMIC 등등이 있습니다. 희귀 유전 질환에 대해서 연구를 한다면, OMIM이나 HGMD, Cancer 관련 연구를 한다면, COSMIC database 정보를 annotation 하는 것이 도움이 될 수 있습니다. 그러나 사실 이렇게 annotation을 덕지덕지 붙이다보면 파일 크기가 엄청나게 불어나게 됩니다. 현재까지 대부분의 연구자들은 Coding region의 Functional variant에만 관심이 있기 때문에, 1차적으로 Gene-based annotation 후 exon 영역의 functional variant만 filtering하고나서, 해당 변이들에 대해서 annotation 하는 방법이 시간과 데이터를 절약하는 방법이 될 수 있습니다.

 

III. 기타 annotation 방법

관련 포스팅 보기>

암유전체 분석: Driver mutation prediction tools

위의 annovar를 이용하는 방법은 linux 기반의 서버를 통해서 대용량으로 실행하는 방법입니다. 그러나 서버를 구축하지 못하거나, linux를 친숙하게 이용하지 못하는 경우에는 그러면 어떻게 annotation을 하는가? 에 대한 문제가 발생합니다. 이를 위해서 다양한 Web 기반의 annotation tool 들이 존재하게 됩니다. 가장 대표적인 것이 wANNOVAR입니다. 기타 cancer를 다룬다면, Oncotator 또는 Cancer Genome Interpreter도 대안이 될 수 있습니다. 그러나 역시 이러한 tool들은 Annovar에 비해서 자유도는 떨어지기 때문에 기능에 제약이 있다는 단점이 있습니다. 마지막으로 R을 활용하여, annotation이 가능한 몇가지 package들이 개발되어 있습니다. 대표적인 package로는 MAFtools, VariantAnnotation 등이 있으나, 역시 기능이 AnnoVar에 비하면 제한적입니다. 그러나, 소수의 변이에 대해서 빠르게 annotation이 필요한 경우라면 이러한 도구들도 적절하게 활용하는게 도움이 될 수 있습니다. 더 자세한 정보는 아래 github를 활용하시기 바랍니다.

 


 

References>

Yang, Hui, and Kai Wang. “Genomic variant annotation and prioritization with ANNOVAR and wANNOVAR.” Nature protocols 10.10 (2015): 1556.

ANNOVAR: http://annovar.openbioinformatics.org/en/latest/

wANNOVAR: https://github.com/WGLab/doc-ANNOVAR

Oncotator: https://github.com/broadinstitute/oncotator

VariantAnnotation: https://github.com/Bioconductor/VariantAnnotation

MAFtools: https://github.com/PoisonAlien/maftools

Web resources for Bioinformatics database: https://netbiolab.org/w/Web_Resources

아미노산 치환의 효과 예측: In silico tool의 원리와 종류

앞선 포스팅에서 언급했듯이, 단일염기변이 (SNV)에 의해 코딩하는 아미노산의 바뀌면 (missense variant) 단백질의 기능에도 영향을 주게 됩니다. 이때, 치환되는 아미노산이 단백질 구조와 기능에 영향을 미치는 정도에 따라서 그 효과가 거의 없을수도 있고, 단백질의 기능 자체를 항진시키거나 (gain of function; 드물게) 또는 감소시키게 됩니다 (loss of function). 오늘은 이러한 아미노산 치환에 따른 단백질 기능을 예측하는 컴퓨터 알고리즘 도구들 (In silico tools)의 원리와 종류들 대해서 포스팅하고자 합니다.

In silico tool에 대한 이해가 중요한 이유는 유전자 검사를 통해 변이를 검출한 경우, 변이 해석을 위한 기초 정보를 제공하기 때문입니다. 현재 많은 임상 검사실에서 사용하고 있는 American College of Medical Genetics and Genomics (ACMG)의 염기 변이의 해석에 관한 표준화 가이드라인 (2015 ACMG guideline)에서도 In silico tool의 결과를 판독 기준에 포함 시키고 있습니다. 자세히 살펴보면, 각각의 개발 도구들은 세부적으로 조금 더 기능을 향상시키기 위해 적용한 알고리즘에 차이가 있지만, 사실 대부분의 In silico tool에서 활용하는 기본 원리는 비슷합니다. 아래의 원리는 단백질학에 있어 중요한 내용이지만, 저도 세부적인 내용에 대해서는 전문가가 아니기 때문에, 간단히만 정리하고 넘어가겠습니다.

principle
아미노산 서열이 보존된 영역 (Conserved site) 또는 단백질 구조상 파묻힌 영역 (Buried site)에 변이가 있을 경우, 단백질 기능에 영향을 미쳐 질병이 발생할 확률이 높아진다.
  1. 아미노산 서열의 보존성 (Homology & Conservation): 진화 생물학적 관점에서 여러 종에서 공통적으로 단백질에 존재하는 아미노산 서열 ( conserved area)의 경우, 기능을 수행하는데 중요한 영역일 확률이 높습니다. 보통 이러한 부위를 상동성 (homology)을 갖는다고 합니다. 이러한 부위에 아미노산 치환이 일어나게 되면, 기능이 떨어질 확률이 높습니다. (진화적 관점에서 선택압의 결과) 이러한 원리에 기반하여, 아미노산 서열 정보를 단백질 기능 변화 예측에 사용합니다.
  2. 단백질의 구조 (Structure): 아미노산 치환이 표면 (surface sites)에서 일어나는 경우, 내부의 파묻힌 영역 (buried sites)에서 일어나는 경우보다 단백질 기능 변화에 영향을 적게 줄 확률이 높습니다. binding site 또는 active site의 경우도 변이가 발생할 경우, 기능에 영향을 미칠 확률이 높아집니다. 이러한 구조적인 정보를 다양한 Database로 부터 활용하여, 예측 모델에 포함시킵니다.
  3. Annotation: 그동안 병적 변이(pathogenic variant)로 보고되었던 변이들의 정보, 즉 실제 관찰된 데이터베이스 (database)를 추가적으로 활용하여, 모델을 개선 시킵니다.

위의 데이터는 예측을 위한 모델링의 기초 자료가 됩니다. 위의 자료들을 토대로 다양한 예측 알고리즘을 적용한 것들이 in silico tool로 개발되어 왔습니다. 아래 그림은 이러한 과정을 정리한 모식도를 보여주고 있습니다.

AAS
In silico prediction tool의 전체적인 모델링 과정. 단백질 구조, 아미노산 서열, 기존 보고되었던 DB 정보를 활용하여, 예측 알고리즘을 적용하게 됩니다.

In silico tool에는 많은 종류가 있는데, 이들의 차이는 대부분 적용한 알고리즘의 차이에서 옵니다. 흔히 적용하는 알고리즘은 최근 이슈가 되고있는 기계 학습 (Machine learning) 알고리즘들입니다. 즉 위의 데이터를 머신러닝 알고리즘으로 학습을 시킨 이후에 예측을 하도록 모델링하는 것이지요. 각각의 세부적인 알고리즘들에 대해서는 나중 포스팅에서 다루기로 하고, 여기서는 간단히 정리하고 넘어가겠습니다. 대표적으로 사용되고 있는 알고리즘에는 Random Forest (RF), Support Vector Machine (SVM), Hidden Markov Model (HMM), Artificial Neural Network (ANN), Deep Neural Network (DNN) 등이 있습니다. 아래는 ACMG 가이드라인에 소개된 대표적인 in silico tool들을 정리한 표입니다.

in silico tools
적용 알고리즘과 방법에 따라서 다양한 종류의 in silico prediction tool들이 개발되고 있습니다.

마지막으로 in silico tool들의 한계점을 살펴보고 글을 마치고자 합니다. 사실 위의 표에 소개된 도구 외에도 많은 도구들이 개발되어 논문으로 소개되고 있고, 서로 자기들이 개발한 도구의 성능이 우수하다고 말하곤 합니다. 하지만, 위의 도구들은 그들의 태생적 한계 때문에, 예측 성능이 정확하지는 않습니다. 여기서 태생적 한계라 함은 input data인 structure, sequence, annotation 정보를 말합니다. 모델에 이용된 데이터가 매우 제한적이고, 실제 기능을 측정한 정보가 포함되어 있지 않기 때문에, 아무리 좋은 머신러닝 알고리즘을 적용한다고 하더라도, 성능이 좋을 수가 없습니다. 사실 이러한 이유때문에, 이전에 포스팅했던 MAVE를 활용한 기능 측정 데이터의 필요성이 부각되고 있습니다.

관련 포스팅 보기>

유전자 변이의 해석: 대용량 기능 검사의 필요성

 

아래는 위에서 언급한 in silico tool의 제한점들입니다.

  1. 보통 90%의 민감도로 pathogenic variant를 예측할 때, 위양성률이 30% 정도 수준이라고 합니다. 이는 병적 변이라고 예측해도 실제로는 30%는 그렇지 않다는 의미입니다. 또한 대부분의 논문에서 발표한 성능도 training dataset 및 test dataset에 따라 결과에 많은 차이가 있습니다. 이러한 성능은 실제 임상 진료에 사용하기에는 매우 부족합니다.
  2. 적용 알고리즘만으로는 Input data의 태생적 한계를 극복할 수 없다: 위에서 언급한 것 처럼, 아무리 좋은 알고리즘을 적용한다고 하더라도, input data가 포함하는 정보가 제한적이기 때문에 예측 모델의 태생적 한계를 극복할 수 없습니다.
  3. 예측 도구들 마다 분류하는 방식 및 기준값, scale 등이 제각각이다.: 가령 대표적인 tool인 SIFT의 경우는 0과 1 사이의 값을 계산하여 0.05보다 작은 경우는 damaging 큰 경우는 tolerated으로 구분하는 반면, PolyPhen-2의 경우는 benign, possibly damaging, probably damaging로 구분하며, 반대로 1에 가까울수록 damaging일 가능성이 높도록 예측합니다. 즉 이처럼 값이나 기준이 통일 되어 있지 않으며, 그 의미도 제각각이라서 이해하기가 어려운 측면이 있습니다.
  4. 변이의 양적 형질에 대한 정보를 주지 못한다.: 대부분의 알고리즘은 단백질 영향이 정상인지 병적인지의 2~3가지의 카테고리로 변이를 구분합니다. 하지만 사실 정밀의료의 측면에서는 효소의 활성도가 80% 수준으로 떨어지는지, 0% 수준으로 완전히 없어지는지 등과 같은 양적 형질에도 관심이 큽니다. 그러나 현재 알고리즘은 이러한 정보는 전혀 줄 수 없습니다. 사실 이러한 특징은 약 처방량 결정 등에 이용될 수 있는 약물 대사 효소의 경우에 더 중요하게 됩니다.

 


[References]

Ng, Pauline C., and Steven Henikoff. “Predicting the effects of amino acid substitutions on protein function.” Annu. Rev. Genomics Hum. Genet. 7 (2006): 61-80.

Richards, Sue, et al. “Standards and guidelines for the interpretation of sequence variants: a joint consensus recommendation of the American College of Medical Genetics and Genomics and the Association for Molecular Pathology.” Genetics in medicine: official journal of the American College of Medical Genetics 17.5 (2015): 405.