以下、関連度出力システム等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
本実施の形態において、事象と、2以上の連続情報のうちの一の連続情報との関連度を、事象と連続情報とが付与された2以上のデータ群であり、他のデータ群とのリンク構造を有する2以上のデータ群から算出し、出力する関連度出力システムについて説明する。なお、事象と連続情報とが付与されたデータ群とは、事象と連続情報とを含むデータ群でも良い。
なお、事象とは、人物(人名と言っても良い)、場所、出来事(イベントと言っても良い)、その他のものである。事象[0]は、オブジェクトと言っても良い。人物とは、例えば、「織田信長」「坂本龍馬」などである。場所とは、例えば、「大阪城」「京都」などである。また、イベントとは、例えば、「大化の改新」「関ヶ原の戦い」などである。
また、連続情報とは、連続性のある情報である。連続情報は、例えば、年(「西暦1年,2年,3年,・・・1600年,1601年,・・・,2009年,2010年,2011年」など)、年号(「縄文,弥生,・・,江戸,明治,昭和,平成」など)、位置情報(緯度,経度)、色の情報を示す色情報などである。また、連続情報[0]は、例えば、時間や空間などである、とも言える。
また、関連度とは、関連の度合いである。また、関連度とは、重要度を含む概念である。つまり、事象と連続情報との関連度とは、事象(例えば、「坂本龍馬」)の連続情報(例えば、「明治時代」)における重要度を含む意味である。関連度は、数値で表されても良いし、(A,B、C)などのランキングできる文字で表されても良い。つまり、関連度は、度合いを示す情報であれば良い。
また、データ群とは、情報の集合である。データ群とは、例えば、Webページや1以上のWebページからなるWebサイト等である。また、データ群とは、例えば、1以上の連続情報と事象のみでも良い。かかる1以上の連続情報と事象は、Webページから抽出された情報であることは好適である。また、データ群は、例えば、Webページと1以上の連続情報と事象でも良い。なお、データ群[0]が有する事象は2以上でも良い。
さらに、リンク構造におけるリンクは、ハイパーテキストのリンクでも良いし、論理的な関連でも良い。リンクは、2つのデータ群を識別するデータ群識別子の対の情報でも良いし、他方のデータ群へのポインタ情報等でも良い。リンクは、2以上のデータ群が関連することを示す情報であれば何でも良い。リンクのデータ構造は問わない。なお、リンクは、有向のリンクでも、無向のリンクでも良い。
図1は、本実施の形態における関連度出力システム1の概念図である。関連度出力システム1は、1以上の端末装置11、1以上の元データ管理装置12、および関連度出力装置13を具備する。
端末装置11は、ユーザが保持している端末であり、例えば、携帯端末、携帯電話、パーソナルコンピュータ、テレビジョン受信機、ナビゲーション端末等、何でも良い。
元データ管理装置12は、データ群の元になるデータである元データを1以上格納している。元データ管理装置12は、例えば、Webページを格納しているWeb上のサーバ装置である。
また、関連度出力装置13は、通常、端末装置11および元データ管理装置12と、インターネット等のネットワーク10を経由して通信可能な装置である。
図2は、本実施の形態における関連度出力システム1のブロック図である。また、図3は、関連度出力装置13のブロック図である。
端末装置11は、入力受付部111、入力送信部112、関連度情報受信部113、および関連度情報出力部114を具備する。
元データ管理装置12は、元データ管理部121、および元データ送信部122を具備する。
関連度出力装置13は、総称情報格納部1301、受付部1302、元データ受信部1303、事象取得部1304、連続情報取得部1305、データ群構成部1306、データ群蓄積部1307、データ群格納部1308、関連データ群取得部1309、関連度算出部1310、および出力部1311を具備する。
関連データ群取得部1309は、連続情報取得手段13091、および関連データ群取得手段13092を具備する。
端末装置11を構成する入力受付部111は、ユーザから入力を受け付ける。入力は、例えば、事象と1以上の連続情報とを有する。入力は、例えば、関連度出力指示である。なお、関連度出力指示とは、関連度を出力する指示であり、例えば、命令「関連度出力 事象"坂本龍馬" 連続情報"明治時代,京都"」である。なお、本命令は、「坂本龍馬について、明治時代における京都との関連度(重要度と言っても良い)を出力せよ」との命令である。また、入力は、例えば、命令「関連度出力 事象"織田信長" 連続情報"江戸時代"」である。なお、本命令は、「織田信長について、江戸時代との関連度(重要度と言っても良い)を出力せよ」との命令である。
かかる入力の手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。入力受付部111は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
入力送信部112は、入力受付部111が受け付けた入力を、関連度出力装置13に送信する。入力送信部112は、関連度出力装置13と通信するための情報である関連度出力装置通信先情報(例えば、IPアドレスやURL等)を保持している。関連度出力装置通信先情報は、例えば、ユーザが入力した情報でも良いし、予め端末装置11が保持している情報でも良い。入力送信部112は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。
関連度情報受信部113は、入力送信部112における入力の送信に対応して、関連度出力装置13から関連度を受信する。関連度情報受信部113は、事象と1以上の連続情報と関連度とを有する関連度情報を受信しても良い。関連度情報受信部113は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
関連度情報出力部114は、関連度情報受信部113が受信した関連度または関連度情報を出力する。関連度情報とは、関連度と事象と連続情報とを有する情報である。この事象と連続情報とは、通常、入力受付部111が受け付けた情報である。また、ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。関連度情報出力部114は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部1311は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
元データ管理装置12を構成する元データ管理部121は、1以上の元データを格納している。元データとは、データ群の元になるデータである。元データとは、例えば、Webページや、百科事典のデータベースなどである。元データ管理部121は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。元データ管理部121に、データ群が記憶される過程は問わない。
元データ送信部122は、関連度出力装置13からの元データ受信指示に従って、元データ管理部121の元データを、関連度出力装置13に送信する。元データ受信指示とは、元データを送信する指示であり、その構造は問わない。元データ送信部122は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。
関連度出力装置13を構成する総称情報格納部1301は、総称情報と、2以上の連続情報とを対応付けて格納し得る。総称情報とは、2以上の連続情報を総称する情報である。また、連続情報が「年」である時、総称情報は、例えば、「年号」(例えば、「江戸時代」「明治時代」)や「1800年代」などである。また、連続情報が「位置情報」である時、総称情報は、例えば、地域名(例えば、「関西地方」)、都道府県名(例えば、「東京都」)、国名(例えば「日本」、「中国」)などである。また、連続情報とは、年号や地域名や都道府県名などでも良い。また、位置情報とは、位置を示す情報であり、例えば、(経度,緯度)や領域を特定する領域IDなどである。
総称情報格納部1301は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。総称情報格納部1301に総称情報が記憶される過程は問わない。例えば、記録媒体を介して総称情報が総称情報格納部1301で記憶されるようになってもよく、通信回線等を介して送信された総称情報が総称情報格納部1301で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された総称情報が総称情報格納部1301で記憶されるようになってもよい。
受付部1302は、事象と連続情報とを受け付ける。また、受付部1302は、事象と総称情報とを受け付けても良い。受付部1302は、通常、一の事象と、一の連続情報または総称情報とを受け付ける。ここで、受け付けとは、通常、端末装置11からの受信であるが、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。受付部1302は、例えば、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
元データ受信部1303は、1以上の元データ管理装置12から1以上の元データを受信する。元データ受信部1303は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
事象取得部1304は、元データから事象を取得する。事象取得部1304は、例えば、元データの一例であるWebページから、元データ中の予め決められた特定のタグを手がかりに事象を取得する。また、事象取得部1304は、例えば、元データの一例であるWebページから、元データ中の予め決められた箇所から、事象を取得する。なお、元データは、データ群の一部となっても良い。事象取得部1304は、例えば、Webページから事象を取得するためのタグ(例えば、ウィキペディアのタイトルのタグ)、またはデータ群中の箇所に関する情報である事象取得元情報(例えば、各ページの1行目の文字列)を用いて、事象を取得する。つまり、事象取得部1304は、例えば、事象取得元情報"<title>"を格納しており、ウィキペディアのWebページから、事象取得元情報"<title>"の次の用語「織田信長」を取得する。この「織田信長」が事象Wである。なお、Wは、事象を示す記号である。また、事象取得元情報とは、元データから事象を取得するために用いる情報やプログラムである。
連続情報取得部1305は、元データから1以上の連続情報を取得する。連続情報取得部1305は、例えば、連続情報取得元情報を格納しており、かかる連続情報取得元情報を用いて、元データから1以上の連続情報を取得する。連続情報取得元情報とは、連続情報を取得するために利用する情報やプログラムであり、例えば、「数字列"年"」、1以上の年号が格納された年号データベース、1以上の地名が格納された地名データベース、1以上の住所を構成する文字列が格納された住所データベース、または位置情報を取得するための"(緯度,経度)"等である。連続情報取得部1305は、例えば、元データから、連続情報に該当する1以上の情報を取得し、1以上の各情報を連続情報に変換する(正規化する、とも言う)、または元データから、1以上の連続情報を取得する。1以上の情報とは、例えば、「1943年」である。また、連続情報とは、例えば、「1940年代」である。また、連続情報とは、例えば、「○○年」、「位置情報(緯度,経度)」、「地名」、「住所」、「1534〜1582」などである。連続情報取得部1305は、例えば、地名データベースを保持しており、かかる地名データベースに含まれる地名を連続情報として、データ群から取得する。また、連続情報取得部1305は、例えば、「$数字列$年」、「$年号$$数字列$年」などの手がかり句を保持しており、かかる手がかり句を用いて、年、または年代を連続情報として、データ群から取得する。なお、「$数字列$年」とは、「1534年」など、1桁以上の数字列と、文字"年"からなる文字列を示す。また、「$年号$$数字列$年」は、年号(例えば、昭和、天文、弘治など)と、数字列と、文字"年"からなる文字列(例えば、昭和20年)を示す。なお、「$年号$」の"$"と"$"に挟まれた文字列は、変数であることを示す。
また、連続情報取得部1305は、例えば、元データであるウィキペディアのWebページから、時間表現を抽出する。そして、連続情報取得部1305は、抽出した時間表現を正規化する。ここで、正規化とは、時間表現を統一する処理である。例えば、1990年1月1日から1990年12月31までの日時や1990年を、「平成2年」とする。そして、連続情報取得部1305は、事象Wごとに、時間次元ベクトルDtを生成する。なお、文章から時間表現を抽出する処理は公知技術であるので詳細な説明を省略する。文章から時間表現を抽出する処理も、連続情報取得元情報を用いて行われると考えて良い。次に、連続情報取得部1305は、時間次元ベクトルDtに対し、混合正規分布近似を行い平滑化する。混合正規分布近似とは、
平滑化とは、
また、連続情報取得部1305は、例えば、元データであるウィキペディアのWebページから、場所表現を抽出する。そして、連続情報取得部1305は、抽出した場所表現を正規化する。ここで、正規化とは、場所表現を統一する処理である。例えば、京都府が位置する地理的範囲を、「京都」と正規化する。そして、連続情報取得部1305は、事象Wごとに、場所次元ベクトルDpを生成する。なお、文章から場所表現を抽出する処理は公知技術であるので詳細な説明を省略する。文章から場所表現を抽出する処理も、連続情報取得元情報を用いて行われると考えて良い。また、京都府が位置する地理的範囲とは、例えば、京都府下の市町村等の地名、京都府の範囲の(緯度,経度)などである。次に、連続情報取得部1305は、場所次元ベクトルDpに対し、混合正規分布近似を行い平滑化する。混合正規分布近似や平滑化は、公知技術であるので、説明を省略する。
データ群構成部1306は、事象取得部1304が取得した事象、および連続情報取得部1305が取得した1以上の連続情報を、Webページに付加して、データ群を構成する。また、データ群構成部1306は、事象取得部1304が取得した事象、および連続情報取得部1305が取得した1以上の連続情報からなるデータ群を構成しても良い。例えば、データ群構成部1306は、事象取得部1304が取得した事象Wと、時間次元ベクトルDtと、場所次元ベクトルDpとを有するデータ群(W,Dt,Dp)を得る。また、データ群構成部1306は、事象Wと、時間次元ベクトルDtと、場所次元ベクトルDpと、元データのURLを有するデータ群(W,Dt,Dp,URL)を得ても良い。
データ群蓄積部1307は、データ群構成部1306が構成(取得)したデータ群を、データ群格納部1308に蓄積する。かかる蓄積は、一時的な蓄積でも良い。
データ群格納部1308は、2以上のデータ群を格納し得る。データ群は、1以上の連続情報と、事象とを有する情報である。また、データ群は、他のデータ群とリンク構造を有する。なお、データ群は、1以上の連続情報と、事象と、Webページとを有する情報であっても良い。
データ群格納部1308は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。データ群格納部1308にデータ群が記憶される過程は問わない。
関連データ群取得部1309は、受付部1302が受け付けた事象を有するデータ群とリンク関係にある他のデータ群であり、受付部1302が受け付けた1または2以上の連続情報をすべて有するデータ群である1以上の関連データ群を、データ群格納部1308から取得する。データ群とリンク関係にある他のデータ群とは、通常、データ群をリンクする他のデータ群であるが、データ群からリンクされる他のデータ群でも良い。また、リンクは有向であるが、無向のリンクでも良い。
具体的には、関連データ群取得部1309は、例えば、まず、受付部1302が受け付けた事象を有するデータ群を、データ群格納部1308から取得する。次に、関連データ群取得部1309は、当該データ群からn(nは1以上の整数)段までのリンク関係を有する下位のデータ群であり、受付部1302が受け付けた連続情報を有する1以上のデータ群をnと対応付けて取得する。なお、かかる1以上のデータ群が関連データ群である。
なお、関連データ群取得部1309は、連続情報取得手段13091および関連データ群取得手段13092により、1以上の関連データ群を取得しても良い。
関連データ群取得部1309を構成する連続情報取得手段13091は、受付部1302が受け付けた総称情報(例えば、「江戸時代」)に対応する2以上の連続情報(例えば、江戸時代における年(1603年〜1867年,江戸時代の各年号(例えば、寛永、慶安など)の年)を、総称情報格納部1301から取得する。ここで、「2以上の連続情報を取得する」とは、総称情報から2以上の連続情報を取得するためのルールやプログラムの読み出しも含む意味である。
関連データ群取得手段13092は、受付部1302が受け付けた事象を有するデータ群とリンク関係にある他のデータ群であり、連続情報取得手段13091が取得した2以上のいずれかの連続情報を有するデータ群である1以上の関連データ群を、データ群格納部1308から取得する。関連データ群取得手段13092は、2以上の各連続情報ごとに、連続情報を有するデータ群である1以上の関連データ群を、データ群格納部1308から取得しても良い。
関連度算出部1310は、受付部1302が受け付けた事象を有するデータ群、および関連データ群取得部1309が取得した1以上の関連データ群を用いて、受付部1302が受け付けた事象と連続情報との関連度を算出する。関連度とは、関連の深さを示す情報である。
また、関連度算出部1310は、受付部1302が受け付けた事象を有するデータ群、および関連データ群取得部1309が取得した1以上の関連データ群を用いて、受付部1302が受け付けた事象と総称情報との関連度を算出しても良い。
また、受付部1302が総称情報を受け付けた場合、関連度算出部1310は、総称情報を構成する2以上の各連続情報と事象との関連度の積分(和)を取得することとなる。
ここで、関連度算出部1310は、データ群と当該データ群にリンク関係にある関連データ群とをどのように用いて、関連度を算出するかは問わない。通常、関連度算出部1310は、関連データ群が、事象と連続情報との関連度が大きいほど、全体の関連度を大きく算出する。また、通常、関連度算出部1310は、関連データ群の数が多いほど、全体の関連度を大きく算出する。
関連度算出部1310は、例えば、以下のように事象Wの関連度を算出する。本方法は、事象Wを有するデータ群のリンク情報(関連データ群とのリンク構造の情報)を用いて算出されるページランク(PageRank)を算出する方法を基にした手法を採用する。ページランクアルゴリズムを基にした算出方法の一例は、いわゆるTopic Sensitive PageRank(Haveliwala, T.H.: Topic-sensitive PageRank: A context-sensitive ranking algorithm for web search. IEEE Transactions on Knowledge and Data Engineering (TKDE2003) 15(4), 784-796 (July/Aug 2003))のアルゴリズムである。なお、ここでのページは、データ群、関連データ群の一例である。つまり、関連度算出部1310は、以下の数式1を用いて全ての連続情報との関連度(rv)を算出する。本アルゴリズムはリンク元のデータ群uとリンク先の関連データ群vの各々の属性を関連度のスコアリングに反映できる特徴がある。
数式1において、rvはベクトルとして表現されており、rvの各次元は、各連続情報に対応するデータ群vの関連度である。数式1において、初期ベクトルr1 vはdvとする。また、数式1において、iは計算における反復回数、αはランダムジャンプ成分の割合、Bvはデータ群vにリンクしているデータ群の集合、|Fu|はデータ群uからリンクされているデータ群の集合の要素数である。本数式1を用いて、rの値が収束するまでiを増加させて計算を行うことで、関連度の計算は終了する。αは0から1まで範囲での値をとり得、例えば、0.85を使用する。dvはデータ群vの、時間次元ベクトルDtや場所次元ベクトルDpを、全ての次元における値を足し合わせた値が1になるように正規化して用いる。時間次元ベクトルDpが用いられる場合、rvや、dvの各々の次元は「1999年」や「2000年」といった、連続情報を意味する。
また、数式1を用いて、関連度算出部1310は、例えば、以下のように関連度ベクトルを算出する。ここで、図18に示すように、データ群格納部1308は、3つのデータ群(図3のノード)を格納している、とする。また、3つのデータ群は、3つの事象に対応する、とする。事象は、例えば、人物名(例えば、織田信長、豊臣秀吉、徳川家康)である。また、図18において、B1={3}は、データ群1はデータ群3からリンクされていることを示し、F3={1,2}は、データ群3は、データ群1およびデータ群2をリンクしていることを示す。ここでの関連度ベクトルを構成する次元(連続情報)は、「1900年」と「1910年」の2つであるとする。
なお、関連度ベクトルを算出する前の処理として、第一に、時空間上のある領域において、特定の事象vに関するコンテンツ集合(Web)から、連続情報取得部1305は、時間・場所表現を抽出する。第二に、連続情報取得部1305は、抽出された時間・場所表現群を正規化(例1「平成2年」:1990年1月1日−1990年12月31、例2「京都」:京都府が位置する地理的範囲、例3「江戸」:現在の東京都が位置する地理的範囲)する。第三に、連続情報取得部1305は、出力された時間・地理次元ベクトルdvに対し、混合正規分布近似を行い平滑化する。
そして、上記の第三までの処理の結果、図19に示す初期ベクトルが与えられたとする。つまり、事象1について、連続情報「1900年」の初期値は0.5、「1910年」の初期値は0である。
次に、関連度算出部1310は、数式1と初期ベクトルとを用いて、数式2に示すように、r1 1、r1 2、r1 3等を算出する。
そして、関連度算出部1310は、同様に、r1 vを用いてr2 vを計算し、rj vが収束するまで数式1の計算を繰り返す。
なお、関連度を算出する方法として、数式1を用いた手法の他、数式1のdvを数式3に示すように規定する方法がある。数式3において、vがDjに属するか否かは、データ群vの、時間次元ベクトルDtや場所次元ベクトルDpを用いて決定される。vがDjに属する場合は、例えば、時間次元ベクトルDtや場所次元ベクトルDpが有する要素の値が予め決められた値以上である場合等である。また、数式3において、|Dj|は、j番目の事象に属するデータ群の数である。
また、関連度を算出する方法として、上記の手法の他、数式4におけるページランクを算出する方法を基にした関連度の算出方法がある。
数式4において、rvはスカラ値であり、データ群vの関連度を表す。また、Nは、全事象の数である。さらに、数式4において、「r1=1/N」とする。
また、関連度を算出する方法として、上記の手法の他、数式5を用いた関連度の算出方法がある。
数式5において、rvはスカラ値であり、データ群vの関連度を表す。また、Nは、全事象の数である。さらに、数式5において、「r1=1/N」とする。
出力部1311は、関連度算出部1310が算出した関連度を出力する。また、出力部1311は、事象と、連続情報または総称情報と、関連度とを有する関連度情報を出力しても良い。出力する事象と、連続情報または総称情報とは、受付部1302が受け付けた情報である。また、ここで、出力とは、通常、端末装置11などの外部の装置への送信であるが、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
出力部1311は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。
事象取得部1304、連続情報取得部1305、データ群構成部1306、データ群蓄積部1307、関連データ群取得部1309、関連度算出部1310、連続情報取得手段13091、および関連データ群取得手段13092は、通常、MPUやメモリ等から実現され得る。事象取得部1304等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
次に、関連度出力システム1の動作について説明する。まず、端末装置11の動作について説明する。端末装置11の入力受付部111は、事象と連続情報または総称情報とを有する関連度の出力命令である関連度出力指示を、ユーザから受け付ける。次に、入力送信部112は、入力受付部111が受け付けた関連度出力指示を関連度出力装置13に送信する。次に、関連度情報受信部113は、関連度出力装置13から、事象と連続情報または総称情報との関連度を受信する。そして、関連度情報出力部114は、関連度情報受信部113が受信した関連度を出力する。なお、関連度情報出力部114は、関連度情報受信部113が受信した関連度と、入力受付部111が受け付けた事象と、連続情報または総称情報とを出力しても良い。また、関連度情報出力部114は、関連度情報受信部113が受信した関連度情報を出力しても良い。かかる場合、関連度情報は、関連度と、事象と、連続情報または総称情報とを有する。
次に、元データ管理装置12の動作について説明する。まず、元データ管理装置12の元データ送信部122は、関連度出力装置13から、元データの送信指示を受け付ける。そして、元データ送信部122は、送信指示に対応する元データを、元データ管理部121から取得し、関連度出力装置13に送信する。
次に、関連度出力装置13の動作の例について、図4のフローチャートを用いて説明する。
(ステップS401)受付部1302は、指示等を受け付けたか否かを判断する。指示等を受け付ければステップS402に行き、指示等を受け付けなければステップS401に戻る。
(ステップS402)元データ受信部1303は、ステップS401で受け付けた指示等が元データ受信指示であるか否かを判断する。元データ受信指示であればステップS403に行き、元データ受信指示でなければステップS408に行く。
(ステップS403)元データ受信部1303は、1以上の元データ管理装置12に1以上の元データの送信を指示し、1以上の元データ管理装置12から1以上の元データを受信する。
(ステップS404)事象取得部1304は、カウンタiに1を代入する。
(ステップS405)事象取得部1304は、ステップS403で受信した元データの中に、i番目の元データが存在するか否かを判断する。i番目の元データが存在すればステップS406に行き、存在しなければステップS401に戻る。
(ステップS406)事象取得部1304等は、i番目の元データから、データ群を構成する処理を行う。かかる処理をデータ群構成処理という。データ群構成処理について、図5のフローチャートを用いて説明する。
(ステップS407)事象取得部1304は、カウンタiを1、インクリメントする。ステップS405に戻る。
(ステップS408)関連データ群取得部1309は、ステップS401で受け付けた指示等が関連度出力指示であるか否かを判断する。関連度出力指示であればステップS409に行き、関連度出力指示でなければステップS401に戻る。
(ステップS409)関連データ群取得部1309等は、関連度を取得する処理を行う。かかる処理を関連度取得処理という。関連度取得処理について、図6のフローチャートを用いて説明する。
(ステップS410)出力部1311は、ステップS409で取得した関連度を出力する。ステップS401に戻る。
なお、図4のフローチャートにおいて、出力部1311は、事象、連続情報または総称情報、および関連度を出力することは好適である。
また、図4のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、ステップS406のデータ群構成処理の例について、図5のフローチャートを用いて説明する。
(ステップS501)事象取得部1304は、格納している1以上の事象取得元情報を読み出す。
(ステップS502)事象取得部1304は、カウンタiに1を代入する。
(ステップS503)事象取得部1304は、ステップS501で読み出した事象取得元情報のうち、i番目の事象取得元情報が存在するか否かを判断する。i番目の事象取得元情報が存在すればステップS504に行き、存在しなければステップS506に行く。
(ステップS504)事象取得部1304は、i番目の事象取得元情報を用いて、元データから1以上の事象を取得する。
(ステップS505)事象取得部1304は、カウンタiを1、インクリメントする。ステップS503に戻る。
(ステップS506)事象取得部1304は、ステップS504で、1以上の事象を取得できたか否かを判断する。1以上の事象を取得できればステップS507に行き、1以上の事象を取得できなければ上位処理にリターンする。
(ステップS507)事象取得部1304は、取得した1以上の事象を、予め決められたバッファに追記する。なお、事象取得部1304は、元データと対応付けて、取得した1以上の事象を蓄積することは好適である。
(ステップS508)連続情報取得部1305は、カウンタiに1を代入する。
(ステップS509)連続情報取得部1305は、連続情報を取得する元データ中に、i番目の処理単位が存在するか否かを判断する。i番目の処理単位が存在すればステップS510に行き、i番目の処理単位が存在しなければステップS517に行く。なお、処理単位とは、連続情報を取得するための処理の単位であり、例えば、文、行、特定の開始タグから終了タグまで、段落、単語等、何でも良い。
(ステップS510)連続情報取得部1305は、元データからi番目の処理単位を読み出す。
(ステップS511)連続情報取得部1305は、予め記憶媒体に格納している1以上の連続情報取得元情報を読み出す。
(ステップS512)連続情報取得部1305は、カウンタjに1を代入する。
(ステップS513)連続情報取得部1305は、ステップS511で読み出した連続情報取得元情報の中に、j番目の連続情報取得元情報が存在するか否かを判断する。j番目の連続情報取得元情報が存在すればステップS514に行き、存在しなければステップS517に行く。
(ステップS514)連続情報取得部1305は、i番目の処理単位に対して、j番目の連続情報取得元情報を用いて、1以上の連続情報を取得する。なお、ここで、連続情報を取得できない場合はあり得る。
(ステップS515)連続情報取得部1305は、カウンタjを1、インクリメントする。ステップS513に戻る。
(ステップS516)連続情報取得部1305は、カウンタiを1、インクリメントする。ステップS509に戻る。
(ステップS517)連続情報取得部1305は、ステップS514において、連続情報を取得できたか否かを判断する。連続情報を取得できればステップS518に行き、連続情報を取得できなければ上位処理にリターンする。
(ステップS518)データ群構成部1306等は、ステップS514で取得した1以上の連続情報をバッファに蓄積する。なお、ここで、データ群構成部1306は、1以上の連続情報を事象と対応付けて、データ群を構成し、データ群蓄積部1307は、データ群をバッファに蓄積する。上位処理にリターンする。
なお、図5のフローチャートのステップS518において、データ群構成部1306は、1以上の連続情報と事象と元データとを対応付けて、データ群を構成し、データ群蓄積部1307が、当該データ群をバッファに蓄積することは好適である。
また、図5のフローチャートにおいて、データ群を取得する元になった元データとリンク関係にある1以上の元データを取得し、当該1以上の元データから1以上の事象を取得し、当該1以上の事象を含むデータ群を構成し、蓄積しても良い。かかる処理により、データ群間のリンク関係の情報を、データ群が含むことになる。
また、図5のフローチャートにおける処理は、データ群の構成方法の一例であることは言うまでもない。データ群の構成方は問わない。
次に、ステップS409の関連度取得処理の例について、図6のフローチャートを用いて説明する。
(ステップS601)関連データ群取得部1309は、受付部1302が受け付けた関連度出力指示が有する事象を取得する。
(ステップS602)関連データ群取得部1309は、受付部1302が受け付けた関連度出力指示が有する総称情報または連続情報を取得する。
(ステップS603)関連データ群取得部1309は、ステップS602で取得した情報が総称情報であるか否かを判断する。総称情報であればステップS604に行き、総称情報でなければステップS605に行く。なお、関連データ群取得部1309は、常に、ステップS602で取得した情報が総称情報であるとして、ステップS604において、総称情報格納部1301を検索しても良い。
(ステップS604)連続情報取得手段13091は、受付部1302が受け付けた総称情報に対応する1または2以上の連続情報を、総称情報格納部1301から取得する。なお、本ステップで1または2以上の連続情報を取得できなかった場合、受付部1302が受け付けた関連度出力指示が有する総称情報を連続情報とする。ステップS602またはステップS604において取得した1以上の連続情報を、以下の処理で利用する。
(ステップS605)関連データ群取得部1309は、ステップS601で取得した事象を有するデータ群を読み出す。
(ステップS606)関連データ群取得部1309は、カウンタiに1を代入する。
(ステップS607)関連データ群取得部1309は、関連度を算出する場合に、i段目の下位層の関連データ群を利用するか否かを判断する。i段目の下位層の関連データ群を利用する場合はステップS608に行き、利用しない場合はステップS618に行く。なお、関連データ群取得部1309は、通常、予め、利用する関連データ群の段数(n)を保持している。ただし、関連データ群取得部1309が段数(n)を保持していない場合、例えば、リンクにより構築されている関連データ群のツリー構造のうちの、最下位の関連データ群までを利用する、とする。また、ここでは、例えば、ステップS605で読み出したデータ群を0段目のデータ群であるとし、当該データ群と直接的にリンク関係にある関連データ群を1段目のデータ群であるとする。
(ステップS608)関連データ群取得部1309は、カウンタjに1を代入する。
(ステップS609)関連データ群取得部1309は、(i−1)段目の層のj番目のデータ群(関連データ群も含む)が存在するか否かを判断する。j番目のデータ群が存在すればステップS610に行き、存在しなければステップS617に行く。
(ステップS610)関連データ群取得部1309は、(i−1)段目のデータ群の中に、j番目のデータ群とリンク関係にあるすべてのデータ群(i段目のデータ群)を読み出す。
(ステップS611)関連データ群取得部1309は、カウンタkに1を代入する。
(ステップS612)関連データ群取得部1309は、ステップS610で読み出したデータ群の中に、k番目のデータ群が存在するか否かを判断する。k番目のデータ群が存在すればステップS613に行き、存在しなければステップS616に行く。
(ステップS613)関連データ群取得部1309は、k番目のデータ群が、1以上の連続情報のうちのいずれかの連続情報を有するか否かを判断する。いずれかの連続情報を有すればステップS614に行き、有さなければステップS615に行く。
(ステップS614)関連データ群取得部1309は、k番目のデータ群を、i段目の関連データ群として、バッファに一時蓄積する。関連データ群取得部1309は、通常、i(段数)とk番目のデータ群とを対応付けて蓄積する。なお、関連度を算出する場合に、関連データ群の内容を利用せずに、関連データ群の全体数、または各段の関連データ群の数を利用する場合、本ステップにおいて、関連データ群取得部1309は、関連データ群の数を格納する変数をインクリメントしたり、各段ごとに関連データ群の数を格納する変数をインクリメントしたりするだけでも良い。
(ステップS615)関連データ群取得部1309は、カウンタkを1、インクリメントする。ステップS612に戻る。
(ステップS616)関連データ群取得部1309は、カウンタjを1、インクリメントする。ステップS608に戻る。
(ステップS617)関連データ群取得部1309は、カウンタiを1、インクリメントする。ステップS607に戻る。
(ステップS618)関連度算出部1310は、ステップS605で読み出されたデータ群、およびステップS614でバッファに蓄積された1以上の関連データ群を用いて、関連度を算出する。関連度を算出する処理は、関連度算出処理という。関連度算出処理について、図7のフローチャートを用いて説明する。
次に、ステップS618の関連度算出処理の例について、図7のフローチャートを用いて説明する。
(ステップS701)関連度算出部1310は、関連度を代入する変数Sに0を代入する。
(ステップS702)関連度算出部1310は、ステップS605で読み出したデータ群(事象に対応するデータ群)が、1以上の連続情報のうちのいずれかの連続情報を有するか否かを判断する。いずれかの連続情報を有すればステップS703に行き、有さなければステップS704に行く。
(ステップS703)関連度算出部1310は、変数Sに定数c0を代入する。なお、c0は、事象に対応するデータ群が、いずれかの連続情報を有する場合に付与される報酬(関連度の増加分)である。また、c0は、データ群の初期値である。なお、Sは、Rank(v)に該当する。
(ステップS704)関連度算出部1310は、カウンタiに1を代入する。
(ステップS705)関連度算出部1310は、関連度を算出する場合に、i段目の下位層の関連データ群を利用するか否かを判断する。i段目の下位層の関連データ群を利用する場合はステップS706に行き、利用しない場合は上位処理にリターンする。
(ステップS706)関連度算出部1310は、i段目の下位層の関連データ群をすべて取得する。
(ステップS707)関連度算出部1310は、変数SにCi(ni)を加える。niは、i段目の関連データ群の数である。Ci(ni)は、i段目の関連データ群の数をパラメータとする増加関数である。
(ステップS708)関連度算出部1310は、カウンタiを1、インクリメントする。ステップS705に戻る。
なお、図7のフローチャートは、関連度の算出方法の一例である。また、図7のフローチャートにおいて、数式1を用いて、関連度を算出することは好適である。
以下、本実施の形態における関連度出力システム1の具体的な動作について説明する。関連度出力システム1の概念図は図1である。
今、元データ管理装置12は、日本語版Wikipedia(http://ja.wikipedia.org/)のWebサーバ装置である。
また、関連度出力装置13を構成する総称情報格納部1301は、図8に示す総称情報管理表を保持している。総称情報管理表は、「ID」「連続情報」「総称情報」の属性値を有するレコードを201個有する。つまり、本具体例において、西暦0年から2009年までを10年間隔で201個に区分けし、後述する各日本史記事に対してこの10年間における関連度を計算することとする。
そして、ユーザが関連度出力装置13に元データ受信指示を入力した、とする。なお、元データ受信指示は、日本語版Wikipedia(http://ja.wikipedia.org/)の中で、"日本の歴史"カテゴリとその下位カテゴリのすべて(580個のカテゴリ)集合の中に分類されているWikipedia記事を取得する指示であった、とする。
そして、関連度出力装置13の受付部1302は、元データ受信指示を受け付ける。次に、元データ受信部1303は、元データ管理装置12(http://ja.wikipedia.org/)に元データ受信指示が示す元データの送信を指示し、元データ管理装置12から33,000個の元データを受信した。なお、これらの元データは日本史に関連する記事であり、簡単のために日本史記事と呼ぶことにする。この日本史記事の集合には、日本史にまつわる人物、出来事、建造物など様々なものが含まれている。
具体的には、まず、事象取得部1304は、事象取得元情報「<title>文字列 - Wikipedia</title>」を用いて、日本史記事の集合から、事象取得元情報に対応する行から、「文字列」を抽出する。そして、事象取得部1304は、当該「文字列」が人名である場合、当該記事(元データ)を取得する。つまり、まず、人物の記事を取得する。そして、事象取得部1304は、「<title>文字列 - Wikipedia</title>」内の「文字列」を事象として取得する。なお、事象取得部1304は、人名データベースを保持しており、かかる人名データベースも事象取得元情報として、人名を取得する場合に利用する。文章から人名を取得する技術は公知技術であるので、詳細な説明は省略する。また、文章から人名を取得するアルゴリズムは問わない。
次に、連続情報取得部1305は、当該人物の記事から、生まれた年と亡くなった年の情報を取得する。そして、連続情報取得部1305は、生まれた年と亡くなった年の情報から、各々の人物が生きていた期間を取得する。なお、生まれた年と亡くなった年は、記事中の最も古い年および最も新しい年を取得しても良いし、手がかり句(例えば、「生誕」「死去」など)を用いて取得しても良いし、特定の記載、例えば、「1534年−1582年」などを用いて、取得しても良い。生まれた年と亡くなった年の取得方法は問わない。なお、手がかり句(例えば、「生誕」「死去」など)を用いる場合、連続情報取得部1305は、手がかり句(例えば、「生誕」「死去」など)を含む文から、年($数字列$年)を取得し、当該取得した年を生まれた年または亡くなった年とする。
次に、各々の人物が生きていた期間の情報から、例えば、西暦990年から999年までの10年間に生きていた人物の記事一覧を取得できる。そして、データ群構成部1306は、各人物である各事象ごとに、西暦0年から2009年までの201年代において、生きている期間に初期値c0(例えば、「c0=1」)が挿入された201次元の初期の時間ベクトルを得る。そして、データ群構成部1306は、事象(人物名)、連続情報(時間ベクトル)、元データのURLを有するデータ群を構成する。そして、図9に示すように、データ群蓄積部1307は、データ群をバッファに蓄積する。なお、バッファのレコードは、レコードのIDを示す情報も有する、とする。また、元データが受信された場合に、URLを取得することは公知技術であるので、URLの取得方法については、説明を省略する。
次に、関連データ群取得部1309は、各事象(各人物)ごとに、かつ、各年代ごとに、各事象を有するデータ群に対応する関連データ群を取得する。関連データ群の取得のために、Wikipediaのリンク構造を用いて、例えば、関連データ群取得部1309は、事象と対になるURLで特定されるWebページをルートとし、当該Webページと直接または間接的にリンク構造を有するデータ群であり、2段目までのリンク構造のデータ群を関連データ群として取得する。
次に、関連度算出部1310は、数式1に従い、再帰的なアルゴリズムで、各事象(各人物)ごとに、かつ、各年代ごとに、関連度を算出して行く。
つまり、各事象(各人物)ごとに、201個の年代全てに対して関連度を算出する処理を行う。その結果、33,000個の日本史記事はそれぞれに201次元のベクトルを持つこととなる。このベクトルの各次元が対応する年代における関連度(「重要度」と言っても良い)を現しており、例えば、織田信長の記事に対応するベクトルの100次元目の値は、990年から999年における織田信長の関連度を表している。
上記の処理を行い、事象(人物)ごとの、各年代の関連度を全て算出し、少なくともバッファに一時蓄積した後、以下の2つの実験を行った。
(実験1)
実験1において、関連度出力装置13を用いて、日本の戦国時代(16世紀中後期)を代表する織田信長、豊臣秀吉、徳川家康(事象の例)の各年代に対する関連度を算出し、出力させた。かかる織田信長、豊臣秀吉、徳川家康の各年代における関連度の推移を示すグラフが図10である。図10において、横軸がベクトルの各次元に対応しているが、ここでは分かりやすいように西暦に直して表記している。0年から400年までの値が0なのは、この期間において何年に生まれて何人に亡くなったと明確に記述されている人物が存在しないため、計算することができなかったことを表している。ここで、3人とも生きていた16世紀中後期にかけて最も大きな値を示しているが、江戸時代(1603−1868)の頃は徳川家康が他の2人に対して特に大きい。これは,徳川家康が江戸時代の人物などに対してWikipediaのリンク構造においてより近くにいることを現しており、家康は江戸時代を開いた人物であることから、この結果は妥当であると考えられる。
(実験2)
実験2において、関連度出力装置13を用いて、事象「太平洋戦争」と「原爆ドーム」の各年代に対する関連度を算出し、出力させた。かかる関連度を示すグラフが図11である。図11において、1800年くらいまで両者ともほとんど値が0であったため、ここでは19世紀以降の値だけを表示している。太平洋戦争は1940−1969をピークに値が減少しているが、原爆ドームは増加していることが分かる。太平洋戦争に関わる人物の関連度(図示しない)は時が経つにつれてどんどん減少しているが、原爆ドームは1996年にユネスコの世界遺産(文化遺産)に登録されるなど、昨今の非核化の流れの中で参照されることが増え、このような結果になったものと考えられる。
以上、本実施の形態によれば、事物と連続情報との関連度を自動的に取得できる。さらに具体的には、本実施の形態によれば、例えば、指定された時間や空間(連続情報の一例)が、実際にその人物が生存した期間や生存した地域とは別であったとしても、その人物(事象の一例)が、その指定された時間や空間における重要度合い(関連度合い、と言っても良い)を計算することが可能となる。
なお、本実施の形態の具体例において、例えば、関連度算出部1310が、徳川家康について、図10のグラフの1600年から2009年までの各10年の関連度の和を算出することにより、徳川家康と1600年から2009年までの間の期間との関連度を算出できる。かかるように、関連度算出部1310は、複数の連続情報や複数の総称情報に対する関連度の和(積分値)を算出しても良い。
また、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における関連度出力装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記録媒体に、連続性のある情報である2以上の連続情報のうちの1以上の連続情報と、事象とを有し、他のデータ群とリンク構造を有する2以上のデータ群を格納しており、コンピュータを、事象と連続情報とを受け付ける受付部と、前記受付部が受け付けた事象を有するデータ群とリンク関係にある他のデータ群であり、前記受付部が受け付けた連続情報を有するデータ群である1以上の関連データ群を、前記記録媒体から取得する関連データ群取得部と、前記受付部が受け付けた事象を有するデータ群、および前記関連データ群取得部が取得した1以上の関連データ群を用いて、前記受付部が受け付けた事象と連続情報との関連の深さを示す関連度を算出する関連度算出部と、前記関連度算出部が算出した関連度を出力する出力部として機能させるためのプログラムである。
また、上記プログラムにおいて、記憶媒体に、2以上の連続情報を総称する情報である総称情報と、当該2以上の連続情報とを対応付けて格納しており、前記受付部は、事象と総称情報とを受け付け、前記関連データ群取得部は、前記受付部が受け付けた総称情報に対応する2以上の連続情報を、前記記録媒体から取得する連続情報取得手段と、前記受付部が受け付けた事象を有するデータ群にリンクする他のデータ群であり、前記連続情報取得手段が取得した2以上のいずれかの連続情報を有するデータ群である1以上の関連データ群を、前記記録媒体から取得する関連データ群取得手段とを具備し、前記関連度算出部は、前記受付部が受け付けた事象を有するデータ群、および前記関連データ群取得部が取得した1以上の関連データ群を用いて、前記受付部が受け付けた事象と前記総称情報との関連の深さを示す関連度を算出するものとして、コンピュータを機能させることは好適である。
また、上記プログラムにおいて、前記データ群を構成する元になるデータである元データから、当該元データ中の予め決められた特定のタグを手がかりに、または前記元データ中の予め決められた箇所から、事象を取得する事象取得部と、前記元データから、連続情報に該当する1以上の情報を取得し、当該1以上の各情報を連続情報に変換する、または前記元データから、1以上の連続情報を取得する連続情報取得部と、前記事象および前記1以上の連続情報を用いて、データ群を構成するデータ群構成部とをさらに具備し、前記データ群構成部が構成したデータ群が、前記データ群格納部のデータ群であるものとして、コンピュータを機能させることは好適である。
(実施の形態2)
本実施の形態において、2種類以上の連続情報に対する事象の関連度を出力できる点が、実施の形態1とは異なる。具体的には、2種類以上の連続情報は、例えば、時間(例えば、年)と空間(位置情報)であり、本実施の形態において、事象(例えば「徳川家康」)に対する時間(例えば、江戸時代)と空間(例えば、京都)における重要度を算出し、出力できる関連度出力システムについて説明する。なお、実施の形態1においては、事象と一の連続情報との関連度を出力できる関連度出力システム1について説明した。
本実施の形態における関連度出力システム2の概念図は、図1と同様である。また、図12は、本実施の形態における関連度出力システム2を構成する関連度出力装置23のブロック図である。なお、関連度出力システム2のブロック図は、図2と同様である。関連度出力システム2と関連度出力システム1とは、関連度出力装置のみが異なる。
関連度出力システム2は、端末装置11、元データ管理装置12、および関連度出力装置23を具備する。
端末装置11は、入力受付部111、入力送信部112、関連度情報受信部113、および関連度情報出力部114を具備する。
元データ管理装置12は、元データ管理部121、および元データ送信部122を具備する。
関連度出力装置23は、総称情報格納部1301、受付部2302、元データ受信部1303、事象取得部1304、連続情報取得部1305、データ群構成部1306、データ群蓄積部1307、データ群格納部1308、関連データ群取得部2309、関連度算出部1310、および出力部1311を具備する。
関連データ群取得部2309は、連続情報取得手段23091、および関連データ群取得手段23092を具備する。
受付部2302は、事象と2種類以上の連続情報とを受け付ける。受付部2302は、事象と2以上の総称情報とを受け付けても良い。また、受付部2302は、事象と一つの連続情報と一つの総称情報とを受け付けても良い。ここで、受け付けとは、通常、端末装置11からの受信であるが、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。受付部2302は、例えば、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
関連データ群取得部2309は、受付部2302が受け付けた事象を有するデータ群とリンク関係にある他のデータ群であり、受付部2302が受け付けた2種類以上のすべての連続情報を有するデータ群である1以上の関連データ群を、データ群格納部1308から取得する。
具体的には、関連データ群取得部2309は、例えば、まず、受付部1302が受け付けた事象を有するデータ群を、データ群格納部1308から取得する。次に、関連データ群取得部2309は、当該データ群からn(nは1以上の整数)段までのリンク関係を有する下位のデータ群であり、受付部1302が受け付けた2以上のすべての連続情報を有する1以上のデータ群をnと対応付けて取得する。なお、かかる1以上のデータ群が関連データ群である。
また、受付部2302が2種類以上の総称情報を受け付けた場合、関連データ群取得部2309は、例えば、まず、受付部2302が受け付けた事象を有するデータ群を、データ群格納部1308から取得する。次に、関連データ群取得部2309は、当該データ群からn(nは1以上の整数)段までのリンク関係を有する下位のデータ群であり、受付部1302が受け付けた2以上の各総称情報(例えば、「江戸時代」と「京都」)に対応する1以上の連続情報(例えば、「江戸時代」に対しては「1603年〜1868年」までのいずれかの年、「京都」に対しては京都府内の地名や(緯度,経度))のいずれかを有する1以上のデータ群をnと対応付けて取得する。なお、かかる1以上のデータ群が関連データ群である。上記の例で言えば、関連データ群は、「江戸時代」に対する「1603年〜1868年」までのいずれかの年を一つは含む、かつ、「京都」に対する京都府内の地名や(緯度,経度))のいずれかを含む。
また、受付部2302が一の連続情報と一の総称情報を受け付けた場合、関連データ群取得部2309は、例えば、まず、受付部2302が受け付けた事象を有するデータ群を、データ群格納部1308から取得する。次に、関連データ群取得部2309は、当該データ群からn(nは1以上の整数)段までのリンク関係を有する下位のデータ群であり、受付部1302が受け付けた一の連続情報を含み、かつ受付部1302が受け付けた一の総称情報(例えば、「江戸時代」)に対応する1以上の連続情報(例えば、「江戸時代」に対しては「1603年〜1868年」までのいずれかの年)のいずれかを有する1以上のデータ群をnと対応付けて取得する。
なお、関連データ群取得部2309は、連続情報取得手段23091および関連データ群取得手段23092により、1以上の関連データ群を取得しても良い。
連続情報取得手段23091は、受付部2302が受け付けた2以上の各総称情報に対応する2以上の連続情報を、総称情報ごとに、総称情報格納部1301から取得する。
関連データ群取得手段23092は、受付部が受け付けた事象を有するデータ群とリンク関係にある他のデータ群であり、前記連続情報取得手段が取得した2以上の各総称情報に対応する2以上のいずれかの連続情報を、2以上のすべて総称情報に対して、有するデータ群である1以上の関連データ群を、前記データ群格納部から取得する。
関連データ群取得部2309、連続情報取得手段23091、および関連データ群取得手段23092は、通常、MPUやメモリ等から実現され得る。関連データ群取得部2309等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
次に、関連度出力システム2の動作について説明する。関連度出力システム2と関連度出力システム1との相違点は、関連度出力装置23のみである。また、関連度出力装置13と関連度出力装置23との相違点は、関連度取得処理のみである。したがって、図13のフローチャートを用いて、関連度出力装置23の関連度取得処理について説明する。図13のフローチャートにおいて、図6のフローチャートと同一のステップについて説明を省略する。
(ステップS1301)関連データ群取得部2309は、受付部2302が受け付けた関連度出力指示が有する2以上の総称情報または2以上の連続情報を取得する。
(ステップS1302)関連データ群取得部2309は、ステップS1301で取得した情報の中に、総称情報を含むか否かを判断する。総称情報を含めばステップS1303に行き、総称情報を含まなければステップS605に行く。
(ステップS1303)連続情報取得手段23091は、受付部2302が受け付けた情報の中の1以上の各総称情報に対応する1または2以上の連続情報を、総称情報ごとに、総称情報格納部1301から取得する。
(ステップS1304)関連データ群取得部2309は、k番目のデータ群が、2以上の連続情報または総称情報のうちのすべての情報を有するか否かを判断する。すべての情報を有すればステップS614に行き、有さなければステップS615に行く。なお、関連データ群取得部2309は、総称情報に対応する1以上の連続情報のうちのいずれかを、k番目のデータ群が有する場合に、k番目のデータ群が総称情報を有すると判断する。
以下、本実施の形態における関連度出力システム2の具体的な動作について説明する。関連度出力システム2の概念図は図1と同様である。
今、元データ管理装置12は、日本語版Wikipedia(http://ja.wikipedia.org/)のWebサーバ装置である。
また、関連度出力装置23を構成する総称情報格納部1301は、図14、図15に示す2つの総称情報管理表を保持している。図14は、総称情報として時代の情報を保持する。また、図14は、連続情報として西暦(年)の情報を保持する。図15は、総称情報として地域の情報を保持する。また、図14は、連続情報として地名等(地名,名勝,建築物等)の情報を保持する。
そして、ユーザが関連度出力装置13に元データ受信指示を入力した、とする。なお、元データ受信指示は、日本語版Wikipedia(http://ja.wikipedia.org/)の中で、"日本の歴史"カテゴリとその下位カテゴリのすべて(580個のカテゴリ)集合の中に分類されているWikipedia記事を取得する指示であった、とする。
そして、関連度出力装置13の受付部1302は、元データ受信指示を受け付ける。次に、元データ受信部1303は、元データ管理装置12(http://ja.wikipedia.org/)に元データ受信指示が示す元データの送信を指示し、元データ管理装置12から33,000個の元データを受信した。なお、これらの元データは日本史に関連する記事であり、簡単のために日本史記事と呼ぶことにする。この日本史記事の集合には、日本史にまつわる人物、出来事、建造物など様々なものが含まれている。
具体的には、まず、事象取得部1304は、事象取得元情報「<title>文字列 - Wikipedia</title>」を用いて、日本史記事の集合から、事象取得元情報に対応する行から、「文字列」を抽出する。そして、事象取得部1304は、当該「文字列」が人名である場合、当該記事(データ群)を取得する。つまり、まず、人物の記事を取得する。そして、事象取得部1304は、「文字列」を事象として取得する。なお、事象取得部1304は、人名データベースを保持しており、かかる人名データベースも事象取得元情報として、人名を取得する場合に利用する。文章から人名を取得する技術は公知技術であるので、詳細な説明は省略する。また、文章から人名を取得するアルゴリズムは問わない。
次に、連続情報取得部1305は、当該人物の記事から、生まれた年と亡くなった年の情報を取得する。そして、連続情報取得部1305は、生まれた年と亡くなった年の情報から、当該人物が生きた時代の情報を、図14の総称情報管理表から取得する。
次に、連続情報取得部1305は、当該人物の記事から、地名や名勝等を取得する。そして、連続情報取得部1305は、取得した地名や名勝等に対応する地域名を、図15の総称情報管理表から取得する。
そして、データ群構成部1306は、事象取得部1304が取得した事象(例えば、「徳川家康」)、連続情報取得部1305が取得した時代(安土桃山時代、江戸時代)、連続情報取得部1305が取得した地域(京都、江戸、・・・)を取得する。次に、データ群構成部1306は、取得した情報からデータ群(例えば、「徳川家康|安土桃山時代、江戸時代|京都、江戸、・・・」)を構成する。そして、データ群蓄積部1307は、データ群構成部1306が取得したデータ群をデータ群格納部1308に蓄積する。なお、上記において、連続情報取得部1305は、時代と地域を対で取得することは好適である。かかる場合、データ群構成部1306は、例えば、「(事象)徳川家康、(時代|地域)安土桃山時代|三河,尾張,・・・、江戸時代|江戸,京都,・・・」を構成する。そして、データ群蓄積部1307は、かかるデータ群をデータ群格納部1308に蓄積する。
次に、端末装置11のユーザは、端末装置11に関連度出力指示「関連度出力 徳川家康,江戸時代,京都」を入力した、とする。関連度出力指示「関連度出力 徳川家康,江戸時代,京都」は、江戸時代で京都における徳川家康の重要度(関連度)を出力しなさい、という指示である。
次に、端末装置11の入力受付部111は、関連度出力指示「関連度出力 徳川家康,江戸時代,京都」を受け付け、入力送信部112は当該関連度出力指示を関連度出力装置23に送信する。
次に、関連度出力装置23の受付部1302は、関連度出力指示「関連度出力 徳川家康,江戸時代,京都」を受信する。
次に、関連度出力装置23は、以下のように関連度取得処理を行う。つまり、まず、関連データ群取得部2309は、受付部2302が受け付けた関連度出力指示が有する事象「徳川家康」を取得する。
次に、関連データ群取得部2309は、受付部2302が受け付けた関連度出力指示が有する総称情報「江戸時代,京都」を取得する。
次に、連続情報取得手段23091は、受付部2302が受け付けた各総称情報に対応する1または2以上の連続情報を、総称情報格納部1301から取得する。
次に、関連データ群取得部2309は、取得した事象「徳川家康」を有するデータ群を読み出す。
次に、事象「徳川家康」を有するデータ群とリンク関連にある関連データ群(例えば、3段まで)を取得する。なお、関連データ群は、事象「徳川家康」を有するデータ群の元データ(WikipedeiaのWebページ)を、直接または間接的にリンクしている元データから作成されたデータ群である。その際、関連データ群取得部2309は、総称情報「江戸時代」に対応する1以上のいずれか連続情報を含み、かつ総称情報「京都」に対応する1以上のいずれか連続情報を含むデータ群のみ、関連データ群として取得する。
次に、関連度算出部1310は、関連データ群の数が多いほど、関連度が大きくなるように、関連度を算出する。また、関連度算出部1310は、例えば、数式1を用いて、関連度を算出することは好適である。
以上、本実施の形態によれば、事物と2以上の連続情報との関連度を自動的に取得できる。また、本実施の形態によれば、事物と2以上の総称情報との関連度を自動的に取得できる。
なお、本実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記録媒体に、連続性のある情報である2以上の連続情報のうちの1以上の連続情報と、事象とを有し、他のデータ群とリンク構造を有する2以上のデータ群を格納しており、コンピュータを、事象と連続情報とを受け付ける受付部と、前記受付部が受け付けた事象を有するデータ群とリンク関係にある他のデータ群であり、前記受付部が受け付けた連続情報を有するデータ群である1以上の関連データ群を、前記記録媒体から取得する関連データ群取得部と、前記受付部が受け付けた事象を有するデータ群、および前記関連データ群取得部が取得した1以上の関連データ群を用いて、前記受付部が受け付けた事象と連続情報との関連の深さを示す関連度を算出する関連度算出部と、前記関連度算出部が算出した関連度を出力する出力部として機能させるためのプログラムである。
また、上記プログラムにおいて、前記データ群は、2種類以上の連続情報と事象とを有し、前記受付部は、事象と2種類以上の連続情報とを受け付け、前記関連データ群取得部は、前記受付部が受け付けた事象を有するデータ群にリンクする他のデータ群であり、前記受付部が受け付けた2種類以上のすべての連続情報を有するデータ群である1以上の関連データ群を、前記記憶媒体から取得するものとして、コンピュータを機能させることは好適である。
また、上記プログラムにおいて、記録媒体に、2以上の連続情報を総称する情報である総称情報と、当該2以上の連続情報とを対応付けて格納しており、前記受付部は、事象と2以上の総称情報とを受け付け、前記関連データ群取得部は、前記受付部が受け付けた2以上の各総称情報に対応する2以上の連続情報を、総称情報ごとに、前記記録媒体から取得する連続情報取得手段と、前記受付部が受け付けた事象を有するデータ群にリンクする他のデータ群であり、前記連続情報取得手段が取得した2以上の各総称情報に対応する2以上のいずれかの連続情報を、2以上のすべて総称情報に対して、有するデータ群である1以上の関連データ群を、前記記録媒体から取得する関連データ群取得手段とを具備し、前記関連度算出部は、前記受付部が受け付けた事象を有するデータ群、および前記関連データ群取得部が取得した1以上の関連データ群を用いて、前記受付部が受け付けた事象と前記2以上の総称情報との関連の深さを示す関連度を算出するのとして、コンピュータを機能させることは好適である。
また、上記プログラムにおいて、前記データ群を構成する元になるデータである元データから、当該元データ中の予め決められた特定のタグを手がかりに、または前記元データ中の予め決められた箇所から、事象を取得する事象取得部と、前記元データから、連続情報に該当する1以上の情報を取得し、当該1以上の各情報を連続情報に変換する、または前記元データから、1以上の連続情報を取得する連続情報取得部と、前記事象および前記1以上の連続情報を用いて、データ群を構成するデータ群構成部とをさらに具備し、前記データ群構成部が構成したデータ群が、前記記録媒体のデータ群であるのとして、コンピュータを機能させることは好適である。
また、図16は、本明細書で述べたプログラムを実行して、上述した実施の形態の関連度出力装置等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図16は、このコンピュータシステム340の概観図であり、図17は、コンピュータシステム340のブロック図である。
図16において、コンピュータシステム340は、FDドライブ、CD−ROMドライブを含むコンピュータ341と、キーボード342と、マウス343と、モニタ344とを含む。
図17において、コンピュータ341は、FDドライブ3411、CD−ROMドライブ3412に加えて、MPU3413と、CD−ROMドライブ3412及びFDドライブ3411に接続されたバス3414と、ブートアッププログラム等のプログラムを記憶するためのROM3415とに接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM3416と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク3417とを含む。ここでは、図示しないが、コンピュータ341は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。
コンピュータシステム340に、上述した実施の形態の関連度出力装置等の機能を実行させるプログラムは、CD−ROM3501、またはFD3502に記憶されて、CD−ROMドライブ3412またはFDドライブ3411に挿入され、さらにハードディスク3417に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ341に送信され、ハードディスク3417に記憶されても良い。プログラムは実行の際にRAM3416にロードされる。プログラムは、CD−ROM3501、FD3502またはネットワークから直接、ロードされても良い。
プログラムは、コンピュータ341に、上述した実施の形態の関連度出力装置等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム340がどのように動作するかは周知であり、詳細な説明は省略する。
なお、上記プログラムにおいて、情報を送信するステップや、情報を受信するステップなどでは、ハードウェアによって行われる処理、例えば、送信するステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。