Physics and Informatics

인공지능은 물리학를 학습할 수 있을까?

Novelism 2022. 8. 3. 22:11

 

 과학은 현실을 다루는 학문입니다. 

 여기서 말하는 현실이란, 우리가 살고 있는, 즉, 관찰자인 우리 자신이 있고, 관찰자에게 측정된 사실들로 이루어진 세계입니다. 

 과학은 논리의 학문이지만, 논리만으로 성립하지 않습니다. 실험 혹은 측정은 과학에서 가장 중요한 요소입니다. 

다른 말로 과학이란 관측한 현상들을 논리적으로 설명하는 학문이라고 할 수 있습니다. 

과학에선 기본적으로 우리가 살고 있는 세상이 논리적이라고 가정합니다.

어떠한 가정이 현실 세계에서 참이라면, 그 가정으로부터 논리적으로 전개되는 결과도 현실세계에서 참이어야 한다는 것입니다.

예를 들면, 아인슈타인의 특수 상대성 이론은 진공에서의 광속이 일정하다는 것과, 상대성 원리라는 두 가지 가정으로부터 논리적으로 유도됩니다. 만약 우리가 살고 있는 세계에서 저 가정이 참이라면, 상대성 이론도 참이어야 합니다. 

 

과학이 철학이나 수학과 다른점은, 철학과 수학은 꼭 측정 가능한 현실 세계만을 다루지 않지만, 과학은 그중에서도 측정 가능한 현실 세계만을 다룬다는 점입니다. 

 과학의 발전은 측정된 데이터의 축적과 중요한 관계가 있습니다.

과학... 그중에서도 특히 물리학의 경우, 뉴턴은 고전 역학 (뉴턴 역학)의 창시자로 유명합니다. 

 뉴턴의 물리학은 주로 중력을 다룹니다. 중력에 의한 물체의 낙하, 투사체의 궤도, 천체의 움직임 등 우리가 현실에서 보고 느끼는 많은 현상에 중력이 관여합니다. 천체의 움직임과 사과의 낙하와 투사체의 운동이 동일하게 뉴턴의 역학 체계에서 중력으로 설명이 가능합니다. 단지 실험과 잘 맞는 수식을 만들거나, 예측을 할 뿐이 아닌, 근본 원리를 찾는다는 개념은 그 후로도 현재까지 물리학에선 원리를 찾는 것을 중요하게 여기고 있습니다. 하지만 이 원리를 찾기 위해선 많은 데이터가 필요했습니다. 뉴턴 이전에도 이미 천체의 움직임에 대한 연구는 매우 오래전... 고대 그리스 시대부터 진행되었고, 천동설도 주전원이 과도하게 도입되어 복잡하긴 해도, 나름 천체의 궤도를 잘 예측하였다고 합니다. 뉴턴이 역학을 발견하기 이전에도 행성의 궤도에 대한 케플러 법칙이 있었습니다. 아마도 티코 브라헤의 방대한 천체 관측 데이터가 없었다면 케플러 법칙이 등장하지 못했을 것입니다. 뉴턴 역학과 케플러 법칙을 비교하면, 케플러 법칙은 천체 궤도에 측정 데이터 대한 현상적인 설명을 제공하지만 원리까지 도달하진 못했고, 뉴턴은 천체 운동에 대한 원리를 찾았다고 할 수 있습니다. 

 케플러의 천문학에선 사과의 움직임과 천체의 움직임은 별 연관점이 없을 것입니다. 하지만 뉴턴이 찾은 원리는 중력과 운동 방정식으로 훨씬 다양한 현상들이 하나의 원리로 설명됨을 보였습니다. 그 후로 물리학자들은 원리, 즉 역학을 찾는 것이 기본 방향이 되었습니다.

 

 최근 10년 사이에 딥러닝이 상당히 크게 성장하고 있습니다. 이 딥러닝이 가능하게 된 원인 중 하나가 데이터의 축적입니다. 그런데, 딥러닝은 과학과는 다르다.라는 이야기를 많이 합니다. 

 사실 딥러닝에서의 학습과 예측은, 유사한 상황에서 유사한 결과가 나올 것이라는 가정하에, 각 상황과 결과에 대한 데이터에 대해 복잡한 모델(파라미터의 수가 상당히 많은)을 만들고 그 모델이 상황과 결과를 잘 만족시키도록 파라미터를 피팅한 것입니다.

 피팅이란, 간단히 말해서 포물체 궤도가 있을 때, y = ax^2 + bx + c 라는 식을 주고 포물체의 (x, y) 좌표 측정 결과를 몇 개 포인터에 대해 주어 준 후, 이 그래프가 측정된 점들과 잘 일치하도록  파라미터 a b c를 조절하는 것입니다.

 몇개의 점에 대한 측정 결과만 있어도, 다른 위치 x에서의 y값을 알 수 있습니다. 일종의 인터폴레이션이라고 할 수 있습니다. 

 다만 딥러닝은 이보다 훨씬 복잡한 수식과, 비선형 공간 변환도 사용하고 데이터 수가 훨씬 많다는 점에서 차이가 있습니다. 비선형 공간 변환을 통해서 단순한 인터폴레이션의 한계를 넘어섰습니다. 

 

우리는 투사체의 궤도에 대한 방정식을 잘 알고 있습니다. 하지만, 그것 자체는 원리라기보다는 현상을 측정한 결과를 단순히 설명한 것에 가깝습니다. 

 이렇게 본다면, 딥러닝은 원리를 이해하는 것이 아니라, 단순히 현상을 설명하는 케플러 법칙에 가까워 보입니다. 

하지만 케플러 법칙은 수학적으로 매우 단순함에 비해, 딥러닝은 모델이 훨씬 복잡합니다. 

 아마도 천체의 움직임만을 학습한 딥러닝 모델은, 천체의 움직임만을 예측할 것이고, 사과의 낙하나 투사체의 궤도를 학습한 딥러닝 모델은 투사체의 궤도만을 학습할 것입니다. 

만약 딥러닝이 물리학을 학습하였다고 말할 수 있으려면, 천체의 움직임과 투사체의 움직임을 함께 예측할 수 있어야 하거나, 그와 비견될만한 일반화된 무언가를 할 수 있어야 합니다.

 그런데 여기에  어떠한 정확한 기준이 있는 것은 아닙니다. 

다시 물리학으로 돌아가서, 뉴턴 역학은 미시세계나 광속에 근접한 물체에 대해선 잘 맞지 않습니다. 그래서 상대성 이론과 양자역학이 필요합니다. 모든 것을 하나의 이론으로 설명하는 것은 어디까지 가능한 것인지 아무도 알 수 없습니다. 이전 시대에는 모든 것이라 생각했던 것이, 후대엔 좁은 세계였고 그런 세계를 설명하는 역학 체계로 설명할 수 없는 세계가 나타날 수도 있습니다. 

 

 또다른 예시로 단백질 구조 예측 분자 세계에서의 물리학의 세계에 대해 이야기해볼 수 있습니다.

 사실 단백질 구조 예측은 기존까지 물리학으로 잘 해결하기 어려운 주제에 해당되었습니다. 미시 세계이니 양자역학이 필요하지만, 너무나도 입자수가 많고, 구조적인 복잡성이 높아서 양자역학으로 계산을 하기엔 불가능했습니다. 양자역학은 원자를 전자 궤도 단위 수준에서 분석합니다. 원자 하나에 전자가 하나만 있는 것도 아니죠. 아무튼 현실적으론 원자 하나를 더 이상 쪼개지 않고 원자 하나로 취급하는 형태로 force field라는 것을 만들어서 단백질의 원자들 사이의 상호작용을 기술하였습니다. 

 예를들면, 분자에서 특정 원자들 사이의 거리, 3 원자 사이의 각도, 4 원자 사이의 이면각에 따른 에너지 모델입니다. 적정 거리, 적정 각도일 때 에너지가 가장 낮고, 거기서 떨어질수록 에너지가 높아지는 것입니다. 

 그런데 그것도 여전히 계산량이 높고, 에너지 모델이 잘 맞지 않는 면이 있었습니다.

 그래서 실제로 단백질 구조 예측에선 생명정보학적인 접근방법이 활용되었습니다. 결국 기존에 알려진 측정 데이터를 최대한 활용하는 것인데, 유사한 구조를 가지는 단백질을 찾고, 그 구조를 본떠오거나, 특정 두 residue 사이의 거리를 (비 물리적인) 방법으로 예측한 후, 이를 force field에 추가하는 것이었습니다.

 사실 이런 정보학적인 접근방법은, 인공지능과 연결되기 매우 적합합니다. 이미 알파폴드가 나오기 전... 대충 00년 근처부터도 단백질 구조 예측에 머신러닝을 활용하고 있었습니다. 

 그런데, 비 물리적인 정보를 예측하는 것과, 물리적인 정보를 예측하는 것은 차이가 있을 것입니다. 예를 들면, residue 사이의 거리를 예측할 때는 correlated mutation (혹은 coevolutionary information)이라는 생물학적인 진화 정보를 활용하는데, 이는 물리학적인 것은 아닙니다.  

많은 실험 구조들로부터  특정 원자 사이의 적절한 결합 거리, 세 원자 사이의 적절한 결합각 등을 데이터로부터 학습하는 것도 가능한데, 이런 것들은 물리학에 가깝습니다. Inverse Boltzmann law, Potential of mean force, (PFM) 같은 방법도 있고...

 

 다만 이것은 현상적인 것이고, 역학 혹은 원리를 학습한 것이라 하긴 어려울 것 같습니다. 일반화된 무언가를 학습하는 것이 아니라, 개개의 많은 개별 사례에 대한 피팅에 가깝기 때문입니다. 뭐 여하튼 유용하다는 것은 부정할 수 없지만... 

 

 사실 피팅에는 오버 피팅이라는 불안요소가 있습니다. 학습된 데이터들과 유사한 데이터에 대해선 잘 맞지만, 그 이외의 영역에 대해선 영 엉뚱한 결과를 내놓는 것입니다. 인터폴레이션은 되지만, 엑스트라 폴레이션은 안 되는 것입니다. 천체의 움직임을 학습한 모델이 사과의 궤도를 엉뚱하게 예측하는 것입니다. 뭐 이건 물리학에서도 있을 수 있는 일이기에... 굳이 뭐라 말하기가 어렵군요.