KR100987026B1 - 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체 - Google Patents

매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체 Download PDF

Info

Publication number
KR100987026B1
KR100987026B1 KR1020080127747A KR20080127747A KR100987026B1 KR 100987026 B1 KR100987026 B1 KR 100987026B1 KR 1020080127747 A KR1020080127747 A KR 1020080127747A KR 20080127747 A KR20080127747 A KR 20080127747A KR 100987026 B1 KR100987026 B1 KR 100987026B1
Authority
KR
South Korea
Prior art keywords
macro
gene
cluster
sample
generated
Prior art date
Application number
KR1020080127747A
Other languages
English (en)
Other versions
KR20100069141A (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 KR1020080127747A priority Critical patent/KR100987026B1/ko
Publication of KR20100069141A publication Critical patent/KR20100069141A/ko
Application granted granted Critical
Publication of KR100987026B1 publication Critical patent/KR100987026B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B25/00ICT specially adapted for hybridisation; ICT specially adapted for gene or protein expression
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B40/00ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding

Abstract

본 발명은 기능적으로 상관관계가 높은 유전자 집합으로 이루어진 바이클러스터를 도출하는 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체를 개시한다. 본 발명은 (a) 마이크로어레이 데이터에서 적어도 하나의 유전자를 포함하는 유전자 샘플을 추출하며, 추출된 유전자 샘플에 따른 유전자 발현값이 적어도 하나의 비닝(binning) 기준 범위에 속하는지 여부를 판별하는 단계; (b) 판별 결과로 유전자가 비닝 기준 범위에 속하면, 비닝 기준 범위에 속하는 유전자의 집합 및 유전자가 속하는 유전자 샘플을 결합하여 바이클러스터 형태의 매크로 클러스터들을 생성하는 단계; 및 (c) 생성된 매크로 클러스터들 중에서 소정 조건에 부합하는 매크로 클러스터들을 추출하고, 추출된 매크로 클러스터들을 노드로 하는 탐색 트리를 생성하며, 생성된 탐색 트리를 이용하여 상기 조건에 부합하는 매크로 클러스터를 추가 생성하는 단계를 포함하는 것을 특징으로 하는 매크로 클러스터링 방법을 제공한다. 본 발명에 따르면, 상관관계를 갖는 유전자 집합을 통해 유전자 제어 네트워크(gene regulatory network)를 밝히는 데에 기여할 수 있다.
바이클러스터링(biclustering), 바이클러스터(bicluster), 마이크로어레 이(microarray), 부가 패턴(additive pattern), 배가 패턴(multiplicative pattern), 데이터 마이닝(data mining), 유전자 표현형 데이터 분석

Description

매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체 {Method and apparatus for macro clustering, and the recording media storing the program performing the said method}
본 발명은 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체에 관한 것이다. 보다 상세하게는, 기능적으로 상관관계가 높은 유전자 집합으로 이루어진 바이클러스터(bicluster)를 도출하는 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체에 관한 것이다.
바이클러스터링(biclustering)은 마이크로어레이(microarray) 행렬 데이터에서 서로 간에 밀접한 상관관계를 갖는 유전자 집합과 이 유전자 집합의 기능이 발현되는 샘플 집합으로 구성되는 부분 행렬을 검색하는 데이터 마이닝 기법을 통칭한다. 이때, 검색된 부분 행렬은 바이클러스터(bicluster)라고 한다.
바이클러스터는 패턴의 형태에 따라 부가 패턴(additive pattern), 배가 패턴(multiplicative pattern) 등으로 구분한다. 도 1은 패턴에 따른 유전자 오브젝트와 샘플의 일실시예 그래프이다. 도 1에서 각각의 유전자 오브젝트는 ■, ×, ● 등으로 표시하였으며, 샘플은 a~j로 표시하였다. 또한, 도 1에서 x축 값들은 유전자 샘플을 표시하며, y축 값들은 유전자 발현값을 표시한다. 도 1을 참조하면, (a)에서는 유전자 간에 특정 패턴을 보이지 않으나, (b)에서는 샘플 "bchje"에서 유전자 간에 additive pattern을 보이고 있다. 또한, (c)에서도 샘플 "fdagi"에서 multiplicative pattern을 보이고 있다.
바이클러스터링 프로세스는 NP-hard(Nondeterministic Polynomial-time hard)임이 증명되었고, 이에 따라 지금까지 제시된 많은 바이클러스터링 알고리즘은 대부분 휴리스틱한 방법이나 확률통계적 접근 방식을 취하고 있다. 지금까지 제시된 각 알고리즘의 장단점이 모두 다르고 각 알고리즘이 밝혀낼 수 있는 패턴 또한 다양한 것으로 알려지고 있는데, 이러한 기존의 바이클러스터링 알고리즘이 가지는 문제점은 다음과 같다.
1. additive pattern 또는 multiplicative pattern을 찾는 바이클러스터링 알고리즘
바이클러스터의 샘플 집합에 대해서 바이클러스터의 유전자 집합에 나타난 각 유전자의 표현값 변화를 그래프로 표현할 수 있으며, 이런 그래프를 유전자 그래프라고 한다. 각 유전자 그래프가 서로 간에 일정 오차 범위 내에서 일정한 거리만큼 떨어져 있을 때, 각 그래프는 additive pattern을 형성한다고 말한다. 도 1의 (b)가 그 예이다. 또한, 마이크로어레이 데이터의 모든 유전자 표현값에 로그값을 적용하여 바이클러스터를 구할 경우, 그 패턴이 additive 경향을 보인다면 이때의 그래프는 multiplicative pattern을 형성한다. 도 1의 (c)가 그 예이다. 이러한 패 턴을 찾는 대부분의 바이클러스터링 기법은 트리를 구성해 나가면서 additive pattern 또는 multiplicative pattern을 유지하며 바이클러스터를 키워나간다.
Y. Cheng과 G.M. Church가 "Proc. 8th Int'l Conf. Intelligent Systems for Molecular Biology, 2000, pp. 93-103."에 발표한 "Biclustering of Expression Data"에 따르면, δ-biclustering은 바이클러스터를 찾기 위해서 서브 매트릭스의 mean squared residue를 계산한다. 그리고, 계산 결과로부터 additive pattern 또는 multiplicative pattern을 찾게 된다. 그러나, 이 알고리즘은 노이즈를 많이 허용하지 않는다는 문제점이 있다. 노이즈를 많이 허용하지 않는다면 노이즈가 많이 섞여 있는 마이크로어레이 데이터에 대해서 숨겨진 바이클러스터를 용이하게 도출하지 못한다. 또한, 이 알고리즘에서는 바이클러스터를 찾은 이후 마이크로어레이 데이터에서 찾은 바이클러스터의 부분만큼을 임의의 실수로 채워 넣는다. 따라서, 맨처음 찾은 바이클러스터 이후 서치되는 바이클러스터는 그 품질이 낮으며, 결과적으로 바이클러스터들 간의 오버래핑도 허용하지 않는다.
H. Wang, W. Wang, J. Yang 및 P. S. Yu가 "Proc. ACM SIGMOD Int'l. Conf. Management of Data, 2002, pp. 394-405."에 발표한 "Clustering by Pattern Similarity in Large Data Sets"에 따르면, p-Cluster는 모든 행(row) 쌍과 모든 열(column) 쌍을 고려하여 MDS라 불리는 최대 클러스터(maximal cluster)를 서치한다. 이후, 행 쌍 MDS와 열 쌍 MDS를 각각 프루닝하고 적당한 프리픽스 트리(prefix tree) 구조(ex. binary prefix tree)에 대입시켜 바이클러스터를 구해 나간다. 그러나, 이 알고리즘도 위의 경우와 마찬가지로 노이즈를 많이 허용하지 않는다는 단 점이 있다.
L. Zhao와 M. J. Zaki가 "Proc. ACM SIGMOD Int'l. Conf. on Management of data, 2005, pp. 694~705."에 발표한 "triCluster : An Effective Algorithm for Mining Coherent Clusters in 3D Microarray Data"에 따르면, Tri-Cluster는 3차원 마이크로어레이 데이터에 대해서 처음으로 데이터 마이닝을 시도하였다. 이 알고리즘은 사용자 입력값 ε 내로 비슷하게 변화하는 발현값을 갖는 유전자 집합을 노드로 하는 깊이 우선 탐색 트리(depth first search trees)를 만들어서 바이클러스터를 찾아낸다. 그런데, 만약 ε이 너무 크다면 깊이 우선 탐색 트리가 지나치게 비대해진다. 또한, 반대로 ε가 너무 작다면 허용 노이즈가 너무 작게 되는 문제점이 발생한다. 또한, 이 알고리즘의 시간 복잡도는 샘플의 개수에 대해서도 지수적으로 증가하는 문제점이 있다.
X. Xu, Y. Lu, A. K. H. Tung 및 W. Wang이 "Proc. 22nd IEEE Int'l. Conf. on Data Engineering, 2006, pp. 89-99."에 발표한 "Mining Shifting-and-Scaling Co-Regulation Patterns on Gene Expression Profiles"에 따르면, reg-Cluster는 dij를 두 조건(ci, cj) 사이의 유전자 발현값의 차이로 정의하고 d01과 dij 사이의 유전자 발현값의 비율이 ε 이내인 유전자들을 찾아낸다. 그런데, 적당한 ε를 찾는다는 것은 매우 어려운 일이다. 그 이유는, 만약 ε가 너무 크다면 바이클러스터의 유전자 집합은 너무 많은 거짓 양성 오류를 가지게 되기 때문이며, 반대로 ε가 너무 작다면 유전자 집합이 너무 많은 거짓 음성 오류를 가지게 되기 때문이다. 또 한, 이 알고리즘은 Tri-Cluster와 마찬가지로 깊이 우선 탐색 트리를 형성한다. 깊이 우선 탐색 트리는 레벨이 늘어남에 따라서 지수적으로 커진다. 따라서, 깊이 우선 탐색 트리를 만드는 알고리즘(즉, reg-Cluster, Tri-Cluster 등)의 공통적인 문제점은 생성된 바이클러스터들이 지나치게 많다는 것이다. 더욱 문제가 되는 것은 이 바이클러스터들이 서로 약간씩만 다르다는 것이다. 이 많은 바이클러스터를 모두 검사해서 그 중 일부만 선택한다는 것은 매우 어려운 일이다.
한편, 이상 언급된 알고리즘들은 모두 의미있는 패턴을 찾기에는 불충분한 노이즈 레벨을 허용하는 문제점도 가지고 있다.
한편, 기존의 알고리즘 중에는 마이크로어레이 데이터에서 그 발현값이 모두 additive하면서 multiplicative한 패턴을 띄는 유전자의 집합 및 그 샘플의 집합을 찾아내는 알고리즘도 있었다. 그러나, 이 알고리즘은 마이크로어레이 데이터에서 샘플의 순서가 바뀔 경우 항상 같은 결과를 내지 않는다는 단점이 있으며, 유전자 발현값과 예상 노이즈 자체만으로 클러스터링을 하기 때문에 발현값에 의존하지 않는 패턴을 보이는 유전자들을 클러스터링할 수 없는 단점도 가지고 있다.
2. 정렬된 시퀀스를 유지하여 패턴을 찾는 바이클러스터링 알고리즘
A. Ben-Dor, B. Chor, R. Karp, 및 Z. Yakhini가 "Proc. 6th Int'l Conf. Computacional Biology, 2002, pp. 49-57."에 발표한 "Discovering local structure in gene expression data : The order-preserving submatrix problem"에 따르면, OPSM은 각 행에 대해서 유전자 발현값을 정렬한 후 각 열에 대해서 적당한 연산을 적용한 마이크로어레이 행렬의 부분 행렬로부터 바이클러스터가 도출된다. OPSM은 다른 알고리즘보다 GO 검증 결과가 우수한 장점이 있으나, 한번 실행할 때마다 최고의 결과를 가진 하나의 바이클러스터만을 찾아내기 때문에 다양한 바이클러스터를 찾지 못하는 문제점이 있다. 또한, 이 알고리즘은 마이크로어레이 데이터의 숨겨진 패턴을 놓칠 위험을 가지고 있다.
J. Liu와 W. Wang이 "Proc. IEEE Int'l. Conf. on Data Mining, 2003, pp. 187-194."에 발표한 "Op-cluster : Clustering by tendency in high dimensional space"에 기재된 OP-Cluster, B. J. Gao, O. L. Griffith, M. Ester, 및 S. J. M. Jones가 "Proc. 12th ACM SIGKDD 2006, pp. 922-928."에 발표한 "Discovering significant OPSM subspace clusters in massive gene expression data"에 기재된 KiWi 등에 따르면, OPSM과는 부분적으로 다른 알고리즘을 사용하고 있으나 바이클러스터에 대한 정의는 OPSM의 경우와 같다. 따라서, 이미 언급하였듯이 이 알고리즘들은 순서가 지켜지지 않으면서 생물학적으로 의미있는 패턴을 놓칠 위험을 가지고 있다.
이상에서 언급한 내용을 종합하면 기존의 바이클러스터링 알고리즘이 가지는 문제점은 다음과 같이 요약된다. 첫째, 의미있는 패턴을 찾기에는 불충분한 노이즈 레벨을 허용함으로써 미시적인 패턴이 불성립하는 많은 유전자를 놓칠 가능성이 있다. 둘째, 큰 마이크로어레이 데이터에 대해서는 지수적인 시간 복잡도를 가진다. 세째, 마이크로어레이 데이터에 숨겨진 바이클러스터 중 극히 일부분만을 찾아내거나, 중복의 정도가 매우 큰 다수의 바이클러스터를 찾아내는 오류를 범한다.
본 발명은 상기한 문제점을 해결하기 위해 안출된 것으로서, 바이클러스터를 노드로 갖는 넓이 우선 탐색 트리를 구축해 나가면서 새로운 바이클러스터를 찾아나가는 매크로 클러스터링 방법 및 그 장치, 상기 방법을 구현하는 프로그램이 기록된 기록매체를 제공함을 목적으로 한다. 이를 위해 본 발명은 효율적인 범위 계산 방법인 비닝 알고리즘, 및 트리 구조와 큐 저장 구조를 구비하는 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체를 제공함을 목적으로 한다.
또한, 이를 통해 본 발명은 마이크로어레이 데이터의 노이즈 레벨이 높더라도 숨어있는 높은 기능적 상관관계 신뢰도를 갖는 바이클러스터를 도출하는 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체를 제공함을 목적으로 한다. 또한, 본 발명은 마이크로어레이 데이터에서 오버래핑된 많은 바이클러스터 또는 상호간에 중복되지 않으며 다양한 바이클러스터를 찾아내는 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체를 제공함을 목적으로 한다.
본 발명은 상기한 목적을 달성하기 위해 안출된 것으로서, (a) 마이크로어레이 데이터에서 적어도 하나의 유전자를 포함하는 유전자 샘플을 추출하며, 상기 추출된 유전자 샘플에 따른 유전자 발현값이 적어도 하나의 비닝(binning) 기준 범위 에 속하는지 여부를 판별하는 단계; (b) 상기 판별 결과로 상기 유전자가 상기 비닝 기준 범위에 속하면, 상기 비닝 기준 범위에 속하는 상기 유전자의 집합 및 상기 유전자가 속하는 상기 유전자 샘플을 결합하여 바이클러스터 형태의 매크로 클러스터들을 생성하는 단계; 및 (c) 상기 생성된 매크로 클러스터들 중에서 소정 조건에 부합하는 매크로 클러스터들을 추출하고, 상기 추출된 매크로 클러스터들을 노드로 하는 탐색 트리를 생성하며, 상기 생성된 탐색 트리를 이용하여 상기 조건에 부합하는 매크로 클러스터를 추가 생성하는 단계를 포함하는 것을 특징으로 하는 매크로 클러스터링 방법을 제공한다.
바람직하게는, 상기 (c) 단계는 더이상 상기 조건에 부합하는 매크로 클러스터가 추가 생성되지 않거나, 상기 추가 생성된 매크로 클러스터에 포함되는 상기 마이크로어레이 데이터의 부분 행렬 데이터 값이 상기 추가 생성된 매크로 클러스터에 포함되는 상기 유전자의 개수보다 작거나 같으면 상기 매크로 클러스터의 추가 생성을 종료한다.
바람직하게는, 상기 (a) 단계는 (aa) 상기 마이크로어레이 데이터의 각 열을 정규화시키며, 상기 정규화로부터 상기 유전자 샘플을 추출하는 단계; (ab) 상기 유전자 발현값으로부터 최소값과 최대값을 구하고, 상기 최소값과 상기 최대값 사이를 범위로 하는 적어도 하나의 상기 비닝 기준 범위를 생성하는 단계; 및 (ac) 상기 (aa) 단계에서 추출된 유전자 샘플에 포함되는 상기 유전자 발현값이 상기 (ab) 단계에서 생성된 비닝 기준 범위에 비닝하는지 여부를 판별하는 단계를 포함한다.
바람직하게는, 상기 (c) 단계에서 상기 탐색 트리를 생성하는 단계는 상기 유전자 샘플의 개수가 소정개인 제1 매크로 클러스터 및 상기 제1 매크로 클러스터에 포함된 유전자 집합을 모두 포함하며 상기 제1 매크로 클러스터보다 상기 유전자 샘플의 개수가 더 많은 제2 매크로 클러스터를 이용하여 상기 탐색 트리를 생성한다. 더욱 바람직하게는, 상기 (c) 단계에서 상기 탐색 트리를 생성하는 단계는 (ca) 상기 생성된 매크로 클러스터들을 노드로 하는 트리를 생성하는 단계; (cb) 적어도 하나의 우선순위 큐를 이용하여 상기 생성된 트리의 레벨마다 프루닝을 수행하는 단계; 및 (cc) 상기 프루닝을 통하여 상기 제1 매크로 클러스터를 부모 노드로 하고 상기 제2 매크로 클러스터를 자식 노드로 하는 상기 탐색 트리를 구축하는 단계를 포함한다.
바람직하게는, 상기 (c) 단계에서 상기 소정 조건에 부합하는 매크로 클러스터들을 추출하는 단계는 (ca') 상기 생성된 매크로 클러스터가 상기 마이크로어레이 데이터의 전체 유전자 샘플 중 일부만을 포함하면, 포함하지 않는 적어도 하나의 상기 유전자 샘플을 이용하여 상기 매크로 클러스터가 다른 매크로 클러스터에 대해 가지는 유사도 값을 측정하는 단계; 및 (cb') 상기 측정 결과로부터 상기 소정 조건에 부합하지 않는 매크로 클러스터를 제거시켜 상기 소정 조건에 부합하는 매크로 클러스터들을 추출하는 단계를 포함한다. 더욱 바람직하게는, 상기 (cb') 단계는 상기 소정 조건으로 매크로 클러스터들 중 상기 유전자 집합의 크기가 최대가 아니라는 조건을 이용한다.
바람직하게는, 상기 (cb) 단계는 상기 유전자 집합의 크기를 우선순위 측정 함수로 하는 상기 우선순위 큐를 이용하여 상기 프루닝을 수행한다. 또는, 상기 (cb) 단계는 상기 우선순위 큐를 2개 이용한다.
바람직하게는, 상기 (a) 단계는 상기 유전자 샘플을 추출하기 위한 입력값으로 상기 마이크로어레이 데이터의 전체 유전자 집합과 상기 마이크로어레이 데이터의 전체 샘플 집합을 포함하는 상기 마이크로어레이 데이터, 상기 생성된 매크로 클러스터를 만족하는 유전자의 최소 개수, 상기 생성된 매크로 클러스터를 만족하는 유전자 샘플의 최소 개수, 사용자 입력값, 비교 대상인 두 매크로 클러스터의 유사성 판단 기준값, 우선순위 큐의 개수, 및 상기 우선순위 큐의 크기 중 적어도 하나를 입력한다.
바람직하게는, 상기 (c) 단계에 따라 생성되는 매크로 클러스터들은 상기 생성된 탐색 트리에서의 레벨이 상기 (b) 단계에서 생성된 매크로 클러스터를 만족하는 상기 유전자 샘플의 최소 개수 이상인 것을 포함한다.
바람직하게는, 상기 (b) 단계는 아래 조건을 만족하는 클러스터를 상기 매크로 클러스터로 생성한다.
[조건]
C = (O, T)일 때,
1) 임의의 범위 R에 대해서, T의 샘플 하에서 O의 모든 유전자의 발현값이 같은 R에 포함됨
2) |O| ≥ mg, |T| ≥ ms
상기에서, C는 상기 매크로 클러스터, O는 상기 마이크로어레이 데이터의 전 체 유전자 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, T는 상기 마이크로어레이 데이터의 전체 샘플 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, mg는 상기 생성된 매크로 클러스터를 만족하는 유전자의 최소 개수, ms는 상기 생성된 매크로 클러스터를 만족하는 유전자 샘플의 최소 개수이다.
바람직하게는, 상기 (b) 단계는 아래 조건을 만족하는 상기 매크로 클러스터를 적어도 하나 생성하며, 최초에 적어도 하나의 상기 유전자 집합과 1개의 상기 유전자 샘플로 이루어진 상기 매크로 클러스터를 생성한다.
[조건]
C = (O, T)에서 |T| = p를 만족함
상기에서, C는 p-MAC, p는 상기 유전자 샘플의 개수이다.
바람직하게는, 상기 (cb) 단계에서의 상기 2개의 우선순위 큐 중에서 적어도 하나는 아래 수학식을 우선순위 측정 함수로 설정한다.
[수학식]
우선순위 측정 함수 = |O| × (n - last)
상기에서, O는 상기 마이크로어레이 데이터의 전체 유전자 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, n은 상기 생성된 매크로 클러스터에 포함되는 유전자 샘플의 최대 개수, last는 T의 마지막 샘플의 인덱스, T는 상기 마이크로어레이 데이터의 전체 샘플 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터이다.
바람직하게는, 상기 (c) 단계는 (ca'') 상기 p가 1일 때, |T| ≥ mg를 만족하는 p-MAC이 생성되는지 여부를 판별하는 단계; (cb'') 상기 p-MAC이 더 생성된다면, 모든 p-MAC C = (O, T)에 대해서 먼저 특정 샘플 si를 가지는 1-MAC C'' = (O'', {si})를 도출하며, 이후 O' = O ∩ O''와 T' = T ∪ {si}를 만족하는 (p+1)-MAC C' = (O', T')를 도출하는 단계; (cc'') 상기 C'가 |T'| ≥ mg를 만족하면 상기 C'를 제1 우선순위 큐 또는 제2 우선순위 큐에 저장하며, 상기 C'가 |T'| ≥ mg를 만족하지 않으면 두 매크로 클러스터의 유사성 판단 기준값에 의해 두 큐에 저장된 (p+1)-MAC를 제거하는 단계; (cd'') (p+1) ≥ ms이면 상기 제1 우선순위 큐에 저장된 모든 (p+1)-MAC과 상기 제2 우선순위 큐에 저장된 모든 (p+1)-MAC을 출력하는 단계; (ce'') 상기 두 큐를 비우는 단계; 및 (cf'') 상기 p를 p+1로 설정하는 단계를 포함하며, 상기 p는 상기 유전자 샘플의 개수, 상기 T는 상기 마이크로어레이 데이터의 전체 샘플 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, 상기 mg는 상기 생성된 매크로 클러스터를 만족하는 유전자의 최소 개수, 상기 p-MAC은 상기 유전자 샘플의 개수가 p인 매크로 클러스터, 상기 O는 상기 마이크로어레이 데이터의 전체 유전자 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, 및 상기 ms는 상기 생성된 매크로 클러스터를 만족하는 상기 유전자 샘플의 최소 개수인 것을 특징으로 한다.
바람직하게는, 상기 (ca') 단계에서 측정된 유사도 값은 아래 수학식으로부터 도출된다.
[수학식]
max(|O|/|O1|,|O|/|O2|) ≥ rt
상기에서, max(|O|/|O1|,|O|/|O2|)는 두 p-MAC을 C1 = (O1, T1), C2 = (O2, T2)라고 하고 유전자 집합 O = O1 ∩ O2 라고 할 때 상기 C1 와 상기 C2 사이의 유사도, p-MAC은 상기 유전자 샘플의 개수가 p인 매크로 클러스터, O는 상기 매크로 어레이 데이터의 전체 유전자 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, T는 상기 마이크로어레이 데이터의 전체 샘플 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, rt는 두 매크로 클러스터의 유사성 판단 기준값이다.
바람직하게는, 상기 (c) 단계는 상기 생성된 탐색 트리로 넓이 우선 탐색 트리를 이용한다.
바람직하게는, 상기 매크로 클러스터링 방법은 단백질의 생물학적 기능 연관성을 갖는 바이클러스터를 도출하여 암 환자의 기수를 판별하는 용도로 사용된다.
또한, 본 발명은 마이크로어레이 데이터에서 적어도 하나의 유전자를 포함하도록 추출된 유전자 샘플에 따른 유전자 발현값이 적어도 하나의 비닝(binning) 기준 범위에 속하는지 여부를 판별하는 비닝 판별부; 상기 판별 결과로 상기 유전자가 상기 비닝 기준 범위에 속하면, 상기 비닝 기준 범위에 속하는 상기 유전자의 집합 및 상기 유전자가 속하는 상기 유전자 샘플을 결합하여 바이클러스터 형태의 매크로 클러스터들을 생성하는 매크로 클러스터 생성부; 및 상기 생성된 매크로 클 러스터들 중에서 소정 조건에 부합하는 매크로 클러스터들이 도출되면, 상기 도출된 매크로 클러스터들을 노드로 하는 탐색 트리를 생성하며, 상기 매크로 클러스터 생성부와 연동하여 상기 조건에 부합하는 매크로 클러스터를 추가 생성되면 상기 추가 생성된 매크로 클러스터를 상기 생성된 탐색 트리에 반영시키는 탐색 트리 생성부를 포함하는 것을 특징으로 하는 매크로 클러스터링 장치를 제공한다.
본 발명에 따르면 다음 효과를 얻을 수 있다. 첫째, 고가의 물리적인 마이크로어레이 실험 없이 기존의 GEO (Gene Expression Omnibus, http://www.ncbi.nlm.nih.gov/geo/), ArrayExpress (http://www.ncbi.nlm.nih.gov/geo/) 등과 같이 공개된 마이크로어레이 데이터를 활용하여 생물학적 기능 연관성을 갖는 바이클러스터를 도출할 수 있다. 즉, 마이크로어레이 실험을 모의(simulated)함으로써 생물학적으로 기능 연관성을 갖는 다수의 바이클러스터를 도출할 수 있다.
둘째, 기존 바이클러스터링 방법에 비하여 유전자 발현값에만 의존하지 않는 패턴을 보이는 유전자 집합을 용이하게 찾을 수 있으며, 샘플의 순서에 상관없이 동일한 결과를 도출할 수 있다. 또한, 노이즈가 많은 마이크로어레이 데이터에도 적용 가능하며, 기존보다 많고 다양한 바이클러스터를 도출할 수 있다. 또한, 도출된 바이클러스터는 낮은 거짓 양성 오류 확률을 보이게 되며, 기존보다 효율성이 향상된 마이크로어레이 데이터의 바이클러스터링이 가능하다.
세째, 고가의 마이크로어레이 실험 없이 간단한 생물학적 실험만으로 암환자 의 샘플로부터 바이클러스터의 유전자 집합에 속하는 유전자 발현값을 취득하며, 취득된 유전자 발현값의 패턴을 미리 정해진 바이클러스터의 패턴과 비교하여 암환자의 기수를 판별함으로써 해당 암환자의 치료 방법을 신속하게 결정할 수 있다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.
본 발명에 따른 매크로 클러스터링 방법은 바이클러스터를 노드로 갖는 넓이 우선 탐색 트리를 구축해 나가며 바이클러스터를 찾아나가는 기법으로 구성된다. 트리의 레벨을 p라고 할 때, p는 바이클러스터의 샘플 집합의 크기와 같다. 트리의 노드(바이클러스터)의 유전자 집합은 비슷한 패턴을 갖는 특징을 가지며, 이 노드는 자신의 유전자 집합을 최대한 유지할 수 있는 샘플을 추가한 새로운 바이클러스터들을 자식 노드로 가진다. 한 레벨의 모든 바이클러스터들은 결과 바이클러스터와 후보 바이클러스터를 위한 두 세트의 다중 우선 순위 큐에 저장됨으로써 트리가 일정 크기 이상으로 커지도록 하는 것을 방지하며, 동시에 다양성과 대표성을 보장 한다.
본 발명은 매크로 클러스터링 방법에 관한 것이다. 본 발명에 따른 매크로 클러스터링 방법을 설명하기에 앞서, 매크로 클러스터링(macro clustering)과 매크로 클러스터(macro cluster)에 대해서 설명한다.
매크로 클러스터링은 기능적으로 상관관계가 높은 유전자 집합으로 이루어진 바이클러스터(bicluster)를 도출하는 알고리즘이다. 그리고, 이 알고리즘에 따라 도출된 바이클러스터가 매크로 클러스터이다. 매크로 클러스터링은 다음과 같은 특징을 가진다.
첫째, 거시적 관점에서 봤을 때 비슷한 증감 패턴을 가지는 유전자 집합을 클러스터링하는 방법을 통해서 기존 알고리즘들의 단점을 극복한다. 이에 대해 구체적으로 설명하면 다음과 같다. 매크로 클러스터링은 동적인 크기의 bin을 이용해서 큰 노이즈를 허용한다. 따라서, 기존 알고리즘과 달리 허용 노이즈 정도가 커도 매크로 클러스터링의 시간 복잡도와 공간 복잡도는 지수적으로 증가하지 않는다. 또한, 매크로 클러스터링은 노이즈 레벨에 대하여 견고한 특성을 가진다.
둘째, 다수의 오버래핑이 가능한 유전자 집합을 찾아내며, 찾은 유전자 집합은 그 다양성이 보장된다.
세째, 마이크로어레이의 샘플이나 유전자의 순서에 관계없이 동일한 결과를 도출한다. 이러한 측면에서 볼 때, 매크로 클러스터링은 결정적(deterministic)이라고 할 수 있다.
네째, 기능적 상관관계의 정도가 매우 높은 바이클러스터를 쉽게 찾아낸다. 이 기능적 상관관계의 정도는 GO 데이터베이스를 이용하여 검증 가능하다.
이상 언급한 매크로 클러스터링의 특징들은 후술하는 2가지 방법으로부터 얻을 수 있다. 하나는 각기 다른 성향을 보이는 큰 크기의 유전자 집합을 정확하고 효율적이게 클러스터링하기 위한 동적 크기의 bin으로 비닝(binning)하는 비닝 알고리즘이다. 그리고, 다른 하나는 중간 결과물과 후보 바이클러스터를 저장하는 트리의 효율적인 구성 방식과 독창적인 큐 관리 알고리즘이다.
비닝 알고리즘은 노이즈가 심한 마이크로어레이 데이터에 대해서도 생물학적 의미를 가지는 숨은 바이클러스터를 쉽게 찾아낼 수 있다. 트리 및 큐 구조는 허용 노이즈값을 크게 설정해도 시간 복잡도가 지수적으로 증가하지 않도록 한다. 트리는 넓이 우선 탐색 트리를 기본 골격으로 하나, 효율적인 트리 탐색을 위하여 트리의 각 레벨마다 특정 우선 순위 계산법을 도입한 복수개의 우선 순위 큐를 운영함으로써 프루닝을 수행한다. 우선 순위 큐의 집합에 남아 있는 바이클러스터들은 결과적으로 생물학적 검증 가능한 연관 관계를 가지는 유전자 집합을 포함하며, 서로 간에 많이 중복되지 않으며 그 다양성을 유지할 수 있는 특징을 가진다.
도 2는 본 발명의 바람직한 실시예에 따른 매크로 클러스터링 방법을 도시한 순서도이다. 이하 도 2를 참조하여 설명한다. 먼저, 매크로 클러스터링 알고리즘을 설명하기에 앞서, 기호 및 패턴을 정의한다. 기호 및 패턴에 대한 정의는 아래 표 1의 내용과 같다.
Figure 112008086351915-pat00001
더불어, 매크로 클러스터링 알고리즘을 설명하기에 앞서, 각 모델에 대해서도 정의하면 다음과 같다.
A. 정규화
실험적 편차가 없게 하기 위해 마이크로어레이의 각 샘플마다 전체 유전자 집합 G를 정규화한다. 정규화를 위해서 각 발현값 xi는 다음의 식에 의해 zi로 변경된다.
Figure 112008086351915-pat00002
B. 유전자 발현값의 범위 및 비닝(binning)
Ri는 [mini, maxi)로 정의되는 범위이며, 사용자 입력값 a와 d에 대해서 mini와 maxi는 다음과 같이 계산된다.
1) i > 0 : mini = a x (i - 1)d, maxi = a x (i +1)d
2) i = 0 : mini = -a, maxi = a
3) i < 0 : mini = -a x (1 - i)d, -maxi = a x (-1 - i)d
정규화된 유전자 발현값이 임의의 범위 R에 속한다면 유전자는 R에 binning된다고 한다.
C. 매크로 클러스터(macro cluster)
C = (O, T)가 다음의 조건을 만족할 때 C를 매크로 클러스터라고 한다.
1) 임의의 범위 R에 대해서, T의 샘플 하에서 O의 모든 유전자의 발현값이 같은 R에 포함됨.
2) |O| ≥ mg, |T| ≥ ms.
도 3에 도시된 일실시예(10 x 5 마이크로 데이터)로부터 사용자 입력값 a와 d를 각각 0.1와 2.0으로 했을 때, 정의된 범위에 의해서 계산되는 각 범위와 이때의 각 샘플 하에서 정규화된 유전자들이 계산된 각 범위에 비닝된 결과는 도 4에 도시된 바와 같다. 도 4에서 유전자 g6과 g9는 샘플 s0, s1, s2, s4 하에서 같은 성향을 보임을 확인할 수 있다. 따라서, 상기 2) 조건에 따라서 C = ({s0, s1, s2, s4}, {g6, g9})가 매크로 클러스터가 된다.
D. p-MAC
매크로 클러스터 C = (O, T)의 |T| = p일 때, C를 p-MAC이라고 한다. 여기서, p는 C의 샘플 개수를 의미한다. 예를 들어, 샘플의 수 |T| = 4일 때, C는 4-MAC이 된다. 상기 C.의 2) 조건 즉, |O| ≥ mg, |T| ≥ ms에 따르면, 1-MAC은 존재할 수 없다. 그러나, 본 발명의 실시예에서는 유전자 집합과 샘플 1개로 이루어진 1-MAC을 정의하기로 한다. 1-MAC은 비닝된 각 유전자 집합과 그 때의 샘플로 이루어진다. 예컨대, 도 4에서 도출될 수 있는 1-MAC은 ({s0}, {g3, g6}), ({s0}, {g3, g6, g7, g9}), ({s0}, {g7, g9}), ({s0}, {g2}), ..., ({s1}, {g0, g2, g7}), ... 등이 된다.
E. p-MAC 간의 유사도
두 p-MAC C1 = (O1, T1)과 C2 = (O2, T2)가 있다고 하면, 유전자 집합 O = O1 ∩ O2 일 때, C1 와 C2 사이의 유사도는 max(|O|/|O1|,|O|/|O2|)로 표현되며, 이때 max(a, b)는 a ≥ b일 때, a를 반환하는 함수이다. max(|O|/|O1|,|O|/|O2|) ≥ rt일 때, 두 p-MAC이 유사하다고 말한다. 샘플 집합이 아닌 유전자 집합의 다양성이 필요하기 때문에, 유전자 집합의 유사도를 측정하는 것은 타당하다. 예컨대, 두 p-MAC C1 의 O = {g0, g2, g3, g5} 이고, C2 의 O = {g1, g2, g3, g4, g6} 이라고 할 때, C1과 C2 간의 유사도는 0.5이다. 이 경우 rt가 0.4라면 C1과 C2는 유사하다고 할 수 있고, 0.6이라면 유사하다고 할 수 없다. 그러므로, rt가 높을수록 두 매크로 클러스터들이 유사하지 않을 확률이 높아지고, 따라서 많은 결과가 생성된다고 할 수 있다.
이하, 도 2를 참조하여 매크로 클러스터링 방법을 설명한다. 입력값 및 출력값은 다음과 같다(S200).
입력값 : D=(G, S)의 마이크로어레이 데이터, mg, ms, a, d, rt, qnum
출력값 : p-MAC 집합 (p ≥ ms)
제1 단계에서, 마이크로어레이 데이터의 각 열을 정규화시킨다(S205). 이후, 마이크로어레이 데이터의 정규화된 각 열에 대해서 S210 단계 ~ S220 단계를 반복한다. S210 단계에서는 최소값의 범위 ∈ Rmin, 최대값의 범위 ∈ Rmax 인 min, max를 차례대로 구하여 min < i < max 인 i에 대해서 Ri를 모두 계산한다. 이후 정규화된 각각의 유전자 발현값이 Ri에 비닝하는지를 판별한다(S215). 이로부터 S215 단계에서는 Ri에 비닝하는 유전자 발현값을 가지는 유전자 집합을 추출한다. 이후 해당 열의 샘플이 si라고 할 때, C = (각 범위에 해당하는 유전자 집합, {si})을 1- MAC으로 결정한다(S220).
매크로 클러스터는 임의의 샘플의 집합 및 이 샘플의 집합 하에서 비슷한 움직임을 보이는 유전자 집합이다. 매크로 클러스터를 찾아내기 위해서 가장 먼저 수행하는 프로세스는 1-MAC의 집합을 구하는 것이다. 1-MAC 집합을 구하는 방법은 상기 "D." 부분에서 언급하였으므로 여기서는 설명을 생략한다. 도 4를 참조하면, 1-MAC 집합에서 유전자의 개수가 mg보다 작은 1-MAC과 유전자 집합이 다른 유전자 집 합에 포함되는 1-MAC은 제거된다. 따라서, ({s0}, {g3, g6}), ({s0}, {g3, g6, g7, g9}), ({s0}, {g7, g9}), ({s0}, {g2}), ..., ({s1}, {g0, g2, g7}), ...에서, ({s0}, {g2})는 mg = 2일 때 제거되고, ({s0}, {g3, g6}), ({s0}, {g7, g9})은 {g3, g6}에 포함되고 {g7, g9}는 {g3, g6, g7, g9}에 포함되므로 이 역시 제거된다.
모든 1-MAC에 대해서 검사 가능한 샘플을 검사함으로써 2-MAC을 얻어낼 수 있다. 2-MAC에서 3-MAC을 얻어내고, 3-MAC에서 4-MAC을 얻어내는 과정도 이와 같다. 일반적으로 p ≥ 1일 때, 각 p-MAC C = (O, T)에 대해서, 검사 가능한 샘플을 검사함으로써 (p+1)-MAC을 얻어낼 수 있다. 이러한 프로세스는 하나의 p-MAC이 레벨 p의 한 노드인 넓이 우선 트리를 구성해 나가는 것과 같다고 볼 수 있으며, 도 5에 이 프로세스가 도시되어 있다. 도 5의 각 노드는 p-MAC 또는 (p+1)-MAC을 뜻하며, 노드의 이름은 p-MAC 또는 (p+1)-MAC을 얻기 위해 조사해야 하는 샘플을 뜻한다.
이하, p-MAC에서 (p+1)-MAC을 검출하는 방법을 설명한다. 이 방법은 S220 단계에 이어서 S225 단계부터 진행된다.
p ← 1일 경우(S225), |T| ≥ mg인 p-MAC이 더이상 생성되지 않을 때까지 이하 과정을 반복한다(S230). |T| ≥ mg인 p-MAC이 더이상 생성되지 않는다면 매크로 클러스터링 방법은 종료된다.
먼저, 저장된 모든 p-MAC C = (O, T)에 대해서 S235 단계 및 S240 단계를 반 복한다. S235 단계에서는 샘플 si를 가지는 1-MAC C'' = (O'', {si})라고 할 때, O' = O ∩ O'' 이고, T' = T ∪ {si} 인 (p+1)-MAC C' = (O', T')를 생성한다. 이후, S240 단계에서 C'가 |T'| ≥ mg를 만족하면 C'를 결과 우선순위 큐 및 후보 우선순위 큐에 저장한다.
더이상 C'가 |T'| ≥ mg를 만족하지 않는다면(S245), rt에 의해서 두 큐에 저장된 중복된 (p+1)-MAC를 제거한다(S250). 이후, (p+1) ≥ ms라면 결과 우선순위 큐에 저장된 모든 (p+1)-MAC을 출력한다(S255). S255 단계 이후, 후보 우선순위 큐에 저장된 모든 (p+1)-MAC을 저장한다(S260). 이후, 두 큐를 비운다(S265). 그 다음에는 p를 p ← p+1로 설정한다(S270).
p-MAC에서 (p+1)-MAC을 검출하는 방법은 크게 검사 알고리즘과 큐 알고리즘으로 구분할 수 있다.
1. 검사 알고리즘
p ≥ 1일 때 임의의 p-MAC C = (O, T)에 대해서 검사 가능한 샘플을 검사함으로써 (p+1)-MAC C'를 생성할 수 있다. 샘플 sl이 T의 마지막 원소일 때, 검사 가능한 샘플은 l < i를 만족하는 si이다. 예컨대, 3-MAC의 T = {s0, s2, s3} 일 때, 검사 가능한 샘플은 s4, s5, ..., s(n-1) 이 된다.
만약 상기 예시에서 s1 을 검사한다면, 4-MAC Cl = (Ol, Tl)의 Tl = {s0, s2, s3, s1}이 된다. 여기서 또다른 3-MAC이 {s0, s1, s2}를 샘플 집합으로 가질 때, 샘 플 s3 를 조사하는 경우를 생각해 보면, 생성되는 4-MAC C2 = (O2, T2) 의 T2 = {s0, s1, s2, s3} 이다. 이때, Ol = O2 라면, Cl = C2 라고 할 수 있으므로 C2를 생성하는 작업은 중복 검사가 된다. 매크로 클러스터링 알고리즘은 검사하는 샘플의 순서와 상관없이 동일한 샘플 집합에 대해서 동일한 유전자 집합을 생성해낼 수 있다. 즉, 위의 예에서 Ol = O2 가 된다.
이것을 설명하기 위해 예컨대 다음 과정이 진행된다. 즉, 먼저 샘플 s0에서 같은 범위의 유전자들을 고른다. 이후, 이 유전자들이 샘플 s1에서 같은 범위에 있는지 검사하며, 샘플 s1에서 같은 범위의 유전자들을 고른다. 이후, 이 유전자들이 샘플 s0에서 같은 범위에 있는지 검사하여 동일한 유전자 집합을 생성한다. 이와 같은 특성 때문에 매크로 클러스터링 알고리즘은 결정적(deterministic)이라고 할 수 있다. 또한, 검사 가능한 샘플의 인덱스는 샘플 집합의 마지막 샘플의 인덱스보다 커야 한다는 조건은 타당하다.
p-MAC C = (O, T)에서 생성 가능한 (p+1)-MAC C' = (O', T') 이라고 하고, 이 때 검사 가능한 샘플 si을 샘플 집합으로 하는 1-MAC을 C = (O'', {si}) 이라고 하자. 그렇다면 (p+1)-MAC C' = (O', T')의 O' = O ∩ O'' 이고, T' = T ∪ {si} 로 계산될 수 있다. 즉, (p+1)-MAC의 생성은 p-MAC과 1-MAC을 합치는 과정과 같다. 또한, 도출된 (p+1)-MAC은 p-MAC에 비해서 샘플 집합은 더 커지고 유전자 집합은 대체적으로 더 작아지는 특성을 보이게 된다.
도출된 (p+1)-MAC이 더이상 없거나, 도출된 모든 (p+1)-MAC C' = (O', T')가 |T'| ≤ mg를 만족한다면 상술한 바와 같이 프로세스는 종료된다.
유일한 (p+1)-MAC을 얻기 위해서 두 우선 순위 큐 각각의 (p+1)-MAC에 대한 중복 검사를 수행한다. 중복 검사의 제1 단계는 모든 (p+1)-MAC에 대해서 p-MAC 간의 유사도 검사를 통해 유사도 점수를 부여함으로써 유사한 (p+1)-MAC끼리 클러스터링하는 것이다. p-MAC 간의 유사도 검사는 상기 "E."에서 설명한 바, 여기서는 설명을 생략한다.
이후, 제2 단계에서 유사한 (p+1)-MAC의 클러스터에서 유전자 집합의 크기인 |T|가 가장 큰 (p+1)-MAC를 골라낸다. 선택되지 못한 (p+1)-MAC은 일정 정도 이상 중복된 것을 의미하므로 버릴 수 있다. 두 우선 순위 큐를 유지하며 중복 검사를 수행하는 프로세스는 도 6에 도시된 바와 같다.
2. 큐 알고리즘
도 5에 도시된 넓이 우선 트리에서 p가 커질수록 노드의 수는 기하급수적으로 증가한다. 모든 p-MAC의 개수가 r이라고 할 때, 각 p-MAC에 대해서 최대한 n개의 샘플이 조사될 수 있으며, 각 조사 프로세스는 해당 샘플에서 비닝된 유전자 집합의 개수만큼의 p-MAC을 생성할 수 있다. 해당 샘플에서 비닝된 유전자 집합의 개수는 O(m)이므로 최대한 O(mnr)개의 p-MAC이 있다고 할 수 있다.
마이크로어레이가 조금만 커도 메모리의 한계로 인해서 이 많은 p-MAC을 저장할 수 없다. 설사 저장할 수 있다 하더라도 이 모든 p-MAC을 검사하는 데에는 너 무 많은 시간이 소요된다. 그러나, 다음과 같은 사실을 고려할 때 모든 p-MAC을 검사할 필요가 없음을 알 수 있다.
1) 많은 p-MAC이 중복되어 있거나 약간의 차이가 있을 뿐이므로, 유전자 집합이 보다 크고 유일성이 있는 p-MAC에 관심이 더 있다.
2) p' > p 인 p'에 대해서 p'-MAC으로 성장할 수 있는 가능성이 더 큰 p-MAC에 관심이 더 있다.
상기 조건 1)을 만족하기 위해서 넓이 우선 트리의 각 레벨마다 유전자 집합의 크기 |O|를 우선 순위 측정 함수로 하는 우선 순위 큐를 유지함으로써 p-MAC을 저장한다. 이 우선 순위 큐의 p-MAC은 최종 결과로 사용된다. 도 7은 하나의 큐를 이용해서 p-MAC을 저장하는 전략과 다수의 큐를 이용하는 전략을 비교하고 있다. 도 7의 넓이 우선 트리의 각 노드는 매크로 클러스터를 의미하며, 노드의 괄호 안의 숫자는 유전자 집합의 크기를 나타낸다. 하나의 큐를 이용하는 전략은 p-MAC B와 C로부터 생성되는 (p+1)-MAC를 버리고 있으며, 이것은 이 전략이 다양성을 보장하지 않음을 보여준다. 그러나, 본 발명은 이와 달리 다수의 큐를 이용함으로써 다양성을 보장하고 있다.
조건 2)를 만족하기 위해서 위에서 설명했던 우선순위 큐를 한 세트 더 사용한다. 큐 저장 전략은 같지만, 우선순위 측정 함수는 |O| × (n - last) 로 하며, 여기서 last 는 T의 마지막 샘플의 인덱스를 말한다. 예를 들면, 3-MAC의 T = {s0, s2, s3} 일 때, last는 3을 말한다. 이 우선 순위 측정 함수의 장점은 다음과 같다. 첫째, 일반적으로 보다 큰 유전자 집합을 가진 p-MAC이 보다 큰 유전자 집합을 가진 (p+1)-MAC으로 성장할 수 있는 확률이 높다. 둘째, last 가 커질수록, p-MAC이 더 큰 MAC으로 성장할 확률은 적어진다.
예를 들어 전체 샘플 집합 S = {s0, s1, s2, s3, s4, s5}일 때, 두 개의 3-MAC인 SB1와 SB2를 가정해 보자. SB1의 T = {s0, s1, s2}이고, SB2의 T = {s0, s1, s3}이다. 이때, SB1이 SB2보다 검사할 수 있는 샘플을 많이 가진다(SB1의 경우 s3, s4, s5이고, SB2 는 s4, s5이다). 이것은 SB1이 T = {s0, s1, s2, s3}, T = {s0, s1, s2, s4}, T = {s0, s1, s2, s5}인 3개의 4-MAC으로 성장할 수 있음에 비해서, SB2는 T = {s0, s1, s3, s4}, T = {s0, s1, s3, s5}인 2개의 4-MAC으로 밖에는 성장할 수 없음을 뜻한다. 또한, SB1는 T = {s0, s1, s2, s3, s4, s5}인 6-MAC으로 성장할 수 있음에 비해서 SB2는 6-MAC으로 성장할 수 없다. 그러므로 last가 커질수록, p-MAC이 성장할 수 있는 확률은 줄어듦을 예상할 수 있고, 위의 우선순위 측정 함수를 사용할 경우, 우선순위 큐는 더욱 큰 MAC을 담을 수 있음을 알 수 있다.
위에서 설명한 두 세트의 우선순위 큐를 사용할 경우, 모든 p-MAC을 조사한 후, 두 세트의 (p+1)-MAC을 얻을 수 있다. 한 세트는 결과 매크로 클러스터가 되며, 다른 세트는 다음 (p+1)-MAC를 생성하기 위한 후보가 된다.
각 우선 순위 큐의 크기를 qsize라고 하고, 우선순위 큐의 개수를 qnum이라 하자. 이 두 변수는 사용자 입력값이 될 수 있다. qsize는 결과의 다양성에 영향을 미친다. 본 발명의 실시예에서는 qsize를 내부적으로 적당히 큰 값인 100으로 고정시켰는데, 그 이유는 qsize가 결과의 다양성의 정도와 비례하는 것은 아니기 때문이다. 즉, qsize는 매우 작은 값이 아니라면 다양성을 해치지 않기 때문이다. k = qnum × qsize 라고 할 때, k 는 중복된 p-MAC를 제거하기 전의 p-MAC의 총 개수가 된다. qnum이 클수록 k 또한 커지며, 일반적으로 k가 클수록 프루닝을 방지하므로 최적의 해를 찾을 확률을 높일 수 있다.
이상 설명한 매크로 클러스터링 방법을 종합하면 다음과 같다.
본 발명에 따른 매크로 클러스터링 방법은 도 8에 도시된 바와 같이 바이클러스터를 노드로 갖는 넓이 우선 탐색 트리를 구축해 나가며 바이클러스터를 찾아나가는 알고리즘이다. MAC을 매크로 클러스터라고 하고, p-MAC을 p개의 샘플로 구성된 샘플 집합을 가진 MAC라고 정의할 때, 도 8의 각 노드는 p-MAC 또는 (p+1)-MAC의 이름을 의미하며, 괄호 안의 숫자는 MAC들의 유전자 집합의 크기를 의미한다. p-MAC로부터 도출된 모든 (p+1)-MAC은 두 세트의 다중 우선순위 큐에 저장된다. 이 두 세트의 다중 우선순위 큐는 각각 다른 순위 측정 함수를 가지며, 이 두 세트의 다중 우선순위 큐에 저장된 (p+1)-MAC은 각각 중복 검사를 거친다. 그 후, 첫번째 다중 우선순위 큐에 저장된 (p+1)-MAC은 (p+2)-MAC을 위한 후보 MAC가 되며, 두번째 다중 우선순위 큐에 저장된 (p+1)-MAC은 중간 결과물이 된다.
트리의 p 레벨의 각 노드는 후보 p-MAC을 나타내므로, 트리의 p 레벨은 후보 p-MAC의 집합이 된다. 각 p-MAC은 조사 가능한 샘플 si를 조사한 후, 여러 개의 (p+1)-MAC을 자식 노드로 가지게 된다. 이때, (p+1)-MAC의 샘플 집합은 부모 p-MAC의 샘플 집합과 {si}의 합집합이다. 그리고, (p+1)-MAC의 유전자 집합은 부모 p-MAC의 유전자 집합을 도 9에 도시된 규칙에 의해 클러스터링한 부분 집합(Ri)이 된다.
도 9는 정규화된 유전자 발현값을 실수 범위의 수직선 위에 올려놓았을 때, 유전자 샘플이 각각의 유전자 발현값의 범위 Ri 또는 Ri+1 에 속함을 보여주는 도면이다. 여기에서 말하는 범위의 의미는 임의의 두 유전자의 정규화된 발현값이 한 범위에 속한다면 두 유전자의 발현값은 같다고 할 수 있다. 위 Ri에 대해서 |i|가 커질수록 범위의 크기는 더 커진다. 그것은 유전자들의 정규화된 발현값이 작아질수록 서로 간에 다른 값이라고 판단할 수 있는 차이가 작고, 정규화된 발현값이 커질수록 서로 간에 다른 값이라고 판단할 수 있는 차이가 커지기 때문이다. 예컨대, 두 유전자의 정규화된 발현값이 각각 0.1과 0.2인 경우와 각각 2와 2.1인 경우를 비교해 보면, 두 경우 모두 차이는 0.1이지만 전자의 경우 후자의 경우보다 서로 다른 값이라고 판단하기 쉽다. 즉 0.1과 0.2를 다르게 판단하는 경우라도 2와 2.1은 같다고 판단할 수 있다는 것이다. 따라서, 범위 Ri에 대해서 |i|가 커질수록 범위의 크기는 더 커져야 하며, 본 발명의 실시예에서는 "B."와 같이 범위를 정함으로써 |i|의 증가에 따라서 범위의 크기를 키우는 방식을 취한다.
추가적으로, 한 유전자 발현값이 왜 2개의 범위에 속해야 하는지에 대한 이유는 다음과 같다. 만약 범위가 겹치지 않는다면, 즉 도 9에서 범위 Ri의 i가 모두 짝수이거나 혹은 모두 홀수라면, 범위의 경계에 있는 정규화된 유전자 발현값들이 서로 다른 범위로 흩어질 가능성이 높다. 예컨대, 사용자 입력값 a와 d를 각각 0.1와 2.0으로 하고, R0은 [-0.1 , 0.1)이고, R2는 [0.1, 0.9) 이며, R1이 없다고 하면, 정규화된 유전자 발현값 0.099는 R0에 속하고 0.101는 R2에 속하게 되나, 실제로 두 발현값은 같은 범위에 들어가야 할 정도로 차이가 미미하다. 만약 [0, 0.4)인 R1이 있다면 이 두 발현값은 R1에 속하게 되므로 이러한 위험이 없어진다.
본 발명에 따른 매크로 클러스터링은 효율적인 범위 계산 방법인 비닝 알고리즘과 트리 구조 및 큐 저장 구조를 설계하는 것을 특징으로 한다. 본 발명에 따른 매크로 클러스터링 방법에 따라 도출된 바이클러스터는 GO(Gene Ontology) 검증을 통해서 실험적으로 높은 기능적 상관관계 신뢰도를 보임을 입증했다. 도 10에서는 현재 가장 높은 기능적 상관관계 정도를 보이는 알고리즘 중 하나로 알려져 있는 OPSM 방법에서 도출한 바이클러스터와 이 바이클러스터와 비슷한 유전자 크기를 갖는 매크로 클러스터와의 기능적 상관관계를 비교하고 있다. 도 10에 도시된 바와 같이 매크로 클러스터링 방법이 OPSM 방법보다 모든 GO에 대해서 p 값으로 표현되는 신뢰도가 더 높음을 확인할 수 있다. 이것은 매크로 클러스터링 방법이 낮은 거짓 양성 오류를 가짐을 보여준다.
본 발명에 따른 매크로 클러스터링 방법의 목적은 다음과 같다. 첫째, 알려지지 않은 유전자의 기능을 밝혀내는 것이다. 바이클러스터의 유전자 집합에 이미 기능이 밝혀진 유전자와 기능이 밝혀지지 않은 유전자가 함께 있을 경우, 기능이 밝혀지지 않은 유전자의 기능은 이미 밝혀진 유전자의 기능과 같다고 유추할 수 있다. 둘째, 샘플 집합의 특성을 밝혀낼 수 있다. 예컨대, 특정 암과의 관련이 입증된 유전자가 많이 발현하고 있는 샘플의 집합은 암환자라고 추정이 가능하다. 세째, 바이클러스터의 유전자 집합은 유전자 제어 네트워크(gene regulatory network)의 중요한 연결을 밝혀낼 수 있다.
바이클러스터의 유전자 집합의 기능적 상관관계의 신뢰도를 측정할 수 있으며, 이 신뢰도는 알고리즘의 성능에 의해 좌우된다. 본 발명에서 제안하고 있는 매크로 클러스터링 방법은 실험적으로 높은 신뢰도를 증명하고 있다.
보통 하나의 유전자는 여러 기능에 관여할 수 있기 때문에 여러 바이클러스터에 속해 있을 수 있다. 그러므로, 마이크로어레이 데이터에서 최대한 많은 수의 오버래핑된 바이클러스터를 찾아내는 것이 중요하다. 또한, 이 바이클러스터들은 다양성을 지녀야 한다. 즉, 비슷한 많은 수의 바이클러스터는 실제 실험 비용만을 증가시킬 뿐이다. 매크로 클러스터링은 구조적으로 오버래핑된 많은 바이클러스터를 찾아낼 수 있으며, 이 바이클러스터들은 서로 간에 어느 정도 이상의 중복은 허용하지 않는 다양성을 보장한다.
한편, 본 발명에 따른 매크로 클러스터링 알고리즘은 장치로도 구현 가능하다. 이하, 매크로 클러스터링 알고리즘을 구현하는 장치에 대해 설명한다. 도 11은 본 발명의 바람직한 실시예에 따른 매크로 클러스터링 장치를 개략적으로 도시한 블록도이다.
매크로 클러스터링 장치(1100)는 유전자 샘플 추출부(1110), 비닝 판별 부(1120), 매크로 클러스터 생성부(1130), 매크로 클러스터 추출부(1140) 및 탐색 트리 생성부(1150)를 포함한다.
본 발명에 따른 매크로 클러스터링 장치는 단백질의 생물학적 기능 연관성을 갖는 바이클러스터를 도출하여 암 환자의 기수를 판별하는 데에 사용될 수 있다.
유전자 샘플 추출부(1110)는 마이크로어레이 데이터에서 적어도 하나의 유전자를 포함하는 유전자 샘플을 추출하는 기능을 수행한다. 유전자 샘플 추출부(1110)는 바람직하게는 마이크로어레이 데이터의 각 열을 정규화시키며, 이 정규화로부터 유전자 샘플을 추출하는 기능을 수행한다. 정규화에 대해서는 이미 언급한 바, 여기서는 설명을 생략한다.
비닝 판별부(1120)는 유전자 샘플 추출부(1110)가 추출한 유전자 샘플에 따른 유전자 발현값이 적어도 하나의 비닝(binning) 기준 범위에 속하는지 여부를 판별하는 기능을 수행한다.
매크로 클러스터 생성부(1130)는 비닝 판별부(1120)가 판별한 결과로 유전자가 비닝 기준 범위에 속하면, 비닝 기준 범위에 속하는 유전자 집합 및 유전자가 속하는 유전자 샘플을 결합하여 바이클러스터 형태의 매크로 클러스터들을 생성하는 기능을 수행한다. 이러한 매크로 클러스터 생성부(1130)는 최초에 적어도 하나의 상기 유전자 집합과 1개의 상기 유전자 샘플로 이루어진 상기 매크로 클러스터를 생성하는 기능을 수행한다.
매크로 클러스터 추출부(1140)는 매크로 클러스터가 생성한 매크로 클러스터들 중에서 소정 조건에 부합하는 매크로 클러스터들을 추출하는 기능을 수행한다. 이러한 매크로 클러스터 추출부(1140)는 구체적으로 매크로 클러스터가 마이크로어레이 데이터의 전체 유전자 샘플 중 일부만을 포함하면, 포함하지 않는 적어도 하나의 유전자 샘플을 이용하여 매크로 클러스터가 다른 매크로 클러스터에 대해 가지는 유사도 값을 측정하는 유사도 값 측정부(1141), 및 상기 측정 결과로부터 조건에 부합하지 않는 매크로 클러스터를 제거시키는 클러스터 제거부(1142)를 포함하여 이루어질 수 있다.
클러스터 제거부(1142)는 조건에 부합하지 않는 매크로 클러스터로 유전자 집합의 크기가 최대인 매크로 클러스터를 선택하며, 이를 제거시키는 기능을 수행한다. 이때, 클러스터 제거부(1142)가 이용하는 조건은 매크로 클러스터들 중 상기 유전자 집합의 크기가 최대가 아니라는 조건이다.
탐색 트리 생성부(1150)는 매크로 클러스터 추출부(1140)가 도출한 매크로 클러스터들을 노드로 하는 탐색 트리를 생성하는 기능을 수행한다. 탐색 트리 생성부(1150)가 생성하는 탐색 트리는 바람직하게는 넓이 우선 탐색 트리이다. 탐색 트리 생성부(1150)는 매크로 클러스터 생성부(1130) 및 매크로 클러스터 추출부(1140)와 연동하여 매크로 클러스터를 추가 생성되면 이를 탐색 트리에 추가 반영시키는 기능도 수행한다.
본 발명의 실시예에서 매크로 클러스터 생성부(1130)는 더이상 상기 조건에 부합하는 매크로 클러스터가 추가 생성되지 않거나, 추가 생성된 매크로 클러스터에 포함되는 마이크로어레이 데이터의 부분 행렬 데이터 값이 추가 생성된 매크로 클러스터에 포함되는 유전자의 개수보다 작거나 같으면 매크로 클러스터의 추가 생 성을 종료한다. 이때, 매크로 클러스터 생성부(1130)와 연동하는 탐색 트리 생성부(1150)도 매크로 클러스터의 추가 반영을 종료하고, 탐색 트리를 완성시킨다. 이 부분에 대해서는 "검사 알고리즘" 부분(특히, "p-MAC C = (O, T)에서 생성 가능한 (p+1)-MAC C' = (O', T') 이라고 하고," ~ "도출된 (p+1)-MAC이 더이상 없거나, 도출된 모든 (p+1)-MAC C' = (O', T')가 |T'| ≤ mg를 만족한다면 상술한 바와 같이 프로세스는 종료된다.")에서 이미 언급한 바, 자세한 설명은 생략한다.
탐색 트리 생성부(1150)는 탐색 트리를 생성할 때에 매크로 클러스터로 유전자 샘플의 개수가 소정개인 제1 매크로 클러스터, 제1 매크로 클러스터에 포함된 유전자 집합을 모두 포함하며 제1 매크로 클러스터보다 유전자 샘플의 개수가 더 많은 제2 매크로 클러스터를 이용한다.
이와 같은 탐색 트리 생성부(1150)는 구체적으로 매크로 클러스터들을 노드로 하는 트리를 생성하는 토대 마련부(1151), 적어도 하나의 우선순위 큐를 이용하여 생성된 트리의 레벨마다 프루닝을 수행하는 프루닝부(1152), 및 프루닝을 통하여 제1 매크로 클러스터를 부모 노드로 하고 제2 매크로 클러스터를 자식 노드로 하는 탐색 트리를 구축하는 트리 구축부(1153)를 포함하여 이루어질 수 있다.
프루닝부(1152)는 유전자 집합의 크기를 우선순위 측정 함수로 하는 우선순위 큐를 이용하여 프루닝을 수행하는 기능을 수행한다. 또한, 프루닝부(1152)는 바람직하게는 우선순위 큐를 2개 이용하여 프루닝을 수행하는 기능을 수행한다.
매크로 클러스터링 장치(1100)는 이에 더하여 비닝 기준 범위 생성부(1170), 입력부(1160) 등을 더 포함할 수 있다.
비닝 기준 범위 생성부(1170)는 유전자 발현값으로부터 최소값과 최대값을 구하고, 최소값과 최대값 사이를 범위로 하는 적어도 하나의 비닝 기준 범위를 도출하는 기능을 수행한다.
입력부(1160)는 유전자 샘플 추출부(1110)로 유전자 샘플을 추출하기 위한 입력값을 입력하는 기능을 수행한다. 입력부(1160)는 마이크로어레이 데이터의 전체 유전자 집합과 마이크로어레이 데이터의 전체 샘플 집합을 포함하는 마이크로어레이 데이터(D=(G, S)의 마이크로어레이 데이터), 매크로 클러스터를 만족하는 유전자의 최소 개수(mg), 매크로 클러스터를 만족하는 유전자 샘플의 최소 개수(ms), 사용자 입력값(a, d), 비교 대상인 두 매크로 클러스터의 유사성 판단 기준값(rt), 우선순위 큐의 개수(qnum), 및 상기 우선순위 큐의 크기(qsize) 중 적어도 하나를 상기 입력값으로 입력한다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, ROM, 플로피 디스크, 하드 디스크, 자기 테이프 등), 광학적 판독 매체(예를 들면, CD-ROM, DVD, 광데이터 저장장치 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것 이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구 범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.
일반적으로 마이크로어레이 데이터를 구성하는 모든 유전자가 특정한 세포 생성 과정(cellular process)에 참여하는 것은 아니며, 모든 샘플에서 이 특정한 cellular process를 관찰할 수 있는 것도 아니다. 따라서, 유전자의 부분 집합이 특정한 실험적 조건 집합 하에서 상관관계를 가진다고 기대할 수 있다.
본 발명에 따른 매크로 클러스터링 방법은 생물학적으로 기능 연관성을 갖는 다수의 바이클러스터를 효과적으로 도출할 수 있다. 따라서, 본 발명은 마이크로어레이 분석이 요구되는 다양한 생물/의학 분야에 적용 가능하다. 또한, 본 발명은 유전자의 의학 및 생물학적 기능을 도출함으로써 질병 관리(ex. 암의 진단 및 분류) 및 신약 개발 분야에 적용 가능하다.
향후 본 발명은 상관관계를 갖는 유전자의 집합을 찾아내고, 나아가 유전자 제어 네트워크(gene regulatory network)를 밝히는 데에 매우 중요하고 효율적인 역할을 할 것으로 기대된다. 본 발명의 잠재적 수요처로는 병원, 암 센터, 신약 개발 업체 등이 예상된다.
도 1은 패턴에 따른 유전자 오브젝트와 샘플의 일실시예 그래프이고,
도 2는 본 발명의 바람직한 실시예에 따른 매크로 클러스터링 방법을 도시한 순서도이고,
도 3은 매크로 클러스터링 방법에 이용되는 10 x 5 마이크로어레이 데이터의 일실시 예시도이고,
도 4는 a=0.1, d=2.0으로 계산된 범위에 따라 도 3의 유전자를 비닝한 결과를 도시한 테이블이고,
도 5는 본 발명의 바람직한 실시예에 따라 p-MAC에서 (p+1)-MAC을 도출하는 과정을 도시한 그래프이고,
도 6은 본 발명의 바람직한 실시예에 따라 두 우선 순위 큐를 유지하며 중복 검사를 수행하는 프로세스를 도시한 개념도이고,
도 7은 본 발명의 바람직한 실시예에 따라 하나의 큐를 이용해서 p-MAC을 저장하는 전략과 다수의 큐를 이용하는 전략을 비교하는 과정을 도시한 개념도이고,
도 8은 본 발명의 바람직한 실시예에 따른 매크로 클러스터링 방법에 대한 개념도이고,
도 9는 매크로 클러스터링 방법에서 p-MAC의 유전자 집합과 (p+1)-MAC의 유전자 집합의 관계에 대한 규칙을 나타내는 그래프이고,
도 10은 본 발명의 바람직한 실시예에 따른 매크로 클러스터링 방법과 종래 OPSM 방법 간의 기능적 상관관계 비교표이고,
도 11은 본 발명의 바람직한 실시예에 따른 매크로 클러스터링 장치를 개략적으로 도시한 블록도이다.
<도면의 주요 부분에 대한 부호의 설명>
1100 : 매크로 클러스터링 장치 1110 : 유전자 샘플 추출부
1120 : 비닝 판별부 1130 : 매크로 클러스터 생성부
1140 : 매크로 클러스터 추출부 1141 : 유사도 값 측정부
1142 : 클러스터 제거부 1150 : 탐색 트리 생성부
1151 : 토대 마련부 1152 : 프루닝부
1153 : 트리 구축부 1160 : 입력부
1170 : 비닝 기준 범위 생성부

Claims (32)

  1. 암 환자의 기수를 판별하기 위한, 단백질의 생물학적 기능 연관성을 갖는 바이클러스터 형태의 매크로 클러스터를 생성하는 매크로 클러스터링 방법으로서,
    (a) 마이크로어레이 데이터에서 적어도 하나의 유전자를 포함하는 유전자 샘플을 추출하며, 상기 추출된 유전자 샘플에 따른 유전자 발현값이 적어도 하나의 비닝(binning) 기준 범위에 속하는지 여부를 판별하는 단계;
    (b) 상기 판별 결과로 상기 유전자가 상기 비닝 기준 범위에 속하면, 상기 비닝 기준 범위에 속하는 상기 유전자의 집합 및 상기 유전자가 속하는 상기 유전자 샘플을 결합하여 바이클러스터 형태의 매크로 클러스터들을 생성하는 단계; 및
    (c) 상기 생성된 매크로 클러스터들 중에서 상기 유전자의 집합의 크기가 미리 정해진 최대가 아니라는 조건에 부합하는 매크로 클러스터들을 추출하고, 상기 추출된 매크로 클러스터들을 노드로 하는 탐색 트리를 생성하며, 상기 생성된 탐색 트리를 이용하여 상기 조건에 부합하는 매크로 클러스터를 추가 생성하는 단계
    를 포함하는 것을 특징으로 하는 매크로 클러스터링 방법.
  2. 제 1 항에 있어서,
    상기 (c) 단계는 더이상 상기 조건에 부합하는 매크로 클러스터가 추가 생성되지 않거나, 상기 추가 생성된 매크로 클러스터에 포함되는 상기 마이크로어레이 데이터의 부분 행렬 데이터 값이 상기 추가 생성된 매크로 클러스터에 포함되는 상기 유전자의 개수보다 작거나 같으면 상기 매크로 클러스터의 추가 생성을 종료하는 것을 특징으로 하는 매크로 클러스터링 방법.
  3. 제 1 항에 있어서,
    상기 (a) 단계는,
    (aa) 상기 마이크로어레이 데이터의 각 열을 정규화시키며, 상기 정규화로부터 상기 유전자 샘플을 추출하는 단계;
    (ab) 상기 유전자 발현값으로부터 최소값과 최대값을 구하고, 상기 최소값과 상기 최대값 사이를 범위로 하는 적어도 하나의 상기 비닝 기준 범위를 생성하는 단계; 및
    (ac) 상기 (aa) 단계에서 추출된 유전자 샘플에 포함되는 상기 유전자 발현값이 상기 (ab) 단계에서 생성된 비닝 기준 범위에 비닝하는지 여부를 판별하는 단계
    를 포함하는 것을 특징으로 하는 매크로 클러스터링 방법.
  4. 제 1 항에 있어서,
    상기 (c) 단계에서 상기 탐색 트리를 생성하는 단계는 상기 유전자 샘플의 개수가 적어도 두개인 제1 매크로 클러스터 및 상기 제1 매크로 클러스터에 포함된 유전자 집합을 모두 포함하며 상기 제1 매크로 클러스터보다 상기 유전자 샘플의 개수가 더 많은 제2 매크로 클러스터를 이용하여 상기 탐색 트리를 생성하는 것을 특징으로 하는 매크로 클러스터링 방법.
  5. 제 4 항에 있어서,
    상기 (c) 단계에서 상기 탐색 트리를 생성하는 단계는,
    (ca) 상기 생성된 매크로 클러스터들을 노드로 하는 트리를 생성하는 단계;
    (cb) 적어도 하나의 우선순위 큐를 이용하여 상기 생성된 트리의 레벨마다 프루닝을 수행하는 단계; 및
    (cc) 상기 프루닝을 통하여 상기 제1 매크로 클러스터를 부모 노드로 하고 상기 제2 매크로 클러스터를 자식 노드로 하는 상기 탐색 트리를 구축하는 단계
    를 포함하는 것을 특징으로 하는 매크로 클러스터링 방법.
  6. 제 1 항에 있어서,
    상기 (c) 단계에서 상기 조건에 부합하는 매크로 클러스터들을 추출하는 단계는,
    (ca') 상기 생성된 매크로 클러스터가 상기 마이크로어레이 데이터의 전체 유전자 샘플 중 일부만을 포함하면, 포함하지 않는 적어도 하나의 상기 유전자 샘플을 이용하여 상기 매크로 클러스터가 다른 매크로 클러스터에 대해 가지는 유사도 값을 측정하는 단계; 및
    (cb') 상기 측정 결과로부터 상기 조건에 부합하지 않는 매크로 클러스터를 제거시켜 상기 조건에 부합하는 매크로 클러스터들을 추출하는 단계
    를 포함하는 것을 특징으로 하는 매크로 클러스터링 방법.
  7. 삭제
  8. 제 5 항에 있어서,
    상기 (cb) 단계는 상기 유전자 집합의 크기를 우선순위 측정 함수로 하는 상기 우선순위 큐를 이용하여 상기 프루닝을 수행하는 것을 특징으로 하는 매크로 클러스터링 방법.
  9. 제 5 항에 있어서,
    상기 (cb) 단계는 상기 우선순위 큐를 2개 이용하는 것을 특징으로 하는 매크로 클러스터링 방법.
  10. 제 1 항에 있어서,
    상기 (a) 단계는 상기 유전자 샘플을 추출하기 위한 입력값으로 상기 마이크로어레이 데이터의 전체 유전자 집합과 상기 마이크로어레이 데이터의 전체 샘플 집합을 포함하는 상기 마이크로어레이 데이터, 상기 생성된 매크로 클러스터를 만족하는 유전자의 최소 개수, 상기 생성된 매크로 클러스터를 만족하는 유전자 샘플의 최소 개수, 사용자 입력값, 비교 대상인 두 매크로 클러스터의 유사성 판단 기 준값, 우선순위 큐의 개수, 및 상기 우선순위 큐의 크기 중 적어도 하나를 입력하는 것을 특징으로 하는 매크로 클러스터링 방법.
  11. 제 1 항에 있어서,
    상기 (c) 단계에 따라 생성되는 매크로 클러스터들은 상기 생성된 탐색 트리에서의 레벨이 적어도 2인 것을 특징으로 하는 매크로 클러스터링 방법.
  12. 제 1 항에 있어서,
    상기 (b) 단계는 아래 조건을 만족하는 클러스터를 상기 매크로 클러스터로 생성하는 것을 특징으로 하는 매크로 클러스터링 방법.
    [조건]
    C = (O, T)일 때,
    1) 임의의 범위 R에 대해서, T의 샘플 하에서 O의 모든 유전자의 발현값이 같은 R에 포함됨
    2) |O| ≥ mg, |T| ≥ ms
    상기에서, C는 상기 매크로 클러스터, O는 상기 마이크로어레이 데이터의 전체 유전자 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, T는 상기 마이크로어레이 데이터의 전체 샘플 집합에 속하는 상기 마이크로어레이 데이터 의 부분 행렬 데이터, mg는 상기 생성된 매크로 클러스터를 만족하는 유전자의 최소 개수, ms는 상기 생성된 매크로 클러스터를 만족하는 유전자 샘플의 최소 개수이다.
  13. 제 12 항에 있어서,
    상기 (b) 단계는 아래 조건을 만족하는 상기 매크로 클러스터를 적어도 하나 생성하며, 최초에 적어도 하나의 상기 유전자 집합과 1개의 상기 유전자 샘플로 이루어진 상기 매크로 클러스터를 생성하는 것을 특징으로 하는 매크로 클러스터링 방법.
    [조건]
    C = (O, T)에서 |T| = p를 만족함
    상기에서, p는 상기 유전자 샘플의 개수이다.
  14. 제 9 항에 있어서,
    상기 (cb) 단계에서의 상기 2개의 우선순위 큐 중에서 적어도 하나는 아래 수학식을 우선순위 측정 함수로 설정하는 것을 특징으로 하는 매크로 클러스터링 방법.
    [수학식]
    우선순위 측정 함수 = |O| × (n - last)
    상기에서, O는 상기 마이크로어레이 데이터의 전체 유전자 집합에 속하는 상 기 마이크로어레이 데이터의 부분 행렬 데이터, n은 상기 생성된 매크로 클러스터에 포함되는 유전자 샘플의 최대 개수, last는 T의 마지막 샘플의 인덱스, T는 상기 마이크로어레이 데이터의 전체 샘플 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터이다.
  15. 제 1 항에 있어서,
    상기 (c) 단계는,
    (ca'') 상기 p가 1일 때, |T| ≥ mg를 만족하는 p-MAC이 생성되는지 여부를 판별하는 단계;
    (cb'') 상기 p-MAC이 더 생성된다면, 미리 정해진 샘플 si를 샘플 집합으로 하는 1-MAC을 고려하여 p-MAC으로부터 (p+1)-MAC을 검출하는 단계;
    (cc'') 상기 검출된 (p+1)-MAC이 |T'| ≥ mg를 만족하면 상기 검출된 (p+1)-MAC을 제1 우선순위 큐 또는 제2 우선순위 큐에 저장하며, 상기 검출된 (p+1)-MAC이 |T'| ≥ mg를 만족하지 않으면 두 매크로 클러스터의 유사성 판단 기준값에 의해 두 큐에 저장된 (p+1)-MAC를 제거하는 단계;
    (cd'') (p+1) ≥ ms이면 상기 제1 우선순위 큐에 저장된 모든 (p+1)-MAC과 상기 제2 우선순위 큐에 저장된 모든 (p+1)-MAC을 출력하는 단계;
    (ce'') 상기 두 큐를 비우는 단계; 및
    (cf'') 상기 p를 p+1로 설정하는 단계
    를 포함하며,
    상기 p는 상기 유전자 샘플의 개수, 상기 T는 상기 마이크로어레이 데이터의 전체 샘플 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, 상기 mg는 상기 생성된 매크로 클러스터를 만족하는 유전자의 최소 개수, 상기 p-MAC은 상기 유전자 샘플의 개수가 p인 매크로 클러스터, 상기 O는 상기 마이크로어레이 데이터의 전체 유전자 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, 상기 ms는 상기 생성된 매크로 클러스터를 만족하는 상기 유전자 샘플의 최소 개수, 및 T'=T∪{si}인 것을 특징으로 하는 매크로 클러스터링 방법.
  16. 제 6 항에 있어서,
    상기 (ca') 단계에서 측정된 유사도 값은 아래 수학식으로부터 도출되는 것을 특징으로 하는 매크로 클러스터링 방법.
    [수학식]
    max(|O|/|O1|,|O|/|O2|) ≥ rt
    상기에서, max(|O|/|O1|,|O|/|O2|)는 두 p-MAC을 C1 = (O1, T1), C2 = (O2, T2)라고 하고 유전자 집합 O = O1 ∩ O2 라고 할 때 상기 C1 와 상기 C2 사이의 유사도, p-MAC은 상기 유전자 샘플의 개수가 p인 매크로 클러스터, O는 상기 매크로 어레이 데이터의 전체 유전자 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데 이터, T는 상기 마이크로어레이 데이터의 전체 샘플 집합에 속하는 상기 마이크로어레이 데이터의 부분 행렬 데이터, rt는 두 매크로 클러스터의 유사성 판단 기준값이다.
  17. 제 1 항에 있어서,
    상기 (c) 단계는 상기 생성된 탐색 트리로 넓이 우선 탐색 트리를 이용하는 것을 특징으로 하는 매크로 클러스터링 방법.
  18. 삭제
  19. 컴퓨터로 판독 가능한 기록매체에 있어서,
    제 1 항 내지 제 6 항 중 어느 한 항에 따른 방법, 또는 제 8 항 내지 제 17 항 중 어느 한 항에 따른 방법을 구현하는 프로그램이 기록되는 기록매체.
  20. 암 환자의 기수를 판별하기 위한, 단백질의 생물학적 기능 연관성을 갖는 바이클러스터 형태의 매크로 클러스터를 생성하는 매크로 클러스터링 장치로서,
    마이크로어레이 데이터에서 적어도 하나의 유전자를 포함하도록 추출된 유전자 샘플에 따른 유전자 발현값이 적어도 하나의 비닝(binning) 기준 범위에 속하는지 여부를 판별하는 비닝 판별부;
    상기 판별 결과로 상기 유전자가 상기 비닝 기준 범위에 속하면, 상기 비닝 기준 범위에 속하는 상기 유전자의 집합 및 상기 유전자가 속하는 상기 유전자 샘플을 결합하여 바이클러스터 형태의 매크로 클러스터들을 생성하는 매크로 클러스터 생성부; 및
    상기 생성된 매크로 클러스터들 중에서 상기 유전자의 집합의 크기가 미리 정해진 최대가 아니라는 조건에 부합하는 매크로 클러스터들이 도출되면, 상기 도출된 매크로 클러스터들을 노드로 하는 탐색 트리를 생성하며, 상기 매크로 클러스터 생성부와 연동하여 상기 조건에 부합하는 매크로 클러스터가 추가 생성되면 상기 추가 생성된 매크로 클러스터를 상기 생성된 탐색 트리에 반영시키는 탐색 트리 생성부
    를 포함하는 것을 특징으로 하는 매크로 클러스터링 장치.
  21. 제 20 항에 있어서,
    상기 매크로 클러스터 생성부는 더이상 상기 조건에 부합하는 매크로 클러스터가 추가 생성되지 않거나, 상기 추가 생성된 매크로 클러스터에 포함되는 상기 마이크로어레이 데이터의 부분 행렬 데이터 값이 상기 추가 생성된 매크로 클러스터에 포함되는 상기 유전자의 개수보다 작거나 같으면 상기 매크로 클러스터의 추가 생성을 종료하는 것을 특징으로 하는 매크로 클러스터링 장치.
  22. 제 21 항에 있어서,
    상기 마이크로어레이 데이터의 각 열을 정규화시키며, 상기 정규화로부터 상 기 유전자 샘플을 추출하는 유전자 샘플 추출부; 및
    상기 유전자 발현값으로부터 최소값과 최대값을 구하고, 상기 최소값과 상기 최대값 사이를 범위로 하는 적어도 하나의 상기 비닝 기준 범위를 도출하는 비닝 기준 범위 생성부
    를 더 포함하는 것을 특징으로 하는 매크로 클러스터링 장치.
  23. 제 21 항에 있어서,
    상기 탐색 트리 생성부는 상기 탐색 트리를 생성할 때에 상기 매크로 클러스터로 상기 유전자 샘플의 개수가 적어도 두개인 제1 매크로 클러스터 및 상기 제1 매크로 클러스터에 포함된 유전자 집합을 모두 포함하며 상기 제1 매크로 클러스터보다 상기 유전자 샘플의 개수가 더 많은 제2 매크로 클러스터를 이용하는 것을 특징으로 하는 매크로 클러스터링 장치.
  24. 제 23 항에 있어서,
    상기 탐색 트리 생성부는,
    상기 생성된 매크로 클러스터들을 노드로 하는 트리를 생성하는 토대 마련부;
    적어도 하나의 우선순위 큐를 이용하여 상기 생성된 트리의 레벨마다 프루닝을 수행하는 프루닝부; 및
    상기 프루닝을 통하여 상기 제1 매크로 클러스터를 부모 노드로 하고 상기 제2 매크로 클러스터를 자식 노드로 하는 상기 탐색 트리를 구축하는 트리 구축부
    를 포함하는 것을 특징으로 하는 매크로 클러스터링 장치.
  25. 제 21 항에 있어서,
    상기 조건에 부합하는 매크로 클러스터들을 추출하는 매크로 클러스터 추출부
    를 더 포함하며,
    상기 매크로 클러스터 추출부는,
    상기 생성된 매크로 클러스터가 상기 마이크로어레이 데이터의 전체 유전자 샘플 중 일부만을 포함하면, 포함하지 않는 적어도 하나의 상기 유전자 샘플을 이용하여 상기 매크로 클러스터가 다른 매크로 클러스터에 대해 가지는 유사도 값을 측정하는 유사도 값 측정부; 및
    상기 측정 결과로부터 상기 조건에 부합하지 않는 매크로 클러스터를 제거시키는 클러스터 제거부
    를 포함하는 것을 특징으로 하는 매크로 클러스터링 장치.
  26. 삭제
  27. 제 24 항에 있어서,
    상기 프루닝부는 상기 유전자 집합의 크기를 우선순위 측정 함수로 하는 상기 우선순위 큐를 이용하여 상기 프루닝을 수행하는 것을 특징으로 하는 매크로 클러스터링 장치.
  28. 제 24 항에 있어서,
    상기 프루닝부는 상기 우선순위 큐를 2개 이용하는 것을 특징으로 하는 매크로 클러스터링 장치.
  29. 제 22 항에 있어서,
    상기 유전자 샘플 추출부로 상기 유전자 샘플을 추출하기 위한 입력값을 입력하는 입력부
    를 더 포함하며,
    상기 입력부는 상기 마이크로어레이 데이터의 전체 유전자 집합과 상기 마이크로어레이 데이터의 전체 샘플 집합을 포함하는 상기 마이크로어레이 데이터, 상기 생성된 매크로 클러스터를 만족하는 유전자의 최소 개수, 상기 생성된 매크로 클러스터를 만족하는 유전자 샘플의 최소 개수, 사용자 입력값, 비교 대상인 두 매크로 클러스터의 유사성 판단 기준값, 우선순위 큐의 개수, 및 상기 우선순위 큐의 크기 중 적어도 하나를 상기 입력값으로 입력하는 것을 특징으로 하는 매크로 클러 스터링 장치.
  30. 제 21 항에 있어서,
    상기 매크로 클러스터 생성부는 최초에 적어도 하나의 상기 유전자 집합과 1개의 상기 유전자 샘플로 이루어진 상기 매크로 클러스터를 생성하는 것을 특징으로 하는 매크로 클러스터링 장치.
  31. 제 21 항에 있어서,
    상기 탐색 트리 생성부는 상기 탐색 트리로 넓이 우선 탐색 트리를 생성하는 것을 특징으로 하는 매크로 클러스터링 장치.
  32. 삭제
KR1020080127747A 2008-12-16 2008-12-16 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체 KR100987026B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080127747A KR100987026B1 (ko) 2008-12-16 2008-12-16 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080127747A KR100987026B1 (ko) 2008-12-16 2008-12-16 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체

Publications (2)

Publication Number Publication Date
KR20100069141A KR20100069141A (ko) 2010-06-24
KR100987026B1 true KR100987026B1 (ko) 2010-10-11

Family

ID=42367292

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080127747A KR100987026B1 (ko) 2008-12-16 2008-12-16 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체

Country Status (1)

Country Link
KR (1) KR100987026B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200051300A (ko) 2018-11-05 2020-05-13 서강대학교산학협력단 Cf 트리를 활용한 범위 질의 기반의 데이터 클러스터링 장치 및 방법
KR20220065585A (ko) 2020-11-13 2022-05-20 서강대학교산학협력단 Cf+ 트리를 사용한 맵리듀스 기반 분산 군집화 방법 및 장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101514762B1 (ko) * 2014-05-15 2015-05-20 연세대학교 산학협력단 mRNA 발현 값의 발현 차이를 이용하여 유전자 집합을 검출하기 위한 장치 및 그 방법
KR101704737B1 (ko) * 2016-02-05 2017-02-08 연세대학교 산학협력단 셀렉션 풀을 이용한 바이클러스터 생성 장치 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080086332A (ko) * 2007-03-21 2008-09-25 한국전자통신연구원 유전자 어휘 분류체계를 이용한 유전자 발현 프로파일군집화 방법 및 그 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080086332A (ko) * 2007-03-21 2008-09-25 한국전자통신연구원 유전자 어휘 분류체계를 이용한 유전자 발현 프로파일군집화 방법 및 그 장치

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200051300A (ko) 2018-11-05 2020-05-13 서강대학교산학협력단 Cf 트리를 활용한 범위 질의 기반의 데이터 클러스터링 장치 및 방법
US11048730B2 (en) 2018-11-05 2021-06-29 Sogang University Research Foundation Data clustering apparatus and method based on range query using CF tree
KR20220065585A (ko) 2020-11-13 2022-05-20 서강대학교산학협력단 Cf+ 트리를 사용한 맵리듀스 기반 분산 군집화 방법 및 장치

Also Published As

Publication number Publication date
KR20100069141A (ko) 2010-06-24

Similar Documents

Publication Publication Date Title
Huang et al. Attribute truss community search
Gates et al. A Monte Carlo evaluation of weighted community detection algorithms
Jung et al. A spatial scan statistic for multinomial data
JP2013541085A (ja) オブジェクトにスコアを提供する方法及び意思決定支援システム
KR100987026B1 (ko) 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체
Brown et al. A novel algorithm for scalable and accurate Bayesian network learning.
Xu et al. Density-based modularity for evaluating community structure in bipartite networks
CN109346182B (zh) 一种基于cs-rf的地中海贫血病的风险预警方法
Casper et al. Using sequences to model crises
He et al. Revealing multiple layers of hidden community structure in networks
Qin et al. Evolution pattern discovery in dynamic networks
Huang et al. Cause of gene tree discord? Distinguishing incomplete lineage sorting and lateral gene transfer in phylogenetics
Dempsey et al. The development of parallel adaptive sampling algorithms for analyzing biological networks
Silva et al. Big data aplication for selecting theses topics
Nemes et al. Summary measures for binary classification systems in animal ecology.
CN109686400B (zh) 一种富集程度检验方法、装置及可读介质、存储控制器
Kyosev et al. Measuring distances among graphs en route to graph clustering
Dai et al. Inducing pairwise gene interactions from time-series data by EDA based bayesian network
KR100963764B1 (ko) 바이클러스터링 방법 및 장치
Paul et al. Impact of low-confidence interactions on computational identification of protein complexes
Vasuki et al. Analyzing performance of placement students record using different clustering algorithm
Chen et al. An improved graph entropy-based method for identifying protein complexes
Delaigle et al. Group testing regression analysis with covariates and specimens subject to missingness
TWI815411B (zh) 提取語意模式和總結病理報告的方法及非暫態電腦儲存媒體
CN112927752B (zh) 一种用于量化生物进化树间相似度的方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130925

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140804

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160105

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20181005

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20191205

Year of fee payment: 10