세상에 필요한 약을 더 빨리 만들어 내는 AI 기술이
있다고?
AI

화합물에도 지문이 있다. 화합물의 Fingerprint란?

화합물의 Fingerprint에 대해 알려드립니다. Fingerprint는 화학정보학 및 계산화학 분야에서 분자 유사성을 분석하고 가상 탐색, 의약품 발굴과 같은 작업에 사용됩니다. 화합물에서 Fingerprint가 중요한 이유와 Fingerprint의 많은 종류 중 2가지인 Morgan Fingerprint와 MACCS Fingerprint에 대해 다룹니다.
현규,이현규
이현규 AI 연구원
2024.03.207min read
화합물의 Fingerprint 란.png

Fingerprint란?

화합물의 화학 구조 및 특성을 나타내는 방법은 다양하게 있습니다. 이번 글에서는 그 많은 종류 가운데에서도 화합물의 Fingerprint를 다뤄볼 예정입니다. Fingerprint는 화학정보학 및 계산화학 분야에서 분자 유사성 분석, 가상 탐색, 의약품 발굴과 같은 작업에 사용되고 있습니다. Fingerprint는 분자의 원자, 결합 그리고 다양한 구조적 특성에 대한 정보를 암호화하여 분자 모델링 및 의약품 설계 분야에서 효율적인 비교와 예측을 가능하게 합니다. 이러한 Fingerprint에 딥러닝 방식을 활용하면서 화합물 간 구조적 유사성을 보다 더욱 빠르고 효율적으로 수행할 수 있습니다.

Fingerprint를 사용하는 이유

화학정보학과 계산화학 분야에서 Fingerprint를 사용하는 것은 화학 물질을 표현하는 데 있어 가장 기본적이면서도 응용 가능성이 높은 접근 방식 중 하나입니다. Fingerprint는 일반적으로 이진(binary) 형태로 구성되며, 0과 1로 이루어진 매우 긴 숫자 배열이라고 이해할 수 있습니다. 각 비트는 화합물 내 특정 화학적 하위 구조 또는 분자 특성의 존재 여부를 나타냅니다. 이러한 방식은 분자를 간결하고 직관적으로 표현하는 데 매우 유용합니다. Fingerprint는 유사성 검색과 클러스터링은 물론, 가상 탐색(virtual screening)과 같은 다양한 응용 분야에서 폭넓게 활용되고 있습니다.

아래의 이미지에서는 예시로 paracetamol 분자를 가져왔습니다. 이 분자를 Fingerprint 방식으로 표현하면 다음과 같은 형태가 됩니다. 앞서 설명드린 내용을 실제 예시를 통해 확인해보면, 복잡한 분자 구조가 매우 간단하게 표현되고 있다는 점을 알 수 있습니다. 이러한 간결성과 효율성 덕분에 Fingerprint는 다양한 화학정보학 및 약물 설계 분야에서 널리 활용되고 있습니다.

Fingerprint

Fingerprint 의 중요성

Fingerprint 는 다음과 같이 다양한 정보화학 및 계산화학 분야에 쓰이는 필수적인 도구입니다. 앞에서 살펴본 것 처럼 Fingerprint는 분자 구조를 간단하게 표현할 수 있다는 장점뿐만 아니라 다양한 측면에서 중요한 역할을 수행합니다. Fingerprint의 주요 중요성은 다음과 같습니다.

  1. 차원 축소

    화합물은 수많은 원자와 결합으로 인해 매우 복잡한 구조를 가질 수 있습니다. Fingerprint는 이러한 복잡성을 이진 또는 숫자 형식으로 압축하여 데이터의 차원을 줄여줍니다. 이를 통해 대규모 화학 데이터 세트를 보다 효율적으로 비교, 분석 및 모델링할 수 있습니다.

  2. 화학적 유사성

    Fingerprint는 화합물 간 유사성을 평가하는 데 널리 사용됩니다. 서로 다른 분자의 Fingerprint를 비교함으로써, 연구자는 구조적으로 유사한 화합물을 식별할 수 있으며, 이는 선도 물질 발굴이나 가상 탐색과 같은 작업에서 매우 중요합니다.

  3. 하위 구조 분석

    신약 개발에서는 분자 내 특정 화학 하위 구조를 식별해야 하는 경우가 많습니다. Fingerprint는 사전에 정의된 하위 구조 또는 분자 조각의 존재 여부를 이진 형태로 표현하도록 설계되어, 효율적인 하위 구조 검색을 가능하게 합니다.

  4. 데이터베이스 검색

    Fingerprint는 대규모 화학 데이터베이스에서의 빠른 검색을 가능하게 합니다. 화합물을 Fingerprint로 표현함으로써, 원하는 구조적 또는 기능적 특성을 지닌 화합물을 신속하게 식별할 수 있습니다.

  5. 클러스터링 및 다양성 분석

    Fingerprint를 활용하면 구조적 유사성을 기반으로 화합물을 클러스터로 분류할 수 있습니다. 이는 화학 공간 탐색, 효율적인 화합물 라이브러리 설계, 화합물 다양성 확보 등에 유용하게 활용됩니다.

  6. 기계 학습

    Fingerprint는 독성 예측, 물성 예측, 화합물 분류 등 다양한 예측 모델링 작업에서 기계 학습 알고리즘의 입력 특성으로 활용될 수 있습니다.

하지만 아쉽게도 Fingerprint 만을 이용해서 화합물의 모든 구조 정보를 완벽하게 담아내기는 어렵습니다. 따라서 이를 보완하기 위해서 최근에는 화합물의 Fingerprint 정보와 더불어 GNN(Graph Neural Network)을 응용한 다양한 연구들이 시도되고 있습니다.

GNN(Graph Neural Network)란?

GNN(Graph Neural Network)은 그래프 데이터에 적용이 가능한 신경망 구조를 의미합니다. GNN의 주요 목적은 각 노드를 잘 표현할 수 있는 임베딩을 생성하여, 특정 노드를 적절한 벡터 형태로 표현하는 것입니다. GNN은 노드간의 관계, 상호작용과 같은 추상적인 개념을 다루기에 적합합니다. 현재 소셜 네트워크 분석, 바이러스 확산 경로 예측 등 복잡한 네트워크 구조를 모델링 하는데 사용할 수 있습니다.

The graphical neural network GNN receives small molecules as input with the task of determining their spectral responses. By matching them with the known spectra, the GNN programme learns to calculate spectra reliably. © K. Singh, A. Bande/HZB

Fingerprint의 종류

Fingerprint의 종류는 정보화학 및 계산화학에서 생성 방법과 응용 분야에 따라 여러 유형으로 분류할 수 있습니다. 이번 글에서는 다양한 Fingerprint 중에서 가장 많이 사용되는 두 종류만 알아보겠습니다.

Morgan Fingerprint

먼저 소개할 유형은 Morgan Fingerprint입니다. Morgan Fingerprint를 정의하기 위해서는 두 가지 주요 파라미터가 필요합니다. 첫 번째는 중심 원자에서 얼마나 인접한 원자까지 고려할지를 결정하는 반경(radius), 두 번째는 생성될 이진 벡터의 길이(bit 수)입니다. 이러한 두 가지 정보를 기반으로, RDKit과 같은 화학정보학 라이브러리에서도 해당 파라미터를 입력받아 Morgan Fingerprint를 생성할 수 있도록 함수가 제공되고 있습니다.

 

fpgen = rdFingerprintGenerator.GetMorganGenerator(radius=2,fpSize=1024)

 

Morgan Fingerprint의 계산 방법은 다음과 같습니다. 먼저 화합물 내 모든 원자를 순회하며, 각 원자에 대해 해당 원자가 갖는 공유결합의 개수를 초기값으로 할당합니다.
그다음, 각 원자에 대해 인접한 원자들의 값을 모두 더한 값을 새로운 값으로 다시 할당합니다. 이 과정을 값이 수렴할 때까지 반복합니다.
반복이 완료되면, 각 원자에 할당된 최종 값을 기준으로 내림차순 정렬하여 고유한 숫자를 부여합니다. 마지막으로 이 숫자들을 해시 함수에 통과시켜, 사용자가 지정한 비트 수에 맞춰 이진 벡터로 변환합니다.

출처: Joseph, Blessy, et al. "Eigen Value ANalySis (EVANS)‒A Tool to Address Pharmacodynamic, Pharmacokinetic and Toxicity Issues: Proof of Concept Study on Pharmacodynamic Datasets." International Journal of Quantitative Structure-Property Relationships (IJQSPR) 4.3 (2019): 118-136.

물론 이러한 Morgan Fingerprint도 만능은 아니기 때문에 화합물이 가지는 열역학적 특성, 혹은 화학적인 특성을 정확하게 반영할 수 없습니다. 따라서 이를 보완하기 위한 다양한 Fingerprint가 연구되고 있습니다.

MACCS Fingerprint

두 번째로 소개해드릴 Fingerprint는 MACCS Fingerprint입니다. 이 방식은 미리 정의된 166가지의 작용기 또는 원소의 존재 여부를 기반으로 구성됩니다. 해당 화합물에 특정 작용기나 원소가 포함되어 있다면 해당 위치의 값은 1로, 포함되어 있지 않다면 0으로 표시되는 매우 간단한 구조입니다.

MACCS Fingerprint의 장점은 Morgan Fingerprint에 비해 사람이 직접 해석하기 쉽다는 점입니다. 또한, 필요에 따라 특정 작용기를 추가하거나 수정하는 등 사용자가 구조를 조정할 수 있다는 유연성도 갖추고 있습니다. 반면, MACCS Fingerprint는 Morgan Fingerprint에 비해 작용기의 위상적(topological) 특성을 충분히 반영하지 못한다는 한계도 가지고 있습니다.

In substructure key-based fingerprints, bits are set according to the substructures that are present in the molecule. (1 or "on" if the given substructure is present and 0 or "off" if absent.) Thus, each bit position corresponds to a specific substructure. - 출처 : ResearchGate

히츠에서도 신약개발 경진대회에서 Fingerprint를 사용했어요!

지난해 보건복지부와 과학기술정보통신부에서는 제1회 신약개발 경진대회를 개최하였습니다. 당시 히츠는 ‘약과도넛’이라는 팀명으로 대회에 참여했으며, 이 이름은 ‘drug and donut’이라는 중의적인 의미를 담고 있습니다. 해당 경진대회에서는 총 4개의 머신러닝 모델이 사용되었고, 이 중 2개의 모델에 Morgan Fingerprint가 적용되었습니다.
학습에 사용된 화합물들의 Fingerprint를 계산한 뒤, 그 이진값과 해당 화합물의 물성 데이터를 머신러닝 모델의 입력값으로 활용하여 학습을 진행하였습니다.
그 결과, ‘약과도넛’ 팀은 우수상을 수상하는 값진 성과를 얻을 수 있었습니다.

글을 마치며

오늘 살펴본 것처럼, 화합물의 Fingerprint는 간단한 분석 방법이면서도 다양한 연구에 활용될 수 있는 매우 유용한 도구입니다. 앞으로 계산화학이나 신약 개발 분야에 관심이 있는 분들이라면, RDKit을 활용해 다양한 종류의 Fingerprint를 직접 계산해보는 것을 추천드립니다. 이상으로 글을 마치겠습니다. 읽어주셔서 감사합니다.