(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-08-16
(45)【発行日】2024-08-26
(54)【発明の名称】情報処理システム、情報処理方法、および情報処理プログラム
(51)【国際特許分類】
G06F 16/35 20190101AFI20240819BHJP
【FI】
G06F16/35
(21)【出願番号】P 2023077464
(22)【出願日】2023-05-09
【審査請求日】2023-06-26
【新規性喪失の例外の表示】特許法第30条第2項適用 発行日 令和5年3月16日 刊行物(刊行物名、巻数、号数、該当ページ、発行所/発行元等)言語処理学会第29回年次大会発表論文集(2023年3月)、尾城奈緒子,竹村彰浩,白石空、「分散表現を用いたブランド名の語義曖昧性解消と小規模学習データでの応用」pp.2879-2884 https://www.anlp.jp/proceedings/annual_meeting/2023/index.html#Q11 開催日 令和5年3月13日~令和5年3月17日 発表日 令和5年3月16日 集会名、開催場所 言語処理学会第29回年次大会(NLP2023) (沖縄コンベンションセンター所在地:沖縄県宜野湾市真志喜4-3-1)
(73)【特許権者】
【識別番号】313015432
【氏名又は名称】株式会社インテージ
(74)【代理人】
【識別番号】100088155
【氏名又は名称】長谷川 芳樹
(74)【代理人】
【識別番号】100113435
【氏名又は名称】黒木 義樹
(74)【代理人】
【識別番号】100144440
【氏名又は名称】保坂 一之
(72)【発明者】
【氏名】尾城 奈緒子
(72)【発明者】
【氏名】白石 空
(72)【発明者】
【氏名】竹村 彰浩
【審査官】原 秀人
(56)【参考文献】
【文献】特開2020-135566(JP,A)
【文献】特開2018-136721(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06F 40/20-40/58
(57)【特許請求の範囲】
【請求項1】
少なくとも一つのプロセッサを備え、
前記少なくとも一つのプロセッサが、
対象テキストの分散表現ベクトルを対象ベクトルとして取得し、
対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得し、
前記対象ベクトルと前記知識ベクトルとの類似度を算出し、
前記類似度に基づいて前記対象テキストと前記対象概念との関連度を算出する機械学習モデルに、前記算出された類似度を入力して、前記対象テキストと前記対象概念との関連度を該機械学習モデルから取得
し、
前記背景知識を構成する情報が複数の知識領域にグループ化され、
前記少なくとも一つのプロセッサが、
前記複数の知識領域のそれぞれについて前記知識ベクトルを取得し、
前記複数の知識領域のそれぞれについて前記類似度を算出し、
前記算出された複数の類似度を前記機械学習モデルに入力して、前記関連度を該機械学習モデルから取得する、
情報処理システム。
【請求項2】
前記少なくとも一つのプロセッサが、前記背景知識に属する複数の単語に対応する複数の分散表現ベクトルの代表値を前記知識ベクトルとして算出する、
請求項1に記載の情報処理システム。
【請求項3】
前記背景知識が、前記対象概念の名称と共に使用される頻度が所定の基準を満たす関連共起語を含む、
請求項1または2に記載の情報処理システム。
【請求項4】
前記背景知識が、前記対象概念に対して予め定義されたキーワードを含む、
請求項1または2に記載の情報処理システム。
【請求項5】
前記背景知識が、前記対象概念について言及した記事に含まれる単語を含む、
請求項1または2に記載の情報処理システム。
【請求項6】
前記背景知識が、前記対象概念の名称の同形異義語と共に使用される頻度が所定の基準を満たす非関連共起語を含む、
請求項1または2に記載の情報処理システム。
【請求項7】
少なくとも一つのプロセッサを備える情報処理システムにより実行される情報処理方法であって、
対象テキストの分散表現ベクトルを対象ベクトルとして取得するステップと、
対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得するステップと、
前記対象ベクトルと前記知識ベクトルとの類似度を算出するステップと、
前記類似度に基づいて前記対象テキストと前記対象概念との関連度を算出する機械学習モデルに、前記算出された類似度を入力して、前記対象テキストと前記対象概念との関連度を該機械学習モデルから取得するステップと、
を含
み、
前記背景知識を構成する情報が複数の知識領域にグループ化され、
前記背景知識の前記分散表現ベクトルを前記知識ベクトルとして取得する前記ステップでは、前記複数の知識領域のそれぞれについて前記知識ベクトルを取得し、
前記類似度を算出する前記ステップでは、前記複数の知識領域のそれぞれについて前記類似度を算出し、
前記関連度を取得する前記ステップでは、前記算出された複数の類似度を前記機械学習モデルに入力して、前記関連度を該機械学習モデルから取得する、
情報処理方法。
【請求項8】
対象テキストの分散表現ベクトルを対象ベクトルとして取得するステップと、
対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得するステップと、
前記対象ベクトルと前記知識ベクトルとの類似度を算出するステップと、
前記類似度に基づいて前記対象テキストと前記対象概念との関連度を算出する機械学習モデルに、前記算出された類似度を入力して、前記対象テキストと前記対象概念との関連度を該機械学習モデルから取得するステップと、
をコンピュータに実行させ
、
前記背景知識を構成する情報が複数の知識領域にグループ化され、
前記背景知識の前記分散表現ベクトルを前記知識ベクトルとして取得する前記ステップでは、前記複数の知識領域のそれぞれについて前記知識ベクトルを取得し、
前記類似度を算出する前記ステップでは、前記複数の知識領域のそれぞれについて前記類似度を算出し、
前記関連度を取得する前記ステップでは、前記算出された複数の類似度を前記機械学習モデルに入力して、前記関連度を該機械学習モデルから取得する、
情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の一側面は情報処理システム、情報処理方法、および情報処理プログラムに関する。
【背景技術】
【0002】
機械学習モデルを用いてテキストを処理する技術が知られている。例えば、特許文献1には、未知語を含むセンテンスのカテゴリを推定する精度を向上させることができるカテゴリ推定装置が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
テキストが特定の概念とどの程度関連しているのかを精度良く推定することが望まれている。
【課題を解決するための手段】
【0005】
本開示の一側面に係る情報処理システムは、少なくとも一つのプロセッサを備える。少なくとも一つのプロセッサは、対象テキストの分散表現ベクトルを対象ベクトルとして取得し、対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得し、対象ベクトルと知識ベクトルとの類似度を算出し、類似度に基づいて対象テキストと対象概念との関連度を算出する機械学習モデルに、算出された類似度を入力して、対象テキストと対象概念との関連度を該機械学習モデルから取得する。
【0006】
本開示の一側面に係る情報処理方法は、少なくとも一つのプロセッサを備える情報処理システムにより実行される。この情報処理方法は、対象テキストの分散表現ベクトルを対象ベクトルとして取得するステップと、対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得するステップと、対象ベクトルと知識ベクトルとの類似度を算出するステップと、類似度に基づいて対象テキストと対象概念との関連度を算出する機械学習モデルに、算出された類似度を入力して、対象テキストと対象概念との関連度を該機械学習モデルから取得するステップと、を含む。
【0007】
本開示の一側面に係る情報処理プログラムは、対象テキストの分散表現ベクトルを対象ベクトルとして取得するステップと、対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得するステップと、対象ベクトルと知識ベクトルとの類似度を算出するステップと、類似度に基づいて対象テキストと対象概念との関連度を算出する機械学習モデルに、算出された類似度を入力して、対象テキストと対象概念との関連度を該機械学習モデルから取得するステップと、をコンピュータに実行させる。
【0008】
このような側面においては、対象テキストと対象概念に関連する背景知識との類似度がまず算出され、機械学習モデルによってその類似度から対象テキストと対象概念との関連度が得られる。対象概念に関連する背景知識との類似度と機械学習モデルとをこのように利用することで、対象テキストが対象概念とどの程度関連しているのかを精度良く推定できる。
【発明の効果】
【0009】
本開示の一側面によれば、テキストが特定の概念とどの程度関連しているのかを精度良く推定できる。
【図面の簡単な説明】
【0010】
【
図1】情報処理システムの動作の概要の一例を示す図である。
【
図2】情報処理システムの機能構成の一例を示す図である。
【
図3】情報処理システムを構成するコンピュータのハードウェア構成の一例を示す図である。
【
図4】情報処理システムでの処理の一例を示すフローチャートである。
【
図5】対象ベクトルを取得するための処理の一例を示すフローチャートである。
【
図6】知識ベクトルを取得するための処理の一例を示すフローチャートである。
【
図7】対象ベクトルを取得するための処理の一例を示す図である。
【
図8】知識ベクトルを取得するための処理の一例を示す図である。
【
図9】知識ベクトルを取得するための処理の一例を示す図である。
【
図10】知識ベクトルを取得するための処理の一例を示す図である。
【
図11】知識ベクトルを取得するための処理の一例を示す図である。
【
図12】類似度を取得するための処理の一例を示す図である。
【
図13】関連度を取得するための処理の一例を示す図である。
【発明を実施するための形態】
【0011】
以下、添付図面を参照しながら本開示での実施形態を詳細に説明する。なお、図面の説明において同一または同等の要素には同一の符号を付し、重複する説明を省略する。
【0012】
[システムの概要]
本開示に係る情報処理システムは、対象テキストと対象概念との関連度を推定するコンピュータシステムである。対象概念とは特定の同類の物事に対して共通して抱かれる意味内容をいう。対象概念は、例えば特定のブランド、商品、サービス、企業、団体、チーム、組織、人物、出版物、芸術作品、論文、品種、地域、イベント、体験、権利、情報、またはアイディアであり得る。対象テキストとは対象概念との関連度を調べられるべきテキストをいう。対象テキストは文字列によって表現され、例えば1以上の文によって構成される。対象テキストはウェブサイト、SNSなどの様々な情報源から取得され得る。対象概念および対象テキストのいずれも、情報処理システムの利用者によって指定され得る。関連度とは、対象テキストが対象概念とどの程度関連するかを示す指数をいう。
【0013】
情報処理システムは、対象概念の背景知識を利用して対象テキストと該対象概念との関連度を取得する。背景知識とは対象概念に関連する情報をいう。背景知識は、例えば、対象概念の正式名称、略称または俗称、あるいはこれらのような名称の同形異義語、同音異義語、類義語または共起語を含む。ここで、類義語はある単語についてその単語と意味の似た別の単語をいう。類義語は、単語の埋め込み空間においてある単語と距離が近い、またはコサイン類似度が近い別の単語であり得る。また、類義語は、類義語辞典によってある単語から取得される別の単語であり得る。背景知識はまた、対象概念の上位概念、対象概念と観念が類似する概念、あるいは対象概念から連想される人物、組織または地域を含み得る。一例として対象概念が特定のブランドである場合には、背景知識は、ブランドの商品名、ブランドのキーワードまたはトピック、ブランドの創立者または発祥地を含み得る。情報処理システムにおいて、背景知識を構成する情報は複数の情報カテゴリにグループ化されてもよく、本開示ではそれぞれの情報カテゴリを知識領域とも呼ぶ。例えば、対象概念が特定のブランドである場合、商品名、ブランドキーワード、ブランドトピックなどのような1以上の知識領域が設定され得る。
【0014】
情報処理システムは、機械学習モデルを利用して上記関連度に関する計算を行う。機械学習とは、与えられた情報に基づいて反復的に学習することで、法則またはルールを自律的に見つけ出す手法をいう。機械学習モデルとは機械学習によって得られる計算モデルをいい、したがって、学習済みモデルとも呼ばれる。
【0015】
情報処理システムは、対象テキストの分散表現ベクトルを対象ベクトルとして取得し、対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得する。分散表現ベクトルとは、単語またはテキストを複数次元の数値の集合で表現するベクトルをいう。情報処理システムは対象ベクトルと知識ベクトルとの類似度を算出する。この類似度は、二つのベクトルがどのくらい似ているかを示す指標をいう。情報処理システムはその類似度に基づいて関連度を算出する。一例では、情報処理システムは、分散表現ベクトルを取得するための機械学習モデルと、類似度から関連度を算出するための別の機械学習モデルとを用いる。上述したように、これらの機械学習モデルはいずれも、機械学習によって予め生成される学習済みモデルである。分散表現ベクトルを取得するための機械学習モデルの例として、fastText、Word2vec、GloVe、ELMoおよびBERTが挙げられる。関連度を算出するための機械学習モデルの例としてロジスティック回帰が挙げられる。
【0016】
図1は、情報処理システムの動作の概要を処理フローS1として例示する図である。この例では、背景知識としてN個(Nは自然数)の知識領域を示す。
【0017】
情報処理システムは、対象テキストの分散表現ベクトルを対象ベクトルWxとして取得する(ステップS11)。一例として情報処理システムは、機械学習モデルである第1ベクトル取得モデル11aを用いて対象ベクトルWxを取得する。
【0018】
情報処理システムは、対象概念に関連する背景知識に含まれる知識領域K1~KNのそれぞれの分散表現ベクトルを、知識ベクトルW1~WNとして取得する(ステップS12)。一例として情報処理システムは、機械学習モデルである第2ベクトル取得モデル12aを用いて知識ベクトルW1~WNを取得する。第2ベクトル取得モデル12aは、複数の知識領域のそれぞれについて分散表現ベクトルを算出することが可能な、該複数の知識領域に共通の機械学習モデルであってもよい。あるいは、第2ベクトル取得モデル12aはそれぞれの知識領域に対して個別に設けられてもよい。
【0019】
情報処理システムは、ステップS12で取得された知識ベクトルW1~WNのそれぞれについて、対象ベクトルWxとの類似度R1~RNを算出する(ステップS13)。類似度の例として、コサイン類似度、ユークリッド距離、およびマンハッタン距離が挙げられる。
【0020】
情報処理システムは、類似度R1~RNに基づいて対象テキストと対象概念との関連度を取得する(ステップS14)。一例として情報処理システムは、機械学習モデルである関連度取得モデル14aを用いて関連度を取得する。
【0021】
このように情報処理システムは、対象ベクトルWxと知識ベクトルW1~WNとをまず取得し、対象ベクトルWxと知識ベクトルW1~WNのそれぞれとの類似度から、対象テキストと対象概念との関連度を得る。対象概念に関連する背景知識との類似度と機械学習モデルとをこのように利用することで、対象テキストが対象概念とどの程度関連しているのかを精度良く推定できる。
【0022】
[システムの構成]
図2は、情報処理システム10の機能構成の一例を示す図である。一例では、情報処理システム10は、機能モジュールとして第1ベクトル取得部11、第2ベクトル取得部12、類似度算出部13および関連度取得部14を備える。情報処理システム10は、通信ネットワークを介してデータベース群20にアクセスすることができる。通信ネットワークは移動体通信網、インターネット、イントラネット、WAN(Wide Area Network)のうちの少なくとも一つを含んで構成されてもよい。
【0023】
第1ベクトル取得部11は、対象テキストの分散表現ベクトルを対象ベクトルとして取得する機能モジュールである。一例として、第1ベクトル取得部11は第1ベクトル取得モデル11aに対象ベクトルを算出させる。
【0024】
第2ベクトル取得部12は、対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得する機能モジュールである。一例として、第2ベクトル取得部12は第2ベクトル取得モデル12aに知識ベクトルを算出させる。
【0025】
類似度算出部13は、第1ベクトル取得部11によって取得された対象ベクトルと、第2ベクトル取得部12によって取得された知識ベクトルとの類似度を算出する機能モジュールである。
【0026】
関連度取得部14は、類似度算出部13によって算出された類似度に基づいて、対象テキストと対象概念との関連度を取得する機能モジュールである。一例として、関連度取得部14は関連度取得モデル14aに関連度を算出させる。
【0027】
データベース群20は、情報処理システム10において必要なデータを記憶するデータベースの集合である。一例として、データベース群20は、テキストデータベース21および背景知識データベース22を含む。それぞれのデータベースは情報処理システム10の一部として構成されてもよいし、情報処理システム10とは別のコンピュータシステムに設けられてもよい。情報処理システム10は個々のデータベースにアクセスしてデータを読み取ったり書き込んだりすることができる。
【0028】
テキストデータベース21は、対象テキストのデータを記憶する非一時的な記憶媒体または記憶装置である。複数のデータベースの集合がテキストデータベース21として用いられてもよい。
【0029】
背景知識データベース22は、背景知識のデータを記憶する非一時的な記憶媒体または記憶装置である。複数のデータベースの集合が背景知識データベース22として用いられてもよい。
【0030】
図3は、情報処理システム10として機能し得るコンピュータ100の一般的なハードウェア構成を示す図である。例えば、コンピュータ100はプロセッサ101、主記憶部102、補助記憶部103、通信制御部104、入力装置105、および出力装置106を備える。プロセッサ101はオペレーティングシステムおよびアプリケーションプログラムを実行する。主記憶部102は例えばROMおよびRAMで構成される。補助記憶部103は例えばハードディスクまたはフラッシュメモリで構成され、一般に主記憶部102よりも大量のデータを記憶する。補助記憶部103は、少なくとも1台のコンピュータを情報処理システム10として機能させるための情報処理プログラム110を非一時的に記憶する。通信制御部104は例えばネットワークカードまたは無線通信モジュールで構成される。入力装置105は例えばキーボード、マウス、タッチパネルなどで構成される。出力装置106は例えばモニタおよびスピーカで構成される。
【0031】
情報処理システム10の各機能要素は、プロセッサ101または主記憶部102の上に情報処理プログラム110を読み込ませてプロセッサ101にその情報処理プログラム110を実行させることで実現される。情報処理プログラム110は、情報処理システム10の各機能要素を実現するためのコードを含む。プロセッサ101は情報処理プログラム110に従って、通信制御部104、入力装置105、または出力装置106を動作させ、主記憶部102または補助記憶部103におけるデータの読み出しおよび書き込みを行う。この処理により情報処理システム10の各機能要素が実現される。処理に必要なデータまたはデータベースは主記憶部102または補助記憶部103内に格納されてもよい。
【0032】
情報処理プログラム110は、例えば、CD-ROM、DVD-ROM、半導体メモリなどの有形の記録媒体に非一時的に記録された上で提供されてもよい。あるいは、情報処理プログラム110は、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。
【0033】
情報処理システム10は一つまたは複数のコンピュータにより構成され得る。複数のコンピュータが用いられる場合には、通信ネットワークを介してこれらのコンピュータが互いに接続されることで情報処理システム10が構成される。
【0034】
[システムの処理]
図4~6を参照しながら、情報処理システム10によって実行される処理について詳細に説明する。
図4は処理フローS1を示すフローチャートである。情報処理システム10は処理フローS1を実行する。
図5はステップS11の一例を示すフローチャートである。
図6はステップS12の一例を示すフローチャートである。
【0035】
ステップS11では、第1ベクトル取得部11が対象テキストの分散表現ベクトルを対象ベクトルW
xとして取得する。一例では、第1ベクトル取得部11はテキストデータベース21にアクセスして対象テキストを読み出し、第1ベクトル取得モデル11aを用いてその対象テキストを処理して対象ベクトルW
xを取得する。
図5を参照しながらステップS11の詳細を説明する。
【0036】
ステップS111では、第1ベクトル取得部11は対象テキストに対して形態素解析を実行して、対象テキストから1以上の単語を取得する。第1ベクトル取得部11は形態素解析によって得られる1以上の形態素に基づいて1以上の単語を取得する。形態素とは、意味をもつ表現要素の最小単位である。形態素解析は文字列を形態素に分解する処理である。一例では、第1ベクトル取得部11は1以上の単語として1以上の名詞を取得し、他の品詞の単語を取得しない。
【0037】
ステップS112では、第1ベクトル取得部11は取得された1以上の単語のそれぞれについて分散表現ベクトルを取得する。第1ベクトル取得部11は各単語について以下の処理を実行する。すなわち、第1ベクトル取得部11はその単語を第1ベクトル取得モデル11aに入力する。第1ベクトル取得モデル11aはその単語に基づいて分散表現ベクトルを算出および出力する。第1ベクトル取得部11はその分散表現ベクトルを取得する。
【0038】
ステップS113では、第1ベクトル取得部11は取得された1以上の分散表現ベクトルに基づいて対象ベクトルWxを算出する。例えば、第1ベクトル取得部11は1以上の分散表現ベクトルの代表値を対象ベクトルWxとして算出する。代表値とは統計処理により算出される値をいい、例えば平均値でもよいし中央値でもよい。平均値は、算術平均(相加平均)、幾何平均(相乗平均)または調和平均であってもよい。1以上の単語が複数の品詞に分類される場合には、第1ベクトル取得部11は品詞ごとに予め設定された重みによって分散表現ベクトルを重み付けし、重み付けされた分散表現ベクトルの代表値を算出してもよい。例えば、第1ベクトル取得部11は名詞の重みを他の品詞の重みより高くしてもよいし、固有名詞の重みを一般名詞の重みより高くしてもよい。
【0039】
図4に戻って、ステップS12では、第2ベクトル取得部12が、対象概念に関連する背景知識に含まれる1以上の知識領域K
1~K
Nについての1以上の分散表現ベクトルを、1以上の知識ベクトルW
1~W
Nとして取得する。一例として第2ベクトル取得部12は第2ベクトル取得モデル12aを利用する。
図6を参照しながらステップS12の詳細を説明する。
【0040】
ステップS121では、第2ベクトル取得部12は、背景知識を構成する1以上の知識領域から、処理しようとする一つの知識領域を選択する。
【0041】
ステップS122では、第2ベクトル取得部12は選択された知識領域に属する1以上の単語を取得する。一例では、第2ベクトル取得部12は背景知識データベース22にアクセスして、その知識領域に対応する1以上の単語を読み出す。あるいは、第2ベクトル取得部12はその知識領域に対応する1以上のテキストを背景知識データベース22から読み出し、各テキストに対して形態素解析を実行して1以上の単語を取得してもよい。
【0042】
ステップS123では、第2ベクトル取得部12は取得された1以上の単語のそれぞれについて分散表現ベクトルを取得する。第2ベクトル取得部12は各単語について以下の処理を実行する。すなわち、第2ベクトル取得部12はその単語を第2ベクトル取得モデル12aに入力する。第2ベクトル取得モデル12aはその単語に基づいて分散表現ベクトルを算出および出力する。第2ベクトル取得部12はその分散表現ベクトルを取得する。
【0043】
ステップS124では、第2ベクトル取得部12は取得された1以上の分散表現ベクトルに基づいて知識ベクトルを算出する。一例として、第2ベクトル取得部12は1以上の分散表現ベクトルの代表値を知識ベクトルとして算出する。例えば、その代表値は平均値でもよいし中央値でもよい。平均値は、算術平均(相加平均)、幾何平均(相乗平均)または調和平均であってもよい。1以上の単語が複数の品詞に分類される場合には、第2ベクトル取得部12は品詞ごとに予め設定された重みによって分散表現ベクトルを重み付けし、重み付けされた分散表現ベクトルの代表値を算出してもよい。例えば、第2ベクトル取得部12は名詞の重みを他の品詞の重みより高くしてもよいし、固有名詞の重みを一般名詞の重みより高くしてもよい。
【0044】
未だ処理していない知識領域が存在する場合には(ステップS125においてNO)、処理はステップS121に戻る。繰り返されるステップS121では、第2ベクトル取得部12は未だ処理されていない次の知識領域を選択する。繰り返されるステップS122~S124では、第2ベクトル取得部12はその知識領域について知識ベクトルを算出する。知識領域K1~KNのすべてについて処理を実行した場合、すなわち知識ベクトルW1~WNのすべてを取得した場合には(ステップS125においてYES)、第2ベクトル取得部12はステップS12を終了する。
【0045】
図4に戻って、ステップS13では、類似度算出部13が、1以上の知識ベクトルW
1~W
Nのそれぞれについて、対象ベクトルW
xとの類似度を算出して、1以上の類似度R
1~R
Nを取得する。
【0046】
ステップS14では、関連度取得部14が、1以上の類似度R1~RNに基づいて、対象テキストと対象概念との関連度を取得する。関連度取得部14は類似度R1~RNを関連度取得モデル14aに入力する。関連度取得モデル14aはその類似度R1~RNに基づいて関連度を算出および出力する。関連度取得部14はその関連度を取得および出力する。例えば、関連度取得部14は関連度を、表示装置上に表示してもよいし、所与のデータベースに格納してもよいし、他のコンピュータまたはコンピュータシステムに向けて送信してもよい。関連度取得部14は関連度を、対象テキストが対象概念に関連する確率などのような数値によって表現してもよいし、「関連あり」、「関連なし」などの文字列によって表現してもよいし、関連の有無を示す記号によって表現してもよい。
【0047】
図7~
図13を参照しながら、処理フローS1に関する例について説明する。これらの図に示す例では、対象概念は、「XYZ」という名称の化粧品ブランドであるとする。
【0048】
図7は、対象ベクトルを取得する処理(ステップS11)の例を示す図である。この例では、第1ベクトル取得部11が「XYZのアイシャドウは、単色のツヤが良い。」という対象テキストをテキストデータベース21から取得する。第1ベクトル取得部11はその対象テキストに対して形態素解析を実行して、「XYZ」「アイシャドウ」「単色」「ツヤ」という4つの名詞(単語)を取得する(ステップS111)。第1ベクトル取得部11はその4単語のそれぞれについて、第1ベクトル取得モデル11aを用いて分散表現ベクトルを取得する(ステップS112)。第1ベクトル取得部11は、「XYZ」を第1ベクトル取得モデル11aに入力し、第1ベクトル取得モデル11aからその単語の分散表現ベクトルW
x1を取得する。同様に、第1ベクトル取得部11は「アイシャドウ」「単色」「ツヤ」という3単語から、分散表現ベクトルW
x2、W
x3およびW
x4をそれぞれ取得する。第1ベクトル取得部11はその分散表現ベクトルW
x1~W
x4に基づいて対象ベクトルW
xを算出する(ステップS113)。
【0049】
図8~
図11はいずれも、知識ベクトルを取得する処理(ステップS12)の例を示す図である。この例では、化粧品ブランド「XYZ」に関する背景知識が、ブランド名、上位の関連共起語、上位の非関連共起語、ブランドキーワード、およびブランドトピックという5つの知識領域から構成されるとする。
【0050】
図8は、ブランド名の知識ベクトルW
1を取得する処理を示す図である。ブランド名に属する単語の例として、ブランドの正式名称、略称、および俗称と、これらのような名称の表記揺れおよび類義語とが挙げられる。
【0051】
第2ベクトル取得部12は、ブランド名に属する1以上の単語を背景知識データベース22から取得する(ステップS122)。
図8はそのような単語の例として「XYZ」「Xyz」および「xyz」を示す。第2ベクトル取得部12は取得された1以上の単語のそれぞれについて、第2ベクトル取得モデル12aによって分散表現ベクトルを取得する(ステップS123)。
図8の例では、第2ベクトル取得部12は「XYZ」「Xyz」および「xyz」からそれぞれ算出される分散表現ベクトルW
11,W
12,W
13を含む1以上の分散表現ベクトルを取得する。第2ベクトル取得部12は取得された1以上の分散表現ベクトルに基づいて、ブランド名についての知識ベクトルW
1を算出する(ステップS124)。
【0052】
図9は、上位の関連共起語の知識ベクトルW
2と、上位の非関連共起語の知識ベクトルW
3とを取得する処理を示す図である。共起語とは、ある単語についてその単語と共に使用される頻度の高い単語をいう。関連共起語は、対象概念の名称を意味する単語と共に使われる頻度の高い単語をいう。非関連共起語とは、対象概念の名称と同じ表記を有するが別の概念を意味する単語と共に使用される頻度の高い単語をいう。換言すれば、非関連共起語は、対象概念を表す名称の同形異義語と共に使われる頻度の高い単語であるといえる。「上位の関連共起語」とは、頻度の降順に関連共起語を並べた場合の、先頭からM
1個(M
1は自然数)の関連共起語の群をいう。「上位の非関連共起語」とは、頻度の降順に非関連共起語を並べた場合の、先頭からM
2個(M
2は自然数)の非関連共起語群をいう。
【0053】
上位の関連共起語および上位の非関連共起語を用意するために、対象概念の名称を意味する単語を含むテキスト群と、対象概念を表す名称の同形異義語を含むテキスト群とが収集される。そして、収集されたそれぞれのテキストに、対象概念に関連するテキストであるか否かを示すラベルが人手によって付与される。
図9の例では、化粧品ブランド「XYZ」に関連するテキストにはラベル(label)「1」が付与され、化粧品ブランド「XYZ」に関連しないテキストにはラベル「0」が付与され、化粧品ブランド「XYZ」との関連を判断できなかったテキストにはラベル「不明」が付与される。以下、ラベル「1」を付与されたテキストを関連テキストといい、ラベル「0」を付与されたテキストを非関連テキストという。
【0054】
一例では、第2ベクトル取得部12は、関連テキストのそれぞれに対して形態素解析を行い、それぞれの関連テキストから1以上の名詞を関連共起語として取得する。第2ベクトル取得部12はそれぞれの関連共起語の出現回数を頻度としてカウントし、関連共起語を頻度の降順に並べて、上位の関連共起語を取得する。また、第2ベクトル取得部12は、非関連テキストのそれぞれに対して形態素解析を行い、それぞれの非関連テキスト群から1以上の単語を非関連共起語として取得する。第2ベクトル取得部12は、それぞれの非関連共起語の出現回数を頻度としてカウントし、非関連共起語を頻度の降順に並べて、上位の非関連共起語を取得する。別の例として、上位の関連共起語および上位の非関連共起語は他のコンピュータシステムから提供されて背景知識データベース22に予め格納されてもよい。
【0055】
第2ベクトル取得部12は上位の関連共起語を取得する(ステップS122)。
図9は上位の関連共起語の例として「コスメ」「春」および「購入」を示す。第2ベクトル取得部12は上位の関連共起語のそれぞれについて、第2ベクトル取得モデル12aによって分散表現ベクトルを取得する(ステップS123)。
図9の例では、第2ベクトル取得部12は「コスメ」「春」および「購入」からそれぞれ算出される分散表現ベクトルW
21~W
23を含む1以上の分散表現ベクトルを取得する。第2ベクトル取得部12は、取得された1以上の分散表現ベクトルに基づいて、上位の関連共起語についての知識ベクトルW
2を算出する(ステップS124)。第2ベクトル取得部12は、上位の関連共起語の分散表現ベクトルに加えて上位の関連共起語のそれぞれの類義語について分散表現ベクトルを取得し、上位の関連共起語およびこれらの類義語から算出される分散表現ベクトルに基づいて、上位の関連共起語についての知識ベクトルW
2を算出してもよい。
【0056】
第2ベクトル取得部12は上位の非関連共起語を取得する(ステップS122)。
図9は「パソコン」「修理」および「ポテト」を示す。第2ベクトル取得部12は上位の非関連共起語のそれぞれについて、第2ベクトル取得モデル12aによって分散表現ベクトルを取得する(ステップS123)。
図9の例では、第2ベクトル取得部12は第2ベクトル取得モデル12aを用いて、「パソコン」「修理」および「ポテト」からそれぞれ算出される分散表現ベクトルW
31~W
33を含む1以上の分散表現ベクトルを取得する。第2ベクトル取得部12は、取得された1以上の分散表現ベクトルに基づいて、上位の非関連共起語についての知識ベクトルW
3を算出する。第2ベクトル取得部12は、上位の非関連共起語の分散表現ベクトルに加えて上位の非関連共起語のそれぞれの類義語について分散表現ベクトルを取得し、上位の非関連共起語およびこれらの類義語から算出される分散表現ベクトルに基づいて、上位の非関連共起語についての知識ベクトルW
3を算出してもよい。
【0057】
図10は、ブランドキーワードの知識ベクトルW
4を取得する処理を示す図である。ブランドキーワードとは、対象概念であるブランドに対して予め定義された単語をいう。例えば、ブランドキーワードは、ブランドから連想され得る単語であってもよい。あるいは、ブランドキーワードは、ブランドで扱う商品またはサービスなどのイメージを表現または修飾するために使用される単語であってもよい。一例として、ブランドキーワードは、企業サイト、ブランドサイト、商品サイトまたは広告で使用されるキャッチフレーズまたはキャッチコピーであってもよい。
【0058】
第2ベクトル取得部12は、ブランドキーワードに属する1以上の単語を背景知識データベース22から取得する(ステップS122)。
図10はそのような単語の例として「スタジオ」「パウダーキス」および「素肌」を示す。第2ベクトル取得部12は取得された1以上の単語のそれぞれについて、第2ベクトル取得モデル12aによって分散表現ベクトルを取得する(ステップS123)。
図10の例では、第2ベクトル取得部12は、「スタジオ」「パウダーキス」および「素肌」からそれぞれ算出される分散表現ベクトルW
41~W
43を含む1以上の分散表現ベクトルを取得する。第2ベクトル取得部12は取得された1以上の分散表現ベクトルに基づいて、ブランドキーワードについての知識ベクトルW
4を算出する(ステップS124)。第2ベクトル取得部12は、ブランドキーワードに属する1以上の単語の分散表現ベクトルに加えて該1以上の単語のそれぞれの類義語について分散表現ベクトルを取得し、ブランドキーワードに属する1以上の単語およびこれらの類義語から算出される分散表現ベクトルに基づいて、ブランドキーワードについての知識ベクトルW
4を算出してもよい。
【0059】
図11は、ブランドトピックの知識ベクトルW
5を取得する処理を示す図である。ブランドトピックとは、対象概念であるブランドについて言及した記事に含まれるテキストをいう。記事はウェブサイト、SNSなどの様々な情報源から予め収集され得る。一例としてブランドトピックは、ブランドについて言及した記事のタイトルまたは本文中のテキストであってもよい。
図11はそのようなテキストの例として「プロのメイクアップアーティストのニーズに応える。」「星をモチーフにしたアイパレット。」および「桜コレクションが今春も登場。」を示す。
【0060】
第2ベクトル取得部12は、それぞれのブランドトピックに対して形態素解析を行い、1以上のブランドトピックから1以上の単語を取得する(ステップS122)。
図11は、そのような単語の例として「メイクアップ」「アイパレット」および「コレクション」を示す。第2ベクトル取得部12は取得された1以上の単語のそれぞれについて、第2ベクトル取得モデル12aによって分散表現ベクトルを取得する(ステップS123)。
図11の例では、第2ベクトル取得部12は、「メイクアップ」「アイパレット」および「コレクション」からそれぞれ算出される分散表現ベクトルW
51~W
53を含む1以上の分散表現ベクトルを取得する。第2ベクトル取得部12は取得された1以上の分散表現ベクトルに基づいて、ブランドトピックについての知識ベクトルW
5を算出する(ステップS124)。第2ベクトル取得部12は、ブランドトピックから取得された1以上の単語の分散表現ベクトルに加えて該1以上の単語のそれぞれの類義語について分散表現ベクトルを取得し、ブランドトピックから取得された1以上の単語およびこれらの類義語から算出される分散表現ベクトルに基づいて、ブランドトピックについての知識ベクトルW
5を算出してもよい。
【0061】
図12は、対象ベクトルと知識ベクトルとの類似度を算出する処理(ステップS13)を示す図である。類似度算出部13は、知識ベクトルW
1~W
5のそれぞれについて対象ベクトルW
xとの類似度を算出し、類似度R
1~R
5を取得する。
【0062】
図13は、対象テキストと対象概念との関連度を算出する処理(ステップS14)を示す図である。関連度取得部14は関連度取得モデル14aに類似度R
1~R
5を入力する。関連度取得モデル14aはそれらの類似度に基づいて関連度を算出する。関連度取得部14はその関連度を取得する。
【0063】
関連度の算出において、関連度取得部14は、類似度R1~R5の基となる知識領域K1~K5の各性質に応じて、類似度ごとに重み付けを実行してもよい。例えば、ブランド名、上位の関連共起語、ブランドキーワードおよびブランドトピックは、対象概念との関連についてポジティブな指標となり得る知識領域である。すなわち、これらの知識領域から算出される類似度R1,R2,R4,R5は、対象テキストと対象概念との関連度に対して正の相関関係を有する蓋然性が高い。そのため、これらの知識領域から取得される類似度が大きいほど、対象テキストと対象概念との関連度は大きいと考えられる。一方、上位の非関連共起語は、対象概念に関連しない単語で構成される知識領域であるから、対象概念との関連についてネガティブな指標となり得る知識領域である。すなわち、上位の非関連共起語から算出される類似度は、対象テキストと対象概念との関連度に対して負の相関関係を有する蓋然性が高い。そのため、この知識領域K3から取得される類似度R3が大きいほど、対象テキストと対象概念との関連度は小さいと考えられる。このような理由から、一例として、関連度取得部14は、類似度R1,R2,R4,R5に対しては正の重み付けを実行し、類似度R3に対しては負の重み付けを実行してもよい。
【0064】
[変形例]
以上、本開示での様々な例を詳細に説明した。しかし、本開示は上記の例に限定されるものではない。本開示に関しては、その要旨を逸脱しない範囲で様々な変形が可能である。
【0065】
情報処理システム10は、背景知識に属する複数の単語に対応する複数の分散表現ベクトルの代表値を用いることなく、該背景知識の知識ベクトルを取得してもよい。例えば、情報処理システム10は少なくとも一つの知識領域について、代表値を算出することなく知識ベクトルを取得してもよい。例えば情報処理システム10は、一つの知識領域で得られたm個のd次元(m,dはいずれも自然数)の分散表現ベクトルを、m×d次元の一つのベクトルまたはd×m行列の形に統合し、対象ベクトルとの類似度を算出する前にその統合された形式をm個のd次元のベクトルとして分割してもよい。情報処理システム10は一つの知識領域から複数の知識ベクトルを算出してもよい。すなわち、情報処理システム10は複数の分散表現ベクトルを2以上のグループに分割して各グループについて知識ベクトルを算出してもよく、一つの知識領域から取得される全ての分散表現ベクトルを知識ベクトルとして取得してもよい。
【0066】
上記の例では情報処理システム10が対象ベクトルおよび知識ベクトルの双方を算出するが、これらのベクトルの少なくとも一方が別のコンピュータシステムによって算出されてもよい。この場合には、情報処理システムはそのコンピュータシステムから対象ベクトルまたは知識ベクトルを取得してもよい。少なくとも一つの知識ベクトルが、上記の例における背景知識データベース22のような所定のデータベースに予め格納されてもよく、この場合には、情報処理システムはそのデータベースからその知識ベクトルを取得してもよい。
【0067】
少なくとも一つのプロセッサにより実行される情報処理方法は上記の例に限定されない。例えば、上述したステップまたは処理の一部が省略されてもよいし、別の順序で各ステップが実行されてもよい。また。上述したステップのうち任意の2以上のステップが組み合わされてもよいし、ステップの一部が修正または削除されていてもよい。あるいは、上記の各ステップに加えて他のステップが実行されてもよい。
【0068】
本開示において、「少なくとも一つのプロセッサが、第1の処理を実行し、第2の処理を実行し、…第nの処理を実行する。」との表現、またはこれに対応する表現は、第1の処理から第nの処理までのn個の処理を実行するプロセッサが途中で変わる場合を含む概念を示す。すなわち、この表現は、n個の処理のすべてが同じプロセッサで実行される場合と、n個の処理においてプロセッサが任意の方針で変わる場合との双方を含む概念を示す。
【0069】
[付記]
上記の様々な例から把握されるとおり、本開示は以下に示す態様を含む。
(付記1)
少なくとも一つのプロセッサを備え、
前記少なくとも一つのプロセッサが、
対象テキストの分散表現ベクトルを対象ベクトルとして取得し、
対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得し、
前記対象ベクトルと前記知識ベクトルとの類似度を算出し、
前記類似度に基づいて前記対象テキストと前記対象概念との関連度を算出する機械学習モデルに、前記算出された類似度を入力して、前記対象テキストと前記対象概念との関連度を該機械学習モデルから取得する、
情報処理システム。
(付記2)
前記少なくとも一つのプロセッサが、前記背景知識に属する複数の単語に対応する複数の分散表現ベクトルの代表値を前記知識ベクトルとして算出する、
付記1に記載の情報処理システム。
(付記3)
前記背景知識を構成する情報が複数の知識領域にグループ化され、
前記少なくとも一つのプロセッサが、
前記複数の知識領域のそれぞれについて前記知識ベクトルを取得し、
前記複数の知識領域のそれぞれについて前記類似度を算出し、
前記算出された複数の類似度を前記機械学習モデルに入力して、前記関連度を該機械学習モデルから取得する、
付記1または2に記載の情報処理システム。
(付記4)
前記背景知識が、前記対象概念の名称と共に使用される頻度が所定の基準を満たす関連共起語を含む、
付記1~3のいずれか一つに記載の情報処理システム。
(付記5)
前記背景知識が、前記対象概念に対して予め定義されたキーワードを含む、
付記1~4のいずれか一つに記載の情報処理システム。
(付記6)
前記背景知識が、前記対象概念について言及した記事に含まれる単語を含む、
付記1~5のいずれか一つに記載の情報処理システム。
(付記7)
前記背景知識が、前記対象概念の名称の同形異義語と共に使用される頻度が所定の基準を満たす非関連共起語を含む、
付記1~6のいずれか一つに記載の情報処理システム。
(付記8)
少なくとも一つのプロセッサを備える情報処理システムにより実行される情報処理方法であって、
対象テキストの分散表現ベクトルを対象ベクトルとして取得するステップと、
対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得するステップと、
前記対象ベクトルと前記知識ベクトルとの類似度を算出するステップと、
前記類似度に基づいて前記対象テキストと前記対象概念との関連度を算出する機械学習モデルに、前記算出された類似度を入力して、前記対象テキストと前記対象概念との関連度を該機械学習モデルから取得するステップと、
を含む情報処理方法。
(付記9)
対象テキストの分散表現ベクトルを対象ベクトルとして取得するステップと、
対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得するステップと、
前記対象ベクトルと前記知識ベクトルとの類似度を算出するステップと、
前記類似度に基づいて前記対象テキストと前記対象概念との関連度を算出する機械学習モデルに、前記算出された類似度を入力して、前記対象テキストと前記対象概念との関連度を該機械学習モデルから取得するステップと、
をコンピュータに実行させる情報処理プログラム。
【0070】
付記1,8,9によれば、対象テキストと対象概念に関連する背景知識との類似度がまず算出され、機械学習モデルによってその類似度から対象テキストと対象概念との関連度が得られる。対象概念に関連する背景知識との類似度と機械学習モデルとをこのように利用することで、対象テキストが対象概念とどの程度関連しているのかを精度良く推定できる。
【0071】
付記2によれば、知識ベクトルとして代表値を用いることで、背景知識の特徴をより適切に表す知識ベクトルが得られるので、類似度をより正確に求めることができる。その結果、関連度をより精度良く推定できる。
【0072】
付記3によれば、背景知識の複数の観点から算出された複数の類似度に基づいて関連度が得られるので、関連度をより精度良く推定できる。
【0073】
付記4によれば、対象概念の名称と共に使用される頻度が所定の基準を満たす関連共起語と対象テキストとの類似度に基づいて関連度が得られる。その類似度は、関連度に対して正の相関関係を有する蓋然性が高いので、これを用いることで関連度をより精度良く推定できる。
【0074】
付記5によれば、対象概念に対して予め定義されたキーワードと対象テキストとの類似度に基づいて関連度が得られる。その類似度は、関連度に対して正の相関関係を有する蓋然性が高いので、これを用いることで関連度をより精度良く推定できる。
【0075】
付記6によれば、対象概念について言及した記事に含まれる単語と対象テキストとの類似度に基づいて関連度が得られる。その類似度は、関連度に対して正の相関関係を有する蓋然性が高いので、これを用いることで関連度をより精度良く推定できる。
【0076】
付記7によれば、対象概念の名称の同形異義語と共に使用される頻度が所定の基準を満たす非関連共起語と対象テキストとの類似度に基づいて関連度が得られる。その類似度は、関連度に対して負の相関関係を有する蓋然性が高いので、これを用いることで関連度をより精度良く推定できる。
【符号の説明】
【0077】
10…情報処理システム、11…第1ベクトル取得部、11a…第1ベクトル取得モデル、12…第2ベクトル取得部、12a…第2ベクトル取得モデル、13…類似度算出部、14…関連度取得部、14a…関連度取得モデル。
【要約】
【課題】テキストが特定の概念とどの程度関連しているのかを精度良く推定することが望まれている。
【解決手段】情報処理システムは、少なくとも一つのプロセッサを備える。少なくとも一つのプロセッサは、対象テキストの分散表現ベクトルを対象ベクトルとして取得し、対象概念に関連する背景知識の分散表現ベクトルを知識ベクトルとして取得し、対象ベクトルと知識ベクトルとの類似度を算出し、類似度に基づいて対象テキストと対象概念との関連度を算出する機械学習モデルに、算出された類似度を入力して、対象テキストと対象概念との関連度を該機械学習モデルから取得する。
【選択図】
図1