딥러닝으로 신약개발을 하기 시작하게 된 계기
제약회사의 Job description 을 보다보면 자주 '신약개발' 이라는 키워드가 눈에 들어온다. 신약개발에 딥러닝이 사용되기 시작된 계기가 있는데 딥러닝을 사용했을 때 예측 정확도가 월등히 좋아진 사건 이후로 신약개발에서 잘 사용이 된다고 한다.
Drug-likeness란 무엇인가: 삐빅, 약물다운 후보 화합물입니다.
신약 개발을 위해서는 신약 후보물질 부터 찾아야 하고 그 후보물질이 얼마나 Drug 로서의 성질을 가지고 있는지, 그리고 그렇다 하더라도 실제로 합성하기는 현실적으로 쉬운지 등을 알아보는 절차를 가진다. Drug 로서의 성질을 'Drug-likeness (우리말로는 '약물다움')' 라고 부르는데 이는 다음과 같은 조건을 충족 시킬 수록 Drug 로서 적합한 물질이라는 뜻이다.
1. Toxicity: 독성이 없어야 한다.
2. 우리 몸에 흡수가 된 후 원하는 organ 까지 약물이 전달이 되어야 한다. 그렇다고 해서 영원이 그 organ 에 머물러선 안되고 metabolism 결과로 빠져나가기까지 해야 한다.
3. 기름과 너무 친하면 우리 몸에 흡수가 잘 되지 않는다. cLogP 라는 것을 예측해서 해당 약물이 얼마나 lipophilicity가 있는지 알아보는 분석 도 존재한다.
4. hydrogen bond 개수: 5개 이상 되면 너무 여러군데 잘 달라붙어서 약물 후보 물질로 적합하지 않음
QED Score: 이러한 Druglikeness 를 정량화 한 지표가 있다. 14년전에 얼마나 druglikeness 를 violate 하는지를 기준으로 약물로서의 적합성을 나타내는 방법이 개발되었고 이로부터 나온 수치를 QED score 라고 한다. 0 은 전혀 약물로서의 작용을 못한다는 뜻이며 최소한 0.5 는 넘겨야 한다고 한다. 0.2 가 나왔다 하더라도 이는 충분히 높은 수치가 아니며 0.5는 최소한 넘어야 한다고 한다.
SAS Score: 특정 약물을 합성하려면 몇단계를 거쳐야 하는지 계산하는 것으로 스코어가 높을수록 합성 단계가 많아서 합성하기 힘들다는 것을 의미한다. QED, SAS 모두 RDkit 으로 계산할 수 있다.
QSAR 모델링으로 할 수 있는 것
신약개발에 쓰이는 QSAR 모델링은 Quantitative Structure-activity relationships 의 줄임말이며 이를 이용하여 약물 후보물질의 toxicity 여부, target 에 얼마나 잘 binding 하는지, solubility 등 예측 할 수 있다.
구체적으로는 Anti-HIV 기능을 가진 molecular 특성 (ER binding affinity) 예측. 즉 특정 molecule이 얼마나 HIV에 anti 하는 기능이 있는지 예측하는 주제의 QSAR 가 있을 수 있다. 이를 위해서는 다음과 같은 절차가 필요하다.
1. Ligand featureization
2. GetMorganGenerator() 이용. (특정 분자에 대해서 원자간의 거리 등의 특성을 반경 3개에 대해서 feature 1024개 뽑아라.)
3. Dataset split
A. X_train, x_test, Y_train, y_test
4. Random forest 모델 만들어서 classification
5. Test set 의 finger print 들의 HIV activity 예측
6. 모델 평가
그 외에도 특정 문자가 물에 얼마나 잘 용해되는지 Solubility 를 예측, protein 의 DNA binding site 예측, Protein의 Ligand bind site 예측에도 사용된다.
'데이터 사이언스' 카테고리의 다른 글
Claude 를 참고하여 신약개발경진대회 Baseline code 분석하기 (6) | 2024.09.17 |
---|---|
AI를 이용한 신약개발 경진대회: IRAK4 IC50 활성값을 예측 (8) | 2024.09.16 |
LAIDD 인공지능 & 파이썬 프로그래밍 역량강화 교육과정과 함께하는 신약개발 (0) | 2024.08.25 |
데이터 거버넌스: 표준화를 안하면 어떻게 될까 (0) | 2024.07.11 |
python 에서 한 번에 여러 건의 값을 다른 값으로 replace (0) | 2024.01.28 |