以下、図1から図17の図面に基づいて、実施例に係る情報検索システムを説明する。〔システム構成〕
図1に、情報検索システムの一例を示す。図1に例示する情報検索システム10は、例えば、個々のユーザ装置20,20aに検索サービスを提供するシステムである。
図1に例示される情報検索システム10は、ユーザ装置20,20a、検索サーバ装置30、記憶装置40、解析サーバ装置100、記憶装置200を含む。ユーザ装置20は、ネットワークNを介して検索サーバ装置30に接続し、ユーザ装置20aは、ネットワークNを介して検索サーバ装置30に接続する。検索サーバ装置30は記憶装置40と接続する。解析サーバ装置100は、ネットワークNを介して検索サーバ装置30に接続する。解析サーバ装置100は記憶装置200と接続する。尚、検索サーバ装置30には、ネットワークNを介して複数のユーザ装置20,20aが接続され得る。また、検索サーバ装置30は、ネットワークNを介して図示しない複数の情報処理装置に接続する。複数の情報処理装置としては、例えば、SNSやソーシャルメディア等のように、Web上に
構築された社会的ネットワークを利用して各種情報を発信する情報処理装置を例示できる。
検索サーバ装置30は記憶装置40を含んでもよい。また、解析サーバ装置100は記憶装置200を含んでもよい。検索サーバ装置30、解析サーバ装置100、記憶装置40、記憶装置200は、例えば、インターネット上のコンピュータ群であるクラウドの一部を構成するものであってもよい。ネットワークNは、インターネット等の公衆ネットワーク、携帯電話網等の無線ネットワーク、LAN(Local Area Network)、WAN(Wide
Area Network)等の内部ネットワークを含む。
記憶装置200は、検索ログDB210、ユーザログDB220、検索リテラシーDB230を含む。検索ログDB210には、検索クエリーログ211、クリックURLログ212、検索結果表示ログ213、キーワードサジェストログ214が含まれる。検索ログDB210に含まれる各ログは、後述するように、検索ログ取得部110の処理により、検索履歴DB410から抽出された履歴データである。検索クエリーログ211には、本情報検索システム10が受け付けた、検索要求を行ったユーザの検索クエリー情報が格納される。クリックURLログ212には、ユーザに提示した検索結果URL情報から閲覧要求が生じた閲覧URL情報が格納される。検索結果表示ログ213には、検索クエリー情報に基づいてネットワーク検索を行った結果の検索結果URL情報が格納される。キーワードサジェストログ214には、検索クエリー打刻入力時の秒単位の日時情報と共に、本情報検索システム10でサジェストされた応答文字列情報が格納される。
ユーザログDB220には、ユーザログテーブル221が含まれる。ユーザログテーブル221は、後述するように、検索ログ処理部120の処理により、検索クエリーログ211、クリックURLログ212、検索結果表示ログ213が結合されたものである。
検索リテラシーDB230には、検索リテラシー算出テーブル231、リコメンド決定テーブル232が含まれる。検索リテラシー算出テーブル231は、後述するように、検索リテラシー分析部130により付与された、採点情報(指標値)が格納される。採点情報は、検索クエリーに含まれるキーワードに対して付与される。検索リテラシー算出テーブル231は、検索要求を行った全てのユーザに対するキーワード毎のレコードを有する。さらに検索リテラシー算出テーブル231には、後述するように、検索リテラシー判定部140によって算出されたユーザ毎の、検索操作全般に対する能力判定値が付加される。検索操作全般に対する能力判定値は、例えば、各ユーザの全キーワードに対する採点情報(指標値)の平均値として算出される。
また、リコメンド決定テーブル232には、後述するように、検索リテラシー分析部130により付与された採点情報(指標値)とユーザログテーブル221に含まれる各種情報が格納される。検索要求に含まれる検索キーワードについて、高い採点情報(指標値)が付与されたユーザの検索動向(例えば、検索クエリー情報、閲覧URL情報等)を抽出してリコメンドするためである。
ユーザ装置20,20aは、パーソナルコンピュータ(PC、Personal Computer)、
タブレットPC、PDA(Personal Digital Assistant)のような専用または汎用のコンピュータ、あるいは、コンピュータを搭載した電子機器を使用して実現可能である。また、ユーザ装置20,20aは、スマートフォン(多機能携帯電話)、携帯電話、カーナビゲーション装置のような専用または汎用のコンピュータ、あるいは、コンピュータを搭載した電子機器を使用して実現可能である。
検索サーバ装置30,解析サーバ装置100は、PC等の汎用のコンピュータまたはサ
ーバマシン等の専用のコンピュータを使用して実現可能である。記憶装置40及び200は、各種プログラムおよび各種データを格納する記憶媒体を備えた記憶装置である。記憶装置40及び200は、外部記憶装置とも呼ばれる。記憶装置40及び200としては、例えば、ソリッドステートドライブ装置、ハードディスクドライブ装置、CD(Compact Disc)ドライブ装置、DVD(Digital Versatile Disk)ドライブ装置、+R/+RWドライブ装置、HD DVD(High-Definition Digital Versatile Disk)ドライブ装置、または、BD(Blu-ray Disk)ドライブ装置がある。また、記憶装置40及び200は、リムーバブルメディア、即ち可搬記録媒体を含むことができる。
図2に、情報処理装置のハードウェア構成を例示する。図2に例示する情報処理装置300は、コンピュータである。図1に例示する、ユーザ装置20,20a、検索サーバ装置30,解析サーバ装置100は、例えば、図2に例示する情報処理装置300によって実現される。
情報処理装置300は、接続バスによって相互に接続されたCPU(Central Processing Unit)301、メモリ302、記憶部303、入力部304、出力部305、通信部
306を有する。情報処理装置300は、CPU301が記憶部303に記憶されたプログラムをメモリ302の作業領域に実行可能に展開し、プログラムの実行を通じて周辺機器の制御を行う。これにより、情報処理装置300は、所定の目的に合致した機能を実現することができる。メモリ302および記憶部303は、コンピュータである情報処理装置300が読み取り可能な記録媒体である。
CPU301は、情報処理装置300全体の制御を行う中央処理演算装置である。CPU301は、記憶部303に格納されたプログラムに従って処理を行う。メモリ302は、CPU301がプログラムやデータをキャッシュしたり、作業領域を展開したりする記憶媒体である。メモリ302は、例えば、RAM(Random Access Memory)やROM(Read Only Memory)を含む。
記憶部303は、各種のプログラム及び各種のデータを読み書き自在に記録媒体に格納する。記憶部303は、例えば、EPROM(Erasable Programmable ROM)、ソリッド
ステートドライブ装置、ハードディスクドライブ(HDD、Hard Disk Drive)装置等で
ある。また、記憶部303としては、例えば、CDドライブ装置、DVDドライブ装置、+R/+RWドライブ装置、HD DVDドライブ装置、BDドライブ装置が例示できる。記録媒体としては、例えば、不揮発性半導体メモリ(フラッシュメモリ)を含むシリコンディスク、ハードディスク、CD、DVD、+R/+RW、HD DVD、または、BDがある。CDとしては、CD−R(Recordable)、CD−RW(Rewritable)、CD−ROMがある。DVDとしては、DVD−R、DVD−RAM(Random Access Memory)がある。BDとしては、BD−R、BD−RE(Rewritable)、BD−ROM等がある。また、記憶部303は、リムーバブルメディア等の可搬記録媒体を含むことができる。リムーバブルメディアは、例えば、USB(Universal Serial Bus)メモリ、あるいは、CDやDVDのようなディスク記録媒体が例示できる。
入力部304は、ユーザ等からの操作指示等を受け付ける。入力部304は、入力ボタン、キーボード、ポインティングデバイス、ワイヤレスリモコン、マイクロフォン、カメラ等の入力デバイスである。入力部304から入力された情報は、接続バスを介してCPU301に通知される。
出力部305は、CPU301で処理されるデータやメモリ302に記憶されるデータを出力する。出力部305は、CRT(Cathode Ray Tube)ディスプレイ、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、EL(Electroluminescence
)パネル、プリンタ、スピーカ等の出力デバイスである。通信部306は、ネットワークNとのインターフェースである。
情報処理装置300は、記憶部303に、オペレーティングシステム(Operating System :OS)、各種プログラム、各種テーブル等を記憶している。OSは、ソフトウェアとハードウェアとの仲介、メモリ空間の管理、ファイル管理、プロセスやタスクの管理を行うソフトウェアである。OSは、通信インターフェースを含む。通信インターフェースは、通信部306を介して接続される外部装置等とデータのやり取りを行うプログラムである。外部装置等には、例えば、他の情報処理装置、記憶装置が含まれる。
ユーザ装置20,20aを実現する情報処理装置300は、CPU301が記憶部303に記憶されている各種プログラムや各種データをメモリ302に読み出して実行することにより、ブラウザ機能を実現する。ブラウザ機能を有するユーザ装置20,20aは、例えば、ネットワークNを介して接続された検索サーバ装置30に対し、入力された検索キーワードに基づく検索クエリー(照会)を行う。また、ブラウザ機能を有するユーザ装置20,20aは、例えば、ネットワークNを介して接続された検索サーバ装置30から検索結果を受け取り、出力部305に出力表示する。また、ブラウザ機能を有するユーザ装置20,20aは、例えば、出力部305に出力表示されたURL(Uniform Resource Locator)等を辿り、ネットワークNを介して接続された各種Webサイトの情報処理装置
が配信する各種コンテンツ情報や記事情報を閲覧することができる。
検索サーバ装置30を実現する情報処理装置300は、CPU301が記憶部303に記憶されている各種プログラムや各種データをメモリ302に読み出して実行することにより、受け付けた検索クエリーに沿った情報検索機能を実現する。情報検索機能として例えば、種々の公知な検索エンジン等が例示できる。情報検索機能を有する検索サーバ装置30は、例えば、検索クエリーに含まれるキーワード等に沿って、ネットワークNを介して接続された各種Webサイトに登録された配信情報や各種コンテンツの情報検索を実行する。また検索サーバ装置30は、検索クエリーのユーザ入力に対し、キーワードサジェストによる入力支援を行う。また、例えば、検索サーバ装置30は、検索結果に対してクリック操作(閲覧要求)された各種WebサイトのURL情報等を含んだ、一連の検索処理履歴を検索履歴DB410(Data Base: データベース)として記憶装置40に格納す
る。検索履歴DB410は、検索履歴情報の一例である。記憶装置40は、検索履歴DB410を含む。
解析サーバ装置100を実現する情報処理装置300は、CPU301が記憶部303に記憶されている各種プログラムや各種データをメモリ302に読み出して実行することにより、検索ログ取得部110、検索ログ処理部120、検索リテラシー分析部130、検索リテラシー判定部140、リコメンド処理部150としての機能を実現する。
図1に戻り、解析サーバ装置100は、検索ログ取得部110、検索ログ処理部120、検索リテラシー分析部130、検索リテラシー判定部140、リコメンド処理部150を含む。各部のうち、いずれかが、他のサーバ装置に含まれてもよい。例えば、検索ログ取得部110を含むサーバ装置と、検索ログ処理部120を含むサーバ装置と、検索リテラシー分析部130を含むサーバ装置と、検索リテラシー判定部140を含むサーバ装置と、リコメンド処理部150を含むサーバ装置とが、ネットワーク等を介して接続されることにより、解析サーバ装置100として機能してもよい。解析サーバ装置100は、複数のサーバ装置に機能を分散し、各処理部が実現されることで、負荷が軽減される。
検索ログ取得部110は、解析サーバ装置100が接続されたネットワークNを介して記憶装置40に格納された検索履歴の取得を行う。検索履歴の取得は、例えば所定の周期
で定期的に実行される。所定周期として、時間単位、日単位、週単位、月単位等が例示できる。検索履歴の取得間隔は、情報検索システムが要求される運用精度、システムの規模、データベースが構築される外部記憶装置の容量等によって適正なものが選択できる。
検索ログ取得部110は、検索履歴DB410に含まれるユーザID、日時、検索クエリー、セッションID等を抽出し、検索クエリーログ211として検索ログDB210に格納する。また、検索ログ取得部110は、検索履歴DB410に含まれるユーザID、日時、検索結果から閲覧要求が行われた閲覧URL、セッションID等を抽出し、クリックURLログ212として検索ログDB210に格納する。また、検索ログ取得部110は、検索履歴DB410に含まれるユーザID、日時、検索結果として得られた検索結果URL、セッションID等を抽出し、検索結果表示ログ213として検索ログDB210に格納する。さらに、検索ログ取得部110は、検索履歴DB410に含まれるユーザID、日時、検索クエリー入力時の入力文字列、応答文字列等を抽出し、キーワードサジェストログ214として検索ログDB210に格納する。尚、キーワードサジェストログ214がキーワードサジェスト情報の一例である。
検索ログ処理部120は、検索クエリーログ211,クリックURLログ212,検索結果表示ログ213のファイル結合を行う。そして、検索ログ処理部120は、結合した結果(ユーザログ情報)をユーザログテーブル221としてユーザログDB220に格納する。検索クエリーログ211、クリックURLログ212、検索結果表示ログ213は、それぞれ複数のログファイルを含み、各ログファイルはセッションIDを有する。検索ログ処理部120は、同一のユーザIDを有する検索クエリーログ211、クリックURLログ212、検索結果表示ログ213から、セッションIDを結合キーとして、同一のセッションIDを有する各ログファイルを結合する。ユーザログ情報には、セッションIDを除く、結合された各ログファイルの情報が含まれる。
検索リテラシー分析部130は、ユーザログDB220に格納されたユーザログテーブル211を取得し、検索クエリーに含まれる検索キーワードに対する採点処理を実行する。検索リテラシー分析部130で実行された採点処理の結果(採点情報)は、指標値として検索キーワードに付与され、検索キーワードと共に検索リテラシー算出テーブル231に格納される。検索リテラシー分析部130は、ユーザログテーブル211に含まれる全てのユーザID、及び全ての検索クエリーに対して検索キーワードに対する採点処理を実行する。検索リテラシー分析部130は、検索リテラシー算出テーブル231を検索リテラシーDB230に格納する。また、検索リテラシー分析部130は、指標値と採点処理時の検索キーワードを含むユーザログ情報を対応付けて、リコメンド決定テーブル232に格納する。検索リテラシー分析部130は、ユーザログテーブル211に含まれる全てのユーザID、及び全ての検索クエリーに対して指標値と採点処理時の検索キーワードを含むユーザログ情報の対応付けを行う。リコメンド決定テーブル232には、少なくとも、同一のキーワードを含んだ複数の検索クエリーに対する閲覧URL情報がユーザID情報と共に蓄積される。検索リテラシー分析部130は、リコメンド決定テーブル232を検索リテラシーDB230に格納する。検索リテラシー算出テーブル231は、ユーザID情報、キーワード情報、採点情報(指標値)を含む。リコメンド決定テーブル232は、採点情報(採点結果)、ユーザID情報、日時情報、検索クエリー情報、検索結果URL情報、検索結果から閲覧要求が行われた閲覧URL情報を含む。採点処理については後述する。尚、本実施例では、この指標値を検索リテラシーとも呼ぶ。検索リテラシーは、キーワード毎、あるいは検索クエリー毎に判定されるユーザの能力ということができる。
検索リテラシー判定部140は、検索リテラシー算出テーブル231から各検索キーワードに付与された指標値を取得し、ユーザ毎の全検索クエリーに対する平均値を算出する。検索リテラシー判定部140は、算出した指標値の平均値を、検索操作全般に対するユ
ーザ毎の能力判定値として、検索リテラシー算出テーブル231に付加し、検索リテラシーDB230に再び格納する。能力判定値は、情報検索操作を行うユーザの能力(リテラシー)を判別する値である。本実施例では、能力判定値から判定される能力をリテラシーとも呼ぶ。
リコメンド処理部150は、検索リテラシーDB230に格納された検索リテラシー算出テーブル231及びリコメンド決定テーブル232を取得する。そして、検索リテラシー算出テーブル231の各検索キーワードに付与された指標値及び検索操作全般に対する能力判定値に基づいてリコメンド決定テーブル232に格納された検索クエリー情報及び閲覧URL情報を抽出し、リコメンド処理を行う。リコメンド処理の結果は、検索結果と共にユーザ装置20,20aに出力する。リコメンド処理については後述する。
記憶装置200は、検索ログDB210、ユーザログDB220、検索リテラシーDB230を含む。検索ログDB210、ユーザログDB220、検索リテラシーDB230は、それぞれ、別々の記憶装置に含まれてもよい。
図3に検索クエリーログを例示する。図3に例示する検索クエリーログ211は、本情報検索システム10の検索サービスを利用するユーザ毎に、ユニークに対応付けた識別情報であるユーザIDを含むレコードを有している。各レコードは、ユーザIDに対応付けた日時、検索クエリー、セッションIDの各フィールドを備える。日時フィールドには、ネットワークNを介して情報検索システム10がユーザ装置20,20aから検索要求を受け付けた日時情報が格納される。検索クエリーフィールドには、ネットワークNを介して情報検索システム10がユーザ装置20,20aから受け付けた検索クエリー情報が格納される。検索クエリー情報は、ユーザ装置20等が検索要求時に検索サーバ装置30に送信した入力文字列を含む。また、セッションIDフィールドには、検索クエリーに応じたセッションIDが格納される。尚、図例では、日時フィールドには、“yyyy/mm/dd hh:mm”の表現形式で日時情報が格納されるが、図例の表現形式には限定されない。以下、図4〜6に例示する、日時フィールドの表現形式についても同様である。
後述するユーザログテーブルの結合処理の説明のため、図5に例示する、検索結果表示ログを説明する。検索結果表示ログは、検索要求に沿って検索されたネットワークN上に接続する各種Webサイトの情報が格納される。検索結果表示ログに格納される検索結果URL情報は検索要求を行ったユーザに出力される。図5に例示する検索結果表示ログ213は、本情報検索システム10の検索サービスを利用するユーザ毎に、ユニークに対応付けた識別情報であるユーザIDを含むレコードを有している。各レコードは、ユーザIDに対応付けた日時、検索結果URL、セッションIDの各フィールドを備える。日時フィールドには、ネットワークNを介して情報検索システム10がユーザ装置20,20aから検索要求を受け付けた日時情報が格納される。検索結果URLフィールドには、受け付けた検索クエリーに応じて取得した各種WebサイトのURL情報が格納される。検索結果URLフィールドに格納されるURL情報は、検索結果画面に表示する検索結果URL情報としてユーザ装置20,20aに出力される。また、セッションIDフィールドには、検索結果として各種WebサイトのURL情報を取得したセッションIDが格納される。尚、日時フィールドにおける日時情報の表現形式は図例に限定されない。
検索要求を行ったユーザは、本情報検索システム10から出力された検索結果URL情報に沿って、閲覧要求を行う。ユーザのクリック操作によって閲覧要求されたURL(閲覧URL)は、クリックURLログに格納される。図4に、クリックURLログを例示する。図4に例示するクリックURLログ212は、本情報検索システム10の検索サービスを利用するユーザ毎に、ユニークに対応付けた識別情報であるユーザIDを含むレコードを有している。各レコードは、ユーザIDに対応付けた日時、閲覧URL、セッション
IDの各フィールドを備える。日時フィールドには、ネットワークNを介して情報検索システム10がユーザ装置20,20aから閲覧要求を受け付けた日時情報が格納される。閲覧URLフィールドには、ユーザ装置20,20aに出力した検索結果画面からユーザがクリック操作による閲覧要求を行った閲覧対象のURL情報が格納される。また、セッションIDフィールドには、クリック操作による閲覧要求を行ったURL毎のセッションIDが格納される。尚、日時フィールドにおける日時情報の表現形式は図例に限定されない。
図6に、ユーザログテーブルを例示する。図6に例示するユーザログテーブルは、図3に例示した検索クエリーログ211、図4に例示したクリックURLログ212、図5に例示した検索結果表示ログ213を、セッションIDを結合キーとして、同一のセッションIDを有する各ログファイルを結合処理したテーブルである。結合処理は、検索ログ処理部120により行われる。図6に例示するユーザログテーブル221は、本情報検索システム10の検索サービスを利用するユーザ毎に、ユニークに対応付けた識別情報であるユーザIDを含むレコードを有している。各レコードは、ユーザIDに対応付けた日時、検索クエリー、検索結果URL、閲覧URLの各フィールドを備える。検索クエリーフィールドには、ネットワークNを介して情報検索システム10がユーザ装置20,20aから受け付けた検索クエリー情報が格納される。検索結果URLフィールドには、検索結果表示ログ213の検索結果URLフィールドに格納された各種WebサイトのURL情報が格納される。閲覧URLフィールドには、ユーザ装置20,20aに出力した検索結果画面からユーザがクリック操作による閲覧要求を行った閲覧URL情報が格納される。ユーザログテーブル221は、結合処理の結果として得られたユーザログ情報である。尚、検索クエリー情報が格納されたレコードの日時フィールドには検索要求を受け付けた日時情報が格納され、閲覧URL情報が格納されたレコードの日時フィールドには閲覧要求を受け付けた日時情報が格納される。
尚、閲覧URLフィールドに格納される閲覧URL情報は、直前の行中に格納された検索結果URLフィールドの検索結果URL情報に対応するものである。例えば、図例では、“アジアカップの日本のサブメンバー”の検索クエリーに対し、検索結果である検索結果URLフィールドには、0件を示す“−”が格納されている。従って、同一セッションにおいて閲覧URLフィールドに格納される情報は無いため、“アジアカップの日本のサブメンバー”の検索クエリーが格納された行の直後には、閲覧URL情報を有する行が配行されていない。
一方、“あdじあkっぷ”や“アジアカップ”の検索クエリーに対しては、それぞれ、複数のURL(図例では、“AD_URL1”〜“WEB_URL3”)が検索され、検索結果URLフィールドに格納されている。しかし、“あdじあkっぷ”の検索クエリーに対して提示された検索結果URL情報に対しては、同一セッションIDに対する閲覧URLが不検出のため、“あdじあkっぷ”の検索クエリーが格納された直後の行には、閲覧URL情報を有する閲覧URLフィールドは存在しない。つまり、“あdじあkっぷ”の検索クエリーに対して提示された検索結果URL情報に対しては、ユーザのクリック操作による閲覧要求が行われていない。
“アジアカップ”の検索クエリーに対しては、同一セッションIDに対する閲覧URLが検出されているため、“アジアカップ”の検索クエリーが格納された直後の行には、閲覧URL情報を格納した閲覧URLフィールドを有する行が結合処理(配行)されている。そして、日時フィールドに格納された日時情報からも明らかなように、“アジアカップ”の検索クエリーが格納された直後の行には、閲覧URL情報が格納された閲覧URLフィールドを有する行が、連続して配行されている。連続して配行された各行の閲覧URLフィールドには、検索結果画面に表示された検索結果URLから、ユーザがクリック操作に
よって辿った閲覧URLが順に並んでいる。図例では、時間経過順に、“AD_URL1
”→“AD_URL2”→“WEB_URL1”となる閲覧URLを閲覧URLフィールドに格納した行が連続する。
このように、結合処理が施されたユーザログテーブル221には、ユーザIDに対応付けた日時情報、検索クエリー情報、検索クエリーに沿って検索収集された各種Webサイトの検索結果URL情報、及び各種WebサイトのURL情報からユーザがクリック操作を行った閲覧URL情報が含まれる。
図7に、検索リテラシー算出テーブル231を例示する。検索リテラシー算出テーブル231には、検索リテラシー分析部130で付与されたキーワード毎の指標値と、検索リテラシー判定部140で処理された全キーワードに対するユーザ毎の能力判定値が格納される。キーワード毎に付与される指標値は、例えば、検索要求を行ったユーザの得意分野、不得意分野等が反映されたものであり、知識の多寡によって偏りが生ずる。一方、全キーワードに対するユーザ毎の能力判定値は、検索要求を行ったユーザの得意分野、不得意分野等に偏らない、検索操作全般のリテラシーを判定するものである。採点処理については後述する。
図7に例示する検索リテラシー算出テーブル231は、本情報検索システム10の検索サービスを利用するユーザ毎に、ユニークに対応付けた識別情報であるユーザIDを含むレコードを有している。各レコードは、ユーザIDに対応付けた、キーワード、指標値の各フィールドを備える。キーワードフィールドには、検索クエリー情報に含まれるキーワード情報が格納される。キーワードフィールドに格納されるキーワード情報としては、例えば、検索要求時に受け付けた検索クエリーに含まれる全ての単語名詞、検索クエリーの初頭に入力された単語名詞等が例示できる。指標値フィールドには、キーワード情報に対応する採点情報が格納される。検索リテラシー算出テーブル231では、一意に特定されたキーワード情報に対する指標値が格納される。
図7に例示する検索リテラシー算出テーブル231において、(1)は、採点処理の結果、検索リテラシー判定部140により、検索操作に係るリテラシーが低いと判別されるユーザのレコード例である。一方、(2)は、採点処理の結果、検索リテラシー判定部140により、検索操作に係るリテラシーが高いと判別されるユーザのレコード例である。図例の(1)では、一意に特定されたキーワード情報としてキーワードフィールドに格納された“アジアカップ”には、採点処理の結果、指標値として付与された“35”が対応する指標値フィールドに格納されている。また、キーワードフィールドに格納された“C言語”には、採点処理の結果、指標値として付与された“50”が対応する指標値フィールドに格納されている。“C言語”の検索要求では、付与された指標値は相対的に高く、“アジアカップ”では、相対的に指標値は低い。つまり、(1)に例示するユーザ(ユーザID:001)は、“C言語”が属する分野では標準的な検索リテラシーを備えるが、“アジアカップ”が属する分野では検索リテラシーは低いと判断できる。また、(2)では、一意に特定されたキーワード情報である“アジアカップ”に対応する指標値は“60”であり、“C言語”に応じた指標値は“50”である。(2)に例示するユーザ(ユーザID:002)は、キーワード情報の属する分野によらず標準的以上の検索リテラシーを備えると判断できる。このように、検索リテラシー算出テーブル231には、一意に特定されるキーワード情報毎に、対応する指標値が格納されるため、検索要求を行うユーザの、キーワード情報が属する分野での能力の高低が判断できる。検索リテラシー分析部130で処理された指標値(採点情報)が格納された検索リテラシー算出テーブル231は、検索リテラシーを判定する情報がキーワード毎に格納されることとなる。
また、検索リテラシー算出テーブル231の1つの行(図例では、最終行)のキーワー
ドフィールドには、本ユーザの検索リテラシーの判定の結果を表す“[検索操作全般(平均)]”との文言が格納される。そして、“[検索操作全般(平均)]”との文言が格納される行の指標値フィールドには、検索リテラシー判定部140で処理された本ユーザの能力判定値が格納される。図例では、キーワード情報毎に付与された指標値の平均値が、能力判定値として格納されている。尚、検索リテラシー算出テーブル231の1つの行のキーワードフィールドに格納される、検索リテラシーの判定の結果を表す文言は、図例の表現形式に限定されない。本ユーザの検索リテラシー判定を表す表現であればよい。例えば、“「00000」”,“XXXXX”,“ユーザID:Total”,“総判定”,“★
★★★”等の、本ユーザの検索リテラシー判定を表すテキスト文字や記号等の任意の表現が可能である。
また、“[検索操作全般(平均)]”との文言が格納される行の指標値フィールドに格納される能力判定値の表現形式は、図例に限定されない。例えば、各キーワード情報に付与された指標値の平均値をさらに閾値と比較し、“A”,“B”,“C”等のランク付けを行ってもよい。本ユーザの検索リテラシー判定の結果を示す指標であればよい。このようなランク分けは閾値判定により処理できる。例えば、2段階の閾値を設け、能力判定値が60以上であれば“A”ランク、40以下であれば“C”ランク、40を超え、且つ60未満の範囲であれば“B”ランクとするランク付けが例示できる。尚、図例では、説明のために(1)、(2)の2つのテーブルを用いたが、ユーザ毎のレコードの纏まりを単位ブロックとし、複数のユーザブロックが連続して一つのテーブルを構成するようにしてもよい。前者では、テーブル毎に検索操作全般に対する能力判定値が格納されるのに対し、後者では、ユーザブロック毎に検索操作全般に対する能力判定値を格納できる。
図8にキーワードサジェストログを例示する。後述するように、キーワードサジェストログにより、ユーザの検索クエリー入力作業に対する作業速度を分析する。図8に例示するキーワードサジェストログ214は、本情報検索システム10の検索サービスを利用するユーザ毎に、ユニークに対応付けた識別情報であるユーザIDを含むレコードを有している。各レコードは、ユーザIDに対応付けた日時、入力文字列、応答文字列の各フィールドを備える。日時フィールドには、“yyyy/mm/dd hh:mm:ss”の表現形式で日時情報が格納される。日時フィールドに格納される日時情報は、検索クエリー入力時のキー打刻時間である。入力文字列フィールドには、検索クエリー入力時の入力文字列情報が格納される。応答文字列フィールドには、検索クエリー入力時の各入力文字列に応じてサジェストされた応答文字列情報が格納される。図例では、日時情報として“2011/1/31 17:00:00”、“2011/1/31 17:00:00”、“2011/1/31 17:00:01”が格納された行が時間経過順に配行されている。上述の各日時情報に対応する行には、入力文字列情報が“y”、“ym”、“ymo”とキー打刻順に格納されている。“y”の入力文字列が格納された行には、応答文字列情報として“ya●oo”、“yuo●●be”、“ヤマ●電機”が格納され、“ym”の入力文字列が格納された行には、“Y●CA”、“Ym企●”、“yms”が格納されている。“ymo”の入力文字列が格納された行には、“ymo フジ●ック”、“ymo ●HK”が格納されている。尚、図例では、日時フィールドには、“yyyy/mm/dd hh:mm:ss”の表現形式で日時情報が格納されるが、図例の表現形式には限定されない。少なくとも、秒単位の時間情報が含まれればよい。
図9にリコメンド決定テーブルを例示する。リコメンド決定テーブルには、検索リテラシー分析部130で処理された採点結果(採点情報)が、採点処理時の検索クエリーに対応するユーザログ情報と対応付けて格納される。リコメンド決定テーブルは、一意に特定される検索キーワードに対する採点情報、一意に特定される検索キーワードを含む検索要求を行った全てのユーザについて、検索要求が行われた時の日時情報又は閲覧要求が行われた時の日時情報、検索クエリー情報、検索結果URL情報、閲覧URL情報を含む。リ
コメンド決定テーブル232には、少なくとも、同一のキーワードを含んだ複数の検索クエリーに対する閲覧URL情報がユーザID情報と共に蓄積される。検索リテラシー分析部130で処理された採点情報は、検索クエリーに含まれるキーワードに付与された指標値である。尚、図9では、採点情報と採点処理時のユーザログ情報(ユーザID、日時、検索クエリー、検索結果URL、閲覧URL)とが1つのレコード(行)内に格納されている。しかし、リコメンド決定テーブルは、例えば、採点情報と採点処理時のユーザログテーブル221(図6)の各レコード(行)へのポインタとを対にして格納するようにしてもよい。すなわち、採点情報と採点処理時のユーザログ情報とがリンク付けされればよい。同一ユーザによる、一意に特定される検索キーワードを含んだ複数の検索クエリーに対しては、最も高い配点が付与された検索クエリーを採点情報と共に格納する。採点処理については後述する。
図9に例示するリコメンド決定テーブル232は、本情報検索システム10の検索サービスを利用するユーザ毎に、ユニークに対応付けた識別情報であるユーザIDを含むレコードを有している。各レコードは、ユーザIDに対応付けた、採点結果、日時、検索クエリー、検索結果URL、閲覧URLの各フィールドを備える。採点結果フィールドには、検索クエリーに含まれる検索キーワードに対する採点情報が格納される。検索クエリーフィールドには、ネットワークNを介して情報検索システム10がユーザ装置20,20aから受け付けた検索クエリー情報が格納される。検索結果URLフィールドには、検索結果表示ログ213の検索結果URLフィールドに格納された各種WebサイトのURL情報が格納される。閲覧URLフィールドには、ユーザ装置20,20aに出力した検索結果画面からユーザがクリック操作による閲覧要求を行ったURL情報が格納される。尚、検索クエリー情報が格納されたレコードの日時フィールドには検索要求を受け付けた日時情報が格納され、閲覧URL情報が格納されたレコードの日時フィールドには閲覧要求を受け付けた日時情報が格納される。
図例では、共通の検索キーワード“アジアカップ”を含む検索クエリーに対する複数ユーザ(ユーザID:002〜006)の採点結果が例示されている。検索クエリー情報が
格納された行の直後には、クリック操作によって閲覧要求が行われた閲覧URL情報を格納した行が配行されている。このように、リコメンド決定テーブル232では、ユーザIDに対応付けられた、検索クエリー情報が格納された行と閲覧URL情報を格納した行とが一組となり、採点情報に対応付けられて蓄積される。
図例のリコメンド決定テーブル232において、ユーザID:002の“アジアカップ
●川 代理”と入力された検索クエリーでは、採点情報として“80”が採点結果フィールドに格納されている。一方、ユーザID:003の“アジアカップ ●川 代理”と入力された検索クエリーでは、採点情報として“50”が採点結果フィールドに格納されている。後述するように、検索リテラシー分析処理で実行された照合条件との合致の度合が相違するためである。
また、図例のリコメンド決定テーブル232において、採点情報として“80”が格納されたユーザID002と“60”が格納されたユーザID006の閲覧URL情報は、“WEB_URL2”である。一方、採点情報として“50”以下の他のユーザの閲覧URL情報は、“WEB_URL1”である。採点情報が相対的に低いユーザは、閲覧URL情報として“WEB_URL1”を選択し、採点情報が相対的に高いユーザは、閲覧URL情報として“WEB_URL2”を選択している、という傾向がわかる。このように、リコメンド決定テーブル232に格納された検索クエリー情報、閲覧URL情報等と検索キーワードに付与された採点情報から、高配点が処理されたユーザの、検索キーワード動向が判断できる。
〔処理シーケンス〕
次に、本情報検索システム10における解析サーバ装置100の処理シーケンスについて説明する。図10に、解析サーバ装置100の全体的な処理シーケンス図を例示する。
図10において、解析サーバ100は、所定の周期間隔で検索履歴DB410に格納された検索履歴情報の取得を行う。所定の周期間隔として、1時間毎、12時間毎、1日毎、1週間毎、1ヶ月毎等の期間間隔が例示できる。解析サーバ装置100の検索ログ取得部110は、検索履歴DB410に格納された検索履歴情報からユーザIDに対応付けた日時情報、検索クエリー情報、セッションID情報を抽出し、抽出した結果を検索クエリーログ211として検索ログDB210に格納する。また、検索ログ取得部110は、検索履歴DB410に格納された検索履歴情報からユーザIDに対応付けた日時情報、閲覧URL情報、セッションID情報を抽出し、抽出した結果をクリックURLログ212として検索ログDB210に格納する。また、検索ログ取得部110は、検索履歴DB410に格納された検索履歴情報からユーザIDに対応付けた日時情報、検索結果である各種WebサイトのURL情報(検索結果URL情報)、セッションID情報を抽出し、抽出した結果を検索結果表示ログ213として検索ログDB210に格納する。さらに、検索ログ取得部110は、検索履歴DB410に含まれるユーザID、日時情報、検索クエリー入力時の入力文字列情報、応答文字列情報等を抽出し、キーワードサジェストログ214として検索ログDB210に格納する。尚、検索結果である各種WebサイトのURL情報(検索結果URL情報)は、ユーザ装置20,20aが備えるブラウザを介して検索結果画面としてユーザに提示される。
解析サーバ装置100の検索ログ処理部120は、検索ログDB210に格納された、検索履歴情報の各抽出結果に対して結合処理を実行する。検索ログ処理部120で実行される結合処理は、ユーザ毎に行われ、各抽出結果に含まれるセッションIDを結合キーとして実行される。検索ログ処理部120は、結合処理の結果をユーザログDB220のユーザログテーブル221に格納する。ユーザログテーブル221のユーザログ情報は、ユーザIDに対応付けた日時情報、検索クエリー情報、検索クエリーに沿って検索収集された各種WebサイトのURL情報(検索結果URL情報)、及び各種WebサイトのURL情報からユーザがクリック操作による閲覧要求を行った閲覧URL情報を含む。
解析サーバ装置100の検索リテラシー分析部130は、ユーザログテーブル221のユーザログ情報に対して検索リテラシーを判断するための指標値の付与処理を実行する。検索リテラシー分析部130で実行される指標値の付与処理は、検索クエリーに含まれるキーワード情報に応じた採点処理である。検索リテラシー分析部130で実行される採点処理は、キーワード毎に実行される。検索リテラシー分析部130は、ユーザIDに対応付けた一意に特定されるキーワード情報、及びキーワード毎に付与された指標値を、検索リテラシー算出テーブル231に格納する。検索リテラシー算出テーブル231に格納された情報は、検索リテラシー判定部140により、ユーザの検索リテラシーを算出する情報として処理される。また、検索リテラシー分析部130は、指標値を、一意に特定されるキーワード情報が含まれるユーザログ情報に対応付けてリコメンド決定テーブル232に格納する。リコメンド決定テーブル232には、少なくとも、同一のキーワードを含んだ複数の検索クエリーに対する閲覧URL情報がユーザID情報と共に蓄積される。
解析サーバ装置100の検索リテラシー判定部140は、検索リテラシー算出テーブル231に格納された、キーワード毎に付与された指標値に基づいてユーザの検索操作に対する能力判定値を算出する。検索リテラシー判定部140で算出された能力判定値は、本ユーザの検索リテラシー判定を表す文言と共に再び検索リテラシー算出テーブル231に格納される。検索リテラシー判定部140で実行される能力判定値の算出は、例えば、キーワード毎に付与された指標値の平均処理である。検索リテラシー判定部140は、全て
のキーワードに付与された指標値について加算平均を行うことにより、ユーザ毎の能力判定値を算出する。
解析サーバ装置100のリコメンド処理部150は、検索リテラシー算出テーブル231に格納されたキーワード毎の指標値に基づいて、検索要求時の検索クエリーに含まれるキーワードに付与された指標値の高低を判断する。指標値の高低の判断は、例えば所定値(閾値)との比較により行われる。リコメンド処理部150は、検索要求時の検索クエリーに含まれるキーワードの指標値が所定値(閾値)と比較して低いと判断する場合には、リコメンド決定テーブル232の情報に基づいてリコメンド情報の抽出を行う。リコメンド決定テーブル232には、少なくとも、同一のキーワードを含んだ複数の検索クエリーに対する閲覧URL情報がユーザID情報と共に蓄積されている。リコメンド決定テーブル232から抽出されたリコメンド情報には、例えば、検索クエリー情報、閲覧URL情報等が含まれる。リコメンド処理部150は、例えば、検索要求時のキーワードを検索キーとして、リコメンド決定テーブル232の検索を行い、キーワードに対応する採点情報の読み込みを行う。採点情報は、採点結果フィールドに格納されている。リコメンド処理部150は、例えば、読み込んだ採点情報と閾値との比較を行い、高い採点情報のユーザを抽出する。そして、リコメンド処理部150は、抽出したユーザの検索クエリー情報、閲覧URL情報を取得し、リコメンド情報とする。リコメンド処理部150で抽出されたリコメンド情報は、例えば、検索結果情報と共に検索要求時の検索クエリーに含まれるキーワードの指標値が所定値(閾値)と比較して低いと判断されたユーザ装置20に出力される。
〔検索リテラシーの分析及び検索リテラシーの判定処理〕
図11,12に検索リテラシーの分析処理の説明図を例示する。図11,12は、ユーザログDB220に格納されるユーザログテーブル221の一例である。図11は、検索リテラシーの分析処理でリテラシーが低いと判断される場合の説明図である。一方、図12は、検索リテラシーの分析処理でリテラシーが高いと判断される場合の説明図である。検索リテラシーの分析処理は、検索リテラシー分析部130によって実行され、検索リテラシーの判定は検索リテラシー判定部140で実行される。検索リテラシー分析部130で処理された結果は、検索キーワード毎の指標値として検索キーワードと共に検索リテラシー算出テーブル231に格納される。また、検索リテラシー分析部130で処理された結果は、検索キーワードに対する採点情報として分析処理時のユーザログ情報と共にリコメンド決定テーブル232に格納される。検索リテラシー判定部140は、検索リテラシー算出テーブル231のユーザ毎に、全ての検索キーワードに対する指標値の加算平均を行う。全ての検索キーワードに対する指標値の加算平均の結果は、能力判定値として再び検索リテラシー算出テーブルに格納される。尚、リテラシー判定は、例えば、能力判定値に対する閾値,所定値との比較により行うことが可能である。このような閾値,所定値は、例えばシステムパラメータとして情報処理装置300のメモリ302に保持することができる。また、入力部304を介して入力された設定値としてもよい。本情報検索システム10が要求される運用精度、システムの規模、データベースが構築される外部記憶装置の容量等によって適正なものが選択できる。
図11に例示するユーザログのレコードは、例えば、ユーザ装置20を介して検索クエリーを行ったリテラシーの低いユーザ(ユーザID:001)によるレコードである。図例において、日時フィールドに格納された日時情報から、“2011/1/31 17:00”〜“2011/1/31 18:00”の間に3件の検索クエリーを入力していることがわかる。入力された検索クエリーは順に、“アジアカップの日本のサブメンバー”,“あdじあkっぷ”,“アジアカップ”である。最初に入力した検索クエリーに対しては、検索結果URL情報が格納される検索結果URLフィールドに0件を示す“−”が格納され、他の検索クエリーに対しては複数のURLが格納されている。次に入力した検索クエリーの検索結果に対しては、
閲覧URL情報を閲覧URLフィールドに含む行が直後に配行されていない。最後に入力した検索クエリーに対しては、閲覧URL情報を閲覧URLフィールドに含む行が直後に配行されている。閲覧URLフィールドに閲覧URL情報を含む行は、“AD_URL1
”→“AD_URL2”→“WEB_URL1”の順に連続して配行されている。
図12に例示するユーザログのレコードは、例えば、ユーザ装置20aを介して検索クエリーを行ったリテラシーの高いユーザ(ユーザID:002)によるレコードである。図例において、日時フィールドに格納された日時情報から、“2011/2/1 17:00”〜“2011/2/1 18:00”の間に3件の検索クエリーを入力していることがわかる。入力された検索クエリーは順に、“アジアカップ ●川 代理”,“アジアカップ ●川 控えメンバー”,“アジアカップ site:wwww.tv-XXXX.co.jp”である。最初に入力した検索クエリーに
対しては、検索結果URL情報が格納される検索結果URLフィールドに5件のURLが格納されている。最初に入力した検索クエリーに対しては、直後に、閲覧URL情報として“WEB_URL2”が閲覧URLフィールドに格納された行が配行されている。次に
入力した検索クエリーに対しては、検索結果URLフィールドに5件のURLが格納されている。そして、直後に、閲覧URL情報として“WEB_URL1”が閲覧URLフィ
ールドに格納された行が配行されている。最後に入力した検索クエリーに対しては、検索結果URLフィールドに5件のURLが格納されている。そして、直後に、閲覧URL情報として“AD_URL2”、“WEB_URL3”が閲覧URLフィールドに格納された行が連続して配行されている。
尚、図8に例示したキーワードサジェストログのレコードは、例えば、ユーザ装置20を介して検索クエリーを行ったユーザ(ユーザID:001)によるレコードである。図例では、日時フィールドに格納された日時情報から、“2011/1/31 17:00:00”〜“2011/1/31 17:00:01”の間に3文字の文字列を入力していることがわかる。
本情報検索システム10の検索リテラシーの分析処理は、ユーザログDB220に格納されたユーザログテーブル221の、ユーザ毎のレコードに含まれる各種情報に対して処理が行われる。検索リテラシーの分析処理は、ユーザログレコードの各フィールドに格納された情報に対し、次の照合条件との合致の度合を分析する。
(1)検索結果が0件となる検索クエリー入力
(2)検索エンジンの補助機能(例えば、形態素解析機能)を必要とする検索クエリー入力
(3)検索クエリーの工夫(AND,OR,NOT,「site:」等)
(4)検索結果に対するクリック操作の有無
(5)検索結果に対するURL選別の有無
(6)検索クエリーに対する文字入力速度
(7)検索クエリーに含まれるキーワードの早期検索
(1)検索結果が0件となる検索クエリー入力
本情報検索システム10の検索リテラシーの分析処理では、ユーザログテーブル221の検索結果URLフィールドに格納された検索結果の検出件数から入力された検索クエリーの妥当性を分析する。特に、検索結果として検出件数が0件であることを示す“−”である場合には、所望の情報を得るための検索クエリーが入力されていないと分析できる。本情報検索システム10では、ユーザログテーブル221の検索結果URLフィールドに格納された検索結果が0件であることを示す“−”である場合には、指標値を付与する採点処理として減点処理を行う。
例えば、図11に例示するユーザ(ユーザID:001)のレコードでは、検索結果URLフィールドに“−”が格納されていることから、検索結果が「0件」となる検索クエ
リー“アジアカップの日本のサブメンバー”が入力されていると分析する。このケースでは、検索クエリーに、“アジアカップ”以外の情報の特徴を表す、複数のキーワードが助詞で結合された状態で含まれているため、例えば、ユーザ(ユーザID:001)の情報検索操作入力の知識が不十分であると分析できる。
(2)検索エンジンの補助機能(例えば、形態素解析)を必要とする検索クエリー入力
本情報検索システム10の検索リテラシーの分析処理では、ユーザログテーブル221の検索クエリーフィールドに格納された検索クエリーについて、形態素解析等の検索エンジンの補助機能を必要とするものであるかを分析する。検索クエリーとして、自然言語で記述された検索文が入力された場合、複数のキーワードが検索文に含まれるため、特徴となるキーワードの特定が不十分であると分析できる。例えば、図11に例示するユーザ(ユーザID:001)のレコードでは、“アジアカップの日本のサブメンバー”との検索文が、検索エンジンの補助機能を必要とする検索クエリーと分析する。本情報検索システム10では、検索クエリーについて、形態素解析等の検索エンジンの補助機能を必要とするものである場合には、指標値を付与する採点処理として減点処理を行う。
(3)検索クエリーの工夫(AND,OR,NOT,「site:」等)
また、検索リテラシーの処理では、ユーザログテーブル221の検索クエリーフィールドに格納された検索クエリーについて、検索式(AND,OR,NOT等)を用いた工夫や、特定のWebサイトの中で限定した検索を行う「site:」等の、コマンドを用いた工
夫が施されているか分析する。検索式やコマンド等の検索オプション設定を用いた検索クエリーが入力された場合、検索式やコマンド等を扱うための検索知識が十分であると分析できる。本情報検索システム10では、検索クエリーについて、検索式やコマンド等の検索オプション設定を検知し、指標値を付与する採点処理として加点処理を行う。
例えば、図11に例示するユーザ(ユーザID:001)のレコードでは、検索クエリーフィールドに格納された各検索クエリーには、検索式やコマンド等の検索オプション設定が検知できないため、何れも工夫がなされていないと分析する。一方、図12に例示するユーザ(ユーザID:002)のレコードでは、“アジアカップ ●川 代理”等のように複数のキーワードをスペースで連接させて検索クエリーを作成しているため、論理演算子ANDを用いた工夫が施されていると分析する。また、検索クエリー:“アジアカップ site:wwww.tv-XXXX.co.jp”には、「site:」コマンドを用いた工夫が施されていると分析する。
(4)検索結果に対するクリック操作の有無
検索リテラシーの分析処理では、ユーザログテーブル221の検索結果URLフィールドに格納された検索結果URL情報と、閲覧URLフィールドに格納された閲覧URL情報から、入力された検索クエリーの適切さを分析する。ユーザログテーブル221のレコードでは、検索結果URLフィールドに格納された検索結果URL情報は、検索クエリーに応じた各種Webサイトの検索結果であり、閲覧URLフィールドに格納された閲覧URL情報は、関心のある情報を所望するユーザの判別によって選択された検索結果である。このため、検索結果URLフィールドに格納された検索結果に対し、閲覧URLフィールドに格納された閲覧URL情報を照らし合すことにより、ユーザにとって適切な検索クエリー入力であったかを分析する。ユーザログテーブル221のレコードにおいて、検索結果URLフィールドに検索結果URL情報が格納された行の直後に、閲覧URLフィールドに閲覧URL情報が格納された行が配行された場合、ユーザにとって適切な検索クエリー入力が行われたと分析できる。本情報検索システム10では、検索結果に対するクリック操作の有無を検知し、クリック操作が行われていなかった場合には、指標値を付与する採点処理として減点処理を行う。
例えば、図11に例示するユーザ(ユーザID:001)のレコードにおいて、“あdじあkっぷ”が格納された検索結果URLフィールドには5件の検索結果URL情報が格納されている。しかし、直後には、閲覧URLフィールドに閲覧URL情報を格納した行が続いて配行されていないことから、“あdじあkっぷ”はユーザにとって適切な検索クエリー入力とは言えないと分析する。一方、検索結果URLフィールドに5件の検索結果URL情報が格納された“アジアカップ”では、直後に閲覧URLフィールドに閲覧URL情報を格納した行が続いて配行されているため、“アジアカップ”はユーザにとって適切な検索クエリー入力と分析する。
(5)検索結果に対するURL選別の有無
また、検索リテラシーの分析処理では、ユーザログテーブル221の検索結果URLフィールドに格納された検索結果URL情報と、閲覧URLフィールドに格納された閲覧URL情報から、検索結果に対するユーザのURL選別の有無を分析する。検索結果URLフィールドに格納された検索結果URL情報は、検索クエリーに応じて検索された結果の各種WebサイトURLであり、この検索結果ULR情報はユーザ装置20,20aに出力される。一方、閲覧URLフィールドに格納された閲覧URL情報は、ユーザ装置20,20aに出力された検索結果URL情報の中からユーザの判別によって選択されたURL情報である。このため、検索結果URLフィールドに格納された検索結果URL情報に対し、閲覧URLフィールドに格納された閲覧URL情報を照らし合すことにより、ユーザによって情報の判別が行われたかを分析する。検索結果に対するURL選別の有無は、検索結果URL情報の並び順と閲覧URL情報の並び順との一致度で判定される。本情報検索システム10では、検索結果URL情報の並び順と、閲覧URL情報の並び順を比較し、一致度が高い場合には、指標値を付与する採点処理として減点処理を行う。
例えば、図11に例示するユーザ(ユーザID:001)のレコードにおいて、検索クエリーとして“アジアカップ”が格納された検索結果URLフィールドには5件の検索結果URL情報が格納されている。そして、直後には、閲覧URLフィールドに閲覧URL情報を格納した行が続いて配行されている。さらに、閲覧URLフィールドに閲覧URL情報を格納した行は、“AD_URL1”→“AD_URL2”→“WEB_URL1”の
順に連続している。各行での閲覧URLフィールドに格納された閲覧URL情報と、検索クエリーとして“アジアカップ”が格納された検索結果URLフィールドの検索結果URL情報と照らし合すことにより、ユーザ(ユーザID:001)によってクリック操作された閲覧URL情報は、提示された検索結果URL順に連続していると分析する。つまり、並び順の合致度が高いと判断できる。このケースでは、ユーザによるURL選別は行われていないと分析する。
一方、図12に例示するユーザ(ユーザID:002)のレコードでは、検索クエリーとして“アジアカップ site:wwww.tv-XXXX.co.jp”が格納された検索結果URLフィー
ルドには、“AD_URL1”,“AD_URL2”,“WEB_URL1”,“WEB_URL2”,“WEB_URL3”の5件の検索結果が順に格納されている。そして、直後
には、閲覧URLフィールドに“AD_URL2”を格納した行と、“WEB_URL3”を格納した行とが連続して配行されている。各行での閲覧URLフィールドに格納された閲覧URL情報と、検索クエリーとして“アジアカップ site:wwww.tv-XXXX.co.jp”が
格納された検索結果URLフィールドの検索結果URL情報と照らし合すことにより、ユーザ(ユーザID:00)によってクリックされた閲覧URL情報は、ユーザによるURL選別が行われていると分析する。
(6)検索クエリーに対する文字入力速度
また、検索リテラシーの分析処理では、キーワードサジェストログ214の日時フィールドに格納された日時情報、入力文字列フィールドに格納された入力文字列情報から、入
力された検索クエリー(キーワード)に対する文字入力速度を分析する。検索クエリーの入力速度が早い場合、文字打刻速度が速いことから、端末操作に慣れたユーザと分析できる。また、本情報検索システム10で提示されたサジェスト単語を選択し、検索クエリーとする場合には、キーワードサジェスト機能を有効に活用していると分析できる。本情報検索システム10では、サジェスト単語を選択し、検索クエリーとして活用している場合に、検索クエリー入力作業の速度と所定の閾値とを比較行う。本情報検索システム10では、検索クエリーの入力作業の速度が閾値以上である場合には、指標値を付与する採点処理として加点処理を行う。一方、閾値未満である場合には、指標値を付与する採点処理として減点処理を行う。
例えば、図8に例示するユーザ(ユーザID:001)のレコードでは、日時フィールドに格納された日時情報と入力文字列フィールドに格納された文字列情報とから、時間経過に伴う打刻キーの推移が確認でき、約1秒間に“ym”なる2文字が打刻されていることがわかる。例えば、当ユーザの文字入力速度(キー打刻速度)は、2文字/秒であると分析できる。従って、例えば、分析された文字入力速度を所定の閾値と比較することにより、当ユーザの文字入力速度が速いか否かを分析できる。
図8に例示するユーザ(ユーザID:001)のレコードでは、入力速度(キー打刻速度)を分単位の打刻文字数に換算すると120文字/分である。所定の閾値を100文字/分とすれば、ユーザ(ユーザID:001)の文字入力速度は閾値より速いため、例えば、端末操作に慣れたユーザと分析できる。一方、所定の閾値を150文字/分とすれば、ユーザ(ユーザID:001)の文字入力速度は閾値より遅いため、例えば、端末操作に不慣れなユーザと分析できる。なお、図例では“ymo”の入力文字列に対して“ymoフジ●ック”、“ymo●HK”の単語がサジェストされている。このサジェストされた単語がユーザログテーブル221に検索クエリー情報として格納されている場合には、当ユーザは、サジェストされた単語を活用し検索クエリー入力作業を行ったと分析できる。
(7)検索クエリーに含まれるキーワードの早期検索
また、検索リテラシーの分析処理では、ユーザログテーブル221の検索クエリー情報と日時情報から、検索クエリーに含まれる検索キーワードの検索時期情報を分析する。検索クエリーに含まれる検索キーワードであって、他のユーザのユーザログレコードに格納されたキーワード情報に一致または部分一致する場合、当検索キーワードの日時情報と他のユーザログレコードの日時情報とを比較することにより、検索時期の早期性を分析する。例えば、検索キーワードが格納された当ユーザログレコードと他のユーザログレコードの日時情報から、経過時間を算出できる。そして、算出された経過時間に対し、所定の閾値との比較を行うことにより、当ユーザの検索クエリーに対する検索時期の早期性が分析できる。検索時期が早期であれば、検索対象となる情報分野への関心度が高いと分析できる。本情報検索システム10では、経過時間と所定の閾値とを比較し、閾値以上である場合には、指標値を付与する採点処理として加点処理を行う。
尚、上述した分析例では、検索クエリーに対応する日時情報との比較による経過時間から検索時期の早期性を分析したが、検索クエリーに含まれる検索キーワード情報について、他のユーザとの相対的な時間関係が分析できればよい。
本情報検索システム10の検索リテラシーの分析処理では、分析結果を、ユーザの検索キーワードに対するリテラシー判別のための指標とするため、上述した照合条件毎に採点処理を行う。検索リテラシーの分析処理は、ユーザログDB220に格納された検索クエリーに含まれるキーワード毎に採点処理を行う。検索リテラシーの分析処理で実行される採点処理として、例えば、予め基本点(例えば、50点)を付与し、上述した照合条件に
合致するか否かで加点及び減点を行う採点処理が可能である。
図8、11に例示するユーザ(ユーザID:001)のレコードを採点処理の例に取れば、検索結果が0件となる検索クエリーが入力されていることから“X”点の減点処理が行われる。また、検索クエリーとして“あdじあkっぷ”が格納された検索結果URLフィールドには、検索結果が得られているにも関らず、検索結果に応じた閲覧要求であるクリック操作が行われていないことから、同様に“X”点の減点処理が行われる。また、検索クエリーとして“アジアカップ”の検索結果を、最上位から順番にクリック操作していることから、同様に“X”点の減点処理が行われる。また、文字入力速度の閾値として3文字/秒とすれば、図11に例示するユーザ(ユーザID:001)レコードでは、1秒間に2文字のキー打刻のため、同様に“X”点の減点処理が行われる。従って、図11に例示するユーザ(ユーザID:001)レコードでは、例えば50点の基本点に対し、“X×減点処理数”が採点処理として減点されることとなる。例えば、“X”点を“3”点とした場合、図11に例示するユーザのリテラシー指標値は“38”点となり、基本点50点を下回る結果となる。尚、文字入力速度の判定は、検索クエリー情報とキーワードサジェストログ214の応答文字列情報とを比較し、合致する場合に採点処理を行うとしてもよい。
同様に、図12に例示するユーザ(ユーザID:002)のレコードを採点処理の例とする。図12に例示するユーザ(ユーザID:002)のレコードでは、検索クエリーに検索式やコマンドが使用されていることから、“Y”点の加点処理が行われる。また、各検索クエリーの検索結果に応じてクリック操作が行われていることから、“Y”点の加点処理が行われる。尚、検索式の複雑さ、例えば、論理演算子(AND,NOT,OR等)の個数に応じて配点してもよい。さらに、各検索クエリーの検索結果に応じたクリック操作では、URL情報の取捨選択による選別が行われているから、“Y”点の加点処理が行われる。従って、図12に例示するユーザ(ユーザID:002)のレコードでは、例えば50点の基本点に対し、“Y×加点処理数”が採点処理として加点されることとなる。例えば、“Y”点を“4”点とした場合、図12に例示するユーザのリテラシー指標値は“62”点となり、基本点50点を上回る結果となる。
このように、本情報検索システム10の検索リテラシーの分析処理では、上述した照合条件ごとに採点処理を行うことにより、ユーザログテーブル221に格納された検索クエリーに含まれるキーワード毎に検索リテラシーを判定するための指標値を得ることができる。そして、ユーザ毎に全てのキーワードに対する指標値を加算平均することにより、検索操作全般に対する能力判定値を得ることができる。全てのキーワードに対し指標値の加算平均を行うことにより、検索要求を行ったユーザの得意分野、不得意分野に偏らない、検索操作全般に対するリテラシーを判定することができる。尚、キーワード毎に得られた指標値の、ユーザ毎の平均化処理は、検索リテラシー判定部140によって実行される。また、キーワード毎に得られた指標値を、同一キーワードを含む検索クエリーを有する複数のユーザログ情報と対応させることにより、ユーザログ情報に含まれる検索クエリー情報や閲覧URL情報等をリコメンド情報とすることができる。
尚、上述の採点例では、減点処理として“X”点、加点処理として“Y”点を配点するが、共通する配点(“X”=“Y”)による採点処理としても良い。また、例えば、“4”点、“3”点、“2”点、“1”点等のように段階的に差分を有する複数の配点基準を設け、照合条件に応じて配点するとしても良い。
さらに、上述した採点処理例では、基本点を付与した上で照合条件毎に加点及び減点を行うが、加点は行わずに照合条件に合致しなければ減点する減点方式としてもよい。また、逆に、減点は行わずに照合条件に合致した場合に加点する加点方式としてもよい。
〔検索リテラシー分析処理及び検索リテラシー判定処理フロー〕
図13〜図15に本情報検索システム10の解析サーバ装置100で実行される検索リテラシー分析処理及びリテラシー判定処理のフローチャートを例示する。図13〜図15に例示するフローチャートは、検索ログ取得部110、検索ログ処理部120、検索リテラシー分析部130、検索リテラシー判定部140で実行される処理である。
図13に例示するフローチャートにおいて、検索ログ取得部110は、定期処理により、検索履歴DB410に格納された検索履歴の取得を行い、検索クエリーログ211、クリックURLログ212、検索結果表示ログ213、キーワードサジェストログ214を抽出し、検索ログDB210に格納する(S1)。そして、検索ログ処理部120は、検索ログDB210に格納された検索クエリーログ211、クリックURLログ212、検索結果表示ログ213からユーザログテーブル221を生成し、ユーザログDB220に格納する(S2〜S3)。ユーザログテーブル221は、検索ログ取得部110で抽出された各ログファイルのセッションIDを結合キーとして、各ログファイルを結合処理したものである。
次に、検索リテラシー分析部130は、検索ログDB210に格納されたキーワードサジェストログ214の読み込みを行い、検索リテラシーDB230に格納されたリコメンド決定テーブル232の読み込みを行う(S4〜S5)。
次に、検索リテラシー分析部130は、ユーザログテーブル221の各種情報に基づいて、検索クエリーに含まれる検索キーワードへの分析処理を行う。以下の処理では、リテラシー分析処理の結果が格納される検索リテラシー算出テーブル231は、図7に例示するように、ユーザID毎に作成されるとして説明を行う。
検索リテラシー分析部130は、ユーザログテーブル211のユーザIDに対する検索リテラシー算出テーブル231が、検索リテラシーDB230に存在するかを判断する(S6)。検索リテラシー分析部130は、分析処理の対象であるユーザIDを検索キーとして、検索リテラシーDB230の検索を行い、分析処理の対象であるユーザIDを含む検索リテラシー算出テーブル231の有無を判断する。
検索リテラシー分析部130は、検索リテラシー算出テーブル231に、分析処理の対象であるユーザIDの検索リテラシー算出テーブル231が存在しない場合(S6“NO”)には、分析処理の対象であるユーザIDに対応する検索リテラシー算出テーブル231の作成を行い、検索リテラシーDB230に格納する(S8)。一方、分析処理の対象であるユーザIDを含む検索リテラシー算出テーブル231が存在する場合(S6“YES”)には、格納された検索リテラシー算出テーブル231の読み込みを行う(S7)。検索キーワードに対して付与される指標値を、ユーザの能力判定値に反映させるためである。尚、以下の説明では、検索キーワードとして、検索要求時に受け付けた検索クエリーの最初の単語名詞を対象とし、分析処理の一例の説明を行う。
ステップS6〜S8の処理は、図13及び図7に限定されるわけではない。例えば、ユーザ毎のレコードの纏まりを単位ブロックとし、複数のユーザブロックが連続して一つのテーブルを構成する場合には、ステップS6では、分析処理の対象であるユーザIDを検索キーとして、検索リテラシー算出テーブル231の検索を行えばよい。そして、検索リテラシー算出テーブル231に対応する単位ブロックが存在しない場合(S6“NO”)には、分析処理の対象となるユーザIDの単位ブロックを作成し、検索リテラシー算出テーブル231に格納すればよい(S8)。そして、検索リテラシー算出テーブル231に対応する単位ブロックが存在する場合には、対応するユーザIDの単位ブロックの読み込
みを行うとしてもよい(S6“YES”〜S7)。
次に、図14に例示するフローチャートでは、検索リテラシー分析部130は、先ず、検索リテラシー算出テーブル231に、ユーザログテーブル211の検索クエリーに応じた検索キーワード行が含まれているかを判断する(S101)。検索リテラシー分析部130は、検索リテラシー算出テーブル231のキーワードフィールドに格納されたキーワード情報の検索を行い、該当する検索キーワードが存在するかを判断する。
検索リテラシー分析部130は、検索リテラシー算出テーブル231のキーワードフィールドに、該当する検索キーワードが存在しない場合(S101“NO”)には、当検索キーワードに対応する行(検索リテラシー算出行、と呼ぶ)を作成し、キーワードフィールドに当検索キーワードを格納する(S103)。一方、検索リテラシー算出テーブル231のキーワードフィールドに、該当する検索キーワードが存在する場合(S101“YES”)には、対応するキーワード情報(キーワード、指標値)の読み込みを行う(S102)。尚、検索リテラシー分析部130は、ステップS102、S103において、指標値の算出のための基本点(例えば、“50”点)を該当する検索キーワードに付与する。また、以下のステップで処理される加点処理及び減点処理は、ステップS102、3で新たに付与した基本点に対して行われる。尚、ステップS102で読み込まれたキーワード情報(キーワード、指標値)は、例えば、情報処理装置300のメモリ302等の作業領域に保存される。また、ステップS102,S103で付与された基本点も同様に情報処理装置300のメモリ302等の作業領域に保存される
ステップS104において、検索リテラシー分析部130は、ユーザログテーブル211に格納された検索クエリーと、キーワードサジェストログの最終行に格納された応答文字列情報との比較を行い、キーワードサジェスト機能を活用した検索クエリー入力作業を判断する。そして、検索リテラシー分析部130は、ステップS4で取得したキーワードサジェストログ214に格納された日時情報及び入力文字列情報から、当ユーザIDの文字入力速度を分析する(S104)。検索リテラシー分析部130は、例えば、入力文字列情報として最初の行に格納された日時情報と、最終行に格納された日時情報との比較を行うことで、文字入力に費やされた経過時間を判断する。そして、最終行に格納された入力文字列情報から入力文字数を判断し、単位時間(例えば秒単位)当たりの文字入力速度を特定する。検索リテラシー分析部130は、特定された文字入力速度と閾値との比較を行い、ユーザの文字入力速度(キー打刻速度)が速いか、を判断する。例えば、ユーザのキー打刻速度が閾値以上であれば速いと判断し、閾値未満であればそうでないと判断する。検索リテラシー分析部130は、ユーザの文字入力速度が速くない場合(S104“NO”)には、“X”点の減点処理を行い(S106)、ユーザの文字入力速度が速い場合(S104“YES”)には、“Y”点の加点処理を行い(S106)、ステップS107に移行する。なお、検索リテラシー分析部130は、キーワードサジェスト機能を活用した検索クエリー入力作業と判断できない場合には、ステップS104〜S106を実行せずステップS107に移行するとしてもよい。ステップS104〜S106の加点処理及び減点処理は、ユーザログテーブル211に格納された検索クエリーと、キーワードサジェストログの最終行に格納された応答文字列情報とが一致した場合に実行するとしてもよい。更に他の例として、ユーザログテーブル211の日時情報とキーワードサジェストログの日時情報を利用した、ユーザの文字入力速度とサジェストされた単語の選択を含む、クエリー入力作業に対する、トータルな採点処理が可能である。例えば、キーワードサジェストログの最終行の応答文字列フィールドに格納された応答文字列情報がユーザログテーブル211の検索クエリーに含まれ、かつ、当応答文字列情報に対する日時情報と検索クエリーに対する日時情報とが所定の時間範囲で一致する場合に、サジェスト機能を活用した検索クエリー入力作業とすることができる。
尚、図例のステップS104では、入力速度が速いかそうでないかの2値判定でユーザの文字入力速度を判断しているが、例えば2段階の閾値T1,T2(T1>T2)を備え、閾値T1以上であれば速いと判断し、閾値T2未満であれば遅いと判断してもよい。この場合、閾値T1未満且つ閾値T2以上の文字入力速度については加点及び減点処理は行わないとすることができる。また、図例では、減点処理の“X”点として“2”点、加点処理の“Y”点として“2”点が配点されており、例えばステップS108,ステップS114で処理される配点値とは異なる配点を行っている。このように、照合条件に応じて段階的に差分を有する複数の配点基準を設けてもよいし、照合条件に共通の加点基準及び減点基準を設けてもよい。
ステップS107では、検索リテラシー分析部130は、検索クエリーの工夫を判断する。検索リテラシー分析部130は、ユーザログテーブル221の検索クエリーフィールドに格納された検索クエリーついて論理演算子(AND,OR,NOT等)の有無、特定のWebサイトの中で限定した検索を行う「site:」等のコマンドの有無を判断する。検
索リテラシー分析部130は、検索クエリーについて論理演算子やコマンド等が検知できない場合(S107“NO”)には、対応する検索キーワードへの採点処理は行わずステップS109に移行する。一方、検索リテラシー分析部130は、検索クエリーついて論理演算子やコマンド等が検知できる場合(S107“YES”)には、“Y”点の加点処理を行い(S108)、ステップS109に移行する。尚、図例では、加点処理の配点基準“Y”点として“3”点が配点されている。
ステップ109では、検索リテラシー分析部130は、検索クエリーに含まれるキーワード検索時期の早期性を判断する。検索リテラシー分析部130は、ユーザログテーブル221に格納された他のユーザレコードの検索キーワード情報の検索を行う。該当する検索キーワード情報に一致または部分一致する場合、当ユーザの日時情報と、他のユーザレコードの一致または部分一致するキーワード情報が格納された日時情報とを比較する。両日時情報が、所定の経過時間の範囲にある場合には、当検索キーワードによる検索時期が早期であると判断する。例えば、所定の経過時間として時間単位(1時間、6時間、12時間等)日単位(1日等)、週単位(1週間等)が例示できる。
検索リテラシー分析部130は、当検索キーワードによる検索時期が早期でない場合(S109“NO”)には、対応する検索キーワードへの採点処理は行わず、ステップS111に移行する。一方、検索リテラシー分析部130は、当検索キーワードによる検索時期が早期である場合(S109“YES”)には、“Y”点(図例では“3”点)の加点処理を行い(S110)、ステップS111に移行する。
図15に例示するフローチャートのステップS111において、検索リテラシー分析部130は、入力された検索クエリーの妥当性を判断する。検索リテラシー分析部130は、ユーザログテーブル221の検索結果URLフィールドに格納された検索結果URL情報の有無を判断する。検索リテラシー分析部130は、ユーザログテーブル221の検索結果URLフィールドにURL情報が存在する場合(S111“NO”)には、対応する検索キーワードへの採点処理は行わず、ステップS113に移行する。一方、検索リテラシー分析部130は、ユーザログテーブル221の検索結果URLフィールドにURL情報が存在しない場合(S111“YES”)には、検索結果が0件となる検索クエリーが入力されたと判断し、“X”点の減点処理を行い(S112)、ステップS113に移行する。尚、図例では、“X”点として“3”点が配点されている。
ステップS113において、検索リテラシー分析部130は、入力された検索クエリーについて形態素解析を必要とする検索クエリーであるかを判断する。検索リテラシー分析部130は、ユーザログテーブル221の検索クエリーフィールドに格納された検索クエ
リーについて、例えば、自然言語で記述された検索文であるかを判断する。また、形態素解析を必要としない例として、形態素解析を必要としないキーワード、論理演算子,コマンド等で連結したキーワード等が例示できる。
検索リテラシー分析部130は、検索クエリーフィールドに、形態素解析を必要としない検索クエリーが格納されている場合(S113“NO”)には、採点処理は行わず、ステップS115に移行する。一方、検索リテラシー分析部130は、検索クエリーフィールドに、形態素解析を必要とする検索クエリーが格納されている場合(S113“YES”)には、“X”点(図例では“3”点)の減点処理を行い(S114)、ステップS115に移行する。
ステップS115において、検索リテラシー分析部130は、入力された検索クエリーについて、検索結果をクリックする適切な検索クエリーであったかを判断する。検索リテラシー分析部130は、ユーザログテーブル221のレコードにおいて、検索結果URLフィールドに検索結果URL情報が格納された行の直後に、閲覧URL情報が閲覧URLフィールドに格納された行が配行されているかを判断する。URL情報が検索結果URLフィールドに格納された直後の行に、閲覧URLフィールドとして閲覧URL情報が格納されている場合は、少なくとも検索入力を行ったユーザにとって、検索結果を辿る有意なURL情報が得られていると判断できる。つまり、検索結果URL情報は、ユーザにとってクリック操作を行うに値するものであり、適切な検索クエリー入力が行われたと判断できる。
検索リテラシー分析部130は、入力された検索クエリーについて、検索結果に対するクリック操作があった場合(S115“NO”)には、採点処理は行わず、ステップS117に移行する。一方、検索リテラシー分析部130は、入力された検索クエリーについて、検索結果に対するクリック操作がない場合(S115“YES”)には、“X”点(図例では“3”点)の減点処理を行い(S116)、ステップS117に移行する。
ステップS117において、検索リテラシー分析部130は、検索結果に対するURL選別の有無を判断する。検索リテラシー分析部130は、ユーザログテーブル221のレコードにおいて、検索結果URLフィールドに格納された検索結果URL情報と、直後以降の行の閲覧URLフィールドに格納された閲覧URL情報とから、検索結果に対するユーザのURL選別の有無を判断する。例えば、閲覧URLフィールドに格納されたURLが検索結果URLフィールドに格納された検索結果のURLに対応し、かつ、閲覧URLフィールドに格納されたURLが検索結果URLフィールドに格納されたURL順に、連続した行に並ぶ場合には、ユーザによる閲覧情報の判別(URL選別)は行われていないと判断できる。検索結果URL情報と閲覧URL情報の並び順に対する合致の度合が高いためである。また、例えば、閲覧URLフィールドに格納されたURLが検索結果URLフィールドに格納された検索結果のURLに対応し、かつ、検索結果URLフィールドに格納された複数のURLの中から任意の順序で連続した行に並ぶ場合には、合致の度合は低く、ユーザによる閲覧情報の判別(URL選別)が行われていると判断できる。
検索リテラシー分析部130は、検索結果に対するURL選別が行われている場合(S117“NO”)には、採点処理は行わず、ステップS119に移行する。一方、検索リテラシー分析部130は、検索結果に対するURL選別が行われていない場合(S117“YES”)には、“X”点(図例では“3”点)の減点処理を行い(S118)、ステップS119に移行する。
ステップS119では、検索リテラシー分析部130は、ステップS101〜S118で採点処理を行った検索キーワードが新規であるかを判断する。検索リテラシー分析部1
30は、検索キーワードが新規である場合(S119“YES”)には、基本点に加点処理または減点処理が施された採点情報を、検索キーワードが含まれるユーザログ情報と共にリコメンド決定テーブル232に追加する(S120)。ユーザログ情報には、ユーザ識別情報、日時情報、検索クエリー情報、検索結果URL情報、閲覧URL情報が含まれる。そして、検索リテラシー分析部130は、ステップS8で新規に作成された検索リテラシー算出テーブル231の指標値フィールドに、基本点に加点処理または減点処理が施された採点情報を指標値として格納する。このように、リコメンド決定テーブル232には、少なくとも、同一のキーワードを含んだ複数の検索クエリーに対する閲覧URL情報がユーザID情報と共に蓄積する。
一方、検索リテラシー分析部130は、検索キーワードが新規でない場合(S119“NO”)には、基本点に加点処理または減点処理が施された採点情報とリコメンド決定テーブル232に格納された採点情報との比較を行う(S121)。採点情報の比較は、同一ユーザIDの同じ検索キーワードに対する採点結果フィールドに格納された採点情報との間で行う。検索リテラシー分析部130は、基本点に加点処理または減点処理が施された採点情報が、リコメンド決定テーブル232の採点結果フィールドに格納された採点情報より大きい場合(S121“YES”)には、リコメンド決定テーブル232の採点結果フィールドに格納された採点情報を更新する(S123)。一方、検索リテラシー分析部130は、基本点に加点処理または減点処理が施された採点情報がリコメンド決定テーブル232の採点結果フィールドに格納された採点情報より小さい場合(S121“NO”)には、リコメンド決定テーブル232の採点結果フィールドに格納された採点情報は更新せず、ステップS122に移行する。
このように、ステップS121では、新たに採点処理された検索キーワードについて、リコメンド決定テーブル232に格納された採点情報との比較を行い、新たに採点処理された検索キーワードへの採点情報が高い場合にリコメンド決定テーブル232に格納された採点情報の更新を行う。このため、リコメンド決定テーブル232には、検索キーワード毎に、全ユーザの最も高い採点情報が格納される。そして、この採点処理時の検索クエリー情報、検索結果URL情報、閲覧URL情報が最も高い採点情報と共に格納されることとなる。従って、後述するように、リコメンド決定テーブル232から高い採点情報が格納されたユーザの検索クエリー情報、閲覧URL情報等を抽出して提示することが可能となる。この結果、検索操作に対するリテラシーが低いユーザであっても、検索操作に慣れたリテラシーの高いユーザと同じ検索結果を共有することが可能となる。
図15に例示するフローチャートに戻り、ステップS122では、検索リテラシー分析部130は、ステップS7で読み出した検索リテラシー算出テーブル231の指標値と、基本点に加点処理または減点処理が施された採点情報との平均を算出し、採点情報が反映された新たな指標値として再び指標値フィールドに格納する。ステップS122では、既存の指標値と新たに処理された指標値との平均をとるため、例えば、同じ検索キーワードを有する、短期的な複数の検索要求に対する指標値変動を抑えることができる。このため、検索キーワード毎に付与される指標値は安定する。検索リテラシー判定部140では、短期的な指標値変動を抑えた安定した指標値でユーザの検索リテラシーが判定できることとなる。
検索リテラシー分析部130は、ユーザログテーブル211に未処理の検索キーワードがなくなるまでステップS101〜S123の処理を繰り返す。尚、検索キーワードとして、検索要求時に受け付けた検索クエリーの最初の単語名詞を対象とし、分析処理の説明を行ったが、複数の単語名詞が検索クエリーに含まれる場合には全ての単語名詞についてステップS101〜S123の処理を繰り返す。検索リテラシー分析部130は、ユーザログテーブル211に未処理の検索キーワードがなくなると、ステップS9に移行する。
ステップS9では、検索リテラシー判定部140は、採点処理が施されたユーザIDの全ての検索リテラシー算出レコードについて、指標値フィールドに格納された指標値の平均を算出する。検索リテラシー判定部140は、算出した平均値をユーザ毎の検索リテラシーに対する能力判定値として当ユーザIDの検索リテラシー算出レコードに付加する。検索リテラシー判定部140は、キーワードフィールドに本ユーザの検索リテラシー判定の結果を表す、例えば、“[検索操作全般(平均)]”との文言を格納し、対応する指標値フィールドに算出した能力判定値を格納する。検索リテラシー判定部140は、例えば、当ユーザIDの検索リテラシー算出レコードの最終行に付加することができる。
尚、検索リテラシー算出テーブル231の1つの行のキーワードフィールドに格納される、検索リテラシー判定の結果を表す文言は、本ユーザの検索リテラシーの判定の結果を表す表現であればよい。例えば、“「00000」”,“XXXXX”,“ユーザID:Total”,“総判定”,“★★★★”等の、本ユーザの検索リテラシー判定を表すテキス
ト文字や記号等の任意の表現が可能である。また、“[検索操作全般(平均)]”との文言が格納される行の指標値フィールドに格納される能力判定値の表現形式は、能力判定値に応じたリテラシー識別クラスを表す“A”,“B”,“C”等の記号による表現でもよい。本ユーザの検索リテラシーの判定の結果を表す指標であればよい。
検索リテラシー分析部130及び検索リテラシー判定部140は、以上の処理をユーザログテーブル211に未処理のユーザIDがなくなるまでステップS6〜S9及びステップS101〜S123の処理を繰り返す。検索リテラシー判定部140は、ユーザログテーブル211に未処理のユーザIDがなくなると、検索リテラシー算出テーブル231及びリコメンド決定テーブル232を検索リテラシーDB230に格納する。検索リテラシーDB230に格納された検索リテラシー算出テーブル231には、新たに追加された検索キーワードのレコードや更新処理が行われたレコードが含まれる。検索リテラシーDB230に格納されたリコメンド決定テーブル232には、新たに追加された検索キーワードのレコードや採点情報の更新処理が行われたレコードが含まれる。
以上の処理により、検索リテラシー分析部130は、検索クエリーに含まれるキーワード毎にリテラシー判別のための指標値の付与を行い、検索リテラシー判定部140は、全キーワードについて指標値の平均を算出し、能力判定値とする。この結果、本情報検索システム10では、ユーザ毎に、検索キーワードが属する特定の分野に偏らない検索操作全般に対するリテラシーが判定できる。また、検索リテラシー分析部130は、キーワード毎に付与された指標値と、該当する検索キーワードが含まれるユーザログ情報との対応付けを行う。この結果、リコメンド情報に資する、指標値の高い検索クエリー情報、閲覧URL情報等を得ることができる。
〔リコメンド処理〕
図16に、リコメンド処理のフローチャートを例示する。図16に例示するフローチャートは、リコメンド処理部150で実行されるリアルタイム処理である。
図16に例示するフローチャートにおいて、リコメンド処理の開始(START)は、例えば、ユーザ装置20,20aを介して入力された検索要求の受付(検索クエリーの受付)が例示できる。リコメンド処理部150は、検索要求の受付と共に検索要求に伴うユーザIDを取得する(S11)。ユーザIDの取得は、例えば、検索要求受付に伴って検索サーバ装置30が解析サーバ100にユーザIDを通知してもよく、ユーザ装置20、20aからの検索要求を解析サーバ装置100が仲介する形態でユーザIDを取得した後、当検索要求を検索サーバ装置30に通知してもよい。情報検索システムが要求される運用精度、システムの規模、データベースが構築される外部記憶装置の容量等の形態に応じ
た構成が可能である。
リコメンド処理部150は、検索リテラシーDB230に格納された検索リテラシー算出テーブル231に、取得したユーザIDが存在するか否かを判定する(S12)。リコメンド処理部150は、取得したユーザIDを検索キーとして、検索リテラシー算出テーブル231のユーザIDフィールドを検索する。リコメンド処理部150は、検索リテラシー算出テーブル231に該当するユーザIDが存在しない場合(S12、“NO”)には、当ユーザへのリコメンドは行わない(S21)。当ユーザに提示される画面は、従来の情報検索システムで提示するユーザのリテラシーに依らないデフォルトの検索画面である。一方、リコメンド処理部150は、検索リテラシーDB230に格納された検索リテラシー算出テーブル231に取得したユーザIDが存在する場合(S12、“YES”)には、ステップS11で取得したユーザIDの検索リテラシー算出テーブル231に格納された各種情報の読み込みを行う(S13)。
次に、リコメンド処理部150は、ステップS13で読み込んだユーザID(以下、該当ユーザと称する。)の検索リテラシー算出テーブル231に検索要求で受け付けた検索キーワードに対応する行が存在するかを判定する(S14)。リコメンド処理部150は、検索キーワードを検索キーとして、該当ユーザの検索リテラシー算出レコードの検索を行う。リコメンド処理部150は、検索の結果、検索リテラシー算出テーブル231に、検索キーワードに対応する行が存在しない場合(S14、“NO”)には該当ユーザへのリコメンドは行わない(S22)。一方、リコメンド処理部150は、該当ユーザの検索リテラシー算出レコードに、検索キーワードに対応する行が存在する場合(S14、“YES”)には、ステップS15に移行する。
ステップS15において、リコメンド処理部150は、該当ユーザの検索リテラシー算出テーブル231に格納された、検索キーワードに対する指標値の読み込みを行う。そして、リコメンド処理部150は、指標値の判定を行う(S16)。例えば、指標値フィールドに格納された指標値が、採点情報であった場合には、閾値判定により、指標値の高低判定を行う。図7に例示する検索リテラシー算出テーブル231を例にとれば、(1)のユーザでは“アジアカップ”に対する指標値は“35”であり、(2)のユーザでは“60”が格納されている。閾値を“60”とし、閾値以上の指標値はリテラシーが高いと判定するならば、(1)は低いと判定でき、(2)は高いと判定できる。また、指標値フィールドに格納される指標値の表現形式が、指標値に応じたリテラシー識別クラスを表す“A”,“B”,“C”等の記号の場合では、例えば、“A”と一致する場合をリテラシーが高いと判定し、“A”と一致しない場合には低いと判定することができる。ステップS16において、リコメンド処理部150は、閾値判定や比較判定により、該当ユーザの指標値の高低判定を行う。
リコメンド処理部150は、判定の結果、検索リテラシー算出テーブル231に格納された指標値は所定値(閾値)と比較して高いと判断する場合(S16、“NO”)には、該当ユーザへのリコメンドは行わない(S23)。一方、リコメンド処理部150は、検索リテラシー算出テーブル231に格納された指標値は所定値(閾値)と比較して低いと判断する場合(S16、“YES”)には、ステップS17に移行する。
ステップS17において、リコメンド処理部150は、検索リテラシーDB230に格納されたリコメンド決定テーブル232の検索を行い、検索キーワードに対応する複数ユーザの各種情報の読み込みを行う。リコメンド決定テーブル232には、少なくとも、同一のキーワードを含んだ複数の検索クエリーに対する閲覧URL情報がユーザID情報と共に蓄積されている。そして、リコメンド処理部150は、検索キーワードに対する複数ユーザの閲覧URLが1つに集約されているかの判定を行う(S18)。ここで、閲覧U
RLが1つに集約されるとは、リコメンド決定テーブル232に格納された複数ユーザの、閲覧URLフィールドに格納された閲覧URL情報が一つのURLに特定されることである。
一例として、図9に例示するリコメンド決定テーブル232では、“WEB_URL2”と“WEB_URL1”の2つの閲覧URLが閲覧URLフィールドに格納されている。“WEB_URL2”の閲覧URLは、ユーザID002及びユーザID006のユーザが閲覧要求を行ったURLであり、“WEB_URL1”の閲覧URLは、ユーザID003〜005のユーザが閲覧要求を行ったURLである。リコメンド処理部150は、リコメンド決定テーブル232の閲覧URLに格納された閲覧URL情報の抽出を行い、検索キーワードに対する閲覧URLは1つに集約されていないと判定する(S18“NO”)。
リコメンド処理部150は、リコメンド決定テーブル232の閲覧URLが1つに集約されていない場合、採点結果フィールドに格納された採点情報が高いと判定するユーザのユーザログ情報からリコメンドを行う(S20)。リコメンド処理部150は、閲覧URLが複数の場合には、例えば、各閲覧URLに対応する採点情報を平均することでリコメンド情報としての重みづけを行うことが可能である。図9に例示するリコメンド決定テーブル232をリコメンド処理の例に取れば、“WEB_URL2”に対する採点情報は“80”及び“60”である。リコメンド処理部150は、“WEB_URL2”に対する各採点情報を抽出し、平均を算出する。平均の結果、“WEB_URL2”を選択したユーザの平均した採点情報は“70”となる。一方、“WEB_URL1”に対する採点情報は“50”、“40”、“30”であり、同様に平均を算出すれば“40”となる。リコメンド処理部150は、閲覧URL毎に算出された平均した採点情報を比較し、例えば、平均した採点情報が高い閲覧URL(“WEB_URL2”)を「おすすめURL 1位」、平均した採点情報が低い閲覧URL(“WEB_URL1”)を「おすすめURL
2位」等としてリコメンドすることができる。
また、リコメンド処理部150は、採点結果フィールドに格納された採点情報に対して閾値判定を行い、所定の閾値を超えたユーザの検索キーワードに対する閲覧URL情報を抽出し、該当ユーザに対するリコメンド情報とすることが可能である。この場合、リコメンド情報として抽出する閲覧URLは、単一であっても複数であってもよい。また、採点情報が高いユーザによる閲覧URL情報が複数に得られた場合には、例えば、採点情報が高いユーザの検索リテラシー算出テーブル231に格納された検索操作全般に対する能力判定値の高低によって優先度を与えてもよい。検索キーワードに付与された採点情報及び検索操作全般に対する能力判定値の高いユーザの閲覧URLは、検索操作に不慣れなリテラシーの低いユーザにとって所望の情報を得るための有用なリコメンドとなる。このように、リコメンド決定テーブル232のユーザIDと検索リテラシー算出テーブル231のユーザIDを関連付けることにより、より有意なリコメンドを行うことが可能となる。
閲覧URL情報と同様に、リコメンド決定テーブル232の検索クエリー情報についても、リコメンド情報に資することができる。リコメンド処理部150は、例えば、リコメンド決定テーブル232の検索クエリー情報を「検索候補語」としてリコメンドすることができる。図9に例示するリコメンド決定テーブル232をリコメンド処理の例に取れば、“アジアカップ ●川 代理”に対する採点結果フィールドに格納された採点情報は“80”及び“50”である。リコメンド処理部150は、“アジアカップ ●川 代理”に対する複数の採点情報を抽出し、平均を算出する。平均の結果、“アジアカップ ●川
代理”に対する平均した採点情報は“65”となる。一方、“アジアカップ ●川 交替”に対する採点結果フィールドに格納された採点情報は“40”、“30”、“60”であり、同様に複数の採点情報の平均を算出すれば小数点以下を四捨五入して“43”と
なる。リコメンド処理部150は、検索クエリー毎に算出された平均した採点情報を比較し、例えば、平均した採点情報が高い検索クエリー(“アジアカップ ●川 代理”)を「検索候補語 1位」、平均した採点情報が低い検索クエリー(“アジアカップ ●川 交替”)を「検索候補語 2位」等としてリコメンドすることができる。
また、検索クエリー情報についても、採点結果フィールドに格納された採点情報に対して閾値判定を行い、所定の閾値を超えたユーザの検索キーワードに対する検索クエリー情報を抽出し、該当ユーザに対するリコメンド情報とすることが可能である。この場合、リコメンド情報として抽出する検索クエリーは、単一であっても複数であってもよい。また、採点情報が高いユーザによる検索クエリー情報が複数に得られた場合には、例えば、採点情報の高いユーザの検索リテラシー算出レコードに格納された検索操作全般に対する能力判定値の高低によって優先度を与えてもよい。検索キーワードに付与された採点情報及び検索操作全般に対する能力判定値の高いユーザの検索クエリーは、検索操作に不慣れなリテラシーの低いユーザにとって所望の情報を得るための有用なリコメンドとなる。このように、リコメンド決定テーブル232のユーザIDと検索リテラシー算出テーブル231のユーザIDを関連付けることにより、より有意なリコメンドを行うことが可能となる。
図16に例示するリコメンド処理のフローチャートに戻り、リコメンド処理部150は、リコメンド決定テーブル232の閲覧URLが1つに集約されている場合(S18“YES”)には、採点結果フィールドに格納された採点情報の高いユーザの検索クエリー情報からリコメンドを行う(S19)。リコメンド処理部150は、リコメンド決定テーブル232の採点結果フィールドに格納された採点情報の比較を行い、採点情報が高い順に検索クエリー情報を取得する。リコメンド処理部150は、取得した検索クエリー情報を、1つに集約された閲覧URL情報と共にリコメンド情報とする。図9に例示するリコメンド決定テーブル232をリコメンド処理の例に取れば、1つに集約された閲覧URL情報のケースとして、“WEB_URL2”とする。リコメンド処理部150は、リコメンド決定テーブル232の採点結果フィールドを検索し、採点情報の高い(図例では“80”)“アジアカップ ●川 代理”を「検索候補語 1位」の検索クエリー情報としてリコメンドすることができる。また、リコメンド処理部150は、次に採点情報の高い(図例では“60”)“アジアカップ ●川 交替”を「検索候補語 2位」の検索クエリー情報としてリコメンドすることができる。また、図例において、1つに集約された閲覧URL情報を“WEB_URL1”とすれば、採点情報の高い(図例では“50”)“アジアカップ ●川 代理”を「検索候補語 1位」の検索クエリー情報としてリコメンドすることができ、次に採点情報の高い(図例では“60”)“アジアカップ ●川 交替”を、「検索候補語 2位」の検索クエリー情報としてリコメンドすることができる。
尚、上述のリコメンド処理例は、リコメンド決定テーブル232の採点結果フィールドに格納された採点情報が高いユーザ順によるからのリコメンド例であるが、同じ採点情報の複数のユーザが存在するケースも考えられる。このケースでは、例えば、同じ採点情報の各ユーザの、検索リテラシー算出テーブル231に格納された検索操作全般に対する能力判定値を比較することにより、能力判定値の高低による重み付けを行うことができる。リコメンド順の重み付けとして、検索リテラシー算出テーブル231に格納された能力判定値を用いることにより、検索キーワードが属する特定の分野に偏らないリコメンドを行うことができる。
リコメンド処理部150は、ユーザからの検索要求が行われる度に、ステップS11〜S23の処理を実行する。
〔リコメンド例〕
図17にリコメンドの提示画面を例示する。図17は、検索リテラシー算出テーブル231に格納されたキーワードの指標値は所定値(閾値)と比較して能力(リテラシー)が低いと判定されたユーザの端末に表示される検索結果の画面例である。図17に例示するリコメンド提示画面50は、検索クエリーとして検索窓50aに“アジアカップ ●川”が入力された検索結果の画面であり、得られた検索結果50bの最初の1〜10件目を表示する画面である。
リコメンド提示画面50の表示領域50cには、リコメンド処理部150で抽出されたリコメンド情報が表示される。図例では、入力された検索クエリーの“アジアカップ ●川”に対する検索候補語として、“検索上手な人の選択はコレ!”との表記に続き“「アジアカップ ●川 代理」”との検索クエリーがリコメンドされている。同時に、リコメンド処理部150で抽出された閲覧URL情報が、“●刊●ポーツ:控え選手の中で攻撃的なMF特集”とのタイトル表記に続き“(http://WEB_URL2)を閲覧”との表現でリコ
メンドされている。
このように、所定値(閾値)と比較して能力(リテラシー)が低いユーザに、所定値(閾値)と比較して能力(リテラシー)が高いユーザの検索傾向としての検索クエリー情報、閲覧URL情報をリコメンドすることにより、検索に不慣れな初心者であっても、所定値(閾値)と比較して能力(リテラシー)の高いユーザが情報取得に有意とするURLへ手間を掛けずに辿り着くことが可能となる。このため、検索に不慣れなユーザにとって満足度の高い検索サービスが提供できる。
〔効果〕
以上に説明した実施例によれば、本情報検索システム10は、リテラシーの高いユーザの検索傾向を検索結果の提示と共にリテラシーの低いユーザに提供することができる。本情報検索システム10は、キーワードサジェスト機能を活用した検索要求時の検索クエリーに対する文字入力速度を判断する。このため、検索クエリー入力作業に対する作業速度が速いか否かを判定できる。本情報検索システム10は、検索要求時の日時情報から検索時期の早期性を判断する。このため、検索対象となる情報分野への関心度が判定できる。本情報検索システム10は、入力された検索クエリーについて、形態素解析等の検索エンジンの補助機能を必要とするかを判断する。このため、情報検索操作の知識が十分であるかを判定できる。また、本情報検索システム10は、入力された検索クエリーについて、検索式やコマンド等の使用の有無を判断する。このため、検索入力の知識が十分であるかを判定できる。また、本情報検索システム10は、入力された検索クエリーに対応する検索結果の有無を判断する。このため、所望の情報を得るために入力された検索クエリーの妥当性が判定できる。また、本情報検索システム10は、ユーザに提示された検索結果から、閲覧要求を行ったかを判断する。このため、閲覧要求を行う価値のある適切な検索クエリー入力であったかが判定できる。また、本情報検索システム10は、提示された検索結果に対するユーザの取捨選択操作を判断する。このため、検索結果として提示されたULR情報への判別能力が判定できる。また、本情報検索システム10は、検索クエリーに含まれるキーワード毎にリテラシー判別のための指標値の付与を行い、全キーワードについて指標値の平均を算出する。このため、特定のキーワードに偏らない検索操作全般に対するリテラシーが判定できる。同時に、本情報検索システム10は、キーワード毎に付与された指標値を採点情報として、ユーザ識別情報、検索クエリー情報、検索結果URL情報、閲覧URL情報に対応付けて記憶する。このため、採点情報の高いユーザの検索クエリーや閲覧URLを所定の条件で抽出することができ、リコメンド情報とすることができる。本情報検索システム10は、リコメンド情報として、採点情報の高いユーザの検索クエリーや閲覧URLをリテラシーが低いと判断される検索に不慣れな初心者に提供する。このため、検索に不慣れな初心者であっても、リテラシーの高いユーザが情報取得に有意とするURLへ手間を掛けずに辿り着くことが可能となる。このように、本情報検索シス
テム10は、検索サービスの利便性を高めることができ、検索サービスを利用するユーザの満足度を向上させることができる。
《コンピュータが読み取り可能な記録媒体》
コンピュータその他の機械、装置(以下、コンピュータ等)に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、CD−ROM、CD−R/W、DVD、ブルーレイディスク、DAT、8mmテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスクやROM(リードオンリーメモリ)等がある。