alt

LLM과 화학정보학

Shared on March 12, 2026

08:05:45

안녕하세요 여러분 한림대학교 소프트웨어 최종환 교수입니다. 오늘은 여러분과 함께 LLM과 화학정보학이라는 주제로 한번 이야기를 나눠보도록 하겠습니다.

08:06:35

여러분들은 혹시 채취피티나 제미나이 같은 AI 서비스를 사용해보신 분은 계신가요? 아마 대부분 한 번쯤은 써보셨을 거라고 생각합니다. 그런데 이런 AI가 단순히 숙제를 도와주는 수준을 넘어서 실제로 새로운 약을 만들어내는데 활용되고 있다면 혹시 믿겨지시는지 모르겠습니다. 오늘 강의에서는 여러분이 앞으로 배울 소프트웨어 AI 기술이 어떻게 실제 과학연구, 특히 신약개발이라는 인류적 과제에 적용되고 있는지를 그거를 한번 살펴보도록 하겠습니다. 감사합니다.

08:07:18

먼저 LLM, 즉 대규모 언어 모델이라는 것이 무엇인지부터 한번 이야기해 보도록 합시다. 여러분들이 사용하는 제미나이, 채찌피티와 같은 서비스가 사람처럼 자연스럽게 대화하고 복잡한 질문의 맥락까지 파악할 수 있는 이유는 무엇이라고 생각하나요? 비유를 한번 들어봅시다. 학창시절, 즉 지금이 아니라 예전에 만약에 이미 수만 권의 책을 머릿속에 다 집어넣어서 박학다식해진 천재가 있다고 생각해 봅시다. 그런 천재가 있다고 한다면 아마 어떤 분야에 대해서 질문을 하더라도 척척 대답을 할 수 있을 겁니다. LLM이라고 하는 것은 바로 그런 존재라고 우리가 생각할 수 있습니다.

08:07:52

수조계의 문장, 수천권, 수만권, 셀 수 없을 정도의 많은 지식을 이미 읽은 상태이고 그 지식으로부터 언어의 규칙, 세상에 알려져 있는 그런 것들을 자기 것으로 만든 것 그것이 바로 AI의 기본 뇌라고 불리는 대규모 언어모델 LLM이라고 하는 존재입니다 LLM이 아무리 천재라 해도 한계는 분명히 있습니다 LLM의 한계는 크게 두 가지가 있습니다 첫 번째는 정적 학습의 한계입니다 LLM은 학습이 끝난 시점까지의 데이터만 알고 있습니다

08:08:24

이게 무슨 말인가 하면 LLM이라는 것이 방대한 지식을 학습하는 것이 단 수초만에 끝나는 것이 아니라 어떤 시간에, 오랜 시간에 걸쳐야지만 이루어질 수 있는 작업입니다. 그러다 보니까 그 작업이 시작된 시점부터는 이제 학습이라는 것을 하지 않고 오로지 그 시점에 이전에 있었던 정보들만 LLM이 기억을 할 수가 있습니다. 그러다 보니까 그 학습 시점 이후에 예를 들어서 막 어제 발표된 네이처 논문을 요약해달라고 한다면은 이 LLM은

08:08:55

어제 발표된 논문이 무엇인지를 전혀 모르기 때문에 얘가 어떤 우리가 원하는 적절한 대답을 해줄 수가 없습니다. 이렇게 특정 시점을 기준으로 지식이 끊겨있는 거, 알지 못하는 이러한 현상을 논리지 컷 오프, 지식 단절이라고 하는 첫 번째의 한계점이 LLM은 갖고 있습니다. 근데 이 첫 번째보다 더 심각한 것이 바로 두 번째, 할루시네이션이라고 하는 환각 현상입니다. LLM이 마치 모르는 것을 아는 것입니다.

08:09:32

아는 것처럼 대답을 하는 것을 우리는 환각현상, 할루시네이션이라고 이야기를 하는데요. 앞서 이야기했던 것처럼 LLM은 지식 단절로 인해가지고 모르는 지식이라고 하는 것이 분명히 존재합니다. 그런데 그 모르는 지식에 대해서 질문을 받게 되면 얘가 모른다라고 대답을 해주면 차라리 괜찮은데 그것을 모른다고 하지 않고 뭔가 그럴듯하게 거짓말을 하는 경우가 종종 존재합니다. 그런데 그 거짓말이 막 서투른 거짓말도 아니고 완벽해 보이는 논리로 포장이 되어 있어서 일반적인 사람은 그것을 판단하기가 굉장히 어렵습니다.

08:10:09

사실관계가 완전히 틀린 답변이기 때문에 이러한 답변을 가지고서 일상적인 대화에서는 크게 문제가 되진 않을 수는 있으나 우리같이 과학 연구를 하려는 사람들한테는 굉장히 치명적인 문제로서 다가오게 됩니다. 과학은 잘못된 정보가 아니라 올바르게 누구나 알고 있는 객관적인 지식에 기반해서 어떤 의사결정, 결과를 내야 되는데 LLM이 만약에 할루시네이션을 일으켰고 그 할루시네이션에 기반해서 우리가 어떤 의사결정을 하게 된다면 그 결과는 매우 매우 끔찍한 결과를 초래할 수가 있습니다.

08:10:54

그렇다면 앞서 LLM이 환각하는 문제를 해결하기 위해서 우리가 무엇을 해야 되느냐? 그 해결을 위해서 나온 기술이 바로 R.A.G. 검색 증강 생성 기술입니다. R.A.G는 Retriever Augmented Generation의 약자로서 이것의 핵심은 AI가 자신의 기억력, 즉 LLM에만 의존하지 않도록 만드는 것이 핵심입니다. 모르는 것이 있다면 외부에서 필요한 정보를 직접 찾아오게 하는 기술로서 매그대로 모르는 것을 직접 인터넷에서 검색해보고 검색된 결과를 가지고서 대답을 해보라고 한다면 그때는 이제 환각이 조금 덜해지고 그 다음에 어떤 검색된 결과에 기반을 하기 때문에 우리가 신뢰할 수 있는 그러한 답변을 얻을 수가 있을 겁니다.

08:11:35

그래서 이 RH는 과학 연구를 함에 있어서는 꼭 우리가 잘 활용해야 되는 기술이기 때문에 한번 그 동작 원리를 하나씩 살펴보도록 해봅시다. 먼저 우리가 어떤 정보를 찾아야 된다고 한다면 외부 데이터베이스 혹은 문서에 필요한 정보를 우리가 검색을 해올 수가 있습니다. 이것을 이제 리트리벌 단계, 검색 단계라고 하는 것이고 우리가 찾아온 정보가 있다라고 한다면 AI 지식은 이제 AI는 이러한 것들을 지식에 보충을 합니다. 그것을 이제 어그먼티드라고 증강 단계라고 우리가 이야기를 하게 되고 그 다음에 마지막으로는 그렇게 증강된 상태를 가지고서 답변을 생성한다. 그래서 이것을 제너레이션 생성 단계입니다.

08:19:24

라고 이야기를 합니다. 따라서 RH는 이름 그대로 검색하고 증강하고 생성한다. 어떤 거? 지식을 검색하고 그래서 지식을 증강, 보완하고 그 다음에는 답변을 생성한다 해서 RH라고 우리가 부르고 있습니다. 이런 RH는 쉽게 비유를 하면 천재적인 뇌에 가진 사람이 검색 돋보기와 도서관에 대한 어떤 자유로운 출입증을 가지고 있다고 이야기를 할 수 있습니다. 자신의 기억에만 의존하지 않고 뭔가 모르는 게 있다고 한다면은

08:19:57

도서관에 가서 내가 갖고 있는 검색 능력을 가지고 어떤 지식이 어떤 자료가 나한테 필요한지를 찾아보고 그 찾아본 것을 잘 내 머릿속에 정리를 해가지고 답변을 하는 그런 것이라고 우리는 이야기를 할 수 있습니다. 그러면 이 RAG는 말 그대로 개념적으로는 알겠는데 구체적으로 어떻게 동작하는 건지 한번 핵심 기술을 한번 살펴보도록 해봅시다. RAG에는 크게 두 가지의 데이터베이스 방식이 존재합니다. 하나는 vectordb, 하나는 graphdb입니다

08:20:32

벡터 DB, 벡터 데이터베이스라고 불리는 이것은 벡터 유사도 검색이라는 기술, 시뮬러티 서치라는 것을 수행을 함으로써 어떤 사용자가 궁금해하는 혹은 LLM이 필요로 하는 키워드를 기반으로 수치적인 유사성을 가지고 필요한 정보를 빠르게 탐색하는 기법입니다. 예를 들어서 비슷한 것끼리 모아놓고 가장 가까운 것끼리를 잘 정리를 해놓는다고 한다면 우리가 하나를 찾아봤을 때 이것과 유사한 것이 그 근방에 놓여있기 때문에 이것도 관련이 있으려나 저것도 관련이 있으려나 하면서 정보를 빠르게 취합할 수가 있습니다.

08:21:17

반면에 그래프 DB는 논리적인 관계망, 논리지 그래프라고 불리는 이 기술에 기반을 해서 동작하게 됩니다. 그래프 DB에서는 데이터와 데이터 간의 혹은 지식과 지식, 개념과 지식 간의 연관관계와 맥락을 파악을 해서 어떤 추론을 할 수 있는 능력을 제공을 하고 이때 그 추론을 우리는 이제 다중홉추론 혹은 영어로 멀티홉 리즈닝이라고 부르게 됩니다. 이 다중홉추론에서는 A가 B에 영향을 주고 즉 지식 A가 어떤 지식, 다른 지식 B에 영향을 준다. 연관이 되어 있고 또 그 지식 B는 지식 C에 관련이 있다 라고 한다면은 A는 C와도 관련이 있다 라는 것을 추론을 해가지고

08:21:52

기존에라면 만약에 벡터 DB였다면 A랑 가까운 것은 B밖에 없으니까 B라는 정보만 제공했다면 이 지식 그래프를 통한다면 A랑 관련된 것이 B도 있고 C도 있다 하면서 어떤 연쇄적인 관계를 우리가 생각해 볼 수가 있습니다. 벡터 DB를 조금 더 한번 딥하게 들어가 보도록 합시다. 벡터 DB는 텍스트, 이미지 아니면 우리가 뒤에서 공부할 분자 구조라고 하는 정말 가지각색의 정보들을 어떤 고차원의 숫자 벡터로서 변환을 하는 것을 첫 번째로 수행을 하게 됩니다.

08:22:23

여기서 벡터라고 하는 것은 여러분들이 선형 대수학 시간에 공부할 것이기 때문에 그때 한번 조금 자세하게 살펴보시면 좋을 것 같고요. 여튼 벡터라고 하는 것은 지금 이 시간에서는 쉽게 생각하면 어떤 좌표라고 이해하시면 되겠습니다. 즉 데이터라는 것을 좌표로서 표현을 하게 되면 지금 그림에 나타나는 것처럼 어떤 공간의 한 점으로서 표현을 하게 됩니다. 그러면 이 좌표계에서 점들 즉 지식들이 흩어져서 존재하는 것을 볼 수가 있고

08:23:08

이제 우리가 어떤 검색을 한다, 벡터 DB에서 검색을 한다고 한다면 지식을 좌표로 표현하는 것처럼 우리가 물어본 질문이라는 것도 하나의 점으로서 얘는 계산을 하게 됩니다. 그렇게 점 혹은 벡터라는 것으로 표현을 하게 되면 내가 궁금했던, 내가 받은 질문 벡터와 가장 유사한 지식 벡터는 무엇인지 지식 점은 어떤 것이 있는지를 얘가 검색을 할 수 있습니다. 이때 검색할 때는 코사인 유사도라고 하는 혹은 코사인 시밀러리티라고 하는 계산법을 이용을 해가지고 가장 유사한 벡터, 가장 가까운 점은 무엇인지를 숫자로서, 거리로서 표현을 하게 되고 이 숫자값에 기반을 해가지고 이 지식이, 이 벡터가 가장 유사한 정보입니다. 라는 것을 탐지를 하게 됩니다.

08:23:40

그렇게 해가지고 유사한 지식을 찾아서 벡터 DB는 LLM한테 정보를 제공을 할 것이고 이제 정보를 받은 LLM은 이것과 유사한 게 이런 정보들이 있네. 그 정보들을 바탕을 해가지고 우리한테 어떤 답변을 해줄 수가 있게 됩니다. 다음은 그래프 DB에 대한 동작 방식입니다. 그래프 DB는 벡터 DB랑은 조금 완전히 다른 방식으로 동작을 하게 됩니다. 그래프 DB는 데이터라는 것을 노드라는 것으로 표현을 하게 됩니다. 감사합니다.

08:24:14

지금 그림에 나타나는 것처럼 얘도 어떻게 보면 데이터라는 것을 점으로 표현한다라는 것이 공통된 특징이 될 수가 있고 대신에 차이점이라고 한다면 점과 점 사이의 관계를 선으로 표현한다라는 것이 특징이 되겠습니다. 이제 이때의 전문 용어로서 점을 노드, 그 다음에 선을 엣지라고 우리가 부르게 됩니다. 이 표현은 여러분들이 2학년 때 공부하실 혹은 1학년 때 먼저 들어보실 수도 있는 자료구조라는 수업에서 그래프 구조라는 것을 배우면서 조금 더 깊이 있게 배우실 수가 있습니다.

08:24:58

그래서 그래프라고 하는 것은 지금 그림에 나타나는 것처럼 여러 개의 노드, 점이라는 것이 복잡하게 연결되어 있는 형태를 말하는 것이고 여기서 점은 하나의 지식들을 나타내고 선은 어떤 지식과 어떤 지식이 어떻게 연관되어 있는지를 표현해 주는 것이라고 우리는 이해할 수가 있습니다. 그래프 DB의 강점은 이 복잡한 정보, 복잡한 경로들을 따라서 어떤 추론을 해 나간다는 것이 가장 큰 특징입니다. 벡터 DB가 단순히 그냥 어떤 것과 어떤 것이 비슷하다, 유사하다 라는 것만 가지고서 정보를 찾는다고 한다면 그래프 DB에서는 얽히고 설켜있는 관계들,

08:25:30

찾고 찾고 찾고 이렇게 논리적으로 유추해 가면서 필요한 정보들을 모아갑니다. 벡터 DB와 그래프 DB를 공부를 해봤고요. 우리가 한번 이 두 개를 조금 더 이해하기 위해서 친숙한 예시로 살펴보도록 합시다. 벡터 DB는 비슷한 맛을 찾는 뷔페와도 같습니다. 여러분들이 치킨이라고 검색을 한다면 데이터를 수치화된 좌표로 변환을 해서 치킨과 향이나 모양 이런 것들이 비슷한 닭강정 메뉴를 아마 벡터 DB는 추천해 줄 수도 있습니다.

08:26:02

치킨과 닭강정은 의미적으로, 즉 치킨이라고 하는 그 단어를 들었을 때 상상되는 그 이미지들, 그 다음에 닭강정이라는 것을 들었을 때 생각나는 이미지들이 아마 있으실 겁니다. 그것들, 즉 의미라고 하는 것이 얼마나 유사한지를 바탕으로 우리한테 어떤 단어를, 키워드를 알려주는 것이 바로 벡터 DB의 역할입니다. 반면에 그래프 DB는 관계를 보여주는 레시피 지도와도 같습니다. 치킨이라고 하면은 얘는 닭고기이고 닭은

08:26:47

어디서 왔겠느냐? 어느 농장에서 왔는지? 또 다른 측면으로는 치킨은 양념이 있으니까 이 양념은 어떤 양념인지, 그게 어떻게 요리된 것인지 이런 것들을 그래프 DB에서는 한번 생각을 해볼 수가 있습니다. 치킨이라는 것과 닭이라는 것, 양념이라는 것, 아니면 농장, 요리, 아니면 요리법 등등등등 이러한 개념들이 연관되어 있고 그런 연관된 것들은 우리가 그래프 DB에서는 선으로서 이어붙일 수가 있기 때문에 단순히 치킨과 닭강정이라는 그 어떤 결과물을 가지고서 유사성을 판단하는 벡터 DB와 다르게 그래프 DB에서는 치킨이라는 어떤 그 본질적인 내가 어떤 놈인지를 우리가 생각해 볼 수 있는 그런 정보들을 제공을 해줍니다.

08:27:22

그래서 밑에를 보시게 되면 벡터 DB랑 그래프 DB를 크게 세 가지 측면에서 비교를 해볼 수가 있습니다. 다중협추론, 말 그대로 어떤 논리적인 사고를 해야 된다고 한다면 벡터 DB보다는 그래프 DB가 조금 더 유용할 수가 있습니다. 그래프 DB는 어떤 관련된 지식들을 차근차근 우리가 이렇게 찾아갈 수가 있기 때문에 추적해 나갈 수가 있기 때문에 다중협추론이 가능한 반면 벡터 DB는 그런 부분에 있어서는 조금 약점이 될 수 있지만 그래도 필요한 정보를 빠르게 제공해 줄 수 있다는 것이 벡터 DB의 큰 특징입니다.

08:28:02

그러다 보니까 뭐 그래프 DB만 좋네, 벡터 DB만 좋으네라고 말하는 것은 조금 위험한 감이 있습니다. 최근에는 현대의 AI 기술들에서는 이 두 가지를 전부 다 합쳐서 사용하는 하이브리드 레그라는 형식을 많이 사용하고 있습니다. 하이브리드 레그라는 것이 무엇인지 이거를 한 번 더 다시 또 다른 예제로서 한번 이야기를 해봅시다. 만약에 오늘 점심은 제육볶음 말고 무엇을 먹을까라는 질문을 던졌다고 한번 생각을 해봅시다. 벡터 DB 쪽에서는 제육볶음과 의미적으로, 즉 제육볶음이란 요리와 유사한 어떤 매념, 개념들을 생각해 볼 수가 있습니다.

08:28:43

앞서처럼 어떤 제육볶음이랑 비슷한 요리 자체를 생각할 수도 있고 아니면 제육볶음이라는 것은 매콤한 고기 요리다, 한식 메뉴이다 라는 것으로써 정보를 한번 찾아볼 수도 있습니다. 벡터 DB가 그런 정보들을 찾는다고 한다면 그래프 DB에서는 다른 관점에서의 어떤 지식을 제공해 줄 수 있습니다. 제육볶음이라는 요리는 그 재료가 돼지고기이고 그 다음에 제육볶음이라는 요리의 맛은 매운맛이다 라는 정보를 가지고서 LLM한테 제공을 해줘서 돼지고기 요리 혹은 매운맛 요리 이런 것들과 비슷한 것을 사용자한테 추천해 보세요 라고 이야기를 할 수 있다는 겁니다.

08:29:22

그래서 하이브리드 레그는 지금 벡터 DB와 그래프 DB가 제공해주는 정보가 다르다 보니까 이런 것들을 잘 결합을 해서 어떤 포괄적인 결론 혹은 추론을 진행을 하는 것이 하이브리드 레그의 큰 특징입니다. 그래서 그 결과들을 잘 융합을 해보면 돼지고기 기반이지만 매운맛이 아닌 한식 음식이라는 것을 사용자한테 추천을 해주는 게 좋겠다. 이게 공통된 지식이구나 라는 것을 LLM이 판단을 하게 될 것이고 그렇다고 한다면 최종적으로 간장불고기 혹은 갈비찜이라고 하는 요리를 추천해 줄 수도 있을 겁니다.

08:29:55

제육볶음이라는 것에 대해서 벡터 DB도 그렇고 그래프 DB도 일단은 핵심적으로 돼지고기라는 것을 제공을 해줬기 때문에 그리고 차이가 나는 것은 그래프 DB 측에서는 양념을 제공해줬지만 벡터 DB에서는 이 부분은 없었다 보니까 그러면 양념이라는 것을 살짝 바꾼 요리를 추천해주면 괜찮지 않을까. 그래서 간장불고기 혹은 갈비찜 이런 것들을 LLM이 대답을 해줄 수도 있을 겁니다. 그래서 하이브리드 레그는 두 DB의 벡터 DB와 그래프 DB의 장단점을 잘

08:30:27

섞어가지고 뛰어난 대답을 할 수 있도록 해주는 기술이기 때문에 이것을 잘 이용을 한다면은 여러분들이 단순히 그냥 메뉴를 추천받는 것을 떠나서 내가 모르는 게 있어 이것에 대해서 LLM한테 더 정확한 답변을 얻으실 수가 있습니다. 자 그러면은 우리는 지금까지 LLM과 RAG에 대해서 살펴봤습니다. 이 기술들을 잘 활용하면은 우리는 과학에서 많은 연구를 해볼 수가 있고 내가 모르는 지식이 있더라도 LLM한테

08:31:01

어떤 필요한 정보를 학습시키고 그 다음에 놓치는 부분이 있다고 한다면 레그를 통해서 RH를 통해서 정보들을 빠르게 찾아올 수 있도록 할 수가 있습니다. 이 기술들을 이용을 해서 우리는 지금 어떤 이야기를 해볼 거냐면 다양한 분야에서 응용을 해볼 수 있지만 제가 전공으로 하고 있는 화학정보와 캐모 인포메틱스에 대해서 한번 소개해드리도록 하겠습니다. 화학정보악에서는 어떤 일을 지금 많이 하고 있느냐 화면에 있는 것처럼 수많은 분자 구조들 사이에서

08:31:35

하나의 분자 구조를 찾는 것 혹은 특정 화합물을 찾는 것을 주로 연구를 하고 있습니다. 이것이 바로 신약 개발을 신약 후보물질이라는 것을 찾는 것을 설명하는 그림입니다. 신약 후보물질을 찾는다고 하는 것은 모래사장 속에서 바늘을 찾는 것과도 같습니다. 왜냐하면 지금 이론적으로 존재할 수 있는 화합물이라고 하는 것은 10에 60승 정도의 어마어마하게 많은 화합물들이 존재할 수 있다고 합니다.

08:32:09

우리가 우주에 있는 원자들, 화합물에서 가장 작은 원자라고 하는 것이 이 우주에 몇 개나 있느냐라고 한다면은 대략 10에 80승 정도가 있다고 이야기를 합니다. 우주라고 하는 것은 우리 우주라는 것에서 우리가 살고 있는 이 지구는 굉장히 작습니다. 이 지구도 근데 우리 입장에서는 굉장히 큰데 그것보다도 훨씬 더 큰 우주에 있는 원자 수가 10에 80승이고 이론적으로 존재할 수 있는 화합물이 10에 60승이라고 한다면

08:32:42

이 안에서 우리가 약으로 쓸 수 있는 화합물 한두 개를 찾으라고 하는 것은 굉장히 굉장히 어려운 일이 됩니다. 그러다 보니까 이 방대한 지식 안에서 필요한 정보를 찾아야 되는 것. 지금 앞에서 살펴봤던 LLM, RAG가 이 문제를 해결하는 데 있어서 좋은 해결책이 될 수가 있을 겁니다. 그러다 보니까 화학정보학이라고 하는 분야에서는 LLM과 RAG를 어떻게 하면 활용할 수 있을까 이런 것들을 지금 많이 연구를 하고 있고요.

08:33:17

이 문제에 도전하기 위해서는 AI와 소프트웨어에 대한 지식이 반드시 있어야 됩니다. 그러다 보니까 지금 소프트웨어 AI 계열로 입학하신 여러분들이 이 분야에 흥미를 갖고 만약에 한번 도전을 해본다고 한다면 아마 우리 인류, 사람이 사는 데 있어서 신약을 빠르게 찾을 수 있다는 것은 우리가 어떤 새로운 질병, 코로나와 같은 치명적인 질병이 생겼을 때 그것을 빠르게 해결하고 우리가 많은 사람들을 살릴 수 있는 그런 기술자가 될 수 있을 겁니다.

08:33:51

그러면은 LLM이나 RH를 이용을 해서 화학정보학을 풀려면은 일단 어떤 걸 알아야 되는지 한번 찬찬히 살펴보도록 합시다. 먼저 신약 개발이라고 하는 것을 한번 이야기해 봅시다. 전통적인 신약 개발 프로세스는 수십 년 시행착오와 막대한 비용을 우리가 소비를 해야 됩니다. 즉 하나의 신약이 시장에 나올 때까지 평균적으로 10년에서 15년 정도 걸린다고 하고요. 그 다음에 그 약을 개발하는 데 있어서 드는 비용은

08:34:26

천억원도 아니고 수조원에 해당하는 비용이 필요하게 됩니다 그러한 비용이 시간과 비용이 드는 작업을 AI를 활용을 한다고 한다면 획기적으로 줄이고 효율적으로 우리가 약을 찾을 수 있다고 하는 것이 최근의 연구에서 밝혀지고 있습니다 그런 일을 하기 위해서는 우리가 화학 데이터라는 것을 LLM한테 학습을 시킬 수가 있어야 되는데 이 문제가 굉장히 복잡하고 어려운 문제에 해당이 됩니다

08:35:13

지금 그림에 있는 것처럼 분자 구조라고 하는 저 형태를 어떻게 LLM한테 학습을 시킬 것이냐. 우리는 LLM이라고 하는 것은 사람의 말, 텍스트, 자연어, 문자열과 같은 형태로 이루어져 있는 것들이 LLM이 전문적으로 잘 다루는 데이터들입니다. 그렇다고 한다면 이 분자 구조라고 하는 것을 자연어라는 것을 표현할 수 있겠는지 그것이 아마 처음의 시작점이 될 것입니다. AI가 분자 구조를 이해하게 하기 위해서 우리가 활용할 수 있는 기술의 대표적인 하나가 바로 SMILES, Simplified Volcular Input Line Entry System의 약자인 SMILES라고 하는 표현법이 되겠습니다.

08:35:52

SMILLE라는 표기법을 통하면 우리는 분자 구조를 어떤 텍스트 문자율로 변환을 할 수가 있습니다. 슬라이드를 보시면 왼쪽에 있는 복잡한 분자 구조를 오른쪽에 있는 것처럼 CN1C="C", 괄호, C2="CC", 등등등등 문자율로 우리가 표현을 할 수가 있습니다. 지금 여기 이 슬라이드에 있는 분자 같은 경우는요. 실제 폐암이라고 하는 암 중에 하나를 치료하는 데 사용되고 있는 오시머티미라고 하는 약물에 대한 화합물입니다.

08:36:39

이처럼 이 화합물을 혹은 약이라고 하는 것을 스마일즈로 표현을 할 수가 있게 되면 자연어를 처리하는 데 특화된 LLM한테 이 스마일즈를 학습시켜 볼 수가 있고 그러면 LLM은 이 스마일즈라고 하는 어떤 문자열, 알파벳들의 나열을 마치 진짜 사람의 문장인 것처럼 읽고 이걸 또 읽어서 화학적으로 이 화합물은 어떻게 생겼구나 그 구조를 파악할 수가 있게 될 겁니다. 그러면 이제 AI가 이 화합물이 어떻게 생겼는지 화합물의 구조가 어떤지를 알게 된다고 한다면 이제 이 화합물은 어떤 특징이 있겠고 어떤 질병에서 치료 효과를 가질 수 있겠구나 라는 것을 얘가 생각을 해 볼 수가 있을 겁니다.

08:37:23

만약에 AI가 LLM이 실제로 정말로 스마일즈를 읽고 얘가 뭔가 대답을 해줄 수가 있다고 한다면 우리는 이런 시나리오를 생각해 볼 수가 있을 겁니다. 화면에 나와 있는 것처럼 사용자 혹은 사람은 스마일즈로서 어떤 화합물을 입력을 하게 되고 그러고 나서 물어봅니다. 이 화합물이 뇌, 혈관, 장벽, BBB라는 것을 통과할 수 있겠느냐라는 것을 질문을 할 겁니다. 이 질문의 의도는 여러분들이 공부를 해보시면 아시겠지만 사람과 뇌, 즉 몸에서 뇌로 지나가는 혈관에는 BBB라고 하는 Brain Blood Barrier라고 하는 벽이 존재합니다.

08:38:01

그래서 아무거나 어떤 물질, 뇌라는 것은 굉장히 중요한 기관이기 때문에 그냥 뭐든지 혈관을 통해서 뇌에 도달할 수 있는 건 아니고 뇌에 도달할 수 있는 화합물들을 저 BBB라고 하는 것이 관리하면서 즉 너는 통과, 너는 통과할 수 없어라는 것을 걸러내면서 우리의 뇌를 지켜줍니다. 약이라고 하는 것이 뇌에 만약에 작용을 해야 된다고 한다면 뇌 질환을 치료하기 위한 약이라고 한다면 저 BBB를 통과하는 것이 굉장히 중요한 문제이기 때문에 어떤 약이 저 BBB를 통과할 수 있을까라는 이 질문은 굉장히 중요한 문제가 되겠습니다.

08:38:35

자 그래서 AI가 만약에 스마일즈라는 것을 통해서 분자구조를 이해를 했고 그 다음에 BBB라는 것이 무엇인지를 알고 있다고 한다면은 얘는 이제 답변을 할 수가 있을 겁니다. 이 물질, 사용자가 준 물질은요. 구조적 특성이 벤젠고리나 카르보닉이를 가지고 있는 것 같고요. 그 다음에 그러다 보니까 뇌혈관장벽 BBB라는 것을 통과할 수 있을 것 같습니다. 그리고 친류성 수치가 기준치 내에 존재하기 때문에 우리가 뇌질환의 치료제로서 사용할 수 있을 거라고 얘가 대답을 해줄 수가 있을 겁니다.

08:39:10

만약에 정말로 물론 지금도 이게 어느 정도는 가능한 기술이긴 하지만 조금 더 기술이 발전을 해서 정말로 우리가 어떤 화합물들을 물어보든 간에 LLM이 그 화합물을 잃고 그 화합물이 우리 몸에서 도구로 작용할지 아니면 약으로 작용할 수 있을지를 빠르게 대답을 해줄 수 있다고 한다면 우리는 지금 신약후보물질을 좀 더, 좀 더가 아니죠. 훨씬 빠르게 찾아낼 수가 있을 겁니다. 앞에서 봤던 전통적인 신약 개발이라고 하는 것이 굉장히 느린 이유는 지금의 AI처럼 AI는 굉장히 빠르게 대답을 해주지만은

08:39:49

전통적인 방법에서는 AI를 사용하지 않기 때문에 하나하나 실험을 해보면서 그 결과를 보고 얘가 이제 통과한다, 못한다, 독이다, 아니다를 판단하기 때문에 그래서 시간과 비용이 많이 들게 됩니다. 자, 그러면은 지금 앞에서 배웠던 벡터 DB나 그래프 DB 이것을 실제 신약 개발에서 쓸 수 있다면은 어떤 식으로 사용해 볼 수 있을지 한번 간단한 그냥 예시를 한번 생각해 보도록 합시다. 자, 벡터 DB 같은 경우는 유사한 것을 골라내는 빠르게 찾아내 주는 역할을 한다고 우리는 공부했었습니다. 그렇다고 한다면은 지금 우리가 생각할 수 있는 화합물들을 벡터 DB에다가 쫙

08:39:57

앞서 찾아본 것처럼 내가 지금

08:48:39

지금 이런 화합물을 약으로서 고민하고 있는데 얘랑 비슷한 약은 혹시 없겠느냐, 비슷한 화합물은 없겠느냐라는 것을 벡터 디비한테 물어볼 수 있습니다. 벡터 디비는 그러면 화합물에 구조적으로 유사한 애를 찾던지 아니면 독성 수치, 아니면 얘가 치료 가능성 이런 것들을 바탕을 해서 유사한 물질들, 유사한 화합물들을 코사인 시뮬러리티 같은 것을 이용해서 빠르게 탐색을 해줄 수가 있을 것이고요. 그렇게 된다고 한다면 우리가 지금 그림에 나와 있는 깔때기처럼 정말로 많은 화합물들 중에서 지금 우리가 분석해야 되는 집중해야 되는 대상들을 속도 내는 엄청난 빠른 도움을 받을 수가 있을 겁니다.

08:49:41

이렇게 좁히고 나면 그 다음에는 그 좁아진 필터리된 화합물들에 대해서 그래프 DB를 가지고서 분석을 해볼 수가 있을 겁니다. 통과한 물질들이 우리 몸속에서 어떤 단백질과 결합하는지, 그 다음에 어떤 대사, 물질대사 같은 것들을 어떻게 일으키는지, 그래서 패스웨이에 미치는 영향이 무엇이 있는가를 다중호흡관계로서 우리가 분석을 해볼 수가 있을 겁니다. 그래서 화합물이 주어지면 지금 그림은 예시는 굉장히 복잡합니다. 이거는 이제 컴퓨터 기술뿐만 아니라 생물학, 화학 이런 것들을 지식을 여러분들이 학습해야 되지만 읽을 수 있는 그림이기 때문에 그냥 그래프처럼 이런 지식들을 표현할 수 있다 정도만 이해를 해주시면 되겠고 한마디로 화합물을 골라냈으면 그 화합물을 그래프 DB를 통해서 얘가 어떤 생물, 어떤 단백질, 우리 몸속에서 어떻게 작용할 수 있는지 이런 것들을 분석을 하고 그 분석된 지식들을 바탕으로 그래프 DB가 LLM한테 정보를 제공하면 LLM은 사용자가 주었던 이 화합물은요. 약으로 쓸 수

08:50:18

있겠습니다. 약으로 쓸 수 없을 것 같습니다. 라는 그런 대답을 해주고 왜 그게 그렇게 판단이 됐는지도 우리한테 설명을 해 줄 수가 있을 겁니다. 그러면 이제 우리는 그 설명을 듣고 아 이런 화합물들은 안 되는구나. 그러면 화합물들 중에서 걸러내야 되는 조건들을 우리가 파악을 하고 그것을 다시 앞에 벡터 db로 돌아가서 벡터 db한테 이런 정보들도 배제하거나 아니면 이런 특징을 꼭 고려해서 다시 한 번 더 출연해달라. 그렇게 해서 화합물들을 다시 한 번 더 모으고 그 화합물들을 다시 또 그래프 db로 분석하고 이 과정을 반복을 해가지고 우리가 찾고자 하는 약을 빠르고 효율적으로 찾을 수가 있을 겁니다.

08:50:54

LLM은 벡터 DB와 그래프 DB를 활용하는 혹은 이네들을 조합해서 사용하는 어떤 지휘자 같은 역할을 해줍니다. 그렇게 이 두 가지 데이터베이스를 통해서 많은 지식들을 우리 사람이 기억하기 어려운 지식들을 LLM이 대신 기억하고 그 다음에 그 지식들을 잘 가공을 해서 우리한테 어떤 새로운 정보를 제공하는 그러한 도움을 받을 수가 있습니다. 따라서 AI는 앞으로 AI는 우리 사람과 경쟁하는 존재라기보다는 같이 무언가를 해나가야 되는 파트너로서 생각을 해봐야 되는 시점이 머지 않았다고 생각을 합니다.

08:51:25

AI랑 같이 내가 어떤 일을 할 것이고, 그 다음에 어떤 분석을 해야 되겠고, 이 분석된 결과를 어떻게 해석해야 될지, 이런 것들을 AI와 함께하는 그런 경험들을 여러분들이 많이 쌓아보시면 좋겠습니다. 결과적으로 여러분들은 이 AI를 잘 활용하려면은 무엇을 고민해야 되는가, 데이터를 어떻게 담을 것이고, 그 다음에 이것들을 어떻게 연결시킬 것이냐, 얘네들의 관계는 어떤 것인지를 여러분이 먼저 생각해 보실 수가 있어야 됩니다.

08:52:06

여기서 담는다는 것은 스트럭처, 데이터를 어떻게 구조로 표현할 것인지, 그 다음에 엮는 것, 어떻게 연결을 할 것이냐. 벡터 DB처럼 벡터 공간에다가 지식을 표현할 수도 있을 것이고요. 아니면 그래프 DB처럼 지식들을 연결하는 것에 집중하실 수도 있을 겁니다. 이 두 가지를 그리고 모두 다 잘 다룰 수 있어야지 LLM 혹은 LLM을 기반으로 하는 AI 시스템을 잘 설계하고 개발할 수 있는 능력 있는 개발자가 될 수가 있습니다. 여러분들이 이제 공부해야 되는 이 한림대학교에 와서 소프트웨어 AI 계열, 그 다음에 2학년이 되고 나서 배우는 전공 지식들은 이러한 LLM을 고도화하는 데 필요한 기술들입니다.

08:52:38

어떠한 전공지식도 빠짐없이 전부 다 활용할 수가 있는 것이고 그 전공지식들을 나는 어떤 식으로 활용할 것이고 그리고 어떤 전공지식을 공부하는 것이 내 적성에 맞을지 이런 것들을 한번 LLM하고 즉 제미나이나 채찌PT를 활용을 해서 한번 고민해 보셨으면 좋겠습니다. 여러분들이 관심 있는 기술은 혹은 여러분들이 도전할 수 있는 분야는 무궁무진할 겁니다. 그 중에서 제가 하는 신약개발, 화학정보화학이라고 하는 분야는 굉장히 소수의 인원들만 지금 도전을 하고 있고요

08:53:09

많이 어렵다 보니까 도전자들도 공부하는 사람들도 많지 않습니다. 만약에 지금 이 영상을 보는 여러분들 중에서 나는 사람들이 남들이 잘 하지 않는 저 어려운 분야를 도전해 보겠다고 마음을 먹는다고 한다면 신약 개발은 단순히 소프트웨어 기술 AI 어떤 응용 기술로서가 아니라 사람을 구하는 데 어떤 핵심적인 중요한 연구 분야이기 때문에 여러분들은 인류의 발전에 기여를 할 수 있는 그런 연구를 해보실 수가 있습니다.

08:53:40

아무튼간은 이런 신약개발 혹은 LLM, RAG에 대해서 관심이 있다고 한다면 저를 찾아오시거나 아니면 제가 하는 수업 아니면 이와 관련된 내용들을 꼭 잘 공부해가지고 여러분들이 어떤 사회에 기여할 수 있는 IT 개발자가 되시기를 바랍니다. 이상으로 LLM과 화학정보학 영상을 마치도록 하겠습니다. 긴 시간 들어주셔서 감사합니다.

08:53:45

배웠던 벡터 디비나 그래프 디비