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

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

▶ ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッドの特許一覧

特開2022-141587事前トレーニングモデルの取得方法、および装置
<>
  • 特開-事前トレーニングモデルの取得方法、および装置 図1
  • 特開-事前トレーニングモデルの取得方法、および装置 図2
  • 特開-事前トレーニングモデルの取得方法、および装置 図3
  • 特開-事前トレーニングモデルの取得方法、および装置 図4
  • 特開-事前トレーニングモデルの取得方法、および装置 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022141587
(43)【公開日】2022-09-29
(54)【発明の名称】事前トレーニングモデルの取得方法、および装置
(51)【国際特許分類】
   G06N 20/00 20190101AFI20220921BHJP
   G10L 15/06 20130101ALI20220921BHJP
   G10L 15/16 20060101ALI20220921BHJP
   G06N 3/02 20060101ALI20220921BHJP
   G06F 40/58 20200101ALI20220921BHJP
   G06F 16/45 20190101ALI20220921BHJP
【FI】
G06N20/00
G10L15/06 300Z
G10L15/16
G06N3/02
G06F40/58
G06F16/45
【審査請求】有
【請求項の数】19
【出願形態】OL
(21)【出願番号】P 2022020375
(22)【出願日】2022-02-14
(31)【優先権主張番号】202110274515.0
(32)【優先日】2021-03-15
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ニウ、グオチェン
(72)【発明者】
【氏名】リ、ウェイ
(72)【発明者】
【氏名】ガオ、キャン
(72)【発明者】
【氏名】シャオ、シンヤン
(72)【発明者】
【氏名】ウ、フア
【テーマコード(参考)】
5B091
5B175
【Fターム(参考)】
5B091AA03
5B091CD15
5B091EA01
5B091EA14
5B175DA01
5B175DA02
5B175FA03
(57)【要約】      (修正有)
【課題】シングルモーダルコーパスと、マルチモーダルコーパスを含む異なる形式のコーパスから学習して、事前トレーニング言語モデルが様々な異なるモーダルの情報を効率的に処理するクロスモーダルの事前トレーニングモデルの取得方法、装置、機器、コンピュータ記憶媒体及びプログラム製品を提供する。
【解決手段】方法は、シングルモーダルコーパスとマルチモーダルコーパスを含むトレーニングデータを取得する。マルチモーダルコーパスは、第1のモーダルコーパスと第2のモーダルコーパスで構成されるコーパスペアを含む。方法はさらに、トレーニングデータを使用して事前トレーニングモデルに対してマルチタスクトレーニングを行う。マルチタスクは、少なくとも一つのクロスモーダル比較学習タスクと少なくとも一つのシングルモーダル学習タスクを含む。
【選択図】図1
【特許請求の範囲】
【請求項1】
コンピュータにより実行される、事前トレーニングモデルの取得方法であって、
トレーニングデータを取得するステップであって、前記トレーニングデータは、シングルモーダルコーパスとマルチモーダルコーパスを含み、マルチモーダルコーパスは、第1のモーダルコーパスと第2のモーダルコーパスで構成されるコーパスペアを含むステップと、
前記トレーニングデータを使用して事前トレーニングモデルに対してマルチタスクトレーニングを行うステップであって、マルチタスクは、少なくとも一つのクロスモーダル比較学習タスクと少なくとも一つのシングルモーダル学習タスクを含むステップと、を含み、
前記クロスモーダル比較学習タスクは、前記事前トレーニングモデルによる、マルチモーダルコーパス内の第1のモーダルコーパスに対するベクトル表現と第2のモーダルコーパスに対するベクトル表現とを使用して、前記マルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を決定することを含み、トレーニング目標は、正の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最大化し、負の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最小化することにあり、
前記シングルモーダル学習タスクは、前記事前トレーニングモデルがシングルモーダルコーパス内の第1の部分内容に対するベクトル表現を使用して、当該シングルモーダルコーパス内の第2の部分内容を予測することを含み、トレーニング目標は、予測によって取得された第2の部分内容と当該シングルモーダルコーパス内の第2の部分内容との差異を最小化する、
事前トレーニングモデルの取得方法。
【請求項2】
前記シングルモーダルコーパスは、画像とテキストを含み、前記マルチモーダルコーパスは、画像-テキストペアを含む、
請求項1に記載の事前トレーニングモデルの取得方法。
【請求項3】
前記トレーニングデータ内のマルチモーダルコーパスに対して書き換え拡張と検索拡張のうちの少なくとも一つを行って、拡張によって取得されたマルチモーダルコーパスを前記トレーニングデータに追加するステップをさらに含む、
請求項1に記載の事前トレーニングモデルの取得方法。
【請求項4】
前記書き換え拡張は、
正の例のマルチモーダルコーパス内の第1のモーダルコーパスが第1の言語のテキストである場合、翻訳モデルを使用して当該第1の言語のテキストを第2の言語のテキストに翻訳した後に第1の言語に再翻訳し、翻訳後に取得された第1の言語のテキストと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスとを使用して新しい正の例のマルチモーダルコーパスを構築するステップと、または、
正の例のマルチモーダルコーパス内の第1のモーダルコーパスをシーン図に解析し、前記シーン図のエンティティ、属性、および関係のうちの少なくとも一つをランダムに置き換え、置き換え後に取得されたシーン図を第1のモーダルコーパスに変換し、変換後に取得した第1のモーダルコーパスと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスとを使用して新しい負の例のマルチモーダルコーパスを構築するステップと、を含む、
請求項3に記載の事前トレーニングモデルの取得方法。
【請求項5】
前記検索拡張は、
正の例のマルチモーダルコーパス内の第1のモーダルコーパスを第1のモーダルコーパスデータベースで検索し、検索されたコーパスと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスとを使用して新しい正の例のマルチモーダルコーパスを構築するステップを含む、
請求項3に記載の事前トレーニングモデルの取得方法。
【請求項6】
前記クロスモーダル比較学習タスクでは、検索拡張によって取得されたマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を、前記事前トレーニングモデルが第1のモーダルコーパスで取得したベクトル表現と前記事前トレーニングモデルが第2のモーダルコーパスで取得したベクトル表現とを類似度計算することにより決定し、
書き換え拡張によって取得されたマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を、第1のモーダルコーパスと第2のモーダルコーパスをスプライシングして、前記事前トレーニングモデルがスプライシング後のコーパスで取得したベクトル表現を類似度の値にマッピングすることにより決定する、
請求項3、4、または5のいずれか一項に記載の事前トレーニングモデルの取得方法。
【請求項7】
前記シングルモーダル学習タスクは、
前記事前トレーニングモデルによる、前記マルチモーダルコーパス内の第1のモーダルコーパス内の第1の部分内容に対するベクトル表現と第2のモーダルコーパスに対するベクトル表現とを使用して、当該第1のモーダルコーパス内の第2の部分内容を予測するステップをさらに含み、トレーニング目標は、予測によって取得された第2の部分内容と当該第1のモーダルコーパス内の第2の部分内容との差異を最小化することにある、
請求項1に記載の事前トレーニングモデルの取得方法。
【請求項8】
前記マルチタスクトレーニング時、構築された総損失関数を使用して前記事前トレーニングモデルのパラメータを更新し、
前記総損失関数は、前記少なくとも一つのクロスモーダル比較学習タスクの損失関数と前記少なくとも一つのシングルモーダル学習タスクの損失関数との合計によって取得される、
請求項1に記載の事前トレーニングモデルの取得方法。
【請求項9】
事前トレーニングモデルの取得装置であって、
トレーニングデータを取得するための取得ユニットであって、前記トレーニングデータは、シングルモーダルコーパスとマルチモーダルコーパスを含み、マルチモーダルコーパスは、第1のモーダルコーパスと第2のモーダルコーパスで構成されるコーパスペアを含む取得ユニットと、
前記トレーニングデータを使用して事前トレーニングモデルに対してマルチタスクトレーニングを行うためのトレーニングユニットであって、マルチタスクは、少なくとも一つのクロスモーダル比較学習タスクと少なくとも一つのシングルモーダル学習タスクを含むトレーニングユニットと、を含み、
前記クロスモーダル比較学習タスクは、前記事前トレーニングモデルによる、マルチモーダルコーパス内の第1のモーダルコーパスに対するベクトル表現と第2のモーダルコーパスに対するベクトル表現とを使用して、前記マルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を決定することを含み、トレーニング目標は、正の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最大化し、負の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最小化することにあり、
前記シングルモーダル学習タスクは、前記事前トレーニングモデルがシングルモーダルコーパス内の第1の部分内容に対するベクトル表現を使用して、当該シングルモーダルコーパス内の第2の部分内容を予測することを含み、トレーニング目標は、予測によって取得された第2の部分内容と当該シングルモーダルコーパス内の第2の部分内容との差異を最小化する、
事前トレーニングモデルの取得装置。
【請求項10】
前記シングルモーダルコーパスは、画像とテキストを含み、前記マルチモーダルコーパスは、画像-テキストペアを含む、
請求項9に記載の事前トレーニングモデルの取得装置。
【請求項11】
前記トレーニングデータ内のマルチモーダルコーパスに対して書き換え拡張と検索拡張のうちの少なくとも一つを行って、拡張によって取得されたマルチモーダルコーパスを前記トレーニングデータに追加するための拡張ユニットをさらに含む、
請求項9に記載の事前トレーニングモデルの取得装置。
【請求項12】
前記拡張ユニットは、前記書き換え拡張を実行する時、具体的には、
正の例のマルチモーダルコーパス内の第1のモーダルコーパスが第1の言語のテキストである場合、翻訳モデルを使用して当該第1の言語のテキストを第2の言語のテキストに翻訳した後に第1の言語に再翻訳し、翻訳後に取得された第1の言語のテキストと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスとを使用して新しい正の例のマルチモーダルコーパスを構築し、または、
正の例のマルチモーダルコーパス内の第1のモーダルコーパスをシーン図に解析し、前記シーン図のエンティティ、属性、および関係のうちの少なくとも一つをランダムに置き換え、置き換え後に取得されたシーン図を第1のモーダルコーパスに変換し、変換後に取得した第1のモーダルコーパスと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスとを使用して新しい負の例のマルチモーダルコーパスを構築するために用いられる、
請求項11に記載の事前トレーニングモデルの取得装置。
【請求項13】
前記拡張ユニットは、前記検索拡張を実行する時、具体的には、
正の例のマルチモーダルコーパス内の第1のモーダルコーパスを第1のモーダルコーパスデータベースで検索し、検索されたコーパスと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスとを使用して新しい正の例のマルチモーダルコーパスを構築するために用いられる、
請求項11に記載の事前トレーニングモデルの取得装置。
【請求項14】
前記トレーニングユニットは、
前記クロスモーダル比較学習タスクを実行する中に、検索拡張によって取得されたマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を、前記事前トレーニングモデルが第1のモーダルコーパスで取得されたベクトル表現と前記事前トレーニングモデルが第2のモーダルコーパスで取得されたベクトル表現とを類似度計算する方式を使用して決定し、
書き換え拡張によって取得されたマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を、第1のモーダルコーパスと第2のモーダルコーパスをスプライシングして、前記事前トレーニングモデルがスプライシング後のコーパスで取得したベクトル表現を類似度の値にマッピングすることにより決定する、
請求項11、12、または13のいずれか一項に記載の事前トレーニングモデルの取得装置。
【請求項15】
前記トレーニングユニットは、さらに、前記シングルモーダル学習タスクを実行する時、前記事前トレーニングモデルによる、前記マルチモーダルコーパス内の第1のモーダルコーパス内の第1の部分内容に対するベクトル表現と第2のモーダルコーパスに対するベクトル表現とを使用して、当該第1のモーダルコーパス内の第2の部分内容を予測し、トレーニング目標は、予測によって取得された第2の部分内容と当該第1のモーダルコーパス内の第2の部分内容との差異を最小化することにある、
請求項9に記載の事前トレーニングモデルの取得装置。
【請求項16】
前記トレーニングユニットは、具体的には、前記マルチタスクトレーニングを行う時、構築された総損失関数を使用して前記事前トレーニングモデルのパラメータを更新し、
前記総損失関数は、前記少なくとも一つのクロスモーダル比較学習タスクの損失関数と前記少なくとも一つのシングルモーダル学習タスクの損失関数との合計によって取得される、
請求項9に記載の事前トレーニングモデルの取得装置。
【請求項17】
電子機器であって、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサと通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが請求項1~8のいずれかの一つに記載の事前トレーニングモデルの取得方法を実行する、
電子機器。
【請求項18】
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ命令は、前記コンピュータに請求項1~8のいずれかの一つに記載の事前トレーニングモデルの取得方法を実行させる、
非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項19】
プロセッサにより実行されると、請求項1~8のいずれかの一つに記載の事前トレーニングモデルの取得方法を実行させる、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、コンピュータ応用技術の分野に関し、特に、人工知能技術の分野における自然言語処理およびディープラーニング技術に関する。
【背景技術】
【0002】
大規模な事前トレーニングモデルは、強力な一般化能力と大量のデータの効率的利用のために広く注目されている。既存の事前トレーニング方法は、例えば、画像のみ、またはテキストのみに使用されるように、シングルモーダルシーンのみに使用されることが多い。
【0003】
しかし、人間は、視覚、言語、音などのような、様々な方式で世界を認識する。様々なモーダルの情報の組み合わせでは、情報をよりよく理解することができるため、優れた人工知能システムは、様々な異なるモーダルの情報を効果的に処理できるべきである。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示は、クロスモーダルの事前トレーニングモデルの取得方法、装置、機器、コンピュータ記憶媒体、およびプログラム製品を提供する。
【課題を解決するための手段】
【0005】
本開示の第1の態様によれば、事前トレーニングモデルの取得方法を提供し、
トレーニングデータを取得するステップであって、前記トレーニングデータは、シングルモーダルコーパスとマルチモーダルコーパスを含み、マルチモーダルコーパスは、第1のモーダルコーパスと第2のモーダルコーパスで構成されるコーパスペアを含むステップと、
前記トレーニングデータを使用して事前トレーニングモデルに対してマルチタスクトレーニングを行うステップであって、前記マルチタスクは、少なくとも一つのクロスモーダル比較学習タスクと少なくとも一つのシングルモーダル学習タスクを含むステップと、を含み、
前記クロスモーダル比較学習タスクは、前記事前トレーニングモデルがマルチモーダルコーパス内の第1のモーダルコーパスに対するベクトル表現と第2のモーダルコーパスに対するベクトル表現を使用して、前記マルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を決定することを含み、トレーニング目標は、正の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最大化し、負の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最小化し、
前記シングルモーダル学習タスクは、前記事前トレーニングモデルがシングルモーダルコーパス内の第1の部分内容に対するベクトル表現を使用して、当該シングルモーダルコーパス内の第2の部分内容を予測することを含み、トレーニング目標は、予測によって取得された第2の部分内容と当該シングルモーダルコーパス内の第2の部分内容との差異を最小化する。
【0006】
本開示の第2の態様によれば、事前トレーニングモデルの取得装置を提供し、
トレーニングデータを取得するための取得ユニットであって、前記トレーニングデータは、シングルモーダルコーパスとマルチモーダルコーパスを含み、マルチモーダルコーパスは、第1のモーダルコーパスと第2のモーダルコーパスで構成されるコーパスペアを含む取得ユニットと、
前記トレーニングデータを使用して事前トレーニングモデルに対してマルチタスクトレーニングを行うためのトレーニングユニットであって、前記マルチタスクは、少なくとも一つのクロスモーダル比較学習タスクと少なくとも一つのシングルモーダル学習タスクを含むトレーニングユニットと、を含み、
前記クロスモーダル比較学習タスクは、前記事前トレーニングモデルがマルチモーダルコーパス内の第1のモーダルコーパスに対するベクトル表現と第2のモーダルコーパスに対するベクトル表現を使用して、前記マルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を決定することを含み、トレーニング目標は、正の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最大化し、負の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最小化し、
前記シングルモーダル学習タスクは、前記事前トレーニングモデルがシングルモーダルコーパス内の第1の部分内容に対するベクトル表現を使用して、当該シングルモーダルコーパス内の第2の部分内容を予測することを含み、トレーニング目標は、予測によって取得された第2の部分内容と当該シングルモーダルコーパス内の第2の部分内容との差異を最小化する。
【0007】
本開示の第3の態様によれば、本開示は電子機器を提供し、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサと通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが上記の方法を実行する。
【0008】
本開示の第4の態様によれば、本開示は、コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ命令は、前記コンピュータに上記の方法を実行させる。
【0009】
本開示の第5の態様によれば、本開示は、コンピュータプログラム製品を提供し、コンピュータプログラムを含み、前記コンピュータプログラムがプロセッサによって実行される時に上記の方法を実現する。
【0010】
上記の技術案から分かるように、本開示によって取得される事前トレーニング言語モデルは、シングルモーダルコーパスと、マルチモーダルコーパスを含む異なる形式のコーパスから学習して、事前トレーニング言語モデルが様々な異なるモーダルの情報を効率的に処理することができる。また、学習プロセスにおいて異なるモーダルコーパス間は互いに強化されて、取得された事前トレーニング言語モデルがよりよいセマンティック理解能力と一般化可能な表現を備えるようにする。
【0011】
本明細書で説明された内容は、本開示の実施例のキーまたは重要な特徴を特定することを意図しておらず、本開示の範囲を制限するためにも使用されないことを理解されたい。本開示の他の特徴は、以下の明細書を通じて容易に理解できる。
【図面の簡単な説明】
【0012】
図面は、本開示をより良く理解するためのものであり、本開示を限定しない。
図1】本開示の実施例によって提供される主な方法のフローチャートである。
図2】本開示の実施例によって提供されるトレーニング事前トレーニング言語モデルの概略図である。
図3】本開示の実施例によって提供されるシーン図の概略図である。
図4】本開示の実施例によって提供される事前トレーニングモデルの取得装置の概略構造図である。
図5】本開示の実施例を実現するための電子機器のブロック図である。
【発明を実施するための形態】
【0013】
以下、図面に基づいて、本開示の例示の実施例を説明する。理解を容易にするために、本開示の実施例の様々な詳細が含まれており、それらは単なる例示と見なされるべきである。従って、当業者は、本開示の範囲及び精神から逸脱することなく、本明細書に記載の実施形態に対して様々な変更及び修正を行うことができることを認識するはずである。同様に、簡明のために、以下の説明では、よく知られた機能と構造の説明は省略される。
【0014】
既存の事前トレーニングモデルにおいて、ほとんどはシングルモーダルデータのみを処理することができ、例えば、BERT(Bidirectional Encoder Representation from Transformers、トランスフォーマーからの双方向エンコーダー表現)モデルは、テキストデータのみを学習して処理することができる。SimCLR(Simple Framework for Contrastive Learning of Visual Representations、視覚表現比較学習のシンプルフレームワーク)モデルは、画像データのみを学習して処理することができる。VilBERT(Vision-and-Language BERT、視覚-言語BERT)モデルは、画像およびテキストペア(すなわち画像とテキストで構成されたコーパスペア)を学習して処理することができるが、純粋な画像またはテキストデータに対する処理能力が非常に低い。本開示は、クロスモーダルデータ学習を実現できる事前トレーニングモデルの取得方法を提供し、様々なモーダルの情報を十分にすることで、事前トレーニングモデルは、様々なモーダルのデータを同一のセマンティック表現空間にマッピングすることができる。以下は、実施例を組み合わせて本開示により提供される方法を詳細に説明する。
【0015】
図1は、本開示の実施例によって提供される主な方法のフローチャートである。当該方法の実行主体は、サーバ側の装置であってもよく、コンピュータ端末上の装置であってもよい。当該装置は、アプリケーションとして具現化することができ、アプリケーション内のプラグインまたはソフトウェア開発キット(Software Development Kit、SDK)などの機能ユニットとして具現化することもでき、本開示の実施例は、これについて特に限定されない。図1に示すように、当該方法は、以下のようなステップを含むことができる。
101では、トレーニングデータを取得し、トレーニングデータは、シングルモーダルコーパスとマルチモーダルコーパスを含み、マルチモーダルコーパスは、第1のモーダルコーパスと第2のモーダルコーパスで構成されるコーパスペアを含む。
【0016】
本開示に関するシングルモーダルコーパスは、シングルモーダルのコーパスを指す、例えば、画像、テキスト、ビデオ、またはオーディオなどのモーダルのコーパスでする。本開示では、シングルモーダルコーパスのみを含むことができ、複数のシングルモーダルコーパスを含むこともできる。
【0017】
マルチモーダルコーパスは、例えば、画像とテキストで構成されたコーパスペア、画像とオーディオで構成されたコーパスペア、テキストとビデオで構成されたコーパスペアなど、二つのモーダルのコーパスで構成されたコーパスペアを指す。
【0018】
好ましい実施形態として、マルチモーダルコーパスは、正の例のマルチモーダルコーパスと負の例のマルチモーダルコーパスを含むことができ、正の例のマルチモーダルコーパスに含まれる第1のモーダルコーパスと第2のモーダルコーパスとの間は、同じセマンティックを表し、負の例のマルチモーダルコーパスに含まれる第1のモーダルコーパスと第2のモーダルコーパスとの間は、異なるセマンティックを表す。
【0019】
102では、トレーニングデータを使用して事前トレーニングモデルに対してマルチタスクトレーニングを行い、マルチタスクは、少なくとも一つのクロスモーダル比較学習タスクと少なくとも一つのシングルモーダル学習タスクを含む。
クロスモーダル比較学習タスクは、事前トレーニングモデルがマルチモーダルコーパス内の第1のモーダルコーパスに対するベクトル表現と第2のモーダルコーパスに対するベクトル表現を使用して、マルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を決定することを含み、トレーニング目標は、正の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最大化し、負の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最小化し、
シングルモーダル学習タスクは、事前トレーニングモデルがシングルモーダルコーパス内の第1の部分内容に対するベクトル表現を使用して、当該シングルモーダルコーパス内の第2の部分内容を予測することを含み、トレーニング目標は、予測によって取得された第2の部分内容と当該シングルモーダルコーパス内の第2の部分内容との差異を最小化する。
【0020】
本開示における事前トレーニング言語モデルは、多層Transformerをメインモデルとして使用することができ、図2に示すように、トレーニングデータを事前トレーニング言語モデルの入力として、事前トレーニング言語モデルでトレーニングデータ内のコーパスをすべて統一されたベクトル空間にマッピングし、すなわち各コーパス(シングルモーダルコーパスの各コーパス、およびマルチモーダルコーパスにおける各第1のモーダルコーパスと第2のモーダルコーパスを含む)のベクトル表現を出力する。
【0021】
より具体的には、一つのコーパスについては、当該コーパスに含まれる各Token(セマンティック要素)を事前トレーニング言語モデルに入力し、事前トレーニング言語モデルによって各Tokenのベクトル表現を出力する。テキスト類コーパスについては、各Tokenは、テキストに含まれる各文字であってもよく、各単語などであってもよい。画像類コーパスについては、各Tokenは、画像に含まれる各ターゲット領域または各ピクセルなどであってもよい。ビデオ類コーパスについては、各フレーム画像に分解することができ、各Tokenは、フレーム画像またはキーフレームの画像などであってもよい。オーディオ類コーパスについては、各Tokenは、各オーディオフレーム、オーディオセグメントであってもよく、オーディオの周波数、強度などに基づいて取得された各フレームのスペクトログラムであってもよい。
【0022】
事前トレーニング言語モデルのトレーニングプロセスでは、マルチタスクトレーニングを使用する。クロスモーダル比較学習タスクは、主にマルチモーダルコーパスを使用してトレーニングし、シングルモーダル学習タスクは、シングルモーダルコーパスを使用してトレーニングする。マルチタスクは、共同トレーニングすることができ、交互トレーニングすることもでき、またはそれぞれ順番にトレーニングすることもできる。
【0023】
本開示をよりよく理解するために、以下では、シングルモーダルコーパスを画像、テキストとし、マルチモーダルコーパスを画像-テキストペアとして例を示し、上記の方法の各ステップを詳細に説明する。
【0024】
まず、実施例を組み合わせて上記のステップ101、すなわち「トレーニングデータを取得する」ことについて詳細に説明する。
【0025】
ネットワークには、多くの異なるモーダルのデータが存在し、主にテキスト情報と視覚情報であり、テキスト知識と視覚知識は、通常相補的である。人間の脳の中で視覚を担当する部分は、さらに、触覚と音を含む他のモーダルの情報を学習して処理することができる。異なるモーダルのデータを統一する最大な挑戦は、それを同じセマンティック空間に統一することであり、これらのセマンティック空間は、異なるデータモードに要約することができる。したがって、本ステップで取得されたトレーニングデータは、マルチモーダルコーパスおよびシングルモーダルコーパスとして具現化される様々なモーダルのデータを含む。
【0026】
その中、マルチモーダルコーパスは、ネットワーク上でセマンティック上にペア(pair)で出現されるデータである。画像-テキストペアを例とする。予めネットワークから画像-テキストペアをクローリングして画像-テキストペアデータベースを構成することができ、本ステップでは、直接に当該画像-テキストペアデータベースからマルチモーダルコーパスを取得することができる。どのようにネットワークから画像-テキストペアをクローリングすることは、既存の技術を使用して実現することができる。例えば、ネットワークから画像をクローリングし、次に、画像のコンテキストから当該画像の説明テキストを抽出し、次に、当該画像と説明テキストから画像-テキストペアを構成することができる。次に、例えば、ネットワークから画像をクローリングし、次に、手動で説明テキストに注釈を付けることができ、当該画像と説明テキストから画像-テキストペアを構成するなどが挙げられる。
【0027】
pair形態のマルチモーダルコーパス以外に、ネットワークには、例えば、純粋なテキストコーパス、画像コーパスなど、より大規模な非pair形態のシングルモーダルコーパスが存在する。ネットワークからこれらのシングルモーダルコーパスをクローリングした後、選別してテキストデータベース、画像データベースなどのシングルモーダルコーパスデータベースを構成することができる。本ステップには、テキストコーパスと画像コーパスを取得するなど、シングルモーダルコーパスデータベースからシングルモーダルコーパスを直接に取得することができる。
【0028】
さらに、トレーニングデータにおいてマルチモーダルコーパスデータベースから取得されたマルチモーダルコーパスは、正の例及び/又は負の例の拡張を行うことができ、使用される拡張方式は、書き換え拡張と検索拡張のうちの少なくとも一つを含むことができ、次に、取得されたマルチモーダルコーパスをトレーニングデータに追加することができる。後続のクロスモーダル比較学習プロセスにおいて、正の例のマルチモーダルコーパスと負の例のマルチモーダルコーパスの品質が事前トレーニングモデル最終の効果に重要な影響を与えるため、高品質の正の例のマルチモーダルコーパスと負の例のマルチモーダルコーパスを取得し、より多くのシングルモーダルコーパスを融合して学習を支援するために、以下の拡張方式のうちの少なくとも一つを使用することができる。
第1の拡張方式:書き換え拡張。
【0029】
正の例のマルチモーダルコーパスの拡張については、正の例のマルチモーダルコーパス内の第1のモーダルコーパスが第1の言語のテキストである場合、翻訳モデルを使用して当該第1の言語のテキストを第2の言語のテキストに翻訳した後に第1の言語に再翻訳し、翻訳後に取得された第1の言語のテキストと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスを使用して新しい正の例のマルチモーダルコーパスを構築するステップを含むことができる。
【0030】
上記の正の例のマルチモーダルコーパスの拡張については、主に逆翻訳(back translation)基づいている。例えば、ある正の例のマルチモーダルコーパスは、画像1とテキスト1で構成された画像-テキストペアである。テキスト1が中国語であると仮定すると、機械翻訳モデルを使用して中国語を英語とフランス語などに翻訳し、次に、取得された英語とフランス語などのテキストを中国語に翻訳して、テキスト2、テキスト3などを取得することができる。このように、画像1とテキスト2で構成された画像-テキストペアと、画像1とテキスト3で構成された画像-テキストペアを新しい正の例のマルチモーダルコーパスとしてトレーニングデータにそれぞれ追加することができ、正の例のマルチモーダルコーパスの拡張を実現することができる。この拡張は、通常、文レベルのテキスト書き換え拡張に基づいている。
【0031】
負の例のマルチモーダルコーパスの拡張については、正の例のマルチモーダルコーパス内の第1のモーダルコーパスをシーン図に解析し、シーン図のエンティティ、属性、および関係のうちの少なくとも一つをランダムに置き換え、置き換え後に取得されたシーン図を第1のモーダルコーパスに変換し、変換後に取得した第1のモーダルコーパスと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスを使用して新しい負の例のマルチモーダルコーパスを構築するステップを含むことができる。
【0032】
シーン図は、エンティティノード、属性ノード、および関係ノードの3種類のノードを含むデータ構造である。エンティティノードは、エンティティワードに対応し、属性ノードは、属性ワードに対応し、関係ノードは、関係ワードに対応する。例を挙げると、正の例の画像-テキストペアにおける画像1とテキスト1で構成され、テキスト1が「女性は青いスカートを着いた(
【数1】
)」である。その中、「女性(女人)」と「スカート(裙子)」はエンティティノードである。「青い(
【数2】
)」は属性ノードであり、エンティティノード「スカート」の属性を具現化し、「着いた(穿着)」は関係ノードであり、エンティティノード「女性」と「スカート」との間の関係を具現化する。生成されるシーン図は、図3に示すように、図の円形ノードはエンティティノードを表し、四角形ノードは関係ノードを表し、平行四辺形ノードは属性ノードを表すことができる。
【0033】
シーン図のエンティティ、属性、および関係ノードのうちの少なくとも一つを置き換えて、例えば、テキスト2「女性は赤いスカートを着いた」、テキスト3「女性は青いズボンを着いた」、テキスト4「女性は赤いズボンを着いた」などを形成する。次に、それぞれ画像1とテキスト2で一つの新しい画像-テキストペアと構成し、画像1とテキスト3で一つの新しい画像-テキストペアと構成し、画像1とテキスト4で一つの新しい画像-テキストペアと構成し、これらの新しいテキストペアを負の例のマルチモーダルコーパスとしてトレーニングデータに追加することができる、負の例のマルチモーダルコーパスに対する拡張を実現することができる。この拡張は、主に、フレーズレベル、語彙レベルに基づいて書き換え拡張を行う。
【0034】
第2の拡張方式:検索拡張。
【0035】
正の例のマルチモーダルコーパス内の第1のモーダルコーパスを第1のモーダルコーパスデータベースで検索し、検索されたコーパスと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスを使用して新しい正の例のマルチモーダルコーパスを構築する。
【0036】
例えば、画像1とテキスト1で構成された正の例の画像-テキストペアである。
【0037】
一つの実現方式として、テキスト1を使用してテキストデータベースで検索して、テキスト1間の類似度が予め設定された類似度閾値以上であるテキストを取得し、検索されたテキストをそれぞれ画像1と組み合わせて新しい正の例の画像-テキストペアを取得することができる。その中、検索されたテキストは、画像1とテキスト1で構成された正の例の画像-テキストペアのテキストレベルの背景知識と見なし、トレーニングサンプルの補足とすることができる。
【0038】
検索中にテキスト間の類似度を決定する時、様々な類似度決定方式を使用することができる。例えば、BERTの強いセマンティック表現能力に基づいて、各テキストのベクトル表現を決定し、ベクトル表現間の類似度を計算してテキスト間の類似度とする。次に、例えば、TF-IDF統計手段に基づいて、各テキスト内のキーワード(すなわちTF-IDF予め設定された統計閾値以上である単語)をそれぞれ決定して各テキストの単語セットを取得することができ、各テキストにおける単語セット内の各単語の単語頻度に基づいて、各テキストに対応する単語頻度ベクトルを取得し、単語頻度ベクトル間の類似度を計算して対応するテキスト間の類似度とすることができる。
【0039】
別の実現方式として、画像1を使用して画像テキストライブラリで検索し、画像1間の類似度が予め設定された類似度閾値以上である画像を取得し、検索された画像をそれぞれテキスト1と組み合わせて新しい正の例の画像-テキストペアを取得することができる。その中、検索された画像は、画像1とテキスト1で構成された正の例の画像-テキストペアの画像レベルの背景知識と見なし、トレーニングサンプルの補足とすることができる。
【0040】
検索中に画像間の類似度を決定する時、様々な類似度決定方式を使用することができる。ここでは、以下の一つの方式を提供する。目標検出ツールを使用して各画像をそれぞれ検出し、検出された各画像に含まれる対象の重畳率を決定して対応する画像間の類似度の具現化とすることができる。例えば、画像1が対象「女性」、「花」、「緑の草」、および「太陽」を含み、画像2が「女性」、「花」、「虹」、および「カバン」を含み、画像3が「女性」、「花」、および「緑の草」を含む場合、このように、画像1と画像3との間の対象の重畳率は、画像1と画像2との間の対象の重畳率より高く、つまり、画像3は、画像2と比べて画像1により類似している。
【0041】
実施例を組み合わせて上記のステップ102、すなわち「トレーニングデータを使用して事前トレーニングモデルに対してマルチタスクトレーニングを行い、マルチタスクは、少なくとも一つのクロスモーダル比較学習タスクと少なくとも一つのシングルモーダル学習タスクを含む」ことを詳細に説明する。
【0042】
トレーニングデータは、画像、テキスト、および画像-テキストペアを含むと仮定する。
【0043】
Wとして表示されるテキストについて、各Token構成シーケンスに分割して事前トレーニング言語モデルの入力とし、
【数3】
に表示する。その中、特殊記号[CLS]と[SEP]は、シーケンスの開始位置と終了位置をそれぞれ表示し、nは、正の整数である。事前トレーニング言語モデルの多層注意力メカニズムを経た後、各Tokenに対応するセマンティック表現を取得し、ベクトル表現のシーケンス
【数4】
として具現化する。
【0044】
Vとして表示される画像について、目標検出ツールで画像に含まれる対象領域を検出し、各対象領域の特徴を各Tokenと画像全体の特徴構成シーケンスとして事前トレーニング言語モデルの入力とし、
【数5】
に表示し、tは、正の整数である。その中、[Image]は、画像全体の特徴を表示する。上記の特徴は、対応する画像または領域が線形変換またはニューラルネットワーク変換を経て取得された特徴であってもよい。事前トレーニング言語モデルの多層注意力メカニズムを経た後、各Tokenに対応するセマンティック表現を取得し、ベクトル表現のシーケンス
【数6】
として具現化する。
【0045】
(V,W)として表示される画像-テキストペアについて、VとWの各Tokenをスプライシングしてシーケンスを構成して事前トレーニング言語モデルの入力とし、以下に表示し、
【数7】
事前トレーニング言語モデルの多層注意力メカニズムを経た後、各Tokenに対応するセマンティック表現を取得し、ベクトル表現のシーケンスとして具現化し、
【数8】
(V,W)として表示される画像-テキストペアについて、VとWのシーケンスをそれぞれ入力とし、事前トレーニング言語モデルでVのベクトル表現とWのベクトル表現をそれぞれ取得することもできる。
【0046】
クロスモーダル比較学習タスクでは、主なアイデアは、意味が同じである画像-テキストペア、すなわち正の例の画像-テキストペアをセマンティック空間により近づけ、意味が異なる画像-テキストペア、すなわち負の例の画像-テキストペアをセマンティック空間で距離より遠くすることである。すなわち、トレーニング目標は、正の例の画像-テキストペアにおける画像とテキストとの間の類似度を最大化し、負の例の画像-テキストペアにおける画像とテキストとの間の類似度を最小化する。
【0047】
好ましい実施形態として、書き換え拡張方式と検索拡張方式によって取得された画像-テキストペアに対して類似度を計算する方式で区別することができる。
【0048】
その中、書き換え拡張によって取得された画像-テキストペアにおける画像とテキストとの間の類似度について、以下のような方式を使用して決定する。画像とテキストをスプライシングし、事前トレーニングモデルがスプライシング後のコーパスから取得されたベクトル表現を類似度の値にマッピングする。この類似度計算方式は、「シングルストリーム式」と呼ぶ。この方式では、画像のシーケンスとテキストのシーケンスは、スプライシングした後に事前トレーニングモデルに入力する。事前トレーニングモデルは、スプライシング後に取得されたシーケンスに対して全体のベクトル表現を取得し、当該ベクトル表現をマッピング(例えばSoftmax)した後、類似度の値を取得する。
【0049】
検索拡張によって取得された画像-テキストペアにおける画像とテキストとの間の類似度について、以下のような方式を使用して決定する、事前トレーニングモデルが画像に対して取得されたベクトル表現と事前トレーニングモデルがテキストに対して取得されたベクトル表現を類似度計算し、例えば、2つのベクトル表現間の余弦の類似度を計算する。この類似度計算方式は、「ダブルタワー(双塔式)」と呼ぶ。この方式では、画像-テキストペアにおける画像のシーケンス(画像に含まれる各Tokenで構成されたシーケンス)とテキストのシーケンス(テキストに含まれる各Tokenで構成されたシーケンス)は、事前トレーニングモデルにそれぞれ入力し、事前トレーニングモデルによって画像のベクトル表現とテキストのベクトル表現をそれぞれ取得する。
【0050】
書き換え拡張方式と検索拡張方式によって取得された画像-テキストペアに対して類似度を計算する方式で区別する理由は、「シングルストリーム式」の類似度計算方式は、画像とテキストをスプライシングした後に強い相関マッピングを行うため、この方式は、「区別」を行う、すなわち書き換え方式で取得された画像-テキストペアと元の正の例の画像-テキストペアを区別するのにより適している。検索拡張によって取得された画像またはテキストは、元の画像-テキストペアの「背景知識」として存在する正の例の画像-テキストペアである。「ダブルタワー(双塔式)」の類似度計算方式は、画像とテキストをそれぞれエンコードした後に距離によって弱い相関の計算を行い、この方式は、画像またはテキストの内容をよりよく理解するのに適しているため、検索拡張方式は、「ダブルタワー(双塔式)」の類似度計算方式により適しており、それは、事前トレーニングモデルが画像またはテキストの内容をよりよく理解することができる。
【0051】
トレーニングデータにおける元の画像-テキストペアは、上記の類似度計算方式のうちの任意の一つを使用することができる。
【0052】
図2に示すように、クロスモーダル比較学習タスクでは、上記の二つの類似度決定方式に基づいて損失関数を構成することができる。例えば、以下のような損失関数
【数9】
を使用することができ、
【数10】
その中、Eは、期待値をとる演算関数を指し、
【数11】

【数12】
は、書き換え拡張によって取得された正の例の画像-テキストペアと負の例の画像-テキストペアを表示し、
【数13】

【数14】
は、検索拡張によって取得された正の例の画像-テキストペアと負の例の画像-テキストペアを表示する。d()は、類似度関数を表示する。Dは、トレーニングデータセットを表示し、本損失関数では、具体的には、画像-テキストペアコーパスのデータセットを指す。
【数15】

【数16】
は、正の例の画像-テキストペアにおけるテキストと画像をそれぞれ表示する。
【数17】

【数18】
は、正の例の画像-テキストペアにおけるテキストと画像を取得することができ、負の例の画像-テキストペアにおけるテキストと画像を取得することもできることをそれぞれ表示する。
【0053】
図2に示すように、シングルモーダル学習タスクには、視覚学習タスクとテキスト学習タスクが含まれる。
【0054】
視覚学習タスクは、画像に対して行う学習である。視覚学習タスクでは、マスク言語モデルと類似する方法を使用する。画像から一部の領域をランダムに選択してマスク(Mask)を行い、事前トレーニングモデルがMaskされていない領域に対するベクトル表現を使用してMaskされた領域を再構成し、トレーニング目標は、再構成された領域と画像内のMaskされた領域の差異を最小化する。
【0055】
例えば、視覚学習タスクの損失関数
【数19】
を構築することができ、
【数20】
その中、vは、画像V内のMaskされた領域であり、
【数21】
は、画像V内のMaskされていない領域であり、
【数22】
は、KL距離(相対エントロピー)関数であり、Dは、トレーニングデータセットを表示し、本損失関数では、具体的には、画像コーパスのデータセットを指すことができ、画像-テキストペアコーパスのデータセット内の画像をさらに含むこともできる。
【0056】
類似的に、画像-テキストペアについて、画像-テキストペアにおける画像に対して一部の領域のMaskを行い、事前トレーニングモデルがテキストに対するベクトル表現と画像内のMaskされていない領域に対するベクトル表現を使用して画像内のMaskされた領域を再構成することができ、トレーニング目標は、再構成された領域と画像内のMaskされていない領域の差異を最小化することができる。
【0057】
この時、視覚学習タスクを構築する損失関数は、以下の式であってもよい。
【数23】
その中、画像WとテキストVは、画像-テキストペアを構成し、Dは、トレーニングデータセットを表示し、本損失関数では、具体的には、画像-テキストペアコーパスのデータセットを指す。
【0058】
テキスト学習タスクは、テキストに対して行う学習である。テキスト学習タスクでは、依然としてマスク言語モデルと類似する方法を使用することができる。シングルモーダルコーパスのテキストから一部のTokenをランダムに選択してMaskを行い、事前トレーニングモデルがMaskされていないTokenに対するベクトル表現を使用してMaskされたTokenを復元する。トレーニング目標の目的は、復元されたTokenとテキスト内のMaskされたTokenとの差異を最小化する。
【0059】
上記の復元は、予測モデルを使用して実現することができ、生成モデルを使用して実現することもできる。予測モデルを使用して実現する場合、双方向予測モデルであってもよく、使用される損失関数
【数24】
は、以下のようになる。
【数25】
その中、wは、テキストW内のMaskされたTokenであり、
【数26】
は、テキストW内のMaskされていないTokenであり、
【数27】
は、尤度関数であり、は、トレーニングデータセットを表示し、本損失関数では、具体的には、テキストコーパスのデータセットを指すことができ、画像-テキストペアコーパスのデータセット内のテキストをさらに含むこともできる。
【0060】
生成モデルを使用して実現する場合、シーケンス生成モデルを使用することができる。シーケンス生成モデルを使用する場合、テキストWから一部の連続するTokenをランダムに選択し、Tと示し、
【数28】
、残りのTokenは、Sと示す。この場合、使用される損失関数
【数29】
は、以下のようになることができ、
【数30】
その中、Dは、トレーニングデータセットを表示し、本損失関数では、具体的には、テキストコーパスのデータセットを指し、さらに、画像-テキストペアコーパスのデータセット内のテキストを含むことができる。
【0061】
類似的に、テキスト学習タスクでは、画像-テキストペア(V,W)内のテキストWに対して学習することもでき、テキストから一部のTokenをランダムに選択してMaskを行い、事前トレーニングモデルがMaskされていないTokenに対するベクトル表現および画像-テキストペアにおける画像Wに対するベクトル表現を使用してMaskされたTokenを復元する。トレーニング目標の目的は、復元されたTokenとテキスト内のMaskされたTokenとの差異を最小化する。
【0062】
同様に、上記の復元は、予測モデルを使用して実現することができ、生成モデルを使用して実現することもできる。予測モデルを使用して実現する場合、双方向予測モデルであってもよく、使用される損失関数
【数31】
は、以下のようにすることができる。
【数32】
その中、Dは、トレーニングデータセットを表示し、本損失関数では、具体的には、画像-テキストペアコーパスのデータセットを指す。
【0063】
生成モデルを使用して実現する場合、シーケンス生成モデルを使用することができる。使用される損失関数
【数33】
は、以下のようにすることができ、
【数34】
その中、Dは、トレーニングデータセットを表示し、本損失関数では、具体的には、画像-テキストペアコーパスのデータセットを指す。
【0064】
上記のマルチタスクトレーニングを行う場合、図2に示すように、共同トレーニングの方式を使用することができる。好ましい実施形態として、各タスクの損失関数を使用して総損失関数を構築し、構築された総損失関数を使用して事前トレーニングモデルのパラメータを更新することができる。例えば、総損失関数Lossを構築することができる。
【数35】
上記の共同トレーニングの方式以外、交互トレーニングの方式を使用することもできる。例えば、各トレーニングタスクを順番に交互トレーニングし、各トレーニングタスクがトレーニングする時に独自の損失関数を使用する。
【0065】
共同トレーニングと交互トレーニングの方式以外、順番にトレーニングする方式を使用することもできる。例えば、まず、クロスモーダル比較学習タスクを使用してトレーニングする。トレーニング終了後、トレーニングによって取得された事前トレーニングモデルに基づいて視覚学習タスクを再び行う。トレーニング終了後、トレーニングによって取得された事前トレーニングモデルに基づいてテキスト学習タスクを再び行う、最終的に事前トレーニングモデルを取得する。トレーニングプロセス中の各トレーニングタスクは、独自の損失関数を使用する。
【0066】
事前トレーニングモデルのトレーニングを完了した後、下流タスクを接続することもでき、当該下流タスクに対応するトレーニングデータに基づいて事前トレーニングモデルを微調整することもできる。下流タスクは、例えば、シングルモーダルデータの分類タスク、マルチモーダルの理解および生成タスク、シングルモーダルデータの理解および生成タスクなどであってもよい。例えば、下流タスクは、テキスト分類タスク、画像分類タスク、画像に対して質問と回答を生成するタスク、テキストに対して画像を生成するタスクなどであってもよい。
【0067】
以上の説明から分かるように、上記の方法の実施例は、以下の利点を有することができる。
1)本開示の実施例により取得された事前トレーニング言語モデルは、シングルモーダルコーパスと、マルチモーダルコーパスを含む異なる形式のコーパスから学習して、事前トレーニング言語モデルが様々な異なるモーダルの情報を効率的に処理することができる。
【0068】
2)学習プロセスにおいて異なるモーダルコーパス間は互いに強化されて、取得された事前トレーニング言語モデルがよりよいセマンティック理解能力と一般化可能な表現を持つようになる。これは人工知能技術の考え方の革新にとって大きな革新的な意義がある。
【0069】
3)ネットワーク上の多くのペアになっていないテキストコーパスデータベースと画像集合を十分に利用し、より多くの要約可能なテキストと視覚表現を学習することができ、視覚と言語理解と生成能力を向上させることができる。
【0070】
以上は、本開示により提供される方法の詳細に説明であるが、以下は、実施例を組み合わせて本開示により提供される装置について詳細に説明する。
【0071】
図4は、本開示の実施例によって提供される事前トレーニングモデルの取得装置の概略構造図である。図4に示すように、当該装置400は、取得ユニット401とトレーニングユニット402を含み、さらに、拡張ユニット403を含むこともできる。その中、各構成ユニットの主に機能は以下のようになる。
取得ユニット401は、トレーニングデータを取得するために用いられ、トレーニングデータは、シングルモーダルコーパスとマルチモーダルコーパスを含み、マルチモーダルコーパスは、第1のモーダルコーパスと第2のモーダルコーパスで構成されるコーパスペアを含む。
【0072】
トレーニングユニット402は、トレーニングデータを使用して事前トレーニングモデルに対してマルチタスクトレーニングを行うために用いられ、マルチタスクは、少なくとも一つのクロスモーダル比較学習タスクと少なくとも一つのシングルモーダル学習タスクを含む。
【0073】
その中、クロスモーダル比較学習タスクは、事前トレーニングモデルがマルチモーダルコーパス内の第1のモーダルコーパスに対するベクトル表現と第2のモーダルコーパスに対するベクトル表現を使用して、マルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を決定することを含み、トレーニング目標は、正の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最大化し、負の例のマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度を最小化する。
【0074】
シングルモーダル学習タスクは、事前トレーニングモデルがシングルモーダルコーパス内の第1の部分内容に対するベクトル表現を使用して、当該シングルモーダルコーパス内の第2の部分内容を予測することを含み、トレーニング目標は、予測によって取得された第2の部分内容と当該シングルモーダルコーパス内の第2の部分内容との差異を最小化する。
【0075】
拡張ユニット403は、トレーニングデータ内のマルチモーダルコーパスに対して書き換え拡張と検索拡張のうちの少なくとも一つを行い、拡張によって取得されたマルチモーダルコーパスをトレーニングデータに追加するために用いられる。
【0076】
その中、上記の検索拡張は、正の例のマルチモーダルコーパス内の第1のモーダルコーパスを第1のモーダルコーパスデータベースで検索し、検索されたコーパスと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスを使用して新しい正の例のマルチモーダルコーパスを構築することを含む。
【0077】
上記の書き換え拡張は、正の例のマルチモーダルコーパス内の第1のモーダルコーパスが第1の言語のテキストである場合、翻訳モデルを使用して当該第1の言語のテキストを第2の言語のテキストに翻訳した後に第1の言語に再翻訳し、翻訳後に取得された第1の言語のテキストと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスを使用して新しい正の例のマルチモーダルコーパスを構築することと、または、
正の例のマルチモーダルコーパス内の第1のモーダルコーパスをシーン図に解析し、シーン図のエンティティ、属性、および関係のうちの少なくとも一つをランダムに置き換え、置き換え後に取得されたシーン図を第1のモーダルコーパスに変換し、変換後に取得した第1のモーダルコーパスと当該正の例のマルチモーダルコーパス内の第2のモーダルコーパスを使用して新しい負の例のマルチモーダルコーパスを構築することを含む。
【0078】
実現可能な方式として、トレーニングユニット402は、クロスモーダル比較学習タスクを実行する中に、検索拡張によって取得されたマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度については、事前トレーニングモデルが第1のモーダルコーパスで取得されたベクトル表現と事前トレーニングモデルが第2のモーダルコーパスで取得されたベクトル表現を類似度計算する方式を使用して決定し、書き換え拡張によって取得されたマルチモーダルコーパス内の第1のモーダルコーパスと第2のモーダルコーパスとの間の類似度については、第1のモーダルコーパスと第2のモーダルコーパスをスプライシングし、事前トレーニングモデルがスプライシング後のコーパスから取得されたベクトル表現を類似度の値にマッピングする方式を使用して決定する。
【0079】
トレーニングユニット402は、さらに、シングルモーダル学習タスクを実行する時、さらに、事前トレーニングモデルがマルチモーダルコーパス内の第1のモーダルコーパス内の第1の部分内容に対するベクトル表現および第2のモーダルコーパスに対するベクトル表現を使用して、当該第1のモーダルコーパス内の第2の部分内容を予測し、トレーニング目標は、予測によって取得された第2の部分内容と当該第1のモーダルコーパス内の第2の部分内容との差異を最小化する。
【0080】
具体的には、トレーニングユニット402は、マルチタスクトレーニングを行う時、構築された総損失関数を使用して事前トレーニングモデルのパラメータを更新することができる。その中、総損失関数は、少なくとも一つのクロスモーダル比較学習タスクの損失関数と少なくとも一つのシングルモーダル学習タスクの損失関数との合計によって取得される。
【0081】
上記の装置の各ユニットの具体的な処理方式は、前述の方法の実施例の関連説明を参照することができ、ここでは詳細に説明しない。
【0082】
本開示の実施例によれば、本開示は、電子機器、読み取り可能な記憶媒体、およびコンピュータプログラム製品をさらに提供する。
【0083】
図5に示すように、本開示の実施例の電子機器のブロック図である。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタル処理、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータなどの様々な形式のデジタルコンピュータを表すことを目的とする。電子機器は、パーソナルデジタル処理、携帯電話、スマートフォン、ウェアラブルデバイス、他の同様の計算デバイスなどの様々な形式のモバイルデバイスを表すこともできる。本明細書で示されるコンポーネント、それらの接続と関係、及びそれらの機能は単なる例であり、本明細書の説明及び/又は要求される本開示の実現を制限することを意図したものではない。
【0084】
図5に示すように、機器500は計算ユニット501を含み、計算ユニット501は、読み取り専用メモリ(ROM)502に記憶されているコンピュータプログラムまたは記憶ユニット508からランダムアクセスメモリ(RAM)503にロードされたコンピュータプログラムに基づいて、様々な適切な動作と処理を実行することができる。RAM503には、機器500が動作するに必要な様々なプログラムとデータも記憶することができる。計算ユニット501、ROM502、およびRAM503は、バス504を介してお互いに接続される。入出力(I/O)インターフェース505もバス504に接続される。
【0085】
機器500内の複数のコンポーネントは、I/Oインターフェース505に接続されており、キーボード、マウスなどの入力ユニット606と、様々なタイプのディスプレイ、スピーカなどの出力ユニット607と、ディスク、光ディスクなどの記憶ユニット508と、およびネットワークカード、モデム、無線通信トランシーバなどの通信ユニット509と、を含む。通信ユニット509は、電子機器500が、インターネットなどのコンピュータネットワーク、および/または様々な電気通信ネットワークを介して他の機器と情報/データを交換することを可能にする。
【0086】
計算ユニット501は、様々な処理と計算能力を備える汎用および/または専用の処理コンポーネントである。計算ユニット501のいくつかの例は、中央処理装置(CPU)、グラフィックス処理ユニット(GPU)、様々な専用の人工知能(AI)計算チップ、様々な機械学習モデルアルゴリズムを実行する計算ユニット、デジタル信号プロセッサ(DSP)、および任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット501は、事前トレーニングモデルの取得方法などの上記の様々な方法と処理を実行する。例えば、いくつかの実施例では、事前トレーニングモデルの取得方法は、記憶ユニット508などの機械読み取り可能な媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実現することができる。
【0087】
いくつかの実施例では、コンピュータプログラムの一部または全部は、ROM502および/または通信ユニット509を介して電子機器500にロードおよび/またはインストールされる。コンピュータプログラムがRAM503にロードされて計算ユニット501によって実行される場合、上記の事前トレーニングモデルの取得方法の一つまたは複数のステップを実行することができる。代替的に、他の実施例では、計算ユニット501は、他の任意の適切な方式(例えば、ファームウェアによって)を介して事前トレーニングモデルの取得方法を実行するように構成されることができる。
【0088】
本明細書で説明されるシステムと技術の様々な実施方式は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップシステム(SOC)、ロードプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現することができる。これらの様々な実施方式は、一つ又は複数のコンピュータプログラムで実施されることを含むことができ、当該一つ又は複数のコンピュータプログラムは、少なくとも一つのプログラマブルプロセッサを含むプログラム可能なシステムで実行及び/又は解釈されることができ、当該プログラマブルプロセッサは、特定用途向け又は汎用プログラマブルプロセッサであってもよく、ストレージシステム、少なくとも一つの入力装置、及び少なくとも一つの出力装置からデータ及び命令を受信し、データ及び命令を当該ストレージシステム、当該少なくとも一つの入力装置、及び当該少なくとも一つの出力装置に伝送することができる。
【0089】
本開示の方法を実施するためのプログラムコードは、一つまたは複数のプログラミング言語の任意の組み合わせを使用して作成することができる。これらのプログラムコードは、プログラムコードがプロセッサまたはコントローラによって実行される時にフローチャートおよび/またはブロック図に規定された機能/動作が実施されるように、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサまたはコントローラに提供することができる。プログラムコードは、完全に機械上で実行されたり、部分的に機械上で実行されたり、独立したソフトウェアパッケージとして部分的に機械上で実行され、部分的にリモート機械上実行されたり、または完全にリモート機械またはサーバ上で実行されたりすることができる。
【0090】
本開示の文脈において、機械読み取り可能な媒体は、命令実行システム、装置、または機器の使用、または命令実行システム、装置または機器と組み合わせて使用するプログラムを含むか、または記憶することができる有形の媒体であってもよい。機械読み取り可能な媒体は、機械読み取り可能な信号媒体または機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子、磁気、光学、電磁気、赤外線、または半導体システム、装置または機器、または上記の内容の任意の適切な組み合わせを含むが、これらに限定されない。機械読み取り可能な記憶媒体のより具体的な例は、一つまたは複数のワイヤに基づく電気接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM またはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光学記憶装置、磁気記憶装置、または上記の内容の任意の適切な組み合わせを含む。
【0091】
ユーザとのインタラクションを提供するために、コンピュータ上でここで説明されているシステム及び技術を実施することができ、当該コンピュータは、ユーザに情報を表示するためのディスプレイ装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有し、ユーザは、当該キーボード及び当該ポインティングデバイスによって入力をコンピュータに提供することができる。他の種類の装置は、ユーザとのインタラクションを提供するために用いられることもでき、例えば、ユーザに提供されるフィードバックは、任意の形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形式(音響入力と、音声入力と、触覚入力とを含む)でユーザからの入力を受信することができる。
【0092】
ここで説明されるシステム及び技術は、バックエンドコンポーネントを含む計算システム(例えば、データサーバとする)、又はミドルウェアコンポーネントを含む計算システム(例えば、アプリケーションサーバー)、又はフロントエンドコンポーネントを含む計算システム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータ、ユーザは、当該グラフィカルユーザインタフェース又は当該ウェブブラウザによってここで説明されるシステム及び技術の実施方式とインタラクションする)、又はこのようなバックエンドコンポーネントと、ミドルウェアコンポーネントと、フロントエンドコンポーネントの任意の組み合わせを含む計算システムで実施することができる。任意の形式又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によってシステムのコンポーネントを相互に接続されることができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)と、ワイドエリアネットワーク(WAN)と、インターネットと、ブロックチェーンネットワークと、を含む。
【0093】
コンピュータシステムは、クライアントとサーバとを含むことができる。クライアントとサーバは、一般に、互いに離れており、通常に通信ネットワークを介してインタラクションする。対応するコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによってクライアントとサーバとの関係が生成される。
【0094】
上記に示される様々な形式のフローを使用して、ステップを並べ替え、追加、又は削除することができることを理解されたい。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次的に実行されてもよいし、異なる順序で実行されてもよいが、本開示で開示されている技術案が所望の結果を実現することができれば、本明細書では限定されない。
【0095】
上記の具体的な実施方式は、本開示に対する保護範囲の制限を構成するものではない。当業者は、設計要求と他の要因に基づいて、様々な修正、組み合わせ、サブコンビネーション、及び代替を行うことができる。任意の本開示の精神と原則内で行われる修正、同等の置換、及び改善などは、いずれも本開示の保護範囲内に含まれなければならない。
図1
図2
図3
図4
図5