(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-02
(45)【発行日】2022-12-12
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理プログラム
(51)【国際特許分類】
G06F 16/9035 20190101AFI20221205BHJP
G06Q 50/10 20120101ALI20221205BHJP
G06Q 30/02 20120101ALI20221205BHJP
【FI】
G06F16/9035
G06Q50/10
G06Q30/02 470
(21)【出願番号】P 2021039603
(22)【出願日】2021-03-11
【審査請求日】2022-01-20
【早期審査対象出願】
(73)【特許権者】
【識別番号】319013263
【氏名又は名称】ヤフー株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】山口 寛
(72)【発明者】
【氏名】太田 芳行
【審査官】北村 学
(56)【参考文献】
【文献】特開2007-148476(JP,A)
【文献】特開2013-092830(JP,A)
【文献】特開2015-149024(JP,A)
【文献】特開2020-064412(JP,A)
【文献】特開2020-064498(JP,A)
【文献】米国特許出願公開第2015/0347436(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
IPC G06F 16/00 - 16/958
G06Q 30/02
G06Q 50/10
(57)【特許請求の範囲】
【請求項1】
あらかじめ所定期間における利用者
による端末装置の
入力インタフェースに対する検索操作パターンを抽出し、
当該検索操作パターンと前記利用者の属性情報
とに基づく
、キーワード入力に係る所定の検索行動パターンを推定した上で、不特定多数の検索者に検索されたキーワードに関する検索情報を提供する情報提供サービスを利用する
他の利用者の検索履歴に関する検索情報と前記所定の検索行動パターンとに基づいて、前記利用者が検索対象のキーワードに関する検索結果を絞り込む絞り込み条件を前記検索対象のキーワードごとに推定する推定部と、
前記推定部によって推定された前記絞り込み条件によって絞り込まれた前記検索結果をあらかじめ記憶する記憶部と、
前記推定部によって推定された前記絞り込み条件によって絞り込まれた前記検索結果の表示要求を前記利用者から受け付けた場合に、前記記憶部にあらかじめ記憶された前記検索結果を表示する表示部と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記推定部は、
前記利用者の検索履歴に関する検索情報に基づいて、推定した前記絞り込み条件の優先度の高さを前記検索対象のキーワードごとに推定し、
前記記憶部は、
前記推定部によって推定された前記優先度の高さが所定の閾値を超える前記絞り込み条件によって絞り込まれた前記検索結果をあらかじめ記憶する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記推定部は、
前記絞り込み条件として、前記利用者によって前記検索対象のキーワードと同時に検索される共起キーワードを前記検索対象のキーワードごとに推定し、
前記記憶部は、
前記推定部によって推定された前記共起キーワードによって絞り込まれた前記検索結果をあらかじめ記憶する、
ことを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記推定部は、
前記絞り込み条件として、前記検索対象のキーワードを検索した検索者の属性情報のうち、前記利用者によって選択される前記検索者の属性情報を前記検索対象のキーワードごとに推定し、
前記記憶部は、
前記推定部によって推定された前記検索者の属性情報によって絞り込まれた前記検索結果をあらかじめ記憶する、
ことを特徴とする請求項1~3のいずれか1つに記載の情報処理装置。
【請求項5】
前記推定部は、
前記絞り込み条件として、前記検索対象のキーワードを検索した検索者の性別のうち、前記利用者によって選択される前記検索者の性別を前記検索対象のキーワードごとに推定し、
前記記憶部は、
前記推定部によって推定された前記検索者の性別によって絞り込まれた前記検索結果をあらかじめ記憶する、
ことを特徴とする請求項4に記載の情報処理装置。
【請求項6】
前記推定部は、
前記絞り込み条件として、前記検索対象のキーワードを検索した検索者の年代のうち、前記利用者によって選択される前記検索者の年代を前記検索対象のキーワードごとに推定し、
前記記憶部は、
前記推定部によって推定された前記検索者の年代によって絞り込まれた前記検索結果をあらかじめ記憶する、
ことを特徴とする請求項4または5に記載の情報処理装置。
【請求項7】
前記推定部は、
前記絞り込み条件として、前記検索対象のキーワードを検索した検索者の居住地域のうち、前記利用者によって選択される前記検索者の居住地域を前記検索対象のキーワードごとに推定し、
前記記憶部は、
前記推定部によって推定された前記検索者の居住地域によって絞り込まれた前記検索結果をあらかじめ記憶する、
ことを特徴とする請求項4~6のいずれか1つに記載の情報処理装置。
【請求項8】
前記推定部は、
前記絞り込み条件として、前記検索対象のキーワードが検索された検索日のうち、前記利用者によって選択される前記検索日を前記検索対象のキーワードごとに推定し、
前記記憶部は、
前記推定部によって推定された前記検索日によって絞り込まれた前記検索結果をあらかじめ記憶する、
ことを特徴とする請求項1~7のいずれか1つに記載の情報処理装置。
【請求項9】
前記推定部は、
前記検索対象のキーワードに関する検索結果として、前記検索対象のキーワードと共起関係を有するキーワード同士の共起関係を可視化したキーワードマップに関する情報を絞り込む絞り込み条件を前記検索対象のキーワードごとに推定し、
前記記憶部は、
前記推定部によって推定された前記絞り込み条件によって絞り込まれた前記キーワードマップに関する情報をあらかじめ記憶し、
前記表示部は、
前記推定部によって推定された前記絞り込み条件によって絞り込まれた前記キーワードマップに関する情報の表示要求を前記利用者から受け付けた場合に、前記記憶部にあらかじめ記憶された前記キーワードマップに関する情報を表示する、
ことを特徴とする請求項1~8のいずれか1つに記載の情報処理装置。
【請求項10】
コンピュータが実行する情報処理方法であって、
あらかじめ所定期間における利用者
による端末装置の
入力インタフェースに対する検索操作パターンを抽出し、
当該検索操作パターンと前記利用者の属性情報
とに基づく
、キーワード入力に係る所定の検索行動パターンを推定した上で、不特定多数の検索者に検索されたキーワードに関する検索情報を提供する情報提供サービスを利用する
他の利用者の検索履歴に関する検索情報と前記所定の検索行動パターンとに基づいて、前記利用者が検索対象のキーワードに関する検索結果を絞り込む絞り込み条件を前記検索対象のキーワードごとに推定する推定工程と、
前記推定工程によって推定された前記絞り込み条件によって絞り込まれた前記検索結果をあらかじめ記憶する記憶工程と、
前記推定工程によって推定された前記絞り込み条件によって絞り込まれた前記検索結果の表示要求を前記利用者から受け付けた場合に、前記記憶工程に
おいてあらかじめ記憶された前記検索結果を表示する表示工程と、
を含むことを特徴とする情報処理方法。
【請求項11】
あらかじめ所定期間における利用者
による端末装置の
入力インタフェースに対する検索操作パターンを抽出し、
当該検索操作パターンと前記利用者の属性情報
とに基づく
、キーワード入力に係る所定の検索行動パターンを推定した上で、不特定多数の検索者に検索されたキーワードに関する検索情報を提供する情報提供サービスを利用する
他の利用者の検索履歴に関する検索情報と前記所定の検索行動パターンとに基づいて、前記利用者が検索対象のキーワードに関する検索結果を絞り込む絞り込み条件を前記検索対象のキーワードごとに推定する推定手順と、
前記推定手順によって推定された前記絞り込み条件によって絞り込まれた前記検索結果をあらかじめ記憶する記憶手順と、
前記推定手順によって推定された前記絞り込み条件によって絞り込まれた前記検索結果の表示要求を前記利用者から受け付けた場合に、前記記憶手順に
おいてあらかじめ記憶された前記検索結果を表示する表示手順と、
をコンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【0002】
近年、インターネットの飛躍的な普及に伴い、例えば、インターネット上の種々の情報を用いた分析に関する技術が提供されている。例えば、利用者が入力した検索クエリに基づいて、所定の事業者が提供する対象に対するニーズに関する情報を抽出する技術が提案されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術では、有用な情報を得ることができるとは限らない。例えば、上記の従来技術では、所定の事業者が提供する対象に対するニーズに関する情報を抽出しているに過ぎないので、所定の事業者が提供する対象に対する潜在的なニーズに関する情報を視覚的に適切に提示できるとは言えない。
【0005】
本願は、上記に鑑みてなされたものであって、有用な情報をより高速に提供することができる情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本願に係る情報処理装置は、不特定多数の検索者に検索されたキーワードに関する検索情報を提供する情報提供サービスを利用する利用者の検索履歴に関する検索情報に基づいて、前記利用者が検索対象のキーワードに関する検索結果を絞り込む絞り込み条件を前記検索対象のキーワードごとに推定する推定部と、前記推定部によって推定された前記絞り込み条件によって絞り込まれた前記検索結果をあらかじめ記憶する記憶部と、前記推定部によって推定された前記絞り込み条件によって絞り込まれた前記検索結果の表示要求を前記利用者から受け付けた場合に、前記記憶部にあらかじめ記憶された前記検索結果を表示する表示部と、を備えることを特徴とする。
【発明の効果】
【0007】
実施形態の一態様によれば、有用な情報をより高速に提供することができるといった効果を奏する。
【図面の簡単な説明】
【0008】
【
図1】
図1は、実施形態に係る情報処理の概要を示す図である。
【
図2】
図2は、実施形態に係る情報処理システムの構成例を示す図である。
【
図3】
図3は、実施形態に係る端末装置の構成例を示す図である。
【
図4】
図4は、実施形態に係る情報提供装置の構成例を示す図である。
【
図5】
図5は、利用者情報データベースの一例を示す図である。
【
図6】
図6は、履歴情報データベースの一例を示す図である。
【
図7】
図7は、キーワード情報データベースの一例を示す図である。
【
図8】
図8は、実施形態に係る処理手順を示すフローチャートである。
【
図9】
図9は、ハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0009】
以下に、本願に係る情報処理装置、情報処理方法及び情報処理プログラムを実施するための形態(以下、「実施形態」と記載する)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法及び情報処理プログラムが限定されるものではない。また、以下の実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0010】
また、以下の実施形態における「利用者U」とは、不特定多数の利用者(不特定多数の検索者ともいう)に検索されたキーワードに関する検索情報を提供する情報提供サービスDS1を利用する利用者(情報提供サービスDS1の利用者ともいう)であるとともに、不特定多数の利用者でもある利用者のことを指す。
【0011】
〔1.情報処理方法の概要〕
まず、
図1を参照し、実施形態に係る情報提供装置が行う情報処理方法の概要について説明する。
図1は、実施形態に係る情報処理方法の概要を示す説明図である。なお、
図1では、情報提供装置100が、利用者Uから受け付けた検索対象のキーワードに関するキーワードマップの表示速度を向上させる場合を例に挙げて説明する。
【0012】
ここで、キーワードマップについて簡単に説明する。検索対象のキーワードに関するキーワードマップとは、検索対象のキーワードと一緒に検索された共起キーワード同士の共起関係を可視化した情報である。例えば、
図1の左側に示すキーワードマップKM1は、検索対象のキーワードが化粧品会社の名称「化粧品会社#1」である場合に、検索対象のキーワードである「化粧品会社#1」と一緒に検索された共起キーワード同士の共起関係を可視化したものである。具体的には、「化粧品会社#1」と一緒に検索された共起キーワードである「商品名A」、「商品名B」、「成分」、「発売日」、「化粧水」、「肌荒れ」、「うるおい」、「値段」といった共起キーワードを円形のノードで示す。ノードの大きさは、共起キーワードの検索ボリューム(検索数)を示す。また、ノード間を結ぶリンクは、共起キーワード同士の共起関係を示している。
【0013】
図1の説明に先立って、情報提供装置100が提供する情報提供サービスDS1について説明する。情報提供サービスDS1は、不特定多数の利用者に検索されたキーワードに関する検索情報(例えば、キーワードマップ)を提供する。言い換えると、情報提供サービスDS1は、検索クエリの分析ツールを提供する。このようなサービスの性質から、情報提供サービスDS1の利用者は、一般的な検索サービスの利用者とはサービスの利用の仕方が異なる。具体的には、情報提供サービスDS1の利用者は、自身が所属する業界や市場のトレンドを分析する目的で情報提供サービスDS1を利用するケースが多い。
【0014】
例えば、メディア業界で働くある利用者は、情報提供サービスDS1を利用して、メディアが対象とするターゲット層(例えば、若い女性向けであれば、20代の女性など)に関する絞り込み条件で絞った検索対象のキーワードに関するキーワードマップを分析する。また、例えば、広告業界で働くある利用者は、情報提供サービスDS1を利用して、トレンドを分析したい期間(例えば、過去1週間など)に関する絞り込み条件で絞った検索対象のキーワードに関するキーワードマップの時系列変化を分析する。このように、情報提供サービスDS1の利用者は、自身が所属する業界や市場のトレンドを分析する目的で、情報提供サービスDS1を用いて検索対象のキーワードに関する検索動向を分析する。
【0015】
このように、情報提供サービスDS1は、検索クエリの分析ツールであるという点に特徴がある。したがって、情報提供サービスDS1を提供する情報提供装置100は、利用者から検索対象のキーワードに関する検索結果(例えば、キーワードマップ)の表示要求を受け付けるだけでなく、利用者が分析を望む様々な分析軸に対応する絞り込み条件によって、検索対象のキーワードに関する検索結果を絞り込んだ検索結果の表示要求を受け付ける。また、情報提供装置100が利用者から受け付ける絞り込み条件には、利用者が所属する業界ごとに一定の傾向が見られる。さらに言うと、情報提供装置100が利用者から受け付ける絞り込み条件には、情報提供サービスDS1における利用者の過去の検索履歴ごとに利用者ごとに一定の傾向が見られる。
【0016】
一般的に、キャッシュサーバは、利用者からリクエストされた検索結果を保存する。これにより、キャッシュサーバは、利用者から再び同じ検索結果の表示要求を受け付けた場合に、あらかじめ保存しておいた検索結果を表示することで、検索結果を高速に表示することを可能にする。これに対して、情報提供装置100は、利用者から検索対象のキーワードとともに、利用者が分析を望む分析軸に対応する絞り込み条件によって絞り込まれた検索結果の表示要求を受け付けることが多い。そこで、情報提供装置100は、情報提供サービスDS1における利用者の過去の検索履歴に基づいて、キャッシュに持つべき絞り込み条件を検索対象のキーワードごとに推定する。そして、情報提供装置100は、推定したキャッシュに持つべき絞り込み条件によって絞り込まれた検索結果を生成し、生成した絞り込まれた検索結果をキャッシュする。さらに、情報提供装置100は、情報提供サービスDS1における利用者の過去の検索履歴に基づいて、キャッシュに持つべき絞り込み条件の優先度を推定して、優先度が高い絞り込み条件によって絞り込まれた検索結果を優先的にキャッシュする。
【0017】
これにより、情報提供装置100は、絞り込まれた検索結果をあらかじめ生成して記憶しているため、絞り込み条件を受け付けてから絞り込まれた検索結果を生成して表示する場合と比べて、絞り込まれた検索結果を高速に表示することができる。したがって、情報提供装置100は、有用な情報をより高速に提供することができる。
【0018】
ここから、
図1の説明に戻る。
図1に示すように、情報処理システム1は、端末装置10と情報提供装置100とを含む。端末装置10と情報提供装置100とは、それぞれネットワークN(
図2参照)を介して有線又は無線で互いに通信可能に接続される。
【0019】
端末装置10は、利用者Uにより使用されるスマートフォンやタブレット等のスマートデバイスであり、4G(Generation)やLTE(Long Term Evolution)等の無線通信網を介して任意のサーバ装置と通信を行うことができる携帯端末装置である。また、端末装置10は、液晶ディスプレイ等の画面であって、タッチパネルの機能を有する画面を有し、利用者から指やスタイラス等によりタップ操作、スライド操作、スクロール操作等、コンテンツ等の表示データに対する各種の操作を受付ける。なお、画面のうち、コンテンツが表示されている領域上で行われた操作を、コンテンツに対する操作としてもよい。また、端末装置10は、スマートデバイスのみならず、デスクトップPC(Personal Computer)やノートPC等の情報処理装置であってもよい。
【0020】
本実施形態では、端末装置10は、情報提供装置100と連携し、情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上において、利用者Uから入力されたキーワードに基づいてカテゴリの共起ネットワークを示すキーワードマップを表示する。カテゴリの共起ネットワークを示すキーワードマップとは、複数のキーワードのそれぞれを適当なカテゴリに分類した上で、キーワード同士の共起関係が視覚的に認識できるようにマッピングした共起キーワードのマップを示す。
【0021】
なお、共起キーワードとは、検索対象のキーワードと同時に又は近い時間に検索されたキーワードである。例えば、共起キーワードは、検索対象のキーワードの関連キーワードや、絞り込み検索に用いられたキーワード等である。検索対象のキーワードと同時に又は近い時間に検索される回数が多いキーワードほど、検索対象のキーワードと強い共起関係にある共起キーワードである。共起キーワードは、1つに限らず、複数であってもよい。例えば、3つ以上のキーワードが同時に又は近い時間に場合には、2つ目以降のキーワードを、1つ目のキーワードの共起キーワードとしてもよい。
【0022】
例えば、端末装置10は、
図1に示すように、同時検索(同時入力)されたキーワードや、検索された時間の近さ等から、各キーワードを示すノードの連結でキーワード同士の共起関係を示す共起キーワードのマップを生成して表示する。共起関係にあるキーワード同士は近い位置にマッピングされる。ここでは、キーワードを示すノードは、図形(円形や矩形等)やアイコン等で表示する。また、キーワードの検索ボリュームは、ノードの大きさ(サイズ)で表現する。また、キーワード同士の共起関係は、ノード間を結ぶリンクで表現する。
【0023】
情報提供装置100は、不特定多数の利用者に検索されたキーワードに関する検索情報を提供する情報提供サービスDS1を提供する情報処理装置である。情報提供装置100は、各利用者Uの端末装置10と連携し、各利用者Uの端末装置10に対して、各種アプリケーション(アプリ)等に対するAPIサービス等と、各種データを提供する情報処理装置であり、サーバ装置やクラウドシステム等により実現される。
【0024】
本実施形態では、情報提供装置100は、事前に、不特定多数の利用者により検索エンジン等で検索が行われたキーワードごとに、該当するカテゴリに分類し、それぞれの検索ボリューム(検索数)を測定しておく。このとき、情報提供装置100は、事前に、機械学習により、キーワードを入力すると適当なカテゴリに分類して出力する学習済みモデルを作成してもよい。また、情報提供装置100は、同時に又は近い時間に検索されたキーワード同士を共起キーワードと推定する。さらに、情報提供装置100は、キーワード同士が同時又は近い時間に検索された回数(頻度)や、検索された時間の近さ等から、キーワード同士の共起度を算出してもよい。そして、利用者Uが端末装置10を操作して共起キーワードの地図マッピング用のWebサイト又はアプリを利用した際に、キーワードごとのカテゴリや検索ボリューム、及びキーワード同士の共起関係に関する情報を提供する。
【0025】
また、情報提供装置100は、各利用者Uの端末装置10に対して、オンラインで何らかのWebサービスを提供する情報処理装置であってもよい。例えば、情報提供装置100は、Webサービスとして、インターネット接続、検索サービス、SNS(Social Networking Service)、電子商取引、電子決済、オンラインゲーム、オンラインバンキング、オンライントレーディング、宿泊・チケット予約、動画・音楽配信等のサービスを提供してもよい。実際には、情報提供装置100は、上記のようなWebサービスを提供する各種サーバと連携し、Webサービスを仲介してもよい。
【0026】
なお、情報提供装置100は、利用者Uに関する各種情報を取得可能である。例えば、情報提供装置100は、利用者Uの性別、年代、居住地域といった利用者Uの属性に関する情報を取得する。そして、情報提供装置100は、利用者Uを示す識別情報(利用者ID等)とともに利用者Uの属性に関する情報を記憶して管理する。
【0027】
また、情報提供装置100は、利用者Uの端末装置10から、あるいは利用者ID等に基づいて各種サーバ等から、利用者Uの行動を示す各種の履歴情報(ログデータ)を取得する。例えば、情報提供装置100は、利用者Uの位置や日時の履歴である位置履歴を端末装置10から取得する。また、情報提供装置100は、利用者Uが入力した検索クエリの履歴である検索履歴を検索サーバ(検索エンジン)から取得する。また、情報提供装置100は、利用者Uが閲覧したコンテンツの履歴である閲覧履歴をコンテンツサーバから取得する。また、情報提供装置100は、利用者Uの商品購入の履歴である購入履歴を電子商取引サーバや決済サーバから取得する。また、情報提供装置100は、利用者Uのマーケットプレイスへの出品の履歴である出品履歴や販売履歴を電子商取引サーバや決済サーバから取得してもよい。また、情報提供装置100は、利用者Uの投稿の履歴である投稿履歴を口コミの投稿サービスを提供する投稿サーバやSNSサーバから取得する。
【0028】
本実施形態において、不特定多数の利用者により検索エンジン等で検索が行われたキーワードは、上記各種の履歴情報に含まれるキーワード(履歴情報に登場するキーワード)であってもよい。
【0029】
〔1-1.基本動作〕
例えば、
図1に示すように、情報提供装置100は、利用者Uの情報提供サービスDS1における検索履歴に関する検索情報を取得する(ステップS1)。情報提供装置100は、利用者Uの検索情報を取得すると、取得した検索情報に基づいて、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込む絞り込み条件を検索対象のキーワードごとに推定する(ステップS2)。例えば、
図1では、情報提供装置100は、利用者Uの検索情報に基づいて、検索対象のキーワード「化粧品会社#1」について、検索者の性別が「女性」であるという絞り込み条件と、検索者の年代が「20代」であるという絞り込み条件を推定する。
【0030】
続いて、情報提供装置100は、絞り込み条件を検索対象のキーワードごとに推定すると、推定した絞り込み条件によって絞り込まれた検索対象のキーワードに関するキーワードマップに関する情報を生成し、生成したキーワードマップに関する情報をあらかじめ記憶する(ステップS3)。例えば、
図1では、情報提供装置100は、検索対象のキーワード「化粧品会社#1」に関するキーワードマップKM1を、検索者の性別が「女性」であるという絞り込み条件と、検索者の年代が「20代」であるという絞り込み条件で絞り込んだキーワードマップKM2に関する情報を生成し、生成したキーワードマップKM2に関する情報をあらかじめ記憶する。
【0031】
利用者Uは、端末装置10を用いて、情報提供サービスDS1によって提供される共起キーワードの地図マッピング用のWebサイトにアクセス又はアプリを起動し、共起キーワードの地図マッピング用の画面上の入力欄(入力ボックス)に検索対象のキーワードを入力する(ステップS4)。なお、入力されるキーワードは、不特定多数の利用者により検索エンジン等で検索が行われた(又はその可能性がある)キーワードであって、単語又はその組み合わせ、あるいはフレーズ等の任意の文字列である。
図1では、利用者Uは、端末装置10を用いて、化粧品会社の会社名を示すキーワードである「化粧品会社#1」を検索対象のキーワードとして入力する。
【0032】
続いて、情報提供装置100は、端末装置10に対して、共起キーワードの地図マッピング用の画面表示を制御するために必要な情報を提供する(ステップS5)。あるいは、情報提供装置100は、端末装置10と連携し、共起キーワードの地図マッピング用の画面表示を制御するための各種データや指示(コマンド等)を提供し、共起キーワードの地図マッピング用の画面表示を制御する。
【0033】
続いて、端末装置10は、情報提供装置100と連携し、共起キーワードの地図マッピング用の画面上に、利用者Uにより入力された検索対象のキーワードに関するカテゴリの共起ネットワークを示すキーワードマップを表示する(ステップS6)。
図1では、端末装置10は、利用者Uにより入力された検索対象のキーワードである「化粧品会社#1」に関するキーワードマップKM1を表示する。
【0034】
続いて、利用者Uは、端末装置10を用いて、共起キーワードの地図マッピング用の画面上に表示された絞り込み条件の中から、検索者の性別が「女性」であるという絞り込み条件と、検索者の年代が「20代」であるという絞り込み条件を選択する(ステップS7)。
【0035】
続いて、情報提供装置100は、端末装置10に対して、利用者Uによって選択された絞り込み条件によって絞り込まれた共起キーワードの地図マッピング用の画面表示を制御するために必要な情報を提供する(ステップS8)。
図1では、情報提供装置100は、端末装置10に対して、あらかじめ生成して記憶しておいた、検索者の性別が「女性」であるという絞り込み条件と、検索者の年代が「20代」であるという絞り込み条件で絞り込まれた検索対象のキーワード「化粧品会社#1」に関するキーワードマップに関する情報を提供する。
【0036】
続いて、端末装置10は、情報提供装置100と連携し、共起キーワードの地図マッピング用の画面上に、検索者の性別が「女性」であるという絞り込み条件と、検索者の年代が「20代」であるという絞り込み条件で絞り込まれた検索対象のキーワード「化粧品会社#1」に関するキーワードマップKM2を表示する(ステップS9)。
【0037】
上述したように、情報提供装置100は、不特定多数の検索者に検索されたキーワードに関する検索情報を提供する情報提供サービスDS1を利用する利用者Uの検索履歴に関する検索情報に基づいて、利用者Uが検索対象のキーワード(
図1では「化粧品会社#1」)に関する検索結果を絞り込む絞り込み条件(
図1では「女性」と「20代」)を検索対象のキーワードごとに推定する。また、情報提供装置100は、推定した絞り込み条件によって絞り込まれた検索結果(
図1では、キーワードマップKM2に関する情報)をあらかじめ記憶する。そして、情報提供装置100は、推定した絞り込み条件によって絞り込まれた検索結果の表示要求を利用者Uから受け付けた場合に、あらかじめ記憶した検索結果(
図1では、キーワードマップKM2に関する情報)を端末装置10に表示させる。
【0038】
このように、情報提供装置100は、情報提供サービスDS1における利用者Uの過去の検索履歴に基づいて、利用者Uがこれから選択する検索結果の絞り込み条件を検索対象のキーワードごとにあらかじめ予測する。また、情報提供装置100は、あらかじめ予測しておいた絞り込み条件によって絞り込まれた検索結果を検索対象のキーワードごとに生成し、生成した絞り込まれた検索結果をあらかじめ記憶しておく。そして、情報提供装置100は、絞り込み条件によって絞り込まれた検索結果の表示要求を利用者Uから受け付けた場合に、あらかじめ記憶しておいた絞り込まれた検索結果を表示する。これにより、情報提供装置100は、絞り込まれた検索結果をあらかじめ生成して記憶しているため、絞り込み条件を受け付けてから絞り込まれた検索結果を生成して表示する場合と比べて、絞り込まれた検索結果を高速に表示することができる。したがって、情報提供装置100は、有用な情報をより高速に提供することができる。
【0039】
〔2.情報処理システムの構成例〕
次に、
図2を用いて、実施形態に係る情報提供装置100が含まれる情報処理システム1の構成について説明する。
図2は、実施形態に係る情報処理システム1の構成例を示す図である。
図2に示すように、実施形態に係る情報処理システム1は、端末装置10と情報提供装置100とを含む。これらの各種装置は、ネットワークNを介して、有線又は無線により通信可能に接続される。ネットワークNは、例えば、LAN(Local Area Network)や、インターネット等のWAN(Wide Area Network)である。
【0040】
また、
図2に示す情報処理システム1に含まれる各装置の数は図示したものに限られない。例えば、
図2では、図示の簡略化のため、端末装置10を1台のみ示したが、これはあくまでも例示であって限定されるものではなく、2台以上であってもよい。
【0041】
端末装置10は、利用者Uによって使用される情報処理装置である。例えば、端末装置10は、スマートフォンやタブレット端末等のスマートデバイス、フィーチャーフォン、PC(Personal Computer)、PDA(Personal Digital Assistant)、通信機能を備えたゲーム機、カーナビゲーションシステム、スマートウォッチやヘッドマウントディスプレイ等のウェアラブルデバイス(Wearable Device)、スマートグラス等である。
【0042】
また、かかる端末装置10は、LTE(Long Term Evolution)、4G(4th Generation)、5G(5th Generation:第5世代移動通信システム)等の無線通信網や、Bluetooth(登録商標)、無線LAN(Local Area Network)等の近距離無線通信を介してネットワークNに接続し、情報提供装置100と通信することができる。
【0043】
情報提供装置100は、例えばPCやサーバ装置、あるいはメインフレーム又はワークステーション等である。なお、情報提供装置100は、クラウドコンピューティングにより実現されてもよい。
【0044】
〔3.端末装置の構成例〕
次に、
図3を用いて、端末装置10の構成について説明する。
図3は、端末装置10の構成例を示す図である。
図3に示すように、端末装置10は、通信部11と、表示部12と、入力部13と、測位部14と、センサ部20と、制御部30(コントローラ)と、記憶部40とを備える。
【0045】
(通信部11)
通信部11は、ネットワークN(
図2参照)と有線又は無線で接続され、ネットワークNを介して、情報提供装置100との間で情報の送受信を行う。例えば、通信部11は、NIC(Network Interface Card)やアンテナ等によって実現される。
【0046】
(表示部12)
表示部12は、位置情報等の各種情報を表示する表示デバイスである。例えば、表示部12は、液晶ディスプレイ(LCD:Liquid Crystal Display)や有機ELディスプレイ(Organic Electro-Luminescent Display)である。また、表示部12は、タッチパネル式のディスプレイであるが、これに限定されるものではない。
【0047】
また、表示部12は、表示制御部34の制御に従って、情報提供装置100から受信したキーワードマップや絞り込まれたキーワードマップを表示する。
【0048】
(入力部13)
入力部13は、利用者Uから各種操作を受け付ける入力デバイスである。また、入力部13は、例えば、文字や数字等を入力するためのボタン等を有する。また、表示部12がタッチパネル式のディスプレイである場合、表示部12の一部が入力部13として機能する。なお、入力部13は、利用者Uから音声入力を受け付けるマイク等であってもよい。マイクはワイヤレスであってもよい。
【0049】
(測位部14)
測位部14は、GPS(Global Positioning System)の衛星から送出される信号(電波)を受信し、受信した信号に基づいて、自装置である端末装置10の現在位置を示す位置情報(例えば、緯度及び経度)を取得する。すなわち、測位部14は、端末装置10の位置を測位する。なお、GPSは、GNSS(Global Navigation Satellite System)の一例に過ぎない。
【0050】
また、測位部14は、GPS以外にも、種々の手法により位置を測位することができる。例えば、測位部14は、位置補正等のための補助的な測位手段として、下記のように、端末装置10の様々な通信機能を利用して位置を測位してもよい。
【0051】
(Wi-Fi測位)
例えば、測位部14は、端末装置10のWi-Fi(登録商標)通信機能や、各通信会社が備える通信網を利用して、端末装置10の位置を測位する。具体的には、測位部14は、Wi-Fi通信等を行い、付近の基地局やアクセスポイントとの距離を測位することにより、端末装置10の位置を測位する。
【0052】
(ビーコン測位)
また、測位部14は、端末装置10のBluetooth(登録商標)機能を利用して位置を測位してもよい。例えば、測位部14は、Bluetooth(登録商標)機能によって接続されるビーコン(beacon)発信機と接続することにより、端末装置10の位置を測位する。
【0053】
(地磁気測位)
また、測位部14は、予め測定された構造物の地磁気のパターンと、端末装置10が備える地磁気センサとに基づいて、端末装置10の位置を測位する。
【0054】
(RFID測位)
また、例えば、端末装置10が駅改札や店舗等で使用される非接触型ICカードと同等のRFID(Radio Frequency Identification)タグの機能を備えている場合、もしくはRFIDタグを読み取る機能を備えている場合、端末装置10によって決済等が行われた情報とともに、使用された位置が記録される。測位部14は、かかる情報を取得することで、端末装置10の位置を測位してもよい。また、位置は、端末装置10が備える光学式センサや、赤外線センサ等によって測位されてもよい。
【0055】
測位部14は、必要に応じて、上述した測位手段の一つ又は組合せを用いて、端末装置10の位置を測位してもよい。
【0056】
(センサ部20)
センサ部20は、端末装置10に搭載又は接続される各種のセンサを含む。なお、接続は、有線接続、無線接続を問わない。例えば、センサ類は、ウェアラブルデバイスやワイヤレスデバイス等、端末装置10以外の検知装置であってもよい。
図3に示す例では、センサ部20は、加速度センサ21と、ジャイロセンサ22と、気圧センサ23と、気温センサ24と、音センサ25と、光センサ26と、磁気センサ27と、画像センサ(カメラ)28とを備える。
【0057】
なお、上記した各センサ21~28は、あくまでも例示であって限定されるものではない。すなわち、センサ部20は、各センサ21~28のうちの一部を備える構成であってもよいし、各センサ21~28に加えてあるいは代えて、湿度センサ等その他のセンサを備えてもよい。
【0058】
加速度センサ21は、例えば、3軸加速度センサであり、端末装置10の移動方向、速度、及び、加速度等の端末装置10の物理的な動きを検知する。ジャイロセンサ22は、端末装置10の角速度等に基づいて3軸方向の傾き等の端末装置10の物理的な動きを検知する。気圧センサ23は、例えば端末装置10の周囲の気圧を検知する。
【0059】
端末装置10は、上記した加速度センサ21やジャイロセンサ22、気圧センサ23等を備えることから、これらの各センサ21~23等を利用した歩行者自律航法(PDR:Pedestrian Dead-Reckoning)等の技術を用いて端末装置10の位置を測位することが可能になる。これにより、GPS等の測位システムでは取得することが困難な屋内での位置情報を取得することが可能になる。
【0060】
例えば、加速度センサ21を利用した歩数計により、歩数や歩くスピード、歩いた距離を算出することができる。また、ジャイロセンサ22を利用して、利用者Uの進行方向や視線の方向、体の傾きを知ることができる。また、気圧センサ23で検知した気圧から、利用者Uの端末装置10が存在する高度やフロアの階数を知ることもできる。
【0061】
気温センサ24は、例えば端末装置10の周囲の気温を検知する。音センサ25は、例えば端末装置10の周囲の音を検知する。光センサ26は、端末装置10の周囲の照度を検知する。磁気センサ27は、例えば端末装置10の周囲の地磁気を検知する。画像センサ28は、端末装置10の周囲の画像を撮像する。
【0062】
上記した気圧センサ23、気温センサ24、音センサ25、光センサ26及び画像センサ28は、それぞれ気圧、気温、音、照度を検知したり、周囲の画像を撮像したりすることで、端末装置10の周囲の環境や状況等を検知することができる。また、端末装置10の周囲の環境や状況等から、端末装置10の位置情報の精度を向上させることが可能になる。
【0063】
(制御部30)
制御部30は、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM、入出力ポート等を有するマイクロコンピュータや各種の回路を含む。また、制御部30は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路等のハードウェアで構成されてもよい。制御部30は、送信部31と、受信部32と、処理部33と、表示制御部34とを備える。
【0064】
(送信部31)
送信部31は、例えば入力部13を用いて利用者Uにより入力された各種情報や、端末装置10に搭載又は接続された各センサ21~28によって検知された各種情報、測位部14によって測位された端末装置10の位置情報等を、通信部11を介して情報提供装置100へ送信することができる。
【0065】
(受信部32)
受信部32は、通信部11を介して、情報提供装置100から提供される各種情報や、情報提供装置100からの各種情報の要求を受信することができる。例えば、受信部32は、通信部11を介して、情報提供装置100から絞り込まれたキーワードマップに関する情報を受信する。
【0066】
(処理部33)
処理部33は、表示部12等を含め、端末装置10全体を制御する。例えば、処理部33は、送信部31によって送信される各種情報や、受信部32によって受信された情報提供装置100からの各種情報を表示部12へ出力して表示させることができる。例えば、処理部33は、受信部32によって受信された絞り込まれたキーワードマップに関する情報を表示部12へ出力して表示させる。
【0067】
(表示制御部34)
表示制御部34は、同時検索(同時入力)されたキーワードや、検索された時間の近さ等から、各キーワードを示すノードの連結でキーワード同士の共起関係を示す共起キーワードのマップを生成して表示する。共起関係にあるキーワード同士は近い位置にマッピングされる。ここでは、キーワードを示すノードは、図形(円形や矩形等)やアイコン等で表示する。また、キーワードの検索ボリュームは、ノードの大きさ(サイズ)で表現する。また、キーワード同士の共起関係は、ノード間を結ぶリンクで表現する。例えば、表示制御部34は、絞り込まれたキーワードマップを生成して表示する。なお、表示制御部34は、処理部33の一部であってもよい。
【0068】
また、表示制御部34は、利用者Uがカテゴリの共起ネットワークを示すキーワードマップを時系列再生させる操作を行った際に、カテゴリの共起ネットワークを示すキーワードマップを時系列再生させる。例えば、表示制御部34は、利用者Uが画面上に表示された「時系列再生」ボタンを押した際に、タイムスライダー形式でカテゴリの共起ネットワークを示すキーワードマップを時系列再生させる。時系列再生されたキーワードマップでは、キーワードを示すノードの大きさ(サイズ)が当該キーワードの検索ボリュームの経時的変化に合わせて変化する。また、ノード間の距離(リンクの長さ)もキーワード同士の共起関係の経時的変化に合わせて変化する。
【0069】
(記憶部40)
記憶部40は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置によって実現される。かかる記憶部40には、各種プログラムや各種データ等が記憶される。
【0070】
〔4.情報提供装置の構成例〕
次に、
図4を用いて、実施形態に係る情報提供装置100の構成について説明する。
図4は、実施形態に係る情報提供装置100の構成例を示す図である。
図4に示すように、情報提供装置100は、通信部110と、記憶部120と、制御部130とを有する。
【0071】
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。また、通信部110は、ネットワークN(
図3参照)と有線又は無線で接続される。
【0072】
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される。
図4に示すように、記憶部120は、利用者情報データベース121と、履歴情報データベース122と、キーワード情報データベース123とを有する。
【0073】
(利用者情報データベース121)
利用者情報データベース121は、利用者Uに関する各種情報を記憶する。例えば、利用者情報データベース121は、利用者Uの属性等の種々の情報を記憶する。
図5は、利用者情報データベース121の一例を示す図である。
図5に示した例では、利用者情報データベース121は、「利用者ID(Identifier)」、「年齢」、「性別」、「自宅」、「勤務地」、「興味」といった項目を有する。
【0074】
「利用者ID」は、利用者Uを識別するための識別情報を示す。また、「年齢」は、利用者IDにより識別される利用者Uの年齢を示す。なお、「年齢」は、例えば35歳など、利用者IDにより識別される利用者Uの具体的な年齢であってもよい。また、「性別」は、利用者IDにより識別される利用者Uの性別を示す。
【0075】
また、「自宅」は、利用者IDにより識別される利用者Uの自宅の位置情報を示す。なお、
図5に示す例では、「自宅」は、「LC11」といった抽象的な符号を図示するが、緯度経度情報等であってもよい。また、例えば、「自宅」は、地域名や住所であってもよい。
【0076】
また、「勤務地」は、利用者IDにより識別される利用者Uの勤務地(学生の場合は学校)の位置情報を示す。なお、
図5に示す例では、「勤務地」は、「LC12」といった抽象的な符号を図示するが、緯度経度情報等であってもよい。また、例えば、「勤務地」は、地域名や住所であってもよい。
【0077】
また、「興味」は、利用者IDにより識別される利用者Uの興味を示す。すなわち、「興味」は、利用者IDにより識別される利用者Uが関心の高い対象を示す。例えば、「興味」は、利用者Uが検索エンジンに入力して検索した検索クエリ(キーワード)等であってもよい。なお、
図5に示す例では、「興味」は、各利用者Uに1つずつ図示するが、複数であってもよい。
【0078】
例えば、
図5に示す例において、利用者ID「U1」により識別される利用者Uの年齢は、「20代」であり、性別は、「男性」であることを示す。また、例えば、利用者ID「U1」により識別される利用者Uは、自宅が「LC11」であることを示す。また、例えば、利用者ID「U1」により識別される利用者Uは、勤務地が「LC12」であることを示す。また、例えば、利用者ID「U1」により識別される利用者Uは、「スポーツ」に興味があることを示す。
【0079】
ここで、
図5に示す例では、「U1」、「LC11」及び「LC12」といった抽象的な値を用いて図示するが、「U1」、「LC11」及び「LC12」には、具体的な文字列や数値等の情報が記憶されるものとする。以下、他の情報に関する図においても、抽象的な値を図示する場合がある。
【0080】
なお、利用者情報データベース121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、利用者情報データベース121は、利用者Uの端末装置10に関する各種情報を記憶してもよい。また、利用者情報データベース121は、利用者Uのデモグラフィック(人口統計学的属性)、サイコグラフィック(心理学的属性)、ジオグラフィック(地理学的属性)、ベヘイビオラル(行動学的属性)等の属性に関する情報を記憶してもよい。例えば、利用者情報データベース121は、氏名、家族構成、出身地(地元)、職業、職位、収入、資格、居住形態(戸建、マンション等)、車の有無、通学・通勤時間、通学・通勤経路、定期券区間(駅、路線等)、利用頻度の高い駅(自宅・勤務地の最寄駅以外)、習い事(場所、時間帯等)、趣味、興味、ライフスタイル等の情報を記憶してもよい。
【0081】
(履歴情報データベース122)
履歴情報データベース122は、利用者Uの行動を示す履歴情報(ログデータ)に関する各種情報を記憶する。
図6は、履歴情報データベース122の一例を示す図である。
図6に示した例では、履歴情報データベース122は、「利用者ID」、「位置履歴」、「検索履歴」、「閲覧履歴」、「購買履歴」、「投稿履歴」といった項目を有する。
【0082】
「利用者ID」は、利用者Uを識別するための識別情報を示す。また、「位置履歴」は、利用者Uの位置や移動の履歴である位置履歴を示す。また、「検索履歴」は、利用者Uが入力した検索クエリの履歴である検索履歴を示す。また、「閲覧履歴」は、利用者Uが閲覧したコンテンツの履歴である閲覧履歴を示す。また、「購買履歴」は、利用者Uによる購買の履歴である購買履歴を示す。また、「投稿履歴」は、利用者Uによる投稿の履歴である投稿履歴を示す。なお、「投稿履歴」は、利用者Uの所有物に関する質問を含んでいてもよい。
【0083】
例えば、
図6に示す例において、利用者ID「U1」により識別される利用者Uは、「位置履歴#1」の通りに移動し、「検索履歴#1」の通りに検索し、「閲覧履歴#1」の通りにコンテンツを閲覧し、「購買履歴#1」の通りに所定の店舗等で所定の商品等を購入し、「投稿履歴#1」の通りに投稿したことを示す。
【0084】
ここで、
図6に示す例では、「U1」、「位置履歴#1」、「検索履歴#1」、「閲覧履歴#1」、「購買履歴#1」及び「投稿履歴#1」といった抽象的な値を用いて図示するが、「U1」、「位置履歴#1」、「検索履歴#1」、「閲覧履歴#1」、「購買履歴#1」及び「投稿履歴#1」には、具体的な文字列や数値等の情報が記憶されるものとする。
【0085】
なお、履歴情報データベース122は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、履歴情報データベース122は、利用者Uの所定のサービスの利用履歴等を記憶してもよい。例えば、履歴情報データベース122は、利用者Uの情報提供サービスDS1における利用履歴を記憶する。
【0086】
例えば、履歴情報データベース122は、利用者Uの情報提供サービスDS1における検索履歴を記憶する。例えば、履歴情報データベース122は、利用者Uが情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上の入力欄(入力ボックス)に入力したキーワード(検索対象のキーワードともいう)を記憶する。また、履歴情報データベース122は、利用者Uが検索対象のキーワードとともに入力欄(入力ボックス)に入力した共起キーワードを検索対象のキーワードごとに記憶する。また、履歴情報データベース122は、利用者Uが情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上に表示された選択欄(チェックボックス、カレンダーの期間など)から選択したキーワードマップに関する情報の絞り込み条件を検索対象のキーワードごとに記憶する。
【0087】
また、履歴情報データベース122は、利用者Uの実店舗の来店履歴又は施設の訪問履歴等を記憶してもよい。また、履歴情報データベース122は、利用者Uの電子決済での決済履歴等を記憶してもよい。
【0088】
(キーワード情報データベース123)
キーワード情報データベース123は、不特定多数の利用者に検索されたキーワードに関する各種情報を記憶する。
図7は、キーワード情報データベース123の一例を示す図である。
図7に示した例では、キーワード情報データベース123は、「キーワード」、「共起キーワード」、「カテゴリ」、「検索ボリューム」、「共起度」といった項目を有する。
【0089】
「キーワード」は、不特定多数の利用者により検索エンジン等で検索が行われたキーワードを示す。また、「共起キーワード」は、当該キーワードの共起キーワードを示す。例えば、共起キーワードは、当該キーワードと同時に又は近い時間に検索されたキーワードである。また、共起キーワードが存在しない場合(単一のキーワードのみで検索が行われた場合等)には、当該共起キーワードの欄は空白となる。また、「カテゴリ」は、当該キーワードが属するカテゴリを示す。なお、カテゴリは、当該キーワードと共起キーワードとの組により分類されてもよい。また、「検索ボリューム」は、当該キーワードの検索ボリューム(検索数)を示す。なお、検索ボリュームは、当該キーワードと共起キーワードとの組ごとに測定されてもよい。この場合、当該キーワードと共起キーワードとの組ごとに測定された検索ボリュームの合計値が、キーワード自体の検索ボリュームとなる。また、「共起度」は、当該キーワードと共起キーワードとの共起度を示す。なお、共起度は、当該キーワードの検索ボリュームに基づいて算出されてもよい。また、共起キーワードが存在しない場合(単一のキーワードのみで検索が行われた場合等)には、当該共起度の欄は空白となる。
【0090】
例えば、
図7に示す例において、「キーワード#1」は、「共起キーワード#11」とともに検索され、「カテゴリ#11」に分類され、「検索ボリューム#11」であり、共起キーワードとの共起度は「共起度#11」であることを示す。
【0091】
ここで、
図7に示す例では、「キーワード#1」、「共起キーワード#11」、「カテゴリ#11」、「検索ボリューム#11」及び「共起度#11」といった抽象的な値を用いて図示するが、「キーワード#1」、「共起キーワード#11」、「カテゴリ#11」、「検索ボリューム#11」及び「共起度#11」には、具体的な文字列や数値等の情報が記憶されるものとする。
【0092】
なお、キーワード情報データベース123は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、キーワード情報データベース123は、当該キーワードと共起キーワードとの組ごとに測定された検索ボリュームの合計値(キーワード自体の検索ボリューム)に関する情報を記憶してもよい。また、キーワード情報データベース123は、当該キーワードのカテゴリとともに、共起キーワードのカテゴリに関する情報を記憶してもよい。また、キーワード情報データベース123は、当該キーワードの検索結果として選ばれたWebサイトのPV(Page View)数やCTR(Click Through Rate)、CVR(Conversion Rate)等に関する情報を記憶してもよい。
【0093】
また、記憶部120は、推定部132によって推定された絞り込み条件によって絞り込まれた検索結果をあらかじめ記憶する。具体的には、記憶部120は、推定部132によって推定された優先度の高さが所定の閾値を超える絞り込み条件によって絞り込まれた検索結果をあらかじめ記憶する。より具体的には、記憶部120は、検索結果の一例として、推定部132によって推定された絞り込み条件によって絞り込まれたキーワードマップ(以下、絞り込まれたキーワードマップともいう)に関する情報をあらかじめ記憶する。
【0094】
例えば、記憶部120は、推定部132によって推定された共起キーワードによって絞り込まれたキーワードマップに関する情報をあらかじめ記憶する。また、記憶部120は、推定部132によって推定された検索者の属性情報によって絞り込まれたキーワードマップに関する情報をあらかじめ記憶する。また、記憶部120は、推定部132によって推定された検索者の性別によって絞り込まれたキーワードマップに関する情報をあらかじめ記憶する。また、記憶部120は、推定部132によって推定された検索者の年代によって絞り込まれたキーワードマップに関する情報をあらかじめ記憶する。また、記憶部120は、推定部132によって推定された検索者の居住地域によって絞り込まれたキーワードマップに関する情報をあらかじめ記憶する。また、記憶部120は、推定部132によって推定された検索日によって絞り込まれたキーワードマップに関する情報をあらかじめ記憶する。
【0095】
(制御部130)
図4に戻り、説明を続ける。制御部130は、コントローラ(Controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等によって、情報提供装置100の内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAM等の記憶領域を作業領域として実行されることにより実現される。
図4に示す例では、制御部130は、取得部131と、推定部132と、測定部133と、受付部134と、抽出部135と、提供部136とを有する。
【0096】
(取得部131)
取得部131は、通信部110を介して、各種サーバ等から、利用者Uが検索エンジン等での検索に用いたキーワードに関する情報を取得する。
【0097】
このとき、取得部131は、通信部110を介して、端末装置10や各種サーバ等から、利用者Uに関する各種情報を取得する。例えば、取得部131は、利用者Uを示す情報(利用者ID等)や、利用者Uの位置情報、利用者Uの属性情報等を取得する。そして、取得部131は、記憶部120の利用者情報データベース121に登録する。
【0098】
また、取得部131は、通信部110を介して、各種サーバ等から、利用者Uの行動を示す各種の履歴情報(ログデータ)を取得する。そして、取得部131は、記憶部120の履歴情報データベース122に登録する。
【0099】
なお、上記の利用者Uが検索エンジン等での検索に用いたキーワードは、各種の履歴情報に含まれるキーワード(履歴情報に登場するキーワード)であってもよい。
【0100】
(推定部132)
推定部132は、不特定多数の利用者により検索エンジン等で検索が行われたキーワードごとに、共起キーワードを推定する。例えば、推定部132は、同時に又は近い時間に検索されたキーワード同士を共起キーワードと推定する。そして、推定部132は、記憶部120のキーワード情報データベース123に登録する。
【0101】
また、推定部132は、不特定多数の利用者により検索エンジン等で検索が行われたキーワードごとに、該当するカテゴリを推定する。そして、推定部132は、記憶部120のキーワード情報データベース123に登録する。例えば、推定部132は、取得したキーワードと、事前にカテゴリを分類したキーワードとを比較照合し、取得したキーワードを、該当するキーワードのカテゴリに分類する。このとき、推定部132は、事前に、機械学習により、キーワードを入力すると適当なカテゴリに分類して出力する学習済みモデルを作成してもよい。
【0102】
例えば、推定部132は、RNN(Recurrent Neural Network)やLSTM(Long short-term memory)等を用いた機械学習により、キーワードのカテゴリを分類する学習済みモデルを作成する。なお、モデルは、任意の種別及び任意の形式のモデルが採用可能である。例えば、推定部132は、SVM(Support Vector Machine)やDNN(Deep Neural Network)をモデルとして採用してもよい。ここで、DNNは、CNN(Convolutional Neural Network)やRNNであってもよい。また、モデルは、例えば、CNNとRNNとを組み合わせたモデル等、複数のモデルを組み合わせることで実現されるモデルであってもよい。
【0103】
なお、RNNやLSTMは、アテンション(Attention)の仕組みに基づくニューラルネットワークであってもよい。また、推定部132は、同様の自然言語処理モデルを用いてもよい。また、データマイニングやその他の機械学習アルゴリズムを利用してもよい。推定部132は、上述した各種の学習手法により、モデルの学習を行うことができる。
【0104】
なお、実際には、推定部132は、キーワード単体ではなく、キーワードと共起キーワードとの組み合わせに基づいて、キーワードのカテゴリを推定してもよい。
【0105】
また、推定部132は、情報提供サービスDS1における利用者Uの検索履歴に関する検索情報に基づいて、利用者Uが検索対象のキーワードに関する検索結果を絞り込む絞り込み条件を検索対象のキーワードごとに推定する。例えば、推定部132は、検索結果の一例として、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込む絞り込み条件を検索対象のキーワードごとに推定する。
【0106】
具体的には、推定部132は、履歴情報データベース122を参照して、利用者Uの情報提供サービスDS1における検索履歴に関する検索情報を取得する。例えば、推定部132は、検索情報の一例として、利用者Uが情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上の入力欄(入力ボックス)に入力した検索対象のキーワードを取得する。また、推定部132は、検索情報の一例として、利用者Uが検索対象のキーワードとともに入力欄(入力ボックス)に入力した共起キーワードを検索対象のキーワードごとに取得する。また、推定部132は、検索情報の一例として、利用者Uが情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上に表示された選択欄(チェックボックス、カレンダーの期間など)から選択したキーワードマップに関する情報の絞り込み条件を検索対象のキーワードごとに取得する。
【0107】
続いて、推定部132は、取得した検索情報に基づいて、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込む絞り込み条件を検索対象のキーワードごとに推定する。このとき、推定部132は、事前に、機械学習により、利用者Uの検索履歴に関する検索情報を入力すると利用者Uが検索対象のキーワードに関するキーワードマップを絞り込む絞り込み条件を検索対象のキーワードごとに出力する学習済みモデルを作成してもよい。続いて、推定部132は、学習済みモデルを用いて、取得した検索情報から、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込む絞り込み条件を検索対象のキーワードごとに推定する。
【0108】
また、例えば、推定部132は、取得した検索情報に基づいて、利用者Uが検索対象のキーワードとともに入力欄(入力ボックス)に入力した回数が所定期間内に所定回数を超える共起キーワードを検索対象のキーワードごとに特定する。続いて、推定部132は、共起キーワードを特定すると、特定した共起キーワードを、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために用いる絞り込み条件であると推定する。続いて、推定部132は、絞り込み条件であると推定した共起キーワードによって絞り込まれた検索対象のキーワードに関するキーワードマップに関する情報を生成する。続いて、推定部132は、生成したキーワードマップに関する情報をあらかじめ記憶部120に記憶する。
【0109】
また、推定部132は、取得した検索情報に基づいて、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために選択した回数が所定期間内に所定回数を超える検索者の属性情報を検索対象のキーワードごとに特定する。例えば、推定部132は、検索者の属性情報の一例として、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために選択した回数が所定期間内に所定回数を超える検索者の性別を検索対象のキーワードごとに特定する。また、例えば、推定部132は、検索者の属性情報の一例として、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために選択した回数が所定期間内に所定回数を超える検索者の年代を検索対象のキーワードごとに特定する。また、例えば、推定部132は、検索者の属性情報の一例として、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために選択した回数が所定期間内に所定回数を超える検索者の居住地域を検索対象のキーワードごとに特定する。
【0110】
続いて、推定部132は、検索者の属性情報を特定すると、特定した検索者の属性情報を、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために用いる絞り込み条件であると推定する。続いて、推定部132は、絞り込み条件であると推定した検索者の属性情報によって絞り込まれた検索対象のキーワードに関するキーワードマップに関する情報を生成する。続いて、推定部132は、生成したキーワードマップに関する情報をあらかじめ記憶部120に記憶する。
【0111】
また、推定部132は、取得した検索情報に基づいて、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために選択した回数が所定期間内に所定回数を超える検索日を検索対象のキーワードごとに特定する。例えば、推定部132は、検索日の一例として、利用者Uが所定期間内に所定回数を超えて指定した検索日の期間(例えば、指定日から1日前、指定日から1週間前までの毎日ごと、指定日から1か月前までの毎週ごと、指定日から1年前までの毎月ごとなど)を検索対象のキーワードごとに特定する。続いて、推定部132は、期間を特定すると、特定した期間に対応する検索日を、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために用いる絞り込み条件であると推定する。続いて、推定部132は、絞り込み条件であると推定した検索日によって絞り込まれた検索対象のキーワードに関するキーワードマップに関する情報を生成する。続いて、推定部132は、生成したキーワードマップに関する情報をあらかじめ記憶部120に記憶する。
【0112】
なお、推定部132は、推定した複数の絞り込み条件を組み合わせた絞り込み条件を推定してよい。例えば、推定部132は、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために用いる絞り込み条件として、検索者の属性情報のうち性別が「女性」で年代が「20代」であるといった絞り込み条件を推定してよい。また、例えば、推定部132は、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために用いる絞り込み条件として、検索者の属性情報のうち性別が「女性」で年代が「20代」であって、検索日が指定日から1週間前までの毎日ごとである、といった絞り込み条件を推定してよい。
【0113】
また、推定部132は、推定した絞り込み条件の優先度の高さを検索対象のキーワードごとに推定する。続いて、推定部132は、優先度の高さが所定の閾値を超える絞り込み条件によって絞り込まれたキーワードマップに関する情報を生成する。例えば、推定部132は、優先度の高さが所定の閾値を超える絞り込み条件として、推定した複数の絞り込み条件の中から、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込むために選択した回数が所定期間内に所定回数を超える絞り込み条件を選択する。続いて、推定部132は、利用者Uによって選択された回数が所定の閾値を超える絞り込み条件を優先度の高い絞り込み条件であると推定する。続いて、推定部132は、優先度の高い絞り込み条件であると推定された絞り込み条件によって絞り込まれた検索対象のキーワードに関するキーワードマップに関する情報を生成する。続いて、推定部132は、生成したキーワードマップに関する情報をあらかじめ記憶部120に記憶する。
【0114】
なお、推定部132は、キーワードマップに関する情報以外の情報を絞り込む絞り込み条件を検索対象のキーワードごとに推定してもよい。具体的には、提供部136は、利用者Uから受け付けた検索対象のキーワードに基づいて、記憶部120に記憶されている検索対象のキーワードに関するあらゆる情報を検索結果として提供することができる。例えば、提供部136は、利用者Uから受け付けた検索対象のキーワードに基づいて、利用者情報データベース121、履歴情報データベース122、またはキーワード情報データベース123に記憶されている情報のうち、検索対象のキーワードに関する情報を検索結果として提供することができる。
【0115】
すなわち、推定部132は、記憶部120に記憶されている情報のうち、キーワードマップ以外の検索対象のキーワードに関する検索結果を絞り込む絞り込み条件を検索対象のキーワードごとに推定してもよい。例えば、推定部132は、利用者情報データベース121、履歴情報データベース122、またはキーワード情報データベース123に記憶されている情報のうち、検索対象のキーワードに関する検索結果を絞り込む絞り込み条件を検索対象のキーワードごとに推定してもよい。例えば、推定部132は、検索対象のキーワードに関する検索結果の一例として、キーワード情報データベース123に記憶されている検索対象のキーワードに関する共起キーワード、検索ボリューム、カテゴリ、共起度といった各種情報やその組み合わせに関する検索結果を絞り込む絞り込み条件を検索対象のキーワードごとに推定する。続いて、推定部132は、推定した絞り込み条件によって絞り込まれた検索結果を生成する。続いて、推定部132は、生成した絞り込まれた検索結果をあらかじめ記憶部120に記憶する。
【0116】
(測定部133)
測定部133は、不特定多数の利用者により検索エンジン等で検索が行われたキーワードごとの検索ボリュームを測定する。例えば、測定部133は、検索サーバ等から取得した利用者Uが検索エンジン等での検索に用いたキーワードに関する情報や、検索履歴等に基づいて、当該キーワードの検索数をカウントする。そして、測定部133は、記憶部120のキーワード情報データベース123に登録する。
【0117】
このとき、測定部133は、当該キーワード単体の検索ボリュームではなく、当該キーワードと共起キーワードとの組の検索ボリュームを測定してもよい。
【0118】
また、測定部133は、不特定多数の利用者により検索エンジン等で検索が行われたキーワードと共起キーワードとの組の検索ボリュームに基づいて、キーワード同士の共起度を算出する。そして、測定部133は記憶部120のキーワード情報データベース123に登録する。
【0119】
(受付部134)
受付部134は、通信部110を介して、端末装置10から、利用者Uが入力したキーワードを受け付ける。例えば、受付部134は、情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上の入力欄(入力ボックス)に入力されたキーワード(検索対象のキーワードともいう)を受け付ける。
【0120】
また、受付部134は、通信部110を介して、端末装置10から、利用者Uが端末装置10の入力部13を用いて情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上の入力欄(入力ボックス)に入力した、または選択欄(チェックボックス、カレンダーの期間など)から選択したキーワードマップに関する情報の絞り込み条件を受け付ける。例えば、受付部134は、推定部132によって推定された絞り込み条件を受け付ける。
【0121】
(抽出部135)
抽出部135は、受け付けたキーワードと、上記のキーワード情報データベース123に登録されたキーワードとを比較照合し、受け付けたキーワードの共起キーワードや検索ボリューム、キーワード同士の共起度、受け付けたキーワードが属するカテゴリ等に関する情報を抽出する。なお、受け付けたキーワードが属するカテゴリは、受け付けたキーワードに基づいて、上記の推定部132により推定してもよい。抽出された各種情報は、共起キーワードの地図マッピング用のUIの画面表示を制御するために必要な情報となる。
【0122】
(提供部136)
提供部136は、不特定多数の検索者に検索されたキーワードに関する検索情報を提供する情報提供サービスDS1を提供する。情報提供サービスDS1は、不特定多数の検索者に検索されたキーワードと共起関係を有する共起キーワード同士の共起関係を視覚化したキーワードマップを提供する。具体的には、提供部136は、通信部110を介して、端末装置10に対して、共起キーワードの地図マッピング用のUIの画面表示を制御するために必要な情報を提供する。あるいは、提供部136は、通信部110を介して端末装置10と連携し、画面表示を制御するための各種データや指示(コマンド等)を提供し、共起キーワードの地図マッピング用のUIの画面表示を制御する。
【0123】
また、提供部136は、受付部134が推定部132によって推定された絞り込み条件を受け付けた場合に、通信部110を介して、端末装置10に対して、記憶部120にあらかじめ記憶された絞り込まれたキーワードマップに関する情報を提供する。
【0124】
〔5.処理手順〕
次に、
図8を用いて実施形態に係る端末装置10及び情報提供装置100による処理手順について説明する。
図8は、実施形態に係る処理手順を示すフローチャートである。なお、以下に示す処理手順は、端末装置10の制御部30及び情報提供装置100の制御部130によって繰り返し実行される。
【0125】
図8に示すように、情報提供装置100の取得部131は、通信部110を介して、各種サーバ等から、利用者Uが検索エンジン等での検索に用いたキーワードに関する情報を取得する(ステップS101)。
【0126】
続いて、情報提供装置100の推定部132は、不特定多数の利用者により検索エンジン等で検索が行われたキーワードごとに、共起キーワードを推定する(ステップS102)。例えば、推定部132は、同時に又は近い時間に検索されたキーワード同士を共起キーワードと推定する。そして、推定部132は、記憶部120のキーワード情報データベース123に登録する。
【0127】
続いて、情報提供装置100の推定部132は、不特定多数の利用者により検索エンジン等で検索が行われたキーワードごとに、該当するカテゴリを推定する(ステップS103)。例えば、推定部132は、機械学習により、キーワードを入力すると適当なカテゴリに分類して出力する学習済みモデルを事前に作成しておき、取得したキーワードを学習済みモデルに入力し、該当するカテゴリに分類して出力する。このとき、推定部132は、機械学習により、キーワードと共起キーワードとの組を入力すると適当なカテゴリに分類して出力する学習済みモデルを事前に作成しておき、取得したキーワードと共起キーワードとの組を学習済みモデルに入力し、該当するカテゴリに分類して出力するようにしてもよい。そして、測定部133は、記憶部120のキーワード情報データベース123に登録する。
【0128】
続いて、情報提供装置100の測定部133は、不特定多数の利用者により検索エンジン等で検索が行われたキーワードごとの検索ボリュームを測定する(ステップS104)。このとき、測定部133は、当該キーワード単体の検索ボリュームではなく、当該キーワードと共起キーワードとの組の検索ボリュームを測定してもよい。また、測定部133は、不特定多数の利用者により検索エンジン等で検索が行われたキーワードと共起キーワードとの組の検索ボリュームに基づいて、キーワード同士の共起度を算出してもよい。そして、測定部133は、記憶部120のキーワード情報データベース123に登録する。
【0129】
続いて、情報提供装置100の推定部132は、情報提供サービスDS1における利用者Uの検索履歴に関する検索情報に基づいて、利用者Uが検索対象のキーワードに関するキーワードマップに関する情報を絞り込む絞り込み条件を検索対象のキーワードごとに推定する(ステップS105)。推定部132は、絞り込み条件を推定すると、推定した絞り込み条件によって絞り込まれたキーワードマップに関する情報を生成する。
【0130】
続いて、情報提供装置100の記憶部120は、推定部132によって推定された絞り込み条件によって絞り込まれたキーワードマップに関する情報をあらかじめ記憶する(ステップS106)。
【0131】
続いて、情報提供装置100の受付部134は、通信部110を介して、端末装置10から、情報提供サービスDS1を提供するサイトにアクセス又はアプリを起動した際に、利用者Uが端末装置10の入力部13を用いて情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上の入力欄(入力ボックス)に入力した検索対象のキーワードを受け付ける(ステップS107)。
【0132】
続いて、情報提供装置100の抽出部135は、受け付けた検索対象のキーワードと、上記のキーワード情報データベース123に登録されたキーワードとを比較照合し、受け付けた検索対象のキーワードの共起キーワードや検索ボリューム、受け付けた検索対象のキーワードに該当するカテゴリ等に関する情報を抽出する(ステップS108)。なお、受け付けた検索対象のキーワードに該当するカテゴリは、上記の推定部132により推定してもよい。また、抽出部135は、キーワード同士の共起度に関する情報があれば、共起度に関する情報も抽出してもよい。
【0133】
続いて、端末装置10の処理部33は、受信部32を介して情報提供装置100から受信した情報に基づいて、表示部12にカテゴリの共起ネットワークを示すキーワードマップを表示する(ステップS109)。このとき、情報提供装置100の提供部136は、通信部110を介して、端末装置10に対して、共起キーワードの地図マッピング用のUIの画面表示を制御するために必要な情報を提供する。あるいは、提供部136は、通信部110を介して端末装置10と連携し、画面表示を制御するための各種データや指示(コマンド等)を提供し、共起キーワードの地図マッピング用のUIの画面表示を制御する。
【0134】
続いて、情報提供装置100の受付部134は、通信部110を介して、端末装置10から、利用者Uが端末装置10の入力部13を用いて情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上の入力欄(入力ボックス)に入力した、または選択欄(チェックボックス、カレンダーの期間など)から選択したキーワードマップに関する情報の絞り込み条件であって、推定部132によって推定された絞り込み条件を受け付ける(ステップS110)。
【0135】
続いて、端末装置10の処理部33は、受信部32を介して情報提供装置100から受信した情報に基づいて、表示部12に記憶部120にあらかじめ記憶された絞り込まれたキーワードマップを表示する(ステップS111)。
【0136】
〔6.変形例〕
上述した端末装置10及び情報提供装置100は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、実施形態の変形例について説明する。
【0137】
上記の実施形態において、情報提供装置100が実行している処理は、実際には、端末装置10が実行してもよい。すなわち、スタンドアロン(Standalone)で(端末装置10単体で)処理が完結してもよい。この場合、端末装置10に、上記の実施形態における情報提供装置100の機能が備わっているものとする。
【0138】
また、上記の実施形態において、情報提供装置100の推定部132は、機械学習により、キーワードを入力すると共起キーワードを推定して出力する学習済みモデルを事前に作成しておき、端末装置10から受け付けたキーワードを学習済みモデルに入力し、共起キーワードを推定して出力するようにしてもよい。
【0139】
また、上記の実施形態において、端末装置10は、情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上において、利用者Uから入力されたキーワードの入力回数を検索ボリュームとして測定してもよい。また、端末装置10は、情報提供サービスDS1によって提供される共起キーワードの地図マッピング用の画面上において、利用者Uから同時に又は近い時間に入力されたキーワード同士を共起キーワードと推定してもよい。
【0140】
また、上記の実施形態では、推定部132が、情報提供サービスDS1における利用者Uの検索履歴に関する検索情報に基づいて、利用者Uが検索対象のキーワードに関する検索結果を絞り込む絞り込み条件を検索対象のキーワードごとに推定する場合について説明したが、これに限られない。具体的には、推定部132は、各利用者Uが情報提供サービスDS1の利用を開始してから所定期間(例えば、開始から10分後程度まで)の検索行動のパターンを抽出する。そして、推定部132は、抽出した検索行動パターンをモデル化する。具体的には、推定部132は、利用者Uの属性情報に応じて、情報提供サービスDS1のUI画面上の利用者Uの操作記録に関する操作情報をモデル化する。
【0141】
例えば、推定部132は、利用者Uの属性情報の一例として、利用者Uが所属する所属業界または所属業種ごとの利用者の検索行動のパターンを抽出する。続いて、推定部132は、利用者Uの所属業界または所属業種ごとに抽出された利用者の操作情報をモデル化した業界モデルを生成する。
【0142】
また、例えば、推定部132は、利用者Uの属性情報の一例として、個々の利用者Uの検索行動のパターンを抽出する。続いて、推定部132は、個々の利用者Uごとに抽出された利用者の操作情報をモデル化した個人モデルを生成する。
【0143】
また、例えば、推定部132は、利用者Uの属性情報の一例として、利用者Uが所属する所属企業に属する他の利用者(例えば、利用者Uが所属する所属企業の同僚など)の検索行動のパターンを抽出する。続いて、推定部132は、利用者Uの所属企業に属する他の利用者ごとに抽出された利用者の操作情報をモデル化した同僚モデルを生成する。
【0144】
また、例えば、推定部132は、利用者Uの属性情報に基づいて、業界モデル、個人モデル、および同僚モデルを組み合わせる重みを決定する。例えば、推定部132は、業界モデル、個人モデル、および同僚モデルを組み合わせる重みをそれぞれw1、w2、およびw3とした場合に「w1*(業界モデル)+w2*(個人モデル)+w3*(同僚モデル)」で表される式に基づいて、利用者Uの検索行動パターンを推定する。続いて、推定部132は、利用者Uの属性情報に基づいて決定された重みw1、w2、およびw3に基づいて、利用者Uの検索行動パターンを推定する。
【0145】
例えば、推定部132は、情報提供サービスDS1と新規契約を結んだ企業の新規利用者の検索行動パターンを推定する場合には、利用者の検索履歴が少ないため、新規利用者から受け付けたキーワードと新規利用者が所属する所属業界の情報に基づいて、新規利用者の検索行動パターンを推定する。例えば、推定部132は、新規利用者の検索情報に基づく個人モデルの重みw2を「0」、新規利用者が所属する所属業界に基づく業界モデルの重みw1を大きくして、新規利用者の検索行動パターンを推定する。続いて、推定部132は、推定した検索行動パターンに基づいて、絞り込まれた検索結果を生成する。続いて、推定部132は、生成した絞り込まれた検索結果をあらかじめ記憶部120に記憶する。これにより、情報提供装置100は、次の画面遷移に対して描画を高速化する。
【0146】
また、例えば、推定部132は、情報提供サービスDS1と既存契約を結んでいる企業の既存利用者の検索行動パターンを推定する場合には、利用者が情報提供サービスDS1を使い慣れており、利用者の所属業界の情報に加えて、個人に依存する検索行動パターンが存在すると推定されるため、既存利用者から受け付けたキーワードと既存利用者の検索履歴に関する情報に基づいて、既存利用者の検索行動パターンを推定する。例えば、推定部132は、既存利用者が所属する所属業界に基づく業界モデルの重みw1よりも、既存利用者の検索情報に基づく個人モデルの重みw2を大きくして、既存利用者の検索行動パターンを推定する。続いて、推定部132は、推定した検索行動パターンに基づいて、絞り込まれた検索結果を生成する。続いて、推定部132は、生成した絞り込まれた検索結果をあらかじめ記憶部120に記憶する。これにより、情報提供装置100は、次の画面遷移に対して描画を高速化する。
【0147】
また、例えば、推定部132は、情報提供サービスDS1と既存契約を結んでいる企業の新規利用者の検索行動パターンを推定する場合には、新規利用者が所属する所属企業に属する他の利用者(例えば、新規利用者の所属企業の同僚など)が情報提供サービスDS1を既に利用しており、新規利用者が情報提供サービスDS1を利用する部署に新しく配属されたことなどが推定される。そこで、推定部132は、新規利用者は、新規利用者が所属する所属企業に属する他の利用者と同じ業務を遂行しており、新規利用者が所属する所属企業に属する他の利用者の検索行動パターンと類似すると推定されるため、新規利用者から受け付けたキーワードと他の利用者の検索履歴に関する情報に基づいて、新規利用者の検索行動パターンを推定する。例えば、推定部132は、業界モデルの重みw1や個人モデルの重みw2よりも、同僚モデルの重みw3を大きくして、新規利用者の検索行動パターンを推定する。続いて、推定部132は、推定した検索行動パターンに基づいて、絞り込まれた検索結果を生成する。続いて、推定部132は、生成した絞り込まれた検索結果をあらかじめ記憶部120に記憶する。これにより、情報提供装置100は、次の画面遷移に対して描画を高速化する。
【0148】
また、同一業界での競合分析などは、企業が異なっても同一業界で同じような分析方法(すなわち、検索方法)がとられやすいと推定される。例えば、自動車会社Aが国内の自動車業界の他の自動車会社Bに関する検索情報を調べること(または、その逆)などが想定される。そこで、推定部132は、利用者の検索情報と利用者が第1検索(最初の検索)に利用したキーワードに基づいて、キーワードのカテゴリ(例えば、業種)を抽出する。続いて、推定部132は、利用者の検索行動パターンとして、抽出したカテゴリ(例えば、業種)にマッチする検索行動パターン(例えば、業界モデル)を推定する。続いて、推定部132は、推定した検索行動パターンに基づいて、絞り込まれた検索結果を生成する。続いて、推定部132は、生成した絞り込まれた検索結果をあらかじめ記憶部120に記憶する。
【0149】
〔7.効果〕
上述してきたように、本願に係る情報処理装置(端末装置10及び情報提供装置100)は、推定部132と、記憶部120と、表示部12を備える。推定部132は、不特定多数の検索者に検索されたキーワードに関する検索情報を提供する情報提供サービスを利用する利用者の検索履歴に関する検索情報に基づいて、利用者が検索対象のキーワードに関する検索結果を絞り込む絞り込み条件を検索対象のキーワードごとに推定する。記憶部120は、推定部132によって推定された絞り込み条件によって絞り込まれた検索結果をあらかじめ記憶する。表示部12は、推定部132によって推定された絞り込み条件によって絞り込まれた検索結果の表示要求を利用者から受け付けた場合に、記憶部120にあらかじめ記憶された検索結果を表示する。
【0150】
このように、情報処理装置は、情報提供サービスにおける利用者の過去の検索履歴に基づいて、利用者がこれから選択する検索結果の絞り込み条件を検索対象のキーワードごとにあらかじめ予測する。また、情報処理装置は、あらかじめ予測しておいた絞り込み条件によって絞り込まれた検索結果を検索対象のキーワードごとに生成し、生成した絞り込まれた検索結果をあらかじめ記憶しておく。そして、情報処理装置は、絞り込み条件によって絞り込まれた検索結果の表示要求を利用者から受け付けた場合に、あらかじめ記憶しておいた絞り込まれた検索結果を表示する。これにより、情報処理装置は、絞り込まれた検索結果をあらかじめ生成して記憶しているため、絞り込み条件を受け付けてから絞り込まれた検索結果を生成して表示する場合と比べて、絞り込まれた検索結果を高速に表示することができる。したがって、情報処理装置は、有用な情報をより高速に提供することができる。
【0151】
また、推定部132は、利用者の検索履歴に関する検索情報に基づいて、推定した絞り込み条件の優先度の高さを検索対象のキーワードごとに推定する。記憶部120は、推定部132によって推定された優先度の高さが所定の閾値を超える絞り込み条件によって絞り込まれた検索結果をあらかじめ記憶する。
【0152】
これにより、情報処理装置は、例えば、優先度の高い絞り込み条件によって絞り込まれた検索結果のみを記憶するため、システムの負荷を低減することができる。また、情報処理装置は、利用者が情報提供サービスを利用する利用状態に合わせて、キャッシュ保持量を動的に変更することが可能となる。
【0153】
また、推定部132は、絞り込み条件として、利用者によって検索対象のキーワードと同時に検索される共起キーワードを検索対象のキーワードごとに推定する。記憶部120は、推定部132によって推定された共起キーワードによって絞り込まれた検索結果をあらかじめ記憶する。
【0154】
これにより、情報処理装置は、利用者によって検索対象のキーワードと同時に検索される共起キーワードを受け付けてから共起キーワードによって絞り込まれた検索結果を生成して表示する場合と比べて、共起キーワードによって絞り込まれた検索結果を高速に表示することができる。
【0155】
また、推定部132は、絞り込み条件として、検索対象のキーワードを検索した検索者の属性情報のうち、利用者によって選択される検索者の属性情報を検索対象のキーワードごとに推定する。記憶部120は、推定部132によって推定された検索者の属性情報によって絞り込まれた検索結果をあらかじめ記憶する。
【0156】
これにより、情報処理装置は、利用者によって選択される検索者の属性情報を受け付けてから検索者の属性情報によって絞り込まれた検索結果を生成して表示する場合と比べて、検索者の属性情報によって絞り込まれた検索結果を高速に表示することができる。
【0157】
また、推定部132は、絞り込み条件として、検索対象のキーワードを検索した検索者の性別のうち、利用者によって選択される検索者の性別を検索対象のキーワードごとに推定する。記憶部120は、推定部132によって推定された検索者の性別によって絞り込まれた検索結果をあらかじめ記憶する。
【0158】
これにより、情報処理装置は、利用者によって選択される検索者の性別を受け付けてから検索者の性別によって絞り込まれた検索結果を生成して表示する場合と比べて、検索者の性別によって絞り込まれた検索結果を高速に表示することができる。
【0159】
また、推定部132は、絞り込み条件として、検索対象のキーワードを検索した検索者の年代のうち、利用者によって選択される検索者の年代を検索対象のキーワードごとに推定する。記憶部120は、推定部132によって推定された検索者の年代によって絞り込まれた検索結果をあらかじめ記憶する。
【0160】
これにより、情報処理装置は、利用者によって選択される検索者の年代を受け付けてから検索者の年代によって絞り込まれた検索結果を生成して表示する場合と比べて、検索者の年代によって絞り込まれた検索結果を高速に表示することができる。
【0161】
また、推定部132は、絞り込み条件として、検索対象のキーワードを検索した検索者の居住地域のうち、利用者によって選択される検索者の居住地域を検索対象のキーワードごとに推定する。記憶部120は、推定部132によって推定された検索者の居住地域によって絞り込まれた検索結果をあらかじめ記憶する。
【0162】
これにより、情報処理装置は、利用者によって選択される検索者の居住地域を受け付けてから検索者の居住地域によって絞り込まれた検索結果を生成して表示する場合と比べて、検索者の居住地域によって絞り込まれた検索結果を高速に表示することができる。
【0163】
また、推定部132は、絞り込み条件として、検索対象のキーワードが検索された検索日のうち、利用者によって選択される検索日を検索対象のキーワードごとに推定する。記憶部120は、推定部132によって推定された検索日によって絞り込まれた検索結果をあらかじめ記憶する。
【0164】
これにより、情報処理装置は、利用者によって選択される検索日を受け付けてから検索日によって絞り込まれた検索結果を生成して表示する場合と比べて、検索日によって絞り込まれた検索結果を高速に表示することができる。
【0165】
また、推定部132は、検索対象のキーワードに関する検索結果として、検索対象のキーワードと共起関係を有するキーワード同士の共起関係を可視化したキーワードマップに関する情報を絞り込む絞り込み条件を検索対象のキーワードごとに推定する。記憶部120は、推定部132によって推定された絞り込み条件によって絞り込まれたキーワードマップに関する情報をあらかじめ記憶する。表示部12は、推定部132によって推定された絞り込み条件によって絞り込まれたキーワードマップに関する情報の表示要求を利用者から受け付けた場合に、記憶部120にあらかじめ記憶されたキーワードマップに関する情報を表示する。
【0166】
これにより、情報処理装置は、あらかじめ記憶しておいた絞り込まれたキーワードマップを表示するため、絞り込み条件を受け付けてから絞り込まれたキーワードマップを生成して表示する場合と比べて、絞り込まれたキーワードマップを高速に表示することができる。したがって、情報処理装置は、有用な情報をより高速に提供することができる。
【0167】
〔8.ハードウェア構成〕
また、上述した実施形態に係る端末装置10や情報提供装置100は、例えば
図9に示すような構成のコンピュータ1000によって実現される。以下、端末装置10を例に挙げて説明する。
図9は、ハードウェア構成の一例を示す図である。コンピュータ1000は、出力装置1010、入力装置1020と接続され、演算装置1030、一次記憶装置1040、二次記憶装置1050、出力I/F(Interface)1060、入力I/F1070、ネットワークI/F1080がバス1090により接続された形態を有する。
【0168】
演算装置1030は、一次記憶装置1040や二次記憶装置1050に格納されたプログラムや入力装置1020から読み出したプログラム等に基づいて動作し、各種の処理を実行する。演算装置1030は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等により実現される。
【0169】
一次記憶装置1040は、RAM(Random Access Memory)等、演算装置1030が各種の演算に用いるデータを一次的に記憶するメモリ装置である。また、二次記憶装置1050は、演算装置1030が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ROM(Read Only Memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等により実現される。二次記憶装置1050は、内蔵ストレージであってもよいし、外付けストレージであってもよい。また、二次記憶装置1050は、USBメモリやSD(Secure Digital)メモリカード等の取り外し可能な記憶媒体であってもよい。また、二次記憶装置1050は、クラウドストレージ(オンラインストレージ)やNAS(Network Attached Storage)、ファイルサーバ等であってもよい。
【0170】
出力I/F1060は、ディスプレイ、プロジェクタ、及びプリンタ等といった各種の情報を出力する出力装置1010に対し、出力対象となる情報を送信するためのインターフェイスであり、例えば、USB(Universal Serial Bus)やDVI(Digital Visual Interface)、HDMI(登録商標)(High Definition Multimedia Interface)といった規格のコネクタにより実現される。また、入力I/F1070は、マウス、キーボード、キーパッド、ボタン、及びスキャナ等といった各種の入力装置1020から情報を受信するためのインターフェイスであり、例えば、USB等により実現される。
【0171】
また、出力I/F1060及び入力I/F1070はそれぞれ出力装置1010及び入力装置1020と無線で接続してもよい。すなわち、出力装置1010及び入力装置1020は、ワイヤレス機器であってもよい。
【0172】
また、出力装置1010及び入力装置1020は、タッチパネルのように一体化していてもよい。この場合、出力I/F1060及び入力I/F1070も、入出力I/Fとして一体化していてもよい。
【0173】
なお、入力装置1020は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、又は半導体メモリ等から情報を読み出す装置であってもよい。
【0174】
ネットワークI/F1080は、ネットワークNを介して他の機器からデータを受信して演算装置1030へ送り、また、ネットワークNを介して演算装置1030が生成したデータを他の機器へ送信する。
【0175】
演算装置1030は、出力I/F1060や入力I/F1070を介して、出力装置1010や入力装置1020の制御を行う。例えば、演算装置1030は、入力装置1020や二次記憶装置1050からプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行する。
【0176】
例えば、コンピュータ1000が端末装置10として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040上にロードされたプログラムを実行することにより、制御部30の機能を実現する。また、コンピュータ1000の演算装置1030は、ネットワークI/F1080を介して他の機器から取得したプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行してもよい。また、コンピュータ1000の演算装置1030は、ネットワークI/F1080を介して他の機器と連携し、プログラムの機能やデータ等を他の機器の他のプログラムから呼び出して利用してもよい。
【0177】
〔9.その他〕
以上、本願の実施形態を説明したが、これら実施形態の内容により本発明が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、前述した実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。
【0178】
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0179】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【0180】
例えば、上述した情報提供装置100は、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットホーム等をAPI(Application Programming Interface)やネットワークコンピューティング等で呼び出して実現するなど、構成は柔軟に変更できる。
【0181】
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0182】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、推定部は、推定手段や推定回路に読み替えることができる。
【符号の説明】
【0183】
1 情報処理システム
10 端末装置
12 表示部
34 表示制御部
100 情報提供装置
121 利用者情報データベース
122 履歴情報データベース
123 キーワード情報データベース
131 取得部
132 推定部
133 測定部
134 受付部
135 抽出部
136 提供部