Stop Thinking, Just Do!

Sungsoo Kim's Blog

Highly Accurate Protein Structure Prediction with AlphaFold

tagsTags

26 April 2025


Article Source


Highly Accurate Protein Structure Prediction with AlphaFold

Abstract

Heidelberg AI Talk 5th of May 2022 Highly Accurate Protein Structure Prediction with AlphaFold Simon Kohl, DeepMind

https://heidelberg.ai

Abstract

Predicting a protein’s structure from its primary sequence has been a grand challenge in biology for the past 50 years, holding the promise to bridge the gap between the pace of genomics discovery and resulting structural characterization. In this talk, we will describe work at DeepMind to develop AlphaFold, a new deep learning-based system for structure prediction that achieves high accuracy across a wide range of targets. We demonstrated our system in the 14th biennial Critical Assessment of Protein Structure Prediction (CASP14) across a wide range of difficult targets, where the assessors judged our predictions to be at an accuracy “competitive with experiment” for approximately 2/3rds of proteins. The talk will focus on the underlying machine learning ideas, while also touching on the implications for biological research.

네, 안녕하세요 여러분. 오늘 행사에 오신 것을 환영합니다. 2년이 넘는 시간 만에 이렇게 직접 하이델베르크 AI 행사를 다시 개최하게 되어 정말 기쁩니다. 그동안 DKFZ나 하이델베르크에 새로 오신 분들도 많을 텐데, 보통 행사 후에는 친목 도모를 위해 간단한 음식과 음료를 제공하는 사교 행사를 가졌습니다. 아직은 불가능하지만, 적어도 강연은 진행할 수 있게 되어 다행입니다. 앞으로 있을 행사에도 많은 관심 부탁드리며, 맥주와 피자, 다른 AI 애호가들과의 만남에 관심 있으신 분들은 바로 이곳에 잘 오셨습니다.

오늘 이 행사는 하이델베르크 AI, 하이델베르크 앨리스 유닛, 그리고 하이델베르크 데이터 과학 세미나의 공동 주최입니다. 데이터 과학 주제에 관심 있으신 분들은 이 세미나 시리즈들을 확인해 보시기 바랍니다. 또한, 오늘 DKFZ 박사 과정 학생분들 중 이 행사로 학점을 인정받고 싶으신 분들은 여기 계신 도리안 씨에게 명단을 받아 이름을 적으시면 됩니다.

하이델베르크 AI는 클라우스 마이어하인 교수가 이끄는 의료 영상 컴퓨팅 부서와 제가 이끄는 상호 작용형 머신러닝 그룹이 공동으로 조직하고 있습니다. 저희 연구실에서는 현재 박사 과정 학생을 채용 중이니, 관심 있으시거나 주변에 관심 있는 분이 있다면 저에게 연락 주시기 바랍니다.

오늘 강연자는 사이먼 콜 박사입니다. 저는 칼스루에에서 함께 물리학을 공부할 때 사이먼을 처음 만났습니다. 석사 논문도 같은 연구실에서 진행하면서 머신러닝에 대한 관심을 발견했고, 박사 과정 자리를 찾다가 클라우스 마이어하인 교수님의 연구실에서 함께 박사 과정을 시작하게 되었습니다.

하지만 박사 과정을 시작한 지 3~4개월 만에 저희의 길은 다소 갈라졌습니다. 바로 이 강연장에서 딥마인드의 한 교수님이 초청 강연을 하셨던 운명적인 밤이었습니다. 그분은 저희 분야에서 매우 유명한 분이었고, 자신의 연구에 대한 강연을 하고 계셨습니다. 강연 후 청중석에 있던 사이먼이 “그 모든 것이 흥미롭지만, 앞으로의 연구 방향은 무엇이라고 생각하십니까? 가장 흥미로운 방향은 무엇이라고 보십니까?”라고 질문했습니다. 그러자 그 교수님은 “사실 재미있는 일이 있었습니다. 며칠 전에 DKFZ, 클라우스 교수님 연구실에서 나온 논문을 읽었는데, 정말 훌륭한 아이디어라고 생각했고, 꼭 시도해 봐야겠다고 생각했습니다.”라고 말씀하셨습니다. 놀랍게도 그 교수님이 언급했던 논문은 사이먼이 박사 과정을 시작한 지 불과 3~4개월 만에 발표한 논문이었습니다. 그 후 일은 일사천리로 진행되었고, 현재 사이먼은 딥마인드에서 선임 연구 과학자로 일하고 있습니다.

약 3년 전 사이먼은 저에게 더 이상 의료 영상을 연구하는 것이 아니라 단백질을 연구하고 있다고 말했습니다. 그 후로 쭉 조용했습니다. 딥마인드에서 많은 사람들이 그 분야를 연구하고 있을 거라고 짐작했지만, 별다른 소식은 없었습니다. 아마도 뭔가 큰 일이 일어나려고 한다는 의심을 했어야 했는지도 모릅니다. 그리고 작년에 실제로 큰 일이 일어났고, 아마도 오늘 이 방에 계신 모든 분들이 그 이유를 알고 계실 겁니다. 이제 사이먼이 무슨 일이 일어났는지 이야기해 줄 것입니다. 사이먼, 도대체 무슨 일이 있었던 거야?

네, 폴, 이토록 친절한 소개 정말 감사합니다. 하이델베르크, 그리고 폴이 말씀하신 것처럼 저희가 함께 박사 과정을 했던 독일 암 연구 센터에 다시 오게 되어 정말 기쁩니다. 정말 얼마 전 일처럼 느껴지는데, 이렇게 돌아와서 알파폴드를 이용한 매우 정확한 단백질 구조 예측 연구에 대해 발표하게 되어 정말 기쁩니다.

먼저 간략한 소개를 드리는 것이 좋을 것 같습니다. 딥마인드가 왜 이 연구를 하는지, 그리고 문제 자체에 대한 일반적인 소개를 드리겠습니다.

우선, 딥마인드의 핵심 목표 중 하나는 근본적인 과학 문제를 해결하는 것입니다. 그중 매우 근본적인 과제 하나가 단백질 서열의 3차원 구조를 예측하는 것입니다. 따라서 이것은 회사의 목표와 매우 잘 부합하며, 이것이 저희가 이 연구에 매진한 이유입니다. 또한, 제가 오늘 말씀드릴 알파폴드는 이 문제에 대한 저희의 해결책 제시입니다.

이제 시작에 앞서 단백질이 무엇인지 간략하게 설명하여 모두 같은 이해를 갖도록 하겠습니다. 단백질은 본질적으로 분자 수준의 나노 머신이라고 할 수 있습니다. 나노 머신에 대해 들어보셨겠지만, 자연은 이미 수십억 년 동안 이러한 나노 머신을 설계해 왔으며, 생명 유지에 정말 필수적입니다. 단백질은 구조적 기능(예: 머리카락), 면역 체계 등 다양한 기능을 수행합니다. 예를 들어 사스-CoV-2 스파이크 단백질에 대해 들어보셨을 것입니다.

단백질을 구성하는 아미노산 사슬은 3차원 공간에서 접혀 3차원 형태를 가지게 됩니다. 이 3차원 형태는 일차적으로 단백질의 기능을 결정합니다. 이것이 단백질 구조 예측이 생물학에서 매우 근본적인 문제인 이유입니다.

좀 더 자세히 살펴보겠습니다. 단백질은 긴 분자이며, 아미노산 사슬이라고 부릅니다. 자연은 단백질을 20가지 기본적인 구성 요소로 만들도록 선택했습니다. 따라서 20가지 다른 아미노산이 있습니다. 컴퓨터 과학자의 관점에서 보면, 단백질은 20개의 글자로 이루어진 알파벳 위의 문자열이며, 각 글자는 아미노산, 즉 잔기(residue)를 나타냅니다.

각 글자는 특정 원자 집합과 그 결합을 나타냅니다. 앞서 말씀드렸듯이 단백질은 사슬이므로, 아미노산은 그 사슬을 따라 연결되어 있습니다. 연결된 부분을 주사슬(backbone)이라고 부릅니다. 그리고 주사슬 옆으로 뻗어 나온 부분을 곁사슬(side chain)이라고 부르며, 각 아미노산에 특이적인 작은 원자 집합입니다. 이 곁사슬은 단백질이 수행하는 화학 반응에 주로 관여합니다. 물론, DNA 서열이 단백질 서열을 고유하고 직접적으로 암호화한다는 것을 들어보셨을 것입니다. 이것은 DNA에서 단백질로의 일대일 매핑입니다.

단백질에 대한 소개가 끝났으니, 왜 단백질 구조를 예측하고 싶은지 설명드리겠습니다.

본질적으로 단백질 구조의 실험적 결정은 수개월에서 수년이 걸리는 매우 지루한 과정입니다. 때로는 단백질이 결정화되지 않아 불가능한 경우도 있습니다. 따라서 아미노산 서열만으로 단백질 구조를 신뢰성 있게 컴퓨터 내에서 예측할 수 있다면, 엄청난 속도 이점을 얻을 수 있으며, 생물학 전체에 걸쳐 많은 새로운 가능성을 열어줄 것입니다. 이 모든 것이 슬라이드 하단의 그림에 요약되어 있습니다. 그림의 상단 가지에서는 단백질 코딩 DNA에서 시작하여 우리가 관심 있는 단백질 구조에 도달하기까지의 모든 단계를 보여줍니다. 이 중간 단계들은 앞서 말씀드렸듯이 지루하고, 어려움이 따르며, 실제 실험적 구조에 도달하는 데 매우 오랜 시간이 걸릴 수 있습니다.

따라서 저희가 목표로 한 것은 이러한 모든 단계를 건너뛰고, 본질적으로 DNA 서열에서 직접 구조 자체로 나아가는 것입니다. 이를 위해 서열로부터 구조를 예측하는 AI 알고리즘을 설계, 구축 및 훈련했습니다.

알파폴드는 CASP에서 평가되고 소개되었습니다. 이러한 근본적인 문제를 해결하는 데 있어 정말 중요한 것은 명확한 성공 지표를 갖는 것입니다. 그래야 컴퓨터 내에서 그 문제에 대해 반복적으로 연구할 수 있습니다. 다행히 단백질 구조 예측 커뮤니티는 저희에게 그 수단을 제공해 주었습니다. 그들은 2년마다 단백질 구조 예측 평가(CASP)를 실시했습니다. 이 CASP 평가는 최근에 해결되었지만 커뮤니티에 알려지지 않은 구조들을 예측하는 것을 포함합니다. 따라서 이것은 구조 예측 알고리즘을 서로 비교하는 독특하고 공정한 테스트베드입니다. CASP14에서 알파폴드는 일관되게 높은 정확도를 달성하며 최고 순위를 기록했습니다. 이는 2020년의 일입니다.

2년마다 개최되는 CASP에서 알파폴드는 92.4 GDT의 중간 정확도를 달성했습니다. GDT는 예측된 구조와 실제 구조를 비교하는 정확도 지표로, 0에서 100%까지의 범위를 가지며, 100%는 완벽한 예측입니다. 따라서 90% 이상의 정확도를 달성한 것은 정말 획기적인 성과로 여겨졌습니다. 이 슬라이드를 보시면 알파폴드 2 이전의 계산 성능은 40%대에 머물러 매우 신뢰할 수 없었음을 알 수 있습니다. 그러나 알파폴드는 90% 이상의 정확도를 달성했고, 이에 대해 CASP 조직위원회 자체에서도 알파폴드를 단백질 구조 예측 문제에 대한 해결책으로 인정했습니다.

이것을 좀 더 구체적으로 보여드리기 위해 CASP에서 예측 과제로 제시되었던 두 가지 단백질 예시를 보여드리겠습니다. 이 특정 예시는 코로나바이러스 단백질 구조로, 당시 커뮤니티에 알려지지 않은 구조였습니다. 초록색은 실험적으로 결정된 실제 구조이고, 파란색은 CASP에 저희가 제출한 알파폴드로 예측한 구조입니다. 제가 이 슬라이드를 보여드리는 이유는 이 경우 두 구조가 거의 구별할 수 없을 정도로 매우 유사하다는 것을 보여드리기 위해서입니다. 육안으로는 어느 것이 예측이고 어느 것이 실제인지 구별하기 어렵습니다. 이는 이 경우 알파폴드가 얼마나 잘 작동했는지 보여줍니다. 이 특정 예시는 87 GDT에 해당합니다.

이것은 CASP에서 과제로 제시된 또 다른 예시로, RNA 중합효소입니다. 1,000개 이상의 아미노산으로 구성된 매우 큰 단백질입니다. 알파폴드 2 이전에는 이렇게 큰 구조를 계산적으로 시도하는 것조차 매우 어려웠고, 성공하는 것은 더욱 어려웠습니다. 다시 한번 이 중첩된 그림에서 예측과 실제 구조가 매우 가깝고, 이 경우 매우 좋은 예측임을 알 수 있습니다. 또한 이 슬라이드에서는 도메인이라고 불리는 세 개의 하위 구조 단위를 강조하고 있습니다. 오른쪽 하단의 세 개의 작은 GIF에서도 도메인 수준에서 구조적 일치가 매우 좋다는 것을 알 수 있습니다.

소개가 끝났으니, 이제 제가 다룰 내용의 개요를 간략하게 설명드리겠습니다. 알파폴드가 어떻게 작동하는지, 단백질을 어떻게 이해하는지, 알파폴드 예측을 어떻게 해석하는지에 대해 이야기하겠습니다. 또한, 여러분과 모든 사람이 알파폴드에 어떻게 접근할 수 있는지, 그리고 생물학 커뮤니티가 이미 알파폴드를 이용하여 무엇을 할 수 있었는지에 대한 몇 가지 주요 사례를 제시하고, 마지막으로 알파폴드 단백질 상호 작용에 대한 간략한 내용으로 마무리하겠습니다.

자, 알파폴드가 어떻게 작동하는지 이야기해 보겠습니다. 이 섹션은 딥러닝에서의 귀납적 편향(inductive bias)에 대한 작은 일반적인 이야기로 시작하고 싶습니다. 귀납적 편향이란 우리가 구축하려는 아키텍처에 담고 싶은 문제 구조에 대해 이미 가지고 있는 개념을 의미합니다. 이러한 바람의 이유는 모델이 문제를 더 쉽게 추론할 수 있도록 하기 위함입니다. 모델이 문제의 모든 구조를 처음부터 파악할 필요 없이, 모델 자체에 그 구조를 내장하려고 시도할 수 있습니다.

이 점을 분명히 보여주는 네 가지 예시가 있습니다. 첫 번째는 컴퓨터 비전에서 매우 인기 있는 컨볼루션 신경망입니다. 이미지 데이터는 규칙적인 격자 구조로 되어 있으며, 컨볼루션에서 정보가 지역 이웃에서 지역 이웃으로 흐르는 아키텍처를 구축할 때 이러한 구조를 활용합니다.

다음 귀납적 편향은 그래프 신경망에서 사용되는 것으로, 문제의 고정된 그래프 구조를 이미 알고 있는 경우에 해당합니다. 예를 들어 추천 시스템이나 작은 분자에 대한 머신러닝에서 그렇습니다. 이러한 경우 문제의 고정된 그래프 구조를 모델에 내장하려고 시도하며, 이러한 유형의 아키텍처에서 정보는 이러한 고정된 엣지를 따라 흐를 수 있습니다.

언어 응용 분야에서 인기 있는 순환 신경망에서는 데이터가 일반적으로 순서가 있는 시퀀스이며, 이는 정보가 왼쪽에서 오른쪽으로만 흐를 수 있는 아키텍처에 반영됩니다.

그리고 비교적 최근에 매우 인기 있는 모듈이 진화했는데, 바로 주의 메커니즘입니다. 이는 언어 응용 분야에서 시작되었지만, 일반성 때문에 다른 분야에서도 점점 더 많이 사용되고 있습니다. 이러한 유형의 모델에서는 데이터가 본질적으로 순서가 없는 집합으로 간주되어, 집합의 각 점이 다른 모든 점과 통신할 수 있습니다. 이 정보 흐름은 학습된 키와 쿼리에 의해 신경망에 의해 동적으로 제어됩니다. 이것은 저희가 알파폴드 2에 넣은 귀납적 편향 중 하나입니다. 다른 여러 가지가 있으며, 다음 몇 슬라이드에서 저희가 정확히 어떻게 그렇게 했는지 자세히 설명하겠습니다.

음, 지금 질문을 받나요? 아니면 계속 진행하나요? 좋습니다. 발표 후에 기꺼이 질문을 받겠습니다. 감사합니다.

음, 단백질 지식을 모델에 넣는 방법은 정확히 이러한 귀납적 편향을 통해서입니다. 이는 하드 코딩된 것은 아니지만, 여전히 모델에 일종의 부드러운 방식으로 내재되어 있습니다. 저희가 이 경우에 하고 싶었던 것은 물리적 및 기하학적 통찰력을 모델에 넣는 것이었습니다. 모델 주변의 프로세스로서가 아니라, 아키텍처 자체에 넣고 싶었습니다.

그래서 저희가 한 일 중 하나는 아미노산의 순차적 순서를 덜 강조한 것입니다. 단백질 내에서 어떤 잔기든 어떤 아미노산과도 상호 작용할 수 있다는 점을 반영하기 위해서입니다. 이는 본질적으로 단백질 구조의 그래프 구조를 추론하고 싶기 때문입니다. 어떤 잔기가 공간적으로 가까운지 추론하고, 그 그래프를 반복적으로 구축하면서 추론하는 것입니다. 다음 슬라이드에서 정확히 어떻게 이를 달성했는지 더 자세히 설명드리겠습니다. 하지만 이것이 더 높은 수준의 목표였습니다.

또 다른 매우 중요한 점은 저희 모델이 진화적으로 관련된 서열에 크게 의존한다는 것입니다. 이것은 매우 중요한 점이므로, 왜 도움이 되는지, 왜 단백질 구조 예측에 정말 도움이 되는지에 대한 직관을 드리기 위해 두 슬라이드를 할애했습니다.

예를 들어 구조를 예측하고 싶은 아미노산 서열부터 시작해 보겠습니다. 본질적으로 접힘 과정을 수행하고, 그 서열의 최종적인 모든 원자 구조를 만들어내는 것은 물리학입니다.

종이나 유기체의 진화 역사 전반에 걸쳐, 진화는 서열을 변이시키면서 기능을 선택합니다. 기능이 보존되고 서열이 변이될 때, 이는 일반적으로 동일한 기능을 수행하기 위해 구조가 동일하지는 않더라도 매우 유사해야 함을 의미합니다.

따라서 진화적으로 관련된 서열 스택이 주어지면, 계산적으로 구조를 추론하려고 시도할 수 있습니다. 이것이 알파폴드 2의 근본적인 원리이며, 서열 스택이 구조 공간에서의 거리에 대해 알려줄 수 있다는 사실을 이용합니다.

앞서 말씀드렸듯이, 이 점을 더 분명히 하기 위해 두 번째 슬라이드를 준비했습니다. 다시, 구조를 예측하고 싶은 서열부터 시작하여, 유전체 데이터베이스 검색을 수행할 수 있습니다. 예를 들어, 그림에서처럼 여러 종에서 유사한 서열을 찾을 수 있습니다. 이러한 서열 스택을 다중 서열 정렬(MSA)이라고 합니다.

이제 직관을 설명드리겠습니다. 본질적으로 서열에서 공진화하는 열, 즉 공진화하는 위치가 있을 때, 이는 일반적으로 이러한 잔기가 접촉하고 있음을 의미하며, 이는 구조 예측에서 매우 귀중한 정보입니다. 직관은 다음과 같습니다. 전하 결합을 생각해 보면, 단일 전하를 반대 전하로 변이시키면 그 결합은 끊어질 것입니다. 따라서 이 결합은 변이 변화 전반에 걸쳐 유지되려면 양쪽 모두 함께 변해야 합니다. 이것이 MSA 스택에서 저희가 공진화라고 부르는 상관관계로부터 얻는 단서입니다.

반대로, 그 스택에서 아미노산 위치, 즉 열이 보존되어 있다면, 이는 일반적으로 단백질의 외부 또는 내부에 있는 위치임을 의미합니다. 소수성 아미노산은 구조의 핵심에 있는 경향이 있고, 친수성 아미노산은 물을 좋아하는 아미노산이므로, 단백질이 일반적으로 물에 둘러싸여 있기 때문에 외부에 있는 경향이 있기 때문입니다.

이 모든 것은 구조를 예측하려고 할 때 매우 귀중한 정보입니다.

이제 알파폴드가 아키텍처적으로 어떻게 작동하는지 설명하고, 알파폴드가 받는 입력에 대해 이야기하는 것으로 시작하겠습니다.

이미 말씀드렸듯이, 명백히 대상 서열 자체와 유전체 데이터베이스 검색을 통해 얻는 MSA 스택이 있습니다. 모델에 대한 세 번째 입력은 입력 서열의 외부 곱(outer product)의 일종이며, 이는 모델이 해당 서열의 각 아미노산 간의 쌍별 관계에 대해 명시적으로 추론할 수 있는 쌍별 표현을 시작합니다.

그리고 네 번째 가능한 입력으로 구조 템플릿이라고 불리는 것이 있습니다. 이는 이미 알려진 구조로서, 아마도 현재 추론하고 있는 구조와 유사하다고 생각되는 구조입니다. 이것은 새로운 아이디어가 아닙니다. 이전에도 단백질 구조 예측을 위해 사람들이 사용했던 방법입니다.

알파폴드 예측 해석 및 활용

알파폴드가 생성하는 신뢰도 예측 중 하나는 예측 LDDT (predicted Local Distance Difference Test) 라고 불립니다. LDDT 자체의 정확한 의미는 중요하지 않지만, 기본적으로 구조적 일치에 대한 국소적 지표이며, 값이 높을수록 더 좋습니다. 저희는 네트워크가 훈련 중에 만드는 LDDT 오류를 예측하는 작은 헤드를 훈련시켰고, 새로운 사례가 주어지면 네트워크가 이 새로운 서열에 대해 예측하는 오류를 확인할 수 있습니다. 이는 생물학자들이 언제 알파폴드 구조를 신뢰해야 하는지, 언제 신뢰하지 않아야 하는지를 알려주기 때문에 이미 매우 유용하게 활용되고 있습니다.

LDDT 값이 50 미만일 경우, 일반적으로 주사슬 예측은 신뢰하기 어렵다고 판단합니다. 다만, LDDT 값이 50 미만인 예측이 실제 무질서한 영역에 해당할 수도 있다는 점을 유념해야 합니다. 단백질은 실제로 부분적으로나마 명확한 구조를 갖지 않는 무질서한 영역을 가질 수 있습니다. 현재까지 저희는 실제 무질서 영역과 LDDT 값 50 미만의 예측 사이에 높은 상관관계를 발견했습니다. 따라서 LDDT 값이 50 미만이면 구조를 신뢰하지 않아야 하지만, 이는 실제로 구조를 갖지 않는 영역일 수도 있다는 의미이기도 하므로 매우 흥미롭습니다.

LDDT 값이 70 이상이면 일반적으로 주사슬 예측을 활용할 수 있지만, 해당 영역의 곁사슬은 신뢰하기 어려울 수 있습니다. 따라서 70 이상이면 좋은 예측이지만, 곁사슬은 정확하지 않을 수 있습니다.

오른쪽 그림에서 넓은 부분이 짙은 파란색으로 칠해진 다른 예측을 볼 수 있는데, 이는 LDDT 값이 90 이상에 해당합니다. 이러한 영역에서는 곁사슬까지 조사하는 것이 합리적이라고 판단합니다. 알파폴드는 종종 1 옹스트롬보다 나은 원자 수준의 정확도를 달성하며, 이는 곁사슬을 활용하여 작은 분자의 도킹 등을 수행할 수 있을 정도로 매우 좋은 정확도입니다.

하지만 예측 LDDT에는 중요한 단점이 있습니다. 앞서 말씀드렸듯이, 정확도에 대한 국소적인 평가를 제공하지만, 상대적인 오류에 대해서는 아무것도 알려주지 않습니다. 이 슬라이드 중앙에 있는 단백질은 본질적으로 도메인이라고 불리는 두 개의 하위 단위로 구성되어 있으며, 작은 링커로 연결되어 있습니다. 이러한 도메인 자체는 강체이지만, 서로에 대해 움직일 수 있습니다. 따라서 이 경우 개별 도메인은 매우 신뢰할 수 있지만, 공간에서 서로에 대해 어떻게 위치하는지는 신뢰할 수 없을 가능성이 높습니다.

이러한 상대적인 오류를 파악하고 정량적으로 평가하기 위해 저희는 예측 정렬 오류 (Predicted Aligned Error) 라는 두 번째 오류 예측 방법을 개발했습니다. 이는 잔기 y가 실제 구조에 정렬되었을 때 잔기 x의 위치 오류를 측정하는 방식입니다. 저희가 예측하려는 오류가 바로 이것입니다.

다시, 이 두 도메인으로 구성된 동일한 단백질에 대해 예측 정렬 오류를 보여줍니다. 오른쪽의 쌍별 행렬이 바로 예측 정렬 오류입니다. 설명을 다시 해야 할 것 같습니다. 제대로 설명하지 못한 것 같습니다. 이 행렬에서 임의의 위치 (i, j)에 주어진 오류는 잔기 i의 기준 프레임에 정렬되었을 때 잔기 j의 오류입니다.

이 경우 오류는 정말 유용하고 의미가 있습니다. 대각선에 있는 두 개의 짙은 녹색 사각형은 이 단백질의 두 도메인에 해당하며, 알파폴드는 본질적으로 이 도메인을 신뢰할 수 있다고 알려줍니다. 이 사각형 내의 상대적인 오류는 매우 낮고, 기본적으로 강체이며, 예측이 정말 좋은 부분입니다. 하지만 대각선에서 벗어난 두 개의 흰색 사각형은 알파폴드가 이 두 도메인이 서로에 대해 어떻게 위치하는지 신뢰하지 말라고 알려주는 부분입니다. 이는 이러한 구조를 활용하려는 생물학자들에게 다시 한번 매우 유용한 정보입니다.

알파폴드 접근 방법

알파폴드에 접근할 수 있는 방법을 간략히 설명드리겠습니다.

저희가 발표한 또 다른 결과물은 알파폴드 단백질 구조 데이터베이스 (AlphaFold Protein Structure Database) 입니다. 이는 EMBL-EBI와 딥마인드가 공동으로 개발하고 호스팅하는 웹사이트입니다. 초기에는 20개의 모델 유기체와 전체 인간 단백질체에 대한 알파폴드 예측 구조, 약 35만 개의 구조를 제공했습니다. 올해 1월 이후에는 27개의 다른 모델 유기체로 확장되어 19만 개의 구조가 추가되었습니다. 그리고 올해 안에 UniRef라는 서열 데이터 세트에 대한 예측 구조, 이 경우에는 1억 개의 구조를 공개할 예정입니다. 이는 현재까지 알려진 모든 서열에 거의 근접하는 규모입니다.

구조 데이터베이스를 확인해 보시기를 권장하며, 구조들을 대량으로 다운로드할 수도 있습니다. 또한 앞서 말씀드린 불확실성 추정치도 함께 제공되므로, 전체 인간 단백질체를 포함하여 이전에는 이용할 수 없었던 구조들을 실제로 활용할 수 있습니다.

알파폴드에 접근하는 또 다른 방법은 알파폴드 Colab 을 이용하는 것입니다. Colab은 미리 작성된 파이썬 프로그램 (이 경우 알파폴드)을 호스팅하는 웹사이트입니다. 이는 클라우드 (일반적으로 Google Cloud)에서 실행되며, 일반적으로 Google GPU를 기반으로 합니다. 따라서 아미노산 서열을 입력하고 웹사이트의 단계를 따라가기만 하면 되는 거의 플러그 앤 플레이 방식입니다. 예측에 걸리는 시간은 서열 길이에 따라 다르며, 예측된 구조와 함께 앞서 설명드린 신뢰도 추정치도 얻을 수 있어 자유롭게 사용할 수 있습니다.

세 번째 방법은 전체 코드와 가중치를 완전히 오픈 소스 로 공개했다는 것입니다. 따라서 알파폴드를 다운로드하여 원하는 대로 사용할 수 있습니다. 또한 Docker 컨테이너도 제공되어 더욱 쉽게 실행할 수 있으니, 관심 있으신 분들은 저희 GitHub 페이지를 확인해 보시기 바랍니다.

생물학 커뮤니티의 알파폴드 활용 사례

이제 생물학 커뮤니티가 이미 알파폴드를 어떻게 활용하고 있는지 살펴보겠습니다.

일반적으로 저희 팀은 트위터를 매우 주의 깊게 지켜보고 있습니다. 아마 많은 분들이 아시다시피, 요즘 과학은 트위터에서 가장 빠른 속도로 활발하게 이루어지고 있습니다. 매우 즉각적인 피드백을 얻을 수 있으며, 커뮤니티의 생각과 알파폴드를 기반으로 즉시 확장하고 발전시키는 모습을 보는 것은 정말 흥미로웠습니다.

초기에 일어난 중요한 일 중 하나는 알파폴드가 기존 도구에 통합되었다는 것입니다. 이는 구조 생물학 커뮤니티와 같은 사용자들에게 이미 익숙한 도구 내에서 알파폴드를 더 쉽게 사용할 수 있도록 했기 때문에 매우 긍정적인 변화였습니다.

또한, Colab을 확장하여 약간 다른 기능을 수행할 수 있는 다양한 버전들이 등장했습니다. 이는 이 연구의 영향력을 더욱 넓히는 데 매우 큰 도움이 되었습니다.

흥미로운 점은 알파폴드가 실험적 구조 결정 속도를 가속화했다는 것입니다. 예측 구조를 만드는 것이 목표였기 때문에 다소 역설적으로 보일 수 있지만, 저희의 예측 구조가 실험적 구조 결정에 도움이 될 수 있는 이유는 X선 결정학 실험 등에서 얻는 데이터가 불완전하기 때문에 그 데이터에 맞는 초기 모델이 필요하기 때문입니다. 알파폴드는 좋은 초기 모델이 없었던 특히 어려운 경우에 도움을 줄 수 있었습니다. 실제로 10년 동안 실험 데이터를 가지고 있었지만 구조를 얻지 못했던 경우에 알파폴드가 구조를 해결하는 데 도움을 주었습니다. 이 모든 것은 매우 흥미롭고 놀라운 일이었습니다.

앞서 언급했듯이 단백질은 고유하게 무질서한 영역을 가질 수 있어 명확한 구조를 갖지 못할 수 있습니다. 알파폴드는 이러한 무질서한 영역을 명시적으로 훈련하지 않았음에도 불구하고, 기존의 최고 성능 방법과 적어도 동등한 수준의 무질서 예측 성능을 보이는 것으로 외부 연구에서 밝혀졌습니다. 기본적으로 LDDT 값만으로 비구조화된 영역을 매우 잘 판별할 수 있습니다.

현재 수십만 개의 구조를 포함하는 알파폴드 데이터베이스를 통해, 연구자들은 이미 데이터베이스 내의 다양한 속성을 분석하고 정보를 추출하는 대규모 데이터 분석을 시작했습니다. 앞으로 이러한 종류의 연구가 훨씬 더 많이 나올 것이라고 생각하며, 이는 매우 흥미로운 일입니다.

마지막으로, 개인적으로 가장 인상 깊었던 연구 중 하나는 500개 이상의 단백질로 구성된 거대한 단백질 복합체, 핵공 (nuclear pore)을 모델링하는 데 알파폴드 예측을 사용한 연구입니다. 핵공은 세포막에 있는 구멍입니다. 이는 제가 알기로 실험적으로 확인된 가장 큰 단백질 복합체이며, 알파폴드는 이 경우 단백질들이 핵공에 정확히 어떻게 들어맞는지 조립하는 데 사용되었습니다. 실험적으로 얻은 데이터는 이 퍼즐을 푸는 데 두 개의 핵심 조각과 같았고, 알파폴드가 나머지 조각을 맞추는 데 기여했습니다. 이 거대한 복합체의 통합 모델링에 알파폴드가 사용된 것은 정말 훌륭한 연구였습니다.

단백질 상호 작용 및 복합체 예측

마지막으로, 알파폴드가 단백질 상호 작용 및 단백질 복합체 예측에 어떻게 사용될 수 있는지 간략하게 말씀드리겠습니다. 매우 흥미롭게도 모델 공개 후 불과 2~3주 만에 외부 연구자들은 알파폴드를 해킹하여 두 개의 단백질 사슬의 구조를 예측할 수 있다는 것을 발견했습니다. 알파폴드는 원래 단일 사슬의 구조만 예측하도록 훈련되었지만, 단백질은 종종 다른 단백질과 접촉하여 단백질 복합체를 형성합니다.

연구자들은 저희가 예상하지 못했던 방식으로 알파폴드를 해킹했습니다. 예를 들어, 어두운 색으로 표시된 중앙 부분에서 두 개의 사슬 사이에 글라이신 링커를 사용했습니다. 글라이신은 일반적으로 유연한 루프를 형성하는 아미노산이므로 구조에 크게 기여하지 않습니다. 따라서 그들은 이러한 루프형 링커를 삽입하여 시스템이 두 서열을 하나로 인식하도록 속였습니다. 그 결과 모델은 훈련되지 않았음에도 불구하고 접촉하고 있는 두 단백질의 구조를 완벽하게 예측했습니다. 또 다른 해킹 방법은 모델에게 서열 내 잔기의 절대적인 위치를 알려주는 것이었습니다. 두 서열 조각이 주어진 위치 임베딩을 통해 더 멀리 떨어져 있다고 알파폴드에게 알려주면, 알파폴드는 그것들을 하나의 사슬인 것처럼 접지만, 실제로는 두 개의 개별 사슬로 처리합니다. 연구자들은 이 방법을 이용하여 두 개의 사슬을 접었습니다. 즉, 알파폴드가 그것을 하나의 사슬로 생각하도록 속인 것입니다. 이는 매우 흥미로운 발견이었습니다.

물론 그동안 저희는 이 문제에 특화된 시스템을 이미 개발하고 있었습니다. 이는 다양한 아키텍처 및 훈련 방식의 변경을 포함하며, 다중 사슬 경우에 특화되어 훈련되었습니다. 그 결과도 이미 발표되었으며, 커뮤니티에서 사용되는 Stock-Q 점수 측면에서 기존 방법보다 우수하며, 해킹된 알파폴드 버전보다 훨씬 뛰어난 성능을 보입니다. 이 시스템 또한 오픈 소스로 제공되며, 예를 들어 Colab도 확장되어 이제 두 개 이상의 서열 구조 예측도 가능합니다.

향후 연구 방향

마지막으로 향후 연구 방향을 간략하게 말씀드리겠습니다. 구조 생물학 분야에는 물론 앞으로도 많은 흥미로운 연구가 기다리고 있습니다. 알파폴드가 이 분야의 모든 문제를 해결한 것은 결코 아닙니다. 아직 해야 할 일이 많습니다. 그중 하나는 복잡한 복합체의 구조 예측입니다. 알파폴드 Multimer가 저희의 현재 제안이지만, 완전히 신뢰할 수 있게 되려면 아직 더 발전해야 합니다. 무질서 영역 예측 또한 해결되지 않은 중요한 문제입니다. 또한, 단백질은 실제로 매우 역동적인 존재이지만, 저희는 지금까지 그것들을 정적인 것으로 취급했습니다. 따라서 단백질이 어떻게 역동적으로 모양을 바꾸는지 이해하는 것은 중요한 연구 주제입니다. 그리고 매우 흥미로운 또 다른 주제는 단일 돌연변이 또는 점 돌연변이라고 불리는 것입니다. 서열에 변화를 주고 그것이 구조에 어떤 영향을 미치는지 확인하는 것입니다. 불행히도 현재 버전의 알파폴드에서는 이것이 신뢰할 수 없습니다. 따라서 점 돌연변이를 정확하게 모델링하기 위해서는 더 많은 연구가 필요합니다.

그리고 앞서 말씀드렸듯이, 다른 연구자들이 알파폴드 데이터베이스를 기반으로 무엇을 구축할지 매우 기대하고 있습니다. 그 데이터베이스를 면밀히 분석하면 앞으로도 많은 결과가 나올 것이라고 생각하며, 이는 매우 흥미로운 일입니다.

일반적으로 과학 분야의 AI에 대한 저의 개인적인 생각을 말씀드리면, 과학 문제를 위한 고도로 최적화된 머신러닝 시스템을 구축하는 데 엄청난 잠재력이 있다고 생각합니다. 이더폴드는 이미 존재하는 많은 시스템 중 하나일 뿐이며, 앞으로 더 많은 시스템이 등장할 것입니다. 이러한 특화된 머신러닝 시스템을 통해 많은 획기적인 발전이 있을 것이라고 생각합니다. 그리고 그러한 맥락에서 AI는 과학자들이 육안이나 수작업으로는 이해할 수 없었던 방대한 양의 데이터를 더 잘 이해하는 데 정말 큰 도움을 줄 수 있습니다. 이것이 바로 이러한 시스템의 큰 이점입니다.

이것으로 저의 발표를 마치겠습니다. 경청해 주셔서 감사합니다. 그리고 이 연구는 저 혼자만의 노력이 아니라 15명으로 구성된 팀의 일원으로서 수행되었으며, 딥마인드 내에도 훨씬 더 큰 팀이 이 연구에 기여하고 협력했다는 점을 강조하고 싶습니다. 그분들께 감사를 드립니다. 이제 질문과 답변 시간으로 넘어가겠습니다.