DiffDock: Diffusion Steps, Twists, and Turns for Molecular Docking
DiffDock: 분자 도킹을 위한 확산 모델
Gabriele Corso, Hannes Stärk, Bowen Jing, et al. (2023)
분자 도킹(molecular docking)을 생성적 확산 모델 문제로 재정의하여, 리간드의 병진(translation), 회전(rotation), 비틀림(torsion)에 대한 확산 과정을 제품 공간에서 수행하는 논문이다. 기존 탐색/스코어링 기반 도킹 방법 대비 높은 성공률과 빠른 추론 속도를 달성했다.
배경
분자 도킹은 약물 후보 분자(리간드)가 표적 단백질에 어떻게 결합하는지를 예측하는 것으로, 신약 개발의 핵심 과정이다. 기존 도킹 소프트웨어(AutoDock Vina, Glide 등)는 결합 포켓 내에서 리간드의 자세를 탐색하고 물리화학적 스코어링 함수로 평가하는 방식을 사용했지만, 탐색 공간이 광대하여 성공률이 낮거나 속도가 느렸다. 최근 딥러닝 기반 접근(EquiBind 등)이 시도되었지만 대부분 회귀(regression) 방식으로 단일 자세만 예측하여 결합의 다중 모드(multimodal) 특성을 포착하지 못했다. 확산 모델이 생성 문제에서 큰 성공을 거두면서 도킹에도 적용할 수 있으리라는 기대가 있었다.
핵심 아이디어
DiffDock는 분자 도킹을 확산 생성 모델의 역확산(reverse diffusion) 과정으로 재정의한다. 핵심 혁신은 리간드의 자유도(degree of freedom)를 세 개의 서로 다른 기하학적 공간에서 정의하는 것이다: (1) SE(3) 상의 병진, (2) SO(3) 상의 회전, (3) 각 회전 가능 결합의 비틀림 각도. 각 공간에서 독립적인 확산(노이즈 추가)과 역확산(디노이징) 과정을 정의하고, 이를 하나의 제품 공간에서 동시에 수행한다. 스코어 함수를 등변 그래프 신경망(equivariant graph neural network)으로 파라미터화하여 SE(3) 등변성을 보장한다. 생성적 접근이므로 여러 후보 자세를 샘플링할 수 있어 다중 모드를 자연스럽게 포착한다.
방법론
단백질과 리간드를 그래프로 표현하고, 등변 상호작용 레이어를 통해 노드 특징을 업데이트한다. 확산 과정에서는 리간드의 병진(R^3), 회전(SO(3)), 비틀림 각(토러스)에 독립적인 노이즈를 추가한다. 역확산 과정에서 등변 스코어 모델이 각 자유도에 대한 스코어(확률 밀도의 그래디언트)를 예측하고, 이를 기반으로 반복적 디노이징 스텝을 수행하여 리간드 자세를 생성한다. 별도의 신뢰도 모델(confidence model)이 생성된 각 자세의 품질을 평가하여 최종 순위를 매긴다. 학습 데이터는 PDBBind 데이터베이스의 실험적 단백질-리간드 복합체 구조를 사용한다.
주요 결과
PDBBind 테스트셋에서 RMSD 2Å 이내의 도킹 성공률이 top-1 기준 38%로 기존 최고 방법(22%)을 크게 능가했다. top-5까지 고려하면 성공률이 더 크게 향상되어 확산 모델의 다중 모드 샘플링의 이점을 실증했다. 추론 속도 면에서도 GNINA 등 기존 도킹 도구와 동등하거나 더 빠르며, 특히 결합 포켓을 사전에 지정하지 않는 블라인드 도킹에서 기존 방법 대비 월등한 성능을 보였다. Vina, GNINA 등 전통적 도킹 도구와 EquiBind 등 딥러닝 방법 모두를 능가했다.
임팩트
확산 모델을 분자 수준의 과학 문제에 적용한 가장 성공적인 사례 중 하나로, 분자 생성, 구조 예측, 약물 설계 분야에서 확산 모델의 활용을 가속화했다. ICLR 2023에 발표되어 구조 기반 약물 설계(SBDD) 분야에 큰 영향을 미쳤으며, DiffDock-PP(단백질-단백질 도킹), DiffDock-L(대형 리간드) 등으로 확장되고 있다. 기하학적 공간에서의 확산 과정 정의라는 방법론적 기여는 분자 동역학, 결정 구조 예측 등 다른 과학 응용에도 영향을 미치고 있다.