Drug/Computer-Aided Drug Discovery

합성 가능한 분자 생성

Novelism 2021. 3. 27. 00:17

 

 저도 머신러닝 기반 분자생성 논문을 썼지만, 머신러닝 기반 분자생성 방법들 중 쓸만한게 거의 없습니다. 

 논문 저자들 중 자신이 만든 메소드를 계속 쓰는 사람이 있는지 궁금할 정도입니다. 

 여러가지 문제가 있지만, 일단 데이터를 통한 학습이라는 것이 데이터로부터 자유롭지 못하다는 것과, 

 합성가능성을 고려하기 어렵다는 점이 문제입니다. 

 학습한 데이터와 다른것이 생성되었다면, 그것이 머신의 창의력의 결과이기보다는 학습이 잘못되어서 나왔을 가능성이 높습니다.

 그리고 사이드 체인에 뭔가 많이 붙었지만, 그게 정말 필요해서 붙었는지, 아니면 머신의 학습 오류인지 판단하기도 어렵습니다. AE 기반 분자 생성 모델에서 AE의 reconstruction조차 100%가 안되는데... 생성할 때 붙는 무언가도 노이즈에 의한 것일 가능성이 높겠죠.

 

 예전에 유기합성 하시는 분께 생성한 분자의 합성을 검토해달라고 부탁드린적이 있었습니다.

 그분께서 합성 경로를 찾는것을 보고 아이디어가 생겼습니다.

  전합성이라고 해도 무에서부터 하나하나 만들어서 하기보다는, 구매할 수 있는 building block 들을 조합하는 방식으로 합성을 합니다. 

제가 화학 전공이 아니라 정확히 100% 이해하고 설명하는게 아니고, 용어나 개념이 조금 틀릴 수 있습니다. 

 일단 합성하려는 분자를 적절한 위치에서 잘라내서, 그 조각을 포함하고 있는 구매할 수 있는 building block 들을 찾습니다. building block끼리 반응하여 원하는 분자가 합성될 수 있는지 확인합니다. 

 그럼 반대로... 구매할 수 있는 building block 라이브러리와 과 반응 template 라이브러리를 이용해서 가상으로 분자들을 조합하면, 합성가능성이 매우 높은 분자들을 만들 수 있지 않을까... 라는 생각이 들었습니다. 

 그리고 그것을 실제로 사업으로 하고 있는 회사를 알게되었습니다.

 바로 Enamine 입니다. 아마도 이분야에서 물질 구매를 하려고 시도했다면 모르는 분이 없는 회사이겠죠.  enamine.net/

 

Home - Enamine

225 Thousand compounds in stock Original and unique Make-on-demand Building Blocks 210 Million novel building blocks Reliable supply Over 650 highly skillful chemists Unique synthesis technologies 14 Billion REAL compounds and Custom Library Synthesis On s

enamine.net

 ZINC12는 2천만개 정도의 분자 밖에 없는데, ZINC15에서 갑자기 10억개 이상의 분자가 등록되었는데, 그중 상당수는 벤더가 Enamine입니다. 

머신러닝 생성모델들 introduction 에서 흔히 등장하는 "현존하는 drug이 될만한 후보 분자는 10억개 정도이고" 라는 출처는 결국 국 ZINC와 Enamine이지만, 정작 그게 어떻게 만들어졌는지 모르는 사람들이 많습니다. 그걸 알면 분자생성 논문같은거 안쓸거에요. 

 Enamine 은 자신들이 보유한 building block과 합성 반응 템플릿을 이용하여 Enamine REAL 을 구축하였고, 주문이 들어오면 실제로 그때부터 합성을 시도해서 판매합니다. 그래서 4주 정도 걸리고, 성공률 60~80% 정도라고 합니다. 

building block 도 2개부터 4개까지만 조합해서 사용합니다. 

 

물질 합성은 building block 을 기반으로 조립하는 정도가 현실적으로 할만한 일 같습니다.

결국 Enamine REAL에 있지 않은 분자는 합성 step이 4를 초과하거나 쉽지 않은 반응을 포함하거나, building block을 구하기 어렵거나... 같은 문제를 가지고 있을 가능성이 높습니다. 

그러니 굳이 인공지능 가지고 분자생성 하느니 Enamine 에서 가져다 쓰는게 좋을 것입니다. 
Enamine보다 잘하고 싶다면, buiding block을 더 늘리거나, 더 좋은 reaction template을 만들거나, step수를 5이상으로 시도해보거나... 그런 방법들이 있습니다.  

  Enamine의 10억개 이상의 분자를 효율적으로 탐색할 방법이 있지만... 그건 일단 해보고 잘되면 이야기해보겠습니다.  

 lead optimization에선 어쩔 수 없이 새로운 분자를 만들어야 할 것 같지만, lead optimize에서 사용하는 분자 합성하는 법은 제가 자문을 받지 못해서 거기에 맞는 컴퓨터 기반 방법을 생각해낼 수가 없네요.