이제 AlphaFold의 원리를 어느 정도 이해하셨다면, 직접 한 번 사용해보고 싶어지지 않으셨나요?
실험실에 슈퍼컴퓨터가 없어도 괜찮아요. Google Colab이라는 플랫폼을 이용하면 누구나 웹 브라우저에서 AlphaFold2를 실행해볼 수 있어요. 이건 ‘ColabFold’라는 이름으로 제공되고 있는데요, 실습용으로 아주 잘 만들어진 도구랍니다.
Google Colab Notebook
Run, share, and edit Python notebooks
colab.research.google.com
이 링크를 통해 누구나 자유롭게 접속이 가능해요!
이번 글에서는 ColabFold를 이용해 단백질 구조 예측을 실행하기 위한 기본 설정과 입력 방법을 알려드릴게요.
1단계 : 단백질 서열 입력과 실험 이름 설정
ColabFold에서는 단백질 아미노산 서열을 직접 입력하는 것부터 시작해요. 보통 서열은 한 줄로 쭉 이어진 알파벳(A, C, D, E 등) 형태로 입력하면 되는데요, 각 글자가 하나의 아미노산을 의미해요.
서열을 입력한 후에는 ‘jobname’이라는 실험 이름을 정할 수 있어요. 이건 저장될 결과 파일의 이름이기도 하니까, 어떤 실험인지 쉽게 알아볼 수 있도록 지정해두면 좋아요.
여기서 선택할 수 있는 주요 설정 중 하나는 template_mode예요. 템플릿은 이미 알려진 단백질 구조 중 유사한 것을 참고하는 기능인데, 이걸 켜면 예측 정확도가 올라가는 대신 계산 시간이 조금 늘어나요. 반대로 ‘none’으로 설정하면 템플릿 없이 순수하게 예측해요.
또 하나 중요한 설정은 num_relax인데요, 이건 예측된 구조 중 몇 개를 추가로 정제(리파인먼트)할지를 정하는 값이에요. 보통은 상위 1~2개만 정제하면 충분하다고 알려져 있어요.
AlphaFold 예측을 조금 더 정밀하게 조정하고 싶다면, ‘Advanced settings’를 활용해보는 것도 좋아요. 여기서는 MSA 방식, 예측 모델 개수, 반복 횟수 등을 선택할 수 있어요.
msa options는 MSA를 어떻게 생성할지 정하는 옵션이에요. 기본값인 MMseqs2 (UniRef+Environmental)는 UniRef 데이터베이스뿐 아니라 환경 유래 서열도 함께 참고해서, 진화 정보가 부족한 단백질도 어느 정도 커버할 수 있도록 도와줘요.
model_type 옵션은 어떤 모델을 사용할지 결정하는 설정이에요. 기본값은 auto인데요, 이걸 선택하면 입력한 서열에 따라 자동으로 가장 적절한 모델이 적용돼요.
단일 사슬(mononer) 구조일 경우엔 alphafold2_ptm 모델이 사용되고,
복합체(multimer) 구조일 경우엔 alphafold2_multimer_v3 모델이 선택돼요.
따라서 서열이 하나인지 여러 개인지를 일일이 고려하지 않아도 자동으로 잘 처리해준답니다.
물론 고급 사용자는 이 설정을 수동으로 바꿀 수도 있어요. 예를 들어, 멀티머 구조를 예측하고 싶은데도 굳이 단일 모델을 써보고 싶다면 수동으로 monomer 모델을 선택해볼 수도 있죠. 하지만 처음 사용하는 분들이라면 auto로 설정해두는 게 가장 안전하고 간편해요.
num_recycles는 예측된 구조를 몇 번 반복해서 다듬을지 정하는 값이에요. 기본값은 3이고, 값을 높일수록 정교하지만 계산 시간은 길어져요.
recycle_early_stop_tolerance
AlphaFold는 예측 결과를 반복적으로 다듬는 과정을 거쳐요. 이 옵션은 그 반복을 언제 멈출지를 결정해요.
기본값은 auto인데, 단일 단백질(monomer)이면 0.0, 복합체(multimer_v3)면 0.5로 자동 적용돼요. 값이 높을수록 더 빨리 반복을 멈춰서 속도는 빨라지지만, 정밀도는 조금 낮아질 수 있어요.
relax_max_iterations
구조 예측 후에 ‘Amber’라는 물리 기반 정제 과정을 거칠 수 있는데요, 이 옵션은 그 정제 과정을 몇 번 반복할지를 정해요.
기본값은 200이며, 0으로 설정하면 반복 횟수 제한 없이 무제한 정제가 가능하지만 실행 시간이 많이 늘어나요. 빠른 결과가 필요하다면 기본값이나 낮은 숫자를 유지하는 걸 추천해요.
pairing_strategy
Multimer 예측에서 여러 사슬 간의 관계를 어떻게 연결할지를 결정하는 전략이에요.
greedy : 비슷한 종의 서열들끼리 빠르게 짝을 지어요. 속도가 빠르고 보통은 이걸 사용해요.
complete : 모든 사슬이 정확히 맞는 서열만 쌍으로 만들어요. 정밀하긴 하지만 계산 속도가 느려요.
calc_extra_ptm
체크하면 iptm/ptm score라는 추가적인 구조 신뢰도 지표를 제공해요. 특히 복합체(multimer) 예측을 할 때, 각 체인 간의 상호작용 예측 신뢰도를 수치로 보고 싶을 때 유용해요.
일반적인 단백질 예측이라면 체크하지 않아도 되지만, 복합체의 상호작용이 중요한 경우에는 체크하는 게 좋아요.
이런 세부 설정은 처음에는 건드리지 않아도 되지만, 예측 정확도를 미세하게 조정하고 싶거나 연산 시간을 줄이고 싶을 때 큰 도움이 돼요.
max_msa
MSA의 최대 크기를 설정하는 옵션이에요. 기본값은 auto지만, 값을 줄이면 예측에 활용되는 진화 정보가 적어져서 예측의 불확실성이 커져요.
불확실성 분석이 필요한 연구라면 일부러 낮은 값으로 설정하기도 해요.
num_seeds
예측을 시작할 때 사용할 무작위 시드(seed)의 개수를 정해요. 숫자를 높이면 같은 단백질에 대해 다양한 결과를 얻을 수 있어요.
예측의 일관성이나 변동성을 분석하고 싶을 때 활용돼요.
use_dropout
신경망에서 일부 노드를 무작위로 끄는 Dropout 기능을 활성화하는 옵션이에요.
Dropout을 켜면 AlphaFold가 더 다양한 결과를 생성할 수 있어서 구조 예측의 신뢰도 분포를 평가할 때 도움이 돼요. 일반적인 예측에는 꺼두는 게 좋아요.
save_all
기본적으로 AlphaFold는 가장 좋은 예측 결과만 저장해요. 하지만 이 옵션을 체크하면 생성된 **모든 구조 예측 결과(rank 1~5)**를 저장할 수 있어요.
구조 비교나 다양성 분석을 할 때 유용하죠.
save_recycles
예측 반복(Recycle) 단계의 중간 결과까지 저장하고 싶을 때 사용하는 옵션이에요. 구조가 어떻게 점점 수정됐는지를 확인하고 싶은 경우 유용해요.
save_to_google_drive
이 옵션을 체크하면 결과 파일(zip)이 직접 내 Google Drive에 저장돼요. 로컬 저장이 번거롭거나 Colab 환경이 자주 리셋되는 경우 아주 유용하죠.
dpi
구조 이미지를 저장할 때 해상도를 설정하는 값이에요. 기본값은 200이며, 더 선명한 그림이 필요하다면 값을 높여도 돼요.
논문이나 프레젠테이션 자료에 쓸 이미지라면 300 이상으로 설정하는 것도 괜찮아요.
2단계 : MSA 방식과 예측 모델 선택하기
단백질 구조 예측에서 가장 중요한 건 진화 정보예요. 그래서 ColabFold는 MSA(Multiple Sequence Alignment)를 자동으로 생성해줘요. 앞서 이미 설명드린 것처럼 기본 설정은 mmseqs2라는 도구를 사용하는데, 이는 전 세계 수많은 단백질 서열을 검색해 유사한 서열을 찾아주는 역할을 해요.
초보자라면 기본값을 그대로 사용하는 걸 추천드려요. 하지만 자신이 실험하고자 하는 단백질이 특이하거나, 직접 만든 MSA를 활용하고 싶다면 custom 옵션을 사용할 수도 있어요.
또한, 구조 예측에 사용할 모델 종류도 선택할 수 있어요. Monomer인지, Multimer인지에 따라 다른 모델이 적용되는데요, 이건 AlphaFold가 내부적으로 자동으로 판단해주는 경우가 많지만, model_type 설정에서 수동으로 바꿔줄 수도 있어요. 예를 들어, 여러 사슬로 이루어진 복합체 구조를 예측하고 싶다면 ‘multimer’ 모델을 선택해야 하죠.
이런 설정을 마친 후에는 ‘Run Prediction’을 누르기만 하면 AlphaFold가 예측을 시작해요. 다만 복잡한 단백질일수록 시간이 오래 걸릴 수 있어요. 간단한 단백질이라면 10~20분 내에 끝나기도 하지만, Multimer나 긴 서열은 1시간 넘게 걸릴 수도 있어요.
다음 글에서는 이 과정을 통해 생성된 구조를 어떻게 시각화하고 해석하는지, 그리고 예측된 결과를 읽는 방법에 대해 자세히 다룰 거예요. lDDT 점수, 구조 색상 해석, 그래프 보기 등 AlphaFold의 예측 결과를 진짜 연구에 활용할 수 있도록 도와드릴게요!
'전공자를 위한 생물학 > 대학원생을 위한 필수 생물학 개념들' 카테고리의 다른 글
[알파폴드] 6편 : AlphaFold2의 한계 정리 (0) | 2025.04.20 |
---|---|
[알파폴드] 5편 : AlphaFold로 예측된 단백질 구조 해석 및 시각화 방법 (0) | 2025.04.20 |
[알파폴드] 3편 : AlphaFold는 어떻게 작동할까 - 구조 예측 단계 (0) | 2025.04.20 |
[알파폴드] 2편 : AlphaFold는 어떻게 작동할까 - Evoformer (0) | 2025.04.20 |
[알파폴드] 1편 : AlphaFold란 무엇인가? 단백질 구조 예측의 새로운 시대 (0) | 2025.04.20 |