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

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

▶ 京▲東▼科技控股股▲フン▼有限公司の特許一覧

特表2024-512628キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置
<>
  • 特表-キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置 図1
  • 特表-キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置 図2
  • 特表-キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置 図3
  • 特表-キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置 図4
  • 特表-キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置 図5
  • 特表-キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置 図6
  • 特表-キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-19
(54)【発明の名称】キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置
(51)【国際特許分類】
   G06N 3/0475 20230101AFI20240312BHJP
   G06N 3/094 20230101ALI20240312BHJP
   G06V 10/82 20220101ALI20240312BHJP
   G06F 40/56 20200101ALI20240312BHJP
   G06F 40/44 20200101ALI20240312BHJP
【FI】
G06N3/0475
G06N3/094
G06V10/82
G06F40/56
G06F40/44
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023559796
(86)(22)【出願日】2022-01-06
(85)【翻訳文提出日】2023-09-27
(86)【国際出願番号】 CN2022070476
(87)【国際公開番号】W WO2022206094
(87)【国際公開日】2022-10-06
(31)【優先権主張番号】202110338045.X
(32)【優先日】2021-03-30
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】521507084
【氏名又は名称】京▲東▼科技控股股▲フン▼有限公司
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】潘 ▲イン▼▲ウェイ▼
(72)【発明者】
【氏名】李 ▲業▼豪
(72)【発明者】
【氏名】姚 霆
(72)【発明者】
【氏名】▲梅▼ 涛
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096DA02
5L096HA11
5L096KA04
(57)【要約】
本開示の実施形態は、キャプション生成器を生成するための方法および装置、ならびにキャプションを出力するための方法および装置を開示する。該方法の具体的な実施形態は、サンプル画像セットを取得するステップと、サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するステップと、オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するステップと、画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、第1のオブジェクトセットと第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するステップと、擬似画像文ペアのセットをサンプルセットとして文生成器をトレーニングし、キャプション生成器を取得するステップと、を含む。
【特許請求の範囲】
【請求項1】
キャプション生成器を生成するための方法であって、
サンプル画像セットを取得するステップと、
前記サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するステップと、
前記オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するステップと、
前記画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、前記第1のオブジェクトセットと前記第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するステップと、
前記擬似画像文ペアのセットをサンプルセットとして前記文生成器をトレーニングしてキャプション生成器を取得するステップと、
を含む、キャプション生成器を生成するための方法。
【請求項2】
文識別器によって前記キャプション生成器を敵対的トレーニングして、前記キャプション生成器を最適化する方法と、
前記キャプション生成器によって識別されたオブジェクトの、前記キャプション生成器から出力された文における包含度によって、前記キャプション生成器を最適化する方法と、
クエリ画像、ポジティブ画像およびネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関性に基づいて、前記キャプション生成器を最適化する方法と、
のうちの少なくとも1つによって、前記キャプション生成器を最適化するステップをさらに含む、請求項1に記載のキャプション生成器を生成するための方法。
【請求項3】
文識別器によって前記キャプション生成器を敵対的トレーニングして、前記キャプション生成器を最適化する方法は、
予め設定された、画像と対応する実文とを含む第1のサンプルからなる第1のサンプルセットを抽出するステップと、
予め作成された敵対的生成ネットワークを抽出するステップであって、前記敵対的生成ネットワークは、入力された画像を画像符号化した後に文の復号化を行って擬似文を取得するためのキャプション生成器と、入力された文が前記キャプション生成器から出力された擬似文であるか否かを判断するための文識別器とを備える、ステップと、
機械学習方法に基づいて、前記第1のサンプルセットから第1のサンプルを選択して第1のトレーニングステップを実行するステップと、を含み、
前記第1のトレーニングステップは、
選択された第1のサンプルにおける画像を前記キャプション生成器に入力して、擬似文を 出力するステップと、
前記擬似文と、選択された第1のサンプルにおける実文とを前記文識別器に入力して、識別結果を入力するステップと、
出力された識別結果に基づいて、前記文識別器の正解率を統計するステップと、
前記正解率が所定値に達した場合、前記キャプション生成器のトレーニングが完了したと判定するステップとを含む
請求項2に記載のキャプション生成器を生成するための方法。
【請求項4】
前記正解率が前記所定値に達していない場合、前記文識別器の敵対的損失を計算し、前記敵対的損失が小さくなるように前記文識別器の関連パラメータを調整し、前記第1のサンプルセットから第1のサンプルを再選択し、前記第1のトレーニングステップを引き続き実行するステップをさらに含む、請求項3に記載のキャプション生成器を生成するための方法。
【請求項5】
前記正解率が前記所定値に達していない場合、前記キャプション生成器の敵対的報酬を計算し、前記敵対的報酬が増加するように前記キャプション生成器の関連パラメータを調整し、前記第1のサンプルセットから第1のサンプルを再選択し、前記第1のトレーニングステップを引き続き実行するステップをさらに含む、請求項3に記載のキャプション生成器を生成するための方法。
【請求項6】
前記キャプション生成器によって識別されたオブジェクトの、前記キャプション生成器から出力された文における包含度によって、前記キャプション生成器を最適化する方法は、
予め設定された、画像を含む第2のサンプルからなる第2のサンプルセットを抽出するステップと、
機械学習方法に基づいて、前記第2のサンプルセットからサンプルを選択して第2のトレーニングステップを実行するステップと、を含み、
前記第2のトレーニングステップは、
選択された第2のサンプルにおける画像を前記キャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、
前記サンプルオブジェクトセットをキャプション生成器の文デコーダに入力して擬似文を出力するステップと、
前記擬似文に前記サンプルオブジェクトセットのサンプルオブジェクトが含まれる信頼度平均スコアを計算して、前記擬似文のオブジェクト包含報酬とするステップと、
前記オブジェクト包含報酬が所定の包含報酬閾値に達した場合、前記キャプション生成器のトレーニングが完了したと判定するステップと、を含む
請求項2に記載のキャプション生成器を生成するための方法。
【請求項7】
前記オブジェクト包含報酬が前記所定の包含報酬閾値に達していない場合、前記オブジェクト包含報酬が増加するように前記キャプション生成器の関連パラメータを調整し、前記第2のサンプルセットから第2のサンプルを再選択し、前記第2のトレーニングステップを引き続き実行するステップをさらに含む、請求項6に記載のキャプション生成器を生成するための方法。
【請求項8】
画像トリプレットと、対応する生成文との間の意味的相関性に基づいて、前記キャプション生成器を最適化する方法は、
予め設定された第3のサンプルセットを抽出するステップであって、第3のサンプルのそれぞれはクエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と共通のオブジェクトがない、ステップと、
機械学習方法に基づいて、前記第3のサンプルセットから第3のサンプルを選択して第3のトレーニングステップを実行するステップと、を含み、
前記第3のトレーニングステップは、
選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれ前記キャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文を出力するステップと、
クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、
前記第1の意味的類似度と前記第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、
前記自己監視トリプレット損失が所定の損失閾値未満である場合、前記キャプション生成器のトレーニングが完了したと判定するステップとを含む、請求項2に記載のキャプション生成器を生成するための方法。
【請求項9】
前記自己監視トリプレット損失が前記所定の損失閾値以上である場合、前記自己監視トリプレット損失が小さくなるように前記キャプション生成器の関連パラメータを調整し、前記第3のサンプルセットから第3のサンプルを再選択し、前記第3のトレーニングステップを引き続き実行するステップをさらに含む、請求項8に記載のキャプション生成器を生成するための方法。
【請求項10】
クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップは、
クエリ文、ポジティブ文およびネガティブ文に対して、それぞれ文中の各単語のオブジェクトベースの確率分布を計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、
クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップと、を含む、請求項8に記載のキャプション生成器を生成するための方法。
【請求項11】
敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の加重合計が所定の目標値より大きい場合、前記加重合計が小さくなるように、キャプション生成器の関連パラメータを調整するステップをさらに含む、請求項2~10のいずれか1項に記載のキャプション生成器を生成するための方法。
【請求項12】
前記画像エンコーダは、領域レベルの注意メカニズムを備えた2層のLSTMを含み、第1層のLSTMはトップダウンの注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTMは文を生成するための言語モデルである、請求項1~10のいずれか1項に記載のキャプション生成器を生成するための方法。
【請求項13】
処理対象の画像を取得するステップと、
請求項1~12のいずれか1項に記載のキャプション生成器を生成するための方法によって生成されたキャプション生成器に前記画像を入力し、前記画像に対応するキャプションを出力するステップと、を含む、キャプションを出力するための方法。
【請求項14】
キャプション生成器を生成するための装置であって、
サンプル画像セットを取得するように構成される取得ユニットと、
前記サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するように構成される符号化ユニットと、
前記オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するように構成されるグループ化ユニットと、
前記画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、前記第1のオブジェクトセットと前記第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するように構成される復号化ユニットと、
前記擬似画像文ペアのセットをサンプルセットとして前記文生成器をトレーニングしてキャプション生成器を取得するように構成されるトレーニングユニットと、を備える、キャプション生成器を生成するための装置。
【請求項15】
処理対象の画像を取得するように構成される取得ユニットと、
請求項1~12のいずれか1項に記載のキャプション生成器を生成するための方法によって生成されたキャプション生成器に前記画像を入力し、前記画像に対応するキャプションを出力するように構成される出力ユニットと、を備える、キャプションを出力するための装置。
【請求項16】
少なくとも1つのプロセッサと、少なくとも1つのコンピュータプログラムが格納されているメモリと、を備える電子機器であって、
前記少なくとも1つのコンピュータプログラムが前記少なくとも1つのプロセッサによって実行される場合、前記少なくとも1つのプロセッサが請求項1~13のいずれか1項に記載の方法を実現する、電子機器。
【請求項17】
プロセッサによって実行される場合、請求項1~13のいずれか1項に記載の方法を実現するコンピュータプログラムが格納されているコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
<関連出願の相互参照>
本開示は、2021年3月30日に提出した、出願番号が202110338045.X、発明の名称が「キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置」である中国特許出願の優先権を主張し、当該出願の全文が引用により本開示に組み込まれる。
【0002】
本開示の実施形態はコンピュータ技術分野に関し、具体的には、キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置に関する。
【背景技術】
【0003】
イメージキャプショニングは、自然言語文で画像を自動的に説明する技術であり、新規で急速に成長している研究テーマである。
【0004】
関連技術では、ほとんどのキャプション生成器は注釈付きの画像-文ペアでトレーニングされ、まず、入力画像を畳み込みニューラルネットワークで符号化し、次に、再帰型ニューラルネットワークで文を復号化するコーデックパラダイムに従って動作する。一連の作業により画像キャプションの注意メカニズムをアップグレードして、視覚コンテンツと自然文との間のクロスドメインベースを強化している。
【0005】
関連技術は大量のトレーニング用の画像文ペアに大きく依存しており、一方では、これらのトレーニング用の画像文ペアの取得は極めて高価で時間がかかり、他方では、トレーニング用の画像文ペアに過度に依存すると、キャプション生成器の広範な適用が妨げられる。
【発明の概要】
【0006】
本開示の実施形態は、キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置を提供する。
【0007】
本開示の実施形態は、サンプル画像セットを取得するステップと、サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するステップと、オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するステップと、画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、第1のオブジェクトセットと第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するステップと、擬似画像文ペアのセットをサンプルセットとして文生成器をトレーニングし、キャプション生成器を取得するステップと、を含む、キャプション生成器を生成するための方法を提供する。
【0008】
一部の実施形態において、該方法は、文識別器によってキャプション生成器を敵対的トレーニングして、キャプション生成器を最適化する方法と、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法と、クエリ画像、ポジティブ画像、ネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関性によって、キャプション生成器を最適化する方法とのうちの少なくとも1つによって、キャプション生成器を最適化するステップをさらに含む。
【0009】
いくつかの実施形態において、文識別器によってキャプション生成器を敵対的トレーニングしてキャプション生成器を最適化する方法は、画像および対応する実文を含む第1のサンプルからなる、予め設定された第1のサンプルセットを抽出するステップと、入力された画像を画像符号化した後、文復号化を行って擬似文を取得するためのキャプション生成器と、入力された文がキャプション生成器から出力された擬似文であるか否かを判定するための文識別器とを備える、予め作成された敵対的生成ネットワークを抽出するステップと、機械学習方法に基づいて、第1のサンプルセットから第1のサンプルを選択し、選択された第1のサンプルにおける画像をキャプション生成器に入力して、擬似文を出力するステップと、擬似文および選択された第1のサンプルにおける実文を文識別器に入力し、識別結果を入力するステップと、出力された識別結果に基づいて、文識別器の正解率を統計するステップと、正解率が所定値に達した場合、キャプション生成器のトレーニングが完了したと判定するステップとを含む、第1のトレーニングステップを実行するステップと、を含む。
【0010】
いくつかの実施形態において、該方法は、正解率が所定値に達していない場合、文識別器の敵対的損失を計算し、敵対的損失が小さくなるように文識別器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するステップをさらに含む。
【0011】
いくつかの実施形態において、該方法は、正解率が所定値に達していない場合、キャプション生成器の敵対的報酬を計算し、敵対的報酬が増加するようにキャプション生成器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するステップをさらに含む。
【0012】
いくつかの実施形態において、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法は、画像を含む第2のサンプルからなる、予め設定された第2のサンプルセットを抽出するステップと、機械学習方法に基づいて、第2のサンプルセットからサンプルを選択し、選択された第2のサンプルにおける画像をキャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、サンプルオブジェクトセットをキャプション生成器の文デコーダに入力し、擬似文を出力するステップと、擬似文に、サンプルオブジェクトセットにおけるサンプルオブジェクトを含む信頼度平均スコアを計算し、擬似文のオブジェクト包含報酬とするステップと、オブジェクト包含報酬が所定の包含報酬閾値に達した場合、キャプション生成器のトレーニングが完了したと判定するステップと、を含む第2のトレーニングステップを実行するステップと、を含む。
【0013】
いくつかの実施形態において、該方法は、オブジェクト包含報酬が所定の包含報酬閾値に達していない場合、オブジェクト包含報酬が増加するようにキャプション生成器の関連パラメータを調整し、第2のサンプルセットから第2のサンプルを再選択し、第2のトレーニングステップを引き続き実行するステップをさらに含む。
【0014】
いくつかの実施形態において、画像トリプレットと対応する生成文との間の意味的相関性によって、キャプション生成器を最適化する方法は、クエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と共通のオブジェクトがない第3のサンプルからなる、予め設定された第3のサンプルセットを抽出するステップと、機械学習方法に基づき、第3のサンプルセットから第3のサンプルを選択し、選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれキャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文を出力するステップと、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、第1の意味的類似度と第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、自己監視トリプレット損失が所定の損失閾値未満である場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む第3のトレーニングステップを実行するステップと、を含む。
【0015】
いくつかの実施形態において、該方法は、自己監視トリプレット損失が所定の損失閾値以上である場合、自己監視トリプレット損失が小さくなるようにキャプション生成器の関連パラメータを調整し、第3のサンプルセットから第3のサンプルを再選択し、第3のトレーニングステップを引き続き実行するステップをさらに含む。
【0016】
いくつかの実施形態において、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップは、クエリ文、ポジティブ文およびネガティブ文に対して、文中における各単語のオブジェクトベースの確率分布をそれぞれ計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップと、を含む。
【0017】
いくつかの実施形態において、該方法は、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の加重合計が所定の目標値より大きい場合、加重合計が小さくなるように、キャプション生成器の関連パラメータを調整するステップをさらに含む。
【0018】
いくつかの実施形態において、画像エンコーダは、領域レベルの注意メカニズムを備えた2層のLSTMを含み、第1層のLSTMはトップダウンの注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTMは文を生成するための言語モデルである。
【0019】
本開示の実施形態は、処理対象の画像を取得するステップと、キャプション生成器を生成するための上記方法によって生成されたキャプション生成器に画像を入力し、画像に対応するキャプションを出力するステップと、を含む、キャプションを出力するための方法をさらに提供する。
【0020】
本開示の実施形態は、サンプル画像セットを取得するように構成される取得ユニットと、サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するように構成される符号化ユニットと、オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するように構成されるグループ化ユニットと、画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、第1のオブジェクトセットと第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するように構成される復号化ユニットと、擬似画像文ペアのセットをサンプルセットとして文生成器をトレーニングし、キャプション生成器を取得するように構成されるトレーニングユニットと、を備える、キャプション生成器を生成するための装置をさらに提供する。
【0021】
いくつかの実施形態において、該装置は、文識別器によってキャプション生成器を敵対的トレーニングして、キャプション生成器を最適化する方法、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法、クエリ画像、ポジティブ画像、ネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関によって、キャプション生成器を最適化する方法の少なくとも1つによって、キャプション生成器を最適化するように構成される最適化ユニットをさらに備える。
【0022】
いくつかの実施形態において、最適化ユニットは、さらに、画像および対応する実文を含む第1のサンプルからなる、予め設定された第1のサンプルセットを抽出するステップと、入力された画像を画像符号化した後、文の復号化を行って、擬似文を取得するためのキャプション生成器と、入力された文がキャプション生成器から出力された擬似文であるか否かを判定するための文識別器とを備える、予め作成された敵対的生成ネットワークを抽出するステップと、機械学習方法に基づいて、第1のサンプルセットから第1のサンプルを選択し、選択された第1のサンプルにおける画像をキャプション生成器に入力して、擬似文を出力するステップと、擬似文と選択された第1のサンプルにおける実文を文識別器に入力し、識別結果を入力するステップと、出力された識別結果に基づいて、文識別器の正解率を統計するステップと、正解率が所定値に達した場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む、第1のトレーニングステップを実行するステップと、実行するように構成される。
【0023】
いくつかの実施形態において、最適化ユニットは、さらに、正解率が所定値に達していない場合、文識別器の敵対的損失を計算し、敵対的損失が小さくなるように文識別器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するように構成される。
【0024】
いくつかの実施形態において、最適化ユニットは、さらに、正解率が所定値に達していない場合、キャプション生成器の敵対的報酬を計算し、敵対的報酬が増加するようにキャプション生成器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するように構成される。
【0025】
いくつかの実施形態において、最適化ユニットは、さらに、画像を含む第2のサンプルからなる、予め設定された第2のサンプルセットを抽出するステップと、機械学習方法に基づいて、第2のサンプルセットからサンプルを選択し、選択された第2のサンプルにおける画像をキャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、サンプルオブジェクトセットをキャプション生成器の文デコーダに入力し、擬似文を出力するステップと、擬似文に、サンプルオブジェクトセットにおけるサンプルオブジェクトを含む信頼度平均スコアを計算し、擬似文のオブジェクト包含報酬とするステップと、オブジェクト包含報酬が所定の包含報酬閾値に達した場合、キャプション生成器のトレーニングが完了したと判断するステップと、を含む第2のトレーニングステップを実行するステップと、を実行するように構成される。
【0026】
いくつかの実施形態において、最適化ユニットは、さらに、オブジェクト包含報酬が所定の包含報酬閾値に達していない場合、オブジェクト包含報酬が増加するようにキャプション生成器の関連パラメータを調整し、第2のサンプルセットから第2のサンプルを再選択し、第2のトレーニングステップを引き続き実行するように構成される。
【0027】
いくつかの実施形態において、最適化ユニットは、さらに、クエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と共通のオブジェクトがない第3のサンプルからなる、予め設定された第3のサンプルセットを抽出するステップと、機械学習装置に基づいて、第3のサンプルセットから第3のサンプルを選択し、選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれキャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文を出力するステップと、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、第1の意味的類似度と第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、自己監視トリプレット損失が所定の損失閾値未満である場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む第3のトレーニングステップを実行するステップとを実行するように構成される。
【0028】
いくつかの実施形態において、最適化ユニットは、さらに、自己監視トリプレット損失が所定の損失閾値以上である場合、自己監視トリプレット損失が小さくなるようにキャプション生成器の関連パラメータを調整し、第3のサンプルセットから第3のサンプルを再選択し、第3のトレーニングステップを引き続き実行するように構成される。
【0029】
いくつかの実施形態において、最適化ユニットは、さらに、クエリ文、ポジティブ文およびネガティブ文に対して、それぞれ文中における各単語のオブジェクトベースの確率分布を計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップとを実行するように構成される。
【0030】
いくつかの実施形態において、最適化ユニットは、さらに、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の加重合計が所定の目標値より大きい場合、加重合計が小さくなるように、キャプション生成器の関連パラメータを調整するように構成される。
【0031】
いくつかの実施形態において、画像エンコーダは、領域レベルの注意メカニズムを備えた2層のLSTMを含み、第1層のLSTMはトップダウンの注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTMは文を生成するための言語モデルである。
【0032】
本開示の実施形態は、処理対象の画像を取得するように構成される取得ユニットと、キャプション生成器を生成するための上記方法によって生成されたキャプション生成器に画像を入力し、画像に対応するキャプションを出力するように構成される出力ユニットと、を備える、キャプションを出力するための装置を提供する。
【0033】
本開示の実施形態は、少なくとも1つのプロセッサと、少なくとも1つのコンピュータプログラムが格納されているメモリと、を備え、少なくとも1つのコンピュータプログラムが少なくとも1つのプロセッサによって実行される場合、少なくとも1つのプロセッサが上記のキャプション生成器を生成するための方法を実現する電子機器を提供する。
【0034】
本開示の実施形態は、プロセッサにより実行される場合、上記のキャプション生成器を生成するための方法を実現するコンピュータプログラムが格納されているコンピュータ可読媒体を提供する。
【0035】
以下の図面を参照して行われる非限定的な実施形態の詳細な説明を閲読することにより、本開示のその他の特徴、目的および利点がより明らかになる。
【図面の簡単な説明】
【0036】
図1】本開示の一実施形態が適用可能な例示的なシステムアーキテクチャである。
図2】本開示によるキャプション生成器を生成するための方法の一実施形態のフローチャートである。
図3】本開示によるキャプション生成器を生成するための方法の一つの応用シーンの概略図である。
図4】本開示によるキャプションを出力するための方法の一つの実施形態のフローチャートである。
図5】本開示によるキャプション生成器を生成するための装置の一実施形態の構造概略図である。
図6】本開示によるキャプションを出力するための装置の一実施形態の構造概略図である。
図7】本開示の一実施形態の電子機器を実装するのに適したコンピュータシステムの構造概略図である。
【発明を実施するための形態】
【0037】
以下、添付図面に実施形態を組み合わせて本開示をさらに詳細に説明する。本明細書で説明する具体的な実施形態は、単に関連する技術的手段を解釈するためのものであって、該技術的手段に限定されるものではないことを理解されたい。なお、説明の便宜上、図面には当該技術的手段に関連する部分のみが示されている。
【0038】
そして、本開示における実施形態および実施形態における特徴は矛盾しない限り、互いに組み合わせることができることを理解すべきである。以下、添付図面を参照し、実施形態を組み合わせて本開示を詳細に説明する。
【0039】
図1は、本開示の実施形態のキャプション生成器を生成するための方法、キャプション生成器を生成するための装置、キャプションを出力するための方法またはキャプションを出力するための装置を適用することができる例示的なシステムアーキテクチャー100を示す。
【0040】
図1に示されるように、システムアーキテクチャー100は、端末101、102、ネットワーク103、データベースサーバ104およびサーバ105を含むことができる。ネットワーク103は、端末101、102、データベースサーバ104とサーバ105との間に通信リンクを提供するための媒体として使用される。ネットワーク103は、例えば、有線、無線通信リンクまたは光ファイバケーブルなどの様々な接続タイプを含むことができる。
【0041】
ユーザ110は、端末101、102を使用してネットワーク103を介してサーバ105とインタラクションを行って、メッセージなどを送受信することができる。端末101、102には、モデルトレーニングアプリケーション、キャプション生成アプリケーション、画像処理アプリケーション、ショッピングアプリケーション、支払いアプリケーション、Webブラウザおよびインスタントメッセージングツールなどの様々なクライアントアプリケーションがインストールされることができる。
【0042】
端末101、102は、ハードウェアであってもよいし、ソフトウェアであってもよい。端末101、102がハードウェアである場合、スマートフォン、タブレットコンピュータ、電子書籍リーダー、MP3プレーヤー(Moving Picture Experts Group Audio Layer III、ムービングピクチャーエキスパートグループオーディオレイヤー3)、ラップトップコンピュータおよびデスクトップコンピュータなどを含むがこれらに限定されない、ディスプレイを有する様々な電子機器であってもよい。端末101、102がソフトウェアである場合、上記に挙げられた電子機器にインストールされることができる。それらは、複数のソフトウェアまたはソフトウェアモジュール(例えば、分散サービスを提供するために使用される)として実装されてもよいし、単独のソフトウェアまたはソフトウェアモジュールとして実装されてもよい。ここでは特に限定されない。
【0043】
端末101、102がハードウェアである場合、画像採集装置が搭載されてもよい。画像採集装置は、カメラ、センサなど、画像採集機能を実現可能な様々な装置であってもよい。ユーザ110は、端末101および102上の画像採集装置を使用して、様々なシーンの画像を採集することができる。
【0044】
データベースサーバ104は、様々なサービスを提供するデータベースサーバであってもよい。例えば、データベースサーバにサンプルセットを格納することができる。サンプルセットには大量のサンプルが含まれている。サンプルは、サンプル画像およびサンプル画像に対応する文を含むことができる。このように、ユーザ110は、端末101、102を介して、データベースサーバ104に格納されているサンプルセットからサンプルを選択することができる。
【0045】
サーバ105はまた、様々なサービスを提供するサーバ、例えば、端末101および102に表示される様々なアプリケーションをサポートするバックエンドサーバであってもよい。バックエンドサーバは、端末101および102によって送信されたサンプルセットにおけるサンプルを使用して初期モデルをトレーニングし、トレーニング結果(生成されたキャプション生成器など)を端末101および102に送信することができる。このようにして、ユーザは生成されたキャプション生成器を適用して、画像にキャプションを生成することができる。
【0046】
ここでのデータベースサーバ104およびサーバ105は同様にハードウェアであってもよいし、ソフトウェアであってもよい。ハードウェアである場合、複数のサーバで構成される分散サーバクラスターとして実装されてもよいし、単一のサーバとして実装されてもよい。ソフトウェアである場合、複数のソフトウェアまたはソフトウェアモジュール(例えば、分散サービスを提供するために使用される)として実装されてもよいし、単一のソフトウェアまたはソフトウェアモジュールとして実装されてもよい。ここでは特に限定されない。
【0047】
なお、本開示の実施形態により提供されるキャプション生成器を生成するための方法またはキャプションを出力するための方法は、一般にサーバ105によって実行される。従って、キャプション生成器を生成するための装置またはキャプションを出力するための装置は、一般にサーバ105に設けられる。
【0048】
サーバ105がデータベースサーバ104の関連機能を実装できる場合、システムアーキテクチャ100はデータベースサーバ104を設けなくてもよいことに留意されたい。
【0049】
図1の端末、ネットワーク、データベースサーバおよびサーバの数は単なる例示であることを理解すべきである。実装のニーズに応じて、任意の数の端末、ネットワーク、データベースサーバおよびサーバを有することができる。
【0050】
引き続き、図2を参照し、本開示によるキャプション生成器を生成するための方法の一実施形態のフロー200を示す。キャプション生成器を生成するための該方法は、以下のステップを含んでもよい。
【0051】
ステップ201では、サンプル画像セットを取得する。
【0052】
本実施形態では、キャプション生成器を生成するための方法の実行主体(例えば、図1に示すサーバ)は、データベースサーバから予め記憶されているサンプル画像セットを取得することができる。また、端末で撮影した画像をサンプル画像として端末から取得することができる。
【0053】
ステップ202では、文生成器の画像エンコーダにサンプル画像セットを入力し、オブジェクトセットを出力する。
【0054】
本実施形態では、文生成器は初期キャプション生成器であり、入力された画像を文に変換するニューラルネットワークである。文生成器は、画像エンコーダおよび文デコーダを含んでもよい。
【0055】
画像エンコーダは、入力画像ごとに中間表現を生成し、本開示では、画像エンコーダとして最も一般的なオブジェクト検出モデル(Faster R-CNN)を使用して画像におけるオブジェクトを検出し、実際の応用では他の画像エンコーダを使用することもできる。各画像I
を一組の顕著な画像領域
【数1】
に符号化し、これには、人、花、草、木、椅子、犬など、検出されたK個のオブジェクトが含まれる。
【0056】
ステップ203では、オブジェクトセットを第1のオブジェクトセットと第2のオブジェクトセットにグループ化する。
【0057】
本実施形態では、第1のオブジェクトセットは、所定のオブジェクトセットに含まれているオブジェクトセットであり、第2のオブジェクトセットは、所定のオブジェクトセットから除外されたオブジェクトセットである。技術上、入力画像Iが与えられると、オブジェクト検出モデル(Faster R-CNNなど)によって、
【数2】
例えば、所定のオブジェクトセットが建物、車、人、花、草、木を含み、オブジェクトセットが人、花、草、木、椅子、犬を含む場合、第1のオブジェクトセット(所定のオブジェクトセットに含まれているオブジェクトセット)には、人、花、草、木が含まれ、第2のオブジェクトセット(除外されたオブジェクトセット)には、椅子、犬が含まれる。
【0058】
ステップ204では、画像エンコーダによって出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、第1のオブジェクトセットおよび第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成する。
【0059】
本実施形態において、画像エンコーダによって生成された中間表現が与えられると、出力された文は文デコーダによって逐語的に復号される。ボトムアップ注意モデル(Bottom-up and Top-Down)を参照すると、文デコーダは領域レベルの注意メカニズムを備えた2層のLSTM(Long Short-Term Memory,長短期記憶ネットワーク)として実装できる。第1層のLSTM(LSTM)はトップダウン注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTM(LSTM)は文を生成するための言語モデルである。
【数3】
(ここで、Wは線形埋め込み行列であり、単語予測のために、h を語彙空間に射影する)が取得される。
【0060】
事前トレーニングされたキャプション生成器を使用して擬似画像文ペアを生成する自然な方法は、ビームサーチ(beam search)を使用する方法であり、これは、各復号ステップでビームBを維持し、b個の最も可能性の高い文の一部を含むヒューリスティックサーチアルゴリズムである。ただし、入力画像と出力文の間の意味的相関性は推論時の文生成に十分に活用されていない。この問題を緩和するために、本開示は、識別されたオブジェクトが含まれ、無関係なオブジェクトが除外されるようにビームサーチが再構築された、意味的制約ビームサーチを設計した。
【0061】
技術上、入力画像Iが与えられると、オブジェクト検出モデル(Faster R-CNNなど)によって、
【数4】
識別された
【数5】
におけるオブジェクトおよび除外された
【数6】
におけるオブジェクトを制約条件とし、有限状態マシン(Finite-state machine)を使用してこの制約を実行し、これにより、有限状態マシンは、オブジェクト包含制約をすべて満たす単語シーケンスを識別し、ビームサーチアルゴリズムを有限状態マシンと組み合わせることができる。具体的には、
【数7】
したがって、有限状態マシンの設計では、状態を受け入れるための単語シーケンスが包含条件を満たすとともに、無関係なオブジェクトはすべて除外される必要がある。
【0062】
擬似画像文ペアのセットにおける各擬似画像文ペアは画像と文を含み、画像と文はペアでなくてもよい。
【0063】
ステップ205では、擬似画像文ペアのセットをサンプルセットとして文生成器をトレーニングし、キャプション生成器を取得する。
【0064】
本実施形態では、
【数8】
を使用して、擬似画像文ペアのセットを表すことができ、
【数9】
は生成された擬似文を表し、これらの擬似画像文ペアを使用して、次のクロスエントロピー損失を有するキャプション生成器を直接トレーニングできる。
【数10】

(ここで、θは文デコーダのパラメータを表す。)
【0065】
本実施形態のいくつかのオプション的な実施形態では、該方法は、文識別器によってキャプション生成器を敵対的トレーニングして、キャプション生成器を最適化する方法と、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法と、クエリ画像、ポジティブ画像、ネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関性によって、キャプション生成器を最適化する方法とのうちの少なくとも1つによって、キャプション生成器を最適化するステップをさらに含む。
【0066】
キャプション生成器は、上記のいずれかの方法で最適化することができ、また、いずれかの2つの方法を組み合わせて最適化することもできる。3つの方法を組み合わせてキャプション生成器を最適化することもできる。
【0067】
本実施形態のいくつかのオプション的な実施形態では、文識別器によって前記キャプション生成器を敵対的トレーニングして前記キャプション生成器を最適化する方法は、画像および対応する実文を含む第1のサンプルからなる、予め設定された第1のサンプルセットを抽出するステップと、入力された画像を画像符号化した後、文の復号化を行って、擬似文を取得するためのキャプション生成器と、入力された文が前記キャプション生成器から出力された擬似文であるか否かを判断するための文識別器とを備える、予め作成された敵対的生成ネットワークを抽出するステップと、機械学習方法に基づいて、前記第1のサンプルセットから第1のサンプルを選択し、選択された第1のサンプルにおける画像を前記キャプション生成器に入力し、擬似文を出力するステップと、前記擬似文と選択された第1のサンプルにおける実文を前記文識別器に入力し、識別結果を入力するステップと、出力された識別結果に基づいて、前記文識別器の正解率を統計するステップと、前記正解率が所定値に達した場合、前記キャプション生成器のトレーニングが完了したと判定するステップとを含む第1のトレーニングステップを実行するステップと、を含む。
【0068】
前記正解率が所定値に達していない場合、前記文識別器の敵対的損失を計算し、前記敵対的損失が小さくなるように前記文識別器の関連パラメータを調整し、前記第1のサンプルセットから第1のサンプルを再選択し、前記第1のトレーニングステップを引き続き実行する。
【0069】
前記正解率が所定値に達していない場合、前記キャプション生成器の敵対的報酬を計算し、前記敵対的報酬が増加するように前記キャプション生成器の関連パラメータを調整し、前記第1のサンプルセットから第1のサンプルを再選択し、前記第1のトレーニングステップを引き続き実行する。
【0070】
文識別器の構造は図3に示されている。文識別器とキャプション生成器(画像エンコーダと文デコーダを含む)は、敵対的生成ネットワークを構成する。文識別器は、入力文がペアになっていない文データセット内の実文であるか、それともキャプション生成器によって生成された擬似文であるかを識別するために使用される。再帰型ニューラルネットワーク(RNN)に基づく文モデリングでは、LSTMを使用して単語シーケンスをコンテキスト上で文レベルの表現形式に符号化して、実文/生成文を識別できる。
【数11】
【0071】
文識別器は、毎回のトレーニングプロセスにおいて、入力文が実文であるか、それともキャプション生成器によって生成された擬似文であるかを判断する。識別結果が正解であるか否かを統計し、正解率が所定値(例えば0.5)に達した場合、キャプション生成器の擬似文が効果的で文識別器を騙せることを意味し、トレーニングを終了する。そうでなければ、キャプション生成器および文識別器のネットワークパラメータを調整し、再びトレーニングする必要がある。まず、キャプション生成器のパラメータを固定し、文識別器のパラメータを調整してトレーニングし、次に、文識別器のパラメータを固定し、キャプション生成器のパラメータを調整してトレーニングする。文識別器とキャプション生成器のパラメータを交互に調整し、最終的に文識別器とキャプション生成器のトレーニングを完了する。実際に使用されるのはキャプション生成器である。
【0072】
敵対的報酬(Adversarial Reward)は、人間が書いたキャプションと見分けがつかない文を生成するために使用され、本開示では、生成された文分布が手動で説明されたものと一致するように、敵対的トレーニングと文レベルの敵対的報酬を使用している。
【数12】
【0073】
本実施形態のいくつかのオプション的な実施形態では、前記キャプション生成器によって識別されたオブジェクトの、前記キャプション生成器から出力された文における包含度によって、前記キャプション生成器を最適化する方法は、
画像を含む第2のサンプルからなる、予め設定された第2のサンプルセットを抽出するステップと、
機械学習方法に基づいて、前記第2のサンプルセットからサンプルを選択し、
選択された第2のサンプルにおける画像を前記キャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、前記サンプルオブジェクトセットをキャプション生成器の文デコーダに入力し、擬似文を出力するステップと、前記擬似文に前記サンプルオブジェクトセットにおけるサンプルオブジェクトが含まれる信頼度平均スコアを計算し、前記擬似文のオブジェクト包含報酬とするステップと、前記オブジェクト包含報酬が所定の包含報酬閾値に達した場合、前記キャプション生成器のトレーニングが完了したと判定するステップと、を含む第2のトレーニングステップを実行するステップと、を含む。
【0074】
前記オブジェクト包含報酬が所定の包含報酬閾値に達していない場合は、前記オブジェクト包含報酬が増加するように、前記キャプション生成器の関連パラメータを調整し、前記第2のサンプルセットから第2のサンプルを再選択し、前記第2のトレーニングステップを引き続き実行する。
【0075】
オブジェクト包含報酬(Object Inclusion Reward)は、敵対的報酬がキャプション生成器のみを強化してよりリアルな文を生成するため、画像コンテンツと生成文との間の意味的な相関性を説明する明確な概念はない。したがって、本開示はさらに、生成文に、識別されたオブジェクトを含むことを説明するキャプション生成器を奨励するために、出力文における識別されたオブジェクトの包含度を追加の自己監視オブジェクト(すなわち、オブジェクト包含報酬)とする。この方法によって、両者間の意味的相関性が強調され、生成されるキャプションの品質が向上する。
【数13】
【0076】
本実施形態のいくつかのオプション的な実施形態では、画像トリプレットと、対応する生成文との間の意味的相関性によって、前記キャプション生成器を最適化する方法は、クエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と如何なる共通のオブジェクトがない第3のサンプルからなる、予め設定された第3のサンプルセットを抽出するステップと、機械学習方法に基づき、前記第3のサンプルセットから第3のサンプルを選択し、選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれ前記キャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文をそれぞれ出力するステップと、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、前記第1の意味的類似度と前記第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、前記自己監視トリプレット損失が所定の損失閾値未満である場合、前記キャプション生成器のトレーニングが完了したと判定するステップとを含む第3のトレーニングステップを実行するステップと、を含む。
【0077】
前記自己監視トリプレット損失が所定の損失閾値以上である場合、前記自己監視トリプレット損失が小さくなるように前記キャプション生成器の関連パラメータを調整し、前記第3のサンプルセットから第3のサンプルを再選択し、前記第3のトレーニングステップを引き続き実行する。
【0078】
本実施形態のいくつかのオプション的な実施形態では、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算する前記ステップは、クエリ文、ポジティブ文およびネガティブ文に対して、文中における各単語のオブジェクトベースの確率分布をそれぞれ計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップと、を含む。
【0079】
自己監視トリプレット損失(Self-supervised Triplet Loss)は、オブジェクト包含報酬を使用した最適化において、画像間の類似または非類似の関係にかかわらず,各画像と対応する生成文との意味的相関性を独立に使用する。相対的な関係を探るという考えから、本開示は、文間の相対的な意味的順序を保持するために、キャプション生成器の学習をトリプレットの方法で意味的に制約する自己監視トリプレット損失を設計した。画像において識別された視覚オブジェクトに基づいて、各画像トリプレット(クエリ画像、ポジティブ画像、ネガティブ画像から構成される)が構築される。ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有するが、ネガティブ画像とクエリ画像には如何なる共通のオブジェクトがない。このような画像トリプレットが与えられた場合、クエリ画像の生成文がネガティブ画像の生成文よりもポジティブ画像の生成文に類似するように、キャプション生成器が最適化される。
【数14】
具体的には、復号ステップにおいて、1600個のオブジェクトの確率のみを保持することによって、予測された単語分布がオブジェクトベースの分布にさらに変換される。次に、
【数15】
の復号プロセスに沿ってすべてのオブジェクトベースの分布が累積され、それらに対して最大プーリングが実行され、対応するオブジェクトベースの文の特徴が生成される。
【0080】
オプション的に、最終的にモデル全体のトレーニングは、自己批判的シーケンストレーニングに敵対的報酬(Adversarial Reward)、オブジェクト包含報酬(Object Inclusion Reward)および自己監視トリプレット損失(Self-supervised Triplet Loss)を組み合わせることができ、全体的な目標勾配式は、
【数16】
(ここで、
【数17】
は、サンプリング文を表し、bは取得した敵対的およびオブジェクト包含報酬の組み合わせを表す。λ、λ、λはそれぞれ、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の重みを表し、重みは0にすることができる)に近似される。
【0081】
引き続き図3を参照し、図3は本実施形態によるキャプション生成器を生成するための方法の応用シーンの概略図である。図3の応用シーンでは、キャプション生成器の画像エンコーダFaster R-CNNにクエリ画像、ポジティブ画像およびネガティブ画像を入力し、オブジェクトセット{tree(木)、man(人)、bench(ベンチ)、grass(草)、dog(犬)…}を得る。所定のオブジェクトセットに基づいてオブジェクトセットをグループ化した後、キャプション生成器の文デコーダ(図3の下部の2層のLSTM構造)に入力し、オブジェクトセットの意味に基づいてビームサーチ復号を行い、擬似文「a man sitting on a bench near a tree」などを生成する。これらの擬似文および対応する画像は、キャプション生成器をトレーニングするための擬似画像文ペアのセットとして使用される(図3の上部の2層のLSTM構造は文デコーダを表す)。便宜上、画像エンコーダのパラメータを固定し、文デコーダのみをトレーニングしてもよいし、文デコーダのトレーニングが完了した後に画像エンコーダをトレーニングしてもよく、画像エンコーダと文デコーダを交互にトレーニングして最も性能の良いキャプション生成器を取得する。トレーニングプロセスにおいてクロスエントロピー方法を使用する。得られた上部の2層のLSTM構造のパラメータは下部の2層のLSTM構造に共有することができる。
【0082】
キャプション生成器のさらなる最適化を図って、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失を導入することができる。
1.敵対的報酬の最適化:「a cow stands in the back of a large truck」という実文を、キャプション生成器が生成した擬似文と一緒に文識別器に入力して識別する。識別の正解率が0.5未満の場合、敵対的損失を最小にするように文識別器のパラメータを調整し、次に、敵対的報酬を最大にするようにキャプション生成器のパラメータを調整する。文識別器とキャプション生成器を交互にトレーニング(調整)することで、キャプション生成器を最適化することができる。
2.オブジェクト包含報酬の最適化:識別されたオブジェクトの、キャプション生成器によって生成された擬似文における包含度を計算する。例えば、識別されたオブジェクトにtree、man、benchが含まれる。文1にtree(信頼度0.9)が含まれ、文2にtree(信頼度0.8)とman(信頼度0.7)が含まれている場合、文2のオブジェクト包含報酬は文1よりも高い。トレーニングの目的は、オブジェクト包含報酬をできるだけ改善することであり、パラメータを調整するたびにオブジェクト包含報酬が改善される。
3.自己監視トリプレット損失の最適化:図3の入力サンプルは、クエリ画像、ポジティブ画像、ネガティブ画像を含むトリプレットであってもよい。異なる画像は異なる擬似文を生成することができ、クエリ文、ポジティブ文およびネガティブ文の間の意味的類似性を比較することによって、自己監視トリプレット損失が確定される。トレーニングの目的は、ポジティブ文が意味的にクエリ文に近く、ネガティブ文がクエリ文と意味的に関連しないように自己監視トリプレット損失を減らすことである。
【0083】
トレーニング段階では、本開示は自己学習モードを採用し、擬似キャプションペアの生成及びキャプション生成器の再トレーニングの2つのプロセスを交互に行うことにより、モデル全体を最適化し、キャプション生成器を繰り返して改善するという目的を達成する。
【0084】
本開示は、意味的制約に基づく自己学習フレームワークを提案し、非ペア画像キャプションの自己学習アイデアを深く研究した。この問題は擬似文生成及び繰り返し最適化を構築するという観点から検討され、文生成の品質が徐々に向上された。さらに、意味的制約がモデルにうまく統合され、画像におけるオブジェクトの意味を十分に活用してキャプション生成器のトレーニングをガイドし、高度な教師なしキャプション生成方法が得られた。
【0085】
さらに図4を参照し、キャプションを出力するための方法のもう一つの実施形態のフロー400を示す。キャプションを出力するための該方法のフロー400は以下のステップを含む。
【0086】
ステップ401では、処理対象の画像を取得する。
【0087】
本実施形態において、キャプションを出力するための方法が実行される電子機器(例えば、図1に示されるサーバ)は、有線接続または無線接続を介してユーザがキャプション編集を行う端末から処理対象の画像を受信することができる。処理対象の画像は単一の画像であってもよく、ビデオファイルであってもよく、サーバがビデオをフレーム分割して、処理対象の画像を取得する。
【0088】
ステップ402では、キャプション生成器に画像を入力し、画像に対応するキャプションを出力する。
【0089】
本実施形態では、キャプション生成器は、ステップ201~205の方法によってトレーニングされたものである。キャプション生成器により画像にキャプションを自動的に付けることができる。キャプションが画像に直接出力されてもよいし、独立したファイルを生成して端末に返し、端末がユーザのニーズに応じてキャプションのフォーマットを設定して、画像に出力してもよい。キャプション生成器は、キャプションを入力できるだけでなく、画像エンコーダによって識別されたオブジェクトを出力することもでき、トレーニングプロセス中の意味的制約に使用され得る。
【0090】
ステップ401~402は、ステップ201~205と交互に実行されてもよい。ステップ401~402で生成されたキャプションは、ステップ201~205のトレーニングサンプルとして使用され得る。
【0091】
図4から分かるように、図2に対応する実施形態と比較して、本実施形態におけるキャプションを出力するための方法のフロー400は、キャプション生成器の応用ステップを具現する。このように、本実施形態で説明する技術的手段は、キャプション生成器を介してトレーニングサンプルを生成し、それらをキャプション生成器のトレーニングに再利用し、キャプションの生成とキャプション生成器の再トレーニングを交互に行うことにより、キャプション生成器を最適化し、キャプションの生成精度を向上させることができる。
【0092】
さらに図5を参照し、上記各図に示された方法の実現として、本開示はキャプション生成器を生成するための装置の一実施形態を提供し、該装置の実施形態は図2に示された方法の実施形態に対応し、該装置は様々な電子機器に適用可能である。
【0093】
図5に示すように、本実施形態のキャプション生成器を生成するための装置500は、取得ユニット501、符号化ユニット502、グループ化ユニット503、復号化ユニット504およびトレーニングユニット505を備える。取得ユニット501は、サンプル画像セットを取得するように構成され、符号化ユニット502は、前記サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するように構成され、グループ化ユニット503は、前記オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するように構成され、復号化ユニット504は、前記画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、前記第1のオブジェクトセットと前記第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するように構成され、トレーニングユニット505は、前記擬似画像文ペアのセットをサンプルセットとして前記文生成器をトレーニングし、キャプション生成器を取得するように構成される。
【0094】
本実施形態において、キャプション生成器を生成するための装置500の取得ユニット501、符号化ユニット502、グループ化ユニット503、復号化ユニット504およびトレーニングユニット505の特定の処理は、図2の対応実施形態におけるステップ201、ステップ202、ステップ203、ステップ204およびステップ205を参照することができる。
【0095】
本実施形態のいくつかのオプション的な実施形態では、該装置は、文識別器によってキャプション生成器を敵対的トレーニングして、キャプション生成器を最適化する方法と、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法と、クエリ画像、ポジティブ画像、ネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関によって、キャプション生成器を最適化する方法とのうちの少なくとも1つによって、キャプション生成器を最適化するように構成される最適化ユニット(図示せず)をさらに備える。
【0096】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、画像および対応する実文を含む第1のサンプルからなる、予め設定された第1のサンプルセットを抽出するステップと、入力された画像を画像符号化した後、文の復号化を行って擬似文を取得するためのキャプション生成器と、入力された文がキャプション生成器から出力された擬似文であるか否かを判断するための文識別器とを備える、予め作成された敵対的生成ネットワークを抽出するステップと、機械学習装置に基づいて、第1のサンプルセットから第1のサンプルを選択し、選択された第1のサンプルにおける画像をキャプション生成器に入力して、擬似文を出力するステップと、擬似文と選択された第1のサンプルの実文を文識別器に入力し、識別結果を入力するステップと、出力された識別結果に基づいて、文識別器の正解率を統計するステップと、正解率が所定値に達した場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む第1のトレーニングステップを実行するステップとを実行するように構成される。
【0097】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、正解率が所定値に達していない場合、文識別器の敵対的損失を計算し、敵対的損失が小さくなるように文識別器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するように構成される。
【0098】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、正解率が所定値に達していない場合、キャプション生成器の敵対的報酬を計算し、敵対的報酬が増加するようにキャプション生成器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するように構成される。
【0099】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、画像を含む第2のサンプルからなる、予め設定された第2のサンプルセットを抽出するステップと、機械学習装置に基づいて、第2のサンプルセットからサンプルを選択し、選択された第2のサンプルにおける画像をキャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、サンプルオブジェクトセットをキャプション生成器の文デコーダに入力し、擬似文を出力するステップと、擬似文に含まれるサンプルオブジェクトセットのサンプルオブジェクトの信頼度平均スコアを計算し、擬似文のオブジェクト包含報酬とするステップと、オブジェクト包含報酬が所定の包含報酬閾値に達した場合、キャプション生成器のトレーニングが完了したと判断するステップと、を含む第2のトレーニングステップを実行するステップと、を実行するように構成される。
【0100】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、オブジェクト包含報酬が所定の包含報酬閾値に達していない場合、オブジェクト包含報酬が増加するようにキャプション生成器の関連パラメータを調整し、第2のサンプルセットから第2のサンプルを再選択し、第2のトレーニングステップを引き続き実行するように構成される。
【0101】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、クエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と共通のオブジェクトがない第3のサンプルからなる、予め設定された第3のサンプルセットを抽出し、ネガティブ画像はクエリ画像と共通のオブジェクトがない、予め設定された第3のサンプルセットを抽出するステップと、機械学習装置に基づいて、第3のサンプルセットから第3のサンプルを選択し、選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれキャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文を出力するステップと、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、第1の意味的類似度と第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、自己監視トリプレット損失が所定の損失閾値の未満である場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む第3のトレーニングステップを実行するステップと、を実行するように構成される。
【0102】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、自己監視トリプレット損失が所定の損失閾値以上である場合、自己監視トリプレット損失が小さくなるようにキャプション生成器の関連パラメータを調整し、第3のサンプルセットから第3のサンプルを再選択し、第3のトレーニングステップを引き続き実行するように構成される。
【0103】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、クエリ文、ポジティブ文およびネガティブ文に対して、文中の各単語のオブジェクトベースの確率分布をそれぞれ計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップとを実行するように構成される。
【0104】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の加重合計が所定の目標値より大きい場合、加重合計が小さくなるように、キャプション生成器の関連パラメータを調整するように構成される。
【0105】
本実施形態のいくつかのオプション的な実施形態では、画像エンコーダには、領域レベルの注意メカニズムを備えた2層のLSTMを含み、第1層のLSTMはトップダウンの注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTMは文を生成するための言語モデルである。
【0106】
さらに図6を参照し、上記各図に示された方法の実現として、本開示はキャプションを出力するための装置の一実施形態を提供し、該装置の実施形態は図4に示された方法の実施形態に対応し、該装置は様々な電子機器に適用可能である。
【0107】
図6に示すように、本実施形態のキャプションを出力するための装置600は、処理対象の画像を取得するように構成される取得ユニット601と、装置500によって生成されたキャプション生成器に画像を入力し、画像に対応するキャプションを出力するように構成される出力ユニット602と、を備える。
【0108】
本開示の実施形態によれば、本開示はさらに電子機器および可読記憶媒体を提供する。
【0109】
図7は、本開示の実施形態を実施するために使用され得る例示的な電子機器700の概略ブロック図を示す。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークベンチ、パーソナル・デジタル・アシスタント、サーバ、ブレードサーバ、メインフレームコンピュータおよびその他適切なコンピュータなど様々な形態のデジタルコンピュータを表すことを目的としている。電子機器は、パーソナル・デジタル・アシスタント、携帯電話、スマートフォン、ウェアラブルデバイスおよびその他類似のコンピューティングデバイスなど、様々な形態のモバイルデバイスを表すこともできる。本明細書で示されているコンポーネント、それらの接続と関係およびそれらの機能は単なる例であり、本明細書で説明および/または要求されている本開示の実現を限定することを意図したものではない。
【0110】
図7に示すように、デバイス700は、読み取り専用メモリ(ROM)702に記憶されるコンピュータプログラムまたは記憶ユニット708からランダムアクセスメモリ(RAM)703にロードされるコンピュータプログラムに応じて、様々な適切な動作および処理を実行できる計算ユニット701を含む。RAM703には、デバイス700の動作に必要な様々なプログラムおよびデータが記憶されてもよい。計算ユニット701、ROM702およびRAM703は、バス704を介して互いに接続されている。入/出力(I/O)インターフェース705もバス704に接続される。
【0111】
デバイス700における複数のコンポーネントは、I/Oインターフェース705に接続されており、キーボード、マウスなどの入力ユニット706と、様々なタイプのディスプレイ、スピーカなどの出力ユニット707と、磁気ディスク、光ディスクなどの記憶ユニット708と、ネットワークカード、モデム、無線通信トランシーバなどの通信ユニット709とを含む。通信ユニット709は、デバイス700がインターネットのコンピュータネットワークおよび/または様々な電気通信ネットワークなどを介して、他のデバイスと情報/データを交換することを可能にする。
【0112】
計算ユニット701は、処理および計算能力を有する様々な汎用および/または専用の処理コンポーネントであってもよい。計算ユニット701のいくつかの例として、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、様々な専用の人工知能(AI)計算チップ、各種の機械学習モデルアルゴリズムを実行する計算ユニット、デジタル信号プロセッサ(DSP)および任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット701は、キャプション生成器を生成するための方法などの上記の各方法および処理を実行する。例えば、いくつかの実施形態では、キャプション生成器を生成するための方法は、記憶ユニット708などの機械読み取り可能な媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実装されてもよい。いくつかの実施形態では、コンピュータプログラムの一部または全部は、ROM702および/または通信ユニット709を介してデバイス700にロードおよび/またはインストールされてもよい。コンピュータプログラムがRAM703にロードされ、計算ユニット701によって実行される場合、上記のキャプション生成器を生成するための方法の1つまたは複数のステップが実行されてもよい。代替的に、他の実施形態では、計算ユニット701は、他の任意の適切な手段(例えば、ファームウェアによって)によって、キャプション生成器を生成するための方法を実行するように構成されてもよい。
【0113】
本開示の実施形態により提供されるキャプション生成器を生成するための方法および装置、ならびにキャプションを出力するための方法および装置は、画像キャプションに監視なしの解決策を提供することを目的とする。トレーニングのために大量の画像文ペアに大きく依存する従来の画像キャプション生成方法とは違って、本開示は、自己学習方法でキャプション生成器を学習することにより、この依存性を解消する。キャプション生成器は、よりリアルなシーンを追求して、ペアになっていない画像と文のデータでトレーニングできる。
【0114】
以上に記載されたシステムおよび技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップ(SOC)、ロードプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェアおよび/またはそれらの組み合わせで実装されてもよい。これらの様々な実施形態は、1つまたは複数のコンピュータプログラムに実施され、当該1つまたは複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラム可能なシステムで実行および/または解釈され得、当該プログラマブルプロセッサは、専用または汎用のプログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置および少なくとも1つの出力装置からデータおよび命令を受信し、且つデータおよび命令を当該記憶システム、当該少なくとも1つの入力装置および当該少なくとも1つの出力装置に伝送することができることを含み得る。
【0115】
本開示の方法を実施するためのプログラムコードは、1つまたは複数のプログラミング言語の任意の組み合わせを採用してプログラミングすることができる。これらのプログラムコードは、汎用コンピュータ、専用コンピュータまたは他のプログラマブルデータ処理装置のプロセッサまたはコントローラに提供され得、それによりプログラムコードは、プロセッサまたはコントローラによって実行されると、フローチャートおよび/またはブロック図で示される機能/操作が実施される。プログラムコードは、完全に機械で実行され、部分的に機械で実行され、独立したソフトウェアパッケージとして部分的に機械で実行され、部分的にリモートマシンで実行されまたは完全にリモートマシンまたはサーバで実行されてもよい。
【0116】
本開示のコンテキストでは、機械読み取り可能な媒体は、有形的な媒体であってもよく、命令実行システム、装置またはデバイスによって使用されるかまたは命令実行システム、装置またはデバイスと組み合わせて使用されるプログラムを含むかまたは記憶することができる。機械読み取り可能な媒体は、機械読み取り可能な信号媒体または機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子、磁気、光学、電磁気、赤外線または半導体システム、装置またはデバイスまたは上記の任意の適切な組み合わせを含み得るが、これらに限定されない。機械可読記憶媒体のより具体的な例は、1つまたは複数の配線に基づく電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光学的記憶デバイス、磁気的記憶デバイスまたは上記に記載された任意の適切な組み合わせを含む。
【0117】
ユーザとのやり取りを提供するために、コンピュータ上で、本明細書で説明されるシステムおよび技術を実施することができ、当該コンピュータは、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ)と、キーボードおよびポインティングデバイス(例えば、マウスまたはトラックボール)とを有し、ユーザは、当該キーボードおよび当該ポインティングデバイスによって入力をコンピュータに提供することができる。他の種類の装置も、ユーザとのやり取りを提供するために使用され得る。例えば、ユーザに提供されるフィードバックは、任意の形態のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバックまたは触覚フィードバック)であってもよく、任意の形態(音響入力、音声入力または触覚入力を含む)でユーザからの入力を受信することができる。
【0118】
本明細書で説明されるシステムおよび技術は、バックグラウンドコンポーネントを含む計算システム(例えば、データサーバとして)またはミドルウェアコンポーネントを含む計算システム(例えば、アプリケーションサーバ)またはフロントエンドコンポーネントを含む計算システム(例えば、グラフィカルユーザインターフェースまたはインターネットブラウザを有するユーザコンピュータであり、ユーザは、当該グラフィカルユーザインターフェースまたは当該インターネットブラウザを介して、本明細書で説明されるシステムおよび技術の実施形態とやり取りすることができる)またはこのようなバックグラウンドコンポーネント、ミドルウェアコンポーネントまたはフロントエンドコンポーネントの任意の組み合わせを含む計算システムで実施することができる。任意の形態または媒体のデジタルデータ通信(例えば、通信ネットワーク)によって、システムのコンポーネントを互いに接続することができる。通信ネットワークの例示的なものとして、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネットワークが含まれる。
【0119】
コンピュータシステムはクライアントおよびサーバを含むことができる。クライアントとサーバは一般的に互いに離れており、通常は通信ネットワークを介して相互作用している。クライアントとサーバの関係は、対応するコンピュータで実行されるとともに互いにクライアント-サーバの関係を持つコンピュータプログラムによって生成される。サーバは、分散システムのサーバであってもよいしまたはブロックチェーンと組み合わせたサーバであってもよい。サーバは、クラウドサーバであってもよいし、人工知能技術を備えたインテリジェントクラウドコンピューティングサーバまたはインテリジェントクラウドホストであってもよい。サーバは、分散システムのサーバであってもよいしまたはブロックチェーンと組み合わせたサーバであってもよい。サーバは、クラウドサーバであってもよいし、人工知能技術を備えたインテリジェントクラウドコンピューティングサーバまたはインテリジェントクラウドホストであってもよい。
【0120】
上記に示した様々な形態のフローを使用して、ステップを再ソート、追加または削除できることを理解されたい。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次に実行されてもよいし、異なる順序で実行されてもよく、本開示で開示されている技術的解決手段が所望の結果を実現できる限り、本明細書では限定しない。
【0121】
上記特定の実施形態は、本開示の保護範囲を限定するものではない。当業者は、設計要件および他の要因に従って、様々な修正、組み合わせ、サブコンビネーションおよび置換を行うことができると理解すべきである。本開示の精神および原則内で行われる任意の修正、同等の置き換えおよび改善などはいずれも本開示の保護範囲内に含まれるべきである。
図1
図2
図3
図4
図5
図6
図7
【手続補正書】
【提出日】2023-09-27
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【0001】
<関連出願の相互参照>
本開示は、2021年3月30日に提出した、出願番号が202110338045.X、発明の名称が「キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置」である中国特許出願の優先権を主張し、当該出願の全文が引用により本開示に組み込まれる。
【0002】
本開示の実施形態はコンピュータ技術分野に関し、具体的には、キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置に関する。
【背景技術】
【0003】
イメージキャプショニングは、自然言語文で画像を自動的に説明する技術であり、新規で急速に成長している研究テーマである。
【0004】
関連技術では、ほとんどのキャプション生成器は注釈付きの画像-文ペアでトレーニングされ、まず、入力画像を畳み込みニューラルネットワークで符号化し、次に、再帰型ニューラルネットワークで文を復号化するコーデックパラダイムに従って動作する。一連の作業により画像キャプションの注意メカニズムをアップグレードして、視覚コンテンツと自然文との間のクロスドメインベースを強化している。
【0005】
関連技術は大量のトレーニング用の画像文ペアに大きく依存しており、一方では、これらのトレーニング用の画像文ペアの取得は極めて高価で時間がかかり、他方では、トレーニング用の画像文ペアに過度に依存すると、キャプション生成器の広範な適用が妨げられる。
【発明の概要】
【0006】
本開示の実施形態は、キャプション生成器を生成するための方法および装置、並びにキャプションを出力するための方法および装置を提供する。
【0007】
本開示の実施形態は、サンプル画像セットを取得するステップと、サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するステップと、オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するステップと、画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、第1のオブジェクトセットと第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するステップと、擬似画像文ペアのセットをサンプルセットとして文生成器をトレーニングし、キャプション生成器を取得するステップと、を含む、キャプション生成器を生成するための方法を提供する。
【0008】
一部の実施形態において、該方法は、文識別器によってキャプション生成器を敵対的トレーニングして、キャプション生成器を最適化する方法と、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法と、クエリ画像、ポジティブ画像、ネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関性によって、キャプション生成器を最適化する方法とのうちの少なくとも1つによって、キャプション生成器を最適化するステップをさらに含む。
【0009】
いくつかの実施形態において、文識別器によってキャプション生成器を敵対的トレーニングしてキャプション生成器を最適化する方法は、画像および対応する実文を含む第1のサンプルからなる、予め設定された第1のサンプルセットを抽出するステップと、入力された画像を画像符号化した後、文復号化を行って擬似文を取得するためのキャプション生成器と、入力された文がキャプション生成器から出力された擬似文であるか否かを判定するための文識別器とを備える、予め作成された敵対的生成ネットワークを抽出するステップと、機械学習方法に基づいて、第1のサンプルセットから第1のサンプルを選択し、選択された第1のサンプルにおける画像をキャプション生成器に入力して、擬似文を出力するステップと、擬似文および選択された第1のサンプルにおける実文を文識別器に入力し、識別結果を力するステップと、出力された識別結果に基づいて、文識別器の正解率を統計するステップと、正解率が所定値に達した場合、キャプション生成器のトレーニングが完了したと判定するステップとを含む、第1のトレーニングステップを実行するステップと、を含む。
【0010】
いくつかの実施形態において、該方法は、正解率が所定値に達していない場合、文識別器の敵対的損失を計算し、敵対的損失が小さくなるように文識別器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するステップをさらに含む。
【0011】
いくつかの実施形態において、該方法は、正解率が所定値に達していない場合、キャプション生成器の敵対的報酬を計算し、敵対的報酬が増加するようにキャプション生成器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するステップをさらに含む。
【0012】
いくつかの実施形態において、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法は、画像を含む第2のサンプルからなる、予め設定された第2のサンプルセットを抽出するステップと、機械学習方法に基づいて、第2のサンプルセットからサンプルを選択し、選択された第2のサンプルにおける画像をキャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、サンプルオブジェクトセットをキャプション生成器の文デコーダに入力し、擬似文を出力するステップと、擬似文に、サンプルオブジェクトセットにおけるサンプルオブジェクトを含む信頼度平均スコアを計算し、擬似文のオブジェクト包含報酬とするステップと、オブジェクト包含報酬が所定の包含報酬閾値に達した場合、キャプション生成器のトレーニングが完了したと判定するステップと、を含む第2のトレーニングステップを実行するステップと、を含む。
【0013】
いくつかの実施形態において、該方法は、オブジェクト包含報酬が所定の包含報酬閾値に達していない場合、オブジェクト包含報酬が増加するようにキャプション生成器の関連パラメータを調整し、第2のサンプルセットから第2のサンプルを再選択し、第2のトレーニングステップを引き続き実行するステップをさらに含む。
【0014】
いくつかの実施形態において、画像トリプレットと対応する生成文との間の意味的相関性によって、キャプション生成器を最適化する方法は、クエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と共通のオブジェクトがない第3のサンプルからなる、予め設定された第3のサンプルセットを抽出するステップと、機械学習方法に基づき、第3のサンプルセットから第3のサンプルを選択し、選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれキャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文を出力するステップと、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、第1の意味的類似度と第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、自己監視トリプレット損失が所定の損失閾値未満である場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む第3のトレーニングステップを実行するステップと、を含む。
【0015】
いくつかの実施形態において、該方法は、自己監視トリプレット損失が所定の損失閾値以上である場合、自己監視トリプレット損失が小さくなるようにキャプション生成器の関連パラメータを調整し、第3のサンプルセットから第3のサンプルを再選択し、第3のトレーニングステップを引き続き実行するステップをさらに含む。
【0016】
いくつかの実施形態において、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップは、クエリ文、ポジティブ文およびネガティブ文に対して、文中における各単語のオブジェクトベースの確率分布をそれぞれ計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップと、を含む。
【0017】
いくつかの実施形態において、該方法は、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の加重合計が所定の目標値より大きい場合、加重合計が小さくなるように、キャプション生成器の関連パラメータを調整するステップをさらに含む。
【0018】
いくつかの実施形態において、画像エンコーダは、領域レベルの注意メカニズムを備えた2層のLSTMを含み、第1層のLSTMはトップダウンの注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTMは文を生成するための言語モデルである。
【0019】
本開示の実施形態は、処理対象の画像を取得するステップと、キャプション生成器を生成するための上記方法によって生成されたキャプション生成器に画像を入力し、画像に対応するキャプションを出力するステップと、を含む、キャプションを出力するための方法をさらに提供する。
【0020】
本開示の実施形態は、サンプル画像セットを取得するように構成される取得ユニットと、サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するように構成される符号化ユニットと、オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するように構成されるグループ化ユニットと、画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、第1のオブジェクトセットと第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するように構成される復号化ユニットと、擬似画像文ペアのセットをサンプルセットとして文生成器をトレーニングし、キャプション生成器を取得するように構成されるトレーニングユニットと、を備える、キャプション生成器を生成するための装置をさらに提供する。
【0021】
いくつかの実施形態において、該装置は、文識別器によってキャプション生成器を敵対的トレーニングして、キャプション生成器を最適化する方法、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法、クエリ画像、ポジティブ画像、ネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関によって、キャプション生成器を最適化する方法の少なくとも1つによって、キャプション生成器を最適化するように構成される最適化ユニットをさらに備える。
【0022】
いくつかの実施形態において、最適化ユニットは、さらに、画像および対応する実文を含む第1のサンプルからなる、予め設定された第1のサンプルセットを抽出するステップと、入力された画像を画像符号化した後、文の復号化を行って、擬似文を取得するためのキャプション生成器と、入力された文がキャプション生成器から出力された擬似文であるか否かを判定するための文識別器とを備える、予め作成された敵対的生成ネットワークを抽出するステップと、機械学習方法に基づいて、第1のサンプルセットから第1のサンプルを選択し、選択された第1のサンプルにおける画像をキャプション生成器に入力して、擬似文を出力するステップと、擬似文と選択された第1のサンプルにおける実文を文識別器に入力し、識別結果を力するステップと、出力された識別結果に基づいて、文識別器の正解率を統計するステップと、正解率が所定値に達した場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む、第1のトレーニングステップを実行するステップと、実行するように構成される。
【0023】
いくつかの実施形態において、最適化ユニットは、さらに、正解率が所定値に達していない場合、文識別器の敵対的損失を計算し、敵対的損失が小さくなるように文識別器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するように構成される。
【0024】
いくつかの実施形態において、最適化ユニットは、さらに、正解率が所定値に達していない場合、キャプション生成器の敵対的報酬を計算し、敵対的報酬が増加するようにキャプション生成器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するように構成される。
【0025】
いくつかの実施形態において、最適化ユニットは、さらに、画像を含む第2のサンプルからなる、予め設定された第2のサンプルセットを抽出するステップと、機械学習方法に基づいて、第2のサンプルセットからサンプルを選択し、選択された第2のサンプルにおける画像をキャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、サンプルオブジェクトセットをキャプション生成器の文デコーダに入力し、擬似文を出力するステップと、擬似文に、サンプルオブジェクトセットにおけるサンプルオブジェクトを含む信頼度平均スコアを計算し、擬似文のオブジェクト包含報酬とするステップと、オブジェクト包含報酬が所定の包含報酬閾値に達した場合、キャプション生成器のトレーニングが完了したと判断するステップと、を含む第2のトレーニングステップを実行するステップと、を実行するように構成される。
【0026】
いくつかの実施形態において、最適化ユニットは、さらに、オブジェクト包含報酬が所定の包含報酬閾値に達していない場合、オブジェクト包含報酬が増加するようにキャプション生成器の関連パラメータを調整し、第2のサンプルセットから第2のサンプルを再選択し、第2のトレーニングステップを引き続き実行するように構成される。
【0027】
いくつかの実施形態において、最適化ユニットは、さらに、クエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と共通のオブジェクトがない第3のサンプルからなる、予め設定された第3のサンプルセットを抽出するステップと、機械学習装置に基づいて、第3のサンプルセットから第3のサンプルを選択し、選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれキャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文を出力するステップと、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、第1の意味的類似度と第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、自己監視トリプレット損失が所定の損失閾値未満である場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む第3のトレーニングステップを実行するステップとを実行するように構成される。
【0028】
いくつかの実施形態において、最適化ユニットは、さらに、自己監視トリプレット損失が所定の損失閾値以上である場合、自己監視トリプレット損失が小さくなるようにキャプション生成器の関連パラメータを調整し、第3のサンプルセットから第3のサンプルを再選択し、第3のトレーニングステップを引き続き実行するように構成される。
【0029】
いくつかの実施形態において、最適化ユニットは、さらに、クエリ文、ポジティブ文およびネガティブ文に対して、それぞれ文中における各単語のオブジェクトベースの確率分布を計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップとを実行するように構成される。
【0030】
いくつかの実施形態において、最適化ユニットは、さらに、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の加重合計が所定の目標値より大きい場合、加重合計が小さくなるように、キャプション生成器の関連パラメータを調整するように構成される。
【0031】
いくつかの実施形態において、画像エンコーダは、領域レベルの注意メカニズムを備えた2層のLSTMを含み、第1層のLSTMはトップダウンの注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTMは文を生成するための言語モデルである。
【0032】
本開示の実施形態は、処理対象の画像を取得するように構成される取得ユニットと、キャプション生成器を生成するための上記方法によって生成されたキャプション生成器に画像を入力し、画像に対応するキャプションを出力するように構成される出力ユニットと、を備える、キャプションを出力するための装置を提供する。
【0033】
本開示の実施形態は、少なくとも1つのプロセッサと、少なくとも1つのコンピュータプログラムが格納されているメモリと、を備え、少なくとも1つのコンピュータプログラムが少なくとも1つのプロセッサによって実行される場合、少なくとも1つのプロセッサが上記のキャプション生成器を生成するための方法を実現する電子機器を提供する。
【0034】
本開示の実施形態は、プロセッサにより実行される場合、上記のキャプション生成器を生成するための方法を実現するコンピュータプログラムが格納されているコンピュータ可読媒体を提供する。
【0035】
本開示の実施形態は、プロセッサにより実行される場合、上記のキャプション生成器を生成するための方法を実現するコンピュータプログラムを提供する。
【0036】
以下の図面を参照して行われる非限定的な実施形態の詳細な説明を閲読することにより、本開示のその他の特徴、目的および利点がより明らかになる。
【図面の簡単な説明】
【0037】
図1】本開示の一実施形態が適用可能な例示的なシステムアーキテクチャである。
図2】本開示によるキャプション生成器を生成するための方法の一実施形態のフローチャートである。
図3】本開示によるキャプション生成器を生成するための方法の一つの応用シーンの概略図である。
図4】本開示によるキャプションを出力するための方法の一つの実施形態のフローチャートである。
図5】本開示によるキャプション生成器を生成するための装置の一実施形態の構造概略図である。
図6】本開示によるキャプションを出力するための装置の一実施形態の構造概略図である。
図7】本開示の一実施形態の電子機器を実装するのに適したコンピュータシステムの構造概略図である。
【発明を実施するための形態】
【0038】
以下、添付図面に実施形態を組み合わせて本開示をさらに詳細に説明する。本明細書で説明する具体的な実施形態は、単に関連する技術的手段を解釈するためのものであって、該技術的手段に限定されるものではないことを理解されたい。なお、説明の便宜上、図面には当該技術的手段に関連する部分のみが示されている。
【0039】
そして、本開示における実施形態および実施形態における特徴は矛盾しない限り、互いに組み合わせることができることを理解すべきである。以下、添付図面を参照し、実施形態を組み合わせて本開示を詳細に説明する。
【0040】
図1は、本開示の実施形態のキャプション生成器を生成するための方法、キャプション生成器を生成するための装置、キャプションを出力するための方法またはキャプションを出力するための装置を適用することができる例示的なシステムアーキテクチャー100を示す。
【0041】
図1に示されるように、システムアーキテクチャー100は、端末101、102、ネットワーク103、データベースサーバ104およびサーバ105を含むことができる。ネットワーク103は、端末101、102、データベースサーバ104とサーバ105との間に通信リンクを提供するための媒体として使用される。ネットワーク103は、例えば、有線、無線通信リンクまたは光ファイバケーブルなどの様々な接続タイプを含むことができる。
【0042】
ユーザ110は、端末101、102を使用してネットワーク103を介してサーバ105とインタラクションを行って、メッセージなどを送受信することができる。端末101、102には、モデルトレーニングアプリケーション、キャプション生成アプリケーション、画像処理アプリケーション、ショッピングアプリケーション、支払いアプリケーション、Webブラウザおよびインスタントメッセージングツールなどの様々なクライアントアプリケーションがインストールされることができる。
【0043】
端末101、102は、ハードウェアであってもよいし、ソフトウェアであってもよい。端末101、102がハードウェアである場合、スマートフォン、タブレットコンピュータ、電子書籍リーダー、MP3プレーヤー(Moving Picture Experts Group Audio Layer III、ムービングピクチャーエキスパートグループオーディオレイヤー3)、ラップトップコンピュータおよびデスクトップコンピュータなどを含むがこれらに限定されない、ディスプレイを有する様々な電子機器であってもよい。端末101、102がソフトウェアである場合、上記に挙げられた電子機器にインストールされることができる。それらは、複数のソフトウェアまたはソフトウェアモジュール(例えば、分散サービスを提供するために使用される)として実装されてもよいし、単独のソフトウェアまたはソフトウェアモジュールとして実装されてもよい。ここでは特に限定されない。
【0044】
端末101、102がハードウェアである場合、画像採集装置が搭載されてもよい。画像採集装置は、カメラ、センサなど、画像採集機能を実現可能な様々な装置であってもよい。ユーザ110は、端末101および102上の画像採集装置を使用して、様々なシーンの画像を採集することができる。
【0045】
データベースサーバ104は、様々なサービスを提供するデータベースサーバであってもよい。例えば、データベースサーバにサンプルセットを格納することができる。サンプルセットには大量のサンプルが含まれている。サンプルは、サンプル画像およびサンプル画像に対応する文を含むことができる。このように、ユーザ110は、端末101、102を介して、データベースサーバ104に格納されているサンプルセットからサンプルを選択することができる。
【0046】
サーバ105はまた、様々なサービスを提供するサーバ、例えば、端末101および102に表示される様々なアプリケーションをサポートするバックエンドサーバであってもよい。バックエンドサーバは、端末101および102によって送信されたサンプルセットにおけるサンプルを使用して初期モデルをトレーニングし、トレーニング結果(生成されたキャプション生成器など)を端末101および102に送信することができる。このようにして、ユーザは生成されたキャプション生成器を適用して、画像にキャプションを生成することができる。
【0047】
ここでのデータベースサーバ104およびサーバ105は同様にハードウェアであってもよいし、ソフトウェアであってもよい。ハードウェアである場合、複数のサーバで構成される分散サーバクラスターとして実装されてもよいし、単一のサーバとして実装されてもよい。ソフトウェアである場合、複数のソフトウェアまたはソフトウェアモジュール(例えば、分散サービスを提供するために使用される)として実装されてもよいし、単一のソフトウェアまたはソフトウェアモジュールとして実装されてもよい。ここでは特に限定されない。
【0048】
なお、本開示の実施形態により提供されるキャプション生成器を生成するための方法またはキャプションを出力するための方法は、一般にサーバ105によって実行される。従って、キャプション生成器を生成するための装置またはキャプションを出力するための装置は、一般にサーバ105に設けられる。
【0049】
サーバ105がデータベースサーバ104の関連機能を実装できる場合、システムアーキテクチャ100はデータベースサーバ104を設けなくてもよいことに留意されたい。
【0050】
図1の端末、ネットワーク、データベースサーバおよびサーバの数は単なる例示であることを理解すべきである。実装のニーズに応じて、任意の数の端末、ネットワーク、データベースサーバおよびサーバを有することができる。
【0051】
引き続き、図2を参照し、本開示によるキャプション生成器を生成するための方法の一実施形態のフロー200を示す。キャプション生成器を生成するための該方法は、以下のステップを含んでもよい。
【0052】
ステップ201では、サンプル画像セットを取得する。
【0053】
本実施形態では、キャプション生成器を生成するための方法の実行主体(例えば、図1に示すサーバ)は、データベースサーバから予め記憶されているサンプル画像セットを取得することができる。また、端末で撮影した画像をサンプル画像として端末から取得することができる。
【0054】
ステップ202では、文生成器の画像エンコーダにサンプル画像セットを入力し、オブジェクトセットを出力する。
【0055】
本実施形態では、文生成器は初期キャプション生成器であり、入力された画像を文に変換するニューラルネットワークである。文生成器は、画像エンコーダおよび文デコーダを含んでもよい。
【0056】
画像エンコーダは、入力画像ごとに中間表現を生成し、本開示では、画像エンコーダとして最も一般的なオブジェクト検出モデル(Faster R-CNN)を使用して画像におけるオブジェクトを検出し、実際の応用では他の画像エンコーダを使用することもできる。各画像I
を一組の顕著な画像領域
【数1】
に符号化し、これには、人、花、草、木、椅子、犬など、検出されたK個のオブジェクトが含まれる。
【0057】
ステップ203では、オブジェクトセットを第1のオブジェクトセットと第2のオブジェクトセットにグループ化する。
【0058】
本実施形態では、第1のオブジェクトセットは、所定のオブジェクトセットに含まれているオブジェクトセットであり、第2のオブジェクトセットは、所定のオブジェクトセットから除外されたオブジェクトセットである。技術上、入力画像Iが与えられると、オブジェクト検出モデル(Faster R-CNNなど)によって、
【数2】
例えば、所定のオブジェクトセットが建物、車、人、花、草、木を含み、オブジェクトセットが人、花、草、木、椅子、犬を含む場合、第1のオブジェクトセット(所定のオブジェクトセットに含まれているオブジェクトセット)には、人、花、草、木が含まれ、第2のオブジェクトセット(除外されたオブジェクトセット)には、椅子、犬が含まれる。
【0059】
ステップ204では、画像エンコーダによって出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、第1のオブジェクトセットおよび第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成する。
【0060】
本実施形態において、画像エンコーダによって生成された中間表現が与えられると、出力された文は文デコーダによって逐語的に復号される。ボトムアップ注意モデル(Bottom-up and Top-Down)を参照すると、文デコーダは領域レベルの注意メカニズムを備えた2層のLSTM(Long Short-Term Memory,長短期記憶ネットワーク)として実装できる。第1層のLSTM(LSTM)はトップダウン注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTM(LSTM)は文を生成するための言語モデルである。
【数3】
(ここで、Wは線形埋め込み行列であり、単語予測のために、h を語彙空間に射影する)が取得される。
【0061】
事前トレーニングされたキャプション生成器を使用して擬似画像文ペアを生成する自然な方法は、ビームサーチ(beam search)を使用する方法であり、これは、各復号ステップでビームBを維持し、b個の最も可能性の高い文の一部を含むヒューリスティックサーチアルゴリズムである。ただし、入力画像と出力文の間の意味的相関性は推論時の文生成に十分に活用されていない。この問題を緩和するために、本開示は、識別されたオブジェクトが含まれ、無関係なオブジェクトが除外されるようにビームサーチが再構築された、意味的制約ビームサーチを設計した。
【0062】
技術上、入力画像Iが与えられると、オブジェクト検出モデル(Faster R-CNNなど)によって、
【数4】
識別された
【数5】
におけるオブジェクトおよび除外された
【数6】
におけるオブジェクトを制約条件とし、有限状態マシン(Finite-state machine)を使用してこの制約を実行し、これにより、有限状態マシンは、オブジェクト包含制約をすべて満たす単語シーケンスを識別し、ビームサーチアルゴリズムを有限状態マシンと組み合わせることができる。具体的には、
【数7】
したがって、有限状態マシンの設計では、状態を受け入れるための単語シーケンスが包含条件を満たすとともに、無関係なオブジェクトはすべて除外される必要がある。
【0063】
擬似画像文ペアのセットにおける各擬似画像文ペアは画像と文を含み、画像と文はペアでなくてもよい。
【0064】
ステップ205では、擬似画像文ペアのセットをサンプルセットとして文生成器をトレーニングし、キャプション生成器を取得する。
【0065】
本実施形態では、
【数8】
を使用して、擬似画像文ペアのセットを表すことができ、
【数9】
は生成された擬似文を表し、これらの擬似画像文ペアを使用して、次のクロスエントロピー損失を有するキャプション生成器を直接トレーニングできる。
【数10】

(ここで、θは文デコーダのパラメータを表す。)
【0066】
本実施形態のいくつかのオプション的な実施形態では、該方法は、文識別器によってキャプション生成器を敵対的トレーニングして、キャプション生成器を最適化する方法と、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法と、クエリ画像、ポジティブ画像、ネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関性によって、キャプション生成器を最適化する方法とのうちの少なくとも1つによって、キャプション生成器を最適化するステップをさらに含む。
【0067】
キャプション生成器は、上記のいずれかの方法で最適化することができ、また、いずれかの2つの方法を組み合わせて最適化することもできる。3つの方法を組み合わせてキャプション生成器を最適化することもできる。
【0068】
本実施形態のいくつかのオプション的な実施形態では、文識別器によって前記キャプション生成器を敵対的トレーニングして前記キャプション生成器を最適化する方法は、画像および対応する実文を含む第1のサンプルからなる、予め設定された第1のサンプルセットを抽出するステップと、入力された画像を画像符号化した後、文の復号化を行って、擬似文を取得するためのキャプション生成器と、入力された文が前記キャプション生成器から出力された擬似文であるか否かを判断するための文識別器とを備える、予め作成された敵対的生成ネットワークを抽出するステップと、機械学習方法に基づいて、前記第1のサンプルセットから第1のサンプルを選択し、選択された第1のサンプルにおける画像を前記キャプション生成器に入力し、擬似文を出力するステップと、前記擬似文と選択された第1のサンプルにおける実文を前記文識別器に入力し、識別結果を力するステップと、出力された識別結果に基づいて、前記文識別器の正解率を統計するステップと、前記正解率が所定値に達した場合、前記キャプション生成器のトレーニングが完了したと判定するステップとを含む第1のトレーニングステップを実行するステップと、を含む。
【0069】
前記正解率が所定値に達していない場合、前記文識別器の敵対的損失を計算し、前記敵対的損失が小さくなるように前記文識別器の関連パラメータを調整し、前記第1のサンプルセットから第1のサンプルを再選択し、前記第1のトレーニングステップを引き続き実行する。
【0070】
前記正解率が所定値に達していない場合、前記キャプション生成器の敵対的報酬を計算し、前記敵対的報酬が増加するように前記キャプション生成器の関連パラメータを調整し、前記第1のサンプルセットから第1のサンプルを再選択し、前記第1のトレーニングステップを引き続き実行する。
【0071】
文識別器の構造は図3に示されている。文識別器とキャプション生成器(画像エンコーダと文デコーダを含む)は、敵対的生成ネットワークを構成する。文識別器は、入力文がペアになっていない文データセット内の実文であるか、それともキャプション生成器によって生成された擬似文であるかを識別するために使用される。再帰型ニューラルネットワーク(RNN)に基づく文モデリングでは、LSTMを使用して単語シーケンスをコンテキスト上で文レベルの表現形式に符号化して、実文/生成文を識別できる。
【数11】
【0072】
文識別器は、毎回のトレーニングプロセスにおいて、入力文が実文であるか、それともキャプション生成器によって生成された擬似文であるかを判断する。識別結果が正解であるか否かを統計し、正解率が所定値(例えば0.5)に達した場合、キャプション生成器の擬似文が効果的で文識別器を騙せることを意味し、トレーニングを終了する。そうでなければ、キャプション生成器および文識別器のネットワークパラメータを調整し、再びトレーニングする必要がある。まず、キャプション生成器のパラメータを固定し、文識別器のパラメータを調整してトレーニングし、次に、文識別器のパラメータを固定し、キャプション生成器のパラメータを調整してトレーニングする。文識別器とキャプション生成器のパラメータを交互に調整し、最終的に文識別器とキャプション生成器のトレーニングを完了する。実際に使用されるのはキャプション生成器である。
【0073】
敵対的報酬(Adversarial Reward)は、人間が書いたキャプションと見分けがつかない文を生成するために使用され、本開示では、生成された文分布が手動で説明されたものと一致するように、敵対的トレーニングと文レベルの敵対的報酬を使用している。
【数12】
【0074】
本実施形態のいくつかのオプション的な実施形態では、前記キャプション生成器によって識別されたオブジェクトの、前記キャプション生成器から出力された文における包含度によって、前記キャプション生成器を最適化する方法は、
画像を含む第2のサンプルからなる、予め設定された第2のサンプルセットを抽出するステップと、
機械学習方法に基づいて、前記第2のサンプルセットからサンプルを選択し、
選択された第2のサンプルにおける画像を前記キャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、前記サンプルオブジェクトセットをキャプション生成器の文デコーダに入力し、擬似文を出力するステップと、前記擬似文に前記サンプルオブジェクトセットにおけるサンプルオブジェクトが含まれる信頼度平均スコアを計算し、前記擬似文のオブジェクト包含報酬とするステップと、前記オブジェクト包含報酬が所定の包含報酬閾値に達した場合、前記キャプション生成器のトレーニングが完了したと判定するステップと、を含む第2のトレーニングステップを実行するステップと、を含む。
【0075】
前記オブジェクト包含報酬が所定の包含報酬閾値に達していない場合は、前記オブジェクト包含報酬が増加するように、前記キャプション生成器の関連パラメータを調整し、前記第2のサンプルセットから第2のサンプルを再選択し、前記第2のトレーニングステップを引き続き実行する。
【0076】
オブジェクト包含報酬(Object Inclusion Reward)は、敵対的報酬がキャプション生成器のみを強化してよりリアルな文を生成するため、画像コンテンツと生成文との間の意味的な相関性を説明する明確な概念はない。したがって、本開示はさらに、生成文に、識別されたオブジェクトを含むことを説明するキャプション生成器を奨励するために、出力文における識別されたオブジェクトの包含度を追加の自己監視オブジェクト(すなわち、オブジェクト包含報酬)とする。この方法によって、両者間の意味的相関性が強調され、生成されるキャプションの品質が向上する。
【数13】
【0077】
本実施形態のいくつかのオプション的な実施形態では、画像トリプレットと、対応する生成文との間の意味的相関性によって、前記キャプション生成器を最適化する方法は、クエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と如何なる共通のオブジェクトがない第3のサンプルからなる、予め設定された第3のサンプルセットを抽出するステップと、機械学習方法に基づき、前記第3のサンプルセットから第3のサンプルを選択し、選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれ前記キャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文をそれぞれ出力するステップと、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、前記第1の意味的類似度と前記第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、前記自己監視トリプレット損失が所定の損失閾値未満である場合、前記キャプション生成器のトレーニングが完了したと判定するステップとを含む第3のトレーニングステップを実行するステップと、を含む。
【0078】
前記自己監視トリプレット損失が所定の損失閾値以上である場合、前記自己監視トリプレット損失が小さくなるように前記キャプション生成器の関連パラメータを調整し、前記第3のサンプルセットから第3のサンプルを再選択し、前記第3のトレーニングステップを引き続き実行する。
【0079】
本実施形態のいくつかのオプション的な実施形態では、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算する前記ステップは、クエリ文、ポジティブ文およびネガティブ文に対して、文中における各単語のオブジェクトベースの確率分布をそれぞれ計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップと、を含む。
【0080】
自己監視トリプレット損失(Self-supervised Triplet Loss)は、オブジェクト包含報酬を使用した最適化において、画像間の類似または非類似の関係にかかわらず,各画像と対応する生成文との意味的相関性を独立に使用する。相対的な関係を探るという考えから、本開示は、文間の相対的な意味的順序を保持するために、キャプション生成器の学習をトリプレットの方法で意味的に制約する自己監視トリプレット損失を設計した。画像において識別された視覚オブジェクトに基づいて、各画像トリプレット(クエリ画像、ポジティブ画像、ネガティブ画像から構成される)が構築される。ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有するが、ネガティブ画像とクエリ画像には如何なる共通のオブジェクトがない。このような画像トリプレットが与えられた場合、クエリ画像の生成文がネガティブ画像の生成文よりもポジティブ画像の生成文に類似するように、キャプション生成器が最適化される。
【数14】
具体的には、復号ステップにおいて、1600個のオブジェクトの確率のみを保持することによって、予測された単語分布がオブジェクトベースの分布にさらに変換される。次に、
【数15】
の復号プロセスに沿ってすべてのオブジェクトベースの分布が累積され、それらに対して最大プーリングが実行され、対応するオブジェクトベースの文の特徴が生成される。
【0081】
オプション的に、最終的にモデル全体のトレーニングは、自己批判的シーケンストレーニングに敵対的報酬(Adversarial Reward)、オブジェクト包含報酬(Object Inclusion Reward)および自己監視トリプレット損失(Self-supervised Triplet Loss)を組み合わせることができ、全体的な目標勾配式は、
【数16】
(ここで、
【数17】
は、サンプリング文を表し、bは取得した敵対的およびオブジェクト包含報酬の組み合わせを表す。λ、λ、λはそれぞれ、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の重みを表し、重みは0にすることができる)に近似される。
【0082】
引き続き図3を参照し、図3は本実施形態によるキャプション生成器を生成するための方法の応用シーンの概略図である。図3の応用シーンでは、キャプション生成器の画像エンコーダFaster R-CNNにクエリ画像、ポジティブ画像およびネガティブ画像を入力し、オブジェクトセット{tree(木)、man(人)、bench(ベンチ)、grass(草)、dog(犬)…}を得る。所定のオブジェクトセットに基づいてオブジェクトセットをグループ化した後、キャプション生成器の文デコーダ(図3の下部の2層のLSTM構造)に入力し、オブジェクトセットの意味に基づいてビームサーチ復号を行い、擬似文「a man sitting on a bench near a tree」などを生成する。これらの擬似文および対応する画像は、キャプション生成器をトレーニングするための擬似画像文ペアのセットとして使用される(図3の上部の2層のLSTM構造は文デコーダを表す)。便宜上、画像エンコーダのパラメータを固定し、文デコーダのみをトレーニングしてもよいし、文デコーダのトレーニングが完了した後に画像エンコーダをトレーニングしてもよく、画像エンコーダと文デコーダを交互にトレーニングして最も性能の良いキャプション生成器を取得する。トレーニングプロセスにおいてクロスエントロピー方法を使用する。得られた上部の2層のLSTM構造のパラメータは下部の2層のLSTM構造に共有することができる。
【0083】
キャプション生成器のさらなる最適化を図って、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失を導入することができる。
1.敵対的報酬の最適化:「a cow stands in the back of a large truck」という実文を、キャプション生成器が生成した擬似文と一緒に文識別器に入力して識別する。識別の正解率が0.5未満の場合、敵対的損失を最小にするように文識別器のパラメータを調整し、次に、敵対的報酬を最大にするようにキャプション生成器のパラメータを調整する。文識別器とキャプション生成器を交互にトレーニング(調整)することで、キャプション生成器を最適化することができる。
2.オブジェクト包含報酬の最適化:識別されたオブジェクトの、キャプション生成器によって生成された擬似文における包含度を計算する。例えば、識別されたオブジェクトにtree、man、benchが含まれる。文1にtree(信頼度0.9)が含まれ、文2にtree(信頼度0.8)とman(信頼度0.7)が含まれている場合、文2のオブジェクト包含報酬は文1よりも高い。トレーニングの目的は、オブジェクト包含報酬をできるだけ改善することであり、パラメータを調整するたびにオブジェクト包含報酬が改善される。
3.自己監視トリプレット損失の最適化:図3の入力サンプルは、クエリ画像、ポジティブ画像、ネガティブ画像を含むトリプレットであってもよい。異なる画像は異なる擬似文を生成することができ、クエリ文、ポジティブ文およびネガティブ文の間の意味的類似性を比較することによって、自己監視トリプレット損失が確定される。トレーニングの目的は、ポジティブ文が意味的にクエリ文に近く、ネガティブ文がクエリ文と意味的に関連しないように自己監視トリプレット損失を減らすことである。
【0084】
トレーニング段階では、本開示は自己学習モードを採用し、擬似キャプションペアの生成及びキャプション生成器の再トレーニングの2つのプロセスを交互に行うことにより、モデル全体を最適化し、キャプション生成器を繰り返して改善するという目的を達成する。
【0085】
本開示は、意味的制約に基づく自己学習フレームワークを提案し、非ペア画像キャプションの自己学習アイデアを深く研究した。この問題は擬似文生成及び繰り返し最適化を構築するという観点から検討され、文生成の品質が徐々に向上された。さらに、意味的制約がモデルにうまく統合され、画像におけるオブジェクトの意味を十分に活用してキャプション生成器のトレーニングをガイドし、高度な教師なしキャプション生成方法が得られた。
【0086】
さらに図4を参照し、キャプションを出力するための方法のもう一つの実施形態のフロー400を示す。キャプションを出力するための該方法のフロー400は以下のステップを含む。
【0087】
ステップ401では、処理対象の画像を取得する。
【0088】
本実施形態において、キャプションを出力するための方法が実行される電子機器(例えば、図1に示されるサーバ)は、有線接続または無線接続を介してユーザがキャプション編集を行う端末から処理対象の画像を受信することができる。処理対象の画像は単一の画像であってもよく、ビデオファイルであってもよく、サーバがビデオをフレーム分割して、処理対象の画像を取得する。
【0089】
ステップ402では、キャプション生成器に画像を入力し、画像に対応するキャプションを出力する。
【0090】
本実施形態では、キャプション生成器は、ステップ201~205の方法によってトレーニングされたものである。キャプション生成器により画像にキャプションを自動的に付けることができる。キャプションが画像に直接出力されてもよいし、独立したファイルを生成して端末に返し、端末がユーザのニーズに応じてキャプションのフォーマットを設定して、画像に出力してもよい。キャプション生成器は、キャプションを力できるだけでなく、画像エンコーダによって識別されたオブジェクトを出力することもでき、トレーニングプロセス中の意味的制約に使用され得る。
【0091】
ステップ401~402は、ステップ201~205と交互に実行されてもよい。ステップ401~402で生成されたキャプションは、ステップ201~205のトレーニングサンプルとして使用され得る。
【0092】
図4から分かるように、図2に対応する実施形態と比較して、本実施形態におけるキャプションを出力するための方法のフロー400は、キャプション生成器の応用ステップを具現する。このように、本実施形態で説明する技術的手段は、キャプション生成器を介してトレーニングサンプルを生成し、それらをキャプション生成器のトレーニングに再利用し、キャプションの生成とキャプション生成器の再トレーニングを交互に行うことにより、キャプション生成器を最適化し、キャプションの生成精度を向上させることができる。
【0093】
さらに図5を参照し、上記各図に示された方法の実現として、本開示はキャプション生成器を生成するための装置の一実施形態を提供し、該装置の実施形態は図2に示された方法の実施形態に対応し、該装置は様々な電子機器に適用可能である。
【0094】
図5に示すように、本実施形態のキャプション生成器を生成するための装置500は、取得ユニット501、符号化ユニット502、グループ化ユニット503、復号化ユニット504およびトレーニングユニット505を備える。取得ユニット501は、サンプル画像セットを取得するように構成され、符号化ユニット502は、前記サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するように構成され、グループ化ユニット503は、前記オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するように構成され、復号化ユニット504は、前記画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、前記第1のオブジェクトセットと前記第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するように構成され、トレーニングユニット505は、前記擬似画像文ペアのセットをサンプルセットとして前記文生成器をトレーニングし、キャプション生成器を取得するように構成される。
【0095】
本実施形態において、キャプション生成器を生成するための装置500の取得ユニット501、符号化ユニット502、グループ化ユニット503、復号化ユニット504およびトレーニングユニット505の特定の処理は、図2の対応実施形態におけるステップ201、ステップ202、ステップ203、ステップ204およびステップ205を参照することができる。
【0096】
本実施形態のいくつかのオプション的な実施形態では、該装置は、文識別器によってキャプション生成器を敵対的トレーニングして、キャプション生成器を最適化する方法と、キャプション生成器によって識別されたオブジェクトの、キャプション生成器から出力された文における包含度によって、キャプション生成器を最適化する方法と、クエリ画像、ポジティブ画像、ネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関によって、キャプション生成器を最適化する方法とのうちの少なくとも1つによって、キャプション生成器を最適化するように構成される最適化ユニット(図示せず)をさらに備える。
【0097】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、画像および対応する実文を含む第1のサンプルからなる、予め設定された第1のサンプルセットを抽出するステップと、入力された画像を画像符号化した後、文の復号化を行って擬似文を取得するためのキャプション生成器と、入力された文がキャプション生成器から出力された擬似文であるか否かを判断するための文識別器とを備える、予め作成された敵対的生成ネットワークを抽出するステップと、機械学習装置に基づいて、第1のサンプルセットから第1のサンプルを選択し、選択された第1のサンプルにおける画像をキャプション生成器に入力して、擬似文を出力するステップと、擬似文と選択された第1のサンプルの実文を文識別器に入力し、識別結果を力するステップと、出力された識別結果に基づいて、文識別器の正解率を統計するステップと、正解率が所定値に達した場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む第1のトレーニングステップを実行するステップとを実行するように構成される。
【0098】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、正解率が所定値に達していない場合、文識別器の敵対的損失を計算し、敵対的損失が小さくなるように文識別器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するように構成される。
【0099】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、正解率が所定値に達していない場合、キャプション生成器の敵対的報酬を計算し、敵対的報酬が増加するようにキャプション生成器の関連パラメータを調整し、第1のサンプルセットから第1のサンプルを再選択し、第1のトレーニングステップを引き続き実行するように構成される。
【0100】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、画像を含む第2のサンプルからなる、予め設定された第2のサンプルセットを抽出するステップと、機械学習装置に基づいて、第2のサンプルセットからサンプルを選択し、選択された第2のサンプルにおける画像をキャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、サンプルオブジェクトセットをキャプション生成器の文デコーダに入力し、擬似文を出力するステップと、擬似文に含まれるサンプルオブジェクトセットのサンプルオブジェクトの信頼度平均スコアを計算し、擬似文のオブジェクト包含報酬とするステップと、オブジェクト包含報酬が所定の包含報酬閾値に達した場合、キャプション生成器のトレーニングが完了したと判断するステップと、を含む第2のトレーニングステップを実行するステップと、を実行するように構成される。
【0101】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、オブジェクト包含報酬が所定の包含報酬閾値に達していない場合、オブジェクト包含報酬が増加するようにキャプション生成器の関連パラメータを調整し、第2のサンプルセットから第2のサンプルを再選択し、第2のトレーニングステップを引き続き実行するように構成される。
【0102】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、クエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と共通のオブジェクトがない第3のサンプルからなる、予め設定された第3のサンプルセットを抽出し、ネガティブ画像はクエリ画像と共通のオブジェクトがない、予め設定された第3のサンプルセットを抽出するステップと、機械学習装置に基づいて、第3のサンプルセットから第3のサンプルを選択し、選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれキャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文を出力するステップと、クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、第1の意味的類似度と第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、自己監視トリプレット損失が所定の損失閾値の未満である場合、キャプション生成器のトレーニングが完了したと判断するステップとを含む第3のトレーニングステップを実行するステップと、を実行するように構成される。
【0103】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、自己監視トリプレット損失が所定の損失閾値以上である場合、自己監視トリプレット損失が小さくなるようにキャプション生成器の関連パラメータを調整し、第3のサンプルセットから第3のサンプルを再選択し、第3のトレーニングステップを引き続き実行するように構成される。
【0104】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、クエリ文、ポジティブ文およびネガティブ文に対して、文中の各単語のオブジェクトベースの確率分布をそれぞれ計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップとを実行するように構成される。
【0105】
本実施形態のいくつかのオプション的な実施形態では、最適化ユニットはさらに、敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の加重合計が所定の目標値より大きい場合、加重合計が小さくなるように、キャプション生成器の関連パラメータを調整するように構成される。
【0106】
本実施形態のいくつかのオプション的な実施形態では、画像エンコーダには、領域レベルの注意メカニズムを備えた2層のLSTMを含み、第1層のLSTMはトップダウンの注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTMは文を生成するための言語モデルである。
【0107】
さらに図6を参照し、上記各図に示された方法の実現として、本開示はキャプションを出力するための装置の一実施形態を提供し、該装置の実施形態は図4に示された方法の実施形態に対応し、該装置は様々な電子機器に適用可能である。
【0108】
図6に示すように、本実施形態のキャプションを出力するための装置600は、処理対象の画像を取得するように構成される取得ユニット601と、装置500によって生成されたキャプション生成器に画像を入力し、画像に対応するキャプションを出力するように構成される出力ユニット602と、を備える。
【0109】
本開示の実施形態によれば、本開示はさらに電子機器および可読記憶媒体を提供する。
【0110】
図7は、本開示の実施形態を実施するために使用され得る例示的な電子機器700の概略ブロック図を示す。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークベンチ、パーソナル・デジタル・アシスタント、サーバ、ブレードサーバ、メインフレームコンピュータおよびその他適切なコンピュータなど様々な形態のデジタルコンピュータを表すことを目的としている。電子機器は、パーソナル・デジタル・アシスタント、携帯電話、スマートフォン、ウェアラブルデバイスおよびその他類似のコンピューティングデバイスなど、様々な形態のモバイルデバイスを表すこともできる。本明細書で示されているコンポーネント、それらの接続と関係およびそれらの機能は単なる例であり、本明細書で説明および/または要求されている本開示の実現を限定することを意図したものではない。
【0111】
図7に示すように、デバイス700は、読み取り専用メモリ(ROM)702に記憶されるコンピュータプログラムまたは記憶ユニット708からランダムアクセスメモリ(RAM)703にロードされるコンピュータプログラムに応じて、様々な適切な動作および処理を実行できる計算ユニット701を含む。RAM703には、デバイス700の動作に必要な様々なプログラムおよびデータが記憶されてもよい。計算ユニット701、ROM702およびRAM703は、バス704を介して互いに接続されている。入/出力(I/O)インターフェース705もバス704に接続される。
【0112】
デバイス700における複数のコンポーネントは、I/Oインターフェース705に接続されており、キーボード、マウスなどの入力ユニット706と、様々なタイプのディスプレイ、スピーカなどの出力ユニット707と、磁気ディスク、光ディスクなどの記憶ユニット708と、ネットワークカード、モデム、無線通信トランシーバなどの通信ユニット709とを含む。通信ユニット709は、デバイス700がインターネットのコンピュータネットワークおよび/または様々な電気通信ネットワークなどを介して、他のデバイスと情報/データを交換することを可能にする。
【0113】
計算ユニット701は、処理および計算能力を有する様々な汎用および/または専用の処理コンポーネントであってもよい。計算ユニット701のいくつかの例として、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、様々な専用の人工知能(AI)計算チップ、各種の機械学習モデルアルゴリズムを実行する計算ユニット、デジタル信号プロセッサ(DSP)および任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット701は、キャプション生成器を生成するための方法などの上記の各方法および処理を実行する。例えば、いくつかの実施形態では、キャプション生成器を生成するための方法は、記憶ユニット708などの機械読み取り可能な媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実装されてもよい。いくつかの実施形態では、コンピュータプログラムの一部または全部は、ROM702および/または通信ユニット709を介してデバイス700にロードおよび/またはインストールされてもよい。コンピュータプログラムがRAM703にロードされ、計算ユニット701によって実行される場合、上記のキャプション生成器を生成するための方法の1つまたは複数のステップが実行されてもよい。代替的に、他の実施形態では、計算ユニット701は、他の任意の適切な手段(例えば、ファームウェアによって)によって、キャプション生成器を生成するための方法を実行するように構成されてもよい。
【0114】
本開示の実施形態により提供されるキャプション生成器を生成するための方法および装置、ならびにキャプションを出力するための方法および装置は、画像キャプションに監視なしの解決策を提供することを目的とする。トレーニングのために大量の画像文ペアに大きく依存する従来の画像キャプション生成方法とは違って、本開示は、自己学習方法でキャプション生成器を学習することにより、この依存性を解消する。キャプション生成器は、よりリアルなシーンを追求して、ペアになっていない画像と文のデータでトレーニングできる。
【0115】
以上に記載されたシステムおよび技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップ(SOC)、ロードプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェアおよび/またはそれらの組み合わせで実装されてもよい。これらの様々な実施形態は、1つまたは複数のコンピュータプログラムに実施され、当該1つまたは複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラム可能なシステムで実行および/または解釈され得、当該プログラマブルプロセッサは、専用または汎用のプログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置および少なくとも1つの出力装置からデータおよび命令を受信し、且つデータおよび命令を当該記憶システム、当該少なくとも1つの入力装置および当該少なくとも1つの出力装置に伝送することができることを含み得る。
【0116】
本開示の方法を実施するためのプログラムコードは、1つまたは複数のプログラミング言語の任意の組み合わせを採用してプログラミングすることができる。これらのプログラムコードは、汎用コンピュータ、専用コンピュータまたは他のプログラマブルデータ処理装置のプロセッサまたはコントローラに提供され得、それによりプログラムコードは、プロセッサまたはコントローラによって実行されると、フローチャートおよび/またはブロック図で示される機能/操作が実施される。プログラムコードは、完全に機械で実行され、部分的に機械で実行され、独立したソフトウェアパッケージとして部分的に機械で実行され、部分的にリモートマシンで実行されまたは完全にリモートマシンまたはサーバで実行されてもよい。
【0117】
本開示のコンテキストでは、機械読み取り可能な媒体は、有形的な媒体であってもよく、命令実行システム、装置またはデバイスによって使用されるかまたは命令実行システム、装置またはデバイスと組み合わせて使用されるプログラムを含むかまたは記憶することができる。機械読み取り可能な媒体は、機械読み取り可能な信号媒体または機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子、磁気、光学、電磁気、赤外線または半導体システム、装置またはデバイスまたは上記の任意の適切な組み合わせを含み得るが、これらに限定されない。機械可読記憶媒体のより具体的な例は、1つまたは複数の配線に基づく電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光学的記憶デバイス、磁気的記憶デバイスまたは上記に記載された任意の適切な組み合わせを含む。
【0118】
ユーザとのやり取りを提供するために、コンピュータ上で、本明細書で説明されるシステムおよび技術を実施することができ、当該コンピュータは、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ)と、キーボードおよびポインティングデバイス(例えば、マウスまたはトラックボール)とを有し、ユーザは、当該キーボードおよび当該ポインティングデバイスによって入力をコンピュータに提供することができる。他の種類の装置も、ユーザとのやり取りを提供するために使用され得る。例えば、ユーザに提供されるフィードバックは、任意の形態のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバックまたは触覚フィードバック)であってもよく、任意の形態(音響入力、音声入力または触覚入力を含む)でユーザからの入力を受信することができる。
【0119】
本明細書で説明されるシステムおよび技術は、バックグラウンドコンポーネントを含む計算システム(例えば、データサーバとして)またはミドルウェアコンポーネントを含む計算システム(例えば、アプリケーションサーバ)またはフロントエンドコンポーネントを含む計算システム(例えば、グラフィカルユーザインターフェースまたはインターネットブラウザを有するユーザコンピュータであり、ユーザは、当該グラフィカルユーザインターフェースまたは当該インターネットブラウザを介して、本明細書で説明されるシステムおよび技術の実施形態とやり取りすることができる)またはこのようなバックグラウンドコンポーネント、ミドルウェアコンポーネントまたはフロントエンドコンポーネントの任意の組み合わせを含む計算システムで実施することができる。任意の形態または媒体のデジタルデータ通信(例えば、通信ネットワーク)によって、システムのコンポーネントを互いに接続することができる。通信ネットワークの例示的なものとして、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネットワークが含まれる。
【0120】
コンピュータシステムはクライアントおよびサーバを含むことができる。クライアントとサーバは一般的に互いに離れており、通常は通信ネットワークを介して相互作用している。クライアントとサーバの関係は、対応するコンピュータで実行されるとともに互いにクライアント-サーバの関係を持つコンピュータプログラムによって生成される。サーバは、分散システムのサーバであってもよいしまたはブロックチェーンと組み合わせたサーバであってもよい。サーバは、クラウドサーバであってもよいし、人工知能技術を備えたインテリジェントクラウドコンピューティングサーバまたはインテリジェントクラウドホストであってもよい。サーバは、分散システムのサーバであってもよいしまたはブロックチェーンと組み合わせたサーバであってもよい。サーバは、クラウドサーバであってもよいし、人工知能技術を備えたインテリジェントクラウドコンピューティングサーバまたはインテリジェントクラウドホストであってもよい。
【0121】
上記に示した様々な形態のフローを使用して、ステップを再ソート、追加または削除できることを理解されたい。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次に実行されてもよいし、異なる順序で実行されてもよく、本開示で開示されている技術的解決手段が所望の結果を実現できる限り、本明細書では限定しない。
【0122】
上記特定の実施形態は、本開示の保護範囲を限定するものではない。当業者は、設計要件および他の要因に従って、様々な修正、組み合わせ、サブコンビネーションおよび置換を行うことができると理解すべきである。本開示の精神および原則内で行われる任意の修正、同等の置き換えおよび改善などはいずれも本開示の保護範囲内に含まれるべきである。
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
キャプション生成器を生成するための方法であって、
サンプル画像セットを取得するステップと、
前記サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するステップと、
前記オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するステップと、
前記画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、前記第1のオブジェクトセットと前記第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するステップと、
前記擬似画像文ペアのセットをサンプルセットとして前記文生成器をトレーニングしてキャプション生成器を取得するステップと、
を含む、キャプション生成器を生成するための方法。
【請求項2】
文識別器によって前記キャプション生成器を敵対的トレーニングして、前記キャプション生成器を最適化する方法と、
前記キャプション生成器によって識別されたオブジェクトの、前記キャプション生成器から出力された文における包含度によって、前記キャプション生成器を最適化する方法と、
クエリ画像、ポジティブ画像およびネガティブ画像を含む画像トリプレットと、対応する生成文との間の意味的相関性に基づいて、前記キャプション生成器を最適化する方法と、
のうちの少なくとも1つによって、前記キャプション生成器を最適化するステップをさらに含む、請求項1に記載のキャプション生成器を生成するための方法。
【請求項3】
文識別器によって前記キャプション生成器を敵対的トレーニングして、前記キャプション生成器を最適化する方法は、
予め設定された、画像と対応する実文とを含む第1のサンプルからなる第1のサンプルセットを抽出するステップと、
予め作成された敵対的生成ネットワークを抽出するステップであって、前記敵対的生成ネットワークは、入力された画像を画像符号化した後に文の復号化を行って擬似文を取得するためのキャプション生成器と、入力された文が前記キャプション生成器から出力された擬似文であるか否かを判断するための文識別器とを備える、ステップと、
機械学習方法に基づいて、前記第1のサンプルセットから第1のサンプルを選択して第1のトレーニングステップを実行するステップと、を含み、
前記第1のトレーニングステップは、
選択された第1のサンプルにおける画像を前記キャプション生成器に入力して、擬似文を 出力するステップと、
前記擬似文と、選択された第1のサンプルにおける実文とを前記文識別器に入力して、識別結果を力するステップと、
出力された識別結果に基づいて、前記文識別器の正解率を統計するステップと、
前記正解率が所定値に達した場合、前記キャプション生成器のトレーニングが完了したと判定するステップとを含む
請求項2に記載のキャプション生成器を生成するための方法。
【請求項4】
前記正解率が前記所定値に達していない場合、前記文識別器の敵対的損失を計算し、前記敵対的損失が小さくなるように前記文識別器の関連パラメータを調整し、前記第1のサンプルセットから第1のサンプルを再選択し、前記第1のトレーニングステップを引き続き実行するステップをさらに含む、請求項3に記載のキャプション生成器を生成するための方法。
【請求項5】
前記正解率が前記所定値に達していない場合、前記キャプション生成器の敵対的報酬を計算し、前記敵対的報酬が増加するように前記キャプション生成器の関連パラメータを調整し、前記第1のサンプルセットから第1のサンプルを再選択し、前記第1のトレーニングステップを引き続き実行するステップをさらに含む、請求項3に記載のキャプション生成器を生成するための方法。
【請求項6】
前記キャプション生成器によって識別されたオブジェクトの、前記キャプション生成器から出力された文における包含度によって、前記キャプション生成器を最適化する方法は、
予め設定された、画像を含む第2のサンプルからなる第2のサンプルセットを抽出するステップと、
機械学習方法に基づいて、前記第2のサンプルセットからサンプルを選択して第2のトレーニングステップを実行するステップと、を含み、
前記第2のトレーニングステップは、
選択された第2のサンプルにおける画像を前記キャプション生成器の画像エンコーダに入力し、サンプルオブジェクトセットを出力するステップと、
前記サンプルオブジェクトセットをキャプション生成器の文デコーダに入力して擬似文を出力するステップと、
前記擬似文に前記サンプルオブジェクトセットのサンプルオブジェクトが含まれる信頼度平均スコアを計算して、前記擬似文のオブジェクト包含報酬とするステップと、
前記オブジェクト包含報酬が所定の包含報酬閾値に達した場合、前記キャプション生成器のトレーニングが完了したと判定するステップと、を含む
請求項2に記載のキャプション生成器を生成するための方法。
【請求項7】
前記オブジェクト包含報酬が前記所定の包含報酬閾値に達していない場合、前記オブジェクト包含報酬が増加するように前記キャプション生成器の関連パラメータを調整し、前記第2のサンプルセットから第2のサンプルを再選択し、前記第2のトレーニングステップを引き続き実行するステップをさらに含む、請求項6に記載のキャプション生成器を生成するための方法。
【請求項8】
画像トリプレットと、対応する生成文との間の意味的相関性に基づいて、前記キャプション生成器を最適化する方法は、
予め設定された第3のサンプルセットを抽出するステップであって、第3のサンプルのそれぞれはクエリ画像、ポジティブ画像およびネガティブ画像を含み、ポジティブ画像はクエリ画像と少なくとも2つのオブジェクトを共有し、ネガティブ画像はクエリ画像と共通のオブジェクトがない、ステップと、
機械学習方法に基づいて、前記第3のサンプルセットから第3のサンプルを選択して第3のトレーニングステップを実行するステップと、を含み、
前記第3のトレーニングステップは、
選択された第3のサンプルにおけるクエリ画像、ポジティブ画像およびネガティブ画像をそれぞれ前記キャプション生成器に入力し、クエリ文、ポジティブ文およびネガティブ文を出力するステップと、
クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップと、
前記第1の意味的類似度と前記第2の意味的類似度に基づいて、自己監視トリプレット損失を計算するステップと、
前記自己監視トリプレット損失が所定の損失閾値未満である場合、前記キャプション生成器のトレーニングが完了したと判定するステップとを含む、請求項2に記載のキャプション生成器を生成するための方法。
【請求項9】
前記自己監視トリプレット損失が前記所定の損失閾値以上である場合、前記自己監視トリプレット損失が小さくなるように前記キャプション生成器の関連パラメータを調整し、前記第3のサンプルセットから第3のサンプルを再選択し、前記第3のトレーニングステップを引き続き実行するステップをさらに含む、請求項8に記載のキャプション生成器を生成するための方法。
【請求項10】
クエリ文とポジティブ文との間の第1の意味的類似度を計算し、クエリ文とネガティブ文との間の第2の意味的類似度を計算するステップは、
クエリ文、ポジティブ文およびネガティブ文に対して、それぞれ文中の各単語のオブジェクトベースの確率分布を計算し、最大プーリング操作を行って、クエリ文の特徴、ポジティブ文の特徴およびネガティブ文の特徴をそれぞれ取得するステップと、
クエリ文の特徴とポジティブ文の特徴との間の第1の意味的類似度を計算し、クエリ文の特徴とネガティブ文の特徴との間の第2の意味的類似度を計算するステップと、を含む、請求項8に記載のキャプション生成器を生成するための方法。
【請求項11】
敵対的報酬、オブジェクト包含報酬および自己監視トリプレット損失の加重合計が所定の目標値より大きい場合、前記加重合計が小さくなるように、キャプション生成器の関連パラメータを調整するステップをさらに含む、請求項2~10のいずれか1項に記載のキャプション生成器を生成するための方法。
【請求項12】
前記画像エンコーダは、領域レベルの注意メカニズムを備えた2層のLSTMを含み、第1層のLSTMはトップダウンの注意モジュールとして機能し、コンテキスト情報に基づいてオブジェクトレベルの注意を計算し、第2層のLSTMは文を生成するための言語モデルである、請求項1~10のいずれか1項に記載のキャプション生成器を生成するための方法。
【請求項13】
処理対象の画像を取得するステップと、
請求項1~12のいずれか1項に記載のキャプション生成器を生成するための方法によって生成されたキャプション生成器に前記画像を入力し、前記画像に対応するキャプションを出力するステップと、を含む、キャプションを出力するための方法。
【請求項14】
キャプション生成器を生成するための装置であって、
サンプル画像セットを取得するように構成される取得ユニットと、
前記サンプル画像セットを文生成器の画像エンコーダに入力し、オブジェクトセットを出力するように構成される符号化ユニットと、
前記オブジェクトセットを、所定のオブジェクトセットに含まれているオブジェクトセットである第1のオブジェクトセットと、所定のオブジェクトセットから除外されたオブジェクトセットである第2のオブジェクトセットとにグループ化するように構成されるグループ化ユニットと、
前記画像エンコーダにより出力されたオブジェクトセットを文生成器の文デコーダに入力し、復号ステップにおいて、前記第1のオブジェクトセットと前記第2のオブジェクトセットを制約条件としてビームサーチを行い、擬似画像文ペアのセットを生成するように構成される復号化ユニットと、
前記擬似画像文ペアのセットをサンプルセットとして前記文生成器をトレーニングしてキャプション生成器を取得するように構成されるトレーニングユニットと、を備える、キャプション生成器を生成するための装置。
【請求項15】
処理対象の画像を取得するように構成される取得ユニットと、
請求項1~12のいずれか1項に記載のキャプション生成器を生成するための方法によって生成されたキャプション生成器に前記画像を入力し、前記画像に対応するキャプションを出力するように構成される出力ユニットと、を備える、キャプションを出力するための装置。
【請求項16】
少なくとも1つのプロセッサと、少なくとも1つのコンピュータプログラムが格納されているメモリと、を備える電子機器であって、
前記少なくとも1つのコンピュータプログラムが前記少なくとも1つのプロセッサによって実行される場合、前記少なくとも1つのプロセッサが請求項1~13のいずれか1項に記載の方法を実現する、電子機器。
【請求項17】
プロセッサによって実行される場合、請求項1~13のいずれか1項に記載の方法を実現するコンピュータプログラムが格納されているコンピュータ可読媒体。
【請求項18】
プロセッサによって実行される場合、請求項1~13のいずれか1項に記載の方法を実現するコンピュータプログラム。
【国際調査報告】