KR20230135782A - 유전자 데이터를 활용하여 종양을 분류하기 위한 기계학습 장치 및 방법 - Google Patents

유전자 데이터를 활용하여 종양을 분류하기 위한 기계학습 장치 및 방법 Download PDF

Info

Publication number
KR20230135782A
KR20230135782A KR1020220033176A KR20220033176A KR20230135782A KR 20230135782 A KR20230135782 A KR 20230135782A KR 1020220033176 A KR1020220033176 A KR 1020220033176A KR 20220033176 A KR20220033176 A KR 20220033176A KR 20230135782 A KR20230135782 A KR 20230135782A
Authority
KR
South Korea
Prior art keywords
learning
tumor
dataset
data
inference
Prior art date
Application number
KR1020220033176A
Other languages
English (en)
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 KR1020220033176A priority Critical patent/KR20230135782A/ko
Publication of KR20230135782A publication Critical patent/KR20230135782A/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
    • G16B40/00ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
    • CCHEMISTRY; METALLURGY
    • C12BIOCHEMISTRY; BEER; SPIRITS; WINE; VINEGAR; MICROBIOLOGY; ENZYMOLOGY; MUTATION OR GENETIC ENGINEERING
    • C12QMEASURING OR TESTING PROCESSES INVOLVING ENZYMES, NUCLEIC ACIDS OR MICROORGANISMS; COMPOSITIONS OR TEST PAPERS THEREFOR; PROCESSES OF PREPARING SUCH COMPOSITIONS; CONDITION-RESPONSIVE CONTROL IN MICROBIOLOGICAL OR ENZYMOLOGICAL PROCESSES
    • C12Q1/00Measuring or testing processes involving enzymes, nucleic acids or microorganisms; Compositions therefor; Processes of preparing such compositions
    • C12Q1/68Measuring or testing processes involving enzymes, nucleic acids or microorganisms; Compositions therefor; Processes of preparing such compositions involving nucleic acids
    • C12Q1/6876Nucleic acid products used in the analysis of nucleic acids, e.g. primers or probes
    • C12Q1/6883Nucleic acid products used in the analysis of nucleic acids, e.g. primers or probes for diseases caused by alterations of genetic material
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G16B20/00ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • CCHEMISTRY; METALLURGY
    • C12BIOCHEMISTRY; BEER; SPIRITS; WINE; VINEGAR; MICROBIOLOGY; ENZYMOLOGY; MUTATION OR GENETIC ENGINEERING
    • C12QMEASURING OR TESTING PROCESSES INVOLVING ENZYMES, NUCLEIC ACIDS OR MICROORGANISMS; COMPOSITIONS OR TEST PAPERS THEREFOR; PROCESSES OF PREPARING SUCH COMPOSITIONS; CONDITION-RESPONSIVE CONTROL IN MICROBIOLOGICAL OR ENZYMOLOGICAL PROCESSES
    • C12Q2600/00Oligonucleotides characterized by their use
    • C12Q2600/156Polymorphic or mutational markers

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Chemical & Material Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Proteomics, Peptides & Aminoacids (AREA)
  • Theoretical Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Organic Chemistry (AREA)
  • Genetics & Genomics (AREA)
  • Data Mining & Analysis (AREA)
  • Public Health (AREA)
  • Software Systems (AREA)
  • Analytical Chemistry (AREA)
  • Biophysics (AREA)
  • Biotechnology (AREA)
  • Epidemiology (AREA)
  • Molecular Biology (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Computation (AREA)
  • Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biomedical Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • Zoology (AREA)
  • Evolutionary Biology (AREA)
  • Artificial Intelligence (AREA)
  • Wood Science & Technology (AREA)
  • Microbiology (AREA)
  • Biochemistry (AREA)
  • Immunology (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Bioethics (AREA)
  • Primary Health Care (AREA)

Abstract

본 발명은 종양 분류 기계학습 장치 및 방법에 관한 것이다. 본 발명에 따른 종양 분류 기계학습 장치는, 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋을 전처리하는 데이터 전처리 모듈; 상기 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성하는 학습 모듈; 및 상기 전처리된 추론용 DNA 데이터셋을 기초로 상기 종양 분류 모델을 통해 상기 추론용 DNA 데이터셋의 각 샘플에 대한 종양 여부 및 종양 종류를 추론하는 추론 모듈;을 포함한다.

Description

유전자 데이터를 활용하여 종양을 분류하기 위한 기계학습 장치 및 방법{MACHINE LEARNING DEVICE AND METHOD FOR CLASSIFYING TUMORS USING DNA DATA}
본 발명은 유전자 데이터(DNA 데이터)를 활용하여 종양을 분류하기 위한 기계학습 장치 및 방법에 관한 것이다.
종래의 종양(tumor) 여부 판단 및 종양 종류 판별 기술은, 건강이상자나 건강검진자 등으로부터 수집한 ① 문진자료, ② X-ray, 자기공명 등의 영상 데이터, 그리고 ③ 혈액이나 생체 샘플의 바이오마커 등을 분석하는 방식으로 이뤄지고 있어서, 종양 발생 이후에 비로소 종양 여부 및 종양 종류 판별이 가능하다. 따라서 기존의 종양 여부 판단 및 종양 종류 판별 방법은 종양 발생 이전의 예방적 판별이 불가능하다는 문제점이 있으며, 판별에 필요한 시간, 비용, 편의성 측면에서 매우 불리하다.
또한, 종래 기술은 영상 데이터를 기반으로 종양 여부를 판단하고 종양 종류를 판별하는 인공지능 모델을 구축하므로, 모델의 학습에 사용된 원시 데이터의 오류(영상 보정, 왜곡, 저해상도 등)로 인하여 분류 정밀성이 저하된다는 문제점이 있다.
대한민국특허청(KR) 등록특허공보(B1) 10-2233740
본 발명은 상술한 종래기술의 문제점을 해결하기 위해, 유전자 데이터를 활용하여 종양 여부 판단 및 종양 분류 처리를 할 수 있는 기계학습 모델 장치 및 방법을 제공하는데 그 목적이 있다. 더욱 상세하게는, 종양 보유자로부터 확보한 DNA 데이터를 전처리하고, 전처리된 DNA 데이터를 기초로 기계 학습을 통해 종양 분류 모델을 생성하고, 상기 모델에 DNA 데이터를 입력하여 종양 여부를 판단하고 종양을 분류할 수 있는 기계학습 장치 및 방법을 제공하는데 그 목적이 있다.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 종양 분류 기계학습 장치는, 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋을 전처리하는 데이터 전처리 모듈; 상기 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성하는 학습 모듈; 및 상기 전처리된 추론용 DNA 데이터셋을 기초로 상기 종양 분류 모델을 통해 상기 추론용 DNA 데이터셋의 각 샘플에 대한 종양 여부 및 종양 종류를 추론하는 추론 모듈;을 포함한다.
본 발명의 일 실시예에서, 상기 데이터 전처리 모듈은 상기 학습용 DNA 데이터셋을 TCGA(The Cancer Genome Atlas) 데이터베이스에서 수집할 수 있다.
본 발명의 일 실시예에서, 상기 데이터 전처리 모듈은, 상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에서, 종양 종류와의 상관 계수의 절대값이 소정의 상관계수 절대값 임계치보다 낮은 변수를 제거할 수 있다.
본 발명의 일 실시예에서, 상기 데이터 전처리 모듈은, 상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에서 유일성(uniqueness)을 지닌 변수를 제거할 수 있다.
본 발명의 일 실시예에서, 상기 데이터 전처리 모듈은, 상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에서 문자열로 표현된 데이터를 수치 데이터로 변환할 수 있다.
본 발명의 일 실시예에서, 상기 데이터 전처리 모듈은, 상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에서 문자열로 표현된 데이터를 정수로 변환할 수 있다.
본 발명의 일 실시예에서, 상기 데이터 전처리 모듈은, 상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋의 각 변수의 데이터 분포를 정규화할 수 있다.
본 발명의 일 실시예에서, 상기 데이터 전처리 모듈은, 상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에 포함된 각 변수의 평균과 표준편차를 각각 특정한 평균값과 특정한 표준편차값이 되도록 상기 각 변수의 데이터를 변환할 수 있다.
본 발명의 일 실시예에서, 상기 학습 모듈은, 상기 랜덤 포레스트 모델을 구성하는 결정 트리 수(n_estimator)를 100 이하의 값으로 설정하여 상기 종양 분류 모델을 생성할 수 있다.
본 발명의 일 실시예에서, 상기 학습 모듈은, 상기 랜덤 포레스트 모델에 포함된 상기 결정 트리의 노드 분할을 위한 최소한의 샘플 데이터 수(min_samples_split)를 5 미만으로 설정하여 상기 종양 분류 모델을 생성할 수 있다.
본 발명의 일 실시예에서, 상기 학습 모듈은, 상기 랜덤 포레스트 모델에 포함된 상기 결정 트리의 최대 깊이(max_depth)를 제한하지 않을 수 있다.
본 발명의 일 실시예에서, 상기 학습 모듈은, 지니 불순도(Gini impurity)를 상기 랜덤 포레스트 모델의 학습 평가기준(Criterion)으로 사용할 수 있다.
본 발명의 일 실시예에서, 상기 추론 모듈은, 상기 전처리된 추론용 DNA 데이터셋을 상기 종양 분류 모델에 입력하고, 상기 종양 분류 모델에 포함된 각 결정 트리에서 출력한 종양 종류 분류 결과를 집계하여, 다수결(Majority Voting)에 따라 상기 추론용 DNA 데이터셋의 각 샘플에 대한 종양 여부 및 종양 종류를 결정하는 방식으로 추론할 수 있다.
그리고, 본 발명의 일 실시예에 따른 종양 분류 기계학습 방법은, 학습용 DNA 데이터셋을 입력받는 학습용 데이터셋 입력 단계; 상기 학습용 DNA 데이터셋을 변수 제거, 문자열 데이터 수치화 및 데이터 분포 조정 중 적어도 어느 하나의 전처리 기법을 통해 전처리하는 학습용 데이터셋 전처리 단계; 및 상기 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성하는 인공지능 모델 학습 단계;를 포함한다.
본 발명의 일 실시예에서, 상기 학습용 데이터셋 전처리 단계는, 상기 학습용 DNA 데이터셋에서, 종양 종류와의 상관 계수의 절대값이 소정의 상관계수 절대값 임계치보다 낮은 변수를 제거하는 것일 수 있다.
본 발명의 일 실시예에서, 상기 학습용 데이터셋 전처리 단계는, 상기 학습용 DNA 데이터셋에서 문자열로 표현된 데이터를 정수로 변환하는 것일 수 있다.
본 발명의 일 실시예에서, 상기 학습용 데이터셋 전처리 단계는, 상기 학습용 DNA 데이터셋에 포함된 각 변수의 평균과 표준편차를 각각 특정한 평균값과 특정한 표준편차값이 되도록 상기 각 변수의 데이터를 변환하는 방식의 데이터 분포 조정을 수행하는 것일 수 있다.
본 발명의 일 실시예에서, 상기 인공지능 모델 학습 단계는, 상기 랜덤 포레스트 모델을 구성하는 결정 트리 수(n_estimator)를 100 이하의 값으로 설정하여 상기 종양 분류 모델을 생성하는 것일 수 있다.
본 발명의 일 실시예에서, 상기 인공지능 모델 학습 단계는, 상기 랜덤 포레스트 모델에 포함된 상기 결정 트리의 노드 분할을 위한 최소한의 샘플 데이터 수(min_samples_split)를 5 미만으로 설정하여 상기 종양 분류 모델을 생성하는 것일 수 있다.
그리고, 본 발명의 일 실시예에 따른 종양 분류 기계학습 및 추론 방법은, 학습용 DNA 데이터셋을 입력받는 학습용 데이터셋 입력 단계; 상기 학습용 DNA 데이터셋을 전처리하는 학습용 데이터셋 전처리 단계; 상기 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성하는 인공지능 모델 학습 단계; 추론용 DNA 데이터셋을 입력받는 추론용 데이터셋 입력 단계; 상기 추론용 DNA 데이터셋을 전처리하는 추론용 데이터셋 전처리 단계; 및 상기 전처리된 추론용 DNA 데이터셋을 기초로 상기 종양 분류 모델을 통해 상기 추론용 DNA 데이터셋의 각 샘플에 대한 종양 여부 및 종양 종류를 추론하는 종양 종류 추론 단계;를 포함한다.
본 발명에 따른 종양 분류를 위한 기계학습 장치 및 방법은, DNA 데이터셋을 데이터 전처리를 거쳐 종양(Tumor) 여부와 종류를 분류하는 인공지능 모델의 기계학습에 활용함으로써, 기존의 영상 데이터셋을 기초로 종양 여부를 판단하고 종양의 종류를 분류하는 인공지능 모델과 비교하여 원시 데이터에 기인한 오탐율을 감소시키고 분류 정밀성을 향상할 수 있다.
또한, 본 발명에 따른 종양 분류를 위한 기계학습 장치 및 방법은, DNA 데이터셋을 기계학습에 적용함으로써, 영상적 병변 발견 전에 종양 유발 원인이 되는 DNA 변이와 함께 그에 따른 종양 발생 여부 및 종양 종류를 예측할 수 있어서, 종양의 사전 예측은 물론이고 병변이나 바이오마커로 나타나기 전에 예방적 조치를 취할 수 있다는 효과가 있다.
또한, 본 발명에 따른 종양 분류를 위한 기계학습 장치 및 방법은, DNA 데이터셋을 전처리하여 활용함과 동시에 인공지능 모델의 파라미터를 최적으로 구성함으로써 모델의 구조를 간소화시켜, 기존의 랜덤포레스트 기반의 인공지능 모델 대비 연산 소요시간을 단축하면서도 분류 정밀성을 향상할 수 있다는 효과가 있다.
표 1은 일반적인 랜덤포레스트 기법과 본 발명에 따른 인공지능 기계학습 모델의 성능을 비교한 것이다. 본 발명에 따를 때, 추론 시간을 기존의 0.1초의 1/100인 0.001초 수준으로 단축시킬 수 있다. 또한 본 발명에서는 모델 크기(Max Tree Depth)를 축소하여 연산속도를 향상하였으며, 노드 분할(Tree Split Size)을 최소화하여 모델을 훈련시킴으로써 연산속도를 향상할 수 있었다.
특징 본 발명의 모델 일반적인 랜덤 포레스트 기법
Inference Time / Item 0.001초 약 0.1초
Max Tree Depth 100 1000 보다 큼(제한 없음)
Tree Split Size 2 5보다 큼
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 종양 분류 기계학습 장치의 구성을 나타낸 블록도.
도 2a 및 도 2b는 TCGA 포맷의 DNA 데이터셋 구성을 나타낸 도면.
도 3는 상관계수 계산 예시를 나타낸 도면.
도 4는 데이터의 정규화 과정의 예시를 나타낸 도면.
도 5는 본 발명의 일 실시예에 따른 종양 분류 기계학습 장치가 DNA 데이터셋을 기초로 종양의 종류를 추론하는 과정을 나타낸 참고도.
도 6은 본 발명의 일 실시예에 따른 종양 분류 기계학습 및 추론 방법을 설명하기 위한 흐름도.
도 7은 인공지능 모델의 API 실행 순서를 나타낸 도면.
도 8은 데이터셋 입력 API를 호출하기 위한 예제 스크립트를 나타낸 도면.
도 9는 인공지능 모델의 연산 API를 호출하기 위한 예제 스크립트를 나타낸 도면.
도 10은 분류 결과 출력 API를 호출하기 위한 예제 스크립트를 나타낸 도면.
최근 건강이상자나 건강검진자 등으로부터 무구속 상태에서 간편하고 신속하게 유전자 데이터를 획득할 수 있는 기술이 발전하고 있다. 그에 따라, 본 발명은 특정 종양을 내재한 건강이상자들로부터 확보한 DNA 데이터(예를 들어, TCGA 프로젝트의 DNA Tumor 데이터셋)를 활용하여 기계학습(인공지능) 모델을 학습시키고, 종양 여부와 종류를 알 수 없는 DNA 데이터를 상기 학습된 모델에 입력하여 상기 학습된 모델의 추론 결과를 통해 종양 여부와 종양의 종류를 판별/예측할 수 있는 기계학습 모델 장치 및 방법을 제시한다.
종래기술과 차별화되는 본 발명의 특징을 하기에 설명한다.
첫째, 인공지능을 이용하여 종양 여부 및 종양 종류를 판별하는 종래의 기술은 X-ray와 자기공명 등의 영상데이터를 사용하여 기계 학습한 인공지능 모델을 통해서 종양 여부 또는 종양 종류를 판별/예측하는 방법이 있으나 본 발명에서는 예측 성능을 높이기 위해 전처리한 DNA 데이터를 사용하여 기계 학습한 인공지능 모델을 통해 종양의 여부와 종류를 판별한다는 점이 차이점이다. 또한, DNA 데이터를 기반으로 기계 학습 기법을 이용하여 종양 종류를 예측하는 종래 기술이 있으나, 본 발명은 종양 보유자로부터 확보한 DNA 데이터를 인공지능 모델의 기계 학습에 바로 사용하지 않고 인공지능 모델의 신뢰성과 정확성을 향상하기 위해 DNA 데이터에서 불필요한 항목 제거, 데이터 구조 변경, 데이터 정규화 등의 '데이터 전처리'를 한다는 점이 차이점이다.
둘째, 본 발명은 인공지능 모델의 종류로서 랜덤 포레스트(Random Forest) 모델을 취하였는데, 일반적인 랜덤 포레스트 모델은 언더피팅(Under-fitting)을 피하기 위해 결정 트리(Decision Tree, n_estimater)값을 최대 1,000개까지 구성하며 오버피팅(Over-fitting)을 피하기 위해 노드를 분할하기 위한 최소 샘플 데이터 수(min_samples_split) 값을 5이상 설정하지만, 본 발명에서는 데이터 전처리를 통해 정제된 DNA 데이터를 인공지능 모델의 기계 학습에 사용함으로써 결정 트리는 종래의 10분의 1 수준으로 줄이고, 최소 샘플 데이터 수도 종래의 2분의 1 이하로 줄인 간소화된 랜덤 포레스트 모델을 적용함으로써 기계 학습 시간을 단축하고도 분류 정확도를 오히려 향상(90%에서 96.8%으로)시켰다는 차이점이 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
이하, 본 발명의 실시예를 첨부한 도면들을 참조하여 상세히 설명한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면 번호에 상관없이 동일한 수단에 대해서는 동일한 참조 번호를 사용하기로 한다.
도 1은 본 발명의 일 실시예에 따른 종양 분류 기계학습 장치의 구성을 나타낸 블록도이다.
본 발명의 일 실시예에 따른 종양 분류 기계학습 장치(100)는 데이터 전처리 모듈(110), 학습 모듈(120) 및 추론 모듈(130)을 포함하여 구성된다. 데이터 전처리 모듈(110)은 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋을 전처리하고, 학습 모듈(120)은 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성하며, 추론 모듈(130)은 전처리된 추론용 DNA 데이터셋을 종양 분류 모델에 입력하여 종양 분류 결과를 출력한다.
데이터 전처리 모듈(110)은 DNA 데이터셋(이하 '데이터셋'으로 약칭할 수 있음)을 대상으로, 불필요한 항목(변수) 제거, 데이터 구조 변경(데이터 변환), 데이터 정규화 등의 노이즈 제거, 중복값 제거, 결손값 보정, 데이터 연계 및 통합, 데이터 차원 변경 등의 전처리를 수행할 수 있다. 본 발명은 DNA 데이터셋의 전처리를 통해 종양 분류 모델을 간소화하여 학습 및 추론에 소요되는 연산 시간을 단축하고, 분류 정확도/정밀도를 향상할 수 있다.
데이터 전처리 모듈(110)은 상술한 전처리 작업의 수행을 위하여, 변수 정제부(111), 데이터 변환부(112) 및 정규화부(113), 노이즈 제거부(114), 중복값 제거부(115), 결손값 보정부(116), 데이터 연계 및 통합부(117), 데이터 차원 변경부(118)를 포함할 수 있다.
하기에, 종양 분류 기계학습 장치(100)의 데이터 전처리 모듈(110)에 입력되는 DNA 데이터셋에 대해 설명한다. 데이터 전처리 모듈(110)에 입력되는 DNA 데이터셋은 TCGA(The Cancer Genome Atlas) 등의 공개 DB에서 수집한 데이터셋 또는 시료 분석을 통해 획득한 DNA 데이터셋(Dataset)이 될 수 있다.
DNA 데이터셋은 학습용과 추론용으로 구분되며, 학습용 DNA 데이터셋은 전처리된 후 종양 분류 모델 생성에 사용되며, 추론용 DNA 데이터셋은 종양 분류 모델에 입력되어 종양 종류(종양 유형)을 추론하는 데 사용된다. 추론용 DNA 데이터셋은 학습용 DNA 데이터셋 대비 종양 종류(종양 유형) 정보가 나타나 있지 않다. 즉, 학습용 DNA 데이터셋에는 종양 유형 데이터가 있지만 추론용 DNA 데이터셋에는 종양 유형 데이터가 없다.
도 2a 및 도 2b는 TCGA 포맷의 DNA 데이터셋 구성을 나타낸 도면이다. 도 2b는 DNA 데이터셋의 출력 파일이고, 도 2a는 상기 출력 파일이 해석된 형태이다. 도 학습용 DNA 데이터셋은 데이터베이스 또는 텍스트 파일 형태로 존재할 수 있다. 학습용 DNA 데이터셋은 유방(breast), 방광(bladder), 피부(skin) 등 종양에 대한 정보와 함께, 염색체, 위치, 돌연변이 유형 및 돌연변이 대립유전자(즉, 돌연변이의 DNA 문자), 그리고 각각의 종양에 대한 종양 종류 및 기타 정보(예: 위치)가 포함되어 있다. 각 행은 종양 샘플을 의미하고 열은 돌연변이 정보에 해당하는 탭으로 구분되어 종양 돌연변이 정보를 제공하고 있다. 메타 데이터 파일에는 종양 종류 및 기타 정보가 나타나 있는데, 각 행은 종양 샘플에 해당하고 열은 종양 정보를 포함하고 있다. 출력파일(도 2b)이 해석된 후 출력파일은 각 종양에 대해 예측된 종양 종류 및 기타 정보가 기 예측된 정보 내장 메타데이터 파일과 동일한 형식으로 표현되고 있다.
데이터 전처리 모듈(110)은 인공지능 모델의 학습이나 추론(분석)에 적합하지 않은 데이터 구조를 변환하고, 누락된 항목(변수)나 결손값(NA)을 처리한다. 구체적으로, 데이터 전처리 모듈(110)은 DNA 데이터셋을 대상으로, 불필요한 항목(변수) 제거, 데이터 구조 변경(데이터 변환), 데이터 정규화 등의 노이즈 제거, 중복값 제거, 결손값 보정, 데이터 연계 및 통합, 데이터 차원 변경 등의 전처리를 수행할 수 있다. 특히 본 발명은 변수 정제(불필요 항목 제거), 데이터 변환(데이터 구조 변경) 및 데이터 정규화를 적용하여, 인공지능 모델의 추론 결과의 신뢰성과 정확성을 높일 수 있도록 데이터셋의 구조를 최적화한 데이터셋이 학습이나 추론 전에 준비되도록 한다. 상술한 대로, 데이터 전처리 모듈(110)은 변수 정제부(111), 데이터 변환부(112) 및 정규화부(113)를 포함할 수 있다. 하기에, 변수 정제부(111), 데이터 변환부(112) 및 정규화부(113)의 기능에 대해 상세하게 설명한다.
변수 정제부(111)는 DNA 데이터셋에 있는 변수 중에서 학습이나 추론에 불필요한 항목(변수)을 제거한다(도 2의 'Cleansing label'에 해당함). 변수 정제부(111)는 데이터셋 내의 변수들 중에 불필요한 변수, 목표 변수(예컨대 종양 위치(tumorLOC) 변수)와 상관관계가 낮거나 없는 변수들을 제거한다. DNA 데이터셋에서 종양 위치(tumorLOC) 변수와 상관관계 계수가 높은 변수가 종양 분류 모델의 학습과 추론에 사용되어야 할 변수이다. 도 3은 상관계수 계산 예시를 나타낸 도면인데, 도 3에서 종양 위치(tumorLOC)와 높은 상관계수(절대값 기준)를 나타내는 변수부터 순서대로 나열하면 표 2와 같다.
변수 상관계수(r)
mutationType 0.038
mutationEffect_2 -0.03
SNP? -0.013
location -0.009
mutationEffect_1 -0.0045
geneNameNum -0.0045
chromosomNum 0.00079
변수 정제부(111)는 소정의 상관계수 절대값 임계치보다 낮은 상관계수 절대값을 갖는 변수를 데이터셋에서 제거할 수 있다 또한 변수 정제부(111)는 종양 위치(tumorLOC) 변수와 낮은 상관관계를 나타내는 변수뿐만 아니라 유일성(uniqueness)을 지닌 변수(예: sampleID)도 제거할 수 있다.
데이터 변환부(112)는 DNA 데이터셋에 있는 문자열로 표현된 데이터를 수치 데이터로 변환한다(도 2의 'String to number'에 해당함). 데이터의 내부 표현이 모두 숫자로 되어야 인공지능 모델을 통한 수치 계산이 가능하므로, 데이터 변환부(112)는 문자열 데이터를 숫자형 데이터로 변환하는 작업을 수행한다. 다음 표 3은 데이터 변환부(112)가 DNA 데이터셋에서 문자형(string) 데이터를 갖는 변수를 대상으로, 그 데이터 표현형을 정수형(integer)으로 변경한 예시이다.
변수명 범주수
(종류수)
변경 전
(String)
변경 후
(Integer)
tumorLOC 11 'Bladder', 'Breast', 'Bronchusandlung', 'Cervixuteri', 'Colon', 'Corpusuteri', 'Kidney', 'Liverandintrahepaticbileducts', 'Ovary','Skin', 'Stomach' 0, 1, 2, …, 9, 10
chromosome 24 '1','2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18, '19', '20', '21', '22', 'X', 'Y' 0, 1, 2, …, 22, 23
SNP? 6 'SNP', 'DEL', 'INS', 'TNP', 'ONP' 0, 1, 2, 3, 4, 5
mutationType 16 'Missense_Mutation', 'Silent', "3'UTR", "5'Flank", 'Intron', 'Frame_Shift_Del', 'Nonsense_Mutation', 'RNA', 'Splice_Site', "5'UTR", 'Frame_Shift_Ins', 'Nonstop_Mutation', "3'Flank", 'In_Frame_Del', 'In_Frame_Ins', 'Translation_Start_Site' 0, 1, 2, …, 14, 15
mutationEffect_1 206 'deleterious(0)', 'deleterious(0.01)', '.', 'deleterious(0.03)', 'tolerated(0.12)', …, 'tolerated_low_confidence(0.87)', 'tolerated_low_confidence(0.93)' 0, 1, 2, …, 204, 205
mutationEffect_2 4 'MODERATE', 'LOW', 'MODIFIER', 'HIGH' 0, 1, 2, 3
표 3과 관련하여, 변수 chromosome의 경우, 종래의 방법에서는 chromosome의 String(변경 전) 'X'와 'Y'를 동일한 22로 변환하였으나, 본 발명에서는 'X'를 22로, 'Y'를 23으로 변경함으로써 데이터의 고유한 성질이 정수형으로 변환한 후에도 유지되도록 하였다는 차이점이 있다.
또한, 변수 mutationsEffect_1의 경우, 기존의 방법에서는 중복되는 텍스트(예: deleterious, tolerated 등)를 가지는 변수를 모두 하나의 정수형으로 변경하였으나(예: deleterious(0) = 0, deleterious(0.01) = 0, ...), 본 발명에서는 괄호 내 숫자(예: deleterious(0)의 '0', deleterious(0.01)의 '0.01')에 따라 다른 정수로 변환하였다는(예: deleterious(0) = 0, deleterious(0.01) = 1, ...) 차이점이 있다.
정규화부(113)는 변수별로 데이터 리스케일링(data rescaling)을 통하여 각 항목(변수)별 데이터 평균(mean)이 0이고 표준편차(standard deviation)가 1이 되도록 한다. 정규화부(113)가 수행하는 데이터 정규화의 목적은 모든 변수들을 공통의 척도로 변경해 주기 위한 것이다. 정규화부(113)는 변수별로 데이터 간 상대적 차이를 유지하면서 모든 변수들을 공통의 척도로 스케일링하는 데이터 정규화 과정을 통해, 테스트 데이터셋을 이용한 성능 테스트를 통해 일반화된 성능 평가 결과를 얻을 수 있도록 한다.
한편, 정규화부(113)는 기존의 방법과 달리, 비가우시안(Non-Gaussian) 분포를 가지는 데이터에 대해서도 정규화를 수행하여 종양 분류 정확도가 향상되도록 지원한다. 기존 방법에서 사용하는 일반적인 데이터 정규화는 가우시안(Gaussian) 분포의 경우에서만 적용되어 대상이 되는 데이터 분포를 표준정규분포(N(0,1); 즉 μ=0이고 σ=1인 정규분포)로 변환하지만, 본 발명의 데이터 정규화는 비가우시안(non-Gaussian) 데이터 분포에 대해서도 적용되어, 학습용 데이터(훈련 데이터)의 분포를 μ=0, σ=1인 데이터 분포로 변환한다.
정규화부(113)가 데이터 정규화를 수행하는 순서는 다음과 같이 이루어질 수 있다.
① 원시 데이터(raw data 또는 original data) 값의 평균(μ') 및 표준편차(σ') 값을 구함
② 원시 데이터 전체에 대해 μ'값을 소거(차감)
③ 데이터 전체를 σ'으로 나눔
도 4는 데이터의 정규화 과정의 예시를 나타낸 도면인데, 정규화되기 전의 데이터 분포, 상기 ② 이후 평균이 0이 된 데이터 분포, 상기 ③ 이후 정규화 완료된 데이터 분포를 순차적으로 도시한 것이다.
본 발명의 정규화 방법을 통해 재구성한 학습용 데이터(훈련 데이터)를 인공지능 모델의 기계학습에 사용하면 노이즈 데이터에 대한 에러율 저감 및 과적합(over-fitting)의 위험을 제거할 수 있으며, 최종적으로는 인공지능 모델의 종양 분류 정확도를 향상할 수 있다.
데이터 전처리 모듈(110)은 변수 정제(불필요 항목 제거), 데이터 변환(데이터 구조 변경) 및 데이터 정규화 등을 통해 전처리된 DNA 데이터셋을 학습 모듈(120) 또는 추론 모듈(130)에 전달한다.
학습 모듈(120)은 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성한다. 또한 학습 모듈(120)은 생성한 종양 분류 모델을 추론 모듈(130)에 전달하여 추론 모듈(130)이 종양 분류 모델을 추론에 이용할 수 있도록 한다. 학습 모듈(120)은 전처리된 학습용 DNA 데이터셋에서 복수의 개별 데이터셋을 샘플링하고, 샘플링된 개별 데이터셋을 이용하여 랜덤 포레스트 모델에 포함된 각각의 결정 트리를 학습시켜 종양 분류 모델을 생성한다. 또한 학습 모듈(120)은 종양 분류 모델 생성 과정에서 결정 트리 기반의 하이퍼 파라미터를 사용하여 학습 또는 종양 분류 모델에 대한 튜닝을 진행한다. 튜닝에 사용되는 주요 하이퍼 파라미터는 ① n_estimators, ② min_samples_split, ③ min_samples_leaf, ④ max_features, ⑤ max_depth, ⑥ max_leaf_nodes 및 ⑦ Criterion이 있다. ① 내지 ⑦의 하이퍼 파라미터 외에 다른 하이퍼 파라미터가 추가될 수 있다. 본 발명은 전처리된 데이터셋을 사용하여 종양 분류 모델을 생성하므로, 기존 랜덤 포레스트 기반의 종양 분류 모델과 하이퍼 파라미터 설정에 차이점이 있다. 하기에 상기 ① 내지 ⑦의 하이퍼 파라미터의 정의와 그 설정에 대하여 상세히 설명한다.
① n_estimators는 랜덤 포레스트 모델을 구성하는 결정 트리 (decision tree)수를 지정하는 파라미터이다. 결정 트리 수를 늘리면 성능 개선효과 대비 연산시간이 더 소요될 수 있으므로 최적의 설정값을 찾는 것이 중요하다.
기존의 랜덤 포레스트 모델은 과소적합(under-fitting)을 피하기 위하여 n_estimator 값을 최대 1,000까지 사용하나, 본 발명은 데이터 전처리를 통해 정제된 데이터를 이용하여 인공지능 모델을 학습시킨다는 특징을 가지고 있으므로, 결정 트리 개수(n_estimator)를 대폭 감소시킬 수 있으며, 이를 통해 학습 시간도 단축시킬 수 있다. 예를 들어, 학습 모듈(120)은 n_estimators를 100으로 설정하여 종양 분류 모델을 구성할 수 있다.
② min_samples_split는 노드를 분할하기 위한 최소한의 샘플 데이터 수를 의미하는 파라미터로써 과적합(over-fitting)을 제어하기 위해 사용된다. min_samples_split의 값이 작을수록 분할노드가 많아져서 과적합(over-fitting)의 가능성이 증가한다.
기존의 랜덤 포레스트 모델은 과적합(over-fitting)을 피하기 위하여 min_samples_split 값을 5 이상으로 사용하나, 본 발명은 데이터 전처리를 통해 정제된 데이터를 이용하여 인공지능 모델을 학습시킨다는 특징을 가지고 있으므로, min_samples_split 값을 5 미만(예를 들어 2)로 설정하여 기계 학습 시간을 단축하고 인공지능 모델의 정확도를 향상시킬 수 있다.
③ min_samples_leaf는 리프 노드(leaf node)가 되기 위한 최소한의 샘플 데이터 수를 의미하는 파라미터이며, 과적합(over-fitting)을 제어하는데 사용된다. min_samples_leaf의 값이 작을수록 과적합 가능성이 증가한다. 불균형 데이터의 경우, 특정 클래스 데이터가 극도로 적을 수 있으므로 낮은 값으로 설정하는 것이 권장된다.
④ max_features는 결정 트리의 최적 분할을 위해 고려할 특성(feature)의 최대 수를 의미하는 파라미터이다. max_features는 int형으로 지정 시, 특성 개수만큼 설정되고, float형으로 지정 시, 전체 특성 개수의 일정 비율만큼 사용하며, sqrt 또는 auto 지정 시, 전체 특성 중 특성 개수의 제곱근(√특성 개수) 만큼 선정되며, log2로 지정 시, 전체 특성 중 log2(전체 특성 개수) 만큼 선정된다. 본 발명에서는 auto가 사용된다. (Decision Tree에서는 default가 None인 것과 차이)
⑤ max_depth는 결정 트리의 최대 깊이를 의미하는 파라미터이다. 결정 트리의 깊이가 깊어지면 과적합(over-fitting)이 될 수 있으므로 적절한 설정이 필요하다. 기존의 랜덤 포레스트 모델은 학습 시간(훈련 시간)이 무한정 길어지는 현상을 방지하고자 max_depth 값을 설정하여 결정 트리의 규모를 한정하지만, 본 발명은 max_depth를 한정하지 않고도 모델의 정확성을 향상시킬 수 있다는 차이점이 있다. 즉 본 발명에서 학습 모듈(120)은 max_depth로서 None을 사용하여, 완벽하게 클래스 값이 결정될 때까지(분류될 때까지) 분할을 실시하거나, min_samples_split를 만족하는 범위에서 최대한 분할하는 방식으로 동작한다.
⑥ max_leaf_nodes는 리프 노드의 최대 수를 의미하는 파라미터이다. 본 발명에서는 디폴트(default) 값인 None(설정 안함)으로 정한다.
⑦ Criterion은 학습의 평가척도(평가기준)를 의미하는 파라미터이다. 결정 트리를 생성할 때에는 각 노드의 복잡성, 즉 불순도(impurity)가 가장 낮은 방향으로 결정 트리를 만들어야 종양의 분류에 효과적이므로, 결과 노드(leaf node)들 내에서 뒤섞임 정도가 낮은 결정 트리를 구축해야 한다. 본 발명에서 학습 모듈(120)은 분류 알고리즘(Criterion)으로서 지니 불순도(Gini impurity)를 사용한다. 지니 불순도(Gini impurity)는 데이터셋 내에서 변수값의 분포에 따라 새로운 기계학습 데이터가 잘못 분류될 가능성을 측정할 수 있다. 지니 불순도(Gini impurity)가 0에 수렴할수록 분류 정확도가 증가한다.
표 4는 본 발명의 랜덤 포레스트 모델의 튜닝에 적용된 하이퍼 파라미터 설정값의 예시이다.
하이퍼 파라미터 설정값
① n_estimators 100
② min_samples_split 2
③ min_samples_leaf 1
④ max_features auto
⑤ max_depth none
⑥ max_leaf_nodes none
⑦ Criterion Gini impurity
도 5는 본 발명의 일 실시예에 따른 종양 분류 기계학습 장치가 DNA 데이터셋을 기초로 종양의 종류를 추론하는 과정을 나타낸 참고도이다. 즉, 도 5는 종양 분류 기계학습 장치(100)가 인공지능 모델(종양 분류 모델)을 통해 종양 종류(Tumor Location)를 구분한 결과를 얻기까지의 일련의 과정을 나타낸 것이다. 데이터 전처리 모듈(110)은 TCGA(The Cancer Genome Atlas) 등의 공개 DB에서 수집하였거나 시료 분석을 통해 획득한 DNA 데이터셋(Dataset)을 변수 정제(Cleansing label), 데이터 변환(String to number), 데이터 정규화(Regularization)을 통해 인공지능 모델에 최적화한다.
추론 모듈(130)은 사전에 학습된 종양 분류 모델(랜덤 포레스트 모델)을 통해 데이터 특성(feature)들을 분류 처리한다. 구체적으로, 추론 모듈(130)은 전처리된 추론용 데이터셋을 입력받아 종양 분류 모델에 입력하고, 종양 분류 모델에 포함된 각 결정 트리(decision tree)에서 출력한 종양 종류 분류 결과를 집계하고, 다수결(Majority Voting)과 종양 분류 결정 과정(Classification)을 통해 추론용 데이터셋의 각 샘플에 대하여 종양 여부 및 종양 종류(종양 유형)를 추론하여, 종양 분류 결과(Tumor Location)를 출력하게 된다.
도 6은 본 발명의 일 실시예에 따른 종양 분류 기계학습 및 추론 방법을 설명하기 위한 흐름도이다. 본 발명의 일 실시예에 따른 종양 분류 기계학습 방법은 S210 단계 내지 S230 단계를 포함한다. 또한, 본 발명의 일 실시예에 따른 종양 분류 추론 방법은 S240 단계 내지 S260 단계를 포함하며, S270 단계를 더 포함할 수 있다. 본 발명의 일 실시예에 따른 종양 분류 기계학습 및 추론 방법은 S210 단계 내지 S260 단계를 포함하며, S270 단계를 더 포함할 수 있다.
S210 단계는 학습용 데이터셋 입력 단계이다. 학습용 DNA 데이터셋은 종양 분류 모델 생성에 사용되는 데이터셋이다. 데이터 전처리 모듈(110)에 입력되는 DNA 데이터셋은 TCGA(The Cancer Genome Atlas) 등의 공개 DB에서 수집한 데이터셋 또는 시료 분석을 통해 획득한 DNA 데이터셋(Dataset)이 될 수 있다. 상세한 내용은 데이터 전처리 모듈(110)에 관한 설명에 전술하였다.
S220 단계는 학습용 데이터셋 전처리 단계이다. 데이터 전처리 모듈(110)은 학습용 DNA 데이터셋을 대상으로, 불필요한 항목(변수) 제거, 데이터 구조 변경(데이터 변환), 데이터 정규화 등의 노이즈 제거, 중복값 제거, 결손값 보정, 데이터 연계 및 통합, 데이터 차원 변경 등의 전처리를 수행할 수 있다. 상세한 내용은 데이터 전처리 모듈(110)에 관한 설명에 전술하였다.
S230 단계는 인공지능 모델 학습(종양 분류 모델 생성) 단계이다. 학습 모듈(120)은 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성한다. 학습 모듈(120)은 전처리된 학습용 DNA 데이터셋에서 복수의 개별 데이터셋을 샘플링하고, 샘플링된 개별 데이터셋을 이용하여 랜덤 포레스트 모델에 포함된 각각의 결정 트리를 학습시켜 종양 분류 모델을 생성한다. 또한 학습 모듈(120)은 종양 분류 모델 생성 과정에서 결정 트리 기반의 하이퍼 파라미터를 사용하여 종양 분류 모델에 대한 튜닝을 진행한다. 튜닝에 사용되는 주요 하이퍼 파라미터는 ① n_estimators, ② min_samples_split, ③ min_samples_leaf, ④ max_features, ⑤ max_depth, ⑥ max_leaf_nodes 및 ⑦ Criterion이 있다. 학습 모듈(120)은 표 4의 예시에 따른 하이퍼 파라미터 설정값을 적용하여 종양 분류 모델을 생성할 수 있다. 상세한 내용은 학습 모듈(120)에 관한 설명에 전술하였다.
S240 단계는 추론용 데이터셋 입력 단계이다. 추론용 DNA 데이터셋은 종양 분류 추론에 사용되는 데이터셋으로서, 종양 여부 또는 종양 종류에 관한 데이터가 없는 데이터셋이 바람직하다.
S250 단계는 추론용 데이터셋 전처리 단계이다. 데이터 전처리 모듈(110)은 추론용 DNA 데이터셋을 대상으로, 불필요한 항목(변수) 제거, 데이터 구조 변경(데이터 변환), 데이터 정규화 등의 노이즈 제거, 중복값 제거, 결손값 보정, 데이터 연계 및 통합, 데이터 차원 변경 등의 전처리를 수행할 수 있다. 상세한 내용은 데이터 전처리 모듈(110)에 관한 설명에 전술하였다.
S260 단계는 종양 종류(종양 유형) 추론 단계이다. 추론 모듈(130)은 종양 분류 모델(랜덤 포레스트 모델)을 통해 데이터 특성(feature)들을 분류 처리한다. 구체적으로, 추론 모듈(130)은 전처리된 추론용 데이터셋을 입력받아 종양 분류 모델에 입력하고, 종양 분류 모델에 포함된 각 결정 트리(decision tree)에서 출력한 종양 종류 분류 결과를 집계하고, 다수결(Majority Voting) 과 종양 여부 및 종양 분류 결정 과정(Classification)을 통해 종양 종류(종양 유형)를 추론한다. 상세한 내용은 추론 모듈(130)에 관한 설명에 전술하였다.
S270 단계는 추론 결과 출력 단계이다. 추론 모듈(130)은 추론 결과를 사용자에게 제공한다. 추론 모듈(130)은 종양 종류에 대한 추론 결과 종양의 종류에 관한 정수값(코드)을 얻은 경우, 이를 사용자가 이해할 수 있는 텍스트로 변환하여 출력할 수 있다. 예를 들어, 추론 결과 얻은 종양의 종류에 관한 정수값이 0일 경우, 추론 모듈(130)은 이를 'Bladder' 또는 '방광'으로 변환하여 출력할 수 있다.
한편 도 6을 참조한 설명에서, 각 단계는 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. 아울러, 기타 생략된 내용이라 하더라도 도 1 내지 도 5의 내용은 도 6의 내용에 적용될 수 있다. 또한, 도 6의 내용은 도 1 내지 도 5의 내용에 적용될 수 있다.
하기에, 본 발명에 따른 종양 분류 기계학습 장치 및 종양 분류 기계학습 및 추론 방법에 관한 구체적인 실행 예를 설명한다.
(1) 인공지능 모델의 기계 학습
데이터 전처리 모듈(110)은 TCGA 프로젝트에서 정의하고 제공하는 DNA Tumor 데이터셋 또는 유사한 포맷의 DNA 데이터셋을 200만건 이상 수집하여 저장한다. 그리고 데이터 전처리 모듈(110)은 인공지능 모델을 기계 학습시키기에 적합하도록 데이터셋에서 노이즈 제거, 중복값 제거, 결손값(NA) 보정, 데이터 연계 및 통합, 데이터 차원 변경과 함께 불필요한 항목 제거, 데이터 구조 변경, 데이터 정규화를 하는 등의 데이터 전처리(Data pre-processing)를 통해 인공지능 모델을 학습시키기 위한 전처리된 데이터셋을 구비한다. 이후, 학습 모듈(120)은 전처리된 데이터셋을 기초로 종양 분류 모델을 생성한다. 학습 모듈(120)은 학습시킬 인공지능 모델로서 랜덤 포레스트(Random Forest) 모델을 사용한다. 종양 분류 모델 생성 과정에서 결정 트리 기반의 하이퍼 파라미터를 사용하여 종양 분류 모델에 대한 튜닝을 진행한다. 학습 모듈(120)은 결정 트리(Decision Tree, n_estimater) 값을 100으로 설정하고, 최소 샘플 데이터 수(min_samples_split)를 2로 설정하고, 리프 노드(leaf node)가 되기 위한 최소한의 샘플 데이터 수(min_samples_leaf)를 1로 설정하고, 피쳐의 최대수(max_features)를 auto로 설정하고, 결정 트리의 최대 깊이(max_depth)를 None으로 설정하고, Criterion은 Gini impurity를 이용하는 것으로 설정하여 종양 분류 모델을 생성한다.
(2) 종양 여부 및 종양의 종류에 대한 추론
데이터 전처리 모듈(110)은 임의의 DNA 데이터셋을 입력받아 전처리 작업을 수행하여 추론 모듈(130)에 전달한다. 추론 모듈(130)은 기계 학습이 완료된 인공지능 모델(종양 분류 모델)을 사용하여 종양(Tumor) 여부와 종류를 분류하는 추론을 수행하기 위해, 인공지능 모델의 입력과 출력부에 구비된 API(Application Programming Interface)를 활용할 수 있다. 도 7은 인공지능 모델의 API 실행 순서를 나타낸 도면이다.
도 7에 도시된 '데이터셋 입력 API'는 SNP?, chromosome, geneName, location, mutationType, mutationsEffect_1, mutationsEffect_2을 필수 데이터로 지정하여 입력 받는다. 데이터 셋 입력 API를 호출하기 위한 예제 스크립트는 도 8과 같다.
도 7에 도시된 인공지능 모델의 '연산 API'는 '데이터셋 입력 API'의 처리 결과인 'InputData'를 입력으로 받아 종양 분류 모델을 실행시켜 추론 연산을 하고 종양 종류를 추론하여 분류한 결과를 정수형 값으로 출력한다. '연산 API'를 호출하기 위한 예제 스크립트는 도 9와 같다.
도 7에 도시된 '분류 결과 출력 API'는 종양 분류 모델의 실행 결과값인 종양 종류를 나타내는 정수형(Integer) 출력값을 텍스트형 변수로 변환한다. 분류 결과 출력 API를 호출하기 위한 예제 스크립트는 도 10과 같다.
추론 모듈(130)은 인공지능 추론 결과값(종양 분류 결과값)에 관한 텍스트형 변수인 'OutputDataText'에 Bladder, Brest, Bronchusandlug, Cervixuteri, Colon, Corpusuteri, Kidney, Liverandintrahepaticbileducts, Ovary, Skin, Stomach 중 하나의 문자열을 저장하고 이를 출력하게 된다.
본 발명에 따른 인공지능 모델(종양 분류 모델)의 학습 및 추론에 대한 실행 환경은 표 5와 같이 구성할 수 있다. 표 5의 환경에서, 상술한 바와 같이 학습과 추론을 진행하여, 인공지능 모델의 기계 학습에 약 30분 이하의 시간이 소요되었고, 96.8% 이상의 종양(Tumor) 분류 정확도를 얻을 수 있었다.
구분 요구 사양
프레임워크 Pytone, Sckit-learn, pandas, numpy, matplotlib를 포함
CPU 2.3GHz 8-Core Intel i9 또는 그 이상의 성능
RAM 16GB 2667Mhz DDR4 또는 그 이상의 메모리 크기와 성능
SSD 1TB 또는 그 이상의 메모리 크기와 성능
한편, 도 7 내지 도 10의 내용은 도 1 내지 도 6의 내용에 적용될 수 있다. 또한 도 1 내지 도 6의 내용은 도 7 내지 도 10의 내용에 적용될 수 있다.
참고로, 본 발명의 실시예에 따른 구성 요소들은 소프트웨어 또는 DSP(digital signal processor), FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)와 같은 하드웨어 형태로 구현될 수 있으며, 소정의 역할들을 수행할 수 있다.
그렇지만 '구성 요소들'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 각 구성 요소는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
따라서, 일 예로서 구성 요소는 소프트웨어 구성 요소들, 객체지향 소프트웨어 구성 요소들, 클래스 구성 요소들 및 태스크 구성 요소들과 같은 구성 요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다.
구성 요소들과 해당 구성 요소들 안에서 제공되는 기능은 더 작은 수의 구성 요소들로 결합되거나 추가적인 구성 요소들로 더 분리될 수 있다.
한편, 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
본 실시예에서 사용되는 '~부' 또는 '~모듈'이라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부' 또는 '~모듈'는 어떤 역할들을 수행한다. 그렇지만 '~부' 또는 '~모듈'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부' 또는 '~모듈'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부' 또는 '~모듈'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부' 또는 '~모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부' 또는 '~모듈'들로 결합되거나 추가적인 구성요소들과 '~부' 또는 '~모듈'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부' 또는 '~모듈'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
전술한 종양 분류 기계학습 방법, 종양 분류 추론 방법 및 '종양 분류 기계학습 및 추론 방법'은 도면에 제시된 흐름도를 참조로 하여 설명되었다. 간단히 설명하기 위하여 상기 방법은 일련의 블록들로 도시되고 설명되었으나, 본 발명은 상기 블록들의 순서에 한정되지 않고, 몇몇 블록들은 다른 블록들과 본 명세서에서 도시되고 기술된 것과 상이한 순서로 또는 동시에 일어날 수도 있으며, 동일한 또는 유사한 결과를 달성하는 다양한 다른 분기, 흐름 경로, 및 블록의 순서들이 구현될 수 있다. 또한, 본 명세서에서 기술되는 방법의 구현을 위하여 도시된 모든 블록들이 요구되지 않을 수도 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
10: DNA 데이터셋
20: 종양 분류 결과
100: 종양 분류 기계학습 장치
110: 데이터 전처리 모듈
111: 변수 정제부
112: 데이터 변환부
113: 정규화부
120: 학습 모듈
130: 추론 모듈

Claims (20)

  1. 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋을 전처리하는 데이터 전처리 모듈;
    상기 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성하는 학습 모듈; 및
    상기 전처리된 추론용 DNA 데이터셋을 기초로 상기 종양 분류 모델을 통해 상기 추론용 DNA 데이터셋의 각 샘플에 대한 종양 여부 및 종양 종류를 추론하는 추론 모듈;
    을 포함하는 종양 분류 기계학습 장치.
  2. 제1항에 있어서, 상기 데이터 전처리 모듈은,
    상기 학습용 DNA 데이터셋을 TCGA(The Cancer Genome Atlas) 데이터베이스에서 수집하는 것
    인 종양 분류 기계학습 장치.
  3. 제1항에 있어서, 상기 데이터 전처리 모듈은,
    상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에서, 종양 종류와의 상관 계수의 절대값이 소정의 상관계수 절대값 임계치보다 낮은 변수를 제거하는 것
    인 종양 분류 기계학습 장치.
  4. 제1항에 있어서, 상기 데이터 전처리 모듈은,
    상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에서 유일성(uniqueness)을 지닌 변수를 제거하는 것
    인 종양 분류 기계학습 장치.
  5. 제1항에 있어서, 상기 데이터 전처리 모듈은,
    상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에서 문자열로 표현된 데이터를 수치 데이터로 변환하는 것
    인 종양 분류 기계학습 장치.
  6. 제1항에 있어서, 상기 데이터 전처리 모듈은,
    상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에서 문자열로 표현된 데이터를 정수로 변환하는 것
    인 종양 분류 기계학습 장치.
  7. 제1항에 있어서, 상기 데이터 전처리 모듈은,
    상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋의 각 변수의 데이터 분포를 정규화하는 것
    인 종양 분류 기계학습 장치.
  8. 제1항에 있어서, 상기 데이터 전처리 모듈은,
    상기 학습용 DNA 데이터셋 및 추론용 DNA 데이터셋에 포함된 각 변수의 평균과 표준편차를 각각 특정한 평균값과 특정한 표준편차값이 되도록 상기 각 변수의 데이터를 변환하는 것
    인 종양 분류 기계학습 장치.
  9. 제1항에 있어서, 상기 학습 모듈은,
    상기 랜덤 포레스트 모델을 구성하는 결정 트리 수(n_estimator)를 100 이하의 값으로 설정하여 상기 종양 분류 모델을 생성하는 것
    인 종양 분류 기계학습 장치.
  10. 제1항에 있어서, 상기 학습 모듈은,
    상기 랜덤 포레스트 모델에 포함된 상기 결정 트리의 노드 분할을 위한 최소한의 샘플 데이터 수(min_samples_split)를 5 미만으로 설정하여 상기 종양 분류 모델을 생성하는 것
    인 종양 분류 기계학습 장치.
  11. 제1항에 있어서, 상기 학습 모듈은,
    상기 랜덤 포레스트 모델에 포함된 상기 결정 트리의 최대 깊이(max_depth)를 제한하지 않는 것
    인 종양 분류 기계학습 장치.
  12. 제1항에 있어서, 상기 학습 모듈은,
    지니 불순도(Gini impurity)를 상기 랜덤 포레스트 모델의 학습 평가기준(Criterion)으로 사용하는 것
    인 종양 분류 기계학습 장치.
  13. 제1항에 있어서, 상기 추론 모듈은,
    상기 전처리된 추론용 DNA 데이터셋을 상기 종양 분류 모델에 입력하고, 상기 종양 분류 모델에 포함된 각 결정 트리에서 출력한 종양 종류 분류 결과를 집계하여, 다수결(Majority Voting)에 따라 상기 추론용 DNA 데이터셋의 각 샘플에 대한 종양 여부 및 종양 종류를 결정하는 방식으로 추론하는 것
    인 종양 분류 기계학습 장치.
  14. 학습용 DNA 데이터셋을 입력받는 학습용 데이터셋 입력 단계;
    상기 학습용 DNA 데이터셋을 변수 제거, 문자열 데이터 수치화 및 데이터 분포 조정 중 적어도 어느 하나의 전처리 기법을 통해 전처리하는 학습용 데이터셋 전처리 단계; 및
    상기 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성하는 인공지능 모델 학습 단계;
    를 포함하는 종양 분류 기계학습 방법.
  15. 제14항에 있어서, 상기 학습용 데이터셋 전처리 단계는,
    상기 학습용 DNA 데이터셋에서, 종양 종류와의 상관 계수의 절대값이 소정의 상관계수 절대값 임계치보다 낮은 변수를 제거하는 것
    인 종양 분류 기계학습 방법.
  16. 제14항에 있어서, 상기 학습용 데이터셋 전처리 단계는,
    상기 학습용 DNA 데이터셋에서 문자열로 표현된 데이터를 정수로 변환하는 것
    인 종양 분류 기계학습 방법.
  17. 제14항에 있어서, 상기 학습용 데이터셋 전처리 단계는,
    상기 학습용 DNA 데이터셋에 포함된 각 변수의 평균과 표준편차를 각각 특정한 평균값과 특정한 표준편차값이 되도록 상기 각 변수의 데이터를 변환하는 방식의 데이터 분포 조정을 수행하는 것
    인 종양 분류 기계학습 방법.
  18. 제14항에 있어서, 상기 인공지능 모델 학습 단계는,
    상기 랜덤 포레스트 모델을 구성하는 결정 트리 수(n_estimator)를 100 이하의 값으로 설정하여 상기 종양 분류 모델을 생성하는 것
    인 종양 분류 기계학습 방법.
  19. 제14항에 있어서, 상기 인공지능 모델 학습 단계는,
    상기 랜덤 포레스트 모델에 포함된 상기 결정 트리의 노드 분할을 위한 최소한의 샘플 데이터 수(min_samples_split)를 5 미만으로 설정하여 상기 종양 분류 모델을 생성하는 것
    인 종양 분류 기계학습 방법.
  20. 학습용 DNA 데이터셋을 입력받는 학습용 데이터셋 입력 단계;
    상기 학습용 DNA 데이터셋을 전처리하는 학습용 데이터셋 전처리 단계;
    상기 전처리된 학습용 DNA 데이터셋을 기초로 결정 트리로 구성된 랜덤 포레스트 모델을 학습시켜 종양 분류 모델을 생성하는 인공지능 모델 학습 단계;
    추론용 DNA 데이터셋을 입력받는 추론용 데이터셋 입력 단계;
    상기 추론용 DNA 데이터셋을 전처리하는 추론용 데이터셋 전처리 단계; 및
    상기 전처리된 추론용 DNA 데이터셋을 기초로 상기 종양 분류 모델을 통해 상기 추론용 DNA 데이터셋의 각 샘플에 대한 종양 여부 및 종양 종류를 추론하는 종양 종류 추론 단계;
    를 포함하는 종양 분류 기계학습 및 추론 방법.
KR1020220033176A 2022-03-17 2022-03-17 유전자 데이터를 활용하여 종양을 분류하기 위한 기계학습 장치 및 방법 KR20230135782A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220033176A KR20230135782A (ko) 2022-03-17 2022-03-17 유전자 데이터를 활용하여 종양을 분류하기 위한 기계학습 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220033176A KR20230135782A (ko) 2022-03-17 2022-03-17 유전자 데이터를 활용하여 종양을 분류하기 위한 기계학습 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20230135782A true KR20230135782A (ko) 2023-09-26

Family

ID=88191205

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220033176A KR20230135782A (ko) 2022-03-17 2022-03-17 유전자 데이터를 활용하여 종양을 분류하기 위한 기계학습 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20230135782A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102233740B1 (ko) 2017-09-27 2021-03-30 이화여자대학교 산학협력단 Dna 복제수 변이 기반의 암 종 예측 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102233740B1 (ko) 2017-09-27 2021-03-30 이화여자대학교 산학협력단 Dna 복제수 변이 기반의 암 종 예측 방법

Similar Documents

Publication Publication Date Title
Elhoseny et al. A new multi-agent feature wrapper machine learning approach for heart disease diagnosis
Fernandes et al. Evolutionary inversion of class distribution in overlapping areas for multi-class imbalanced learning
Dafflon et al. An automated machine learning approach to predict brain age from cortical anatomical measures
Strobl et al. Identifying patient-specific root causes with the heteroscedastic noise model
CN114494263B (zh) 融合临床信息的医学影像病变检测方法、系统及设备
CN112200293A (zh) 基于cart-amv改进的随机森林算法
Agrawal et al. Disease prediction using machine learning
Ghane et al. Enhanced decision tree induction using evolutionary techniques for Parkinson's disease classification
CN115938590A (zh) 结直肠癌术后lars预测模型的构建方法及预测系统
KR20200133067A (ko) 장내 미생물을 이용한 질병의 예측방법 및 시스템
Xia et al. A Model‐Free Feature Selection Technique of Feature Screening and Random Forest‐Based Recursive Feature Elimination
KR20230135782A (ko) 유전자 데이터를 활용하여 종양을 분류하기 위한 기계학습 장치 및 방법
Bakasa et al. Stacked ensemble deep learning for pancreas cancer classification using extreme gradient boosting
Özkan et al. Effect of data preprocessing on ensemble learning for classification in disease diagnosis
Shiuh et al. Prediction of Thyroid Disease using Machine Learning Approaches and Featurewiz Selection
Chen et al. Reduced-GEP: improving gene expression programming by gene reduction
Khozama et al. Study the Effect of the Risk Factors in the Estimation of the Breast Cancer Risk Score Using Machine Learning
Cudic et al. Prediction of sorghum bicolor genotype from in-situ images using autoencoder-identified SNPs
Louati et al. Embedding channel pruning within the CNN architecture design using a bi-level evolutionary approach
Medhat Prediction of missing values for decision attribute
Amalia et al. The Application of Modified K-Nearest Neighbor Algorithm for Classification of Groundwater Quality Based on Image Processing and pH, TDS, and Temperature Sensors
RU2819348C1 (ru) Способ графовой нейросетевой классификации на отсутствие или наличие большого депрессивного расстройства по данным фмрт
Usha et al. Feature Selection Techniques in Learning Algorithms to Predict Truthful Data
US20230053405A1 (en) Neural network for variant calling
Strauch Improving diagnosis of genetic disease through computational investigation of splicing