(57)【要約】【課題】端末装置から見出しとなる単語を受付け、受付けた単語に対応する百科事典用画像を作成して提供する百科事典閲覧サーバ装置で、取扱う単語の量が増大しても、単語間の関連等に要する計算を効率的に処理して装置の負担を軽減すること。【解決手段】サーバ装置Ｓｖが、百科事典を構成する見出しとなる単語に対し、それぞれ関連した単語との関係性を示すリストを複数のクラスタに分割して作成し、作成したリストをテーブル化して記憶するデータベースを有し、端末装置から受付けた単語に従ってデータベースを検索し、関係性の高い単語を検索し、検索した単語とその関係性の度合いを示す情報とにより、関連度が高い単語を２次元配列し、各単語間を上記関連性の度合いを示す情報に応じた太さの線で接続したマップ画像を百科事典用画像として作成する。【選択図】図１
2015141534.tif 000002
【特許請求の範囲】
【請求項１】
端末装置から見出しとなる単語を受付け、受付けた単語に対応する百科事典用画像を作成して上記端末装置に提供する百科事典閲覧サーバ装置であって、
百科事典を構成する見出しとなる単語に対し、それぞれ関連した単語との関係性を示すリストを複数のクラスタに分割して作成し、作成したリストをテーブル化して記憶するデータベースと、
端末装置から受付けた単語に従って上記データベースを検索し、関係性の高い単語を検索する検索手段と、
上記検索手段で検索した、単語とその関係性の度合いを示す情報とにより、関連度が高い単語を２次元配列し、各単語間を上記関連性の度合いを示す情報に応じた太さの線で接続したマップ画像を上記百科事典用画像として作成する画像作成手段と
を備えたことを特徴とする百科事典閲覧サーバ装置。
【請求項２】
上記データベースは、クラスタリング手法としてＲｅｐｅａｔｅｄＢｉｓｅｃｔｉｏｎ法を用いて作成したリストを記憶することを特徴とする請求項１記載の百科事典閲覧サーバ装置。
【請求項３】
端末装置から見出しとなる単語を受付け、受付けた単語に対応する百科事典用画像を作成して上記端末装置に提供するサーバ装置による百科事典閲覧方法であって、
百科事典を構成する見出しとなる単語に対し、それぞれ関連した単語との関係性を示すリストを複数のクラスタに分割して作成し、作成したリストをテーブル化してデータベースに記憶させる記憶工程と、
端末装置から受付けた単語に従って上記データベースを検索し、関係性の高い単語を検索する検索工程と、
上記検索工程で検索した、単語とその関係性の度合いを示す情報とにより、関連度が高い単語を２次元配列し、各単語間を上記関連性の度合いを示す情報に応じた太さの線で接続したマップ画像を上記百科事典用画像として作成する画像作成工程と
を有したことを特徴とする百科事典閲覧方法。
【請求項４】
端末装置から見出しとなる単語を受付け、受付けた単語に対応する百科事典用画像を作成して上記端末装置に提供するサーバ装置が実行するプログラムであって、上記サーバ装置を、
百科事典を構成する見出しとなる単語に対し、それぞれ関連した単語との関係性を示すリストを複数のクラスタに分割して作成し、作成したリストをテーブル化してデータベースに記憶させる記憶手段、
端末装置から受付けた単語に従って上記データベースを検索し、関係性の高い単語を検索する検索手段、及び
上記検索手段で検索した、単語とその関係性の度合いを示す情報とにより、関連度が高い単語を２次元配列し、各単語間を上記関連性の度合いを示す情報に応じた太さの線で接続したマップ画像を上記百科事典用画像として作成する画像作成手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オンライン百科事典での学習支援効果の向上を図るための百科事典閲覧サーバ装置、百科事典閲覧方法及びプログラムに関する。
【背景技術】
【０００２】
近年、パーソナルコンピュータやスマートフォンなどの情報端末の普及により、インターネットを利用したオンライン百科事典が広く一般的に使用されている。この種のオンライン百科事典では、見出し語を入力することにより、その見出し語と対応するテキストデータ及び画像等が検索結果として表示される。
【０００３】
ところで、オンライン百科事典を学習支援用の一ツールとするべく、見出し語を入力すると、その見出し語に関連して学習重要度の高い他の単語を視覚的に提示可能としたシステムが提案されている。（例えば、非特許文献１）
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】河内沙織「オンライン百科事典のリンク構造を利用した学習重要度に基づく関連語視覚化と小中学生向け学習支援への応用」筑波大学大学院博士課程システム情報工学研究科修士論文（２０１３年３月）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記非特許文献に記載された技術では、例えば社会科の歴史分野で必要な単語について相互の関連度を計算しているが、百科事典として歴史のみならず全分野の単語を対象とした場合、データベースに蓄積するデータの量が増えることで関連度等の計算に要する処理量が膨大なものとなり、システムの負担が増大するという不具合がある。
【０００６】
本発明は上記のような実情に鑑みてなされたもので、その目的とするところは、取扱う単語の量が増大しても、単語間の関連等に要する計算を効率的に処理して装置の負担を軽減することが可能な百科事典閲覧サーバ装置、百科事典閲覧方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一態様は、端末装置から見出しとなる単語を受付け、受付けた単語に対応する百科事典用画像を作成して上記端末装置に提供する百科事典閲覧サーバ装置であって、百科事典を構成する見出しとなる単語に対し、それぞれ関連した単語との関係性を示すリストを複数のクラスタに分割して作成し、作成したリストをテーブル化して記憶するデータベースと、端末装置から受付けた単語に従って上記データベースを検索し、関係性の高い単語を検索する検索手段と、上記検索手段で検索した、単語とその関係性の度合いを示す情報とにより、関連度が高い単語を２次元配列し、各単語間を上記関連性の度合いを示す情報に応じた太さの線で接続したマップ画像を上記百科事典用画像として作成する画像作成手段とを備えたことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、取扱う単語の量が増大しても、単語間の関連等に要する計算を効率的に処理して装置の負担を軽減することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態に係るサーバ装置を含むシステム構成を示す図。
【図２】同実施形態に係るサーバ装置でのデータベース構築の詳細な処理内容を示すフローチャート。
【図３】同実施形態に係るサーバ装置でのデータベース構築の詳細な処理内容を示すフローチャート。
【図４】同実施形態に係るいくつかのページのリンク構造を例示する図。
【図５】同実施形態に係るいくつかのページのリンク構造とそれらページの関連度ｐｆｉｂｆの算出結果と例示する図。
【図６】同実施形態に係るクラスタリングによりページを３つのクラスタに分割した例を示す図。
【図７】同実施形態に係るページリストの一部と、クエリ「織田信長」のページに対応する図版データがｉｍｇリストに追加された場合の例を示す図。
【図８】同実施形態に係るページリストの一部と、クエリ「織田信長」のページとの関連度、及び内容が追加されたマップリストを示す図。
【図９】同実施形態に係るページリストの一部とクエリ「織田信長」のページとの関連度、及び内容が追加されたｐｆｉｂｆリストを示す図。
【図１０】同実施形態に係るサーバ装置でのマップ画像作成と返送の詳細な処理内容を示すフローチャート。
【図１１】同実施形態に係るサーバ装置でのマップ画像作成と返送の詳細な処理内容を示すフローチャート。
【図１２】同実施形態に係る検索により各テーブルから取得される範囲を例示する図。
【図１３】同実施形態に係るマップ画像の描画過程を例示する図。
【図１４】同実施形態に係るマップ画像の描画過程を例示する図。
【図１５】同実施形態に係るマップ画像の描画過程を例示する図。
【図１６】同実施形態に係るマップ画像の描画過程を例示する図。
【図１７】同実施形態に係るマップ画像の描画過程を例示する図。
【発明を実施するための形態】
【００１０】
以下、本発明をオンライン学習百科事典サーバ装置に適用した場合の一実施形態について図面を参照して詳細に説明する。  
［構成］  
図１は、本実施形態に係るサーバ装置Ｓｖを含むシステム構成を示す図である。同図でサーバ装置Ｓｖは、インターネットや図示しないプロバイダ、アクセスポイントや携帯電話システムの基地局を含んだネットワークＮｗを介して、パーソナルコンピュータＰｃやスマートフォンＳｐなどの情報端末装置と接続される。
【００１１】
上記パーソナルコンピュータＰｃ及びスマートフォンＳｐは、上記ネットワークＮｗを介して上記サーバ装置Ｓｖの提供するオンライン学習百科事典のウェブサイトにアクセスし、任意の文字列からなる見出し語を入力することで、その見出し語の単語に関連度の高い多数の単語を２次元配列したマップ画像のデータを取得し、各々のディスプレイ画面で表示させることができる。
【００１２】
なお、上記サーバ装置ＳｖやパーソナルコンピュータＰｃ、スマートフォンＳｐの各ハードウェア回路の構成自体は、きわめて一般的な周知の技術であるものとして、それらの図示及び説明は省略するものとする。
【００１３】
［動作−１：データベース構築］  
次に上記実施形態の動作について説明する。  
まず、上記サーバ装置Ｓｖにデータベースを構築するための動作内容について説明する。  
図２及び図３は、上記サーバ装置Ｓｖにおいてデータベースを構築する過程の詳細な処理内容を示す。なお本実施形態では、見出し語となる単語を「ページ」とした単位で取扱うものとする。各ページにおいては、見出し語となる単語に、見出し語に対する解説文中から関連する他の単語を、例えば係り受け解析処理により抽出し、抽出した関連する他の単語のページへの内部リンクが設定されているものとする。
【００１４】
その処理当初にサーバ装置Ｓｖでは、学習百科事典を構成するページ間のリンク構造を取得する（ステップＳ１０１）。  
図４は、いくつかのページのリンク構造を例示する図である。同図では、あるページに、他のページへの内部リンクがある場合を、内部リンクがあるページから他のページへ向いた矢印により示している。例えば、見出し語「室町時代」のページは、見出し語「織田信長」のページへの内部リンクを有している。また、見出し語「銅」のページと、見出し語「鉄」のページは、相互に内部リンクを有している。
【００１５】
サーバ装置Ｓｖでは、取得した上記リンク構造に基づいて、各ページ（単語）間の関連度を測る指標ｐｆｉｂｆ（Ｐａｔｈ  Ｆｒｅｑｕｅｎｃｙ  Ｉｎｖｅｒｓｅｄ  Ｂａｃｈｗａｒｄ  Ｆｒｅｑｕｅｎｃｙ）を計算する（ステップＳ１０２）。ｐｆｉｂｆとは、ページからページへのリンクの多さ、各リンクの長さに着目してページ同士の関連度を測る手法である。あるページｐｉから他のページｐｊへの関連度を測る場合のｐｆｉｂｆの式を以下に示す。すなわち
【数１】
2015141534.tif 000003
【００１６】
ただし、上記式１中のｄ(｜ｔｋ｜)は、ｎｉｊ個の要素を持つページｐｉからページｐｊまでの経路情報をＴｉｊ＝｛ｔ１，ｔ２，…，ｔｎｉｊ｝とした場合に、経路ｔｋ∈Ｔｉｊの長さに応じて増加する単調増加関数(本システムでは、２を底とした指数関数)であり、Ｎは全ページ数、ｄｆ(ｐｊ)はページｐｊが他のページから参照されているリンク数である。  
（参考：中山浩太郎、原隆浩、西尾章治郎「Ｗｅｂ事典からのシソーラス辞書構築手法」情報処理学会論文誌データベース，Ｖｏｌ．４８，ｐｐ．２７−３７，２００７年６月１５日。）
図５（Ａ）は、上記図４と同様にいくつかのページのリンク構造を例示するもので、それらページの関連度ｐｆｉｂｆの算出結果例を図５（Ｂ）に示す。リンクを有していないページ間の関連度ｐｆｉｂｆは「０．００」となる。
【００１７】
上記関連度ｐｆｉｂｆの算出を終えると、次にサーバ装置Ｓｖではリンクの有無を組成として、ページのクラスタリングを行なう（ステップＳ１０３）。クラスタリング手法には、例えばアルゴリズムとしてＲｅｐｅａｔｅｄ  Ｂｉｓｅｃｔｉｏｎを用いた軽量データクラスタリングツール「ｂａｙｏｎ」を用いる。
【００１８】
（参考：http://alpha.mixi.co.jp/2009/10714）  
図６は、上記図４、図５（Ａ）で示したいくつかのページのリンク構造から、クラスタリングにより３つのクラスタ「クラスタ１」〜「クラスタ３」に分割した例を示す図である。
【００１９】
上記クラスタリング処理後、サーバ装置Ｓｖでは各クラスタ内でのページ同士の従属度を計算する（ステップＳ１０４）。
【００２０】
単語ｗｉが単語ｗｊに従属する度合いである従属度ｓｕｂｏ(ｗｉ，ｗｊ)を以下に示す。以下の式２中、関連度ｐｆｉｂｆの値は各ページの内容量に依存してしまうため、正規化して用いる。
【数２】
2015141534.tif 000004
【００２１】
上記従属度の算出を終えると、次に学習百科事典のページのリストを作成する（ステップＳ１０５）。
【００２２】
次いで、作成したページリスト中の位置を示す変数ｉに初期値「１」を設定した上で（ステップＳ１０６）、ページリストのｉ番目と他のページとの関連度を計算する（ステップＳ１０７）。
【００２３】
ここで、見出し語となる単語であるクエリｑと、他の単語ｗｉとの関連度ｒｅｌｗ１(ｑ，ｗｉ)の算出式３を以下に示す。関連度ｒｅｌｗ１(ｑ，ｗｉ)は、第１層を抽出するための評価値である。
【数３】
2015141534.tif 000005
【００２４】
ただし、Ｉｍｐ関数は学習百科事典において定義されている重要度に対し、それぞれに値を割り当てる関数である。
【００２５】
その後、ページに関連づける図版データの番号を示す変数ｎｕｍ＿ｉｍｇに初期値「０」を設定した上で（ステップＳ１０８）、ページリストのｉ番目にひもづけられている図版データを、図版データのリストであるｉｍｇリストに追加する（ステップＳ１０９）。
【００２６】
図７は、作成されたページリストの一部と、クエリ（ｑｕｅｒｙ）「織田信長」のページに対応する図版データ「Img/30/311.gif」」がｉｍｇリストに追加された場合の例を示す図である。
【００２７】
その後、上記変数ｎｕｍ＿ｉｍｇの値を「＋１」更新設定した上で（ステップＳ１１０）、関連度の高いページの順位を示す変数ｉに初期値「１」を設定する（ステップＳ１１１）。
【００２８】
さらに同一のクエリが複数ある場合の識別番号を示す変数ｎｕｍに初期値「０」を設定する（ステップＳ１１２）。
【００２９】
次に、ページリストのｉ番目と、ｊ番目に関連度の高いページのペアを、相関マップを作成するためのマップリストに追加する（ステップＳ１１３）。
【００３０】
図８は、ｉ＝１３０４、ｊ＝３である場合の、ページリスト（図８（Ａ））、クエリ「織田信長」との関連度（図８（Ｂ））、及び内容が追加されたマップリスト（図８（Ｃ））を示す図である。
【００３１】
その後、ページリストのｉ番目と、ｊ番目に関連度の高いページの関連度を、ｐｆｉｂｆ値を記憶するためのｐｆｉｂｆリストに追加する（ステップＳ１１４）。
【００３２】
図９は、ｉ＝１３０４、ｊ＝３である場合の、ページリスト（図９（Ａ））、クエリ「織田信長」との関連度（図９（Ｂ））、及び内容が追加されたｐｆｉｂｆリスト（図９（Ｃ））を示す図である。
【００３３】
こうしてマップリスト及びｐｆｉｂｆリストへの追加を終えた後、上記変数ｎｕｍの値を「＋１」更新設定した上で（ステップＳ１１５）、ｊ番目に関連度の高いページにひもづけされている図版データを、図版データのリストである上記ｉｍｇリストに追加する（ステップＳ１１６）。
【００３４】
さらに、上記変数ｎｕｍ＿ｉｍｇの値を「＋１」更新設定した上で（ステップＳ１１７）、ｊ番目に関連度の高いページとの関連度、及び従属度が「０」より大きいページが他にあるか否かを判断する（ステップＳ１１８）
まだページがあると判断した場合（ステップＳ１１８のＹｅｓ）、関連度の順序を示す変数ｋに初期値「１」を設定した上で（ステップＳ１２０）、ｊ番目に関連度の高いページと、そのページに対してｋ番目に関連度（２）の高いページのペアを、上記マップリストに追加する（ステップＳ１２１）。
【００３５】
ここで上記関連度（２）は、第二層を抽出するための評価値であり、従属度を利用して計算する。クエリｑ、単語ｗｋと単語ｗｌの関連度（２）ｒｅｌｗ２((ｑ，ｗｋ)，ｗｌ)を以下に示す。
【数４】
2015141534.tif 000006
【００３６】
次いで、ｊ番目に関連度の高いページと、そのページに対してｋ番目に関連度（２）の高いページの関連度を、上記ｐｆｉｂｆリストに追加する（ステップＳ１２２）。
【００３７】
その後、さらに上記変数ｎｕｍ＿ｉｍｇの値を「＋１」更新設定した上で（ステップＳ１２３）、ｊ番目に関連度の高いページに対して、ｋ番目に関連度（２）の高いページにひもづけられている図版データを上記ｉｍｇリストに追加する（ステップＳ１２４）。
【００３８】
そして上記変数ｎｕｍ＿ｉｍｇの値を「＋１」更新設定した上で（ステップＳ１２５）、ｊ番目に関連度の高いページとの関連度、及び従属度が「０」より大きいページが２つ以上あるか否かを判断する（ステップＳ１２６）。
【００３９】
２つ以上あると判断した場合（ステップＳ１２６のＹｅｓ）、次に変数ｋの値が「２」より小さいか否かを判断する（ステップＳ１２８）。
【００４０】
変数ｋの値が「２」より小さいと判断した場合（ステップＳ１２８のＹｅｓ）、当該変数ｋの値を「＋１」更新設定した上で（ステップＳ１２９）、上記ステップＳ１２１からの処理に戻る。
【００４１】
また、上記ステップＳ１２６でその時点での変数ｋの値が「２」以上であると判断した場合（ステップＳ１２８のＮｏ）、ｊ番目に関連度の高いページと、そのページに対してｌ番目に関連度（３）の高いページのペアを上記マップリストに追加すると共に、その関連度を上記ｐｆｉｂｆリストに追加し、さらにｊ番目に関連度の高いページに対して、ｌ番目に関連度（３）の高いページにひもづけられている図版データを上記ｉｍｇリストに追加する（ステップＳ１３０）。
【００４２】
ここで上記関連度（３）は、上記関連度（２）では不足する関連度を抽出するための評価値である。クエリｑ、単語ｗｋと単語ｗｌの関連度（３）ｒｅｌｗ３((ｑ，ｗｋ)，ｗｌ)を以下に示す。
【数５】
2015141534.tif 000007
【００４３】
その後、上記変数ｎｕｍの値と上記変数ｎｕｍ＿ｉｍｇの値をそれぞれ「＋１」更新設定した上で（ステップＳ１３１，Ｓ１３２）、変数ｋの値と変数ｌの値の和が「２」より小さいか否かを判断する（ステップＳ１３３）。
【００４４】
変数ｋの値と変数ｌの値の和が「２」より小さいと判断した場合（ステップＳ１３３のＹｅｓ）、変数ｌの値を「＋１」更新設定した上で（ステップＳ１３４）、再び上記ステップＳ１３０からの処理に戻って、同様の処理を繰返す。
【００４５】
また、上記ステップＳ１２６において、ｊ番目に関連度の高いページとの関連度、及び従属度が「０」より大きいページが１つ未満であると判断した場合（ステップＳ１２６のＮｏ）、上記変数ｌの値を初期値「１」に設定した上で（ステップＳ１２７）、上記ステップＳ１３０からの処理に進む。
【００４６】
さらに上記ステップＳ１１８において、ｊ番目に関連度の高いページとの関連度、及び従属度が「０」より大きいページが他にはないと判断した場合にも（ステップＳ１１８のＮｏ）、上記変数ｌの値を初期値「１」に設定した上で（ステップＳ１１９）、上記ステップＳ１３０からの処理に進む。
【００４７】
上記ステップＳ１３３において、変数ｋの値と変数ｌの値の和が「２」以上であると判断した場合（ステップＳ１３３のＮｏ）、次にその時点の変数ｊの値が、予め設定されたページ数「１０」より小さいか否かを判断する（ステップＳ１３５）。
【００４８】
変換数ｊの値が「１０」より小さいと判断した場合（ステップＳ１３５のＹｅｓ）、当該変数ｊの値を「＋１」更新設定した上で（ステップＳ１３６）、さらに関連度の高いページに関する各種リストを追加して作成するべく、上記ステップＳ１１３からの処理に戻る。
【００４９】
また上記ステップＳ１３５で変換数ｊの値が「１０」以上であると判断した場合（ステップＳ１３５のＮｏ）、その時点のマップリストをデータベースのテーブルｇｒａｐｈに追加する（ステップＳ１３７）。  
このテーブルｇｒａｐｈは、作成するマップ画像において、つながりを持つ単語を格納するためのもので、見出し語であるクエリ（ｑｕｅｌｙ）、同一クエリにおける順序を示すｎｕｍ、見出し語に対する第１の関連語であるｗｏｒｄ１、見出し語に対する第２の関連語であるｗｏｒｄ２の各カラムに対応する内容を一単位として格納する。上記ｗｏｒｄ１，ｗｏｒｄ２は、それぞれ他のデータとのリンク情報を含む。
【００５０】
併せて、その時点のｐｆｉｂｆリストをデータベースのテーブルｒｅｌに追加する（ステップＳ１３８）。  
このテーブルｒｅｌは、上記テーブルｇｒａｐｈに格納されている単語同士の関連度を格納するためのもので、見出し語であるクエリ（ｑｕｅｌｙ）、同一クエリにおける順序を示すｎｕｍ、見出し語に対するｐｆｉｂｆ値であるｒｅｌの各カラムに対応する内容を一単位として格納する。
【００５１】
さらにその時点のｉｍｇリストをデータベースの後述するテーブルｉｍｇに追加する（ステップＳ１３９）。  
このテーブルｉｍｇは、上記テーブルｇｒａｐｈに格納されている単語の図版データのアドレスを格納するためのもので、見出し語であるクエリ（ｑｕｅｌｙ）、同一クエリにおける順序を示すｎｕｍ、見出し語に対する図版データのアドレスであるｉｍｇの各カラムに対応する内容を一単位として格納する。
【００５２】
以上で当該ページのクエリに関するデータベースの構築を終えたものとして、その時点の変数ｉの値が、このデータベースに記憶されているページリストの最大要素数より小さいか否かにより、リストの作成が終了したか否かを判断する（ステップＳ１４０）。
【００５３】
ここで変数ｉの値が、ページリストの最大要素数より小さく、リストの作成がまだ終了していないと判断した場合には（ステップＳ１４０のＹｅｓ）、次いで当該変数ｉの値を「＋１」更新設定した上で（ステップＳ１４１）、上記ステップＳ１０８からの処理に戻り、新たなページのクエリに対する同様の処理を実行する。
【００５４】
そして、このデータベースに記憶されているページリストのすべての要素に関する処理を上記と同様に実行した時点で、上記ステップＳ１４０において変数ｉの値がページリストの最大要素数となったと判断すると（ステップＳ１４０のＹｅｓ）、以上で各種リストの作成を終了し、全ページに基づくデータベースの構築が完了したものとして、以上でこの図２及び図３の処理を終了する。
【００５５】
［動作−２：見出し語に対するマップ作成］  
上記パーソナルコンピュータＰｃやスマートフォンＳｐから見出し語の入力を受付けるサーバ装置Ｓｖの動作内容について説明する。  
なおこの動作において作成されるマップ画像のデータは随時、見出し語を送ってきた情報端末装置側のパーソナルコンピュータＰｃやスマートフォンＳｐに返送され、当該端末装置側では動的にマップ画像が形成されていく過程を見ることができるものとする。
【００５６】
図１０及び図１１は、上記サーバ装置Ｓｖが情報端末装置から見出し語の入力を受付け、対応するマップ画像を作成する過程の詳細な処理内容を示す。
【００５７】
その当初にサーバ装置Ｓｖは、開設しているウェブサイト上で、ネットワークＮｗを介してパーソナルコンピュータＰｃやスマートフォンＳｐなどの情報端末装置から見出し語の入力を受付ける（ステップＳ２０１）。ここでは、例えば見出し語「織田信長」が入力された場合を例にとって以下に説明するものとする。
【００５８】
サーバ装置Ｓｖでは、テーブルｇｒａｐｈ、テーブルｒｅｌ、テーブルｉｍｇのそれぞれで、カラムのクエリが入力された見出し語の単語と一致するデータを検索して取得する（ステップＳ２０２）。
【００５９】
図１２は、この検索により各テーブルから取得される範囲を例示する図である。  
図１２（Ａ）は、テーブルｇｒａｐｈ中からクエリの「織田信長」と一致する範囲が１８行分あることを示す。図１２（Ｂ）は、テーブルｒｅｌで上記テーブルｇｒａｐｈの同一クエリ及び同一ｎｕｍのｗｏｒｄ１の内容とｗｏｒｄ２の内容との関連度ｒｅｌ（ｐｆｉｂｆ値）が格納されている状態を例示している。図１２（Ｃ）は、上記テーブルｇｒａｐｈの同一クエリ及び同一ｎｕｍに対応する図版データのアドレスｉｍｇが格納されている状態を例示している。
【００６０】
こうしてデータを取得すると、取得した内容に応じ、上記テーブルｇｒａｐｈのカラムｎｕｍの順番通りに、対応するカラムｗｏｒｄ１，ｗｏｒｄ２の内容を２次元配列ＧＰＡＰＨに格納する（ステップＳ２０３）。ここで２次元配列ＧＲＡＰＨは、マップ画像を作るための２次元配列情報を格納するエリアである。
【００６１】
同様に、上記ステップＳ２０２で取得した内容に応じ、上記テーブルｒｅｌ、テーブルｉｍｇのカラムｎｕｍの順番通りに、対応するカラムｒｅｌ、カラムｉｍｇの内容をそれぞれ１次元配列ＲＥＬ、１次元配列ＩＭＧに格納する（ステップＳ２０４）。ここで１次元配列ＲＥＬは、関連度を１次元配列情報として格納するエリアである。１次元配列ＩＭＧは、図版データのアドレスを１次元配列情報として格納するエリアである。
【００６２】
次にサーバ装置Ｓｖでは、上記２次元配列ＧＲＡＰＨにおける位置を示す変数ｉに初期値「１」を設定した上で（ステップＳ２０５）、マップ画像を構成する要素及びそのリストを示すＮＯＤＥに、２次元配列ＧＲＡＰＨのｉ番目のｗｏｒｄ１の内容が含まれるか否かにより、当該ｗｏｒｄ１の内容をＮＯＤＥに追加する必要があるかどうかを判断する（ステップＳ２０６）。
【００６３】
ここでＮＯＤＥに２次元配列ＧＲＡＰＨのｉ番目のｗｏｒｄ１が含まれないと判断した場合（ステップＳ２０６のＮｏ）にのみ、当該ｗｏｒｄ１の内容をＮＯＤＥに追加し、初期位置をランダムに決定して描画を行なう（ステップＳ２０７）。
【００６４】
その後、ＮＯＤＥに、２次元配列ＧＲＡＰＨのｉ番目のｗｏｒｄ２の内容が含まれるか否かにより、当該ｗｏｒｄ２の内容をＮＯＤＥに追加する必要があるかどうかを判断する（ステップＳ２０８）。
【００６５】
ここでＮＯＤＥに２次元配列ＧＲＡＰＨのｉ番目のｗｏｒｄ２が含まれないと判断した場合（ステップＳ２０８のＮｏ）にのみ、当該ｗｏｒｄ２の内容をＮＯＤＥに追加し、初期位置をランダムに決定して描画を行なう（ステップＳ２０９）。
【００６６】
その後、２次元配列ＧＲＡＰＨのｉ番目のｗｏｒｄ１とｗｏｒｄ２のＮＯＤＥを結ぶ、エッジと称する線の太さを、上記１次元配列ＲＥＬのｉ番目に応じて決定し、上記マップ画像上で描画する（ステップＳ２１０）。
【００６７】
図１３は、ｉ＝１である時点で、上記ステップＳ２０７でＮＯＤＥに追加された要素「織田信長」に基づいてマップ画像に描画された後、上記ステップＳ２０９でＮＯＤＥに追加された要素「本能寺の変」に基づいてマップ画像に描画され、続くステップＳ２１０でそれらを結ぶエッジが関連度に応じた太さで描画された状態を示す。
【００６８】
以上でテーブルＧＲＡＰＨのｉ番目のｗｏｒｄ１，ｗｏｒｄ２の内容に基づくマップ画像の描画を終えたものとして、その時点の変数ｉの値が、テーブルＧＲＡＰＨに格納されている最大要素数より小さいか否かにより、マップ画像の描画が終了したか否かを判断する（ステップＳ２１１）。
【００６９】
ここで変数ｉの値が、テーブルＧＲＡＰＨの最大要素数より小さく、マップ画像の描画がまだ終了していないと判断した場合には（ステップＳ２１１のＹｅｓ）、次いで当該変数ｉの値を「＋１」更新設定した上で（ステップＳ２１２）、上記ステップＳ２０６からの処理に戻り、新たな要素に対する同様の処理を実行する。
【００７０】
こうして変数ｉの値を順次更新設定し、上記ステップＳ２０６〜Ｓ２０９を通じて同一の内容が重複してマップ画像に描画されないようにしながら、随時マップ画像への描画を実行していく。
【００７１】
例えばｉ＝２である時点で、ｗｏｒｄ１の内容「本能寺の変」はすでにリストＮＯＤＥに含まれているため（ステップＳ２０６のＹｅｓ）、上記ステップＳ２０７での描画処理は実行しない。
【００７２】
その後、ｗｏｒｄ２の内容「延暦寺」はリストＮＯＤＥに含まれていないため（ステップＳ２０６のＮｏ）、上記ステップＳ２０９でマップ画像に追加して図１４に示すように描画する。
【００７３】
続くステップＳ２１０で、ｗｏｒｄ１の内容「本能寺の変」とｗｏｒｄ２の内容「延暦寺」とをその関連度「０．５８３」に応じてエッジで結ぶように描画した状態を図１５に示す。  
この図１５に示すように、「織田信長」と「本能寺の変」の関連度が「０．８３２」であるのに対し、「本能寺の変」と「延暦寺」の関連度は「０．５３８」であるため、「織田信長」と「本能寺の変」を結ぶエッジより、「本能寺の変」と「延暦寺」を結ぶエッジの方が細くなっている。
【００７４】
変数ｉの値がテーブルＧＲＡＰＨに格納されている最大要素数と等しくなり、必要な要素に関する一通りのマップ画像の描画が終了したと判断すると（ステップＳ２１１のＮｏ）、次に各要素間のマップ画像上での結合力、反発力を示すバネ力と斥力の付与の処理に移行する。
【００７５】
まず、変数ｊと変数ｋにそれぞれ初期値「１」を設定した上で（ステップＳ２１３，Ｓ２１４）、次に変数ｊの値と変数ｋの値が等しいか否か判断する（ステップＳ２１５）。
【００７６】
変数ｊの値と変数ｋの値が等しいと判断した場合（ステップＳ２１５のＹｅｓ）、その時点での変数ｋの値がリストＮＯＤＥの最大要素数より小さいことを確認した上で（ステップＳ２１９のＹｅｓ）、変数ｋの値を「＋１」更新設定し（ステップＳ２２４）、再び上記ステップＳ２１５からの処理に戻る。
【００７７】
上記ステップＳ２１５において変数ｊの値と変数ｋの値が等しくないと判断した場合（ステップＳ２１５のＮｏ）、次にリストＮＯＤＥのｊ番目の内容とｋ番目の内容とがエッジでつながっているか否かを判断する（ステップＳ２１６）。
【００７８】
図１６は、この時点でのマップ画像を例示するものである。変数ｉ＝２、変数ｋ＝３の場合、２番目の要素「本能寺の変」と３番目の要素「延暦寺」はつながっていると判断する。
【００７９】
また、変数ｉ＝２、変数ｋ＝４の場合、２番目の要素「本能寺の変」と４番目の要素「豊臣秀吉」はつながっていないと判断する。
【００８０】
エッジでつながっていると判断した場合にのみ（ステップＳ２１６のＹｅｓ）、それらの要素間に働くばね力を、ばねの力がその伸びに反比例するというフックの法則（弾性の法則）の次式に基づいて計算する（ステップＳ２１７）。
【数６】
2015141534.tif 000008
【００８１】
例えば、上記式６中の定数ｋ＝１０，ｌ＝２５０として設定する。式６中のｘ，ｙはｉ番目の要素とｊ番目の要素の近接コーナ部間のｘ，ｙ座標方向に沿った距離を示す。要素のｘ，ｙ座標に重なりがある場合、重なりがある座標の距離として定数、例えば２０を設定する。
【００８２】
上記図１６の２番目の要素「本能寺の変」と３番目の要素「延暦寺」の場合、ｙ座標方向に重なりがあるため、例えばｘ＝３００，ｙ＝２０として計算することで、その距離（長さ）３０１を得ることができる。すなわち、上記式６中の(ｘ２＋ｙ２)1/2部分に数値３０１を代入することで、上述した定数ｋ＝１０，ｌ＝２５０とすると、ｆｘ≒−５０８、ｆｙ≒−３３を得ることができる。
【００８３】
上記ステップＳ２１７の計算の有無に拘わらず、ｊ番目の要素とｋ番目の要素間に働く斥力を、距離に反比例するものとして次式７に基づき計算する（ステップＳ２１８）。
【数７】
2015141534.tif 000009
【００８４】
上記式７中においても、式中のｘ，ｙはｊ番目の要素とｋ番目の要素の近接コーナ部間のｘ，ｙ座標方向に沿った距離を示す。要素のｘ，ｙ座標に重なりがある場合、重なりがある座標の距離として定数、例えば２０を設定する。また、同式７中の定数には、例えば１００，０００を設定する。
【００８５】
上記図１６のマップ画像の要素配列に代えて、図１７に示すように２番目の要素「本能寺の変」と３番目の要素「延暦寺」とがｙ座標方向でも重なっていない場合、ｊ＝２、ｋ＝３の時にこれらの要素間の斥力が計算される。その場合、例えばｘ＝１００，ｙ＝１０であったとすると、ｆｘ≒９、ｆｙ≒０．９を得ることができる
上記ステップＳ２１８での計算後、変数ｋの値がリストＮＯＤＥに格納されている最大要素数より小さいか否かにより、ｊ番目の要素に対する他の要素との間のばね力、斥力の計算を終えたか否かを判断する（ステップＳ２１９）。
【００８６】
ここで変数ｋの値が、リストＮＯＤＥの最大要素数より小さく、ｊ番目の要素に対する他の要素との間に働く力の計算がまだ終えていないと判断した場合には（ステップＳ２１９のＹｅｓ）、次いで当該変数ｋの値を「＋１」更新設定した上で（ステップＳ２２０）、上記ステップＳ２１５からの処理に戻り、同様の処理を実行する。
【００８７】
そして、ｊ番目の要素に対する他のすべての要素との間に働く力の計算を終えた時点で、上記ステップＳ２１９において変数ｋの値がリストＮＯＤＥの最大要素数と等しくなったと判断すると（ステップＳ２１９のＮｏ）、上記ばね力、斥力の計算結果を元にｊ番目の要素の再配置時の移動の速さを示す速度を計算する（ステップＳ２２１）。
【００８８】
この計算結果に基づいて、ｊ番目の要素の位置を計算してマップ画像上で再配置した後（ステップＳ２２２）、変数ｊの値がリストＮＯＤＥに格納されている最大要素数より小さいか否かにより、リストＮＯＤＥに格納されたすべての要素に対して、他の要素との間のばね力、斥力の計算を終えたか否かを判断する（ステップＳ２２３）。
【００８９】
ここで変数ｊの値が、リストＮＯＤＥの最大要素数より小さく、まだ他にもその他の要素との間に働く力の計算と計算結果に基づく再配置を終えていない要素があると判断した場合には（ステップＳ２２３のＹｅｓ）、次いで当該変数ｊの値を「＋１」更新設定した上で（ステップＳ２２４）、上記ステップＳ２１４からの処理に戻り、同様の処理を実行する。  
そして、リストＮＯＤＥに格納したすべての要素に対し、その他のすべての要素との間に働く力の計算と計算結果に基づく再配置を終えた時点で、上記ステップＳ２２３において変数ｊの値がリストＮＯＤＥの最大要素数と等しくなったと判断すると（ステップＳ２２３のＮｏ）、次にリストＮＯＤＥに格納した全要素の速度の合計を求め、その合計値が予め設定されたしきい値より大きいか否かを判断する（ステップＳ２２５）。
【００９０】
全要素の速度の合計値が予め設定されたしきい値より大きいと判断した場合（ステップＳ２２５のＹｅｓ）、各要素間の配置バランスが悪く、且つ各要素の動きを見づらく制限するべきものとして、再び上記ステップＳ２１３からの処理に戻り、計算を再度実行する。
【００９１】
そして、上記ステップＳ２２５において全要素の速度の合計値が予め設定されたしきい値以下であると判断した場合（ステップＳ２２５のＮｏ）、各要素間の配置バランスが改善されたものと判断し、以上で初期動作を完了して、情報端末装置であるパーソナルコンピュータＰｃまたはスマートフォンＳｐ等からの操作に対応する処理に移行する。
【００９２】
すなわちサーバ装置Ｓｖでは、送信しているマップ画像に対する操作の有無を、クリックされたか否か（ステップＳ２２６）、パーソナルコンピュータＰｃでダブルクリックされたか否か（あるいはスマートフォンＳｐでタップされたか否か）（ステップＳ２３０）、要素がドラッグ操作されたか否か（ステップＳ２３３）、あるいはウィンドウを閉じる指示操作がなされたか否か（ステップＳ２３５）を繰り返し判断することで、それらのいずれかの操作があった場合に対処する。
【００９３】
上記ステップＳ２２６でクリックされたと判断した場合（ステップＳ２２６のＹｅｓ）、その時点でパーソナルコンピュータＰｃまたはスマートフォンＳｐ等の情報端末装置のディスプレイ上でポイントされている位置にあるＮＯＤＥ要素を取得し、その要素に対応する図版データを表示しているか否かを判断する（ステップＳ２２７）。
【００９４】
図版データを表示していないと判断した場合（ステップＳ２２７のＮｏ）、ポイントされた要素に対応する図版データを上記１次元配列ＩＭＧに基づいて取得し、当該要素の上の位置に展開して表示させた後（ステップＳ２２８）、次なる操作に備えて上記ステップＳ２３０に進む。
【００９５】
また上記ステップＳ２２６ですでに図版データを表示していると判断した場合（ステップＳ２２７のＹｅｓ）、その図版データの表示を解除するべく、図版を閉じた上で（ステップＳ２２９）、次なる操作に備えて上記ステップＳ２３０に進む。
【００９６】
上記ステップＳ２３０において、マップ画像に対してダブルクリックされたと判断した場合（ステップＳ２３０のＹｅｓ）、次いでその時点でパーソナルコンピュータＰｃまたはスマートフォンＳｐ等の情報端末装置のディスプレイ上でポイントされている位置に、ＮＯＤＥ要素があるか否かを判断する（ステップＳ２３０）。
【００９７】
ここで当該ポイント位置には要素がないと判断した場合（ステップＳ２３０のＮｏ）、上記ダブルクリック操作をＮＯＰ（ｎｏ  ｏｐｅｒａｔｉｏ：無効命令）として取り扱い、そのまま上記ステップＳ２３３に進む。
【００９８】
一方、上記ステップＳ２３０で当該ポイント位置に要素があると判断した場合（ステップＳ２３０のＹｅｓ）、そのポイント位置の要素を新たな見出し語として設定し、マップ画像を再作成するべく、上記ステップＳ２０２からの処理に進む。
【００９９】
また上記ステップＳ２３３において、要素がドラッグ操作されたか否かと判断した場合（ステップＳ２３３のＹｅｓ）、そのドラッグ操作の開始時のポイントされた位置にあるＮＯＤＥ要素を、ドラッグしているポイント位置に移動するよう、隣接する他の要素との接続関係も含めて変更設定した上で（ステップＳ２３４）、上記ステップＳ２３５の処理に進む。
【０１００】
上記ステップ２３５において、ウィンドウを閉じる指示操作がなされたと判断した場合（ステップＳ２３５のＹｅｓ）、以上で当該情報端末装置へのマップ画像の提供を終了する。
【０１０１】
以上詳述した如く本実施形態によれば、取扱う単語の量が増大しても、クラスタリング処理を行なうことで、単語間の関連等に要する計算を効率的に処理して装置の負担を軽減することが可能となる。
【０１０２】
また上記実施形態では、クラスタリング手法としてＲｅｐｅａｔｅｄＢｉｓｅｃｔｉｏｎ法を用いるものとしたので、装置の負担を軽減しながら高速で処理を実行することができる。
【０１０３】
なお上記実施形態は、歴史的な項目名を見出し語として関連する単語を検索する場合を例にとって説明したが、本発明は百科事典のデータベースを対象とし、項目の分野等を特定するものではない。
【０１０４】
その他、本発明は上述した実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上述した実施形態で実行される機能は可能な限り適宜組み合わせて実施しても良い。上述した実施形態には種々の段階が含まれており、開示される複数の構成要件による適宜の組み合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、効果が得られるのであれば、この構成要件が削除された構成が発明として抽出され得る。
【符号の説明】
【０１０５】
Ｎｗ…ネットワーク、
Ｐｃ…パーソナルコンピュータ、
Ｓｐ…スマートフォン、
Ｓｖ…サーバ装置。
【図１】
2015141534.tif 000010
【図２】
2015141534.tif 000011
【図３】
2015141534.tif 000012
【図４】
2015141534.tif 000013
【図５】
2015141534.tif 000014
【図６】
2015141534.tif 000015
【図７】
2015141534.tif 000016
【図８】
2015141534.tif 000017
【図９】
2015141534.tif 000018
【図１０】
2015141534.tif 000019
【図１１】
2015141534.tif 000020
【図１２】
2015141534.tif 000021
【図１３】
2015141534.tif 000022
【図１４】
2015141534.tif 000023
【図１５】
2015141534.tif 000024
【図１６】
2015141534.tif 000025
【図１７】
2015141534.tif 000026