(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024172255
(43)【公開日】2024-12-12
(54)【発明の名称】プログラム、情報処理装置及び情報処理方法
(51)【国際特許分類】
G06F 16/53 20190101AFI20241205BHJP
G06F 16/90 20190101ALI20241205BHJP
【FI】
G06F16/53
G06F16/90 100
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2023089841
(22)【出願日】2023-05-31
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】三島 直
(72)【発明者】
【氏名】野田 玲子
(72)【発明者】
【氏名】小坂谷 達夫
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175DA02
5B175EA01
5B175GB05
(57)【要約】
【課題】より精度の高いAI処理結果を得るためのプロンプトの調整を効率的に行う。
【解決手段】実施形態のプログラムは、コンピュータを、入力制御部とAI処理部と第1算出部と表示制御部として機能させる。入力制御部は、第1テキストと、前記第1テキストに応じた回答の期待値とを含むプロンプトの入力を受け付ける。AI処理部は、前記第1テキストと、少なくとも1つの画像とが入力されると、前記回答を出力するAI(Artificial Intelligence)モデルを使用して、前記少なくとも1つの画像毎に前記回答を予測する。第1算出部は、前記期待値と前記回答とから、前記回答の精度を算出する。表示制御部は、前記プロンプトと前記回答と前記精度とを少なくとも含む表示情報を表示装置に表示する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
コンピュータを、
第1テキストと、前記第1テキストに応じた回答の期待値とを含むプロンプトの入力を受け付ける入力制御部と、
前記第1テキストと、少なくとも1つの画像とが入力されると、前記回答を出力するAI(Artificial Intelligence)モデルを使用して、前記少なくとも1つの画像毎に前記回答を予測するAI処理部と、
前記期待値と前記回答とから、前記回答の精度を算出する第1算出部と、
前記プロンプトと前記回答と前記精度とを少なくとも含む表示情報を表示装置に表示する表示制御部、
として機能させるためのプログラム。
【請求項2】
前記AI処理部は、正例を示す少なくとも1つの正例画像と、負例を示す少なくとも1つの負例画像とを含む複数の画像の入力を受け付け、
前記表示情報は、前記少なくとも1つの正例画像毎の前記回答と、前記少なくとも1つの負例画像毎の前記回答とを含む、
請求項1に記載のプログラム。
【請求項3】
前記AIモデルは、VQA(Visual question answering)タスクを処理し、
前記第1テキストは、前記複数の画像に対する質問であり、
前記回答の期待値は、前記質問の正解である、
請求項2に記載のプログラム。
【請求項4】
前記AIモデルは、特定の特徴を有する画像を検索する画像検索タスクを処理し、
前記第1テキストは、前記特定の特徴を有する画像を検索するクエリであり、
前記回答の期待値は、前記正例画像に対しては前記特定の特徴を有する画像との第1類似度が閾値より高いことであり、前記負例画像に対しては前記特定の特徴を有する画像との前記第1類似度が前記閾値以下であることである、
請求項2に記載のプログラム。
【請求項5】
前記AIモデルは、特定の領域を特定する画像接地タスクを処理し、
前記第1テキストは、前記特定の領域を表すクエリであり、
前記回答の期待値は、前記特定の領域の位置を示す座標である、
請求項1に記載のプログラム。
【請求項6】
前記コンピュータを、
前記少なくとも1つの画像と、前記少なくとも1つの画像に付随する第2テキストとをサンプルとして記憶するプロンプトデータセットから、前記第1テキストと前記第2テキストとの第2類似度が高い順にK個の前記サンプルを抽出する抽出部と、
前記K個のサンプルそれぞれについての前記第2類似度に基づき、前記第1テキストと前記プロンプトデータセットとの第3類似度を算出する第2算出部、
として更に機能させ、
前記表示情報は、前記第3類似度を更に含む、
請求項1乃至5のいずれか1項に記載のプログラム。
【請求項7】
前記コンピュータを、
前記少なくとも1つの画像と、前記少なくとも1つの画像に付随する第2テキストとをサンプルとして記憶するサンプル画像データセットから、前記第1テキストと前記第2テキストのとの第2類似度が高い順にK個の前記サンプルを抽出する抽出部と、
前記K個のサンプルそれぞれに含まれる前記第2テキストに基づき、提案テキストを生成する提案部、
として更に機能させ、
前記表示情報は、前記提案テキストを更に含む、
請求項1乃至5のいずれか1項に記載のプログラム。
【請求項8】
前記第1算出部は、前記第1テキストに含まれる単語に応じて、前記少なくとも1つの画像において前記AIモデルによって注目される注目領域を可視化する処理を更に実行し、
前記表示情報は、前記単語の選択に応じて注目される注目領域を、前記少なくとも1つの画像毎に示す情報を更に含む、
請求項1乃至5のいずれか1項に記載のプログラム。
【請求項9】
前記第1算出部は、前記少なくとも1つの画像が処理されるときに、前記第1テキストに含まれる単語のうち、前記AIモデルによって注目される注目単語を可視化する処理を更に実行し、
前記表示情報は、前記注目単語を、前記少なくとも1つの画像毎に示す情報を更に含む、
請求項1乃至5のいずれか1項に記載のプログラム。
【請求項10】
前記コンピュータを、
前記第1テキストに基づき、ネットワークから前記少なくとも1つの画像を検索する検索部、
として更に機能させ、
前記表示情報は、前記少なくとも1つの画像の検索を指示するボタンと、検索された前記少なくとも1つの画像とを更に含む、
請求項1乃至5のいずれか1項に記載のプログラム。
【請求項11】
前記コンピュータを、
前記少なくとも1つの画像を説明するキャプションを生成するキャプショニング部、
として更に機能させ、
前記表示情報は、前記キャプションが付与された少なくとも1つの画像を更に含む、
請求項1乃至5のいずれか1項に記載のプログラム。
【請求項12】
前記コンピュータを、
前記AIモデルから出力された回答と、前記プロンプトに含まれる期待値とから、あらかじめ設定された損失関数によって損失を計算し、前記損失を誤差逆伝搬することで、前記AIモデルを更新する損失計算部、
として更に機能させる請求項1乃至5のいずれか1項に記載のプログラム。
【請求項13】
第1テキストと、前記第1テキストに応じた回答の期待値とを含むプロンプトの入力を受け付ける入力制御部と、
前記第1テキストと、少なくとも1つの画像とが入力されると、前記回答を出力するAI(Artificial Intelligence)モデルを使用して、前記少なくとも1つの画像毎に前記回答を予測するAI処理部と、
前記期待値と前記回答とから、前記回答の精度を算出する第1算出部と、
前記プロンプトと前記回答と前記精度とを少なくとも含む表示情報を表示装置に表示する表示制御部と、
を備える情報処理装置。
【請求項14】
情報処理装置が、第1テキストと、前記第1テキストに応じた回答の期待値とを含むプロンプトの入力を受け付けるステップと、
前記情報処理装置が、前記第1テキストと、少なくとも1つの画像とが入力されると、前記回答を出力するAI(Artificial Intelligence)モデルを使用して、前記少なくとも1つの画像毎に前記回答を予測するステップと、
前記情報処理装置が、前記期待値と前記回答とから、前記回答の精度を算出するステップと、
前記情報処理装置が、前記プロンプトと前記回答と前記精度とを少なくとも含む表示情報を表示装置に表示するステップと、
を含む情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態はプログラム、情報処理装置及び情報処理方法に関する。
【背景技術】
【0002】
プロンプトに基づき、AI(Artificial Intelligence)に処理を実行させるプロンプトエンジニアリングが従来から知られている。例えば、画像及びテキストのペアによる大規模事前学習モデルCLIP(ICML2021)では、ユーザーにより与えられるプロンプトとの類似度によって任意のクラス識別ができる。プロンプトの与え方によって精度が変わるため、手作業によりプロンプトの調整が行われている。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】A.Radford et al.,“Learning Transferable Visual Models From Natural Language Supervision”,ICML2021,2021
【非特許文献2】R.R.Selvaraju et al,”Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization”,ICCV2017,2017
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、より精度の高いAI処理結果を得るためのプロンプトの調整を効率的に行うことが難しかった。
【課題を解決するための手段】
【0005】
実施形態のプログラムは、コンピュータを、入力制御部とAI処理部と第1算出部と表示制御部として機能させる。入力制御部は、第1テキストと、前記第1テキストに応じた回答の期待値とを含むプロンプトの入力を受け付ける。AI処理部は、前記第1テキストと、少なくとも1つの画像とが入力されると、前記回答を出力するAI(Artificial Intelligence)モデルを使用して、前記少なくとも1つの画像毎に前記回答を予測する。第1算出部は、前記期待値と前記回答とから、前記回答の精度を算出する。表示制御部は、前記プロンプトと前記回答と前記精度とを少なくとも含む表示情報を表示装置に表示する。
【図面の簡単な説明】
【0006】
【
図1】第1実施形態の情報処理装置の機能構成の例を示す図。
【
図5】第1実施形態の情報処理方法の例を示すフローチャート。
【
図6】第1実施形態の変形例1の情報処理装置の機能構成の例を示す図。
【
図7】第1実施形態の変形例2の情報処理装置の機能構成の例を示す図。
【
図8】第2実施形態の情報処理装置の機能構成の例を示す図。
【
図11】第3実施形態の情報処理装置の機能構成の例を示す図。
【
図12】第3実施形態の質問の候補の提案例を示す図。
【
図14】第4実施形態の情報処理装置の機能構成の例を示す図。
【
図15】第4実施形態の表示情報の例1(画像側で可視化される場合)を示す図。
【
図16】第4実施形態の表示情報の例2(テキスト側で可視化される場合)を示す図。
【
図17】第5実施形態の情報処理装置の機能構成の例を示す図。
【
図20】第6実施形態の情報処理装置の機能構成の例を示す図。
【
図22】第7実施形態の情報処理装置の機能構成の例を示す図。
【
図23】第1乃至第7実施形態の情報処理装置のハードウェア構成の例を示す図。
【発明を実施するための形態】
【0007】
以下に添付図面を参照して、プログラム、情報処理装置及び情報処理方法の実施形態を詳細に説明する。
【0008】
(第1実施形態)
Visual question answering(VQA)を用いた画像検知、及び、テキストによる画像検索などにおいて、どのようなプロンプトを用いるのかは精度に直結する。第1実施形態では、より良いプロンプトを導くためのプロンプト調整をサポートするUI(User Interface)の例について説明する。
【0009】
[機能構成の例]
図1は第1実施形態の情報処理装置1の機能構成の例を示す図である。第1実施形態の情報処理装置1は、入力制御部11、AI処理部12、算出部13及び表示制御部14を備える。
【0010】
入力制御部11は、プロンプトの入力を受け付ける。プロンプトとは、画像及び言語等を処理するAIに入力されるテキストである。例えば、プロンプトは、AIへの指示である。具体的には、VQAの場合は、プロンプトは、画像を検知するAIに与える質問(第1テキスト)と、その期待値とを含む。
【0011】
質問は一つでも良いし、二つ以上でも良い。期待値は、VQAに求める期待回答である。期待値は、質問に対して設定される正解である。文字や回答の表記揺れを考慮して、期待回答は複数設定されてもよい。
【0012】
なお、入力制御部11は、プロンプトが入力されたときに、他言語に翻訳する機能(例えば、日本語から英語に翻訳する機能)を有していてもよい。
【0013】
入力制御部11は、ユーザーによって入力された質問を、AI処理部12に入力し、ユーザーによって入力された期待値を算出部13に入力する。
【0014】
AI処理部12は、AIモデルのタスク処理を実行する。第1実施形態では、AIモデルのタスクは、画像及び質問が入力されると、質問に応じた適切な回答(画像検知結果)を返すVQAである。
【0015】
VQAの場合は、プロンプト調整が行われるAIモデルのタスクに入力される画像は、正例画像セットと負例画像セットとを含む少数のサンプル画像セット(例えば、5~10枚の画像)から選択される。正例画像セットは、質問に対する回答として、検知されることが期待される画像群である。負例画像セットは、質問に対する回答として、検知されないことが期待される画像群である。
【0016】
サンプル画像は、例えば、プロンプトを調整するユーザーにより準備され、情報処理装置1の記憶装置に記憶される。
【0017】
算出部13は、AI処理部12による回答の精度を算出する。具体的には、算出部13は、正例画像に対して、期待回答に含まれる回答が、どのくらいできているかを示す精度を下記により算出する。
正例画像セットに対する精度=(回答が期待回答に含まれる数)/(正例画像の数)
【0018】
同様に、算出部13は、負例画像に対して、期待回答に含まれない回答が、どのくらいできているかを示す精度を下記により算出する。
負例画像セットに対する精度=(回答が期待回答に含まれない数)/(負例画像の数)
【0019】
また、算出部13は、回答についての全体精度を下記により算出する。
全体精度=(正例画像の割合)*(正例画像セットに対する精度)
+(負例画像の割合)*(負例画像に対する精度)
ここで、正例画像の割合、及び、負例画像の割合は、下記により算出される。
正例画像の割合=(正例画像の数)/(正例画像の数+負例画像の数)
負例画像の割合=(負例画像の数)/(正例画像の数+負例画像の数)
【0020】
表示制御部14は、プロンプト調整をサポートする表示情報を表示装置に表示する。これにより、プロンプト調整の結果をユーザーにフィードバックする。
【0021】
[表示情報の例]
図2は、第1実施形態の表示情報の例を示す図である。第1実施形態の表示情報は、正例画像セット(
図2の例では、歩きスマホ画像)、負例画像セット(
図2の例では、普通に歩いている画像)、プロンプト、期待値、それぞれの画像での回答、当該回答の正誤判定結果及び精度を含む。
【0022】
図2の例では、AI処理部12は、正例を示す4つの正例画像と、負例を示す4つの負例画像とを含む8つの画像の入力を受け付け、VQAタスクを処理する。表示情報は、4つの正例画像それぞれについての回答と、4つの負例画像それぞれについての回答とを含む。
【0023】
図3は悪いプロンプトの例を説明するための図である。
図3の例は、悪いプロンプトの例(”Does the person play with the phone while walking?”)が入力された場合の画像検知結果の例を示す。
【0024】
図3の例では、正例画像セットに対する精度=1.00(100%)であり、負例画像セットに対する精度=0.17(17%)である。そのため、
図3のプロンプトの例では、全体精度=0.58(58%)である。
【0025】
図3の例では、歩きスマホ画像(正例画像)の期待回答はYesであるところ、歩きスマホ画像6枚中、6枚Yesと回答している。しかしながら、普通に歩いている画像(負例画像)の期待回答はNoであるところ、普通に歩いている画像6枚中、5枚Yesと回答している。そのため、
図3のプロンプトは、悪いプロンプトの例である。
【0026】
図4は良いプロンプトの例を説明するための図である。
図4の例は、良いプロンプトの例(”Is the person texting while walking?”)が入力された場合の画像検知結果の例を示す。
【0027】
図4の例では、正例画像セットに対する精度=1.00(100%)であり、負例画像セットに対する精度=1.00(100%)である。そのため、
図4のプロンプトの例では、全体精度=1.00(100%)である。
【0028】
図4の例では、歩きスマホ画像(正例画像)の期待回答はYesであるところ、歩きスマホ画像6枚中、6枚Yesと回答している。また、普通に歩いている画像(負例画像)の期待回答はNoであるところ、普通に歩いている画像6枚中、6枚Noと回答している。そのため、
図4のプロンプトは、全て正解しているため、良いプロンプトの例である。
【0029】
なお、
図3及び
図4の画像検知結果の例では、画像毎のyesまたはNoの回答の後ろに、AIモデルによって出力された予測の確信度を示す数値(例えば、0.68等)が併記されているが、確信度は、表示されていなくてもよい。
【0030】
[情報処理方法の例]
図5は第1実施形態の情報処理方法の機能構成の例を示す図である。はじめに、AI処理部12が、プロンプト調整に使用される画像データとして、上述のサンプル画像セットを取得する(ステップS1)。次に、入力制御部11が、質問と、その回答とを含むプロンプトの入力を受け付ける(ステップS2及びS3)。
【0031】
次に、AI処理部12が、ステップS1で取得されたサンプル画像セットに対し、ステップS2で入力された質問に対する回答(予測値)を、AIモデルによるタスク処理によって出力する(ステップS4)。
【0032】
次に、算出部13が、ステップS4で出力された予測値と、ステップS3で入力された期待値とから、精度を算出する。(ステップS5)。
【0033】
次に、表示制御部14が、プロンプト調整をサポートする表示情報(
図2参照)を表示装置に表示し(ステップS6)、プロンプト調整の結果をユーザーにフィードバックする。
【0034】
ユーザーがプロンプトの改良が必要であると判断した場合、入力制御部11が、新たなプロンプトの入力をユーザーから受け付けることにより、ステップS2~S6の処理を繰り返す。
【0035】
以上、説明したように、第1実施形態の情報処理装置1では、入力制御部11が、第1テキスト(第1実施形態では、質問)と、第1テキストに応じた回答の期待値とを含むプロンプトの入力を受け付ける。AI処理部12が、第1テキストと、少なくとも1つの画像とが入力されると、回答を出力するAIモデルを使用して、少なくとも1つの画像毎に回答を予測する。算出部13が、期待値と回答とから、回答の精度を算出する。そして、表示制御部14が、プロンプトと回答と精度とを少なくとも含む表示情報を表示装置に表示する。
【0036】
これにより第1実施形態によれば、より精度の高いAI処理結果を得るためのプロンプトの調整を効率的に行うことができる。
【0037】
(第1実施形態の変形例1)
次に第1実施形態の変形例1について説明する。変形例1の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。変形例1では、AIモデルのタスクが、テキストによって表現されたクエリによって、当該クエリと類似する画像(特定の特徴を有する画像)を検索する画像検索タスクである場合について説明する。
【0038】
[機能構成の例]
図6は第1実施形態の変形例1の情報処理装置1の機能構成の例を示す図である。変形例1の情報処理装置1は、入力制御部11、AI処理部12、算出部13及び表示制御部14を備える。
【0039】
変形例1では、入力制御部11は、プロンプトとして、特定の特徴を有する画像を検索するクエリ(第1テキスト)の入力を受け付ける。回答の期待値は、正例画像に対しては特定の特徴を有する画像との類似度(第1類似度)が閾値より高いことであり、負例画像に対しては特定の特徴を有する画像との類似度が閾値以下であることである。
【0040】
AI処理部12は、画像とクエリとを入力すると、画像とクエリとの類似度を返すAIモデルのタスク処理を実行する。クエリとの類似度が高い画像ほど、AIモデルが、当該クエリを表現した画像であると予測した画像であることを示す。
【0041】
算出部13は、AI処理部12により出力された類似度を閾値処理し、閾値より高ければ、当該類似度をyesに変換し、閾値以下であれば、当該類似度をnoに変換する。そして、算出部13は、正例画像に対して、閾値より高い類似度が出ているか、負例画像に対しては、類似度が閾値以下となっているかを、下記精度によって算出する。
正例画像セットに対する精度=(yesの数)/(正例画像の数)
負例画像セットに対する精度=(noの数)/(負例画像の数)
【0042】
また、算出部13は、類似度についての全体精度を下記により算出する。
全体精度=(正例画像の割合)*(正例画像セットに対する精度)
+(負例画像の割合)*(負例画像に対する精度)
ここで、正例画像の割合、及び、負例画像の割合は、下記により算出される。
正例画像の割合=(正例画像の数)/(正例画像の数+負例画像の数)
負例画像の割合=(負例画像の数)/(正例画像の数+負例画像の数)
【0043】
(第1実施形態の変形例2)
次に第1実施形態の変形例2について説明する。変形例2の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。変形例2では、AIモデルのタスクが、画像に含まれる特定の領域(例えば、特定の対象物を示す領域)をバウンディングボックスなどにより特定する画像接地(Visual Grounding)タスクである場合について説明する。
【0044】
[機能構成の例]
図7は第1実施形態の変形例2の情報処理装置1の機能構成の例を示す図である。変形例2の情報処理装置1は、入力制御部11、AI処理部12、算出部13及び表示制御部14を備える。
【0045】
第1実施形態と同様に、サンプル画像が、例えば、プロンプトを調整するユーザーにより準備され、情報処理装置1の記憶装置に記憶される。
【0046】
変形例2では、入力制御部11は、プロンプトとして、画像接地(Image Grounding)に用いられるクエリと期待値との入力を受け付ける。画像接地は、クエリに応じて画像領域を抽出する処理である。
【0047】
クエリは、ユーザーがサンプル画像内から検索したい対象物を表すフレーズなど、特定の領域を表すテキストである。期待値には、各サンプル画像に対してユーザーが探したい対象物の位置を示す座標(特定の領域の位置を示す座標)が指定される。対象物の位置を示す座標は、例えば、バウンディングボックスの領域を表す(左、上、右、下)または(左上、右下)などの数値の組で指定される。
【0048】
AI処理部12は、AIモデルのタスク処理を実行する。変形例2では、AIモデルのタスクは、画像及びクエリが入力されると、クエリに応じた適切な座標(画像接地結果)を予測する処理である。
【0049】
算出部13は、AI処理部12により予測された座標の精度を算出する。変形例2では、算出部13は、AI処理部12により予測された座標が、期待値の座標に近いほど、精度を高く算出する。例えば、算出部13は、AI処理部12により予測された座標と、期待値の座標との平均絶対誤差(Mean absolute error)等を用いて、精度を算出する。
【0050】
(第2実施形態)
次に第2実施形態について説明する。第2実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第2実施形態では、プロンプト自体の質をフィードバックする構成について述べる。なお、第2実施形態では、AI処理部12のタスクがVQAタスクである場合について述べるが、その他のタスクでも同様である。
【0051】
[機能構成の例]
図8は第2実施形態の情報処理装置1-2の機能構成の例を示す図である。第2実施形態の情報処理装置1-2は、入力制御部11、AI処理部12、第1算出部13、表示制御部14、抽出部15及び第2算出部16を備える。第2実施形態では、第1実施形態の構成に、抽出部15及び第2算出部16が追加されている。
【0052】
入力制御部11は、入力された質問を、AI処理部12及び抽出部15に入力し、入力された期待値を算出部13に入力する。
【0053】
AI処理部12及び第1算出部13は、第1実施形態のAI処理部12及び算出部13と同様なので説明を省略する。すなわち、AIモデルで回答を予測し、当該回答の精度を算出する機能は第1実施形態と同様である。
【0054】
VQAタスクを処理するAIモデルは、VQAデータセットを用いて学習される。VQAデータセットは、画像群と、当該画像群に付随する質問群とを含む。学習されたAIモデルは、VQAデータセットに含まれる質問であれば上手く回答できるが、VQAデータセットに含まれない質問については上手く回答できるとは限らない。
【0055】
抽出部15は、入力制御部11から入力された質問との類似度が近い順に、K個のサンプルをVQAデータセットから抽出する(TopK抽出)。
【0056】
図9は第2実施形態の類似度の算出例を示す図である。類似度の算出方法は色々な方法が考えられる。例えば、抽出部15は、質問のテキストを固定長のベクトルに変換し(埋め込み)、VQAデータセットに含まれるサンプルのベクトルと、入力された質問のベクトルとのコサイン類似度を計算する。
【0057】
テキストのベクトルへの変換には、例えば、AIモデルのテキストエンコーダを用いる方法がある。また例えば、Bag of words(BoW)という方法が、ベクトルへの変換に用いられてもよい。BoWは、両方のテキストに含まれる全ての単語をリストアップし、それぞれの文章で出現した単語の部分は1、それぞれの文章で出現していない単語の部分は0とすることで、テキストをベクトル化する方法である。
【0058】
図8に戻り、第2算出部16は、抽出部15により抽出されたK個のサンプルそれぞれの類似度に基づき、質問とVQAデータセットとの類似度を示すスコアを算出する。第2算出部16は、TopK抽出に用いられた類似度をそのまま用いても良いし、TopKとは異なる類似度算出方法でスコアを求めても良い。
【0059】
表示制御部14は、プロンプト調整をサポートする表示情報を表示装置に表示する。
【0060】
[表示情報の例]
図10は、第2実施形態の表示情報の例を示す図である。第2実施形態の表示情報は、正例画像セット(
図10の例では、歩きスマホ画像)、負例画像セット(
図10の例では、普通に歩いている画像)、プロンプト、期待値、それぞれの画像での回答、当該回答の正誤判定結果、精度及び類似度を含む。第2実施形態では、第2算出部16により算出されたスコアが、類似度として更に表示されている。
【0061】
以上、説明したように、第2実施形態では、抽出部15が、少なくとも1つの画像と、少なくとも1つの画像に付随する第2テキストとをサンプルとして記憶するプロンプトデータセット(第2実施形態では、VQAデータセット)から、プロンプトに含まれる第1テキストと、第2テキストとの類似度(第2類似度)が高い順にK個のサンプルを抽出する。第2算出部16が、K個のサンプルそれぞれについての類似度に基づき、第1テキストとサンプル画像データセットとの類似度(第3類似度)を算出する。そして、表示情報は、類似度(第3類似度)を更に含む。
【0062】
これにより、第2実施形態によれば、入力された質問(プロンプトの一例)と、VQAデータセット(プロンプトデータセットの一例)内のサンプルとの類似度を、ユーザーにフィードバックすることができる。
【0063】
(第3実施形態)
次に第3実施形態について説明する。第2実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第3実施形態では、プロンプトの候補を提案する構成について述べる。なお、第3実施形態では、AI処理部12のタスクがVQAタスクである場合について述べるが、その他のタスクでも同様である。
【0064】
[機能構成の例]
図11は第3実施形態の情報処理装置1-3の機能構成の例を示す図である。第3実施形態の情報処理装置1-3は、入力制御部11、AI処理部12、算出部13、表示制御部14、抽出部15及び提案部17を備える。第3実施形態では、第1実施形態の構成に、抽出部15及び提案部17が追加されている。
【0065】
入力制御部11は、入力された質問を、AI処理部12及び抽出部15に入力し、入力された期待値を算出部13に入力する。
【0066】
AI処理部12及び算出部13は、第1実施形態のAI処理部12及び算出部13と同様なので説明を省略する。すなわち、AIモデルで回答を予測し、当該回答の精度を算出する機能は第1実施形態と同様である。
【0067】
抽出部15は、入力制御部11から入力された質問との類似度が近い順に、K個のサンプルをVQAデータセットから抽出する(TopK抽出)。
【0068】
提案部17は、抽出部15によるTopK抽出の結果に基づき、質問の候補(提案テキスト)を提案する。
【0069】
図12は第3実施形態の質問の候補の提案例を示す図である。
図12の例は、入力された質問と、VQAデータセットのサンプルとの類似度が0.26であるため(所定の閾値より低いため)、TopK抽出で抽出されたサンプルとの類似度が、より高い質問の候補が提案される場合を示す。
【0070】
なお、例えば、質問の候補は、TopK抽出で抽出されたサンプルに含まれる質問をそのまま提示する方法(VQAデータセットに含まれる質問を提示する方法)で提案されてもよい。また例えば、質問の候補は、事前に学習された言語モデルにより、より適切な文に修正された上で提案されてもよい。
【0071】
図11に戻り、表示制御部14は、プロンプト調整をサポートする表示情報を表示装置に表示する。
【0072】
[表示情報の例]
図13は第3実施形態の表示情報の例を示す図である。第3実施形態の表示情報は、正例画像セット(
図13の例では、歩きスマホ画像)、負例画像セット(
図13の例では、普通に歩いている画像)、プロンプト、期待値、それぞれの画像での回答、当該回答の正誤判定結果、精度及び類似度を含む。第3実施形態では、候補表示ボタンが更に表示されている。
【0073】
表示制御部14は、
図13に示すような、候補表示ボタンが押されると、提案部17により提案された質問の候補を表示する。
【0074】
以上、説明したように、第3実施形態では、入力された質問(プロンプトの一例)と、VQAデータセット(プロンプトデータセットの一例)内のサンプルとの類似度に基づき、より適切な質問の候補をユーザーにフィードバックすることができる。
【0075】
(第4実施形態)
次に第4実施形態について説明する。第4実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第4実施形態では、プロンプトに対応する注目領域を画像上に可視化し、当該注目領域に対応するテキストをプロンプト上に可視化する構成について述べる。なお、第4実施形態では、AI処理部12のタスクがVQAタスクである場合について述べるが、その他のタスクでも同様である。
【0076】
[機能構成の例]
図14は第1実施形態の情報処理装置1-4の機能構成の例を示す図である。第1実施形態の情報処理装置1-4は、入力制御部11、AI処理部12、算出部13及び表示制御部14を備える。
【0077】
入力制御部11及びAI処理部12は、第1実施形態の入力制御部11及びAI処理部12と同様なので説明を省略する。
【0078】
算出部13は、例えばGrad-Cam(非特許文献2)を使用して、AIモデルによって、注目される注目領域を可視化する。Grad-Camは、ある出力が与えられた時に、画像内のどこに反応したのかを可視化する技術である。VQAタスクを処理するAIモデルでは、画像側で可視化される場合と、質問のテキスト側で可視化される場合の2パターンがあり得る。
【0079】
表示制御部14は、プロンプト調整をサポートする表示情報を表示装置に表示する。
【0080】
[表示情報の例]
図15は第4実施形態の表示情報の例1(画像側で可視化される場合)を示す図である。第4実施形態の表示情報は、正例画像セット(
図15の例では、歩きスマホ画像)、負例画像セット(
図15の例では、普通に歩いている画像)、プロンプト、期待値、それぞれの画像での回答、当該回答の正誤判定結果、精度及び類似度を含む。第4実施形態では、画像上の注目領域が可視化される。
【0081】
注目領域は、プロンプトの質問のテキストに含まれる単語に応じて変化する。そのため、表示制御部14は、例えばマウスを合わせた単語に応じて、画像上の注目領域を表示する。
【0082】
図16は第4実施形態の表示情報の例2(テキスト側で可視化される場合)を示す図である。
図16の例では、表示制御部14は、正例画像を対象とするVQAタスクで注目されたプロンプトの質問の注目領域と、負例画像を対象とするVQAタスクで注目されたプロンプトの質問の注目領域と、をそれぞれ可視化する。
【0083】
以上、説明したように、第4実施形態では、算出部13が、質問(第1テキスト)に含まれる単語に応じて、少なくとも1つの画像においてAIモデルによって注目される注目領域を可視化する処理を実行する。表示情報は、単語の選択に応じて注目される注目領域を、少なくとも1つの画像毎に示す情報を更に含む(
図15)。
【0084】
また、算出部13は、少なくとも1つの画像が処理されるときに、質問(第1テキスト)に含まれる単語のうち、AIモデルによって注目される注目単語を可視化する処理を実行する。表示情報は、注目単語を、少なくとも1つの画像毎に示す情報を更に含む(図「16)。
【0085】
これにより第4実施形態によれば、AIモデルによって注目される注目領域及び注目単語をユーザーにフィードバックすることができる。
【0086】
(第5実施形態)
次に第5実施形態について説明する。第5実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第5実施形態では、プロンプトのテキストに基づき、インターネット等のネットワークから画像検索してサンプル画像セットを準備する機能について述べる。
【0087】
[機能構成の例]
図17は5実施形態の情報処理装置1-5の機能構成の例を示す図である。第5実施形態の情報処理装置1-5は、入力制御部11、検索部18及び表示制御部14を備える。なお、
図17の例では、説明の簡略化のため、画像検索に係る機能のみ図示しており、第1乃至第4実施形態で説明したプロンプト調整をサポートする機能(AI処理部12及び算出部13等)については省略されている。
【0088】
入力制御部11は、ユーザーによって入力されたプロンプトを検索部18に入力する。
【0089】
検索部18は、入力されたプロンプトのテキスト(第1テキスト)に基づき、インターネット等のネットワーク2から画像を検索し、当該画像を表示制御部14に入力する。
【0090】
表示制御部14は、プロンプト調整のためのサンプル画像セットの準備をサポートする表示情報を表示装置に表示する。
【0091】
[表示情報の例]
図18は第5実施形態の表示情報の例1を示す図である。
図19は第5実施形態の表示情報の例2を示す図である。
【0092】
図18の例1では、表示制御部14は、画像検索(正例)ボタンが押されると、プロンプトのテキストに基づきネットワーク2から画像検索して、結果を正例の表示欄に表示する。同様に、表示制御部14は、画像検索(負例)ボタンが押されると、プロンプトのテキストに基づきネットワーク2から画像検索して、結果を負例の表示欄に表示する。
【0093】
ユーザーは、画像を変更したい場合には、もう一度、画像検索(正例)ボタンまたは画像検索(負例)ボタンを押せば、正例の表示欄または負例の表示欄に、検索部18によって再検索された画像が、表示制御部14により表示される。
【0094】
また、ユーザーは、画像を選択して、画像検索(正例)ボタンまたは画像検索(負例)ボタンを押すことで、選択された画像を変更することもできる(
図19参照)。
【0095】
以上、説明したように、第5実施形態によれば、プロンプト調整のためのサンプル画像セットを準備する手間を軽減させることができる。
【0096】
(第6実施形態)
次に第6実施形態について説明する。第6実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第6実施形態では、サンプル画像セットにキャプショニング(キャプション付け)することで、プロンプト作成の支援をする機能について述べる。
【0097】
[機能構成の例]
図20は第6実施形態の情報処理装置1-6の機能構成の例を示す図である。第6実施形態の情報処理装置1-6は、キャプショニング部19及び表示制御部14を備える。なお、
図20の例では、説明の簡略化のため、キャプショニングに係る機能のみ図示しており、第1乃至第4実施形態で説明したプロンプト調整をサポートする機能(AI処理部12及び算出部13等)については省略されている。
【0098】
キャプショニング部19は、キャプショニングエンジン(例えば、事前に訓練されたキャプショニングAI)に画像を入力することで、当該画像のキャプションを生成する。画像のキャプションは、画像を説明するテキストである。
【0099】
表示制御部14は、キャプショニング部19により生成されたキャプションを含む表示情報を表示する。
【0100】
[表示情報の例]
図21は第6実施形態の表示情報の例を示す図である。
図21に示すように、それぞれの画像を説明するテキスト(キャプション-1~4)が表示されることによって、ユーザーは当該キャプション-1~4を参考にして、プロンプトを作成または調整できる。
【0101】
以上、説明したように、第6実施形態によれば、サンプル画像セットの画像検知などに、より適切なプロンプトの作成または調整する作業をサポートすることができる。
【0102】
(第7実施形態)
次に第7実施形態について説明する。第7実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第7実施形態では、プロンプト調整だけでは上手く対応できない場合に利用される追加学習の機能について述べる。なお、第7実施形態では、AI処理部12のタスクがVQAタスクである場合について述べるが、その他のタスクでも同様である。
【0103】
[機能構成の例]
図22は第7実施形態の情報処理装置1-7の機能構成の例を示す図である。第7実施形態の情報処理装置1-7は、入力制御部11、AI処理部12及び表示制御部14を備える。なお、
図22の例では、説明の簡略化のため、追加学習に係る機能を図示しており、第1乃至第4実施形態で説明したプロンプト調整をサポートする機能(算出部13等)については、プロンプト調整部21として、まとめて記載されている。
【0104】
入力制御部11は、ユーザーによって入力された入力された質問を、AI処理部12に入力し、ユーザーによって入力された期待値を損失計算部20に入力する。
【0105】
AI処理部12は、質問とサンプル画像セットとをAIモデルに入力し、当該AIモデルから出力された予測結果を損失計算部20に入力する。
【0106】
損失計算部20は、AI処理部12から入力された予測結果(回答)と、入力制御部11から入力された期待値とから、あらかじめ設定された損失関数によって損失を計算する。損失計算部20は、得られた損失を誤差逆伝搬することで、AIモデルを更新する。損失関数には、例えばクロスエントロピー等任意の損失関数が用いられる。
【0107】
以上、説明したように、第7実施形態によれば、プロンプト調整では上手く対応できない場合に、AIモデルの追加学習の機能を提供することができる。
【0108】
最後に、第1乃至第7実施形態の情報処理装置1(1-2~1-7)のハードウェア構成の例について説明する。
【0109】
[ハードウェア構成の例]
図23は、第1乃至第7実施形態の情報処理装置1(1-2~1-7)のハードウェア構成の例を示す図である。情報処理装置1は、プロセッサ201、主記憶装置202、補助記憶装置203、表示装置204、入力装置205及び通信装置206を備える。プロセッサ201、主記憶装置202、補助記憶装置203、表示装置204、入力装置205及び通信装置206は、バス210を介して接続されている。
【0110】
なお、情報処理装置1は、上記構成の一部が備えられていなくてもよい。例えば、情報処理装置1が、外部の装置の入力機能及び表示機能を利用可能な場合、情報処理装置1に表示装置204及び入力装置205が備えられていなくてもよい。
【0111】
プロセッサ201は、補助記憶装置203から主記憶装置202に読み出されたプログラムを実行する。主記憶装置202は、ROM(Read Only Memory)及びRAM(Random Access Memory)等のメモリである。補助記憶装置203は、HDD(Hard Disk Drive)及びメモリカード等である。
【0112】
表示装置204は、例えば液晶ディスプレイ等である。入力装置205は、情報処理装置1を操作するためのインタフェースである。なお、表示装置204及び入力装置205は、表示機能と入力機能とを有するタッチパネル等により実現されていてもよい。通信装置206は、他の装置と通信するためのインタフェースである。
【0113】
例えば、情報処理装置1で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルで、メモリカード、ハードディスク、CD-RW、CD-ROM、CD-R、DVD-RAM及びDVD-R等のコンピュータで読み取り可能な記憶媒体に記録されてコンピュータ・プログラム・プロダクトとして提供される。
【0114】
また例えば、情報処理装置1で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。
【0115】
また例えば、情報処理装置1で実行されるプログラムをダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。具体的には、例えばASP(Application Service Provider)型のクラウドサービスによって構成してもよい。
【0116】
また例えば、情報処理装置1のプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
【0117】
情報処理装置1で実行されるプログラムは、上述の機能構成のうち、プログラムによっても実現可能な機能を含むモジュール構成となっている。当該各機能は、実際のハードウェアとしては、プロセッサ201が記憶媒体からプログラムを読み出して実行することにより、上記各機能ブロックが主記憶装置202上にロードされる。すなわち上記各機能ブロックは主記憶装置202上に生成される。
【0118】
なお上述した各機能の一部又は全部をソフトウェアにより実現せずに、IC(Integrated Circuit)等のハードウェアにより実現してもよい。
【0119】
また複数のプロセッサ201を用いて各機能を実現してもよく、その場合、各プロセッサ201は、各機能のうち1つを実現してもよいし、各機能のうち2つ以上を実現してもよい。
【0120】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0121】
1 情報処理装置
2 ネットワーク
11 入力制御部
12 AI処理部
13 算出部(第1算出部)
14 表示制御部
15 抽出部
16 第2算出部
17 提案部
18 検索部
19 キャプショニング部
20 損失計算部
201 プロセッサ
202 主記憶装置
203 補助記憶装置
204 表示装置
205 入力装置
206 通信装置
210 バス