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

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

▶ ヤフー株式会社の特許一覧

特開2024-134278情報処理装置、情報処理方法、及び情報処理プログラム
<>
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図1
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図2
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図3
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図4
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図5
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図6
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図7
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図8
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図9
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図10
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024134278
(43)【公開日】2024-10-03
(54)【発明の名称】情報処理装置、情報処理方法、及び情報処理プログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240926BHJP
   G06T 11/80 20060101ALI20240926BHJP
   G06T 7/11 20170101ALI20240926BHJP
   G06T 7/194 20170101ALI20240926BHJP
【FI】
G06T7/00 350B
G06T11/80 A
G06T7/11
G06T7/194
【審査請求】未請求
【請求項の数】18
【出願形態】OL
(21)【出願番号】P 2023044500
(22)【出願日】2023-03-20
(71)【出願人】
【識別番号】500257300
【氏名又は名称】LINEヤフー株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】土井 賢治
(72)【発明者】
【氏名】西村 修平
【テーマコード(参考)】
5B050
5L096
【Fターム(参考)】
5B050AA10
5B050BA06
5B050EA09
5L096AA06
5L096DA01
5L096EA05
5L096EA35
5L096GA10
5L096JA03
5L096KA04
(57)【要約】
【課題】画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成する。
【解決手段】本願に係る情報処理装置は、取得部と、生成部とを有する。取得部は、ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、テキストに基づくアテンションに応じて画像を復元するように学習されたモデルである拡散モデルと、ユーザが入力した入力テキストとを取得する。生成部は、取得部により取得された拡散モデルと入力テキストとを用いて、入力テキストに対応する対応画像を生成し、入力テキストが示す対象範囲の特徴を示す特徴情報を生成する。
【選択図】図4
【特許請求の範囲】
【請求項1】
ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、前記テキストに基づくアテンションに応じて前記画像を復元するように学習されたモデルである拡散モデルと、ユーザが入力した入力テキストとを取得する取得部と、
前記取得部により取得された前記拡散モデルと前記入力テキストとを用いて、前記入力テキストに対応する対応画像を生成し、前記入力テキストが示す対象範囲の特徴を示す特徴情報を生成する生成部と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記生成部は、
前記入力テキストが示す前記対象範囲の特徴を示すベクトルを前記特徴情報として生成する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記生成部は、
機械学習の学習データとして用いる前記特徴情報を生成する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記生成部は、
前記入力テキストに対応する対応画像を生成し、前記拡散モデルが前記対応画像の生成時に用いたアテンションに基づいて、前記対応画像のうち、前記入力テキストが示す前記対象範囲の特徴を示す前記特徴情報を生成する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項5】
前記生成部は、
前記入力テキストに対応する対応画像を生成し、前記拡散モデルが前記対応画像の生成時に用いた前記入力テキストに含まれるトークンの各々に対応するアテンションに基づいて、前記対応画像のうち、前記トークンが示す前記対象範囲の特徴を示す前記特徴情報を生成する
ことを特徴とする請求項4に記載の情報処理装置。
【請求項6】
前記取得部は、
前記入力テキストに含まれるトークンのうち一のトークンを指定する指定情報を取得し、
前記生成部は、
前記入力テキストに含まれるトークンのうち、前記指定情報により指定された前記一のトークンに対応するアテンションに基づいて、前記対応画像のうち、前記一のトークンが示す前記対象範囲の特徴を示す前記特徴情報を生成する
ことを特徴とする請求項5に記載の情報処理装置。
【請求項7】
前記取得部は、
前記入力テキストに含まれるトークンのうち複数のトークンを指定する指定情報を取得し、
前記生成部は、
前記入力テキストに含まれるトークンのうち、前記指定情報により指定された前記複数のトークンの各々に対応するアテンションに基づいて、前記対応画像のうち、前記複数のトークンが示す前記対象範囲の特徴を示す前記特徴情報を生成する
ことを特徴とする請求項6に記載の情報処理装置。
【請求項8】
前記生成部は、
前記複数のトークンの論理和に対応する前記対象範囲の特徴を示す前記特徴情報を生成する
ことを特徴とする請求項7に記載の情報処理装置。
【請求項9】
前記生成部は、
前記複数のトークンの論理積に対応する前記対象範囲の特徴を示す前記特徴情報を生成する
ことを特徴とする請求項7に記載の情報処理装置。
【請求項10】
前記生成部は、
前記入力テキストに含まれる名詞である前記トークンの各々に対応するアテンションに基づいて、前記対応画像のうち、前記トークンが示す前記対象範囲の特徴を示す前記特徴情報を生成する
ことを特徴とする請求項5に記載の情報処理装置。
【請求項11】
前記生成部は、
前記入力テキストに含まれる動詞である前記トークンの各々に対応するアテンションに基づいて、前記対応画像のうち、前記トークンが示す前記対象範囲の特徴を示す前記特徴情報を生成する
ことを特徴とする請求項5に記載の情報処理装置。
【請求項12】
前記生成部は、
前記入力テキストに対応する対応画像を生成し、前記拡散モデルの生成処理時の所定段階におけるアテンションに基づいて、前記対応画像のうち、前記入力テキストが示す前記対象範囲の特徴を示す前記特徴情報を生成する
ことを特徴とする請求項4に記載の情報処理装置。
【請求項13】
前記ノイズ画像から前記テキストが示す前記画像を段階的に復元するように学習が行われたモデルであって、前記テキストに基づくアテンションに応じて前記画像を復元するように学習されたモデルである前記拡散モデルを学習する学習部、
を備えることを特徴とする請求項4に記載の情報処理装置。
【請求項14】
前記生成部により生成された前記特徴情報を用いたサービスを提供する提供部、
をさらに備えることを特徴とする請求項1に記載の情報処理装置。
【請求項15】
前記提供部は、
前記生成部により生成された前記特徴情報を前記ユーザに提供する
ことを特徴とする請求項14に記載の情報処理装置。
【請求項16】
前記提供部は、
前記生成部により生成された前記特徴情報を前記ユーザが利用する端末装置に送信する
ことを特徴とする請求項15に記載の情報処理装置。
【請求項17】
コンピュータが実行する情報処理方法であって、
ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、前記テキストに基づくアテンションに応じて前記画像を復元するように学習されたモデルである拡散モデルと、ユーザが入力した入力テキストとを取得する取得工程と、
前記取得工程により取得された前記拡散モデルと前記入力テキストとを用いて、前記入力テキストに対応する対応画像を生成し、前記入力テキストが示す対象範囲の特徴を示す特徴情報を生成する生成工程と、
を含むことを特徴とする情報処理方法。
【請求項18】
ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、前記テキストに基づくアテンションに応じて前記画像を復元するように学習されたモデルである拡散モデルと、ユーザが入力した入力テキストとを取得する取得手順と、
前記取得手順により取得された前記拡散モデルと前記入力テキストとを用いて、前記入力テキストに対応する対応画像を生成し、前記入力テキストが示す対象範囲の特徴を示す特徴情報を生成する生成手順と、
をコンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【0002】
従来、画像に関する様々な情報を生成するための技術が提供されている。例えば、画像中の背景を特定し、その箇所をマスクするマスク情報(マスク画像)等の情報を生成する技術が提供されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2022-014263号公報
【特許文献2】特開2023-030850号公報
【非特許文献】
【0004】
【非特許文献1】“Prompt-to-Prompt Image Editing with Cross Attention Control”, Amir Hertz, Ron Mokady, Jay Tenenbaum, Kfir Aberman, Yael Pritch, and Daniel Cohen-Or<インターネット>https://arxiv.org/pdf/2208.01626.pdf(令和5年3月10日検索)
【非特許文献2】“Denoising Diffusion Probabilistic Models”, Jonathan Ho, Ajay Jain, and Pieter Abbeel,<インターネット>https://arxiv.org/pdf/2006.11239.pdf(令和5年3月10日検索)
【非特許文献3】“High-Resolution Image Synthesis with Latent Diffusion Models”, Robin Rombach, Andreas Blattmann, Dominik Lorenz, Patrick Esser, and Bjorn Ommer,<インターネット>https://arxiv.org/pdf/2112.10752.pdf(令和5年3月10日検索)
【非特許文献4】“Null-text Inversion for Editing Real Images using Guided Diffusion Models”, Ron Mokady, Amir Hertz, Kfir Aberman, Yael Pritch, and Daniel Cohen-Or,<インターネット>https://arxiv.org/pdf/2211.09794.pdf(令和5年3月10日検索)
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の従来技術には、改善の余地がある。例えば、上記の従来技術では背景を特定しマスク情報を生成するための専用モデルが必要となり、そのような専用モデルがない場合、所望の情報を生成することが難しい。そのため、画像を生成するモデルでの処理時の情報を用いてマスク情報等の他の情報を適切に生成することが望まれている。
【0006】
本願は、上記に鑑みてなされたものであって、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成する情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本願に係る情報処理装置は、ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、前記テキストに基づくアテンションに応じて前記画像を復元するように学習されたモデルである拡散モデルと、ユーザが入力した入力テキストとを取得する取得部と、前記取得部により取得された前記拡散モデルと前記入力テキストとを用いて、前記入力テキストに対応する対応画像を生成し、前記入力テキストが示す対象範囲の特徴を示す特徴情報を生成する生成部と、を備えたことを特徴とする。
【発明の効果】
【0008】
実施形態の一態様によれば、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができるという効果を奏する。
【図面の簡単な説明】
【0009】
図1図1は、実施形態に係る情報処理の一例を示す図である。
図2図2は、実施形態に係る情報処理の他の一例を示す図である。
図3図3は、実施形態に係る情報処理システムの構成例を示す図である。
図4図4は、実施形態に係る情報処理装置の構成例を示す図である。
図5図5は、実施形態に係るモデル情報記憶部の一例を示す図である。
図6図6は、実施形態に係る情報処理の一例を示すフローチャートである。
図7図7は、実施形態に係る情報処理の一例を示すフローチャートである。
図8図8は、実施形態に係る情報処理の一例を示すフローチャートである。
図9図9は、モデルの構成の一例を示す図である。
図10図10は、モデルの要部の構成の一例を示す図である。
図11図11は、ハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0010】
以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0011】
(実施形態)
〔1.情報処理〕
以下では、図1を用いて、実施形態に係る情報処理の一例について説明する。図1は、実施形態に係る情報処理の一例を示す図である。具体的には、図1は、実施形態に係るモデルの学習処理及び、モデルを用いた画像の生成処理を含む情報処理の一例を示す。図1では、情報処理装置100(図4参照)がノイズ画像から画像を生成するための拡散モデルである拡散モデルM1(以下「モデルM1」ともいう)を学習(生成)し、生成したモデルM1を用いて画像を生成する場合を一例として説明する。また、モデルM1を用いた画像の生成処理時の情報を用いて、マスク情報等の他の情報を生成する点については図1でモデルの概要を説明した後に説明する。
【0012】
〔1-1.学習処理例〕
まず、図1を用いて、モデルM1の学習処理の一例について説明する。まず、モデルM1の学習処理に用いるデータ(学習用データ)について説明する。
【0013】
図1では、情報処理装置100は、モデルM1の学習処理に用いるデータ(学習用データ)を取得する。例えば、情報処理装置100は、モデルM1の学習用データを学習用データ記憶部121(図4参照)から取得する。なお、学習用データ記憶部121に学習用データが未登録の場合、情報処理装置100は、情報提供装置50(図3参照)等の外部装置に学習用データの提供を要求し、外部装置から受信したデータを学習用データ(「学習データ」ともいう)として学習用データ記憶部121に登録してもよい。
【0014】
図1では、モデルM1の学習処理に用いるデータの一例として、所定の画像にノイズが段階的に付与した複数の段階画像を含む画像群IG1を示す。情報処理装置100は、図1に示す画像群IG1等を含む学習用データを用いてモデルM1を学習する。
【0015】
画像群IG1は、所定の対象が撮像された画像(学習用画像)である画像P10を含む。画像P10は、所定の対象としてソファーと人(女性)が撮像された画像である。画像P10は、ノイズの付与に関する段階が段階#0である、すなわちノイズが付与されていない画像である。
【0016】
また、画像群IG1は、画像P10にノイズが付与された画像である画像P11を含む。画像P11は、画像P10にノイズが1段階付された画像である。画像P11は、ノイズの付与に関する段階が段階#1である、すなわちノイズが1段階付与された画像である。例えば、画像P11は、画像P10にノイズを付与するノイズ付与処理(図1中の処理SN1)により生成される。
【0017】
また、画像群IG1は、画像P11にノイズが付与された画像である画像P12を含む。画像P12は、画像P11にノイズがさらに1段階付された画像である。画像P12は、ノイズの付与に関する段階が段階#2である、すなわちノイズが2段階付与された画像である。例えば、画像P12は、画像P11にノイズを付与するノイズ付与処理(図1中の処理SN2)により生成される。
【0018】
また、画像群IG1は、画像P12にノイズが付与された画像である画像P13を含む。例えば、画像P12にノイズを付与するノイズ付与処理(図1中の処理SN3)によりノイズが3段階付与された段階#3の画像(画像P13)が生成される。なお、ノイズ繰り返しとなるため途中の処理の説明は省略する。
【0019】
また、画像群IG1は、ノイズがK-3段階付与された画像P1K-3にノイズが付与された画像である画像P1K-2を含む。なお、Kは例えば30、1000等の任意の数(値)である。例えば、画像P1K-3にノイズを付与するノイズ付与処理(図1中の処理SNK-2)によりノイズがK-2段階付与された段階#K-2の画像(画像P1K-2)が生成される。
【0020】
また、画像群IG1は、画像P1K-2にノイズが付与された画像である画像P1K-1を含む。画像P1K-1は、画像P1K-2にノイズがさらに1段階付された画像である。画像P1K-1は、ノイズの付与に関する段階が段階#K-1である、すなわちノイズがK-1段階付与された画像である。例えば、画像P1K-1は、画像P1K-2にノイズを付与するノイズ付与処理(図1中の処理SNK-1)により生成される。
【0021】
また、画像群IG1は、ノイズ画像である画像P1Kを含む。例えば、画像P1Kは、画像P1K-1にノイズがさらに1段階付された画像である。画像P1Kは、ノイズの付与に関する段階が段階#Kである、すなわちノイズがK段階付与された画像である。例えば、画像P1Kは、画像P1K-1にノイズを付与するノイズ付与処理(図1中の処理SNK)により生成される。図1中の処理SN1~処理SNKは、拡散モデルにおける拡散過程(forward process)に対応する処理である。
【0022】
例えば、画像群IG1中の各画像は、データにガウシアンノイズを付与して、実データから徐々に完全なガウシアンノイズに遷移させる処理(ノイズ付与処理)により生成されてもよい。例えば、Kが1000の場合、1000回のノイズ付与処理後に完全なノイズになるようにデータとノイズの割合を変えながら混ぜ合わせることにより、画像群IG1中の各画像が生成される。なお、Kが1000の場合、すなわちノイズ付与処理の回数が1000回である場合は一例に過ぎず、ノイズ付与処理の回数は32回や1回等、1000回よりも少ない回数であってもよいし、1000回よりも多い回数であってもよい。また、画像群IG1中の各画像は、情報処理装置100が生成してもよいし、情報提供装置50等の外部装置が生成してもよい。
【0023】
このように、図1に示す画像群IG1は、画像P10、P11、P12、…P1K-2、P1K-1、P1K等の複数の画像を含む。以下、上記した画像群IG1を用いて情報処理装置100がモデルM1を学習する場合を一例として説明する。なお、上記は一例に過ぎず、画像群IG1に含まれる画像は任意の画像であってもよい。例えば、画像群IG1に含まれる画像は、カメラ等の撮像装置により実際に被写体(対象)が撮像された撮像画像(写真)等の実画像に限らず、画像生成モデル等を用いた情報処理により生成された画像であってもよい。また、例えば、画像P1Kは、いわゆるホワイトノイズ等のノイズ画像であってもよい。
【0024】
ここから、学習処理例の詳細について説明する。図1では、情報処理装置100は、画像群IG1等を用いてモデルM1を学習する学習処理を実行する(ステップS1)。情報処理装置100は、ノイズを含む画像(ノイズ画像)を入力とし、一つ手前の過程、すなわちノイズ画像からノイズを1段階除去した画像を出力(予測)するようにモデルM1を学習する。例えば、情報処理装置100は、ノイズ画像、生成したい画像の内容(例えば画像含ませる対象物や現象等)を示すテキスト(文字情報)、ノイズ画像が何段階目のノイズを示す情報(段階情報)を入力とするモデルM1を学習する。対象物や現象等を「対象」と総称する場合がある。なお、段階情報は、モデルM1内で管理される情報(内部情報)として用いられる場合、モデルM1の入力に含まれなくてもよい。
【0025】
モデルM1の入力とするテキストは、生成したい画像の内容を示すものであれば、任意の態様であってもよい。テキストは、対象を示す文字列(単語)であってもよい。この場合、テキストは、例えば熊、ソファー等の1つの対象物を示す単語であってもよい。また、テキストは、複数の対象物の各々を示す単語を含む文字列であってもよい。この場合、テキストは、例えば熊や鳥、ソファーと女性等、複数の対象物の各々を示す単語、及び並列助詞(並立助詞)等の助詞を含む文字列であってもよい。また、テキストは、全体として意味を持つ文字列(文)であってもよい。この場合、テキストは、例えば飛んでいる鳥を見ている熊、ワンピースを着た女性がソファーに座っている等、ある状況等の画像で表現したい内容を示す文であってもよい。なお、上述したモデルM1の入力は一例に過ぎず、モデルM1は任意の情報を入力としてもよい。
【0026】
図1では、情報処理装置100は、一の段階のノイズ画像からノイズを1段階除去した画像を生成するように、モデルM1を学習する。図1では、情報処理装置100は、画像P10の内容を示すテキスト(「学習用テキスト」ともいう)と、段階情報(処理対象となる段階を示す値)とを用いて、モデルM1を学習する。
【0027】
例えば、情報処理装置100は、画像P1K、学習用テキスト(例えばテキストTX1)、及び段階情報を入力として、画像P1K-1を出力するようにモデルM1を学習する学習処理(図1中の処理SR1)を実行する。例えばテキストTX1は、「ワンピースを着た女性がソファーに座っている」という文である。段階情報は、例えば図9中の時刻tに対応する値であってもよい。この場合、段階情報は、例えばノイズ除去の段階「0」またはノイズの段階「K」等の情報であってもよい。例えば、段階情報は、繰り返し処理の回数、例えば何回目の処理であるかを示す情報(0、1等)であってもよい。このように、情報処理装置100は、段階#Kのノイズ画像である画像P1Kから、一つ手前の過程の段階#K-1のノイズ画像である画像P1K-1を生成するようにモデルM1を学習する。
【0028】
また、情報処理装置100は、段階#K-1のノイズ画像である画像P1K-1、学習用テキスト、及び段階情報を入力として、段階#K-2のノイズ画像である画像P1K-2を出力するようにモデルM1を学習する学習処理(図1中の処理SR2)を実行する。同様に、情報処理装置100は、段階#K-2のノイズ画像である画像P1K-2、学習用テキスト、及び段階情報を入力として、段階#K-3のノイズ画像である画像P1K-3を出力するようにモデルM1を学習する学習処理(図1中の処理SR3)を実行する。なお、図1中の処理SR3から処理SRK-2の間の処理は、上述した処理と同様に、ノイズ画像を入力として、そのノイズ画像のノイズ付与の1段階前の画像の出力するように学習するため、詳細な説明は省略する。
【0029】
情報処理装置100は、段階#3のノイズ画像である画像P13、学習用テキスト、及び段階情報を入力として、段階#2のノイズ画像である画像P12を出力するようにモデルM1を学習する学習処理(図1中の処理SRK-2)を実行する。情報処理装置100は、段階#2のノイズ画像である画像P12、学習用テキスト、及び段階情報を入力として、段階#1のノイズ画像である画像P11を出力するようにモデルM1を学習する学習処理(図1中の処理SRK-1)を実行する。
【0030】
そして、情報処理装置100は、段階#1のノイズ画像である画像P11、学習用テキスト、及び段階情報を入力として、段階#0、すなわちノイズが付与されていない画像である画像P10を出力するようにモデルM1を学習する学習処理(図1中の処理SRK)を実行する。図1中の処理SR1~処理SRKは、拡散モデルにおける生成過程(reverse process)に対応する処理である。図1では、情報処理装置100は、画像P10、P11、P12、…P1K-2、P1K-1、P1K等を含む画像群IG1を用いてモデルM1を学習する。
【0031】
このように、情報処理装置100は、ノイズ画像を入力とし、徐々にノイズを除去していくことで、データを生成するモデルであるモデルM1を学習する。図1では、情報処理装置100は、ノイズ画像、テキスト及び段階情報を入力とし、徐々にノイズ画像からノイズを除去していくことで、テキストが示す内容が反映されたデータ(「生成画像」ともいう)を生成するモデルM1を学習する。
【0032】
図1では、情報処理装置100は、徐々にノイズ画像からノイズを除去していくことで、テキストの内容、例えばワンピースを着た女性がソファーに座っているという状況(状態)を示す生成画像を生成するモデルM1を学習する。このように、情報処理装置100は、テキストに基づいて、ノイズ画像を学習用画像に近づけるように変換するモデルM1を学習する。
【0033】
なお、図1に示す画像群IG1を用いた学習処理はモデルM1の学習の一部であり、情報処理装置100は、画像群IG1以外にも様々な画像群を含む学習用データを用いてモデルM1を学習する。図1に示した処理は一例に過ぎず、情報処理装置100は、非特許文献2、3等に開示される拡散モデルに関する学習手法に基づいてモデルM1を学習してもよい。
【0034】
このように、情報処理装置100は、所定の対象を含む学習用画像と、所定の対象を示すテキストに基づいて、ノイズ画像を学習用画像に近づけるように変換する拡散モデルを学習する。これにより、情報処理装置100は、ノイズ画像からテキストが示す画像を段階的に復元するように学習し、テキストに基づくアテンションに応じて画像を復元するように学習された拡散モデルであるモデルM1を学習する。
【0035】
上述した例では、情報処理装置100は、拡散モデルに画像とともに、その画像の内容を示すテキストとして入力して、拡散モデルを学習する。例えば、画像収集時にその画像の内容を示すテキストも併せて収集している場合、テキストも既知であるため、そのデータを学習用データとして、情報処理装置100は、自己教師あり学習でモデルM1等のモデルを学習する。なお、拡散モデル等のモデルの学習を他の装置(学習装置)が行う場合、情報処理装置100は、拡散モデルの学習を行わなくてもよい。情報処理装置100が拡散モデルの学習を行わない場合、情報処理装置100は、拡散モデルであるモデルM1を学習装置から受信することにより、モデルM1を取得してもよい。
【0036】
〔1-2.生成処理例〕
次に、モデルM1を用いた画像の生成処理の一例を説明する。なお、図1では、説明のために生成画像の生成に用いるテキスト(「対応テキスト」ともいう)がテキストTX1である場合を一例として説明するが、対応テキストは、テキストTX1に限らず、任意の画像であってもよい。例えば、情報処理装置100は、テキストTX1を生成画像の生成に用いるテキストとする指定をユーザから受け付ける。このように、以下では、テキストTX1が、ユーザが入力したテキスト(「入力テキスト」ともいう)である場合を一例として説明する。
【0037】
情報処理装置100は、ノイズ画像、テキスト、及び段階情報を入力として、生成画像を生成する生成処理を実行する(ステップS11)。例えば、ノイズ画像NZ1は、画像P1Kと同じノイズ画像であってもよいし、異なるノイズ画像であってもよい。図1では、情報処理装置100は、ノイズ画像NZ1、テキストTX1、及び段階情報を最初のモデルM1への入力情報IN1として、モデルM1を用いた画像の生成を繰り返すことにより、画像P20を生成する。
【0038】
例えば、情報処理装置100は、モデルM1への入力をK回繰り返すことにより、画像P20を生成する。例えば、Kが1000である場合、情報処理装置100は、ノイズ画像NZ1、テキストTX1、段階情報が入力されたモデルM1が出力した画像を入力として、モデルM1への入力を999回繰り返す。
【0039】
例えば、情報処理装置100は、最初(1回目)の繰り返し処理では、ノイズ画像NZ1、テキストTX1、及び最初(1回目)の処理であることを示す段階情報をモデルM1へ入力し、モデルM1から画像#1を出力させる。そして、情報処理装置100は、2回目の繰り返し処理では、画像#1、テキストTX1、及び2回目の処理であることを示す段階情報をモデルM1へ入力し、モデルM1から画像#2を出力させる。情報処理装置100は、3回目の繰り返し処理では、画像#2、テキストTX1、及び3回目の処理であることを示す段階情報をモデルM1へ入力し、モデルM1から画像#3を出力させる。
【0040】
情報処理装置100は、4~K-1回目の繰り返し処理でも同様に、画像#3~#K-2の各々、テキストTX1、及びその処理に対応する段階情報をモデルM1へ入力し、モデルM1から画像#4~#K-1の各々を出力させる。そして、情報処理装置100は、K回目の繰り返し処理では、画像#K-1、テキストTX1、及びK回目の処理であることを示す段階情報をモデルM1へ入力し、モデルM1から画像P20を出力させる。
【0041】
これにより、情報処理装置100は、徐々にノイズ画像からノイズを除去していくことで、テキストTX1の内容を示す画像P20を生成する。図1では、情報処理装置100は、モデルM1を用いて徐々にノイズ画像からノイズを除去していくことで、テキストTX1に含まれるワンピースを着た女性がソファーに座っているという状況を表現する生成画像である画像P20を生成する。このように、情報処理装置100は、テキストTX1を基に、徐々にノイズ画像からノイズを除去していくことで、画像P10と同じようにテキストTX1の内容を示す画像P20を生成する。
【0042】
〔1-3.情報の生成例〕
上述した処理により、ノイズ画像からテキストの内容を示す画像を生成する拡散モデルを用いた画像の生成を行うことが可能となる。拡散モデルでの処理時に生成される情報は、生成画像の生成以外にも利用可能な情報であり、他の情報の生成にも利用可能である。そこで、情報処理装置100は、上記のような拡散モデルでの処理時の情報を用いてマスク情報等の他の情報を生成する。まず、他の情報の生成例に説明に先だって、拡散モデルであるモデルM1の構成例について、図9を用いて説明する。図9は、モデルの構成の一例を示す図である。
【0043】
図9に示すモデルの構造例は、モデルM1の構造の一例を示す。この場合、モデルM1は、U-netに基づく構造を有する。なお、U-netに基づく構造は一例に過ぎず、モデルM1は、U-netに基づく構造に限らず、所望の処理が可能であれば任意の構造が採用可能である。例えば、モデルM1は、Transformer等、U-net以外の手法に基づく構造を有してもよい。なお、U-netに基づく構造は既知であるため、詳細な説明は省略するが、以下簡単に概要を説明する。
【0044】
図9では、U-netに基づく構造を有するモデルM1は、第1種別のブロックであるResBlockと、第2種別のブロックであるAttnBlockとを複数有する構造である。例えば、第1種別のブロックであるResBlockは、例えば畳込み層とSkipConnectionの組み合わせを有する残差ブロックである。また、第2種別のブロックであるAttnBlockは、アテンションの機能を有するブロックであるが、構造については後述する。
【0045】
図9に示すモデルでは、左側が入力側に対応し、右側が出力側に対応する。各部分間を結ぶ直線や矢印線は、各部分の連結(Concatenation)の関係を示す。例えば、モデルM1は、入力に対して、第1種別のブロック(ResBlock)と第2種別のブロック(AttnBlock)を適用し、前半(図9の左側(入力側)の部分)で、入力の解像度を下げ、channel数を増やし、後半(図9の右側(出力側)の部分)では、channel数を減らし、解像度を上げていく処理を行う。
【0046】
図9に示すモデルの構造では、第1種別のブロックと第2種別のブロックとのペアが複数階層連結される構造を有する。例えば、図9中の「Z」に対応する入力部分は、時刻tに対応する画像(ノイズ画像)が入力される部分に対応する。例えば、図9中の「t」に対応する入力部分は、その処理の段階を示す情報が入力される部分(段階情報入力部分)に対応する。段階情報入力部分は、第1種別のブロック及び第2種別のブロックの各々に連結され、各ブロックへ段階情報を提供する。
【0047】
例えば、図9中の「TextEncoder」は、入力されたテキストをエンコーディング(符号化)する処理を実行するエンコーディング部に対応する。エンコーディング部は、第2種別のブロックの各々に連結され、各第2種別のブロックへテキストの情報(エンコーディング情報)を提供する。このように、図9に示すモデルでは、「TextEncoder」で示すエンコーディング部でエンコーディングされたテキストの情報が、各第2種別のブロックへ入力される。
【0048】
アテンションの機能を有する第2種別のブロックであるAttnBlockは、図10に示すような構造を有する。図10は、モデルの要部の構成の一例を示す図である。具体的には、図10は、第2種別のブロックの構成の一例を示す図である。
【0049】
図10に示す第2種別のブロックでは、左側が入力側に対応し、右側が出力側に対応する。図10に示すように、第2種別のブロック(AttnBlock)では、エンコーディング部からの情報は、「Cross-Attn」と表記されるクロスアテンションの機能を有する部分(クロスアテンション部)で用いられる。
【0050】
なお、図10に示す第2種別のブロックは、クロスアテンション部以外に、「Self-Attn」と表記されるセルフアテンションの機能を有する部分や「Dropout」と表記されるドロップアウトの機能を有する部分等を含む。なお、第2種別のブロック中の構成は、図10に示すものに限らず、テキストからの情報を用いるクロスアテンション部を有する構成であれば、任意の構成が採用可能であり、詳細な説明は省略する。
【0051】
例えば、クロスアテンション部は、テキストの情報と画像の情報とのクロスアテンションを計算する。クロスアテンション部により、テキストの内容に応じたクロスアテンションの結果が得られる。このように、クロスアテンション部は、テキストの情報と画像の情報とのクロスアテンションの結果を示す情報(「アテンション情報」ともいう)を生成する。
【0052】
ここで、図2を用いて、各段階で生成されるアテンション情報の一例を示す。図2は、実施形態に係る情報処理の他の一例を示す図である。なお、図2では、説明のために図1でのノイズ画像である画像P2K(図1中のノイズ画像NZ1に対応)から画像P20を生成する場合を一例として示す。
【0053】
テキストTX1は、図2中で「トークン#1」とするトークンTK1と図2中で「トークン#2」とするトークンTX2とに分割される。なお、トークンTK1及びトークンTK2を区別せずに説明する場合「トークンTK」と記載する。
【0054】
図2では、トークンTK1は「ソファー」であり、トークンTX2は「ワンピースを着た女性」である。例えば、トークンTK1及びトークンTX2は、テキストTX1を構成する複数の要素の各々に対応する。例えば、トークンTK1及びトークンTX2のトークンは、テキスト中に含まれる文字列であり、ある対象物や現象等の内容(意味)を示す要素である。例えば、トークンは、クロスアテンションでアテンション情報が生成される単位である。
【0055】
図2では、モデルM1は、処理の各段階でトークンの各々に対応するアテンション情報を生成する。例えば、モデルM1は、画像P2K、テキストTX1、及び最初(1回目)の処理であることを示す段階情報の入力に応じて、画像P2K-1(画像#1)を生成する処理において、1回目の処理におけるアテンション情報を生成する。
【0056】
図2では、モデルM1は、トークンTK1(トークン#1)については、1回目の処理におけるアテンション情報として、アテンション情報A1Kを生成する。アテンション情報A1Kは、画像中(画像P2K)におけるトークンTK1に対応する領域を示す情報である。
【0057】
図2に示すアテンション情報A1K等の各アテンション情報は、例えば画像の各領域(画素等)についてトークンが示す対象との関連性の高低を示すマップ情報(アテンションマップ)である。図2の例では、アテンション情報におけるハッチングが濃い程、対応する画像におけるトークンが示す対象との関連性が高い領域(画素等)であることを示す。例えば、アテンション情報におけるハッチングが濃い程、対応する領域にトークンが示す対象が含まれる可能性が高いことを示す。また、アテンション情報におけるハッチングが薄い程、対応する画像におけるトークンが示す対象との関連性が低い領域(画素等)であることを示す。例えば、ハッチングが薄い程、対応する領域にトークンが示す対象が含まれてない可能性が高いことを示す。例えば、アテンション情報におけるハッチングが濃い程、その箇所の値が大きく、ハッチングが薄い程、その箇所の値が小さいことを示す。
【0058】
また、図2では、モデルM1は、トークンTK2(トークン#2)については、1回目の処理におけるアテンション情報として、アテンション情報A2Kを生成する。アテンション情報A2Kは、画像(例えば画像P2K)中におけるトークンTK2に対応する領域を示す情報である。
【0059】
また、モデルM1は、画像P2K-1(画像#1)、テキストTX1、及び2回目の処理であることを示す段階情報の入力に応じて、画像P2K-2(画像#2)を生成する処理において、2回目の処理におけるアテンション情報を生成する。
【0060】
図2では、モデルM1は、トークンTK1については、2回目の処理におけるアテンション情報として、アテンション情報A1K-1を生成する。アテンション情報A1K-1は、画像(例えば画像P2K-1)中におけるトークンTK1に対応する領域を示す情報である。
【0061】
また、図2では、モデルM1は、トークンTK2については、2回目の処理におけるアテンション情報として、アテンション情報A2K-1を生成する。アテンション情報A2K-1は、画像(例えば画像P2K-1)中におけるトークンTK2に対応する領域を示す情報である。
【0062】
また、モデルM1は、3~K-3回目の繰り返し処理でも同様に、画像#2~#K-4の各々、テキストTX1、及びその処理に対応する段階情報の入力に応じて、画像#3~#K-3の各々を生成する処理において、3~K-3回目の各々の処理におけるアテンション情報を生成する。
【0063】
また、モデルM1は、画像P23(画像#K-3)、テキストTX1、及びK-2回目の処理であることを示す段階情報の入力に応じて、画像P22(画像#K-2)を生成する処理において、K-2回目の処理におけるアテンション情報を生成する。
【0064】
図2では、モデルM1は、トークンTK1については、K-2回目の処理におけるアテンション情報として、アテンション情報A13を生成する。アテンション情報A13は、画像(例えば画像P23)中におけるトークンTK1に対応する領域を示す情報である。図2では、アテンション情報A13が、画像中でトークンTK1が示す対象が位置する領域を最も適切に示すアテンション情報であるものとする。
【0065】
また、図2では、モデルM1は、トークンTK2については、K-2回目の処理におけるアテンション情報として、アテンション情報A23を生成する。アテンション情報A23は、画像(例えば画像P23)中におけるトークンTK2に対応する領域を示す情報である。図2では、アテンション情報A23が、画像中でトークンTK2が示す対象が位置する領域を最も適切に示すアテンション情報であるものとする。
【0066】
また、モデルM1は、画像P22(画像#K-2)、テキストTX1、及びK-1回目の処理であることを示す段階情報の入力に応じて、画像P21(画像#K-1)を生成する処理において、K-1回目の処理におけるアテンション情報を生成する。
【0067】
図2では、モデルM1は、トークンTK1については、K-1回目の処理におけるアテンション情報として、アテンション情報A12を生成する。アテンション情報A12は、画像(例えば画像P22)中におけるトークンTK1に対応する領域を示す情報である。
【0068】
また、図2では、モデルM1は、トークンTK2については、K-1回目の処理におけるアテンション情報として、アテンション情報A22を生成する。アテンション情報A22は、画像(例えば画像P22)中におけるトークンTK2に対応する領域を示す情報である。
【0069】
また、モデルM1は、画像P21(画像#K-1)、テキストTX1、及びK回目の処理であることを示す段階情報の入力に応じて、画像P20(画像#K)を生成する処理において、K回目の処理におけるアテンション情報を生成する。
【0070】
図2では、モデルM1は、トークンTK1については、K回目の処理におけるアテンション情報として、アテンション情報A11を生成する。アテンション情報A11は、画像(例えば画像P21)中におけるトークンTK1に対応する領域を示す情報である。
【0071】
また、図2では、モデルM1は、トークンTK2については、K回目の処理におけるアテンション情報として、アテンション情報A21を生成する。アテンション情報A21は、画像(例えば画像P21)中におけるトークンTK2に対応する領域を示す情報である。
【0072】
このように、モデルM1では、生成画像を生成する処理において、テキストの情報と画像の情報とのクロスアテンションの結果を示すアテンション情報が生成される。そこで、情報処理装置100は、生成画像を生成する処理において生成されたアテンション情報を用いて、以下に示すような情報を生成する。
【0073】
なお、以下では、トークンTK1(トークン#1)に対応するアテンション情報A1K、A1K-1、…A12、A11等を区別せずに説明する場合、アテンション情報A1と記載し、トークンTK2(トークン#2)に対応するアテンション情報A2K、A2K-1、…A22、A21等を区別せずに説明する場合、アテンション情報A2と記載する場合がある。また、アテンション情報A1及びアテンション情報A2、すなわち図2中のアテンション情報A1K、A2K、A1K-1、A2K-1、…A12、A22、A11、A21等の全てを区別せずに説明する場合、アテンション情報Aと記載する場合がある。
【0074】
〔1-3-1.マスク情報の生成例〕
まず、以下では、図2を参照しつつ、情報処理装置100がアテンション情報Aを用いてマスク情報を生成する第1の生成例を説明する。なお、上述した内容と同様の点については適宜説明を省略する。
【0075】
図2では、情報処理装置100は、モデルM1とテキストTX1とを用いて、テキストTX1に対応する対応画像である画像P20を生成し、モデルM1が画像P20の生成時に用いたアテンション情報Aに基づいて、画像P20のうち、テキストTX1が示す対象範囲のマスク情報を生成する。情報処理装置100は、モデルM1での生成画像である画像P20の生成処理時の所定段階におけるアテンション情報Aに基づいて、画像P20のうち、テキストTX1が示す対象範囲のマスク情報を生成する。
【0076】
例えば、情報処理装置100は、モデルM1が画像P20の生成時に用いたテキストTX1に含まれるトークンの各々に対応するアテンション情報Aに基づいて、画像P20のうち、トークンTKが示す対象範囲のマスク情報を生成する。情報処理装置100は、ユーザからテキストTX1に含まれるトークンTX1、TX2のうち一のトークンを指定する指定情報を取得し、指定情報が示す一のトークンに対応するアテンション情報Aに基づいて、画像P20のうち、一のトークンが示す対象範囲のマスク情報を生成する。
【0077】
以下では、ユーザからテキストTX1に含まれるトークンTX1、TX2の両方が指定された場合を一例として説明する。情報処理装置100は、ユーザからテキストTX1に含まれる複数のトークンTX1、TX2の各々を指定する指定情報を取得し、指定情報が示す複数のトークンTX1、TX2の各々に対応するアテンション情報A1、A2に基づいて、画像P20のうち、前記複数のトークンTX1、TX2の各々が示す対象範囲のマスク情報を生成する。
【0078】
例えば、情報処理装置100は、モデルM1が画像P20の生成時に用いたテキストTX1に含まれるトークンTK1に対応するアテンション情報A1に基づいて、画像P20のうち、トークンTK1が示す対象範囲のマスク情報を生成する。例えば、情報処理装置100は、記憶部120に記憶された情報等に基づいて決定した段階におけるアテンション情報A1に基づいて、画像P20のうち、トークンTK1が示す対象範囲のマスク情報を生成する。例えば、情報処理装置100は、予め設定された段階(指定段階)におけるアテンション情報A1に基づいて、画像P20のうち、トークンTK1が示す対象範囲のマスク情報を生成する。
【0079】
なお、マスク情報を生成する際に用いるアテンション情報は1つのアテンション情報に限らず、複数のアテンション情報を用いてもよい。この場合、情報処理装置100は、複数の処理回数(タイミング)の各々に対応する複数のアテンション情報を対象として、加重平均等の任意の算出手法で算出(生成)したアテンション情報(合成アテンション情報)を用いてもよい。以下では、各トークンTKが示す対象が位置する領域を最も適切に示す1つのアテンション情報を選択して用いる場合を示す。
【0080】
図2では、K-2回目の処理におけるアテンション情報A13が画像中でトークンTK1が示す対象が位置する領域を最も適切に示すアテンション情報であるため、情報処理装置100は、アテンション情報A13に基づいて、画像P20のうち、トークンTK1が示す対象範囲のマスク情報を生成する。例えば、情報処理装置100は、アテンション情報A13に基づいて、画像P20のうち、トークンTK1が示す対象「ソファー」を含む範囲(対象範囲)とそれ以外の範囲(「対象外範囲」ともいう)とを区別するマスク情報を生成する。
【0081】
例えば、情報処理装置100は、アテンション情報A13に基づいて、画像P20のうち、トークンTK1の対象範囲以外の範囲である対象外範囲をマスクするマスク情報を生成する。例えば、情報処理装置100は、アテンション情報A13に基づいて、画像P20のうち、トークンTK1が示す対象「ソファー」に関するセグメンテーションを示すセグメンテーションマスクを、マスク情報として生成する。例えば、情報処理装置100は、アテンション情報A13のうち、値が所定の条件を満たす範囲をトークンTK1が示す対象「ソファー」のセグメンテーションとして示すマスク情報として生成する。例えば、情報処理装置100は、アテンション情報A13のうち、値が所定値以上の範囲(画素等)をトークンTK1が示す対象「ソファー」のセグメンテーションとして示すマスク情報として生成する。図2では、情報処理装置100は、アテンション情報A13のうち、ハッチングが付された範囲をトークンTK1が示す対象「ソファー」のセグメンテーションとして示すマスク情報として生成する。例えば、情報処理装置100は、アテンション情報A13のうち、値が所定値未満の範囲を対象外範囲としてマスクするマスク情報を生成する。
【0082】
例えば、情報処理装置100は、モデルM1が画像P20の生成時に用いたテキストTX1に含まれるトークンTK2に対応するアテンション情報A2に基づいて、画像P20のうち、トークンTK2が示す対象範囲のマスク情報を生成する。例えば、情報処理装置100は、予め設定された段階(指定段階)におけるアテンション情報A2に基づいて、画像P20のうち、トークンTK2が示す対象範囲のマスク情報を生成する。
【0083】
図2では、K-2回目の処理におけるアテンション情報A23が画像中でトークンTK2が示す対象が位置する領域を最も適切に示すアテンション情報であるため、情報処理装置100は、アテンション情報A23に基づいて、画像P20のうち、トークンTK2が示す対象範囲のマスク情報を生成する。例えば、情報処理装置100は、アテンション情報A23に基づいて、画像P20のうち、トークンTK2が示す対象「ワンピースを着た女性」を含む範囲(対象範囲)と対象外範囲とを区別するマスク情報を生成する。
【0084】
例えば、情報処理装置100は、アテンション情報A23に基づいて、画像P20のうち、トークンTK2の対象範囲以外の範囲である対象外範囲をマスクするマスク情報を生成する。例えば、情報処理装置100は、アテンション情報A23に基づいて、画像P20のうち、トークンTK2が示す対象「ワンピースを着た女性」に関するセグメンテーションを示すセグメンテーションマスクを、マスク情報として生成する。例えば、情報処理装置100は、アテンション情報A23のうち、値が所定の条件を満たす範囲をトークンTK2が示す対象「ワンピースを着た女性」のセグメンテーションとして示すマスク情報として生成する。図2では、情報処理装置100は、アテンション情報A23のうち、ハッチングが付された範囲をトークンTK2が示す対象「ワンピースを着た女性」のセグメンテーションとして示すマスク情報として生成する。例えば、情報処理装置100は、アテンション情報A23のうち、値が所定値未満の範囲を対象外範囲としてマスクするマスク情報を生成する。
【0085】
上述したように、情報処理装置100は、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。例えば、情報処理装置100は、テキストと、生成する目標とする画像(「目標画像」ともいう)と、目標画像に対して段階的にノイズを加えた画像を用いて、各繰り返し処理においてノイズ画像とテキストとの入力に応じて、入力されたノイズ画像を目標画像に一段階近い画像を生成するように拡散モデル(モデルM1等)を学習する。これにより、情報処理装置100は、画像とテキストとを入力すると、段階的に、テキストが示す画像を生成するように拡散モデル(モデルM1等)を学習することができる。
【0086】
例えば、情報処理装置100は、ユーザから、テキストやトークンの指定を受け付ける。情報処理装置100は、拡散モデル(モデルM1等)を用いて、テキストに対応する画像を生成する。情報処理装置100は、拡散モデル(モデルM1等)による画像の生成処理時に生成される各トークンに対応するアテンション情報からマスク情報を生成する。情報処理装置100は、マスク情報と生成した画像とを用いて各種サービスを提供する。
【0087】
情報処理装置100は、上述したように各種の情報を実行する。例えば、情報処理装置100は、テキストと対応する画像部分を抽出するマスク情報を生成する。例えば、情報処理装置100は、トークンが名詞である場合、その名詞に対応する対象物が含まれる範囲(対象範囲)を特定するマスク情報を生成する。
【0088】
例えば、情報処理装置100は、トークンが動詞である場合、その動詞に対応する事象が含まれる範囲(対象範囲)を特定するマスク情報を生成する。これにより、情報処理装置100は、例えば「見る」等の動詞が示す事象を可視化し、その範囲(対象範囲)を特定するマスク情報を生成する。例えば、情報処理装置100は、マスク情報を基に生成されたエンボス加工された情報等により、動的にその範囲を視覚障碍者等に伝達可能にすることができる。
【0089】
例えば、情報処理装置100は、動作やポーズ(姿勢や身振りなど)などの状態(挙動状態)を指定するテキストが用いられた場合、そのテキストが示す挙動状態に対応する事象が含まれる範囲(対象範囲)を特定するマスク情報を生成する。これにより、情報処理装置100は、例えば「XXの動作をしている人」等のテキストに応じて、そのテキストが示す「XXの動作」に対応する事象が含まれる範囲(対象範囲)を特定するマスク情報を生成する。
【0090】
また、情報処理装置100は、複数トークンを組み合わせたマスク情報を生成することができる。例えば、情報処理装置100は、「熊と鳥」のように、トークン「熊」とトークン「鳥」が並列助詞で接続された論理(論理和)である場合、トークン「熊」に対応する対象物が含まれる第1対象範囲、及びトークン「鳥」に対応する対象物が含まれる第2対象範囲の両方を特定するマスク情報(論理和マスク情報)を生成する。この場合、情報処理装置100は、第1対象範囲及び第2対象範囲を他の範囲を区別したマスク情報を生成する。なお、情報処理装置100は、第1対象範囲と第2対象範囲との各々を区別可能な情報を付することにより、第1対象範囲と第2対象範囲とも区別可能なマスク情報を生成してもよい。
【0091】
また、情報処理装置100は、「空を飛んでいる車」のように、トークン「空を飛んでいる」とトークン「車」が一のトークンが他のトークンを形容するような論理(論理積)である場合、トークン「空を飛んでいる」とトークン「車」を組み合わせたトークン「空を飛んでいる車」に対応する対象物が含まれる対象範囲を特定するマスク情報(論理積マスク情報)を生成する。なお、上記は一例に過ぎず、情報処理装置100は、任意の処理により所望の情報を生成してもよい。このように、情報処理装置100は、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0092】
なお、情報処理装置100は、任意の情報を用いてマスク情報を生成してもよい。例えば、情報処理装置100は、図10に示すクロスアテンション部により、第2種別のブロックの位置により複数の異なる解像度のクロスアテンションの結果(アテンション情報)を取得してもよい。この場合、情報処理装置100は、解像度に応じてアテンション情報を選択し、選択したアテンション情報からマスク情報を生成してもよい。
【0093】
例えば、情報処理装置100は、記憶部120に記憶された情報等に基づいて決定した解像度に対応するアテンション情報A1に基づいて、画像P20のうち、トークンTK1が示す対象範囲のマスク情報を生成してもよい。例えば、情報処理装置100は、予め設定された解像度(指定解像度)に最も近いアテンション情報A1に基づいて、画像P20のうち、トークンTK1が示す対象範囲のマスク情報を生成してもよい。また、情報処理装置100は、トークンTK2についても、トークンTK1の場合と同様に解像度に対応するアテンション情報A2に基づいて、画像P20のうち、トークンTK2が示す対象範囲のマスク情報を生成してもよい。
【0094】
また、情報処理装置100は、生成したマスク情報を用いたサービスを提供する。例えば、情報処理装置100は、生成したマスク情報をユーザが利用する端末装置10へ送信する。例えば、情報処理装置100は、モデルM1での生成画像の生成処理時に生成された情報を用いて生成したマスク情報と、モデルM1で生成した生成画像とを対応付けた情報をユーザが利用する端末装置10へ送信する。
【0095】
例えば、情報処理装置100は、モデルM1で生成した生成画像と、その生成画像の生成処理時の情報を用いて生成したマスク情報と、そのマスク情報に対応する対象を示すラベルとを対応付けた情報をユーザが利用する端末装置10へ送信する。例えば、情報処理装置100は、モデルM1で生成した生成画像と、マスク情報と、そのマスク情報に対応する対象を示すラベルとを対応付けた情報を、学習用データとしてユーザが利用する端末装置10へ送信する。
【0096】
上述した処理により、情報処理装置100は、例えば学習に用いるデータ(学習データ)等、任意の情報を適切に生成することができる。例えば、情報処理装置100は、入力テキストの任意の単語に対応したセグメンテーションマスクを自動的に生成することができる。例えば、画像分類タスクにおいて生成画像を利用して精度改善するという応用がある。そこで、情報処理装置100が生成した情報を学習データとして利用することで、マスク付きで画像が生成でき、分類タスク、検出タスク、セグメンテーションタスク等にも応用可能となる。
【0097】
また、情報処理システム1(図3参照)は、ユーザが指定(タッチ)した画像の部分に対応する対象を検索するUI(User Interface)を提供してもよい。この場合、情報処理システム1は、画像中でユーザが指定した部分にある対象何かを検索する処理を実行することで、例えば幼児向けに画素中でタッチした部分に含まれる対象を示す情報を提供する。また、情報処理システム1は、上述したように視覚障害者向けの利用を想定して、動物等の形を理解するためにエンボス加工された本の作成を支援するサービスを提供してもよい。また、情報処理システム1により生成されたエンボス加工をリアルタイムに操作できる本の場合、ユーザが指定した画像の部分に対応する対象を示す情報(単語)等を提供することができる。また、情報処理システム1は、沢山の対象物が写った画像に対して、単語を指定して領域を特定することができる。例えば、情報処理システム1は、画像中で特定の動作をしている人が含まれる領域を特定することができる。
【0098】
上述した処理は一例に過ぎず、情報処理装置100は、様々な情報を用いて他の情報を生成してもよい。例えば、モデルM1の学習に用いる画像については所定の条件を満たす画像であってもよい。情報処理装置100が所定の条件を満たす画像に基づいて情報を生成する第2の生成例を説明する。なお、上述した処理と同様の点については適宜説明を省略する。
【0099】
例えば、モデルM1は、所定の条件を満たす画像である対象画像と対象画像に対応付けられたテキスト(対応テキスト)と、ノイズ画像とを用いて、対応テキストに基づくアテンションに応じて対象画像を段階的に復元するように学習が行われた拡散モデルであってもよい。この場合、情報処理装置100は、所定の条件を満たす画像である対象画像と対象画像に対応付けられた対応テキストと、ノイズ画像とを用いて、対応テキストに基づくアテンションに応じて対象画像を段階的に復元するようにモデルM1を学習してもよい。
【0100】
例えば、所定の条件を満たす画像は、実画像であってもよい。例えば、所定の条件を満たす画像は、カメラ等の撮像装置等により所定の対象を撮像した撮像画像(実画像)である。例えば、モデルM1は、実画像と実画像の内容を示す対応テキストと、ノイズ画像とを用いて、対応テキストに基づくアテンションに応じて実画像を段階的に復元するように学習が行われた拡散モデルであってもよい。
【0101】
この場合、情報処理装置100は、実画像と実画像の内容を示す対応テキストと、ノイズ画像とを用いて、対応テキストに基づくアテンションに応じて実画像を段階的に復元するようにモデルM1を学習してもよい。情報処理装置100は、Inversion(インバージョン)手法によりモデルM1を学習する。これにより、情報処理装置100は、実画像を拡散モデル(生成モデル)であるモデルM1で生成(再現)可能にすることができる。
【0102】
この場合、情報処理装置100は、実画像を生成(再現)するモデルM1とテキストとを用いて、そのテキストが示す対象範囲のマスク情報を生成する。例えば、情報処理装置100は、モデルM1によりテキストに対応する実画像である対象画像(以下「画像P30」ともいう)を生成し、モデルM1が画像P30の生成時に用いたアテンション情報に基づいて、画像P30のうち、テキストが示す対象範囲のマスク情報を生成する。
【0103】
このように、情報処理装置100は、実画像に対応するマスク情報を生成することで、検出タスクやセグメンテーションタスク向けに実画像のデータの学習データへの追加が容易になる。したがって、情報処理装置100は、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。なお、情報処理装置100は、任意の学習手法により実画像を生成するモデルM1を学習してもよい。例えば、情報処理装置100は、非特許文献4等に開示される拡散モデルに関する学習手法に基づいて実画像を生成するモデルM1を学習してもよい。
【0104】
上述したように、情報処理装置100は、画像と画像を示すテキストとを受け付け、ノイズ画像とテキストとから受け付けた画像を段階的に復元するように学習が行われたモデルであって、テキストに基づいたアテンションを考慮して画像を復元するようにモデルを学習する。また、情報処理装置100は、モデルがテキストから画像を生成する際に用いたアテンションに基づいて、テキストが示す範囲のマスク情報を生成する。例えば、情報処理装置100は、インバージョンの学習を行って、マスク情報を生成する。これにより、情報処理装置100は、指定された文字情報と対応するマスク情報を生成することができる。
【0105】
また、情報処理装置100は、マスク情報を生成のみに限らず、様々な処理を実行してもよい。例えば、情報処理装置100は、マスク情報に基づいて生成画像(対象画像)に対する加工処理を実行する。情報処理装置100は、対象画像に対する加工処理により、機械学習の学習データとして用いる加工画像を生成してもよい。例えば、情報処理装置100は、対象画像のうち、マスク情報に基づいて特定される対象範囲以外の範囲を背景とした加工画像を生成する。
【0106】
例えば、情報処理装置100は、テキストTX2を入力としたモデルM1での対象画像の生成処理時に生成されたアテンション情報に基づいて、対象画像(画像P30)のうち、テキストTX2が示す対象を含む範囲(対象範囲)とそれ以外の範囲(対象外範囲)とを区別するマスク情報を生成する。
【0107】
例えば、情報処理装置100は、対象画像(画像P30)のうち、生成したマスク情報が示す対象外範囲を背景として特定する。そして、情報処理装置100は、対象画像(画像P30)のうち、対象外範囲を背景として所定の加工処理を実行することにより加工画像を生成する。例えば、情報処理装置100は、対象画像(画像P30)のうち、対象外範囲を背景として除去した画像P31を加工画像として生成する。
【0108】
このように、情報処理装置100は、実画像の背景除去タスク等にも応用することができる。情報処理装置100は、画像を利用するカテゴリ(例えばサービス分野)に応じて、画像のうちどの部分を背景とするかを動的に変更(決定)してもよい。
【0109】
この点について、図2に示す画像P20の場合を一例として説明する。例えば、情報処理装置100は、カテゴリがインテリアカテゴリである場合、画像P20のうちトークンTK1が示す対象「ソファー」の部分を対象範囲として、それ以外を対象外範囲として特定する。そして、情報処理装置100は、画像P20のうちトークンTK1が示す対象「ソファー」の対象範囲以外の範囲(対象外範囲)を背景として除去する。これにより、情報処理装置100は、画像P20のうちトークンTK1が示す対象「ソファー」の対象範囲以外の範囲(対象外範囲)を背景として除去した画像P32を加工画像として生成する。
【0110】
また、例えば、情報処理装置100は、カテゴリがファッションカテゴリである場合、画像P20のうちトークンTK2が示す対象「ワンピースを着た女性」の部分を対象範囲として、それ以外を対象外範囲として特定する。そして、情報処理装置100は、画像P20のうちトークンTK2が示す対象「ワンピースを着た女性」の対象範囲以外の範囲(対象外範囲)を背景として除去する。これにより、情報処理装置100は、画像P20のうちトークンTK2が示す対象「ワンピースを着た女性」の対象範囲以外の範囲(対象外範囲)を背景として除去した画像P33を加工画像として生成する。
【0111】
〔1-3-2.他の情報の生成例〕
なお、情報処理装置100は、マスク情報に限らず、特徴ベクトル等の様々な特徴情報を生成してもよい。例えば、情報処理装置100は、拡散モデルと入力テキストとを用いて、入力テキストに対応する対応画像を生成し、入力テキストが示す対象範囲の特徴を示す特徴情報を生成する。
【0112】
この場合、情報処理装置100は、拡散モデルと入力テキストとを用いて、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いたアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲の特徴を示す特徴情報を生成してもよい。このように、情報処理装置100がアテンション情報Aを用いてマスク情報以外の特徴情報を生成する第3の生成例を以下説明する。なお、上述した内容と同様の点については適宜説明を省略する。
【0113】
図2では、情報処理装置100は、モデルM1とテキストTX1とを用いて、テキストTX1に対応する対応画像である画像P20を生成し、モデルM1が画像P20の生成時に用いたアテンション情報Aに基づいて、画像P20のうち、テキストTX1が示す対象範囲の特徴を示す特徴情報として生成する。例えば、情報処理装置100は、画像P20に含まれるテキストTX1が示す対象の特徴を抽出した特徴ベクトルを特徴情報として生成する。
【0114】
例えば、情報処理装置100は、機械学習の学習データとして用いる特徴情報を生成する。例えば、情報処理装置100は、画像P20に含まれるテキストTX1が示す対象の特徴を示す特徴ベクトルを、画像の特徴を抽出する特徴抽出モデルの正解情報として生成してもよい。例えば、情報処理装置100は、テキストTX1が示す対象を含む画像が入力された場合に特徴抽出モデルが出力するべき正解情報として、テキストTX1が示す対象の特徴を示す特徴ベクトルを生成する。
【0115】
例えば、情報処理装置100は、入力された画像の特徴を抽出する特徴抽出モデルであるモデルM2を用いて、テキストが示す対象の特徴を示す特徴ベクトルを生成する。特徴抽出モデルであるモデルM2は、画像におけるテキストが示す対象の特徴情報を出力するモデルである。なお、画像の特徴を抽出する特徴抽出モデルは画像から特徴を抽出可能であれば任意のモデルであってもよく、詳細な説明は省略する。例えば、モデルM2の学習を情報処理装置100以外の装置(学習装置)が行う場合、情報処理装置100は、モデルM2を学習装置から受信することにより、モデルM2を取得してもよい。なお、情報処理装置100は、モデルM2を学習してもよい。
【0116】
例えば、情報処理装置100は、アテンション情報Aを用いて生成された加工画像を抽出対象画像として用いて、抽出対象画像におけるテキストが示す対象の特徴を示す特徴ベクトルを生成してもよい。例えば、情報処理装置100は、アテンション情報Aを用いて背景除去の処理が施された加工画像を抽出対象画像として用いて、抽出対象画像におけるテキストが示す対象の特徴を示す特徴ベクトルを生成してもよい。
【0117】
情報処理装置100は、アテンション情報Aに基づく抽出対象画像と、特徴抽出モデルであるモデルM2を用いて、抽出対象画像におけるテキストが示す対象の特徴情報を生成する。情報処理装置100は、アテンション情報Aに基づく抽出対象画像をモデルM2に入力し、抽出対象画像におけるテキストが示す対象の特徴を示す特徴ベクトルをモデルM2に出力させる。これにより、情報処理装置100は、抽出対象画像におけるテキストが示す対象の特徴を示す特徴ベクトルを生成する。
【0118】
情報処理装置100は、テキストTX2に対応するアテンション情報Aを用いて生成され、背景除去された画像P31を抽出対象画像としてモデルM2に入力することにより、画像P31におけるテキストTX2が示す対象の特徴を示す特徴ベクトルを生成する。これにより、情報処理装置100は、「ワンピースを着た女性がソファーに座っている」というテキストTX2が示す対象範囲の特徴を示す特徴ベクトルを生成する。
【0119】
情報処理装置100は、トークンTK1に対応するアテンション情報A1を用いて生成され、背景除去された画像P32を抽出対象画像としてモデルM2に入力することにより、画像P32におけるトークンTK1が示す対象「ソファー」が含まれる範囲(対象範囲)の特徴を示す特徴ベクトルを生成する。これにより、情報処理装置100は、トークンTK1が示す対象「ソファー」に対応する対象範囲の特徴を示す特徴ベクトルを生成する。
【0120】
情報処理装置100は、トークンTK2に対応するアテンション情報A2を用いて生成され、背景除去された画像P33を抽出対象画像としてモデルM2に入力することにより、画像P33におけるトークンTK2が示す対象「ワンピースを着た女性」が含まれる範囲(対象範囲)の特徴を示す特徴ベクトルを生成する。これにより、情報処理装置100は、トークンTK2が示す対象「ワンピースを着た女性」に対応する対象範囲の特徴を示す特徴ベクトルを生成する。
【0121】
このように、情報処理装置100は、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。上述したように、情報処理装置100は、拡散モデルを用いてテキストが示す対応画像を生成し、拡散モデルが対応画像を生成する際に用いたアテンション情報に基づいて、テキストが示す対象範囲のマスク情報を生成する。そして、情報処理装置100は、テキストと対応するマスクを対応画像に適用させることで、テキストが示す対象の画像が有する特徴を学習させるための学習データを生成する。例えば、情報処理装置100は、上述した例のように、特徴情報として特徴ベクトルを生成する。
【0122】
なお、上述した処置は一例に過ぎず、情報処理装置100は、様々な情報を適宜用いて、様々な特徴情報を生成してもよい。例えば、情報処理装置100は、モデルにおけるGlobal Average Pooling処理に代えて、マスク情報を用いた処理により情報を生成してもよい。この場合、情報処理装置100は、得られたマスク情報を用いて、その部分を重視したPoolingを行なうことにより特徴ベクトルを生成してもよい。例えば、情報処理装置100は、カテゴリがインテリアカテゴリである場合、画像P20のうちトークンTK1が示す対象「ソファー」に対応するマスク情報を用いて、特徴ベクトルを生成する。例えば、情報処理装置100は、カテゴリがファッションカテゴリである場合、画像P20のうち、トークンTK2が示す対象「ワンピースを着た女性」に対応するマスク情報を用いて、特徴ベクトルを生成する。
【0123】
また、情報処理装置100は、生成した特徴情報を用いたサービスを提供する。例えば、情報処理装置100は、生成した特徴情報をユーザが利用する端末装置10へ送信する。例えば、情報処理装置100は、モデルM1での生成画像の生成処理時に生成された情報を用いて生成した特徴情報と、モデルM1で生成した生成画像とを対応付けた情報をユーザが利用する端末装置10へ送信する。
【0124】
例えば、情報処理装置100は、モデルM1で生成した生成画像と、その生成画像の生成処理時の情報を用いて生成した特徴情報と、その特徴情報に対応する対象を示すラベルとを対応付けた情報をユーザが利用する端末装置10へ送信する。例えば、情報処理装置100は、モデルM1で生成した生成画像と、特徴情報と、その特徴情報に対応する対象を示すラベルとを対応付けた情報を、学習用データとしてユーザが利用する端末装置10へ送信する。
【0125】
〔2.情報処理システムの構成〕
次に、図3を用いて情報処理システム1の構成例について説明する。図3は、実施形態に係る情報処理システムの構成例を示す図である。図3に示すように、情報処理システム1は、情報処理装置100と、情報提供装置50と、端末装置10とが含まれる。情報処理装置100と、情報提供装置50と、端末装置10とは所定のネットワークNを介して、有線または無線により通信可能に接続される。なお、図3に示した情報処理システム1には、複数の情報処理装置100、複数の情報提供装置50、複数の端末装置10が含まれてもよい。
【0126】
情報処理装置100は、拡散モデル等のモデルを用いて情報を生成するコンピュータである。すなわち、情報処理装置100は、情報の生成処理を行う生成装置である。情報処理装置100は、拡散モデルとテキストとを用いて、テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いたアテンションに基づいて、対応画像のうち、テキストが示す対象範囲のマスク情報を生成する。
【0127】
また、情報処理装置100は、所定の条件を満たす画像である生成画像に対応付けられたテキストである対応テキストと拡散モデルとを用いて、拡散モデルが生成画像の生成時に用いたアテンションに基づいて、生成画像のうち対応テキストが示す対象範囲のマスク情報を生成する。情報処理装置100は、拡散モデルとテキストとを用いて、テキストに対応する対応画像を生成し、テキストが示す対象範囲の特徴を示す特徴情報を生成する。
【0128】
情報処理装置100は、端末装置10を利用するユーザにサービスを提供するコンピュータである。情報処理装置100は、生成したマスク情報を用いたサービスを提供する。情報処理装置100は、生成したマスク情報をユーザに提供する。情報処理装置100は、生成したマスク情報をユーザが利用する端末装置に送信する。
【0129】
情報処理装置100は、生成した特徴情報を用いたサービスを提供する。情報処理装置100は、生成した特徴情報をユーザに提供する。情報処理装置100は、生成した特徴情報をユーザが利用する端末装置10に送信する。
【0130】
情報提供装置50は、モデルの学習に利用可能な情報(データ)を情報処理装置100へ提供するサーバ装置である。例えば、情報提供装置50は、モデルの学習への利用が許可されているデータを、学習用データとして情報処理装置100へ送信する。例えば、情報提供装置50は、インターネット上で公開データを公開し、情報処理装置100等の外部装置からの要求に応じて、要求先の外部装置へ要求されたデータを送信する。例えば、情報提供装置50は、情報処理装置100からデータを要求する要求情報を受信し、要求情報の受信に応じて、情報処理装置100へ要求情報に対応するデータを送信する。
【0131】
例えば、情報提供装置50は、一の画像に段階的にノイズを付与した画像群と、その一の画像に含まれる対象を示すテキストとを対応付けた情報を学習用データとして、情報処理装置100へ送信する。例えば、情報提供装置50は、ECサイト等において取引される取引対象の取引対象画像に段階的にノイズが付与された複数の段階画像と、その取引対象の内容を示すテキストとを対応付けたデータを、学習用データとして情報処理装置100へ送信する。
【0132】
端末装置10は、ユーザによって利用される情報処理装置である。端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。なお、端末装置10をユーザと表記する場合がある。すなわち、ユーザを端末装置10と読み替えることもできる。
【0133】
端末装置10は、ユーザによる操作を受け付ける。また、端末装置10は、ユーザの操作に応じて、情報処理装置100や情報提供装置50に種々の情報を送信する。例えば、端末装置10は、情報処理装置100や情報提供装置50に各種情報を要求する要求情報等を送信する。また、端末装置10は、情報処理装置100や情報提供装置50から種々の情報を受信する。
【0134】
端末装置10は、ユーザが指定した情報生成対象となる画像(対象画像)を情報処理装置100へ送信する。端末装置10は、ユーザが指定した対象を示す情報(指定情報)を情報処理装置100へ送信する。
【0135】
端末装置10は、情報処理装置100から各種情報を受信する。例えば、端末装置10は、情報処理装置100からマスク情報を受信する例えば、端末装置10は、情報処理装置100から特徴情報を受信する。
【0136】
端末装置10は、モデルM1で生成した生成画像と、マスク情報と、そのマスク情報に対応する対象を示すラベルとを対応付けた情報を、学習用データとして情報処理装置100から受信する。端末装置10は、モデルM1で生成した生成画像と、特徴情報と、その特徴情報に対応する対象を示すラベルとを対応付けた情報を、学習用データとして情報処理装置100から受信する。
【0137】
〔3.情報処理装置の構成〕
次に、図4を用いて、実施形態に係る情報処理装置100の構成について説明する。図4は、実施形態に係る情報処理装置100の構成例を示す図である。図4に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
【0138】
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークと有線または無線で接続され、端末装置10や情報提供装置50との間で情報の送受信を行う。
【0139】
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、図4に示すように、学習用データ記憶部121と、モデル情報記憶部122とを有する。
【0140】
(学習用データ記憶部121)
実施形態に係る学習用データ記憶部121は、学習に用いるデータに関する各種情報(学習用データ)を記憶する。学習用データ記憶部121は、モデルの生成に用いる教師データを記憶する。学習用データ記憶部121は、入力に用いるデータやそのデータに対応する正解情報(正解画像)といった情報を含む学習用データ情報を記憶する。
【0141】
学習用データ記憶部121は、入力に用いるノイズ画像及びテキストの組み合わせと、その入力に対応する画像データ(正解画像)とが対応付けられた学習用データを記憶する。
【0142】
なお、学習用データ記憶部121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、学習用データ記憶部121は、入力データの種別を示す情報を各入力データに対応付けて記憶する。
【0143】
(モデル情報記憶部122)
実施形態に係るモデル情報記憶部122は、モデルに関する情報を記憶する。例えば、モデル情報記憶部122は、学習処理により学習(生成)された学習済みモデル(モデル)の情報(モデルデータ)を記憶する。図5は、実施形態に係るモデル情報記憶部の一例を示す図である。図5に示した例では、モデル情報記憶部122は、「モデルID」、「用途」、「モデルデータ」といった項目が含まれる。
【0144】
「モデルID」は、モデルを識別するための識別情報を示す。「用途」は、対応するモデルの用途を示す。「モデルデータ」は、モデルのデータを示す。図5では「モデルデータ」に「MDT1」といった概念的な情報が格納される例を示したが、実際には、モデルの構成(ネットワーク構成)の情報やパラメータに関する情報等、そのモデルを構成する種々の情報が含まれる。例えば、「モデルデータ」には、ネットワークの各層におけるノードと、各ノードが採用する関数と、ノードの接続関係と、ノード間の接続に対して設定される接続係数とを含む情報が含まれる。
【0145】
図5では、モデルID「M1」により識別されるモデル(モデルM1)は、用途が「画像生成」であり、例えば、モデルM1は、テキストの内容を示す画像を生成するために用いられるモデルであることを示す。例えば、モデルM1は、文字情報を画像情報に変換するため、すなわち文字情報の内容を画像として表現(再現)するために用いられるモデルであることを示す。また、モデルM1のモデルデータは、モデルデータMDT1であることを示す。
【0146】
なお、モデル情報記憶部122は、上記に限らず、目的に応じて種々の情報を記憶してもよい。なお、モデルM1等のモデルは、人工知能ソフトウェアの一部であるプログラムモジュールとしての利用が想定されるものであってもよい。モデルM1等のモデルは、プログラムであってもよい。
【0147】
(制御部130)
図4の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(学習プログラムや生成プログラム等の情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0148】
図4に示すように、制御部130は、取得部131と、生成部132と、学習部133と、処理部134と、提供部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図4に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【0149】
(取得部131)
取得部131は、各種情報を取得する。取得部131は、端末装置10や情報提供装置50等の外部の情報処理装置から各種情報を取得する。取得部131は、学習用データ記憶部121やモデル情報記憶部122等に示す各種情報を、外部の情報処理装置から受信してもよい。
【0150】
取得部131は、記憶部120から各種情報を取得する。取得部131は、学習用データ記憶部121やモデル情報記憶部122等から各種情報を取得する。取得部131は、外部装置から各種情報を受信する。
【0151】
取得部131は、ユーザが利用する端末装置10から各種情報を受信する。例えば、取得部131は、端末装置10からマスク情報の生成対象となる画像を受信する。例えば、取得部131は、端末装置10から画像のうち、マスク情報の生成対象となる対象物を指定する情報を受信する。例えば、取得部131は、端末装置10から特徴情報の生成対象となる画像を受信する。
【0152】
取得部131は、情報提供装置50から各種情報を受信する。例えば、取得部131は、情報提供装置50から学習に用いる情報を受信する。例えば、取得部131は、情報提供装置50からモデルM1の学習に用いる学習用データを受信する。
【0153】
取得部131は、ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、テキストに基づくアテンションに応じて画像を復元するように学習されたモデルである拡散モデルを取得する。取得部131は、ユーザが入力した入力テキストを取得する。取得部131は、入力テキストに含まれるトークンのうち一のトークンを指定する指定情報を取得する。取得部131は、入力テキストに含まれるトークンのうち複数のトークンを指定する指定情報を取得する。
【0154】
取得部131は、所定の条件を満たす画像である対象画像と対象画像に対応付けられたテキストである対応テキストを取得する。取得部131は、ノイズ画像と対応テキストとから対象画像を段階的に復元するように学習が行われたモデルであって、対応テキストに基づくアテンションに応じて対象画像を復元するようにモデルである拡散モデルを取得する。
【0155】
取得部131は、実画像である対象画像と、対象画像に対応付けられた対応テキストとを取得する。取得部131は、所定の対象を撮像した撮像画像である対象画像と、所定の対象を示す対応テキストとを取得する。取得部131は、対象画像により撮像された撮像対象を示す対応テキストを取得する。取得部131は、対象画像に含まれる撮像対象を示す対応テキストを取得する。
【0156】
取得部131は、ユーザから処理対象となる対象画像を取得する。取得部131は、ユーザから画像中の情報生成の対象を指定する指定情報を取得する。
【0157】
(生成部132)
生成部132は、種々の情報を推定する生成処理を実行する。例えば、生成部132は、取得部131により取得された各種情報に基づいて、生成処理を実行する。生成部132は、記憶部120に記憶された各種情報に基づいて、生成処理を実行する。生成部132は、外部の情報処理装置から受信された各種情報に基づいて、生成処理を実行する。生成部132は、学習部133により学習されたモデルに基づいて、生成処理を実行する。生成部132は、処理部134により決定された情報に基づいて、生成処理を実行する。
【0158】
生成部132は、取得部131により取得された拡散モデルと入力テキストとを用いて、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いたアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲のマスク情報を生成する。生成部132は、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いた入力テキストに含まれるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲のマスク情報を生成する。
【0159】
生成部132は、入力テキストに含まれるトークンのうち、指定情報により指定された一のトークンに対応するアテンションに基づいて、対応画像のうち、一のトークンが示す対象範囲のマスク情報を生成する。生成部132は、入力テキストに含まれるトークンのうち、指定情報により指定された複数のトークンの各々に対応するアテンションに基づいて、対応画像のうち、複数のトークンが示す対象範囲のマスク情報を生成する。
【0160】
生成部132は、複数のトークンの論理和に対応する対象範囲のマスク情報を生成する。生成部132は、複数のトークンの論理積に対応する対象範囲のマスク情報を生成する。
【0161】
生成部132は、入力テキストに含まれる名詞であるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲のマスク情報を生成する。生成部132は、入力テキストに含まれる動詞であるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲のマスク情報を生成する。生成部132は、入力テキストに対応する対応画像を生成し、拡散モデルの生成処理時の所定段階におけるアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲のマスク情報を生成する。
【0162】
生成部132は、取得部131により取得された拡散モデルと対応テキストとを用いて、拡散モデルが対象画像の生成時に用いたアテンションに基づいて、対象画像のうち、対応テキストが示す対象範囲のマスク情報を生成する。生成部132は、拡散モデルが対象画像の生成時に用いたアテンションに基づいて、対象画像のうち、所定の対象に対応する対象範囲のマスク情報を生成する。
【0163】
生成部132は、拡散モデルが対象画像の生成時に用いたアテンションに基づいて、対象画像のうち、撮像対象に対応する対象範囲のマスク情報を生成する。生成部132は、対応テキストに対応する対応画像を生成し、拡散モデルの生成処理時の所定段階におけるアテンションに基づいて、対応画像のうち、対応テキストが示す対象範囲のマスク情報を生成する。
【0164】
生成部132は、取得部131により取得された拡散モデルと入力テキストとを用いて、入力テキストに対応する対応画像を生成し、入力テキストが示す対象範囲の特徴を示す特徴情報を生成する。生成部132は、入力テキストが示す対象範囲の特徴を示すベクトルを特徴情報として生成する。生成部132は、機械学習の学習データとして用いる特徴情報を生成する。
【0165】
生成部132は、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いたアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲の特徴を示す特徴情報を生成する。生成部132は、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いた入力テキストに含まれるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲の特徴を示す特徴情報を生成する。
【0166】
生成部132は、入力テキストに含まれるトークンのうち、指定情報により指定された一のトークンに対応するアテンションに基づいて、対応画像のうち、一のトークンが示す対象範囲の特徴を示す特徴情報を生成する。生成部132は、入力テキストに含まれるトークンのうち、指定情報により指定された複数のトークンの各々に対応するアテンションに基づいて、対応画像のうち、複数のトークンが示す対象範囲の特徴を示す特徴情報を生成する。
【0167】
生成部132は、複数のトークンの論理和に対応する対象範囲の特徴を示す特徴情報を生成する。生成部132は、複数のトークンの論理積に対応する対象範囲の特徴を示す特徴情報を生成する。
【0168】
生成部132は、入力テキストに含まれる名詞であるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲の特徴を示す特徴情報を生成する。生成部132は、入力テキストに含まれる動詞であるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲の特徴を示す特徴情報を生成する。生成部132は、入力テキストに対応する対応画像を生成し、拡散モデルの生成処理時の所定段階におけるアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲の特徴を示す特徴情報を生成する。
【0169】
(学習部133)
学習部133は、各種情報を学習する。学習部133は、学習処理により各種モデルを生成する。例えば、学習部133は、学習用データ記憶部121等に記憶された情報に基づいて、学習処理を行う。学習部133は、学習用データ記憶部121等に記憶された情報に基づいて種々のモデルを生成する。例えば、学習部133は、学習用データ記憶部121に記憶された学習データを用いて、モデルM1を学習する。
【0170】
学習部133は、ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、テキストに基づくアテンションに応じて画像を復元するように学習されたモデルである拡散モデルを学習する。学習部133は、ノイズ画像と対応テキストとから対象画像を段階的に復元するように学習が行われたモデルであって、対応テキストに基づくアテンションに応じて対象画像を復元するようにモデルである拡散モデルを学習する。
【0171】
学習部133は、取得部131により取得された複数の段階画像を用いて、拡散モデルを学習する。学習部133は、複数の段階画像のうち一の段階画像からノイズを1段階除去した画像である段階画像を生成するように、拡散モデルを学習する。学習部133は、第2段階画像からノイズを1段階除去した第1段階画像を生成するように、拡散モデルを学習する。学習部133は、第3段階画像からノイズを1段階除去した第2段階画像を生成するように、拡散モデルを学習する。
【0172】
例えば、学習部133は、取得部131により取得された各種情報に基づいて、学習処理を実行する。例えば、学習部133は、生成部132により生成された情報に基づいて、モデルを学習する。学習部133は、外部の情報処理装置からの情報や記憶部120に記憶された情報に基づいて、学習処理を実行する。学習部133は、モデル情報記憶部122に記憶された情報に基づいて、学習処理を実行する。学習部133は、学習により生成したモデルをモデル情報記憶部122に格納する。
【0173】
学習部133は、学習処理を行う。学習部133は、各種学習を行う。学習部133は、取得部131により取得された情報に基づいて、各種情報を学習する。学習部133は、モデルを学習(生成)する。学習部133は、モデル等の各種情報を学習する。学習部133は、学習によりモデルを生成する。学習部133は、種々の機械学習に関する技術を用いて、モデルを学習する。例えば、学習部133は、モデル(ネットワーク)のパラメータを学習する。学習部133は、種々の機械学習に関する技術を用いて、モデルを学習する。
【0174】
学習部133は、モデルM1等の各種の学習モデルを生成する。学習部133は、ネットワークのパラメータを学習する。例えば、学習部133は、モデルM1等の各種の学習モデルのネットワークのパラメータを学習する。学習部133は、モデル情報記憶部122に記憶された学習用データを用いて、学習処理を行うことにより、モデルM1等の各種の学習モデルを生成する。例えば、学習部133は、画像の生成に用いられるモデルを生成する。学習部133は、モデルM1等の各種の学習モデルのネットワークのパラメータを学習することにより、モデルM1等の各種の学習モデルを生成する。
【0175】
学習部133は、モデル情報記憶部122に記憶された学習用データ(教師データ)に基づいて、学習処理を行う。学習部133は、モデル情報記憶部122に記憶された学習用データを用いて、学習処理を行うことにより、モデルM1等の各種の学習モデルを生成する。
【0176】
例えば、学習部133は、モデルM1が出力する画像が、モデルM1に入力した入力情報に対応付けられた正解情報(望ましい生成結果を示す情報)に近づくように、バックプロパゲーション(誤差逆伝播法)等の手法により学習処理を行う。例えば、学習部133は、ノイズ画像を含む入力情報が入力されたモデルM1が出力する画像が、入力されたノイズ画像のノイズが1段階除去された画像(正解情報)に近づくように学習処理を行う。
【0177】
例えば、学習部133は、学習処理によりノード間で値が伝達する際に考慮される重み(すなわち、接続係数)の値を調整する。このように、学習部133は、モデルM1における出力と、入力に対応する正解情報との誤差が少なくなるようにパラメータ(接続係数)を補正するバックプロパゲーション等の処理によりモデルM1を学習する。例えば、学習部133は、所定の損失(ロス)関数を最小化するようにバックプロパゲーション等の処理を行うことによりモデルM1を生成する。これにより、学習部133は、モデルM1のパラメータを学習する学習処理を行うことができる。
【0178】
なお、モデルの学習手法については、上述した手法に限定されるものではなく、任意の公知技術が適用可能である。なお、各モデルの生成は、機械学習に関する種々の従来技術を適宜用いて行われてもよい。例えば、モデルの生成は、SVM(Support Vector Machine)等の教師あり学習の機械学習に関する技術を用いて行われてもよい。また、例えば、モデルの生成は、教師なし学習の機械学習に関する技術を用いて行われてもよい。例えば、モデルの生成は、深層学習(ディープラーニング)の技術を用いて行われてもよい。例えば、モデルの生成は、DNN(Deep Neural Network)やRNN(Recurrent Neural Network)やCNN(Convolutional Neural Network)等の種々のディープラーニングの技術を適宜用いて行われてもよい。なお、上記モデルの生成に関する記載は例示であり、モデルの生成は、取得可能な情報等に応じて適宜選択された学習手法により行われてもよい。すなわち、学習部133は、学習用データに含まれる入力情報が入力された場合に、正解情報に対応する情報を出力するようにモデルM1を学習可能であれば、どのような手法によりモデルM1の生成を行ってもよい。
【0179】
上記のように、学習部133による学習の手法は特に限定されないが、例えば、データ(入力情報)とその正解情報(出力情報)とを紐づけた学習用データを用意し、その学習用データを多層ニューラルネットワークに基づいた計算モデルに入力して学習してもよい。また、例えばCNN、3D-CNN等のDNNに基づく手法が用いられてもよい。具体的には、学習部133による学習の手法は、U-netに基づく手法が用いられてもよい。学習部133は、音声等のような時系列データを対象とする場合、再帰型ニューラルネットワーク(RNN)やRNNを拡張したLSTM(Long Short-Term Memory units)に基づく手法を用いてもよい。
【0180】
(処理部134)
処理部134は、各種情報を処理する。処理部134は、記憶部120に記憶された情報に基づいて、情報処理を行う。処理部134は、推論処理を行う推論部として機能する。処理部134は、モデル情報記憶部122に記憶されたモデルを用いて、推論処理を行う。例えば、学習部133は、生成部132により生成された情報に基づいて、推論処理を行う。
【0181】
処理部134は、マスク情報に基づいて対象画像に対する加工処理を実行する。処理部134は、対象画像に対する加工処理により、機械学習の学習データとして用いる加工画像を生成する。処理部134は、対象画像のうち、マスク情報に基づいて特定される対象範囲以外の範囲を背景とした加工画像を生成する。
【0182】
処理部134は、学習部133により学習されたモデルM1を用いて推論を行う。処理部134は、拡散モデルであるモデルM1を用いて推論を行う。処理部134は、ノイズ画像及びテキストを入力情報としてモデルM1に入力することにより、テキストに対応する対象を含む画像を生成する推論処理を行う。
【0183】
(提供部135)
提供部135は、各種情報を提供する。例えば、提供部135は、端末装置10や情報提供装置50に各種情報を提供する。提供部135は、端末装置10や情報提供装置50に各種情報を送信する。提供部135は、取得部131により取得された各種情報に基づいて、種々の情報を提供する。提供部135は、生成部132により生成された各種情報に基づいて、種々の情報を提供する。
【0184】
提供部135は、学習部133により学習された各種情報に基づいて、種々の情報を提供する。提供部135は、学習部133により学習されたモデルに基づいて、種々の情報を提供する。提供部135は、処理部134により処理された各種情報に基づいて、種々の情報を提供する。例えば、提供部135は、情報を端末装置10に送信する。
【0185】
提供部135は、学習部133により学習された拡散モデルを用いたサービスを提供する。提供部135は、生成部132により生成されたマスク情報を用いたサービスを提供する。提供部135は、生成部132により生成されたマスク情報をユーザに提供する。提供部135は、生成部132により生成されたマスク情報をユーザが利用する端末装置に送信する。
【0186】
提供部135は、生成部132により生成された特徴情報を用いたサービスを提供する。提供部135は、生成部132により生成された特徴情報をユーザに提供する。提供部135は、生成部132により生成された特徴情報をユーザが利用する端末装置10に送信する。
【0187】
〔4.情報処理のフロー〕
次に、図6図8を用いて、情報処理装置100による情報処理のフローについて説明する。図6図8は、実施形態に係る情報処理の一例を示すフローチャートである。
【0188】
まず、図6に示す処理例について説明する。図6に示すように、情報処理装置100は、ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、テキストに基づくアテンションに応じて画像を復元するように学習されたモデルである拡散モデルと、ユーザが入力した入力テキストとを取得する(ステップS101)。
【0189】
情報処理装置100は、拡散モデルと入力テキストとを用いて、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いられたアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲をマスクするマスク情報を生成する(ステップS102)。
【0190】
次に、図7に示す処理例について説明する。図7に示すように、情報処理装置100は、所定の条件を満たす画像である対象画像と対象画像に対応付けられたテキストである対応テキストと、ノイズ画像と対応テキストとから対象画像を段階的に復元するように学習が行われたモデルであって、対応テキストに基づくアテンションに応じて対象画像を復元するようにモデルである拡散モデルとを取得する(ステップS201)。
【0191】
情報処理装置100は、拡散モデルと対応テキストとを用いて、拡散モデルが対象画像の生成時に用いられたアテンションに基づいて、対象画像のうち、対応テキストが示す対象範囲をマスクするマスク情報を生成する(ステップS202)。
【0192】
次に、図8に示す処理例について説明する。図8に示すように、情報処理装置100は、ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、テキストに基づくアテンションに応じて画像を復元するように学習されたモデルである拡散モデルと、ユーザが入力した入力テキストとを取得する(ステップS301)。
【0193】
情報処理装置100は、拡散モデルと入力テキストとを用いて、入力テキストに対応する対応画像を生成し、入力テキストが示す対象範囲の特徴を示す特徴情報を生成する(ステップS302)。
【0194】
〔5.効果〕
上述してきたように、実施形態に係る情報処理装置100は、取得部131と、生成部132とを有する。取得部131は、ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、テキストに基づくアテンションに応じて画像を復元するように学習されたモデルである拡散モデルと、ユーザが入力した入力テキストとを取得する。生成部132は、取得部131により取得された拡散モデルと入力テキストとを用いて、入力テキストに対応する対応画像を生成し、入力テキストが示す対象範囲の特徴を示す特徴情報を生成する。
【0195】
このように、実施形態に係る情報処理装置100は、テキストに基づくアテンションに応じて画像を復元するように学習された拡散モデルと入力テキストとを用いて、入力テキストに対応する対応画像を生成し、入力テキストが示す対象範囲の特徴を示す特徴情報を生成することができる。したがって、情報処理装置100は、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0196】
また、実施形態に係る情報処理装置100において、生成部132は、入力テキストが示す対象範囲の特徴を示すベクトルを特徴情報として生成する。
【0197】
このように、実施形態に係る情報処理装置100は、入力テキストが示す対象範囲の特徴を示すベクトルを特徴情報として生成することにより、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0198】
また、実施形態に係る情報処理装置100において、生成部132は、機械学習の学習データとして用いる特徴情報を生成する。
【0199】
このように、実施形態に係る情報処理装置100は、機械学習の学習データとして用いる特徴情報を生成することにより、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0200】
また、実施形態に係る情報処理装置100において、生成部132は、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いたアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲の特徴を示す特徴情報を生成する。
【0201】
このように、実施形態に係る情報処理装置100は、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いたアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲の特徴を示す特徴情報を生成することにより、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0202】
また、実施形態に係る情報処理装置100において、生成部132は、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いた入力テキストに含まれるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲の特徴を示す特徴情報を生成する。
【0203】
このように、実施形態に係る情報処理装置100は、入力テキストに対応する対応画像を生成し、拡散モデルが対応画像の生成時に用いた入力テキストに含まれるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲の特徴情報を生成することができる。したがって、情報処理装置100は、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0204】
また、実施形態に係る情報処理装置100において、取得部131は、入力テキストに含まれるトークンのうち一のトークンを指定する指定情報を取得する。生成部132は、入力テキストに含まれるトークンのうち、指定情報により指定された一のトークンに対応するアテンションに基づいて、対応画像のうち、一のトークンが示す対象範囲の特徴を示す特徴情報を生成する。
【0205】
このように、実施形態に係る情報処理装置100は、入力テキストに含まれるトークンのうち、指定情報により指定された一のトークンに対応するアテンションに基づいて、対応画像のうち、一のトークンが示す対象範囲の特徴情報を生成することができる。したがって、情報処理装置100は、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0206】
また、実施形態に係る情報処理装置100において、取得部131は、入力テキストに含まれるトークンのうち複数のトークンを指定する指定情報を取得する。生成部132は、入力テキストに含まれるトークンのうち、指定情報により指定された複数のトークンの各々に対応するアテンションに基づいて、対応画像のうち、複数のトークンが示す対象範囲の特徴を示す特徴情報を生成する。
【0207】
このように、実施形態に係る情報処理装置100は、入力テキストに含まれるトークンのうち、指定情報により指定された複数のトークンの各々に対応するアテンションに基づいて、対応画像のうち、複数のトークンが示す対象範囲の特徴情報を生成することができる。したがって、情報処理装置100は、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0208】
また、実施形態に係る情報処理装置100において、生成部132は、複数のトークンの論理和に対応する対象範囲の特徴を示す特徴情報を生成する。
【0209】
このように、実施形態に係る情報処理装置100は、複数のトークンの論理和に対応する対象範囲の特徴を示す特徴情報を生成することにより、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0210】
また、実施形態に係る情報処理装置100において、生成部132は、複数のトークンの論理積に対応する対象範囲の特徴を示す特徴情報を生成する。
【0211】
このように、実施形態に係る情報処理装置100は、複数のトークンの論理積に対応する対象範囲の特徴を示す特徴情報を生成することにより、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0212】
また、実施形態に係る情報処理装置100において、生成部132は、入力テキストに含まれる名詞であるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲の特徴を示す特徴情報を生成する。
【0213】
このように、実施形態に係る情報処理装置100は、入力テキストに含まれる名詞であるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲の特徴情報を生成することにより、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0214】
また、実施形態に係る情報処理装置100において、生成部132は、入力テキストに含まれる動詞であるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲の特徴を示す特徴情報を生成する。
【0215】
このように、実施形態に係る情報処理装置100は、入力テキストに含まれる動詞であるトークンの各々に対応するアテンションに基づいて、対応画像のうち、トークンが示す対象範囲の特徴情報を生成することにより、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0216】
また、実施形態に係る情報処理装置100において、生成部132は、入力テキストに対応する対応画像を生成し、拡散モデルの生成処理時の所定段階におけるアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲の特徴を示す特徴情報を生成する。
【0217】
このように、実施形態に係る情報処理装置100は、入力テキストに対応する対応画像を生成し、拡散モデルの生成処理時の所定段階におけるアテンションに基づいて、対応画像のうち、入力テキストが示す対象範囲の特徴情報を生成することにより、処理装置100は、画像を生成するモデルを用いた画像生成時の情報を用いて他の情報を適切に生成することができる。
【0218】
また、実施形態に係る情報処理装置100は、学習部133を有する。学習部133は、ノイズ画像からテキストが示す画像を段階的に復元するように学習が行われたモデルであって、テキストに基づくアテンションに応じて画像を復元するように学習されたモデルである拡散モデルを学習する。
【0219】
このように、実施形態に係る情報処理装置100は、テキストに基づくアテンションに応じて画像を復元するように学習された拡散モデルを学習するにより、適切に画像を生成するモデルを学習することができる。
【0220】
また、実施形態に係る情報処理装置100は、提供部135を有する。提供部135は、生成部132により生成された特徴情報を用いたサービスを提供する。
【0221】
このように、実施形態に係る情報処理装置100は、生成した特徴情報を用いたサービスを提供するを提供することにより、適切なサービス提供を行うことができる。
【0222】
また、実施形態に係る情報処理装置100において、提供部135は、生成部132により生成された特徴情報をユーザに提供する。
【0223】
このように、実施形態に係る情報処理装置100は、特徴情報をユーザに提供することにより、適切なサービスをユーザに提供することができる。
【0224】
また、実施形態に係る情報処理装置100において、提供部135は、生成部132により生成された特徴情報をユーザが利用する端末装置10に送信する。
【0225】
このように、実施形態に係る情報処理装置100は、特徴情報をユーザが利用する端末装置10に送信することにより、適切な検索結果をユーザに提供することができる。
【0226】
〔6.ハードウェア構成〕
また、上述した実施形態に係る情報処理装置100や端末装置10は、例えば図11に示すような構成のコンピュータ1000によって実現される。以下、情報処理装置100を例に挙げて説明する。図11は、ハードウェア構成の一例を示す図である。コンピュータ1000は、出力装置1010、入力装置1020と接続され、演算装置1030、一次記憶装置1040、二次記憶装置1050、出力I/F(Interface)1060、入力I/F1070、ネットワークI/F1080がバス1090により接続された形態を有する。
【0227】
演算装置1030は、一次記憶装置1040や二次記憶装置1050に格納されたプログラムや入力装置1020から読み出したプログラム等に基づいて動作し、各種の処理を実行する。演算装置1030は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等により実現される。
【0228】
一次記憶装置1040は、RAM(Random Access Memory)等、演算装置1030が各種の演算に用いるデータを一次的に記憶するメモリ装置である。また、二次記憶装置1050は、演算装置1030が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ROM(Read Only Memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等により実現される。二次記憶装置1050は、内蔵ストレージであってもよいし、外付けストレージであってもよい。また、二次記憶装置1050は、USBメモリやSD(Secure Digital)メモリカード等の取り外し可能な記憶媒体であってもよい。また、二次記憶装置1050は、クラウドストレージ(オンラインストレージ)やNAS(Network Attached Storage)、ファイルサーバ等であってもよい。
【0229】
出力I/F1060は、ディスプレイ、プロジェクタ、及びプリンタ等といった各種の情報を出力する出力装置1010に対し、出力対象となる情報を送信するためのインターフェイスであり、例えば、USB(Universal Serial Bus)やDVI(Digital Visual Interface)、HDMI(登録商標)(High Definition Multimedia Interface)といった規格のコネクタにより実現される。また、入力I/F1070は、マウス、キーボード、キーパッド、ボタン、及びスキャナ等といった各種の入力装置1020から情報を受信するためのインターフェイスであり、例えば、USB等により実現される。
【0230】
また、出力I/F1060及び入力I/F1070はそれぞれ出力装置1010及び入力装置1020と無線で接続してもよい。すなわち、出力装置1010及び入力装置1020は、ワイヤレス機器であってもよい。
【0231】
また、出力装置1010及び入力装置1020は、タッチパネルのように一体化していてもよい。この場合、出力I/F1060及び入力I/F1070も、入出力I/Fとして一体化していてもよい。
【0232】
なお、入力装置1020は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、又は半導体メモリ等から情報を読み出す装置であってもよい。
【0233】
ネットワークI/F1080は、ネットワークNを介して他の機器からデータを受信して演算装置1030へ送り、また、ネットワークNを介して演算装置1030が生成したデータを他の機器へ送信する。
【0234】
演算装置1030は、出力I/F1060や入力I/F1070を介して、出力装置1010や入力装置1020の制御を行う。例えば、演算装置1030は、入力装置1020や二次記憶装置1050からプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行する。
【0235】
例えば、コンピュータ1000が情報処理装置100として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040上にロードされたプログラムを実行することにより、制御部130の機能を実現する。また、コンピュータ1000の演算装置1030は、ネットワークI/F1080を介して他の機器から取得したプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行してもよい。また、コンピュータ1000の演算装置1030は、ネットワークI/F1080を介して他の機器と連携し、プログラムの機能やデータ等を他の機器の他のプログラムから呼び出して利用してもよい。
【0236】
〔7.その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0237】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0238】
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0239】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
【符号の説明】
【0240】
1 情報処理システム
100 情報処理装置
121 学習用データ記憶部
122 モデル情報記憶部
130 制御部
131 取得部
132 生成部
133 学習部
134 処理部
135 提供部
10 端末装置
50 情報提供装置
N ネットワーク
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11