IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ディープマインド テクノロジーズ リミテッドの特許一覧

特許7602055マスクされたタンパク質表現からの完全なタンパク質表現の予測
<>
  • 特許-マスクされたタンパク質表現からの完全なタンパク質表現の予測 図1
  • 特許-マスクされたタンパク質表現からの完全なタンパク質表現の予測 図2
  • 特許-マスクされたタンパク質表現からの完全なタンパク質表現の予測 図3
  • 特許-マスクされたタンパク質表現からの完全なタンパク質表現の予測 図4
  • 特許-マスクされたタンパク質表現からの完全なタンパク質表現の予測 図5
  • 特許-マスクされたタンパク質表現からの完全なタンパク質表現の予測 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-09
(45)【発行日】2024-12-17
(54)【発明の名称】マスクされたタンパク質表現からの完全なタンパク質表現の予測
(51)【国際特許分類】
   G16B 30/00 20190101AFI20241210BHJP
【FI】
G16B30/00
【請求項の数】 30
(21)【出願番号】P 2023547118
(86)(22)【出願日】2022-01-27
(65)【公表番号】
(43)【公表日】2024-03-19
(86)【国際出願番号】 EP2022051943
(87)【国際公開番号】W WO2022194434
(87)【国際公開日】2022-09-22
【審査請求日】2023-09-20
(31)【優先権主張番号】63/161,789
(32)【優先日】2021-03-16
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】517030789
【氏名又は名称】ディープマインド テクノロジーズ リミテッド
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】アレクサンダー・プリッツェル
(72)【発明者】
【氏名】カタリン-ドゥミトル・イオネスク
(72)【発明者】
【氏名】サイモン・コール
【審査官】田中 寛人
(56)【参考文献】
【文献】国際公開第2020/058176(WO,A1)
【文献】中国特許出願公開第111462822(CN,A)
【文献】Seonwoo Min et al.,Pre-Training of Deep Bidirectional Protein Sequence Representations with Structural Information,[online],2019年12月25日,Pages 1-15,[検索日:2024年6月27日], <URL:https://doi.org/10.48550/arXiv.1912.05625>
(58)【調査した分野】(Int.Cl.,DB名)
G16B 5/00-99/00
(57)【特許請求の範囲】
【請求項1】
タンパク質再構築ニューラルネットワークを使用してタンパク質のマスクされた表現のマスクを外すために、1つまたは複数のデータ処理装置によって実行される方法であって、
前記タンパク質の前記マスクされた表現を受け取るステップであって、
前記タンパク質の前記マスクされた表現が、(i)前記タンパク質のアミノ酸配列内のそれぞれの位置にそれぞれが対応する複数の埋め込みを含む前記タンパク質の前記アミノ酸配列の表現、および(ii)前記タンパク質のそれぞれの構造的特徴にそれぞれが対応する複数の埋め込みを含む前記タンパク質の構造の表現を含み、
前記タンパク質の前記マスクされた表現における前記アミノ酸配列の前記表現に含まれる前記埋め込みのうちの少なくとも1つが、マスクされている、
ステップと、
前記タンパク質の前記マスクされた表現に含まれる1つまたは複数のマスクされた埋め込みに対応するそれぞれの予測された埋め込みを生成するために、前記タンパク質再構築ニューラルネットワークを使用して、前記タンパク質の前記マスクされた表現を処理するステップであって、
前記タンパク質の前記アミノ酸配列の前記表現内のマスクされた埋め込みに対応する予測された埋め込みが、前記アミノ酸配列内の対応する位置のアミノ酸のアイデンティティの予測を定義し、
前記タンパク質の前記構造の前記表現内のマスクされた埋め込みに対応する予測された埋め込みが、前記タンパク質の対応する構造的特徴の予測を定義する、
ステップと
を含む、方法。
【請求項2】
前記タンパク質の前記マスクされた表現内の前記マスクされた埋め込みの適切なサブセットを対応する予測された埋め込みによって置き換えることによって、前記タンパク質の前記マスクされた表現を更新するステップと、
前記タンパク質の前記マスクされた表現に含まれる1つまたは複数の残りのマスクされた埋め込みに対応するそれぞれの予測された埋め込みを生成するために、前記タンパク質再構築ニューラルネットワークを使用して、前記タンパク質の更新されたマスクされた表現を処理するステップと
をさらに含む、請求項1に記載の方法。
【請求項3】
前記タンパク質の前記アミノ酸配列の前記表現が、1つまたは複数のマスクされた埋め込みを含み、前記方法が、
予測されたアミノ酸配列の予測されたタンパク質構造を定義するデータを生成するために、タンパク質フォールディングニューラルネットワークを使用して、前記アミノ酸配列の前記表現内のそれぞれのマスクされた埋め込みを対応する予測された埋め込みにより置き換えることによって定義された前記タンパク質の前記予測されたアミノ酸配列を処理するステップと、
前記タンパク質の前記マスクされた表現に含まれる1つまたは複数のマスクされた埋め込みに対応する新しい予測された埋め込みを生成するために、前記タンパク質再構築ニューラルネットワークを使用して、(i)前記タンパク質の前記マスクされた表現と、(ii)前記予測されたアミノ酸配列の前記予測されたタンパク質構造との両方を処理するステップと
をさらに含む、請求項1または2に記載の方法。
【請求項4】
前記タンパク質の前記マスクされた表現に含まれるそれぞれのマスクされた埋め込みが、デフォルトの埋め込みである、請求項1から3のいずれか一項に記載の方法。
【請求項5】
前記デフォルトの埋め込みが、ゼロのベクトルを含む、請求項4に記載の方法。
【請求項6】
前記タンパク質の前記構造の前記表現内のマスクされた埋め込みに対応するそれぞれの予測された埋め込みが、前記タンパク質の前記構造内のアミノ酸の対応するペアの間の空間的距離の予測を定義する、請求項1から5のいずれか一項に記載の方法。
【請求項7】
前記タンパク質の前記アミノ酸配列の前記表現の前記埋め込みのうちの少なくとも1つがマスクされている、請求項1から6のいずれか一項に記載の方法。
【請求項8】
前記タンパク質の前記構造の前記表現の前記埋め込みのうちの少なくとも1つがマスクされている、請求項1から7のいずれか一項に記載の方法。
【請求項9】
前記タンパク質の前記アミノ酸配列の前記表現が、前記タンパク質の前記アミノ酸配列内のそれぞれの位置にそれぞれが対応する複数の単一埋め込みを含み、
前記タンパク質の前記構造の前記表現が、前記タンパク質の前記アミノ酸配列内の位置のそれぞれのペアにそれぞれが対応する複数のペア埋め込みを含み、
前記タンパク質再構築ニューラルネットワークが、更新ブロックのシーケンスを含み、
各更新ブロックが、更新ブロックパラメータのそれぞれのセットを有し、
現在のペア埋め込みおよび現在の単一埋め込みを受け取ることと、
前記更新ブロックの前記更新ブロックパラメータの値に従って、前記現在のペア埋め込みに基づいて前記現在の単一埋め込みを更新することと、
前記更新ブロックの前記更新ブロックパラメータの前記値に従って、更新された単一埋め込みに基づいて前記現在のペア埋め込みを更新することと
を含む動作を実行し、
前記更新ブロックのシーケンスの中の最後の更新ブロックが、最終的なペア埋め込みおよび最終的な単一埋め込みを生成する、請求項1から8のいずれか一項に記載の方法。
【請求項10】
前記タンパク質再構築ニューラルネットワークが、前記タンパク質の前記アミノ酸配列の前記表現内の1つまたは複数のマスクされた単一埋め込みの各々に関して、
前記最後の更新ブロックによって生成された対応する最終的な単一埋め込みに基づいて、前記マスクされた単一埋め込みに関する前記予測された埋め込みを生成することを含むさらなる動作を実行する、請求項9に記載の方法。
【請求項11】
前記タンパク質再構築ニューラルネットワークが、前記タンパク質の前記アミノ酸配列の前記表現内の1つまたは複数のマスクされたペア埋め込みの各々に関して、
前記最後の更新ブロックによって生成された対応する最終的なペア埋め込みに基づいて、前記マスクされたペア埋め込みに関する前記予測された埋め込みを生成することを含むさらなる動作を実行する、請求項9または10に記載の方法。
【請求項12】
前記現在のペア埋め込みに基づいて前記現在の単一埋め込みを更新することが、
前記現在の単一埋め込み上のアテンションを使用して前記現在の単一埋め込みを更新することであって、前記アテンションが、前記現在のペア埋め込みに条件付けられる、ことを含む、請求項9から11のいずれか一項に記載の方法。
【請求項13】
前記現在の単一埋め込み上のアテンションを使用して前記現在の単一埋め込みを更新することが、
前記現在の単一埋め込みに基づいて、複数のアテンション重みを生成することと、
前記現在のペア埋め込みに基づいて、前記アテンション重みの各々に対応するそれぞれのアテンションバイアスを生成することと、
前記アテンション重みおよび前記アテンションバイアスに基づいて、複数の偏りのあるアテンション重みを生成することと、
前記偏りのあるアテンション重みに基づいて前記現在の単一埋め込み上のアテンションを使用して前記現在の単一埋め込みを更新することと
を含む、請求項12に記載の方法。
【請求項14】
前記更新された単一埋め込みに基づいて前記現在のペア埋め込みを更新することが、
前記更新された単一埋め込みに変換動作を適用することと、
前記変換動作の結果を前記現在のペア埋め込みに加算することによって前記現在のペア埋め込みを更新することと
を含む、請求項9から13のいずれか一項に記載の方法。
【請求項15】
前記変換動作が外積演算を含む、請求項14に記載の方法。
【請求項16】
前記更新された単一埋め込みに基づいて前記現在のペア埋め込みを更新することが、前記変換動作の前記結果を前記現在のペア埋め込みに加算した後に、
前記現在のペア埋め込み上のアテンションを使用して前記現在のペア埋め込みを更新することであって、前記アテンションが、前記現在のペア埋め込みに条件付けられる、ことをさらに含む、請求項14または15に記載の方法。
【請求項17】
1つまたは複数のデータ処理装置によって実施される、リガンドを取得する方法であって、前記リガンドが、薬剤または工業用酵素のリガンドであり、前記方法が、
標的タンパク質の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって前記標的タンパク質の予測された構造を決定するために、請求項1から16のいずれか一項に記載の方法を実行するステップであって、前記タンパク質の前記マスクされた表現が、前記標的タンパク質のアミノ酸配列の完全な表現を含み、前記タンパク質の前記構造の前記表現が、前記標的タンパク質の構造の完全にマスクされた表現を含む、ステップと、
前記標的タンパク質の前記予測された構造との1つまたは複数の候補リガンドの相互作用を評価するステップと、
評価の結果に応じて、前記候補リガンドのうちの1つまたは複数を前記リガンドとして選択するステップと
を含む、方法。
【請求項18】
1つまたは複数のデータ処理装置によって実施される、リガンドを取得する方法であって、前記リガンドが、薬剤または工業用酵素のリガンドであり、前記方法が、
各標的タンパク質の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって複数の標的タンパク質の各々の予測された構造を決定するために、請求項1から16のいずれか一項に記載の方法を実行するステップであって、各標的タンパク質に関して、前記タンパク質の前記マスクされた表現が、前記標的タンパク質のアミノ酸配列の完全な表現を含み、前記タンパク質の前記構造の前記表現が、前記標的タンパク質の構造の完全にマスクされた表現を含む、ステップと、
前記標的タンパク質の各々の前記予測された構造との1つまたは複数の候補リガンドの相互作用を評価するステップと、
i)前記標的タンパク質の各々と相互作用するリガンドを取得するか、またはii)前記標的タンパク質のうちの1つのみと相互作用するリガンドを取得するかのどちらかのために、前記候補リガンドのうちの1つまたは複数を前記リガンドとして選択するステップと
を含む、方法。
【請求項19】
前記標的タンパク質が受容体または酵素を含み、前記リガンドが前記受容体または前記酵素のアゴニストまたはアンタゴニストである、請求項17または18に記載の方法。
【請求項20】
1つまたは複数のデータ処理装置によって実施される、ポリペプチドリガンドを取得する方法であって、前記ポリペプチドリガンドが、薬剤または工業用酵素のリガンドであり、前記方法が、
1つまたは複数の候補ポリペプチドリガンドの各々に関して、前記候補ポリペプチドリガンドの完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって前記候補ポリペプチドリガンドの予測された構造を決定するために、請求項1から16のいずれか一項に記載の方法を実行するステップであって、前記1つまたは複数の候補ポリペプチドリガンドの各々に関して、前記タンパク質の前記マスクされた表現が、前記候補ポリペプチドリガンドのアミノ酸配列の完全な表現を含み、前記タンパク質の前記構造の前記表現が、前記候補ポリペプチドリガンドの構造の完全にマスクされた表現を含む、ステップと、
標的タンパク質の標的タンパク質構造を取得するステップと、
前記1つまたは複数の候補ポリペプチドリガンドの各々の前記予測された構造と前記標的タンパク質構造との間の相互作用を評価するステップと、
評価の結果に応じて、前記候補ポリペプチドリガンドの1つまたは複数のうちの1つを前記ポリペプチドリガンドとして選択するステップと
を含む、方法。
【請求項21】
前記標的タンパク質が、受容体もしくは酵素を含み、前記リガンドが、前記受容体もしくは前記酵素のアゴニストもしくはアンタゴニストであるか、または前記ポリペプチドリガンドが、抗体を含み、前記標的タンパク質が、抗原を含み、前記抗体が、前記抗原に結合して治療効果を提供する、請求項20に記載の方法。
【請求項22】
1つまたは複数のデータ処理装置によって実施される、抗原の抗体を取得する方法であって、
i)前記抗体の完全なアミノ酸配列表現、およびii)前記抗体の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって、前記抗体の予測された構造およびアミノ酸配列を決定するために、請求項1から16のいずれか一項に記載の方法を実行するステップを含み、
前記タンパク質の前記マスクされた表現が、前記抗原に結合する前記抗体のパラトープの表現を含み、i)前記抗体のアミノ酸配列の部分的にマスクされた表現、およびii)前記抗体の構造の部分的にマスクされた表現を含む、方法。
【請求項23】
前記抗原が、ウイルスタンパク質または癌細胞タンパク質を含む、請求項21または22に記載の方法。
【請求項24】
1つまたは複数のデータ処理装置によって実施される、疾患の診断用抗体マーカーを取得する方法であって、
1つまたは複数の候補抗体の各々に関して、前記候補抗体の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって前記候補抗体の予測された構造を決定するために、請求項1から16のいずれか一項に記載の方法を実行するステップであって、前記1つまたは複数の候補抗体の各々に関して、前記タンパク質の前記マスクされた表現が、前記候補抗体のアミノ酸配列の完全な表現を含み、前記タンパク質の前記構造の前記表現が、前記候補抗体の構造の完全にマスクされた表現を含む、ステップと、
標的タンパク質の標的タンパク質構造を取得するステップと、
前記1つまたは複数の候補抗体の各々の前記予測された構造と前記標的タンパク質構造との間の相互作用を評価するステップと、
評価の結果に応じて、前記候補抗体の1つまたは複数のうちの1つを前記診断用抗体マーカーとして選択するステップと
を含む、方法。
【請求項25】
1つまたは複数のデータ処理装置によって実施される、最適化された特性を持つ変異したタンパク質を設計する方法であって、
i)知られているタンパク質のアミノ酸配列の完全な表現、およびii)前記知られているタンパク質の完全なタンパク質構造表現を取得するステップと、
1つまたは複数の候補の変異したタンパク質の各々に関して、前記候補の変異したタンパク質の完全なアミノ酸配列を定義する予測された埋め込みを生成することによって前記候補の変異したタンパク質の予測されたアミノ酸配列を決定するために、請求項1から16のいずれか一項に記載の方法を実行するステップであって、前記予測された埋め込みを生成することが、
前記候補の変異したタンパク質のアミノ酸配列の表現内の埋め込みのうちの1つまたは複数をマスクすることによって、前記候補の変異したタンパク質の部分的にマスクされた表現を生成することと、
それぞれのマスクされたアミノ酸埋め込みに関して、可能なアミノ酸の種類のセットの各アミノ酸の種類に関するスコアを定義するそれぞれのスコア分布を生成することと、
それぞれのマスクされたアミノ酸に関してそれぞれの種類を、前記アミノ酸に関する前記スコア分布に従ってサンプリングすることによって、前記予測された埋め込みを生成することと
を含む、ステップと、
前記候補の変異したタンパク質の中から、前記候補の変異したタンパク質に関する最適な特性を予測する前記予測されたアミノ酸配列を特定することによって、前記候補の変異したタンパク質のうちの1つを前記変異したタンパク質として選択するステップと
を含む、方法。
【請求項26】
前記変異したタンパク質を合成するステップをさらに含む、請求項25に記載の方法。
【請求項27】
1つまたは複数のデータ処理装置によって実施される、タンパク質ミスフォールディング病の存在を特定する方法であって、
タンパク質の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって前記タンパク質の予測された構造を決定するために、請求項1から16のいずれか一項に記載の方法を実行するステップであって、前記タンパク質の前記マスクされた表現が、前記タンパク質のアミノ酸配列の完全な表現を含み、前記タンパク質の前記構造の前記表現が、前記タンパク質の構造の完全にマスクされた表現を含む、ステップと、
ヒトまたは動物の体から取得された前記タンパク質のバージョンの構造を取得するステップと、
前記タンパク質の前記予測された構造を、ヒトまたは動物の体から取得された前記タンパク質のバージョンの前記構造と比較するステップと、
前記比較の結果に応じて、タンパク質ミスフォールディング病の存在を特定するステップと
を含む、方法。
【請求項28】
1つまたは複数のデータ処理装置によって実施される、タンパク質のアミノ酸配列を取得する方法であって、
前記タンパク質の構造を受け取るステップであって、前記タンパク質の前記構造が、実験によって取得された、ステップと、
前記構造から前記タンパク質の完全なタンパク質構造表現を決定するステップと、
前記タンパク質の完全なアミノ酸配列表現を定義する予測された埋め込みを生成することによって前記タンパク質の予測されたアミノ酸配列を決定するために、請求項1から16のいずれか一項に記載の方法を実行するステップであって、前記タンパク質の前記マスクされた表現が、前記タンパク質の前記構造の完全な表現を含み、前記タンパク質の前記アミノ酸配列の前記表現が、前記タンパク質の前記アミノ酸配列の完全にマスクされた表現を含み、前記タンパク質の前記予測されたアミノ酸配列が、前記タンパク質の取得されたアミノ酸配列である、ステップと
を含む、方法。
【請求項29】
1つまたは複数のコンピュータと、
前記1つまたは複数のコンピュータに通信可能なように結合された1つまたは複数のストレージデバイスであって、前記1つまたは複数のコンピュータによって実行されるときに前記1つまたは複数のコンピュータに請求項1から28のいずれか一項に記載の方法を実行させる命令を記憶する、1つまたは複数のストレージデバイスと
を含む、システム。
【請求項30】
1つまたは複数のコンピュータによって実行されるときに前記1つまたは複数のコンピュータに請求項1から28のいずれか一項に記載の方法を実行させる命令を記憶する、1つまたは複数の非一時的コンピュータストレージ媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、マスクされたタンパク質表現から完全なタンパク質表現を予測することに関する。
【背景技術】
【0002】
タンパク質は、アミノ酸の1つまたは複数の配列によって規定される。アミノ酸は、アミノ官能基およびカルボキシル官能基ならびにアミノ酸に固有の側鎖(すなわち、原子のグループ)を含む有機化合物である。
【0003】
タンパク質フォールディングは、アミノ酸の配列が3次元構成に折り畳まれる物理的なプロセスを指す。タンパク質の構造は、タンパク質がタンパク質フォールディングを経た後の、タンパク質のアミノ酸配列内の原子の3次元構成を定義する。ペプチド結合によって連結された配列内にあるとき、アミノ酸は、アミノ酸残基と呼ばれる場合がある。
【0004】
機械学習モデルを使用して予測を行うことができる。機械学習モデルは、入力を受け取り、受け取られた入力に基づいて出力、たとえば、予測される出力を生成する。一部の機械学習モデルは、パラメトリックモデルであり、受け取られた入力およびモデルのパラメータの値に基づいて出力を生成する。一部の機械学習モデルは、受け取られた入力に関する出力を生成するためにモデルの複数の層を使用する深層モデル(deep model)である。たとえば、深層ニューラルネットワークは、出力を生成するために受け取られた入力に非線形変換をそれぞれ適用する出力層および1つまたは複数の隠れ層を含む深層機械学習モデルである。
【先行技術文献】
【非特許文献】
【0005】
【文献】A. Vaswaniら、"Attention is all you need"、21st Conference on Neural Informational Processing Systems (NIPS 2017)
【文献】Jimmy Lei Baら、"Layer Normalization"、arXiv:1607.06450
【発明の概要】
【課題を解決するための手段】
【0006】
本明細書は、タンパク質再構築ニューラルネットワークを使用してタンパク質のマスクされた表現のマスクを外すことができる、1つまたは複数の場所の1つまたは複数のコンピュータ上のコンピュータプログラムとして実装されるタンパク質再構築システムを説明する。タンパク質再構築ニューラルネットワークは、特定のアーキテクチャを有することに限定されず、後述のように、システムは、アミノ酸配列とタンパク質の構造との両方の表現を一緒に処理することによってタンパク質表現の精度を向上させることができる。
【0007】
本明細書全体を通じて使用されるとき、用語「タンパク質」は、アミノ酸の1つまたは複数の配列によって規定される任意の生体分子を指すと理解されてもよい。たとえば、タンパク質という用語は、タンパク質ドメイン(すなわち、アミノ酸配列の残りの部分からほぼ独立してタンパク質フォールディングを経ることができるアミノ酸配列の一部分)またはタンパク質複合体(すなわち、複数の関連するアミノ酸配列によって規定される)を指すと理解されてもよい。
【0008】
本明細書全体を通じて、埋め込みは、数値の順序付けられた集合、たとえば、数値のベクトルまたは行列を指す。
【0009】
第1の態様によれば、タンパク質再構築ニューラルネットワークを使用してタンパク質のマスクされた表現のマスクを外すために、1つまたは複数のデータ処理装置によって実行される方法であって、タンパク質のマスクされた表現を受け取るステップであって、タンパク質のマスクされた表現が、(i)タンパク質のアミノ酸配列内のそれぞれの位置にそれぞれが対応する複数の埋め込みを含むタンパク質のアミノ酸配列の表現、および(ii)タンパク質のそれぞれの構造的特徴にそれぞれが対応する複数の埋め込みを含むタンパク質の構造の表現を含み、タンパク質のマスクされた表現に含まれる埋め込みのうちの少なくとも1つが、マスクされている、ステップと、タンパク質のマスクされた表現に含まれる1つまたは複数のマスクされた埋め込みに対応するそれぞれの予測された埋め込みを生成するために、タンパク質再構築ニューラルネットワークを使用して、タンパク質のマスクされた表現を処理するステップであって、タンパク質のアミノ酸配列の表現内のマスクされた埋め込みに対応する予測された埋め込みが、アミノ酸配列内の対応する位置のアミノ酸のアイデンティティ(identity)の予測を定義し、タンパク質の構造の表現内のマスクされた埋め込みに対応する予測された埋め込みが、タンパク質の対応する構造的特徴の予測を定義する、ステップとを含む、方法が提供される。
【0010】
一部の実装において、方法は、タンパク質のマスクされた表現内のマスクされた埋め込みの適切なサブセットを対応する予測された埋め込みによって置き換えることによって、タンパク質のマスクされた表現を更新するステップと、タンパク質のマスクされた表現に含まれる1つまたは複数の残りのマスクされた埋め込みに対応するそれぞれの予測された埋め込みを生成するために、タンパク質再構築ニューラルネットワークを使用して、タンパク質の更新されたマスクされた表現を処理するステップとをさらに含む。
【0011】
一部の実装において、タンパク質のアミノ酸配列の表現は、1つまたは複数のマスクされた埋め込みを含み、方法は、予測されたアミノ酸配列の予測されたタンパク質構造を定義するデータを生成するために、タンパク質フォールディングニューラルネットワークを使用して、アミノ酸配列の表現内のそれぞれのマスクされた埋め込みを対応する予測された埋め込みにより置き換えることによって定義されたタンパク質の予測されたアミノ酸配列を処理するステップと、タンパク質のマスクされた表現に含まれる1つまたは複数のマスクされた埋め込みに対応する新しい予測された埋め込みを生成するために、タンパク質再構築ニューラルネットワークを使用して、(i)タンパク質のマスクされた表現と、(ii)予測されたアミノ酸配列の予測されたタンパク質構造との両方を処理するステップとをさらに含む。
【0012】
一部の実装において、タンパク質のマスクされた表現に含まれるそれぞれのマスクされた埋め込みは、デフォルトの埋め込みである。
【0013】
一部の実装において、デフォルトの埋め込みは、ゼロのベクトルを含む。
【0014】
一部の実装において、タンパク質の構造の表現内のマスクされた埋め込みに対応するそれぞれの予測された埋め込みは、タンパク質の構造内のアミノ酸の対応するペアの間の空間的距離の予測を定義する。
【0015】
一部の実装において、タンパク質のアミノ酸配列の表現の埋め込みのうちの少なくとも1つは、マスクされている。
【0016】
一部の実装において、タンパク質の構造の表現の埋め込みのうちの少なくとも1つは、マスクされている。
【0017】
一部の実装において、タンパク質のアミノ酸の表現は、タンパク質のアミノ酸配列内のそれぞれの位置にそれぞれが対応する複数の単一埋め込みを含み、タンパク質の構造の表現は、タンパク質のアミノ酸配列内の位置のそれぞれのペアにそれぞれが対応する複数のペア埋め込みを含み、タンパク質再構築ニューラルネットワークは、更新ブロックのシーケンスを含み、各更新ブロックは、更新ブロックパラメータのそれぞれのセットを有し、現在のペア埋め込みおよび現在の単一埋め込みを受け取る動作、更新ブロックの更新ブロックパラメータの値に従って、現在のペア埋め込みに基づいて現在の単一埋め込みを更新する動作、および更新ブロックの更新ブロックパラメータの値に従って、更新された単一埋め込みに基づいて現在のペア埋め込みを更新する動作を含む動作を実行し、更新ブロックのシーケンスの中の最後の更新ブロックは、最終的なペア埋め込みおよび最終的な単一埋め込みを生成する。
【0018】
一部の実装において、タンパク質再構築ニューラルネットワークは、タンパク質のアミノ酸配列の表現内の1つまたは複数のマスクされた単一埋め込みの各々に関して、最後の更新ブロックによって生成された対応する最終的な単一埋め込みに基づいて、マスクされた単一埋め込みに関する予測された埋め込みを生成する動作を含むさらなる動作を実行する。
【0019】
一部の実装において、タンパク質再構築ニューラルネットワークは、タンパク質のアミノ酸配列の表現内の1つまたは複数のマスクされたペア埋め込みの各々に関して、最後の更新ブロックによって生成された対応する最終的なペア埋め込みに基づいて、マスクされたペア埋め込みに関する予測された埋め込みを生成する動作を含むさらなる動作を実行する。
【0020】
一部の実装において、現在のペア埋め込みに基づいて現在の単一埋め込みを更新する動作は、現在の単一埋め込み上のアテンションを使用して現在の単一埋め込みを更新することであって、アテンションが、現在のペア埋め込みに条件付けられる、更新することを含む。
【0021】
一部の実装において、現在の単一埋め込み上のアテンションを使用して現在の単一埋め込みを更新することは、現在の単一埋め込みに基づいて、複数のアテンション重み(attention weight)を生成することと、現在のペア埋め込みに基づいて、アテンション重みの各々に対応するそれぞれのアテンションバイアス(attention bias)を生成することと、アテンション重みおよびアテンションバイアスに基づいて、複数の偏りのあるアテンション重み(biased attention weight)を生成することと、偏りのあるアテンション重みに基づいて現在の単一埋め込み上のアテンションを使用して現在の単一埋め込みを更新することとを含む。
【0022】
一部の実装において、更新された単一埋め込みに基づいて現在のペア埋め込みを更新する動作は、更新された単一埋め込みに変換動作を適用することと、変換動作の結果を現在のペア埋め込みに加算することによって、現在のペア埋め込みを更新することとを含む。
【0023】
一部の実装において、変換動作は、外積演算を含む。
【0024】
一部の実装において、更新された単一埋め込みに基づいて現在のペア埋め込みを更新する動作は、変換動作の結果を現在のペア埋め込みに加算した後に、現在のペア埋め込み上のアテンションを使用して現在のペア埋め込みを更新することであって、アテンションが、現在のペア埋め込みに条件付けられる、更新することをさらに含む。
【0025】
別の態様によれば、リガンドを取得する方法であって、リガンドが、薬剤または工業用酵素のリガンドであり、方法が、標的タンパク質の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって標的タンパク質の予測された構造を決定するステップであって、タンパク質のマスクされた表現が、標的タンパク質のアミノ酸配列の完全な表現を含み、タンパク質の構造の表現が、標的タンパク質の構造の完全にマスクされた表現を含む、ステップと、標的タンパク質の予測された構造との1つまたは複数の候補リガンドの相互作用を評価するステップと、評価の結果に応じて、候補リガンドのうちの1つまたは複数をリガンドとして選択するステップとを含む、方法が提供される。
【0026】
別の態様によれば、リガンドを取得する方法であって、リガンドが、薬剤または工業用酵素のリガンドであり、方法が、各標的タンパク質の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって複数の標的タンパク質の各々の予測された構造を決定するステップであって、各標的タンパク質に関して、タンパク質のマスクされた表現が、標的タンパク質のアミノ酸配列の完全な表現を含み、タンパク質の構造の表現が、標的タンパク質の構造の完全にマスクされた表現を含む、ステップと、標的タンパク質の各々の予測された構造との1つまたは複数の候補リガンドの相互作用を評価するステップと、i)標的タンパク質の各々と相互作用するリガンドを取得するか、またはii)標的タンパク質のうちの1つのみと相互作用するリガンドを取得するかのどちらかのために、候補リガンドのうちの1つまたは複数をリガンドとして選択するステップとを含む、方法が提供される。
【0027】
一部の実装において、標的タンパク質は、受容体または酵素を含み、リガンドは、受容体または酵素のアゴニストまたはアンタゴニストである。
【0028】
別の態様によれば、ポリペプチドリガンドを取得する方法であって、リガンドが、薬剤または工業用酵素のリガンドであり、方法が、1つまたは複数の候補ポリペプチドリガンドの各々に関して、候補ポリペプチドリガンドの完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって候補ポリペプチドリガンドの予測された構造を決定するステップであって、1つまたは複数の候補ポリペプチドリガンドの各々に関して、タンパク質のマスクされた表現が、候補ポリペプチドリガンドのアミノ酸配列の完全な表現を含み、タンパク質の構造の表現が、候補ポリペプチドリガンドの構造の完全にマスクされた表現を含む、ステップと、標的タンパク質の標的タンパク質構造を取得するステップと、1つまたは複数の候補ポリペプチドリガンドの各々の予測された構造と標的タンパク質構造との間の相互作用を評価するステップと、評価の結果に応じて、候補ポリペプチドリガンドの1つまたは複数のうちの1つをポリペプチドリガンドとして選択するステップとを含む、方法が提供される。
【0029】
一部の実装において、標的タンパク質は、受容体もしくは酵素を含み、リガンドは、受容体もしくは酵素のアゴニストもしくはアンタゴニストであるか、またはポリペプチドリガンドは、抗体を含み、標的タンパク質は、抗原を含み、抗体は、抗原に結合して治療効果を提供する。
【0030】
別の態様によれば、抗原の抗体を取得する方法であって、i)抗体の完全なアミノ酸配列表現、およびii)抗体の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって、抗体の予測された構造およびアミノ酸配列を決定するステップを含み、タンパク質のマスクされた表現が、抗原に結合する抗体のパラトープ(paratope)の表現を含み、i)抗体のアミノ酸配列の部分的にマスクされた表現、およびii)抗体の構造の部分的にマスクされた表現を含む、方法が提供される。
【0031】
一部の実装において、抗原は、ウイルスタンパク質または癌細胞タンパク質を含む。
【0032】
別の態様によれば、疾患の診断用抗体マーカーを取得する方法であって、1つまたは複数の候補抗体の各々に関して、候補抗体の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって候補抗体の予測された構造を決定するステップであって、1つまたは複数の候補抗体の各々に関して、タンパク質のマスクされた表現が、候補抗体のアミノ酸配列の完全な表現を含み、タンパク質の構造の表現が、候補抗体の構造の完全にマスクされた表現を含む、ステップと、標的タンパク質の標的タンパク質構造を取得するステップと、1つまたは複数の候補抗体の各々の予測された構造と標的タンパク質構造との間の相互作用を評価するステップと、評価の結果に応じて、候補抗体の1つまたは複数のうちの1つを診断用抗体マーカーとして選択するステップとを含む、方法が提供される。
【0033】
別の態様によれば、最適化された特性を持つ変異したタンパク質を設計する方法であって、i)知られているタンパク質のアミノ酸配列の完全な表現、およびii)知られているタンパク質の完全なタンパク質構造表現を取得するステップと、1つまたは複数の候補の変異したタンパク質の各々に関して、候補の変異したタンパク質の完全なアミノ酸配列を定義する予測された埋め込みを生成することによって候補の変異したタンパク質の予測されたアミノ酸配列を決定するステップであって、予測された埋め込みを生成することが、候補の変異したタンパク質のアミノ酸配列の表現内の埋め込みのうちの1つまたは複数をマスクすることによって、候補の変異したタンパク質の部分的にマスクされた表現を生成すること、それぞれのマスクされたアミノ酸埋め込みに関して、可能なアミノ酸の種類のセットの各アミノ酸の種類に関するスコアを定義するそれぞれのスコア分布を生成すること、それぞれのマスクされたアミノ酸に関してそれぞれの種類を、アミノ酸に関するスコア分布に従ってサンプリングすることによって、予測された埋め込みを生成することを含む、ステップと、候補の変異したタンパク質の中から、候補の変異したタンパク質に関する最適な特性を予測する予測されたアミノ酸配列を特定することによって、候補の変異したタンパク質のうちの1つを変異したタンパク質として選択するステップとを含む、方法が提供される。
【0034】
一部の実装において、方法は、変異したタンパク質を合成するステップをさらに含む。
【0035】
別の態様によれば、タンパク質ミスフォールディング病(protein mis-folding disease)の存在を特定する方法であって、タンパク質の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによってタンパク質の予測された構造を決定するステップであって、タンパク質のマスクされた表現が、タンパク質のアミノ酸配列の完全な表現を含み、タンパク質の構造の表現が、タンパク質の構造の完全にマスクされた表現を含む、ステップと、ヒトまたは動物の体から取得されたタンパク質のバージョンの構造を取得するステップと、タンパク質の予測された構造を、ヒトまたは動物の体から取得されたタンパク質のバージョンの構造と比較するステップと、比較の結果に応じて、タンパク質ミスフォールディング病の存在を特定するステップとを含む、方法が提供される。
【0036】
別の態様によれば、タンパク質のアミノ酸配列を取得する方法であって、タンパク質の構造を受け取るステップであって、タンパク質の構造が、実験によって取得された、ステップと、構造からタンパク質の完全なタンパク質構造表現を決定するステップと、タンパク質の完全なアミノ酸配列表現を定義する予測された埋め込みを生成することによってタンパク質の予測されたアミノ酸配列を決定するステップであって、タンパク質のマスクされた表現が、タンパク質の構造の完全な表現を含み、タンパク質のアミノ酸配列の表現が、タンパク質のアミノ酸配列の完全にマスクされた表現を含み、タンパク質の予測されたアミノ酸配列が、タンパク質の取得されたアミノ酸配列である、ステップとを含む、方法が提供される。
【0037】
別の態様によれば、1つまたは複数のコンピュータと、1つまたは複数のコンピュータに通信可能なように結合された1つまたは複数のストレージデバイスであって、1つまたは複数のコンピュータによって実行されるときに1つまたは複数のコンピュータに本明細書において説明される方法の動作を実行させる命令を記憶する、1つまたは複数のストレージデバイスとを含むシステムが提供される。
【0038】
別の態様によれば、1つまたは複数のコンピュータによって実行されるときに1つまたは複数のコンピュータに本明細書において説明される方法の動作を実行させる命令を記憶する1つまたは複数の非一時的コンピュータストレージ媒体が提供される。
【0039】
本明細書に記載の対象の特定の実施形態は、以下の利点のうちの1つまたは複数を実現するように実装されることが可能である。
【0040】
概して、タンパク質フォールディング(すなわち、アミノ酸配列からタンパク質構造を予測すること)とタンパク質設計(すなわち、タンパク質構造からアミノ酸配列を予測すること)とは、密接に関連したタスクである。本明細書において説明されるシステムは、これらのタスクの両方を並行して実行するように訓練することが可能である。特に、システムは、タンパク質のアミノ酸配列の表現およびタンパク質の構造の表現を含むタンパク質のマスクされた表現を提供されることが可能であり、これらの表現の一方または両方は、少なくとも部分的にマスクされている。それから、システムは、タンパク質の「完全な」(すなわち、マスクされていない)表現、すなわち、アミノ酸配列表現およびタンパク質構造表現のマスクされた部分の予測を含む完全な表現を生成するために、マスクされたタンパク質表現を処理する。タンパク質フォールディングとタンパク質設計との両方を並行して実行するように訓練された結果として、システムは、システムがこれらのタスクのどちらかを他方とは独立して実行するように訓練されたとした場合よりも高い予測精度をこれらのタスクの各々に関して実現することができる。システムは、場合によっては、これらのタスクのどちらかを他方とは独立して実行するその他のシステムよりも少ない計算リソース(たとえば、メモリおよび計算能力)を消費しながら、タンパク質フォールディングタスク、タンパク質設計タスク、またはそれら両方に関して許容可能な予測精度を実現することができる。
【0041】
本明細書において説明されるシステムは、マスクされたタンパク質表現内のマスクされた埋め込みを対応する予測された埋め込みによって一連の反復にわたって漸進的に置き換えることによって、マスクされたタンパク質表現のマスクを外すことができる。マスクされたタンパク質表現内のマスクされた埋め込みを対応する予測された埋め込みによって、たとえば、1回の反復でいっぺんにではなく、一連の反復にわたって置き換えることは、システムが、コンテキスト情報(contextual information)を漸進的に蓄積し、それによって、マスクされたタンパク質表現のマスクをより高い精度で外すことを可能にすることができる。
【0042】
本明細書において説明されるシステムは、1回または複数回の反復の各々において、アミノ酸配列表現内のそれぞれのマスクされた埋め込みを、現在の反復において生成された対応する予測された埋め込みにより置き換えることによって定義される現在のアミノ酸配列のタンパク質構造を予測することができる。それから、システムは、次の反復において、予測されたタンパク質構造とマスクされたタンパク質表現との両方を処理することができ、これは、システムが、対応する予測されたタンパク質構造を標的タンパク質構造表現から逸脱させる予測された埋め込み内の誤りを適応的に訂正することを可能にすることができる。特に、最初の反復の後の各反復において、システムは、前の反復において生成された予測されたタンパク質構造に少なくとも部分的に基づいて反復において新しい(および潜在的に訂正された)予測された埋め込みを生成することができる。
【0043】
本明細書の対象の1つまたは複数の実施形態の詳細が、添付の図面および以下の説明に記載されている。対象のその他の特徴、態様、および利点は、説明、図面、および請求項から明らかになるであろう。
【図面の簡単な説明】
【0044】
図1】例示的なタンパク質再構築システムを示す図である。
図2】タンパク質再構築ニューラルネットワークの例示的なアーキテクチャを示す図である。
図3】タンパク質再構築ニューラルネットワークの更新ブロックの例示的なアーキテクチャを示す図である。
図4】単一埋め込み更新ブロックの例示的なアーキテクチャを示す図である。
図5】ペア埋め込み更新ブロックの例示的なアーキテクチャを示す図である。
図6】タンパク質再構築ニューラルネットワークを使用してタンパク質のマスクされた表現のマスクを外すための例示的なプロセスの流れ図である。
【発明を実施するための形態】
【0045】
様々な図面における同様の参照番号および参照指示は、同様の要素を示す。
【0046】
図1は、例示的なタンパク質再構築システム100を示す。タンパク質再構築システム100は、以下で説明されるシステム、コンポーネント、および技術が実装される、1つまたは複数の場所の1つまたは複数のコンピュータ上のコンピュータプログラムとして実装されたシステムの例である。
【0047】
システム100は、(i)タンパク質のアミノ酸配列の表現(すなわち、アミノ酸配列表現104)、および(ii)タンパク質の構造の表現(すなわち、タンパク質構造表現106)を含むタンパク質のマスクされた表現102を受け取るように構成される。アミノ酸配列表現104およびタンパク質構造表現106は、埋め込みのそれぞれの集合によってそれぞれ表され、アミノ酸配列表現104、タンパク質構造表現106、またはそれら両方の埋め込みのうちの少なくとも1つは、マスクされている。埋め込みは、たとえば、埋め込みがデフォルトの(たとえば、予め定義された)埋め込み、たとえば、ゼロのベクトルとして表される埋め込みである場合に、「マスクされ」ていると呼ぶことができる。
【0048】
アミノ酸配列表現104は、タンパク質のアミノ酸配列の各位置に対応するそれぞれの埋め込みを含むことができる。マスクされた埋め込みではないアミノ酸配列表現104の各埋め込みは、アミノ酸配列内の対応する位置のアミノ酸を、たとえば、可能なアミノ酸のセットからアミノ酸を特定するワンホット埋め込みによって表すことができる。可能なアミノ酸のセットは、たとえば、アラニン、アルギニン、アスパラギンなどを含むことが可能であり、可能なアミノ酸のセットのアミノ酸の総数は、たとえば、20であることが可能である。
【0049】
タンパク質構造表現106は、タンパク質構造を特徴付ける構造的特徴のセットの各「構造的特徴」に対応するそれぞれの埋め込みを含むことができる。
【0050】
たとえば、タンパク質構造を特徴付ける構造的特徴のセットの各構造的特徴は、タンパク質構造内のアミノ酸の対応するペアの指定された原子(たとえば、アルファ炭素原子)を隔てる(たとえば、オングストロームで測定される)空間的距離を定義することができる。この例において、タンパク質構造内のアミノ酸のペアの間の空間的距離を表す埋め込みは、アミノ酸のペアの間の空間的距離を、可能な距離間隔のセットからの1つの距離間隔に含まれるものとして特定するワンホット埋め込みであることが可能である。可能な距離間隔のセットは、たとえば、0~2オングストローム、2~4オングストローム、4~6オングストロームなどであることが可能である。
【0051】
別の例として、タンパク質構造を特徴付ける構造的特徴のセットの各構造的特徴は、タンパク質構造内の対応するアミノ酸の原子(たとえば、アルファ炭素原子)の空間的位置を定義することができる。マスクされた埋め込みではないタンパク質構造表現の各埋め込みは、タンパク質構造内の対応するアミノ酸の原子の空間的位置を、たとえば、予め定義されたデカルト座標系におけるx-y-z座標として表すことができる。さらなる例として、構造的特徴は、タンパク質内のアミノ酸残基のバックボーン原子(backbone atom)のねじれ角を定義することができる。
【0052】
アミノ酸配列表現104およびタンパク質構造表現106内の特定の埋め込みは、たとえば、それらの埋め込みが知られていないタンパク質についての情報を表すので、マスクされることが可能である。たとえば、タンパク質のアミノ酸配列は知られているが、タンパク質の構造は知られていない場合、アミノ酸配列表現は、「完全」である(つまり、埋め込みのいずれもマスクされていない)ことが可能である一方、タンパク質構造表現の埋め込みのすべては、マスクされることが可能である。別の例として、タンパク質の構造は知られているが、タンパク質のアミノ酸配列は知られていない場合、タンパク質構造表現は完全であることが可能である一方、アミノ酸配列表現の埋め込みのすべてはマスクされることが可能である。別の例として、タンパク質のアミノ酸配列とタンパク質の構造との両方が部分的にしか知られていない場合、アミノ酸配列表現とタンパク質構造表現との両方が、マスクされる一部の埋め込みおよびマスクされないその他の埋め込みを含むことが可能である。
【0053】
システム100は、マスクされたタンパク質表現102内のそれぞれのマスクされた埋め込みに対応するそれぞれの予測された埋め込みを生成するために、タンパク質再構築ニューラルネットワーク200を使用してアミノ酸配列表現104およびタンパク質構造表現106を処理する。アミノ酸配列表現104内のマスクされた埋め込みに対応する予測された埋め込み108は、タンパク質のアミノ酸配列内の対応する位置のアミノ酸のアイデンティティの予測を定義することができる。タンパク質構造表現106内のマスクされた埋め込みに対応する予測された埋め込み108は、タンパク質の対応する構造的特徴、たとえば、タンパク質内のアミノ酸の対応するペアのそれぞれの原子の間の空間的距離の予測を定義することができる。予測された埋め込み108を生成することは、マスクされたタンパク質表現102内のマスクされていない埋め込みから利用可能なコンテキスト情報を使用して、マスクされたタンパク質表現102内のマスクされた埋め込みを再構築することと理解することができる。
【0054】
タンパク質再構築ニューラルネットワーク200は、任意の適切な構成で(たとえば、層の連続的なシーケンスとして)配置された任意の適切なニューラルネットワーク層(たとえば、全結合層、畳み込み層、アテンション層など)を含む、タンパク質再構築ニューラルネットワーク200がその説明された機能を実行することを可能にする任意の適切なニューラルネットワークアーキテクチャを有することが可能である。タンパク質再構築ニューラルネットワーク200の例示的なアーキテクチャは、図2図5を参照してより詳細に説明される。しかし、既存のタンパク質再構築ニューラルネットワークが、説明される技術を使用するように、すなわち、アミノ酸配列とタンパク質構造との両方の表現を、たとえば、反復的に一緒に処理するように適応されてもよい。
【0055】
マスクされたタンパク質表現102内のマスクされた埋め込みを対応する予測された埋め込み108によって置き換えることは、完全なタンパク質表現110、すなわち、完全なタンパク質表現110内の埋め込みのいずれもマスクされないような完全なタンパク質表現110をもたらす。すなわち、完全なタンパク質表現は、タンパク質のアミノ酸配列の完全な再構築(すなわち、アミノ酸配列内の各位置のアミノ酸のアイデンティティが指定されており、マスクされていない)と、タンパク質構造の完全な再構築(すなわち、タンパク質構造を特徴付ける構造的特徴のセットの各構造的特徴が指定されており、マスクされていない)とを定義することができる。それから、システム100は、完全なタンパク質表現110またはその一部(たとえば、完全なアミノ酸配列表現のみ、もしくは完全なタンパク質構造表現のみ)を出力として提供することができる。
【0056】
一部の実装において、システム100は、一連の反復にわたって、マスクされたタンパク質表現102内のマスクされた埋め込みを対応する予測された埋め込み108によって漸進的に置き換える。より詳細には、各反復において、システム100は、予測された埋め込み108を生成するためにタンパク質再構築ニューラルネットワーク200を使用して現在のマスクされたタンパク質表現102を処理し、残りのマスクされた埋め込みのうちの1つまたは複数を対応する予測された埋め込み108によって置き換えることにより現在のマスクされたタンパク質表現102を更新する。マスクされたタンパク質表現102内の残りのマスクされた埋め込みの数は、各反復において減らされ、最後の反復において、システム100は、マスクされたタンパク質表現102内のすべての残りのマスクされた埋め込みを、最後の反復において生成された対応する予測された埋め込み108によって置き換える。
【0057】
システム100は、各反復において、マスクされたタンパク質表現102内のどのマスクされた埋め込みが対応する予測された埋め込み108によって置き換えられるべきかを様々な方法のいずれかで決定することができ、いくつかの例を以下に挙げる。
【0058】
一例では、各反復において、システム100は、対応する予測された埋め込み108によって置き換えられるように、マスクされたタンパク質表現102内の残りのマスクされた埋め込みの予め定義された割合(たとえば、15%)をランダムに選択することができる。システム100は、予め定義された閾値未満の数のマスクされた埋め込みがマスクされたタンパク質表現102内に残っていると判定するとき、すべての残りのマスクされた埋め込みを対応する予測された埋め込み108によって置き換え、反復的プロセスを終了することができる。
【0059】
別の例では、各反復において、システム100は、アミノ酸配列表現104の埋め込みの配列への配置に基づいて、アミノ酸配列表現104内のどのマスクされた埋め込みを対応する予測された埋め込み108によって置き換えるかを決定することができる。より詳細には、アミノ酸配列表現104の埋め込みが、1次元(1D)配列への配置に関連付けられることが可能であり、配列内の位置iの埋め込みが、タンパク質のアミノ酸配列内の位置iのアミノ酸に対応する。各反復において、システム100は、アミノ酸配列表現の埋め込みの1D配列内でアミノ酸配列表現104のマスクされた埋め込みがマスクされていない埋め込みに隣接する場合に、マスクされた埋め込みが対応する予測された埋め込み108によって置き換えられるべきであると判定することができる。
【0060】
別の例では、各反復において、システム100は、タンパク質構造表現の埋め込みの配列への配置に基づいて、タンパク質構造表現106内のどのマスクされた埋め込みを対応する予測された埋め込み108によって置き換えるかを決定することができる。より詳細には、タンパク質構造表現106の埋め込みが、2次元(2D)配列への配置に関連付けられることが可能であり、配列内の位置(i,j)の埋め込みが、タンパク質のアミノ酸配列内の位置iおよびjのアミノ酸のペアに対応する。各反復において、システム100は、タンパク質構造表現106の埋め込みの2D配列内でタンパク質構造表現106のマスクされた埋め込みがマスクされていない埋め込みに隣接する場合に、マスクされた埋め込みが対応する予測された埋め込み108によって置き換えられるべきであると判定することができる。ある埋め込みは、たとえば、その埋め込みと別の埋め込みとが2D配列の同じ行内で隣接しているかまたは2D配列の同じ列内で隣接している場合に、埋め込みの2D配列内で別の埋め込みと「隣接」していると理解することができる。
【0061】
マスクされたタンパク質表現102内のマスクされた埋め込みを対応する予測された埋め込み108によって(たとえば、いっぺんにではなく)一連の反復にわたって置き換えることは、システム100が、コンテキスト情報を漸進的に蓄積し、それによって、より正確な予測された埋め込み108を生成することを可能にすることができる。
【0062】
一部の実装において、アミノ酸配列表現104は、少なくとも1つのマスクされた埋め込みを含み、1回または複数回の反復の各々において、システム100は、アミノ酸配列表現104内のそれぞれのマスクされた埋め込みに対応するそれぞれの予測された埋め込み108を生成する。便宜上、アミノ酸配列表現104内のそれぞれのマスクされた埋め込みを、現在の反復において生成された対応する予測された埋め込み108によって置き換えることによって定義されるアミノ酸配列は、「現在のアミノ酸配列」と呼ばれる。各反復において、システム100は、現在のアミノ酸配列を有するタンパク質の予測された構造を生成するために、タンパク質フォールディングニューラルネットワークを使用して現在のアミノ酸配列を処理することができる。それから、システムは、次の反復においてタンパク質再構築ニューラルネットワーク200への追加の入力として予測されたタンパク質構造を提供することができる。
【0063】
次の反復においてタンパク質再構築ニューラルネットワーク200への追加の入力として予測されたタンパク質構造を提供するために、システム100は、予測されたタンパク質構造の表現を生成することができる。予測されたタンパク質構造の表現は、予測されたタンパク質構造を特徴付ける構造的特徴のセットの各構造的特徴に対応するそれぞれの埋め込みを含むことができる。たとえば、予測されたタンパク質構造の表現は、上述のように、予測されたタンパク質構造内のアミノ酸のペアの間の空間的距離を表すそれぞれの埋め込みを含むことができる。タンパク質再構築ニューラルネットワーク200は、予測されたタンパク質構造の表現によって定義された追加の入力を任意の適切な方法で処理することができる。たとえば、タンパク質再構築ニューラルネットワーク200は、予測されたタンパク質構造の表現をタンパク質構造表現106と合計するか、平均するか、またはその他の方法で組み合わせることができる。それから、タンパク質再構築ニューラルネットワーク200は、上述のように、次の反復のために予測された埋め込み108を生成するために、タンパク質再構築ニューラルネットワーク200のパラメータ値に従って、結果として得られる組み合わされたタンパク質構造表現およびアミノ酸配列表現104を処理することができる。
【0064】
タンパク質フォールディングニューラルネットワークは、タンパク質フォールディングニューラルネットワークがその説明された機能、すなわち、アミノ酸配列を有する予測された構造を生成するためにアミノ酸配列の表現を含む入力を処理することを実行することを可能にする任意の適切なニューラルネットワークアーキテクチャを有することが可能である。特に、タンパク質フォールディングニューラルネットワークは、任意の適切な構成で(たとえば、層のシーケンスとして)配置された任意の適切なニューラルネットワーク層(たとえば、全結合層、畳み込み層、アテンション層など)を含むことができる。
【0065】
現在のアミノ酸配列に対応する予測されたタンパク質構造をタンパク質再構築ニューラルネットワーク200に提供することは、システム100が、予測されたタンパク質構造とタンパク質構造表現106とを暗黙的に比較することを可能にすることができる。この比較は、タンパク質再構築ニューラルネットワーク200が、対応する予測されたタンパク質構造をタンパク質構造表現106から逸脱させる、現在のアミノ酸配列内の潜在的な誤りを訂正することを可能にし、それによって、システム100の性能(たとえば、予測精度)を改善することができる。
【0066】
システム100は、各反復においてマスクされたタンパク質表現内のマスクされた埋め込みを漸進的に置き換えることの代替として、またはそれと組み合わせて、各反復において現在のアミノ酸配列に対応する予測されたタンパク質構造を生成し、次の反復において再構築ニューラルネットワークにその予測されたタンパク質構造を提供することができる。すなわち、各反復において、システムは、(i)アミノ酸配列表現104内のそれぞれのマスクされた埋め込みを、反復において生成された対応する予測された埋め込み108によって置き換えることによって定義される(一時的な)アミノ酸配列を処理して、次の反復において再構築ニューラルネットワークに提供される対応する予測されたタンパク質構造を生成することと、(ii)反復において生成された1つもしくは複数の予測された埋め込みを使用して、マスクされたタンパク質表現内の対応するマスクされた埋め込み(たとえば、アミノ酸配列表現104、タンパク質構造表現106、もしくはそれら両方内のマスクされた埋め込み)を置き換えることとのうちの一方または両方を行うことができる。
【0067】
システム100の可能な応用のいくつかの例が、次により詳細に説明される。
【0068】
一例において、システム100は、完全なアミノ酸配列表現と完全にマスクされたタンパク質構造表現とを処理してタンパク質構造表現の「マスクを外す」ことによって、知られているアミノ酸配列に対応するタンパク質構造を予測するために使用することができる。タンパク質構造表現のマスクを外すことは、完全なタンパク質構造表現を定義する予測された埋め込みを生成することを指す。
【0069】
別の例において、システム100は、完全なタンパク質構造表現と完全にマスクされたアミノ酸配列表現とを処理してアミノ酸配列表現の「マスクを外す」ことによって、知られているタンパク質構造に対応するアミノ酸配列を予測するために使用することができる。アミノ酸配列表現のマスクを外すことは、完全なアミノ酸配列表現を定義する予測された埋め込みを生成することを指す。知られているタンパク質構造は、通常の物理的技術、たとえば、X線結晶構造解析、磁気共鳴技術、または低温電子顕微鏡法(クライオEM)を使用する実験によって取得されてよい。
【0070】
別の例において、システム100は、部分的に知られているアミノ酸配列および部分的に知られているタンパク質構造を持つタンパク質の完全なタンパク質表現を生成するために使用することができる。特に、システムは、部分的に知られているアミノ酸配列を表す部分的にマスクされたアミノ酸配列表現と、部分的に知られているタンパク質構造を表す部分的にマスクされたタンパク質構造表現とを処理して、アミノ酸配列表現およびタンパク質構造表現のマスクを外すことができる。部分的にマスクされたアミノ酸配列および部分的にマスクされたタンパク質構造から完全なタンパク質表現を生成することは、たとえば、特に、治療効果を提供するために、たとえば、特定の抗原に選択的に結合すると知られているパラトープから始まる完全な抗体を設計するために実行することができる。たとえば、抗原は、ウイルスタンパク質または癌細胞タンパク質を含む場合がある。そして、設計された抗体が合成されてよい。
【0071】
知られているパラトープから始まる完全な抗体を設計するために、システム100は、抗体のアミノ酸配列の部分的にマスクされた表現と抗体の構造の部分的にマスクされた表現とを処理して、抗体の完全な表現を生成するために使用することができる。抗体のアミノ酸配列の表現は、パラトープの知られているアミノ酸を表すワンホット埋め込みと、抗体内のそれぞれのその他のアミノ酸のマスクされたアミノ酸埋め込みとを含むことができる。抗体のタンパク質構造の表現は、パラトープの構造を表す埋め込みと、抗体の残りの部分の(すなわち、パラトープの外側の)構造を表すマスクされた埋め込みとを含むことができる。抗体の完全な表現は、抗体内の各アミノ酸のそれぞれの種類と抗体の構造とを定義することができる。
【0072】
別の例において、システム100は、(i)部分的に知られているアミノ酸配列および完全に知られているタンパク質構造、または(ii)完全に知られているアミノ酸配列および部分的に知られているタンパク質構造を持つタンパク質の完全なタンパク質表現を生成するために使用することができる。たとえば、システムは、部分的にマスクされたアミノ酸配列表現および完全なタンパク質構造表現を処理して、アミノ酸配列表現のマスクを外すことができる。
【0073】
タンパク質の部分的にマスクされたアミノ酸配列およびタンパク質の完全な構造から完全なタンパク質表現を生成することは、たとえば、タンパク質の特定の特質、たとえば、結合親和性、溶解度、安定性、凝集傾向(aggregation propensity)、または任意のその他の適切な特質を最適化するために実行することができる。たとえば、知られているアミノ酸配列および知られているタンパク質構造を持つタンパク質から出発して、タンパク質のアミノ酸配列のマスクされた表現、すなわち、タンパク質内の1つまたは複数アミノ酸のアイデンティティがマスクされているマスクされた表現が、生成することができる。システム100は、タンパク質のマスクされたアミノ酸配列表現および完全な構造表現を処理して、それぞれのマスクされたアミノ酸に関して、可能なアミノ酸の種類のセットの各アミノ酸の種類に関するスコアを定義するそれぞれのスコア分布を生成することができる。アミノ酸の種類上のスコア分布を生成する例は、後で説明される。そして、システム100は、複数の「候補」タンパク質を生成することができ、各候補タンパク質のアミノ酸配列は、アミノ酸に関するスコア分布に従って、それぞれのマスクされたアミノ酸のそれぞれの種類をサンプリングすることによって決定される。それぞれの特性(たとえば、溶解度、安定性、結合親和性、または凝集傾向)の値が、各候補タンパク質に関して予測されることが可能であり、それぞれの特性の最も望ましい(たとえば、最高のまたは最低の)値を有する候補タンパク質が、選択されることが可能である。それぞれの特性の値は、たとえば、公開されている技術または利用可能なソフトウェアツールを使用して、候補タンパク質のアミノ酸配列から予測されてよい。選択された候補タンパク質は、タンパク質の所望の特性(たとえば、溶解度、安定性、または結合親和性)を最適化するために元のタンパク質を「変異させる」ものと理解することができる。したがって、選択された候補タンパク質のアミノ酸配列を持つタンパク質を合成することによって、所望の特性を持つ変異したタンパク質が合成されてよい。
【0074】
システム100は、たとえば、データ通信ネットワーク(たとえば、インターネット)を介してタンパク質再構築システム100によって利用可能にされるインターフェース(たとえば、アプリケーションプログラミングインターフェース(API))を通じて、タンパク質再構築システム100の遠隔に位置するユーザから、マスクされたタンパク質表現102を受け取ることができる。完全なタンパク質表現110を生成した後、システム100は、データ通信ネットワークを介して、遠隔に位置するユーザに、完全なタンパク質表現110(またはその一部)を提供することができる。
【0075】
訓練エンジンが、複数回の訓練の反復にわたって、訓練例のセットでタンパク質再構築ニューラルネットワーク200のパラメータを訓練することができる。各訓練例は、完全なタンパク質表現、すなわち、タンパク質の完全なアミノ酸配列表現および完全なタンパク質構造表現を含む完全なタンパク質表現を定義することができる。
【0076】
各訓練の反復において、訓練エンジンは、1つまたは複数の完全なタンパク質表現をサンプリングし、たとえば、完全なタンパク質表現の一部をランダムにマスクすることによって、それぞれの完全なタンパク質表現に対応するマスクされたタンパク質表現を生成することができる。訓練エンジンは、マスクされたタンパク質表現のそれぞれのマスクされた埋め込みに関してそれぞれの予測された埋め込みを生成するために、(上述のように)タンパク質再構築ニューラルネットワークの現在のパラメータ値に従ってシステム100を使用して、それぞれのマスクされたタンパク質表現を処理することができる。それから、訓練エンジンは、(i)システム100によって生成された予測された埋め込みと、(ii)完全なタンパク質表現によって定義された対応する埋め込みとの間の誤差を測定する目的関数の、タンパク質再構築ニューラルネットワークのパラメータに関する勾配を決定することができる。訓練エンジンは、システム100によって生成された予測された埋め込みと、完全なタンパク質表現からの対応する埋め込みとの間の誤差を、たとえば、交差エントロピー損失または2乗誤差損失によって測定することができる。訓練エンジンは、目的関数の勾配を使用して、任意の適切な勾配降下最適化技術、たとえば、RMSpropまたはAdamの任意の適切な更新規則を用いてタンパク質再構築ニューラルネットワークのパラメータ値を更新する。
【0077】
図2は、タンパク質再構築ニューラルネットワーク200の例示的なアーキテクチャを示す。タンパク質再構築ニューラルネットワーク200は、(i)アミノ酸配列表現104と、(ii)タンパク質構造表現106とを含むタンパク質のマスクされた表現を処理するように構成され、マスクされたタンパク質表現の埋め込みのうちの1つまたは複数は、マスクされている。
【0078】
アミノ酸配列表現104は、タンパク質のアミノ酸配列内の各位置に対応するそれぞれの「単一」埋め込みを含む。マスクされた埋め込みではないアミノ酸配列表現104の各埋め込みは、アミノ酸配列内の対応する位置のアミノ酸を、たとえば、可能なアミノ酸のセットからアミノ酸を特定するワンホット埋め込みによって表すことができる。タンパク質再構築ニューラルネットワーク200は、任意で、各単一埋め込みに位置エンコーディング(position encoding)データを適用することができ、単一埋め込みに適用される位置エンコーディングデータは、単一埋め込みに対応するアミノ酸配列内の位置のインデックスの関数である。たとえば、タンパク質再構築ニューラルネットワーク200は、A.Vaswaniら、“Attention is all you need"、21st Conference on Neural Informational Processing Systems (NIPS 2017)に関連して説明されたように、各単一埋め込みに正弦波位置エンコーディング(sinusoidal positional encoding)データを適用することができる。
【0079】
タンパク質構造表現106は、タンパク質内のアミノ酸の各ペア(たとえば、NxN個のペア)に対応するそれぞれの「ペア」埋め込みを含む。マスクされた埋め込みではない各ペア埋め込みは、アミノ酸の対応するペアの間の空間的距離を、たとえば、アミノ酸のペアの間の空間的距離を可能な距離間隔のセットからの1つの距離間隔に含まれるものとして特定するワンホット埋め込みによって表すことができる。
【0080】
タンパク質再構築ニューラルネットワーク200は、更新ブロック206-A~Nのシーケンスを含む。本明細書全体を通じて、「ブロック」は、ニューラルネットワークの一部、たとえば、1つまたは複数のニューラルネットワーク層を含むニューラルネットワークの部分ネットワークを指す。
【0081】
タンパク質再構築ニューラルネットワークの各更新ブロックは、単一埋め込みのセットおよびペア埋め込みのセットを含むブロック入力を受け取り、更新された単一埋め込みおよび更新されたペア埋め込みを含むブロック出力を生成するためにブロック入力を処理するように構成される。
【0082】
タンパク質再構築ニューラルネットワーク200は、タンパク質再構築ニューラルネットワーク200のネットワーク入力に含まれる単一埋め込み202およびペア埋め込み204を、最初の更新ブロック(すなわち、更新ブロックのシーケンスの中の)に提供する。最初の更新ブロックは、更新された単一埋め込みおよび更新されたペア埋め込みを生成するために、単一埋め込み202およびペア埋め込み204を処理する。
【0083】
最初の更新ブロックの後の各更新ブロックに関して、タンパク質再構築ニューラルネットワーク200は、前の更新ブロックによって生成された単一埋め込みおよびペア埋め込みを更新ブロックに提供し、更新ブロックによって生成された更新された単一埋め込みおよび更新されたペア埋め込みを次の更新ブロックに提供する。
【0084】
タンパク質再構築ニューラルネットワーク200は、更新ブロック206-A~Nのシーケンスを使用して単一埋め込み202およびペア埋め込み204を繰り返し更新することによって、それらの単一埋め込み202およびペア埋め込み204の情報内容を徐々に充実させる。
【0085】
更新ブロックのシーケンスの中の最後の更新ブロックは、更新された単一埋め込み208のセットおよび更新されたペア埋め込み210のセットを出力する。それぞれの更新された単一埋め込み208は、可能なアミノ酸のセットの各アミノ酸に関するそれぞれの「ソフト(soft)」スコアを含むことが可能であり、それぞれの更新されたペア埋め込みは、可能な距離間隔のセットの各距離間隔に関するそれぞれの「ソフト」スコアを含むことが可能である。
【0086】
タンパク質再構築ニューラルネットワーク200は、アミノ酸配列表現104からのマスクされた単一埋め込みに関する予測された埋め込み108を、対応する更新された単一埋め込み208によって最も高いソフトスコアに関連付けられるアミノ酸を表すワンホット埋め込みであるものとして特定することができる。同様に、タンパク質再構築ニューラルネットワーク200は、タンパク質構造表現106からのマスクされたペア埋め込みに関する予測された埋め込み108を、対応する更新されたペア埋め込み210によって最も高いソフトスコアに関連付けられる距離間隔を表すワンホット埋め込みであるものとして特定することができる。
【0087】
図3は、タンパク質再構築ニューラルネットワーク200の、すなわち、図2を参照して説明された更新ブロック300の例示的なアーキテクチャを示す。
【0088】
更新ブロック300は、現在の単一埋め込み302および現在のペア埋め込み304を含むブロック入力を受け取り、更新された単一埋め込み306および更新されたペア埋め込み308を生成するためにブロック入力を処理する。
【0089】
更新ブロック300は、単一埋め込み更新ブロック400およびペア埋め込み更新ブロック500を含む。
【0090】
単一埋め込み更新ブロック400は、現在のペア埋め込み304を使用して現在の単一埋め込み302を更新し、ペア埋め込み更新ブロック500は、更新された単一埋め込み(すなわち、単一埋め込み更新ブロック400によって生成される)を使用して現在のペア埋め込み304を更新する。
【0091】
概して、単一埋め込みおよびペア埋め込みは、相補的な情報を符号化することができる。単一埋め込み更新ブロック400は、ペア埋め込みに符号化された相補的な情報を使用して単一埋め込みの情報内容を充実させ、ペア埋め込み更新ブロック500は、単一埋め込みに符号化された相補的な情報を使用してペア埋め込みの情報内容を充実させる。この充実の結果として、更新された単一埋め込みおよび更新されたペア埋め込みは、マスクされたタンパク質表現のマスクされた埋め込みのマスクを正確に外すことにより関連性のある情報を符号化する。
【0092】
更新ブロック300は、まず、現在のペア埋め込み304を使用して現在の単一埋め込み302を更新し、それから、更新された単一埋め込み306を使用して現在のペア埋め込み304を更新するものとして本明細書において説明される。説明は、更新ブロックを、この順番で動作を実行することに限定するものと理解されるべきでなく、たとえば、更新ブロックは、まず、現在の単一埋め込みを使用して現在のペア埋め込みを更新し、それから、更新されたペア埋め込みを使用して現在の単一埋め込みを更新する可能性がある。
【0093】
更新ブロック300は、単一埋め込み更新ブロック400(すなわち、現在の単一埋め込みを更新する)およびペア埋め込み更新ブロック500(すなわち、現在のペア埋め込みを更新する)を含むものとして本明細書において説明される。説明は、更新ブロック300が、更新ブロック300を、1つの単一埋め込み更新ブロックのみ、または1つのペア埋め込み更新ブロックのみを含むように限定するものと理解されるべきでない。たとえば、更新ブロック300は、現在のペア埋め込みを更新する際に使用するためにペア更新ブロックに単一埋め込みが提供される前に、単一埋め込みを複数回更新する複数の単一埋め込み更新ブロックを含み得る。別の例として、更新ブロック300は、単一埋め込みを使用してペア埋め込みを複数回更新する複数のペア更新ブロックを含み得る。
【0094】
単一埋め込み更新ブロック400およびペア埋め込み更新ブロック500は、それらがそれらの説明された機能を実行することを可能にする任意の適切なアーキテクチャを有することができる。
【0095】
一部の実装において、単一埋め込み更新ブロック400、ペア埋め込み更新ブロック500、またはそれら両方は、1つまたは複数の「自己アテンション」ブロックを含む。本明細書全体を通じて使用されるとき、自己アテンションブロックは、概して、埋め込みの集合を更新する、すなわち、埋め込みの集合を受け取り、更新された埋め込みを出力するニューラルネットワークブロックを指す。所与の埋め込みを更新するために、自己アテンションブロックは、所与の埋め込みと1つまたは複数の選択された埋め込み、たとえば埋め込みの受け取られた集合の各々との間のそれぞれの「アテンション重み」、たとえば類似性測定値を決定し、次いで、(i)アテンション重み、および(ii)選択された埋め込みを使用して、所与の埋め込みを更新することができる。たとえば、更新された埋め込みは、それぞれが選択された埋め込みのうちの1つから導出され、それぞれがそれぞれのアテンション重みによって重み付けされた値の総和を含んでもよい。便宜上、自己アテンションブロックは、選択された埋め込み「上の」アテンションを使用して所与の埋め込みを更新すると言われる場合がある。
【0096】
たとえば、自己アテンションブロックは、入力埋め込みの集合
【数1】
を受け取ってよく、Nは、タンパク質内のアミノ酸の数であり、埋め込みxiを更新するために、自己アテンションブロックは、アテンション重み
【数2】
を決定してよく、ai,jは、
【数3】
のように、xiとxjとの間のアテンション重みを表し、WqおよびWkは、学習されたパラメータ行列であり、softmax(・)は、ソフトマックス正規化演算を表し、cは、定数である。アテンション重みを使用して、自己アテンション層は、埋め込みxi
【数4】
のように更新してよく、Wvは、学習されたパラメータ行列である。(Wqxiは、入力埋め込みxiの「クエリ埋め込み(query embedding)」と呼ばれることが可能であり、Wkxjは、入力埋め込みxiの「キー埋め込み(key embedding)」と呼ばれることが可能であり、Wvxjは、入力埋め込みxiの「値埋め込み(value embedding)」と呼ばれることが可能である)。
【0097】
パラメータ行列Wq(「クエリ埋め込み行列」)、Wk(「キー埋め込み行列」)、およびWv(「値埋め込み行列」)は、自己アテンションブロックの訓練可能なパラメータである。単一埋め込み更新ブロック400およびペア埋め込み更新ブロック500に含まれるすべての自己アテンションブロックのパラメータは、図1を参照して説明されるタンパク質タンパク質再構築システム100のエンドツーエンドの訓練の一部として訓練されることが可能な更新ブロック300のパラメータであると理解され得る。概して、クエリ、キー、および値埋め込み行列の(訓練された)パラメータは、たとえば、単一埋め込み更新ブロック400に含まれる自己アテンションブロックが、ペア埋め込み更新ブロック500に含まれる自己アテンションブロックとは異なるパラメータを有する異なるクエリ、キー、および値埋め込み行列を持ち得るように、異なる自己アテンションブロックに関して異なる。
【0098】
一部の実装において、単一埋め込み更新ブロック400、ペア埋め込み更新ブロック500、またはそれら両方は、ペア埋め込みに条件付けられる(依存する)、すなわち、ペア埋め込みに条件付けられる自己アテンション動作を実施する1つまたは複数の自己アテンションブロックを含む。ペア埋め込みによって自己アテンション動作を条件付けるために、自己アテンションブロックは、各アテンション重みに対応するそれぞれの「アテンションバイアス」を生成するためにペア埋め込みを処理することができ、そのとき、各アテンション重みは、対応するアテンションバイアスによって偏りを持たされてもよい。たとえば、式(1)~(2)に従ってアテンション重み
【数5】
を決定することに加えて、自己アテンションブロックは、アテンションバイアスの対応するセット
【数6】
を生成することができ、bi,jは、xiとxjとの間のアテンションバイアスを表す。自己アテンションブロックは、学習されたパラメータ行列を、ペア埋め込みhi,j、すなわち、(i, j)によってインデックス付けされたタンパク質内のアミノ酸のペアに関する、に適用することにより、アテンションバイアスbi,jを生成することができる。
【0099】
自己アテンションブロックは、「偏りのあるアテンション重み」のセット
【数7】
を決定することができ、ci,jは、たとえば、アテンション重みとアテンションバイアスとを合計すること(またはその他の方法で組み合わせること)によって、xiとxjとの間の偏りを持たされたアテンション重みを表す。たとえば、自己アテンションブロックは、埋め込みxiとxjとの間の偏りのあるアテンション重みci,j
ci,j = ai,j + bi,j
のように決定することができ、ai,jは、xiとxjとの間のアテンション重みであり、bi,jは、xiとxjとの間のアテンションバイアスである。自己アテンションブロックは、たとえば、偏りのあるアテンション重みを使用して、各入力埋め込みxi
【数8】
のように更新することができ、Wvは、学習されたパラメータ行列である。
【0100】
概して、ペア埋め込みは、タンパク質の構造と、タンパク質の構造内のアミノ酸のペアの間の関係とを特徴付ける情報を符号化する。ペア埋め込みに条件付けられる自己アテンション動作を入力埋め込みのセットに適用することは、ペア埋め込みに符号化されたタンパク質構造情報を与えられる方法で入力埋め込みが更新されることを可能にする。タンパク質再構築ニューラルネットワークの更新ブロックは、ペア埋め込みに条件付けられる自己アテンションブロックを使用して、単一埋め込みおよびペア埋め込み自体を更新し、充実させることができる。
【0101】
任意で、自己アテンションブロックは、各入力埋め込みに対応するそれぞれの更新された埋め込みをそれぞれが生成する、すなわち、各入力埋め込みが複数の更新された埋め込みに関連付けられるような、複数の「ヘッド」を有することができる。たとえば、各ヘッドは、式(1)~(4)を参照して説明されているパラメータ行列Wq、Wk、およびWvの異なる値に従って、更新された埋め込みを生成してもよい。複数のヘッドを有する自己アテンションブロックは、入力埋め込みに関してヘッドによって生成された更新された埋め込みを組み合わせるための、すなわち、各入力埋め込みに対応する単一の更新された埋め込みを生成するための「ゲーティング(gating)」動作を実施することができる。たとえば、自己アテンションブロックは、各ヘッドのそれぞれのゲーティング値を生成するために、1つまたは複数のニューラルネットワーク層(たとえば、全結合ニューラルネットワーク層)を使用して入力埋め込みを処理することができる。それから、自己アテンションブロックは、ゲーティング値に従って、入力埋め込みに対応する更新された埋め込みを組み合わせることができる。たとえば、自己アテンションブロックは、入力埋め込みxiの更新された埋め込みを
【数9】
のように生成することができ、kは、ヘッドのインデックスであり、αkはヘッドkのゲート値であり、
【数10】
は、入力埋め込みxiに関してヘッドkによって生成された更新された埋め込みである。
【0102】
ペア埋め込みに条件付けられる自己アテンションブロックを使用する単一埋め込み更新ブロック400の例示的なアーキテクチャは、図4を参照して説明される。
【0103】
ペア埋め込みに条件付けられる自己アテンションブロックを使用するペア埋め込み更新ブロック500の例示的なアーキテクチャは、図5を参照して説明される。図5を参照して説明される例示的なペア埋め込み更新ブロックは、更新された単一埋め込みの外積(以降、外積平均(outer product mean)と呼ばれる)を計算し、外積平均の結果を現在のペア埋め込みに加算し(必要に応じてペア埋め込みの次元に射影される)、現在のペア埋め込みに条件付けられる自己アテンションブロックを使用して現在のペア埋め込みを処理することによって、更新された単一埋め込みに基づいて現在のペア埋め込みを更新する。
【0104】
図4は、単一埋め込み更新ブロック400の例示的なアーキテクチャを示す。単一埋め込み更新ブロック400は、現在の単一埋め込み302を受け取り、現在のペア埋め込みに(少なくとも部分的に)基づいて、現在の単一埋め込み302を更新するように構成される。
【0105】
現在の単一埋め込み302を更新するために、単一埋め込み更新ブロック400は、現在のペア埋め込みに条件付けられる自己アテンション動作を使用して単一埋め込みを更新する。より詳細には、単一埋め込み更新ブロック400は、更新された単一埋め込みを生成するために、たとえば、図3を参照して説明されたように、現在のペア埋め込みに条件付けられる自己アテンションブロック402に単一埋め込みを提供する。任意で、単一埋め込み更新ブロックは、自己アテンションブロック402への入力を自己アテンションブロック402の出力に加算することができる。現在のペア埋め込みによって自己アテンションブロック402を条件付けることは、単一埋め込み更新ブロック400が現在のペア埋め込みからの情報を使用して現在の単一埋め込み302を充実させることを可能にする。
【0106】
次に、単一埋め込み更新ブロックは、たとえば、1つまたは複数の全結合ニューラルネットワーク層を現在の単一埋め込みに適用する遷移ブロック(transition block)を使用して現在の単一埋め込み302を処理する。任意で、単一埋め込み更新ブロック400は、遷移ブロック404への入力を遷移ブロック404の出力に加算することができる。
【0107】
単一埋め込み更新ブロックは、自己アテンションブロック402および遷移ブロック404によって実行された動作の結果として得られる更新された単一埋め込み306を出力することができる。
【0108】
図5は、ペア埋め込み更新ブロック500の例示的なアーキテクチャを示す。ペア埋め込み更新ブロック500は、現在のペア埋め込み304を受け取り、更新された単一埋め込み306に(少なくとも部分的に)基づいて、現在のペア埋め込み304を更新するように構成される。
【0109】
以下の説明において、ペア埋め込みは、N×N配列に、すなわち、配列内の位置(i, j)の埋め込みが、アミノ酸配列内の位置iおよびjのアミノ酸に対応するペア埋め込みであるように配列されるものと理解され得る。
【0110】
現在のペア埋め込み304を更新するために、ペア埋め込み更新ブロック500は、更新された単一埋め込み306に外積平均演算502を適用し、外積平均演算502の結果を現在のペア埋め込み304に加算する。
【0111】
外積平均演算は、埋め込みの1×N配列として表される単一埋め込みのセットに適用されるとき、埋め込みのN×N配列を生成する、すなわち、Nがタンパク質内のアミノ酸の数である演算のシーケンスを定義する。現在のペア埋め込み304も、ペア埋め込みのN×N配列として表されることが可能であり、外積平均502の結果を現在のペア埋め込み304に加算することは、埋め込みの2つのN×N配列を合計することを指す。
【0112】
外積平均を計算するために、ペア埋め込み更新ブロックは、たとえば、
A(res1, res2, ch1, ch2) = LeftAct(res1, ch1)・RightAct(res2, ch2) (6)
によって与えられるテンソルA(・)を生成し、res1, res2∈{1, ..., N}、ch1, ch2∈{1, ..., C}であり、Cは、各単一埋め込みのチャネル数であり、LeftAct(res1, ch1)は、“res1"によってインデックス付けされる単一埋め込みのチャネルch1に適用される線形演算(たとえば、行列の乗算によって定義される、たとえば、射影)であり、RightAct(res2, ch2)は、“res2"によってインデックス付けされる単一埋め込みのチャネルch2に適用される線形演算(たとえば、行列の乗算によって定義される、たとえば、射影)である。外積平均の結果は、テンソルAの(ch1, ch2)次元を平坦化(flatten)し、線形射影することによって生成される。任意で、ペア埋め込み更新ブロックは、外積平均の計算の一部として、(たとえば、Jimmy Lei Baら、"Layer Normalization"、arXiv:1607.06450に関連して説明された)1つまたは複数の層正規化(Layer Normalization)演算を実行することができる。
【0113】
概して、更新された単一埋め込み306は、タンパク質のアミノ酸配列内のアミノ酸についての情報を符号化する。更新された単一埋め込みに符号化された情報を現在のペア埋め込みに組み込むことによって(すなわち、外積平均502によって)、ペア埋め込み更新ブロック500は、現在のペア埋め込みの情報内容を強化することができる。
【0114】
更新された単一埋め込みを使用して(すなわち、外積平均502によって)現在のペア埋め込み304を更新した後、ペア埋め込み更新ブロック308は、現在のペア埋め込みに条件付けられる自己アテンション動作(すなわち、「行単位の」自己アテンション動作)を使用して、N×N配列への現在のペア埋め込みの配列の各行の現在のペア埋め込みを更新する。より詳細には、ペア埋め込み更新ブロック500は、各行の更新されたペア埋め込みを生成するために、たとえば、図3を参照して説明されたように、現在のペア埋め込みにやはり条件付けられる「行単位の」自己アテンションブロック504に現在のペア埋め込みの各行を提供する。任意で、ペア埋め込み更新ブロックは、行単位の自己アテンションブロック504への入力を行単位の自己アテンションブロック504の出力に加算することができる。
【0115】
次に、ペア埋め込み更新ブロック500は、現在のペア埋め込みにやはり条件付けられる自己アテンション動作(すなわち、「列単位の」自己アテンション動作)を使用して、現在のペア埋め込みのN×N配列の各列の現在のペア埋め込みを更新する。より詳細には、ペア埋め込み更新ブロック500は、各列の更新されたペア埋め込みを生成するために、現在のペア埋め込みにやはり条件付けられる「列単位の」自己アテンションブロック506に現在のペア埋め込みの各列を提供する。任意で、ペア埋め込み更新ブロックは、列単位の自己アテンションブロック506への入力を列単位の自己アテンションブロック506の出力に加算することができる。
【0116】
次に、ペア埋め込み更新ブロック500は、たとえば、1つまたは複数の全結合ニューラルネットワーク層を現在のペア埋め込みに適用する遷移ブロック508を使用して現在のペア埋め込みを処理する。任意で、ペア埋め込み更新ブロック500は、遷移ブロック508への入力を遷移ブロック508の出力に加算することができる。
【0117】
ペア埋め込み更新ブロックは、行単位の自己アテンションブロック504、列単位の自己アテンションブロック506、および遷移ブロック508によって実行された動作の結果として得られる更新されたペア埋め込み308を出力することができる。
【0118】
図6は、タンパク質再構築ニューラルネットワークを使用してタンパク質のマスクされた表現のマスクを外すための例示的なプロセス600の流れ図である。便宜上、プロセス600は、1つまたは複数の場所に置かれた1つまたは複数のコンピュータのシステムによって実行されるものとして説明される。たとえば、本明細書に従って適切にプログラミングされたタンパク質再構築システム、たとえば、図1のタンパク質再構築システム100が、プロセス600を実行することができる。
【0119】
システムは、タンパク質のマスクされた表現を受け取る(602)。タンパク質のマスクされた表現は、(i)タンパク質のアミノ酸配列内のそれぞれの位置にそれぞれが対応する埋め込みのセットを含むタンパク質のアミノ酸配列の表現と、(ii)タンパク質のそれぞれの構造的特徴にそれぞれが対応する埋め込みのセットを含むタンパク質の構造の表現とを含む。タンパク質のマスクされた表現に含まれる埋め込みのうちの少なくとも1つは、マスクされている。
【0120】
次に説明するステップ604~610は、1回または複数回の反復の各々で実行することができる。
【0121】
システムは、タンパク質のマスクされた表現に含まれる1つまたは複数のマスクされた埋め込みに対応するそれぞれの予測された埋め込みを生成するために、タンパク質再構築ニューラルネットワークを使用して、タンパク質のマスクされた表現を処理する(604)。タンパク質のアミノ酸配列の表現内のマスクされた埋め込みに対応する予測された埋め込みは、アミノ酸配列内の対応する位置のアミノ酸のアイデンティティの予測を定義する。タンパク質の構造の表現内のマスクされた埋め込みに対応する予測された埋め込みは、タンパク質の対応する構造的特徴の予測を定義する。
【0122】
任意で、現在の反復が最初の反復の後である場合、システムは、タンパク質再構築ニューラルネットワークへの追加の入力として、すなわち、タンパク質のマスクされた表現に加えて、(ステップ608~610においてより詳細に説明されるように)前の反復で生成された予測されたタンパク質構造を提供することができる。
【0123】
一部の実装において、システムは、タンパク質のマスクされた表現内のマスクされた埋め込みのいわゆる適切なサブセット(すなわち、すべてのマスクされた埋め込みを含まないサブセット)を対応する予測された埋め込みによって置き換えることによって、タンパク質のマスクされた表現を更新することができる(606)。それから、システムは、(たとえば、ステップ604に戻ることによって)次の反復に進むことができ、次の反復において、システムは、タンパク質のマスクされた表現に含まれる1つまたは複数の残りのマスクされた埋め込みに対応するそれぞれの予測された埋め込みを生成するために、タンパク質再構築ニューラルネットワークを使用して、タンパク質の更新されたマスクされた表現を処理することができる。
【0124】
一部の実装において、タンパク質のアミノ酸配列の表現は、1つまたは複数のマスクされた埋め込みを含み、システムは、アミノ酸配列の表現内のそれぞれのマスクされた埋め込みが対応する予測された埋め込みによって置き換えられるタンパク質の予測されたアミノ酸配列を特定する。システムは、予測されたアミノ酸配列の予測されたタンパク質構造を定義するデータを生成するために、タンパク質フォールディングニューラルネットワークを使用して、予測されたアミノ酸配列を処理することができる(608)。たとえば、公開された手法またはAlphaFold2(オープンソースで利用可能)などのソフトウェアに基づいて、任意のタンパク質フォールディングニューラルネットワークが使用されてよい。それから、システムは、次の反復に(すなわち、ステップ604に戻ることによって)進むことができ、次の反復において、システムは、予測されたタンパク質構造を、タンパク質再構築ニューラルネットワークへの追加の入力として(すなわち、マスクされたタンパク質表現に加えて)提供することができる(610)。そして、タンパク質再構築ニューラルネットワークは、次の反復において新しい予測された埋め込みを生成するために、予測されたタンパク質構造およびマスクされたタンパク質表現を処理することができる。
【0125】
一部の実装において、システムは、1回または複数回の反復において、ステップ606(すなわち、予測された埋め込みを使用してタンパク質のマスクされた表現を更新すること)と、ステップ608~610(すなわち、前述のように、予測されたタンパク質構造を生成するために、予測されたアミノ酸配列を処理すること、および予測されたタンパク質構造を、タンパク質再構築ニューラルネットワークへの追加の入力として提供すること)との両方を実行することができる。
【0126】
システムは、たとえば、マスクされたタンパク質表現内のそれぞれのマスクされた埋め込みが対応する予測された埋め込みによって置き換えられた後、反復プロセスが完了していると判定することができる。そして、システムは、完全なタンパク質表現、すなわち、マスクされたタンパク質表現のすべてのマスクされた埋め込みが一連の反復にわたって生成された対応する予測された埋め込みによって置き換えられた完全なタンパク質表現を出力として提供することができる。
【0127】
概して、システムは、(目標)タンパク質、ポリペプチドリガンド、または抗体の完全なタンパク質構造表現を定義する予測された埋め込みを生成することによって、(目標)タンパク質、ポリペプチドリガンド、または抗体の予測された構造を決定するために使用することができる。これは、たとえば、タンパク質のマスクされた表現が、(目標)タンパク質、ポリペプチドリガンド、または抗体のアミノ酸配列の完全な表現を含み、タンパク質の構造の表現が、(目標)タンパク質、ポリペプチドリガンド、または抗体の構造の完全にマスクされた表現を含むときに実現することができる。
【0128】
システムのいくつかのさらなる応用が、以下で説明される。
【0129】
システムは、薬剤または工業用酵素のリガンドなどのリガンドを取得するために使用されてよい。たとえば、リガンドを取得する方法は、標的タンパク質の目標アミノ酸配列を取得することと、目標アミノ酸配列を使用して標的タンパク質の(3次)構造を決定することとを含んでよい。方法は、標的タンパク質の構造との1つまたは複数の候補リガンドの相互作用を評価することと、結果に応じて候補リガンドのうちの1つまたは複数をリガンドとして選択することとを含んでよい。相互作用を評価することは、たとえば、生物学的効果のために十分な親和性で結合するリガンドを特定するために、標的タンパク質の構造との候補リガンドの結合を評価することを含む場合がある。リガンド候補は。酵素である場合がある。評価することは、候補リガンドと標的タンパク質との間の親和性、または相互作用の選択性を評価することを含む場合がある。候補リガンドは、候補リガンドのデータベースから、または候補リガンドのデータベース内のリガンドを改変することによって、または候補リガンドの段階的もしくは反復的な組み立てもしくは最適化によって導出されてよい。評価は、たとえば、候補リガンドおよび標的タンパク質構造のグラフィカルなモデルがユーザの操作のために表示されるコンピュータ支援型の手法を使用して実行されてよく、または評価は、たとえば、標準的なタンパク質-リガンドドッキング(protein-ligand docking)ソフトウェアを使用して部分的もしくは完全に自動的に実行されてよい。評価は、たとえば、相互作用の強さまたは特異性依存する候補リガンドの相互作用スコア、たとえば、結合自由エネルギーに依存するスコアを決定することを含む場合がある。リガンド候補は、そのスコアに応じて選択されてよい。
【0130】
一部の実装において、標的タンパク質は、受容体または酵素を含み、リガンドは、受容体または酵素のアゴニストまたはアンタゴニストである。一部の実装において、方法は、細胞表面マーカーの構造を特定するために使用されてよい。そのとき、これは、細胞表面マーカーに結合するリガンド、たとえば、抗体または蛍光標識など標識を特定するために使用されてよい。これは、癌細胞を特定および/または治療するために使用されてよい。一部の実装において、候補リガンドは、低分子リガンド、たとえば、分子量<900ダルトンの有機化合物を含む場合がある。一部のその他の実装において、候補リガンドは、ポリペプチドリガンド、すなわち、アミノ酸配列によって定義されるポリペプチドリガンドを含む場合がある。
【0131】
システムの一部の実装は、候補ポリペプチドリガンド、たとえば、薬剤または工業用酵素のリガンドの構造を決定するために使用されてよい。そのとき、標的タンパク質構造とのこれの相互作用が評価されてよく、標的タンパク質構造は、本明細書に記載のコンピュータによって実装される方法を使用して、またはX線結晶構造解析および/もしくは磁気共鳴技術などの通常の物理的調査技術を使用して決定された可能性がある。
【0132】
したがって、システムは、ポリペプチドリガンド、たとえば、分子またはその配列を取得するために使用される場合がある。これは、1つまたは複数の候補ポリペプチドリガンドのアミノ酸配列を取得することと、候補ポリペプチドリガンドの(3次)構造を決定するために、候補ポリペプチドリガンドのアミノ酸配列をアミノ酸の配列として使用して、上述のように方法を実行することとを含んでよい。標的タンパク質の構造が、たとえば、イン・シリコ(in silico)でまたは物理的調査によって取得されてよく、1つまたは複数の候補ポリペプチドリガンドの各々の構造と標的タンパク質構造との間の相互作用が、評価されてよい。候補ポリペプチドリガンドの1つまたは複数のうちの1つが、評価の結果に応じてポリペプチドリガンドとして選択されてよい。前述のとおり、相互作用を評価することは、標的タンパク質の構造との候補ポリペプチドリガンドの結合を評価すること、たとえば、生物学的効果のために十分な親和性で結合するリガンドを特定すること、および/または標的タンパク質、たとえば、酵素の機能に影響を与える、標的タンパク質の構造との候補ポリペプチドリガンドのつながりを評価すること、および/または候補ポリペプチドリガンドと標的タンパク質の構造との間の親和性を評価すること、もしくは相互作用の選択性を評価することを含む場合がある。一部の実装において、ポリペプチドリガンドは、アプタマである場合がある。この場合も、ポリペプチド候補リガンドは、どれが最も高い親和性を有するかに従って選択されてよい。
【0133】
前述のとおり、選択されたポリペプチドリガンドは、受容体または酵素を含んでよく、リガンドは、受容体または酵素のアゴニストまたはアンタゴニストであってよい。一部の実装において、ポリペプチドリガンドは、抗体を含んでよく、標的タンパク質は、抗体標的(antibody target)、すなわち、抗原、たとえば、ウイルス、特に、ウイルスの外被タンパク質(coat protein)、または癌細胞上に発現されたタンパク質を含む。これらの実装においては、抗体が抗原に結合して治療効果を提供する。たとえば、抗体は、抗原に結合し、特定の受容体のアゴニストとして働く場合があり、あるいは、抗体は、標的への別のリガンドの結合を阻害し、したがって、関連性のある生物学的経路(biological pathway)の活性化を阻害する場合がある。
【0134】
そのような方法は、低分子リガンドまたはポリペプチドリガンドを合成すること、すなわち、作製することを含む場合がある。リガンドは、任意の通常の化学的技術によって合成される場合があり、および/または既に入手可能である場合があり、たとえば、化合物ライブラリからのものである場合があり、もしくはコンビナトリアル化学を使用して合成された可能性がある。
【0135】
方法は、イン・ビトロ(in vitro)および/またはイン・ビボ(in vivo)で生物学的活性に関してリガンドを試験することをさらに含んでよい。たとえば、リガンドは、不適当なリガンドをふるい落とすために、ADME(吸収、分布、代謝、排泄)および/または毒性学的特性に関して試験されてよい。試験することは、たとえば、候補低分子またはポリペプチドリガンドを標的タンパク質と接触させることと、タンパク質の発現または活性の変化を測定することとを含んでよい。
【0136】
一部の実装において、候補(ポリペプチド)リガンドは、単離された抗体、単離された抗体のフラグメント、単一可変領域抗体(single variable domain antibody)、二重または多重特異性抗体、多価抗体、二重可変領域抗体(dual variable domain antibody)、免疫複合体(immunoconjugate)、フィブロネクチン分子、アドネクチン(adnectin)、DARPin、アビマー(avimer)、アフィボディ(affibody)、アンチカリン(anticalin)、アフィリン(affilin)、タンパク質エピトープ模倣物(protein epitope mimetic)、またはこれらの組合せを含む場合がある。候補(ポリペプチド)リガンドは、たとえば、野生型(wild type)Fc領域と比較されたときに、ADCC(抗体依存性細胞傷害)活性を阻害もしくは低下させる、および/または半減期を延ばす、変異したまたは化学的に修飾されたアミノ酸Fc領域を持つ抗体を含む場合がある。
【0137】
折り畳みに異常があるタンパク質は、多くの疾患に関連付けられる。このシステムは、タンパク質ミスフォールディング病の存在を特定するために使用することができる。これは、タンパク質のアミノ酸配列を取得し、タンパク質の構造を決定するためにタンパク質のアミノ酸配列を使用して上述のように方法を実行することと、たとえば、通常の(物理的な)方法によって、ヒトまたは動物の体から取得されたタンパク質のバージョンの構造を取得することと、そして、タンパク質の構造を体から取得されたバージョンの構造と比較し、結果に応じてタンパク質ミスフォールディング病の存在を特定することとを含んでよい。すなわち、決定された構造との比較によって、体からのタンパク質のバージョンのミスフォールディングが判定されてよい。概して、タンパク質ミスフォールディング病の存在を特定することは、タンパク質のアミノ酸配列を取得することと、本明細書において説明されたように、タンパク質のアミノ酸配列を使用してタンパク質の構造を決定することと、タンパク質の構造をタンパク質の基準バージョンの構造と比較し、比較の結果に応じてタンパク質ミスフォールディング病の存在を特定することとを含んでよい。たとえば、比較される構造は、変異型および野生型タンパク質の構造であってよい。実装においては、野生型タンパク質がベースラインバージョンとして使用される場合があるが、原理的には、どちらが基準バージョンとして使用されてもよい。
【0138】
一部の実装において、システムは、標的タンパク質のアミノ酸配列から標的タンパク質上の活性部位/結合部位/ブロック部位を特定するために使用することができる。
【0139】
本明細書は、用語「構成される」をシステムおよびコンピュータプログラムのコンポーネントに関連して使用する。1つまたは複数のコンピュータのシステムが特定の動作またはアクションを実行するように構成されることは、システムが、動作中にシステムに動作またはアクションを実行させるソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せをそのシステム上にインストール済みであることを意味する。1つまたは複数のコンピュータプログラムが特定の動作またはアクションを実行するように構成されることは、1つまたは複数のプログラムが、データ処理装置によって実行されるときに装置に動作またはアクションを実行させる命令を含むことを意味する。
【0140】
本明細書に記載の対象の実施形態および機能的動作は、本明細書において開示された構造およびそれらの構造的均等物を含むデジタル電子回路、有形で具現化されたコンピュータソフトウェアもしくはファームウェア、コンピュータハードウェア、またはそれらのうちの1つもしくは複数の組合せで実装されることが可能である。本明細書に記載の対象の実施形態は、1つまたは複数のコンピュータプログラム、すなわち、データ処理装置による実行のために、またはデータ処理装置の動作を制御するために有形の非一時的ストレージ媒体上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装されることが可能である。コンピュータストレージ媒体は、機械可読ストレージデバイス、機械可読ストレージ基板、ランダムもしくはシリアルアクセスメモリデバイス、またはそれらのうちの1つもしくは複数の組合せであることが可能である。代替的にまたは追加的に、プログラム命令は、データ処理装置による実行のために好適なレシーバ装置に送信するために情報を符号化するように生成される人為的に生成された伝播信号、たとえば、機械によって生成された電気的信号、光学的信号、または電磁的信号上に符号化されることが可能である。
【0141】
用語「データ処理装置」は、データ処理ハードウェアを指し、例として、1つのプログラミング可能なプロセッサ、1台のコンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのすべての種類の装置、デバイス、およびマシンを包含する。装置は、専用論理回路、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)であることも可能であり、またはそのような専用論理回路をさらに含むことも可能である。任意で、装置は、ハードウェアに加えて、コンピュータプログラムのための実行環境を作成するコード、たとえば、プロセッサのファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらのうちの1つもしくは複数の組合せを構成するコードを含み得る。
【0142】
プログラム、ソフトウェア、ソフトウェアアプリケーション、アプリ、モジュール、ソフトウェアモジュール、スクリプト、またはコードと呼ばれるまたは記載される場合もあるコンピュータプログラムは、コンパイラ型言語もしくはインタープリタ型言語、または宣言型言語もしくは手続き型言語を含む任意の形態のプログラミング言語で記述されることが可能であり、独立型プログラムとしての形態、またはモジュール、コンポーネント、サブルーチン、もしくはコンピューティング環境内での使用に適したその他のユニットとしての形態を含む任意の形態で展開されることが可能である。プログラムは、ファイルシステム内のファイルに対応する場合があるが、必ずそうであるとは限らない。プログラムは、その他のプログラムもしくはデータを保持するファイルの一部、たとえば、マークアップ言語のドキュメントに記憶された1つもしくは複数のスクリプト、問題にしているプログラムに専用の単一のファイル、または複数の組織されたファイル、たとえば、1つもしくは複数のモジュール、サブプログラム、もしくはコードの一部を記憶するファイルに記憶されることが可能である。コンピュータプログラムは、1台のコンピュータ上で、または1つの場所に置かれるか、もしくは複数の場所に分散され、データ通信ネットワークによって相互に接続される複数のコンピュータ上で実行されるように展開されることが可能である。
【0143】
本明細書において、用語「エンジン」は、1つまたは複数の特定の機能を実行するようにプログラミングされるソフトウェアベースのシステム、サブシステム、またはプロセスを指すために広く使用される。概して、エンジンは、1つまたは複数の場所の1つまたは複数のコンピュータにインストールされた1つまたは複数のソフトウェアモジュールまたはコンポーネントとして実装される。場合によっては、1つまたは複数のコンピュータが、特定のエンジンに専用であり、その他の場合、複数のエンジンが、同じ1台のコンピュータまたは複数のコンピュータにインストールされ、実行されていることが可能である。
【0144】
本明細書に記載のプロセスおよび論理フローは、入力データに対して演算を行い、出力を生成することによって機能を実行するための1つまたは複数のコンピュータプログラムを1つまたは複数のプログラミング可能なコンピュータが実行することによって実行され得る。また、プロセスおよび論理フローは、専用論理回路、たとえば、FPGAもしくはASICによって、または専用論理回路と1つもしくは複数のプログラミングされたコンピュータとの組合せによって実行されることが可能である。
【0145】
コンピュータプログラムの実行に好適なコンピュータは、汎用マイクロプロセッサもしくは専用マイクロプロセッサもしくはそれら両方、または任意のその他の種類の中央演算処理装置に基づくことが可能である。概して、中央演算処理装置は、読み出し専用メモリ、またはランダムアクセスメモリ、またはそれら両方から命令およびデータを受け取る。コンピュータの必須の要素は、命令を遂行または実行するための中央演算処理装置、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。中央演算処理装置およびメモリは、専用論理回路によって補完されるか、または専用論理回路に組み込まれることが可能である。また、概してコンピュータは、データを記憶するための1つもしくは複数の大容量ストレージデバイス、たとえば、磁気ディスク、光磁気ディスク、もしくは光ディスクを含むか、またはそれらの大容量ストレージデバイスからデータを受け取るか、もしくはそれらの大容量ストレージデバイスにデータを転送するか、もしくはそれら両方を行うために動作可能なように結合される。しかし、コンピュータは、そのようなデバイスを有していなくてもよい。さらに、コンピュータは、別のデバイス、たとえば、ほんのいくつか例を挙げるとすれば、モバイル電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤー、ゲームコンソール、全地球測位システム(GPS)レシーバ、またはポータブルストレージデバイス、たとえば、ユニバーサルシリアルバス(USB)フラッシュドライブに組み込まれることが可能である。
【0146】
コンピュータプログラム命令およびデータを記憶するのに好適なコンピュータ可読媒体は、例として、半導体メモリデバイス、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば、内蔵ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD-ROMディスクおよびDVD-ROMディスクを含むすべての形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。
【0147】
ユーザとのインタラクションを提供するために、本明細書に記載の対象の実施形態は、ユーザに対して情報を表示するためのディスプレイデバイス、たとえば、CRT(ブラウン管)またはLCD(液晶ディスプレイ)モニタ、ならびにユーザがコンピュータに入力を与えることができるキーボードおよびポインティングデバイス、たとえば、マウスまたはトラックボールを有するコンピュータ上に実装されることが可能である。その他の種類のデバイスが、ユーザとのインタラクションを提供するためにやはり使用されることが可能であり、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであることが可能であり、ユーザからの入力は、音響、スピーチ、または触覚による入力を含む任意の形態で受け取られることが可能である。加えて、コンピュータは、ユーザによって使用されるデバイスにドキュメントを送信し、そのデバイスからドキュメントを受信することによって、たとえば、ウェブブラウザから受信された要求に応答してユーザのデバイスのウェブブラウザにウェブページを送信することによってユーザとインタラクションすることができる。また、コンピュータは、メッセージングアプリケーションを実行しているパーソナルデバイス、たとえば、スマートフォンにテキストメッセージまたはその他の形態のメッセージを送信し、返報としてユーザから応答メッセージを受信することによってユーザとインタラクションすることができる。
【0148】
機械学習モデルを実装するためのデータ処理装置は、たとえば、機械学習の訓練または生成、つまり、推測の作業負荷のよくある計算量の多い部分を処理するための専用ハードウェアアクセラレータユニットも含むことが可能である。
【0149】
機械学習モデルは、機械学習フレームワーク、たとえば、TensorFlowフレームワーク、Microsoft Cognitive Toolkitフレームワーク、Apache Singaフレームワーク、またはApache MXNetフレームワークを使用して実装され、展開されることが可能である。
【0150】
本明細書に記載の対象の実施形態は、バックエンドコンポーネントを、たとえば、データサーバとして含むか、またはミドルウェアコンポーネント、たとえば、アプリケーションサーバを含むか、またはフロントエンドコンポーネント、たとえば、ユーザが本明細書に記載の対象の実装とインタラクションすることができるグラフィカルユーザインターフェース、ウェブブラウザ、もしくはアプリを有するクライアントコンピュータを含むか、または1つもしくは複数のそのようなバックエンドコンポーネント、ミドルウェアコンポーネント、もしくはフロントエンドコンポーネントの任意の組合せを含むコンピューティングシステムに実装されることが可能である。システムのコンポーネントは、任意の形態または媒体のデジタルデータ通信、たとえば、通信ネットワークによって相互に接続されることが可能である。通信ネットワークの例は、ローカルエリアネットワーク(LAN)および広域ネットワーク(WAN)、たとえば、インターネットを含む。
【0151】
コンピューティングシステムは、クライアントおよびサーバを含み得る。クライアントおよびサーバは、概して互いに離れており、通常は通信ネットワークを通じてインタラクションする。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行されており、互いにクライアント-サーバの関係にあるコンピュータプログラムによって生じる。一部の実施形態において、サーバは、たとえば、クライアントとして働くデバイスとインタラクションするユーザに対してデータを表示し、そのようなユーザからユーザ入力を受け取る目的でユーザデバイスにデータ、たとえば、HTMLページを送信する。ユーザデバイスにおいて生成されたデータ、たとえば、ユーザインタラクションの結果が、サーバにおいてデバイスから受信されることが可能である。
【0152】
本明細書は多くの特定の実装の詳細を含むが、これらは、いかなる発明の範囲または特許請求される可能性があるものの範囲に対する限定ともみなされるべきでなく、むしろ、特定の発明の特定の実施形態に固有である可能性がある特徴の説明とみなされるべきである。別々の実施形態の文脈で本明細書において説明されている特定の特徴が、単一の実施形態に組み合わせて実装されることも可能である。反対に、単一の実施形態の文脈で説明されている様々な特徴が、複数の実施形態に別々にまたは任意の好適な部分的組合せで実装されることも可能である。さらに、特徴は、特定の組合せで働くものとして上で説明されている場合があり、最初にそのように主張されてさえいる場合があるが、主張された組合せの1つまたは複数の特徴は、場合によっては組合せから削除されることが可能であり、主張された組合せは、部分的組合せ、または部分的組合せの変形を対象とする場合がある。
【0153】
同様に、動作が特定の順序で図面に示され、請求項に記載されているが、これは、そのような動作が示された特定の順序でもしくは逐次的順序で実行されること、または所望の結果を達成するために示されたすべての動作が実行されることを必要とするものと理解されるべきでない。特定の状況においては、マルチタスクおよび並列処理が有利である場合がある。さらに、上述の実施形態における様々なシステムモジュールおよびコンポーネントの分割は、すべての実施形態においてそのような分割を必要とするものと理解されるべきでなく、説明されたプログラムコンポーネントおよびシステムは、概して、単一のソフトウェア製品に一緒に統合されるか、または複数のソフトウェア製品にパッケージングされることが可能であることが理解されるべきである。
【0154】
対象の特定の実施形態が説明された。その他の実施形態は、添付の請求項の範囲内にある。たとえば、請求項に記載のアクションは、異なる順序で実行され、それでも所望の結果を達成することができる。一例として、添付の図に示されたプロセスは、所望の結果を達成するために、必ずしも、示された特定の順序または逐次的順序を必要としない。場合によっては、マルチタスクおよび並列処理が有利である可能性がある。
【符号の説明】
【0155】
100 タンパク質再構築システム
102 タンパク質のマスクされた表現、マスクされたタンパク質表現
104 アミノ酸配列表現
106 タンパク質構造表現
108 予測された埋め込み
110 完全なタンパク質表現
200 タンパク質再構築ニューラルネットワーク
202 単一埋め込み
204 ペア埋め込み
206-A~N 更新ブロック
208 更新された単一埋め込み
210 更新されたペア埋め込み
300 更新ブロック
302 現在の単一埋め込み
304 現在のペア埋め込み
306 更新された単一埋め込み
308 更新されたペア埋め込み、ペア埋め込み更新ブロック
400 単一埋め込み更新ブロック
402 自己アテンションブロック
404 遷移ブロック
500 ペア埋め込み更新ブロック
502 外積平均演算、外積平均
504 行単位の自己アテンションブロック
506 列単位の自己アテンションブロック
508 遷移ブロック
600 プロセス
図1
図2
図3
図4
図5
図6