(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-03-06
(45)【発行日】2025-03-14
(54)【発明の名称】情報処理装置、検索方法、及び検索プログラム
(51)【国際特許分類】
G06F 16/335 20190101AFI20250307BHJP
G06F 16/332 20250101ALI20250307BHJP
【FI】
G06F16/335
G06F16/332
(21)【出願番号】P 2024539236
(86)(22)【出願日】2022-09-30
(86)【国際出願番号】 JP2022036728
(87)【国際公開番号】W WO2024069941
(87)【国際公開日】2024-04-04
【審査請求日】2024-06-26
【早期審査対象出願】
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】100116964
【氏名又は名称】山形 洋一
(74)【代理人】
【識別番号】100120477
【氏名又は名称】佐藤 賢改
(74)【代理人】
【識別番号】100135921
【氏名又は名称】篠原 昌彦
(74)【代理人】
【識別番号】100203677
【氏名又は名称】山口 力
(72)【発明者】
【氏名】白藤 大幹
【審査官】早川 学
(56)【参考文献】
【文献】特開2008-234519(JP,A)
【文献】特開2019-159813(JP,A)
【文献】特開2015-106354(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06F 40/00-40/58
(57)【特許請求の範囲】
【請求項1】
検索内容、ユーザのカテゴリであるユーザカテゴリ、置換対象単語とカテゴリと置換を示す情報である置換情報との対応関係を示す置換辞書、ベクトル化モデル、複数の文書データ、及び前記複数の文書データを
前記置換辞書を用いて置換し、ベクトル化することにより得られた複数のベクトルデータを取得する取得部と、
前記置換辞書を用いて、前記検索内容に置換対象単語が含まれているか否かを判定する判定部と、
前記検索内容に置換対象単語が含まれている場合、前記ユーザカテゴリと前記置換辞書とを用いて、前記検索内容に含まれている置換対象単語を前記置換情報に置換する置換部と、
前記ベクトル化モデルを用いて、前記置換情報を含む前記検索内容である置換検索内容をベクトル化し、ベクトル化された前記置換検索内容と、前記複数のベクトルデータのそれぞれとの類似度を算出するベクトル算出部と、
前記類似度の高い順に、前記複数のベクトルデータに対応する前記複数の文書データを並べ、前記複数の文書データを、検索結果として出力する出力部と、
を有する情報処理装置。
【請求項2】
前記出力部は、前記複数のベクトルデータに対応する前記複数の文書データのうち、前記類似度が予め定められた閾値以上のベクトルデータに対応する文書データを、検索結果として出力する、
請求項1に記載の情報処理装置。
【請求項3】
情報処理装置が、
検索内容、ユーザのカテゴリであるユーザカテゴリ、置換対象単語とカテゴリと置換を示す情報である置換情報との対応関係を示す置換辞書、ベクトル化モデル、複数の文書データ、及び前記複数の文書データを
前記置換辞書を用いて置換し、ベクトル化することにより得られた複数のベクトルデータを取得し、前記置換辞書を用いて、前記検索内容に置換対象単語が含まれているか否かを判定し、前記検索内容に置換対象単語が含まれている場合、前記ユーザカテゴリと前記置換辞書とを用いて、前記検索内容に含まれている置換対象単語を前記置換情報に置換し、
前記ベクトル化モデルを用いて、前記置換情報を含む前記検索内容である置換検索内容をベクトル化し、
ベクトル化された前記置換検索内容と、前記複数のベクトルデータのそれぞれとの類似度を算出し、
前記類似度の高い順に、前記複数のベクトルデータに対応する前記複数の文書データを並べ、
前記複数の文書データを、検索結果として出力する、
検索方法。
【請求項4】
情報処理装置に、
検索内容、ユーザのカテゴリであるユーザカテゴリ、置換対象単語とカテゴリと置換を示す情報である置換情報との対応関係を示す置換辞書、ベクトル化モデル、複数の文書データ、及び前記複数の文書データを
前記置換辞書を用いて置換し、ベクトル化することにより得られた複数のベクトルデータを取得し、前記置換辞書を用いて、前記検索内容に置換対象単語が含まれているか否かを判定し、前記検索内容に置換対象単語が含まれている場合、前記ユーザカテゴリと前記置換辞書とを用いて、前記検索内容に含まれている置換対象単語を前記置換情報に置換し、
前記ベクトル化モデルを用いて、前記置換情報を含む前記検索内容である置換検索内容をベクトル化し、
ベクトル化された前記置換検索内容と、前記複数のベクトルデータのそれぞれとの類似度を算出し、
前記類似度の高い順に、前記複数のベクトルデータに対応する前記複数の文書データを並べ、
前記複数の文書データを、検索結果として出力する、
処理を実行させる検索プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、検索方法、及び検索プログラムに関する。
【背景技術】
【0002】
多くの文書に対して検索を行う場合、分散表現が用いられる場合がある。分散表現では、検索キーワードが曖昧でない場合、正確な検索が行われる。しかし、検索キーワードはユーザにより生成される。そのため、検索キーワードが曖昧である場合がある。そこで、キーワードの曖昧性を評価する技術が提案されている(特許文献1を参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記技術では、曖昧性が評価される。曖昧性が評価されても、ユーザが望む検索結果が得られない場合がある。例えば、検索キーワードとして、“機械学習”が入力される。“機械学習”自体には、曖昧性はない。しかし、ユーザが“画像処理”の“機械学習”に関する検索結果を望んでいる場合、検索結果として、“自然言語処理”の“機械学習”に関する検索結果が出力される場合がある。このように、ユーザが望む検索結果が得られない場合がある。
【0005】
本開示の目的は、ユーザが望む検索結果を出力することである。
【課題を解決するための手段】
【0006】
本開示の一態様に係る情報処理装置が提供される。情報処理装置は、検索内容、ユーザのカテゴリであるユーザカテゴリ、置換対象単語とカテゴリと置換を示す情報である置換情報との対応関係を示す置換辞書、ベクトル化モデル、複数の文書データ、及び前記複数の文書データを前記置換辞書を用いて置換し、ベクトル化することにより得られた複数のベクトルデータを取得する取得部と、前記置換辞書を用いて、前記検索内容に置換対象単語が含まれているか否かを判定する判定部と、前記検索内容に置換対象単語が含まれている場合、前記ユーザカテゴリと前記置換辞書とを用いて、前記検索内容に含まれている置換対象単語を前記置換情報に置換する置換部と、前記ベクトル化モデルを用いて、前記置換情報を含む前記検索内容である置換検索内容をベクトル化し、ベクトル化された前記置換検索内容と、前記複数のベクトルデータのそれぞれとの類似度を算出するベクトル算出部と、前記類似度の高い順に、前記複数のベクトルデータに対応する前記複数の文書データを並べ、前記複数の文書データを、検索結果として出力する出力部と、を有する。
【発明の効果】
【0007】
本開示によれば、ユーザが望む検索結果を出力することができる。
【図面の簡単な説明】
【0008】
【
図2】情報処理装置が有するハードウェアを示す図である。
【
図11】ベクトル化モデルの生成処理の例を示すフローチャートである。
【
図12】生成装置が実行する処理の例を示すフローチャートである。
【
図14】情報処理装置の機能を示すブロック図である。
【
図16】情報処理装置が実行する処理の例を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、図面を参照しながら実施の形態を説明する。以下の実施の形態は、例にすぎず、本開示の範囲内で種々の変更が可能である。
【0010】
実施の形態.
図1は、検索システムを示す図である。検索システムは、情報処理装置100、生成装置200、及び端末装置300を含む。情報処理装置100、生成装置200、及び端末装置300は、ネットワーク10を介して通信する。ネットワーク10は、有線ネットワーク又は無線ネットワークである。情報処理装置100と生成装置200とは、1つの装置で実現してもよい。
【0011】
情報処理装置100は、検索方法を実行する装置である。例えば、情報処理装置100は、PC(Personal Computer)、サーバ、スマートフォン、タブレット装置などである。
生成装置200は、様々な情報を生成する装置である。端末装置300は、ユーザが使用する装置である。
【0012】
次に、情報処理装置100が有するハードウェアを説明する。
図2は、情報処理装置が有するハードウェアを示す図である。情報処理装置100は、プロセッサ101、揮発性記憶装置102、不揮発性記憶装置103、通信IF(Interface)104、入出力IF105、及びメディアIF106を有する。
【0013】
プロセッサ101は、情報処理装置100全体を制御する。例えば、プロセッサ101は、CPU(Central Processing Unit)、FPGA(Field Programmable Gate Array)、DSP(Digital Signal Processor)などである。プロセッサ101は、マルチプロセッサでもよい。また、情報処理装置100は、処理回路を有してもよい。さらに、情報処理装置100は、マイクロコンピュータ、又はSoC(System on Chip)を有してもよい。
【0014】
揮発性記憶装置102は、情報処理装置100の主記憶装置である。例えば、揮発性記憶装置102は、RAM(Random Access Memory)である。不揮発性記憶装置103は、情報処理装置100の補助記憶装置である。例えば、不揮発性記憶装置103は、HDD(Hard Disk Drive)、又はSSD(Solid State Drive)である。
通信IF104は、生成装置200と端末装置300と通信する。入出力IF105は、入力装置(例えば、キーボード)と出力装置(例えば、ディスプレイ)と接続する。メディアIF106は、記録媒体を通信する。例えば、記録媒体は、CD(Compact Disc)、DVD(Digital Versatile Disc)、又はフラッシュメモリである。
【0015】
生成装置200及び端末装置300は、情報処理装置100と同様に、プロセッサ、揮発性記憶装置、不揮発性記憶装置、通信IF、入出力IF、及びメディアIFを有する。
【0016】
次に、情報処理装置100の機能を説明する前に、生成装置200と端末装置300の機能を説明する。
図3は、生成装置の機能を示すブロック図である。生成装置200は、記憶部210、通信部220、及び制御部230を有する。制御部230は、取得部231、決定部232、置換部233、前処理部234、生成部235、及びベクトル化部236を含む。
【0017】
記憶部210は、生成装置200が有する揮発性記憶装置又は不揮発性記憶装置に確保した記憶領域として実現してもよい。
通信部220及び制御部230の一部又は全部は、生成装置200が有する処理回路によって実現してもよい。また、通信部220及び制御部230の一部又は全部は、生成装置200が有するプロセッサが実行するプログラムのモジュールとして実現してもよい。
【0018】
記憶部210は、カテゴリ情報211、ユーザ情報212、モデル情報213、置換対象単語情報214、置換辞書215、文書テーブル216、及びベクトル情報217を記憶する。カテゴリ情報211、ユーザ情報212、モデル情報213、置換対象単語情報214、置換辞書215、文書テーブル216、及びベクトル情報217の詳細は、後で説明する。
【0019】
通信部220は、情報処理装置100と端末装置300と通信する。
取得部231は、カテゴリ情報211を記憶部210から取得する。カテゴリ情報211の例を示す。
【0020】
図4は、カテゴリ情報の例を示す図である。カテゴリ情報211は、カテゴリID(identifier)とカテゴリとの項目を有する。
【0021】
取得部231は、ユーザ情報212を記憶部210から取得する。
【0022】
図5は、ユーザ情報の例を示す図である。ユーザ情報212は、ユーザID、属性情報などの項目を有する。例えば、属性情報は、ユーザの専門分野を示す。
【0023】
決定部232は、カテゴリ情報211とユーザ情報212と用いて、属性情報に対応するカテゴリを決定する。例えば、決定部232は、属性情報が示す“画像”に基づいて、当該属性情報に対応するカテゴリ“画像処理”を決定する。決定部232は、決定されたカテゴリを属性情報に対応付ける。例えば、決定部232は、属性情報“画像”にカテゴリ“画像処理”を対応付ける。
【0024】
また、決定部232は、学習済モデルを用いて、属性情報に対応するカテゴリを推定してもよい。当該学習済モデルは、モデル情報213に含まれている。モデル情報213の例を示す。
【0025】
図6は、モデル情報の例を示す図である。モデル情報213は、モデルID、モデル名、及び学習済モデルの項目を有する。決定部232は、属性カテゴリ推定モデルである学習済モデルを用いて、属性情報に対応するカテゴリを推定してもよい。決定部232は、推定されたカテゴリを属性情報に対応付ける。
【0026】
取得部231は、置換対象単語情報214を記憶部210から取得する。置換対象単語情報214の例を示す。
【0027】
図7は、置換対象単語情報の例を示す図である。置換対象単語情報214は、置換対象単語ID及び置換対象単語の項目を有する。ここで、置換対象単語は、曖昧語と呼んでもよい。
【0028】
置換部233は、ユーザ情報212のカテゴリと置換対象単語情報214とを用いて、置換辞書215を生成する。置換辞書215の例を示す。
【0029】
図8は、置換辞書の例を示す図である。置換辞書215は、置換対象単語とカテゴリと置換情報との対応関係を示す情報である。具体的には、置換辞書215は、置換対象単語、カテゴリ、及び置換情報の項目を有する。置換情報は、置換対象単語及びカテゴリに基づいて、生成されてもよい。例えば、置換部233は、置換対象単語“機械学習”及びカテゴリ“画像処理”に基づいて、置換情報“機械学習#画像処理”を生成する。置換対象単語及びカテゴリに基づいて置換情報が生成される場合を説明した。置換情報は、異なる情報で表されてもよい。すなわち、置換情報は、置換を示す情報であれば、どのような情報でもよい。
【0030】
取得部231は、文書テーブル216を記憶部210から取得する。文書テーブル216の例を示す。
【0031】
図9は、文書テーブルの例を示す図である。文書テーブル216は、文書ID、文書データなどの項目を有する。
【0032】
前処理部234は、文書データに対して、形態素解析を行う。前処理部234は、形態素解析後の文書データを文書テーブル216に登録する。また、前処理部234は、正規化などの前処理を実行してもよい。
【0033】
前処理部234は、モデル情報213に登録されている文書カテゴリ推定モデルを用いて、文書データに対応するカテゴリを推定する。前処理部234は、推定されたカテゴリを文書データに対応付ける。これにより、文書テーブル216には、カテゴリが登録される。
また、ユーザは、文書データに対応するカテゴリを解析してもよい。前処理部234は、解析によって得られたカテゴリを文書データに対応付けてもよい。
【0034】
置換部233は、置換辞書215を用いて、形態素解析後の文書データに含まれている置換対象単語を置換情報に置換する。例えば、置換部233は、形態素解析後の文書データに含まれている置換対象単語“機械学習”を、置換情報“機械学習#自然言語処理”に置換する。
【0035】
生成部235は、文書テーブル216に含まれている置換後の文書データ(以下、置換文書データ)を用いて、学習済モデルを生成する。生成部235は、生成された学習済モデルをモデル情報213に登録する。なお、当該学習済モデルの名称は、ベクトル化モデルである。
【0036】
ベクトル化部236は、モデル情報213に登録されているベクトル化モデルを用いて、置換文書データをベクトル化する。ベクトル化部236は、ベクトル化により得られたベクトルデータを、ベクトル情報217に登録する。ベクトル情報217の例を示す。
【0037】
図10は、ベクトル情報の例を示す図である。ベクトル情報217は、文書ID及びベクトルデータの項目を有する。
【0038】
次に、ベクトル化モデルの生成処理を、フローチャートを用いて、説明する。
図11は、ベクトル化モデルの生成処理の例を示すフローチャートである。
(ステップS11)取得部231は、文書テーブル216を記憶部210から取得する。
(ステップS12)前処理部234は、文書データに対して、形態素解析を行う。
(ステップS13)前処理部234は、文書カテゴリ推定モデルを用いて、文書データに対応するカテゴリを推定する。
(ステップS14)置換部233は、置換辞書215を用いて、形態素解析後の文書データに含まれている置換対象単語を置換情報に置換する。
(ステップS15)生成部235は、文書テーブル216に含まれている置換文書データを用いて、ベクトル化モデルを生成する。
【0039】
次に、生成装置200が実行する処理を、フローチャートを用いて、説明する。
図12は、生成装置が実行する処理の例を示すフローチャートである。
(ステップS21)取得部231は、カテゴリ情報211とユーザ情報212を記憶部210から取得する。
(ステップS22)決定部232は、カテゴリ情報211とユーザ情報212と用いて、属性情報に対応するカテゴリを決定する。
(ステップS23)決定部232は、決定されたカテゴリを属性情報に対応付ける。
(ステップS24)取得部231は、文書テーブル216を記憶部210から取得する。
【0040】
(ステップS25)ベクトル化部236は、1つの置換文書データを選択する。
(ステップS26)ベクトル化部236は、ベクトル化モデルを用いて、選択された置換文書データをベクトル化する。
(ステップS27)ベクトル化部236は、ベクトル化により得られたベクトルデータを、ベクトル情報217に登録する。
(ステップS28)ベクトル化部236は、全ての置換文書データを選択したか否かを判定する。全ての置換文書データを選択した場合、処理は、終了する。全ての置換文書データを選択していない場合、処理は、ステップS25に進む。
【0041】
次に、端末装置300が有する機能を説明する。
図13は、端末装置の機能を示すブロック図である。端末装置300は、通信部310、制御部320、入力部330、表示部340、及び記憶部350を有する。制御部320は、取得部321、検索内容受信部322、送信部323、結果受信部324、及び表示制御部325を含む。
【0042】
通信部310及び制御部320の一部又は全部は、端末装置300が有する処理回路によって実現してもよい。また、通信部310及び制御部320の一部又は全部は、端末装置300が有するプロセッサが実行するプログラムのモジュールとして実現してもよい。 例えば、入力部330は、タッチパネルなどで実現される。例えば、表示部340は、ディスプレイで実現される。記憶部350は、端末装置300が有する揮発性記憶装置又は不揮発性記憶装置に確保した記憶領域として実現してもよい。
【0043】
通信部310は、情報処理装置100と生成装置200と通信する。
取得部321は、ユーザIDを取得する。例えば、取得部321は、ユーザが入力したユーザIDを取得する。取得部321は、ユーザIDを記憶部350に格納する。
検索内容受信部322は、ユーザが入力した検索内容を受信する。検索内容は、検索キーワード及びクエリの意味を含む。検索内容受信部322は、検索内容を記憶部350に格納する。
送信部323は、通信部310を介して、ユーザIDと検索内容とを情報処理装置100に送信する。
結果受信部324は、後述するように、検索結果を情報処理装置100から受信する。結果受信部324は、検索結果を記憶部350に格納する。
表示制御部325は、表示部340に検索結果を表示する。
【0044】
次に、情報処理装置100が有する機能を説明する。
図14は、情報処理装置の機能を示すブロック図である。情報処理装置100は、記憶部110、通信部120、取得部130、判定部140、置換部150、ベクトル算出部160、及び出力部170を有する。
【0045】
記憶部110は、揮発性記憶装置102又は不揮発性記憶装置103に確保した記憶領域として実現してもよい。
通信部120、取得部130、判定部140、置換部150、ベクトル算出部160、及び出力部170の一部又は全部は、処理回路によって実現してもよい。また、通信部120、取得部130、判定部140、置換部150、ベクトル算出部160、及び出力部170の一部又は全部は、プロセッサ101が実行するプログラムのモジュールとして実現してもよい。例えば、プロセッサ101が実行するプログラムは、検索プログラムとも言う。例えば、検索プログラムは、記録媒体に記録されている。
【0046】
記憶部110は、ユーザ情報212、モデル情報213、置換辞書215、及びベクトル情報217を記憶してもよい。例えば、ユーザ情報212、モデル情報213、置換辞書215、及びベクトル情報217は、取得部130により、生成装置200から取得される。そして、取得部130は、ユーザ情報212、モデル情報213、置換辞書215、及びベクトル情報217を記憶部110に格納する。
【0047】
記憶部110は、検索内容情報111を記憶してもよい。検索内容情報111は、後で説明する。
通信部120は、生成装置200と端末装置300と通信する。
【0048】
取得部130は、ユーザIDと検索内容とを端末装置300から取得する。ここで、ユーザは、ユーザIDと検索内容とを情報処理装置100に入力してもよい。取得部130は、ユーザの入力操作により、ユーザIDと検索内容とを取得してもよい。
【0049】
取得部130は、ユーザIDと検索内容とを検索内容情報111に登録する。また、取得部130は、検索内容を取得した日時を検索内容情報111に登録する。取得部130は、ユーザ情報212を参照し、ユーザIDに対応するカテゴリを取得する。取得部130は、取得されたカテゴリを検索内容情報111に登録する。ここで、ユーザIDに対応するカテゴリは、ユーザカテゴリとも言う。つまり、ユーザカテゴリは、ユーザのカテゴリである。ユーザは、検索者と表現してもよい。取得部130は、ユーザの入力操作により、ユーザカテゴリを取得してもよい。
【0050】
取得部130は、生成装置200などの外部装置又は記憶部110から置換辞書215を取得する。
【0051】
判定部140は、置換辞書215を用いて、検索内容に置換対象単語が含まれているか否かを判定する。また、判定部140は、検索内容に対して形態素解析を行い、形態素解析後の検索内容に置換対象単語が含まれているか否かを判定してもよい。
【0052】
置換部150は、検索内容に置換対象単語が含まれている場合、ユーザIDに対応するカテゴリと置換辞書215とを用いて、置換対象単語を置換情報に置換する。例えば、置換対象単語が“機械学習”であり、かつユーザIDに対応するカテゴリが“画像処理”である場合、置換部150は、置換対象単語“機械学習”を、置換情報“機械学習#画像処理”に置換する。置換部150は、置換情報を含む検索内容である置換検索内容を検索内容情報111に登録する。ここで、検索内容情報111の例を示す。
【0053】
図15は、検索内容情報の例を示す図である。検索内容情報111は、検索ID、ユーザID、カテゴリ、検索内容、置換検索内容、及び日時の項目を有する。
【0054】
取得部130は、生成装置200などの外部装置又は記憶部110からベクトル化モデルを取得する。
【0055】
取得部130は、生成装置200などの外部装置又は記憶部110からベクトル情報217を取得する。すなわち、取得部130は、複数のベクトルデータを取得する。上記したように、複数のベクトルデータは、複数の文書データを置換し、ベクトル化することにより得られたデータである。詳細には、複数のベクトルデータは、複数の文書データの一部を置換し、ベクトル化することにより得られたデータである。
【0056】
取得部130は、複数のベクトルデータに対応する複数の文書データを取得する。例えば、取得部130は、生成装置200などの外部装置から当該複数の文書データを取得する。例えば、取得部130は、ベクトル情報217に含まれている文書IDに基づいて、当該複数の文書データを取得してもよい。
【0057】
ベクトル算出部160は、ベクトル化モデルを用いて、置換検索内容をベクトル化する。ベクトル算出部160は、ベクトル化された置換検索内容と、ベクトル情報217に含まれている複数のベクトルデータのそれぞれとの類似度を算出する。例えば、類似度が算出される場合、コサイン類似度が用いられる。具体的には、ベクトル算出部160は、コサイン類似度を用いて、ベクトル化された置換検索内容と、ベクトルデータ“DOCVE1”との類似度を算出する。また、ベクトル算出部160は、コサイン類似度を用いて、ベクトル化された置換検索内容と、ベクトルデータ“DOCVE2”との類似度を算出する。このように、ベクトル算出部160は、複数のベクトルデータのそれぞれに対応する類似度を算出する。
【0058】
出力部170は、類似度の高い順に、複数のベクトルデータに対応する複数の文書データを並べる。出力部170は、複数の文書データを、検索結果として出力する。例えば、出力部170は、複数の文書データを端末装置300に出力する。また、例えば、出力部170は、複数の文書データを情報処理装置100のディスプレイに出力する。出力部170は、複数のベクトルデータに対応する複数の文書データのうち、類似度が予め定められた閾値以上のベクトルデータに対応する文書データを、検索結果として出力してもよい。これにより、情報処理装置100は、ユーザがより望む検索結果を出力することができる。
【0059】
次に、情報処理装置100が実行する処理を、フローチャートを用いて、説明する。
図16は、情報処理装置が実行する処理の例を示すフローチャートである。
(ステップS31)取得部130は、ユーザIDと検索内容とを端末装置300から取得する。
(ステップS32)取得部130は、ユーザ情報212を参照し、ユーザIDに対応するカテゴリを取得する。
(ステップS33)判定部140は、置換辞書215を用いて、検索内容に置換対象単語が含まれているか否かを判定する。検索内容に置換対象単語が含まれている場合、処理は、ステップS34に進む。検索内容に置換対象単語が含まれていない場合、処理は、ステップS37に進む。
【0060】
(ステップS34)置換部150は、ユーザIDに対応するカテゴリと置換辞書215とを用いて、置換対象単語を置換情報に置換する。
(ステップS35)ベクトル算出部160は、ベクトル化モデルを用いて、置換情報を含む検索内容である置換検索内容をベクトル化する。
(ステップS36)ベクトル算出部160は、ベクトル化された置換検索内容と、ベクトル情報217に含まれている複数のベクトルデータのそれぞれとの類似度を算出する。そして、処理は、ステップS39に進む。
【0061】
(ステップS37)ベクトル算出部160は、検索内容をベクトル化する。
(ステップS38)ベクトル算出部160は、ベクトル化された検索内容と、ベクトル情報217に含まれている複数のベクトルデータのそれぞれとの類似度を算出する。
(ステップS39)出力部170は、類似度の高い順に、複数のベクトルデータに対応する複数の文書データを並べる。出力部170は、複数の文書データを、検索結果として端末装置300に出力する。
これにより、端末装置300は、検索結果を表示できる。
【0062】
実施の形態によれば、情報処理装置100は、ユーザカテゴリに基づく検索結果を出力する。そのため、情報処理装置100は、ユーザが望む検索結果を出力することができる。
【符号の説明】
【0063】
10 ネットワーク、 100 情報処理装置、 101 プロセッサ、 102 揮発性記憶装置、 103 不揮発性記憶装置、 104 通信IF、 105 入出力IF、 106 メディアIF、 110 記憶部、 111 検索内容情報、 120 通信部、 130 取得部、 140 判定部、 150 置換部、 160 ベクトル算出部、 170 出力部、 200 生成装置、 210 記憶部、 211 カテゴリ情報、 212 ユーザ情報、 213 モデル情報、 214 置換対象単語情報、 215 置換辞書、 216 文書テーブル、 217 ベクトル情報、 220 通信部、 230 制御部、 231 取得部、 232 決定部、 233 置換部、 234 前処理部、 235 生成部、 236 ベクトル化部、 300 端末装置、 310 通信部、 320 制御部、 321 取得部、 322 検索内容受信部、 323 送信部、 324 結果受信部、 325 表示制御部、 330 入力部、 340 表示部、 350 記憶部。