動機:抗体の多目的な結合特性により、それらは非常に重要な生物療法のクラスになりました。しかし、治療抗体の発達は複雑で高価で時間のかかるタスクであり、最終的な抗体は強力で具体的な結合を持つだけでなく、開発可能性の問題によって最小限にも影響を与える必要があります。タンパク質配列空間におけるトランスベースの言語モデルの成功と膨大な量の抗体配列の利用可能性により、抗体の発見と設計を導くのに役立つ多くの抗体特異的言語モデルの開発が生まれました。抗体の多様性は、主にV(D)Jの組換え、CDR内の突然変異、および/またはCDRの外側の生殖系統から離れた少数の変異から生じます。したがって、すべての天然抗体配列の可変ドメインの大部分は生殖細胞系のままです。これは、抗体特異的言語モデルの事前トレーニングに影響を及ぼし、シーケンスデータのこのファセットは、生殖系残基に対する一般的なバイアスを導入します。これは、生殖系統から離れた変異がターゲットへの特異的かつ強力な結合を生成するためにしばしば不可欠であるため、挑戦をもたらします。つまり、言語モデルは生殖系統から離れた重要な突然変異を示唆できる必要があることを意味します。
結果:この研究では、一般的なタンパク質と抗体特異的言語モデルの両方に対する影響を調べる、生殖細胞系バイアスの意味を調査します。非ドールライン残基を予測するために最適化された一連の新しい抗体特異的言語モデルを開発および訓練します。次に、最終モデルであるAblang-2を現在のモデルと比較し、高い累積確率で多様な有効な変異を示唆する方法を示します。 Ablang-2は、対応のないデータとペアの両方のデータの両方でトレーニングされており、自由に利用可能です(https://github.com/oxpig/ablang2.git)。
可用性と実装: Ablang2は、https://github.com/oxpig/ablang2.gitで入手可能なPythonパッケージです。
Tcrlang-Paired: Ablang2アーキテクチャは、ペアのTCRシーケンスでトレーニングされたモデル重量で初期化できます。このモデルは、TCRシーケンス上のAblang2と同一の方法で使用できます。唯一の機能が欠落しているのは、Alignコマンドの欠如です。マスキングと同様に、シーケンスと残留エンコーディングの生成はすべて同じです。たとえば、ノートブックを参照してください。
Ablangは自由に利用でき、PIPでインストールできます。
pip install ablang2またはGithubから直接。
pip install -U git+https://github.com/oxpig/AbLang2.gitNB:返された出力を整列させたい場合(つまり、引数「Align = true」という引数を使用します)、同じ環境にPandasとAnarciのバージョンを手動でインストールする必要があります。 AnarciはBiocondaを使用して設置することもできます。ただし、このバージョンはサードパーティによって維持されています。
conda install -c bioconda anarciAblang2は、さまざまな方法で、さまざまなユーザーケースで使用できます。中央のビルディングブロックは、トークン剤、アブレプ、アブランです。
import ablang2
# Download and initialise the model
ablang = ablang2.pretrained(model_to_use='ablang2-paired', random_init=False, ncpu=1, device='cpu')
seq = [
'EVQLLESGGEVKKPGASVKVSCRASGYTFRNYGLTWVRQAPGQGLEWMGWISAYNGNTNYAQKFQGRVTLTTDTSTSTAYMELRSLRSDDTAVYFCARDVPGHGAAFMDVWGTGTTVTVSS', # The heavy chain (VH) needs to be the first element
'DIQLTQSPLSLPVTLGQPASISCRSSQSLEASDTNIYLSWFQQRPGQSPRRLIYKISNRDSGVPDRFSGSGSGTHFTLRISRVEADDVAVYYCMQGTHWPPAFGQGTKVDIK' # The light chain (VL) needs to be the second element
]
# Tokenize input sequences
seqs = [f"{seq[0]}|{seq[1]}"] # Input needs to be a list, with | used to separated the VH and VL
tokenized_seq = ablang.tokenizer(seqs, pad=True, w_extra_tkns=False, device="cpu")
# Generate rescodings
with torch.no_grad():
rescoding = ablang.AbRep(tokenized_seq).last_hidden_states
# Generate logits/likelihoods
with torch.no_grad():
likelihoods = ablang.AbLang(tokenized_seq)
次のJupyterノートブックを介して探索できる特定のユーザーケースのラッパーを構築しています。
@article{Olsen2024,
title={Addressing the antibody germline bias and its effect on language models for improved antibody design},
author={Tobias H. Olsen, Iain H. Moal and Charlotte M. Deane},
journal={bioRxiv},
doi={https://doi.org/10.1101/2024.02.02.578678},
year={2024}
}