CAFA 5 Protein Function Prediction みんなのお話(2023/07/03)


# はじめに
<!-- 発端や概要を記載 -->
[6/30](https://qiita.com/taichan003/items/e2ab1d4c70ff715faf05), [7/2](https://qiita.com/taichan003/items/ed365c6b2470d25a4a3f) のメモの続きです。
以下のkaggle コンペについての覚書です。

https://www.kaggle.com/competitions/cafa-5-protein-function-prediction


# 目次
<!-- タイトルとアンカー名を編集 -->
1. [New to protein function prediction and want to catch up quickly?](#Chapter1)
1. [Information Accretion explainer](#Chapter2)
1. [0.6 and beyond - a literature review for better ideas](#Chapter3)
1. [Protein Families](#Chapter4)
1. [quick-go annotations](#Chapter5)
1. [Naive baseline with LSTM](#Chapter6)


<!-- 各チャプター -->
<a id="#Chapter1"></a>
# New to protein function prediction and want to catch up quickly?

https://www.kaggle.com/competitions/cafa-5-protein-function-prediction/discussion/403203

Introduction_to_protein_prediction-4.pdf にCAFAについての基礎知識がある。
<details><summary>要約(chatGPT 大先生に感謝)</summary><div>

・タンパク質は細胞の構造と機能に中心的な役割を果たす生物学的なマクロ分子であり、触媒活性、筋収縮、構造的なサポート、抗菌・抗ウイルス防御、シグナル伝達・調節、他のタンパク質の折りたたみの助け、貯蔵などの重要な生物学的役割を持つ。
・タンパク質の機能は、その存在する環境によって影響を受ける。この環境には他のタンパク質、DNA、RNAなどのマクロ分子が含まれる。
・タンパク質の機能予測は、計算機科学の重要な課題であり、新しい手法の開発においてはデータの収集や注意点についても考慮する必要がある。
・微生物は分泌を通じて病原性を持つ可能性があり、環境中に存在する。
・タンパク質はアミノ酸の連鎖であり、3Dの形状を取ることができる。
・タンパク質の構造はX線結晶構造解析やNMR分光法によって解明され、静的な分子として可視化される。
・ヘモグロビンは、2つのアルファサブユニットと2つのベータサブユニットからなるテトラマーであり、酸素の結合と輸送に関与している。
・タンパク質の構造のダイナミクスは、その生物活性に重要な役割を果たしている。
・タンパク質の機能は、オントロジーと呼ばれる階層的な知識表現を用いて記述されることが一般的であり、Gene Ontology (GO) Consortiumによって開発されたものがある。
・Molecular Function Ontology (MFO)、Biological Process Ontology (BPO)、Cellular Component Ontology (CCO)は種に依存しない依存性のある有向非循環グラフである。
・Gene Ontologyは生物の表現型を扱わないため、生物学を統一するための共通の知識表現を提供することが目的である。
・MFOはタンパク質の酵素活性などの生化学的な機能を表し、BPOは細胞プロセスや生物学的な結果を表す。
・タンパク質は20種類のアミノ酸から構成されるため、文字列として表現することが便利である。
・タンパク質はグラフやネットワークとしても表現することができる。
・タンパク質の機能予測には、文字列、グラフ、時間系列のアルゴリズムを組み合わせて統計的推論を行う必要がある。
・UniProtKBは、タンパク質の配列と機能アノテーションを提供するデータベースである。
・Pfamは、タンパク質の配列ファミリーを提供するデータベースである。
・PDBは、タンパク質の構造情報を提供するデータベースである。
・タンパク質の機能予測は、与えられたデータと未知のタンパク質を考慮して、最も確からしいアノテーションを予測する問題である。
・タンパク質の機能予測では、オントロジーの中で一貫性のある部分グラフを考慮し、各頂点に関連する全ての祖先が部分グラフに含まれる必要がある。
・タンパク質の機能予測では、各項目や部分グラフに関連付けられたスコアを出力し、適切な決定閾値を適用して適合率と再現率を調整することが期待される。
・DNAトランスロケーゼ活性は、与えられたタンパク質の機能予測問題の一部である。
・タンパク質機能予測問題では、未注釈のタンパク質が与えられ、可能な出力の空間はオントロジーの一貫したサブグラフの集合である。
・一方、候補遺伝子の優先順位付けは、機能的な用語が与えられ、比較的小さな候補遺伝子のセットをランク付けすることを目的としている。
・タンパク質の機能予測は、生物学的な課題と計算上の課題がある。
・生物学的には、タンパク質の機能は生物の文脈で決定され、単一の実験や出版物だけでは完全には決定されない。また、いくつかの実験は生物、予算、倫理的な理由でいくつかの生物で実施することができない。利用可能な機能データには、実験の誤解釈、キュレーションエラー、実験バイアスなどによるエラーが含まれることもある。
・計算的には、タンパク質の機能予測は多ラベル分類問題または構造化出力学習の一例として見ることができる。また、異なる生物学的データを統合する必要がある。さらに、パフォーマンス評価には、オントロジー内の用語間の類似性関数を開発する必要があるが、オントロジー内の用語間には関係があり、異なる枝でどの機能が記述されているかの解像度の違いがあるため、これがどのように行われるべきかは完全には明確ではない。
・タンパク質の機能予測は、生命を分子レベルで理解するために重要である。
・タンパク質の機能の変化は多くの疾患の原因となるため、疾患の分子メカニズムを理解するためにも重要である。
・タンパク質の機能予測は、生物学の仮説の立案や実験の優先順位付けに役立つだけでなく、薬物設計や分子進化の研究にも活用できる。
・過去10年間で生物データベースの成長が見られる。
・Protein Data Bankは年々増加しており、現在は約40万のタンパク質構造が利用可能。
・Swiss-Protは機能情報の成長を示す指標として利用され、2013年8月時点で約2.6万の配列が実験的に検証されたMFO用語を持ち、約4万の配列がBPO用語を持ち、さらに約4万の配列がCCO用語を持っている。
・TrEMBLはUniProtKB内の未編集のタンパク質配列の数の増加を示している。
・プロテインの精度と再現率を計算するための式が与えられている。
・プロテインの平均精度と平均再現率を計算する方法が示されている。
・F-measureを使用して、計算モデルの総合評価を行う方法が示されている。
・SNVとSPVは、タンパク質の機能予測に使用されるメトリクスであり、ROC曲線とAUCを用いて性能を評価する。
・CAFA 1では、これらのメトリクスが使用されたが、全てのオントロジーの用語が同じ重要度で扱われるため、問題がある。
・タンパク質の機能予測をより詳細に行うためには、個々の残基にもオントロジーの用語を割り当てることができる。
・タンパク質の機能予測において、機能性残基の組み込みが重要である。
・CAFA（Critical Assessment of Functional Annotation）は、タンパク質の機能予測手法の総合的な評価を行うチャレンジである。
・CAFAでは、未注釈または不完全に注釈されたタンパク質を提供し、参加者にこれらのタンパク質の機能予測を行ってもらう。
・タンパク質の機能予測の評価は困難であり、単一の指標ではなく複数のデータを組み合わせる必要がある。
・CAFA 2では新たなオントロジーが追加され、部分的にアノテーションされたターゲットも評価対象となる。
・CAFA 2では、モデルのトレーニングに使用されるデータの改善と、より強力なアルゴリズムの影響を区別するために、CAFA 1のベースラインメソッドを再トレーニングする。
・将来の再評価のためにデータを保存し、フィールドの進捗状況を追跡するための良いデータを提供する。
・各グループは匿名のままであり、予測提出期限（および結果の最初の発表の前）まで実験から撤退することもできる。
・公開された方法のパフォーマンス精度は匿名化されないが、主要な評価基準でトップ10にランクインしたすべての方法は匿名化解除される。
・ClarkとRadivojacによる情報理論的評価に基づく予測されたオントロジーの注釈の研究
・Costelloらによるデータ駆動型のオントロジーの研究
・Dutkowskiらによる分子ネットワークから推定された遺伝子オントロジーの研究
・A. G. MurzinらによるSCOPは、タンパク質の配列と構造の研究のためのデータベースである。
・NC-IUBMBによる酵素命名法は、酵素の命名と分類に使用される。
・R. NussinovとH. J. Wolfsonは、コンピュータビジョン技術を用いて生物マクロ分子の3次元構造モチーフを効率的に検出する手法を提案した。
・複数の手法を組み合わせることで、タンパク質の機能予測の精度を向上させることができる。
・バイオオントロジーを利用することで、タンパク質の機能を体系的に分類することができる。
・公共データベースのアノテーションには誤りがあり、タンパク質の機能空間の理解に影響を与える可能性がある。
・複数の配列の整列の複雑さについての研究が行われている。
・人間の葉酸受容体の構造に関する研究が行われ、葉酸と抗葉酸の認識に多様性があることが明らかになった。
・タンパク質構造中の機能的な残基を特定するための計算方法の研究が行われている。
</div></details>

### 気になったこと
・生物学的には、タンパク質の機能は生物の文脈で決定され、一つの実験や出版物だけで完全に決定されることはほとんどない。また、ある実験は生物、予算、倫理的な理由でいくつかの生物で実施することができない場合もある。さらに、いくつかの実験はin vitroで行われ、in vivoでのタンパク質の活性を正確に反映しない場合がある。利用可能な機能データには、実験の誤解釈、キュレーションエラー、実験バイアスなどによるエラーが含まれることもある。生物学的なデータベースに提供されるデータは不完全であり、偏りがあり、ノイズがある。
・計算的には、タンパク質の機能予測は多ラベル分類問題または構造化出力学習の一例と見ることができる。さらに、異なる生物学的データ（配列、構造、相互作用など）を扱う必要がある。また、一つの種に対して統計学習を行い、他の種について推論することは困難である。
・タンパク質の機能予測は困難であり、特に真核生物の種に関しては予測が期待以下である。

タンパク質をどの生物種が持つかのデータは教師データに関しては与えられているけど、テストデータについては不明だから使いづらい。。。


<a id="#Chapter2"></a>
# Information Accretion explainer

https://www.kaggle.com/competitions/cafa-5-protein-function-prediction/discussion/405237

評価基準についての解説。

### 気になったこと
親ノードを含むタンパク質が多くて子ノードが少ないと原理上重みづけが大きくなるらしい。
kaggle ってこういうのどのくらい気にするものなのかな。今のところはまあいいや。


<a id="#Chapter3"></a>
# 0.6 and beyond - a literature review for better ideas

https://www.kaggle.com/competitions/cafa-5-protein-function-prediction/discussion/419802

今までのコンペの考え方の紹介。

GOLabeler: improving sequence-based large-scale protein function prediction by learning to rank
<details><summary>要約</summary><div>

・GOLabelerは、大規模なタンパク質の機能予測を改善するための手法であり、学習によってランキングを行うことでタンパク質の機能を予測する。
・GOLabelerは、タンパク質の配列情報を入力として使用し、GO（Gene Ontology）用語の頻度、配列アライメント、アミノ酸トリグラム、ドメインとモチーフ、生物物理学的特性などの特徴を統合して予測を行う。
・GOLabelerは、他のAFP（automated function prediction）手法と比較して優れたパフォーマンスを示し、特に難しいタンパク質に対して有効であることが示されている。
・Gene Ontology（GO）は、遺伝子や遺伝子産物（タンパク質やRNAなど）の一貫した記述を提供するために1998年に開始された。GOは現在、分子機能オントロジー（MFO）、生物学的プロセスオントロジー（BPO）、細胞成分オントロジー（CCO）の3つのドメインにわたる40,000以上の生物学的概念を持つ。
・GOによるタンパク質の機能注釈は、生物学の本質を理解するために重要であり、次世代シーケンシング技術の発展に伴い、タンパク質配列の爆発的な増加が見られる一方で、実験的なGO注釈を持つタンパク質の数は限られている。
・自動化された機能予測（AFP）は、大規模なマルチラベル分類問題であり、GO用語をクラスラベルとし、1つのタンパク質を複数のラベル（複数のGO用語）を持つインスタンスとして扱う。AFPは、構造化されたオントロジー、タンパク質ごとの多数のラベル、およびタンパク質ごとのGO用語の数の大きな変動など、いくつかの課題を持つ。
・position-specific scoring matrix (PSSM)を使用して、クエリを対応するGO termにスコアリングする方法がある。
・ドメインやモチーフは、クエリタンパク質の機能サイトであり、CATH、SCOP、Pfamなどのリソースを使用して検出される。
・ProFETは、アミノ酸配列から生成される生物物理学的および生化学的属性を含む数百の特徴を抽出するツールである。
・異なる情報や分類器を統合することは、AFPの性能向上のための鍵となる。
・GOLabelerは、異なるシーケンスベースの情報を統合するための学習ランキング（LTR）に基づいた手法であり、AFPの性能向上に有望である。
・GOLabelerは、クエリタンパク質の関連性の高いGO termを上位にランク付けすることができる。
・GOLabelerは、Naive、BLAST-KNN、LR-3mer、LR-InterPro、LR-ProFETの5つのコンポーネントメソッドを使用してGO termを予測する。
・Naiveメソッドは、GO termの事前確率を反映し、BLAST-KNNは類似性スコアを使用して関数予測を行う。
・LR-3merはアミノ酸トリグラムの頻度を使用し、LR-InterProはドメイン、ファミリー、モチーフの情報を使用する。
・これらの異なる情報から生成されるコンポーネントは互いに補完的である。
・GOLabelerは、複数のコンポーネントメソッドの出力を統合して、タンパク質の機能予測を行う手法である。
・GOLabelerは、3つのステップ（候補GO項目の生成、GO項目のランキングのための特徴量の生成、ランキングのための学習）からなる。
・GOLabelerは、他の5つの手法（One vote、Weighted voting、Consensus、BLAST、GoFDR）と比較され、その性能が評価されている。
・GoFDRは、クエリタンパク質に対してBLASTまたはPSI-BLASTを実行し、クエリシーケンス上の複数の配列アライメント（MSA）を取得し、MSA内の各GO用語の機能的に識別される残基（FDR）を見つけ出し、位置特異的スコアリング行列（PSSM）を生成します。
・実験では、UniProtからタンパク質配列のFASTA形式のファイルと、SwissProt、GOA、GOからのタンパク質機能アノテーションを使用しました。これらのデータを使用して、トレーニングデータセットとテストデータセットを作成しました。
・性能評価には、AUPR（Precision-Recall曲線の下の面積）、Fmax、Sminの3つの指標を使用しました。これらの指標は、多ラベル分類の設定で使用されます。また、GOLabelerの実装には、biopythonとsklearnを使用しました。
・BLAST-KNNとGoFDRは、他の手法と比較しても優れたパフォーマンスを示した。
・GOLabelerは、すべてのコンポーネントを組み合わせることで最も優れた結果を示した。
・BPOはAFPで最も難しいタスクであり、GOLabelerは他のタスクよりも性能が低かった。
・GOLabelerは、アノテーションデータを増やすことで簡単に性能を向上させることができる。
・GOLabelerは、BLASTやGoFDRよりも優れた性能を示し、CAFAで高い性能を発揮する。
・GOLabelerは、難しいタンパク質に対して特に有用であり、他の競合手法よりも優れた結果を示す。
・GOLabelerは、タンパク質の機能予測のための新しい手法であり、他の手法と比較して予測の品質が高いことが示された。
・GOLabelerは、GOのDAG構造を使用して、タンパク質に対応するすべてのGO用語を利用することができる。
・GOLabelerは、学習による順位付け（LTR）を使用しており、タンパク質ごとのGO用語の数を選択する必要がない。
・この研究は、中国国家自然科学基金（NOs. 61572139および31601074）、MEXT KAKENHI 16H02868、JST: ACCEL、Tekes（現在のBusiness Finland）：FiDiPro、Academy of Finland：AIPSEプログラム、およびShanghai Key Laboratory of Intelligent Information Processingのオープンファンド（No. IIPL-2016-005）の一部の支援を受けています。
・利益相反は宣言されていません。
・参考文献には、タンパク質データベース検索プログラムの新世代であるGapped BLASTとPSI-BLAST、生物学の統一のためのツールであるGene ontology、タンパク質機能予測のための手法であるXgboost、タンパク質機能予測のための情報理論的評価などが含まれています。
</div></details>

<details><summary>気になったこと</summary><div>

モデル自体の公開はなし。
「GOLabelerの実験結果は、GOLabelerの優れた性能が、BLAST-KNNとLR-Interproという2つの構成手法に大きく起因していることを示している。タンパク質の相同性情報を利用するBLAST-KNNとは対照的に、LR-Interproはタンパク質のドメイン、ファミリー、モチーフ情報を機能予測に利用する。つまり、配列の類似性だけではGOLabelerの性能は不十分である。」
(NetGO 3.0 から)「表8を見ると、BLAST-KNNが有効な結果を得られなかったのは、相同性ベースの手法が難しいタンパク質の機能予測に適していなかったためであることが明らかである。LR-InterProとLR-ESMは生のアミノ酸配列から特徴を抽出し、BLAST-KNNよりも良い結果を得た。予測された上位20のGO用語において、LR-ESMが達成した真正サンプルの数は、14の正しい機能ラベルを予測した他の手法よりも有意に多い。」
NetGO2 に使用されるモデルは次の通り。
<img width="500" alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3470253/e2d9ddc8-bd04-563a-255a-4cab72ea852b.png">
</div></details>



DeepGO: predicting protein functions from sequence and interactions using a deep ontology-aware classifier
<details><summary>要約</summary><div>

・本研究では、タンパク質の機能を予測するための新しい手法を開発した。
・タンパク質の配列情報と種間のタンパク質-タンパク質相互作用ネットワークから特徴を学習し、Gene Ontology（GO）の構造を利用して深層学習モデルを構築する。
・Computational Assessment of Function Annotation（CAFA）の基準に基づいて評価し、BLASTなどのベースライン手法と比較して有意な改善を示した。
・タンパク質の機能予測は、タンパク質の配列、構造、機能の複雑な関係によって困難である。
・タンパク質の機能予測は、Gene Ontology（GO）に基づいて行われるが、GOには40,000以上の機能があり、複数の関数クラスに割り当てられることもある。
・タンパク質の機能予測は、単一のタンパク質だけでなく、他のタンパク質との相互作用や生理的な機能も考慮する必要がある。
・Convolutional Neural Networks (CNNs)は生物学的なニューロンの受容野を模倣し、入力層に対して畳み込み操作を適用して出力を計算する。
・1次元の畳み込みは、タンパク質の配列データに適用され、順次的な相関を利用する。
・畳み込みと時系列の最大プーリング層を経て、タンパク質配列の高次の表現が得られる。
・評価は2つの指標で行われる。1つ目はタンパク質中心の最大F-メジャーであり、タンパク質ごとにF-メジャーを計算し、最大のF-メジャーを選択する。2つ目は項目中心の指標であり、各項目ごとにROC曲線のAUCを計算する。
・最大F-メジャーの計算には、適合率と再現率が使用される。適合率は少なくとも1つの項目を予測するタンパク質について平均化され、再現率はすべてのタンパク質について平均化される。
・項目中心の指標では、感度と特異度が計算される。感度は指定された偽陽性率に対する感度（または再現率）のROC曲線のAUCを計算する。
・与えられた文書では、タンパク質の機能予測に関する機械学習モデルが提案されている。
・モデルは、タンパク質の特徴学習、階層的な出力空間での機能予測、タンパク質間相互作用ネットワークの情報を組み合わせることを目指している。
・モデルの性能は、タンパク質の配列情報だけでなく、タンパク質間相互作用ネットワークの情報を組み込むことで改善されることが示されている。
・トレーニングデータセットと類似した配列を持つタンパク質配列をクラスタリングし、トレーニングセットとテストセットに分けた。
・DeepGOは、異なるタイプのタンパク質に対しても高いパフォーマンスを示すことができる。
・DeepGOのモデルは、タンパク質の配列情報とネットワークの相互作用情報を組み合わせて予測を行う。
・DeepGOは、Ubiquitin-related domain (IPR029071)を持つタンパク質のBP（生物学的過程）およびMF（分子機能）のアノテーションを正確に予測できない。
・高レベルのアノテーション（多くのアノテーションを持つ）は、一般的により具体的なアノテーションよりも優れたパフォーマンスを示す。
・DeepGOの予測パフォーマンスは、トレーニングサンプルの数と強く相関しており、トレーニングサンプルの数が増えると、より一般的な高レベルの機能のために常に増える。
・DeepGOモデルには、タンパク質の構造情報や他の情報源を組み込むことができる。
・Hierarchical classificationモデルは、全体の階層構造に基づいて予測性能を最適化し、クラスの依存関係を考慮して学習することができる。
・モデルはエンドツーエンドの学習が可能であり、十分なトレーニングデータがあれば任意のクラスを予測することができるが、大量のトレーニングデータと計算リソースが必要である。
・タンパク質の相互作用ネットワークと遺伝子オントロジーからのタンパク質の注釈付け
・疾患オントロジーを用いたヒトゲノムの注釈付け
・タンパク質機能予測のためのコンピュータの大規模評価
・タクソノミーにおける意味的類似度の情報ベースの測定と自然言語の曖昧さの問題への応用
・タンパク質機能のネットワークベースの予測
・gostructメソッドを使用した遺伝子オントロジー用語の階層的分類
・生命の木を統合したタンパク質間相互作用ネットワーク
・RmsProp：勾配を最近の大きさの実行平均で割る
・タンパク質機能予測におけるテキストマイニングの役割
・超深層学習モデルによる正確な新規タンパク質接触マップの予測
・異種データソースを使用したタンパク質機能予測
・深層学習ベースのシーケンスモデルによる非コーディング変異の効果の予測
</div></details>

<details><summary>気になったこと</summary><div>

「DeepGOPlusでは、機能既知のタンパク質に対する類似性ベースの検索とモチーフベースの機能予測を組み合わせており、この組み合わせにより全体として最高の予測性能が得られます。特に、機能既知の類似タンパク質が存在しない新規タンパク質をアノテーションする場合には、我々のモチーフベースのモデルが最も適しています。」
「我々は既に、配列特徴を学習するために、リカレントニューラルネットワーク、長期-短期記憶ネットワーク、オートエンコーダなど、いくつかのタイプのニューラルネットワークで実験を行ってきました。しかし、私たちの試みは失敗に終わり、CNNが最も良い結果を与えてくれました。」
下図が CNN のアーキテクチャらしい。
<img width="500" alt="DeepGO.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3470253/83b16cb7-9f3a-e9d5-c0db-a12ae172ebc5.png">
</div></details>



LEP-AD: Language Embedding of Proteins and Attention to Drugs predicts drug target interactions
<details><summary>要約</summary><div>

・LEP-ADは、Evolutionary Scale Modeling (ESM-2)モデルを使用して、ドラッグターゲットの相互作用を予測するためのTransformerタンパク質言語モデルを確立する。
・LEP-ADは、Davis、KIBA、DTC、Metz、ToxCast、STITCHなどの複数のデータセットを使用して、競合手法（SimBoost、DeepCPI、Attention-DTA、GraphDTAなど）と比較して、最先端の結果を報告している。
・プロテインの埋め込みを使用した事前学習モデル（LEP-AD）は、プロテインの明示的なアルファフォールド3D表現を使用したモデル（例：Alphafoldによる監督されたLEP-AD）よりも優れた性能を示すことがわかった。
・新しいアプローチ「LEP-AD」は、言語モデルを使用したタンパク質の深層潜在埋め込みと、トランスフォーマーモデルで計算されるドラッグのグラフベースの表現を組み合わせています。
・LEP-ADは、既存の最先端の方法と比較して、ドラッグとターゲットタンパク質の結合親和性を正確に予測する能力を示し、精度と速度の面で大幅な改善を提供します。
・LEP-ADは、薬物の発見と開発において貴重なツールとしての潜在能力を示し、薬物-ターゲット相互作用の分子メカニズムに対する洞察を提供し、臨床試験のための薬物候補の選択を指南することができます。
・Kalakotiら（2022）によると、従来の小規模なモデルでは、薬物とターゲットの相互作用の予測において現在の最先端の性能には及ばなかった。
・LEP-ADモデルは、ターシャリープロテイン構造を考慮に入れたモデルであり、Alphafoldモデルによって監督されている。
・LEP-ADモデルは、薬物分子のトポロジカル情報とターゲットタンパク質の順序情報を抽出し、タンパク質-リガンド結合親和性を予測するために設計されている。
・Shiらのモデルは、ラベル伝播と特徴伝播を統合した共有のメッセージパッシングフレームワークを使用している。
・モデルは、グラフ表現とトランスフォーマーベースのGCNレイヤーを組み合わせて、ドラッグとターゲットの相互作用を予測するための重要な情報を抽出する。
・モデルは、事前に訓練されたESM-2モデルを使用して高い精度を維持しながら計算時間を大幅に削減する。
・MSEは予測値と実際の値の差を測るための一般的な指標であり、小さいほど予測値が実際の値に近いことを示す。
・r2メトリックはQuantitative Structure-Activity Relationship（QSAR）モデルの予測性能を評価するために使用される指標であり、r2値が0.5以上であれば予測は受け入れられるとされる。
・CIは解析における予測値と実際の値の差を測る指標であり、CIの値が大きいほど予測値と実際の値の差が大きいことを示す。
・実験では、Nguyen et al.（2019）のデータベースから同じトレーニングとテストの例を使用し、同じパフォーマンスメトリック（MSE、Concordance Index、r2m）を使用した。
・ハイパーパラメータは事前に選択され、調整は行われていない。
・結果はCI、r2m、MSEを使用して評価され、Alphafold2の使用による予測モデルのパフォーマンスへの影響も評価された。
・Alphafold2に比べて、改良されたESMモデルは競争力があり、前のモデルと比較しても改善されていた。
・Alphafold2を使用した場合、複数の配列アラインメント（MSA）の生成プロセスが遅くなる。
・Davisデータセットを使用して得られた結果によると、Alphafold2の性能が向上する可能性があるが、速度、拡張性、総合的なパフォーマンスの向上のために、事前学習済みのESM-2モデルを再学習することを選択した。
・大規模なデータセットでも、決定係数（r2）はかなり向上したが、平均二乗誤差（MSE）や一致指数は改善が少なかった。
・我々の手法は、ToxCastやDTCでは約2％、STITCHデータセットとMetzでは約4％、Davisデータセットでは約5％のR2メトリックの改善を示した。
・r2と他のメトリックの改善の差異は、真の値と予測値の間の強い線形関係がr2の向上に寄与する一方、MSEや一致指数は外れ値や線形関係では捉えられない要素により影響を受ける可能性がある。
・大規模な事前学習済みタンパク質言語モデルを使用することで、薬物とターゲットの相互作用の分子メカニズムを解明する手法の潜在能力を示した。
・事前学習済みモデルを使用することは、明示的に3Dタンパク質表現を使用するよりも有利であることがわかった。
・薬物とターゲットの相互作用を正確に予測することは、有望な薬剤候補の選択やその特性の最適化を可能にし、薬物開発の成功率を向上させることができる。
・薬物とターゲットの結合親和性を予測するための機械学習モデルが開発されている。
・グラフ畳み込みネットワークや深層学習を用いた手法が使用されている。
・これらの手法は、薬物の再利用や新しい薬物の開発に役立つ可能性がある。
・Kunal Royらによる研究では、定量的な構造活性関係の予測の品質を評価するためのAURM2指標の適用についての事例研究が行われた。
・Yunsheng Shiらの研究では、セミスーパーバイズド分類のための統一されたメッセージパッシングモデルを用いたマスクされたラベル予測が行われた。
・Bonggun Shinらの研究では、自己注意ベースの分子表現を用いた薬物-ターゲット相互作用の予測が行われた。
・Alphafold2モデルを使用して、タンパク質のエンコーディングを行った。
・予測されたタンパク質構造を生成し、それを正規化してバイナリ行列に変換した。
・タンパク質の接触マップをTransformer-GCNネットワークに入力し、各ノードの潜在表現を取得した。
・2023年3月15日に投稿されたこのプレプリントは、まだ同僚の査読を受けていない。
・図5は、監督付きAlphafold2モデルを使用してLEP-AD-VariantのCIプロットを示している。
・著作権は12に帰属し、許可なく再利用することはできない。


</div></details>


<details><summary>気になったこと</summary><div>

今更だけどデータはいろいろある。
・LEP-ADは、Davis、KIBA、DTC、Metz、ToxCast、STITCHなどの複数のデータセットを使用して、競合手法（SimBoost、DeepCPI、Attention-DTA、GraphDTAなど）と比較して、最先端の結果を報告している。
・大規模なデータセットでも、決定係数（r2）はかなり向上したが、平均二乗誤差（MSE）や一致指数は改善が少なかった。R2値の改善が他の指標と比べて大きかった理由は、予測値と真値の間の線形関係が強かったためと考えられる。
・我々の手法は、ToxCastやDTCでは約2％、STITCHデータセットとMetzでは約4％、Davisデータセットでは約5％のR2メトリックの改善を示した。

下図がこのモデルのアーキテクチャ。
1番目のモジュールは薬剤分子からトポロジー情報を抽出し、2番目のモジュールは標的タンパク質からシーケンシャル情報を抽出する。タンパク質配列を機械学習アルゴリズム用に準備するために、タンパク質配列を数値表現に変換する。
また、Alphafold-2, Openfold,　Fastfold といった手法も組み込んでいる。 
<img width="500" alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3470253/ceefca66-4d36-9d54-3b32-738ed7d586e7.png">
</div></details>

ほかにも紹介されていたもの。結構研究盛んな分野みたい。
2023
https://pubmed.ncbi.nlm.nih.gov/36919205/
https://academic.oup.com/bioinformatics/article/39/3/btad094/7043095
https://www.frontiersin.org/articles/10.3389/fgene.2022.969915/full
https://elifesciences.org/articles/80942

2022
https://pubmed.ncbi.nlm.nih.gov/36421723/
https://www.nature.com/articles/s41587-021-01179-w
https://www.biorxiv.org/content/10.1101/2022.12.05.519119v1.full.pdf
https://academic.oup.com/nar/article/50/W1/W228/6576357
https://academic.oup.com/bioinformatics/article/38/Supplement_1/i238/6617515
https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1010793
https://academic.oup.com/bioinformatics/article/38/8/2102/6502274
https://academic.oup.com/bioinformatics/article/38/19/4488/6656346
https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1010075

2021
https://www.nature.com/articles/s41598-020-80786-0
https://www.nature.com/articles/s41467-021-23303-9

あと、コメントでの議論でデータの質について。
<details><summary>要約</summary><div>

「これらのリソースは貴重なインスピレーションの源である。また、0.6を超えるスコアを達成するためには、包括的なトレーニングセットを作成することが重要かもしれない。私の推測では、LBで0.6を下回るスコアは、提供されたトレーニング用語を活用したモデルによるものだと思われる。逆に言えば、リーディングチームは特注のトレーニングセットを作ったに違いない。いずれにせよ...現時点での直感だが...。」

「その方向でいくつかのアイデアを提案できるかもしれない。トレーニングデータの142247個のタンパク質のうち、約83883個がswiss-protからのもので、残りはおそらくTrEMBLからのものと思われる。これらのタンパク質とswiss-protの最新バージョン（2023-02）のタンパク質を比較したところ、77529個のタンパク質IDタームしか重なりませんでした。オーバーラップしたもののうち、GO-タンパク質ペア（プロパゲーションされたもの）は、元のトレーニングデータの375590に対し、最新バージョンは4129571なので、わずかな増加である。これらの新しい用語がモデルの性能に影響を与えるかどうかはまだ明らかではないが、簡単なテストに基づくと最小ではないかと思われる。
このことは、特注のトレーニング・データセットが不可欠ではないことを示している。さらに、私の現在のモデルは非常に貧弱で満足のいくものではないので、現在のトレーニングデータを使用することでさらなる改善が期待できる。一方、特注のトレーニングデータセットとはどのようなものでしょうか？」

「ここで述べた提案に加えて：
https://www.kaggle.com/competitions/cafa-5-protein-function-prediction/discussion/417696#2305603
タンパク質ファミリーの利用を模索しています。
また、GO用語の組み込みに関する議論もあります：
https://www.kaggle.com/competitions/cafa-5-protein-function-prediction/discussion/405085
その中で、希少なGO用語（例えば、10未満のタンパク質に関連する用語）でアノテーションされたタンパク質の例を増やす方法を検討しています。現在のtrain_termファイルにはないが、スコアリングに使用されているGO用語も追加したい。この2点については、quick-goのアノテーションを利用することもできるが、明確な道筋が見えない。」

「トレーニングセットのデータを増加させる最も興味深い方法の一つは、電子的に注釈付けされたGO用語の使用であると私は信じています。
私はこの探求の道を探ったことはありませんが、これらの組み合わせを選択することはかなり有望かもしれないと思います。」

「しかし、GO:0102628という用語は、1つのタンパク質にしかアノテーションされていないため、quickGOが有効でない例外として機能します。このような場合、私のアプローチは、BLASTを利用し、厳しい相同性の閾値を設定し、このアノテーションを共有する可能性のある追加のタンパク質を同定することである。」
</div></details>


<a id="#Chapter4"></a>
# Protein Families

https://www.kaggle.com/competitions/cafa-5-protein-function-prediction/discussion/418820

[CATHデータベース](http://www.cathdb.info/version/latest/superfamily/1.20.190.20) について。
タンパク質ファミリーの情報を提供するだけでなく、各ファミリーに対して予測されたGO用語のアノテーションも保存している。
これらの予測GO用語アノテーションとQuickGO/UniProtのようなリソースが提供するGOアノテーションとを関係づける方法についての質問。

&rarr;　FunFams (functional families) を使って CATH のドメインと GO term を結び付けるのが一般的。しかし、大量のタンパク質を扱うとなると、スケーラビリティは非常に大きな問題となる。

### 気になったこと
wikipedia 見たけどぜんぜんわからなかった。なんかすごい


<a id="#Chapter5"></a>
# quick-go annotations

https://www.kaggle.com/competitions/cafa-5-protein-function-prediction/discussion/405362

QuickGOアノテーションを教師データに加えると成績がよくなったらしい(0.51から0.5499)。
以下のAPIを使用して、QuickGOアノテーションを1つずつダウンロードできる：
```
quickgo_url = f'https://www.ebi.ac.uk/QuickGO/services/annotation/search?geneProductId=UniProtKB:{uniprot_id} 
```
https://www.kaggle.com/datasets/mtinti/quick-go-annotation
https://www.kaggle.com/code/mtinti/test-notebook-quickgo/notebook
https://zenodo.org/record/7796232 (&larr; 元データ？)


<a id="#Chapter6"></a>
# Naive baseline with LSTM

https://www.kaggle.com/competitions/cafa-5-protein-function-prediction/discussion/419230

2層の単純なLSTM。
1 epoch あたり 7 分、16 epoch で最高精度。予測にかかる時間は GPU で 35 分 + 保存に 4 分。
スコア 0.10694.