世界を動かす技術を、日本語で。

SimpleFold: タンパク質の折りたたみは思っているよりも簡単です

2025年9月27日原文(github.com)

概要

  • SimpleFold は、汎用Transformer層のみで動作する新しいタンパク質折り畳みモデル
  • 複雑なドメイン固有設計や高価なモジュールを排除し、 flow-matching生成的学習目標 で訓練
  • 最大 30億パラメータ 規模で、860万以上のタンパク質構造データで訓練
  • 既存の最先端手法と競合する精度、アンサンブル予測でも高性能を実現
  • シンプルな設計が今後のタンパク質構造予測の新たな方向性を示唆

SimpleFold: タンパク質折り畳みは思ったよりシンプル

  • SimpleFold は、flow-matchingベースのタンパク質折り畳みモデル
  • 汎用 Transformer層 のみを使用、triangle attentionやpair representation biasなどの高コストな専用モジュールを不使用
  • 生成的flow-matching目的 で訓練、従来手法とは異なるアプローチ
  • 最大 3B(30億)パラメータ モデルを構築、860万件超の精製構造+PDB実験データで訓練
  • これまでで最大規模のタンパク質折り畳みモデル
  • 標準ベンチマークで既存の最先端モデルに匹敵する精度
  • 生成的訓練により、 アンサンブル予測 でも高い性能
  • 複雑なドメイン固有アーキテクチャへの依存を打破、新たな研究方向性を提案

インストール手順

  • GitHubリポジトリ からのインストール手順
    • リポジトリをクローン:
      • git clone https://github.com/apple/ml-simplefold.git
      • cd ml-simplefold
      • python -m pip install -U pip build; pip install -e .
      • pip install git+https://github.com/facebookresearch/esm.git(MLXバックエンド用、任意)

予測・推論の実行方法

  • Jupyter Notebook (sample.ipynb)でサンプル実装を提供
  • コマンドラインでFASTAファイルから構造予測
    • 例:
      • simplefold --simplefold_model simplefold_100M --num_steps 500 --tau 0.01 --nsample_per_protein 1 --plddt --fasta_path [FASTA_PATH] --output_dir [OUTPUT_DIR] --backend [mlx, torch]
    • モデルサイズ(100M/360M/700M/1.1B/1.6B/3B)指定
    • MLX(Apple向け)・PyTorchバックエンド両対応

評価・ベンチマーク

  • 予測構造データ (各種モデルサイズ別)を提供
    • CAMEO22, CASP14, Apo, Fold-switch(CoDNaS)用
  • OpenStructure 2.9.1 のDockerイメージを利用し評価
    • 例:
      • python src/simplefold/evaluation/analyze_folding.py --data_dir [PATH_TO_TARGET_MMCIF] --sample_dir [PATH_TO_PREDICTED_MMCIF] --out_dir [PATH_TO_OUTPUT] --max-workers [NUMBER_OF_WORKERS]
  • 二状態予測 (Apo/CoDNaS)はTMscoreバイナリを使用
    • 例:
      • python src/simplefold/evaluation/analyze_two_state.py --data_dir [PATH_TO_TARGET_DATA_DIRECTORY] --sample_dir [PATH_TO_PREDICTED_PDB] --tm_bin [PATH_TO_TMscore_BINARY] --task apo --nsample 5

学習・ファインチューニング

  • SimpleFold は独自またはカスタムデータセットで学習可能
  • 学習用データ
    • PDBの実験構造、AFDB SwissProt、AFESMの精製予測を使用
    • 各種ターゲットリスト(csv/json形式)を提供
      • 例:swissprot_list.csv(約27万件)、afesm_list.csv(約190万件)、afesme_dict.json(約860万件)
    • afesme_dict.jsonはクラスタIDごとにメンバーIDを持つ構造
  • mmcif構造処理
    • Redisサーバーを利用してmmcifファイルを前処理
      • wget https://boltz1.s3.us-east-2.amazonaws.com/ccd.rdb
      • redis-server --dbfilename ccd.rdb --port 7777
      • python src/simplefold/process_mmcif.py --data_dir [MMCIF_DIR] --out_dir [OUTPUT_DIR] --use-assembly
  • 学習実行
    • Hydraベースの設定ファイルを利用
      • python train experiment=train
      • FSDP戦略:python train_fsdp.py experiment=train_fsdp

論文引用・ライセンス

  • 論文引用:
    • Wang, Yuyang et al., "SimpleFold: Folding Proteins is Simpler than You Think", arXiv preprint arXiv:2509.18480, 2025
  • コード・モデルのライセンス はリポジトリのLICENSEおよびLICENSE_MODELを参照
  • 謝辞・利用OSSはACKNOWLEDGEMENTSに記載

参考リンク

  • arXiv論文: https://arxiv.org/abs/2509.18480
  • GitHubリポジトリ: https://github.com/apple/ml-simplefold

Hackerたちの意見

なんでAppleがタンパク質の折りたたみをやってるの?

Siriがうまくいかなかったからじゃない?

評判を洗浄してるの?

ノーベル賞を取ってないのが嫉妬してるんだろうね。

ローカル推論について。彼らは、デスクトップマシンで素早く推論できるように、これや他の最先端モデルを小型化することに興味があるんじゃないかな。記事では、図1EでM2 Max 64GB上での推論が示されてる。正直、これは素晴らしいアイデアだと思う。もし小さな製薬会社なら、迅速なローカル推論ができることで多くの障壁やガードが取り除かれるよね。生成されたシーケンスに対して、ラボのフィードバックを使ってベイズ最適化や強化学習もできるし。対照的に、AlphaFoldを動かすにはかなりのリソースが必要だし、彼らの複数アライメントの使い方はちょっとハッキーで、近いホモログがないタンパク質ではパフォーマンスが悪くなるし、前処理も大量に必要だよね。数年前、MetaのESMがアライメントフリーのアプローチが可能で、うまく機能することを示してたし。AlphaFoldには特別なソースはなくて、ただのseq2seq問題だし、注意を使わないSSMも含めて、いろんなアプローチがうまくいくよ。

グリーンウォッシングの反対って何て呼ぶの?モデルのトレーニングに他と同じくらいエネルギーを使ってることを示したいとき。

わからないけど、収益を生むものを必ずしも作らないR&Dの仕事に応募できる?もしかしたら、彼らがAIチップをテストして磨くためのプロジェクトなのかも?よくわからないけど。

多分、ByteDanceとFacebook(EvolutionaryScaleに分社化された)がやってるからだね。

AppleにはML研究グループがあるよ。明らかにAppleらしいことや、他のアプリケーション、一般的に役立つ最適化、基本的な研究をやってるんだ。 https://machinelearning.apple.com/

これは今回の実際の理由ではないかもしれないけど、知っておくといいと思うことがあるよ。「科学のためのAI」研究の中には、テック企業で行われているものの中で、基本的にマーケティングのためにやってるものもあるんだ。企業の製品に直接的に利益がない場合や、実際に何か重要なものにつながる可能性が低い場合でも、「名声」のためには良いことなんだよね。

記事の裏にあるGitHubリポジトリのリンクだよ。 https://arxiv.org/abs/2509.18480

要約だけでもこう言ってるね(合ってればだけど)、「AIは必要だけど、他の人たちがやってるほどには必要じゃない。」

Hacker Newsで議論の続きを見る