티스토리 뷰

Paper/Bioinformatics

AttABseq 논문 리뷰

벼랑끝과학자 2025. 8. 22. 18:47

https://academic.oup.com/bib/article/25/4/bbae304/7705533

서열 기반의 Antigen-Antibody Affinity change prediction 모델

 

Introduction

매번 나오는 똑같은 Ab 이야기, 항체가 therapeutics에 효율적이다...
specificity가 좋고 toxicity가 낮고 strong한 효과를 보인다...
그러나 이런 Ab를 찾는데 기존 wet-lab 기반으로는 많은 시간과 돈을 들여야하는 단점이 있다.
찾아야하는 sequence space가 너무 넓어서 wet-lab기반으로는 한계가 있다.
그러니 computational method가 필요하고 실제로 ML기반의 method들이 유망한 결과를 보였다 등 ..

항체 최적화는 solubility, stability, specificity 등 Multi-objective에 대해서 진행되어야 하다보니 어렵다. 특히 이런 최적화 과정은 서열의 point mutation에 의해 복호화(암호화) 되어있는데 이러한 point mutation에 의한 여러 property가 어떻게 변화하는지에 대한 insight를 얻는 것이 중요한 연구 포인트가 된다.

최근까지 이런 연구를 하는 분야는 2개의 큰 필드로 나눌 수 있겠다.

[Force-field based Model]
FoldX : 단백질-단백질, 단백질-리간드 결합에서의 Binding Energe Change 예측

[ML-based Model]
BeAtMuSiC :  돌연변이가 분자 복합체의 접촉면에서의 상호작용 강도와 분자 복합체 전체의 안정성에 미치는 영향

그 외 다양한 DL based Model들도 많으며, 대부분의 모델들이 Force-Field Model보다 좋은 성능을 보임 mCSM-AB, TopNetTree, PerSpect_EL, GeoPPI 근데 이런 모델들의 문제점은 3D 구조데이터가 존재해야 한다는 점인데 보통 그런 데이터가 많지 않다는 것.

근데 이제 최근들어 BERT라던가 GPT라던가, 아주 뛰어난 LLM 모델들을 기반으로하여 단백질의 수많은 서열을 학습한 ESM이나 TAPE등의 pre-trained model들이 많이 개발되었고 얘네는 단백질의 서열만으로도 다양한 특성 정보를 나타내는 representation vector를 return해줌. 따라서 서열기반의 단백질 모델에 사용할 수 있는 좋은 도구가 됨.

아, 아무튼 기존의 모델들에 대한 내용은 그냥 GPT요약본으로 대체함.

[문제점] 항체-항원 복합체의 정확한 3차원 구조와 결합 특성을 예측하는 것은 매우 어렵습니다. 특히 돌연변이가 생겼을 때 그 구조와 결합력이 어떻게 변할지 알아내는 것은 더 큰 문제입니다.

[핵심 원인] 가장 큰 어려움은 항체에서 항원과 직접 결합하는 부분(CDR 루프)이 매우 유연하고 계속해서 모양을 바꾸는 특성 때문입니다. 이 예측 불가능한 유연성 때문에 전체 구조를 정확히 모델링하기가 힘듭니다.

[현재 기술의 한계] 이 문제는 너무나 까다로워서, 단백질 구조 예측 분야의 혁명으로 불리는 알파폴드2와 같은 세계 최고 수준의 인공지능 모델을 사용하더라도 완벽하게 해결하지 못하고 있습니다.

[결론 및 해결책] 따라서, 범용적인 도구로는 한계가 명확하므로, 이처럼 까다로운 '항체 최적화' 문제에만 특화된, 더 새롭고 강력한 최첨단 딥러닝(AI) 기술을 개발하는 것이 시급합니다. 이러한 전문 도구를 개발해야만 이 분야에서 기술적 경쟁력을 확보할 수 있습니다.

 

AttABseq

그래서 우리는 본 연구에서 서열데이터만 가지고도 빠르고 효과적으로 항체를 최적화 할 수 있는 attention based model인 AttABseq모델을 소개한다.

AttABseq의 세 가지 블록(구성요소)

  • 임베딩 블록 (Embedding Block): 단백질의 아미노산 서열(문자 정보)을 인공지능 모델이 분석할 수 있도록 의미 있는 숫자 데이터(벡터)로 변환하고 부호화하는 역할을 합니다.
  • 어텐션 블록 (Attention Block): 변환된 데이터 속에서 단백질 결합에 가장 결정적인 영향을 미치는 부분이 어디인지 '주목'하여, 상호작용의 핵심 정보를 추출하고 통합하는 역할을 합니다.
  • 예측 블록 (Predicting Block): 어텐션 블록에서 추출된 핵심 정보를 바탕으로, 특정 돌연변이가 결합력을 얼마나 강하게 또는 약하게 만들지를 최종적으로 계산하여 예측된 수치를 도출하는 역할을 합니다.

AttABseq는 아미노산의 Residue Level에서의 point mutation에 의한 Antigen-Antibody Affinity(AAA) change를 잘 예측할 수 있다고 한다. 따라서 자동화된 서열 최적화의 도구로써 쓰일 수 있다고 함. 내가 하려는 생성모델에도 Loss값으로 적용해볼 수 있겠다는 생각이 든다.

 

Result (Briefings in BI는 희안하게 Result가 먼저오네)
해석상 그냥 Methods부분과 뒤섞어서 진행하겠음

뭐 당연하지만, 결과는 본 연구 모델이 가장 좋은 성능을 보였으며 특히 이 논문의 특 장점은 모델의 어텐션 블록이 돌연변이가 발생한 특정 Residue에 높은 Attention score를 부여하는 것이 확인되었단다. 이건 정말이라면 좋은 학습방법이 맞는 듯.

 

Dataset

AB-BindSkempi 2.0v 사용

  • AB-Bind에서는 AB645로 명명한 subset을 가져옴 29개의 Ag-Ab complex에서 추출한 총 645개의 single-point mutation된 서열과 Binding Affinity로 구성된 데이터셋임
  • Skempi 2.0v에서는 112개의 Ag-Ab Complex에서 추출된 총 1131개의 mutations 결과값이 들어있는 S1131로 명명된 서브셋을 가져옴.

여기서 벌써 의문점, 데이터가 그럼 총 1776개? 이것밖에 안된단말이지... 뒤쪽에 Experiment 부분에 추가적인 설명이 나오니 추가적인 데이터에 대한 궁금증은 일단 여기까지만, 뒤에서 확인해보고 안나오면 그때 생각하자.

 

Sequence Feature Descriptors

단백질 서열을 매트릭스형태로 나타내기 위해서 One-Hot Encodingposition-specific scoring matrix (PSSM)이라는 방법을 사용했음.

이 논문을 리뷰까지 찾아 읽을만한 사람들이라면 단백질을 원핫인코딩하는 방법은 크게 설명안해도 될거라 설명 생략하고 PSSM은 그냥 PSI-BLAST라는 툴을 이용해서 바로 계산 가능하며 각 아미노산 서열이 20차원의 벡터로 임베딩된다고 생각하면 된다.

일반적인 단백질 종류를 20개로 보고 인코딩하여서 원 핫 인코딩도 (n, 20)으로, PSSM도 말한대로 (n, 20)으로 구성되어 concat해서 그냥 (n, 40)의 차원으로 각 아미노산들이 Encoding + Embedding 된다고 이해하면 된다.

 

Model Design

입력 데이터는 원본 복합체(Wildtype, Wt)와 항체의 서열에 돌연변이가 발생한 돌연변이 복합체(Mutant., Mt)를 사용한다. 복합체는 항원(Antigen, Ag)과 항체(Antibody, Ab)로 이루어져있고 Wt-Ag, Wt-Ab, Mt-Ag, Mt-Ab로 총 4가지의 서열이 입력 서열로 사용된다.

논문에서는 Sequence Feature Descriptors 에서 설명한 입력되는 인코딩+임베딩 벡터를 다음과 같이 표현한다.

 

Model Design - Embedding Block

Embedding Block은 주로 1D CNNGated Linear Unit(GLU) 로 구성된다. Figure 8. 에 구성을 잘 설명해두었으니 따로 언급은 없이 넘어가고, Embedding Block의 output인 Xout의 shape는 [Batch Size, AA Length, hidden_size * 3]이다.

이렇게 Embedding Block을 통과하고 나온 4개의 Representation vector들을 논문에서는 이렇게 표기한다.

이렇게 얻어진 Embedded representation vector들은 Attention Block으로 input된다.

 

Model Design - Attention Block

다음 식을 가지고 self-attention과 mutual(cross)-attention을 진행함.

근데 이 논문 내가 리뷰어였으면 notation 다시 정리하라고 했을 것 같음. 식도 잘못 썼고, representation vector들의 shape 정리가 뒤죽박죽이고 하다가 말아서 상당히 헷갈림. 뒤쪽 prediction block 그림에 설명된 representation vector의 shape도 이상함. 마지막 mutual attention block 결과로 나올 수 있는 representation vector와 shape이 맞지 않음. 

논문이 아니라 코드를 보면서 정확히 어떤 shape를 가지는 attention score들이 나오는지 직접 확인하면서 가야할 것 같음. 나는 그냥 비교모델로 사용할 생각이라 굳이 그렇게는 하지 않지만 이 모델을 key paper로 공부할 생각이라면 코드를 뜯어보면서 다시 정리할 필요가 있음

 

Model Design - Prediction Block

모델 설명 허술한 것 보고 실망해서 나머지는 그냥 대충 보기로 함. 대충 concat하고 MSE Loss로 Affinity value를 학습함

 

The Architecture of AttABseq

모델의 전체 work-flow

  • Embedding Block
  • Attention Block
  • Predicting Block

 

Experiments

데이터가 적어서 2가지 방법으로 나눠서 실험적 방법론을 설정함 K-fold CV와 Label ascending dataset split 방법으로 모델의 실험을 진행하고 평가하며, 평가지표는 PCC와 R2를 계산함.

 

Performance comparisons on datasets with mutations in K-fold cross-validation

PIPR(2019), TransPPI(2021), DeepFE-PPI(2019), and LSTM-PHV(2021) 모델들을 사용해서 PCC와 R2 값을 비교하는데, 이거 잘못된 비교실험인게 언급된 네가지 모델은 단순 PPI interaction model이지 delta G를 예측하는 모델이 아님.

따라서 GraphPPI나 DeepDDG 등의 delta G 변화량에 대한 학습도 된 모델과 비교했어야 맞음. 리뷰어들을 잘만났다고 생각함. Briefings in BI면 나름 코로나때 IF 10도 넘어갔던 좋은 저널인데도 논문 출판은 어느 정도 운도 따라야 하는게 맞구나 싶음.

나머지 비교실험 Performance comparisons on datasets with label-ascending ordered split도 동일한 비교모델을 사용했기 때문에 큰 의미 없는 비교실험이었다고 생각함  Comparison with structure–based approaches 에서 사용된 비교 모델은 FoldXBeAtMuSiC이라는 모델인데 각각 2005년과 2013년도에 나온 딥러닝이 전혀 사용되지 않은 모델들임. 논문이 출판된 2024년 6월 이전에 구조데이터를 사용한 딥러닝 기반의 delta G 예측 모델이 없었던 것도 아님 잠깐만 찾아봐도 나옴.

Attention block이 interpretability가 있다는 Interpretability with the attention block of AttABseq 단락, 이 분야가 대개 그렇듯이 아마 체리피킹이 되어있을 것임. 명확하게 정말 이 모델이 interpretability가 있는지를 보이려 했다면 3개의 데이터에 대한 결과만 보일 게 아니라 통계적으로 모든 데이터에서 mutation된 위치의 Attention score가 높게 계산되었다는 경향성을 보이는 실험을 했어야 함.

이 논문은 여기까지만 읽는걸로

 

이 논문에서 배울만한 점은 딱히 없는 것 같은데 모델 구조와 input이 단순해서 데이터 구성을 해두기 편할 것 같음. Wt-Mt 전략에 맞춰서 데이터 생성해보고 추가 훈련데이터 줘서 모델의 예측 성능이 올라가는지를 보이는 실험을 우리 논문에 넣으면 좋을 것 같음

 

댓글