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

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

▶ キヤノンマーケティングジャパン株式会社の特許一覧 ▶ キヤノンITソリューションズ株式会社の特許一覧

特開2023-96756文書検索装置、システム、情報処理方法、及びプログラム
<>
  • 特開-文書検索装置、システム、情報処理方法、及びプログラム 図1
  • 特開-文書検索装置、システム、情報処理方法、及びプログラム 図2
  • 特開-文書検索装置、システム、情報処理方法、及びプログラム 図3
  • 特開-文書検索装置、システム、情報処理方法、及びプログラム 図4
  • 特開-文書検索装置、システム、情報処理方法、及びプログラム 図5
  • 特開-文書検索装置、システム、情報処理方法、及びプログラム 図6
  • 特開-文書検索装置、システム、情報処理方法、及びプログラム 図7
  • 特開-文書検索装置、システム、情報処理方法、及びプログラム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023096756
(43)【公開日】2023-07-07
(54)【発明の名称】文書検索装置、システム、情報処理方法、及びプログラム
(51)【国際特許分類】
   G06F 16/335 20190101AFI20230630BHJP
【FI】
G06F16/335
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2021212724
(22)【出願日】2021-12-27
(71)【出願人】
【識別番号】390002761
【氏名又は名称】キヤノンマーケティングジャパン株式会社
(71)【出願人】
【識別番号】592135203
【氏名又は名称】キヤノンITソリューションズ株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】福田 直之
(72)【発明者】
【氏名】中尾 優花
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175HA01
5B175HA02
(57)【要約】
【課題】ユーザの検索実行時に得られなかった検索結果の文書を得る。
【解決手段】入力された第1のクエリに基づいて文書検索を行う。第1のクエリを含む、過去に入力されたクエリ群に基づいて、第1のクエリとは異なる第2のクエリを作成し、第2のクエリに基づいて文書検索を行う。これらの文書検索の結果に基づいて、通知する文書検索の結果を決定する。決定した文書検索の結果を送信する。
【選択図】図1
【特許請求の範囲】
【請求項1】
入力された第1のクエリに基づいて文書検索を行う第1の検索手段と、
前記第1のクエリを含む、過去に入力されたクエリ群に基づいて、前記第1のクエリとは異なる第2のクエリを作成し、該第2のクエリに基づいて文書検索を行う第2の検索手段と、
前記第1の検索手段による文書検索の結果と、前記第2の検索手段による文書検索の結果と、に基づいて、通知する文書検索の結果を決定する決定手段と、
前記決定した文書検索の結果を送信する送信手段と
を備えることを特徴とする文書検索装置。
【請求項2】
前記第1のクエリを、過去に入力されたクエリ群を保持するログに記録する記録手段をさらに備え、
前記第2の検索手段は、前記ログに記録されているクエリ群に基づいて前記第2のクエリを作成し、前記第2のクエリに基づいて文書検索を行うことを特徴とする、請求項1に記載の文書検索装置。
【請求項3】
前記第2の検索手段は、前記ログに記録されているクエリの記録頻度に基づいて前記第2のクエリを作成することを特徴とする、請求項2に記載の文書検索装置。
【請求項4】
前記第2の検索手段は、前記ログにおけるクエリの記録頻度に応じて文書検索における重みが重くなるように、前記第2のクエリを作成することを特徴とする、請求項3に記載の文書検索装置。
【請求項5】
前記第2の検索手段は、前記ログの複数の日付において記録されているクエリについて、文書検索における重みが重くなるように、前記第2のクエリを作成することを特徴とする、請求項4に記載の文書検索装置。
【請求項6】
前記第2のクエリから除外するクエリを設定する設定手段をさらに備え、
前記第2の検索手段は、前記ログに記録されているクエリ群のうち、前記除外するクエリを除いたクエリ群に基づいて、前記第2のクエリを作成することを特徴とする、請求項2乃至5の何れか一項に記載の文書検索装置。
【請求項7】
前記第2の検索手段は、前記ログにおいて所定の期間内に記録されているクエリ群に基づいて、前記第2のクエリを作成することを特徴とする、請求項6に記載の文書検索装置。
【請求項8】
前記第1の検索手段が、前記第1のクエリである文書に基づいて類似文書の検索を行い、
前記第2の検索手段が、前記第1のクエリを含む、前記過去に入力された文書の特徴語に基づいて、前記第2のクエリを作成することを特徴とする、請求項1乃至7の何れか一項に記載の文書検索装置。
【請求項9】
前記決定手段は、前記第2の検索手段による文書検索の結果のうち、前記第1の検索手段による文書検索の結果に含まれないものを、前記通知する文書検索の結果として決定することを特徴とする、請求項1乃至8の何れか一項に記載の文書検索装置。
【請求項10】
前記決定手段は、前記過去に入力されたクエリ群が、前記第1のクエリを入力したユーザIDと異なるユーザIDにより入力されたクエリを含んでいる場合に、前記第2の検索手段による文書検索の結果を前記通知する文書検索の結果として決定することを特徴とする、請求項1乃至8の何れか一項に記載の文書検索装置。
【請求項11】
文書検索装置と、端末装置と、を含むシステムであって、
前記文書検索装置は、
入力された第1のクエリに基づいて文書検索を行う第1の検索手段と、
前記第1のクエリを含む、過去に入力されたクエリ群に基づいて、前記第1のクエリとは異なる第2のクエリを作成し、該第2のクエリに基づいて文書検索を行う第2の検索手段と、
前記第1の検索手段による文書検索の結果と、前記第2の検索手段による文書検索の結果と、に基づいて、通知する文書検索の結果を決定する決定手段と、
前記決定した文書検索の結果を前記端末装置に送信する送信手段と
を備え、
前記端末装置は、
ユーザ操作に応じて入力された前記第1のクエリを前記文書検索装置に対して送信する送信手段と、
前記文書検索装置から送信された文書の検索結果をユーザに提示する提示手段と、
を備えることを特徴とする、システム。
【請求項12】
入力された第1のクエリに基づいて文書検索を行う第1の検索工程と、
前記第1のクエリを含む、過去に入力されたクエリ群に基づいて、前記第1のクエリとは異なる第2のクエリを作成し、該第2のクエリに基づいて文書検索を行う第2の検索工程と、
前記第1の検索工程による文書検索の結果と、前記第2の検索工程による文書検索の結果と、に基づいて、通知する文書検索の結果を決定する決定工程と、
前記決定した文書検索の結果を送信する送信工程と
を備えることを特徴とする、情報処理方法。
【請求項13】
コンピュータを、請求項1乃至10の何れか一項に記載の文書検索装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書検索装置、システム、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
様々なシステム内に蓄積されていく膨大な文書及びデータの中から業務に必要な情報を探し出すのは容易ではない。そのような状況を解決する手段として、キーワードや文書ファイルの入力を受け付けることで、それらと関連又は類似する文書を検索して出力する文書検索システムが用いられている。特許文献1には、検索ログ(クエリの入力回数、又は頻度など)からユーザの検索意図を分析し、検索意図の周期性などを検索結果に反映させる技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2011-085992号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
日々大量の文書が新たに作成され、各システムに保存されていくことから、ユーザが検索した時点では存在せず検索後に新たに保存される文書も多く存在する。そして、そのように検索後に保存された文書の中に、ユーザが求めていた文書が存在することもある。そのため、ユーザがどのような文書を求めているのかを把握し、ユーザの要求に応える文書を適切なタイミングで提示することが求められている。
【0005】
本発明は、ユーザの検索実行時に得られなかった検索結果の文書を得ることを目的とする。
【課題を解決するための手段】
【0006】
本発明の目的を達成するために、例えば、一実施形態に係る文書検索装置は以下の構成を備える。すなわち、入力された第1のクエリに基づいて文書検索を行う第1の検索手段と、前記第1のクエリを含む、過去に入力されたクエリ群に基づいて、前記第1のクエリとは異なる第2のクエリを作成し、該第2のクエリに基づいて文書検索を行う第2の検索手段と、前記第1の検索手段による文書検索の結果と、前記第2の検索手段による文書検索の結果と、に基づいて、通知する文書検索の結果を決定する決定手段と、前記決定した文書検索の結果を送信する送信手段とを備えることを特徴とする。
【発明の効果】
【0007】
ユーザの検索実行時に得られなかった検索結果の文書を得る。
【図面の簡単な説明】
【0008】
図1】本実施形態に係る文書検索装置を含むシステム構成の一例を示す図。
図2】本実施形態に係るコンピュータ装置のハードウェア構成の一例を示す図。
図3】本実施形態に係るクローリング処理の一例を示すフローチャート。
図4】本実施形態に係る文書検索処理の一例を示すフローチャート。
図5】本実施形態に係る検索ログの一例を示す図。
図6】本実施形態に係る文書の通知処理の一例を示すフローチャート。
図7】本実施形態に係る検索のクエリの作成処理の一例を示すフローチャート。
図8】本実施形態に係る通知する文書の決定処理の一例を示すフローチャート。
【発明を実施するための形態】
【0009】
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうち二つ以上の特徴は任意に組み合わされてもよい。また、同一若しくは同様の構成には同一の参照番号を付し、重複した説明は省略する。
【0010】
図1は、本発明の一実施形態に係る文書検索システムのシステム構成の一例を示す図である。本実施形態に係る文書検索システムは、クライアント装置110、文書検索装置120、及びファイルサーバ130を含んでおり、そのそれぞれがネットワークで接続されている。このネットワークは、ローカルエリアネットワーク(LAN)であってもよく、ワイドエリアネットワーク(WAN)であってもよく、またこれらがともに用いられてもよい。なお、図1に示される文書検索システムの各構成は、図2で後述されるコンピュータ装置200を構成する要素の一例であり、コンピュータ装置200の各要素がいずれの装置及びサーバにおいて実装されてもよい。
【0011】
文書検索装置120は、ユーザの入力に基づいてデータベースからの文書の検索を行う検索装置である。本実施形態に係る文書検索装置120は、ファイルサーバ130からファイル情報を取得してデータベースに記憶し、クライアント装置110から送られてくる検索内容に応じて、記憶してあるファイル情報から検索結果を返す処理を行うことが可能である。以下、単に「検索」と表記する場合、文書の検索を指すものとして説明を行う。
【0012】
クライアント装置110は、ユーザの入力を受け付ける端末装置である。本実施形態においては、ユーザがクライアント装置110に入力したキーワードを用いて文書検索装置120が検索処理を実行する。本実施形態に係るクライアント装置110は、ユーザの入力を文書検索装置120に送信可能であれば特に限定はされないが、例えばパーソナルコンピュータ、又はスマートフォンである。
【0013】
本実施形態に係るクライアント装置110は、例えばパーソナルコンピュータ(PC)、又はスマートフォンなどの、ユーザによる入力が可能な端末である。クライアント装置110は、例えば図2における入力デバイス208として機能することが可能であり、ユーザが文書検索を行う際のクエリの入力を取得する。クライアント装置110の入力部は、例えばマウス及びキーボード、又はタッチパネルである。またクライアント装置110は、例えばディスプレイ209ディスプレイなどの表示部を有し、検索結果などの各処理の結果を表示することができる。
【0014】
ファイルサーバ130は、データベースを作成するためのクローリング処理により取得されるファイルを格納するサーバである。本実施形態に係るクローリング処理とは、クローラ又はスパイダーなどと呼ばれるプログラムにより、インターネット上の情報を複製して検索エンジンのデータベース上に追加する処理であるが、公知の技術であるため各処理の詳細な説明は省略する。
【0015】
本実施形態に係る文書検索システムでは、まず文書検索装置120は、ユーザが入力した第1のクエリに基づいて文書検索を行う。次いで文書検索装置120は、第1のクエリを含む過去に入力されたクエリ群に基づいて第1のクエリとは異なる第2のクエリを作成して、第2のクエリに基づいて文書検索を行う。さらに文書検索装置120は、それらの文書検索の検索結果に基づいて、ユーザに通知する文書検索の結果を決定してクライアント装置110へと送信する。
【0016】
図2は、本実施形態に係るコンピュータ装置200のハードウェア構成の一例を示すブロック図である。本実施形態においては、クライアント装置110、文書検索装置120、及びファイルサーバ130のそれぞれが、コンピュータ装置200の構成要素として実装される。CPU(Central Processing Unit)201は、システムバス207を介して接続される各部を統括的に制御する。ROM(Read Only Memory)202は、CPU201が実行する制御プログラムであるBIOS(Basic Input/Output System)、OS(Operating System)、又は文書検索装置120が行う各種処理に必要なプログラム及びデータを格納する。RAM(Random Access Memory)203は、CPU201の主メモリ、又はワークエリアなどとして機能する。本実施形態に係るCPU201は、処理の実行に必要なプログラムなどをROM202又は外部メモリ211からRAM203にロードし、ロードしたプログラムを実行することで各種動作を実現することができる。
【0017】
入力部204は、入力デバイス208からの入力を取得する。本実施形態に係る入力デバイス208は、例えばクライアント装置110のタッチパネル又はキーボードなどであってもよく、音声センサなどの外部装置であってもよく、ユーザによる入力を取得可能であればその形態は特に限定はされない。本実施形態においては、入力部204が、入力デバイス208を介したユーザの入力を、文書検索を行うためのクエリとして取得する。
【0018】
表示部205は、検索結果などの各種処理をディスプレイ209に表示させる。ディスプレイ209は、例えば通信部206を介して接続される外部のディスプレイであってもよく、クライアント装置110の表示部(ディスプレイ、又はタッチパネルなど)であってもよく、文書検索装置120が有する(例えば、ノートパソコンの)ディスプレイ又はタッチパネルであってもよい。このように、表示部205による表示はユーザへの情報の提示が可能であればその形態は特に限定はされず、例えばプロジェクタによる投影が行われてもよい。なお、本実施形態に係るタッチパネルは、マルチタッチスクリーンなど、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。
【0019】
通信部206は、外部の装置との、有線又は無線を介した通信を行う。本実施形態においては通信部206により、文書検索装置120がクライアント装置110及びファイルサーバ130との通信を行う。また通信部206は、外部メモリとの情報の送受信を行ってもよい。ここで、外部メモリとは、例えば外部記憶装置(ハードディスク)、フレキシブルディスク(FD)、又はPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリなどを用いることができる。通信部206は、例えばハードディスクと通信することにより、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、及び編集ファイルなどの各種データを取得することができる。
【0020】
図3は、本実施形態に係る文書検索装置120のCPUが行う、データベース作成処理の一例を示すブロック図である。S301で文書検索装置120は、ファイルサーバ130にファイル情報の取得要求を送信する。S302でファイルサーバ130がファイル情報を文書検索装置120に送信する。S303で文書検索装置120は、取得したファイル情報に基づいて、文書のデータベースを作成する。データベースの作成については一般的なクローリング技術を用いて行うため、詳細な説明は省略する。
【0021】
以下、図4図8を参照して、本実施形態に係る文書検索装置120が行う情報処理の一例について説明を行う。図4は、本実施形態に係る文書検索システムにおいてクライアント装置110と文書検索装置120とが行う、ユーザの入力に基づく検索処理の一例を示すフローチャートである。図7の例では、クライアント装置110に対してユーザが入力したクエリに基づいて、文書検索装置120が検索結果を出力してクライアント装置110に送信し、キーワードのログを記録する。図4図8に示される各処理は、クライアント装置110のCPUと文書検索装置120のCPUとがそれぞれ情報を送受信することにより実行される。なお、図4の基本的な検索処理については一般的な方法を用いることが可能であり、詳細な説明は省略する。
【0022】
S401でクライアント装置110は、ユーザによるクエリの入力を取得し、文書検索装置120へと送信する。本実施形態においては、クエリとは、検索の際に入力されたキーワードと、その検索が行われた日時と、を含んでいる。なお、クエリに含まれる情報はこれらには限定されず、例えば検索のセッションID、及び検索を行ったユーザのID(ユーザID)などがクエリに含まれていてもよい。
【0023】
S402で文書検索装置120は、クライアント装置110から受信したクエリに基づいて文書検索を行う。本実施形態においては、文書検索装置120は、図3に示されるクローリング処理により生成されたデータベースから、一般的な検索技術により文書検索を行うことができる。S403で文書検索装置120は、文書検索の結果をクライアント装置110へと返却し、続く文書検索装置120側の処理をS404へと、クライアント装置110側の処理をS405へと進める。
【0024】
S404で文書検索装置120は、S401で入力されたクエリを、過去に入力されたクエリ群のログに記録する。ここで、ログとは、検索ごとにその検索に関する情報をまとめたものであり、図5にその一例が示されている。図5の検索ログ506においては、検索の日時501、セッションID502、ユーザID503、及び検索キーワード504が、それぞれ検索を行った回ごとにリストとして記録されている。検索ログ507及び508については後述する。
【0025】
S405でクライアント装置110は、文書検索装置120から返却された検索結果を表示する。S406でクライアント装置110は、検索結果の絞り込みを行うか否かの判定を行い、絞り込みを行う場合には処理をS407へと進め、そうでない場合には処理をS408へと進める。ここでは、クライアント装置110は、検索結果の絞り込みを行うか否かのユーザの入力を受け付けた場合に、処理をS407へと進めるものとする。
【0026】
S407でクライアント装置110は、検索結果を絞り込む条件を決定する。ここでは、例えばキーワードの絞り込み、又は検索日時の絞り込みなど、ユーザの選択に応じて一般的な条件選択を任意に行うことが可能である。次いで、処理はS402に戻り、文書検索装置120は、S407で絞り込んだ条件で再び文書検索を行う。
【0027】
S408でクライアント装置110は、検索結果の中から閲覧する文書のユーザ選択を受け付け、選択された文書をユーザに表示する。S409で文書検索装置120は、S408で選択された文書を記録し、処理を終了する。S409で記録された文書は、例えば後述するクエリの重み付け処理において重みを設定する際に使用されてもよく、検索結果のランキングの際の統計処理などに使用されてもよい。
【0028】
次いで、図6及び図7を参照して、文書検索の結果のリコメンド処理について説明を行う。本実施形態においては、例えば図4に示したユーザの検索が行われた後の時刻に図6の処理が行われ、図4の検索時点では得られなかった検索結果がリコメンド文書としてユーザに提示される。説明のため、図6の処理は、図4の検索処理が行われた後に決まった時刻に行われるものとして以下の記載を行うが、これらの処理を行うタイミングは特に限定されるわけではない。
【0029】
S601で文書検索装置120は、図4のS404で記録したクエリを含む、過去に入力された過去のクエリ群のログに基づいて、リコメンド文書の検索に用いるクエリを設定する。S601における詳細な処理は、図7を参照して後述する。
【0030】
S602で文書検索装置120は、S601で設定したクエリに基づいて文書検索を行う。S603で文書検索装置120は、S602の検索結果を取得する。この検索処理は、S402と同様に一般的な検索技術により行うことが可能である。S604で文書検索装置120は、S601で設定し、S602で文書検索を実行したクエリを検索ログとして記録する。
【0031】
図5の検索ログ507及び508は、S604で記録されるログの一例である。検索ログ507及び508においては、検索ログ506と同様に、検索実行時の日時と、セッションIDと、ユーザID(ここでは、システムのID)と、検索キーワードとが、リストとして記録されている。ここでは検索キーワードごとに重みが設定されているが、重み付け処理については図7を参照して後述する。なおここで、検索ログ507はユーザが前回検索を行った日時から現時点までのログから作成されたクエリによるログであり、検索ログ508は所定期間のログから作成されたクエリによるログである。
【0032】
S605で文書検索装置120は、S402で取得した検索結果と、S603で取得した検索結果と、に基づいてユーザに通知する検索結果をリコメンド文書として決定する。この処理については図8を参照して後述する。
【0033】
S606で文書検索装置120は、S605で決定したリコメンド文書を、クライアント装置に送信する。S607で文書検索装置120は、送信したリコメンド文書を記録する。
【0034】
S608でクライアント装置110は、文書検索装置120から送信されたリコメンド文書を表示し、ユーザに通知する。次いでS609でクライアント装置110は、通知したリコメンド文書から、通知不要なキーワード又は文書があるか否かのユーザの選択を受け付ける。通知不要なキーワード又は文書がある場合には処理がS610へと進み、そうでない場合には処理を終了する。
【0035】
S610でクライアント装置110は、S609でユーザに選択されたキーワード又は文書を示す情報を文書検索装置120へと送信する。S611で文書検索装置120は、選択されたキーワード又は文書を示す情報を、通知対象外のキーワード又は文書として記録し、処理を終了する。通知対象外のキーワード又は文書を示す情報は、後述する図7のリコメンド文書選定処理において用いられる。
【0036】
図6に示されるようなリコメンド処理は、上述したように検索処理の後に実行されるが、そのタイミングは特に限定はされない。例えば本実施形態に係るリコメンドの検索処理は、決まった日時(例えば、毎日/隔日の夜間、AM1時など)に開始され、次回にユーザがクライアント装置を起動した際にS608のリコメンド文書の通知処理が行われてもよい。この場合、リコメンドの検索処理を開始する日時は、ユーザが設定可能であってもよく、予め設定されていてもよい。定期的にリコメンド用の文書の検索及び通知を行うことにより、
【0037】
また文書検索装置120は、入力された検索のログに基づいて、図6に示されるリコメンドの検索処理のタイミングを決定してもよい。例えば文書検索装置120は、検索のログに記録された最後の検索が実行されてから所定の時間(例えば一日など、ユーザにより任意に設定が可能)が経過した場合にリコメンドの検索処理を開始してもよい。このような処理によれば、ユーザにリコメンドする検索対象がある程度蓄積されたと推定されるタイミングで文書の検索処理を行い、ユーザにリコメンドすることが可能となる。
【0038】
また、S608で行うようなリコメンド文書の通知方法は、ユーザに通知が可能であれば特に限定はされない。例えばクライアント装置110は、ユーザにより起動されたタイミングでディスプレイ上にリコメンド文書の存在を通知し、その通知をユーザが選択することによりリコメンド文書の表示を行ってもよい。また例えば、クライアント装置110は、文書検索装置120からリコメンド文書を取得したタイミングで、ステータスバーなどにリコメンド文書を取得した旨の通知を表示してもよい。このように通知される内容は、リコメンド文書のタイトルであってもよく、リコメンド文書が存在する旨を示すメッセージであってもよく、リコメンド文書の数であってもよく、これらに限定されるわけではない。さらに、この通知は表示部の表示処理にのみ限定はされず、例えば音声又は振動などによる通知が行われてもよい。
【0039】
図7は、本実施形態に係るS601において行われる、リコメンド文書の検索に用いるクエリの選定(作成)処理の一例を示すフローチャートである。図7に示される処理は、文書検索装置120のCPUが所定の制御プログラムを読み出すことにより実行される。
【0040】
S701において文書検索装置120は、記録しているログを取得する。本実施形態においては、文書検索装置120は、ログに加えて、S409で記録した選択された文書の情報、又はS611で記録した通知対象外のキーワード又は文書の情報なども取得してもよい。なお、以下の処理においては所定期間のログ(例えば前日からの一日分、又は現時点から一週間前まで)が参照されるものとするが、例えば所定の記録回数分のログが参照されてもよく、指定された期間のログが参照されてもよく、参照されるログはこれらに限定されるわけではない。本実施形態においては、リコメンド通知を行うユーザが前回検索を行った日時から現時点までのログと、所定期間のログと、のそれぞれについて後続する処理が行われ、別々にリコメンド文書の検索に用いるクエリが設定されるものとする。
【0041】
S702で文書検索装置120は、通知対象外のキーワードが存在する場合に、リコメンド文書の検索に用いるクエリの選定候補からそのキーワードを除外する。S703で文書検索装置120は、ログに基づいて、最後に入力されてから所定の期間が経過したキーワードをクエリの選定候補から除外する。すなわち文書検索装置120は、所定の期間内に記録されているクエリ群を候補として、リコメンド文書の検索に用いるクエリを選定してもよい。この所定の期間は、ユーザが任意に設定可能であってもよく、予め設定されていてもよい。
【0042】
このように文書検索装置120は、リコメンド文書の検索に用いるクエリの選定候補から、除外するクエリを設定してもよい。S702においては、ユーザの入力に基づいて設定された通知対象外のクエリ(キーワード)が選定候補から除外され、S703においては、ログの日時に基づいて選択されるクエリが選定候補から除外されている。S702~S703はそのような除外処理の一例であり、除外されるクエリはこれらには限定されない。例えば文書検索装置120は、ログにおける記録頻度が所定の閾値以下となるクエリ
を選定候補から除外してもよい。なお、本実施形態において、ログにおけるクエリの記録頻度とは、参照しているログの記録の総回数に対するそのクエリの登場頻度であってもよく、期間あたりのそのクエリの記録回数であってもよい。
【0043】
S704~S705で文書検索装置120は、ログを参照して、リコメンド用のクエリの文書検索における重みを設定する。S704で文書検索装置120は、参照するログの、複数の日付において記録されているクエリの文書検索の重みを重く設定する。ここで、文書検索装置120は、参照するログにおけるクエリの記録頻度に応じて、クエリの文書検索の重みを決定することができる。例えば文書検索装置120は、記録されている日付が多いクエリほど検索の重みが重くなるように各重み値を設定することができる。例えば、文書検索装置120は、「ワークフロー」というキーワードが2日間にわたって検索されていた場合には、重み値を2倍して「ワークフロー^2」を検索用のクエリとすることができる。
【0044】
S705で文書検索装置120は、ログにおいて異なるセッションで記録されているクエリについて、文書検索の重みを重く決定する。ここで文書検索装置120は、例えば、S704で説明した例と同様に、2つのセッションIDで記録されているクエリの重み値を重く(例えば、1.5倍に)設定することができる。なお、S704~S705における重み値の計算処理はこのようには限定されず、例えば記録されている日付、又はセッションの数に応じて所定値を加算するなどしてもよく、それらの数に応じて重み値を算出する関数が格納され、使用されてもよい。
【0045】
なお、S704~S705は一例であり、ユーザにとって重要であると推定されるクエリの重みが重く設定されるのであれば、クエリの重み付けはこれらとは異なる手法を用いてなされてもよい。例えば文書検索装置120は、S409で記録した、ユーザが選択した文書の特徴語を抽出して、その特徴語の重みが重くなるようにしてもよい。
【0046】
S706で文書検索装置120は、ログに基づいて、リコメンド文書の検索に用いるクエリを設定する。この例では、文書検索装置120は、S702~S703で設定されたクエリを除外したログのクエリ群を選定候補として、S704~S705で設定された重みに基づいて、リコメンド文書の検索に用いるクエリを設定する。ここで、除外されていないクエリ全てを用いて、重み付けのなされた検索が行われてもよいが、例えば重み値が所定の閾値以上に設定されたクエリのみを用いてリコメンド文書の検索がなされるなど、異なる手法で使用するクエリの設定が行われてもよい。
【0047】
このように最近使用されていないクエリ又はユーザに選択されたクエリを候補から除外し、繰り返し使用されたクエリの重みを重くすることにより、ユーザがより強く興味持っている情報を検索してリコメンド文書として通知することが可能となる。
【0048】
なおここでは、文書検索装置120は、S701において、S404で記録されるような検索の履歴をログとして取得したが、これに加えて文書の検索の実行時以外にユーザが入力したクエリをログとして取得してもよい。例えば文書検索装置120は、文書作成アプリケーション、電子メール、又は他アプリケーションへのユーザの(投稿文書などの)入力からキーワードを抽出し、ログに含めてもよい。また例えば、ユーザが予め興味があるキーワードとして入力したクエリをログに含め、図7で説明した処理を行ってもよい。
【0049】
上述したように、文書検索装置120は、S605において、S402の検索結果と、S706で設定されたクエリを用いた文書検索(S602)の結果と、に基づいて、最終的に通知対象とするリコメンド文書を決定する。以下、図8を参照して、通知を行うリコメンド文書の決定処理について説明を行う。図8は、本実施形態に係るリコメンド文書の決定処理の一例を示すフローチャートである。図8に示される処理は、文書検索装置120のCPUが所定の制御プログラムを読み出すことにより実行される。
【0050】
S801で文書検索装置120は、S603で取得した文書検索の結果を参照する。ここでは、文書検索装置120は、リコメンド通知を行うユーザが前回検索を行った日時から現時点までのログと、所定期間のログと、のそれぞれからリコメンド文書の検索に用いるクエリを作成し、各クエリを用いたS602における文書検索の結果を参照する。
【0051】
S802で文書検索装置120は、S402の検索結果と、S603で取得した文書検索の結果と、に基づいて、通知対象とする文書を設定する。文書検索装置120は、例えば、S603で取得した文書検索の結果のうち、S402の検索結果に含まれないものを、新規の検索結果であるとして通知対象としてもよい。そのような処理によれば、データベースに存在していなかったが、リコメンド文書の検索のタイミングでは図3に示されるようなクローリング処理によりデータベースに追加されている文書を、通知対象としてユーザに提示することができる。
【0052】
また、S802で文書検索装置120は、所定期間のログから作成されたクエリによる検索結果の文書を、通知対象として設定してもよい。ユーザの検索日時に関わらず、所定期間のログを参照することにより、そのユーザ以外による入力も含む検索履歴に基づいて作成されたクエリによる検索を行うことができると考えられるため、ユーザの検索時には得られなかった文書を得られる可能性が高くなる。ここで所定期間として設定される期間は、例えば一か月程度としてもよいが、ユーザが任意に設定可能であるものとする。同様の観点から文書検索装置120は、リコメンド文書の検索に用いるクエリが、リコメンド通知を行うユーザと異なるユーザIDにより入力されたクエリを含むクエリ群から作成されている場合に、そのクエリによる検索結果の文書を通知対象として設定するようにしてもよい。
【0053】
S803で文書検索装置120は、S802で通知対象とした検索結果の文書を、検索のスコアが高い順に並べるランキング処理を行う。S804で文書検索装置120は、S803で並べた文書のうち、上位の所定件数(任意に設定可能)の文書を、通知対象として設定し、クライアント装置に送信して処理を終了する。S803~S804の処理は、一般的な検索技術におけるランキング処理であるため、詳細な説明は省略する。
【0054】
このような処理によれば、ユーザによる検索実行時に入力されたクエリによる検索結果と、そのクエリを含むクエリのログに基づいて作成されたクエリとによる検索結果と、に基づいて、ユーザに通知する文書検索の結果をリコメンド文書として決定し、送信することが可能となる。したがって、ユーザの検索実行時には得られていない可能性の高い文書をリコメンド文書として通知することできる。
【0055】
また、ユーザが文書をクエリとして入力して類似文書の検索を行う場合にも、その入力された文書のログから同様の処理を行うことが可能である。例えば文書検索装置120は、文書をクエリとした検索実行時に、検索ログ506と同様に検索実行の日時と、セッションIDと、ユーザIDと、検索キーワードに代わってその文書の特徴語と、を検索ログとして記録することができる。その場合文書検索装置120は、キーワードの代わりにログに記録されている特徴語に基づいて、図7と同様の処理によりリコメンド文書の検索に用いるクエリを作成することが可能である。
【0056】
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0057】
発明は上記の実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。
【符号の説明】
【0058】
110:クライアント装置、120:文書検索装置、130:ファイルサーバ
図1
図2
図3
図4
図5
図6
図7
図8