2010년대 중반쯤부터, GPU의 성능 향상 및 여러 테크닉의 등장으로 인해 기계학습(Machine Learning)의 성능이 비약적으로 향상되었다. 이미지 인식, 자연어 처리 등의 챌린지에서 기존의 성과 대비 수 배, 혹은 수십 배의 성능을 보이는 알고리즘들이 등장하면서, 기계학습(그중에서도 특히 인공신경망, Neural network)은 컴퓨터 과학 분야뿐 아니라 다른 과학 분야에서도 관심을 갖는 유용한 도구가 되었다. 재료공학의 경우도 예외가 아닌데, 많은 연구자가 새로운 재료 설계 및 특성 예측, 새로운 나노 구조 디자인 등의 다양한 분야에 기계학습을 활용하고 있다. 이러한 연구들 역시 최근 주목받고 있는 흥미로운 주제들이지만, 이들에 대해서는 좀 더 이후의 포스팅에서 살펴보기로 하고, 본 포스팅에서는 지난 포스팅에 이어 시간에 따른 재료의 움직임을 시뮬레이션하는 분자동역학 방법론에서 기존에 주로 사용되었던 Classical Force Field 및 제일원리 계산의 한계를 극복하는 방법의 하나로 사용된 기계학습 알고리즘인 기계학습 Force Field(Machine Learning Force Field, MLFF)에 대해 다루도록 하겠다.
이전 포스팅에서 Classical Force Field의 장단점에 대해 논의했던 것을 기억하고 있는가? Classical Force Field는 재료의 에너지를 계산하는 과정이 원자 단위, 상호작용 단위로 분리되어 있기 때문에 병렬화가 용이하고, 재료의 수에 비례해서 계산량이 증가하기 때문에 재료의 전자 수의 세제곱에 비례해서 계산량이 증가하는 제일원리 계산에 비해 속도 측면에서 이점이 있다. 하지만 Classical Force Field의 수식은 Bottom-up 방식으로 제작되기 때문에 실제 재료의 특성을 정확하게 모사하기 어려워 오차가 심하다는 단점이 있다. 그렇다면, 이러한 Classical Force Field의 단점을 극복하려면 어떻게 하면 될까? 장점 부분을 유지하면서 단점 부분을 수정하면 될 것이다. 여기서 등장하는 것이 바로 기계학습이다. 기계학습이라는 분야에 익숙하지 않은 사람들이라면 왜 여기서 기계학습이 나오는지 의아할 수 있겠다. 일반적으로 생각하는 기계학습은 사진에 등장하는 동물이 강아지인지 고양이인지를 구분하거나, 혹은 자동응답 채팅 봇을 만드는 등으로 활용되니 재료공학과는 관련이 없어 보이기 때문이다. 하지만, 수학적으로 볼 경우 기계학습은 주어진 데이터를 기준으로 이에 맞는 함수를 만들어내는 알고리즘이다. 예를 들어, 사진에 등장하는 동물을 구분하는 기계학습 모델이라면 사진을 좌표 공간상에 배치(Mapping)하고 강아지에 해당하는 점과 고양이에 해당하는 점을 구분할 수 있는 함수를 최적화하는 알고리즘이라는 뜻이다. 이제 다시 Classical Force Field의 단점으로 돌아가 보자. Classical Force Field의 단점은 Bottom-up 방식으로 만든 '수식', 즉 '함수'에 있다고 하지 않았던가? 그렇다면 우리가 기계학습을 활용해서 더 정확한 함수를 만들 수 있다면 Classical Force Field의 장점은 유지하면서 단점을 개선할 수 있지 않을까? 그런데 방금 필자는 기계학습에 대해 '주어진 데이터를 기준으로' 이에 맞는 함수를 만들어내는 알고리즘이라고 표현했다. 따라서, 기계학습의 성능은 '데이터'에 의존한다는 의미일 것이다. 즉, 우리는 Classical Force Field를 대체할 수 있는 기계학습 모델을 만들기 위해 정확한 데이터가 필요한데, 정확한 데이터 하면 무언가가 떠오르지 않는가? 맞다. 제일원리 계산이다. 우리가 알고 있는 정확한 계산 방법인 제일원리 계산을 통해 얻은 결과를 바탕으로 기계학습 모델을 만들 경우, 이론적으로는 기계학습과 동등한 정확도를 갖는 함수를 만들 수 있다! 그리고 이 함수를 Classical Force Field 대신 사용할 경우 계산 속도는 여전히 빠르지만 계산의 정확도는 제일원리 계산 수준이 된다. 이러한 일련의 과정을 통해 MLFF의 큰 틀이 고안되었다. 그리고 실질적으로 활용할 만한 MLFF 모델이 개발되었는데, 다양한 종류의 모델이 있지만 그중에서도 가장 대표적인 두 가지 모델로는 Albert Bartók-Pártay의 Gaussian Approximation Potential(GAP)과 Jurg Behler의 Neural Network Potential(NNP)가 있다. 두 방법은 사용하는 기계학습 알고리즘이 조금 다른데, GAP의 경우 Gaussian Process라는 알고리즘을, NNP의 경우 Neural Network라는 알고리즘을 주로 사용한다. 최근 기계학습 연구에서 가장 활발하게 연구되고 있는 알고리즘은 인공신경망(Neural Network)인 만큼 NNP에 대한 후속 연구가 많지만, GAP 역시 나름의 장점이 있기 때문에 제일원리 계산 관련 상용 프로그램에 도입될 정도로 인정받고 있다.
이렇게 이번 포스팅에서는 MLFF가 개발된 과정에 대해 간단하게 설명하였다. 잘 살펴보면 기계학습이라는 새로운 도구를 활용하여 Classical Force Field의 단점을 극복해나가는 과정이 상당히 깔끔하게 전개되는 것을 확인할 수 있는데, 공학 연구에서는 이렇게 기존 방법의 단점을 새로운 방법으로 개선해 나가는 방법을 종종 사용하므로 다른 연구를 볼 때도 이런 점에 관심을 가지면 좋을 것이다. 다음 포스팅에서는 MLFF의 정확한 알고리즘에 대해 조금 더 자세히 알아보도록 하겠다.
'과학 > 재료공학' 카테고리의 다른 글
Gaussian Process 소개 및 장단점 (0) | 2022.06.21 |
---|---|
기계학습 포텐셜(Machine Learning Potential, MLP)의 대표 알고리즘, Gaussian Approximation Potential(GAP), Neural Network Potential(NNP)의 공통점 소개 (0) | 2022.06.19 |
분자동역학의 응용 분야 및 한계 (0) | 2022.06.18 |
분자동역학 소개 (0) | 2022.06.17 |
제일원리 계산 알고리즘, 응용 및 한계 (0) | 2022.06.16 |
댓글