(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-05-15
(45)【発行日】2024-05-23
(54)【発明の名称】テキスト生成装置、テキスト生成方法、およびプログラム
(51)【国際特許分類】
G06F 40/56 20200101AFI20240516BHJP
G06F 40/44 20200101ALI20240516BHJP
G06F 16/532 20190101ALI20240516BHJP
G06F 16/56 20190101ALI20240516BHJP
G06N 3/08 20230101ALI20240516BHJP
【FI】
G06F40/56
G06F40/44
G06F16/532
G06F16/56
G06N3/08
(21)【出願番号】P 2023020611
(22)【出願日】2023-02-14
【審査請求日】2023-02-14
(73)【特許権者】
【識別番号】397065480
【氏名又は名称】エヌ・ティ・ティ・コムウェア株式会社
(74)【代理人】
【識別番号】100083806
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100101247
【氏名又は名称】高橋 俊一
(74)【代理人】
【識別番号】100095500
【氏名又は名称】伊藤 正和
(72)【発明者】
【氏名】川前 徳章
【審査官】齊藤 貴孝
(56)【参考文献】
【文献】中国特許出願公開第114299517(CN,A)
【文献】国際公開第2022/185432(WO,A1)
【文献】中国特許出願公開第114549935(CN,A)
【文献】中国特許出願公開第113762261(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-40/58
G06F 16/00-16/958
G06N 3/00-3/126
(57)【特許請求の範囲】
【請求項1】
画像を入力すると画像を説明するテキストを生成するテキスト生成装置であって、
画像を入力して画像特徴量を抽出する入力部と、
前記画像特徴量を学習済みのモデルに投入し、当該モデルから再帰的に出力される単語をつなげてテキストを生成する生成部を備え、
前記モデルは、アテンションメカニズムとしてエンコーダとデコーダをまたいで共通のアテンションマスクを利用するアクロスアテンションメカニズムを導入するとともに、ターゲットに特有の情報を抽出してテキスト生成に反映するトピックレイヤを追加したTransformerベースのモデルである
テキスト生成装置。
【請求項2】
請求項1に記載のテキスト生成装置であって、
画像と当該画像を説明するテキストのペアを学習データとして入力し、エンコーダに投入された前記画像の画像特徴量から得られるトピックとデコーダに投入された前記テキストから得られるトピックとが近くなり、トピックがテキスト生成に反映されるように前記モデルを学習する学習部を備え、
学習時のアテンションマスクは、画像特徴量については全ての画像特徴量と前記テキストの全ての単語へのアクセスを可能とし、単語については全ての画像特徴量と当該単語よりも前に出現した単語へのアクセスを可能とするアテンションマスクである
テキスト生成装置。
【請求項3】
画像を入力すると画像を説明するテキストを生成するテキスト生成方法であって、
コンピュータが、
画像を入力して画像特徴量を抽出し、
前記画像特徴量を学習済みのモデルに投入し、当該モデルから再帰的に出力される単語をつなげてテキストを生成し、
前記モデルは、アテンションメカニズムとしてエンコーダとデコーダをまたいで共通のアテンションマスクを利用するアクロスアテンションメカニズムを導入するとともに、ターゲットに特有の情報を抽出してテキスト生成に反映するトピックレイヤを追加したTransformerベースのモデルである
テキスト生成方法。
【請求項4】
請求項3に記載のテキスト生成方法であって、
画像と当該画像を説明するテキストのペアを学習データとして入力し、
エンコーダに投入された前記画像の画像特徴量から得られるトピックとデコーダに投入された前記テキストから得られるトピックとが近くなり、トピックがテキスト生成に反映されるように前記モデルを学習し、
学習時のアテンションマスクは、画像特徴量については全ての画像特徴量と前記テキストの全ての単語へのアクセスを可能とし、単語については全ての画像特徴量と当該単語よりも前に出現した単語へのアクセスを可能とするアテンションマスクである
テキスト生成方法。
【請求項5】
請求項1または2に記載のテキスト生成装置の各部としてコンピュータを動作させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、テキスト生成装置、テキスト生成方法、およびプログラムに関する。
【背景技術】
【0002】
AIの応用分野の一つである自然言語処理の世界ではテキストの自動生成が実現し、画像処理の分野も画像認識の精度が実用レベルの精度を達成している。これらの分野の融合として、画像を理解して、その内容をテキストで記述する「画像説明テキスト生成」が着目されている。従来の技術でも一般的な画像に対するテキスト生成だけでなく、ドメインに特化したテキスト生成が期待されている。
【先行技術文献】
【非特許文献】
【0003】
【文献】Marcella Cornia, Matteo Stefanini, Lorenzo Baraldi, and Rita Cucchiara, “Meshed-Memory Transformer for Image Captioning”, In CVPR, 2020, 10575-10584
【文献】Jun Chen, Han Guo, Kai Yi, Boyang Li, and Mohamed Elhoseiny,“VisualGPT: Data-Efficient Adaptation of Pretrained Language Models for Image Captioning”, In CVPR, 2022, 18030-18040.
【発明の概要】
【発明が解決しようとする課題】
【0004】
特定の事業やサービスでテキスト生成モデルを利用する際、テキスト生成に事前学習済みモデルを利用することで学習コストを削減できるが、学習済みモデル(ソース)の影響が強く、生成するテキストにターゲットの知識を反映しにくいという問題があった。学習済みモデルのドメイン(ソースドメイン)を適用先のドメイン(ターゲットドメイン)に適用させることをドメインシフトという。
【0005】
本開示は、上記に鑑みてなされたものであり、画像から、ターゲットの知識が反映されたテキストを生成することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一態様のテキスト生成装置は、画像を入力すると画像を説明するテキストを生成するテキスト生成装置であって、画像を入力して画像特徴量を抽出する入力部と、前記画像特徴量を学習済みのモデルに投入し、当該モデルから再帰的に出力される単語をつなげてテキストを生成する生成部を備え、前記モデルは、アテンションメカニズムとしてエンコーダとデコーダをまたいで共通のアテンションマスクを利用するアクロスアテンションメカニズムを導入するとともに、ターゲットに特有の情報を抽出してテキスト生成に反映するトピックレイヤを追加したTransformerベースのモデルである。
【0007】
本開示の一態様のテキスト生成方法は、画像を入力すると画像を説明するテキストを生成するテキスト生成方法であって、コンピュータが、画像を入力して画像特徴量を抽出し、前記画像特徴量を学習済みのモデルに投入し、当該モデルから再帰的に出力される単語をつなげてテキストを生成し、前記モデルは、アテンションメカニズムとしてエンコーダとデコーダをまたいで共通のアテンションマスクを利用するアクロスアテンションメカニズムを導入するとともに、ターゲットに特有の情報を抽出してテキスト生成に反映するトピックレイヤを追加したTransformerベースのモデルである。
【発明の効果】
【0008】
本開示によれば、画像から、ターゲットの知識が反映されたテキストを生成できる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、テキスト生成システムの構成の一例を示す図である。
【
図2】
図2は、モデルのデコーダの構成の一例を示す図である。
【
図3】
図3は、アクロスアテンションマスクの一例を示す図である。
【
図4】
図4は、テキスト生成システムの学習処理の流れの一例を示すフローチャートである。
【
図5】
図5は、テキスト生成システムのテキスト生成処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
[システム構成]
以下、本発明の実施の形態について図面を用いて説明する。
【0011】
本実施形態のテキスト生成システムは、Transformerをベースとしたモデルを利用し、画像を入力すると画像を説明するテキストを生成するシステムである。
【0012】
Transformerは主に自然言語処理分野で用いられる深層学習モデルである。Transformerは入力した単語からその次に出現する単語を確率的に予測し、これを再帰的に繰り返すことでデキストを生成できる。Transformer encoder(エンコーダ)で画像の特徴量の埋め込み表現を求める。Transformer decoder(デコーダ)は、画像の特徴量の埋め込み表現を参照しながら、テキストを生成する。
【0013】
本実施形態では、ターゲットの知識を反映したテキストを生成するため、Transformerにacross attention(アクロスアテンション)、mapping layer(マッピングレイヤ)、およびtopic layer(トピックレイヤ)を導入してドメインシフトを実現した。アクロスアテンションはTransformerの既存のアテンションを改良したアテンション機構である。マッピングレイヤは画像とテキストを同じ潜在空間にマッピングする。トピックレイヤはターゲットに特有の情報を抽出してテキスト生成に反映する。事前学習済みモデルをトピックに着目してドメインシフトすることにより、既存モデルよりも少ないデータで高い精度の画像説明テキストを生成できる。提案モデルの詳細については後述する。
【0014】
図1は、本実施形態のテキスト生成システムの構成の一例を示す図である。
図1に示すテキスト生成システム1は、学習部10、生成部20、データ保存部30、計算結果記憶部40、および入出力部50を備える。テキスト生成システム1が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムはテキスト生成システム1が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリなどの記録媒体に記録することも、ネットワークを通して提供することも可能である。
【0015】
学習部10は、学習データとして画像とその画像を説明するテキストのペアを入力し、エンコーダに画像を投入し、デコーダにテキストを投入して、画像とテキストの関連性を学習する。学習部10は、画像から特徴量を抽出し、テキストから単語を抽出して、画像特徴量と単語をモデルに投入する。学習部10は、画像特徴量を単語と同じ潜在空間にマッピングするとともに、画像特徴量から得られるトピックとテキストから得られるトピックが近くなり、ターゲットに特有の情報がテキスト生成に反映されるようにモデルを学習する。
【0016】
生成部20は、画像を学習済みモデルに入力し、画像を説明するテキストを生成する。
【0017】
データ保存部30は、画像とテキストなどの学習データを保持する。
【0018】
計算結果記憶部40は、テキストを生成する深層学習モデル、学習によって得られた深層学習モデルのパラメータ、画像の特徴量と単語の分散ベクトル(分散埋め込み表現)などの計算結果を保持する。
【0019】
入出力部50は、ユーザ端末5から画像を入力して生成部20へ送信し、生成部20から生成したテキストを受信してユーザ端末5に返却する。
【0020】
[提案モデル]
図2を参照し、本実施形態で提案するモデルについて説明する。エンコーダはm層のブロックを有し、デコーダはl層のブロックを有する。
図2では、エンコーダのm層目とデコーダのl層目とトピックレイヤを図示している。エンコーダはアクロスアテンション以外は通常のTransformer encoderと同様の構造である。デコーダは、通常のTransformer decoderのマルチヘッドアテンションをアクロスアテンションに変更した構造である。m層目のエンコーダには、前の層のアウトプットH
m-1が入力される。l層目のデコーダには、前の層のアウトプットH
l-1が入力される。
【0021】
まず、アクロスアテンションについて説明する。
図3にアクロスアテンションで用いるアテンションマスクの一例を示す。アクロスアテンションは、エンコーダとデコーダで共通のものを使用する。
図3では、学習時と推論時のそれぞれで用いるアテンションマスクを、縦方向に参照元の画像特徴量のトークンと単語のトークンを並べ、横方向に参照先の画像特徴量のトークンと単語のトークンを並べて示した。網掛けしたマスは参照可能なトークンを示す。
図3の上段の学習時のアテンションマスクでは、画像特徴量のトークンは全ての画像特徴量のトークンと全ての単語のトークンを参照でき、単語のトークンは全ての画像のトークンとそれまでに出現した単語のトークンを参照できる。
図3の下段の推論時のアテンションマスクでは、画像特徴量のトークンは全ての画像特徴量のトークンのみを参照でき、単語のトークンは全ての画像のトークンとそれまでに出現した単語のトークンを参照できる。エンコーダとデコーダをまたいでアテンションマスクを利用するので、アクロスアテンションと称している。
【0022】
エンコーダとデコーダへの入力Ha
0は次式で表される。
【0023】
【0024】
エンコーダとデコーダのl層目の出力Ha
lは次式で表される。
【0025】
【0026】
アクロスアテンションは、アテンションマスクMを用いて次式で計算する。
【0027】
【0028】
ここで、dhは次元数、Oはイメージサイズ、tはテキストの入力の長さである。Hlは、TransformerのアテンションのQに相当し、デコーダのl層のブロックにおける前の層(Masked Self Attention)の出力である。Hmは、TransformerのアテンションのK,Vに相当し、エンコーダのm層のブロックの内部状態とデコーダからのK,Vを含む。これにより、テキストの単語から画像のどの部分に注意を向けるのかということを学習できる。
【0029】
続いて、トピックレイヤについて説明する。
【0030】
トピックを表す変数zを導入すると、テキストの生成モデルは以下のように分解できる。
【0031】
【0032】
ここで、Dは学習データのテキストの数である。Kはトピックの数である。K種類のトピックのそれぞれに対して重みをつけて、過去のデータをうまく分けつつ、かつ、ターゲットのデータを学習して反映させる。
【0033】
エンコーダとデコーダのそれぞれの上に次式で表されるトピックレイヤΧI,ΧTを導入する。
【0034】
【0035】
提案モデルは、学習タスクとしてMRM、TIM、TDM、およびTTMを導入した。
【0036】
MRMは、画像の視覚的特徴とエンコーダが予測する特徴との誤差を表す。MRMは次式で定義される。
【0037】
【0038】
ここで、vk,mはm番目の画像特徴量を表し、vk,m(上に^)はm番目の画像特徴量をマスクして予測したm番目の画像特徴量である。
【0039】
TIMは、トピックを用いて学習データの画像とテキスト間の近さを表す。TIMにより、画像とテキストのトピックが近くなるように学習する。
【0040】
【0041】
TDMは、次式で定義される。TDMにより、エンコーダとデコーダのトピックレイヤの確率分布の差ができるだけ小さくなるように学習する。
【0042】
【0043】
TTMは、エンコーダとデコーダのトピックの誤差を表す。TTMにより、画像から得られるトピックとテキストから得られるトピックとが近くなるように学習し、画像とテキストを同じ潜在空間にマッピングする。TTMは次式で定義される。
【0044】
【0045】
モデルの学習は、以下の目的関数LKEICを最大化することで実施する。
【0046】
【0047】
LTLNにより、トピックがテキスト生成に反映されるように学習する。
【0048】
[動作]
次に、
図4のフローチャートを参照し、学習処理について説明する。
【0049】
ステップS11にて、学習部10は、データ保存部30から画像とテキストのペアの学習データを読み出して、トークナイザーによりテキストを単語に分割する。
【0050】
ステップS12にて、学習部10は、画像から特徴量を抽出し、画像特徴量の埋め込み表現と単語の埋め込み表現をモデルに投入する。
【0051】
ステップS13にて、学習部10は、上記で示した目的関数を最小化するようにモデルのパラメータを更新する。
【0052】
次に、
図5のフローチャートを参照し、テキスト生成処理について説明する。
【0053】
ステップS21にて、生成部20は、画像を入力し、画像特徴量の埋め込み表現をモデルに投入する。
【0054】
ステップS22にて、生成部20は、シードワードを入力し、単語の埋め込み表現をモデルに投入する。
【0055】
ステップS23にて、生成部20は、シードワードに続く単語をモデルから得る。
【0056】
ステップS24にて、生成部20は、テキストの生成が終了したか否か判定する。例えば、生成部20は、テキストの終了を示す“<end>”が出力された場合、またはテキスト長が所定の最大文字数に達した場合に終了と判定する。
【0057】
テキストの生成を続ける場合、ステップS22に戻り、得られた単語をシードワードの後に繋げてモデルに投入する。
【0058】
テキストの生成が終了した場合、ステップS25にて、生成部20は、単語をつなげて画像を説明するテキストを出力する。生成されたテキストは、入出力部50からユーザ端末5へ返却される。
【0059】
以上説明したように、本実施形態のテキスト生成システム1は、画像を入力して画像特徴量を抽出する入出力部50と、画像特徴量を学習済みのモデルに投入し、当該モデルから再帰的に出力される単語をつなげてテキストを生成する生成部20を備える。提案モデルは、アテンションメカニズムとしてエンコーダとデコーダをまたいで共通のアテンションマスクを利用するアクロスアテンションメカニズムを導入するとともに、ターゲットに特有の情報を抽出してテキスト生成に反映するトピックレイヤを追加したTransformerベースのモデルである。これにより、画像から、ターゲットの知識が反映されたテキストを生成することができる。
【0060】
テキスト生成システム1は、画像と当該画像を説明するテキストのペアを学習データとして入力し、エンコーダに投入された画像の画像特徴量から得られるトピックとデコーダに投入されたテキストから得られるトピックとが近くなり、ターゲットに特有の情報がテキスト生成に反映されるようにモデルを学習する学習部10を備える。学習時のアテンションマスクは、画像特徴量については全ての画像特徴量と全ての単語へのアクセスを可能とし、単語については全ての画像特徴量と当該単語よりも前に出現した単語へのアクセスを可能とするアテンションマスクである。これにより、事前学習済みモデルをトピックに着目してドメインシフトでき、既存モデルよりも少ない学習データで高い精度の画像説明テキストを生成できる。既存モデルよりも計算コストを抑えることができる。
【符号の説明】
【0061】
1 テキスト生成システム
10 学習部
20 生成部
30 データ保存部
40 計算結果記憶部
50 入出力部
5 ユーザ端末
【要約】 (修正有)
【課題】画像から、ターゲットの知識が反映されたテキストを生成する。
【解決手段】テキスト生成システム1は、画像を入力して画像特徴量を抽出する入出力部50と、画像特徴量を投入した学習済みのモデルから再帰的に出力される単語をつなげてテキストを生成する生成部20と、画像と画像を説明するテキストのペアを学習データとして入力し、エンコーダに投入された画像の画像特徴量から得られるトピックとデコーダに投入されたテキストから得られるトピックとが近くなり、トピックがテキスト生成に反映されるようにモデルを学習する学習部10と、を備える。提案モデルは、アテンションメカニズムとしてエンコーダとデコーダをまたいで共通のアテンションマスクを利用するアクロスアテンションメカニズムを導入するとともに、ターゲットに特有の情報を抽出してテキスト生成に反映するトピックレイヤを追加したTransformerベースのモデルである。
【選択図】
図1