다중서열정렬

다중서열정렬

[ Multiple sequence alignment, MSA ]

다중 서열 정렬은 단백질, DNA 또는 RNA의 서열을 이용하여 3개 이상의 생물 종 서열을 정렬하는 방법이다. 일반적으로 생물학적으로 관련된(공통 조상으로부터 유래되어 진화의 관계를 가지는) 3개 이상의 서열 상동성(homology)을 이용하여 정렬을 한다. 두 개체의 염기서열을 정렬하는 쌍방 서열 정렬(pairwise alignment)의 확장으로 볼 수 있지만, 쌍방 서열 정렬 방식을 이용하면 정렬하고자 하는 서열의 수에 따라 계산의 복잡도가 기하급수적으로 늘어나며 오랜 시간이 걸리므로, 계산 알고리즘을 이용하여 정렬을 수행한다. 정렬하고자 하는 서열의 수에 따라 최적 정렬을 확인하는 것은 계산 비중이 높으므로, 광역적 최적화(global optimization) 방법 보다는 계층적 방식(heuristic method)을 활용하며, 현재까지 여러 계층적 방식이 제안 되어왔다. 정렬된 결과는 비교하는 서열들의 상동성(homology)를 확인할 수 있으며, 진화적인 거리를 확인하기 위한 계통 발생 분석(phylogenetic analysis)에 활용 할 수 있다. 

그림 1. MEGA (Molecular Evolutionary Genetics Analysis) 프로그램을 이용한 다중 서열 정렬의 예시. (그림: 김봉수/한림대)

목차

알고리즘(Algorithm)

현재 사용되는 대부분의 다중 서열 정렬 프로그램들은 이미 정렬이 된 서열 군에 새로이 첨가되는 서열의 유사도(similarity) 감소에 따른 알고리즘을 사용한다. 이는 정렬하고자 하는 서열들간의 가능한 쌍방 정렬(pairwise alignment)을 계산한 다음 가장 높은 유사도 점수를 가진 쌍을 선별하면서 수행된다. 이 때, 다중 서열 정렬의 품질(quality)을 향상 시키기 위해, 하나의 3차 구조 및 계통 발생 데이터와 같은 보조 데이터를 이용하기도 한다.

간단히 살펴보면 그림 2와 같다. (a)에서는 비교하고자 하는 4개의 서열의 서로 간의 관계를 알 수 없을 때, 비교 가능한 짝(pair)은 6개 이며, 서로 다른 염기의 짝은 4개이므로, 이 정렬에서 발생하는 cost는 4가 된다. 하지만, 이 경우에는 염기 치환이 어떻게 일어났는지 판단하기가 어렵다. (b)에서는 4개의 서열 중 A 염기가 서로 진화로 동등한 관계를 가질 때, A에서 C로 염기 치환이 두 방향으로 일어났다는 것을 알 수 있으며, 이 정렬의 cost는 2가 된다. (c)에서는 진화로 유사한 개체를 서로 알고 있을 때, A에서 C로 염기 치환은 한 번 일어난 것이 된다. 이 정렬의 cost는 1이 된다. 다중 서열 정렬시 관계를 알고 있을 경우 발생하는 비용(cost)이 최소화할 수 있으므로, 보조 데이터가 필요하다. 대부분의 다중 서열 정렬 방식은 자동으로 계산되는 알고리즘을 활용하여 정렬되므로, 정렬된 결과를 연구자가 눈으로 확인을 하여 보다 개선될 수 있기 때문에 정렬된 결과를 확인하는 것이 좋다.  

그림 2. 다중 서열 정렬 방법의 예 (그림: 김봉수/한림대)

 

로컬 정렬과 글로벌 정렬(Local alignment and Global alignment)

로컬 정렬(Local alignment)은 비교하고자 하는 시퀀스들의 큰 영역에서 서로 유사한 특정 영역이나 모티프(motif)를 가지고 있는 서로 다른 염기서열을 정렬할 때 유용하게 사용하는 방식이다. Smith-Waterman 알고리즘이 동적 프로그래밍(dynamic programming)을 기반으로 하는 로컬 정렬의 방법이다. 이 알고리즘은 비교하는 시퀀스에서 최상의 유사도(similarity)를 나타낼 수 있는 가능한 길이의 시퀀스들을 찾아서 이 지역을 정렬하는 방법이다.

글로벌 정렬(Global alignment)은 비교하고자 하는 시퀀스의 모든 영역의 염기서열들을 정렬하고자 하는 방식으로 일반적으로 비교하는 염기서열이 서로 비슷하면서 크기가 동일할 때 사용하는 방식이다. Needleman-Wunsch algorithm이 일반적으로 글로벌 정렬에 사용되는 동적 프로그래밍 방법이다.

한 염기 서열의 뒤쪽 서열이 다른 염기 서열의 앞쪽 서열과 겹칠 때는 하이브리드 방법인 semiglobal이나 glocal 방법을 이용하여 정렬을 수행한다.

동적 프로그래밍(dynamic programming)은 염기 서열 정렬을 할 때 발생하는 복잡한 문제를 수학적이나 컴퓨터적 방법으로 보다 쉽게 해결하는 것으로, 간단히 이야기하면 비교하는 서열들의 유사도와 변이를 행렬 등을 이용하여 각 알고리즘에 적절한 데이터(matrix)를 선택하여 정렬하는 방식이다. 

그림 3. 로컬 정렬과 글로벌 정렬의 비교. 로컬 정렬은 전체 중 가장 유사도가 높은 지역을 찾아 정렬을 하는 방법이며, 글로벌 정렬은 전체 염기서열 모두를 비교하여 최적의 유사도를 나타내는 정렬을 하는 방법이다. (그림: 김봉수/한림대)

정렬 방법

다양한 정렬 방법들이 제안 되어 사용되고 있으며, 일반적으로 진화적 과정의 계층적(heuristic) 관계를 이용하여 비교하는 서열들 간의 관계를 가장 잘 예측할 수 있는 가능한 정렬을 만든다. 몇 가지 방법들을 소개하면 아래와 같다.

  • 점진적 정렬 구조(Progressive alignment construction)

가장 많이 사용되는 방법으로 계층적 검색(heuristic search)을 사용한다. 정렬하고자 하는 염기 중 가장 유사한 쌍을 시작으로 가장 다른 염기까지 진행하는 쌍방향 정렬(pairwise alignment)을 결합하여 최종 결과를 만든다. 첫 번째 단계는 서열들 간의 관계를 나타내는 가이드 트리(guide tree)를 UPGMA와 같은 클러스터링을 통해 나타내고, 두 번째 단계는 순차적으로 서열을 추가하면서 다중 서열 정렬을 완성한다. 하지만, 이 경우 서열을 추가하면서 발생하는 오류가 최종 결과로 나타날 수 있으며, 특히 진화적으로 먼 관계의 염기들을 비교할 때 문제점이 나타날 수 있다. 따라서, 최근 사용되는 방식은 가장 가까운 염기들의 계통 발생 거리를 기반으로 비선형 방식으로 보조 가중치를 주어 발생할 수 있는 오류를 최소화한다1). 가장 많이 사용하는 프로그램은 ClustalW이다2). 최신 버전은 ClustalW2이며, Clustal Omega가 개발되어 사용되고 있다( ). 점진적 정렬 방식은 계층적(heuristic) 방식을 사용하므로, 정렬된 결과의 품질과 최적화를 판단할 수 없어, 실제 생물학적 의미가 불분명할 수 있다. 최근 정렬 품질을 향상 시키고, 손실적인 계층적 방식을 사용하지 않는 세미 점진적 정렬을 하는 PSAlign이라는 프로그램이 개발되었다( ).  

  • 히든 마르코프 모델(Hidden Markov models)

히든 마르코프 모델(HMM)은 가장 가능성 있는 다중 서열 정렬을 결정하기 위해 가능한 일치, 불일치, 갭(gap)의 모든 조합을 할당하는 확률론적 모델이다. HMM은 전 지역 정렬과 특정 지역 정렬을 모두 생성할 수 있으며, 생물학적 의미에 대해 평가할 수 있는 가능한 선형 배열을 생성할 수 있다. 비교적 최근에 개발되어, 중첩 영역을 포함하는 염기들의 경우 그 계산 속도를 크게 향상 시켰다. 이 방법은 보존된 열(모든 염기서열이 특정 위치에서 특정 서열을 공유하는 열)은 다음 열 정렬의 가능한 문자만큼 연결되는 단일 노드(node)로 코딩한다. 관찰된 상태는 각 정렬의 열이며, 숨겨진(hidden) 상태는 쿼리(query)안의 염기들이 이론적으로 진화 되어 나온 추정된 조상 서열을 나타낸다. Viterbi 알고리즘이라고 알려진 효율적인 검색 변형은 새로 추가되는 다중 서열 정렬 집합에 다음 염기를 연속적으로 정렬하여 새로운 다중 서열 정렬을 생성하는데 사용된다. 즉, 이전 염기들의 정렬이 새로운 염기가 추가될 때마다 업데이트 되므로, 점진적 정렬 방식과는 다르다. 하지만, 진화적 거리가 먼 염기들의 정렬 시 문제가 발생할 수 있다. HMM방법은 여러 프로그램에서 사용될 수 있으며, 일반적으로 SAM (Sequence Alignment and Modeling system)3) 과 HMMER4) 패키지를 많이 사용한다.

  • 반복적 정렬 방법(Iterative methods)

점진적 정렬은 초기 정렬에 의존하여 추가되는 염기들이 정렬되는 반면, 반복적인 방법은 초기 정렬된 염기들을 재 정렬을 하면서 새로운 염기들을 추가하여 다중 서열 정렬을 수행하므로, 점진적 정렬 방법의 오류를 줄여 정렬된 결과의 질을 향상 시킬 수 있다. 이를 활용한 몇 가지 프로그램이 제안 되어 사용되고 있다. PRRN/PRRP 패키지는 hill-climbing 알고리즘을 사용하여 다중 서열 정렬의 score를 최적화하고 정렬 가중치와 특정 지역 다형성을 반복적으로 수정 정렬한다. DIALIGN은 갭 페널티(gap penalty)를 주지 않으면서, 하위 서열 조각이나 염기 서열 모티프(motif)간의 로컬 정렬(local alignment)를 수행하는 특이한 방법을 사용한다. 가장 많이 사용하는 MUSCLE (multiple sequence alignment by log-expectation) 프로그램은 비교하는 두 염기 서열의 관련성을 찾기 위해 보다 정확한 거리 측정을 통해 점진적 정렬 방법을 향상 시켰다. 이 때 서열 간의 거리 측정은 반복을 통해 계속 업데이트 된다5).  

  • 컨센서스 방법(Consensus methods)

컨센서스 방법은 비교하고자 하는 서열 집합의 여러 다른 다중 정렬에서 최적의 다중 정렬을 찾으려는 방법이다. M-COFFEE와 MergeAlign의 두 가지 방법이 많이 사용된다. M-COFFEE는 일곱 가지 서로 다른 방법에서 생성되는 다중 서열 정렬을 사용한다. MergeAlign은 다양한 진화 모델과 정렬 방법을 이용하여 생성된 정렬의 수를 통해 다중 서열 정렬을 생성한다.

  • 이 외에도 계통 분석 고려 방법(Phylogeny-aware methods), 모티프 발견 방법(Motif finding), 비 암호 다중 서열 정렬(Non-coding multiple sequence alignment) 방법들이 제안 되어 이를 활용하는 프로그램들이 개발되어 사용된다.

계통발생학에서의 이용

다중 서열 정렬 방법은 계통 발생수(phylogenetic tree)를 만드는데 이용될 수 있다. 다중 서열 정렬을 통해 비교하고자 하는 염기 서열들의 상동성을 바탕으로 돌연변이, 염기 삽입, 또는 염기 제거 등의 진화적 관계를 확인하고 분석할 수 있다. 다중 서열 정렬법을 이용하여 기능적으로 중요한 도메인을 비교할 수 있으며, 서열들의 동일성과 유사성을 고려하여 비교한다. 동일성은 비교하고자 하는 염기 서열의 각 위치에서 동일한 서열을 가지는 것을 의미하며, 유사성은 유사한 서열을 가지는 염기 서열들을 비교하는 것을 나타낸다. 유사성을 기반으로 분석을 하면 비교하고자 하는 염기 서열들의 공통 조상을 추론하는데 도움이 될 수 있다.  

정렬 프로그램(Alignment tools)

다양한 정렬 방법에 따른 프로그램들이 개발되어 제공되고 있으며, 다음 몇 가지 사이트에서 이러한 프로그램들을 사용할 수 있다.

  •       Tools for Multiple Alignments ( )
  •       Multiple Alignment Resource Page ( )
  •       ExPASy Bioinformatics Resource Portal ( )
  •       MergeAlign ( )
  •       CLUSTALW in web page ( )
  •       Clustal Omega ( )
  •       Muscle ( )
  •       T-coffee ( )
  •       MAFFT ( )
  •       KALIGN ( )

집필

김봉수/한림대학교

참고문헌

6. Graur D and Li WH. 1999. Fundamentals of molecular evolution (2nd ed) Sinauer Associates, Inc. Sunderland, MA, USA.

1. Mount DM. 2004. Bioinformatics: Sequence and Genome Analysis (2nd ed.) New York: Cold Spring Harbor Laboratory Press.
2. Thompson JD, Higgins DG, Gibson TJ. 1994. CLUSTAL W: improving the sensitivity of progressive multiple sequence alignment through sequence weighting, position-specific gap penalties and weight matrix choice. Nucleic Acids Res. 22, 4673-4680.
3. Hughey R, Krogh A. 1996. SAM: Sequence alignment and modeling software system. Technical Report USCS-CRL-96-22, Universal of California, Santa Cruz, CA.
4. Durbin R, Eddy S, Krogh A, Mitchison G. 1998. Biological sequence analysis: probabilistic models of proteins and nucleic acids, Cambridge University Press.
5. Edgar RC. 2004. MUSCLE: multiple sequence alignment with high accuracy and high throughput. Nucleic Acids Res. 32. 1792-1797.

동의어

Multiple Sequence Alignment, multiple sequence alignment, 다중서열정렬, MSA