| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | 31 |
- 단백질 구조 예측
- 자바
- 이항분포
- 인공지능
- CNN
- AP Computer Science A
- 결정트리
- 파이썬
- AP
- Kaggle
- 인공지능 수학
- Java
- 바이오인포매틱스
- 캐글
- BLaST
- 알파폴드
- 시그모이드
- COVID
- SVM
- RNN
- 로제타폴드
- 생명정보학
- 서열정렬
- 딥러닝
- ncbi
- 인공신경망
- 생물정보학
- 오류역전파
- bioinformatics
- 바이오파이썬
- Today
- Total
데이터 과학
로제타폴드에 데이터베이스를 더 추가하면 좀 더 정확해 질까? 본문
이전 연구에서 로제타폴드를 설치하고 데이터베이스를 이용하여 단백질 구조예측을 진행해 보았습니다.
그리고, 데이터베이스 종류에 대해 알아보았으며 이를 설치하고 사용하는 방법도 알아봤습니다.
https://tsyoon.tistory.com/276
RoseTTAFold-All-Atom에서 데이터베이스
RoseTTAFold-All-Atom에서 데이터베이스와 분석RoseTTAFold-All-Atom(RFAA)을 로컬 컴퓨터에 설치하다 보면 UniRef30, BFD, PDB100, Legacy BLAST 2.2.26과 같은 여러 종류의 데이터와 프로그램을 설치하게 됩니다. 처음
tsyoon.tistory.com
그렇다면 데이터베이스를 좀 더 늘리고 이를 참고한다면 구조예측의 정확도나 커버러지 값은 더 높아지지 않을까 하는 고민을 하게 됩니다.
그래서 이에 대해 자세히 알아봤습니다.
RoseTTAFold 데이터베이스를 추가하면 구조 예측이 더 정확해질까?
RoseTTAFold나 RoseTTAFold-All-Atom을 직접 설치하다 보면 UniRef30, BFD, PDB100과 같은 매우 큰 데이터베이스를 함께 설치하게 됩니다. 이때 자연스럽게 생기는 질문이 있습니다.
“데이터베이스를 더 많이 설치하면 단백질 구조를 더 자세하고 정확하게 분석할 수 있는가?”
결론부터 말하면, 데이터베이스가 많아진다고 해서 RoseTTAFold 인공지능 모델 자체가 더 똑똑해지는 것은 아닙니다.
하지만 더 많은 유사 단백질과 구조적 정보를 찾을 수 있기 때문에 MSA와 template의 품질이 향상될 수 있고, 특히 분석하기 어려운 단백질에서는 구조 예측에 도움이 될 수 있습니다.
즉, 데이터베이스 추가의 핵심 효과는
데이터베이스 증가
→ 더 많은 유사 서열 검색 가능
→ 더 풍부한 MSA 생성 가능
→ 더 많은 진화적 정보 확보
→ 구조 예측에 더 좋은 입력 제공
이라는 흐름으로 이해하는 것이 정확합니다.
1. RoseTTAFold에서 데이터베이스가 필요한 이유
RoseTTAFold는 단순히 입력한 아미노산 서열 하나만을 보고 구조를 예측하는 프로그램이 아닙니다.
예를 들어 분석하려는 단백질의 서열이 다음과 같다고 하겠습니다.
MKTLLVAVAGKT...
RoseTTAFold는 이 단백질과 비슷한 서열을 대규모 단백질 데이터베이스에서 찾습니다.
검색 결과는 다음과 같은 형태가 될 수 있습니다.
Human
MKTLLVAVAGKT...
Mouse
MKTLIVAVAGKT...
Fish
MKTLVVAVAGKT...
Bacteria
MKSLVIAVGAKT...
이러한 여러 단백질 서열을 서로 정렬하는 과정을 MSA, 즉 Multiple Sequence Alignment라고 합니다.
RoseTTAFold는 이 MSA에서 단백질의 진화 과정에 남아 있는 패턴을 분석합니다.
2. UniRef30의 역할
UniRef30은 RoseTTAFold 계열에서 매우 중요한 단백질 서열 데이터베이스입니다.
유사한 단백질 서열들을 군집화하여 검색 효율을 높이는 방식으로 구성되어 있으며, 입력한 단백질과 진화적으로 관련된 단백질을 찾는 데 사용됩니다.
UniRef30을 이용하면 다음과 같은 정보를 확보할 수 있습니다.
어떤 아미노산 위치가 잘 보존되는가
어떤 위치에서 변이가 많이 발생하는가
어떤 위치들이 함께 변화하는가
어떤 단백질들이 같은 계통이나 family에 속하는가
이러한 정보는 RoseTTAFold가 단백질 구조를 추론하는 중요한 입력 자료가 됩니다.
따라서 UniRef30은 RoseTTAFold의 MSA 생성 과정에서 기본적인 역할을 수행하는 데이터베이스라고 할 수 있습니다.
3. BFD의 역할
BFD는 Big Fantastic Database의 약자로 매우 방대한 단백질 서열 데이터베이스입니다.
BFD가 중요한 이유는 일반적인 단백질 데이터베이스에서 찾기 어려운 먼 진화적 관계를 가진 단백질이나 환경 시료에서 발견된 단백질 서열까지 포함할 수 있기 때문입니다.
예를 들어 UniRef30 검색 결과에서 유사한 단백질이 20개밖에 발견되지 않았다고 가정해 보겠습니다.
UniRef30
→ 20개의 homolog 발견
이 경우 MSA에 포함되는 정보가 충분하지 않을 수 있습니다.
하지만 BFD까지 검색하면
UniRef30
→ 20개
BFD
→ 추가로 300개 발견
과 같이 더 많은 관련 단백질을 확보할 가능성이 있습니다.
그 결과 MSA가 더 깊어지고 다양한 진화적 정보를 포함할 수 있습니다.
특히 다음과 같은 단백질에서 BFD의 효과가 클 수 있습니다.
희귀 단백질
미생물 단백질
환경 미생물에서 발견된 단백질
연구가 많이 이루어지지 않은 단백질 family
metagenomic protein
즉 BFD는 기존 데이터베이스에서 유사 서열이 충분히 발견되지 않는 어려운 단백질을 분석할 때 특히 유용할 수 있습니다.
4. PDB100은 서열 데이터베이스와 역할이 다르다
PDB100은 UniRef30이나 BFD와는 조금 다른 역할을 합니다.
UniRef30과 BFD는 주로 단백질 서열을 이용하여 진화적 관계를 찾는 데 사용됩니다.
반면 PDB 계열 데이터베이스는 이미 실험적으로 구조가 밝혀진 단백질을 기반으로 합니다.
즉 새로운 단백질을 분석할 때
입력 단백질
↓
기존 PDB 구조 검색
↓
비슷한 단백질 구조 발견
↓
구조 template으로 활용
하는 과정에 사용될 수 있습니다.
만약 분석하려는 단백질과 매우 비슷한 구조가 이미 알려져 있다면 이러한 template 정보는 구조 예측에 매우 유용한 단서가 될 수 있습니다.
따라서 PDB100의 핵심 역할은 MSA의 깊이를 증가시키는 것이 아니라 기존에 알려진 구조 정보를 구조 예측에 제공하는 것이라고 이해하면 됩니다.
6. 데이터베이스가 커지면 정확도도 계속 올라갈까?
반드시 그렇지는 않습니다.
이 부분이 매우 중요합니다.
예를 들어 어떤 단백질을 UniRef30에서 검색했을 때 이미 5,000개 이상의 좋은 homolog가 발견되었다고 하겠습니다.
이 경우 이미 충분한 진화 정보가 확보되어 있을 가능성이 높습니다.
여기에 BFD까지 추가하여 수만 개의 서열을 더 찾는다고 해서 구조 정확도가 비례하여 향상되는 것은 아닙니다.
즉, 다음과 같은 관계는 성립하지 않습니다.
데이터베이스 용량 증가
=
구조 정확도 증가
더 정확한 관계는 다음과 같습니다.
데이터베이스 범위 증가
↓
좋은 homolog를 발견할 가능성 증가
↓
MSA의 깊이와 다양성 향상 가능
↓
어려운 단백질에서 구조 예측 개선 가능
따라서 중요한 것은 데이터베이스의 절대적인 크기보다 해당 단백질과 관련된 의미 있는 서열을 얼마나 잘 찾을 수 있는가입니다.
7. 데이터베이스 효과가 특히 큰 경우
데이터베이스 추가 효과는 MSA가 얕은 단백질에서 더 크게 나타날 수 있습니다.
예를 들어 두 단백질이 있다고 하겠습니다.
Protein A
MSA sequences = 4,000
Protein B
MSA sequences = 15
Protein A는 이미 많은 진화 정보를 가지고 있기 때문에 추가 데이터베이스의 효과가 크지 않을 수 있습니다.
반면 Protein B는 관련 서열이 매우 적습니다.
BFD나 metagenomic database를 추가하여
15개
↓
250개
수준으로 MSA를 확장할 수 있다면 구조 예측에 사용할 수 있는 정보량이 크게 증가할 수 있습니다.
따라서 데이터베이스 확대의 가장 큰 장점은 이미 쉽게 예측되는 단백질보다 정보가 부족한 어려운 단백질에서 더 잘 나타날 가능성이 있습니다.
8. ColabFold도 이미 매우 큰 데이터베이스를 사용한다
여기서 흔히 발생하는 오해가 있습니다.
Colab에서 실행하는 RoseTTAFold나 AlphaFold 계열 프로그램은 작은 데이터베이스를 사용하고, 로컬 설치만 큰 데이터베이스를 사용하는 것으로 생각하기 쉽습니다.
하지만 실제로는 그렇지 않습니다.
ColabFold는 외부의 대규모 MMseqs2 검색 서버를 활용하여 매우 큰 단백질 데이터베이스를 검색할 수 있습니다.
즉 차이는 데이터베이스의 크기보다 데이터베이스가 어디에 설치되어 있는가에 있습니다.
Colab 방식
사용자 서열
↓
인터넷을 통해 외부 서버로 전송
↓
대규모 데이터베이스 검색
↓
MSA 생성
↓
Colab으로 결과 반환
↓
GPU 구조 예측
반면 로컬 방식은
사용자 서열
↓
내 컴퓨터의 UniRef30, BFD, PDB100 검색
↓
MSA 및 template 생성
↓
내 GPU에서 구조 예측
과 같이 처리됩니다.
즉 , Colab은 큰 데이터베이스를 사용하지 않는 것이 아니라 사용자 대신 외부 서버가 데이터베이스를 보유하고 검색해 주는 방식입니다.
9. 같은 데이터베이스를 로컬에 설치하면 Colab보다 정확해질까?
동일한 데이터베이스, 동일한 검색 프로그램, 동일한 검색 조건을 사용한다면 로컬에서 실행한다고 해서 무조건 구조가 더 정확해지는 것은 아닙니다.
예를 들어 Colab 서버와 로컬 컴퓨터가 모두 같은 UniRef30과 같은 검색 설정을 사용하여 거의 동일한 MSA를 생성한다면 구조 예측에 제공되는 정보 역시 매우 비슷할 수 있습니다.
따라서 로컬 환경의 가장 큰 장점은 단순한 정확도 향상이 아닙니다.
진짜 장점은 분석 조건을 연구자가 직접 제어할 수 있다는 것입니다.
10. 로컬 데이터베이스 환경의 가장 큰 장점
로컬 RoseTTAFold 환경에서는 동일한 단백질을 여러 조건으로 반복 분석할 수 있습니다.
예를 들어 다음과 같은 실험이 가능합니다.
첫 번째 분석
UniRef30만 사용
두 번째 분석
UniRef30 + BFD
세 번째 분석
UniRef30 + BFD + PDB100
네 번째 분석
UniRef30 + BFD + Custom Database
이렇게 생성된 결과를 서로 비교할 수 있습니다.
만약 모든 조건에서 거의 동일한 구조가 예측된다면 해당 구조에 대한 신뢰도가 높은 것으로 해석할 수 있습니다.
반대로 데이터베이스나 MSA 조건을 조금만 바꾸어도 구조가 크게 달라진다면 그 단백질의 구조 예측에는 불확실성이 존재한다고 판단할 수 있습니다.
따라서 로컬 데이터베이스 환경에서는 단순히 구조 하나를 얻는 것을 넘어 예측 결과의 안정성과 재현성을 분석할 수 있습니다.
11. Custom Database를 사용할 수 있다는 장점
로컬 분석의 또 다른 중요한 장점은 연구자가 직접 만든 데이터베이스를 사용할 수 있다는 것입니다.
예를 들어 특정 연구 분야에서 다음과 같은 서열을 별도로 보유하고 있다고 하겠습니다.
특정 박테리아 그룹
특정 바이러스 그룹
특정 식물 계통
특정 해양 미생물
특정 환경의 metagenomic sequence
이러한 데이터를 custom database로 만들어 RoseTTAFold 검색 과정에 추가할 수 있습니다.
공용 데이터베이스에서는 발견되지 않던 유사 단백질이 자체 데이터베이스에서 발견될 수도 있습니다.
따라서 특정 생물군이나 특수 환경을 대상으로 연구할 때 로컬 데이터베이스는 매우 큰 장점이 있습니다.
12. 데이터베이스를 추가해도 AI 모델 자체가 재학습되는 것은 아니다
데이터베이스를 추가하면 RoseTTAFold 인공지능 모델 자체가 다시 학습되는 것으로 생각하기 쉽습니다.
하지만 그렇지 않습니다.
RoseTTAFold의 neural network weight는 이미 학습 과정에서 만들어진 값입니다.
데이터베이스를 추가해도 이 가중치가 새롭게 학습되는 것은 아닙니다.
변하는 것은 모델에 입력되는 정보입니다.
즉
RoseTTAFold model weight
→ 동일
MSA 품질
→ 향상 가능
Template 정보
→ 향상 가능
진화적 정보
→ 증가 가능
이라는 관계입니다.
따라서 데이터베이스 추가의 의미는
“인공지능을 더 똑똑하게 학습한다.”
가 아니라
“이미 학습된 인공지능에게 더 좋은 자료를 제공한다.”
라고 표현하는 것이 정확합니다.
13. RoseTTAFold-All-Atom에서는 분석 범위가 더 넓어진다
RoseTTAFold-All-Atom은 일반적인 단백질 구조 예측보다 더 넓은 범위의 분자 시스템을 다룰 수 있도록 개발되었습니다.
단백질뿐 아니라
DNA
RNA
small molecule
금속 이온
공유결합 변형
등을 포함하는 복합적인 생체분자 구조를 다룰 수 있습니다.
따라서, RoseTTAFold-All-Atom에서 말하는 “더 자세한 분석”은 단순히 서열 데이터베이스를 많이 추가한다는 의미보다 훨씬 넓습니다.
예를 들어 다음과 같은 분석이 가능합니다.
Protein + Ligand
Protein + DNA
Protein + RNA
Protein + Metal
Protein complex
이러한 경우에는 MSA와 단백질 데이터베이스뿐 아니라 분석하려는 분자의 종류와 입력 조건도 매우 중요합니다.
14. 데이터베이스 이외에도 결과에 영향을 주는 요소가 많다
구조 예측 결과는 데이터베이스의 크기만으로 결정되지 않습니다.
실제로는 다음 요소들이 함께 영향을 줍니다.
입력 단백질 서열의 품질
MSA의 깊이
MSA의 다양성
Template의 존재 여부
사용하는 데이터베이스 버전
검색 프로그램과 parameter
모델 inference 설정
단백질 길이
복합체의 구성
신경망 반복 계산 횟수
GPU 메모리
따라서 좋은 구조 예측을 위해서는 단순히 데이터베이스를 많이 설치하기보다는 전체 분석 조건을 체계적으로 관리하는 것이 중요합니다.
15. 연구 수준에서는 데이터베이스 조건 비교가 중요하다
로컬 RoseTTAFold 환경을 구축했다면 단순히 한 가지 조건으로 구조를 예측하는 것보다 여러 조건을 비교하는 것이 훨씬 의미 있습니다.
예를 들어 다음과 같은 실험을 구성할 수 있습니다.
조건 A
UniRef30
조건 B
UniRef30 + BFD
조건 C
UniRef30 + BFD + PDB100
조건 D
ColabFold MSA
각 조건에서 생성된 구조를 비교합니다.
비교할 수 있는 항목은 다음과 같습니다.
전체 단백질 fold
α-helix와 β-sheet의 위치
domain 배치
단백질 복합체 interface
ligand binding site
confidence score
PAE
MSA depth
template 유무
이렇게 하면 단순히
“RoseTTAFold로 구조를 예측하였다.”
보다 훨씬 깊이 있는 분석이 가능합니다.
16. 데이터베이스별 역할 정리
RoseTTAFold 계열에서 주요 데이터베이스의 역할을 정리하면 다음과 같습니다.
UniRef30
단백질의 진화적 유사 서열 검색과 MSA 생성에 사용됩니다.
BFD
더 넓은 범위의 단백질과 metagenomic sequence를 검색하여 MSA를 확장하는 데 도움이 됩니다.
PDB100
이미 구조가 알려진 단백질을 검색하여 구조 template 정보를 제공하는 데 사용됩니다.
Custom Database
연구자가 보유한 특정 생물이나 환경의 단백질 서열을 추가하여 특화된 검색을 수행할 수 있습니다.
이 데이터베이스들은 서로 경쟁하는 것이 아니라 서로 다른 정보를 보완합니다.
17. 이상적인 RoseTTAFold 연구 환경
연구 수준의 RoseTTAFold 환경은 다음과 같이 구성할 수 있습니다.
Protein FASTA
↓
UniRef30 검색
↓
BFD 검색
↓
Custom Database 검색
↓
MSA 생성
↓
PDB100 template 검색
↓
Sequence information
Evolutionary information
Template information
↓
RoseTTAFold 또는 RoseTTAFold-All-Atom
↓
GPU inference
↓
3D structure prediction
↓
Confidence analysis
↓
PyMOL 또는 ChimeraX 분석
18. 데이터베이스 추가의 가장 정확한 의미
RoseTTAFold에 데이터베이스를 추가하는 의미를 한 문장으로 정리하면 다음과 같습니다.
“데이터베이스를 추가한다고 RoseTTAFold 인공지능 자체가 더 강력해지는 것은 아니지만, 유사 단백질과 구조 정보를 더 많이 탐색할 수 있기 때문에 모델에 제공되는 MSA와 template 정보가 풍부해지고, 특히 정보가 부족한 어려운 단백질의 구조 예측에서 도움이 될 수 있다.”
이것이 가장 정확한 설명입니다.
결론
RoseTTAFold의 구조 예측 성능은 단순히 데이터베이스의 크기에 의해 결정되지 않습니다.
UniRef30, BFD, PDB100과 같은 데이터베이스는 각각 단백질의 진화적 관계, MSA의 깊이, 기존 구조 template 정보를 제공하는 역할을 합니다.
데이터베이스를 추가하면 더 넓은 범위의 단백질을 검색할 수 있고, 기존 검색에서 발견하지 못했던 homolog를 찾을 가능성이 높아집니다.
특히, MSA 정보가 부족한 단백질이나 희귀 단백질, metagenomic protein 등을 분석할 때 대규모 데이터베이스의 가치가 커질 수 있습니다.
하지만 이미 충분한 MSA가 존재하는 단백질에서는 데이터베이스를 더 크게 만든다고 해서 구조 정확도가 계속 향상되는 것은 아닙니다.
더욱이 데이터베이스가 추가되어도 RoseTTAFold의 학습된 neural network weight가 변하는 것은 아닙니다.
RoseTTAFold 연구 환경에서 데이터베이스를 구축하는 진정한 목적은 단순히 “더 정확한 구조 하나를 얻는 것”보다는
더 좋은 MSA 확보
더 다양한 template 탐색
분석 조건 비교
예측의 안정성 검증
custom database 활용
복합체 분석
과 같은 연구의 깊이와 자유도를 높이는 데 있습니다.
결국 Colab 기반 RoseTTAFold가 구조 예측을 손쉽게 경험할 수 있는 편리한 환경이라면, UniRef30, BFD, PDB100 등을 갖춘 로컬 RoseTTAFold 또는 RoseTTAFold-All-Atom 환경은 구조 예측 결과가 왜 그렇게 나왔는지 분석하고 다양한 조건을 비교하는 연구용 환경이라고 이해하는 것이 가장 적절합니다.
'생명정보학 & 화학정보학 > 알파폴드와 단백질 구조 예측' 카테고리의 다른 글
| AlphaFold 3 , RoseTTAFold-All-Atom 서버 접속 및 사용 방법 (0) | 2026.08.13 |
|---|---|
| AlphaFold 3 설치 및 데이터베이스 구축하기 (0) | 2026.08.12 |
| Google Colab에서 RoseTTAFold2가 작동하는 원리 (0) | 2026.08.11 |
| 로제타 폴드 설치와 사용기 (1) | 2026.08.10 |
| RoseTTAFold-All-Atom에서 데이터베이스 (0) | 2026.08.09 |