(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024079224
(43)【公開日】2024-06-11
(54)【発明の名称】データ処理方法及びデータ処理装置
(51)【国際特許分類】
G06F 16/583 20190101AFI20240604BHJP
G06F 16/55 20190101ALI20240604BHJP
【FI】
G06F16/583
G06F16/55
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2022192044
(22)【出願日】2022-11-30
(71)【出願人】
【識別番号】000003997
【氏名又は名称】日産自動車株式会社
(74)【代理人】
【識別番号】100083806
【弁理士】
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100101247
【弁理士】
【氏名又は名称】高橋 俊一
(74)【代理人】
【識別番号】100095500
【弁理士】
【氏名又は名称】伊藤 正和
(74)【代理人】
【識別番号】100098327
【弁理士】
【氏名又は名称】高松 俊雄
(72)【発明者】
【氏名】陳 放歌
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA02
5B175FA00
5B175GB04
5B175HB03
(57)【要約】
【課題】評価単語との類似度が最も高い画像を出力する際に、画像間の類似度の差が少なくても、出力する画像を決めやすくする。
【解決手段】データ処理方法では、複数の候補画像011と評価単語013とを入力部001に入力し、入力した候補画像011のうち、評価単語013との第1の類似度が最も高い候補画像011を出力する。抽出部002が、候補画像011間での評価単語013との第1の類似度の第1の差分を算出し、第1の差分が第1の閾値以下である場合に、関連単語探索部003が、評価単語013を含む複数の文章から、その文章において、評価単語013に対して第1の関連度以上の関連度で登場する関連単語031を探索する。抽出部002が、複数の候補画像011と関連単語031との第2の類似度を算出し、第2の類似度に基づいて第1の類似度を補正し、出力部004が、補正後の第1の類似度が最も高い候補画像011を出力する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
複数の画像と少なくとも1以上の評価単語とを入力部に入力し、
前記入力部に入力した複数の画像のうち、前記評価単語との第1の類似度が最も高い前記画像を出力するデータ処理方法において、
前記複数の画像間での前記第1の類似度の第1の差分を算出し、
前記第1の差分が第1の閾値以下である場合に、
前記評価単語を含む複数の文章から、前記文章において、前記評価単語に対して第1の関連度以上の関連度で登場する1又は2以上の関連単語を抽出し、
前記複数の画像と前記関連単語との第2の類似度をそれぞれ算出し、
前記第2の類似度に基づいて、前記第1の類似度を補正し、
前記補正後の第1の類似度が最も高い前記画像を出力する、
データ処理方法。
【請求項2】
前記複数の画像間での前記補正後の第1の類似度の第2の差分を算出し、
前記第2の差分が第2の閾値以下である場合に、
前記関連単語を含む複数の文章から、前記関連単語を含む文章において、前記関連単語に対して第2の関連度以上の関連度で登場する1又は2以上のサブ関連単語を抽出し、
前記複数の画像と前記サブ関連単語との第3の類似度をそれぞれ算出し、
前記第3の類似度に基づいて、前記第2の類似度を補正し、
前記補正後の第2の類似度に基づいて、前記第1の類似度を補正し、
前記補正後の第1の類似度が最も高い前記画像を出力する、
請求項1に記載のデータ処理方法。
【請求項3】
前記関連単語は、ナレッジグラフのグラフデータベースにおいて、前記評価単語のノードと前記画像のノードとの双方に、直接又は他のノードを介して、エッジによりそれぞれ接続されるノードの単語から抽出される請求項1に記載のデータ処理方法。
【請求項4】
前記グラフデータベースにおける、前記評価単語と1又は2以上の前記関連単語との関連度の総和に占める前記関連単語毎の前記評価単語との関連度の割合に対応する重み付け係数により、前記第2の類似度を前記関連単語毎にそれぞれ重み付けし、
重み付け後の前記第2の類似度に基づいて、前記第1の類似度を補正する、
請求項3に記載のデータ処理方法。
【請求項5】
前記サブ関連単語は、ナレッジグラフのグラフデータベースにおいて、前記関連単語のノードと前記画像のノードとの双方に、直接又は他のノードを介して、エッジによりそれぞれ接続されるノードの単語から抽出される請求項2に記載のデータ処理方法。
【請求項6】
前記グラフデータベースにおける、前記関連単語と1又は2以上の前記サブ関連単語との関連度の総和に占める前記サブ関連単語毎の前記関連単語との関連度の割合に対応する重み付け係数により、前記第3の類似度を前記サブ関連単語毎にそれぞれ重み付けし、
重み付け後の前記第3の類似度に基づいて、前記第2の類似度を補正する、
請求項5に記載のデータ処理方法。
【請求項7】
前記第1の差分が前記第1の閾値以下である場合とは、
前記複数の画像間についてそれぞれ算出した複数の前記第1の差分の平均が第3の閾値以下である場合、又は、前記複数の画像間についてそれぞれ算出した複数の前記第1の差分の最小値が第4の閾値以下である場合である、
請求項1に記載のデータ処理方法。
【請求項8】
前記第2の差分が前記第2の閾値以下である場合とは、
前記複数の画像間についてそれぞれ算出した複数の前記第2の差分の平均が第5の閾値以下である場合、又は、前記複数の画像間についてそれぞれ算出した複数の前記第2の差分の最小値が第6の閾値以下である場合である、
請求項2に記載のデータ処理方法。
【請求項9】
前記評価単語を、既存の情報源から情報収集可能な物理量によって数値化される物理指標と、前記物理量以外の量によって数値化される抽象指標とに分類し、
前記物理指標に分類される前記評価単語と前記画像との第4の類似度を、前記物理量によって数値化し、
前記抽象指標に分類される前記評価単語と前記画像との第5の類似度を、前記物理量以外の量によって数値化し、
前記第4の類似度と、前記第5の類似度とを、前記第1の類似度とする、
請求項1に記載のデータ処理方法。
【請求項10】
前記第5の類似度を、前記画像及び前記評価単語を入力とし前記画像のベクトル及び前記評価単語のベクトルを出力とする機械学習モデルを用いて数値化する請求項9に記載のデータ処理方法。
【請求項11】
前記評価単語及び前記関連単語は、ユーザの発言をテキスト化したテキストデータから抽出される請求項1に記載のデータ処理方法。
【請求項12】
前記評価単語、前記関連単語及び前記サブ関連単語は、ユーザの発言をテキスト化したテキストデータから抽出される請求項2に記載のデータ処理方法。
【請求項13】
前記補正後の第1の類似度が最も高い前記画像は、ユーザが視認する表示デバイスに出力される請求項1又は2に記載のデータ処理方法。
【請求項14】
前記画像は、車両周辺の状況の画像を撮影した車載型の映像記録装置から入力される請求項1に記載のデータ処理方法。
【請求項15】
複数の画像と少なくとも1以上の評価単語とが入力される入力部と、
前記入力部に入力した複数の画像のうち、前記評価単語との第1の類似度が最も高い前記画像を抽出する抽出部と、
前記抽出部が抽出した前記画像を出力する出力部と、
前記複数の画像間での前記第1の類似度の第1の差分が第1の閾値以下である場合に、前記評価単語を含む複数の文章から、前記文章において、前記評価単語に対して第1の関連度以上の関連度で登場する1又は2以上の関連単語を探索する関連単語探索部とを備え、
前記抽出部は、前記第1の差分が前記第1の閾値以下である場合に、前記複数の画像と前記関連単語との第2の類似度をそれぞれ算出し、前記第2の類似度に基づいて、前記第1の類似度を補正し、前記補正後の第1の類似度が最も高い前記画像を抽出する、
データ処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ処理方法及びデータ処理装置に関する。
【背景技術】
【0002】
特許文献1には、車両の行き先案内システムが記載されている。このシステムでは、現在の車両の位置を考慮して、複数の施設・スポットを行先候補として選択する。各行先候補が提示された際の運転者の反応として予測される感情をそれぞれ予測し、運転者が最も好ましいと感じることを表す感情値を与える施設・スポットを、推奨される行先として運転者に提示する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1のシステムでは、複数の行先候補の間で、予測された感情に対応する感情値の差が少ない場合、行先候補の優劣をはっきり弁別できない可能性がある。行先候補の優劣をはっきり弁別できないと、運転者が最も好ましいと感じることを表す感情値を与える施設・スポットを、推奨される行先として運転者に提示できなくなる。
【0005】
本発明は前記事情に鑑みなされたもので、本発明の目的は、評価単語との類似度が最も高い画像を出力する際に、画像間の類似度の差が少なくても、出力する画像を決めやすくすることである。
【課題を解決するための手段】
【0006】
上述した課題を解決するために、本発明の一つの態様に係るデータ処理方法は、複数の画像と少なくとも1以上の評価単語とを入力部に入力し、入力部に入力した複数の画像のうち、評価単語との第1の類似度が最も高い画像を出力する方法を提供する。この方法では、複数の画像間での第1の類似度の第1の差分を算出し、算出した第1の差分が第1の閾値以下である場合に、評価単語を含む複数の文章から、文章において評価単語に対して第1の関連度以上の関連度で登場する1又は2以上の関連単語を抽出する。また、複数の画像と関連単語との第2の類似度をそれぞれ算出する。さらに、第2の類似度に基づいて、第1の類似度を補正する。補正後の第1の類似度が最も高い画像を出力する。
【発明の効果】
【0007】
本発明によれば、評価単語との類似度が最も高い画像を出力する際に、画像間の類似度の差が少なくても、出力する画像を決めやすくすることができる。
【図面の簡単な説明】
【0008】
【
図1】
図1は、本発明の一実施形態に係るデータ処理装置の構成を示す図である。
【
図2A】
図2Aは、
図1の入力部が行う処理手順の一例を示すフローチャートである。
【
図2B】
図2Bは、
図1の入力部が行う処理手順の他の例を示すフローチャートである。
【
図3A】
図3Aは、
図1の抽出部が行う処理手順の一例のうち一部分を示すフローチャートである。
【
図3B】
図3Bは、
図1の抽出部が行う処理手順の一例のうち、
図3Aに示す部分に続く一部分を示すフローチャートである。
【
図4A】
図4Aは、
図1の抽出部が抽象指標に分類される評価単語又は関連単語と候補画像との第5の類似度を機械学習モデルを用いて算出する際の、機械学習モデルのトレーニングを含むデータの流れの一例を示す図である。
【
図4B】
図4Bは、
図4Aのトレーニング中の機械学習モデルが出力する画像ベクトルバッチとテキストベクトルバッチとを行及び列にそれぞれ配置したマトリクスの説明図である。
【
図5A】
図5Aは、
図1の関連単語探索部が行う処理手順の一例を示すフローチャートである。
【
図5B】
図5Bは、
図5Aの各関連指標と各関連単語の重みとを取得するステップの詳細な手順の一例を示すフローチャートである。
【
図5C】
図5Cは、
図5Bの単語グラフデータベースユニットに記憶されたナレッジグラフのグラフデータベースの一例を示す図である。
【
図5D】
図5Dは、
図5Bの単語グラフデータベースユニットに記憶されたナレッジグラフのグラフデータベースの他の例を示す図である。
【
図6】
図6は、
図1の出力部が出力する、ユーザの要望に対応する評価単語との類似度が高い複数の候補画像を展開したポジショニングマップの一例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について、図面を参照して説明する。
【0010】
図1を参照して、本発明の一実施形態に係る配車装置を含む配車システムの構成を説明する。
【0011】
本実施形態に係るデータ処理装置1は、入力部001、抽出部002、関連単語探索部003及び出力部004を有している。本実施形態に係るデータ処理装置1は、本実施形態に係るデータ処理方法を実施することができる。
【0012】
データ処理装置1は、例えば、汎用のマイクロコントローラを有している。マイクロコントローラは、CPU(Central Processing Unit )及びメモリを備える。メモリは、ROM(Read Only Memory)及びRAM(Random Access Memory)を含む。
【0013】
マイクロコントローラは、メモリに記憶させたプログラムをCPUが実行することで、複数の情報処理回路を仮想的に構築することができる。複数の情報処理回路は、データ処理装置1の各部001~004を構成することができる。
【0014】
本実施形態では、マイクロコントローラに構築される複数の情報処理回路をソフトウェアによって実現する例を示す。もちろん、各部001~004の以下に示す各情報処理を実行するための専用のハードウェアを用意して、情報処理回路を構成することも可能である。また、複数の情報処理回路を個別のハードウェアにより構成してもよい。専用のハードウェアは、各部001~004の機能を実行するようにアレンジされた特定用途向け集積回路(ASIC;Application Specific Integrated Circuit )、従来型の回路部品のような装置を含む。
【0015】
本実施形態のデータ処理装置1では、複数の画像として、複数の候補画像011を入力部001に入力する。データ処理装置1では、少なくとも1つの評価単語013を入力部001に入力する。入力部001に入力した複数の候補画像011のうち、評価単語013との第1の類似度が最も高い候補画像011を抽出部002が抽出し、抽出した候補画像011を出力部004が出力する。
【0016】
抽出部002は、評価単語013との第1の類似度が最も高い候補画像011を抽出する際に、複数の候補画像011間での第1の類似度の第1の差分を算出する。抽出部002が算出した第1の差分が第1の閾値以下である場合は、関連単語探索部003が、評価単語013を含む複数の文章から、文章において評価単語013に対して第1の関連度以上の関連度で登場する1又は2以上の関連単語031を探索する。
【0017】
評価単語013に対する関連単語031の関連度は、例えば、評価単語013と関連単語031との意味的距離又は地理的距離によって評価することができる。評価単語013に対する関連単語031の関連度は、例えば、評価単語013を含む文章に関連単語031が登場する頻度によって評価してもよい。
【0018】
評価単語013と関連単語031との意味的距離とは、例えば、評価単語013が表す意味と関連単語031が表す意味との近さを示す距離とすることができる。意味の近さを意味的距離とする場合は、評価単語013が表す意味と関連単語031が表す意味とが近いほど、評価単語013と関連単語031との意味的距離は短くなる。評価単語013と関連単語031との意味的距離が短いほど、評価単語013に対する関連単語031の関連度は高くなる。評価単語013と関連単語031との意味的距離は、例えば、評価単語013及び関連単語031をそれぞれベクトル化した特徴量ベクトル同士の距離の長さによって評価することができる。
【0019】
評価単語013と関連単語031との地理的距離とは、例えば、評価単語013と関連単語031とを含む文章内での両者の単語間距離とすることができる。単語間距離を地理的距離とする場合は、1つの文章内で評価単語013と関連単語031との間に配置された単語が少ないほど、評価単語013と関連単語031との地理的距離は短くなる。評価単語013と関連単語031との地理的距離が短いほど、評価単語013に対する関連単語031の関連度は高くなる。評価単語013と関連単語031との地理的距離は、例えば、1つの文章において評価単語013と関連単語031との間に配置された単語の数によって評価することができる。
【0020】
評価単語013を含む文章に関連単語031が登場する頻度は、例えば、評価単語013を含む全ての文章に対する、評価単語013と関連単語031とを両方含む文章が占める割合で表すことができる。この割合が高いほど、評価単語013を含む文章に関連単語031が登場する頻度は高くなり、評価単語013に対する関連単語031の関連度が高くなる。
【0021】
評価単語013に対する関連単語031の関連度は、例えば、マハラノビス距離等の、特定の分布における評価単語013と関連単語031との距離によって評価してもよい。
【0022】
関連単語探索部003が関連単語031を探索した場合、抽出部002は、複数の候補画像011と関連単語031との第2の類似度をそれぞれ算出する。さらに、抽出部002は、第2の類似度に基づいて、先に算出した第1の類似度を補正し、補正後の第1の類似度が最も高い候補画像011を抽出する。出力部004は、抽出部002が抽出した、補正後の第1の類似度が最も高い候補画像011を出力する。
【0023】
評価単語013との第1の類似度又は補正後の第1の類似度が最も高い候補画像011を出力する態様には、次の第1~第3の態様のような例がある。
【0024】
第1の態様は、車両の行き先の候補となる複数の場所の候補画像011のうち、車両に乗車したユーザの要望に対応する評価単語013との類似度が最も高い候補画像011を出力する、という態様である。第1の態様では、候補画像011の出力を、例えば、ユーザが視認可能な画面に候補画像011を表示することによって行うことが考えられる。
【0025】
第2の態様は、ユーザが乗車している車両から撮影した候補画像011のうち、乗車中のユーザの希望に対応する評価単語013との類似度が最も高い候補画像011を出力する、という態様である。候補画像011は、例えば、ユーザが乗車している車両に搭載したドライブレコーダによって撮影された、車両周辺の風景の画像であってもよい。ドライブレコーダは、車両周辺の状況の画像を撮影した車載型の映像記録装置である。第2の態様では、候補画像011の出力を、例えば、記録装置に候補画像011のデータを記憶することによって行うことが考えられる。
【0026】
第3の態様は、ユーザがポジショニングマップに展開して評価したい複数の対象の候補画像011のうち、ユーザの要望に対応する評価単語013との類似度が高い複数の候補画像011を、ポジショニングマップ上に展開する、という態様である。
【0027】
ポジショニングマップは、例えば2つの軸によって構成される象限上に、それぞれの内容に応じて複数の候補画像011を配置したものである。ポジショニングマップの軸は、ユーザの要望に対応する少なくとも1つの評価単語013の軸を含むことができる。
【0028】
第3の態様では、候補画像011の出力を、例えば、候補画像011を配置したポジショニングマップを、ユーザが視認可能な画面に表示することによって行うことが考えられる。
【0029】
データ処理装置1が、評価単語013との第1の類似度又は補正後の第1の類似度が最も高い候補画像011を出力する態様は、上述した第1~第3の態様に限定されない。
【0030】
以下、本実施形態のデータ処理装置1の詳細な構成及び動作について説明する。
【0031】
入力部001には、複数の候補画像011及び少なくとも1つの評価単語013が入力される。入力部001には、候補リスト012がさらに入力される。候補リスト012は、各候補画像011に付与された説明用のキャプションのリストである。キャプションは、説明文とも言われるが、本実施形態のキャプションは、文章だけでなく単語も含む。候補リスト012のキャプションは、抽出部002及び関連単語探索部003において使用する。候補リスト012のキャプションの使用形態については後述する。
【0032】
例えば、入力部001に入力する複数の候補画像011を、第1の態様のように、車両の行き先の候補となる複数の場所の画像とする場合、候補リスト012は、ユーザが行ってみたい行き先のリストとすることができる。候補リスト012の行き先は、例えば、地名、施設名等であってもよい。地名は地域名を含んでいてもよい。
【0033】
ユーザが行ってみたい行き先の候補リスト012は、例えば、過去の一定期間に車両が訪れた場所から抽出した行き先のリストであってもよい。一定期間は、例えば、車両が過去に運転された期間のうち最新の一定時間分の期間としてもよく、車両が過去に走行した距離のうち最新の一定距離分を走行した期間としてもよい。
【0034】
車両が過去に訪れた場所から抽出する行き先は、過去の一定期間に訪れた場所からランダムに抽出してもよく、例えば、過去の一定期間に訪れた場所のうち訪れた頻度が高い方から順に抽出してもよい。車両が訪れた場所の抽出は、例えば、車両のナビゲーション装置(図示せず)によって行ってもよい。
【0035】
ユーザが行ってみたい行き先の候補リスト012は、例えば、車両のユーザがナビゲーション装置に対して行う設定により、ナビゲーション装置に予め登録しておくことができる。ナビゲーション装置に登録した候補リスト012は、例えば、ナビゲーション装置から入力部001に入力することができる。
【0036】
候補リスト012を、ユーザが行ってみたい行き先のリストとする場合、入力部001に入力する、候補リスト012の各行き先に対応する複数の候補画像011は、例えば、行き先をキーワードとしたインターネット検索によって取得することができる。インターネット検索によって取得した複数の候補画像011は、候補画像011を提供するインターネット上の不図示のサーバからインターネットを介して入力部001に入力することができる。
【0037】
インターネット上のサーバから取得する候補画像011は、例えば、サーバに候補画像011を登録した日付が、現在の日付から一定期間遡った過去の所定の日付以降の、最近の画像に限定してもよい。
【0038】
例えば、入力部001に入力する複数の候補画像011を、第2の態様のように、ユーザが乗車している車両から撮影した画像とする場合、候補リスト012は、画像の撮影時における車両の走行場所を示す地名のリストとすることができる。
【0039】
車両のドライブレコーダ(図示せず)のカメラで車両周辺の画像を周期的に撮影する場合、画像の撮影時における車両の位置は、例えば、車両のGNSS(Global Navigation Satellite System/全球測位衛星システム)センサで検出することができる。GNSSセンサで検出した位置の地名は、例えば、ナビゲーション装置から取得することができる。画像の撮影時における車両の走行場所を示す地名の候補リスト012は、例えば、ナビゲーション装置から入力部001に入力することができる。
【0040】
ドライブレコーダの画像の撮影時における車両の走行場所を示す地名は、ドライブレコーダが画像を撮影する度に、ナビゲーション装置から入力部001に入力される。入力部001は、ナビゲーション装置から地名が入力される度に、候補リスト012の内容を追加更新することができる。
【0041】
候補リスト012を、ドライブレコーダの画像の撮影時における車両の走行場所の地名のリストとする場合、入力部001に入力する複数の候補画像011は、ドライブレコーダにおいて撮影された画像のフレームデータとなる。複数の候補画像011は、ドライブレコーダにおいて画像が撮影される度に、ドライブレコーダから入力部001に入力することができる。
【0042】
例えば、入力部001に入力する複数の候補画像011を、第3の態様のように、ユーザがポジショニングマップに展開して評価したい対象の画像とする場合、候補リスト012は、評価対象のリストとすることができる。候補リスト012の評価対象は、例えば、商品であってもよく、車両の行き先であってもよい。
【0043】
評価対象が商品である場合、候補リスト012は、例えば、商品名のリストとすることができる。商品が車両である場合は、車両名のリストを候補リスト012とすることができる。評価対象が車両の行き先である場合、候補リスト012は、例えば、ユーザが行ってみたい行き先のリストとすることができる。
【0044】
ユーザが行ってみたい行き先の候補リスト012は、例えば、ナビゲーション装置に予め登録しておき、ナビゲーション装置から入力部001に入力することができる。
【0045】
ユーザが評価したい商品の候補リスト012の商品名は、例えば、ユーザがキーボード等の入力デバイスを用いて入力部001に入力することができる。入力部001は、入力デバイスから商品名が入力される度に、候補リスト012の内容を追加更新することができる。
【0046】
候補リスト012を、ユーザがポジショニングマップに展開して評価したい評価対象のリストとする場合、入力部001には、候補リスト012の各評価対象に対応する複数の候補画像011を入力する。候補リスト012の各評価対象に対応する複数の候補画像011は、例えば、評価対象の商品名、行き先等をキーワードとしたインターネット検索によって取得することができる。
【0047】
インターネット検索によって取得した複数の候補画像011は、候補画像011を提供するインターネット上の不図示のサーバからインターネットを介して入力部001に入力することができる。インターネットから取得する候補画像011は、最近の画像に限定してもよい。
【0048】
入力部001には、評価単語013を含む文章が入力される。評価単語013は、入力部001に入力される複数の候補画像011から1つの候補画像011を選ぶ際の指標とする単語である。評価単語013は、ユーザの希望を反映した単語とすることができ、例えば、形容詞機能を有する単語とすることができる。評価単語013を含む文章でなく、評価単語013が単体で入力部001に入力されてもよい。
【0049】
評価単語013を含む文章は、テキストデータで入力部001に入力してもよい。評価単語013を含む文章は、ユーザの発言の音声データで入力部001に入力し、入力部001においてテキスト化して、音声データからテキストデータに変換してもよい。
【0050】
入力部001は、入力部001に入力された、評価単語013を含む文章のテキストデータを、形態素解析することができる。形態素解析では、入力されたテキストデータを形態素(言語で意味を持つ最小単位)の列に分割し、それぞれの形態素の品詞等を判別する。この判定により、入力部001は、入力されたテキストデータから、形容詞機能を有する単語(形容詞、形容動詞)を評価単語013として抽出することができる。
【0051】
図2Aは、入力部001が行う処理手順の一例を示すフローチャートである。
図2Aの処理手順は、例えば、第1又は第3の態様のように、候補リスト012と、候補リスト012に対応する複数の候補画像011とが入力部001に入力される場合に適している。
【0052】
入力部001は、ユーザの希望を反映した単語を含む文章のテキストデータを取得する(ステップS101)。入力部001は、取得したテキストデータの文章から、形容詞機能を有する単語を、評価単語013として抽出し(ステップS103)、抽出部002に送信する(ステップS105)。
【0053】
入力部001は、候補リスト012を取得する(ステップS107)。入力部001は、取得した候補リスト012に対応する最近の候補画像011を取得する(ステップS109)。
【0054】
入力部001は、取得した候補画像011と候補リスト012とを、抽出部002に送信する(ステップS111)。
【0055】
図2Bは、入力部001が行う処理手順の他の例を示すフローチャートである。
図2Bの処理手順は、例えば、第2の態様のように、複数の候補画像011と、複数の候補画像011に対応する候補リスト012とが入力部001に入力される場合に適している。
【0056】
入力部001は、
図2AのステップS101~ステップS105と同じ手順の処理を行う。続いて、入力部001は、ドライブレコーダ(ドラレコ)が撮影した画像のフレームデータが入力される度に、入力されたフレームデータを候補画像011として取得する。また、入力部001は、候補画像011として取得する度に、GNSSセンサが検出した位置の地名をナビゲーション装置から取得する(以上、ステップS108)。
【0057】
入力部001は、取得した地名を候補リスト012に入れて候補リスト012の内容を追加更新する(ステップS110)。
【0058】
入力部001は、取得した候補画像011と候補リスト012とを、抽出部002に送信する(ステップS111)。
【0059】
図2A及び
図2Bの各処理手順において、ステップS101~ステップS105の処理と、ステップS107~ステップS111の処理とは、前後を入れ替えて行ってもよく、同時に並行して行ってもよい。
【0060】
図3A及び
図3Bは、抽出部002が行う処理手順の一例を示すフローチャートである。
図3Aに示すように、抽出部002は、複数の候補画像011、候補リスト012及び少なくとも1つの評価単語013を、入力部001からそれぞれ取得する(ステップS201~ステップS205)。抽出部002は、類似度算出カウンタのカウント値iを「1」に設定する(ステップS207)。カウント値iは、複数の候補画像011に対して、評価単語013又は後述する関連単語031との類似度を算出した回数を示す。
【0061】
抽出部002は、入力部001から取得した少なくとも1つの評価単語013を、物理指標と抽象指標とに分類する(ステップS209)。物理指標は、既存の情報源から情報収集可能な物理量によって候補画像011が数値化される指標である。抽象指標は、既存の情報源からの情報収集が可能な物理量以外の量によって候補画像011が数値化される指標である。
【0062】
例えば、候補画像011が場所の画像であり、評価単語013が温度、距離に関する単語である場合、候補画像011に写る場所は、例えば、その場所の気温、その場所までの距離によって数値化することができる。その場所の気温、距離は、例えば、インターネットの天気予報の情報サイト、ナビゲーション装置の地図情報等、既存の情報提供源から収集できる。この場合の評価単語013は、物理指標(物理的な指標)に分類することができる。
【0063】
例えば、候補画像011が場所の画像であり、評価単語013が、風景に対して感じる感覚に関する単語である場合、候補画像011に写る場所に対して感じる感覚は、既存の情報提供源から収集できる気温、距離等の情報では数値化できない。この場合の評価単語013は、抽象指標に分類することができる。
【0064】
抽出部002は、評価単語013を、ルールに基づいて物理指標と抽象指標とに分類してもよく、分類用の機械学習モデルを用いて分類してもよい。
【0065】
ルールに基づいて評価単語013を分類する場合は、例えば、物理指標と判断する根拠にするキーワードのリストを作る。入力部001から評価単語013を取得したら、その評価単語013がリストのキーワードのいずれかと一致するか否かを判別する。リストのキーワードのいずれかと一致する評価単語013は物理指標に分類し、リストのキーワードのいずれとも一致しない評価単語013は抽象指標に分類する。
【0066】
分類用の機械学習モデルには、例えば、物理指標の正解データ及び抽象指標の正解データのうち少なくとも一方を用いてトレーニングした機械学習モデルを用いることができる。
【0067】
抽出部002は、物理指標に分類した評価単語013について(ステップS211でYES)、評価単語013を指標として候補画像011を数値化するための情報提供源を取得する(ステップS213)。抽出部002は、取得した情報提供源から、物理指標に分類した評価単語013を指標として各候補画像011をそれぞれ数値化したスコアを取得する。
【0068】
取得したスコアに基づいて、抽出部002は、物理指標に分類した評価単語013を指標とした各候補画像011の類似度を、第4の類似度として取得する(以上、ステップS215)。第4の類似度は、例えば、評価単語013の内容に対応して定めた物理量と各候補画像011の獲得したスコアとの差分に基づいて定めることができる。この場合、評価単語013に対応する物理量と候補画像011のスコアとの差分が小さいほど、第4の類似度が高くなる。ステップS215の後は、後述するステップS225に処理を移行する。
【0069】
抽出部002は、抽象指標に分類した評価単語013について(ステップS211でNO)、ステップS217以降の処理を行う。ステップS217では、抽出部002は、類似度算出カウンタのカウント値iが「1」であるか否かを確認する(ステップS217)。
【0070】
ここでは、ステップS207でカウント値iを「1」に設定した後、最初にステップS217の処理を実行するので、カウント値iは「1」である(ステップS217でYES)。抽出部002は、入力部001に入力された複数の候補画像011のそれぞれと、抽象指標に分類した評価単語013との類似度を、第5の類似度として算出する(ステップS219)。第5の類似度は、抽象指標に分類した評価単語013を指標として数値化した各候補画像011のスコアとすることができる。
【0071】
上述した第4の類似度及び第5の類似度は、いずれも第1の類似度の一例に該当する。第1の類似度のうち、物理指標に分類した評価単語013に関する各候補画像011の類似度が第4の類似度であり、抽象指標に分類した評価単語013に関する各候補画像011の類似度が第5の類似度である。第1の類似度の差分は、第4の類似度の差分及び第5の類似度の差分として算出される。カウント値iが「1」のときにステップS219で行う第5の類似度の算出は、複数の候補画像011に対して行う1回目の類似度算出に当たる。ステップS219の後は、ステップS225に処理を移行する。
【0072】
抽出部002は、第1の類似度を、
図4Aに示す学習済み機械学習モデル100を用いて算出してもよい。
【0073】
図4Aは、抽出部002が抽象指標に分類される評価単語013と候補画像011との第5の類似度を機械学習モデル100を用いて算出する際の、機械学習モデル100のトレーニングを含むデータの流れの一例を示す図である。
【0074】
第5の類似度の算出に用いる機械学習モデル100について説明する。機械学習モデル100は、データ110,120を入力とする。入力するデータ110,120は、候補画像011と評価単語013とのペアである。このうち、データ110の候補画像013は、入力部001から取得した複数の候補画像011のうち1つである。機械学習モデル100は、候補画像011と評価単語013とのペアのデータ110,120の入力に対して、候補画像011と評価単語013とをベクトル化した、候補画像ベクトル130と評価単語ベクトル140とのペアを出力する。
【0075】
機械学習モデル100が出力した候補画像ベクトル130と評価単語ベクトル140とのペアは、抽出部002が行う内積の演算により内積のデータ150となる。抽出部002は、内積のデータ150に基づいて、機械学習モデル100に入力された候補画像011と評価単語013との第5の類似度を算出し、第5の類似度のデータ160を取得する。算出した第5の類似度は、抽象指標に分類された評価単語013を指標とした候補画像011のスコアとなる。
【0076】
機械学習モデル100には、トレーニングした機械学習モデル200を用いることができる。ここで、機械学習モデル200のトレーニングを行う際のデータの流れについて説明する。機械学習モデル200のトレーニングには、バッチサイズの画像(画像1~N)とテキスト(テキスト1~N)とのペア220を用いる。バッチサイズのペア220は、例えば、記憶装置210に構築したトレーニング用データのデータセットから取得することができる。
【0077】
記憶装置210は、例えば、SSD(Solid State Drive )又はHDD(Hard Disk Drive )等の記憶装置によって構成することができる。データセットのペア220は、例えば、類似度が高い画像とテキストとのペアとすることができる。データセットのペア220は、バッチサイズの画像である画像バッチ(画像1~N)230と、バッチサイズのテキストであるテキストバッチ(テキスト1~N)240とに分けて、トレーニング中の機械学習モデル200に入力される。
【0078】
画像バッチ230とテキストバッチ240との入力に対して、トレーニング中の機械学習モデル200は、画像ベクトルバッチ(画像ベクトル1~N)250とテキストベクトルバッチ(テキストベクトル1~N)260とのペアを出力する。
【0079】
図4Bは、画像ベクトルバッチ250とテキストベクトルバッチ260とを行及び列にそれぞれ配置したマトリクスの説明図である。トレーニング中の機械学習モデル200にバッチサイズで入力する画像バッチ230とテキストバッチ240とのペアは、
図4Bのマトリクスの斜線部のエレメントに対応する。
【0080】
図4Bのマトリクスの斜線部のエレメントに対応するペアの内積が、他のエレメントに対応するペアの内積よりも高くなれば、画像ベクトルバッチ250とテキストベクトルバッチ260との内積の値が増える。画像ベクトルバッチ250とテキストベクトルバッチ260との内積の値が増えれば、類似度が高い画像バッチ230とテキストバッチ240とのペアの入力に対する機械学習モデル200の出力が、最適化の方向に変化することが期待される。機械学習モデル200は、トレーニング中に、画像ベクトルバッチ250とテキストベクトルバッチ260との内積の値が増えるようにパラメータを更新する。
【0081】
具体的には、画像ベクトルバッチ250とテキストベクトルバッチ260との内積のデータ270を用いて、画像ベクトルとテキストベクトルとのクロスエントロピーを、
図4Bの行毎及び列毎にそれぞれ算出する。行毎のクロスエントロピーの平均値(平均値1)のデータ280と、列毎のクロスエントロピーの平均値(平均値2)のデータ290とから、両平均値(平均値1,2)の平均値を算出する。
【0082】
両平均値の平均値を、機械学習モデル200の損失関数とし、損失関数のデータ300を用いて、機械学習モデル200の更新パラメータを算出する。更新パラメータのデータ310によって、トレーニング中の機械学習モデル200のパラメータを更新する。
【0083】
抽出部002は、以上のトレーニング手順を行った機械学習モデル200を、第5の類似度を算出する際の機械学習モデル100として使用することができる。
【0084】
図3A及び
図3Bの一連のフローチャートに戻り、抽出部002は、
図3BのステップS225において、類似度算出カウンタのカウント値iが「5」であるか否かを確認する。ここでは、
図3AのステップS215又はステップS219で、評価単語013を指標とした各候補画像011のスコアを取得した直後なので、カウント値iは「1」である(ステップS225でNO)。
【0085】
抽出部002は、ステップS215又はステップS219で取得又は算出した各候補画像011の第1の類似度の、2つの候補画像011間での差分を、複数の候補画像011間での第1の類似度の第1の差分として算出する。抽出部002は、2つの候補画像011間でそれぞれ算出した第1の差分が、次の条件を満たすか否かを確認する(ステップS229)。
【0086】
この条件とは、算出した全ての第1の差分を平均した平均差分が第3の閾値(閾値3)を超えており、且つ、算出した全ての第1の差分のうち最小の差分(最小差分)が第4の閾値(閾値4)を超えていることである。平均差分が第3の閾値以下である場合、最小差分が第4の閾値以下である場合、平均差分が第3の閾値以下であり、且つ、最小差分が第4の閾値以下である場合は、第1の差分が条件を満たしていないことになる。
【0087】
抽出部002は、第1の差分が上記の条件を満たしていない場合(ステップS229でNO)、第1の差分が第1の閾値以下であると判断する。第1の閾値は、第1の差分に対する閾値であり、上述した第3の閾値及び第4の閾値を含む概念である。この場合、抽出部002は、各候補画像011の第1の類似度を算出するのに用いた評価単語013と、入力部001から取得した候補リスト012とを、関連単語探索部003に送信する(ステップS231)。
【0088】
抽出部002は、全ての第1の差分が上記の条件を満たす内容である場合(ステップS229でYES)、ステップS215又はステップS219で取得又は算出した第1の類似度が最も高い候補画像011を、出力部004に送信する(ステップS233)。
【0089】
ステップS231又はステップS233の処理の後、抽出部002は、一連の処理を終了する。
【0090】
図5Aは、関連単語探索部003が行う処理手順の一例を示すフローチャートである。関連単語探索部003は、抽出部002が
図3BのステップS231で送信した評価単語013と候補リスト012とを取得する(ステップS301)。評価単語013と候補リスト012とを取得した関連単語探索部003は、評価単語013に関連する1又は2以上の関連単語031と、各関連単語031の重みとを取得する(ステップS303)。
【0091】
関連単語031は、評価単語013を含む複数の文章から、その文章において、評価単語013に対して第1の関連度以上の関連度で登場する単語である。関連単語031は、評価単語013とは異なり、形容詞機能を有していない単語であってもよい。
【0092】
図5Bは、
図5AのステップS303の詳細な手順の一例を示すフローチャートである。関連単語探索部003は、単語グラフデータベースユニット320に記憶されたナレッジグラフのグラフデータベースにおいて、抽出部002から取得した評価単語013のノードを探す(ステップS311)。
【0093】
図5C及び
図5Dは、単語グラフデータベースユニット320に記憶されたナレッジグラフのグラフデータベースの一例を示す図である。ナレッジグラフのグラフデータベースは、単語に対応する複数のノードN11,N21~N23,N31,N32,N41,N42を有する。関連性を有する2つのノード間は、エッジE11~E14,E21~E28,E31によって接続される。エッジE11~E14,E21~E28,E31のそばに記載された数値は、エッジE11~E14,E21~E28,E31で接続した2つのノードN11,N21~N23,N31,N41,N42の関連度を示す数値である。
【0094】
図5Cでは、グラフデータベースの一番右の「涼しい」のノードN11が、評価単語013のノードである場合を示している。
図5Bに示すように、関連単語探索部003は、評価単語013のノードを探したグラフデータベースにおいて、候補リスト012の内容に対応する複数のノードをそれぞれ探す(ステップS313)。
図5Cでは、グラフデータベースの一番左の「PlaceA」、「PlaceB」2つのノードN41,N42が、候補画像011に対応する、候補リスト012のユーザが行ってみたい行き先のノードである場合を示している。
【0095】
図5Bに示すように、関連単語探索部003は、グラフデータベースにおいて、ステップS311で探した評価単語013のノードとエッジで直接接続されているノードを走査する(ステップS315)。
図5Cのグラフデータベースの例では、「涼しい」のノードN11と直接接続されている「森林」、「海」、「水」及び「紅葉」の4つの単語のノードN21~N24を、関連単語探索部003が走査する。
【0096】
図5Bに示すように、関連単語探索部003は、ステップS315で走査したノードのうち、候補リスト012にある
図5Cの「PlaceA」、「PlaceB」のどちらにもエッジで接続されていない「紅葉」のノードN24をフィルタリングする(ステップS315)。このフィルタリングにより、「紅葉」は、評価単語013である「涼しい」の関連単語031の対象から除外される。この除外により、評価単語013のノードと候補画像011に対応するノードとの双方に直接接続されたノードの単語が、評価単語013である「涼しい」の関連単語031の対象として残る。
【0097】
関連単語探索部003は、残る「森林」、「海」及び「水」の各ノードN21~N23のうち、基準に合致しないノードをフィルタリングする(ステップS319)。本実施形態では、「涼しい」のノードN21とそれぞれ接続するエッジの関連度を示す数値(重み値)が第7の閾値(閾値7)以下であるノードをフィルタリングする。第7の閾値は、例えば、0.005とすることができる。この場合、関連単語探索部003は、関連度を示す数値(重み値)が第7の閾値以下となる「海」のノードN22をフィルタリングする。このフィルタリングにより、「海」は、「涼しい」の関連単語031の対象から除外される。
【0098】
ステップS317及びステップS319のフィルタリング後に残ったノードの単語は、評価単語013である「涼しい」の関連単語031となる。
【0099】
関連単語探索部003は、ステップS317及びステップS319のフィルタリング後の残りノード数が0(ゼロ)であるか否かを確認する(ステップS321)。フィルタリング後の残りノード数が0である場合は(ステップS321でYES)、評価単語013である「涼しい」の関連単語031が取得されなかったことになる。この場合は、
図5Aのフローチャートに戻り、ステップS305の処理に進む。
【0100】
フィルタリング後の残りノード数が0でない場合は(ステップS321でNO)、評価単語013である「涼しい」の関連単語031が取得されたことになる。この場合、関連単語探索部003は、フィルタリング後に残った各ノードと「涼しい」のノードN21とをそれぞれ接続するエッジの関連度を示す数値(重み値)を正規化する(ステップS323)。
【0101】
この正規化では、関連単語探索部003は、各エッジの関連度を示す数値(重み値)の和が「1」となるように、各エッジの重み値を、互いの比率を変えずにそれぞれ変更する。
【0102】
図5Cのグラフデータベースの例では、フィルタリング後に残った「森林」及び「水」の単語のノードN21,N23について、各ノードのエッジの重み値0.01及び0.03を、両者の総和である0.04に対して占める割合に正規化する。正規化後のエッジの重み値である、重み付け係数による重み付け後の重み値は、「森林」のノードN21が0.25、「水」のノードN23が0.75となる。
【0103】
ステップS323の処理の後、
図5Aのフローチャートに戻り、ステップS305の処理に進む。
【0104】
ステップS305では、関連単語探索部003は、ステップS303の処理によって、評価単語013の関連単語031を取得しなかった(関連単語031なし)か否かを確認する。関連単語031なしの場合は(ステップS305でYES)、関連単語探索部003は、関連単語031なしを示す信号を抽出部002に送信した後(ステップS307)、一連の処理を終了する。
【0105】
関連単語031を取得した場合は(ステップS305でNO)、関連単語探索部003は、取得した1又は2以上の関連単語031と、各関連単語031の正規化後のエッジの重み値とを示す信号を抽出部002に送信する(ステップS309)。抽出部002に送信する関連単語031は、
図5Cのグラフデータベースの例では、
図5BのステップS319におけるフィルタリングの後に残った「森林」及び「水」の単語となる。ステップS309の処理の後、一連の処理を終了する。
【0106】
抽出部002は、関連単語探索部003が
図5AのステップS309で送信した信号を受信すると、
図3AのステップS237で、受信した信号が示す1又は2以上の関連単語031と各関連単語031の正規化後の重み値とを信号から取得する。抽出部002は、類似度算出カウンタのカウント値iを「1」増加させ(ステップS239)、ステップS217に処理を移行する。ここでは、これまでの説明において「1」であったカウント値iが「2」に増加するので、ステップS217のカウント値iが1であるか否かの確認結果はNOとなり、ステップS221に処理を移行する。
【0107】
ステップS221では、抽出部002は、入力部001に入力された複数の候補画像011のそれぞれと、関連単語探索部003で取得した各関連単語031との類似度を、第2の類似度として算出する。関連単語031に対応する評価単語013は、ステップS211において抽象指標に分類した評価単語013である。第2の類似度は、例えば、第1の類似度と同じく、
図4Aの機械学習モデル100を用いて算出してもよい。
【0108】
機械学習モデル100を用いて第2の類似度を算出する場合、抽出部002は、機械学習モデル100に、入力部001から取得した複数の候補画像011のうち1つと関連単語031とのペアを入力する。機械学習モデル100は、機械学習モデル100に入力した候補画像011と関連単語031とをベクトル化した、候補画像ベクトル130と関連単語ベクトル140とのペアを出力する。
【0109】
抽出部002は、機械学習モデル100が出力した候補画像ベクトル130と関連単語ベクトル140との内積算出150を行う。抽出部002は、算出した内積に基づいて、機械学習モデル100に入力された候補画像011と関連単語031との類似度算出160を行う。算出した類似度は、関連単語031を指標とした候補画像011のスコアとなる。このスコアは、候補画像011と関連単語031との第2の類似度となる。
【0110】
続くステップS223では、抽出部002は、ステップS219で取得した候補画像011と抽象指標に分類した評価単語013との第1の類似度を、ステップS221で算出した第2の類似度で補正する。この補正では、抽出部002は、各関連単語031について、関連単語031の正規化後のエッジの重み値を第2の類似度に乗じた第1の値を算出する。第1の値は、第2の類似度を関連単語031毎にそれぞれ重み付けした値となる。
【0111】
抽出部002は、第1の値を第1の類似度に乗じた第2の値を算出する。抽出部002は、各関連単語031の第2の値を第1の類似度に全て加算して、第2の類似度による補正後の第1の類似度を算出する。
【0112】
カウント値iが「2」のときにステップS221で行う第2の類似度の算出は、複数の候補画像011に対して行う2回目の類似度算出に当たる。ステップS223の後は、ステップS225に処理を移行する。
【0113】
抽出部002は、
図3Bに示すステップS225において、類似度算出カウンタのカウント値iが「5」であるか否かを確認する。ここでは、カウント値iは「2」である(ステップS225でNO)。
【0114】
抽出部002は、ステップS215又はステップS219で取得又は算出した各候補画像011の第1の類似度又は補正後の第1の類似度の、2つの候補画像011間での差分を、複数の候補画像011間での補正後の第1の類似度の第2の差分として算出する。抽出部002は、2つの候補画像011間でそれぞれ算出した第2の差分が、次の条件を満たすか否かを確認する(ステップS229)。
【0115】
この条件とは、算出した全ての第2の差分を平均した平均差分が第5の閾値(閾値5)を超えており、且つ、算出した全ての第2の差分のうち最小の差分(最小差分)が第6の閾値(閾値6)を超えていることである。平均差分が第5の閾値以下である場合、最小差分が第6の閾値以下である場合、平均差分が第5の閾値以下であり、且つ、最小差分が第6の閾値以下である場合は、第2の差分が条件を満たしていないことになる。
【0116】
抽出部002は、第2の差分が条件を満たしていない場合(ステップS229でNO)、第2の差分が第2の閾値以下であると判断する。第2の閾値は、第2の差分に対する閾値であり、上述した第5の閾値及び第6の閾値を含む。この場合、抽出部002は、各候補画像011の補正後の第1の類似度を算出するのに用いた関連単語031と、入力部001から取得した候補リスト012とを、関連単語探索部003に送信する(ステップS231)。
【0117】
関連単語探索部003に送信する関連単語031は、
図5Cのグラフデータベースにおいて、評価単語013のノードと直接エッジで接続されている、1層目のノードの単語である。以後、1層目のノードの関連単語031を1層目の関連単語031と称する。
【0118】
抽出部002は、全ての第2の差分が上記の条件を満たす内容である場合(ステップS229でYES)、候補画像011を出力部004に送信する(ステップS233)。出力部004に送信する候補画像011は、ステップS215又はステップS219で取得又は算出した第1の類似度又は補正後の第1の類似度が最も高い候補画像011である。
【0119】
ステップS231又はステップS233の処理の後、抽出部002は、一連の処理を終了する。
【0120】
関連単語探索部003は、
図5Aに示すように、抽出部002がステップS231で送信した1層目の関連単語031と候補リスト012とを取得する(ステップS301)。関連単語探索部003は、取得した1層目の関連単語031の関連単語031を取得する。以後、1層目の関連単語031の関連単語031を、1層目の関連単語031と区別するために、2層目の関連単語031と称する。2層目の関連単語031はサブ関連単語に該当する。関連単語探索部003は、2層目の各関連単語031の重みをさらに取得する(以上、ステップS303)。
【0121】
2層目の関連単語031は、1層目の関連単語031を含む複数の文章から、その文章において、1層目の関連単語031に対して第2の関連度以上の関連度で登場する単語である。2層目の関連単語031は、1層目の関連単語031と同じく、形容詞機能を有していない単語であってもよい。
【0122】
1層目の関連単語031に対する2層目の関連単語031の関連度は、1層目の関連単語031と2層目の関連単語031との意味的距離又は地理的距離によって評価することができる。1層目の関連単語031に対する2層目の関連単語031の関連度は、例えば、1層目の関連単語031を含む文章に2層目の関連単語031が登場する頻度によって評価してもよい。
【0123】
1層目の関連単語031と2層目の関連単語031との意味的距離とは、例えば、1層目の関連単語031が表す意味と2層目の関連単語031が表す意味との近さを示す距離とすることができる。意味の近さを意味的距離とする場合は、1層目の関連単語031が表す意味と2層目の関連単語031が表す意味とが近いほど、1層目の関連単語031と2層目の関連単語031との意味的距離は短くなる。1層目の関連単語031と2層目の関連単語031との意味的距離が短いほど、1層目の関連単語031に対する2層目の関連単語031の関連度は高くなる。1層目の関連単語031と2層目の関連単語031との意味的距離は、例えば、1層目の関連単語031及び2層目の関連単語031をそれぞれベクトル化した特徴量ベクトル同士の距離の長さによって評価することができる。
【0124】
1層目の関連単語031と2層目の関連単語031との地理的距離とは、例えば、1層目の関連単語031と2層目の関連単語031とを含む文章内での両者の単語間距離とすることができる。単語間距離を地理的距離とする場合は、1つの文章内で1層目の関連単語031と2層目の関連単語031との間に配置された単語が少ないほど、1層目の関連単語031と2層目の関連単語031との地理的距離は短くなる。1層目の関連単語031と2層目の関連単語031との地理的距離が短いほど、1層目の関連単語031に対する2層目の関連単語031の関連度は高くなる。1層目の関連単語031と2層目の関連単語031との地理的距離は、例えば、1つの文章において1層目の関連単語031と2層目の関連単語031との間に配置された単語の数によって評価することができる。
【0125】
1層目の関連単語031を含む文章に2層目の関連単語031が登場する頻度は、例えば、1層目の関連単語031を含む全ての文章に対する、1層目の関連単語031と2層目の関連単語031とを両方含む文章が占める割合で表すことができる。この割合が高いほど、1層目の関連単語031を含む文章に2層目の関連単語031が登場する頻度は高くなり、1層目の関連単語031に対する2層目の関連単語031の関連度が高くなる。
【0126】
1層目の関連単語031に対する2層目の関連単語031の関連度は、例えば、マハラノビス距離等の、特定の分布における1層目の関連単語031と2層目の関連単語031との距離によって評価してもよい。
【0127】
関連単語探索部003は、ステップS303において、
図5BのステップS311~ステップS319の各処理を、評価単語013を1層目の関連単語031に入れ替えて行う。ステップS317のフィルタリングによるノードの除外により、評価単語013のノードと候補画像011に対応するノードとの双方に1層目の関連単語031を介して接続されたノードの単語が、2層目の関連単語031の対象として残る。ステップS317及びステップS319のフィルタリング後に残ったノードの単語は、1層目の関連単語031に対する2層目の関連単語031となる。
【0128】
関連単語探索部003は、ステップS319の処理後に、ステップS317及びステップS319のフィルタリング後の残りノード数が0(ゼロ)であるか否かを確認する(ステップS321)。フィルタリング後の残りノード数が0である場合は(ステップS321でYES)、2層目の関連単語031が取得されなかったことになる。この場合、
図5Aのフローチャートに戻り、ステップS305の処理に進む。
【0129】
フィルタリング後の残りノード数が0でない場合は(ステップS321でNO)、2層目の関連単語031が取得されたことになる。この場合、関連単語探索部003は、フィルタリング後に残った各ノードと1層目の関連単語031のノードとをそれぞれ接続するエッジの関連度を示す数値(重み値)を正規化する(ステップS323)。ステップS323の処理の後、
図5Aのフローチャートに戻り、ステップS305の処理に進む。
【0130】
ステップS305では、関連単語探索部003は、ステップS303の処理によって、2層目の関連単語031を取得しなかった(関連単語031なし)か否かを確認する。関連単語031なしの場合は(ステップS305でYES)、関連単語探索部003は、関連単語031なしを示す信号を抽出部002に送信した後(ステップS307)、一連の処理を終了する。
【0131】
2層目の関連単語031を取得した場合は(ステップS305でNO)、関連単語探索部003は、取得した1又は2以上の関連単語031と、各関連単語031の正規化後のエッジの重み値とを示す信号を抽出部002に送信する(ステップS309)。抽出部002に送信する関連単語031は、グラフデータベースにおいて、1層目の関連単語031と候補画像011に対応するノードとにエッジで接続されているノードの単語となる。
【0132】
図5Dのグラフデータベースの例では、1層目の関連単語031である「森林」及び「水」のノードN21,N23と候補画像011に対応する「PlaceA」、「PlaceB」のノードとにエッジで接続されているノードが、2層目の関連単語031となる。2層目の関連単語031となるのは、「渓谷」及び「ダム」の各ノードN31,N32である。ステップS309の処理の後、一連の処理を終了する。
【0133】
抽出部002は、
図3AのステップS237で、関連単語探索部003から受信した信号から、1又は2以上の2層目の関連単語031と2層目の各関連単語031の正規化後の重み値とを取得する。抽出部002は、類似度算出カウンタのカウント値iを「1」増加させ(ステップS239)、ステップS217に処理を移行する。ここでは、これまでの説明において「1」であったカウント値iが「3」に増加するので、ステップS217のカウント値iが1であるか否かの確認結果はNOとなり、ステップS221に処理を移行する。
【0134】
ステップS221では、抽出部002は、入力部001に入力された複数の候補画像011のそれぞれと、関連単語探索部003で取得した2層目の各関連単語031との類似度を、第3の類似度として算出する。関連単語031に対応する評価単語013は、ステップS211において抽象指標に分類した評価単語013である。第3の類似度は、例えば、第1の類似度及び第2の類似度と同じく、
図4Aの機械学習モデル100を用いて算出してもよい。
【0135】
機械学習モデル100を用いた第3の類似度の算出は、機械学習モデル100への入力を、入力部001から取得した複数の候補画像011のうち1つと2層目の関連単語031とのペアとすることで、第2の類似度の算出と同様に行うことができる。抽出部002は、機械学習モデル100が出力した候補画像ベクトル130と2層目の関連単語ベクトル140との内積算出150に基づいた類似度算出160を行うことで、第3の類似度となるスコアを算出することができる。
【0136】
続くステップS223では、抽出部002は、カウント値iが「2」であった前回のステップS221で算出した候補画像011と2層目の関連単語031との第2の類似度を、今回のステップS221で算出した第3の類似度で補正する。この補正では、抽出部002は、2層目の各関連単語031について、2層目の関連単語031の正規化後のエッジの重み値を第3の類似度に乗じた第3の値を算出する。第3の値は、第3の類似度を2層目の関連単語031毎にそれぞれ重み付けした値となる。
【0137】
抽出部002は、第3の値を第2の類似度に乗じた第4の値を算出する。抽出部002は、2層目の各関連単語031の第4の値を第2の類似度に全て加算して、第3の類似度による補正後の第2の類似度を算出する。
【0138】
ステップS223では、抽出部002は、ステップS219で取得した候補画像011と抽象指標に分類した評価単語013との第1の類似度を、算出した補正後の第2の類似度で補正する。この補正では、抽出部002は、1層目の各関連単語031について、関連単語031の正規化後のエッジの重み値を補正後の第2の類似度に乗じた第5の値を算出し、第5の値を第1の類似度に乗じた第6の値を算出する。抽出部002は、各関連単語031の第6の値を第1の類似度に全て加算して、補正後の第2の類似度による補正後の第1の類似度を算出する。
【0139】
カウント値iが「3」のときにステップS221で行う第2の類似度の算出は、複数の候補画像011に対して行う3回目の類似度算出に当たる。ステップS223の後は、ステップS225に処理を移行する。
【0140】
抽出部002は、
図3Bに示すステップS225において、類似度算出カウンタのカウント値iが「5」であるか否かを確認する。ここでは、カウント値iは「3」であるので(ステップS225でNO)、ステップS229以降の処理に移行する。
【0141】
以後、抽出部002が、ステップS231で関連単語031と候補リスト012とを送信する度に、関連単語探索部003は、受信した関連単語031の次の層の関連単語031と重み値とを、
図5A及び
図5Bの手順で取得する。関連単語探索部003が取得した次の層の関連単語031を、
図3AのステップS237で取得した抽出部002は、類似度算出カウンタのカウント値iを「1」増加させて(ステップS239)、ステップS219以降の処理を行う。
【0142】
抽出部002は、複数の候補画像011に対して行う5回目の類似度算出をステップS221で行うと、
図3AのステップS239で、類似度算出カウンタのカウント値iを「5」に増加させる。
図3BのステップS225で、カウント値iが「5」であると確認する(YES)ことを確認した抽出部002は、最小差分の最大値の結果を取得する(ステップS227)。抽出部002は、ステップS229の確認で用いた第2の差分が最大値となった2つの候補画像011のうち、補正後の第1の類似度が高い方の候補画像011を、最小差分の最大値の結果として取得する。
【0143】
抽出部002は、ステップS227で取得した候補画像011を、第1の類似度が最も高い候補画像011として、出力部004に送信する(ステップS233)。
【0144】
抽出部002は、関連単語探索部003が
図5AのステップS307で送信した信号を
図3AのステップS235で受信すると、
図3BのステップS227で、最小差分の最大値の結果を取得する。
【0145】
抽出部002は、類似度算出カウンタのカウント値iが「1」である場合、ステップS229の確認で用いた第1の差分が最大値となった2つの候補画像011のうち、第1の類似度が高い方の候補画像011を、最小差分の最大値の結果として取得する。
【0146】
抽出部002は、カウント値iが「2」~「4」である場合、ステップS229の確認で用いた第2の差分が最大値となった2つの候補画像011のうち、補正後の第1の類似度が高い方の候補画像011を、最小差分の最大値の結果として取得する。
【0147】
抽出部002は、ステップS227で取得した候補画像011を、第1の類似度が最も高い候補画像011として、出力部004に送信する(ステップS233)。ステップS233の処理の後、抽出部002は、一連の処理を終了する。
【0148】
出力部004は、
図3BのステップS233で抽出部002が送信した第1の類似度が最も高い候補画像011を出力する。
【0149】
例えば、上述した第1の態様の場合は、出力部004は、第1の類似度が最も高い候補画像011を、ユーザが視認する表示デバイスに表示することで、候補画像011を出力することができる。ユーザが視認する表示デバイスは、例えば、車両に搭載された機器のディスプレイを用いることができる。車両に搭載された機器は、例えば、ナビゲーション装置、ディスプレイオーディオ装置、ヘッドアップディスプレイ等とすることができる。
【0150】
例えば、上述した第2の態様の場合は、出力部004は、記録装置に候補画像011のデータを記憶することで、候補画像011を出力することができる。記録装置は、例えば、ドライブレコーダのメモリの一領域を利用したものでもよく、車両の搭載機器に接続された可搬型のメモリデバイスでもよい。
【0151】
例えば、上述した第3の態様の場合は、出力部004は、ユーザが視認可能な画面に、
図6に示すポジショニングマップを表示することで、候補画像011を出力することができる。このポジショニングマップは、例えば、ユーザの要望に対応する評価単語013に対応する軸を含む2つの軸で形成された象限上に、第1の類似度が最も高い候補画像011を含む複数の候補画像011をマッピングすることで構成することができる。
【0152】
以上に説明した本実施形態の本実施形態のデータ処理装置1では、評価単語013との類似度が最も高い候補画像011を出力する際に、候補画像011間の類似度の差が少なくても、出力する候補画像011を決めやすくすることができる。
【0153】
評価単語013と候補画像011との類似度では、類似度の差が小さい場合に、評価単語013に関連する関連単語031と候補画像011との類似度を加味すると、評価単語013と候補画像011との類似度に差が付きやすくなる。類似度に差が付きやすくなることで、出力する候補画像011を決めやすくすることができる。
【0154】
評価単語013に関連する1層目の関連単語031と候補画像011との類似度を加味しても、評価単語013と候補画像011との類似度の差が小さい場合に、2層目以降の関連単語031と候補画像011との類似度を加味する。2層目以降の関連単語031との類似度を加味することで、評価単語013と候補画像011との類似度に差が付きやすくなる。類似度に差が付きやすくなることで、出力する候補画像011を決めやすくすることができる。
【0155】
関連単語031は、ナレッジグラフのグラフデータベースを用いて抽出してもよく、その他の公知の方法によって抽出してもよい。
【0156】
グラフデータベースのノード間のエッジの関連度を示す数値(重み値)で、関連単語031と候補画像011との類似度を重み付けすることで、関連単語031との類似度が評価単語013との類似度に過剰に加味されるのを抑制できる。
【0157】
グラフデータベースのノード間のエッジの関連度を示す数値(重み値)で、上層の関連単語031と候補画像011との類似度を重み付けすることで、下層の関連単語031との類似度が上層の関連単語031との類似度に過剰に加味されるのを抑制できる。ここで、上層、下層とは、1層目と2層目、2層目と3層目、3層目と4層目の関係を示す。
【0158】
候補画像011間の類似度の差分が閾値以下であることを、各差分の平均と最小値とを考慮して決定することで、候補画像011間の類似度の差分の大小をより詳細に評価することができる。
【0159】
関連単語031との類似度を加味する評価単語013を、抽象指標の評価単語013に限定することで、既存の情報源から情報収集可能な物理量で数値化できず評価単語013との類似度を客観的に決めにくい候補画像011の類似度の大小を、付けやすくできる。
【0160】
評価単語013又は関連単語031と候補画像011との類似度は、機械学習モデル100(機械学習モデル)以外の公知の方法によって算出してもよい。
【0161】
上述の実施形態は本発明の一例である。このため、本発明は、上述の実施形態に限定されることはなく、この実施形態以外の形態であっても、本発明に係る技術的思想を逸脱しない範囲であれば、設計などに応じて種々の変更が可能であることは勿論である。
【符号の説明】
【0162】
1 データ処理装置
001 入力部
002 抽出部
003 関連単語探索部
004 出力部
011 候補画像(画像)
012 候補リスト
013 評価単語
031 関連単語
100 機械学習モデル
E11~E14,E21~E28,E31 エッジ
N11,N21~N23,N31,N32,N41,N42 ノード