서론
역공학(reverse engineering)이란 주어진 시스템의 외부로부터 관찰된 사실과 관련 정보를 이용하여 그 시스템의 내부를 추론하는 과정으로 정의할 수 있다.
역공학의 가장 중요한 목적은 대상 시스템에 대한 실 행 가능한(actionable) 지식과 실험 계획을 발굴하는 것이기 때문에, 일반적으로 역공학 과정에는 시스템 의 구조와 동역학적 특성을 이해하는 것이 포함된다.
주로 역공학 기술은 전자 장치나 컴퓨터 소프트웨어 의 외부적 기능을 다각도로 관찰하여, 해당 전자 회로 나 코드 구조 등을 알아내는데 활용되고 있다.
바이오시스템에 대한 역공학은 크게 세 단계에 걸 쳐 실행된다. 첫 번째 단계는 대상 바이오시스템의 컴 포넌트를 밝혀내는 것이다. 예를 들어, 유전자, 전사 조절 인자, 효소, 대사체, 리간드, 수용체 등은 세포 시 스템의 컴포넌트이다. 최근의 게놈 프로젝트와 바이 오정보 기술로 인해 대단히 많은 수의 분자 컴포넌트 가 밝혀지게 되었다. 두 번째 단계는 각 컴포넌트 간 의 상호작용을 밝혀내는 것이다. 유전자 조절 회로, 대 사 회로, 신호 전달 회로 등이 세포 시스템에서 주로 보여지는 생물학적 회로이다. 단일 종류의 회로가 복 잡한 생체 시스템의 행동 특성을 나타내는데 부족하 다는 것이 드러나면서 최근에는 두 가지 이상의 다른 종류의 회로를 사용하는 방법이 주목 받고 있다. 세 번째 단계는 시스템의 구조적, 동역학적 특성을 이해 하여, 회로 수정, 인위적 기능의 합병, ‘가상(what- if)’ 분석과 같은 2차적 활용 등으로 구체화되는 행동 지식을 알아내는 것이다. 예를 들어 특정한 대사 회로 에 수정을 가함으로써 와일드 타입보다 더 가치 있는 생산품을 더 많이 만드는 새로운 미생물 종을 만들 수 있다. 유전자 조절회로와 신호 전달 회로를 이해하는
것은 새로운 drug target을 찾는 것과 더불어 신약의 부작용을 예측하는 데에도 필수적이다.
생물학적 회로와 대상 종에 따라 역공학은 다양한 기술을 요할 수 있다. 예를 들어 주요 생체 분자의 농 도 변화를 관찰하고 deterministic한 기술을 적용함으 로써 효과적으로 대사 회로를 추론할 수 있다. 반면에 신호 전달 회로를 추론하는 데에는 매우 적은 양의 신 호 전달 물질을 측정하기 위한 고도의 기술과 확률적 인 반응을 다루기 위한 stochastic한 기술이 필요하다.
그렇지만 두 가지 모두 bio-molecule 또는 더 높은 수 준의 생체 객체(bio-entity)를 정점으로 하고 다양한 형태의 생물학적 관계를 간선으로 하는 네트워크로 표현될 수 있다는 공통점도 가진다. 대부분의 경우 그 들 내부에 존재하는 상호 작용들은 직, 간접적인 양의 혹은 음의 피드백에 의해 비선형 관계를 보인다.
생물학적 회로를 구성하는 데에 있어, 갖가지 다른 기술이 회로의 다른 부분을 밝혀주기 때문에, 한 가지 형태의 생물학적 회로의 역공학에 있어서도 어떤 한 가지 기술로만 완성할 수 없다는 것은 자명한 사실이 다. 게다가 역공학 프로세스 그 자체만으로도 이미 복 잡한 세부 작업들로 이루어진다. 이것은 마치 공통의 데이터에 서로 다른 비즈니스 작업들이 적용되고, 또 세부 작업들이 비즈니스의 최종 목표 달성을 위해 통 합되는 비즈니스 정보 시스템과 비슷하다고 볼 수 있 다. 현재 이와 같은 비즈니스 정보 시스템의 복잡함을 다루기 위한 최신 기술로는 컴포넌트 기반 개발 (CBD, Component Based Development)이 있다. 각 세부 작업들은 하나의 컴포넌트에 속하게 된다. 컴포 넌트는 자신의 데이터 구조와, 접근 인터페이스 및 자 기 관리(self-management) 능력을 가지는 프로그램 의 단위이다. 컴포넌트들은 표준 인터페이스를 확정 김상우, 이도헌*
KAIST 바이오시스템학과, {swkim, dhlee*}@biosoft.kaist.ac.kr
하면서 독립적으로 개발되며 계층적 방법을 통해 더 큰 시스템으로 통합된다. CORBA, NET, EJB 및 웹 서비스와 같은 몇몇 컴포넌트 기반 구조들이 느슨하 게 결합된(loosely federated) 소프트웨어 시스템에서 많이 사용된다.
네트워크 구조 추론
네트워크 구조 추론 기술의 선두 주자 중 하나로서, Arkin과 Ross에 의해 개발된 CMC(Correlation Matrix Construction)를 들 수 있다. 이 방법은 특정 한 대사체의 양이 시간의 흐름에 따라 변해가는 흐름 을 나타낸 시계열 벡터를 바탕으로 대사 회로의 구조 를 추론하는 것이다. 그들은 모든 대사체 쌍의 관계를 정량화 하기 위하여 시간지연 상관도(time-lagged correlation)를 적용하였다. 이렇게 얻어진 상관도 행 렬은 수십 개의 대사체에 대해 그들간의 네트워크 구 조를 알아내기 위해 다차원 척도기술(multidimens- ional scaling technique)로 분석된다. 이 기술이 관찰 된 데이터에 대해 계산적 방법으로 생물학적 회로의 내부를 추론할 수 있다는 것을 보이는 데에는 성공하 였으나, 단일 연결(single link)에 국한 된다는 점에서 아직 그 한계가 존재한다. 저자 자신들이 언급한 대로 한 개 이상의 대사체에 대한 조합적 효과는 해결할 수 없다.
조합적 효과를 고려하기 시작하면, 네트워크 구조 추론에 대한 검색공간은 폭발적으로 증가한다. 간단 히 말하면, 우리가 단일 연결만으로 제한했을 때에 n2 번의 비교로 충분했던 것에 반해, n개의 정점을 가진 네트워크의 개수는(2n)가 된다. 이러한 계산적 난제 를 해결하기 위하여 다양한 전제 조건을 도입하는 여 러 가지 방법이 시도되어 왔다. 가장 많이 적용된 조 건은 시스템 행동을 구성하는 각 개별 구성원이 내는 효과의 합으로 생각하는 선형성(linearity)이다.
[Weaver 99]에서는 유전자 조절 시스템의 역공학을 행렬 반전(matrix inversion) 문제로 다루었다. 즉 유 전자 조절 시스템의 행동을 선형 행렬 방정식과 시그
모이드(sigmoid) 함수의 조합을 이용한 공식으로 나타 내고, SVD(Singular Vector Decomposition)과 같은 행렬 반전 방법과 Moore-Penrose의 의사 반전 (pseudo inverse) 방법을 이용하여 해당 행렬의 계수 를 알아내게 된다. [Akutsu 2000]에서는 각 유전자 발현량의 변화를 다른 유전자 발현량의 변화로 이루 어진 선형 함수로 나타내는 미분 방정식을 도입하였 다. 저자는 각 유전자발현량의 변화율이 양의 방향인 지 음의 방향인지를 알아내는 것, 즉 정확한 변화량을 모르더라도 증가하는지 감소하는 지를 알아내는 것은 비교적 쉽다고 생각하였다. 이 가정에 의하여 선형 방 정식의 계수를 알아내기 위해 선형 프로그래밍 기술 을 적용할 것을 제안하였다. [Lee 2003]에서는 대사 흐름분석을 위해 의사 정상(pseudo-steady) 상태를 가정하여 대사체의 변화율을 0에 가깝게 놓고 반응 모델을 선형 방정식 시스템으로 회귀하여 모델 인수 를 찾는 데 선형 프로그래밍 바탕의 최적화 기술을 적 용하도록 하였다.
위와 같은 대수 알고리즘 이외에도, 기계 학습 (machine learning) 바탕의 방법도 제안되어 왔다.
그러한 업적 중의 하나는 유전자 조절 네트워크를 부 울 네트워크(Boolean network)의 형태로 추론하는 REVEAL(REVerse Engineering Algorithm) 프로 그램이다. 여기서는 유전자의 활동 수준을 두 가지 상 태, 즉 on과 off로 놓는다. 즉 어떠한 유전자의 조합이 한 유전자의 다음 단계 활동 수준을 결정하는가를 알 아내기 위해 그들간의 상호정보량(mutual infor- mation)을 활용하는 것이다. 이러한 조합이 밝혀지게 되면 유전자 조절 네트워크를 그릴 수 있고, 이 때에 각 정점은 유전자를 나타내며, AND, OR, NOT과 같 은 이진 관계가 그 유전자들을 연결하는 연결자 역할 을 하게 된다. 이후의 연구자들이 지적했듯이, 유전자 활동 수준이 두 가지라는 것과, 상태 전이가 동기화되 어 있다는 두 가지의 가정을 했음에도 불구하고, 이 알고리즘은 유전자 조절 네트워크를 자동으로 추론하 는 최초의 명시적 공식화 과정이라고 볼 수 있다.
베이지안 네트워크(Bayesian network)는 관찰된 사건을 통하여 모델의 확률적 특성을 알아내는데 사 용되어 왔다. 확립된 통계적 이론과 잡음에 강인하다 는 특성 때문에 오래전부터 기계 학습 및 통계 분야에 서 베이지안 네트워크를 추론하는 기술이 활발히 연 구되어 왔다. [Friedman 2000]에서는 마이크로어레 이 데이터로부터 유전자 조절 네트워크를 추론하는 데에 이 기술을 적용하였다. 다른 분야에서와는 달리 유전자 조절 네트워크를 추론하는 데에는 매우 적은 관찰로부터 매우 많은 수의 유전자간 네트워크를 추 론해야 하는 고차원성(dimensionality) 문제가 존재 한다. 그들은 희귀 후보(sparse candidate)이나 모델 평 균 화 (model averaging)와 같 은 경 험 규 칙 (heuristic)을 적용하여 고차원성 문제를 완화하고자 시도했다. 이러한 통계적 경험규칙을 이용하는 방법 이외에도, ChIP(Chromatin Immuno-Precipitation) 분석으로부터 얻어진 단백질-DNA 결합 정보나 프로 모터 서열 일치와 같은 생물학 지식을 통합하여 유전 자 간에 생물학적으로 가능성 있는 결합만을 걸러내 는 방법이 제안되기도 하였다. 특히 유전자에 대한 섭 동(perturbation) 실험이 가능한 경우에 좀 더 신뢰성 있는 구조 추론이 가능하였다.
MONET(Modularized NETwork Learning)은 고차원성 문제를 완화하기 위하여 분할해결(divide- and-conquer) 접근 방식을 도입하였다. 첫째로, MONET은 전체 유전자를 생물학적 주석과 발현 데 이터라는 두 가지 보완적인 정보를 바탕으로 서로 겹 치는(overlapping) 형태의 모듈들로 나누게 된다. 두 번째로, 각각의 모듈에 대해 베이지안 네트워크를 추 론하고, 추론된 서브 네트워크를 하나의 전체(global) 네트워크로 통합하게 된다. 여기서는 세포 시스템이 국지적으로 상호 작용하는 생물학적 모듈들로 이루어 졌다는 가정을 사용하였으며, 이것은 대부분의 유전 자들이 그들과 다른 모듈에 속한 유전자들 보다는 같 은 모듈에 포함된 유전자들과 밀접하게 연관되어 있 는 경향을 의미한다. 그리하여 모듈 간 관계로 이루어
진 전체 그림뿐만 아니라, 모듈 내의 상세한 관계까지 도 그려낼 수 있게 되었다. 저자들은 MONET가 기 존의 베이지안 네트워크 기반 방식에 대해 두 배 이상 의 정확도를 보이는 것을 실험적으로 입증했다.
다른 분야에서와 마찬가지로, 회귀 트리(regression tree) 역시 네트워크 구조를 추론하는 데에 유용한 방 식인 것으로 판명되었다. [Segal 2003]에서 저자들은 발현 유사도에 따라 유전자를 클러스터화(clustering) 하고 각각의 클러스터에 대하여 이미 알려진 전사 인 자(transcription factor)로 결정 노드(decision node) 를 형성하는 회귀 트리를 구축했다. 그리고 클러스터 의 조성을 반복적으로 조정하면서 회귀 트리의 집합 이 전체 유전자 발현 데이터와 일치하도록 개선해 나 갔다. 이 방법을 적용하기 위해 이미 알려진 전자 인자 정보가 필요하고, 또한 만들어진 네트워크가 그 전사 인자와 다른 유전자 간의 이중 분할(bi-partitioned) 네트워크로 표시된다는 단점에도 불구하고, 이 방법 은 유전자 간의 새로운 관계를 찾아내었고, 그 중 일 부를 실제 시료를 대상으로 한 실험으로 증명하였다.
[Phuong 2004]에서는 전사 결합 모티프의 조합적인 효과를 찾고, 유전자 발현에 좀 더 영향력 있는 모티 프를 구별하기 위해 회귀 트리를 이용하였다.
네트워크 구조 추론을 위하여 광범위한 기술들이 개발되고 있지만, 아직도 개선될 여지는 많이 남아 있 다. 특히 사용자들이 가장 중요하게 지적하는 것들 중 하나는 찾아낸 관계 중 잘못된 예측(false positive)를 예상하는 기술이다. 더욱 정교한 계산을 위한 노력과 더불어 학습 과정에 따른 생물학 분야와의 협력도 절 실히 필요하다.
정량적 동역학 분석
네트워크 구조가 주어지거나 혹은 추론된 이후, 역 공학에서의 다음 단계는 시스템 구조상의 특성이나 동역학적 성질을 분석하여 중요한 회로를 이해하거나, 가상(what-if) 분석을 수행, 혹은 바이오시스템에 내 재된 자연 원칙을 발견하는 것이다. 지난 수십 년간,
시간 변수적인 현상을 이해하는 데에는 비선형 미분 방정식이 사용되어 왔다. 좌변은 특정 관찰물의 변화 율을 나타내고, 우변은 그에 관련한 다른 관찰물의 비 선형 함수로서 방정식을 수립하고 나면, 특정한 초기 값이 주어졌을 때의 시스템 상태의 궤적을 관측할 수 있다. 그 방정식의 특성에 따라, 경계 조건이나 유연성 과 같은 대상 시스템의 더 깊은 특성을 분석할 수도 있다. 최근 들어 끌개(attractor)와 분화(bifurcation) 의 분석이 관심을 끌고 있는데, 왜냐하면 대부분의 경 우 변수 값의 자세한 변화는 해석되기 힘든데 반해, 끌개나 분화는 목적 바이오시스템의 표현형상 상태 전이로 대응될 수 있기 때문이다.
비선형 미분 방정식을 다루는 분야에서 오랜 동안 노력을 거듭한 결과로, 정확한 방정식이 수립되고 적 절한 계수만 주어진다면 매우 정확하게 시스템의 행 동을 이해할 수 있게 되었다. 그렇지만 위의 두 가지 설정은 대부분 경우 생물 내 반응을 모델링하는 것이 불가능하기 때문에, 생물학 회로의 역공학에서는 얻 어내기 어려운 것이며, 관련 계수의 정확한 설정은 더 더욱 어렵다. 이러한 제한을 극복하기 위해 몇몇 근사 (approximation) 기술들이 제안되었다. 그들 중에서 영역별 선형 모델(piecewise linear model)을 이용하 여 정성적 그래프를 얻어내는 방법이 관심을 끌었다.
여기에서의 가정은, 특정 물질의 농도 변화율은 몇몇 유전자의 농도가 특정 범위 내에 들어올 때에 다른 물 질 농도의 선형 함수로 표시될 수 있다는 것이다. 다 른 말로, 그 특정 범위 내에서는 시스템이 그것을 구 성하는 물질 농도의 선형 함수로 나타난다는 것이다.
이 기술을 적용하면, 전체 시스템 상태는 공통 원소를 가지지 않는 영역으로 나누며 그 각각의 영역 내에서 는 시스템이 선형적으로 작동한다. 또한 각 영역들 간 의 상태 전이 다이어그램(state transition diagram) 을 추출하고 상태 전이로 표현되는 시스템 행동을 시 뮬레이션 하는 방법을 제공한다.
미분 방정식을 이용하는 형태의 기술이 내부 물질 의 농도로써 결정론적인 시스템의 행동을 효율적으로
모델링 할 수 있는 반면에, 그러한 농도에 기반한 결 정론적 분석 방법이 적당하지 않는 경우도 많다. 특히 세포 내의 신호 전달 회로와 같은 경우에서는 소량의 분자들이 다른 분자의 활성화를 유발하기 때문에 물 질 농도로써 다루기가 어렵다. 또한 물질간의 상호 작 용은 확률에 바탕을 두기 때문에 확률적인 성질을 보 인다. 그러한 생물 현상 분야를 다루기 위해, 추계적 페트리네트(stochastic Petri net)과 같은 기술들이 제 안되었다. 대규모의 바이오시스템을 고려할 때에 비 록 각각의 작은 부분은 잘 이해되었다 하더라도, 네트 워크 그 자체는 너무나 복잡해서 이해하기 힘들다. 그 리하여 원래 Workflow Management Coalition에 의 해 복잡한 비즈니스 프로세스를 모델링하기 위해 개 발된 워크플로우 개념을 도입하고 시스템 명세의 추 상화 수준(abstraction level)을 제어하기 위해 계층적 페트리네트(hierarchical Petri net)을 이용할 것이 제 안된 바 있다.
논리적 시뮬레이션
Kaufffman이 부울 네트워크로 유전자 조절 네트 워크를 모델링하고 시뮬레이션 하는 곳에 사용할 것 을 제안한 이후로, 부울 네트워크와 그 변형을 바탕으 로 한 많은 기술들이 발전되어 왔다. 정량적 시뮬레이 션과는 달리, 시스템 상태는 이진 상태로 표현되며 그 때의 각 상태는 on과 off이다. 그리고 상태 전이는 항 상 동기화(synchronous) 되어 있으며 부울 논리에 기 반한다. 이러한 형태의 시뮬레이션은 물질 농도의 정 확한 변화량을 표현하거나 연속적 변화를 나타내지는 못하지만, 운동 방정식이나 정확한 인수값 없이, 시스 템 행동을 효율적으로 탐지할 수 있다. 또한, 부울 네 트워크 기반 분석은 대규모의 유전자 조절 시스템에 서 전체적인 특성을 연구하는 쪽으로도 확장되어 왔 다. 끌개, 궤적, 끌개 유역(basin of attractor) 등을 분 석함으로써 유전자 네트워크의 전체적 동역학을 위한 부분 성질들을 연계할 수 있게 되었다. 부울 네트워크 의 두 가지 커다란 단점, 즉 이진 상태와 동기화된 상
태 전이는 일반화된 논리적 네트워크 표현 기법에 의 해 완화되었다. 여기서는 각 상태가 두 가지 이상의 값을 가질 수 있고, 비동기적 상태 전이를 허용한다.
다른 연구자들은 부울 네트워크에 확률적 성질을 부 여하여, 확률적인 상태 전이를 나타내거나 묘사할 수 있게 되었다.
비즈니스 지식 시스템을 모델링 하는 데에 광범위 하게 사용되어 온 If-then 규칙은 바이오시스템을 모 델링하고 시뮬레이션 하는 데에도 사용되어 왔다. 예 를 들어, ‘만일 실험 조건 하에서의 온도와 pH 값이 각각 0~30℃ 및 6~8 내에 들어온다면, 효소의 활성 정도는 0.3 이하가 된다’와 같은 규칙의 집합을 만들 어 낼 수 있는 것이다. 그 규칙들에는 순방향 혹은 역 방향 추론 모두가 적용 가능하다. 통상적인 생산 시스 템 (production system)에서 순방향 추론이 주어진 사실과 규칙에서 나올 수 있는 가능한 결과들을 열거 하는 데에 반해, 역방향 추론은 주어진 상황으로부터 필요한 전제 조건들을 찾아낼 수 있다. 이러한 연구 방식은 다른 것 보다 더 넓은 범위의 생물학적 지식들 다룰 수 있다는 데에서 상대적으로 유리하다. 단백질 과 DNA-단백질 결합과 같은 생물 내에서의 물질들 은 결합된 형태로도 존재하며, 생물체 내의 처리 과정 들은 계층적인 형태로 생각될 수 있는 점으로부터, 합 성 그래프(compound graph) 바탕의 표현 방식이 제 안되었다. 목적 바이오시스템이 합성 그래프 형태로 표현되고 나면, HiLog와 같은 논리 추론 시스템이 순 방향 혹은 역방향 질의에 답하기 위해 사용되었다.
개발된 소프트웨어 도구들
바이오시스템의 모델링과 시뮬레이션에 관하여 많 은 소프트웨어 도구들이 개발되어 왔다. Osprey,
PIMrider, Graphlet, daVinci와 같은 그래프 시각화 도구는 생물 회로를 나타내는데 사용되었다. 그러한 소프트웨어 중 몇몇은 BIND나 DIP과 같은 물질 간 상호작용에 대한 데이터베이스와 TRANSFAC와 같 은 기능에 관한 데이터베이스와의 연결 기능도 제공 하였다. GEPASI, E-Cell, Cellerator, MetaFluxNet 및 VitualCell과 같은 수십 가지의 생물 회로 시뮬레이션 프로그램들은 시스템 생물학자로부터 점점 더 많은 주의를 끌어왔다. Systems Biology Workbench, Cytoscape, Genome Object Net과 같은 통합 플랫폼 의 개발도 진행되어 다양한 도구들이 통일된 환경 내 에서 서로 통합되어, 복잡한 기능을 구현할 수 있게 되었다.
결론
본 고에서는 바이오시스템 역공학에 관한 다양한 기술들을 간단히 소개하였다. CMC, 부울네트워크, 베 이지안 네트워크 기술 등 대표적인 네트워크 구조 추 론 기법에 대해 기술하였다. 그리고 대상 바이오시스 템에 대한 여러 가지 동역학 분석 기법에 대해서도 설 명하였으며 기 개발되어 현장에서 사용되고 있는 관 련 소프트웨어 도구들을 소개하였다. 시스템 생물학 분야의 중요한 요소기술로서 향후 점점 그 필요성이 높아질 것이라고 생각하며, 대용량 실험기술의 발전 및 바이오정보의 축적과 함께 그 유용성이 증진되어 바이오 산업현장에서 널리 활용될 것으로 기대한다.
본 논문은 과학기술부 시스템 생물학 연구개발 사업의 지원으로 수행되었음. 연구 및 전산 시설은 정문술 바이오정보전자센터와 IBM SUR 프로그램 의 도움을 받았음.