以下、実施の形態について図面を参照して説明する。
図1は、本実施形態の情報処理装置の外観を示す図である。本情報処理装置は、例えばバッテリ駆動可能なノートブッックタイプのパーソナルコンピュータ10として実現されている。
図1は、このコンピュータ10のディスプレイユニット3を開いた状態における斜視図である。コンピュータ10は、コンピュータ本体2と、ディスプレイユニット3とから構成される。ディスプレイユニット3には、LCD(Liquid crystal display)6が組み込まれており、LCD6の表示面は、ディスプレイユニット3のほぼ中央に位置されている。
ディスプレイユニット3は、コンピュータ本体2の上面が露出される開放位置とコンピュータ本体2の上面がディスプレイユニット3によって覆われる閉塞位置との間を回動自在にコンピュータ本体2に取り付けられている。コンピュータ本体2は、薄い箱形の筐体を有するベースユニットであり、その上面にはキーボード4、ポインティングデバイス5などが配置されている。
また、コンピュータ本体2の内部には、例えばIEEE 802.3規格に準拠した有線通信を実行するLAN(Local area network)コントローラと、例えばIEEE802.11n規格に準拠した無線通信を実行する無線LANコントローラとが設けられている。つまり、コンピュータ10は、屋内・屋外を問わずに、インターネット上のWebサイトにアクセスする機能を有している。
この図1に示したキーボード4およびポインティングデバイス5は、コンピュータ10が提供するユーザインタフェースのインプット側を司るデバイスであり、一方、LCD6は、コンピュータ10が提供するユーザインタフェースのアウトプット側を司るデバイスである。より具体的には、コンピュータ10は、例えばHDD(hard disk drive)からメインメモリにロードされてCPU(Central processing unit)によって実行される各種プログラムが、ユーザの指示をキーボード4またはポインティングデバイス5を介して受け付け、この指示に基づいて実行した処理の結果をLCD6を介してユーザに提示する。各種プログラムの中には、コンピュータ10のリソース管理を実行するOS(Operating system)や、ハードウェア制御のためのBIOS(Basic input/output system)の他、OSの制御下で動作する、Webページを閲覧するためのブラウザを含むアプリケーションプログラムおよびユーティリティプログラム等が存在する。
図2は、コンピュータ10のWebページ閲覧に関するソフトウェア構成を示すブロック図である。
図2に示すように、Webページ閲覧に関するソフトウェア(プログラム)として、コンピュータ10は、ブラウザ100、ガジェットアプリケーション200および情報検索支援ユーティリティ300を有している。
ブラウザ100は、インターネット上でWebサイトが公開するWebページを閲覧するためのプログラムである。ブラウザ100は、例えばキーボード4によって入力されたURL(Uniform resource locator)に従って、インターネット上のWebサイトからWebページを取得する。WebページはHTML(Hypertext markup language)によって記載されたHTMLファイルとして構成されており、ブラウザ100は、このHTMLを解釈して取得したWebページのレイアウトを再現し、そのWebページ用の画面を例えばLCD6に表示する。WebページにはURLを埋め込むことができ、ユーザは、キーボード4でURLを入力する他、表示中のWebページに埋め込まれたURLを例えばポインティングデバイス5で選択することによっても、URLをブラウザ100に与えることができる。つまり、ユーザは、あるWebページから別のWebページへとリンクを辿るようにWebページを継続的に閲覧していくことができる。
なお、ここでは、インターネット上のWebサイトの1つとして、お薦めコンテンツ紹介サーバ11が存在するものとする。お薦めコンテンツ紹介サーバ11は、検索サービスを提供するポータルサイト、つまり検索サイトとしても機能する。お薦めコンテンツ紹介サーバ11は、ブラウザ100からキーワードと当該キーワードの属性情報とを受け取ってコンテンツ提供サーバ12が公開するWebページを検索し、その検索結果をブラウザ100に返却する。キーワードの属性情報とは、キーワードが例えば地名なのか人名なのか等を示すカテゴリ(分類)情報である。コンテンツ提供サーバ12も、インターネット上のWebサイトの1つである。
ガジェットアプリケーション200は、コンピュータ10のユーザに対して各種情報を提示するためのプログラムである。情報検索支援ユーティリティ300は、コンピュータ10のユーザ向けの情報をガジェットアプリケーション200に提示させるためのプログラムである。本実施形態のコンピュータ10は、このガジェットアプリケーション200と情報検索支援ユーティリティ300とが協働することにより、Webページを閲覧中のユーザに対して推奨キーワードを効果的に提示することを実現したものであり、以下、この点について詳述する。
図2に示すように、情報検索支援ユーティリティ300は、HTMLファイル抽出部301、キーワード抽出部302、キーワード処理部303およびHTMLファイル作成部304を有している。
HTMLファイル抽出部301は、ブラウザ100が表示中のWebページ、即ちHTMLファイルを抽出するモジュールである。HTMLファイル351は、このHTMLファイル抽出部301によって抽出されたHTMLファイルである。
キーワード抽出部302は、HTMLファイル351に対して構文解析、形態素解析、スコアリング等の処理を施して、当該HTMLファイル351に含まれるキーワードを抽出するモジュールである。キーワード辞書352およびNGワード辞書353は、このキーワード抽出部302によるキーワード抽出に用いられる辞書である。キーワード辞書352は、文章中から単語を抽出するための辞書であり、NGワード辞書353は、抽出結果から除外すべき単語を記録する辞書である。また、抽出キーワード354は、このキーワード抽出部302によってHTMLファイル351から抽出され、優先度順に並べられたキーワードリストである。
キーワード処理部303は、キーワード抽出部302によって抽出された抽出キーワード354を用いて、ユーザに提示するキーワードリストを作成するモジュールである。キーワード処理部303は、抽出キーワード蓄積DB(Database)355に抽出キーワード354を格納する機能を有している。よって、キーワード処理部303は、ブラウザ100が表示中のWebページに対応する最新のキーワードリストを作成する他、一定期間内(例えば1日、1週間等)に閲覧されたWebページから抽出されたキーワードを集計して、当該一定期間単位のキーワードリストを作成することができる。
HTMLファイル作成部304は、キーワード処理部303が作成したキーワードリストを含む各種情報をガジェットアプリケーション200に表示させるためのHTMLファイルを作成するモジュールである。HTMLファイル作成部304は、ローテーションコンテンツ用HTML356とスポットコンテンツ用HTML357との2種類のHTMLファイルを作成する。キーワード処理部303が作成したキーワードリストをガジェットアプリケーション200に表示させるためのHTMLファイルは、スポットコンテンツ用HTML357として作成される。
ローテーションコンテンツ用HTML356は、例えばお薦めの映画、新刊本、新作ソフトウェア、サービス等を紹介するための画面をガジェットアプリケーション200に表示させるためのHTMLファイルである。HTMLファイル作成部304は、ガジェットアプリケーション200を介してお薦めコンテンツ紹介サーバ11からお薦めコンテンツ用HTML201を取得し、お薦めコンテンツ用HTML201に含まれる情報からローテーションコンテンツ用HTML356を作成する。ローテーションコンテンツ用HTML356は、ユーザに提示する情報が周期的に切り替わるように構成される。
また、お薦めコンテンツ紹介サーバ11は、不特定多数のブラウザ100から受け取った検索キーワードを検索履歴DB203に記録しており、一定期間単位で集計した検索キーワードの集計結果をお薦めコンテンツ用HTML201に格納する。HTMLファイル作成部304は、この集計結果が推奨キーワードリストとしてユーザに提示されるようにローテーションコンテンツ用HTML356を作成する。
つまり、情報検索支援ユーティリティ300は、スポットコンテンツ用HTML357によって(1)ブラウザ100が表示中のWebページから抽出された最新のキーワードリストおよび(2)ユーザが一定期間内に閲覧したWebページから抽出されたキーワードリスト、ローテーションコンテンツ用HTML356によって(3)不特定多数のユーザによって一定期間内に検索キーワードとした用いられたキーワードリスト、の3種類のキーワードリストをユーザに提示することができる。なお、(3)の不特定多数のユーザによって一定期間内に検索キーワードとした用いられたキーワードリストも、スポットコンテンツ用HTML357によってユーザに提示することも可能である。
また、HTMLファイル作成部304は、ガジェットアプリケーション200を介して環境設定用XML(Extended markup language)202をお薦めコンテンツ紹介サーバ11から取得する。HTMLファイル作成部304は、この環境設定用XML202に含まれる情報に基づいて、例えばローテーションコンテンツ用HTML356およびスポットコンテンツ用HTML357のそれぞれをどのようなタイミングでガジェットアプリケーション200に表示させるかといった環境設定を実行する。
ガジェットアプリケーション200は、例えばスポットコンテンツ用HTML357の表示中、キーワードリスト内のいずれかのキーワードが例えばポインティングデバイス5によって選択されると、そのキーワードと当該キーワードの属性情報とを、これらの転送先を示すお薦めコンテンツ紹介サーバ11のアドレス情報とともにブラウザ100に供給する。これらの情報を受けたブラウザ100は、お薦めコンテンツ紹介サーバ11に対してキーワードおよび属性情報を転送し、お薦めコンテンツ紹介サーバ11から返送される検索結果を表示する。
図3は、コンピュータ10のWebページ閲覧時における表示画面の一例を示す図である。
図中、a1は、ブラウザ100が確保するウィンドウであり、このウィンドウ内にインターネット上のWebサイトが公開するWebページが表示される。一方、a2は、ガジェットアプリケーション200が確保するウィンドウであり、このウィンドウ内にスポットコンテンツ(a21)またはローテーションコンテンツ(a22)が表示される。スポットコンテンツは、スポットコンテンツ用HTML357を基に表示される画面であり、ローテーションコンテンツは、ローテーションコンテンツ用HTML356を基に表示される画面である。
図3に示すように、ユーザがブラウザ100によっていずれかのWebページを閲覧すると、例えばブラウザ100が表示中のWebページから抽出されたキーワードが推奨キーワードリストとしてガジェットアプリケーション200により表示されるので、客観的な視点を取り入れた、より効率的・効果的なWebページ検索を支援できる。また、情報検索支援ユーティリティ300は、ガジェットアプリケーション200に推奨キーワードリストとして表示させるキーワードの選定およびキーワードの配置を制御する仕組みを備えており、この点については後述する。
なお、ブラウザ100が表示中のWebページがセキュリティに関して予め定められた属性を有する場合、情報検索支援ユーティリティ300は、このWebページからのキーワードの抽出およびキーワードリストの提示を行わない。例えばURLが”https://”で開始されるWebページの場合、認証や暗号化を伴う高セキュリティ通信によって送受信される、個人情報などを含み得るWebページであるので、このようなWebページについてはキーワードの抽出およびキーワードリストの提示の対象から除外する。
また、情報検索支援ユーティリティ300は、ブラウザ100が表示中のWebページがHTMLサーバからではなくファイルサーバから取得されたものであった場合も、このWebページからのキーワードの抽出およびキーワードリストの提示を行わない。この判定は、例えばURLが”fts://”で開始されているか否かを調べることによって行うことができる。
さらに、ブラウザ100は、インターネット等のネットワークを介して取得したWebページだけでなく、コンピュータ10内の例えばHDDに格納されたHTMLファイルを表示することもできる。そこで、情報検索支援ユーティリティ300は、このようなコンピュータ10内のHTMLファイルがブラウザ100によって表示されている場合も、キーワードの抽出およびキーワードリストの提示を行わない。
また、前述したように、情報検索支援ユーティリティ300は、お薦めコンテンツ紹介サーバ11から環境設定用XML202を取得し、この環境設定用XML202に含まれる情報に基づいて、ガジェットアプリケーション200による表示に関する環境設定を実行する。そこで、この環境設定用XML202を使って、キーワードの抽出およびキーワードリストの提示の除外対象とすべきURLを、お薦めコンテンツ紹介サーバ11からコンピュータ10の情報検索支援ユーティリティ300に通知することも可能である。その他、キーワードの抽出およびキーワードリストの提示の除外対象とすべきURLをユーザが入力するためのユーザインタフェースをガジェットアプリケーション200または情報検索支援ユーティリティ300に設けるようにしてもよい。
次に、図4を参照して、コンピュータ10で実行されるスポットコンテンツの表示処理の基本的な流れについて説明する。
ここでは、ガジェットアプリケーション200および情報検索支援ユーティリティ300は、常駐プログラムとしてコンピュータ10に組み込まれているものと想定する。よって、コンピュータ10が起動されると(図4のb1)、ガジェットアプリケーション200のウィンドウが表示される。一方、ブラウザ100は、常駐プログラムとしてコンピュータ10に組み込まれてはおらず、ユーザが必要に応じて起動する。そこで、情報検索支援ユーティリティ300は、起動されると、まず、ローテーションコンテンツをガジェットアプリケーション200に表示させる(図4のb2)。
その後、ブラウザ100が起動されて、ユーザによるWebページの閲覧が開始されると(図4のb3)、情報検索支援ユーティリティ300は、これを契機として、スポットコンテンツの表示を開始する(図4のb4)。なお、ガジェットアプリケーション200によるスポットコンテンツの表示は、ローテーションコンテンツに重畳させる形で実行される。即ち、ローテーションコンテンツの画面遷移は、(表示されないものの)スポットコンテンツの表示中も継続されている。
情報検索支援ユーティリティ300は、ブラウザ100によって新たなWebページが表示される毎に、スポットコンテンツ(スポットコンテンツ用HTML357)を更新する。よって、ユーザは、常に、表示中のWebページから抽出された最新のキーワードリストを見ることができる。このキーワードリスト上で気になるキーワードを発見した場合には、(当該キーワードに関するWebページのURLが埋め込まれておらず)ブラウザ100に表示中のWebページから当該キーワードに関するWebページを辿ることができなくとも、ユーザは、ガジェットアプリケーション200のウィンドウ上で当該キーワードを選択する操作を行うだけで、目的の検索を行うことが可能となる。
また、情報検索支援ユーティリティ300は、このスポットコンテンツの表示を、お薦めコンテンツ紹介サーバ11によって指定された期間、つまり、環境設定用XML200に含まれる情報で示される期間だけ実施する。ここでは、例えば15分が指定されているものと想定する。スポットコンテンツの表示開始後、この15分が経過すると、情報検索支援ユーティリティ300は、スポットコンテンツの表示を終了する(図4のb5)。これにより、ガジェットアプリケーション200のウィンドウ上には、再びローテーションコンテンツが現れることとなる(図4のb6)。
一般に、ユーザが、Webページの閲覧を開始して、閲覧中のWebページに関するキーワードリストが提示されてから、このキーワードリストに興味を持ち続ける時間(集中力が持続する時間)には限りがあるので、当該キーワードリストへの興味が薄れたと推定されるタイミングでスポットコンテンツからローテーションコンテンツへの切り替えを行うことで、より有益な情報提示を行うことが実現される。
なお、以上では、スポットコンテンツの表示からローテーションコンテンツの表示への切り替えは、スポットコンテンツの表示開始後、お薦めコンテンツ紹介サーバ11から取得した環境設定用XML202で指定された期間(例えば15分)が経過した時に自動的に行われる例を説明した。これに限らず、例えば、ユーザがスポットコンテンツからローテーションコンテンツへの切り替えを指示するためのユーザインタフェースをガジェットアプリケーション200に設け、ユーザの指示に応じて、スポットコンテンツの表示からローテーションコンテンツの表示への切り替えを行うようにしてもよい。
図5は、図3に示したガジェットアプリケーション200用のウィンドウa2に表示されるガジェットアプリケーション200の表示画面例を示す図である。
図中、(A)は、スポットコンテンツ(a21)を表示中のガジェットアプリケーション200の表示画面の一例を示している。例えばスポットコンテンツの表示エリアの上部にユーザの指示を受け付けるためのオブジェクト(c1)を配置し、これらが操作された場合、ローテーションコンテンツの表示へと切り替える(スポットコンテンツの表示を終了する)。図5の(B)は、ローテーションコンテンツ(a22)を表示中のガジェットアプリケーション200の表示画面の一例を示している。逆に、例えばスポットコンテンツの表示が自動的に終了した後、このオブジェクトを操作することによって、スポットコンテンツの表示を再開させるようにすることも可能である。
オブジェクトの操作は、OSからガジェットアプリケーション200に通知され、この通知を受けたガジェットアプリケーション200は、その旨を情報検索支援ユーティリティ300に通知する。この通知を受けた情報検索支援ユーティリティ300は、必要に応じてスポットコンテンツ用HTML357の作成などを行い、スポットコンテンツ(スポットコンテンツ用HTML357)およびローテーションコンテンツ(ローテーションコンテンツ用HTML356)間の切り替えをガジェットアプリケーション200に指示する。
次に、以上のような流れで表示されるスポットコンテンツに関するキーワードの選定およびキーワードの配置の制御の基本原理について説明する。
前述したように、情報検索支援ユーティリティ300は、ブラウザ100が表示中のWebページ(HTMLファイル)をHTMLファイル抽出部301によって抽出し、キーワード抽出部302が、このWebページに対して構文解析、形態素解析、スコアリング等の処理を施して、当該Webページに含まれるキーワードを抽出する。図6は、キーワード抽出部302によって抽出されたキーワードのリスト(図2の抽出キーワード354に相当)の一例を示している。図6に示すように、ここでは、「サッカー」、「チャリティ」、「日本代表」、「Jリーグ」、「ドイツ」、「A選手」、…、の順(優先度順)にキーワードが並べられているものと想定する。各キーワードには、キーワード抽出部302によるWebページの解析で判定された、各々が属するカテゴリを示すカテゴリ情報が属性情報として付加される。
また、前述したように、情報検索支援ユーティリティ300は、ガジェットアプリケーション200を介してお薦めコンテンツ紹介サーバ11から環境設定用XML202を取得する。この環境設定用XML202には、スポットコンテンツとして表示する推奨キーワードリスト上の所定の位置に優先して配置すべきキーワードのカテゴリを設定するための情報が含まれている。図7は、環境設定用XML202によるカテゴリの一設定例を示す図である。図7に示すように、どのカテゴリに属するキーワードを推奨キーワードリスト上の所定の位置に優先して配置すべきかが、フラグによって設定される。ここでは、カテゴリ「人名」が、キーワードを推奨キーワードリスト上の所定の位置に優先して配置すべきカテゴリとして設定されている。
いま、スポットコンテンツとして表示する推奨キーワードリスト上には5つのキーワードが配置されるものと想定する。この場合、キーワード処理部303は、キーワード抽出部302によって抽出されたキーワードの中から優先度順に5つのキーワードを取り出してユーザに提示するキーワードリストを作成することになるので、本来であれば、「サッカー」、「チャリティ」、「日本代表」、「Jリーグ」および「ドイツ」の5つのキーワードが選択されることになる。
しかしながら、ここでは、スポットコンテンツとして表示する推奨キーワードリスト上の所定の位置に優先して配置すべきキーワードのカテゴリが設定されるので、キーワード処理部303は、この設定に基づいたキーワードの選定を実行する。なお、ここでは、推奨キーワードリスト上に配置する5つのキーワードのうち、5番目に配置するキーワードを、設定されたカテゴリに属するキーワードとすべく定められているものと想定する。
この場合、キーワード処理部303は、まず、キーワード抽出部302によって抽出されたキーワードの中から優先度順に4つのキーワードを取り出し、キーワードリスト上に配置する。続いて、キーワード処理部303は、残りのキーワードの中から最も優先度の高いキーワードを選択することになるが、この際、キーワード処理部303は、そのカテゴリが設定されたカテゴリと一致するか否かを調べる。
図6に示した例によれば、5番目に選ばれるキーワードは「ドイツ」であり、そのカテゴリは「地名」であるが、図7に示した例によれば、設定されたカテゴリは「人名」であるので、この「ドイツ」は対象外となる。次のキーワードは「A選手」であり、そのカテゴリは「人名」であるので、設定されたカテゴリと一致する。よって、(「ドイツ」に代わって)この「人名」が選ばれる。その結果、図8に示すように、「サッカー」、「チャリティ」、「日本代表」、「Jリーグ」および「A選手」の各キーワードが配置されたキーワードリストがスポットコンテンツとして表示されることになる。
なお、環境設定用XML202によって設定されたカテゴリに属するキーワードの選択数やキーワードリスト上での配置も、環境設定用XML202によって設定するようにしてもよい。また、もし、キーワード抽出部302によって抽出されたキーワードの中から優先度順に取り出した4つのキーワードの中に、環境設定用XML202によって設定されたカテゴリに属するキーワードが既に存在する場合には、キーワードリスト上の5番目に配置するキーワードを、カテゴリに関わらずに、そのまま5番目の優先度を持つキーワードとしてもよい。
このように、お薦めコンテンツ紹介サーバ11が提供する環境設定用XML202によって、スポットコンテンツとして表示する推奨キーワードリストのキーワード選定およびキーワードの配置を制御することができるので、ガジェットアプリケーション200および情報検索支援ユーティリティ300は、ユーザが閲覧中のWebページから抽出したキーワードを提示するにあたって、ユーザに提示したいカテゴリに属するキーワードを優先的に提示するといった効果的な検索キーワード提示を実現する。
即ち、コンピュータ10は、Webページを閲覧中のユーザに対して推奨キーワードを効果的に提示することを実現する。
なお、本実施形態の動作制御処理は、ソフトウェア(プログラム)によって実現することができるので、このソフトウェアを格納したコンピュータ読み取り可能な記憶媒体を通じてこのソフトウェアを通常のコンピュータにインストールして実行することにより、本実施形態と同様の効果を容易に実現することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。