macでインフォマティクス

macでインフォマティクス

HTS (NGS) 関連のインフォマティクス情報についてまとめています。

大規模なタンパク質構造セットを効率的に圧縮する Foldcomp

 

 高精度なタンパク質構造予測により、数億個のタンパク質構造が生成されているが、これらは保存と処理の点で課題がある。本著者らは、この課題に対処するために、新しい非可逆構造圧縮アルゴリズムと索引付けシステムであるFoldcompを発表する。Foldcompは、内部座標とデカルト座標の組み合わせと、双方向のNeRFベースの戦略を用いることで、次善の策と比較して圧縮率を3倍向上させることができた。再構成誤差は0.08Åで、最も優れた非可逆圧縮と同程度である。Foldcompは、次に速い圧縮器よりも5倍速く、最も速い解凍器と競合する。Foldcompは、マルチスレッドの実装と、データベースのダウンロードやアクセッションによるタンパク質構造の効率的なクエリを可能にするPythonインターフェースにより、大規模なタンパク質構造のコレクションを管理および分析するための強力なツールである。
 Foldcompは無料のオープンソースソフトウェア(GPLv3)であり、LinuxmacOSWindowsで利用できる(https://foldcomp.foldseek.com)。Foldcompは、AlphaFold Swiss-Prot (2.9GB), TrEMBL (1.1TB), ESMatlas HQ (114GB) のデータベースをダウンロードできるように提供している。

 

 

インストール

Github

#pip
pip install foldcomp

#static binaries for Linux
wget https://mmseqs.com/foldcomp/foldcomp-linux-x86_64.tar.gz

#static binaries for Linux (ARM64)
wget https://mmseqs.com/foldcomp/foldcomp-linux-arm64.tar.gz

#binary for macOS
wget https://mmseqs.com/foldcomp/foldcomp-macos-universal.tar.gz

#binary for Windows (x64)
wget https://mmseqs.com/foldcomp/foldcomp-windows-x64.zip

> foldcomp -h

$ foldcomp -h

Usage: foldcomp compress <pdb_file> [<fcz_file>]

       foldcomp compress [-t number] <pdb_dir|tar> [<fcz_dir>]

       foldcomp decompress <fcz_file|tar> [<pdb_file>]

       foldcomp decompress [-t number] <fcz_dir|tar> [<pdb_dir>]

       foldcomp extract [--plddt|--amino-acid] <fcz_file> [<fasta_file>]

       foldcomp extract [--plddt|--amino-acid] [-t number] <fcz_dir|tar> [<fasta_dir>]

       foldcomp check <fcz_file>

       foldcomp check [-t number] <fcz_dir|tar>

       foldcomp rmsd <pdb1|cif1> <pdb2|cif2>

 -h, --help           print this help message

 -t, --threads        threads for (de)compression of folders/tar files [default=1]

 -r, --recursive      recursively look for files in directory [default=0]

 -f, --file           input is a list of files [default=0]

 -a, --alt            use alternative atom order [default=false]

 -b, --break          interval size to save absolute atom coordinates [default=25]

 -z, --tar            save as tar file [default=false]

 -d, --db             save as database [default=false]

 -y, --overwrite          overwrite existing files [default=false]

 --skip-discontinuous skip PDB with with discontinuous residues (only batch compression)

 --plddt              extract pLDDT score (only for extraction mode)

 --fasta              extract amino acid sequence (only for extraction mode)

 --no-merge           do not merge output files (only for extraction mode)

 --time               measure time for compression/decompression

 

 

 

 

実行方法

現在は単鎖のPDBファイルの圧縮にのみ対応していると書かれているが、v0.0.3からは複数鎖の構造ファイルも扱えるようになっている。

 

1、圧縮

PDBファイルを指定する。10スレッド指定。1行にPDBファイルのパスを1つずつ書いた

リストとしても指定できる。tarball、gzipped tarにも対応している。

foldcomp -t 10 compress input.pdb output.fcz

#リストを指定
ls *.pdb > list
foldcomp -t 10 compress -f list outdir
  • -t      threads for (de)compression of folders/tar files [default=1]
  • -f      input is a list of files [default=0]

 

2、解凍

圧縮されたFCZファイルを指定する。

foldcomp -t 10 decompress input.fcz output.pdb

 

3、チェック

正常なFCZファイルかどうかチェックする。

foldcomp check input.fcz

正常ならメッセージは表示されない。

 

4、抽出

FCZファイルを指定する。

#fasta形式でアミノ酸配列を取り出す
foldcomp extract --fasta input.fcz

#pLDDTスコア()を取り出す
foldcomp extract --plddt input.fcz
  • --plddt     extract pLDDT score (only for extraction mode)
  • --fasta     extract amino acid sequence (only for extraction mode)

 

 

レポジトリより

  • Foldcompは、ねじれ角を持つタンパク質構造を効率よく圧縮することができる。350残基の平均的な大きさのタンパク質では、6kb程度の容量が必要となる。
  • Foldcompの効率的な圧縮フォーマットは、1残基あたり13バイトでタンパク質構造を保存することができ、3次元座標を直接保存する場合と比較して、必要なストレージ容量を1桁削減することができる。コンパクトなバイナリファイル形式(FCZ)で、側鎖角だけでなく、バックボーンのねじれ角も符号化することで、この削減を実現した。
  • 予測タンパク質構造の大規模セットの構築済みのデータベースと、データベースファイルをダウンロードするためのPythonヘルパーが提供されている(レポジトリからリンク)。利用できるデータベースは、ESMAtlas v2023_02、ESMAtlas high-quality、AlphaFoldDB Uniprot、AlphaFoldDB Swiss-Prot、AlphaFoldDB Model Organisms、AlphaFoldDB Cluster Representatives。

 

引用

Foldcomp: a library and format for compressing and indexing large protein structure sets 
Hyunbin Kim, Milot Mirdita, Martin Steinegger
Bioinformatics, Volume 39, Issue 4, April 2023