(57)【要約】第１モダリティからの入力データおよび第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを使用して、予測タスクを実行する手法。手法は、マルチモーダル統計モデルを指定する情報を取得する工程であって、マルチモーダル統計モデルを指定する情報は、マルチモーダル統計モデルの複数の構成要素のそれぞれのパラメータの値を含み、複数の構成要素は、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む工程と、第１データモダリティの第１入力データを取得する工程と、第１入力データを第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、共同モダリティ表現、第１モダリティ埋め込み、および第１特徴ベクトルを使用して、第２特徴ベクトルを特定する工程と、予測子と第２特徴ベクトルを使用して予測タスクの予測を生成する工程と、を含む。
2021524099.tif 000002
【特許請求の範囲】
【請求項１】
第１モダリティからの入力データおよび前記第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを訓練する方法であって、前記方法は
前記第１モダリティのラベル付けされていない訓練データおよび前記第２モダリティのラベル付けされていない訓練データを含むラベル付けされていない訓練データにアクセスする、ラベル付けされていない訓練データアクセス工程と、
前記第１モダリティのラベル付けされた訓練データおよび前記第２モダリティのラベル付けされた訓練データを含むラベル付けされた訓練データにアクセスする、ラベル付けされた訓練データアクセス工程と、
前記マルチモーダル統計モデルを２段階で訓練する、訓練工程であって、前記マルチモーダル統計モデルは、前記第１モダリティおよび前記第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む複数の構成要素を含み、前記訓練工程は、
自己教師あり学習手法および前記ラベル付けされていない訓練データを使用して、前記第１モダリティ埋め込みおよび前記第２モダリティ埋め込みと前記共同モダリティ表現とのパラメータの値を推定することにより、少なくとも部分的に第１訓練段階を実行する、第１訓練段階実行工程および、
教師あり学習手法および前記ラベル付けされた訓練データを使用して、前記予測子のパラメータの値を推定することにより、少なくとも部分的に第２訓練段階を実行する、第２訓練段階実行工程、を含む訓練工程と、
前記マルチモーダル統計モデルの前記複数の構成要素のパラメータの予測値を記憶することにより、前記マルチモーダル統計モデルを指定する情報を少なくとも部分的に記憶する工程と、を備える方法。
【請求項２】
前記訓練工程は、前記第１訓練段階の前に前記第１エンコーダおよび前記第２エンコーダのパラメータの値を推定する工程をさらに含む、請求項１に記載の方法。
【請求項３】
前記訓練工程は、前記第１訓練段階の前に前記第１モダリティおよび前記第２モダリティの第１デコーダおよび第２デコーダのパラメータの値をそれぞれ推定する工程をさらに含む、請求項２に記載の方法。
【請求項４】
前記訓練工程は、前記第１訓練段階中に、前記第１エンコーダおよび前記第２エンコーダのパラメータの値の推定を、前記共同モダリティ表現のパラメータの値の推定と共同でする工程をさらに含む、請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項５】
前記訓練工程は、前記第１訓練段階中に、前記第１モダリティの第１デコーダおよび前記第２モダリティの第２デコーダのパラメータの値を推定する工程をさらに含む、請求項４または先行する請求項のいずれか一項に記載の方法。
【請求項６】
前記第１訓練段階実行工程は、
前記第１モダリティの前記ラベル付けされていない訓練データにおける第１データ入力にアクセスする工程と、
前記第１データ入力を前記第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、
前記共同モダリティ表現、前記第１モダリティ埋め込み、および前記第１特徴ベクトルを使用して、第２特徴ベクトルを特定する、第２特徴ベクトル特定工程と、
前記第２特徴ベクトルを入力として第１デコーダに提供して、第１データ出力を生成する工程と、を含む請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項７】
前記第１データ出力を前記第１データ入力と比較する工程と、
前記比較の結果に基づき、前記共同モダリティ表現の１つ以上のパラメータの１つ以上の値を更新する工程と、をさらに含む請求項６または先行する請求項のいずれか一項に記載の方法。
【請求項８】
前記第１訓練段階実行工程は、
前記第１モダリティの前記ラベル付けされていない訓練データにおける第１入力にアクセスする工程と、
前記第１入力データを前記第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、
前記共同モダリティ表現、前記第２モダリティ埋め込み、および前記第１特徴ベクトルを使用して、第２特徴ベクトルを特定する工程と、
前記第２特徴ベクトルを入力として前記第２モダリティの第２デコーダに提供して、第２出力データを生成する工程と、を含む請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項９】
前記第１エンコーダはｄ次元ベクトルを出力するように構成され、前記共同モダリティ表現はＮ個のｍ次元ベクトルを含み、前記第１モダリティ埋め込みはｍ＊ｄの重みを含む、請求項６または先行する請求項のいずれか一項に記載の方法。
【請求項１０】
前記第２特徴ベクトル特定工程は、
前記第１モダリティ埋め込みを使用することにより、前記共同モダリティ表現を前記第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、
前記共同モダリティ表現における前記Ｎ個のｄ次元ベクトルの中から、類似性メトリックに従って前記第１特徴ベクトルに最も類似する第３特徴ベクトルを特定する工程と、
前記第１特徴ベクトルを前記第３特徴ベクトルと集約することにより前記第２特徴ベクトルを生成する工程と、を含む請求項９に記載の方法。
【請求項１１】
前記第２特徴ベクトル特定工程は、
前記第１モダリティ埋め込みを使用することにより、前記共同モダリティ表現を前記第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、
前記Ｎ個のｄ次元ベクトルの少なくとも一部と前記第１特徴ベクトルとの間の類似性に従って、前記共同モダリティ表現における前記Ｎ個のｄ次元ベクトルの前記少なくとも一部の重みを算出する工程と、
前記第１特徴ベクトルを、算出された前記重みによって重み付けされた前記Ｎ個のｄ次元ベクトルの前記少なくとも一部の加重和と集約することにより前記第２特徴ベクトルを生成する工程と、を含む請求項９または先行する請求項のいずれか一項に記載の方法。
【請求項１２】
前記マルチモーダル統計モデルは、第１タスク埋め込みおよび第２タスク埋め込みをさらに備え、前記訓練工程は、前記第２訓練段階中に、前記第１タスク埋め込みおよび前記第２タスク埋め込みのパラメータの値の推定を、前記予測子のパラメータの値の推定と共同でする工程をさらに含む、請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項１３】
前記第１エンコーダはニューラルネットワークを含む、請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項１４】
前記ニューラルネットワークは畳み込みニューラルネットワークである、請求項１３または先行する請求項のいずれか一項に記載の方法。
【請求項１５】
前記ニューラルネットワークは回帰型ニューラルネットワークである、請求項１３または先行する請求項のいずれか一項に記載の方法。
【請求項１６】
前記第１訓練段階は、確率的勾配降下法を使用して前記共同モダリティ表現の前記パラメータの前記値を推定する工程をさらに含む、請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項１７】
前記第１訓練段階は、前記確率的勾配降下法を使用して前記第１モダリティ埋め込みおよび前記第２モダリティ埋め込みの前記パラメータの前記値を推定する工程をさらに含む、請求項１６または先行する請求項のいずれか一項に記載の方法。
【請求項１８】
前記第１モダリティの前記ラベル付けされていない訓練データは画像を含む、請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項１９】
前記第２モダリティのラベル付けされていない訓練データはテキストを含む、請求項１８または先行する請求項のいずれか一項に記載の方法。
【請求項２０】
前記第１モダリティのラベル付けされていない訓練データはタンパク質配列データを含む、請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項２１】
前記第２モダリティのラベル付けされていない訓練データは、タンパク質ファミリーデータ、生物学的プロセスオントロジーデータ、分子機能オントロジーデータ、細胞構成要素オントロジーデータ、または分類学的種ファミリーデータを含む、請求項２０または先行する請求項のいずれか一項に記載の方法。
【請求項２２】
第３モダリティのラベル付けされていない訓練データにアクセスする工程と、
前記第３モダリティのラベル付けされた訓練データにアクセスする工程と、
前記マルチモーダル統計モデルを拡張して、前記第３モダリティの第３エンコーダおよび第３モダリティ埋め込みを含める工程と、
自己教師あり学習手法および前記第３モダリティの前記ラベル付けされていない訓練データを使用して、前記第３モダリティ埋め込みおよび前記共同モダリティ表現のパラメータの値を更新することおよび、
教師あり学習手法および前記第３モダリティの前記ラベル付けされた訓練データを使用して、前記予測子のパラメータの値を更新することにより
前記マルチモーダル統計モデルを更新する工程と、をさらに備える請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項２３】
前記マルチモーダル統計モデルは、前記第１モダリティおよび前記第２モダリティとは異なる第３モダリティから入力データを受信するように構成され、第３モダリティ埋め込みをさらに含み、
前記ラベル付けされていない訓練データアクセス工程は、前記第３モダリティのラベル付けされていない訓練データにアクセスする工程を含み、
前記ラベル付けされた訓練データアクセス工程は、前記第３モダリティのラベル付けされた訓練データにアクセスする工程を含み、
前記第１訓練段階実行工程は、前記第３モダリティの前記ラベル付けされていない訓練データにさらに基づき前記第３モダリティ埋め込みのパラメータの値を推定する工程をさらに含み、
前記第２訓練段階実行工程は、前記第３モダリティの前記ラベル付けされた訓練データにさらに基づき前記予測子のパラメータの値を推定する工程を含む、請求項１または先行する請求項のいずれか一項に記載の方法。
【請求項２４】
１つ以上のコンピュータハードウェアプロセッサと、
１つ以上の非一時的なコンピュータ可読記憶媒体と、を備えるシステムであって、前記非一時的なコンピュータ可読記憶媒体は、前記１つ以上のコンピュータハードウェアプロセッサによって実行された場合、前記１つ以上のコンピュータハードウェアプロセッサに、第１モダリティからの入力データおよび前記第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを訓練する方法、を実行させるプロセッサ実行可能な命令を記憶し、前記方法は
前記第１モダリティのラベル付けされていない訓練データおよび前記第２モダリティのラベル付けされていない訓練データを含むラベル付けされていない訓練データにアクセスする工程と、
前記第１モダリティのラベル付けされた訓練データおよび前記第２モダリティのラベル付けされた訓練データを含むラベル付けされた訓練データにアクセスする工程と、
前記マルチモーダル統計モデルを２段階で訓練する、訓練工程であって、前記マルチモーダル統計モデルは、前記第１モダリティおよび前記第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む複数の構成要素を含み、前記訓練工程は、
自己教師あり学習手法および前記ラベル付けされていない訓練データを使用して、前記第１モダリティ埋め込みおよび前記第２モダリティ埋め込みと前記共同モダリティ表現とのパラメータの値を推定することにより、少なくとも部分的に第１訓練段階を実行する、第１訓練段階実行工程および、
教師あり学習手法および前記ラベル付けされた訓練データを使用して、前記予測子のパラメータの値を推定することにより、少なくとも部分的に第２訓練段階を実行する、第２訓練段階実行工程、を含む訓練工程と、
前記マルチモーダル統計モデルの前記複数の構成要素のパラメータの予測値を記憶することにより、前記マルチモーダル統計モデルを指定する情報を少なくとも部分的に記憶する工程と、を含むシステム。
【請求項２５】
前記共同モダリティ表現は、複数のｍ次元ベクトルを含み、前記システムは、前記複数のｍ次元ベクトルを記憶するように構成されたメモリをさらに備える、請求項２４に記載のシステム。
【請求項２６】
１つ以上の非一時的なコンピュータ可読記憶媒体であって、前記非一時的なコンピュータ可読記憶媒体は、１つ以上のコンピュータハードウェアプロセッサによって実行された場合、前記１つ以上のコンピュータハードウェアプロセッサに、第１モダリティからの入力データおよび前記第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを訓練する方法、を実行させるプロセッサ実行可能な命令を記憶し、前記方法は
前記第１モダリティのラベル付けされていない訓練データおよび前記第２モダリティのラベル付けされていない訓練データを含むラベル付けされていない訓練データにアクセスする工程と、
前記第１モダリティのラベル付けされた訓練データおよび前記第２モダリティのラベル付けされた訓練データを含むラベル付けされた訓練データにアクセスする工程と、
前記マルチモーダル統計モデルを２段階で訓練する、訓練工程であって、前記マルチモーダル統計モデルは、前記第１モダリティおよび前記第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む複数の構成要素を含み、前記訓練工程は、
自己教師あり学習手法および前記ラベル付けされていない訓練データを使用して、前記第１モダリティ埋め込みおよび前記第２モダリティ埋め込みと前記共同モダリティ表現とのパラメータの値を推定することにより、少なくとも部分的に第１訓練段階を実行する、第１訓練段階実行工程および、
教師あり学習手法および前記ラベル付けされた訓練データを使用して、前記予測子のパラメータの値を推定することにより、少なくとも部分的に第２訓練段階を実行する、第２訓練段階実行工程、を含む訓練工程と、
前記マルチモーダル統計モデルの前記複数の構成要素のパラメータの予測値を記憶することにより、前記マルチモーダル統計モデルを指定する情報を少なくとも部分的に記憶する工程と、を含む非一時的なコンピュータ可読記憶媒体。
【請求項２７】
第１モダリティからの入力データおよび前記第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを使用して、予測タスクを実行する方法であって、前記方法は
前記マルチモーダル統計モデルを指定する情報を取得する工程であって、前記マルチモーダル統計モデルを指定する情報は、前記マルチモーダル統計モデルの複数の構成要素のそれぞれのパラメータの値を含み、前記複数の構成要素は、前記第１モダリティおよび前記第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む工程と、
前記第１データモダリティの第１入力データを取得する工程と、
前記第１入力データを前記第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、
前記共同モダリティ表現、前記第１モダリティ埋め込み、および前記第１特徴ベクトルを使用して、第２特徴ベクトルを特定する、第２特徴ベクトル特定工程と、
前記予測子および前記第２特徴ベクトルを使用して前記予測タスクの予測を生成する、予想生成工程と、を備える方法。
【請求項２８】
前記第２データモダリティの第２入力データを取得する工程と、
前記第２入力データを前記第２エンコーダに提供して、第３特徴ベクトルを生成する工程と、
前記共同モダリティ表現、前記第２モダリティ埋め込み、および前記第３特徴ベクトルを使用して、第４特徴ベクトルを特定する工程と、をさらに備え
前記第４特徴ベクトルを使用して前記予想生成工程を実行する、請求項２７に記載の方法。
【請求項２９】
前記マルチモーダル統計モデルは、前記第１モダリティおよび前記第２モダリティの第１タスク埋め込みおよび第２タスク埋め込みを含み、前記予想生成工程は、
前記第１タスク埋め込みを使用して前記第２特徴ベクトルを重み付けする工程と、
前記第２タスク埋め込みを使用して前記第４特徴ベクトルを重み付けする工程と、
重み付けされた前記第２特徴ベクトルおよび前記第４特徴ベクトルと前記予測子とを使用して、前記予測タスクの前記予測を生成する工程と、をさらに含む請求項２８または先行する請求項のいずれか一項に記載の方法。
【請求項３０】
重み付けされた前記第２特徴ベクトルおよび前記第４特徴ベクトルを前記予測子に提供する工程をさらに備える、請求項２９または先行する請求項のいずれか一項に記載の方法。
【請求項３１】
前記第１エンコーダはｄ次元ベクトルを出力するように構成され、前記共同モダリティ表現はＮ個のｍ次元ベクトルを含み、前記第１モダリティ埋め込みはｍｘｄの重みを含む、請求項２７または先行する請求項のいずれか一項に記載の方法。
【請求項３２】
前記第２特徴ベクトル特定工程は、
前記第１モダリティ埋め込みを使用することにより、前記共同モダリティ表現を前記第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、
前記共同モダリティ表現における前記Ｎ個のｄ次元ベクトルの中から、類似性メトリックに従って前記第１特徴ベクトルに最も類似する第３特徴ベクトルを特定する工程と、
前記第１モダリティ埋め込みにおける重みを使用して前記第３特徴ベクトルの次元を重み付けすることにより前記第２特徴ベクトルを生成する工程と、を含む請求項３１または先行する請求項のいずれか一項に記載の方法。
【請求項３３】
前記第２特徴ベクトル特定工程は、
前記第１モダリティ埋め込みを使用することにより、前記共同モダリティ表現を前記第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、
前記共同モダリティ表現における前記Ｎ個のｄ次元ベクトルの中から、類似性メトリックに従って前記第１特徴ベクトルに最も類似する第３特徴ベクトルを特定する工程と、
前記第１特徴ベクトルを前記第３特徴ベクトルと集約することにより前記第２特徴ベクトルを生成する工程と、を含む請求項３１または先行する請求項のいずれか一項に記載の方法。
【請求項３４】
前記第２特徴ベクトル特定工程は、
前記第１モダリティ埋め込みを使用することにより、前記共同モダリティ表現を前記第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、
前記Ｎ個のｄ次元ベクトルの少なくとも一部と前記第１特徴ベクトルとの間の類似性に従って、前記共同モダリティ表現における前記Ｎ個のｄ次元ベクトルの前記少なくとも一部の重みを算出する工程と、
算出された前記重みによって重み付けられた前記Ｎ個のｄ次元ベクトルの前記少なくとも一部の加重和として前記第２特徴ベクトルを生成する工程と、を含む請求項３２または先行する請求項のいずれか一項に記載の方法。
【請求項３５】
前記第１エンコーダはニューラルネットワークを含む、請求項２７または先行する請求項のいずれか一項に記載の方法。
【請求項３６】
前記ニューラルネットワークは、畳み込みニューラルネットワークである請求項３５または先行する請求項のいずれか一項に記載の方法。
【請求項３７】
前記ニューラルネットワークは回帰型ニューラルネットワークである、請求項３５または先行する請求項のいずれか一項に記載の方法。
【請求項３８】
前記第１モダリティの入力データは１つ以上の画像を含む、請求項２７または先行する請求項のいずれか一項に記載の方法。
【請求項３９】
前記第２モダリティの入力データはテキストを含む、請求項２７または先行する請求項のいずれか一項に記載の方法。
【請求項４０】
前記第１モダリティの入力データはタンパク質配列データを含む、請求項３９または先行する請求項のいずれか一項に記載の方法。
【請求項４１】
前記第２モダリティの入力データは、タンパク質ファミリーデータ、生物学的プロセスオントロジーデータ、分子機能オントロジーデータ、細胞構成要素オントロジーデータ、または分類学的種ファミリーデータを含む、請求項４０または先行する請求項のいずれか一項に記載の方法。
【請求項４２】
第１モダリティからの入力データおよび前記第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを使用して、予測タスクを実行するシステムであって、前記システムは
１つ以上のコンピュータハードウェアプロセッサと、
１つ以上の非一時的なコンピュータ可読記憶媒体と、を備えるシステムであって、前記１つ以上の非一時的なコンピュータ可読記憶媒体は、前記１つ以上のコンピュータハードウェアプロセッサによって実行された場合、前記１つ以上のコンピュータハードウェアプロセッサに、
前記マルチモーダル統計モデルを指定する情報を取得する工程であって、前記マルチモーダル統計モデルを指定する情報は、前記マルチモーダル統計モデルの複数の構成要素のそれぞれのパラメータの値を含み、前記複数の構成要素は、前記第１モダリティおよび前記第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む工程と、
前記第１データモダリティの第１入力データを取得する工程と、
前記第１入力データを前記第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、
前記共同モダリティ表現、前記第１モダリティ埋め込み、および前記第１特徴ベクトルを使用して、第２特徴ベクトルを特定する工程と、
前記予測子と前記第２特徴ベクトルを使用して前記予測タスクの予測を生成する工程と、を実行させるプロセッサ実行可能な命令を記憶するシステム。
【請求項４３】
１つ以上の非一時的なコンピュータ可読記憶媒体であって、前記１つ以上のコンピュータハードウェアプロセッサによって実行された場合、前記１つ以上のコンピュータハードウェアプロセッサに、
マルチモーダル統計モデルを指定する情報を取得する工程であって、前記マルチモーダル統計モデルを指定する情報は、前記マルチモーダル統計モデルの複数の構成要素のそれぞれのパラメータの値を含み、前記複数の構成要素は、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む工程と、
前記第１データモダリティの第１入力データを取得する工程と、
前記第１入力データを前記第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、
前記共同モダリティ表現、前記第１モダリティ埋め込み、および前記第１特徴ベクトルを使用して、第２特徴ベクトルを特定する工程と、
前記予測子と前記第２特徴ベクトルを使用して予測タスクの予測を生成する工程と、を実行させるプロセッサ実行可能な命令を記憶する１つ以上の非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、異なるデータモダリティの統計モデルを統合するためのシステムおよび方法に関する。
【背景技術】
【０００２】
機械学習の技術は、複数のモダリティからのデータが利用可能な場合の問題にしばしば適用される。データは、それぞれのデータソース、データタイプ、データ収集技術、センサ、および／または環境によって特徴付けられ得る、異なる取得フレームワークを使用して収集され得る。あるモダリティに関連付けられているデータは、異なるモダリティに関連付けられているデータを収集するために使用される取得フレームワークとは異なる取得フレームワークを使用することで収集されてよい。例えば、ある種類のセンサまたは実験手法によって収集されたデータは、別の種類のセンサまたは実験手法によって収集されたデータとは異なるモダリティを有する。別の例として、ある種類のデータ（例えば、画像データ）は、別の種類のデータ（例えば、テキストデータ）と同じモダリティではない。
【０００３】
特定のモダリティのデータを処理する従来の統計モデルは多い。例えば、畳み込みニューラルネットワークを画像に適用することで、画像に表示されているオブジェクトを識別する問題を解決し得る。別の例として、回帰型ニューラルネットワークは、音声認識のために音声データに適用され得る。
【０００４】
しかし、複数の異なるデータモダリティからのデータを効果的に利用できる統計的機械学習モデルを訓練して使用することはより困難である。このようなマルチモーダル統計機械学習モデルは、関心のある問題（例えば、患者が特定の薬物治療に反応するかどうかの予測）に関連して用いられる多数の異種データソース（患者のＤＮＡ、ＲＮＡ、およびタンパク質の発現データ、１つまたは複数のモダリティにおける患者の医用画像、患者の病歴、患者が罹っているかもしれない病気に関する情報等）が存在する医学や生物学を含む、さまざまな分野における幅広い適用が見込まれる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本願は、異なるデータモダリティの統計モデルを統合するためのシステムおよび方法に関する。
【課題を解決するための手段】
【０００６】
いくつかの実施形態は、第１モダリティからの入力データおよび第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを訓練する方法を含む。方法は、第１モダリティのラベル付けされていない訓練データおよび第２モダリティのラベル付けされていない訓練データを含むラベル付けされていない訓練データにアクセスする、ラベル付けされていない訓練データアクセス工程と、第１モダリティのラベル付けされた訓練データおよび第２モダリティのラベル付けされた訓練データを含むラベル付けされた訓練データにアクセスする、ラベル付けされた訓練データアクセス工程と、マルチモーダル統計モデルを２段階で訓練する、訓練工程であって、マルチモーダル統計モデルは、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む複数の構成要素を含み、訓練工程は、自己教師あり学習手法およびラベル付けされていない訓練データを使用して、第１モダリティ埋め込みおよび第２モダリティ埋め込みと共同モダリティ表現とのパラメータの値を推定することにより、少なくとも部分的に第１訓練段階を実行する、第１訓練段階実行工程および、教師あり学習手法およびラベル付けされた訓練データを使用して、予測子のパラメータの値を推定することにより、少なくとも部分的に第２訓練段階を実行する、第２訓練段階実行工程、を含む訓練工程と、マルチモーダル統計モデルの複数の構成要素のパラメータの予測値を記憶することにより、マルチモーダル統計モデルを指定する情報を少なくとも部分的に記憶する工程と、を備える。
【０００７】
いくつかの実施形態は、１つ以上のコンピュータハードウェアプロセッサと、１つ以上の非一時的なコンピュータ可読記憶媒体と、を備えるシステムを含み、非一時的なコンピュータ可読記憶媒体は、１つ以上のコンピュータハードウェアプロセッサによって実行された場合、１つ以上のコンピュータハードウェアプロセッサに、第１モダリティからの入力データおよび第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを訓練する方法、を実行させるプロセッサ実行可能な命令を記憶する。方法は、第１モダリティのラベル付けされていない訓練データおよび第２モダリティのラベル付けされていない訓練データを含むラベル付けされていない訓練データにアクセスする工程と、第１モダリティのラベル付けされた訓練データおよび第２モダリティのラベル付けされた訓練データを含むラベル付けされた訓練データにアクセスする工程と、マルチモーダル統計モデルを２段階で訓練する、訓練工程であって、マルチモーダル統計モデルは、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む複数の構成要素を含み、訓練工程は、自己教師あり学習手法およびラベル付けされていない訓練データを使用して、第１モダリティ埋め込みおよび第２モダリティ埋め込みと共同モダリティ表現とのパラメータの値を推定することにより、少なくとも部分的に第１訓練段階を実行する、第１訓練段階実行工程および、教師あり学習手法およびラベル付けされた訓練データを使用して、予測子のパラメータの値を推定することにより、少なくとも部分的に第２訓練段階を実行する、第２訓練段階実行工程、を含む訓練工程と、マルチモーダル統計モデルの複数の構成要素のパラメータの予測値を記憶することにより、マルチモーダル統計モデルを指定する情報を少なくとも部分的に記憶する工程と、を含む。
【０００８】
いくつかの実施形態は、１つ以上の非一時的なコンピュータ可読記憶媒体を含み、非一時的なコンピュータ可読記憶媒体は、１つ以上のコンピュータハードウェアプロセッサによって実行された場合、１つ以上のコンピュータハードウェアプロセッサに、第１モダリティからの入力データおよび第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを訓練する方法、を実行させるプロセッサ実行可能な命令を記憶する。方法は、第１モダリティのラベル付けされていない訓練データおよび第２モダリティのラベル付けされていない訓練データを含むラベル付けされていない訓練データにアクセスする工程と、第１モダリティのラベル付けされた訓練データおよび第２モダリティのラベル付けされた訓練データを含むラベル付けされた訓練データにアクセスする工程と、マルチモーダル統計モデルを２段階で訓練する、訓練工程であって、マルチモーダル統計モデルは、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む複数の構成要素を含み、訓練工程は、自己教師あり学習手法およびラベル付けされていない訓練データを使用して、第１モダリティ埋め込みおよび第２モダリティ埋め込みと共同モダリティ表現とのパラメータの値を推定することにより、少なくとも部分的に第１訓練段階を実行する、第１訓練段階実行工程および、教師あり学習手法およびラベル付けされた訓練データを使用して、予測子のパラメータの値を推定することにより、少なくとも部分的に第２訓練段階を実行する、第２訓練段階実行工程、を含む訓練工程と、マルチモーダル統計モデルの複数の構成要素のパラメータの予測値を記憶することにより、マルチモーダル統計モデルを指定する情報を少なくとも部分的に記憶する工程と、を含む。
【０００９】
いくつかの実施形態では、訓練工程は、第１訓練段階の前に第１エンコーダおよび第２エンコーダのパラメータの値を推定する工程をさらに含む。
いくつかの実施形態では、訓練工程は、第１訓練段階の前に第１モダリティおよび第２モダリティの第１デコーダおよび第２デコーダのパラメータの値をそれぞれ推定する工程をさらに含む。
【００１０】
いくつかの実施形態では、訓練工程は、第１訓練段階中に、第１エンコーダおよび第２エンコーダのパラメータの値の推定を、共同モダリティ表現のパラメータの値の推定と共同でする工程をさらに含む。
【００１１】
いくつかの実施形態では、訓練工程は、第１訓練段階中に、第１モダリティの第１デコーダおよび第２モダリティの第２デコーダのパラメータの値を推定する工程をさらに含む。
【００１２】
いくつかの実施形態では、第１訓練段階実行工程は、第１モダリティのラベル付けされていない訓練データにおける第１データ入力にアクセスする工程と、第１データ入力を第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、共同モダリティ表現、第１モダリティ埋め込み、および第１特徴ベクトルを使用して、第２特徴ベクトルを特定する、第２特徴ベクトル特定工程と、第２特徴ベクトルを入力として第１デコーダに提供して、第１データ出力を生成する工程と、を含む。
【００１３】
いくつかの実施形態では、方法は、第１データ出力を第１データ入力と比較する工程と、比較の結果に基づき、共同モダリティ表現の１つ以上のパラメータの１つ以上の値を更新する工程と、をさらに含む。
【００１４】
いくつかの実施形態では、第１訓練段階実行工程は、第１モダリティのラベル付けされていない訓練データにおける第１入力にアクセスする工程と、第１入力データを第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、共同モダリティ表現、第２モダリティ埋め込み、および第１特徴ベクトルを使用して、第２特徴ベクトルを特定する工程と、第２特徴ベクトルを入力として第２モダリティの第２デコーダに提供して、第２出力データを生成する工程と、を含む。
【００１５】
いくつかの実施形態では、第１エンコーダはｄ次元ベクトルを出力するように構成され、共同モダリティ表現はＮ個のｍ次元ベクトルを含み、第１モダリティ埋め込みはｍ＊ｄの重みを含む。
【００１６】
いくつかの実施形態では、第２特徴ベクトル特定工程は、第１モダリティ埋め込みを使用することにより、共同モダリティ表現を第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、共同モダリティ表現におけるＮ個のｄ次元ベクトルの中から、類似性メトリックに従って第１特徴ベクトルに最も類似する第３特徴ベクトルを特定する工程と、第１特徴ベクトルを第３特徴ベクトルと集約することにより第２特徴ベクトルを生成する工程と、を含む。
【００１７】
いくつかの実施形態では、第２特徴ベクトル特定工程は、第１モダリティ埋め込みを使用することにより、共同モダリティ表現を第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、Ｎ個のｄ次元ベクトルの少なくとも一部と第１特徴ベクトルとの間の類似性に従って、共同モダリティ表現におけるＮ個のｄ次元ベクトルの少なくとも一部の重みを算出する工程と、第１特徴ベクトルを、算出された重みによって重み付けされたＮ個のｄ次元ベクトルの少なくとも一部の加重和と集約することにより第２特徴ベクトルを生成する工程と、を含む。
【００１８】
いくつかの実施形態では、マルチモーダル統計モデルは、第１タスク埋め込みおよび第２タスク埋め込みをさらに備え、訓練工程は、第２訓練段階中に、第１タスク埋め込みおよび第２タスク埋め込みのパラメータの値の推定を、予測子のパラメータの値の推定と共同でする工程をさらに含む。
【００１９】
いくつかの実施形態では、第１エンコーダはニューラルネットワークを含む。いくつかの実施形態では、ニューラルネットワークは畳み込みニューラルネットワークである。いくつかの実施形態では、ニューラルネットワークは回帰型ニューラルネットワークである。
【００２０】
いくつかの実施形態では、第１訓練段階は、確率的勾配降下法を使用して共同モダリティ表現のパラメータの値を推定する工程をさらに含む。いくつかの実施形態では、第１訓練段階は、確率的勾配降下法を使用して第１モダリティ埋め込みおよび第２モダリティ埋め込みのパラメータの値を推定する工程をさらに含む。
【００２１】
いくつかの実施形態では、第１モダリティのラベル付けされていない訓練データは画像を含む。いくつかの実施形態では、第２モダリティのラベル付けされていない訓練データはテキストを含む。いくつかの実施形態では、第１モダリティのラベル付けされていない訓練データはタンパク質配列データを含む。いくつかの実施形態では、第２モダリティのラベル付けされていない訓練データは、タンパク質ファミリーデータ、生物学的プロセスオントロジーデータ、分子機能オントロジーデータ、細胞構成要素オントロジーデータ、または分類学的種ファミリーデータを含む。
【００２２】
いくつかの実施形態では、方法は、第３モダリティのラベル付けされていない訓練データにアクセスする工程と、第３モダリティのラベル付けされた訓練データにアクセスする工程と、マルチモーダル統計モデルを拡張して、第３モダリティの第３エンコーダおよび第３モダリティ埋め込みを含める工程と、自己教師あり学習手法および第３モダリティのラベル付けされていない訓練データを使用して、第３モダリティ埋め込みおよび共同モダリティ表現のパラメータの値を更新することおよび、教師あり学習手法および第３モダリティのラベル付けされた訓練データを使用して、予測子のパラメータの値を更新することによりマルチモーダル統計モデルを更新する工程と、をさらに備える。
【００２３】
いくつかの実施形態では、マルチモーダル統計モデルは、第１モダリティおよび第２モダリティとは異なる第３モダリティから入力データを受信するように構成され、第３モダリティ埋め込みをさらに含み、ラベル付けされていない訓練データアクセス工程は、第３モダリティのラベル付けされていない訓練データにアクセスする工程を含み、ラベル付けされた訓練データアクセス工程は、第３モダリティのラベル付けされた訓練データにアクセスする工程を含み、第１訓練段階実行工程は、第３モダリティのラベル付けされていない訓練データにさらに基づき第３モダリティ埋め込みのパラメータの値を推定する工程をさらに含み、第２訓練段階実行工程は、第３モダリティのラベル付けされた訓練データにさらに基づき予測子のパラメータの値を推定する工程を含む。
【００２４】
いくつかの実施形態は、第１モダリティからの入力データおよび第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを使用して、予測タスクを実行する方法を含む。方法は、マルチモーダル統計モデルを指定する情報を取得する工程であって、マルチモーダル統計モデルを指定する情報は、マルチモーダル統計モデルの複数の構成要素のそれぞれのパラメータの値を含み、複数の構成要素は、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む工程と、第１データモダリティの第１入力データを取得する工程と、第１入力データを第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、共同モダリティ表現、第１モダリティ埋め込み、および第１特徴ベクトルを使用して、第２特徴ベクトルを特定する、第２特徴ベクトル特定工程と、予測子および第２特徴ベクトルを使用して予測タスクの予測を生成する、予想生成工程と、を備える。
【００２５】
いくつかの実施形態は、第１モダリティからの入力データおよび第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを使用して、予測タスクを実行するシステムを含む。システムは１つ以上のコンピュータハードウェアプロセッサと、１つ以上の非一時的なコンピュータ可読記憶媒体と、を備えるシステムであって、１つ以上の非一時的なコンピュータ可読記憶媒体は、１つ以上のコンピュータハードウェアプロセッサによって実行された場合、１つ以上のコンピュータハードウェアプロセッサに、マルチモーダル統計モデルを指定する情報を取得する工程であって、マルチモーダル統計モデルを指定する情報は、マルチモーダル統計モデルの複数の構成要素のそれぞれのパラメータの値を含み、複数の構成要素は、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む工程と、第１データモダリティの第１入力データを取得する工程と、第１入力データを第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、共同モダリティ表現、第１モダリティ埋め込み、および第１特徴ベクトルを使用して、第２特徴ベクトルを特定する工程と、予測子と第２特徴ベクトルを使用して予測タスクの予測を生成する工程と、を実行させるプロセッサ実行可能な命令を記憶するシステム。
【００２６】
いくつかの実施形態は、１つ以上の非一時的なコンピュータ可読記憶媒体を含む。非一時的なコンピュータ可読記憶媒体は、１つ以上のコンピュータハードウェアプロセッサによって実行された場合、１つ以上のコンピュータハードウェアプロセッサに、マルチモーダル統計モデルを指定する情報を取得する工程であって、マルチモーダル統計モデルを指定する情報は、マルチモーダル統計モデルの複数の構成要素のそれぞれのパラメータの値を含み、複数の構成要素は、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む工程と、第１データモダリティの第１入力データを取得する工程と、第１入力データを第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、共同モダリティ表現、第１モダリティ埋め込み、および第１特徴ベクトルを使用して、第２特徴ベクトルを特定する工程と、予測子と第２特徴ベクトルを使用して予測タスクの予測を生成する工程と、を実行させるプロセッサ実行可能な命令を記憶する。
【００２７】
いくつかの実施形態では、方法は、第２データモダリティの第２入力データを取得する工程と、第２入力データを第２エンコーダに提供して、第３特徴ベクトルを生成する工程と、共同モダリティ表現、第２モダリティ埋め込み、および第３特徴ベクトルを使用して、第４特徴ベクトルを特定する工程と、をさらに備え、第４特徴ベクトルを使用して予想生成工程を実行する。
【００２８】
いくつかの実施形態では、マルチモーダル統計モデルは、第１モダリティおよび第２モダリティの第１タスク埋め込みおよび第２タスク埋め込みを含み、予想生成工程は、第１タスク埋め込みを使用して第２特徴ベクトルを重み付けする工程と、第２タスク埋め込みを使用して第４特徴ベクトルを重み付けする工程と、重み付けされた第２特徴ベクトルおよび第４特徴ベクトルと予測子とを使用して、予測タスクの予測を生成する工程と、をさらに含む。
【００２９】
いくつかの実施形態では、方法は、重み付けされた第２特徴ベクトルおよび第４特徴ベクトルを予測子に提供する工程をさらに備える。
いくつかの実施形態では、第１エンコーダはｄ次元ベクトルを出力するように構成され、共同モダリティ表現はＮ個のｍ次元ベクトルを含み、第１モダリティ埋め込みはｍｘｄの重みを含む。
【００３０】
いくつかの実施形態では、第２特徴ベクトル特定工程は、第１モダリティ埋め込みを使用することにより、共同モダリティ表現を第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、共同モダリティ表現におけるＮ個のｄ次元ベクトルの中から、類似性メトリックに従って第１特徴ベクトルに最も類似する第３特徴ベクトルを特定する工程と、第１モダリティ埋め込みにおける重みを使用して第３特徴ベクトルの次元を重み付けすることにより第２特徴ベクトルを生成する工程と、を含む。
【００３１】
いくつかの実施形態では、第２特徴ベクトル特定工程は、第１モダリティ埋め込みを使用することにより、共同モダリティ表現を第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、共同モダリティ表現におけるＮ個のｄ次元ベクトルの中から、類似性メトリックに従って第１特徴ベクトルに最も類似する第３特徴ベクトルを特定する工程と、第１特徴ベクトルを第３特徴ベクトルと集約することにより第２特徴ベクトルを生成する工程と、を含む。
【００３２】
いくつかの実施形態では、第２特徴ベクトル特定工程は、第１モダリティ埋め込みを使用することにより、共同モダリティ表現を第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、Ｎ個のｄ次元ベクトルの少なくとも一部と第１特徴ベクトルとの間の類似性に従って、共同モダリティ表現におけるＮ個のｄ次元ベクトルの少なくとも一部の重みを算出する工程と、算出された重みによって重み付けられたＮ個のｄ次元ベクトルの少なくとも一部の加重和として第２特徴ベクトルを生成する工程と、を含む。
【００３３】
いくつかの実施形態では、第１エンコーダはニューラルネットワークを含む。いくつかの実施形態では、ニューラルネットワークは、畳み込みニューラルネットワークである。いくつかの実施形態では、ニューラルネットワークは回帰型ニューラルネットワークである。
【００３４】
いくつかの実施形態では、第１モダリティの入力データは１つ以上の画像を含む。いくつかの実施形態では、第２モダリティの入力データはテキストを含む。いくつかの実施形態では、第１モダリティの入力データはタンパク質配列データを含む。いくつかの実施形態では、第２モダリティの入力データは、タンパク質ファミリーデータ、生物学的プロセスオントロジーデータ、分子機能オントロジーデータ、細胞構成要素オントロジーデータ、または分類学的種ファミリーデータを含む。
【００３５】
前述の概念および以下でより詳細に説明される追加の概念の全ての組み合わせは、そのような概念が相互に矛盾しない限り、本明細書に開示される本発明の主題の一部であると考察されることが理解されるべきである。
【００３６】
以下の図を参照して、技術の様々な非限定的な実施形態を説明する。図は必ずしも縮尺通りに描かれているわけではないことが理解されるべきである。
【図面の簡単な説明】
【００３７】
【図１】本明細書に記載の技術のいくつかの実施形態による、自己教師あり学習手法を使用する単一モダリティの統計モデルのための知識ベースの訓練を示す図。
【図２Ａ】本明細書に記載の技術のいくつかの実施形態による、自己教師あり学習手法を使用するマルチモーダル統計モデルの第１訓練段階を示す図。
【図２Ｂ】本明細書に記載の技術のいくつかの実施形態による、教師あり学習手法を使用するマルチモーダル統計モデルの第２訓練段階を示す図。
【図３】本明細書に記載の技術のいくつかの実施形態による、第１段階は自己教師あり学習を含み、第２段階は教師あり学習を含む、２段階の訓練手順を使用してマルチモーダル統計モデルを訓練する例示的な処理のフローチャート。
【図４】本明細書に記載の技術のいくつかの実施形態による、予測タスクのためのマルチモーダル統計モデルを使用する例示的な処理４００のフローチャート。
【図５】本明細書に記載の技術のいくつかの実施形態による、従来の技術と比較した予測タスクにおけるマルチモーダル統計モデルの性能を示す図。
【図６Ａ】本明細書に記載の技術のいくつかの実施形態による、エンコーダおよびデコーダを示す図。
【図６Ｂ】本明細書に記載の技術のいくつかの実施形態による、エンコーダおよびデコーダを示す図。
【図７】本明細書に記載の技術のいくつかの実施形態を実装し得る例示的なコンピュータシステムの構成要素を示す図。
【発明を実施するための形態】
【００３８】
複数のモダリティからのデータを入力として受信および処理するように構成された統計モデルは、マルチモーダル統計モデルと呼ばれる場合がある。本発明者らは、それぞれが異なる各自のモダリティでデータを処理するように設計された複数の個々の統計モデルを統合しマルチモーダル統計モデルを生成する、新規な技術を開発することによって、新しいクラスのマルチモーダル統計モデルを開発した。本明細書に記載の技術は、異なるモダリティおよび／または任意の他の適切な種類の統計モデル用に訓練された複数の深層学習モデルを統合するために使用され得る。本発明者らによって開発された技術は、マルチモーダル統計モデルを構築する従来技術の欠点に対処する。これらの欠点に対処することにより、本発明者らは、従来の機械学習システムおよびそれらを実装するために使用されるコンピュータ技術を改善する技術を開発した。
【００３９】
マルチモーダル統計モデルを訓練する従来の機械学習手法では、マルチモーダル統計モデルが、複数のモダリティのそれぞれからのリンクデータを使用して「同期的に」訓練される必要があり、これにより、訓練データは、統計モデルが処理するように訓練される各モダリティからのデータを各々含む。このような同時訓練の必要性は大きな制限であり、少数（例えば２か３）を超えるモダリティからのデータを受信および処理が可能なマルチモーダル統計モデルの設計を妨げる。一方では、はるかに多くのデータモダリティからの処理が入力可能なマルチモーダル統計モデルが、例えば医学や生物学などの分野で必要である。
【００４０】
リンクデータを収集する必要があるので、同期的訓練は大きな制限である。あるモダリティに対する訓練データは、マルチモーダル統計モデルが処理するように訓練された他の全てのモダリティにおける対応する訓練データを各々有する必要がある。このような訓練データの収集は、法外に高額で極めて時間がかかるため、データの収集とラベル付けに数百または数千の工数を要する。同時訓練が可能でありリンクデータが２つのデータモダリティで利用可能であったとしても、後で別のデータモダリティの新しいデータが取得された場合、新しいデータを既存のデータにリンクする必要があり（再び時間がかかり高額）、さらに統計モデル全体を再訓練しなければならない。つまり、同期的訓練は、少数（すなわち２か３）を超えるモダリティのマルチモーダル統計モデルを生成および更新することを非現実的で、実際にはほぼ不可能にする。
【００４１】
本発明者らによって開発され、本明細書に記載される技術は、統計モデルが処理するように訓練されている複数のモダリティのそれぞれからのリンクデータを使用して訓練を同期的に実行する必要なしに、マルチモーダル統計モデルの効率的な作成および更新を可能にする。従来の技術とは異なり、本発明者らは、マルチモーダル統計モデルの非同期的訓練および更新を可能にする手法を開発した。非同期的訓練は、本明細書に記載の革新的な共有コードブックアーキテクチャによって可能になる。このアーキテクチャでは、それぞれのモダリティでデータを処理するため事前に訓練された個別の統計モデルが、それぞれの潜在表現を共同モダリティ表現に結合することによって統合され、それにより個別のモデル間の情報が共有される。
【００４２】
本発明者らは、個別の統計モデルを統合する革新的なアーキテクチャを開発しただけでなく、複数のモダリティのそれぞれからの訓練データを使用してこのアーキテクチャの構成要素を非同期的に訓練し、また追加的なデータが利用可能になった際に訓練された構成要素のパラメータを更新するための新規なアルゴリズムを作成した。本明細書に記載の技術は、任意の適切な数のデータモダリティ（例えば、２、３、４、５、６、７、８、９、１０、１１、１２、１３、１４、１５、１６等）のデータを受信および処理するマルチモーダル統計モデルの訓練に適用可能である。図５を参照して以下に記載されるように、本発明者らは、従来の技術では不可能であった、６つの異なるモダリティ（タンパク質構造予測の問題）で生じるデータを処理するマルチモーダル統計モデルを生成するために新しい技術を使用した。
【００４３】
非同期的訓練を利用することで、従来の技術に比べて、初めて、任意の適切な数のデータモダリティのマルチモーダル統計モデルを生成可能になるという改善が得られるだけでなく、そのような機械学習システムを訓練し展開するために使用されるコンピュータ技術も向上する。特に、本明細書に記載のマルチモーダル統計モデルは、（全てのモダリティにわたってリンクされた訓練データインスタンスが必要ないため）より少ない訓練データで訓練され得る。これはつまり、このようなモデルを訓練し展開するために使用する必要のあるコンピューティング資源がより少なくて済むことを意味する。具体的には、必要なプロセッサの能力と時間、必要なメモリ、およびそのようなデータの送信に必要なネットワーク資源（ネットワーク帯域幅など）がより少なくて済み、これらの全てがコンピュータの機能を直接的に向上させる。
【００４４】
本発明者らによって開発された技術は、本発明者らによって開発され本明細書に記載された訓練の技術およびマルチモーダル統計モデルの使用を通じ、異なるデータモダリティ用に構築された統計モデルの効率的な統合を可能にするため、「ＵＮＩＴＹ」フレームワークと呼ばれることがある。
【００４５】
したがって、いくつかの実施形態は、第１モダリティからの入力データおよび第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを訓練する手法を提供する。該手法は、（１）第１モダリティのラベル付けされていない訓練データおよび第２モダリティのラベル付けされていない訓練データを含むラベル付けされていない訓練データにアクセスする、ラベル付けされていない訓練データアクセス工程と、（２）第１モダリティのラベル付けされた訓練データおよび第２モダリティのラベル付けされた訓練データを含むラベル付けされた訓練データにアクセスする、ラベル付けされた訓練データアクセス工程と、（３）マルチモーダル統計モデルを２段階で訓練する、訓練工程であって、マルチモーダル統計モデルは、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む複数の構成要素を含み、訓練工程は、（Ａ）自己教師あり学習手法およびラベル付けされていない訓練データを使用して、第１モダリティ埋め込みおよび第２モダリティ埋め込みと共同モダリティ表現とのパラメータの値を推定することにより、少なくとも部分的に第１訓練段階を実行する、第１訓練段階実行工程および、（Ｂ）教師あり学習手法およびラベル付けされた訓練データを使用して、予測子のパラメータの値を推定することにより、少なくとも部分的に第２訓練段階を実行する、第２訓練段階実行工程、を含む訓練工程と、（４）マルチモーダル統計モデルの複数の構成要素のパラメータの予測値を記憶することにより、マルチモーダル統計モデルを指定する情報を少なくとも部分的に記憶する工程と、を含む。
【００４６】
いくつかの実施形態では、マルチモーダル統計モデルの第１訓練段階の前に第１エンコーダおよび第２エンコーダのパラメータの値が推定されてよい。統合される個々の統計モデルが事前に訓練され、その各エンコーダのパラメータが推定されている場合にこのようになってよい。他の実施形態では、エンコーダのパラメータは、初めて推定および／またはマルチモーダル統計モデルの訓練中に更新されてよい。同様に、第１デコーダおよび第２デコーダは、マルチモーダル統計モデルの訓練前または訓練中に訓練されてよい。
【００４７】
いくつかの実施形態では、共同モダリティ表現は、Ｎ個のｍ次元ベクトルを含むコードブックでよい。統合される個々の統計モデルは、入力の潜在表現を生成し、この潜在表現を使用して共同モダリティ表現における類似の１つまたは複数のベクトルを特定するように構成されてよい。次に、特定されたベクトルを使用して、予測タスクに使用可能な特徴の新しいセットを生成してよい。このように、あるモダリティに対して生成された特徴は更新され、異なるモダリティで収集された情報を、共通のコードブックの使用を介して反映してよい。
【００４８】
いくつかの実施形態では、第１訓練段階実行工程は、（Ａ）第１モダリティのラベル付けされていない訓練データにおける第１データ入力にアクセスする工程と、（Ｂ）第１データ入力を第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、（Ｃ）共同モダリティ表現、第１モダリティ埋め込み、および第１特徴ベクトルを使用して、第２特徴ベクトルを特定する、第２特徴ベクトル特定工程と、（Ｄ）第２特徴ベクトルを入力として第１デコーダに提供して、第１データ出力を生成する工程と、を含む。そして、第１データ出力は第１データ入力と比較されてよく、比較の結果に基づき（例えば、確率的勾配降下法を使用して）、共同モダリティ表現の１つまたは複数のパラメータ値が更新されてよい。
【００４９】
いくつかの実施形態では、第２特徴ベクトル特定工程は、（Ａ）第１モダリティ埋め込みを使用することにより、共同モダリティ表現を第１モダリティの空間に投影して、Ｎ個のｄ次元ベクトルを取得する工程と、（Ｂ）Ｎ個のｄ次元ベクトルの少なくとも一部と第１特徴ベクトルとの間の類似性に従って、共同モダリティ表現におけるＮ個のｄ次元ベクトルの少なくとも一部の重みを算出する工程と、（Ｃ）第１特徴ベクトルを、算出された重みによって重み付けされたＮ個のｄ次元ベクトルの少なくとも一部の加重和と集約することにより第２特徴ベクトルを生成する工程と、を含む。
【００５０】
いくつかの実施形態では、訓練されるマルチモーダル統計モデルは、第１タスク埋め込みおよび第２タスク埋め込みをさらに備え、訓練工程は、第２訓練段階中に、第１タスク埋め込みおよび第２タスク埋め込みのパラメータの値の推定を、予測子のパラメータの値の推定と共同でする工程をさらに含む。
【００５１】
いくつかの実施形態では、第１エンコーダは畳み込みニューラルネットワーク、回帰型ニューラルネットワーク、または任意の他の適切な種類の統計モデルのニューラルネットワークでよい。
【００５２】
いくつかの実施形態では、第１モダリティのラベル付けされていない訓練データは画像を含み、第２モダリティのラベル付けされていない訓練データはテキストを含む。いくつかの実施形態では、第１モダリティのラベル付けされていない訓練データはタンパク質配列データを含み、第２モダリティのラベル付けされていない訓練データは、タンパク質ファミリーデータ、生物学的プロセスオントロジーデータ、分子機能オントロジーデータ、細胞構成要素オントロジーデータ、または分類学的種ファミリーデータを含む。
【００５３】
いくつかの実施形態は、第１モダリティからの入力データおよび第１モダリティとは異なる第２モダリティからの入力データを含む複数のモダリティからの入力データを受信するように構成されたマルチモーダル統計モデルを使用して、予測タスクを実行する手法を含む。該方法は、（Ａ）マルチモーダル統計モデルを指定する情報を取得する工程であって、マルチモーダル統計モデルを指定する情報は、マルチモーダル統計モデルの複数の構成要素のそれぞれのパラメータの値を含み、複数の構成要素は、第１モダリティおよび第２モダリティの入力データをそれぞれ処理する第１エンコーダおよび第２エンコーダと、第１モダリティ埋め込みおよび第２モダリティ埋め込みと、共同モダリティ表現と、予測子とを含む工程と、（Ｂ）第１データモダリティの第１入力データを取得する工程と、（Ｃ）第１入力データを第１エンコーダに提供して、第１特徴ベクトルを生成する工程と、（Ｄ）共同モダリティ表現、第１モダリティ埋め込み、および第１特徴ベクトルを使用して、第２特徴ベクトルを特定する第２特徴ベクトル特定工程と、（Ｅ）予測子および第２特徴ベクトルを使用して予測タスクの予測を生成する、予想生成工程と、を備える。
【００５４】
いくつかの実施形態では、手法は、（Ａ）第２データモダリティの第２入力データを取得する工程と、（Ｂ）第２入力データを第２エンコーダに提供して、第３特徴ベクトルを生成する工程と、（Ｃ）共同モダリティ表現、第２モダリティ埋め込み、および第３特徴ベクトルを使用して、第４特徴ベクトルを特定する工程と、をさらに備えてよい。第２特徴ベクトルおよび第４特徴ベクトルを使用して予想生成工程を実行してよい。
【００５５】
いくつかの実施形態では、マルチモーダル統計モデルは、第１モダリティおよび第２モダリティの第１タスク埋め込みおよび第２タスク埋め込みを含んでよく、予想生成工程は、第１タスク埋め込みを使用して第２特徴ベクトルを重み付けする工程と、第２タスク埋め込みを使用して第４特徴ベクトルを重み付けする工程と、重み付けされた第２特徴ベクトルおよび第４特徴ベクトルと予測子とを使用して、予測タスクの予測を生成する工程と、をさらに含んでよい。
【００５６】
上記され以下でより詳細に説明される技術は、特定の方法で技術が実装されることに限定されないので、複数のうちの任意の方法で実装され得ることが理解されるべきである。実装の詳細の例は、説明のみを目的として本明細書に記載されている。さらに、本明細書に記載の技術の態様は特定の技術または技術の組み合わせの使用に限定されないので、本明細書に開示される技術は、個別にまたは任意の適切な組み合わせで使用することができる。
【００５７】
図１は、本明細書に記載の技術のいくつかの実施形態による、自己教師あり学習手法を使用する単一モダリティの統計モデル１００のための知識ベースの訓練を示す図である。統計モデル１００は、エンコーダ１０４、デコーダ１１０、および知識ベースを表すメモリ１０５を含む個別のパラメータを有する複数の構成要素を含む。
【００５８】
この例では、エンコーダ１０４およびデコーダ１１０は、左から右に下向きに延びる対角線を有する塗りつぶしパターンによって示されるように事前に訓練されており、メモリ１０５は、左から右に上向きに伸びる対角線を有する塗りつぶしパターンによって示されるようにまだ訓練されていないものとする。しかしながら、以下でより詳細に説明するように、いくつかの実施形態では、個々の統計モデルは、初めて訓練されるか、または少なくともマルチモーダル統計モデルの訓練中に更新されてよい。
【００５９】
いくつかの実施形態では、エンコーダ１０４は、入力を受信し、（入力データの次元よりも低い次元を有し得る）潜在表現を出力するように構成されてよく、第１デコーダは、潜在表現から入力データを再構築するように構成されてよい。いくつかの実施形態では、エンコーダおよびデコーダは、オートエンコーダの一部であってよい。いくつかの実施形態では、統計モデル１００はニューラルネットワークモデルであってよく、エンコーダ１０４およびデコーダ１１０は、エンコーダ１０４およびデコーダ１１０のパラメータが各ニューラルネットワーク層の重みを含むように、１つまたは複数のニューラルネットワーク層を含んでよい。ただし、エンコーダ１０４およびデコーダ１１０は、ニューラルネットワークであることに限定されず、任意の他の適切な種類の統計モデルであり得ることが理解されるべきである。
【００６０】
いくつかの実施形態では、メモリ１０５のパラメータ値は、統計モデル１００の出力が統計モデル１００への入力を可能な限り近く再現するように、自己教師あり学習を使用して推定されてよい。したがって、いくつかの実施形態では、訓練中に、統計モデル１００の出力が入力と比較され、確率的勾配降下法（エンコーダとデコーダがニューラルネットワークの場合、バックプロパゲーションを使用して算出された勾配を有する）または任意の他の適切な訓練アルゴリズムを使用して、入力と出力との間の距離の測定に基づき、メモリ１０５のパラメータ値が繰り返し更新される。
【００６１】
例えば、いくつかの実施形態では、訓練データは、第１エンコーダ１０４への入力１０２として提供されてよい。エンコーダ１０４は、入力１０２に基づいて、第１特徴表現１０６を生成する。特徴表現１０６は、メモリ１０５を使用して、第２特徴表現１０８を取得するために使用される。いくつかの実施形態では、メモリ１０５は、特徴表現１０６の次元と同じ次元を有する複数のベクトルを記憶し得る。例えば、特徴表現１０８はｄ次元ベクトルであってよく、メモリ１０５はＮ個のｄ次元ベクトルを記憶してよい。いくつかの実施形態では、第２特徴表現１０８は、メモリ１０５内のベクトルから、（コサイン類似度、ユークリッド距離等の類似性の適切な測定に従って）第１特徴表現１０６に最も類似するベクトルを選択し、そして選択したベクトルを、集約演算１０７（合計、乗算、算術平均化、幾何学的平均化、または任意の他の適切な演算であってよい）を介して特徴表現１０６に追加することにより取得されてよい。いくつかの実施形態では、第２特徴表現１０８は、特徴表現１０６を用いてメモリ１０５内のベクトルの加重線形結合を集約することによって生成され、各ベクトルに対する重みは、ベクトルと特徴表現１０６との間の距離に比例してよい。第２特徴表現は、デコーダ１１０へ入力として提供される。次に、デコーダ１１０の出力は、エンコーダ１０４に提供される入力と比較され、メモリ１０５のパラメータ値の少なくとも一部は、エンコーダ１０４への入力とデコーダ１１０の出力との間の差に基づいて更新されてよい。
【００６２】
図１を参照して説明した実施形態では、エンコーダ１０４およびデコーダ１１０が訓練されているものとするが、他の実施形態では、エンコーダ１０４およびデコーダ１１０のパラメータ値は、初めて推定および／またはメモリ１０５のパラメータ値が推定されると同時に更新されてよい。
【００６３】
図１の例示的な例は、図１は、事前に訓練された複数の統計モデルを単一のマルチモーダル統計モデルに統合するために本発明者らによって開発された技術を理解するのに役立つ。特に、本明細書に記載されるように、マルチモーダル統計モデルは、共同モダリティ表現を通じて異なるモダリティ間で情報を共有することを可能にする。単一モダリティの統計モデル１００の訓練および使用中にアクセスされるメモリ１０５のように、共同モダリティ表現（例えば、図２Ａおよび２Ｂに示される知識ベース２３０）は、本明細書に記載のマルチモーダル統計モデル（例えば、モデル２５０）の訓練および使用中にアクセスされる。
【００６４】
本明細書に記載されるように、共同モダリティ表現にアクセスしてあるモダリティの算出を実行する場合、その内容は、最初に、モダリティ埋め込みを使用してそのモダリティに投影されてよい。このようなモダリティ投影は、本明細書に記載されるマルチモーダル統計モデルの一部を構成する。
【００６５】
図１に関連して説明したように、単一モダリティ統計モデル１００は、メモリ１０５を含み、これは、事前に訓練されたエンコーダ１０４、デコーダ１１０、および（分類タスクに関してラベル付けされる必要のない）訓練データを使用する自己教師あり学習を使用して訓練されてよい。本発明者らによって開発されたマルチモーダル統計モデル（例えば、マルチモーダル統計モデル２５０）は、共同モダリティ表現（例えば、知識ベース２３０）および複数のモダリティ埋め込み（例えば、モダリティ埋め込み２３２）を含み、これは、本明細書に記載されるように図２Ａ、２Ｂ、および３の参照を含む自己教師あり学習を使用して訓練され、また、本明細書に記載されるように図２および４の参照を含む予測に使用されてよい。
【００６６】
いくつかの実施形態では、本発明者によって開発されたマルチモーダル統計モデルは、２段階の訓練手順を使用して訓練されてよい。第１訓練段階は、自己教師あり訓練手法を使用して実行され、共同モダリティ表現およびモダリティ埋め込みのパラメータの学習を含む。第２段階は、教師あり訓練手法を使用して実行され、（適切な予測タスク用の）予測子およびタスクの埋め込みのパラメータの学習を含む。図２Ａおよび２Ｂは、いくつかの実施形態において、マルチモーダル統計モデルのどの構成要素がこれらの２つの段階のそれぞれで学習されるかを示している。
【００６７】
図２Ａは、明細書に記載の技術のいくつかの実施形態による、自己教師あり学習手法を使用するマルチモーダル統計モデルの第１訓練段階を示す図である。図２Ａに示されるように、統計モデルは、第１モダリティのエンコーダ２０４、第２モダリティのエンコーダ２１４、知識ベース２３０、ならびに第１モダリティおよび第２モダリティの各々に対する埋め込みを含むモダリティ埋め込み２３２を含む、個別のパラメータを有する複数の構成要素を含む。さらに、図２Ａに示されるように、訓練環境２００は、第１モダリティのデコーダ２１０および第２モダリティのデコーダ２２０を含む。これらのデコーダはマルチモーダル統計モデルの一部ではなく、自己教師あり訓練段階でマルチモーダル統計モデルを訓練するために使用される。デコーダは、図２Ｂに示すように、予測には使用されない。
【００６８】
図２Ａに示される実施形態では、エンコーダ２０４および２１４、ならびにデコーダ２１０および２２０は、左から右に下向きに延びる対角線を有する塗りつぶしパターンによって示されるように事前に訓練されており、知識ベース２３０およびモダリティ埋め込み２３２は、左から右に上向きに伸びる対角線を有する塗りつぶしパターンによって示されるようにまだ訓練されていないものとする。しかしながら、本明細書に記載されるようにいくつかの実施形態では、１つまたは複数のエンコーダおよびデコーダは、初めて訓練されるか、または少なくともマルチモーダル統計モデルの訓練中に更新されてよい。
【００６９】
いくつかの実施形態では、エンコーダ２０４、エンコーダ２１４、デコーダ２１０、およびデコーダ２２０の各々は、１つまたは複数のニューラルネットワーク層を含む個別のニューラルネットワークであってよい。該層は、１つまたは複数の畳み込み層、１つまたは複数のプーリング層、１つまたはサブサンプリング層、１つまたは複数の全結合層、および／または任意の他の適切な層を含んでよい。しかしながら、エンコーダ２０４および２１４、ならびにデコーダ２１０および２２０のいずれも、ニューラルネットワークモデルに限定されず、任意の他の適切な種類の統計モデルであってよい。本明細書に記載の技術の態様はこの点では限定されない。
【００７０】
いくつかの実施形態では、（共同モダリティ表現の一例である）知識ベース２３０は、Ｎ個のｍ次元ベクトルを含んでよい。これらのベクトルは、行列（例えば、Ｎｘｍ行列）または任意の他の適切なデータ構造を使用して記憶および／または表現されてよい。本明細書に記載の技術の態様はこの点では限定されない。
【００７１】
いくつかの実施形態では、各モダリティ埋め込みは、知識ベース２３０をそれぞれのモダリティ空間に投影するように構成されてよい。例えば、いくつかの実施形態では、投影演算２３７を使用し、第１モダリティに対する（モダリティ埋め込み２３２の）モダリティ埋め込みを使用して、知識ベース２３０を第１モダリティに投影することで、知識ベース２３０の第１モダリティビュー２３８を取得してよい。投影演算は、第１モダリティに対する埋め込みモダリティの一部として重み２３４を利用してよい。別の例として、いくつかの実施形態では、投影演算２３９を使用し、第２モダリティに対する（モダリティ埋め込み２３２の）モダリティ埋め込みを使用して、知識ベース２３０を第２モダリティに投影することで、知識ベース２３０の第２モダリティビュー２４０を取得してよい。投影演算は、第２モダリティに対する埋め込みモダリティの一部として重み２３６を利用してよい。
【００７２】
いくつかの実施形態では、各モダリティ埋め込みは、投影された知識ベース内のベクトルの次元がそのモダリティ空間内の潜在表現の次元と一致するように、知識ベース２３０をそれぞれのモダリティ空間に投影するように構成されてよい。例えば、知識ベース２３０がＮ個のｍ次元ベクトルを含み、Ｎ＝５１２およびｍ＝６４であり、第１モダリティのエンコーダによって生成される潜在表現がｄ次元ベクトルで、ｄ＝１０とする。この例では、第１モダリティに対するモダリティ埋め込みは、ｍｘｄ（６４ｘ１０）行列であってよい。これを５１２ｘ６４の知識ベース２３０に適用すると、第１モダリティに対して知識ベース２３０の５１２ｘ１０のビューを生成する。さらに、第２モダリティのエンコーダによって生成された潜在表現がｐ次元ベクトルで、ｐ＝１２とする。すると、第１モダリティに対するモダリティ埋め込みは、ｍｘｐ（６４ｘ１２）行列であってよい。これを５１２ｘ６４の知識ベース２３０に適用すると、第２モダリティに対して知識ベース２３０の５１２ｘ１２のビューを生成する。前述の例から理解できるように、モダリティ埋め込みは特に（例えばあるモダリティでは１０次元であって、別のモダリティでは１２次元のように）潜在表現の次元が同じではない状況における異なるモダリティの統計モデルの統合を可能とする。
【００７３】
マルチモーダル統計モデルの第１（自己教師あり）訓練段階の態様は、図３を参照して以下でより詳細に説明される。
図２Ｂは、本明細書に記載の技術のいくつかの実施形態による、教師あり学習手法を使用するマルチモーダル統計モデル２５０の第２訓練段階を示す図である。図２Ｂに示されるように、マルチモーダル統計モデル２５０は、予測タスク２５６の予測子２５２およびタスク埋め込み２５４を含む。
【００７４】
図２Ｂに示される実施形態では、エンコーダ２０４および２１４、デコーダ２１０および２２０、知識ベース２３０、およびモダリティ埋め込み２３２は、左から右に下向きに延びる対角線を有する塗りつぶしパターンによって示されるように事前に訓練されており、予測子２５２およびタスク埋め込み２５４は、左から右に上向きに延びる対角線を有する塗りつぶしパターンによって示されるようにものとする。しかしながら、本明細書に記載されるように、いくつかの実施形態では、１つまたは複数のエンコーダ、デコーダ、モダリティ埋め込み、および共同モダリティ表現は、初めて訓練されるか、または少なくともマルチモーダル統計モデルを訓練する第２段階中に更新されてよい。
【００７５】
いくつかの実施形態では、予測子２５２は、入力特徴を出力にマッピングする（例えば、分類器の場合は離散ラベル、または回帰器の場合は連続変数）任意の適切な種類の統計モデルであってよい。例えば、予測子２５２は、線形モデル（例えば、線形回帰モデル）、一般化線形モデル（例えば、ロジスティック回帰、プロビット回帰）、ニューラルネットワークまたは他の非線形回帰モデル、ガウス混合モデル、サポートベクターマシン、決定木モデル、ランダムフォレストモデル、ベイジアン階層モデル、マルコフランダムフィールド、および／または任意の他の適切な種類の統計モデルを含んでよい。本明細書に記載の技術の態様はこの点では限定されない。
【００７６】
いくつかの実施形態では、タスク埋め込み２５４を使用して、演算２５６および２５８を介して、第１モダリティおよび第２モダリティからの特徴の寄与を重み付けしてよい。例えば、図２Ｂに示されるように、特徴表現２０８は、演算２５６を介して、第１モダリティのタスク埋め込みを使用して重み付けされ、特徴表現２１８は、演算２５８を介して、第２モダリティのタスク埋め込みを使用して重み付けされてよい。これらの加重特徴表現は、演算２６０を介して（例えば、加重和または積として）集約され、予測子２５２の入力を生成してよい。特徴表現に対するタスク埋め込みにより引き起こされる重み付けは、点ごとの乗法重み付け（例えば、アダマール積）であってよい。
【００７７】
マルチモーダル統計モデルの第２（教師あり）訓練段階の態様は、図３を参照して以下でより詳細に説明される。
＜マルチモーダル統計モデルの訓練＞
図３は、本明細書に記載の技術のいくつかの実施形態による、第１段階は自己教師あり学習を含み、第２段階は教師あり学習を含む、２段階の訓練手順を使用してマルチモーダル統計モデルを訓練する例示的な処理３００のフローチャートである。処理３００は、任意の適切なコンピューティング装置によって実行されてよい。例えば、処理３００は、１つまたは複数のグラフィックス処理ユニット（ＧＰＵ）、クラウドコンピューティングサービスによって提供される１つまたは複数のコンピューティング装置、および／または任意の他の適切なコンピューティング装置によって実行されてよい。本明細書に記載の技術の態様はこの点では限定されない。
【００７８】
図３に示され以下に説明される実施形態では、処理３００は、２つのモダリティ（第１モダリティおよび第２モダリティ）から入力を受信するように構成されたマルチモーダル統計モデルを訓練するために使用される。しかしながら、任意の適切な数のモダリティ（例えば、３、４、５、６、７、８、９、１０、１１、１２など）から入力を受信するように構成されたマルチモーダル統計モデルを訓練するために、処理３００が使用され得ることが理解されるべきである。本明細書に記載の技術の態様はこの点では限定されない。
【００７９】
この例では、処理３００の開始前に、各統計モデルは第１モダリティおよび第２モダリティ用に訓練されているものとする。特に、第１エンコーダおよび第１デコーダを含む第１統計モデルが第１モダリティについて訓練されており、第２エンコーダおよび第２デコーダを含む第２統計モデルが第２モダリティについて訓練されているものとする。第１統計モデルは、第１モダリティにおけるデータを使用して訓練されたオートエンコーダ型統計モデルであってよい。第２統計モデルは、第２モダリティにおけるデータを使用して訓練されたオートエンコーダ型の統計であってよい。しかしながら、以下でより詳細に説明するように、いくつかの実施形態では、個々の統計モデルは、初めて訓練されるか、または少なくともマルチモーダル統計モデルの訓練中に更新されてよい。
【００８０】
いくつかの実施形態では、処理３００の実行中に訓練されるマルチモーダル統計モデルは、各モダリティのエンコーダ構成要素、共同モダリティ表現構成要素、各モダリティのモダリティ埋め込み構成要素、予測子構成要素、および各モダリティのタスク埋め込み構成要素を含んでよく、また処理３００は、これらの構成要素の１つまたは複数のそれぞれのパラメータ値を推定するために使用されてよい。例えば、図２Ｂのマルチモーダル統計モデル２５０は、エンコーダ２０４、エンコーダ２１４、知識ベース２３０、モダリティ埋め込み２３２、予測子２５２、およびタスク埋め込み２５４を含み、該構成要素２３０、２３２、２５２、および２５４のパラメータは、処理３００の一部として推定されてよい。（統合されている個々の統計モデルの一部であり得る）複数のモダリティのそれぞれのデコーダは、マルチモーダル統計モデルの一部でなくてもよいことが理解されるべきである。それにかかわらず、そのようなデコーダは、以下でより詳細に説明されるように、自己教師あり学習の段階で、マルチモーダル統計モデルを訓練するために使用されてよい。
【００８１】
処理３００は動作３０２で開始し、第１モダリティのための第１の訓練された統計モデルのパラメータおよび第２モダリティのための第２の訓練された統計モデルのパラメータがアクセスされる。パラメータは、ローカルストレージから、リモートストレージからネットワークを介して、または任意の他の適切なソースからアクセスされてよい。
【００８２】
いくつかの実施形態では、第１の訓練された統計モデルは、オートエンコーダを含んでよく、動作３０２でアクセスされ得るパラメータの個別のセットを各々に有する第１エンコーダおよび第１デコーダを含んでよい。第１エンコーダは、入力として、第１モダリティを有するデータを受信し、（入力データの次元よりも低い次元を有し得る）潜在表現を出力するように構成されてよく、第１デコーダは、潜在表現から入力データを再構築するように構成されてよい。いくつかの実施形態では、第１の訓練された統計モデルは、ニューラルネットワーク（例えば、順伝播型ニューラルネットワーク、畳み込みニューラルネットワーク、回帰型ニューラルネットワーク、全結合型ニューラルネットワーク等）であってよく、第１エンコーダおよび第１デコーダは、第１エンコーダおよび第１デコーダのパラメータが各ニューラルネットワーク層の重みを含むように、１つまたは複数のニューラルネットワーク層を含んでよい。ただし、第１の訓練された統計モデルはニューラルネットワークであることに限定されず、任意の他の適切な統計モデルであり得ることが理解されるべきである。
【００８３】
いくつかの実施形態では、第２の訓練された統計モデルは、オートエンコーダを含んでよく、動作３０２でアクセスされ得るパラメータの個別のセットを各々に有する第２エンコーダおよび第２デコーダを含んでよい。第２エンコーダは、入力として、第２モダリティを有するデータを受信し、（入力データの次元よりも低い次元を有し得る）潜在表現を出力するように構成されてよく、第２デコーダは、潜在表現から入力データを再構築するように構成されてよい。いくつかの実施形態では、第２の訓練された統計モデルは、ニューラルネットワーク（例えば、順伝播型ニューラルネットワーク、畳み込みニューラルネットワーク、回帰型ニューラルネットワーク、全結合型ニューラルネットワーク等）であってよく、第２エンコーダおよび第２デコーダは、第１エンコーダおよび第１デコーダのパラメータが各ニューラルネットワーク層の重みを含むように、１つまたは複数のニューラルネットワーク層を含んでよい。ただし、第２の訓練された統計モデルはニューラルネットワークであることに限定されず、任意の他の適切な統計モデルであり得ることが理解されるべきである。
【００８４】
いくつかの実施形態では、第１エンコーダおよび第２エンコーダは、異なるモダリティのデータを受信するように構成されているため、互いに異なる。そのような実施形態では、第１デコーダおよび第２デコーダは互いに異なる。いくつかのそのような実施形態では、エンコーダがニューラルネットワークとしてそれぞれ実装される場合、エンコーダのニューラルネットワークアーキテクチャが異なる（例えば、層の数が異なる、タイプ層の種類が異なる、層の次元が異なる、非線形性が異なる等）。一例として、第１エンコーダは、入力として画像を受信し、画像の潜在表現を生成するように構成されてよく、第２エンコーダは、入力としてテキストを受信し、テキストの潜在表現を生成するように構成されてよい。別の例として、第１エンコーダは、タンパク質配列データの潜在表現を受信および生成するように構成されてよく、第２エンコーダは、タンパク質ファミリーデータの潜在表現を受信および生成するように構成されてよい。さらに別の例として、第１エンコーダは、第１種類（例えば、超音波）の医用画像の潜在表現を受信および生成するように構成されてよく、第２エンコーダは、第１種類とは異なる第２種類（例えば、ＭＲＩ画像）の医用画像の潜在表現を受信および生成するように構成されてよい。
【００８５】
いくつかの実施形態では、第１エンコーダの出力で生成される潜在表現は、第２エンコーダの出力で生成される潜在表現と同じ次元を有し得る。例えば、以下でより詳細に説明するように、第１エンコーダは、タンパク質配列の表現（例えば、２０ｘ１０２４のワンホットエンコードされたタンパク質配列）を入力として受信し、１０ｘ１の潜在表現を返してよい。この例では、第２エンコーダは入力として生物過程入力（例えば、２４９３７次元ベクトルとしてワンホットエンコードされ得る）を受信し、１０ｘ１の潜在表現を返してよい。しかしながら、異なるモダリティの埋め込みの使用により柔軟性が提供され、それにより異なるモダリティの潜在表現の次元が異なるので、潜在表現が同じ次元である必要はない。
【００８６】
図２Ａは、動作３０２でアクセスされ得るパラメータの一例を示す。特に、エンコーダ２０４（第１エンコーダ）、デコーダ２１０（第１デコーダ）、エンコーダ２１４（第２エンコーダ）、およびデコーダ２１８のパラメータは、動作３０２でアクセスされてよい。
【００８７】
次に、処理３００は動作３０３に進み、ラベル付けされていない訓練データが第１モダリティおよび第２モダリティの各々に対してアクセスされる。動作３０３でアクセスされるラベル付けされていない訓練データは、動作３０６において自己教師あり学習を使用するマルチモーダル統計モデルを訓練する第１段階に使用されてよい。第１訓練段階の一部として、ラベル付けされていない訓練データを使用して、マルチモーダル統計モデルの１つまたは複数の構成要素のパラメータを推定してよい。構成要素は、動作３０２でアクセスされるパラメータを有する第１統計モデルおよび第２統計モデルを統合することを可能にする。例えば、マルチモーダル統計モデル（例えば、図２Ｂに示されるモデル２５０）は、共同モダリティ表現（例えば、知識ベース２３０）、第１モダリティ埋め込み（例えば、モダリティ埋め込み２３２の一部）、および第２モダリティ埋め込み（例えば、モダリティ埋め込み２３２の一部）を含んでよく、動作３０６中に、ラベル付けされていない訓練データが使用され、共同モダリティ表現、第１モダリティ埋め込み、および第２モダリティ埋め込みのパラメータを推定してよい。
【００８８】
動作３０３でアクセスされるラベル付けされていない訓練データは、第１モダリティおよび第２モダリティのそれぞれの訓練データを含むが、これらのデータは、同期してまたは纏めて収集される必要はないことが理解されるべきである。第１モダリティのラベル付けされていない訓練データは、第２モダリティのラベル付けされていない訓練データとは別に生成されてよい。異なるモダリティのラベル付けされていない訓練データは、異なるエンティティにより異なる時間に生成され、および／または異なるデータベースに記憶されてよい。第１モダリティの訓練データは、第２モダリティの訓練データより多くてもよく、反対に、第２モダリティの訓練データが、第１モダリティの訓練データより多くてもよい。第１モダリティおよび第２モダリティの訓練データをペアにする必要はないので、１対１で対応しなくともよい。いくつかの実施形態では、動作３０３で取得された訓練データはラベル付けされてよいが、動作３０６での第１訓練段階中に訓練データが使用される際に、該ラベルは破棄または無視されてよい。
【００８９】
次に、処理３００は動作３０４に進み、ラベル付けされた訓練データが第１モダリティおよび第２モダリティの各々に対してアクセスされる。動作３０４でアクセスされるラベル付けされた訓練データは、動作３０８において教師あり学習を使用するマルチモーダル統計モデルを訓練する第２段階に使用されてよい。第２訓練段階の一部として、ラベル付けされた訓練データを使用して、マルチモーダル統計モデルの１つまたは複数の構成要素のパラメータを推定してよい。構成要素は、動作３０２でアクセスされるパラメータを有する第１統計モデルおよび第２統計モデルを統合し、これらのモデルを使用して予測タスクを実行することを可能にする。例えば、マルチモーダル統計モデル（例えば、図２Ｂに示されるモデル２５０）は、予測子（例えば、予測子２５２）、第１タスク埋め込み（例えば、タスク埋め込み２５４の一部）、および第２モダリティ埋め込み（例えば、タスク埋め込み２５４の一部）を含んでよく、動作３０８中に、ラベル付けされた訓練データが使用され、予測子、第１タスク埋め込み、および／または第２モダリティ埋め込みのパラメータを推定してよい。
【００９０】
動作３０４でアクセスされるラベル付けされた訓練データは、第１モダリティおよび第２モダリティのそれぞれの訓練データを含むが、これらのデータは、同期してまたは纏めて収集される必要はない。第１モダリティのラベル付けされた訓練データは、第２モダリティのラベル付けされた訓練データとは別に生成されてよい。異なるモダリティのラベル付けされた訓練データは、異なるエンティティにより異なる時間に生成され、および／または異なるデータベースに記憶されてよい。第１モダリティの訓練データは、第２モダリティの訓練データより多くてもよく、反対に、第２モダリティの訓練データが、第１モダリティの訓練データより多くてもよい。第１モダリティおよび第２モダリティの訓練データをペアにする必要はないので、１対１で対応しなくともよい。
【００９１】
次に、処理３００は動作３０５に進み、マルチモーダル統計モデルは２段階の手順を使用して訓練される。最初に、動作３０６において、動作３０３で取得されたラベル付けされていないデータを使用して、自己教師あり学習手法によって、マルチモーダル統計モデルの１つまたは複数の構成要素のパラメータ値を推定する。次に、動作３０８において、動作３０４で取得されたラベル付けされたデータを使用して、教師あり学習手法によって、マルチモーダル統計モデルの１つまたは複数の追加的構成要素のパラメータ値を推定する。これらの動作の各々について、以下でさらに詳しく説明する。
【００９２】
いくつかの実施形態では、動作３０６は、自己教師あり学習手法を使用して、マルチモーダル統計モデルの１つまたは複数の構成要素のパラメータ値を推定することを含んでよい。いくつかの実施形態では、共同モダリティ表現のパラメータ（例えば、図２Ｂの例における知識ベース２３０）は、動作３０６で推定されてよい。さらに、いくつかの実施形態では、１つまたは複数のモダリティ埋め込み（例えば、１つまたは複数のモダリティ埋め込み２３２）のパラメータは、動作３０６で推定されてよい。
【００９３】
いくつかの実施形態では、動作３０６の一部として推定されるパラメータ値は、自己教師あり学習を使用して推定されてよい。自己教師あり学習を使用した統計モデルの訓練は、出力において入力を再現するよう統計モデルを訓練することを含んでよい。したがって、いくつかの実施形態では、特定のデータが統計モデルへの入力として提供されてよく、また、統計モデルの出力が全く同じ特定のデータと比較されてよい。次に、統計モデルのパラメータの１つまたは複数の値が、統計モデルの出力と統計モデルに提供される特定のデータとの差に基づいて更新されてよい（例えば、確率的勾配降下または任意の他の適切な訓練アルゴリズムを使用して）。該差は、統計モデルの出力が、現在のパラメータ値のセットで演算された場合、入力をどれだけ正確に再現するかの尺度を提供する。
【００９４】
いくつかの実施形態では、動作３０３でアクセスされるラベル付けされていない訓練データを使用して、マルチモーダル統計モデルにおける共同モダリティ表現およびモダリティ埋め込みのパラメータ値を推定してよい。パラメータ値は、例えば、確率的勾配降下法などの反復学習アルゴリズムを使用して推定してよい。反復学習アルゴリズムは、マルチモーダル統計モデルのエンコーダへの入力としてラベル付けされていない訓練データの少なくとも一部を提供し、対応するデコーダを使用して出力を生成し、入力を生成した出力と比較し、ならびに入力と出力との差に基づき共同モダリティ表現および／またはモダリティ埋め込みのパラメータ値を更新することを含んでよい。
【００９５】
例えば、いくつかの実施形態では、第１モダリティの訓練データは、第１モダリティの第１エンコーダ（例えば、エンコーダ２０４）への入力として提供されてよい。第１エンコーダの出力（例えば、特徴表現２０６）、共同モダリティ表現（例えば、知識ベース２３０）、および第１モダリティ埋め込み（例えば、モダリティ埋め込み２３２のうちの１つ）を使用して、第１モダリティの第１デコーダ（例えば、デコーダ２１０）への入力（例えば、特徴表現２０８）を生成してよい。次に、デコーダ２１０の出力は、第１エンコーダに提供される入力と比較され、共同モダリティ表現および／または第１モダリティ埋め込みのパラメータ値の少なくとも一部は、第１エンコーダへの入力と第１デコーダの出力との間の差に基づいて更新されてよい。
【００９６】
この例では、第１エンコーダの出力から第１デコーダへの入力を生成はすることは、以下を含んでよい。（１）共同モダリティ表現を第１モダリティの空間に投影して、複数の投影されたベクトルを取得すること、（２）複数の投影されたベクトルのそれぞれと第１エンコーダの出力との間の距離（例えば、余弦距離および／または任意の他の適切な種類の距離測定値）を算出し、これらの距離を使用して（例えば、ソフトマックス加重を使用することにより）投影されたベクトルの重みを算出すること、および（３）第１エンコーダの出力を用いて、算出された重みによって重み付けされた投影されたベクトルの加重和を集約することによって、第１デコーダへの入力を生成すること。例えば、共同モダリティ表現は、Ｎ個のｍ次元ベクトル（Ｎｘｍ行列として表現および／または記憶され得る）を含んでよく、第１モダリティにｍｘｄとして表現され得る第１モダリティ投影を使用して共同モダリティ表現を投影して、Ｎ個のｄ次元ベクトル（Ｎｘｄ行列として表現され得る）を生成してよい。第１エンコーダの出力（例えば、図２Ａに示される特徴表現２０６）とＮ個のｄ次元ベクトルのそれぞれとの間の距離が算出および使用され、Ｎ個のｄ次元ベクトルのそれぞれの重みが取得されてよい。次に、第１デコーダへの入力（例えば、特徴表現２０８）は、算出された重みによって重み付けされたＮ個のｄ次元ベクトルの加重和を有する特徴表現２０６の集約７０７（例えば、合計、積、算術平均、幾何平均）として算出されてよい。他の実施形態では、第１デコーダへの入力は、投影された共同モダリティ表現における複数のｄ次元ベクトルの加重平均ではなく、第１エンコーダの出力と、適切に選択された距離測定値（例えば、余弦距離）によるＮ個のｄ次元ベクトルのうち第１エンコーダの出力に最も近いベクトルの合計であってよい。本明細書に記載の技術の態様はこの点では限定されない。さらに他の実施形態では、第１デコーダへの入力は、（上記のように算出された）Ｎ個のｄ次元ベクトルの加重和、または第１エンコーダの出力に最も類似するが第１エンコーダの出力と集約されない（上記のように特定された）ベクトルであってよい。
【００９７】
別の例としては、いくつかの実施形態では、第２モダリティの訓練データは、第２モダリティの第２エンコーダ（例えば、エンコーダ２１４）への入力として提供されてよい。第２エンコーダの出力（例えば、特徴表現２１６）、共同モダリティ表現（例えば、知識ベース２３０）、および第２モダリティ埋め込み（例えば、モダリティ埋め込み２３２のうちの１つ）を使用して、集約演算２１７によって第２モダリティの第２デコーダ（例えば、デコーダ２２０）への入力（例えば、特徴表現２１８）を生成してよい。次に、デコーダ２２０の出力は、第２エンコーダに提供される入力と比較され、共同モダリティ表現および／または第２モダリティ埋め込みのパラメータ値の少なくとも一部は、第２エンコーダへの入力と第２デコーダの出力との間の差に基づいて更新されてよい。
【００９８】
いくつかの実施形態では、動作３０８は、教師あり学習手法を使用して、マルチモーダル統計モデルの１つまたは複数の構成要素のパラメータ値を推定することを含んでよい。いくつかの実施形態では、予測子のパラメータ（例えば、図２Ｂの例における予測子２５２）は、動作３０８で推定されてよい。さらに、いくつかの実施形態では、１つまたは複数のタスク埋め込み（例えば、１つまたは複数のタスク埋め込み２５４）のパラメータは、動作３０８で推定されてよい。
【００９９】
いくつかの実施形態では、動作３０６の一部として推定されるパラメータ値は、動作３０４でアクセスされるラベル付けされた訓練データに基づき教師あり学習を使用して推定されてよい。いくつかの実施形態では、特定のデータが統計モデルへの入力として提供されてよく、また、統計モデルの出力が該特定のデータのラベルと比較されてよい。次に、統計モデルのパラメータの１つまたは複数の値が、統計モデルの出力と統計モデルに提供される特定のデータのラベルとの差に基づいて更新されてよい（例えば、確率的勾配降下または任意の他の適切な訓練アルゴリズムを使用して）。該差は、統計モデルの出力が、現在のパラメータ値のセットで演算された場合、提供されるラベルをどれだけ正確に再現するかの尺度を提供する。
【０１００】
いくつかの実施形態では、第２訓練段階中に使用される損失（または費用）関数は、マルチモーダル統計モデルの予測子の構成要素が訓練されるタスクの種類に応じて選択されてよい。例えば、タスクがマルチラベル排他分類を含む場合、クロスエントロピー損失を使用してよい。別の例として、タスクが連続分布の予測を含む場合、損失関数でカルバック・ライブラー・ダイバージェンスを使用してよい。
【０１０１】
いくつかの実施形態では、第２段階の実行中は、第１訓練段階中に推定されたパラメータ値は固定されてよい。例えば、共同モダリティ表現およびモダリティ埋め込みのパラメータ値は第１訓練段階中に推定された後、第２訓練段階中は固定されたままでよいが、予測子およびタスク埋め込みのパラメータ値は第２訓練段階中に推定される。
【０１０２】
動作３０８が完了し、それにより動作３０５が完了した後、訓練されたマルチモーダル統計モデルは、その後の使用のために、動作３１０で記憶されてよい。訓練されたマルチモーダル統計モデルの記憶は、該マルチモーダル統計モデルの１つまたは複数の構成要素のパラメータ値の記憶を含む。いくつかの実施形態では、訓練されたマルチモーダル統計モデルの記憶は、以下の構成要素、すなわち共同モダリティ表現、第１モダリティ埋め込み、第２モダリティ埋め込み、予測子、第１タスク埋め込み、および第２タスク埋め込みのうちの１つまたは複数について、動作３０５中に推定されたパラメータ値を記憶することを含む。本明細書に記載の技術の態様はこの点では限定されないので、パラメータ値は、任意の適切な形式で記憶してよい。パラメータ値は、１つまたは複数のコンピュータ可読記憶媒体（例えば、１つまたは複数のメモリ）を使用して記憶してよい。
【０１０３】
処理３００は例示的なものであり、変形例があることが理解されるべきである。例えば、処理３００は、２つのモダリティを有する入力を受信するように構成されたマルチモーダル統計モデルを訓練することを参照して説明されるが、処理３００は、２つを超えるモダリティ（例えば、３、４、５、６、７、８、９、１０等のモダリティ）から入力を受信するように構成されたマルチモーダル統計モデルを訓練するために変更されてよい。いくつかのそのような実施形態では、複数のモダリティのそれぞれに対する共同モダリティ表現およびモダリティ埋め込みは、自己教師あり学習の段階（動作３０６）中に学習される。複数のモダリティのそれぞれに対する予測子およびタスク埋め込みは、教師あり学習の段階（動作３０８）中に学習される。
【０１０４】
上記のように、いくつかの実施形態では、各モダリティのエンコーダおよびデコーダは、処理３００の実行前に学習されてよい。しかしながら、いくつかの実施形態では、１つまたは複数のエンコーダおよび／またはデコーダは、それらのパラメータ値が初めて推定されるように、および／または処理３００中に更新されるように、処理３００中に学習されてよい。
【０１０５】
マルチモーダル統計モデルを訓練する手法の追加的な態様は、自己教師ありおよび教師あり訓練の段階に関する以下の説明から理解され得る。
＜自己教師あり訓練段階＞
ｘｉ∈Ｘｉをモダリティｉの入力データポイントとし、ｔｉ∈Ｔｉを次のようなｘｉの圧縮表現とする。
【０１０６】
【数１】
2021524099.tif 000003
【０１０７】
ここで、ψｉは、ｉ番目のモダリティのエンコーダを表すエンコード関数である。共同モダリティ表現（本明細書では知識ベースとも記載される）をｎｘｍ行列Ｍとする。ここで、ｎは共同モダリティ表現のエントリ数を示し、ｍは各エントリの次元を示す。共同モダリティ表現は、モダリティ埋め込みＥｉ（自己教師あり訓練段階中に学習されるｍｘｄｉ行列）を使用して、ｉ番目のモダリティの表現空間に線形投影されてよい。
【０１０８】
【数２】
2021524099.tif 000004
【０１０９】
次に、表現ｔｉと投影された共同モダリティ表現
【０１１０】
【数３】
2021524099.tif 000005
【０１１１】
の行との間のコサイン類似度により、共同モダリティ表現の各エントリ（例えば、メモリ行列の各行）の類似度スコアが得られる。これを、
【０１１２】
【数４】
2021524099.tif 000006
【０１１３】
に近似するソフトマックス関数を使用して以下に従い確率に変換してよい。
【０１１４】
【数５】
2021524099.tif 000007
【０１１５】
ここで、は温度変数であり、分布のシャープネス／エントロピーを示す。投影された共同モダリティ表現行列のエントリ
【０１１６】
【数６】
2021524099.tif 000008
【０１１７】
の加重平均が、ｉ番目のモダリティデコーダΦｉ：
【０１１８】
【数７】
2021524099.tif 000009
【０１１９】
への入力として提供される。
ネットワークパラメータの少なくとも一部（例えば、エンコーダ、デコーダ、共同モダリティ表現、およびモダリティ埋め込みのパラメータ値の一部または全て）に関する再構成損失の勾配が逆伝播され、パラメータは以下の確率的勾配降下アルゴリズムを介して更新される。
【０１２０】
【数８】
2021524099.tif 000010
【０１２１】
ここで、
【０１２２】
【数９】
2021524099.tif 000011
【０１２３】
は時間ｔでのｊ番目のパラメータであり、λとμはそれぞれ学習率と運動量のパラメータであり、
【０１２４】
【数１０】
2021524099.tif 000012
【０１２５】
は損失関数である。損失関数は、クロスエントロピー、カルバック・ライブラー・ダイバージェンス、Ｌ１距離、Ｌ２距離（ユークリッド距離）、および／または任意の他の適切な損失関数であってよい。本明細書に記載の技術の態様はこの点では限定されない。
【０１２６】
＜教師あり訓練段階＞
タスクをｙ∈Ｙで表されるラベルまたは値を予測するものとして定義する。データペア（Ｘｉ,Ｙｊ）が存在する場合、自己教師あり学習段階で訓練された共同モダリティ表現およびｘｉ∈ＸｉのエンコーダΨｉ（ｘｉ）を使用して、上記の式に示すように、表現ｔｉ∈Ｔｉを生成する。次に、特徴表現
【０１２７】
【数１１】
2021524099.tif 000013
【０１２８】
とタスク埋め込みＵｊの間でアダマール積を以下に従い実行する。
【０１２９】
【数１２】
2021524099.tif 000014
【０１３０】
最後に、フォワードパスについて、予測された表現をタスク予測子に提供する。
【０１３１】
【数１３】
2021524099.tif 000015
【０１３２】
タスクの種類に適した損失関数が選択される。例えば、タスクがマルチラベル排他分類である場合、クロスエントロピー損失を使用してよい。別の例として、タスクが連続分布の予測である場合、カルバック・ライブラー・ダイバージェンス等の情報理論的尺度を損失関数として使用してよい。損失関数の選択にかかわらず、タスク予測子Πｊおよびタスク埋め込みＵｊのパラメータに関する損失の勾配は、上記の確率的勾配降下法の式に示すように、算出され、逆伝播されてよい。
【０１３３】
＜予測のためのマルチモーダル統計モデルの使用＞
図４は、本明細書に記載の技術のいくつかの実施形態による、予測タスクのためのマルチモーダル統計モデルを使用する例示的な処理４００のフローチャートである。処理４００は、任意の適切なコンピューティング装置によって実行されてよい。例えば、処理４００は、１つまたは複数のグラフィックス処理ユニット（ＧＰＵ）、クラウドコンピューティングサービスによって提供される１つまたは複数のコンピューティング装置、および／または任意の他の適切なコンピューティング装置によって実行されてよい。本明細書に記載の技術の態様はこの点では限定されない。
【０１３４】
この例では、処理４００の開始前に、少なくとも２つの異なるモダリティの入力を受信するように構成されたマルチモーダル統計モデルが訓練されており、そのパラメータが記憶されているものとする。例えば、処理４００の開始前に、マルチモーダル統計モデルは、本明細書に記載の２段階訓練処理３００を使用して訓練されていてもよい。
【０１３５】
処理４００は動作４０２で開始し、事前に訓練されたマルチモーダル統計モデルを指定する情報がアクセスされる。マルチモーダル統計モデルを指定する情報は、任意の適切な形式であってよく、ローカルストレージから、リモートストレージからネットワークを介して、または任意の他の適切なソースからアクセスされてよい。本明細書に記載の技術の態様はこの点では限定されない。情報は、マルチモーダル統計モデルのパラメータの値を含んでよい。マルチモーダル統計モデルは、パラメータを有する構成要素を含んでよく、マルチモーダル統計モデルを指定する情報は、これらの１つまたは複数の構成要素のそれぞれのパラメータのパラメータ値を含んでよい。例えば、マルチモーダル統計モデルは、共同モダリティ表現、予測子、ならびに複数のモダリティのそれぞれについて、個別のエンコーダ、個別のモダリティ埋め込み、および個別のタスク埋め込みを含んでよい。動作４０２でアクセスされる情報は、これらの構成要素の値を含んでよい。
【０１３６】
図４を参照に記載される実施形態では、（パラメータがアクセスされる）マルチモーダル統計モデルは、２つのモダリティ（第１モダリティおよび第２モダリティ）からの入力を受信するように構成されているものとする。しかしながら、他の実施形態では、マルチモーダル統計モデルは、任意の適切な数のモダリティ（例えば、３、４、５、６、７、８、９、１０、１１、１２など）から入力を受信するように構成され得ることが理解されるべきである。本明細書に記載の技術の態様はこの点では限定されない。
【０１３７】
次に、処理４００は動作４０４に進み、第１データモダリティ（例えば、タンパク質配列データ）について入力データが取得される。いくつかの実施形態では、入力データは、第１モダリティのエンコーダに提供するのに適した表現になるよう変換されるか、または別な方法で前処理されてよい。例えば、カテゴリカルデータは、第１モダリティのエンコーダに提供される前にワンホットエンコードされてよい。別の例として、画像データは、第１モダリティのエンコーダに提供される前にサイズ変更されてよい。しかしながら、他の実施形態では、変換および／または前処理は必要とされないか、または実行されなくてよい。
【０１３８】
次に、処理４００は動作４０６に進み、出力として第１特徴ベクトルを生成する第１エンコーダへの入力として入力データが提供される。例えば、図２Ｂに示されるように、モダリティ「Ａ」の入力２０２は、モダリティ「Ａ」のエンコーダ２０４への入力として提供され、エンコーダ２０４は、第１特徴ベクトル（例えば、出力としての特徴表現２０６）を生成する。
【０１３９】
次に、処理４００は、動作４０８に進み、動作４０６で（第１エンコーダの出力で）生成された第１特徴ベクトルは、共同モダリティ表現および第１モダリティ埋め込みと共に使用されて、第２特徴ベクトルを生成する。例えば、図２Ｂに示されるように、第１特徴ベクトル（例えば、特徴表現２０６）は、モダリティ埋め込み２３２の１つおよび知識ベース２３０と共に使用され、第２特徴ベクトル（例えば、特徴表現２０８）を特定（例えば、生成または選択）してよい。
【０１４０】
第２特徴ベクトルは、本明細書に記載されたいずれかの方法で特定されてよい。例えば、いくつかの実施形態では、第２特徴ベクトルを特定することは、以下を含んでよい。（１）共同モダリティ表現（例えば、知識ベース２３０）を第１モダリティの空間に投影して、複数の投影されたベクトルを取得すること、（２）複数の投影されたベクトルのそれぞれと第１特徴ベクトル（例えば、特徴表現２０６）との間の距離（例えば、余弦距離および／または任意の他の適切な種類の距離測定値）を算出し、これらの距離を使用して（例えば、ソフトマックス加重を使用することにより）投影されたベクトルの重みを算出すること、および（３）算出された重みによって重み付けされた投影されたベクトルの加重和として第２特徴ベクトルを生成すること。例えば、共同モダリティ表現は、Ｎ個のｍ次元ベクトル（Ｎｘｍ行列として表現および／または記憶され得る）を含んでよく、第１モダリティにｍｘｄとして表現され得る第１モダリティ投影を使用して共同モダリティ表現を投影して、Ｎ個のｄ次元ベクトル（Ｎｘｄ行列として表現され得る）を生成してよい。第１エンコーダによる第１特徴ベクトル出力（例えば、図２Ａに示される特徴表現２０６）とＮ個のｄ次元ベクトルのそれぞれとの間の距離が算出および使用され、Ｎ個のｄ次元ベクトルのそれぞれの重みが取得されてよい。次に、第２特徴ベクトル（例えば、特徴表現２０８）は、算出された重みによって重み付けされたＮ個のｄ次元ベクトルの加重和として算出されてよい。他の実施形態では、第２特徴ベクトルは、投影された共同モダリティ表現の複数のｄ次元ベクトルの加重平均ではなく、Ｎ個のｄ次元の投影されたベクトルの中から、第１エンコーダによって生成された第１特徴ベクトルに最も近いベクトルを、適切に選択された距離測定値（例えば、余弦距離）に従って選択することにより特定されてよい。
【０１４１】
次に、処理４００は動作４１０に進み、第２特徴ベクトルを使用して、予測子および第１モダリティのタスク埋め込み（両方ともマルチモーダル統計モデルの構成要素）を使用して予測タスクの予測を生成する。これは、任意の適切な方法で行われてよい。例えば、第１モダリティのタスク埋め込みは、第２特徴ベクトルの次元と同じ次元を有してよい。この例では、タスクの埋め込みの重みを使用して、第２特徴ベクトルの値を点ごとに乗算して（例えば、アダマール積のように）、予測子への入力を生成してよい。次に、予測子は、この入力に基づいてタスクの予測を出力してよい。例えば、図２Ｂに示されるように、第２特徴ベクトル（例えば、表現２０８）は、タスク埋め込み２５４の第１タスク埋め込みによって点ごとに変更（例えば、乗算）されて予測子２５２への入力として提供され、予測タスク２５６への出力を生成してよい。
【０１４２】
処理４００の上記の記載から理解されるように、マルチモーダル統計モデルを使用して、単一モダリティからの入力のみを使用してタスクの予測を生成してよい。これは、入力が複数の異なるモダリティから異なる時間に利用可能である場合、入力が非同期的に利用可能になった際に、マルチモーダル統計モデルへの入力として提供されてよいことを意味する。
【０１４３】
いくつかの実施形態では、マルチモーダル統計モデルは、同期的に演算されてよく、２つのモダリティからのペアにされた入力または３つ以上のモダリティからのリンクされた入力を処理するために使用されてよい。例えば、第１モダリティの第１入力（例えば、入力２０２）は、第１モダリティのエンコーダ（例えば、エンコーダ２０４）への入力として提供され、第１特徴ベクトル（例えば、特徴表現２０６）を生成してよい。第１特徴ベクトルは、共同モダリティ表現（例えば、知識ベース２３０）および第１モダリティ表現（例えば、モダリティ表現２３２）と共に使用され、第２特徴ベクトル（例えば、特徴表現２０８）を特定（例えば、生成または選択）してよい。この例では、第１モダリティの第１入力（例えば、入力２０２）は、第２モダリティの第１入力（例えば、入力２１２）とペアにされてよい（例えば、マルチモーダル統計モデルへの入力として同時に提供される）。第２モダリティの第１入力（例えば、入力２１２）は、第２モダリティのエンコーダ（例えば、エンコーダ２１４）への入力として提供され、第３特徴ベクトル（例えば、特徴表現２１６）を特定（例えば、生成または選択）してよい。第１特徴ベクトルは、共同モダリティ表現（例えば、知識ベース２３０）および第２モダリティ表現（例えば、モダリティ表現２３２）と共に使用され、第４特徴ベクトル（例えば、特徴表現２１８）を生成してよい。次に、第２特徴ベクトルおよび第４特徴ベクトルは、第１モダリティおよび第２モダリティのタスク埋め込みによって変更されてよく、その結果は組み合わされ（例えば、座標ごとの加算２６０によって）、予測子（例えば、予測子２５２）への入力として提供され、タスク２５６の予測を提供してよい。
【０１４４】
＜実施例：タンパク質構造予測＞
ここでは、タンパク質構造を予測する例示的な問題について、本明細書に記載される異なるデータモダリティの深層学習統計モデルを統合する手法を説明する。分子生物学において予測モデルを構築する従来の手法はしばしば不十分であり、結果として得られるモデルは、望ましい性能特性（例えば、精度）を欠く。
【０１４５】
利用可能な各種の生物学データの予測モデリングに対応する共通のフレームワークを構築することは、以下のような数々の理由により非常に困難である。
ソースの不均一性：調査され得る潜在的に数千の異なる分子実体が存在し、データは様々な形式またはモダリティで取得される。
【０１４６】
高次元性：観測データは、入力空間の全ての可能な構成を疎に抽出する。したがって、ほとんどの場合、利用可能なデータは疎かつ不十分である。
実験的ノイズ：生物学的データ収集はしばしばノイズが多く、実験的バイアスや特異性に悩まされる。
【０１４７】
一致しないモダリティおよび不完全性：実験や観察は一度に２、３のモダリティに限定されているため、データは非常に不完全になる。
このような困難なモデリングコンテキストにおいて高品質な予測モデルを構築する従来の手法は、ドメインレベルの深い知見と知識を表現する強力な事前分布に依存する。しかしながら、そのような事前分布を指定する能力は、利用可能なドメインレベルの知識の量によって制限される。たとえば、広範なドメイン知識がない場合、ＢＬＡＳＴクエリを実行して（最も近い既知の配列を見つけて）、上位ヒットから機能割り当てを転送することで、新しく発見された種のタンパク質配列に機能的な注釈を付けることが可能である。ただし、この手法は、特に目的のタンパク質が関与する生物学的プロセスを識別する場合、非常に不正確で誤解を招くと報告されている。より優れて機能するモデルには、タンパク質、アミノ酸モチーフ、生物学的プロセスへの関与等に関する長年の蓄積されたドメイン知識を要する。
【０１４８】
本明細書に記載される手法は、完全に一致するデータポイント（各データポイントは、複数の異なるモダリティからそれぞれ寄与を含む）を含むための訓練データを必要とすることなく、複数のモダリティに対応することで上記の課題に対処する。本明細書に記載される共同モダリティ表現は、クロスモダリティ特徴抽出のためのデータ駆動型の事前分布を提供する。これにより、個々のモデルが正規化され、追加の圧縮が軽減される。追加圧縮の各ビットは、２倍のラベル付けされたデータを有することに等しい。
【０１４９】
本明細書に記載の技術は、タンパク質機能予測タスクについて以下に説明される。初めに、５５４４５２個のタンパク質を含むＳｗｉｓｓ−Ｐｒｏｔデータベースをダウンロードし、以下の６つの異なるデータモダリティを選択した。（１）タンパク質配列、（２）ｐｆａｍドメイン、（３）生物学的プロセスオントロジー、（４）分子機能オントロジー、（５）細胞構成要素オントロジー、（６）種の分類学的ファミリー。機能的な注釈（オントロジー）は非常に不完全で、ノイズが多い可能性がある。結果の評価を容易にするため、ＣＡＦＡ２（ｓｅｃｏｎｄ  Ｃｒｉｔｉｃａｌ  Ａｓｓｅｓｓｍｅｎｔ  ｏｆ  Ｆｕｎｃｔｉｏｎａｌ  Ａｎｎｏｔａｔｉｏｎ）コンソーシアムのテストセットとして定義されているタンパク質を除外した。
【０１５０】
＜実装の詳細＞
機能オントロジー予測がタスクだが、これらのオントロジーを個別のモダリティとして扱った。本明細書に記載される手法を機能オントロジー予測タスクに適用するには、エンコーダ、デコーダ、共同モダリティ表現、モダリティ埋め込み、およびタスク埋め込みの態様を指定する必要がある。
【０１５１】
＜エンコーダ＞
この例示的な例では、タンパク質配列入力用のエンコーダは、４つの畳み込みブロックを含み、それぞれがサイズ２０の１０個のフィルタを備えた１Ｄ畳み込みを含み、その後に層の正規化、ストライド３を伴うサイズ３の１次元最大プーリング、およびＲｅＬＵ（ｒｅｃｔｉｆｉｅｄ  ｌｉｎｅａｒ  ｕｎｉｔ）の活性化が続く。４つの畳み込みブロックの後に、エンコーダは、サイズ１１の１０個のカーネルとサイズ１への適応１ｄ最大プーリングを備えた別の畳み込み層を含む。その結果、タンパク質配列エンコーダは、１０×１０２４のワンホットエンコードされたタンパク質配列入力を受け取り（配列が１０２４より短い場合、入力はすべてゼロで埋められる）、１０×１の潜在表現を返す。
【０１５２】
カテゴリカルデータソースのエンコーダとして埋め込み辞書を使用した。埋め込み辞書のインデックス付けは、ワンホットエンコードされた入力データをバイアス項なしで線形層に転送することに等しいが、入力が非常に疎であるため、計算効率がはるかに高い。最初のエントリは不明なカテゴリまたはパディングインデックス用に常に確保されているため、埋め込み辞書のサイズは各モダリティのカテゴリ数より１つ大きい。実験で使用した実際のサイズは、生物学的プロセス、分子機能、細胞成分、分類学的ファミリー、およびｐｆａｍドメインに対して、それぞれ２４９３７、９５７２、３１８５、１７７９、および１１６７９である。埋め込みの次元は１０になるように選択される。
【０１５３】
＜デコーダ＞
タンパク質配列のデコーダは、デコンボリューションブロックの６つの連続層を含む。各ブロックには、フィルタの数が１２８、フィルタサイズが６、ストライドが３、両端が１で埋められたデコンボリューション演算が含まれ、その後に層の正規化および勾配０．１の漏洩ＲｅＬＵの活性化が続く。
【０１５４】
カテゴリカルモダリティのデコーダは、サイズ１０×Ｎの全結合型線形層になるように選択され、共同モダリティ表現（知識ベース等）から返された表現を取得し、全てのクラスのシグモイド活性化スコアを返す（Ｎは各モダリティのクラスの数）。
【０１５５】
＜共同モダリティ表現およびモダリティ投影＞
共同モダリティ表現は、６４次元の５１２個のベクトルを含む。この例では、これらのベクトルは５１２×６４の行列に記憶されてよい。行は、更新毎にＬ２で正規化される。この例においては６つのモダリティがあるため、６つのモダリティ埋め込みがあり、それぞれが６４×１０の行列を使用して表される。各モダリティ埋め込みは、共同モダリティ表現をそれぞれのモダリティの表現空間に投影する。
【０１５６】
＜損失関数＞
配列の再構築には、配列内のすべてのアミノ酸残基について、２０の可能なアミノ酸にわたる確率分布に対して算出されたクロスエントロピー損失を使用した。パディングされた領域を除外した。３つのオントロジーモダリティおよびｐｆａｍドメインモダリティについては、負のサンプリング手順とマージン値１で最大マージン損失を使用した。分類学的ファミリーモダリティについては、クロスエントロピーを使用した。
【０１５７】
＜訓練＞
学習率が１０−３、バッチサイズが２５の「Ａｄａｍ」と呼ばれるＳＧＤオプティマイザーのバリアントを使用した。以下の２つの異なるシナリオをテストした。（１）ペアにされたデータを使用した同期的訓練、（２）ペアにされていないデータを使用した非同期的訓練。
【０１５８】
ペアにされたデータを使用して訓練する場合、他の全てのパラメータと同様に、全てのモダリティにわたって、全ての再構成損失から生じる勾配の合計に関して、共同モダリティ表現の重みが更新される。
【０１５９】
非同期的に訓練する場合、各モダリティのパラメータは、共同モダリティ表現を照会することによって１つずつ訓練される。共同モダリティ表現の重みは、モダリティが独自の再構築目的で訓練される毎に更新される。全てのモダリティに３回行い、毎回完全に収束するまで訓練した。モダリティを訓練する毎に、共同モダリティ表現のパラメータの学習率を下げた。
【０１６０】
＜結果＞
図５に示されるように、初期の実験は、タンパク質の機能的な注釈をする上記のマルチモーダル統計モデルが、広範な特徴量エンジニアリングを必要とする他のモデルの競合する従来の手法よりも大幅に優れた動作をすることを示す。図５に示されるように、上記のマルチモーダル統計モデルの平均ＡＵＲＯＣ（ａｒｅａ  ｕｎｄｅｒ  ｒｅｃｅｉｖｅｒ  ｏｐｅｒａｔｉｎｇ  ｃｈａｒａｃｔｅｒｉｓｔｉｃ  ｃｕｒｖｅ）は、競合する従来手法のものよりも高い。図５に示される競合する手法の性能は、２０１６年９月７日にＧｅｎｏｍｅ  Ｂｉｏｌｏｇｙ，  ｖｏｌｕｍｅ  １７，  ｐａｇｅ  １８４に掲載された「Ａｎ  ｅｘｐａｎｄｅｄ  ｅｖａｌｕａｔｉｏｎ  ｏｆ  ｐｒｏｔｅｉｎ  ｆｕｎｃｔｉｏｎ  ｐｒｅｄｉｃｔｉｏｎ  ｍｅｔｈｏｄｓ  ｓｈｏｗｓ  ａｎ  ｉｍｐｒｏｖｅｍｅｎｔ  ｉｎ  ａｃｃｕｒａｃｙ」というタイトルの記事でさらに議論され、この記事は参照によりその全体が本明細書に組み込まれる。
【０１６１】
＜理論的基盤＞
本明細書に記載されているマルチモーダル統計モデルのさらなる態様は、以下の議論から理解され得る。
【０１６２】
＜関連情報の抽出＞
Ｘが固定した確率測度ρ（ｘ）の信号（メッセージ）空間を示し、Τがその量子化されたコードブックまたは圧縮表現を示すとする。
【０１６３】
各ｘ∈Ｘについて、コードブック内の代表またはコードワードへの確率的マッピングを求め、ｔ∈Ｔは条件付き確率密度関数（ｐｄｆ）ｐ（ｔ│ｘ）によって特徴付けられる。このマッピングは、各ブロックが確率ｐ（ｔ│ｘ）でコードブック要素ｔ∈Ｔに関連付けられているＸのソフト分割を誘導する。コードワードｔ∈Ｔの全確率は、次の式で与えられる。
【０１６４】
【数１４】
2021524099.tif 000016
【０１６５】
同じコードワードにマップされるＸの要素の平均量は２Ｈ（Ｘ│Ｔ）であり、ここで、
【０１６６】
【数１５】
2021524099.tif 000017
【０１６７】
である。
量子化の品質は、混乱なくコードブックの要素を指定するために必要な「レート」または「メッセージあたりの平均ビット数」によって決定される。Ｘの要素ごとのこの数は、相互情報量によって以下から制限される。
【０１６８】
【数１６】
2021524099.tif 000018
【０１６９】
この式は、Ｘの量の平均分割の量に対する比によって与えられる、Ｘの分割の平均濃度と考えてよい。すなわち、
【０１７０】
【数１７】
2021524099.tif 000019
【０１７１】
である。
＜情報のボトルネック＞
究極的には、任意の予測タスクについて、入力空間Ｘから予測（ラベル）空間Ｙに関連する情報のみを保持する表現空間Ｔへのマッピングｐ（ｔ│ｘ）を学習したい。言い換えれば、マッピングｐ（ｔ│ｘ）に関して次の関数を最小化することによって捕捉可能なＴとＹの間の相互情報量を最大化しながら、ＸとＴの間の相互情報量を最小化したい。
【０１７２】
【数１８】
2021524099.tif 000020
【０１７３】
ここで、βはトレードオフパラメータである。
＜入力圧縮限界＞
最高の予測性能のため、データ処理の不均衡により上限Ｉ（Ｔ；Ｙ）≦Ｉ（Ｘ；Ｙ）に制限されるＩ（Ｔ；Ｙ）を最大化することを目的とする。ＸおよびＹに無制限のデータ量がある場合、同時分布ｐ（ｘ,ｙ）に任意に近似できるため、Ｘのコンパクトな表現を必要としない。しかしながら、データ量はしばしば限られているため、ｐ（ｘ│ｙ）を十分には推定できない。したがって、入力を圧縮してモデルを正則化する必要がある。Ｉ（Ｘ；Ｔ）を最小化することで複雑さを減少させる。
【０１７４】
ここで、
【０１７５】
【数１９】
2021524099.tif 000021
【０１７６】
は、限られたサンプルからの相互情報量の経験的推定を示す。一般化の限界は次のように示される。
【０１７７】
【数２０】
2021524099.tif 000022
【０１７８】
および
【０１７９】
【数２１】
2021524099.tif 000023
【０１８０】
特に、上限は表現Ｋ＝｜Ｔ｜２Ｉ（Ｔ；Ｘ）の濃度に依存する。言い換えると、追加圧縮の追加的１ビットは、同じ一般化ギャップのデータのサイズを２倍にすることに等しい。
【０１８１】
＜マルチモーダル予測の圧縮＞
モダリティＸ１およびＸ２が、Ｘ２およびＸ１をそれぞれ予測することになるＴ１およびＴ２表現に圧縮される、単純なクロスモダリティ予測設定を考えてみる。図６Ａに示すように、観測された変数Ｘ１およびＸ２は、Ｘ１およびＸ２の圧縮表現である潜在確率変数Ｔ１およびＴ２によって表されている。第１モダリティおよび第２モダリティの潜在確率変数Ｔ１およびＴ２は、それぞれ、第１モダリティおよび第２モダリティのエンコーダの出力として定義されてよい。図６Ｂに示すように、潜在確率変数Ｔ１およびＴ２を使用して、変数Ｘ１およびＸ２を予測してよい。第１モダリティおよび第２モダリティのデコーダをそれぞれ使用して、潜在表現Ｔ１およびＴ２から変数Ｘ１およびＸ２を予測してよい。
【０１８２】
この場合、最小化するラグランジアンは次の式で与えられる。
【０１８３】
【数２２】
2021524099.tif 000024
【０１８４】
したがって、圧縮している間、圧縮された表現Ｔ１とＴ２が互いに可能な限り情報を提供するようにしたい。この式は、Ｔ１およびＴ２の間の相互情報量（相関）を最大化しながら、Ｘ１、Ｔ１およびＸ２、Ｔ２の間の相互情報量を最小化することにより、Ｘ１およびＸ２を最大限に圧縮する必要があることを示す。本明細書に記載されるフレームワークでは、Ｔ１およびＴ２の間の相互情報量の最大化は、エンコードされた各入力を、コードブック内のコードワード、つまり、共同モダリティ表現（例えば、知識ベース２３０）の１つまたは加重平均に強制的に一致させることで実現してよい。一致したエントリは、その後、自己教師あり訓練段階中にデコーダへの入力として提供される。
【０１８５】
直感的に、クロスモダリティ駆動型の圧縮表現を学習することにより、多くのモダリティにわたってラベル付けされた（またはペアにされた）データを活用し、一般化ギャップを減らす。
【０１８６】
本明細書で提供される本開示の実施形態のいずれかに関連して使用され得るコンピュータシステム７００の例示的な実装が、図７に示されている。コンピュータシステム７００は、１つまたは複数のコンピュータハードウェアプロセッサ７００と、非一時的なコンピュータ可読記憶媒体（例えば、メモリ７２０および１つまたは複数の不揮発性記憶装置７３０）を含む１つまたは複数の製品とを含んでよい。プロセッサ７１０は、任意の適切な方法で、メモリ７２０および不揮発性記憶装置７３０へのデータの書き込みおよびデータの読み取りを制御してよい。本明細書に記載の機能のいずれかを実行するために、プロセッサ７１０は、１つまたは複数の非一時的なコンピュータ可読記憶媒体（例えば、メモリ７２０）に記憶された１つまたは複数のプロセッサ実行可能な命令を実行してよく、非一時的なコンピュータ可読記憶媒体は、プロセッサ７１０によって実行するためのプロセッサ実行可能な命令を記憶する非一時的なコンピュータ可読記憶媒体として機能してよい。
【０１８７】
「プログラム」または「ソフトウェア」という用語は、本明細書では一般的な意味で使用され、コンピュータまたは他の（物理的または仮想的）プロセッサをプログラムして上記の実施形態の様々な態様を実装するために使用できる、任意の種類のコンピュータコードまたはプロセッサ実行可能な命令のセットを指す。さらに、一態様によれば、実行された時に本明細書で提供される開示の方法を実行する１つまたは複数のコンピュータプログラムは、単一のコンピュータまたはプロセッサ上に存在する必要はなく、異なるコンピュータまたはプロセッサ間にモジュール方式で分散され、本明細書で提供される開示の様々な態様を実装してよい。
【０１８８】
プロセッサ実行可能な命令は、プログラムモジュールなど、１つまたは複数のコンピュータまたは他の装置によって実行される複数の形式であってよい。一般的に、プログラムモジュールには、特定のタスクを実行したり、特定の抽象データ型を実装したりするルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。通常、プログラムモジュールの機能は組み合わされるか分散されてよい。
【０１８９】
また、データ構造は、任意の適切な形式で、１つまたは複数の非一時的なコンピュータ可読記憶媒体に記憶され得る。説明を簡単にするために、データ構造は、データ構造内の場所によって関連付けられたフィールドを持つように示されている場合がある。そのような関係は、非一時的なコンピュータ可読媒体において、フィールド間の関係を伝達する場所を有するフィールドにストレージを割り当てることにより同様に達成されてよい。しかしながら、ポインタ、タグ、またはデータ要素間の関係を確立するその他のメカニズムの使用を含む、任意の適切なメカニズムが使用されて、データ構造のフィールド内の情報間の関係を確立してよい。
【０１９０】
様々な発明の概念が１つまたは複数の処理として具体化されてよく、その例が提供されている。各処理の一部として実行される動作は、任意の適切な方法で命令されてよい。したがって、例示的な実施形態においては連続的な動作として示されているが、記載とは異なる順序で動作が実行される実施形態が構築されてよく、いくつかの動作を同時に実行することを含み得る。
【０１９１】
本明細書および特許請求の範囲で使用されているように、１つまたは複数の要素のリストに関連する「１つ以上の」という文言は、要素のリスト中の任意の１つまたは複数の要素から選択される１つ以上の要素を意味すると理解されるべきであるが、要素のリスト内に具体的に挙げられた１つ１つの要素の１つ以上を必ずしも含む必要はなく、要素のリスト内の要素の任意の組み合わせを除外するものでもない。この定義により、「１つ以上の」という文言が指す要素のリスト内で具体的に特定される要素以外の要素が、具体的に特定される要素に関連するまたは関連しないにかかわらず、選択的に存在してもよい。したがって、例えば、「ＡおよびＢの少なくとも一方」（または同様に、「ＡまたはＢの少なくとも一方」、または同様に「Ａおよび／またはＢの少なくとも一方」）は、一実施形態では１つ以上、選択的には２つ以上の、Ｂが存在しないＡ（および選択的にはＢ以外の要素を含む）を含むこと、別の実施形態では１つ以上、選択的には２つ以上の、Ａが存在しないＢ（および選択的にはＡ以外の要素を含む）を含むこと、さらに別の実施形態では１つ以上、選択的には２つ以上の、Ａおよび１つ以上の、選択的には２つ以上のＢ（さらに選択的には他の要素を含む）を含むこと、等を指し得る。
【０１９２】
本明細書および特許請求の範囲で使用される「および／または」という文言は、そのように結合された要素、すなわち、ある場合には結合的に存在し、他の場合には分離的に存在する要素の「いずれか一方または両方」を意味すると理解されるべきである。「および／または」で挙げられた複数の要素も同様に、すなわち、そのように結合された要素の「１つまたは複数の」と解釈されるべきである。「および／または」という文言で具体的に特定される要素以外の他の要素が、具体的に特定される要素に関連するまたは関連しないにかかわらず、選択的に存在してよい。したがって、非限定的な例として、「Ａおよび／またはＢ」への言及は、「含む」などの制限のない文言と併せて使用される場合、一実施形態ではＡのみ（選択的にはＢ以外の要素を含む）、別の実施形態ではＢのみ（選択的にはＡ以外の要素を含む）、さらに別の実施形態では、ＡおよびＢの両方（選択的には他の要素を含む）、等を指し得る。
【０１９３】
請求項の要素を変更するための特許請求の範囲での「第１」、「第２」、「第３」などの序数用語の使用は、それ自体では、ある請求項の要素の別の請求項の要素に対する優先順位、先行、または順序、または方法の動作が実行される時間的な順序を示唆するものではない。このような用語は、ある名前を持つ１つの請求項の要素を（序数用語の使用を除けば）同じ名前を持つ別の要素から区別するためのラベルとしてのみ使用される。本明細書で使用される表現および用語は、説明を目的としたものであり、限定的と見なされるべきではない。「含む」、「からなる」、「有する」、「含有する」、「伴う」、およびそれらの変形の使用は、その後に挙げられる項目および追加の項目を包含することを意味する。
【０１９４】
本明細書に記載された技術の複数の実施形態は詳細に説明されており、様々な変更例および改善が当業者に対して容易に生じるであろう。そのような変更例および改善は、本開示の精神および範囲内にあることが意図される。したがって、前述の説明は例であるに過ぎず、限定的であることを意図するものではない。技術は、以下の特許請求の範囲およびその同等物の定義に従ってのみ制限される。
【図１】
2021524099.tif 000025
【図２Ａ】
2021524099.tif 000026
【図２Ｂ】
2021524099.tif 000027
【図３】
2021524099.tif 000028
【図４】
2021524099.tif 000029
【図５】
2021524099.tif 000030
【図６Ａ】
2021524099.tif 000031
【図６Ｂ】
2021524099.tif 000032
【図７】
2021524099.tif 000033
【国際調査報告】
2021524099.tif 000034
2021524099.tif 000035
2021524099.tif 000036