2022년 1월 26일 수요일

MyCC 실행을 위해 VirtualBox를 다시 설치하려는데 뭐가 문제인가?

MyCC는 metagenomic contig를 자동적으로 분류(이 분야에서는 "classify"보다는 "bin"이라는 동사를 주로 사용)하는 소프트웨어이다. 2016년 Scientific Reports에 실린 논문(링크)의 제목은 Accurate binning of metagenomic contigs via automated clustering sequences using information of genomic signatures and marker genes이다. 이런 종류의 프로그램들이 지금은 하도 많이 나와서 MyCC는 거의 고전(?)의 반열에 오른 것 같다.

특정 용도의 소프트웨어가 나오면 잘 갖추어진 테스트 데이터셋을 이용하여 이를 평가하는 논문이 나오게 마련이다. 2020년 BMC Bioinformatics에 나온 논문('Evaluating metagenomics tools for genome binning with real metagenomic datasets and CAMI dataset' 링크)에서는 무려 15개의 소프트웨어를 비교 평가하였다. 12개는 original binning tool이고 나머지 3개는 refining binning tool이다. CAMI 라는 것은 Critical Assessment of Metagenomic Interpretation의 약자로, 메타게놈 업계의 Assemblathon과 유사한 취지의 활동인 것 같다. 

비교한 프로그램이 정말 많다.

도대체 metagenomic assembly의 binning에 어떤 프로그램을 써야 하는지 감이 잡히지 않는다면 이런 종류의 논문을 보면 도움이 될 것이다.

2021년 Nature Biotechnology에는 이런 논문(링크)도 나왔다. 제목은 Improved metagenomic binning and assembly using deep variational autoencoders. 프로그램 이름은 VAMB(GitHub)인데, 논문 초록에서 다음과 같이 자랑을 하였으니 이 프로그램도 한번 체험을 해 봐야 되겠다.

VAMB outperforms existing state-of-the-art binners, reconstructing 29–98% and 45% more near-complete (NC) genomes on simulated and real data, respectively. Furthermore, VAMB is able to separate closely related strains up to 99.5% average nucleotide identity (ANI)...

대부분의 binning program은 원본 read를 조립물에 다시 매핑하여 얻은 coverage data를 요구한다. 나노포어 데이터로 조립한 메타게놈에 대해서도 mapping coverage를 구하는 일이 의미가 있는지 요즘 고민을 하는 중이다. 일단은 coverage 자료 없이 무난하게 binning을 하는 도구는 무엇이 있을까 알아보다가 결국 이 글의 맨 앞에 소개한 MyCC를 찾게 된 것이다.  다음은 MyCC 논문의 일부를 인용한 것이다.

It should be noted that CONCOCT, MaxBin, and MetaBAT all utilized the coverage information when binning the metagenomic contigs. Nevertheless, in the absence of coverage information, MyCC produced noteworthy binning performance based on its primary and secondary ratings in F1 scores (among the four tools).

그렇다고 하니 믿어야지... 일루미나 raw data가 있는 경우라면 MaxBin(현재는 버전 2)이 아무런 생각 없이 돌리기에 참 편하다. MetaBAT 2도 잘 만들어진 도구라 생각된다. 이탈리아 트렌토 대학의 Nicola Segata가 주도하는 무슨무슨 PhlAn 시리즈는 그 종류가 너무 많아서 늘 헷갈린다(Segata Lab Tools 링크).

MyCC는 VirtualBox .ova 파일, 도커 이미지, 그리고 소스 파일로 공개되어 있다(SourceForge). 오랜만에 VirtualBox를 설치해 보려 했는데 라이센스 문제로 연구소 내에서 이를 쓰는 것이 금지되었다는 말을 들은 것이 기억이 났다. 심지어 연구소 내에서는 Oracle VM VirtualBox 웹사이트로 접근하는 것 자체가 차단이 된 상태였다. 이 사이트는 국가정보원에서 차단을 요청한 사이트도 아닌데 왜 이렇게까지 된 것일까? 정보보안팀 담당자와 전화 통화를 하면서 이렇게 하지 않을 수 없었던 저간의 사정을 전해 듣게 되었다. 

VirtualBox 라이선스 정책에 대한 질문과 답 웹문서(링크)에 의하면, 문제가 되는 것은 Extension pack이다. 혹시 이것이 Guest Additions와 같은 것이었던가? 그건 아니다. Guest Additions을 설치하지 않으면 예를 들어 호스트와 게스트 사이의 폴더 공유를 하지 못한다. 이건 매우 치명적인 문제이다. 그러나 Guest Additions는 'device drivers and system applications'이고, VirtualBox 소프트웨어 자체와 마찬가지로 GNU General Public License (GPL) version 2에 해당한다. 그러나 Extension pack은 Personal Use and Evaluation License(PUEL)이라서 개인적으로 평가해 보거나 교육용으로 사용할 때에만 무료인 것이다. 

Extension pack이 없다고 하여 가상 머신의 핵심 기능을 쓰지 못하는 것도 아니고, 나도 모르는 사이에 슬며시 설치가 되는 것도 아니다. 조심해서 쓰면 라이선스에 저촉이 되는 것은 아닌데...

연구소에서는 VirtualBox 웹사이트 자체에 접근이 되지 않으니, 노트북 컴퓨터를 이용하여 집에서 MyCC를 설치할 수밖에 없었다. 그러나 고맙게도 MyCC는 도커 이미지로도 제공되지 않던가? 연구소 컴퓨터에서 도커를 이용하여 실행한 뒤 결과 파일 중 MyCluster.pdf를 열어 보았다. 실행 시간도 얼마 걸리지 않는다. 예전에 PhyloPythiaS+를 테스트할 때 걸렸던 시간을 생각해 보라!

MyCC 실행 결과. Nanopore read를 metaFlye로 조립한 것(~49 Mb)을 이용하였다. 길게 퍼진 클러스터 7번은 아마도 동일 종에 속하는 strain mixture?
일루미나와 나노포어 등 다양한 read type을 어떻게 효율적으로 다룰 것인가, 그리고 균주 혼합물의 문제를 어떻게 해결할 것인가 등 binng에는 아직 산적한 문제가 많다. 심지어 assembly graph(.gfa)를 이용한 방법도 나오고 있으니 말이다!

GraphBin: refined binning of metagenomic contigs using assembly graphs (링크)

윈도우 컴퓨터에서 리눅스를 돌릴 수 있는 방법은 가상 머신 이외에도 Windows Subsystem for Linux(WSL)라는 것이 있다.  두 솔루션 사이의 차이점을 알아보려면 Should you run Linux in a Virtual Machine or WSL?을 읽어 보자.

댓글 1개:

nakeagaertner :

Harrah's Casino & Hotel - Mapyro
This map is for Harrah's Cherokee Casino & 포천 출장안마 Hotel 경산 출장안마 in 김제 출장샵 Murphy, NC. 대구광역 출장마사지 Address, 강원도 출장마사지 777 Casino Way, Murphy, NC 28719.