KR102452433B1 - 시계열적 정보를 인코딩하는 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템 - Google Patents

시계열적 정보를 인코딩하는 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템 Download PDF

Info

Publication number
KR102452433B1
KR102452433B1 KR1020220028764A KR20220028764A KR102452433B1 KR 102452433 B1 KR102452433 B1 KR 102452433B1 KR 1020220028764 A KR1020220028764 A KR 1020220028764A KR 20220028764 A KR20220028764 A KR 20220028764A KR 102452433 B1 KR102452433 B1 KR 102452433B1
Authority
KR
South Korea
Prior art keywords
embedding vector
path
entity
embedding
entities
Prior art date
Application number
KR1020220028764A
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 KR1020220028764A priority Critical patent/KR102452433B1/ko
Application granted granted Critical
Publication of KR102452433B1 publication Critical patent/KR102452433B1/ko
Priority to PCT/KR2023/003092 priority patent/WO2023172025A1/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
    • G16B15/00ICT specially adapted for analysing two-dimensional or three-dimensional molecular structures, e.g. structural or functional relations or structure alignment
    • G16B15/30Drug targeting using structural data; Docking or binding prediction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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
    • 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
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/30Data warehousing; Computing architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biotechnology (AREA)
  • Computing Systems (AREA)
  • Chemical & Material Sciences (AREA)
  • Mathematical Physics (AREA)
  • Bioethics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Medicinal Chemistry (AREA)
  • Pharmacology & Pharmacy (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Epidemiology (AREA)
  • Public Health (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 시계열적 정보를 인코딩하는 모델에서 출력되는 값을 학습 데이터로 사용하고, 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하도록 학습 데이터를 학습함으로써 생성되는 예측 모델의 구축 방법, 그리고 구축된 예측 모델을 사용하여 예측을 수행하는 예측 시스템에 관한 것이다.

Description

시계열적 정보를 인코딩하는 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템{Method for predicting association-related information between a queried entity-pair using a model that encodes time-series information and a prediction system constructed using the same}
본 발명은 시계열적 정보를 인코딩하는 모델에서 출력되는 값을 학습 데이터로 사용하고, 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하도록 학습 데이터를 학습함으로써 생성되는 예측 모델의 구축 방법, 그리고 구축된 예측 모델을 사용하여 예측을 수행하는 예측 시스템에 관한 것이다.
신약 개발 단계에서 약물이 목표로 하는 타겟 유전자 또는 단백질을 선정하는 것은 초기의 가장 중요한 단계로, 타겟을 변조(modulation)하였을 때 해당 질병이 효과적으로 치료되는 올바른 타겟을 선정하여야 향후 임상에서의 성공률을 높일 수 있다.
신약 임상 시험 단계까지 도달하기 위해서는 막대한 인력과 비용이 소모되며, 해당 질병을 효과적으로 치료하기 위해 초기 단계에서 타겟을 선정하는 것은 매우 중요하다고 할 수 있다.
종래 기술에서, 타겟을 선정하는 것은 다수의 데이터베이스로부터 데이터를 단순히 수집하고, 기존에 공개되었던 데이터들의 연결 관계를 단순히 제시하는 것에 불과하여 기존 데이터의 내용을 뛰어넘어 신약 개발을 위해 새로운 타겟을 선정하는 것에 많은 문제점이 존재하였다.
관련된 종래 기술을 살피면 다음과 같다.
한국등록특허문헌 제10-2035658호는 신약 재창출 후보 추천 시스템에 관한 것으로, 대용량의 빅데이터인 문헌정보 DB 및 유전체정보 DB로부터 약물 및 질병의 형질 정보와 유전자 연관 정보를 추출하고, 이들로부터 약물-약물/질병-질병 유사도 매트릭스를 구성하고, 유사도 매트릭스에 따라 문헌정보 기반의 약물-질병 엣지 점수와 유전체정보 기반의 약물-질병 엣지 점수를 연산하여, 이들로부터 약물-질병 엣지의 최종 예측 점수를 연산하여 신약 재창출 후보를 추천하는 내용을 제시한다.
하지만, 인공신경망 모델을 이용하는 것이 아니어서 추천의 정확도가 떨어지고, 출력의 정보가 상이하며, 다수의 데이터베이스로부터 데이터를 통합하는 과정에서 데이터를 단순히 선형적으로 통합하기 때문에 연관성이 적은 데이터들 간의 관계를 확인하기 어렵다는 단점이 있다.
일본공개특허문헌 제2019-220149호는 임의의 질병 쿼리에 대한 우선순위가 부여된 유전자를 출력하는 시스템에 관한 것으로, 질병, 유전자, 질병과 관련된 표현형 및 생물학적 경로를 포함하는 데이터들을 복수의 데이터베이스들로부터 수집하고, 수집된 데이터를 이용하여 그래프 데이터베이스를 구축하며, 그래프 컨볼루션에 기반한 관련성 스코어링(GCAS)를 적용하여 추정 관련성을 도출하고, 추정 관련성을 그래프 데이터베이스에 추가하여 이종 관련성 네트워크(HANRD)를 작성하며, 임의의 질병 쿼리에 대해 우선순위가 부여된 유전자를 출력하는 내용을 제시한다.
여러 다른 종류들로 이루어진 네트워크(heterogeneous network)를 구성했다는 점에서 유사하나, 다수의 데이터베이스들로부터 여러 유형의 노드와 엣지를 수집하였음에도 실질적으로 유형을 구분하여 사용하지 않고 노드 간의 연결이 되어 있는지 없는지만 고려하였으며, 특정 맥락 없이 주어진 노드의 근방 전체에 대한 정보를 사용하고, 인공신경망 모델을 이용하는 것이 아니어서 결과의 정확도가 떨어지는 단점이 존재한다.
이에, 본 발명자들은 기존 지식에 따라 구성된 지식 그래프를 활용하면서도, 개체-쌍 사이의 경로와 같은 시계열성 데이터의 특징이 부각되는 인코딩 모델을 사용하고, 상기 인코딩 모델을 사용하는 과정에서 개체들을 식별하기 위한 노드의 임베딩 값이 학습 과정에서 변화되도록 하는 알고리즘을 채택함으로써, 질의되는 개체-쌍 사이의 연관성 관련 정보를 높은 정확도로 예측하는 본 발명을 개발하기에 이르렀다.
한국등록특허문헌 제10-2035658호 (2019.10.23.) 일본공개특허문헌 제2019-220149호 (2019.12.26.)
상기한 과제를 해결하기 위해 본 발명은 기계학습 알고리즘을 이용하여 특정 질병 치료 약물의 타겟이 될 수 있는 유전자 또는 단백질을 높은 정확도로 예측하는 것이 가능한 방법 및 시스템을 제공하는 것에 그 목적이 있다.
또한, 기계학습 알고리즘에 따라 질의된 질병과 관련된 유전자 또는 단백질을 예측하기 때문에 기존에 알려지지 않은 새로운 타겟 유전자 또는 단백질을 발굴하는 것이 가능한 방법 및 시스템을 제공하는 것에 그 목적이 있다.
또한, 수집된 모든 데이터를 인공신경망 모델에 학습시키는 것이 아닌, 중요도 높은 경로를 선택적으로 학습시킴에 따라 연산 처리량의 감소 및 연산 시간이 최소화되는 방법 및 시스템을 제공하는 것에 그 목적이 있다.
또한, 시계열적 정보를 인코딩하는 모델에서 출력되는 임베딩 벡터를 학습 데이터로 사용하고, 학습 데이터에 포함되어 있으면서 개체(노드)를 식별하기 위한 임베딩 벡터가 기존 지식으로부터 획득된 임베딩 벡터와, 학습에 의해 그 값이 변화하는 임베딩 벡터를 모두 포함함에 따라, 기존 모델 대비 예측 성능이 높은 방법 및 시스템을 제공하는 것에 그 목적이 있다.
또한, 학습 데이터를 다수회 학습하는 과정에서, 하나의 학습 사이클마다 모든 학습 데이터를 학습하는 것이 아닌 랜덤 샘플링을 통해 일부의 학습 데이터를 학습함으로써 학습 데이터의 양이 증가되고, 생성된 예측 모델의 오버피팅 문제가 해결되는 방법 및 시스템을 제공하는 것에 그 목적이 있다.
또한, 다수의 데이터베이스로부터 수집한 데이터에 국한되는 것이 아닌, 해당 사용자 계정 접속을 통해 사용자 데이터베이스로부터 추가의 데이터를 더 수집하여 더 수집된 데이터까지도 반영하여 예측에 이용할 수 있어 해당 연구자가 자신의 연구 컨텍스트가 반영된 예측 결과를 획득하는 것이 가능한 방법 및 시스템을 제공하는 것에 그 목적이 있다.
또한, 사용자 입력에 따라 노드, 엣지 및 경로 중 하나 이상의 추가 또는 삭제가 반영된 상황에서의 연산이 더 수행될 수 있어, 일종의 가상 실험 환경에서의 예측 결과를 획득할 수 있다는 장점을 갖는 방법 및 시스템을 제공하는 것에 그 목적이 있다.
상기한 목적을 달성하기 위한 본 발명의 일 실시예는, 모델 생성 단말에 의해, 임의의 개체(entity)의 쌍(pair)이 질의되는 경우, 질의된 개체 사이의 연관성 관련 정보를 출력하는 연관성 예측 모델이 생성되도록 학습 데이터를 학습하는 단계를 포함하고, 상기 임의의 개체의 쌍은 질병-유전자, 유전자-질병, 질병-약물, 약물-질병, 유전자-약물 및 약물-유전자 중 하나 이상의 쌍을 포함하는 것이며, 상기 학습 데이터는, 임의의 개체의 쌍이 질의 인코딩 모델에 입력됨에 따라 상기 질의 인코딩 모델에서 출력되는 임베딩 벡터 및 상기 질의 인코딩 모델에 입력된 임의의 개체의 쌍을 서로 연결하는 경로가 경로 인코딩 모델에 입력됨에 따라 상기 경로 인코딩 모델에서 출력되는 임베딩 벡터가 질의-경로 인코딩 모델에 입력됨에 따라 상기 질의-경로 인코딩 모델에서 출력되는 임베딩 벡터를 포함하는, 개체 간의 연관성 예측 방법을 제공한다.
일 실시예에 있어서, 상기 임의의 개체의 쌍은 질의 임베딩 벡터의 형태로 상기 질의 인코딩 모델에 입력되고, 상기 질의 임베딩 벡터는, 상기 임의의 개체의 쌍의 개체를 식별하기 위한 개체 임베딩 벡터 및 상기 개체 임베딩 벡터의 위치를 식별하기 위한 포지셔널 임베딩 벡터를 포함할 수 있다.
일 실시예에 있어서, 상기 질의 임베딩 벡터는, 질의 타입 임베딩 벡터와 상기 질의 타입 임베딩 벡터의 위치를 식별하기 위한 제1 포지셔널(positional) 임베딩 벡터를 이용하여 연산된 제1 질의 임베딩 벡터, 상기 임의의 개체의 쌍 중 어느 하나의 개체가 해당하는 타입을 나타내는 제1 노드 타입 임베딩 벡터와, 상기 어느 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제2 포지셔널 임베딩 벡터를 이용하여 연산된 제2 질의 임베딩 벡터 및 상기 임의의 개체의 쌍 중 다른 하나의 개체가 해당하는 타입을 나타내는 제2 노드 타입 임베딩 벡터와, 상기 다른 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제3 포지셔널 임베딩 벡터를 이용하여 연산된 제3 질의 임베딩 벡터를 포함할 수 있다.
일 실시예에 있어서, 상기 개체 임베딩 벡터는, 지식 그래프의 임베딩 결과값이면서, 학습이 이루어지더라도 그 값이 고정된 제1 개체 임베딩 벡터 및 학습에 의해 값이 변화하는 제2 개체 임베딩 벡터를 이용하여 연산된 것일 수 있다.
일 실시예에 있어서, 상기 제1 질의 임베딩 벡터 내지 상기 제3 질의 임베딩 벡터는 연산에 사용된 임베딩 벡터들의 합산 임베딩 벡터들이고, 상기 개체 임베딩 벡터는 연산에 사용되는 제1 개체 임베딩 벡터와 제2 개체 임베딩 벡터의 결합(concatenate) 임베딩 벡터일 수 있다.
일 실시예에 있어서, 상기 지식 그래프는, 질병, 유전자, 약물 및 장기 중 적어도 2개의 개체와, 상기 적어도 2개의 개체 간의 관계가 표현되어 있는 것일 수 있다.
일 실시예에 있어서, 상기 경로는 경로 임베딩 벡터의 형태로 상기 경로 인코딩 모델에 입력되고, 상기 경로 임베딩 벡터는, 상기 임의의 개체-쌍 사이의 경로를 식별하기 위한 임베딩 벡터 및 상기 임의의 개체-쌍 사이의 경로를 식별하기 위한 임베딩 벡터의 위치를 식별하기 위한 포지셔널 임베딩 벡터를 포함할 수 있다.
일 실시예에 있어서, 상기 경로 임베딩 벡터는, 경로 타입 임베딩 벡터와 상기 경로 타입 임베딩 벡터의 위치를 식별하기 위한 제4 포지셔널 임베딩 벡터를 이용하여 연산된 제1 경로 임베딩 벡터, 상기 임의의 개체의 쌍 중 어느 하나의 개체가 해당하는 타입을 나타내는 제1 노드 타입 임베딩 벡터, 상기 어느 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제5 포지셔널 임베딩 벡터를 이용하여 연산된 제2 경로 임베딩 벡터, 엣지들이 그 특성에 따라 구분된 하나 이상의 엣지 유형(metaedge) 중, 상기 어느 하나의 개체에 연결된 엣지의 유형을 식별하기 위한 제1 엣지 타입 임베딩 벡터와 상기 제1 엣지 타입 임베딩 벡터의 위치를 식별하기 위한 제6 포지셔널 임베딩 벡터를 이용하여 연산된 제3 경로 임베딩 벡터, 상기 어느 하나의 개체에 해당하는 노드와 엣지로 연결된 노드에 해당하는 개체가 해당하는 타입을 나타내는 제3 노드 타입 임베딩 벡터, 상기 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제7 포지셔널 임베딩 벡터를 이용하여 연산된 제4 경로 임베딩 벡터, 상기 제4 경로 임베딩 벡터에 포함된 개체 및 상기 임의의 개체의 쌍 중 다른 하나의 개체를 서로 연결하는 엣지의 유형을 식별하기 위한 제2 엣지 타입 임베딩 벡터와, 상기 제2 엣지 타입 임베딩 벡터의 위치를 식별하기 위한 제8 포지셔널 임베딩 벡터를 이용하여 연산된 제5 경로 임베딩 벡터 및 상기 임의의 개체의 쌍 중 다른 하나의 개체가 해당하는 타입을 나타내는 제2 노드 타입 임베딩 벡터, 상기 다른 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제9 포지셔널 임베딩 벡터를 이용하여 연산된 제6 경로 임베딩 벡터를 포함할 수 있다.
일 실시예에 있어서, 상기 개체 임베딩 벡터는, 지식 그래프의 임베딩 결과값이면서, 학습이 이루어지더라도 그 값이 고정된 제1 개체 임베딩 벡터 및 학습에 의해 값이 변화하는 제2 개체 임베딩 벡터를 이용하여 연산된 것일 수 있다.
일 실시예에 있어서, 상기 제1 경로 임베딩 벡터 내지 제6 경로 임베딩 벡터는 연산에 사용된 임베딩 벡터들의 합산 임베딩 벡터들이고, 상기 개체 임베딩 벡터는 연산에 사용되는 제1 개체 임베딩 벡터와 제2 개체 임베딩 벡터의 결합(concatenate) 임베딩 벡터일 수 있다.
일 실시예에 있어서, 상기 경로 인코딩 모델에는, 임의의 개체의 쌍마다 다수 개의 경로가 입력되고, 상기 입력되는 다수 개의 경로는 임의의 개체의 쌍의 경로들 중 일부의 경로이며, 기 설정된 경로 유형(metapath)에 포함된 다수의 경로 중 기 설정된 방법에 의해 연산된 경로 스코어가 높은 순서에 기초하여 추출된 일부의 경로일 수 있다.
일 실시예에 있어서, 상기 경로 유형은 경로를 구성하는 엣지의 개수, 엣지의 순서 및 엣지 유형의 조합에 기초하여 구분지어지며, 상기 기 설정된 경로 유형은 구분지어진 경로 유형 중 적어도 일부의 유형일 수 있다.
일 실시예에 있어서, 상기 경로 스코어는, 노드 및 엣지 유형의 임베딩 결과값을 이용하여, 경로에 포함된 각각의 엣지들의 엣지 스코어를 연산하고, 임의의 개체의 쌍의 경로에 포함된 모든 엣지들의 엣지 스코어를 이용하여 연산된 것일 수 있다.
일 실시예에 있어서, 상기 질의된 개체-쌍 사이의 연관성 관련 정보는, 상기 질의된 개체-쌍 사이의 연관성 유무 및 연관성 정도 중 적어도 어느 하나를 포함할 수 있다.
일 실시예에 있어서, 상기 질의-경로 인코딩 모델은, 상기 질의 인코딩 모델과 상기 경로 인코딩 모델에 대해 적층(stacked)되어 있는 것일 수 있다.
일 실시예에 있어서, 질의 개체-쌍이 예측 단말의 입력부를 통해 입력되는 단계, 상기 예측 단말의 프로세서에 의해, 상기 모델 생성 단말에 의해 생성된 연관성 예측 모델에 질의 개체-쌍이 질의되는 경우, 상기 연관성 예측 모델에서 출력되는 값인 질의된 임의의 개체의 쌍 사이의 연관성 관련 정보가 연산되는 단계를 더 포함할 수 있다.
일 실시예에 있어서, 미리 규정된 노드들 중 하나 이상의 노드가 삭제 또는 추가되거나, 미리 규정되지 않은 새로운 엣지가 삭제 또는 추가되는 단계를 더 포함하며, 상기 예측 단말은, 상기 하나 이상의 노드가 삭제 또는 추가되거나, 상기 새로운 엣지가 삭제 또는 추가된 데이터셋에 기초하여 질의된 임의의 개체의 쌍 사이의 연관성 관련 정보의 연산을 수행하도록 구성될 수 있다.
일 실시예에 있어서, 상기 예측 단말의 출력부를 통해, 상기 프로세서에서 연산된 연관성 관련 정보가 출력되는 단계를 더 포함할 수 있다.
또한, 본 발명은 전술한 방법에 따라 생성된 예측 모델을 사용하여 개체 간의 연관성을 예측하는 시스템으로서, 외부에서 질의 개체-쌍을 입력받도록 구성된 입력부, 상기 모델 생성 단말에 의해 생성된 연관성 예측 모델을 이용하여, 상기 입력부를 통해 입력된 질의 개체-쌍 사이의 연관성 관련 정보를 연산하도록 구성된 프로세서, 및 상기 프로세서에 의해 연산된 연관성 관련 정보를 출력하도록 구성된 출력부를 포함하는, 예측 단말을 포함하는, 개체 간의 연관성 예측 시스템을 제공한다.
또한, 본 발명은 전술한 방법을 실행하도록 컴퓨터 판독 가능한 기록 매체에 저장된, 컴퓨터 프로그램을 제공한다.
본 발명에 따르면, 기계학습 알고리즘을 이용하여 특정 질병 치료 약물의 타겟이 될 수 있는 유전자 또는 단백질을 높은 정확도로 예측하는 것이 가능하다.
또한, 기계학습 알고리즘에 따라 질의된 질병과 관련된 유전자 또는 단백질을 예측하기 때문에 기존에 알려지지 않은 새로운 타겟 유전자 또는 단백질을 발굴하는 것이 가능하다.
또한, 수집된 모든 데이터를 인공신경망 모델에 학습시키는 것이 아닌, 중요도 높은 경로를 선택적으로 학습시킴에 따라 연산 처리량의 감소 및 연산 시간이 최소화될 수 있다.
또한, 시계열적 정보를 인코딩하는 모델에서 출력되는 임베딩 벡터를 학습 데이터로 사용하고, 학습 데이터에 포함되어 있으면서 개체(노드)를 식별하기 위한 임베딩 벡터가 기존 지식으로부터 획득된 임베딩 벡터와, 학습에 의해 그 값이 변화하는 임베딩 벡터를 모두 포함함에 따라, 기존 모델 대비 예측 성능이 높다.
또한, 학습 데이터를 다수회 학습하는 과정에서, 하나의 학습 사이클마다 모든 학습 데이터를 학습하는 것이 아닌 랜덤 샘플링을 통해 일부의 학습 데이터를 학습함으로써 학습 데이터의 양이 증가되고, 생성된 예측 모델의 오버피팅 문제가 해결된다.
또한, 다수의 데이터베이스로부터 수집한 데이터에 국한되는 것이 아닌, 해당 사용자 계정 접속을 통해 사용자 데이터베이스로부터 추가의 데이터를 더 수집하여 더 수집된 데이터까지도 반영하여 예측에 이용할 수 있어 해당 연구자가 자신의 연구 컨텍스트가 반영된 예측 결과를 획득하는 것이 가능하다.
또한, 사용자 입력에 따라 노드, 엣지 및 경로 중 하나 이상의 추가 또는 삭제가 반영된 상황에서의 연산이 더 수행될 수 있어, 일종의 가상 실험 환경에서의 예측 결과를 획득할 수 있다는 장점을 갖는다.
도 1은 본 발명의 실시예에 따른 시스템을 설명하기 위한 개략적인 블록도이다.
도 2는 도 1의 시스템에서 제1 프로세서에 의한 데이터 처리 과정을 설명하기 위한 개략적인 블록도이다.
도 3은 본 발명의 실시예에 따른 시스템에서 구축된 지식 그래프를 설명하기 위한 도면이다.
도 4는 본 발명에 따른 지식 그래프의 구축 과정에서 사용되는 노드들과, 엣지들을 설명하기 위한 도면이다.
도 5는 도 1의 시스템에서 제2 프로세서에 의한 데이터 처리 과정을 설명하기 위한 도면이다.
도 6은 도 5의 질의 인코딩 모델에 입력되는 임베딩 벡터와, 이에 따라 출력되는 임베딩 벡터를 설명하기 위한 도면이다.
도 7은 도 5의 경로 인코딩 모델에 입력되는 임베딩과, 이에 따라 출력되는 임베딩 벡터를 설명하기 위한 도면이다.
도 8은 도 5의 질의-경로 인코딩 모델에 입력되는 임베딩 벡터와, 이에 따라 출력되는 임베딩 벡터, 그리고 이들이 학습되는 모습을 나타낸 도면이다.
도 9는 본 발명의 실시예에서 제1 프로세서에 의한 데이터 처리 과정을 설명하기 위한 순서도이다.
도 10은 본 발명의 실시예에서 제2 프로세서에 의한 데이터 처리 과정, 그리고 러닝 프로세서에 의한 학습 과정을 설명하기 위한 순서도이다.
도 11은 도 10에서 생성된 연관성 예측 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 과정을 설명하기 위한 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.
이하에서, 용어 "개체(entity)"는 단어나 기호 등을 의미하며, 질병의 명칭, 유전자의 명칭, 단백질의 명칭 및 약물의 명칭이 여기에 포함될 수 있다. 마찬가지로, "개체-쌍"은 개체들의 쌍으로 이루어진 데이터를 의미하며, 서로 다른 유형의 개체로 이루어진 데이터(질병-유전자, 유전자-질병, 질병-약물, 약물-질병, 유전자-약물, 약물-유전자 등)를 의미한다.
이하에서, 용어 "유전자"는 DNA나 RNA로 이루어진 유전체에서 특정 염기서열로 이루어진 유전정보의 개별적 단위를 지칭하는 것으로, DNA와 RNA뿐만 아니라 단백질(protein)로 이루어진 유전체에서 특정 아미노산서열로 이루어진 유전정보의 개별적 단위 역시 포함하는 개념이다. 또한, 유전체의 번역결과인 단백질(protein) 역시 본 발명의 "유전자"에 포함되는 개념이다.
1. 시스템의 설명
도 1을 참조하여, 본 발명의 실시예에 따른 시스템을 구체적으로 설명한다.
본 발명의 실시예에 따른 시스템은 모델 생성 단말(100) 및 예측 단말(200)을 포함한다.
모델 생성 단말(100)은 본 발명에서 사용되는 예측 모델을 생성하도록 구성된 단말이다.
도 1을 참조하면, 모델 생성 단말(100)은 통신부(110), 입력부(120), 제1 프로세서(130), 제2 프로세서(140), 제어부(150), 출력부(160), 메모리(170) 및 러닝 프로세서(180)를 포함한다. 즉, 모델 생성 단말(100)은 일 예로 통신/입력/연산/출력 기능을 갖는 컴퓨팅 장치일 수 있으며, 일 예로 서버, 데스크탑 PC, 노트북 PC, 태블릿 PC 등과 같은 다양한 전자 장치로 구현될 수 있다.
일 실시예에서, 통신부(110)는 외부 기기와의 통신을 위한 구성으로, 통신부(110)를 통해 외부 기기와의 데이터 송수신이 가능할 수 있다.
일 실시예에서, 입력부(120)는 모델 생성 단말(100)의 구성요소(예를 들어, 프로세서, 러닝 프로세서)에 사용될 명령 또는 데이터를 모델 생성 단말(100)의 외부(예를 들어, 사용자)로부터 수신할 수 있다. 입력부(120)는, 예를 들면, 마이크, 마우스, 키보드, 키(예를 들어, 버튼), 또는 디지털 펜(예를 들어, 스타일러스 펜)을 포함할 수 있다.
일 실시예에서, 제어부(150)는, 예를 들면 소프트웨어를 실행하여 프로세서에 연결된 모델 생성 단말(100)의 하나 이상의 다른 구성요소(예를 들어, 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있다.
일 실시예에서, 제1 프로세서(130), 제2 프로세서(140) 및 러닝 프로세서(180)는, 데이터 처리 또는 연산 기능을 수행할 수 있으며, 데이터 처리 또는 연산 기능의 적어도 일부로서, 다른 구성요소로부터 수신된 명령 또는 데이터를 휘발성 메모리에 저장하고, 휘발성 메모리에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다. 또한, 러닝 프로세서(180)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다.
출력부(160)는 모델 생성 단말(100)에서 처리 또는 연산된 정보를 외부로 출력할 수 있으며, 디스플레이, 스피커 등이 여기에 포함될 수 있다.
메모리(170)는 모델 생성 단말(100)에서 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어 및 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다.
후술하는 예측 단말(200) 역시 컴퓨팅 장치의 형태로 구현될 수 있으며, 모델 생성 단말(100)에 포함된 구성요소를 그대로 포함하거나 적어도 일부를 포함할 수 있다.
모델 생성 단말(100)의 러닝 프로세서(180)는 학습 데이터를 학습하여, 질의되는 개체-쌍 사이의 연관성 관련 정보를 출력하는 연관성 예측 모델을 생성하게 된다. 이하에서는, 연관성 예측 모델을 생성하는 데 사용되는 학습 데이터가 어떻게 구성되는지에 대해 구체적으로 설명한다.
학습 데이터는 모델 생성 단말(100)의 제1 프로세서(130)와 제2 프로세서(140)에 의해 전처리 및 생성된다.
제1 프로세서(130)는 노드, 엣지, 경로를 규정하고, 규정된 노드와 엣지로 이루어진 지식 그래프를 생성하며, 생성된 지식 그래프를 임베딩하고, 임베딩 결과를 이용하여 임의의 개체-쌍의 경로들 중 중요도 높은 일부 경로를 추출하도록 구성된다.
도 2를 참조하면, 제1 프로세서(130)는 데이터 수집부(131), 자연어 처리부(132), 노드 규정부(133), ID 부여부(134), 엣지 규정부(135), 경로 규정부(136), 임베딩부(137), 경로 스코어 연산부(138) 및 경로 추출부(139)를 포함한다.
데이터 수집부(131)는 다수의 데이터베이스(D1, D2, … Dn)로부터 데이터를 수집하도록 구성된다. 데이터 수집부(131)에 의해 수집되는 데이터는 일 예로 유전자 발현 데이터, 약물-단백질 결합 데이터, 논문에 기재된 정보를 항목화한 데이터, 문서 데이터 등일 수 있으나, 상기한 형태에 제한되지 않고 질병 관련 데이터, 유전자 관련 데이터 및 약물 관련 데이터를 포함하는 것이면 그 형식은 제한되지 않는다.
이를 위해, 본 발명의 실시예에 따른 시스템은 다수의 데이터베이스(D1, D2, … Dn)와 통신 연결될 수 있으며(모델 생성 단말의 통신부에 의해 상호 통신 연결될 수 있음), 다수의 데이터베이스(D1, D2, … Dn)는 공개된 데이터베이스일 수 있으나, 이에 제한되지 않고 비공개 데이터베이스일 수도 있으며, 논문 데이터베이스, 의학 정보 데이터베이스, 약학 정보 데이터베이스 및 검색 포털 데이터베이스 등을 포함할 수 있다.
데이터 수집부(131)는 다수의 데이터 베이스(D1, D2, … Dn) 각각으로부터 질병(disease)과 관련된 제1 데이터, 유전자(gene)와 관련된 제2 데이터 및 약물(compound)과 관련된 제3 데이터를 수집할 수 있다.
제1 데이터는 질병과 관련된 데이터로서, 질병의 명칭 데이터, 질병의 해부학적(anatomy) 데이터(예를 들어, 질병이 발병하는 신체의 해부학적 데이터, 간암의 경우 간이 여기에 해당할 수 있음) 및 질병의 증상 데이터를 포함할 수 있다. 즉, 질병 자체를 지칭하는 용어뿐만 아니라, 질병과 관련된 정보를 제공하는데 필요한 모든 용어를 포함하는 개념이다.
제2 데이터는 유전자와 관련된 데이터로서, 유전자의 명칭 데이터, 유전자의 유전자 온톨로지(gene ontology) 데이터, 유전자의 해부학적 데이터(예를 들어, 유전자가 발현되는 신체 조직 정보, 간암과 관련성이 있는 유전자를 찾기 위해 간에서 발현이 높은 유전자들을 우선적으로 고려할 경우 간이 여기에 해당할 수 있음) 및 유전자의 생물학적 경로(biological pathway) 데이터를 포함할 수 있으며, 유전자 온톨로지 데이터는 유전자의 생물학적 과정(biological process) 데이터, 유전자의 세포 내 위치(cellular component) 데이터 및 유전자의 분자 기능(molecular function) 데이터를 포함할 수 있다. 즉, 유전자 자체를 지칭하는 용어뿐만 아니라, 유전자와 관련된 정보를 제공하는데 필요한 모든 용어를 포함하는 개념이다.
해부학적 데이터는 제1 데이터 또는 제2 데이터에 포함될 수 있는데, 예를 들어 데이터에 A 유전자가 B 조직에서 발현한다라는 내용이 포함된 경우, B 조직은 유전자 관련 데이터인 제2 데이터로 수집될 수 있고, 데이터에 C 질병이 D 조직에서 발병된다는 내용이 포함된 경우, D 조직은 질병 관련 데이터인 제1 데이터로 수집될 수 있다.
제3 데이터는 약물과 관련된 데이터로서, 약물의 명칭 데이터, 약물의 약리학적 분류(pharmacologic class) 데이터 및 약물의 부작용(side effect) 데이터를 포함할 수 있다. 즉, 약물 자체를 지칭하는 용어뿐만 아니라, 약물과 관련된 정보를 제공하는데 필요한 모든 용어를 포함하는 개념이다.
하지만, 상기한 유형에 한정되지 않고 각각 질병, 유전자, 약물과 관련된 데이터, 그리고 질병, 유전자 및 단백질 간의 관계를 예측하는 데 필요한 데이터이면 어느 것이든 포함할 수 있다고 할 것이다.
자연어 처리부(132)는 데이터 수집부(131)에 의해 수집된 문서 데이터로부터 기설정된 자연어 처리 알고리즘을 통해, 문서 데이터에 포함된 텍스트(text)로부터 개체들을 추출하고, 개체와 개체들 간의 관계를 도출하도록 구성된다.
자연어 처리부(132)에 의해 추출된 개체와, 도출된 개체들 간의 관계는 각각 노드와 엣지로 규정될 수 있으며, 자세한 설명은 후술한다.
즉, 자연어 처리부(132)는 문서 데이터에 포함된 질병(disease) 관련 용어를 제1 개체로, 유전자(gene) 관련 용어를 제2 개체로, 약물(compound) 관련 용어를 제3 개체로, 제1 개체 내지 제3 개체 간의 관계를 설명하는 용어를 제4 개체로 각각 인식하여 추출하도록 구성된다.
그리고, 자연어 처리부(132)는 추출된 제1 개체 내지 제4 개체를 이용하여, 기설정된 방법으로 제1 개체 내지 제4 개체들 간의 관계를 도출하도록 구성된다.
본 발명에 따른 자연어 처리부(132)에 의한 제1 개체 내지 제4 개체의 추출, 개체들 간의 관계 도출은 사전 학습된 신경망(Neural Network) 모델을 이용하여 수행될 수 있다. 즉, 신경망 모델은 제1 개체 내지 제4 개체들이 각각 레이블링된 학습 데이터를 학습하여, 질의되는 문서 데이터로부터 제1 개체 내지 제4 개체를 추출하고, 개체들 간의 관계를 도출하도록 구성될 수 있다.
종래 기술에 따를 경우, 추출의 대상이 되는 용어를 미리 색인 사전에 저장해 놓은 후, 미리 저장된 용어만을 텍스트로부터 추출하게 된다. 이 경우, 색인 사전에 미리 저장되지 않은 용어가 텍스트에 포함되어 있다면, 이를 추출하지 못하고 결국에는 기존에 알려진 범위 내에서만 시스템 구축이 가능하다.
하지만, 본 발명의 경우 색인 사전에 저장된 용어를 추출하는 것이 아닌, 예를 들어, 신경망 모델이 텍스트의 어느 부분이 제1 개체 내지 제4 개체 중 어느 개체에 해당하는지 레이블링된 학습 데이터를 학습하기 때문에, 사전 학습되지 않은 용어에 대해서도 용어 자체의 형태나 전후 맥락 등을 고려하여 개체를 추출하는 것이 가능하다. 따라서, 기존의 논문을 통해 알려진 범주뿐만 아니라, 새로운 범주에서의 개체 추출 및 개체 간의 관계 도출이 가능하다.
노드 규정부(133), 엣지 규정부(135), 경로 규정부(136)는 각각 지식 그래프의 구성요소인 노드(node) 및 엣지(edge)를 규정하고, 나아가 경로(path)를 규정하도록 구성된다.
노드 규정부(133)는 데이터 수집부(131)에 의해 수집된 데이터들 중 제1 데이터를 질병의 명칭 데이터, 질병의 해부학적 데이터, 질병의 증상 데이터 등으로 그룹화할 수 있으며, 수집된 제2 데이터를 각각 유전자의 명칭 데이터, 유전자의 생물학적 과정 데이터, 유전자의 해부학적 데이터, 유전자의 세포 내 위치 데이터, 유전자의 분자 기능 데이터, 유전자의 생물학적 경로 데이터 등으로 그룹화할 수 있고, 수집된 제3 데이터를 약물의 명칭 데이터, 약물의 약리학적 분류 데이터, 약물의 부작용 데이터로 그룹화하여 총 11개의 그룹으로 그 유형을 분류할 수 있다(도 4 참조). 하지만, 상기한 개수에 제한되지 않고 다양한 유형의 그룹이 추가될 수 있다.
다른 실시예에서는, 노드 규정부(113)는 자연어 처리부(112)를 통해 추출된 제1 개체, 제2 개체 및 제3 개체 각각을 미리 결정된 방법에 따라 그룹화하며, 제1 개체, 제2 개체 및 제3 개체 각각을 노드로 규정할 수도 있다.
즉, 노드 규정부(133)는 자연어 처리부(132)를 통해 추출된 제1 개체 내지 제3 개체와, 다수의 데이터베이스들로부터 수집된 제1 데이터 내지 제3 데이터를 각각 제1 노드 내지 제3 노드로 규정하게 된다(도 3 참조). 후술하겠지만, 엣지 규정부(135)는 자연어 처리부(132)를 통해 도출된 제1 개체 내지 제3 개체 간의 관계, 제1 데이터 내지 제3 데이터 간의 관계를 엣지로 규정하게 된다. 본 발명에 따라 규정된 노드들과, 노드들을 연결하는 엣지들의 예시가 도 3에 도시된다.
또한, 노드 규정부(133)는 그룹화된 데이터들 내에 포함된 데이터들을 그 종류에 따라 각각의 노드로 규정한다.
즉, 노드 규정부(133)는 제1 데이터(개체)를 그 종류마다 각각의 노드로 규정하고, 제2 데이터(개체)를 그 종류마다 각각의 노드로 규정하며, 제3 데이터(개체)를 그 종류마다 각각 노드로 규정한다.
ID 부여부(134)는 노드 규정부(133)에 의해 규정된 노드들 각각에 고유의 ID를 부여하도록 구성된다.
즉, 본 발명에 따른 ID 부여부(134)는 각각의 노드를 나타내는 임의의 용어에 각각 고유의 ID를 부여하게 되는데, 상기 임의의 용어의 동의어(synonym) 및 축약어(abbreviation) 등 상기 임의의 용어와 동일하다고 판단될 수 있는 용어들에도 상기 임의의 용어와 동일한 ID를 부여하도록 구성된다.
한편, 임의의 용어에 2개 이상의 ID가 부여되는 경우가 있을 수 있다. 예를 들어, alpha-fetoprotein의 경우 AFP라는 축약어로도 지칭되며, alpha-fetoprotein과 AFP는 모두 174라는 ID가 부여될 수 있다.
AFP는 TRIM26이라는 유전자의 동의어에도 해당하는데, 즉 AFP는 TRIM26의 ID와 동일한 7726라는 ID가 부여될 수도 있다.
즉, AFP는 174 및 7726이라는 2개의 ID가 부여되는데, 이 경우 ID 부여부(134)는 축약어에 매칭되는 ID(7726)이 아닌 AFP의 풀 네임(full name)에 매칭되는 ID를 AFP의 ID로 부여하게 된다.
메모리(170)에는 각각의 노드마다 고유의 ID가 매핑(mapping)되어 저장되어 있으며, ID 부여부(134)는 메모리(170)에 저장된 ID들을 이용하여 각각의 노드에 고유의 ID를 부여하게 된다.
엣지 규정부(135)는 노드 규정부(133)에 의해 규정된 노드 간의 관계를 엣지로 규정한다.
엣지란 노드와 노드 사이를 잇는 연결관계를 의미하며, 엣지 규정부(135)는 수집된 데이터들에 포함된 노드와 노드 사이의 관계를 해당 노드-쌍을 서로 연결하는 엣지로 규정하게 된다.
예를 들어 문서 데이터가 "유방암 환자의 경우 멍울 증상이 발생할 수 있으며, 타목시펜 호르몬제 약물을 사용하여 치료가 수행될 수 있다"라는 텍스트를 포함하는 경우, "breast cancer"라는 노드와 "멍울"이라는 노드를 연결하는 하나의 엣지가 규정될 수 있으며, "breast cancer" 노드와 "타목시펜 호르몬제"라는 노드를 연결하는 하나의 엣지가 규정될 수 있다.
이렇듯, 엣지 규정부(135)는 데이터 수집부(131)가 수집한 제1 데이터, 제2 데이터 및 제3 데이터를 이용하여 노드 간의 관계를 엣지로 규정할 수 있으며, 노드 규정부(133)와 마찬가지로 규정된 엣지들을 그룹화할 수 있다.
도 3 및 4에는 엣지 규정부(135)에 의해 규정되고 그룹화 및 유형화된 엣지들이 도시된다.
도 3을 참조하면, 엣지 규정부(135)에 의해 규정된 엣지는 질병-유전자 관계 엣지(Disease-Target), 유전자-약물 관계 엣지(Target-Compound), 질병-약물 관계 엣지(Disease-Compound), 유전자 관련 엣지(Target-related), 질병 관련 엣지(Disease-related) 및 약물 관련 엣지(Compound-related)로 구분될 수 있다.
도 4에는 각 엣지를 유형화한 엣지 유형(metaedge)이 도시된다.
구체적으로, 질병-유전자 관계 엣지(Disease-Target)는, 유전자-질병 관련성 엣지 유형(associated) 및 유전자-질병 조절 관계 엣지 유형(downregulated_in, upregulated_in)을 포함한다.
유전자-약물 관계 엣지(Target-Compound)는 약물-유전자 결합 관계 엣지 유형(binds_to) 및 약물-유전자 조절 관계 엣지 유형(downregulated_by, upregulated_by)을 포함한다.
질병-약물 관계 엣지(Disease-Compound)는 약물-질병 치료 관계 엣지 유형(treats)을 포함한다.
유전자 관련 엣지(Target-related)는 유전자-해부학적 데이터 조절/발현 관계 엣지 유형(expressed_low, expressed_in, expressed_high), 유전자의 공변 관계 엣지 유형(covaries), 유전자의 참여 관계 엣지 유형(biological_process, cellular_component, molecular_function, involved_in), 유전자 또는 단백질 간 상호관계 엣지 유형(PPI, PDI) 및 유전 간섭-유전자 조절 관계 엣지 유형(regulates)을 포함한다.
질병 관련 엣지(Disease-related)는 질병-해부학적 데이터 관계 엣지 유형(occurs_in), 질병-증상 관계 엣지 유형(presents) 및 질병 동시발생 유사성 관계 엣지 유형(mentioned_with)을 포함한다.
약물 관련 엣지(Compound-related)는 약물-부작용 관계 엣지 유형(causes), 약물 구조적 유사성 관계 엣지 유형(similar_to), 약물-약리학적 분류 관계 엣지 유형(categorized_in)을 포함한다.
즉, 엣지 규정부(135)는 엣지들을 24개의 그룹으로 그 유형을 분류할 수 있다. 하지만, 상기한 개수에 제한되지 않고 다양한 유형의 그룹이 추가될 수 있음을 이해하여야 할 것이다.
경로 규정부(136)는 엣지 규정부(135)에 의해 규정된 엣지를 1개 이상, 구체적으로는 2개 이상 포함하되, 포함된 엣지들이 서로 연결된 것을 경로로 규정한다.
보다 구체적으로, 경로 규정부(136)는 노드-쌍(pair)마다, 노드-쌍을 이루는 노드를 각각 말단으로 하여, 노드 규정부(133)에 의해 규정된 노드와 엣지 규정부(135)에 의해 규정된 엣지들로 서로 연결된 것을 경로로 규정하게 된다.
즉, 경로 규정부(136)에 의해 규정되는 경로 중 최소 단위의 경로는, 노드 - 엣지 - 노드 - 엣지 - 노드로 구성될 수 있으며, 다른 예에서 노드 - 엣지 - 노드 - 엣지 - 노드 - 엣지 - 노드 등으로 구성된 경로가 규정될 수도 있다.
보다 구체적으로는, 노드-쌍이 서로 연결되되, 2개 이상 5개 이하의 엣지들로 연결되는 것(엣지들)을 경로로 규정할 수 있으며, 더욱 구체적으로는 노드-쌍이 서로 연결되되, 2개 이상 3개 이하의 엣지들로 연결되는 것(엣지들)을 경로로 규정할 수도 있다. 4개 이상의 엣지들로 연결된 노드-쌍들은 유효한 경로에서 제외될 수 있는데, 다수의 단계를 거쳐 노드 간이 서로 연결되는 경우, 그 관련성이 약하다고 볼 수 있기 때문이다.
경로 규정부(136)에 의해 규정된 경로들은, 경로를 구성하는 엣지들의 개수, 순서 및 유형(도 4에 도시된)의 조합 경우의 수에 따라 다수의 경로 유형이 결정될 수 있다.
예를 들어, "AKT1 - associates - Alzheimer's disease-resembles - Parkinson's disease"라는 경로는 "Gene - associates - Disease - resembles - Disease"와 같은 경로 유형을 갖는다. 다시 말해, A(a 유형)-B(b 유형) 엣지를 포함하는 경로는 (a,b) 유형으로 규정될 수 있으며, A(a 유형)-B(b 유형)-C(c 유형) 엣지를 포함하는 경로는 (a,b,c) 유형으로 규정될 수 있으며, 서로 다른 유형으로 취급될 수 있다.
또한, 경로 규정부(136)는 다수의 경로의 유형들 중 일부를 기 설정된 경로 유형(metapath)으로 분류할 수 있다. 후술하겠지만, 기 설정된 경로 유형에 해당되지 않은 경로 유형들은 본 발명에 따른 학습 과정에서 배제된다.
예를 들어, 경로 규정부(136)는 다수의 경로 유형들 중, Disease -mentioned_with - Disease - associates_with - Gene 순서의 엣지 유형을 포함하는 경로 유형을 기 설정된 경로 유형으로 설정할 수 있으며, 다른 예에서는 Disease - treated_by - Compound - binds_to - Gene - interacts_with - Gene 순서의 엣지 유형을 포함하는 경로 유형을 기 설정된 경로 유형으로 설정할 수 있다. 본 발명에서는 특별히 이에 제한되지 않고, 시스템 관리자에 의해 기 설정된 경로 유형이 설정될 수도 있으며, 임의의 노드-쌍을 연결하는 경로들 중 생물학적으로 의미가 있는 경로들만을 학습시킴에 따라 학습의 효율과 정확도가 향상될 수 있다.
또한, 경로 규정부(136)는 엣지들의 개수, 순서 및 유형의 조합 경우의 수에 따라 결정되는 다수의 경로 유형들 중 Disease - treated by - Compound - downregulates - Gene - regulated by - Gene 순서의 엣지 유형을 포함하는 경로 유형과, Disease - downregulates - Gene - upregulated by - Compound - binds to - Gene의 순서의 엣지 유형을 포함하는 경로 유형은 기 설정된 경로 유형으로 설정하지 않을 수 있다. 이 역시, 시스템 관리자에 의해 기 설정된 경로 유형에서 배제되는 경로 유형이 설정될 수 있으며, 임의의 노드-쌍을 연결하는 경로들 중 생물학적으로 의미가 없거나 중요도가 떨어지는 경로들은 학습 과정에서 배제됨으로써, 학습의 효율이 향상되고 연산의 정확도가 향상될 수 있다.
임베딩부(137)는 노드 규정부(133)에 의해 규정된 노드, 엣지 규정부(135)에 의해 규정된 엣지와 엣지 유형(metaedge) 및 경로 규정부(116)에 의해 규정된 경로와 기 설정된 경로 유형(metapath) 중 하나 이상에 대해 임베딩(embedding)을 수행한다.
보다 구체적으로는 임베딩부(137)는 노드 규정부(133)에 규정된 노드와, 엣지 규정부(135)에 의해 규정된 엣지 유형 각각에 대해 임베딩(embedding)을 수행한다.
이하에서는, 임베딩부(137)에 의한 임베딩 방법의 일 예를 설명한다.
먼저, 임베딩부(137)는 노드 규정부(133)에 의해 규정된 전체 노드를 각각 k개의 랜덤 변수로 구성된 실수 벡터로 초기화한다. 여기서 k는 128일 수 있다. 하지만, 이에 제한되지 않고 64, 256, 512, 1024 등 다양한 랜덤 변수로 구성된 실수 벡터로 초기화하는 것이 가능하다.
다음, 엣지 규정부(135)에 의해 규정된 전체 엣지 유형을 각각 k개의 랜덤 변수로 구성된 실수 벡터로 초기화한다. 여기서 k는 128일 수 있다. 하지만, 이에 제한되지 않고 64, 256, 512, 1024 등 다양한 랜덤 변수로 구성된 실수 벡터로 초기화하는 것이 가능하다.
다음, 임의의 노드-쌍이 엣지 규정부(135)에 의해 규정된 엣지 유형을 가지는 엣지로 서로 연결되어 있는지 여부를 판단하여 지도 학습 레이블 데이터로 주입한다. 임의의 노드 쌍(소스 노드, 타겟 노드)이 엣지 규정부(135)에 의해 규정된 엣지 유형을 가지는 엣지로 서로 연결되는 경우 1의 데이터가 주입될 것이며, 서로 연결되지 않을 경우 0의 데이터가 주입될 것이다.
3개의 k차원 벡터(소스 노드, 타겟 노드, 엣지 유형)를 입력으로 하는 예측 함수가 실제 연결 여부와 일치되도록 k차원 벡터를 조정한다. 여기서, 예측 함수는 TransE, HolE 또는 DistMult 등의 모델일 수 있으나, 이에 제한되지 않고 다양한 예측 함수 모델이 본 발명에 적용될 수 있다.
조정이 완료되면 각각의 노드에 대응하는 k차원의 실수 벡터들이 해당 노드와 엣지 유형의 임베딩 결과로 산출된다.
상기한 방법 이외에도 다양한 임베딩 방법이 수행될 수 있으며, 임베딩부(137)에 의한 임베딩 결과, 각각의 노드는 k차원 공간 상에서 하나의 점으로 사상될 수 있다. 또한, 임베딩부(137)에 의한 임베딩의 결과로서, 제1 노드 내지 제3 노드 각각이 k차원 공간 상에서 사상될 뿐만 아니라, 엣지 유형들이 함께 k차원 공간에 임베딩될 수 있다.
경로 스코어 연산부(138)는 경로에 포함된 엣지들의 스코어를 기 설정된 방법에 따라 연산하고, 연산된 엣지 스코어를 이용하여 경로들의 스코어를 연산하도록 구성된다.
경로에 포함된 각각의 엣지들의 스코어는 임베딩부(137)에서 임베딩된 각각의 노드들과 엣지 유형을 이용하여 연산된다. 즉, 경로에 포함되는 각각의 엣지는 해당 엣지 유형의 k차원 실수 벡터(사상) 및 엣지의 시작과 끝 노드들의 k차원 실수 벡터를 가지며, 이 실수 벡터들로부터 해당 엣지 스코어가 계산될 수 있다. 구체적인 연산 방식의 예시로 임베딩부(137)에서 사용된 예측 함수가 적용될 수 있으며, 각각의 노드 사상들의 유사도(similarity) 역시 적용될 수 있다.
상기 노드 사상들의 유사도에 기반한 계산 방식은 k차원 공간 상에 사상된 노드 간의 유사도가 높을수록 해당 노드들을 연결하는 엣지에 높은 스코어가 부여되는 방식이다. 유사도 연산 방식으로는 벡터와 벡터 사이의 각도를 연산하는 방식(보다 구체적으로는 두 벡터의 cosine값을 연산하는 방식)이 적용될 수 있으며, 이는 예시이므로 벡터 간의 유사도를 연산할 수 있는 다양한 방식이 적용될 수 있다고 할 것이다.
n(n은 1 이상의 정수)개의 엣지를 포함하는 경로의 경우 n개 엣지 각각의 엣지 스코어를 합산하여 해당 경로의 스코어가 연산될 수 있으며, n+1개의 엣지를 포함하는 경로의 경우 n+1개 엣지 각각의 스코어를 합산하여 해당 경로의 스코어가 연산될 수 있다.
경로 추출부(139)는 경로 스코어 연산부(138)이 연산한 경로 스코어에 기초하여, 경로 규정부(136)에 의해 규정된 경로들 중 일부를 추출하도록 구성된다.
구체적으로, 경로 추출부(139)는 임의의 노드-쌍(개체-쌍)의 경로들 중 기 설정된 경로 유형(metapath)마다 일부의 경로를 추출한다.
전술한 바와 같이, 경로 유형은 경로에 포함된 엣지들의 개수, 순서 및 유형에 따라 분류될 수 있다. 예를 들어, A(a 유형)-B(b 유형) 엣지를 포함하는 경로는 (a,b) 유형으로 규정될 수 있으며, A(a 유형)-B(b 유형)-C(c 유형) 엣지를 포함하는 경로는 (a,b,c) 유형으로 규정될 수 있으며, 서로 다른 유형으로 취급될 수 있다.
보다 구체적으로는 임의의 노드-쌍의 경로들 중 기 설정된 경로 유형을 갖는 경로들에 대해, 경로 스코어 연산부(138)가 연산한 경로 스코어를 이용하여, 스코어가 높은 순으로 경로 유형마다 일부의 경로를 추출할 수 있으며, 일 예로 경로의 유형마다 5개의 경로를 추출할 수 있다. 하지만, 5개에 제한되지 않고 5개 미만 또는 5개 초과의 개수의 경로가 추출될 수 있음을 이해하여야 할 것이다.
제2 프로세서(140)는 제1 프로세서(130)에 의해 연산된 임베딩 벡터, 추출된 경로를 이용하여 러닝 프로세서(180)에 학습될 학습 데이터를 생성하도록 구성된다.
도 5 내지 8을 참조하여, 이를 구체적으로 설명한다.
제2 프로세서(140)는 시계열적 정보를 인코딩하는 모델(을 사용하여 학습 데이터를 생성하는 점에 특징이 있다.
시계열적 정보를 인코딩하는 모델이란, 입력 시퀀스를 하나의 벡터 표현(context vector)으로 압축하되, 압축된 벡터 표현에서 입력 시퀀스의 시계열적 특징이 드러나도록 입력 시퀀스를 인코딩하는 모델을 의미한다. 입력 시퀀스의 시계열적 특징을 드러내기 위해, 본 발명에서는 포지셔널 벡터(positional vector)를 사용한다.
본 발명에서는 크게 2개의 인코딩 모델이 사용된다. 첫째는, 제1 인코딩 모델이고 둘째는 제2 인코딩 모델인데, 제1 인코딩 모델에서 출력되는 값이 제2 인코딩 모델의 입력값으로 입력되는 두 층의 인코딩 모델 구조(즉, 적층(stacked) 인코딩 모델)를 채택하였다. 여기에서, 제1 인코딩 모델이 시계열적 정보를 인코딩하는 모델이며, 제2 인코딩 모델은 시계열적 정보를 인코딩하지 않는다. 이에 대한 자세한 설명은 후술한다.
제1 인코딩 모델은 2개의 인코딩 모델로 나누어질 수 있다.
첫째는 질의 인코딩 모델로, 학습에 사용되는 경로가 어떠한 개체-쌍을 연결하는 경로인지를 특정하기 위해 사용된다.
도 6을 참조하면, 임의의 개체의 쌍은 질의 임베딩 벡터의 형태로 질의 인코딩 모델에 입력된다.
질의 임베딩 벡터는, 쿼리 벡터(제1 질의 임베딩 벡터) - 임의의 개체의 쌍 중 어느 하나의 개체를 특정하는 임베딩 벡터(제2 질의 임베딩 벡터) - 임의의 개체의 쌍 중 다른 하나의 개체를 특정하는 임베딩 벡터(제3 질의 임베딩 벡터) 순으로 구성된다.
제1 질의 임베딩 벡터는, 질의 타입 임베딩 벡터와 질의 타입 임베딩 벡터의 위치를 식별하기 위한 제1 포지셔널(positional) 임베딩 벡터를 이용하여 연산되는데, 구체적으로 질의 타입 임베딩 벡터와 제1 포지셔널 임베딩 벡터의 합산 임베딩 벡터일 수 있다. 각각의 임베딩 벡터는 k차원의 벡터 값으로 표현될 수 있는데, 질의 타입 임베딩 벡터와 제1 포지셔널 임베딩 벡터는 동일한 차원의 벡터 값일 수 있으며, 이들을 단순히 더하는 과정을 통해 제1 질의 임베딩 벡터가 생성될 수 있다.
제2 질의 임베딩 벡터는, 질병, 유전자 및 약물을 포함하는 타입(type) 중 임의의 개체의 쌍 중 어느 하나의 개체가 해당하는 타입을 나타내는 제1 노드 타입 임베딩 벡터와, 어느 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 개체 임베딩 벡터의 위치를 식별하기 위한 제2 포지셔널 임베딩 벡터를 이용하여 연산되는데, 구체적으로 제1 노드 타입 임베딩 벡터, 개체 임베딩 벡터 및 제2 포지셔널 임베딩 벡터의 합산 임베딩일 수 있다. 도 6을 예로 들면, 어느 하나의 개체가 Alzheimer's disease인 경우, "질병"을 지칭하는 노드 타입 임베딩 벡터가, 제1 노드 타입 임베딩 벡터에 해당될 수 있다.
개체 임베딩 벡터의 경우, 제1 개체 임베딩 벡터와 제2 개체 임베딩 벡터를 이용하여 연산되는 것일 수 있고, 보다 구체적으로는 제1 개체 임베딩 벡터와 제2 개체 임베딩 벡터의 결합(concatenate) 임베딩 벡ㄱ터일 수 있다. 여기에서, "결합"이란 k차원의 임베딩 벡터와 k차원의 임베딩 벡터가 합산되어 k차원이 유지되는 임베딩 벡터의 결과값을 얻는 "합산"과는 다른 개념으로, k/2차원의 임베딩 벡터와 k/2차원의 임베딩 벡터의 결합을 통해 k차원의 임베딩 벡터의 결과값을 얻게 되는 연산 과정을 의미한다(즉, 차원이 합산되는 결과를 얻게 됨). 본 발명에서, "합산"을 통해 생성되는 임베딩 벡터 "결합"을 통해 생성되는 임베딩 벡터는 동일한 차원의 임베딩 벡터인 것이 바람직하다.
제1 개체 임베딩 벡터는 제1 프로세서(130)의 임베딩부(137)에 의해 생성된 임베딩 결과값 중, 상기 어느 하나의 개체를 지칭(식별)하는 임베딩 벡터를 의미한다. 즉, 제1 개체 임베딩 벡터란 노드와 엣지 유형의 임베딩 결과값 중, 상기 어느 하나의 개체를 지칭하는 임베딩 벡터에 해당하며, 이후 러닝 프로세서(180)에 의해 학습이 이루어지더라도 그 값이 고정된(변화하지 않는) 요소이다.
제2 개체 임베딩 벡터는, 제1 개체 임베딩 벡터와 마찬가지로 상기 어느 하나의 개체를 지칭하는 임베딩 벡터를 의미한다. 다만, 러닝 프로세서(180)에 의해 학습이 이루어지는 경우 그 값이 변화하는 요소이며(예측 성능이 최대가 되도록, 가중치를 조절하는 과정에서 해당 임베딩 벡터 값이 변화하게 됨), 랜덤 선별된 임베딩 벡터 값이 제2 개체 임베딩 벡터에 적용될 수 있다.
본 발명에서는, 기존의 지식을 활용하여 획득된 제1 개체 임베딩 벡터(이미 알려진 지식을 기반으로 한 정보)를 고정값으로 하고, 학습 과정에서 예측 성능이 최대가 되도록 그 값이 조정될 수 있는 제2 개체 임베딩 벡터 모두를 활용함으로써, 기존 지식에 따른 정보와 인공지능을 활용함으로써 획득되는 2가지 장점을 모두 취하게 된다. 따라서, 종래 기술 대비 예측 성능이 현저히 상승되는 효과가 달성된다.
제3 질의 임베딩 벡터는 제2 질의 임베딩 벡터와 형태는 유사하다. 다만, 제2 질의 임베딩 벡터가 임의의 개체의 쌍 중 어느 하나의 개체를 특정하기 위해 사용되는 임베딩 벡터이고, 제3 질의 임베딩 벡터는 상기 임의의 개체의 쌍 중 다른 하나의 개체를 특정하기 위해 사용되는 임베딩 벡터라는 점에서만 다르다.
즉, 제3 질의 임베딩 벡터는 다른 하나의 개체가 해당하는 타입을 나타내는 제2 노드 타입 임베딩 벡터, 다른 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 개체 임베딩 벡터의 위치를 식별하기 위한 제3 포지셔널 임베딩 벡터를 이용하여 연산되는 것일 수 있고, 보다 구체적으로 제2 노드 타입 임베딩 벡터, 개체 임베딩 벡터 및 제3 포지셔널 임베딩 벡터의 합산 임베딩 벡터일 수 있다.
이와 같이, 질의 임베딩 벡터가 제1 질의 임베딩 벡터, 제2 질의 임베딩 벡터 및 제3 질의 임베딩 벡터로 구성되고, 이들이 질의 인코딩 모델에 입력되면, 하나의 압축된 표현인 컨텍스트 벡터가 출력된다. 즉, 질의 인코딩 모델에서 출력되는 컨텍스트 벡터(임베딩 벡터)를 통해 임의의 개체-쌍을 특정하면서도, 임의의 개체-쌍이 어느 순서로 배치되어 있는지 구별되는 것이 가능하다(A와 B 개체의 쌍이더라도, A-B 개체 쌍인지 또는 B-A 개체 쌍인지 구별될 수 있음).
다음, 도 7을 참조하여 경로 인코딩 모델에 입력되는 경로 임베딩 벡터를 구체적으로 설명한다.
질의 임베딩 벡터가 임의의 개체-쌍을 특정하기 위한 임베딩 벡터였다면, 경로 임베딩 벡터는 임의의 개체-쌍의 경로들을 특정하기 위한 임베딩 벡터라는 점에서 차이가 있고 임베딩 벡터의 형태 자체는 유사하다.
경로 임베딩 벡터는, 경로 타입 임베딩 벡터(제1 경로 임베딩 벡터), 임의의 개체의 쌍 중 어느 하나의 개체를 특정하는 임베딩 벡터(제2 경로 임베딩 벡터), 엣지 유형을 특정하는 임베딩 벡터(제3 경로 임베딩 벡터), 상기 어느 하나의 개체와 엣지로 연결된 개체를 특정하는 임베딩 벡터(제4 경로 임베딩 벡터), 엣지 유형을 특정하는 임베딩 벡터(제5 경로 임베딩 벡터) 및 상기 다른 하나의 개체를 특정하는 임베딩 벡터(제6 경로 임베딩 벡터)를 포함할 수 있다.
임의의 개체-쌍 간의 경로 길이는 다양할 수 있기 때문에(어떤 경로는 2개의 엣지로만 구성되어 있을 수 있으나, 다른 경로는 3개 이상의 엣지로 구성되어 있을 수 있음), 경로 임베딩 벡터의 길이는 다양할 수 있으나, 제1 경로 임베딩 벡터 내지 제6 경로 임베딩 벡터의 최소 경로 임베딩 벡터를 가질 수 있다(제1 경로 임베딩 벡터 내지 제6 경로 임베딩 벡터는, 임의의 개체-쌍 사이에 2개의 엣지와 1개의 노드를 포함하는, 노드(어느 하나의 개체를 지칭) - 엣지 - 노드 - 엣지 - 노드(다른 하나의 개체를 지칭)로 이어지는 경로를 가질 경우의 임베딩 벡터에 해당함).
제1 경로 임베딩 벡터는 경로 타입 임베딩 벡터와, 경로 타입 임베딩 벡터의 위치를 식별하기 위한 제4 포지셔널 임베딩 벡터를 이용하여 연산되고, 구체적으로 경로 타입 임베딩 벡터와 제4 포지셔널 임베딩 벡터의 합산 임베딩 벡터일 수 있다.
제2 경로 임베딩 벡터는 상기 어느 하나의 개체의 타입을 나타내는 제1 노드 타입 임베딩 벡터, 상기 어느 하나의 개체를 특정하기 위한 개체 임베딩 벡터, 그리고 개체 임베딩 벡터의 위치를 식별하기 위한 제5 포지셔널 임베딩 벡터를 이용하여 연산되고, 구체적으로 제1 노드 타입 임베딩 벡터, 개체 임베딩 벡터 및 제5 포지셔널 임베딩 벡터의 합산 임베딩일 수 있다. 제2 경로 임베딩 벡터의 개체 임베딩 벡터는, 전술한 것처럼 제1 개체 임베딩 벡터와 제2 개체 임베딩 벡터를 이용하여 연산되는데, 구체적으로 제1 개체 임베딩 벡터와 제2 개체 임베딩 벡터의 결합 임베딩 벡터일 수 있다.
제3 경로 임베딩 벡터는 경로에 포함된 엣지이면서 상기 어느 하나의 개체와 연결된 엣지가 해당하는 엣지 유형을 특정하기 위한 제1 엣지 타입 임베딩 벡터와, 제1 엣지 타입 임베딩 벡터의 위치를 식별하기 위한 제6 포지셔널 임베딩 벡터를 이용하여 연산되고, 구체적으로 제1 엣지 타입 임베딩 벡터와 제6 포지셔널 임베딩 벡터의 합산 임베딩 벡터일 수 있다.
제4 경로 임베딩 벡터는 상기 어느 하나의 개체와 엣지로 연결된 개체의 타입을 나타내는 제2 노드 타입 임베딩 벡터, 상기 개체를 특정하기 위한 개체 임베딩 벡터, 그리고 개체 임베딩 벡터의 위치를 식별하기 위한 제7 포지셔널 임베딩 벡터를 이용하여 연산되고, 구체적으로 제2 노드 타입 임베딩 벡터, 개체 임베딩 벡터 및 제7 포지셔널 임베딩 벡터의 합산 임베딩 벡터일 수 있다.
제5 경로 임베딩 벡터는 제4 경로 임베딩 벡터에서 특정된 개체와 연결된 엣지를 특정하기 위한 임베딩 벡터로, 제3 경로 임베딩 벡터와 유사한 형태를 갖는다.
제6 경로 임베딩 벡터는 다른 하나의 개체를 특정하기 위한 임베딩 벡터로, 제2 경로 임베딩 벡터 및 제4 경로 임베딩 벡터와 유사한 형태를 갖는다.
이와 같이, 경로 임베딩 벡터가 제1 경로 내지 제6 경로 임베딩 벡터를 포함하고(경로를 이루는 엣지의 개수에 따라 더 많은 경로 임베딩 벡터를 포함할 수 있음), 이들이 경로 인코딩 모델에 입력되면, 하나의 압축된 표현인 컨텍스트 벡터가 출력된다. 즉, 경로 인코딩 모델에서 출력되는 컨텍스트 벡터(임베딩 벡터)를 통해 임의의 개체-쌍 사이의 경로를 특정하면서도, 어떤 노드와 어떤 엣지가 어떤 순서로 경로가 구성되는지 특정하는 것이 가능하다..
임의의 개체-쌍마다 질의 인코딩 모델에서 출력되는 임베딩 벡터와, 경로 인코딩 모델에서 출력되는 임베딩 벡터들(경로가 다수개이므로 각각의 경로마다 임베딩 벡터가 출력될 수 있음) 모두가 질의-경로 인코딩 모델에 입력되고, 하나의 압축된 표현인 컨텍스트 벡터가 인코더에서 출력된다.
도 5를 참조하면, 질의 인코딩 모델에서 출력되는 임베딩 벡터 및 경로 인코딩 모델에서 출력되는 임베딩 벡터들이 질의-경로 인코딩 모델의 임베딩으로 각각 입력된다(질의 인코딩 모델에 제1 질의 임베딩 내지 제3 질의 임베딩으로 구성된 질의 임베딩이 입력되는 것과, 경로 인코딩 모델에 제1 경로 임베딩 내지 제6 경로 임베딩으로 구성된 경로 임베딩이 입력되는 것과 유사함).
한편, 질의 인코딩 모델과 경로 인코딩 모델에 입력되는 임베딩 벡터들이 각각 포지셔널 임베딩을 포함하는 반면, 질의-경로 인코딩 모델에 입력되는 임베딩 벡터들은 포지셔널 임베딩을 포함하지 않는다. 질의-경로 인코딩 모델에 입력되는 임베딩 벡터들은 임의의 개체-쌍 사이의 중요도 높은 경로들을 특정하기 위한 것이므로, 서로 간에 시계열적인 관계를 가지지 않고 독립적이기 때문이다.
즉, 질의-경로 인코딩 모델에서 출력되는 컨텍스트 벡터(임베딩 벡터)는 임의의 개체-쌍 사이의 중요도 높은 경로들만이 반영된 임베딩 벡터에 해당한다.
한편, 임의의 개체-쌍마다 생물학적으로 의미가 있는 다수 개의 경로가 존재한다. 본 발명에서는, 임의의 개체-쌍마다의 기 설정된 경로 유형 중, 경로 추출부(139)에 의해 추출된 경로만이 질의-경로 인코딩 모델에 입력된다.
질의-경로 인코딩 모델에서 출력되는 임베딩 벡터는 i) 임의의 개체의-쌍 ii) 상기 임의의 개체의-쌍 사이의 경로 중 중요도 높은 경로의 정보를 모두 포함하고 있다. 즉, 본 발명에서 러닝 프로세서(180)에 의해 임의의 인공신경망 모델에 학습되는 학습 데이터에 i) 임의의 개체-쌍 ii) 상기 임의의 개체의-쌍 사이의 경로 중 중요도 높은 경로가 포함되고, 임의의 개체-쌍이 질의됨에 따라 임의의 개체-쌍 사이의 연관성 관련 정보(연관성 유무 및 연관성 정도 등)를 출력하도록 상기 학습 데이터를 학습하게 된다. 즉, 질의-경로 인코딩 모델에서 출력되는 임베딩 벡터들을 학습하여, 임의의 개체-쌍이 질의되는 경우, 질의된 개체-쌍 사이의 연관성 관련 정보를 예측하는 확률이 최대화 되는 방향으로 인공신경망 모델의 파라미터가 조정되고, 파라미터의 조정이 완료되면 연관성 예측 모델이 생성될 수 있다.
여기서, 인공신경망 모델은 DNN(Deep Neural Network), CNN(Convolutional Neural Network), DCNN(Deep Convolutional Neural Network), RNN(Recurrent Neural Network), RBM(Restricted Boltzmann Machine), DBN(Deep Belief Network), SSD(Single Shot Detector), MLP (Multi-layer Perceptron) 또는 어텐션 메커니즘(Attention Mechanism)을 기반으로 한 모델일 수 있으나, 이에 제한되지 않고 다양한 인공신경망 모델이 본 발명에 적용될 수 있다.
예측 단말(200)은 모델 생성 단말(100)에 의해 생성된 연관성 예측 모델을 전달받고, 입력부(220)를 통해 외부에서 질의 대상 개체-쌍이 입력되는 경우, 프로세서(250)는 입력된 질의 대상 개체-쌍을 연관성 예측 모델의 입력층에 입력하고, 연관성 예측 모델의 출력층을 통해 질의 대상 개체-쌍 사이의 연관성 유무 및 연관성 정도 중 적어도 하나의 연관성 관련 정보가 출력된다. 연관성 예측 모델의 출력층을 통해 출력되는 정보는 예측 단말(200)의 출력부(260)를 통해 외부에서 시인 가능한 정보의 형태로 출력될 수 있다.
본 발명의 실시예에 따른 시스템은 사용자 데이터베이스(Du)로부터 데이터를 더 수집할 수 있다.
"사용자 데이터베이스(Du)"란 해당 시스템 사용자가 실험 등을 통해 확보한 데이터셋이 저장된 데이터베이스를 의미한다.
즉, 데이터 수집부(131)가 다수의 데이터베이스(D1, D2, … Dn)로부터 데이터를 수집하여 구축한 그래프 데이터베이스에 사용자 데이터베이스(Du)로부터 데이터를 더 추가할 수 있으며, 이는 실험 등을 통해 검증된 데이터, 예를 들어 질병-단백질 쌍 간의 관계를 확인한 데이터를 포함할 수 있기에 예측의 정확도가 더 향상될 수 있으며, 연구 컨텍스트가 반영된 예측 결과를 획득할 수 있다는 장점을 가진다.
사용자 데이터베이스(Du)는 프라이빗 데이터(private data)가 저장되어 있기 때문에, 사용자 데이터베이스(Du)의 사용자에 매칭되는 계정을 통해 시스템에 접속하여야만 해당 사용자 데이터베이스(Du)로부터 데이터 수집이 가능하도록 구성될 수 있다.
또한, 본 발명은 기존의 공개된 데이터베이스에서 수집된 데이터들을 이용하여 구축한 그래프 데이터베이스에, 모델 생성 단말(100) 또는 예측 단말(200)의 입력부를 통한 사용자 명령에 의해 특정 방식의 조작(manipulation)이 이루어질 수 있다.
본 발명의 실시예에 따르면, 특정 질병이 발병된 경우 유전자의 발현 변화된 정보(발현이 증가 또는 발현이 감소) 추가, 특정 약물을 투여한 경우 유전자의 발현 변화된 정보(발현이 증가 또는 발현이 감소) 추가, 특정 약물에 결합하는 단백질의 정보 추가, 특정 유전자 노드 추가 또는 제거 등의 조작이 이루어질 수 있다. 그리고, 해당 조작이 반영된 데이터에 기초하여 생성된 예측 모델의 연산이 이루어짐으로써 사용자가 가한 변형이 결과에 미치는 영향을 확인하는 것이 가능하다.
상기 조작은 기존의 공개 데이터베이스(D1, D2, … Dn)에서 제시된 데이터의 내용과는 다른 범주에서 수행되는 것이 바람직하다. 예를 들어, A 유전자의 발현이 증가하는 경우 B 질병의 발병 확률이 증가한다라는 내용이 이미 공개되어 있음이 가정된 경우, 상기 내용에 따른 조작을 수행하더라도 기존 구축된 그래프 데이터베이스의 변형이 이루어지지 않기 때문이다. 반면, 기존 공개 데이터베이스에 제시된 데이터의 범주가 아닌 새로운 범주의 데이터가 추가된다면(예를 들어, 기존의 데이터에는 C 약물이 A 유전자의 발현을 억제한다라는 내용이 전혀 알려지지 않았는데, 해당 내용을 추가하는 경우), 기존 구축된 그래프 데이터베이스의 변형이 이루어질 수 있다. 상기 조작을 통해, 기존 데이터베이스와 사용자에 의해 조작이 이루어진 변형 데이터베이스에서의 결과를 비교하는 것이 가능하며, 이에 따라 사용자가 인가한 조작이 결과에 얼마나 영향을 미친 것인지 확인하는 것이 가능하다.
예를 들어, 입력부를 통해 임의의 노드 추가 또는 삭제 후 연산 수행이라는 명령이 입력될 수 있다. 또한, 노드에 국한되는 것이 아닌 엣지, 나아가 경로의 추가 또는 삭제 후 연산 수행이라는 명령이 입력될 수도 있다. 즉, 시스템 사용자가 원하는 노드가 추가로 존재하거나, 존재하지 않는 것을 가정하여 인공신경망 모델에 의한 연산이 수행될 수 있으며, 일 예시로 구체적으로 입력부를 통해 "CHD1"노드 삭제 후 연산 수행이라는 명령이 입력되면 예측 모델은 CHD1 노드와 CHD1 노드와 임의의 노드 간의 관계에 해당하는 엣지들이 삭제된 상황에서의 연산을 수행할 수 있다. 다시 말하면, "CHD1"이 녹아웃(knockout)된 상황을 가정하여 질의된 질병과 관련된 중요도 높은 유전자 또는 단백질이 출력될 수 있는 것이다. 여기에서, 사용자 조작을 통해 노드가 삭제되는 경우, 삭제된 노드와 다른 노드를 연결하는 엣지 또한 함께 삭제될 수 있다.
시스템 사용자가 원하는 노드를 추가 후 연산 수행이라는 명령이 입력되면 반대로, 추가된 노드와, 추가된 노드와 임의의 노드 간의 관계가 추가된 상황에서의 연산을 수행할 수 있으며, 사용자가 원하는 데이터를 추가하거나 제거함에 따라 발생하는 가상 환경에서의 결과를 획득할 수 있게 된다.
상기 조작에 따라 변형되는 결과 정보는 각 사용자의 사용자 데이터베이스(Du)에 따로이 저장될 수 있으며, 사용자 데이터베이스(Du)는 해당 사용자만이 접근이 가능한 바, 보안성 역시 유지될 수 있다.
본 발명에 따른 시스템은 질의 명령뿐만 아니라, 검색 기능이 제공될 수도 있다. 즉, 탐색하고자 하는 검색어를 입력하면 입력된 검색어를 포함하는 데이터들이 출력되는 데이터베이스 브라우징 기능이 제공될 수 있다.
즉, 질의 명령의 결과로서 출력되는 예측 결과 및 중요 경로의 구성 요소들에 대해 추가 정보를 탐색할 수 있도록 구성되며, 질의된 검색어를 포함하는 데이터뿐 아니라 해당 검색어와 연결된 정보들을 확장해가면서 획득하는 것도 가능하다.
또한, 본 발명에 따라 구축된 데이터베이스 및 변형 데이터베이스(사용자 데이터베이스로부터 사용자 데이터를 더 수집하여 구축된 데이터베이스, 사용자 조작이 반영되어 구축된 데이터베이스) 중 하나를 선택하고, 선택된 데이터베이스 내의 다양한 노드와 엣지를 탐색하여 필요한 정보를 얻는 것이 가능하다.
또한, 본 발명에 따른 시스템은, 검증 기능이 구비되어 성능을 간접적으로 검증하는 것이 가능하다.
특정 시점을 기점으로 상기 특정 시점까지 다수의 공개 데이터베이스들(D1, D2, … Dn)에 저장된 데이터들을 수집하여 본 발명에 따른 시스템을 구축한 후, 상기 특정 시점 이후에 다수의 공개 데이터베이스들(D1, D2, … Dn)에 업데이트된 문서 데이터들을 수집하여 자연어 처리부(132)를 통해 문서 데이터들에서 개체와 개체들 간의 관계를 도출한다.
그리고, 본 발명에 따라 연관성 있다고 예측된 개체-쌍 중 특정 임계치 이상의 신뢰도로 예측한 개체-쌍이, 자연어 처리부(132)를 통해 추출된 개체-쌍에 포함되는 경우, 해당 개체-쌍이 실제 관련성 있는 것으로 교차 검증하는 것이 가능하다.
2. 방법의 설명
도 9 내지 11을 참조하여, 본 발명의 실시예에 따른 예측 모델 생성 방법 및 생성된 예측 모델을 이용한 예측 방법을 구체적으로 설명한다. 구체적인 설명은 전술하였으므로, 이하에서는 각 단계의 핵심적인 부분만 간략히 설명한다.
먼저, 도 9 및 10을 참조하여 모델 생성 단말(100)에 의해 예측 모델의 생성 방법을 구체적으로 설명한다.
데이터 수집부(131)가 다수의 데이터베이스(D1 내지 Dn)로부터 질병과 관련된 제1 데이터, 유전자 또는 단백질과 관련된 제2 데이터 및 약물과 관련된 제3 데이터 중 하나 이상을 수집한다.
다음, 노드 규정부(133), 엣지 규정부(135) 및 경로 규정부(136)가 수집된 제1 데이터 내지 제3 데이터를 이용하여 노드, 엣지 및 경로를 규정한다.
다음, 임베딩부(137)가 규정된 노드와 엣지 유형이 k차원 공간 상에 실수 벡터화되도록 임베딩을 수행한다.
다음, 경로 스코어 연산부(138)가 임베딩 결과값을 이용하여 경로에 포함된 엣지들의 스코어를 각각 연산하고, 연산된 엣지 스코어를 이용하여 각각의 경로의 경로 스코어를 연산한다.
다음, 경로 스코어 연산부(138)에 의해 연산된 경로 스코어에 기초하여, 경로 추출부(139)가 노드-쌍의 기 설정된 경로 유형마다 다수개의 경로를 추출하게 된다. 경로 추출부(139)에 의해 추출된 경로들이 학습에 사용되고, 추출되지 않은 경로(중요도가 낮은 경로)는 학습에서 배제된다.
다음, 도 10을 참조하여 시계열 인코딩 모델을 사용하여 학습 데이터를 생성하는 과정을 구체적으로 설명한다.
먼저, 질의 인코딩 모델에 임의의 개체-쌍을 특정하기 위한 제1 질의 임베딩 벡터 내지 제3 질의 임베딩 벡터가 입력되고, 이에 따라 질의 인코딩 모델에서 입력된 질의 임베딩에 대응하는 임베딩 벡터가 출력된다.
다음, 경로 인코딩 모델에 임의의 개체-쌍 사이의 경로들 중, 경로 추출부(139)에 의해 추출된 경로를 특정하기 위한 제1 경로 임베딩 벡터 내지 제6 경로 임베딩 벡터가 입력되고, 이에 따라 경로 인코딩 모델에서 입력된 경로 임베딩에 대응하는 임베딩 벡터가 출력된다. 도 10에 도시된 것처럼, 경로 추출부(139)에 의해 추출된 임의의 개체-쌍 사이의 경로는 다수개일 수 있으며, 이에 대응하는 개수의 경로 인코딩 모델이 사용되고, 최종적으로 다수개의 임베딩 벡터가 출력될 수 있다(다른 실시예에서는, 하나 또는 2개 이상의 경로 인코딩 모델이 사용될 수도 있음).
질의 인코딩 모델에서 출력된 임베딩 벡터와, 경로 인코딩 모델에서 출력된 임베딩 벡터들이 질의-경로 인코딩 모델에 입력되고, 이에 따라 질의-경로 인코딩 모델에서 대응하는 임베딩 벡터들이 출력된다.
본 발명에서는, 서로 다른 개체-쌍마다 중요도 높은 경로들이 질의-경로 인코딩 모델에 입력될 수 있으며, 다시 말하면 개체-쌍 각각마다 질의-경로 인코딩 모델에서 출력되는 임베딩 벡터들이 존재할 수 있다.
러닝 프로세서(180)는 질의-경로 인코딩 모델에서 출력되는 임베딩 벡터들을 학습하여, 임의의 개체-쌍을 질의하는 경우 질의된 개체-쌍 사이의 연관성 관련 정보를 출력하는 연관성 예측 모델을 생성하게 된다. 연관성 예측 모델 생성 과정에서 본 발명의 실시예에서는 개체-쌍 사이의 연관 관계가 있는지의 확률값을 추론하기 위해 Binary Cross Entropy Loss(BCE Loss)로 학습시킬 수 있다.
한편, 본 발명에서는 다수의 개체-쌍 사이의 중요도 높은 경로들을 학습하는 과정이 다수회 반복된다(학습 데이터들을 다수회 에포크(epoch)하게 됨). 각각의 학습 사이클마다, 어느 하나의 개체-쌍 사이의 모든 중요도 높은 경로들을 학습하는 것이 아니고, 중요도 높은 경로들 중 일부를 랜덤 샘플링하여(본 발명에서는 75%의 확률로 랜덤 샘플링하게 됨) 학습을 수행하게 된다. 이를 통해, 학습 데이터의 양이 증가하는 효과가 달성되고, 랜덤 샘플링 과정이 적용되지 않은 학습 과정에서 매번 고정된 데이터가 학습됨에 따라 발생하는 모델 오버피팅 문제가 해결될 수 있다.
다음, 도 11을 참조하여 예측 모델을 사용한 예측 방법을 구체적으로 설명한다.
모델 생성 단말(100)에 의해 생성된 연관성 예측 모델은 예측 단말(200)에 전송되어 저장될 수 있으며, 예측 단말(200)의 마우스, 키보드 등의 외부에서의 입력 명령을 컴퓨터에서 실행 가능한 명령으로 변환하도록 구성된 입력부(220)를 통해 개체-쌍이 질의된다.
예측 단말(200)의 프로세서(250)는 메모리(240)에 저장된 연관성 예측 모델을 사용하여 질의된 개체-쌍 사이의 연관성 관련 정보를 연산하게 된다. 구체적으로, 질의된 개체-쌍은 연관성 예측 모델의 입력층에 입력되고, 출력층을 통해 질의된 개체-쌍 사이의 연관성 관련 정보가 출력된다.
예측 모델에서 출력된 연관성 관련 정보는 모니터, 디스플레이 장치 등의 출력부(260)를 통해 사용자가 시인 가능한 정보의 형태로서 출력될 수 있다. 예를 들어, 질의된 개체-쌍 사이의 연관성 유/무의 정보만이 출력부(260)를 통해 출력될 수 있으며, 질의된 개체-쌍 사이의 연관성 확률값의 정보가 출력부(260)를 통해 출력될 수도 있다.
3. 검증 실험
본 발명에 따라 구축되는 연관성 예측 모델의 우수성을 검증하기 위해 검증 실험을 실시하였다.
보다 구체적으로, 본 출원인에 의한 등록특허 제10-2225278호에 따른 예측 모델을 대조군으로 하여, 본 발명의 실시예에 따른 연관성 예측 모델의 우수성을 검증하는 실험을 실시하였다.
먼저, 평가의 대상이 되는 질병-유전자의 리스트들을 추려내었다. 여기서, 평가의 대상이 되는 질병-유전자란, 이미 특정 유전자가 해당 질병과 관련이 있다고 알려져 있어서, 해당 질병-유전자 쌍을 본 발명의 실시예에 따른 연관성 예측 모델에 질의하였을 때 출력되는 연관성 관련 정보가 정확한 것인지 확인할 수 있는 정보를 의미한다.
평가의 대상이 되는 질병-유전자들을 대조군과 본 발명에 따른 연관성 예측 모델에 각각 질의하였으며, 예측 정확도를 mAP(mean average precision)로 평가하였다. 즉, 대조군에 따른 예측 모델과 본 발명에 따른 연관성 예측 모델에, 질병-유전자들을 질의하였을 때, 질의된 질병-유전자 사이의 연관성을 얼마나 높은 정확도로 예측하였는지 average precision을 측정하고, 평균을 계산하여 각 모델의 성능 평가를 수행하였다.
검증 실험 결과, 대조군에서는 40.12%, 본 발명에서는 69.19%의 예측 정확도를 보였으며, 본 발명에 따라 생성된 연관성 예측 모델의 예측 정확도가 기존 모델 대비 현저히 높음을 확인하였다.
본 발명의 실시예에 따른 시스템의 구성 전체 내지 적어도 일부는 하드웨어 모듈 형태 또는 소프트웨어 모듈 형태로 구현되거나, 하드웨어 모듈과 소프트웨어 모듈이 조합된 형태로도 구현될 수 있다.
여기서, 소프트웨어 모듈이란, 예컨대, 시스템 내에서 연산을 제어하는 프로세서에 의해 실행되는 명령어로 이해될 수 있으며, 이러한 명령어는 시스템 내 메모리에 탑재된 형태를 가질 수 있을 것이다.
위 설명한 본 발명에 따른 방법은, 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명을 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 당업계에서 통상의 지식을 가진 자라면 이하의 청구범위에 기재된 본 발명의 사상 및 영역을 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 모델 생성 단말
110: 통신부
120: 입력부
130: 제1 프로세서
131: 데이터 수집부
132: 자연어 처리부
133: 노드 규정부
134: ID 부여부
135: 엣지 규정부
136: 경로 규정부
137: 임베딩부
138: 경로 스코어 연산부
139: 경로 추출부
140: 제2 프로세서
150: 제어부
160: 출력부
170: 메모리
180: 러닝 프로세서
200: 예측 단말
210: 통신부
220: 입력부
230: 제어부
240: 메모리
250: 프로세서
260: 출력부

Claims (20)

  1. 모델 생성 단말에 의해, 임의의 개체(entity)의 쌍(pair)이 질의되는 경우, 질의된 개체 사이의 연관성 관련 정보를 출력하는 연관성 예측 모델이 생성되도록 학습 데이터를 학습하는 단계를 포함하고, 상기 임의의 개체의 쌍은 질병-유전자, 유전자-질병, 질병-약물, 약물-질병, 유전자-약물 및 약물-유전자 중 하나 이상의 쌍을 포함하는 것이며,
    상기 학습 데이터는,
    임의의 개체의 쌍이 질의 인코딩 모델에 입력됨에 따라 상기 질의 인코딩 모델에서 출력되는 임베딩 벡터 및 상기 질의 인코딩 모델에 입력된 임의의 개체의 쌍을 서로 연결하는 경로가 경로 인코딩 모델에 입력됨에 따라 상기 경로 인코딩 모델에서 출력되는 임베딩 벡터가 질의-경로 인코딩 모델에 입력됨에 따라 상기 질의-경로 인코딩 모델에서 출력되는 임베딩 벡터를 포함하고,
    상기 임의의 개체의 쌍은,
    상기 임의의 개체의 쌍의 개체들 각각을 식별하기 위한 개체 임베딩 벡터들과, 상기 개체 임베딩 벡터들 각각의 위치를 식별하기 위한 포지셔널 임베딩 벡터들을 포함하는 질의 임베딩 벡터의 형태로 상기 질의 인코딩 모델에 입력되고,
    상기 임의의 개체의 쌍을 서로 연결하는 경로는,
    상기 임의의 개체의 쌍 사이의 경로에 포함된 개체들과, 상기 개체들을 서로 연결하는 엣지의 엣지 유형들 각각을 식별하기 위한 임베딩 벡터들, 그리고 상기 임베딩 벡터들 각각의 위치를 식별하기 위한 포지셔널 임베딩 벡터들을 포함하는 경로 임베딩 벡터의 형태로 상기 경로 인코딩 모델에 입력되는,
    개체 간의 연관성 예측 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 질의 임베딩 벡터는,
    질의 타입 임베딩 벡터와 상기 질의 타입 임베딩 벡터의 위치를 식별하기 위한 제1 포지셔널(positional) 임베딩 벡터를 이용하여 연산된 제1 질의 임베딩 벡터;
    상기 임의의 개체의 쌍 중 어느 하나의 개체가 해당하는 타입을 나타내는 제1 노드 타입 임베딩 벡터와, 상기 어느 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제2 포지셔널 임베딩 벡터를 이용하여 연산된 제2 질의 임베딩 벡터; 및
    상기 임의의 개체의 쌍 중 다른 하나의 개체가 해당하는 타입을 나타내는 제2 노드 타입 임베딩 벡터와, 상기 다른 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제3 포지셔널 임베딩 벡터를 이용하여 연산된 제3 질의 임베딩 벡터;를 포함하는,
    개체 간의 연관성 예측 방법.
  4. 제3항에 있어서,
    상기 개체 임베딩 벡터는,
    지식 그래프의 임베딩 결과값이면서, 학습이 이루어지더라도 그 값이 고정된 제1 개체 임베딩 벡터; 및
    학습에 의해 값이 변화하는 제2 개체 임베딩 벡터;를 이용하여 연산된 것인,
    개체 간의 연관성 예측 방법.
  5. 제4항에 있어서,
    상기 제1 질의 임베딩 벡터 내지 상기 제3 질의 임베딩 벡터는 연산에 사용된 임베딩 벡터들의 합산 임베딩 벡터들이고,
    상기 개체 임베딩 벡터는 연산에 사용되는 제1 개체 임베딩 벡터와 제2 개체 임베딩 벡터의 결합(concatenate) 임베딩 벡터인,
    개체 간의 연관성 예측 방법.
  6. 제4항에 있어서,
    상기 지식 그래프는,
    질병, 유전자, 약물 및 장기 중 적어도 2개의 개체와, 상기 적어도 2개의 개체 간의 관계가 표현되어 있는 것인,
    개체 간의 연관성 예측 방법.
  7. 삭제
  8. 제1항에 있어서,
    상기 경로 임베딩 벡터는,
    경로 타입 임베딩 벡터와 상기 경로 타입 임베딩 벡터의 위치를 식별하기 위한 제4 포지셔널 임베딩 벡터를 이용하여 연산된 제1 경로 임베딩 벡터;
    상기 임의의 개체의 쌍 중 어느 하나의 개체가 해당하는 타입을 나타내는 제1 노드 타입 임베딩 벡터, 상기 어느 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제5 포지셔널 임베딩 벡터를 이용하여 연산된 제2 경로 임베딩 벡터;
    엣지들이 그 특성에 따라 구분된 하나 이상의 엣지 유형(metaedge) 중, 상기 어느 하나의 개체에 연결된 엣지의 유형을 식별하기 위한 제1 엣지 타입 임베딩 벡터와 상기 제1 엣지 타입 임베딩 벡터의 위치를 식별하기 위한 제6 포지셔널 임베딩 벡터를 이용하여 연산된 제3 경로 임베딩 벡터;
    상기 어느 하나의 개체에 해당하는 노드와 엣지로 연결된 노드에 해당하는 개체가 해당하는 타입을 나타내는 제3 노드 타입 임베딩 벡터, 상기 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제7 포지셔널 임베딩 벡터를 이용하여 연산된 제4 경로 임베딩 벡터;
    상기 제4 경로 임베딩 벡터에 포함된 개체 및 상기 임의의 개체의 쌍 중 다른 하나의 개체를 서로 연결하는 엣지의 유형을 식별하기 위한 제2 엣지 타입 임베딩 벡터와, 상기 제2 엣지 타입 임베딩 벡터의 위치를 식별하기 위한 제8 포지셔널 임베딩 벡터를 이용하여 연산된 제5 경로 임베딩 벡터; 및
    상기 임의의 개체의 쌍 중 다른 하나의 개체가 해당하는 타입을 나타내는 제2 노드 타입 임베딩 벡터, 상기 다른 하나의 개체를 식별하기 위한 개체 임베딩 벡터, 그리고 상기 개체 임베딩 벡터의 위치를 식별하기 위한 제9 포지셔널 임베딩 벡터를 이용하여 연산된 제6 경로 임베딩 벡터;를 포함하는,
    개체 간의 연관성 예측 방법.
  9. 제8항에 있어서,
    상기 개체 임베딩 벡터는,
    지식 그래프의 임베딩 결과값이면서, 학습이 이루어지더라도 그 값이 고정된 제1 개체 임베딩 벡터; 및
    학습에 의해 값이 변화하는 제2 개체 임베딩 벡터;를 이용하여 연산된 것인,
    개체 간의 연관성 예측 방법.
  10. 제9항에 있어서,
    상기 제1 경로 임베딩 벡터 내지 제6 경로 임베딩 벡터는 연산에 사용된 임베딩 벡터들의 합산 임베딩 벡터들이고,
    상기 개체 임베딩 벡터는 연산에 사용되는 제1 개체 임베딩 벡터와 제2 개체 임베딩 벡터의 결합(concatenate) 임베딩 벡터인,
    개체 간의 연관성 예측 방법.
  11. 제1항에 있어서,
    상기 경로 인코딩 모델에는, 임의의 개체의 쌍마다 다수 개의 경로가 입력되고,
    상기 입력되는 다수 개의 경로는 임의의 개체의 쌍의 경로들 중 일부의 경로이며, 기 설정된 경로 유형(metapath)에 포함된 다수의 경로 중 기 설정된 방법에 의해 연산된 경로 스코어가 높은 순서에 기초하여 추출된 일부의 경로인,
    개체 간의 연관성 예측 방법.
  12. 제11항에 있어서,
    상기 경로 유형은 경로를 구성하는 엣지의 개수, 엣지의 순서 및 엣지 유형의 조합에 기초하여 구분지어지며, 상기 기 설정된 경로 유형은 구분지어진 경로 유형 중 적어도 일부의 유형인,
    개체 간의 연관성 예측 방법.
  13. 제11항에 있어서,
    상기 경로 스코어는,
    노드 및 엣지 유형의 임베딩 결과값을 이용하여, 경로에 포함된 각각의 엣지들의 엣지 스코어를 연산하고, 임의의 개체의 쌍의 경로에 포함된 모든 엣지들의 엣지 스코어를 이용하여 연산된 것인,
    개체 간의 연관성 예측 방법.
  14. 제1항에 있어서,
    상기 질의된 개체-쌍 사이의 연관성 관련 정보는,
    상기 질의된 개체-쌍 사이의 연관성 유무 및 연관성 정도 중 적어도 어느 하나를 포함하는,
    개체 간의 연관성 예측 방법.
  15. 제1항에 있어서,
    상기 질의-경로 인코딩 모델은, 상기 질의 인코딩 모델과 상기 경로 인코딩 모델에 대해 적층(stacked)되어 있는 것인,
    개체 간의 연관성 예측 방법.
  16. 제1항에 있어서,
    질의 개체-쌍이 예측 단말의 입력부를 통해 입력되는 단계;
    상기 예측 단말의 프로세서에 의해, 상기 모델 생성 단말에 의해 생성된 연관성 예측 모델에 질의 개체-쌍이 질의되는 경우, 상기 연관성 예측 모델에서 출력되는 값인 질의된 임의의 개체의 쌍 사이의 연관성 관련 정보가 연산되는 단계를 더 포함하는,
    개체 간의 연관성 예측 방법.
  17. 제16항에 있어서,
    미리 규정된 노드들 중 하나 이상의 노드가 삭제 또는 추가되거나, 미리 규정되지 않은 새로운 엣지가 삭제 또는 추가되는 단계를 더 포함하며,
    상기 예측 단말은, 상기 하나 이상의 노드가 삭제 또는 추가되거나, 상기 새로운 엣지가 삭제 또는 추가된 데이터셋에 기초하여 질의된 임의의 개체의 쌍 사이의 연관성 관련 정보의 연산을 수행하도록 구성되는,
    개체 간의 연관성 예측 방법.
  18. 제16항에 있어서,
    상기 예측 단말의 출력부를 통해, 상기 프로세서에서 연산된 연관성 관련 정보가 출력되는 단계를 더 포함하는,
    개체 간의 연관성 예측 방법.
  19. 제1항, 제3항 내지 제6항 및 제8항 내지 제18항 중 어느 한 항에 따른 방법에 따라 생성된 예측 모델을 사용하여 개체 간의 연관성을 예측하는 시스템으로서,
    외부에서 질의 개체-쌍을 입력받도록 구성된 입력부;
    상기 모델 생성 단말에 의해 생성된 연관성 예측 모델을 이용하여, 상기 입력부를 통해 입력된 질의 개체-쌍 사이의 연관성 관련 정보를 연산하도록 구성된 프로세서; 및
    상기 프로세서에 의해 연산된 연관성 관련 정보를 출력하도록 구성된 출력부;를 포함하는, 예측 단말을 포함하는,
    개체 간의 연관성 예측 시스템.
  20. 제1항, 제3항 내지 제6항 및 제8항 내지 제18항 중 어느 한 항에 따른 방법을 실행하도록 컴퓨터 판독 가능한 기록 매체에 저장된,
    컴퓨터 프로그램.
KR1020220028764A 2022-03-07 2022-03-07 시계열적 정보를 인코딩하는 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템 KR102452433B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220028764A KR102452433B1 (ko) 2022-03-07 2022-03-07 시계열적 정보를 인코딩하는 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템
PCT/KR2023/003092 WO2023172025A1 (ko) 2022-03-07 2023-03-07 시계열적 정보를 인코딩하는 모델을 사용하여 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 생성되는 예측 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220028764A KR102452433B1 (ko) 2022-03-07 2022-03-07 시계열적 정보를 인코딩하는 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템

Publications (1)

Publication Number Publication Date
KR102452433B1 true KR102452433B1 (ko) 2022-10-11

Family

ID=83598994

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220028764A KR102452433B1 (ko) 2022-03-07 2022-03-07 시계열적 정보를 인코딩하는 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템

Country Status (2)

Country Link
KR (1) KR102452433B1 (ko)
WO (1) WO2023172025A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116153528A (zh) * 2023-04-20 2023-05-23 武汉纺织大学 一种基于注意力机制和全局检索的药物推荐方法
WO2023172025A1 (ko) * 2022-03-07 2023-09-14 주식회사 스탠다임 시계열적 정보를 인코딩하는 모델을 사용하여 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 생성되는 예측 시스템
KR102606267B1 (ko) * 2023-04-28 2023-11-29 주식회사 스탠다임 예측 신뢰도에 기반한 보정 기술을 이용하는 타겟 예측 방법 및 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102035658B1 (ko) 2019-04-01 2019-10-23 한국과학기술정보연구원 신약 재창출 후보 추천 시스템 및 이 시스템의 각 기능을 실행시키기 위해 매체에 저장된 컴퓨터 프로그램
JP2019220149A (ja) 2018-04-07 2019-12-26 タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited 異種ネットワーク上でのグラフ畳込みに基づく遺伝子優先順位づけ
KR102203065B1 (ko) * 2019-09-03 2021-01-14 숭실대학교산학협력단 트리플 검증 장치 및 방법
KR102225278B1 (ko) * 2020-01-31 2021-03-10 주식회사 스탠다임 질의되는 개체와 관련되는 질병, 유전자 또는 단백질을 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101624307B1 (ko) * 2014-07-17 2016-05-25 한국과학기술원 네트워크 조절 모티프 발굴 시스템 및 그 방법
KR101839572B1 (ko) * 2017-11-21 2018-03-16 연세대학교 산학협력단 질병 관련 유전자 관계 분석 장치 및 방법
KR102452433B1 (ko) * 2022-03-07 2022-10-11 주식회사 스탠다임 시계열적 정보를 인코딩하는 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019220149A (ja) 2018-04-07 2019-12-26 タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited 異種ネットワーク上でのグラフ畳込みに基づく遺伝子優先順位づけ
KR102035658B1 (ko) 2019-04-01 2019-10-23 한국과학기술정보연구원 신약 재창출 후보 추천 시스템 및 이 시스템의 각 기능을 실행시키기 위해 매체에 저장된 컴퓨터 프로그램
KR102203065B1 (ko) * 2019-09-03 2021-01-14 숭실대학교산학협력단 트리플 검증 장치 및 방법
KR102225278B1 (ko) * 2020-01-31 2021-03-10 주식회사 스탠다임 질의되는 개체와 관련되는 질병, 유전자 또는 단백질을 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023172025A1 (ko) * 2022-03-07 2023-09-14 주식회사 스탠다임 시계열적 정보를 인코딩하는 모델을 사용하여 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 생성되는 예측 시스템
CN116153528A (zh) * 2023-04-20 2023-05-23 武汉纺织大学 一种基于注意力机制和全局检索的药物推荐方法
KR102606267B1 (ko) * 2023-04-28 2023-11-29 주식회사 스탠다임 예측 신뢰도에 기반한 보정 기술을 이용하는 타겟 예측 방법 및 시스템

Also Published As

Publication number Publication date
WO2023172025A1 (ko) 2023-09-14

Similar Documents

Publication Publication Date Title
KR102673288B1 (ko) 질의되는 개체와 관련된 질병, 유전자 또는 단백질을 예측하는 예측 모델을 학습시키는 방법
KR102452433B1 (ko) 시계열적 정보를 인코딩하는 모델을 사용하여 질의되는 개체-쌍 사이의 연관성 관련 정보를 예측하는 방법 및 이를 이용하여 구축되는 예측 시스템
Jin et al. Application of deep learning methods in biological networks
JP7490576B2 (ja) 訓練された統計モデルを使用するマルチモーダル予測のための方法および装置
Jiang et al. Predicting drug− disease associations via sigmoid kernel-based convolutional neural networks
Hu et al. Deep learning frameworks for protein–protein interaction prediction
US20230123770A1 (en) Protein database search using learned representations
Zhong et al. Graph embeddings on gene ontology annotations for protein–protein interaction prediction
Parraga-Alava et al. An unsupervised learning approach for automatically to categorize potential suicide messages in social media
CN113470741B (zh) 药物靶标关系预测方法、装置、计算机设备及存储介质
Zhao et al. Biomedical data and deep learning computational models for predicting compound-protein relations
Wang et al. Performance improvement for a 2D convolutional neural network by using SSC encoding on protein–protein interaction tasks
Dong et al. Predicting protein complexes using a supervised learning method combined with local structural information
Zhao et al. Incorporating representation learning and multihead attention to improve biomedical cross-sentence n-ary relation extraction
Akhter et al. BaPreS: a software tool for predicting bacteriocins using an optimal set of features
CN116646001B (zh) 基于联合式跨域注意力模型预测药物靶标结合性的方法
KR102519848B1 (ko) 생의학적 연관성 예측 방법 및 장치
US20230410936A1 (en) Network approach to navigating the human genome
CN115206421A (zh) 药物重定位方法、重定位模型的训练方法及装置
KR102606267B1 (ko) 예측 신뢰도에 기반한 보정 기술을 이용하는 타겟 예측 방법 및 시스템
Ebrahimi et al. Analysis of Persian Bioinformatics Research with Topic Modeling
Mondal Algorithms for data mining and bio-informatics
Akhter et al. BPAGS: a web application for bacteriocin prediction via feature evaluation using alternating decision tree, genetic algorithm, and linear support vector classifier
Kermani et al. Integrating graph structure information and node attributes to predict protein-protein interactions
Yang et al. DeepDRP: Prediction of intrinsically disordered regions based on integrated view deep learning architecture from transformer-enhanced and protein information

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant