KR101704737B1 - 셀렉션 풀을 이용한 바이클러스터 생성 장치 및 방법 - Google Patents
셀렉션 풀을 이용한 바이클러스터 생성 장치 및 방법 Download PDFInfo
- Publication number
- KR101704737B1 KR101704737B1 KR1020160015218A KR20160015218A KR101704737B1 KR 101704737 B1 KR101704737 B1 KR 101704737B1 KR 1020160015218 A KR1020160015218 A KR 1020160015218A KR 20160015218 A KR20160015218 A KR 20160015218A KR 101704737 B1 KR101704737 B1 KR 101704737B1
- Authority
- KR
- South Korea
- Prior art keywords
- cluster
- selection pool
- score
- gene
- clusters
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B20/00—ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
- G16B20/20—Allele or variant detection, e.g. single nucleotide polymorphism [SNP] detection
-
- G06F19/24—
-
- G06F19/18—
-
- G06F19/28—
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B25/00—ICT specially adapted for hybridisation; ICT specially adapted for gene or protein expression
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B40/00—ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B40/00—ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
- G16B40/30—Unsupervised data analysis
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B20/00—ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
Landscapes
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Theoretical Computer Science (AREA)
- Spectroscopy & Molecular Physics (AREA)
- General Health & Medical Sciences (AREA)
- Biotechnology (AREA)
- Data Mining & Analysis (AREA)
- Genetics & Genomics (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Public Health (AREA)
- Evolutionary Computation (AREA)
- Epidemiology (AREA)
- Databases & Information Systems (AREA)
- Bioethics (AREA)
- Artificial Intelligence (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
Abstract
본 발명은 바이클러스터의 NP-Hard 문제를 해결하기 위하여 유전자 알고리즘을 채택하고, 또한 셀렉션 풀 개념을 도입하여 클러스터링 계산량을 감소시킨 질병 관련 유전자 검색 기법을 제공하는 바이클러스터 생성 장치 및 방법을 제안한다. 또한 본 발명은 기존의 바이클러스터링이 찾기 힘든 질병과 관련도가 높은 유전자 모듈을 찾을 수 있는 기법을 제공하는 바이클러스터 생성 장치 및 방법을 제안한다. 본 발명에 따른 장치는 유전자에 대한 정보를 기초로 미리 정해진 클러스터들에 대한 스코어를 산출하는 스코어 산출부; 미리 정해진 클러스터들 중에서 스코어를 기초로 선택된 적어도 하나의 제1 클러스터, 및 셀렉션 풀에 포함된 적어도 하나의 제2 클러스터를 기초로 셀렉션 풀을 갱신하는 셀렉션 풀 갱신부; 및 갱신된 셀렉션 풀에 포함된 유전자들을 기초로 바이클러스터를 생성하는 바이클러스터 생성부를 포함한다.
Description
본 발명은 바이클러스터(Bicluster)를 생성하는 장치 및 방법에 관한 것이다. 보다 상세하게는, 유전자 집합(Genes)과 샘플 집합(Samples)을 포함하는 바이클러스터를 생성하는 장치 및 방법에 관한 것이다.
방대한 양의 사용 가능한 생물학적 데이터의 등장으로, 이를 이용하여 새로운 지식을 찾고자 하는 많은 시도가 있었다. 클러스터링(Clustering) 기술은 전체 샘플에 대해서 유사한 발현 패턴을 갖는 유전자 모듈(Gene module)을 찾는데 사용되는 기술로서, 관련 생물학적 지식을 얻기 위해 유용하게 사용된다. 이러한 클러스터링 기술은 전체 샘플에 대해서 유사한 패턴을 찾는 방법이기 때문에 특정 조건을 갖춘(Condition specific) 유전자 모듈을 찾기에는 한계가 존재한다.
이러한 문제를 해결하기 위하여 바이클러스터링(Biclustering) 기법이 존재한다. 바이클러스터링 기법은 특정 조건에서 발현 패턴을 갖는 유전자 집합을 찾는 코클러스터링(Co-clustering) 기술로서, 유전자(Gene)와 조건(Condition)을 동시에(Simultaneously) 클러스터링하는 방법이다. 이러한 바이클러스터링 기법은 일방향 클러스터링 문제(One-way clustering problem)에 비해서 보다 복잡한 계산을 필요로 하기 때문에 NP 하드(NP-Hard; Nondeterministic Polynomial-Hard) 문제가 있다. 또한 기존의 바이클러스터링 기법은 기능과 관련된 유전자 집합을 선별할 수 있을 뿐, 질병과 관련된 유전자 집합을 선별할 수 없다는 한계점이 있다.
미국공개특허 제2012-0016826호는 클러스터링 알고리즘에 대하여 제안하고 있다. 그러나 이 알고리즘은 기능과 관련된 유전자 집합을 선별하는 방법을 제안하고 있기 때문에 상기한 문제점을 해결할 수 없다.
본 발명은 상기한 문제점을 해결하기 위해 안출된 것으로서, 바이클러스터(Bicluster)의 NP-Hard 문제를 해결하기 위하여 유전자 알고리즘(Genetic algorithm)을 채택하고, 또한 셀렉션 풀(Selection pool) 개념을 도입하여 클러스터링 계산량을 감소시킨 질병 관련 유전자 검색 기법을 제공하는 바이클러스터 생성 장치 및 방법을 제안하는 것을 목적으로 한다.
또한 본 발명은 기존의 바이클러스터링이 찾기 힘든 질병과 관련도가 높은 유전자 모듈을 찾을 수 있는 기법을 제공하는 바이클러스터 생성 장치 및 방법을 제안하는 것을 목적으로 한다.
그러나 본 발명의 목적은 상기에 언급된 사항으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 발명은 상기한 목적을 달성하기 위해 안출된 것으로서, 유전자에 대한 정보를 기초로 미리 정해진 클러스터들에 대한 스코어(Score)를 산출하는 스코어 산출부; 상기 미리 정해진 클러스터들 중에서 상기 스코어를 기초로 선택된 적어도 하나의 제1 클러스터, 및 셀렉션 풀(Selection pool)에 포함된 적어도 하나의 제2 클러스터를 기초로 상기 셀렉션 풀을 갱신하는 셀렉션 풀 갱신부; 및 갱신된 셀렉션 풀에 포함된 유전자들을 기초로 바이클러스터(Bicluster)를 생성하는 바이클러스터 생성부를 포함하는 것을 특징으로 하는 바이클러스터 생성 장치를 제안한다.
바람직하게는, 상기 바이클러스터는 질병 유전자(Disease genes)를 검출하는 데에 이용된다.
바람직하게는, 상기 셀렉션 풀 갱신부는 상기 미리 정해진 클러스터들 중에서 제1 기준값 이상의 스코어를 가지는 클러스터를 상기 제1 클러스터로 선택한다.
바람직하게는, 상기 셀렉션 풀 갱신부는 상기 제1 클러스터와 상기 제2 클러스터가 미리 정해진 비율 이상 겹치는지 여부를 판단하여 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 셀렉션 풀 갱신부는 상기 제1 클러스터와 상기 제2 클러스터가 상기 비율 이상 겹치는 것으로 판단되면 상기 제1 클러스터에 대한 스코어가 상기 제2 클러스터에 대한 스코어보다 큰지 여부를 판단하여 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 셀렉션 풀 갱신부는 상기 제1 클러스터에 대한 스코어가 상기 제2 클러스터에 대한 스코어보다 큰 것으로 판단되면 상기 셀렉션 풀에서 상기 제2 클러스터를 제외시키고 상기 제1 클러스터를 포함시켜 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 셀렉션 풀 갱신부는 상기 제1 클러스터와 상기 제2 클러스터가 상기 비율 이상 겹치지 않는 것으로 판단되면 상기 셀렉션 풀에 상기 제1 클러스터를 포함시켜 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 셀렉션 풀 갱신부는 상기 셀렉션 풀을 최초 갱신할 때 상기 셀렉션 풀에 포함된 클러스터를 상기 제2 클러스터로 이용하며, 상기 셀렉션 풀을 최초 이후 갱신할 때 상기 갱신된 셀렉션 풀에 포함된 제3 클러스터 또는 상기 미리 정해진 클러스터들에 포함된 제4 클러스터를 상기 제2 클러스터로 이용한다.
바람직하게는, 상기 셀렉션 풀 갱신부는 상기 셀렉션 풀을 최초 이후 갱신할 때 미리 정해진 확률로 상기 제3 클러스터를 상기 제2 클러스터로 이용한다.
바람직하게는, 상기 바이클러스터 생성 장치는 상기 제3 클러스터 또는 상기 제4 클러스터에서 유전자에 대한 정보 또는 샘플에 대한 정보를 변경하는 클러스터 정보 변경부를 더 포함하며, 상기 셀렉션 풀 갱신부는 상기 셀렉션 풀을 최초 이후 갱신할 때 유전자에 대한 정보 또는 샘플에 대한 정보가 변경된 상기 제3 클러스터 또는 상기 제4 클러스터를 상기 제2 클러스터로 이용한다.
바람직하게는, 상기 클러스터 정보 변경부는 다른 클러스터에 포함된 유전자 또는 샘플을 상기 제3 클러스터 또는 상기 제4 클러스터에 포함된 유전자 또는 샘플에 교차시키거나, 상기 제3 클러스터 또는 상기 제4 클러스터에 유전자 또는 샘플을 추가 또는 삭제하여 상기 제3 클러스터 또는 상기 제4 클러스터에서 유전자에 대한 정보 또는 샘플에 대한 정보를 변경한다.
바람직하게는, 상기 셀렉션 풀 갱신부는 미리 정해진 횟수만큼 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 바이클러스터 생성부는 상기 갱신된 셀렉션 풀에 포함된 클러스터들에 대한 스코어가 제2 기준값 이상인지 여부를 판단하며, 상기 제2 기준값 이상의 스코어를 가지는 클러스터에 포함된 유전자들을 기초로 상기 바이클러스터를 생성한다.
바람직하게는, 상기 바이클러스터 생성부는 상기 갱신된 셀렉션 풀에 포함된 클러스터들 중에서 미리 정해진 비율 이상 겹치는 클러스터들을 통합하여 단일 클러스터로 생성하며, 상기 단일 클러스터에 포함된 유전자들을 기초로 상기 바이클러스터를 생성한다.
바람직하게는, 상기 스코어 산출부는 상기 미리 정해진 클러스터들 중에서 선택된 어느 하나의 클러스터에 포함된 제1 유전자들의 발현값과 상기 어느 하나의 클러스터에 포함되지 않은 제2 유전자들의 발현값을 기초로 상기 클러스터들에 대한 스코어를 산출한다.
바람직하게는, 상기 스코어 산출부는, 상기 제1 유전자들의 발현값을 합산하여 얻은 값을 상기 제1 유전자들의 개수로 나누어 제1 평균값을 산출하는 제1 평균값 산출부; 상기 제2 유전자들의 발현값을 합산하여 얻은 값을 상기 제2 유전자들의 개수로 나누어 제2 평균값을 산출하는 제2 평균값 산출부; 상기 제1 평균값끼리 곱셈하여 제1 곱셈값을 획득하고, 상기 제1 평균값에서 상기 제2 평균값을 뺀 값과 상기 제1 평균값을 곱셈하여 제2 곱셈값을 획득하며, 상기 제1 곱셈값과 상기 제2 곱셈값의 절대값을 합산하여 유전자에 대한 스코어를 산출하는 유전자 스코어 산출부; 및 상기 유전자에 대한 스코어를 기초로 상기 어느 하나의 클러스터에 대한 스코어를 산출하는 클러스터 스코어 산출부를 포함한다.
바람직하게는, 상기 바이클러스터 생성 장치는 유전자에 대한 정보와 샘플에 대한 정보를 기초로 상기 미리 정해진 클러스터들을 생성하는 클러스터 생성부를 더 포함한다.
또한 본 발명은 유전자에 대한 정보를 기초로 미리 정해진 클러스터들에 대한 스코어(Score)를 산출하는 단계; 상기 미리 정해진 클러스터들 중에서 상기 스코어를 기초로 선택된 적어도 하나의 제1 클러스터, 및 셀렉션 풀(Selection pool)에 포함된 적어도 하나의 제2 클러스터를 기초로 상기 셀렉션 풀을 갱신하는 단계; 및 갱신된 셀렉션 풀에 포함된 유전자들을 기초로 바이클러스터(Bicluster)를 생성하는 단계를 포함하는 것을 특징으로 하는 바이클러스터 생성 방법을 제안한다.
바람직하게는, 상기 갱신하는 단계는 상기 미리 정해진 클러스터들 중에서 제1 기준값 이상의 스코어를 가지는 클러스터를 상기 제1 클러스터로 선택한다.
바람직하게는, 상기 갱신하는 단계는 상기 제1 클러스터와 상기 제2 클러스터가 미리 정해진 비율 이상 겹치는지 여부를 판단하여 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 갱신하는 단계는 상기 제1 클러스터와 상기 제2 클러스터가 상기 비율 이상 겹치는 것으로 판단되면 상기 제1 클러스터에 대한 스코어가 상기 제2 클러스터에 대한 스코어보다 큰지 여부를 판단하여 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 갱신하는 단계는 상기 제1 클러스터에 대한 스코어가 상기 제2 클러스터에 대한 스코어보다 큰 것으로 판단되면 상기 셀렉션 풀에서 상기 제2 클러스터를 제외시키고 상기 제1 클러스터를 포함시켜 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 갱신하는 단계는 상기 제1 클러스터와 상기 제2 클러스터가 상기 비율 이상 겹치지 않는 것으로 판단되면 상기 셀렉션 풀에 상기 제1 클러스터를 포함시켜 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 갱신하는 단계는 상기 셀렉션 풀을 최초 갱신할 때 상기 셀렉션 풀에 포함된 클러스터를 상기 제2 클러스터로 이용하며, 상기 셀렉션 풀을 최초 이후 갱신할 때 상기 갱신된 셀렉션 풀에 포함된 제3 클러스터 또는 상기 미리 정해진 클러스터들에 포함된 제4 클러스터를 상기 제2 클러스터로 이용한다.
바람직하게는, 상기 갱신하는 단계는 상기 셀렉션 풀을 최초 이후 갱신할 때 미리 정해진 확률로 상기 제3 클러스터를 상기 제2 클러스터로 이용한다.
바람직하게는, 상기 선택하는 단계 이후에, 상기 제3 클러스터 또는 상기 제4 클러스터에서 유전자에 대한 정보 또는 샘플에 대한 정보를 변경하는 단계를 더 포함하며, 상기 갱신하는 단계는 상기 셀렉션 풀을 최초 이후 갱신할 때 유전자에 대한 정보 또는 샘플에 대한 정보가 변경된 상기 제3 클러스터 또는 상기 제4 클러스터를 상기 제2 클러스터로 이용한다.
바람직하게는, 상기 변경하는 단계는 다른 클러스터에 포함된 유전자 또는 샘플을 상기 제3 클러스터 또는 상기 제4 클러스터에 포함된 유전자 또는 샘플에 교차시키거나, 상기 제3 클러스터 또는 상기 제4 클러스터에 유전자 또는 샘플을 추가 또는 삭제하여 상기 제3 클러스터 또는 상기 제4 클러스터에서 유전자에 대한 정보 또는 샘플에 대한 정보를 변경한다.
바람직하게는, 상기 갱신하는 단계는 미리 정해진 횟수만큼 상기 셀렉션 풀을 갱신한다.
바람직하게는, 상기 생성하는 단계는 상기 갱신된 셀렉션 풀에 포함된 클러스터들에 대한 스코어가 제2 기준값 이상인지 여부를 판단하며, 상기 제2 기준값 이상의 스코어를 가지는 클러스터에 포함된 유전자들을 기초로 상기 바이클러스터를 생성한다.
바람직하게는, 상기 생성하는 단계는 상기 갱신된 셀렉션 풀에 포함된 클러스터들 중에서 미리 정해진 비율 이상 겹치는 클러스터들을 통합하여 단일 클러스터로 생성하며, 상기 단일 클러스터에 포함된 유전자들을 기초로 상기 바이클러스터를 생성한다.
바람직하게는, 상기 산출하는 단계는 상기 미리 정해진 클러스터들 중에서 선택된 어느 하나의 클러스터에 포함된 제1 유전자들의 발현값과 상기 어느 하나의 클러스터에 포함되지 않은 제2 유전자들의 발현값을 기초로 상기 클러스터들에 대한 스코어를 산출한다.
바람직하게는, 상기 산출하는 단계는, 상기 제1 유전자들의 발현값을 합산하여 얻은 값을 상기 제1 유전자들의 개수로 나누어 제1 평균값을 산출하는 단계; 상기 제2 유전자들의 발현값을 합산하여 얻은 값을 상기 제2 유전자들의 개수로 나누어 제2 평균값을 산출하는 단계; 상기 제1 평균값끼리 곱셈하여 제1 곱셈값을 획득하고, 상기 제1 평균값에서 상기 제2 평균값을 뺀 값과 상기 제1 평균값을 곱셈하여 제2 곱셈값을 획득하며, 상기 제1 곱셈값과 상기 제2 곱셈값의 절대값을 합산하여 유전자에 대한 스코어를 산출하는 단계; 및 상기 유전자에 대한 스코어를 기초로 상기 어느 하나의 클러스터에 대한 스코어를 산출하는 단계를 포함한다.
바람직하게는, 상기 산출하는 단계 이전에, 유전자에 대한 정보와 샘플에 대한 정보를 기초로 상기 미리 정해진 클러스터들을 생성하는 단계를 더 포함한다.
본 발명은 상기한 목적 달성을 위한 구성들을 통하여 다음 효과를 얻을 수 있다.
첫째, 유전자 데이터 집합에서 보다 빠르게 질병 관련 유전자 데이터를 검색할 수 있다.
둘째, 셀렉션 풀(Selection pool)을 도입하여 바이클러스터를 변형하고 업데이트함에 있어서 다양성을 증대시킬 수 있다.
셋째, 계산의 효율성이 증대되고 검색 성능을 개선시킬 수 있다.
도 1은 본 발명에 따른 방법에 의해 생성된 바이클러스터들의 예시도이다.
도 2는 본 발명의 일실시예에 따른 유전자 알고리즘을 설명하는 개념도이다.
도 3은 본 발명의 일실시예에 따른 유전자 알고리즘의 절차를 순차적으로 설명하는 흐름도이다.
도 4는 본 발명의 바람직한 실시예에 따른 바이클러스터 생성 장치의 내부 구성을 도시한 개략도이다.
도 5는 도 4의 바이클러스터 생성 장치를 구성하는 스코어 산출부의 내부 구성도이다.
도 6은 도 4의 바이클러스터 생성 장치에 추가될 수 있는 내부 구성을 도시한 블록도이다.
도 7은 본 발명의 바람직한 실시예에 따른 바이클러스터 생성 방법을 개략적으로 설명하는 흐름도이다.
도 2는 본 발명의 일실시예에 따른 유전자 알고리즘을 설명하는 개념도이다.
도 3은 본 발명의 일실시예에 따른 유전자 알고리즘의 절차를 순차적으로 설명하는 흐름도이다.
도 4는 본 발명의 바람직한 실시예에 따른 바이클러스터 생성 장치의 내부 구성을 도시한 개략도이다.
도 5는 도 4의 바이클러스터 생성 장치를 구성하는 스코어 산출부의 내부 구성도이다.
도 6은 도 4의 바이클러스터 생성 장치에 추가될 수 있는 내부 구성을 도시한 블록도이다.
도 7은 본 발명의 바람직한 실시예에 따른 바이클러스터 생성 방법을 개략적으로 설명하는 흐름도이다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.
기존에 많은 연구들이 있었지만, 이전 연구들은 대부분 기능적으로 관련된 유전자 집합을 찾고자 하였고, 질병 관련 유전자 집합을 찾으려는 노력은 없었다. 본 발명에서는 기능적으로 관련된 유전자 집합 뿐만 아니라 질병 관련 유전자 집합을 찾을 수 있는 바이클러스터링 방법론을 제안한다.
이하 도면을 참조하여 본 발명에서 제안하는 질병 유전자 데이터에서 바이클러스터링 기법 및 개선된 유전 알고리즘을 이용한 질병 유전자 모듈 검색 기법에 대하여 설명한다.
질병 관련 유전자 집합을 찾기 위해, 제안하는 방법은 통계적으로 과발현(over expressed)되거나 저발현된(under expressed) 유전자 집합을 갖는 바이클러스터를 찾으려 노력하였다. 뿐만 아니라, 이러한 바이클러스터의 유전자 집합은 바이클러스터 내 샘플과 바이클러스터 내에 속해 있지 않은 샘플 사이에서 차등 발현을 나타내는 특징을 가지고 있다. 도 1은 본 발명에서 찾고자 하는 바이클러스터들의 예를 보여주고 있다.
도 1은 본 발명에 따른 방법에 의해 생성된 바이클러스터들의 예시도이다. 도 1에서 mRNA 발현 데이터(100)는 각각의 샘플에 대해서 z 스코어링(z-scoring)을 적용하였다. 또한 도 1에서의 행은 유전자 집합을 나타내고 열은 샘플 집합을 나타낸다. 각각의 직사각형(120)들은 mRNA의 발현 정도를 나타내며, mRNA 발현값이 통계적으로 높을수록 직사각형(120)의 색은 녹색에 가깝고, 통계적으로 낮을수록 직사각형(120)의 색은 빨간색에 가깝다. 추가적으로 굵은 선으로 묶여있는 직사각형(110)들은 바이클러스터들을 나타낸다.
도 1에서 보이는 바와 같이 본 발명에 따른 방법에 의해 생성된 바이클러스터들(110)은 다음 2가지 규칙을 만족하는 것을 특징으로 한다.
첫째, 바이클러스터 안의 유전자들은 통계적으로 바이클스터 안의 샘플들에서 코익스프레스(co-express)해야 한다.
둘째, 바이클러스터 안의 유전자들은 바이클러스터 안의 샘플과 그렇지 않은 샘플 사이에서 차등 발현되어야 한다.
통계적으로 과발현되거나 저발현된 유전자 모듈은 질병에 있어서 중요한 역할을 할 가능성이 크다고 가정할 수 있다. 왜냐하면 이러한 유전자 모듈이 생물학적인 과정에서 유전자 조절 장애 등을 야기할 수 있기 때문이다.
추가적으로, 만약에 이러한 과발현 또는 저발현된 유전자 모듈이 바이클러스터 안에 포함되어 있지 않은 외부 샘플에서와 차등 발현된다면, 이러한 유전자 모듈이 질병의 발병과 강력한 관련이 있다고 가정할 수 있다. 왜냐하면, 질병 관련 유전자 모듈은 질병의 발병 과정 중 일부에 관여하기 때문에 이러한 유전자 모듈이 질병의 한 상태를 나타낼 수 있기 때문이다.
본 발명에서는 제안하는 방법을 개발하기 위하여, 유전자 알고리즘(Genetic algorithm)을 사용하였다. 유전자 알고리즘은 생물체의 진화 과정인 상속, 돌연변이, 선택, 교차 등을 모방하여 국부적 최적 해결안(Local optimal solution)을 찾는 방법론이다. 이러한 방법론은 생물체의 진화를 모방하기 때문에 일부 높은 점수를 가지는 바이클러스터만 찾을 뿐, 다양한 바이클러스터를 찾기 힘든 단점을 가지고 있다.
이러한 단점을 극복하기 위해, 본 발명에서는 유전자 알고리즘에 셀렉션 풀(Selection pool)을 추가하여 다양한 바이클러스터들을 찾을 수 있도록 하였다. 도 2는 본 발명에서 제안하는 유전자 알고리즘을 보여준다.
도 2는 본 발명의 일실시예에 따른 유전자 알고리즘을 설명하는 개념도이다. 이하 도 2를 참조하여 설명한다.
본 발명에 따른 질병 관련 유전자 검색 장치는 먼저 복수개의 샘플과 복수개의 유전자의 유전자 발현량 정보를 입력받고, 이 유전자 발현량 정보에서 소정 개수의 바이클러스터를 생성한다(S210).
이후 질병 관련 유전자 검색 장치는 각 바이클러스터에 포함된 유전자 발현량에 따른 점수를 산출한다(S220).
이후 질병 관련 유전자 검색 장치는 산출된 점수가 소정의 임계치보다 큰 바이클러스터를 셀렉션 풀(130)에 추가하거나 또는 셀렉션 풀(130)에 기 포함된 바이클러스터와 교체하여 셀렉션 풀(130)을 업데이트한다(S230).
이후 질병 관련 유전자 검색 장치는 셀렉션 풀에서 바이클러스터를 선택한다(S240).
이후 질병 관련 유전자 검색 장치는 선택된 바이클러스터를 변형한다.
이후 질병 관련 유전자 검색 장치는 변형된 바이클러스터를 이용하여 S220 단계 내지 S240 단계를 미리 정해진 횟수만큼 반복한다(S250).
이후 질병 관련 유전자 검색 장치는 셀렉션 풀에 포함된 바이클러스터를 통합하여 통합 바이클러스터를 생성한다.
본 발명에서는 도 2를 참조하여 설명한 바와 같이 유전자 알고리즘을 이용한 새로운 바이클러스터링 방법론을 제안한다. 본 발명에서 제안하는 방법론은 통계적으로 과발현되거나 저발현된 유전자 집합을 찾는 것을 목표로 하는 동시에 바이클러스터 내에 포함되는 샘플과 바이클러스터 내에 포함되지 않은 샘플에서의 차등 발현되는 유전자 집합을 찾는 것을 목표로 하고 있다. 비록 본 발명에서 제한하는 방법이 유전자 알고리즘을 사용하여 개발되었지만, 여기에는 중요한 차이점이 있다. 본 발명에서 제안하는 방법론은 셀렉션 풀을 사용하여 기존 알고리즘을 사용한 것보다 더욱 다양한 바이클러스터를 찾을 수 있다. 도 3은 본 발명에서 제안하는 방법의 전체적인 개요(Overview)를 보여준다.
본 발명에 따른 방법론은 도 3에 도시된 바와 같이 여섯 단계들로 구성될 수 있다. 도 3은 본 발명의 일실시예에 따른 유전자 알고리즘의 절차를 순차적으로 설명하는 흐름도이다.
(1) 초기 바이클러스터 생성(Generating initial biclusters; S310)
(2) 바이클러스터 추정(Estimating biclusters; S320)
(3) 셀렉션 풀 업데이트(Updating the selection pool; S330)
(4) 바이클러스터 선택(Selecting biclusters; S340)
(5) 바이클러스터 변경(Modifying biclusters; S350)
(6) 바이클러스터 통합(Integrating biclusters; S370)
이상에서 보는 바와 같이 본 발명에 따른 방법론은 초기 바이클러스터들을 만든 후(S310), 단계 (2)(S320)부터 단계 (5)(S350)까지 N번 반복한다(S360). 이후 셀렉션 풀에 있는 바이클러스터들을 통합하여 최종적으로 결과로 사용될 바이클러스터를 찾는다(S370). 한편 S360 단계에서 반복되는 횟수 N은 데이터의 크기에 따라 달라질 수 있는데, 보통 500 ~ 3000 사이의 값을 가지는 것이 바람직하다.
이하 도 3을 참조하여 각 단계에 대하여 보다 자세하게 설명한다.
본 발명에서는 유전자 데이터에서 질병 관련 유전자 집합을 검색하기 위하여, 통계적으로 과발현(over expressed)되거나 저발현된(under expressed) 유전자 집합을 갖는 바이클러스터인 조건과, 바이클러스터 내 샘플과 바이클러스터 내에 속해있지 않은 샘플 사이에서 차등 발현을 나타내는 특징을 가지는 조건을 모두 충족하는 바이클러스터를 찾는 기법을 제안한다.
이는 통계적으로 과발현되거나 저발현된 유전자 모듈이 생물학적인 과정에서 유전자 조절 장애 등을 야기할 수 있고, 그에 따라 질병에 있어서 중요한 역할을 할 가능성이 크기 때문이다. 또한 이러한 과발현 또는 저발현된 유전자 모듈이 바이클러스터 안에 포함되어 있지 않은 외부 샘플에서와 차등발현 된다면, 질병의 발병과정 중 일부에 관여하고, 그에 따라 이러한 유전자 모듈이 질병의 발병과 강력한 관련이 있다고 추정할 수 있기 때문이다.
위와 같은 두가지 조건을 충족시키는 바이클러스터를 찾기 위하여 본 발명에 따른 질병 관련 유전자 검색 방법은 아래와 같이 6단계를 거쳐 동작할 수 있다.
(1) 초기 바이클러스터 생성(Generating initial biclusters; S310)
본 단계는 초기에 사용될 바이클러스터들을 만드는 단계로써, 임의로 16개의 유전자와 3개의 샘플을 갖는 바이클러스터 1000개를 만들어 이후 단계에서 사용한다.
(2) 바이클러스터 추정(Estimating biclusters; S320)
바이클러스터 추정 과정에서는 셀렉션 풀 업데이트 단계(S330)에서 사용하기 위하여 바이클러스터의 점수를 매기는 단계이다.
알고리즘 1(Algorithm 1)은 바이클러스터의 점수를 매기는 과정을 보여준다.
먼저 바이클러스터 D를 점수화하기 위해, sumin과 sumout을 바이클러스터에 포함된 유전자 g로부터 구한다. sumin은 바이클러스터 안의 샘플에서의 유전자 g의 mRNA 발현값의 총합을 나타내며, sumout은 바이클러스터에 포함되지 않은 샘플에서의 유전자 g의 mRNA 발현값의 총합을 나타낸다.
sumin과 sumout을 구한 후, avgin과 avgout을 구한다. 이후 (avgin × avgin) + |(avgin × (avgin - avgout)|의 절대값을 유전자 g의 점수로 구한다.
유전자 g의 점수인 genescore는 유전자 g의 mRNA 발현값이 높을수록, 바이클러스터에 포함된 샘플과 그렇지 않은 샘플에서의 발현 값의 차이가 클수록 더 큰 점수를 갖는 특성을 가진다.
마지막으로 바이클러스터 D에 포함된 모든 유전자들의 점수의 총합을 구함으로써 Dscore를 구한다.
이상 설명한 알고리즘 1은 다음과 같다.
------------------------------------------------------------
Algorithm 1: Estimating biclusters
------------------------------------------------------------
Input: bicluster B which has genes and samples
Output: score of bicluster Bscore
Notation
sumin: the summation of a gene expression in a bicluster
sumout: the summation of a gene expression not in a bicluster
avgin: the average of a gene expression in a bicluster
avgout: the average of a gene expression not in a bicluster
genescore: the score of a gene
------------------------------------------------------------
1: FOR each gene g in bicluster B
2: sumin = sumout = 0
2: FOR each sample s in gene expression data
3: IF the s in B
4: sumin = sumin +g's expression in s
5: ELSE
6: sumout = sumout + g's expression in s
7: ENDIF
8: ENDFOR
9: avgin = |sumin| / The number of samples in B
10: avgout = |sumout| / The number of samples not in B
11: genescore = (avgin * avgin) + |(avgin * (avgin - avgout)|
12: Bscore = Bscore + genescore
13:ENDFOR
------------------------------------------------------------
(3) 셀렉션 풀 업데이트 업데이트(Updating the selection pool; S330)
셀렉션 풀 업데이트 단계(S330)는 이전 단계에서 제1 임계값(Threshold)보다 높은 점수를 얻은 후보 바이클러스터의 유전자 집합과 셀렉션 풀에 있는 바이클러스터의 유전자 집합을 비교하여 기존 셀렉션 풀에 있는 바이클러스터를 업데이트하거나 셀렉션 풀에 새롭게 바이클러스터를 추가하는 단계이다.
이러한 단계는 다양한 바이클러스터를 찾기 위해 본 발명에서 새롭게 추가된 단계이며, 알고리즘 2(Algorithm 2)에 구체적인 과정을 나타내었다.
먼저 후보 바이클러스터의 유전자 집합과 셀렉션 풀에 있는 모든 바이클러스터의 유전자 집합을 비교한다. 만약에 후보 바이클러스터의 유전자 집합과 셀렉션 풀의 바이클러스터의 유전자 집합이 r% 이상 겹친다면, 두 바이클러스터의 점수를 비교한다. 이때 후보 바이클러스터의 점수가 셀렉션 풀의 바이클러스터 점수보다 높을 경우, 기존의 셀렉션 풀에 있는 바이클러스터를 후보 바이클러스터로 대체한다.
반면 후보 바이클러스터의 유전자 집합이 셀렉션 풀에 존재하는 모든 바이클러스터의 유전자 집합에 대해서 r% 이상 겹치지 않을 경우 새롭게 셀렉션 풀에 후보 바이클러스터를 추가한다.
이상 설명한 알고리즘 2는 다음과 같다.
------------------------------------------------------------
Algorithm 2: Updating the selection pool
------------------------------------------------------------
Input: candidate bicluster B which has genes and samples, score of bicluster Bscore, selection pool S which has biclusters
Output: update selection pool S
Notation
threshold: The threshold of overlap rate between B and B'
------------------------------------------------------------
1: FOR each bicluster B' in selection pool S
2: FOR each gene g in candidate bicluster B
3: IF the g in B'
4: overlap_count++
5: ENDIF
6: ENDFOR
7: IF overlap_count > threshold * gene, set size of B'
8: IF Bscore > B'score
9: update S by changing B' to B
10: ENDIF
11: ELSE
12: Insert B into S
13: ENDIF
14:ENDFOR
------------------------------------------------------------
(4) 바이클러스터 선택(Selecting biclusters; S340)
바이클러스터 선택 단계(S340)는 다음 아이터레이션(Iteration)에서 사용될 바이클러스터를 선택하는 단계이다. 이때 다음 단계에서 사용될 바이클러스터들을 k번 선택하는데, 매 선택마다 p(여기서 p는 0 < p < 1)의 확률로 셀렉션 풀에 존재하는 바이클러스터를 선택하고, (1-p)의 확률로 초기 바이클러스터를 선택하여 다양한 바이클러스터를 찾을 수 있도록 한다. 바이클러스터 선택 단계(S340)는 적어도 일부의 선택에 대하여 p 값을 1-p 값보다 크게 하여(ex. 0.5 < p < 1) 셀렉션 풀에 존재하는 바이클러스터가 선택되도록 하는 것이 바람직하다.
(5) 바이클러스터 변경(Modifying biclusters; S350)
바이클러스터 변경 단계(S350)는 다양한 바이클러스터를 찾기 위해 이전 단계에서 선택된 바이클러스터를 변형하는 단계이다. 즉, 바이클러스터의 변형을 위해, 서로 다른 두 바이클러스터의 유전자와 샘플을 임의로 교차시키거나, 바이클러스터 안에 있는 유전자와 샘플을 임의로 추가 및 삭제함으로써 새로운 바이클러스터를 만든다.
(6) 바이클러스터 통합(Integrating biclusters; S370)
바이클러스터 통합 단계(S370)에서는 셀렉션 풀에 있는 바이클러스터를 통합하여 더 큰 유전자 집합을 만드는 단계이다. 바이클러스터를 통합하기 위하여, 제2 임계값(Threshold)를 기반으로 충분히 훈련되지 못한 바이클러스터를 걸러낸 후에, 그 다음 서로 다른 바이클러스터가 m% 같은 샘플 집합을 갖고 있으면 하나로 합쳐 최종적으로 결과로 사용될 바이클러스터를 찾는다.
한편 상기에서 제2 임계값은 제1 임계값보다 더 큰 값을 가질 수 있다.
개놈 프로젝트의 등장으로 유전자에 대한 관심이 높아졌고, 유전자 정보를 활용하여 그동안 정복하지 못하였던 질병을 정복하고자 하는 수많은 시도들이 있었다. 질병을 정복함에 있어서 질병에 관여하는 유전자 모듈을 찾는 것은 매우 중요한 이슈 중 하나이다.
본 발명에서 제안하는 방법을 활용하면, 질병과 관련이 있는 유전자 모듈을 효과적으로 찾음으로써 질병을 이해하는 데에 큰 도움을 줄 수 있다. 뿐만 아니라, 질병과 관련이 있는 유전자 모듈을 연구함으로써 신약 개발 및 치료 방법을 찾는 연구 분야에도 활용될 수 있다.
본 발명은 유전자 데이터 마이닝, 질병 관련 유전자 검색, 유전자 클러스터링 등에 적용될 수 있다. 특히 본 발명은 데이터마이닝 분석 기법을 이용한 질병 모듈을 탐색하거나 질병 네트워크를 구축하는 데에 적용될 수 있다.
이상 도 1 내지 도 3을 참조하여 본 발명의 일실시 형태에 대하여 설명하였다. 이하에서는 이러한 일실시 형태로부터 추론 가능한 본 발명의 바람직한 형태에 대하여 설명한다.
도 4는 본 발명의 바람직한 실시예에 따른 바이클러스터 생성 장치의 내부 구성을 도시한 개략도이다.
도 4를 참조하면, 바이클러스터 생성 장치(400)는 스코어 산출부(410), 셀렉션 풀 갱신부(420), 바이클러스터 생성부(430), 전원부(440) 및 주제어부(450)를 포함한다.
전원부(440)는 바이클러스터 생성 장치(400)를 구성하는 각 구성에 전원을 공급하는 기능을 수행한다.
주제어부(450)는 바이클러스터 생성 장치(400)를 구성하는 각 구성의 전체 작동을 제어하는 기능을 수행한다.
스코어 산출부(410)는 유전자에 대한 정보를 기초로 미리 정해진 클러스터들에 대한 스코어(Score)를 산출하는 기능을 수행한다. 스코어 산출부(410)는 도 3의 바이클러스터 추정 단계(S320)에 대응하는 개념이다.
스코어 산출부(410)는 미리 정해진 클러스터들 중에서 선택된 어느 하나의 클러스터에 포함된 제1 유전자들의 발현값과 어느 하나의 클러스터에 포함되지 않은 제2 유전자들의 발현값을 기초로 클러스터들에 대한 스코어를 산출할 수 있다. 스코어 산출부(410)는 유전자들의 발현값으로 유전자 g의 mRNA 발현값을 이용할 수 있다.
스코어 산출부(410)는 도 5에 도시된 바와 같이 제1 평균값 산출부(411), 제2 평균값 산출부(412), 유전자 스코어 산출부(413) 및 클러스터 스코어 산출부(414)를 포함할 수 있다. 도 5는 도 4의 바이클러스터 생성 장치를 구성하는 스코어 산출부의 내부 구성도이다.
제1 평균값 산출부(411)는 제1 유전자들의 발현값을 합산하여 얻은 값을 제1 유전자들의 개수로 나누어 제1 평균값을 산출하는 기능을 수행한다.
제2 평균값 산출부(412)는 제2 유전자들의 발현값을 합산하여 얻은 값을 제2 유전자들의 개수로 나누어 제2 평균값을 산출하는 기능을 수행한다.
유전자 스코어 산출부(413)는 제1 평균값끼리 곱셈하여 제1 곱셈값을 획득하고, 제1 평균값에서 제2 평균값을 뺀 값과 제1 평균값을 곱셈하여 제2 곱셈값을 획득하며, 제1 곱셈값과 제2 곱셈값의 절대값을 합산하여 유전자에 대한 스코어를 산출하는 기능을 수행한다.
클러스터 스코어 산출부(414)는 유전자에 대한 스코어를 기초로 어느 하나의 클러스터에 대한 스코어를 산출하는 기능을 수행한다.
셀렉션 풀 갱신부(420)는 미리 정해진 클러스터들 중에서 스코어를 기초로 선택된 적어도 하나의 제1 클러스터, 및 셀렉션 풀(Selection pool)에 포함된 적어도 하나의 제2 클러스터를 기초로 셀렉션 풀을 갱신하는 기능을 수행한다. 셀렉션 풀 갱신부(420)는 도 3의 셀렉션 풀 업데이트 단계(S330)에 대응하는 개념이다.
셀렉션 풀 갱신부(420)는 미리 정해진 클러스터들 중에서 제1 기준값 이상의 스코어를 가지는 클러스터를 제1 클러스터로 선택할 수 있다.
셀렉션 풀 갱신부(420)는 제1 클러스터와 제2 클러스터가 미리 정해진 제1 비율 이상 겹치는지 여부를 판단하여 셀렉션 풀을 갱신할 수 있다.
셀렉션 풀 갱신부(420)는 제1 클러스터와 제2 클러스터가 제1 비율 이상 겹치는 것으로 판단되면 제1 클러스터에 대한 스코어가 제2 클러스터에 대한 스코어보다 큰지 여부를 판단하여 셀렉션 풀을 갱신할 수 있다.
셀렉션 풀 갱신부(420)는 제1 클러스터에 대한 스코어가 제2 클러스터에 대한 스코어보다 큰 것으로 판단되면 셀렉션 풀에서 제2 클러스터를 제외시키고 제1 클러스터를 포함시켜 셀렉션 풀을 갱신할 수 있다.
한편 셀렉션 풀 갱신부(420)는 제1 클러스터에 대한 스코어가 제2 클러스터에 대한 스코어보다 크지 않은 것으로 판단되면 셀렉션 풀을 갱신하지 않는다.
셀렉션 풀 갱신부(420)는 제1 클러스터와 제2 클러스터가 제1 비율 이상 겹치지 않는 것으로 판단되면 셀렉션 풀에 제1 클러스터를 포함시켜 셀렉션 풀을 갱신할 수 있다.
셀렉션 풀 갱신부(420)는 셀렉션 풀을 최초 갱신할 때 셀렉션 풀에 포함된 클러스터를 제2 클러스터로 이용하며, 셀렉션 풀을 최초 이후 갱신할 때 갱신된 셀렉션 풀에 포함된 제3 클러스터 또는 미리 정해진 클러스터들에 포함된 제4 클러스터를 제2 클러스터로 이용할 수 있다.
이를 위해 바이클러스터 생성 장치(400)는 도 6에 도시된 바와 같이 클러스터 선택부(470)를 더 포함할 수 있다. 도 6은 도 4의 바이클러스터 생성 장치에 추가될 수 있는 내부 구성을 도시한 블록도이다.
클러스터 선택부(470)는 셀렉션 풀을 최초 이후 갱신할 때 갱신된 셀렉션 풀에 포함된 클러스터(제3 클러스터) 또는 미리 정해진 클러스터들에 포함된 클러스터(제4 클러스터)를 제2 클러스터로 선택하는 기능을 수행한다. 이때 클러스터 선택부(470)는 제3 클러스터를 제2 클러스터로 선택하는 것이 바람직하다. 클러스터 선택부(470)는 도 3의 바이클러스터 선택 단계(S340)에 대응하는 개념이다.
한편 셀렉션 풀 갱신부(420)는 셀렉션 풀을 최초 이후 갱신할 때 미리 정해진 확률로 제3 클러스터를 제2 클러스터로 이용할 수 있다.
한편 셀렉션 풀 갱신부(420)는 미리 정해진 횟수만큼 셀렉션 풀을 갱신할 수 있다.
바이클러스터 생성부(430)는 갱신된 셀렉션 풀에 포함된 유전자들을 기초로 바이클러스터(Bicluster)를 생성하는 기능을 수행한다. 바이클러스터 생성부(430)에 의해 생성된 바이클러스터는 질병 유전자(Disease genes)를 검출하는 데에 이용될 수 있다. 바이클러스터 생성부(430)는 도 3의 바이클러스터 통합 단계(S370)에 대응하는 개념이다.
바이클러스터 생성부(430)는 갱신된 셀렉션 풀에 포함된 클러스터들에 대한 스코어가 제2 기준값 이상인지 여부를 판단하며, 제2 기준값 이상의 스코어를 가지는 클러스터에 포함된 유전자들을 기초로 바이클러스터를 생성할 수 있다.
바이클러스터 생성부(430)는 갱신된 셀렉션 풀에 포함된 클러스터들 중에서 미리 정해진 제2 비율 이상 겹치는 클러스터들을 통합하여 단일 클러스터로 생성하며, 단일 클러스터에 포함된 유전자들을 기초로 바이클러스터를 생성할 수 있다. 이때 제2 비율은 제1 비율 이상의 값을 가질 수 있다.
바이클러스터 생성 장치(400)는 도 6에 도시된 바와 같이 클러스터 정보 변경부(480)를 더 포함할 수 있다.
클러스터 정보 변경부(480)는 제3 클러스터 또는 제4 클러스터에서 유전자에 대한 정보 또는 샘플에 대한 정보를 변경하는 기능을 수행한다. 클러스터 정보 변경부(480)는 도 3의 바이클러스터 변경 단계(S350)에 대응하는 개념이다.
바이클러스터 생성 장치(400)에서 클러스터 정보 변경부(480)가 상기한 기능을 수행하는 경우, 셀렉션 풀 갱신부(420)는 셀렉션 풀을 최초 이후 갱신할 때 유전자에 대한 정보 또는 샘플에 대한 정보가 변경된 제3 클러스터 또는 제4 클러스터를 제2 클러스터로 이용할 수 있다.
클러스터 정보 변경부(480)는 다른 클러스터에 포함된 유전자 또는 샘플을 제3 클러스터 또는 제4 클러스터에 포함된 유전자 또는 샘플에 교차시키거나, 제3 클러스터 또는 제4 클러스터에 유전자 또는 샘플을 추가 또는 삭제하여 제3 클러스터 또는 제4 클러스터에서 유전자에 대한 정보 또는 샘플에 대한 정보를 변경할 수 있다.
바이클러스터 생성 장치(400)는 도 6에 도시된 바와 같이 클러스터 생성부(460)를 더 포함할 수 있다.
클러스터 생성부(460)는 유전자에 대한 정보와 샘플에 대한 정보를 기초로 미리 정해진 클러스터들을 생성하는 기능을 수행한다. 클러스터 생성부(460)는 도 3의 초기 바이클러스터 생성 단계(S310)에 대응하는 개념이다.
클러스터 생성부(460)는 유전자에 대한 정보와 샘플에 대한 정보로 각각 유전자의 개수와 샘플의 개수를 이용할 수 있다.
다음으로 바이클러스터 생성 장치(400)의 작동 방법에 대하여 설명한다. 도 7은 본 발명의 바람직한 실시예에 따른 바이클러스터 생성 방법을 개략적으로 설명하는 흐름도이다.
먼저 스코어 산출부(410)가 유전자에 대한 정보를 기초로 미리 정해진 클러스터들에 대한 스코어(Score)를 산출한다(S510).
이후 셀렉션 풀 갱신부(420)가 미리 정해진 클러스터들 중에서 스코어를 기초로 선택된 적어도 하나의 제1 클러스터, 및 셀렉션 풀(Selection pool)에 포함된 적어도 하나의 제2 클러스터를 기초로 셀렉션 풀을 갱신한다(S520).
이후 셀렉션 풀 갱신부(420)가 S520 단계를 미리 정해진 횟수(N, N은 자연수) 이상 반복했는지 여부를 판단한다(S530).
S520 단계를 미리 정해진 횟수 이상 반복한 것으로 판단되면, 바이클러스터 생성부(430)가 갱신된 셀렉션 풀에 포함된 유전자들을 기초로 바이클러스터(Bicluster)를 생성한다(S540).
반면 S520 단계를 미리 정해진 횟수 이상 반복하지 않은 것으로 판단되면, 셀렉션 풀 갱신부(420)가 S520 단계를 다시 수행한다.
한편 S520 단계에서 셀렉션 풀을 최초 갱신할 때, 셀렉션 풀 갱신부(420)는 셀렉션 풀에 포함된 클러스터를 제2 클러스터로 이용할 수 있다.
반면 셀렉션 풀을 최초 이후 갱신할 때, 셀렉션 풀 갱신부(420)는 갱신된 셀렉션 풀에 포함된 제3 클러스터 또는 미리 정해진 클러스터들에 포함된 제4 클러스터를 제2 클러스터로 이용할 수 있다.
상기에서 셀렉션 풀을 최초 이후 갱신하기 전에, 선택하는 단계가 수행될 수 있다. 선택하는 단계는 클러스터 선택부(470)에 의해 수행되는 단계이며, 이 단계에서는 클러스터 선택부(470)가 셀렉션 풀을 최초 이후 갱신할 때 갱신된 셀렉션 풀에 포함된 클러스터(제3 클러스터) 또는 미리 정해진 클러스터들에 포함된 클러스터(제4 클러스터)를 제2 클러스터로 선택하는 기능을 수행한다.
한편 선택하는 단계 이후에, 클러스터 정보 변경부(480)가 제3 클러스터 또는 제4 클러스터에서 유전자에 대한 정보 또는 샘플에 대한 정보를 변경할 수 있다. 그러면 이후 셀렉션 풀 갱신부(420)가 셀렉션 풀을 최초 이후 갱신할 때 유전자에 대한 정보 또는 샘플에 대한 정보가 변경된 제3 클러스터 또는 제4 클러스터를 제2 클러스터로 이용할 수 있다.
한편 S510 단계 이전에, 클러스터 생성부(460)가 유전자에 대한 정보와 샘플에 대한 정보를 기초로 미리 정해진 클러스터들을 생성할 수 있다.
이상에서 설명한 본 발명의 실시예를 구성하는 모든 구성요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 또한, 이와 같은 컴퓨터 프로그램은 USB 메모리, CD 디스크, 플래쉬 메모리 등과 같은 컴퓨터가 읽을 수 있는 기록매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 기록매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 상세한 설명에서 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구 범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.
Claims (19)
- 유전자에 대한 정보를 기초로 미리 정해진 클러스터들에 대한 스코어(Score)를 산출하는 스코어 산출부;
상기 미리 정해진 클러스터들 중에서 상기 스코어를 기초로 선택된 적어도 하나의 제1 클러스터, 및 셀렉션 풀(Selection pool)에 포함된 적어도 하나의 제2 클러스터를 기초로 상기 셀렉션 풀을 갱신하되, 상기 제1 클러스터와 상기 제2 클러스터가 미리 정해진 제1 비율 이상 겹치는지 여부에 대한 제1 판단 결과, 및 상기 제1 판단 결과에 따르는 것으로서 상기 제1 클러스터에 대한 스코어가 상기 제2 클러스터에 대한 스코어보다 큰 지 여부에 대한 제2 판단 결과를 기초로 상기 셀렉션 풀을 갱신하는 셀렉션 풀 갱신부; 및
갱신된 셀렉션 풀에 포함된 유전자들을 기초로 바이클러스터(Bicluster)를 생성하되, 상기 갱신된 셀렉션 풀에 포함된 클러스터들 중에서 미리 정해진 제2 비율 이상 겹치는 클러스터들을 통합하여 단일 클러스터로 생성하며, 상기 단일 클러스터에 포함된 유전자들을 기초로 상기 바이클러스터를 생성하는 바이클러스터 생성부
를 포함하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 1 항에 있어서,
상기 바이클러스터는 질병 유전자를 검출하는 데에 이용되는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 1 항에 있어서,
상기 셀렉션 풀 갱신부는 상기 미리 정해진 클러스터들 중에서 제1 기준값 이상의 스코어를 가지는 클러스터를 상기 제1 클러스터로 선택하는 것을 특징으로 하는 바이클러스터 생성 장치. - 삭제
- 제 1 항에 있어서,
상기 셀렉션 풀 갱신부는 상기 제1 클러스터와 상기 제2 클러스터가 상기 제1 비율 이상 겹치는 것으로 판단되면 상기 제1 클러스터에 대한 스코어가 상기 제2 클러스터에 대한 스코어보다 큰지 여부를 판단하여 상기 셀렉션 풀을 갱신하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 5 항에 있어서,
상기 셀렉션 풀 갱신부는 상기 제1 클러스터에 대한 스코어가 상기 제2 클러스터에 대한 스코어보다 큰 것으로 판단되면 상기 셀렉션 풀에서 상기 제2 클러스터를 제외시키고 상기 제1 클러스터를 포함시켜 상기 셀렉션 풀을 갱신하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 1 항에 있어서,
상기 셀렉션 풀 갱신부는 상기 제1 클러스터와 상기 제2 클러스터가 상기 제1 비율 이상 겹치지 않는 것으로 판단되면 상기 셀렉션 풀에 상기 제1 클러스터를 포함시켜 상기 셀렉션 풀을 갱신하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 1 항에 있어서,
상기 셀렉션 풀 갱신부는 상기 셀렉션 풀을 최초 갱신할 때 상기 셀렉션 풀에 포함된 클러스터를 상기 제2 클러스터로 이용하며, 상기 셀렉션 풀을 최초 이후 갱신할 때 상기 갱신된 셀렉션 풀에 포함된 제3 클러스터 또는 상기 미리 정해진 클러스터들에 포함된 제4 클러스터를 상기 제2 클러스터로 이용하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 8 항에 있어서,
상기 셀렉션 풀 갱신부는 상기 셀렉션 풀을 최초 이후 갱신할 때 미리 정해진 확률로 상기 제3 클러스터를 상기 제2 클러스터로 이용하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 8 항에 있어서,
상기 제3 클러스터 또는 상기 제4 클러스터에서 유전자에 대한 정보 또는 샘플에 대한 정보를 변경하는 클러스터 정보 변경부
를 더 포함하며,
상기 셀렉션 풀 갱신부는 상기 셀렉션 풀을 최초 이후 갱신할 때 유전자에 대한 정보 또는 샘플에 대한 정보가 변경된 상기 제3 클러스터 또는 상기 제4 클러스터를 상기 제2 클러스터로 이용하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 10 항에 있어서,
상기 클러스터 정보 변경부는 다른 클러스터에 포함된 유전자 또는 샘플을 상기 제3 클러스터 또는 상기 제4 클러스터에 포함된 유전자 또는 샘플에 교차시키거나, 상기 제3 클러스터 또는 상기 제4 클러스터에 유전자 또는 샘플을 추가 또는 삭제하여 상기 제3 클러스터 또는 상기 제4 클러스터에서 유전자에 대한 정보 또는 샘플에 대한 정보를 변경하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 1 항에 있어서,
상기 셀렉션 풀 갱신부는 미리 정해진 횟수만큼 상기 셀렉션 풀을 갱신하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 1 항에 있어서,
상기 바이클러스터 생성부는 상기 갱신된 셀렉션 풀에 포함된 클러스터들에 대한 스코어가 제2 기준값 이상인지 여부를 판단하며, 상기 제2 기준값 이상의 스코어를 가지는 클러스터에 포함된 유전자들을 기초로 상기 바이클러스터를 생성하는 것을 특징으로 하는 바이클러스터 생성 장치. - 삭제
- 제 1 항에 있어서,
상기 스코어 산출부는 상기 미리 정해진 클러스터들 중에서 선택된 어느 하나의 클러스터에 포함된 제1 유전자들의 발현값과 상기 어느 하나의 클러스터에 포함되지 않은 제2 유전자들의 발현값을 기초로 상기 클러스터들에 대한 스코어를 산출하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 15 항에 있어서,
상기 스코어 산출부는,
상기 제1 유전자들의 발현값을 합산하여 얻은 값을 상기 제1 유전자들의 개수로 나누어 제1 평균값을 산출하는 제1 평균값 산출부;
상기 제2 유전자들의 발현값을 합산하여 얻은 값을 상기 제2 유전자들의 개수로 나누어 제2 평균값을 산출하는 제2 평균값 산출부;
상기 제1 평균값끼리 곱셈하여 제1 곱셈값을 획득하고, 상기 제1 평균값에서 상기 제2 평균값을 뺀 값과 상기 제1 평균값을 곱셈하여 제2 곱셈값을 획득하며, 상기 제1 곱셈값과 상기 제2 곱셈값의 절대값을 합산하여 유전자에 대한 스코어를 산출하는 유전자 스코어 산출부; 및
상기 유전자에 대한 스코어를 기초로 상기 어느 하나의 클러스터에 대한 스코어를 산출하는 클러스터 스코어 산출부
를 포함하는 것을 특징으로 하는 바이클러스터 생성 장치. - 제 1 항에 있어서,
유전자에 대한 정보와 샘플에 대한 정보를 기초로 상기 미리 정해진 클러스터들을 생성하는 클러스터 생성부
를 더 포함하는 것을 특징으로 하는 바이클러스터 생성 장치. - 유전자에 대한 정보를 기초로 미리 정해진 클러스터들에 대한 스코어(Score)를 산출하는 단계;
상기 미리 정해진 클러스터들 중에서 상기 스코어를 기초로 선택된 적어도 하나의 제1 클러스터, 및 셀렉션 풀(Selection pool)에 포함된 적어도 하나의 제2 클러스터를 기초로 상기 셀렉션 풀을 갱신하되, 상기 제1 클러스터와 상기 제2 클러스터가 미리 정해진 제1 비율 이상 겹치는지 여부에 대한 제1 판단 결과, 및 상기 제1 판단 결과와 관련된 것으로서 상기 제1 클러스터에 대한 스코어가 상기 제2 클러스터에 대한 스코어보다 큰 지 여부에 대한 제2 판단 결과를 기초로 상기 셀렉션 풀을 갱신하는 단계; 및
갱신된 셀렉션 풀에 포함된 유전자들을 기초로 바이클러스터(Bicluster)를 생성하되, 상기 갱신된 셀렉션 풀에 포함된 클러스터들 중에서 미리 정해진 제2 비율 이상 겹치는 클러스터들을 통합하여 단일 클러스터로 생성하며, 상기 단일 클러스터에 포함된 유전자들을 기초로 상기 바이클러스터를 생성하는 단계
를 포함하는 것을 특징으로 하는 바이클러스터 생성 방법. - 제 18 항에 있어서,
상기 갱신하는 단계는 상기 미리 정해진 클러스터들 중에서 제1 기준값 이상의 스코어를 가지는 클러스터를 상기 제1 클러스터로 선택하는 것을 특징으로 하는 바이클러스터 생성 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160015218A KR101704737B1 (ko) | 2016-02-05 | 2016-02-05 | 셀렉션 풀을 이용한 바이클러스터 생성 장치 및 방법 |
PCT/KR2016/001877 WO2017135497A1 (ko) | 2016-02-05 | 2016-02-25 | 셀렉션 풀을 이용한 바이클러스터 생성 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160015218A KR101704737B1 (ko) | 2016-02-05 | 2016-02-05 | 셀렉션 풀을 이용한 바이클러스터 생성 장치 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101704737B1 true KR101704737B1 (ko) | 2017-02-08 |
Family
ID=58155300
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160015218A KR101704737B1 (ko) | 2016-02-05 | 2016-02-05 | 셀렉션 풀을 이용한 바이클러스터 생성 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101704737B1 (ko) |
WO (1) | WO2017135497A1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003028855A (ja) * | 2001-06-15 | 2003-01-29 | Hitachi Software Eng Co Ltd | クラスタリング結果評価方法及びクラスタリング結果表示方法 |
KR20100069141A (ko) * | 2008-12-16 | 2010-06-24 | 연세대학교 산학협력단 | 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체 |
KR101514762B1 (ko) * | 2014-05-15 | 2015-05-20 | 연세대학교 산학협력단 | mRNA 발현 값의 발현 차이를 이용하여 유전자 집합을 검출하기 위한 장치 및 그 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7849088B2 (en) * | 2006-07-31 | 2010-12-07 | City University Of Hong Kong | Representation and extraction of biclusters from data arrays |
KR100963764B1 (ko) * | 2008-02-27 | 2010-06-14 | 연세대학교 산학협력단 | 바이클러스터링 방법 및 장치 |
US8478541B2 (en) * | 2010-08-10 | 2013-07-02 | Indian Statistical Institute | Extracting gene-gene interactions from gene expression data |
EP2439282A1 (en) * | 2010-10-06 | 2012-04-11 | bioMérieux | Method for determining a biological pathway activity |
US9043326B2 (en) * | 2011-01-28 | 2015-05-26 | The Curators Of The University Of Missouri | Methods and systems for biclustering algorithm |
-
2016
- 2016-02-05 KR KR1020160015218A patent/KR101704737B1/ko active IP Right Grant
- 2016-02-25 WO PCT/KR2016/001877 patent/WO2017135497A1/ko active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003028855A (ja) * | 2001-06-15 | 2003-01-29 | Hitachi Software Eng Co Ltd | クラスタリング結果評価方法及びクラスタリング結果表示方法 |
KR20100069141A (ko) * | 2008-12-16 | 2010-06-24 | 연세대학교 산학협력단 | 매크로 클러스터링 방법과 그 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체 |
KR101514762B1 (ko) * | 2014-05-15 | 2015-05-20 | 연세대학교 산학협력단 | mRNA 발현 값의 발현 차이를 이용하여 유전자 집합을 검출하기 위한 장치 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
WO2017135497A1 (ko) | 2017-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mukhopadhyay et al. | Causality and pathway search in microarray time series experiment | |
Leung et al. | Deep learning of the tissue-regulated splicing code | |
Liu et al. | Gene network inference via structural equation modeling in genetical genomics experiments | |
CN113707236B (zh) | 基于图神经网络的药物小分子性质预测方法、装置及设备 | |
US11960802B2 (en) | Method, processor device and computer program product for designing intervention into the behaviour of a real complex system | |
CN111406264A (zh) | 神经架构搜索 | |
La Rota et al. | A data-driven integrative model of sepal primordium polarity in Arabidopsis | |
Thorne et al. | Inference of temporally varying Bayesian networks | |
Li et al. | Nature-inspired multiobjective epistasis elucidation from genome-wide association studies | |
Cui et al. | LncRNA-disease associations prediction using bipartite local model with nearest profile-based association inferring | |
KR20200110141A (ko) | 신약 후보 물질 도출을 위한 데이터 처리 방법 | |
JP2001188768A (ja) | ネットワーク推定方法 | |
CN116564408A (zh) | 基于知识图谱推理的合成致死基因对预测方法、装置、设备及介质 | |
Zarei et al. | Chaotic memetic algorithm and its application for detecting community structure in complex networks | |
Zhen et al. | Neighborhood evolutionary sampling with dynamic repulsion for expensive multimodal optimization | |
Bao et al. | Analysis of critical and redundant vertices in controlling directed complex networks using feedback vertex sets | |
Liu et al. | TreeMap: a structured approach to fine mapping of eQTL variants | |
KR101704737B1 (ko) | 셀렉션 풀을 이용한 바이클러스터 생성 장치 및 방법 | |
Wang et al. | An improved memetic algorithm for detecting protein complexes in protein interaction networks | |
CN115762631A (zh) | 一种癌症驱动基因识别方法及系统 | |
Ha et al. | Estimation of high-dimensional directed acyclic graphs with surrogate intervention | |
CN113177354A (zh) | 基于改进ann耦合异步元胞自动机的城市动态扩张模拟方法 | |
Wu et al. | Target driven biochemical network reconstruction based on petri nets and simulated annealing | |
Deng et al. | Neural‐augmented two‐stage Monte Carlo tree search with over‐sampling for protein folding in HP Model | |
Liu et al. | Multi-objective evolutionary algorithm for mining 3D clusters in gene-sample-time microarray data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |