분류 전체보기 394

예산이 부족한 것이 아닙니다.

제가 대학원에 다닐 때, 연구실의 연구비는 연 3천만 원 정도였습니다. 그리고 대학원생은 3명 정도 있었습니다. 돈이 참 부족했지만, 그래도 어떻게든 아껴서 해외 학회에 가서 발표도 했습니다. 뭐 저는 해외출장을 매우 싫어했지만... 해외 출장 가서 발표도 못하는 사람은 졸업시킬 수 없다는 교수님의 방침에 따랐습니다. 그 후로 졸업하고 다른 곳들을 다니다 보니, 예산이 많지만 낭비되는 곳들도 많았습니다. 예산이 부족한 게 아니라 도둑놈이 많다는 말을 한 사람이 있었습니다. 그게 맞는 말이기도 하지만, 그렇게 간단한 일이 아니었습니다. 유명한 이야기로 예산 소비하기 위해서 보도블록을 바꾼다고 하죠. 예산을 다 소비하지 못하면, 예산을 깎아버리기 때문입니다. 예산이 깎이는 상황은 어떤 조직에서나 손해로 여겨..

이야기 2022.04.07

고수, 실란트로, 코리앤더 기르기

저는 고수를 좋아합니다. 처음 고수가 들어간 묵밥을 먹었을 때는 행주를 빠트렸나 심히 의심하였습니다. 하지만 향신료 같은 느낌도 들어서 향신료일 거라 생각하고 차마 물어보진 못하면서도 혹시 김치가 쉬었나, 정말 행주 빠트린 건가... 온갖 의심을 하였지만 아무튼 어떻게든 다 먹고 나왔던 게 생각나네요. 아직도 생으로는 잘 못 먹겠습니다. 다만, 국에 넣어서 데쳐먹으면 향이 약해져서 먹을만합니다. 맛의 고수가 되려면 고수를 먹을 수 있어야 할 것 같아서 노력했습니다. 고수 냄새가 특히 싫게 느껴지는 이유는, 여름철 주방 싱크대에서 나는 냄새와 비슷하기 때문이라 추측합니다. 음식이 아닌 것에서 나는 냄새가 음식에서 났을 때, 그것을 멀쩡한 음식이라 인식하지 못하게 됩니다. 민트를 예로 들면, 민트향을 치약에..

Food 2022.04.05

분자 가상합성: moleculer building block assembly

인공지능 신약개발을 처음 공부할 때, 정작 기존까지 신약개발에 사용되는 방법들을 제대로 몰랐습니다. 기존 방식이 무엇인지, 장점이 무엇이고 왜 그런 방법을 사용하고 있는지, 무슨 문제가 있는지... 이런것들을 전혀 모르고 시작하다보니 참 답답한 생각이 많이 들었습니다. 그중 하나가 실제로 합성하는 사람들은 분자를 어떻게 합성하는지 궁금했습니다. 유기합성하시는 분을 처음 만났을 때 그 의문이 풀렸습니다. 합성할 분자를 3~4조각 정도로 쪼개서, 그 조각들이 판매되는 building block 라이브러리에 있는지 확인하고, 있다면 그 조각들을 구매해서 합성하는 것이었습니다. 완성된 분자를 거꾸로 빌딩블록 단위로 쪼개서 합성 경로를 추정하는 것을 역합성 (retrosynthesis) 이라고 합니다. 당연히 합..

실패로부터만 배울 수 있는 것

성공하는 길을 배우는 가장 좋은 길은 아마도 성공해보는 것일 것입니다. 실패하는 길을 10가지 아는 것보다, 성공하는 길 하나를 아는 것이 더 도움이 됩니다. 성공하는 길을 그대로 가면 되니까요. 세상엔 생각보다 제대로 된 길이 많지 않으니까요. 인공지능 분야에서 강화 학습을 공부하다 보면 대충 어떤 느낌인지 알 것입니다. 좋은 리워드를 받은 선택을 더 자주 하도록 최적화를 해나가는 과정이 있는데, 당연히 좋은 리워드를 받을 수 있는 길을 한 번도 가지 못했다면 학습이 잘 되지 않습니다. 강화 학습 자체가 인간의 학습의 강화 개념을 본떠서 만든 거라 인간이나 인공지능이나 유사합니다. 저도 대학원생 시절엔 실패 투성이었지만, 단 한 번의 운 좋은 성공으로 인생이 많이 달라졌습니다. 무엇이 좋은 연구인지 이..

이야기 2022.03.31

저해제 (inhibitor), 작용제 (agonist), 길항제 (antagonist)의 차이

약물에 대해서 저해제(inhibitor), 작용제(agonist), 길항제(antagonist)라는 용어를 들어보셨을 것입니다. 저해제와 길항제는 단백질을 저해한다는 의미에서 비슷하다고 생각될 수도 있으나, 각 용어에 해당되는 타깃 단백질의 종류가 다릅니다. 저해제는 효소 (enzyme)에 대해서 사용되는 표현이고, 길항제는 수용체 (receptor)에 대해서 사용되는 표현입니다. 효소는 기질 (substrate)의 화학반응에서 촉매작용을 하는 단백질입니다. 저해제는 효소의 작용을 방해하는 물질입니다. 저해제 중에는 기질과 동일한 부위에 경쟁적으로 결합하는 경쟁적 억제제도 있고, 기질과 다른 부위에 결합하지만, 단백질 구조에 영향을 주어 효소로 작용하기 어렵게 만드는 allostric 억제제도 있습니다...

Drug 2022.03.30

바지락 파스타, 술국

저번 주에 바지락, 꼬막, 홍합을 주문해서 이것저것 많이 만들었습니다. 바지락 넣고 파스타 삶아먹었습니다. 파스타 삶아먹고도 바지락이 남았습니다. 최근에 유튜브에서 술국을 보고... (술로 끓인 술국...) 바지락 술찜이 생각나서 바지락 삶을 때 술을 넣어봤습니다. 이게 술국이로군요. 술맛 납니다. 맛있습니다. 뜬금없는 볶음밥... 홍합 꼬막 삶아서 월요일에 직장에 가져가서 먹었습니다.

Food 2022.03.29

pybel: openbabel python interface, 수소 추가, protonation state

openbabel 은 콘솔에서 직접 명렁어로 실행할 수도 있지만 (obabel 등) python interface로 모듈을 불러올 수도 있습니다. rdkit과 비슷한 기능을 하긴 하는데, 사용법이 더 어렵고, 메뉴얼이 불편합니다. 그래도 나름 장점도 있어서 openbabel을 사용해야 하는 경우도 있습니다. openbabel 을 설치하기 위해선 일단 openbabel을 설치합니다. openbabel2와 openbabel3의 구조가 조금 다릅니다. 예를들면 pybel 모듈이나 openbabel module을 import하기 위해서 버전 3에선 다음과 같이 입력합니다. from openbabel import pybel from openbabel import openbabel 하지만 버전 2에선 import ..

VHTS와 병렬 컴퓨팅: 3. job list 파일 공유를 이용한 병렬처리

멀티 코어가 보급되기 이전에 등장한 병렬 컴퓨팅은 기본적으로 여러 컴퓨터를 사용하는 방식이었습니다. 그중 가장 대표적인 것이 MPI (massage passing interface)입니다. 여러 프로세스 사이에서, massage를 주고받는 인터페이스입니다. 이는 서로 다른 컴퓨터에서 실행 중인 프로세스에서도 성립합니다. massage라고 표현했지만, 거대 데이터가 될 수도 있습니다. mpi를 실행할 때는 mpirun 같은 명령어를 사용하고, 실행 시에 MPI common world로 노드들이 묶여서 프로세서가 실행됩니다. 실행 이후에 common world를 변화시킬 수 없습니다. 특정 node에서 에러가 발생 시, 전부 종료하고 다시 시작해야 합니다. mpi 같은 메모리 상의 massage를 공유하는 ..

Computer 2022.03.28

신약개발에 활용되는 인공지능의 해석 가능성

머신러닝 결과를 해석하는 것은 쉬운 일은 아니지만, 불가능하진 않습니다. 기본적으로 머신러닝은 통계분석의 응용이기에 주어진 데이터를 학습하고, 새로운 데이터를 예측할 때, 학습 데이터 중에서 주어진 데이터와 유사한 것이 있다면 그 영향을 크게 받습니다. 하지만 유사성이라는 것은 그리 간단한 것이 아닙니다. 입력 공간상의 거리(distance)와 임베딩 된 공간상에서의 거리는 다릅니다. 적절한 공간 변환을 일으키고, 유사성을 최적화하는 것이 딥러닝의 핵심입니다. 즉, 입력 공간에서 별로 유사해 보이지 않는 데이터가 임베딩 된 공간에선 한 곳에 모을 수 있습니다. 이것이 왜 중요한지 생각해봅시다. 우리는 굳이 딥러닝을 사용하지 않더라도, 분자의 fingerprint를 만들고, Tanimoto 같은 simil..