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

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

▶ 富士通株式会社の特許一覧

特開2023-128160エンティティリンキングの制御プログラム、制御方法、及び制御装置
<>
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図1
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図2
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図3
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図4
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図5
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図6
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図7
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図8
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図9
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図10
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図11
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図12
  • 特開-エンティティリンキングの制御プログラム、制御方法、及び制御装置 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023128160
(43)【公開日】2023-09-14
(54)【発明の名称】エンティティリンキングの制御プログラム、制御方法、及び制御装置
(51)【国際特許分類】
   G06F 40/279 20200101AFI20230907BHJP
   G06F 16/54 20190101ALI20230907BHJP
【FI】
G06F40/279
G06F16/54
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022032320
(22)【出願日】2022-03-03
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100087480
【弁理士】
【氏名又は名称】片山 修平
(72)【発明者】
【氏名】馬 春鵬
(72)【発明者】
【氏名】岩倉 友哉
(72)【発明者】
【氏名】金澤 裕治
(72)【発明者】
【氏名】高橋 哲朗
【テーマコード(参考)】
5B091
5B175
【Fターム(参考)】
5B091AA15
5B091AB06
5B091CA01
5B091CC04
5B175DA02
5B175FA03
(57)【要約】
【課題】エンティティリンキングの精度を向上するエンティティリンキングの制御プログラム、制御方法、及び制御装置を提供する。
【解決手段】エンティティリンキングの制御プログラムは、テキスト中の単語と、ナレッジグラフのエンティティとを対応付けるエンティティリンキングの制御プログラムであって、前記単語に基づいて、前記エンティティの複数の候補を抽出し、抽出した前記候補に関連する関連画像を収集し、収集した前記関連画像の前記候補ごとの画像クラスターを生成し、生成した前記画像クラスター間の類似度を算出し、より高い類似度を示す前記画像クラスターの前記候補を前記エンティティとする、処理をコンピュータに実行させる。
【選択図】図12
【特許請求の範囲】
【請求項1】
テキスト中の単語と、ナレッジグラフのエンティティとを対応付けるエンティティリンキングの制御プログラムであって、
前記単語に基づいて、前記エンティティの複数の候補を抽出し、
抽出した前記候補に関連する関連画像を収集し、
収集した前記関連画像の前記候補ごとの画像クラスターを生成し、
生成した前記画像クラスター間の類似度を算出し、
より高い類似度を示す前記画像クラスターの前記候補を前記エンティティとする、
処理をコンピュータに実行させるための制御プログラム。
【請求項2】
前記収集する処理は、収集した前記関連画像に関連する関連語に基づいて、前記関連画像に関連する画像を再帰的に収集する、
ことを特徴とする請求項1に記載の制御プログラム。
【請求項3】
前記収集する処理は、前記テキストに対応付けられた所定画像から独立した前記関連画像をデータベースから収集する、
ことを特徴とする請求項1又は2に記載の制御プログラム。
【請求項4】
抽出した前記候補に点数を付与する処理と、
算出した前記類似度の中からどの前記類似度よりも大きな所定類似度を特定する処理と、を含み、
前記エンティティとする処理は、前記点数と前記所定類似度に基づいて、より高い類似度を示す前記画像クラスターの前記候補を前記エンティティとする、
ことを特徴とする請求項1から3のいずれか1項に記載の制御プログラム。
【請求項5】
前記点数と前記所定類似度のそれぞれに重みを付与する処理を含み、
前記エンティティとする処理は、前記重みを付与した前記点数と前記重みを付与した前記所定類似度の合算値に基づいて、より高い類似度を示す前記画像クラスターの前記候補を前記エンティティとする、
ことを特徴とする請求項4に記載の制御プログラム。
【請求項6】
テキスト中の単語と、ナレッジグラフのエンティティとを対応付けるエンティティリンキングの制御方法であって、
前記単語に基づいて、前記エンティティの複数の候補を抽出し、
抽出した前記候補に関連する関連画像を収集し、
収集した前記関連画像の前記候補ごとの画像クラスターを生成し、
生成した前記画像クラスター間の類似度を算出し、
より高い類似度を示す前記画像クラスターの前記候補を前記エンティティとする、
処理をコンピュータが実行する制御方法。
【請求項7】
テキスト中の単語と、ナレッジグラフのエンティティとを対応付けるエンティティリンキングの制御装置であって、
前記単語に基づいて、前記エンティティの複数の候補を抽出する抽出部と、
抽出した前記候補に関連する関連画像を収集する収集部と、
収集した前記関連画像の前記候補ごとの画像クラスターを生成する生成部と、
生成した前記画像クラスター間の類似度を算出する算出部と、
より高い類似度を示す前記画像クラスターの前記候補を前記エンティティとする決定部と、
を有する制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本件は、エンティティリンキングの制御プログラム、制御方法、及び制御装置に関する。
【背景技術】
【0002】
テキストの中の単語と、知識ベースであるナレッジグラフの中のエンティティ(実体)とを対応付けるエンティティリンキングと呼ばれる技術が知られている。また、単語だけでなく、インスタグラム(登録商標)やツイッター(登録商標)、映画の口コミサイトなどに含まれる画像情報も併せてエンティティと対応付けるマルチモーダルエンティティリンキングも知られている(例えば非特許文献1乃至3参照)。
【0003】
なお、各カメラで撮像された人物が同一人物であるか否かの判定において、人物画像間の対応付けの誤りを効率的に修正する技術は知られている(例えば特許文献1参照)。また、歩行者や自転車、車両、配送ロボットといった、交通における対象物を表す交通エンティティと自動運転車との相互作用を予測するための機械学習モデルを視覚化する技術も知られている(例えば特許文献2参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2017-021753号公報
【特許文献2】米国特許出願公開第2021/0110203号明細書
【非特許文献】
【0005】
【非特許文献1】Seungwhan Moon、外2名、「Zeroshot Multimodal Named Entity Disambiguation for Noisy Social Media Posts」、(豪)、Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Long Papers) (Long Papers))、2018年、p.2000-2008
【非特許文献2】Omar Adjali、外4名、「Building a Multimodal Entity Linking Dataset From Tweets」、(仏)、Proceedings of the 12th Conference on Language Resources and Evaluation (LREC 2020)、2020年、p.4285-4292
【非特許文献3】Jingru Gan、外5名、「Multimodal Entity Linking: A New Dataset and A Baseline」、(中)、MM'21: Proceedings of the 29th ACM International Conference on Multimedia、2021年、p.993-1001
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、上述したエンティティリンキングの精度は必ずしも高くはなく、エンティティリンキングのモデルによっては単語に対して誤ったエンティティが対応付けられることがある。このため、エンティティリンキングの精度には改善の余地がある。
【0007】
エンティティリンキングの精度を改善する場合、単語に対して抽象的ではあるが検索ヒット数が比較的多いテキスト情報と、単語に対して検索ヒット数が比較的少ないもののテキスト情報と比べて具体的である画像情報を併用することが想定される。例えば、上述したマルチモーダルエンティティリンキングはインスタグラム(登録商標)や映画の口コミサイトなど特定の分野に限定された画像情報がニューラルネットワークに入力されている。しかしながら、特定の分野に特化したニューラルネットワークが設計されているため、エンティティリンキングに汎用性がないという別の問題がある。
【0008】
そこで、1つの側面では、エンティティリンキングの精度を向上するエンティティリンキングの制御プログラム、制御方法、及び制御装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
1つの実施態様では、エンティティリンキングの制御プログラムは、テキスト中の単語と、ナレッジグラフのエンティティとを対応付けるエンティティリンキングの制御プログラムであって、前記単語に基づいて、前記エンティティの複数の候補を抽出し、抽出した前記候補に関連する関連画像を収集し、収集した前記関連画像の前記候補ごとの画像クラスターを生成し、生成した前記画像クラスター間の類似度を算出し、より高い類似度を示す前記画像クラスターの前記候補を前記エンティティとする、処理をコンピュータに実行させる。
【発明の効果】
【0010】
エンティティリンキングの精度を向上することができる。
【図面の簡単な説明】
【0011】
図1図1はエンティティリンキングの一例を説明する図である。
図2図2はEL制御装置のハードウェア構成の一例を示すブロック図である。
図3図3はEL制御装置の機能構成の一例を示すブロック図である。
図4図4は画像DBの一例である。
図5図5はEL制御装置が実行する処理の一例を示すフローチャートである。
図6図6(a)は入力テキストの一例である。図6(b)は入力テキストのELモデルへの入力とELモデルからの出力例を説明する図である。図6(c)は入力テキスト中の単語とエンティティ候補の対応付けの一例を説明する図である。
図7図7は関連画像の収集及び副関連画像の再帰的収集と画像クラスターの生成の一例を説明する図である。
図8図8(a)及び(b)はエンティティ候補に関連する画像クラスターの一例を説明する図である。
図9図9(a)及び(b)はエンティティ候補に関連する画像クラスターの他の一例を説明する図である。
図10図10(a)は類似度を算出する画像クラスターの一例である。図10(b)は画像間スコアの一例を説明する図である。
図11図11(a)は画像クラスター間の類似度の一例を説明する図である。図11(b)は最大類似度の特定例を説明する図である。
図12図12(a)は画像クラスター間の類似度とエンティティ候補の関係の一例を説明する図である。図12(b)は最終スコアとエンティティの決定例を説明する図である。
図13図13は入力テキスト中の単語とエンティティの最終的な対応付けの一例を説明する図である。
【発明を実施するための形態】
【0012】
以下、本件を実施するための形態について図面を参照して説明する。
【0013】
まず、図1を参照して、知識ベースを利用したエンティティリンキングの概念を説明する。図1では、入力テキストと知識ベースが示されている。知識ベースはナレッジグラフで示されている。ナレッジグラフは各エンティティをノードとし、エンティティ間のスコアをエッジの重みとして持つグラフのことをいう。つまり、エンティティリンキングでは、入力テキストの中のメンションと呼ばれる単語と、知識ベースであるナレッジグラフのエンティティ(ノード)とを、エッジの重みを利用して対応(又は結び)付ける。
【0014】
ここで、知識ベースでは、1つの情報は、主語、述語、目的語の3つの組で表現される。例えば、符号G0(ゼロ)で示すように、主語として「武蔵中原」、述語として「locatedIn」、目的語として「川崎市」が1つの情報として表現される。そして、それぞれの情報は、グラフとして可視化される。なお、主語と目的語はノードで表わされ、述語はエッジで表わされる。
【0015】
そして、エンティティリンキングでは、入力テキストが、例えば「友達と東横線で小杉に行って、グランツリー(登録商標)で買い物した」の場合には、入力テキストの中の「東横線」と、知識ベースの「東急東横線」のノードとがスコアを利用して対応付けられる。入力テキストの中の「小杉」と、知識ベースの「武蔵小杉」のノードとがスコアを利用して対応付けられる。入力文の中の「グランツリー」と、知識ベースの「グランツリー」のノードとがスコアを利用して対応付けられる。
【0016】
次に、図2を参照して、エンティティリンキングの制御方法を実行するEL(Entity Linking)制御装置100のハードウェア構成について説明する。
【0017】
EL制御装置100は、プロセッサとしてのCPU(Central Processing Unit)100Aと、メモリとしてのRAM(Random Access Memory)100B及びROM(Read Only Memory)100Cを含んでいる。EL制御装置100は、ネットワークI/F(インタフェース)100D及びHDD(Hard Disk Drive)100Eを含んでいる。HDD(Hard Disk Drive)100Eに代えて、SSD(Solid State Drive)を採用してもよい。
【0018】
EL制御装置100は、必要に応じて、入力I/F100F、出力I/F100G、入出力I/F100H、ドライブ装置100Iの少なくとも1つを含んでいてもよい。CPU100Aからドライブ装置100Iまでは、内部バス100Jによって互いに接続されている。すなわち、EL制御装置100はコンピュータによって実現することができる。なお、コンピュータは、PC(Personal Computer)やスマートフォン、タブレット端末などであればよい。
【0019】
入力I/F100Fには入力装置710が接続される。入力装置710としては例えばキーボードやマウス、タッチパネルなどがある。出力I/F100Gには表示装置720が接続される。表示装置720としては例えば液晶ディスプレイなどがある。入出力I/F100Hには半導体メモリ730が接続される。半導体メモリ730としては、例えばUSB(Universal Serial Bus)メモリやフラッシュメモリなどがある。入出力I/F100Hは半導体メモリ730に記憶されたエンティティリンキングの制御プログラムを読み取る。入力I/F100F及び入出力I/F100Hは例えばUSBポートを備えている。出力I/F100Gは例えばディスプレイポートを備えている。
【0020】
ドライブ装置100Iには可搬型記録媒体740が挿入される。可搬型記録媒体740としては、例えばCD(Compact Disc)-ROM、DVD(Digital Versatile Disc)といったリムーバブルディスクがある。ドライブ装置100Iは可搬型記録媒体740に記録されたエンティティリンキングの制御プログラムを読み込む。ネットワークI/F100Dは例えばLAN(Local Area Network)ポートや通信回路などを備えている。通信回路は有線通信回路と無線通信回路のいずれか一方又は両方を含んでいる。ネットワークI/F100Dは通信ネットワークNWと接続されている。通信ネットワークNWはLANとインターネットのいずれか一方又は両方を含んでいる。
【0021】
RAM100BにはROM100C、HDD100E、半導体メモリ730の少なくとも1つに記憶されたエンティティリンキングの制御プログラムがCPU100Aによって一時的に格納される。RAM100Bには可搬型記録媒体740に記録されたエンティティリンキングの制御プログラムがCPU100Aによって一時的に格納される。格納されたエンティティリンキングの制御プログラムをCPU100Aが実行することにより、CPU100Aは後述する各種の機能を実現し、また、後述する各種の処理を実行する。なお、エンティティリンキングの制御プログラムは後述するフローチャートに応じたものとすればよい。
【0022】
図3及び図4を参照して、EL制御装置100の機能構成について説明する。なお、図3ではEL制御装置100の機能の要部が示されている。また、EL制御装置100の機能の詳細については、必要に応じて、EL制御装置100の動作を説明する際に説明する。
【0023】
EL制御装置100は記憶部110、処理部120、入力部130、出力部140、及び通信部150を備えている。記憶部110は上述したRAM100BとHDD100Eのいずれか一方又は両方によって実現することができる。処理部120は上述したCPU100Aによって実現することができる。入力部130は入力I/F100Fによって実現することができる。出力部140は出力I/F100Gによって実現することができる。通信部150は上述したネットワークI/F100Dによって実現することができる。
【0024】
記憶部110、処理部120、入力部130、出力部140、及び通信部150は互いに接続されている。記憶部110は画像DB(Database)111を含んでいる。処理部120は、抽出部121、収集部122、及び生成部123を含んでいる。また、処理部120は、算出部124、特定部125、及び決定部126を含んでいる。
【0025】
抽出部121は入力装置710から入力されたテキストを、入力部130を介して受け付けると、テキストに含まれる単語に基づいて通信ネットワークNWを検索し、エンティティの候補を表す複数のエンティティ候補を抽出する。より詳しくは、抽出部121はエンティティ候補のリストを生成するELモデルを備え、ELモデルが固有表現に相当する単語を抽出し、エンティティリンキングの精度に応じたスコアをエンティティ候補に付与する。このようなELモデルとしては、例えばclassification headやclassifier、entity-context scoresなどがある。なお、固有表現は人名や地名、組織名といった名前や、時刻表現や曜日表現といった時間表現、金額表現や年齢といった数値表現などに関する総称である。
【0026】
抽出部121はエンティティ候補を抽出すると、エンティティ候補を画像DB111に格納する。これにより、図4に示すように、画像DB111は複数のエンティティ候補11,12,13,・・・を記憶する。エンティティ候補11はエンティティに関連する関連文11Aとエンティティに関連する関連画像11Bを含んでいる。例えば、関連文11Aはエンティティの詳細を説明する説明文であり、関連画像11Bはエンティティの代表的な静止画である。また、関連文11Aは関連画像11Bに関連する関連語も含んでいる。例えば、関連文11Aは関連画像11Bに関連する関連語「芝」や関連語「六本木」などを含んでいる。なお、エンティティ候補12,13,・・・についてはエンティティ候補11と基本的に同様であるため、詳細な説明は省略する。
【0027】
収集部122は画像DB111からエンティティ候補に含まれる関連画像をエンティティ候補ごとに収集する。また、収集部122は関連画像を収集すると、収集した関連画像に関連する関連語に基づいて、関連画像に関連する関連画像を再帰的に収集する。関連画像を再帰的に収集することにより、収集部122はエンティティ候補に関連する様々な関連画像をエンティティ候補ごとに収集することができる。
【0028】
生成部123は収集部122が収集した関連画像のエンティティ候補ごとの画像クラスターを生成する。関連画像のエンティティ候補ごとの画像クラスターを生成するため、生成部123は複数の画像クラスターを生成する。算出部124は、画像クラスターの類似度を算出する所定の算出手法に基づいて、生成部123が生成した画像クラスター間の類似度を算出する。なお、類似度を算出する所定の算出手法の詳細については後述する。
【0029】
特定部125は算出部124が算出した類似度の中からどの類似度よりも大きな所定類似度を特定する。すなわち、特定部125は算出部124が算出した類似度の中から最大類似度を特定する。決定部126は特定部125が特定した所定類似度に基づいて、エンティティ候補の中から所定類似度に応じたエンティティを決定する。すなわち、決定部126はより高い類似度を示す画像クラスターの候補を最終的なエンティティとする。これらの構成により、単語とエンティティを一意かつ高精度に対応付けることができる。
【0030】
続いて、図5乃至図13を参照して、EL制御装置100が実行する処理について説明する。
【0031】
まず、図5に示すように、抽出部121は入力テキストを受け付ける(ステップS1)。例えば、図6(a)に示すように、入力テキスト「電波塔は港区にある」が入力装置710からEL制御装置100に入力されると、抽出部121はこの入力テキストを受け付ける。
【0032】
入力テキストを受け付けると、抽出部121はエンティティ候補を抽出する(ステップS2)。より詳しくは、図6(b)に示すように、入力テキストを受け付けると、抽出部121はELモデルを備えているため、入力テキストから固有表現に相当する単語を特定する。本実施形態では、一例として抽出部121は固有表現に相当する単語「電波塔」及び単語「港区」を特定する。単語を特定すると、図6(c)に示すように、抽出部121は、これらの単語に基づいて、複数のエンティティ候補を抽出する。
【0033】
例えば単語「港区」に基づいて、抽出部121はエンティティ候補「https:ja.xyzpedia.org/xyz/港区_(大阪市)」及びエンティティ候補「https:ja.xyzpedia.org/xyz/港区_(東京都)」を抽出する。同様に、単語「電波塔」に基づいて、抽出部121はエンティティ候補「https:ja.xyzpedia.org/xyz/東京タワー(登録商標)」及びエンティティ候補「https:ja.xyzpedia.org/xyz/東京スカイツリー(登録商標)」を抽出する。なお、図示しないが、上述したように、各エンティティ候補はエンティティに関連する関連文とエンティティに関連する関連画像を含んでいる。
【0034】
また、各エンティティ候補にはエンティティリンキングの精度に応じたスコアが付与されている。例えば単語「港区」であれば、エンティティ候補「https:ja.xyzpedia.org/xyz/港区_(東京都)」よりエンティティ候補「https:ja.xyzpedia.org/xyz/港区_(大阪市)」の方が高精度であることが示されている。また、単語「電波塔」であれば、エンティティ候補「https:ja.xyzpedia.org/xyz/東京スカイツリー」よりエンティティ候補「https:ja.xyzpedia.org/xyz/東京タワー」の方が高精度であることが示されている。
【0035】
しかしながら、入力テキスト「電波塔は港区にある」に照らした場合、大阪市の港区には電波塔はない。このため、この入力テキストに対しエンティティ候補「https:ja.xyzpedia.org/xyz/港区_(大阪市)」とエンティティ候補「https:ja.xyzpedia.org/xyz/東京タワー」を対応付けることは適切でない。また、仮に入力テキスト「電波塔は港区にある」に照らした場合、東京スカイツリーは東京都の墨田区にあり、港区にはない。本実施形態の場合、この入力テキストに対しエンティティ候補「https:ja.xyzpedia.org/xyz/港区_(東京都)」とエンティティ候補「https:ja.xyzpedia.org/xyz/東京タワー」を対応付けることが適切である。
【0036】
このため、抽出部121がエンティティ候補を抽出すると、抽出したエンティティ候補を画像DB111に格納し、収集部122などがエンティティリンキングの精度を高める後続の処理を実行する。
【0037】
具体的には、抽出部121がエンティティ候補を画像DB111に格納すると、収集部122は関連画像を収集する(ステップS3)。より詳しくは、収集部122は、抽出部121が抽出したエンティティ候補に基づいて、画像DB111からエンティティ候補に関連する関連画像をエンティティ候補ごとに収集する。例えば、図7に示すように、抽出部121がエンティティ候補11を抽出した場合、エンティティ候補11に含まれる関連画像11Bを収集する。
【0038】
また、収集部122が関連画像を収集すると、抽出部121は収集部122が収集した関連画像に関連する関連語に基づいて複数のエンティティ候補を抽出し、複数のエンティティ候補を画像DB111に格納する。そして、抽出部121が複数のエンティティ候補を画像DB111に格納すると、収集部122は画像DB111の複数のエンティティ候補からさらに画像を収集する。すなわち、収集部122は収集した関連画像に関連する関連語に基づいて、関連画像に副次的に関連する副関連画像を追加の関連画像として再帰的に収集する。
【0039】
例えば、図7に示すように、収集部122が関連画像11Bを収集すると、抽出部121はこの関連画像11Bに関連する関連語11C(例えば「芝」)や関連語11D(例えば「六本木」)などを特定する。そして、抽出部121は特定した関連語11C,11Dに基づいて、関連語11C,11Dに応じた複数のエンティティ候補12,13などを抽出して画像DB111に格納する。抽出部121が複数のエンティティ候補12,13を格納すると、収集部122は画像DB111の複数のエンティティ候補12,13から副関連画像12B,13Bを追加の関連画像として収集する。このように、収集部122は一次的な関連画像11Bを収集し、さらに、副関連画像12B,13Bなどを追加の二次的な関連画像として再帰的に収集する。
【0040】
収集部122は関連画像を収集すると、生成部123は画像クラスターを生成する(ステップS4)。より詳しくは、生成部123は収集部122が収集した関連画像のエンティティ候補ごとの画像クラスターを生成する。例えば、図7に示すように、エンティティ候補11であれば、エンティティ候補11に関連する関連画像11Bや副関連画像12B,13Bなどを関連画像として含む画像クラスターC1を生成する。したがって、図8(a)に示すように、エンティティ候補11であれば、エンティティ候補11と画像クラスターC1を関連付けることができる。
【0041】
同様に、図8(b)に示すように、エンティティ候補21であれば、エンティティ候補21と画像クラスターC2を関連付けることができる。図9(a)に示すように、エンティティ候補31であれば、エンティティ候補31と画像クラスターC3を関連付けることができる。図9(b)に示すように、エンティティ候補41であれば、エンティティ候補41と画像クラスターC4を関連付けることができる。
【0042】
生成部123が画像クラスターを生成すると、算出部124は生成部123が生成した画像クラスター間の類似度を算出する(ステップS5)。例えば、図10(a)に示すように、画像クラスターC1,C3間の類似度を算出する場合、図10(b)に示すように、まず、算出部124は画像クラスターC1を比較元画像クラスターに指定し、画像クラスターC3を比較先画像クラスターに指定する。
【0043】
次に、算出部124は比較元画像クラスターに含まれる各関連画像と比較先画像クラスターに含まれる各関連画像を関連画像ごとに比較して画像間スコアを算出する。例えば、比較元画像クラスターに含まれる関連画像「港区(1)の写真」と比較先画像クラスターに含まれる関連画像「東京タワーの写真」の画像間スコアを算出する場合、算出部124はこれらの関連画像と所定の類似度算出手法とに基づいて、画像間スコア「0.2」を算出する。残りの関連画像についても同様に算出部124は画像間スコアを算出する。この所定の類似度算出手法としては、例えばFaster R-CNNで画像の分散表現を計算し、画像間の分散表現のコサイン類似度を計算する手法などが挙げられる。
【0044】
画像間スコアを算出すると、図11(a)に示すように、算出部124は全ての画像間スコアの中から上位数個の画像間スコアを抽出し、画像間スコアの平均値を算出する。画像間スコアを抽出個数は十数個、数十個、数百個などであってもよい。本実施形態では、算出部124は上位5個の画像間スコア「1.0,1.0,0.9,0.9,0.6」を抽出し、画像間スコアの平均値「0.88」を算出する。画像間スコアの平均値を算出すると、算出部124は算出した平均値を画像クラスター間の類似度として決定する。このような手法により、算出部124は画像クラスターC1,C3間の類似度「0.88」を算出する。
【0045】
このように、画像クラスターC1,C3間の類似度「0.88」を算出すると、算出部124は、画像クラスターC1を基準に、図11(b)に示すように、同様の手法を用いて画像クラスターC1,C2間の類似度「0.32」を算出する。また、算出部124は画像クラスターC1,C4間の類似度「0.75」を算出する。
【0046】
算出部124がいずれか1つの画像クラスターを基準とする残り全ての画像クラスターとの類似度を算出すると、特定部125は複数の類似度の中から最大類似度を特定する(ステップS6)。本実施形態であれば、図11(b)に示すように、特定部125は最大類似度「0.88」を特定する。最大類似度を特定すると、特定部125は特定した最大類似度をその画像クラスターと関連するエンティティ候補の最終スコア(score_img)として決定する。本実施形態であれば、特定部125は最大類似度「0.88」を画像クラスターC1と関連するエンティティ候補11の最終スコアとして決定する。これにより、図12(a)に示すように、エンティティ候補11,21,31,41のそれぞれに、エンティティリンキングの精度に応じたスコア(score)に加え、最終スコア(score_img)が関連付けられる。
【0047】
特定部125が最大類似度を特定して、エンティティ候補に最終スコアを関連付けると、決定部126は特定した最大類似度に基づいて、エンティティ候補の中から最終的なエンティティを決定する(ステップS7)。具体的には、図12(b)に示すように、決定部126はエンティティリンキングの精度に応じたスコアと最終スコアのそれぞれに所定の重みを付与する。本実施形態では、決定部126はエンティティリンキングの精度に応じたスコアに重み「0.5」(50%)を付与する。また、決定部126は最終スコアに重み「0.5」(50%)を付与する。
【0048】
決定部126は重みを付与すると、重みを付与した上記スコアと上記最終スコアの合算値(total_score)に基づいて、エンティティ候補のいずれかを最終的なエンティティとして決定する。すなわち、決定部126は重みを付与した上記スコアと上記最終スコアとの線形結合に基づいて、エンティティ候補のいずれかを最終的なエンティティとして決定する。例えば、エンティティ候補11であれば、決定部126は合算値「0.74」を算出する。同様に、エンティティ候補21であれば、決定部126は合算値「0.49」を算出する。エンティティ候補31であれば、決定部126は合算値「0.88」を算出する。エンティティ候補41であれば、決定部126は合算値「0.43」を算出する。決定部126は合算値を算出すると、算出した合算値が最大になるエンティティ候補を最終的なエンティティとして単語ごとに決定する。
【0049】
本実施形態であれば、図12(b)に示すように、決定部126はエンティティ候補31に対し合算値「0.88」を算出し、エンティティ候補41に対し合算値「0.43」を算出した。このため、単語「電波塔」に対し、決定部126はエンティティ候補31を最終的なエンティティとして決定する。同様に、決定部126はエンティティ候補11に対し合算値「0.74」を算出し、エンティティ候補21に対し合算値「0.49」を算出した。このため、単語「港区」に対し、決定部126はエンティティ候補11を最終的なエンティティとして決定する。
【0050】
決定部126はエンティティを決定すると、表示装置720に最終結果を表示し(ステップS8)、処理を終了する。これにより、図13に示すように、入力テキストに含まれる単語「電波塔」及び単語「港区」のそれぞれに対し適切なエンティティが対応付けられて表示装置720に表示される。このように、本実施形態によれば、インスタグラム(登録商標)や映画の口コミサイトといった特定の分野に限定された所定画像ではなく、インターネットなどの通信ネットワークNWを検索して収集可能な画像が関連画像として利用されている。すなわち、所定画像から独立した関連画像が画像DB111から収集されて利用されている。このような関連画像の収集は容易であるため、特定の分野に特化したニューラルネットワークを設計する場合に比べて、エンティティリンキングの汎用性が向上するという利点がある。また、本実施形態によれば、画像を利用してエンティティリンキングの精度の向上を図っているため、日本語や英語など特定に言語に依存せずに、エンティティリンキングの精度を向上することができる。
【0051】
以上、本発明の好ましい実施形態について詳述したが、本発明に係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。例えば、上述した実施形態では、画像クラスターを生成したが、画像クラスターに加えて関連語のクラスターを生成してエンティティリンキングの精度向上に利用してもよい。
【0052】
また、本実施形態では、重み「0.5」を採用したが、設計や運用、設定等に応じて、同じ重みを異なる重みに変更するようにしてもよい。例えば、決定部126はエンティティリンキングの精度に応じたスコアに重み「0.7」(70%)を付与し、最終スコアに重み「0.3」(30%)を付与してもよいし、これらの重みを逆にしてもよい。
【符号の説明】
【0053】
100 EL制御装置
110 記憶部
111 画像DB
120 処理部
121 抽出部
122 収集部
123 生成部
124 算出部
125 特定部
126 決定部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13