KR20230022005A - 화합물 정보 추출을 위한 장치 및 방법 - Google Patents
화합물 정보 추출을 위한 장치 및 방법 Download PDFInfo
- Publication number
- KR20230022005A KR20230022005A KR1020210104113A KR20210104113A KR20230022005A KR 20230022005 A KR20230022005 A KR 20230022005A KR 1020210104113 A KR1020210104113 A KR 1020210104113A KR 20210104113 A KR20210104113 A KR 20210104113A KR 20230022005 A KR20230022005 A KR 20230022005A
- Authority
- KR
- South Korea
- Prior art keywords
- compound
- layer
- compound data
- input
- vector
- Prior art date
Links
- 150000001875 compounds Chemical class 0.000 title claims abstract description 381
- 238000000034 method Methods 0.000 title claims abstract description 62
- 239000013598 vector Substances 0.000 claims abstract description 142
- 239000000126 substance Substances 0.000 claims abstract description 60
- 238000000605 extraction Methods 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 21
- 239000011159 matrix material Substances 0.000 claims description 46
- 230000006870 function Effects 0.000 claims description 38
- 238000010606 normalization Methods 0.000 claims description 34
- 230000009466 transformation Effects 0.000 claims description 32
- 230000008569 process Effects 0.000 claims description 21
- 230000000873 masking effect Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 7
- 238000011156 evaluation Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 239000002547 new drug Substances 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000009509 drug development Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000007786 learning performance Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000001988 toxicity Effects 0.000 description 2
- 231100000419 toxicity Toxicity 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 102000004169 proteins and genes Human genes 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/30—Prediction of properties of chemical compounds, compositions or mixtures
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/10—Analysis or design of chemical reactions, syntheses or processes
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/40—Searching chemical structures or physicochemical data
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/60—In silico combinatorial chemistry
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/70—Machine learning, data mining or chemometrics
Landscapes
- Chemical & Material Sciences (AREA)
- Engineering & Computer Science (AREA)
- Crystallography & Structural Chemistry (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Medicinal Chemistry (AREA)
- Analytical Chemistry (AREA)
- Chemical Kinetics & Catalysis (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
본 개시 내용은 화합물 정보 추출을 위한 장치 및 방법을 제공한다. 상기 방법은, 인코더 계층 및 디코딩 계층으로의 입력을 위해 설정된 차원으로 입력 화합물 데이터를 처리하는 단계; 상기 인코더 계층에서 어텐션 방식으로 상기 입력 화합물 데이터를 학습시키는 단계; 정보 보틀넥 계층에서 상기 학습된 화합물 데이터에 기초하여 레이턴트 차원을 가지는 평균 벡터 및 분산 벡터를 획득하는 단계; 재파라미터화를 통해 상기 평균 벡터 및 상기 분산 벡터에 따른 정규분포로부터 레이턴트 벡터를 추출하는 단계; 화합물 특성 예측 계층에서 상기 평균 벡터에 기초하여 화합물의 물리-화학적 특성을 예측하는 단계; 길이 예측 계층에서 상기 평균 벡터에 기초하여 화합물 시퀀스의 길이를 예측하는 단계; 정보 확장 계층에서 상기 레이턴트 벡터를 상기 디코딩 계층으로의 입력을 위해 설정된 차원을 갖는 인코더-출력 화합물 데이터로 변환하는 단계; 상기 디코더 계층에서 어텐션 방식으로 상기 인코더-출력 화합물 데이터를 이용하여 상기 입력 화합물 데이터를 학습시키는 단계; 및 생성 계층에서 상기 디코더 계층에서 학습된 화합물 데이터로부터 화합물 데이터를 재구성하는 단계를 포함할 수 있다. 본 개시 내용에 따르면, 여러가지 목적의 화합물 예측 모델들에서 공통적으로 사용될 수 있는 화합물 정보들을 추출할 수 있는 화합물 정보 추출 모델을 제공할 수 있다.
Description
본 개시 내용은 화합물 정보 추출 모델에 관한 것이며, 보다 상세하게는 화합물 정보 추출을 위한 컴퓨팅 장치 및 방법에 관한 것이다.
신약 개발 등의 목적으로 화합물 정보를 분석 및 예측하기 위해 인공지능 알고리즘을 적용하려는 시도들이 이루어지고 있다. 이러한 접근법을 위해서는 목적에 맞는 인공지능 모델을 설계할 필요가 있으며, 모델의 복잡도가 높아질수록 모델 훈련에 고려할 사항들이 많아지면서 모델 하나를 설계, 훈련 및 검증하기까지 많은 시간 및 인력이 소비되어야 한다.
화합물의 특성을 예측하는 모델, 표적 단백질과의 결합력을 예측하는 모델, 화합물의 안정성을 예측하는 모델 등과 같은 여러 예측 모델들의 성능은 해당 모델에서 얼마나 적합한 화학/물리적 특성을 추출할 수 있느냐에 좌우될 수 있다.
따라서, 여러가지 목적의 모델들에서 공통적으로 사용될 수 있는 화합물 정보들을 추출하여 제공할 수 있는 화합물 정보 추출 모델을 개발할 필요성이 요구되고 있다.
이러한 문제점을 해결하기 위해 본 개시 내용은 다양한 화합물 예측 모델에서 공통적으로 사용될 수 있는 화합물 정보 추출을 위한 컴퓨팅 장치 및 방법을 제공하는 것을 목적으로 한다.
본 개시 내용의 일 실시예에 따르면, 컴퓨팅 장치에 의해 수행가능한 화합물 정보 추출 방법이 제시된다. 상기 방법은, 인코더 계층 및 디코딩 계층으로의 입력을 위해 설정된 차원으로 입력 화합물 데이터를 처리하는 단계; 상기 인코더 계층에서 어텐션(Attention) 방식으로 상기 입력 화합물 데이터를 학습시키는 단계; 정보 보틀넥 계층에서 상기 학습된 화합물 데이터에 기초하여 레이턴트(latent) 차원을 가지는 평균 벡터 및 분산 벡터를 획득하는 단계; 재파라미터화(Reparameterization)를 통해 상기 평균 벡터 및 상기 분산 벡터에 따른 정규분포로부터 레이턴트 벡터를 추출하는 단계; 화합물 특성 예측 계층에서 상기 평균 벡터에 기초하여 화합물의 물리-화학적 특성을 예측하는 단계; 길이 예측 계층에서 상기 평균 벡터에 기초하여 화합물 시퀀스의 길이를 예측하는 단계; 정보 확장 계층에서 상기 레이턴트 벡터를 상기 디코딩 계층으로의 입력을 위해 설정된 차원을 갖는 인코더-출력 화합물 데이터로 변환하는 단계; 상기 디코더 계층에서 어텐션 방식으로 상기 인코더-출력 화합물 데이터를 이용하여 상기 입력 화합물 데이터를 학습시키는 단계; 및 생성 계층에서 상기 디코더 계층에서 학습된 화합물 데이터로부터 화합물 데이터를 재구성하는 단계를 포함할 수 있다.
또한, 상기 입력 화합물 데이터를 처리하는 단계는, 상기 입력 화합물 데이터를 화합물 시퀀스를 구성하는 최소단위로 토큰화(tokenization)하는 단계; N×T 차원의 토큰화된 화합물 데이터를 N×d_model 차원의 행렬로 임베딩하는 단계 - N은 화합물의 토큰 개수이고, T는 토큰의 가지 수이고, d_model은 상기 인코딩 계층 및 디코딩 계층의 설정된 차원임 -; 임베딩된 행렬에 포지셔널 인코딩 값을 더하는 단계를 포함할 수 있다.
또한, 상기 인코더 계층에서 상기 입력 화합물 데이터를 학습시키는 단계는, 멀티헤드 셀프 어텐션(Multi-Head Self Attention) 부계층을 통해 상기 인코더 계층에 입력된 화합물 데이터를 학습시키는 단계; 상기 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계; 상기 잔차 연결 및 정규화된 화합물 데이터를 입력받아 피드 포워드(Feed Forward) 부계층을 통해 학습시키는 단계; 및 상기 피드 포워드 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계를 포함할 수 있다.
또한, 상기 인코더 계층은 복수개의 연속된 인코더 계층들로 구성될 수 있다. 상기 인코더 계층에서 상기 입력 화합물 데이터를 학습시키는 단계는, 이전 인코더 계층에서 학습된 화합물 데이터를 다음 인코더 계층으로 입력하는 방식으로 첫번째 인코더 계층에서 상기 입력 화합물 데이터를 입력받고 마지막 인코더 계층에서 최종 학습된 화합물 데이터를 출력하는 단계를 포함할 수 있다.
또한, 상기 화합물 특성 예측 계층에서 상기 평균 벡터에 기초하여 화합물의 물리-화학적 특성을 예측하는 단계는, 상기 평균 벡터를 입력값으로 하는 1×dzo 차원으로의 제 1 선형 변환 출력값을 ReLU 함수에 입력하여 제 1 출력 벡터를 획득하는 단계 - dzo은 상기 제 1 선형 변환의 설정된 차원 크기임 -; 상기 제 1 출력 벡터를 입력값으로 하는 1×dz1 차원으로의 제 2 선형 변환 출력값을 ReLU 함수에 입력하여 제 2 출력 벡터를 획득하는 단계 - dz1은 상기 제 2 선형 변환의 설정된 차원 크기임 -; 및 상기 제 2 출력 벡터를 입력값으로 하는 1×y 차원으로의 제 3 선형 변환을 통해 물리-화학적 특성 예측 벡터(Yμ)를 획득하는 단계 - y는 물리-화학적 특성의 개수임 - 를 포함할 수 있다.
또한, 상기 길이 예측 계층에서 상기 평균 벡터에 기초하여 화합물 시퀀스의 길이를 예측하는 단계는, 상기 평균 벡터를 입력값으로 하는 1×dl0 차원으로의 제 1 선형 변환을 통해 제 1 출력 벡터를 획득하는 단계 - dl0은 상기 제 1 선형 변환의 설정된 차원 크기임 -; 상기 제 1 출력 벡터를 입력값으로 하는 1×L 차원으로의 제 2 선형 변환을 통해 제 2 출력 벡터를 획득하는 단계 - L은 설정된 화합물 시퀀스의 최대 길이임 -; 및 상기 제 2 출력 벡터를 Softmax 함수에 입력하여 시퀀스 길이 예측 벡터(S)를 획득하는 단계를 포함할 수 있다.
또한, 상기 정보 확장 계층에서 상기 레이턴트 벡터를 상기 인코더-출력 화합물 데이터로 변환하는 단계는, 1×dlatent 차원의 상기 레이턴트 벡터를 Expand 함수를 통해 N×d_model 차원의 행렬로 변환시키는 단계 ― dlatent는 레이턴트 차원임 ―; 멀티헤드 셀프 어텐션 부계층을 통해 상기 변환된 행렬로 표현된 화합물 데이터를 학습시키는 단계; 및 상기 멀티헤드 셀프 어텐션 계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화하여 상기 인코더-출력 화합물 데이터를 생성하는 단계를 포함할 수 있다.
또한, 상기 디코더 계층에서 상기 인코더-출력 화합물 데이터를 이용하여 상기 입력 화합물 데이터를 학습시키는 단계는, 마스킹 행렬이 적용된 멀티헤드 셀프 어텐션 부계층을 통해 상기 디코더 계층에 입력된 상기 입력 화합물 데이터를 학습시키는 단계; 상기 마스킹 행렬이 적용된 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계; 멀티헤드 인코더-디코더 어텐션 부계층을 통해 상기 인코더-출력 화합물 데이터를 이용하여 상기 잔차 연결 및 정규화되어 입력된 화합물 데이터를 학습시키는 단계; 상기 멀티헤드 인코더-디코더 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계; 피드 포워드 부계층을 통해 상기 잔차 연결 및 정규화되어 입력된 화합물 데이터를 학습시키는 단계; 및 상기 피드 포워드 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계를 포함할 수 있다.
또한, 상기 디코더 계층은 복수개의 연속된 디코더 계층들로 구성될 수 있다. 상기 디코더 계층에서 상기 입력 화합물 데이터를 학습시키는 단계는, 이전 디코더 계층에서 학습된 화합물 데이터를 다음 디코더 계층으로 입력하는 방식으로 첫번째 디코더 계층에서 상기 입력 화합물 데이터를 입력받고 마지막 디코더 계층에서 최종 학습된 화합물 데이터를 출력하는 단계를 포함할 수 있다. 각각의 디코더 계층의 멀티헤드 인코더-디코더 어텐션 부계층에는 상기 정보 확장 계층으로부터의 상기 인코더-출력 화합물 데이터가 입력될 수 있다.
또한, 상기 디코더 계층에서 학습된 화합물 데이터로부터 화합물 데이터를 재구성하는 단계는, N×d_model 차원의 상기 디코딩 계층에서 출력된 화합물 데이터를 입력값으로 하는 선형 변환을 통해 N×T 차원의 행렬을 획득하는 단계; 상기 획득된 행렬을 Softmax 함수에 입력하여 화합물 데이터 재구성 행렬을 획득하는 단계; 및 상기 재구성 행렬로부터 화합물 데이터를 재구성하는 단계를 포함할 수 있다.
또한, 상기 화합물 정보 추출 방법은, 재구성 손실, 길이 예측 손실, 물리-화학적 특성 예측 손실 및 KLD(Kullback-Leibler Divergence) 손실에 기초하여 상기 화합물 정보 추출 방법에 대한 손실함수를 계산하는 단계를 더 포함할 수 있다.
또한, 상기 화합물 정보 추출 방법은, 상기 재구성된 화합물 데이터, 상기 평균 벡터, 상기 예측된 화합물 물리-화학적 특성, 상기 예측된 화합물 시퀀스의 길이를 포함하는 추출된 화합물 정보를 출력 장치로 제공하는 단계를 더 포함할 수 있다.
본 개시 내용의 일 실시예에 따르면, 화합물 정보 추출을 위한 컴퓨팅 장치가 제시된다. 상기 컴퓨팅 장치는, 인코더 계층 및 디코딩 계층으로의 입력을 위해 설정된 차원으로 입력 화합물 데이터를 처리하도록 구성되는 데이터 처리부; 어텐션 방식으로 상기 입력 화합물 데이터를 학습시키도록 구성되는 인코더 계층부; 상기 학습된 화합물 데이터에 기초하여 레이턴트 차원을 가지는 평균 벡터 및 분산 벡터를 획득하도록 구성되는 정보 보틀넥 계층부; 재파라미터화를 통해 상기 평균 벡터 및 상기 분산 벡터에 따른 정규분포로부터 레이턴트 벡터를 추출하도록 구성되는 재파라미터화부; 상기 평균 벡터에 기초하여 화합물의 물리-화학적 특성을 예측하도록 구성되는 물리-화학적 특성 예측부; 상기 평균 벡터에 기초하여 화합물 시퀀스의 길이를 예측하도록 구성되는 시퀀스 길이 예측부; 상기 레이턴트 벡터를 상기 디코딩 계층으로의 입력을 위해 설정된 차원을 갖는 인코더-출력 화합물 데이터로 변환하도록 구성되는 정보 확장 계층부; 어텐션 방식으로 상기 인코더-출력 화합물 데이터를 이용하여 상기 입력 화합물 데이터를 학습시키도록 구성되는 디코더 계층부; 및 상기 디코더 계층에서 학습된 화합물 데이터로부터 화합물 데이터를 재구성하도록 구성되는 생성 계층부를 포함할 수 있다.
본 개시 내용의 일 실시예에 따르면, 화합물 정보 추출 방법을 실행하기 위한 컴퓨터-실행가능 명령들을 포함하는, 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램이 제시된다.
본 개시 내용에 따르면, 여러가지 목적의 화합물 예측 모델들에서 공통적으로 사용될 수 있는 화합물 정보들을 추출할 수 있는 화합물 정보 추출 모델을 구현할 수 있다.
또한, 본 개시 내용에 따르면, 각 목적별 인코더 설계를 개별적으로 하지 않고 본 개시 내용의 화합물 정보 추출 모델을 통해 일관되고 보편적인 물리-화학적 특성을 추출하여 제공함으로써 신약 개발 등의 목적을 위한 인공지능 모델을 시간 및 비용을 절약하여 빠르게 구축할 수 있다.
또한, 본 개시 내용에 따르면, 본 개시 내용의 화합물 정보 추출 모델을 통해 만들어진 케미컬 스페이스의 임의의 포인트를 선택하여 디코더를 통해 새로운 화합물을 생성할 수 있기 때문에 다양한 구조의 화합물이 필요한 신약 개발에 유용하게 사용될 수 있다.
도 1은 본 개시 내용의 일 실시예에 따른 화합물 정보 추출을 위한 시스템을 나타내는 예시적인 도면이다.
도 2는 본 개시 내용의 일 실시예에 따른 컴퓨팅 장치를 나타내는 예시적인 블록도이다.
도 3은 본 개시 내용의 일 실시예에 따른 컴퓨팅 장치에 의해 수행되는 화합물 정보 추출 모델을 나타내는 예시적인 도면이다.
도 4는 본 개시 내용의 일 실시예에 따른 화합물 정보 추출 모델에 의해 추출된 화합물에 대한 케미컬 스페이스를 나타내는 예시적인 도면이다.
도 5는 본 개시 내용의 일 실시예에 따른 화학물 정보 추출 방법을 나타내는 예시적인 순서도이다.
도 2는 본 개시 내용의 일 실시예에 따른 컴퓨팅 장치를 나타내는 예시적인 블록도이다.
도 3은 본 개시 내용의 일 실시예에 따른 컴퓨팅 장치에 의해 수행되는 화합물 정보 추출 모델을 나타내는 예시적인 도면이다.
도 4는 본 개시 내용의 일 실시예에 따른 화합물 정보 추출 모델에 의해 추출된 화합물에 대한 케미컬 스페이스를 나타내는 예시적인 도면이다.
도 5는 본 개시 내용의 일 실시예에 따른 화학물 정보 추출 방법을 나타내는 예시적인 순서도이다.
이하, 본 발명의 바람직한 실시예들을 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
본 발명의 다양한 양상들이 아래에서 설명된다. 여기에서 제시되는 발명들은 폭넓은 다양한 형태들로 구현될 수 있으며 여기에서 제시되는 임의의 특정한 구조, 기능 또는 이들 모두는 단지 예시적이라는 것을 이해하도록 한다. 여기에서 제시되는 발명들에 기반하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 여기에서 제시되는 하나의 양상이 임의의 다른 양상들과 독립적으로 구현될 수 있으며 둘 이상의 이러한 양상들이 다양한 방식들로 결합될 수 있다는 것을 이해할 것이다. 예를 들어, 여기에서 설명되는 임의의 수의 양상들을 이용하여 장치가 구현될 수 있거나 또는 방법이 실시될 수 있다. 또한, 여기에서 설명되는 하나 이상의 양상들에 더하여 또는 이들 양상들이 아닌 다른 구조, 기능 또는 구조 및 기능을 이용하여 이러한 장치가 구현될 수 있거나 또는 이러한 방법이 실시될 수 있다.
본 개시 내용은 딥러닝(Deep Learning)을 위한 트랜스포머(Transformer), VAE(Variational Auto Encoder) 등의 모델들에서 정의된 함수, 수식, 변수 등을 이용하여 설명될 수 있으며, 이에 한정되지 않고 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network) 등과 같은 다른 인공신경망 개념도 본 개시 내용을 이해하는데 참조될 수 있다.
도 1은 본 개시 내용의 일 실시예에 따른 화합물 정보 추출을 위한 시스템을 나타내는 예시적인 도면이다.
도 1에 도시된 바와 같이, 이러한 시스템은 화합물 데이터베이스(DB)(100), 컴퓨팅 장치(200) 및 출력 장치(300)를 포함하여 구성될 수 있다. 컴퓨팅 장치(200)는 화합물 DB(100)로부터 제공되는 화합물 데이터에 기초하여 본 개시 내용에 따른 화합물 정보 추출 모델을 실행시키도록 구성될 수 있다. 출력 장치(300)는 컴퓨팅 장치(200)의 실행 결과를 출력하거나 또는 이용하도록 구성될 수 있다.
화합물 DB(100)는 컴퓨팅 장치(200)에서 데이터 세트를 구성할 수 있도록 소스 화합물 데이터들을 제공할 수 있다. 일 구현예에서, 이러한 소스 화합물 데이터들은 ZINC15, PubChem, ChEMBL 등과 같은 오픈 소스 데이터들일 수 있다. 이러한 소스 화합물 데이터는 컴퓨터 시스템에서 처리가능한 형태로 제공될 수 있으며, 예시적으로 SMILES(Simplified Molecular-Input Line-Entry System), InChl(International Chemical Identifier), MACCSKeys 등과 같은 형태의 화합물 데이터일 수 있다. 본 명세서에서는 설명의 편의를 위해, SMILES 형태의 화합물 데이터를 기준으로 본 개시 내용에 따른 화합물 정보 추출 모델을 설명할 것이다.
컴퓨팅 장치(200)는 화합물 DB(100)로부터 제공되는 화합물 데이터 소스로부터 본 개시 내용의 화합물 정보 추출 모델에서 사용될 데이터 세트를 결정할 수 있다. 예시적으로 컴퓨터 장치(200)는 다음과 같은 방식으로 하드웨어 처리가 가능할 정도로 샘플 데이터의 양을 감소시키고 모델의 훈련 과정시 데이터 불균형 문제가 발생하지 않도록 샘플링함으로써 모델에 적용될 데이터 세트를 결정할 수 있다.
예를 들어, ZINC15에는 약 11억개, PubChem에는 약 1억개, ChEMBL에는 약 200만개의 소스 화합물 데이터가 있으며, 컴퓨팅 장치(200)는 중복 데이터를 필터링하고 화합물을 소정 개수의 물리-화학적 특징별로 라벨링 및 정규화함으로써 약 5억개의 화합물들을 결정할 수 있다. 다음으로, 컴퓨팅 장치(200)는 이들 화합물들을 두가지 물리-화학적 특성(예를 들어, 용해도(LogP: Partition Coefficient), 분자량(MW: Molecular Weight))에 따라 각각 8개의 구간으로 나누어 총 64개의 그룹으로 분류할 수 있다. 각각의 그룹은 상이한 개수의 화합물 데이터를 가질 수 있으며, 이들 개수 중 가장 작은 수가 n인 경우에 모든 그룹에 대하여 최소 n개에서 최대 3n개의 화합물들을 샘플링할 수 있다. 그 결과 컴퓨팅 장치(200)는 약 5억개의 화합물 데이터로부터 1/100 정도인 약 500만개의 화합물 데이터를 샘플링하여 모델에서 학습시키기 위한 데이터 세트로 결정할 수 있다. 그러나, 본 개시 내용은 이러한 샘플링 방식에 한정되지 않으며, 모델에 적용하기에 적합한 데이터 세트를 구축하기 위해 변형된 또는 추가적인 샘플링 방식이 적용될 수 있다.
구현예에 따라, 출력 장치(300)는 컴퓨팅 장치(200)의 처리 결과를 디스플레이하기 위한 디스플레이 장치일 수 있거나, 컴퓨팅 장치(200)의 처리 결과를 저장 및 관리하기 위한 데이터베이스 장치일 수 있거나, 또는 컴퓨팅 장치(200)에서 추출된 화합물 정보를 이용하기 위한 다른 인공지능 기반의 화합물 예측 모델을 실행하기 위한 다른 컴퓨팅 장치일 수 있다.
도 2는 본 개시 내용의 일 실시예에 따른 컴퓨팅 장치를 나타내는 예시적인 블록도이다.
도 2에 도시된 바와 같이, 컴퓨팅 장치(200)는 프로세서(210), 저장 매체(220), 메모리(230), 네트워크 인터페이스(240)를 포함할 수 있으며, 이들은 시스템 버스(250)를 통해 서로 연결될 수 있다.
저장 매체(220)에는 운영 시스템(222) 및 컴퓨터 프로그램(224)이 탑재될 수 있다. 저장 매체(220)는 컴퓨터 프로그램 및 관련 데이터들을 저장할 수 있는 하드디스크, SSD(Solid State Drive) 등과 같은 데이터 저장 장치일 수 있다. 운영 시스템(222)은 컴퓨팅 장치(200)를 동작시키기 위한 Windows, IOS, Linux 등과 같은 운영체재 소프트웨어일 수 있다. 컴퓨터 프로그램(224)은 본 개시 내용의 화합물 정보 추출 모델을 실행시키기 위한 컴퓨터-실행가능 명령들을 포함할 수 있다. 컴퓨터 프로그램(224)의 컴퓨터-실행가능 명령들은 프로세서(210)에 의해 실행될 때, 프로세서(210)로 하여금 본 개시 내용의 화합물 정보 추출 방법을 수행하게 할 수 있다. 프로세서(210)는 전체 컴퓨팅 장치(200)의 실행을 지원하기 위한 컴퓨팅 및 제어 능력들을 제공하도록 구성될 수 있다. 프로세서(210)는 CPU(Central Processing Unit), MPU(Microprocessor Unit), AP(Application Processor) 등과 같은 데이터 처리 장치일 수 있으며, 하나의 프로세서 또는 복수개의 프로세서들로 구성될 수 있다. 복수개의 프로세서들로 구성되는 경우, 프로세서들(210)은 병렬 처리 프로세서들로서 동작할 수 있다. 네트워크 인터페이스(240)는 외부 장치(예를 들어, 화합물 DB(100), 출력 장치(300) 또는 네트워크를 통해 연결가능한 유무선 통신 디바이스 등)와 연결되어 데이터를 통신할 수 있는 인터페이스를 제공할 수 있다.
도 3은 본 개시 내용의 일 실시예에 따른 컴퓨팅 장치에 의해 수행되는 화합물 정보 추출 모델을 나타내는 예시적인 도면이다.
도 3에 도시된 바와 같이, 본 개시 내용에 따른 화합물 정보 추출 모델은 데이터 처리부(310), 인코더 계층부(320), 정보 보틀넥 계층(Information Bottleneck Layer)부(330), 재파라미터화(Reparameterization)부(340), 물리-화학적 특성 예측부(350), 시퀀스 길이 예측부(360), 정보 확장 계층(Information Expansion Layer)부(370), 디코더 계층부(380), 생성 계층부(390)를 포함할 수 있다. 또한, 도 3은 화합물 정보 추출 모델을 통한 데이터 처리 과정에 대한 이해를 돕기 위해 ① 내지 ⑩의 번호를 표시하였으나 이는 예시적인 것으로 본 개시 내용의 화합물 정보 추출 모델은 표시된 번호에 따른 실행 순서로 한정되지 않는다. 예를 들어, 본 개시 내용의 화합물 정보 추출 모델은 5번, 6번, 7a번, 7b번 및 8번의 순서로 실행될 수 있거나 또는 5번, 6번, 8번, 7b번, 7c번의 순서로 실행될 수 있거나 또는 이와 다른 순서로 실행될 수 있다.
본 개시 내용의 화합물 정보 추출 모델로 입력되는 화합물 데이터는 SMILES 형태의 시퀀스 데이터일 수 있으며, 인코더 계층부(320) 및 디코더 계층부(380)에는 동일한 SMILES 데이터가 입력되지만 디코딩 계층부(380)에는 스타트 토큰(start token)과 같은 추가 토큰이 부가되어 입력될 수 있다.
데이터 처리부(310)는 인코더 계층 및 디코딩 계층으로의 입력을 위해 설정된 차원으로 입력 화합물 데이터를 처리하도록 구성될 수 있다. 이를 위해, 데이터 처리부(310)는 입력 화합물 데이터를 화합물 시퀀스를 구성하는 최소단위의 형태소인 토큰으로 분리하는 토큰화(tokenization)를 수행할 수 있다. 예를 들어, SMILES 형식의 입력 화합물 데이터가 NC(=O)c1nc(F)c[NH]c1=O인 경우에 이러한 SMILES 시퀀스는 토큰들 N,C,(,=,O,),c,1,n,c,(,F,),c,[nH],c,1,=,O로 분리될 수 있다. 토큰화된 입력 화합물 데이터(Xsmiles)는 N×T 차원의 행렬로 표현될 수 있다(즉, ). 여기서, N은 토큰화된 화합물의 토큰 개수이고, T는 토큰의 가지 수이다.
다음으로, 데이터 처리부(310)는 N×T 차원의 토큰화된 화합물 데이터(Xsmiles)를 선형 변환(linear transformation)(또는 선형 투영(Linear projection))을 통해 N×d_model 차원의 행렬로 임베딩하여 임베딩된 화합물 데이터()를 생성할 수 있다. 이러한 과정은 다음의 수식을 통해 표현될 수 있다:
및 는 훈련 과정에서 학습되는 훈련가능한 가중치(trainable weight)이다. 및 뿐만 아니라 후술할 내용에서 언급되는 다른 훈련가능한 가중치들은 모델 학습 결과에서 손실(loss)을 줄이는 방향으로 역 전파(Back Propagation) 알고리즘과 같은 방식을 통해 업데이트될 수 있다.
다음으로, 데이터 처리부(310)는 임베딩된 행렬()에 포지셔널 인코딩 값(PE)을 더함으로써 인코딩 계층 및 디코딩 계층에 입력가능하도록 처리된 입력 화합물 데이터(, )를 생성할 수 있다. 포지셔널 인코딩 값(PE)은 에 있는 각 토큰의 상대적 위치를 나타내는 값이다. 이러한 과정은 다음의 수식을 통해 표현될 수 있다:
여기서, pos는 해당 토큰의 인덱스 위치를 표시한다.
인코더 계층부(320)는 입력 화합물 데이터()를 어텐션 방식으로 학습시키도록 구성될 수 있다. 이를 위해, 인코더 계층부(320)는 멀티헤드 셀프 어텐션(Multi-Head Self Attention) 부계층부, 제 1 잔차 연결 및 정규화부(Add & Norm), 피드 포워드(Feed Forward) 부계층부 및 제 2 잔차 연결 및 정규화부를 포함할 수 있다.
멀티헤드 셀프 어텐션 부계층은 입력값 중 어떤 부분을 집중하여 학습하여야 하는지 모델 스스로 학습할 수 있도록 멀티헤드 셀프 어텐션 방식으로 입력된 화합물 데이터()를 학습시키고, 제 1 잔차 연결 및 정규화부는 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터() 및 출력 화합물 데이터()를 잔차 연결 및 정규화시킨 결과 데이터()를 출력할 수 있다. 이러한 과정은 다음의 수식으로 표현될 수 있다.
여기서, Q, K, V는 각각 어텐션의 Query, Key, Value를 의미하고, 이고, h는 헤드들의 개수이다. 이고, WG, WQ, WK, 및 WV는 훈련가능한 가중치이며, 어텐션 헤드(headi)마다 다르게 설정될 수 있다.
수학식 3의 Concat은 어텐션 헤드들을 연결(concatenate)하는 함수이다. 예를 들어, 어텐션 헤드(headi)는 N×dh의 차원을 가질 수 있으며, h개의 헤드들을 연결한 는 N×(dh×h)=N×d_model 차원을 가질 수 있다.
수학식 3의 Residual은 입력값 및 출력값을 더해주어 출력값과 입력갑의 연결점을 만들어주고 정규화시키는 잔차 연결 및 정규화를 나타내는 함수이며, 다음의 수식으로 표현될 수 있다:
피드 포워드 부계층부는 제 1 잔차 연결 및 정규화부로부터 입력되는 멀티-헤드 셀프 어텐션 학습된 화합물 데이터(, 아래에서는 설명의 편의를 위해 로 표시함)를 추가적인 정보를 획득할 수 있도록 피드 포워드 신경망을 통해 학습시키고, 제 2 잔차 연결 및 정규화부는 피드 포워드 부계층의 입력 화합물 데이터() 및 출력 화합물 데이터()를 잔차 연결 및 정규화시킨 결과 데이터()를 출력시킬 수 있다. 이러한 과정은 다음의 수식으로 표현될 수 있다.
수학식 5의 ReLU 함수는 실수 입력값 a에 대하여 ReLU(a)=max(0, a)값을 출력하는 함수이다.
구현예에 따라, 인코더 계층부(320)는 인코더 계층의 학습 성능을 강화시키기 위해 복수개(예를 들어, 4개)의 연속된 인코더 계층들을 포함할 수 있다. 이러한 구현예에서, 인코더 계층부(320)는 이전 인코더 계층에서 학습된 화합물 데이터()를 다음 인코더 계층으로 입력()하는 방식으로 동작할 수 있으며, 이는 다음의 수학식으로 표현될 수 있다:
이러한 경우에, 인코더 계층부(320)는 첫번째 인코더 계층에서 데이터 처리부(310)로부터 입력 화합물 데이터()를 입력받고 마지막 인코더 계층에서 최종 학습된 화합물 데이터를 정보 보틀넥 계층부(330)로 출력할 수 있다.
정보 보틀넥 계층부(330)는 인코더 계층부(320)로부터 학습되어 입력되는 화합물 데이터(, 아래에서의 설명의 편의를 위해 로 표시함)에 기초하여 레이턴트 차원을 가지는 평균 벡터(μ) 및 분산 벡터(σ)를 획득하도록 구성될 수 있다. 정보 보틀넥 계층부(330)는 N×d_model 차원을 갖는 인코딩 계층부(320)의 출력 데이터()로부터 1×dlatent 차원을 갖는 평균 벡터(μ) 및 분산 벡터(σ)를 획득할 수 있으며, dlatent는 레이턴트 차원을 나타낸다. 이러한 과정은 다음의 수식을 통해 표현될 수 있다:
여기서, 이다. 즉, 입력된 화합물 데이터()는 1×d_model 차원을 가지는 N개의 벡터로 분리되어 Avg 함수로 입력될 수 있다. , 이고, 및 는 훈련가능한 가중치이다. 전술한 바와 같이, 획득된 평균 벡터(μ) 및 분산 벡터(σ)는 , 인 차원을 갖는다.
재파라미터화부(340)는 재파라미터화를 통해 평균 벡터(μ) 및 분산 벡터(σ)에 따른 정규분포(N(μ,σ))로부터 1×dlatent 차원의 레이턴트 벡터(z)를 추출하도록 구성될 수 있다. 예시적으로, 재파라미터화부(340)는 재파라미터화 방식을 통해 평균이 0이고 표준편차가 1인 정규분포를 갖는 ε값을 N(μ,σ)에 더해줌으로써 레이턴트 벡터(z)를 샘플링할 수 있다. 이는 다음의 수학식으로 표현될 수 있다.
이러한 레이턴트 벡터(z)는 N×d_model 차원인 고차원의 화합물 데이터에 대한 의미있는 정보가 담긴 저차원(1×dlatent)의 히든 차원 공간인 레이턴스 스페이스(latent space)를 표현할 수 있다.
물리-화학적 특성 예측부(350)는 추출된 평균 벡터(μ)에 기초하여 화합물의 물리-화학적 특성을 예측하도록 구성될 수 있다. 예를 들어, 화합물의 물리-화학적 특성은 용해도(LogP: Partition Coefficient), 분자량(MW: Molecular Weight), 결합 친화도(Binding Affinity), 독성(Toxicity) 등을 포함할 수 있다. 물리-화학적 특성 예측부(350)는 레이턴트 벡터(z)가 화합물의 물리-화학적 특성을 내포할 수 있도록 물리-화학적 특성 예측 벡터(Yμ)를 획득할 수 있으며, 이는 다음의 수학식으로 표현될 수 있다:
수학식 9에 표현된 바와 같이, 물리-화학적 특성 예측부(350)는 평균 벡터(μ)를 입력값으로 하는 1×dzo 차원으로의 제 1 선형 변환 출력값을 ReLU 함수에 입력하여 제 1 출력 벡터()를 획득할 수 있으며, dzo은 제 1 선형 변환의 설정된 차원 크기이다. 물리-화학적 특성 예측부(350)는 제 1 출력 벡터를 입력값으로 하는 1×dz1 차원으로의 제 2 선형 변환 출력값을 ReLU 함수에 입력하여 제 2 출력 벡터()를 획득할 수 있으며, dz1은 제 2 선형 변환의 설정된 차원 크기이다. 물리-화학적 특성 예측부(350)는 제 2 출력 벡터를 입력값으로 하는 1×y 차원으로의 제 3 선형 변환을 통해 물리-화학적 특성 예측 벡터()를 획득할 수 있다.
시퀀스 길이 예측부(360)는 추출된 평균 벡터(μ)에 기초하여 화합물 시퀀스의 길이(즉, 예측될 화합물의 SMILES 시퀀스의 길이(N))를 예측하도록 구성될 수 있다. 예측된 화합물 시퀀스의 길이는 시퀀스 길이 예측 벡터(S)로서 획득될 수 있다. 이러한 과정은 다음의 수학식으로 표현될 수 있다:
수학식 10에 표현된 바와 같이, 시퀀스 길이 예측부(360)는 평균 벡터(μ)를 입력값으로 하는 1×dl0 차원으로의 제 1 선형 변환을 통해 제 1 출력 벡터()를 획득할 수 있으며, dl0은 제 1 선형 변환의 설정된 차원 크기이다. 시퀀스 길이 예측부(360)는 제 1 출력 벡터를 입력값으로 하는 1×L 차원으로의 제 2 선형 변환을 통해 제 2 출력 벡터()를 획득하고, 제 2 출력 벡터를 Softmax 함수에 입력하여 시퀀스 길이 예측 벡터()를 획득할 수 있다.
정보 확장 계층부(370)는 레이턴트 벡터(z)에 내재된 정보가 디코딩 계층에서의 학습에 이용될 수 있도록 레이턴트 벡터(z)를 디코딩 계층으로의 입력을 위해 설정된 차원을 갖는 인코더-출력 화합물 데이터()로 변환하도록 구성될 수 있다. 이를 위해, 정보 확장 계층부(370)는 확장부, 멀티헤드 셀프 어텐션 부계층부 및 잔차 연결 및 정규화부를 포함할 수 있다. 이러한 과정은 다음의 수학식으로 표현될 수 있다:
수학식 11에 표현된 바와 같이, 확장부는 1×dlatent 차원의 레이턴트 벡터(z)를 Expand 함수를 통해 N×d_model 차원의 행렬(Z)로 변환시킬 수 있다. Expand 함수는 레이턴트 벡터(z) N개를 Concat 함수에 의해 연결시킴으로써 N×dlatent 차원의 행렬을 생성하고 이를 와 내적시킴으로써 차원의 행렬(Z)를 생성할 수 있다. 멀티헤드 셀프 어텐션 부계층부는 멀티헤드 셀프 어텐션 방식으로 입력된 화합물 데이터(Z)를 학습시키고, 잔차 연결 및 정규화부는 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터(Z) 및 출력 화합물 데이터()를 잔차 연결 및 정규화시킨 인코더-출력 화합물 데이터()를 생성할 수 있다.
디코더 계층부(380)는 어텐션 방식으로 인코더-출력 화합물 데이터()를 이용하여 입력 화합물 데이터()를 학습시키도록 구성될 수 있다. 이를 위해, 디코더 계층부(380)는 마스킹 멀티헤드 셀프 어텐션(Masked Multi-Head Self Attention) 부계층부, 제 1 잔차 연결 및 정규화부, 멀티헤드 인코더-디코더 어텐션(Multi-Head Encoder-Decoder Attention) 부계층부, 제 2 잔차 연결 및 정규화부, 피드 포워드 부계층부 및 제 3 잔차 연결 및 정규화부를 포함할 수 있다.
마스킹 멀티헤드 셀프 어텐션 부계층부는 마스킹 행렬(M)이 적용된 멀티헤드 셀프 어텐션 방식으로 입력된 화합물 데이터()를 학습시키고, 제 1 잔차 연결 및 정규화부는 마스킹 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터() 및 출력 화합물 데이터()를 잔차 연결 및 정규화시킨 결과 데이터()를 출력할 수 있다. 여기서, 마스킹 행렬(M)은 N×N 차원의 주 대각선 항을 포함한 아래 항들이 모두 1값을 가지고 나머지 항들은 0값을 가지는 하삼각행렬일 수 있다. 마스킹 행렬(M)을 적용함으로써, 마스킹 멀티헤드 셀프 어텐션 부계층부는 화합물의 n번째 토큰을 예측할 때 인코더 측에서 받은 정보()와 이미 예측된 0번째부터 n-1번째까지의 토큰의 정보를 이용하게 되며, 이를 통해 현재 시점(즉, n번째)의 예측에서 현재 시점보다 미래에 있는 토큰 정보(즉, n+1번째, n+2번째....)를 참고하지 못하도록 학습을 수행할 수 있다. 이러한 과정은 다음의 수식으로 표현될 수 있다.
여기서, Q, K, V는 각각 어텐션의 Query, Key, Value를 의미하고, M은 마스킹 행렬이고, 이고, h는 헤드들의 개수이다. 이고, WG, WQ, WK, 및 WV는 훈련가능한 가중치이며, 어텐션 헤드(headi)마다 다르게 설정될 수 있다.
멀티헤드 인코더-디코더 부계층부는 멀티헤드 인코더-디코더 어텐션 방식으로 인코더-출력 화합물 데이터()를 이용하여 제 1 잔차 연결 및 정규화부로부터 입력되는 마스킹 멀티-헤드 셀프 어텐션 학습된 화합물 데이터(, 아래에서는 설명의 편의를 위해 로 표시함)를 학습시키고, 제 2 잔차 연결 및 정규화부는 멀티헤드 인코더-디코더 부계층부의 입력 화합물 데이터() 및 출력 화합물 데이터()를 잔차 연결 및 정규화시킨 결과 데이터()를 출력할 수 있다. 이러한 경우에, 어텐션 학습을 위해 Q는 디코더 측에서 학습된 입력 화합물 데이터()에 기초하여 결정될 수 있으며, K 및 V는 인코더-출력 화합물 데이터()에 기초하여 결정될 수 있다. 이러한 과정은 다음의 수식으로 표현될 수 있다:
여기서, Q, K, V는 각각 어텐션의 Query, Key, Value를 의미하고, 이고, h는 헤드들의 개수이다. 이고, WG, WQ, WK, 및 WV는 훈련가능한 가중치이며, 어텐션 헤드(headi)마다 다르게 설정될 수 있다.
피드 포워드 부계층부는 제 2 잔차 연결 및 정규화부로부터 입력되는 멀티-헤드 인코더-디코더 어텐션 학습된 화합물 데이터(, 아래에서는 설명의 편의를 위해 로 표시함)를 추가적인 정보를 획득할 수 있도록 피드 포워드 신경망을 통해 학습시키고, 제 3 잔차 연결 및 정규화부는 피드 포워드 부계층의 입력 화합물 데이터() 및 출력 화합물 데이터()를 잔차 연결 및 정규화시킨 결과 데이터()를 출력시킬 수 있다. 이러한 과정은 다음의 수식으로 표현될 수 있다.
구현예에 따라, 디코더 계층부(380)는 디코더 계층의 학습 성능을 강화시키기 위해 복수개(예를 들어, 3개)의 연속된 디코더 계층들을 포함할 수 있다. 이러한 구현예에서, 디코더 계층부(380)는 이전 디코더 계층에서 학습된 화합물 데이터를 다음 디코더 계층으로 입력하는 방식으로 동작할 수 있으며, 첫번째 디코더 계층에서 입력 화합물 데이터()를 입력받고 마지막 디코더 계층에서 최종 학습된 화합물 데이터를 생성 계층부(390)로 출력할 수 있다. 또한, 각각의 디코더 계층의 멀티헤드 인코더-디코더 어텐션 부계층에는 정보 확장 계층(370)으로부터의 인코더-출력 화합물 데이터()가 입력될 수 있다.
생성 계층부(390)는 디코더 계층(380)에서 학습된 화합물 데이터(, 아래에서의 설명의 편의를 위해 로 표시함)로부터 화합물 데이터를 재구성하도록 구성될 수 있다. 이러한 과정은 다음의 수학식으로 표현될 수 있다:
수학식 15에 표현된 바와 같이, 생성 계층부(390)는 N×d_model 차원의 디코딩 계층(380)에서 출력된 화합물 데이터()를 입력값으로 하는 선형 변환을 통해 N×T 차원의 행렬을 획득하고, 획득된 행렬을 Softmax 함수에 입력하여 화합물 데이터 재구성 행렬()을 획득할 수 있다. 생성 계층부(390)는 화합물 데이터 재구성 행렬로부터 화합물 데이터를 재구성할 수 있다. 예를 들어, 생성 계층부(390)는 화합물 데이터 재구성 행렬()로부터 N×T 차원의 토큰화된 SMILES 데이터를 확률적으로 예측할 수 있으며, 예측된 토큰화된 SMILES 데이터를 토큰화-해제(de-tokenization)함으로써 SMILES 형식의 화합물 데이터를 재구성할 수 있다.
일 구현예에서, 컴퓨팅 장치(200)는 도 3과 관련하여 설명된 본 개시 내용의 화합물 정보 추출 모델을 통해 산출된 정보를 특정 목적의 인공지능 모델에서 이용할 수 있도록 출력 장치(300)로 전달하도록 구성되는 추출 정보 제공부(미도시)를 포함할 수 있다. 이러한 산출된 정보는 디코더 계층을 거쳐 재구성된 화합물 데이터(예를 들어, 재구성된 화합물 SMILES), 획득된 특성 벡터(μ), 예측된 화합물 물리-화학적 특성(Yμ), 재구성된 화합물 시퀀스의 길이(S)(예를 들어, 재구성된 화합물 SMILES의 길이)를 포함할 수 있다.
일 구현예에서, 컴퓨팅 장치(200)는 본 개시 내용의 화합물 정보 추출 모델의 성능을 검증하기 위해 아래의 수학식과 같은 손실함수(Loss)를 정의하도록 구성되는 성능 평가부(미도시)를 포함할 수 있다.
수학식 16의 재구성 손실(ReconLoss)은 크로스-엔트로피 손실 함수를 사용하여 아래의 수학식과 같이 표현될 수 있다.
p는 N×T 차원의 행렬로 실제 출력 값(True label)의 토큰의 인덱스에서는 1, 나머지 인덱스에서는 0을 가진다. 예를 들어, 토큰의 인덱스가 0부터 T-1까지이고, 9번째 실제 출력값이 토큰 "[nH]"이고 해당 토큰의 인덱스가 3인 경우에, p9는 [0,0,0,1,0,....,0]이 될 수 있다. 는 생성 계층부(390)를 통해 출력된 재구성 예측값이고 0에서 1 사이의 값을 가질 수 있다. N은 토큰화된 화합물의 토큰 개수(즉, 화합물 시퀀스의 길이)이고, T는 토큰의 가지 수이다.
수학식 16의 시퀀스 길이 예측 손실(LengthPredictionLoss)은 크로스-엔트로피 손실 함수를 사용하여 아래의 수학식과 같이 표현될 수 있다.
l은 1×L 차원의 벡터로 실제 출력 값(True label)의 길이에 해당하는 인덱스에서는 1, 나머지 인덱스에서는 0을 가진다. 예를 들어, 실제 출력값의 길이가 35인 경우에 l35=1이고 li(i≠35)=0이 될 수 있다. 는 시퀀스 길이 예측부(360)를 통해 출력된 예측값이고 0에서 1 사이의 값을 가질 수 있다. L은 설정된 화합물 시퀀스의 최대 길이이다.
수학식 16의 물리-화학적 특성 예측 손실(PropertyPredictionLoss)은 다음의 수학식과 같이 평균제곱오차(MSE)로 표현될 수 있다.
수학식 16의 KLD(Kullback-Leibler Divergence) 손실(KLDLoss)은 아래의 수학식과 같이 표현될 수 있다.
여기서, μ 및 σ는 정보 보틀넥 계층부(330)에서 획득된 평균 벡터(μ) 및 분산 벡터(σ)이다. KLD 손실은 본 개시 내용의 화합물 정보 추출 모델의 규칙화(regularization) 역할을 수행할 수 있으며, 본 모델이 예측한 화합물의 특성 벡터(즉, 평균 벡터) μ가 발산하지 않고 정돈된 크기를 가지게 할 수 있다. 이는 본 모델이 추출한 화합물의 특성이 가우시안 분포를 따르게 함으로써 정돈된 분포를 가지게 할 수 있다.
컴퓨팅 장치(200)는 수학식 16에 따라 정의된 손실함수를 계산하고 계산된 손실이 작을수록 화합물 정보 추출 모델의 성능이 좋은 것으로 판단할 수 있다. 또한, 컴퓨팅 장치(200)는 손실을 감소시키는 방향으로(즉, 모델 성능을 향상시키는 방향으로) 역 전파 알고리즘과 같은 업데이트 방식을 통해 모델에 적용되는 훈련가능한 가중치들을 조정할 수 있다.
일 구현예에서, 컴퓨팅 장치(200)의 성능 평가부는 재구성 정확도, 물리-화학적 특성 예측 정확도 및 추출된 특성 벡터 μ의 분포를 통해 화합물 정보 추출 모델의 정보 추출 성능을 평가할 수 있다.
본 개시 내용의 화합물 정보 추출 모델에 대하여 독립된 검증 데이터를 이용하여 재구성 정확도를 평가시 재구성 손실이 4.32*10- 4 이라는 충분히 작은 값을 보여주었다. 본 개시 내용의 화합물 정보 추출 모델에 대하여 독립된 검증 데이터를 이용하여 물리-화학적 특성 예측 정확도를 평가시 물리-화학적 특성 예측 손실인 평균제곱오차가 2.12*10-3 이라는 충분히 작은 값을 보여주었다.
도 4는 본 개시 내용의 일 실시예에 따른 화합물 정보 추출 모델에 의해 추출된 화합물에 대한 케미컬 스페이스(Chemical Space)를 나타내는 예시적인 도면이다.
케미컬 스페이스는 tSNE(t-Stochastic Neighbor Embedding)와 같은 비선형 차원축소기법을 이용하여 본 모델에서 추출된 특성 벡터(μ)의 분포를 보여줄 수 있다. 도 4의 케미컬 스페이스는 본 모델에서 추출된 특성 벡터(μ)를 tSNE 차원 축소를 통해 각각 X축 및 Y축으로 표현되는 2개의 주성분(principle component)으로 투사하여 획득된 것이다. 차원 축소된 특성 벡터(μ)가 케미컬 스페이스에서 원형에 가깝게 균일하게 분포되어 있을수록 양호한 케미컬 스페이스를 구축했다고 평가할 수 있으며, 도 4의 케미컬 스페이스는 원형에 가까운 양호한 분포를 보여주었다.
이를 통해, 본 개시 내용의 화합물 정보 추출 모델은 평가 결과 충분히 양호한 재구성 정확도, 물리-화학적 예측 정확도 및 케미컬 스페이스 분포를 보여주었으며, 이를 통해 충분히 양호한 화합물 정보 추출 성능을 가짐을 검증하였다.
도 5는 본 개시 내용의 일 실시예에 따른 화학물 정보 추출 방법을 나타내는 예시적인 순서도이다.
도 5에 도시된 바와 같이, 컴퓨팅 장치(200)는 인코더 계층 및 디코딩 계층에 입력가능한 형태로 입력 화합물 데이터를 처리할 수 있다(510). 컴퓨팅 장치(200)는 인코더 계층에서 어텐션 방식으로 입력 화합물 데이터를 학습시킬 수 있다(520). 컴퓨팅 장치(200)는 정보 보틀넥 계층에서 레이턴트 차원을 갖는 평균 벡터 및 분산 벡터를 획득할 수 있다(530). 컴퓨팅 장치(200)는 재파라미터화를 통해 평균 벡터 및 분산 벡터로부터 레이턴트 벡터를 추출할 수 있다(540). 컴퓨팅 장치(200)는 획득된 평균 벡터에 기초하여 화합물의 물리-화학적 특성을 예측할 수 있다(550). 컴퓨팅 장치(200)는 획득된 평균 벡터에 기초하여 화합물 시퀀스의 길이를 예측할 수 있다(560). 컴퓨팅 장치(200)는 정보 확장 계층에서 레이턴트 벡터를 디코딩 계층으로 입력되는 인코더-출력 화합물 데이터로 변환할 수 있다(570). 컴퓨팅 장치(200)는 디코더 계층에서 어텐션 방식으로 인코더-출력 화합물 데이터를 이용하여 입력 화합물 데이터를 학습시킬 수 있다(580). 컴퓨팅 장치(200)는 디코딩 계층에서 학습된 화합물 데이터로부터 화합물 데이터를 재구성할 수 있다(590).
임의의 제시된 프로세스들에 있는 단계들의 임의의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 발명의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 예시적인 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.
본 명세서 사용되는 용어 "컴포넌트", "유닛(또는 부)", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭할 수 있다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정, 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있고, 일 컴포넌트는 하나의 컴퓨터 내에 로컬화될 수 있고, 또는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다.
제시된 실시예들에 대한 설명은 임의의 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.
100: 화합물 DB
200: 컴퓨팅 장치
210: 프로세서
220: 저장 매체
222: 운영 시스템
224: 컴퓨터 프로그램
230: 메모리
240: 네트워크 인터페이스
250: 시스템 버스
300: 출력 장치
310: 데이터 처리부
320: 인코더 계층부
330: 정보 보틀넥 계층부
340: 재파라미터화부
350: 물리-화학적 특성 예측부
360: 시퀀스 길이 예측부
370: 정보 확장 계층부
380: 디코더 계층부
390: 생성 계층부
200: 컴퓨팅 장치
210: 프로세서
220: 저장 매체
222: 운영 시스템
224: 컴퓨터 프로그램
230: 메모리
240: 네트워크 인터페이스
250: 시스템 버스
300: 출력 장치
310: 데이터 처리부
320: 인코더 계층부
330: 정보 보틀넥 계층부
340: 재파라미터화부
350: 물리-화학적 특성 예측부
360: 시퀀스 길이 예측부
370: 정보 확장 계층부
380: 디코더 계층부
390: 생성 계층부
Claims (25)
- 컴퓨팅 장치에 의해 수행가능한 화합물 정보 추출 방법으로서,
인코더 계층 및 디코딩 계층으로의 입력을 위해 설정된 차원으로 입력 화합물 데이터를 처리하는 단계;
상기 인코더 계층에서 어텐션(Attention) 방식으로 상기 입력 화합물 데이터를 학습시키는 단계;
정보 보틀넥 계층에서 상기 학습된 화합물 데이터에 기초하여 레이턴트(latent) 차원을 가지는 평균 벡터 및 분산 벡터를 획득하는 단계;
재파라미터화(Reparameterization)를 통해 상기 평균 벡터 및 상기 분산 벡터에 따른 정규분포로부터 레이턴트 벡터를 추출하는 단계;
화합물 특성 예측 계층에서 상기 평균 벡터에 기초하여 화합물의 물리-화학적 특성을 예측하는 단계;
길이 예측 계층에서 상기 평균 벡터에 기초하여 화합물 시퀀스의 길이를 예측하는 단계;
정보 확장 계층에서 상기 레이턴트 벡터를 상기 디코딩 계층으로의 입력을 위해 설정된 차원을 갖는 인코더-출력 화합물 데이터로 변환하는 단계;
상기 디코더 계층에서 어텐션 방식으로 상기 인코더-출력 화합물 데이터를 이용하여 상기 입력 화합물 데이터를 학습시키는 단계; 및
생성 계층에서 상기 디코더 계층에서 학습된 화합물 데이터로부터 화합물 데이터를 재구성하는 단계를 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 입력 화합물 데이터를 처리하는 단계는,
상기 입력 화합물 데이터를 화합물 시퀀스를 구성하는 최소단위로 토큰화(tokenization)하는 단계;
N×T 차원의 토큰화된 화합물 데이터를 N×d_model 차원의 행렬로 임베딩하는 단계 - N은 화합물의 토큰 개수이고, T는 토큰의 가지 수이고, d_model은 상기 인코딩 계층 및 디코딩 계층의 설정된 차원임 -;
임베딩된 행렬에 포지셔널 인코딩 값을 더하는 단계를 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 인코더 계층에서 상기 입력 화합물 데이터를 학습시키는 단계는,
멀티헤드 셀프 어텐션(Multi-Head Self Attention) 부계층을 통해 상기 인코더 계층에 입력된 화합물 데이터를 학습시키는 단계;
상기 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계;
상기 잔차 연결 및 정규화된 화합물 데이터를 입력받아 피드 포워드(Feed Forward) 부계층을 통해 학습시키는 단계; 및
상기 피드 포워드 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계를 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 인코더 계층은 복수개의 연속된 인코더 계층들로 구성되며,
상기 인코더 계층에서 상기 입력 화합물 데이터를 학습시키는 단계는,
이전 인코더 계층에서 학습된 화합물 데이터를 다음 인코더 계층으로 입력하는 방식으로 첫번째 인코더 계층에서 상기 입력 화합물 데이터를 입력받고 마지막 인코더 계층에서 최종 학습된 화합물 데이터를 출력하는 단계를 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 화합물 특성 예측 계층에서 상기 평균 벡터에 기초하여 화합물의 물리-화학적 특성을 예측하는 단계는,
상기 평균 벡터를 입력값으로 하는 1×dzo 차원으로의 제 1 선형 변환 출력값을 ReLU 함수에 입력하여 제 1 출력 벡터를 획득하는 단계 - dzo은 상기 제 1 선형 변환의 설정된 차원 크기임 -;
상기 제 1 출력 벡터를 입력값으로 하는 1×dz1 차원으로의 제 2 선형 변환 출력값을 ReLU 함수에 입력하여 제 2 출력 벡터를 획득하는 단계 - dz1은 상기 제 2 선형 변환의 설정된 차원 크기임 -; 및
상기 제 2 출력 벡터를 입력값으로 하는 1×y 차원으로의 제 3 선형 변환을 통해 물리-화학적 특성 예측 벡터(Yμ)를 획득하는 단계 - y는 물리-화학적 특성의 개수임 - 를 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 길이 예측 계층에서 상기 평균 벡터에 기초하여 화합물 시퀀스의 길이를 예측하는 단계는,
상기 평균 벡터를 입력값으로 하는 1×dl0 차원으로의 제 1 선형 변환을 통해 제 1 출력 벡터를 획득하는 단계 - dl0은 상기 제 1 선형 변환의 설정된 차원 크기임 -;
상기 제 1 출력 벡터를 입력값으로 하는 1×L 차원으로의 제 2 선형 변환을 통해 제 2 출력 벡터를 획득하는 단계 - L은 설정된 화합물 시퀀스의 최대 길이임 -; 및
상기 제 2 출력 벡터를 Softmax 함수에 입력하여 시퀀스 길이 예측 벡터(S)를 획득하는 단계를 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 정보 확장 계층에서 상기 레이턴트 벡터를 상기 인코더-출력 화합물 데이터로 변환하는 단계는,
1×dlatent 차원의 상기 레이턴트 벡터를 Expand 함수를 통해 N×d_model 차원의 행렬로 변환시키는 단계 ― dlatent는 레이턴트 차원임 ―;
멀티헤드 셀프 어텐션 부계층을 통해 상기 변환된 행렬로 표현된 화합물 데이터를 학습시키는 단계; 및
상기 멀티헤드 셀프 어텐션 계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화하여 상기 인코더-출력 화합물 데이터를 생성하는 단계를 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 디코더 계층에서 상기 인코더-출력 화합물 데이터를 이용하여 상기 입력 화합물 데이터를 학습시키는 단계는,
마스킹 행렬이 적용된 멀티헤드 셀프 어텐션 부계층을 통해 상기 디코더 계층에 입력된 상기 입력 화합물 데이터를 학습시키는 단계;
상기 마스킹 행렬이 적용된 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계;
멀티헤드 인코더-디코더 어텐션 부계층을 통해 상기 인코더-출력 화합물 데이터를 이용하여 상기 잔차 연결 및 정규화되어 입력된 화합물 데이터를 학습시키는 단계;
상기 멀티헤드 인코더-디코더 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계;
피드 포워드 부계층을 통해 상기 잔차 연결 및 정규화되어 입력된 화합물 데이터를 학습시키는 단계; 및
상기 피드 포워드 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키는 단계를 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 디코더 계층은 복수개의 연속된 디코더 계층들로 구성되며,
상기 디코더 계층에서 상기 입력 화합물 데이터를 학습시키는 단계는,
이전 디코더 계층에서 학습된 화합물 데이터를 다음 디코더 계층으로 입력하는 방식으로 첫번째 디코더 계층에서 상기 입력 화합물 데이터를 입력받고 마지막 디코더 계층에서 최종 학습된 화합물 데이터를 출력하는 단계를 포함하며,
각각의 디코더 계층의 멀티헤드 인코더-디코더 어텐션 부계층에는 상기 정보 확장 계층으로부터의 상기 인코더-출력 화합물 데이터가 입력되는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 디코더 계층에서 학습된 화합물 데이터로부터 화합물 데이터를 재구성하는 단계는,
N×d_model 차원의 상기 디코딩 계층에서 출력된 화합물 데이터를 입력값으로 하는 선형 변환을 통해 N×T 차원의 행렬을 획득하는 단계;
상기 획득된 행렬을 Softmax 함수에 입력하여 화합물 데이터 재구성 행렬을 획득하는 단계; 및
상기 재구성 행렬로부터 화합물 데이터를 재구성하는 단계를 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
재구성 손실, 길이 예측 손실, 물리-화학적 특성 예측 손실 및 KLD(Kullback-Leibler Divergence) 손실에 기초하여 상기 화합물 정보 추출 방법에 대한 손실함수를 계산하는 단계를 더 포함하는,
화합물 정보 추출 방법. - 제 1 항에 있어서,
상기 재구성된 화합물 데이터, 상기 평균 벡터, 상기 예측된 화합물 물리-화학적 특성, 상기 예측된 화합물 시퀀스의 길이를 포함하는 추출된 화합물 정보를 출력 장치로 제공하는 단계를 더 포함하는,
화합물 정보 추출 방법. - 화합물 정보 추출을 위한 컴퓨팅 장치로서,
인코더 계층 및 디코딩 계층으로의 입력을 위해 설정된 차원으로 입력 화합물 데이터를 처리하도록 구성되는 데이터 처리부;
어텐션 방식으로 상기 입력 화합물 데이터를 학습시키도록 구성되는 인코더 계층부;
상기 학습된 화합물 데이터에 기초하여 레이턴트 차원을 가지는 평균 벡터 및 분산 벡터를 획득하도록 구성되는 정보 보틀넥 계층부;
재파라미터화를 통해 상기 평균 벡터 및 상기 분산 벡터에 따른 정규분포로부터 레이턴트 벡터를 추출하도록 구성되는 재파라미터화부;
상기 평균 벡터에 기초하여 화합물의 물리-화학적 특성을 예측하도록 구성되는 물리-화학적 특성 예측부;
상기 평균 벡터에 기초하여 화합물 시퀀스의 길이를 예측하도록 구성되는 시퀀스 길이 예측부;
상기 레이턴트 벡터를 상기 디코딩 계층으로의 입력을 위해 설정된 차원을 갖는 인코더-출력 화합물 데이터로 변환하도록 구성되는 정보 확장 계층부;
어텐션 방식으로 상기 인코더-출력 화합물 데이터를 이용하여 상기 입력 화합물 데이터를 학습시키도록 구성되는 디코더 계층부; 및
상기 디코더 계층에서 학습된 화합물 데이터로부터 화합물 데이터를 재구성하도록 구성되는 생성 계층부를 포함하는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 데이터 처리부는,
상기 입력 화합물 데이터를 화합물 시퀀스를 구성하는 최소단위로 토큰화하고, N×T 차원의 토큰화된 화합물 데이터를 N×d_model 차원의 행렬로 임베딩하고 - N은 화합물의 토큰 개수이고, T는 토큰의 가지 수이고, d_model은 상기 인코딩 계층 및 디코딩 계층의 설정된 차원임 -, 임베딩된 행렬에 포지셔널 인코딩 값을 더함으로써 상기 인코더 계층 및 상기 디코더 계층에 입력되도록 처리된 입력 화합물 데이터를 생성하도록 구성되는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 인코더 계층부는,
상기 인코더 계층에 입력된 화합물 데이터를 멀티헤드 셀프 어텐션 방식으로 학습시키도록 구성되는 멀티헤드 셀프 어텐션 부계층부;
상기 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키도록 구성되는 제 1 잔차 연결 및 정규화부;
상기 제 1 잔차 연결 및 정규화부로부터 입력된 화합물 데이터를 피드 포워드 방식으로 학습시키도록 구성되는 피드 포워드 부계층부; 및
상기 피드 포워드 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키도록 구성되는 제 2 잔차 연결 및 정규화부를 포함하는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 인코더 계층부는 복수개의 연속된 인코더 계층들을 포함하며,
이전 인코더 계층에서 학습된 화합물 데이터를 다음 인코더 계층으로 입력하는 방식으로 상기 인코더 계층부는 첫번째 인코더 계층에서 상기 입력 화합물 데이터를 입력받고 마지막 인코더 계층에서 최종 학습된 화합물 데이터를 출력하는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 물리-화학적 특성 예측부는,
상기 평균 벡터를 입력값으로 하는 1×dzo 차원으로의 제 1 선형 변환 출력값을 ReLU 함수에 입력하여 제 1 출력 벡터를 획득하고, 상기 제 1 출력 벡터를 입력값으로 하는 1×dz1 차원으로의 제 2 선형 변환 출력값을 ReLU 함수에 입력하여 제 2 출력 벡터를 획득하고, 상기 제 2 출력 벡터를 입력값으로 하는 1×y 차원으로의 제 3 선형 변환을 통해 물리-화학적 특성 예측 벡터(Yμ)를 획득하도록 구성되며,
dzo은 상기 제 1 선형 변환의 설정된 차원 크기이고, dz1은 상기 제 2 선형 변환의 설정된 차원 크기이고, y는 물리-화학적 특성의 개수인,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 시퀀스 길이 예측부는,
상기 평균 벡터를 입력값으로 하는 1×dl0 차원으로의 제 1 선형 변환을 통해 제 1 출력 벡터를 획득하고, 상기 제 1 출력 벡터를 입력값으로 하는 1×L 차원으로의 제 2 선형 변환을 통해 제 2 출력 벡터를 획득하고, 상기 제 2 출력 벡터를 Softmax 함수에 입력하여 시퀀스 길이 예측 벡터(S)를 획득하도록 구성되며,
dl0은 상기 제 1 선형 변환의 설정된 차원 크기이고, L은 설정된 화합물 시퀀스의 최대 길이인,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 정보 확장 계층부는,
1×dlatent 차원의 상기 레이턴트 벡터를 Expand 함수를 통해 N×d_model 차원의 행렬로 변환시키도록 구성되는 확장부 ― dlatent는 레이턴트 차원임 ―;
상기 변환된 행렬로 표현된 화합물 데이터를 멀티헤드 셀프 어텐션 방식으로 학습시키도록 구성되는 멀티헤드 셀프 어텐션 부계층부; 및
상기 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화하여 상기 인코더-출력 화합물 데이터를 생성하도록 구성되는 잔차 연결 및 정규화부를 포함하는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 디코더 계층부는,
마스킹 행렬이 적용된 멀티헤드 셀프 어텐션 방식으로 상기 디코더 계층에 입력된 상기 입력 화합물 데이터를 학습시키도록 구성되는 마스킹 멀티헤드 셀프 어텐션 부계층부;
상기 마스킹 멀티헤드 셀프 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키도록 구성되는 제 1 잔차 연결 및 정규화부;
멀티헤드 인코더-디코더 어텐션 방식으로 상기 인코더-출력 화합물 데이터를 이용하여 상기 제 1 잔차 연결 및 정규화부로부터 입력된 화합물 데이터를 학습시키도록 구성되는 멀티헤드 인코더-디코더 어텐션 부계층부;
상기 멀티헤드 인코더-디코더 어텐션 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키도록 구성되는 제 2 잔차 연결 및 정규화부;
상기 제 2 잔차 연결 및 정규화부로부터 입력된 화합물 데이터를 피드 포워드 방식으로 학습시키도록 구성되는 피드 포워드 부계층부; 및
상기 피드 포워드 부계층의 입력 화합물 데이터 및 출력 화합물 데이터를 잔차 연결 및 정규화시키도록 구성되는 제 3 잔차 연결 및 정규화부를 포함하는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 디코더 계층부는 복수개의 연속된 디코더 계층들을 포함하며,
이전 디코더 계층에서 학습된 화합물 데이터를 다음 디코더 계층으로 입력하는 방식으로 상기 디코더 계층부는 첫번째 디코더 계층에서 상기 입력 화합물 데이터를 입력받고 마지막 디코더 계층에서 최종 학습된 화합물 데이터를 출력하며,
각각의 디코더 계층의 멀티헤드 인코더-디코더 어텐션 부계층에는 상기 정보 확장 계층으로부터의 상기 인코더-출력 화합물 데이터가 입력되는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 생성 계층부는,
N×d_model 차원의 상기 디코딩 계층에서 출력된 화합물 데이터를 입력값으로 하는 선형 변환을 통해 N×T 차원의 행렬을 획득하고, 상기 획득된 행렬을 Softmax 함수에 입력하여 화합물 데이터 재구성 행렬을 획득하고, 상기 재구성 행렬로부터 화합물 데이터를 재구성하도록 구성되는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
재구성 손실, 길이 예측 손실, 물리-화학적 특성 예측 손실 및 KLD 손실에 기초하여 상기 컴퓨팅 장치에 의한 화합물 정보 추출 모델에 대한 손실함수를 계산하도록 구성되는 성능 평가부를 더 포함하는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제 13 항에 있어서,
상기 재구성된 화합물 데이터, 상기 평균 벡터, 상기 예측된 화합물 물리-화학적 특성, 상기 예측된 화합물 시퀀스의 길이를 포함하는 추출된 화합물 정보를 출력 장치로 제공하도록 구성되는 추출 정보 제공부를 더 포함하는,
화합물 정보 추출을 위한 컴퓨팅 장치. - 제1항 내지 제12항 중 어느 한 항에 따른 방법을 실행하기 위한 컴퓨터-실행가능 명령들을 포함하는, 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210104113A KR20230022005A (ko) | 2021-08-06 | 2021-08-06 | 화합물 정보 추출을 위한 장치 및 방법 |
PCT/KR2022/011269 WO2023014007A1 (ko) | 2021-08-06 | 2022-08-01 | 화합물 정보 추출을 위한 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210104113A KR20230022005A (ko) | 2021-08-06 | 2021-08-06 | 화합물 정보 추출을 위한 장치 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230022005A true KR20230022005A (ko) | 2023-02-14 |
Family
ID=85154549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210104113A KR20230022005A (ko) | 2021-08-06 | 2021-08-06 | 화합물 정보 추출을 위한 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20230022005A (ko) |
WO (1) | WO2023014007A1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116920739B (zh) * | 2023-03-02 | 2024-06-14 | 福建省龙德新能源有限公司 | 用于六氟磷酸锂制备的液体循环雾化合成控制系统及方法 |
CN116625688A (zh) * | 2023-05-24 | 2023-08-22 | 石家庄铁道大学 | 基于多层降噪和自编码器的滚动轴承健康监测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102592677B1 (ko) * | 2017-05-23 | 2023-10-23 | 구글 엘엘씨 | 어텐션-기반의 시퀀스 변환 신경망 |
-
2021
- 2021-08-06 KR KR1020210104113A patent/KR20230022005A/ko active IP Right Grant
-
2022
- 2022-08-01 WO PCT/KR2022/011269 patent/WO2023014007A1/ko unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023014007A1 (ko) | 2023-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110597991B (zh) | 文本分类方法、装置、计算机设备及存储介质 | |
CN112084331B (zh) | 文本处理、模型训练方法、装置、计算机设备和存储介质 | |
CN110852116B (zh) | 非自回归神经机器翻译方法、装置、计算机设备和介质 | |
CN111460807B (zh) | 序列标注方法、装置、计算机设备和存储介质 | |
CN108563782B (zh) | 商品信息格式处理方法、装置、计算机设备和存储介质 | |
BR112019014822B1 (pt) | Sistema, meio não transitório de armazenamento em computador e método de redes neurais de transdução de sequências baseadas em atenção | |
CN107871014A (zh) | 一种基于深度融合哈希的大数据跨模态检索方法及系统 | |
CN112131888B (zh) | 分析语义情感的方法、装置、设备及存储介质 | |
CN109299479A (zh) | 通过门控机制将翻译记忆融入神经机器翻译的方法 | |
KR20230022005A (ko) | 화합물 정보 추출을 위한 장치 및 방법 | |
CN112765370B (zh) | 知识图谱的实体对齐方法、装置、计算机设备和存储介质 | |
JP2019075108A (ja) | 情報処理方法及び装置、並びに情報検出方法及び装置 | |
CN111027681B (zh) | 时序数据处理模型训练方法、数据处理方法、装置及存储介质 | |
Wiebe et al. | Quantum language processing | |
CN113412492A (zh) | 用于量子玻尔兹曼机的监督训练的量子算法 | |
CN114281931A (zh) | 文本匹配方法、装置、设备、介质及计算机程序产品 | |
CN112380867A (zh) | 文本处理、知识库的构建方法、装置和存储介质 | |
CN118153016B (zh) | 基于人工智能的鉴权系统 | |
EP4064038B1 (en) | Automated generation and integration of an optimized regular expression | |
CN115588471A (zh) | 持续学习下自校正单步逆合成方法、终端、服务器及系统 | |
CN112036439B (zh) | 依存关系分类方法及相关设备 | |
CN116842153A (zh) | 一种基于反馈特征学习的多模态情感分析方法、系统 | |
CN116665878A (zh) | 改善累计误差的智能问诊方法、装置、设备及存储介质 | |
CN115544248A (zh) | 一种文本聚类模型的训练方法、训练装置及分类方法 | |
Fu et al. | SPEAR: self-supervised post-training enhancer for molecule optimization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right |