(57)【要約】【課題】既存の辞書構成項目であるクラス及びプロパティの品質を劣化させる要素（例えば、項目の欠損、項目の異常、項目の非統一性、項目の非正規性など）についての改善提案を作成することにより、辞書の品質向上を支援することができる辞書更新装置およびプログラムを提供する。【解決手段】検索キーワードの利用頻度と各検索キーワード間の関係、すなわち検索キーワードの履歴を用いて、既存の辞書構成項目であるクラス及びプロパティの品質を劣化させる要素（例えば、項目の欠損、項目の異常、項目の非統一性、項目の非正規性など）についての改善提案を作成する。これにより、辞書の品質向上を支援することができる。【選択図】        図３
2008242836.tif 000002
【特許請求の範囲】
【請求項１】
メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶部と、
前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶部と、
前記辞書記憶部に記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定部と、
設定された前記検索キーワードの履歴を記憶する検索履歴記憶部と、
前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用するクラスおよびプロパティである頻出検索キーワード集合を検出する頻出検索キーワード集合検出部と、
前記頻出検索キーワード集合に含まれる全てのクラス間の関係を生成し、生成された前記クラス間の関係について前記類似／関連用語を参照して類似クラスリストを生成するとともに、前記頻出検索キーワード集合に含まれる全てのプロパティについて前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成部と、
前記類似クラスリストおよび前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成部と、
前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新部と、
を備えることを特徴とする辞書更新装置。
【請求項２】
メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶部と、
前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶部と、
前記辞書記憶部に記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定部と、
前記検索キーワードに基づいて前記辞書記憶部に記憶されている前記辞書を検索する検索実行部と、
前記類似／関連用語記憶部に記憶されている前記類似／関連用語を参照して、前記検索キーワードと対応する類似用語と関連用語とを検出して提示する用語検出提示部と、
提示した類似用語または関連用語が選択された場合、選択されたキーワードの条件で前記辞書の再検索を実行する選択用語再検索部と、
選択された類似用語または関連用語と前記検索キーワードとを対応付けて利用回数と共にアクセス履歴として記憶するアクセス履歴記憶部と、
前記アクセス履歴記憶部に記憶された前記類似用語および前記関連用語の内、所定の閾値よりも大きな前記利用回数を持つ前記検索キーワードに対応付けられた前記類似用語の集合および前記関連用語の集合を頻出用語集合として検出する頻出用語集合検出部と、
前記検索キーワードおよび前記頻出用語集合の各用語との関係を生成し、生成された前記各用語の関係について前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成部と、
前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成部と、
前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新部と、
を備えることを特徴とする辞書更新装置。
【請求項３】
メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶部と、
前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶部と、
前記辞書記憶部に記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定部と、
設定された前記検索キーワードの履歴を記憶する検索履歴記憶部と、
前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用するクラスおよびプロパティである頻出検索キーワード集合を検出する頻出検索キーワード集合検出部と、
前記検索キーワードに基づいて前記辞書記憶部に記憶されている前記辞書を検索する検索実行部と、
前記類似／関連用語記憶部に記憶されている前記類似／関連用語を参照して、前記検索キーワードと対応する類似用語と関連用語とを検出して提示する用語検出提示部と、
提示した類似用語または関連用語が選択された場合、選択されたキーワードの条件で前記辞書の再検索を実行する選択用語再検索部と、
選択された類似用語または関連用語と前記検索キーワードとを対応付けて利用回数と共にアクセス履歴として記憶するアクセス履歴記憶部と、
前記アクセス履歴記憶部に記憶された前記類似用語および前記関連用語の内、所定の閾値よりも大きな前記利用回数を持つ前記検索キーワードに対応付けられた前記類似用語の集合および前記関連用語の集合を頻出用語集合として検出する頻出用語集合検出部と、
前記頻出検索キーワード集合と前記頻出用語集合とから両集合にある同一クラスおよび同一プロパティを検出し、検出された前記同一クラスについて前記類似／関連用語を参照して類似クラスリストを生成するとともに、前記同一プロパティについて前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成部と、
前記類似クラスリストおよび前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成部と、
前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新部と、
を備えることを特徴とする辞書更新装置。
【請求項４】
前記選択用語再検索部における再検索の結果を用いて、類似度または関連度の評価を行う用語評価部と、
前記用語評価部における評価結果を集計して、前記アクセス履歴記憶部に記憶する評価集計部と、
を備え、
前記改善提案作成部は、作成した前記改善提案に対して同じ前記検索キーワードおよび前記頻出用語集合の各用語を持つ前記用語評価部における評価結果を追加して、既存の前記辞書への改善提案として提出する、
ことを特徴とする請求項２または３記載の辞書更新装置。
【請求項５】
前記アクセス履歴記憶部に記憶された前記用語評価部における評価結果を用いて、入力または選択された前記検索キーワードとの類似度及び関連度を再計算し、対応する前記類似／関連用語記憶部に記憶されている前記類似／関連用語を更新する対応用語更新部を更に備える、
ことを特徴とする請求項４記載の辞書更新装置。
【請求項６】
前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素は、前記辞書を構成するクラスおよびプロパティの欠損、前記辞書を構成するクラスおよびプロパティの異常、前記辞書を構成するクラスおよびプロパティの非統一性、前記辞書を構成するクラスおよびプロパティの非正規性のいずれかである、
ことを特徴とする請求項１ないし５のいずれか一記載の辞書更新装置。
【請求項７】
前記改善提案作成部が作成する改善提案は、クラスを追加するクラス追加、クラスまたはプロパティに対して別名を追加する別名追加、異なる辞書間で類似するクラスまたはプロパティの定義を統一する定義統一、プロパティを追加するプロパティ追加、余分なクラスまたはプロパティを削除する定義削除、クラス間の関係を変更する定義変更のいずれかである、
ことを特徴とする請求項１ないし５のいずれか一記載の辞書更新装置。
【請求項８】
メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶部と、
前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶部と、
前記辞書記憶部に記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定部と、
設定された前記検索キーワードの履歴を記憶する検索履歴記憶部と、
前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用する頻出検索キーワード集合を検出する頻出検索キーワード集合検出部と、
前記頻出検索キーワード集合に含まれる全てのプロパティに付帯する用語リストを生成するリスト生成部と、
前記プロパティに付帯する用語リストを用いて、前記プロパティに付帯する用語の品質を劣化させる要素についての改善提案を作成する改善提案作成部と、
前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新部と、
を備えることを特徴とする辞書更新装置。
【請求項９】
前記プロパティに付帯する用語の品質を劣化させる要素は、前記プロパティに付帯する用語の欠損、前記プロパティに付帯する用語の異常、前記プロパティに付帯する用語の非統一性、前記プロパティに付帯する用語の非正規性のいずれかである、
ことを特徴とする請求項８記載の辞書更新装置。
【請求項１０】
前記改善提案作成部が作成する改善提案は、データタイプ、単位、ＥＮＵＭの列挙子のいずれかである、
ことを特徴とする請求項８記載の辞書更新装置。
【請求項１１】
メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶機能と、
前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶機能と、
記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定機能と、
設定された前記検索キーワードの履歴を記憶する検索履歴記憶機能と、
前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用するクラスおよびプロパティである頻出検索キーワード集合を検出する頻出検索キーワード集合検出機能と、
前記頻出検索キーワード集合に含まれる全てのクラス間の関係を生成し、生成された前記クラス間の関係について前記類似／関連用語を参照して類似クラスリストを生成するとともに、前記頻出検索キーワード集合に含まれる全てのプロパティについて前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成機能と、
前記類似クラスリストおよび前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成機能と、
前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新機能と、
をコンピュータに実行させることを特徴とするプログラム。
【請求項１２】
メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶機能と、
前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶機能と、
記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定機能と、
記憶されている前記辞書を前記検索キーワードに基づいて検索する検索実行機能と、
記憶されている前記類似／関連用語を参照して、前記検索キーワードと対応する類似用語と関連用語とを検出して提示する用語検出提示機能と、
提示した類似用語または関連用語が選択された場合、選択されたキーワードの条件で前記辞書の再検索を実行する選択用語再検索機能と、
選択された類似用語または関連用語と前記検索キーワードとを対応付けて利用回数と共にアクセス履歴として記憶するアクセス履歴記憶機能と、
前記アクセス履歴記憶機能に記憶された前記類似用語および前記関連用語の内、所定の閾値よりも大きな前記利用回数を持つ前記検索キーワードに対応付けられた前記類似用語の集合および前記関連用語の集合を頻出用語集合として検出する頻出用語集合検出機能と、
前記検索キーワードおよび前記頻出用語集合の各用語との関係を生成し、生成された前記各用語の関係について前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成機能と、
前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成機能と、
前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新機能と、
をコンピュータに実行させることを特徴とするプログラム。
【請求項１３】
メタデータの意味構造を表すクラスおよびプロパティを規定する辞書である辞書を複数記憶する辞書記憶機能と、
前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶機能と、
記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定機能と、
設定された前記検索キーワードの履歴を記憶する検索履歴記憶機能と、
前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用するクラスおよびプロパティである頻出検索キーワード集合を検出する頻出検索キーワード集合検出機能と、
記憶されている前記辞書を前記検索キーワードに基づいて検索する検索実行機能と、
記憶されている前記類似／関連用語を参照して、前記検索キーワードと対応する類似用語と関連用語とを検出して提示する用語検出提示機能と、
提示した類似用語または関連用語が選択された場合、選択されたキーワードの条件で前記辞書の再検索を実行する選択用語再検索機能と、
選択された類似用語または関連用語と前記検索キーワードとを対応付けて利用回数と共にアクセス履歴として記憶するアクセス履歴記憶機能と、
前記アクセス履歴記憶機能に記憶された前記類似用語および前記関連用語の内、所定の閾値よりも大きな前記利用回数を持つ前記検索キーワードに対応付けられた前記類似用語の集合および前記関連用語の集合を頻出用語集合として検出する頻出用語集合検出機能と、
前記頻出検索キーワード集合と前記頻出用語集合とから両集合にある同一クラスおよび同一プロパティを検出し、検出された前記同一クラスについて前記類似／関連用語を参照して類似クラスリストを生成するとともに、前記同一プロパティについて前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成機能と、
前記類似クラスリストおよび前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成機能と、
前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新機能と、
をコンピュータに実行させることを特徴とするプログラム。
【請求項１４】
メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶機能と、
前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶機能と、
記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定機能と、
設定された前記検索キーワードの履歴を記憶する検索履歴記憶機能と、
前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用する頻出検索キーワード集合を検出する頻出検索キーワード集合検出機能と、
前記頻出検索キーワード集合に含まれる全てのプロパティに付帯する用語リストを生成するリスト生成機能と、
前記プロパティに付帯する用語リストを用いて、前記プロパティに付帯する用語の品質を劣化させる要素についての改善提案を作成する改善提案作成機能と、
前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新機能と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、辞書更新装置およびプログラムに関する。
【背景技術】
【０００２】
従来においては、検索の効果を高めるために、検索フィードバックの技術が開示されている。より具体的には、検索時に利用した検索キーワードをクラスターに分類して保存しておき、クラスター内の検索キーワードを利用頻度の高い順にユーザに推薦する、というものである（例えば、特許文献１参照）。このような技術によれば、ユーザの利用状況にしたがって検索キーワードのクラスターを更新するので、ユーザが利用しやすい検索キーワードを推奨することができる、という効果がある。
【０００３】
一方、近年においては、検索対象となるオントロジー（メタデータの意味構造を規定する辞書）の構成項目の品質を改善するために、専門家の経験や知識をフィードバックすることによって、オントロジーの所定の定義に対して追加提案をする技術が開示されている。より具体的には、インターネットの口コミ情報など参考にして、ユーザは特定のリソースからそれらの情報を入力し、その入力された情報を既存のオントロジーの対応する項目に追加提案として提出してオントロジーの拡充を実現する、というものである（例えば、非特許文献１参照）。
【０００４】
【特許文献１】特開２００４−０７８６１８号公報
【非特許文献１】「利用者からのフィードバック情報を用いたオントロジー拡充技術」（2006年9月15日：人工知能学会研究会資料SIG-SWO-A303-04）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところが、非特許文献１に開示されているオントロジー拡充技術によれば、インターネットの口コミ情報などのように人手を介して生成されるフィードバック情報に基づいて追加提案を行うので、既存のオントロジー（辞書）を構成するクラスやプロパティ項目の定義欠損や、異常値の発見は非常に困難なものとなっている。また、利用者の嗜好や考え方などについては千差万別であり、フィードバック情報を生成する際に入力される情報について統一を図るのは非常に困難であることから、オントロジー（辞書）間のデータの統一性（同じ定義を利用）、正規性（同じフォーマットを利用）を改善する必要がある。
【０００６】
本発明は、上記に鑑みてなされたものであって、既存の辞書構成項目であるクラス及びプロパティの品質を劣化させる要素（例えば、項目の欠損、項目の異常、項目の非統一性、項目の非正規性など）についての改善提案を作成することにより、辞書の品質向上を支援することができる辞書更新装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明の辞書更新装置は、メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶部と、前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶部と、前記辞書記憶部に記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定部と、設定された前記検索キーワードの履歴を記憶する検索履歴記憶部と、前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用するクラスおよびプロパティである頻出検索キーワード集合を検出する頻出検索キーワード集合検出部と、前記頻出検索キーワード集合に含まれる全てのクラス間の関係を生成し、生成された前記クラス間の関係について前記類似／関連用語を参照して類似クラスリストを生成するとともに、前記頻出検索キーワード集合に含まれる全てのプロパティについて前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成部と、前記類似クラスリストおよび前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成部と、前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新部と、を備えることを特徴とする。
【０００８】
また、本発明の辞書更新装置は、メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶部と、前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶部と、前記辞書記憶部に記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定部と、前記検索キーワードに基づいて前記辞書記憶部に記憶されている前記辞書を検索する検索実行部と、前記類似／関連用語記憶部に記憶されている前記類似／関連用語を参照して、前記検索キーワードと対応する類似用語と関連用語とを検出して提示する用語検出提示部と、提示した類似用語または関連用語が選択された場合、選択されたキーワードの条件で前記辞書の再検索を実行する選択用語再検索部と、選択された類似用語または関連用語と前記検索キーワードとを対応付けて利用回数と共にアクセス履歴として記憶するアクセス履歴記憶部と、前記アクセス履歴記憶部に記憶された前記類似用語および前記関連用語の内、所定の閾値よりも大きな前記利用回数を持つ前記検索キーワードに対応付けられた前記類似用語の集合および前記関連用語の集合を頻出用語集合として検出する頻出用語集合検出部と、前記検索キーワードおよび前記頻出用語集合の各用語との関係を生成し、生成された前記各用語の関係について前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成部と、前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成部と、前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新部と、を備えることを特徴とする。
【０００９】
また、本発明の辞書更新装置は、メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶部と、前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶部と、前記辞書記憶部に記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定部と、設定された前記検索キーワードの履歴を記憶する検索履歴記憶部と、前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用するクラスおよびプロパティである頻出検索キーワード集合を検出する頻出検索キーワード集合検出部と、前記検索キーワードに基づいて前記辞書記憶部に記憶されている前記辞書を検索する検索実行部と、前記類似／関連用語記憶部に記憶されている前記類似／関連用語を参照して、前記検索キーワードと対応する類似用語と関連用語とを検出して提示する用語検出提示部と、提示した類似用語または関連用語が選択された場合、選択されたキーワードの条件で前記辞書の再検索を実行する選択用語再検索部と、選択された類似用語または関連用語と前記検索キーワードとを対応付けて利用回数と共にアクセス履歴として記憶するアクセス履歴記憶部と、前記アクセス履歴記憶部に記憶された前記類似用語および前記関連用語の内、所定の閾値よりも大きな前記利用回数を持つ前記検索キーワードに対応付けられた前記類似用語の集合および前記関連用語の集合を頻出用語集合として検出する頻出用語集合検出部と、前記頻出検索キーワード集合と前記頻出用語集合とから両集合にある同一クラスおよび同一プロパティを検出し、検出された前記同一クラスについて前記類似／関連用語を参照して類似クラスリストを生成するとともに、前記同一プロパティについて前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成部と、前記類似クラスリストおよび前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成部と、前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新部と、を備えることを特徴とする。
【００１０】
また、本発明の辞書更新装置は、メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶部と、前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶部と、前記辞書記憶部に記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定部と、設定された前記検索キーワードの履歴を記憶する検索履歴記憶部と、前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用する頻出検索キーワード集合を検出する頻出検索キーワード集合検出部と、前記頻出検索キーワード集合に含まれる全てのプロパティに付帯する用語リストを生成するリスト生成部と、前記プロパティに付帯する用語リストを用いて、前記プロパティに付帯する用語の品質を劣化させる要素についての改善提案を作成する改善提案作成部と、前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新部と、を備えることを特徴とする。
【００１１】
また、本発明のプログラムは、メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶機能と、前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶機能と、記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定機能と、設定された前記検索キーワードの履歴を記憶する検索履歴記憶機能と、前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用するクラスおよびプロパティである頻出検索キーワード集合を検出する頻出検索キーワード集合検出機能と、前記頻出検索キーワード集合に含まれる全てのクラス間の関係を生成し、生成された前記クラス間の関係について前記類似／関連用語を参照して類似クラスリストを生成するとともに、前記頻出検索キーワード集合に含まれる全てのプロパティについて前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成機能と、前記類似クラスリストおよび前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成機能と、前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新機能と、をコンピュータに実行させることを特徴とする。
【００１２】
また、本発明のプログラムは、メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶機能と、前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶機能と、記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定機能と、記憶されている前記辞書を前記検索キーワードに基づいて検索する検索実行機能と、記憶されている前記類似／関連用語を参照して、前記検索キーワードと対応する類似用語と関連用語とを検出して提示する用語検出提示機能と、提示した類似用語または関連用語が選択された場合、選択されたキーワードの条件で前記辞書の再検索を実行する選択用語再検索機能と、選択された類似用語または関連用語と前記検索キーワードとを対応付けて利用回数と共にアクセス履歴として記憶するアクセス履歴記憶機能と、前記アクセス履歴記憶機能に記憶された前記類似用語および前記関連用語の内、所定の閾値よりも大きな前記利用回数を持つ前記検索キーワードに対応付けられた前記類似用語の集合および前記関連用語の集合を頻出用語集合として検出する頻出用語集合検出機能と、前記検索キーワードおよび前記頻出用語集合の各用語との関係を生成し、生成された前記各用語の関係について前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成機能と、前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成機能と、前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新機能と、をコンピュータに実行させることを特徴とする。
【００１３】
また、本発明のプログラムは、メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶機能と、前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶機能と、記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定機能と、設定された前記検索キーワードの履歴を記憶する検索履歴記憶機能と、前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用するクラスおよびプロパティである頻出検索キーワード集合を検出する頻出検索キーワード集合検出機能と、記憶されている前記辞書を前記検索キーワードに基づいて検索する検索実行機能と、記憶されている前記類似／関連用語を参照して、前記検索キーワードと対応する類似用語と関連用語とを検出して提示する用語検出提示機能と、提示した類似用語または関連用語が選択された場合、選択されたキーワードの条件で前記辞書の再検索を実行する選択用語再検索機能と、選択された類似用語または関連用語と前記検索キーワードとを対応付けて利用回数と共にアクセス履歴として記憶するアクセス履歴記憶機能と、前記アクセス履歴記憶機能に記憶された前記類似用語および前記関連用語の内、所定の閾値よりも大きな前記利用回数を持つ前記検索キーワードに対応付けられた前記類似用語の集合および前記関連用語の集合を頻出用語集合として検出する頻出用語集合検出機能と、前記頻出検索キーワード集合と前記頻出用語集合とから両集合にある同一クラスおよび同一プロパティを検出し、検出された前記同一クラスについて前記類似／関連用語を参照して類似クラスリストを生成するとともに、前記同一プロパティについて前記類似／関連用語を参照して類似プロパティリストを生成するリスト生成機能と、前記類似クラスリストおよび前記類似プロパティリストを用いて、前記辞書を構成するクラスおよびプロパティの品質を劣化させる要素についての改善提案を作成する改善提案作成機能と、前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新機能と、をコンピュータに実行させることを特徴とする。
【００１４】
また、本発明のプログラムは、メタデータの意味構造を表すクラスおよびプロパティを規定する辞書を複数記憶する辞書記憶機能と、前記辞書で規定されるクラス／プロパティについて類似または関連する類似／関連用語を記憶する類似／関連用語記憶機能と、記憶されている前記辞書を検索するための検索キーワードを設定する検索キー設定機能と、設定された前記検索キーワードの履歴を記憶する検索履歴記憶機能と、前記検索キーワードの履歴から、ユーザが検索時に頻繁に利用する頻出検索キーワード集合を検出する頻出検索キーワード集合検出機能と、前記頻出検索キーワード集合に含まれる全てのプロパティに付帯する用語リストを生成するリスト生成機能と、前記プロパティに付帯する用語リストを用いて、前記プロパティに付帯する用語の品質を劣化させる要素についての改善提案を作成する改善提案作成機能と、前記改善提案に従って既存の前記辞書の対応する部分を更新する辞書更新機能と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、検索キーワードの利用頻度と各検索キーワード間の関係、すなわち検索キーワードの履歴を用いて、既存の辞書構成項目であるクラス及びプロパティの品質を劣化させる要素（例えば、項目の欠損、項目の異常、項目の非統一性、項目の非正規性など）についての改善提案を作成することにより、辞書の品質向上を支援することができる、という効果を奏する。
【００１６】
また、本発明によれば、ユーザからの検索状況の履歴の分析、すなわち類似／関連用語に対するアクセス履歴を用いて、既存の辞書構成項目であるクラス及びプロパティの品質を劣化させる要素（例えば、項目の欠損、項目の異常、項目の非統一性、項目の非正規性など）についての改善提案を作成することにより、辞書の品質向上を支援することができる、という効果を奏する。
【発明を実施するための最良の形態】
【００１７】
以下に添付図面を参照して、この発明にかかる辞書更新装置およびプログラムの最良な実施の形態を詳細に説明する。
【００１８】
［第１の実施の形態］
本発明の第１の実施の形態を図１ないし図１４に基づいて説明する。
【００１９】
［１．システムの構成］
図１は、本発明の第１の実施の形態にかかるデータ検索表示システムのシステム構築例を示す模式図である。データ検索表示システムは、図１に示すように、サーバーコンピュータ（以下、サーバーという）１００にＬＡＮ（Local Area Network）等のネットワーク２００を介してクライアントコンピュータ（以下、クライアントという）３００が複数台接続されたサーバークライアントシステムを想定する。サーバー１００およびクライアント３００は、一般的なパーソナルコンピュータ等である。
【００２０】
図２は、サーバー１００およびクライアント３００のモジュール構成図である。サーバー１００およびクライアント３００は、情報処理を行うＣＰＵ（Central Processing Unit）１０１、ＢＩＯＳなどを記憶した読出し専用メモリであるＲＯＭ（Read Only Memory）１０２、各種データを書換え可能に記憶するＲＡＭ（Random Access Memory）１０３、各種データベースとして機能するとともに各種のプログラムを格納するＨＤＤ（Hard Disk Drive）１０４、記憶媒体１１０を用いて情報を保管したり外部に情報を配布したり外部から情報を入手するためのＣＤ−ＲＯＭドライブ等の媒体駆動装置１０５、ネットワーク２００を介して外部の他のコンピュータと通信により情報を伝達するための通信制御装置１０６、処理経過や結果等を操作者に表示するＣＲＴ（Cathode Ray Tube）やＬＣＤ（Liquid Crystal Display）等の表示部１０７、並びに操作者がＣＰＵ１０１に命令や情報等を入力するためのキーボードやマウス等のポインティングデバイスである入力部１０８等から構成されており、これらの各部間で送受信されるデータをバスコントローラ１０９が調停して動作する。
【００２１】
このようなサーバー１００およびクライアント３００では、オペレータが電源を投入するとＣＰＵ１０１がＲＯＭ１０２内のローダーというプログラムを起動させ、ＨＤＤ１０４よりＯＳ（Operating System）というコンピュータのハードウェアとソフトウェアとを管理するプログラムをＲＡＭ１０３に読み込み、このＯＳを起動させる。このようなＯＳは、オペレータの操作に応じてプログラムを起動したり、情報を読み込んだり、保存を行ったりする。ＯＳのうち代表的なものとしては、Ｗｉｎｄｏｗｓ（登録商標）等が知られている。これらのＯＳ上で走る動作プログラムをアプリケーションプログラムと呼んでいる。なお、アプリケーションプログラムは、所定のＯＳ上で動作するものに限らず、後述の各種処理の一部の実行をＯＳに肩代わりさせるものであってもよいし、所定のアプリケーションソフトやＯＳなどを構成する一群のプログラムファイルの一部として含まれているものであってもよい。
【００２２】
ここで、サーバー１００は、アプリケーションプログラムとして、辞書更新プログラムをＨＤＤ１０４に記憶している。この意味で、ＨＤＤ１０４は、辞書更新プログラムを記憶する記憶媒体として機能する。
【００２３】
一方、クライアント３００は、アプリケーションプログラムとして、ユーザ管理処理プログラムをＨＤＤ１０４に記憶している。この意味で、ＨＤＤ１０４は、ユーザ管理処理プログラムを記憶する記憶媒体として機能する。
【００２４】
また、一般的には、サーバー１００およびクライアント３００のＨＤＤ１０４にインストールされるアプリケーションプログラムは、ＣＤ−ＲＯＭやＤＶＤなどの各種の光ディスク、各種光磁気ディスク、フレキシブルディスクなどの各種磁気ディスク、半導体メモリ等の各種方式のメディア等の記憶媒体１１０に記録され、この記憶媒体１１０に記録された動作プログラムがＨＤＤ１０４にインストールされる。このため、ＣＤ−ＲＯＭ等の光情報記録メディアやＦＤ等の磁気メディア等の可搬性を有する記憶媒体１１０も、アプリケーションプログラムを記憶する記憶媒体となり得る。さらには、アプリケーションプログラムは、例えば通信制御装置１０６を介して外部から取り込まれ、ＨＤＤ１０４にインストールされても良い。
【００２５】
サーバー１００は、ＯＳ上で動作する辞書更新プログラムが起動すると、この辞書更新プログラムに従い、ＣＰＵ１０１が各種の演算処理を実行して各部を集中的に制御する。一方、クライアント３００は、ＯＳ上で動作するユーザ管理処理プログラムが起動すると、このユーザ管理処理プログラムに従い、ＣＰＵ１０１が各種の演算処理を実行して各部を集中的に制御する。サーバー１００およびクライアント３００のＣＰＵ１０１が実行する各種の演算処理のうち、本実施の形態の特長的な処理について以下に説明する。
【００２６】
クライアント３００は、ユーザ管理処理プログラムに従うことによりユーザ管理装置として機能するものであって、サーバー１００から受信したデータを、ＧＵＩ（Graphic User Interface）を介して表示部１０７に出力し、表示部１０７に表示された各画面上でオペレータが入力部１０８を介して行った作業や設定内容に基づくデータやコマンドを、ＧＵＩを介して受け取り、サーバー１００へ送信する。なお、ユーザ管理処理プログラムは、操作者が有している権限に応じて各種機能を発揮する。詳細は後述するが、本実施の形態におけるクライアント３００は、ユーザ管理処理プログラムに従うことにより、サーバー１００にアクセス可能になる。
【００２７】
一方、サーバー１００は、図３に示すように、辞書更新プログラムに従うことにより辞書更新装置として機能するものであって、辞書記憶部である登録オントロジーＤＢ１と、類似／関連用語記憶部である用語集２と、シソーラス辞書３と、検索キー設定部４と、検索履歴記憶部５と、検索履歴ＤＢ６と、用語集生成部７と、頻出検索キーワード集合検出部８と、リスト生成部９と、オントロジー改善提案部１０と、辞書更新部であるオントロジー更新部１１と、検索実行部１２と、用語検出提示部１３と、検索結果表示部１４と、選択用語再検索部１５と、登録部２４と、を備える。このような構成により、サーバー１００は、検索キーワードの履歴を用いて既存のオントロジーへの改善提案を行う。以下において、各部について説明する。
【００２８】
登録オントロジーＤＢ１は、既存の各ドメインの複数のオントロジーを、識別子を付けて登録部２４を介して登録したものである。登録オントロジーＤＢ１に登録されるオントロジー（メタデータの意味構造を規定する辞書）は、図４に示すように、階層構造のクラス集合と、各クラスが定義するプロパティから構成されている。各クラスは、アトリビュートのセット（例：名前、親クラス等）により定義される。プロパティも、アトリビュートのセット（例：名前、データタイプ、単位等）により定義される。各オントロジーが利用するアトリビュートセットは、オントロジーを生成する際に決定される。本実施の形態においては、クラス間の関係と、クラスとプロパティの関係を定義しているオントロジーを対象とする。
【００２９】
このようなオントロジーは、様々の形式を利用して表現できる。すなわち、オントロジーの表現形式には制限がない。図５は、図４の一部をＸＭＬ（Extensible Markup Language）フォーマットを利用して表した例である。クラス間の関係は、アトリビュート“superclass”を利用して表現する。プロパティは、アトリビュート“definition＿class”を用いて、所在するクラスを表している。
【００３０】
用語集２は、登録オントロジーＤＢ１とシソーラス辞書３とを用いて用語集生成部７により生成される。シソーラス辞書３は、同義語辞書とは異なり、狭義や関連といった様々な観点で分類される辞書である（例えば、WorｄNetなど）。用語集２としては、図３に示すように、類似用語ＤＢ２ａに格納される類似用語集と関連用語ＤＢ２ｂに格納される関連用語集の２タイプがある。
【００３１】
図６は、類似用語ＤＢ２ａに格納される類似用語集のデータ構成の一例を示す模式図である。類似用語ＤＢ２ａに格納される類似用語集は、後述する３つの情報源により作成されている。なお、図６に示すコラム「現在類似度」は、コラム「ｋｅｙ」とコラム「類似用語」に表示する２つの用語の類似程度を示す。本実施の形態では、０％〜１００％を設定する。以下、類似用語ＤＢ２ａに格納される類似用語集を作成する３つの情報源について説明する。
【００３２】
（１）オントロジー定義の別名を利用する方法
オントロジーでは、クラスまたはプロパティ項目を定義する際に、利用する名称と別に、別名を定義する事がある。図４に示すオントロジーの構成例においては、クラス名と別名の２つのコラムを設けてクラスを定義している。すなわち、別名等を定義しているオントロジーの項目名（クラス名）及び対応する別名を利用することにより、類似用語集を作成することができる。なお、項目名（クラス名）とその別名は、１００％の類似度とする。
【００３３】
（２）オントロジー間の類似項目検出し、定義名を利用する方法
各項目を定義するアトリビュート内容の比較を行なうことにより、オントロジー間の類似する項目を検出する。より詳細には、アトリビュートの近似度によって、各項目間の類似度を計算する。すなわち、検出した２つの類似項目を利用することにより、類似用語集を作成することができる。
【００３４】
（３）シソーラス辞書３の類似項目を利用する
項目名称に対して、シソーラス辞書３から類似する用語を検出する。検出した類似用語が、類似用語ＤＢ２ａに存在しない場合は、類似用語として追加する。なお、シソーラス辞書３からの用語は、デフォルトに１００％の類似度とする。
【００３５】
図７は、関連用語ＤＢ２ｂに格納される関連用語集のデータ構成の一例を示す模式図である。関連用語ＤＢ２ｂに格納される関連用語集は、オントロジーに定義したクラス用語だけに定義する。関連用語ＤＢ２ｂに格納される関連用語集は、以下に示す２つの方法を用いて生成する。
【００３６】
（１）登録オントロジーＤＢ１を利用する
クラスを定義するオントロジー構造上において親子関係クラス、兄弟関係クラスが存在する場合は、親子関係クラス、兄弟関係クラスがそれぞれ利用するクラス名称は、関連用語となる。また、親子関係クラス、兄弟関係クラスがそれぞれ利用するプロパティ名称も、親子関係クラス、兄弟関係クラスがそれぞれ利用するクラス名称と関連用語となる。図４に示すオントロジーの構成例においては、用語Ｃ１との関連用語は、図８に示すように、親子クラスの名称用語：Ｃ０，Ｃ４，Ｃ５と、兄弟クラスの名称用語：Ｃ２，Ｃ３と、Ｃ１が利用するプロパティＰ３，Ｐ４，Ｐ５の名称である。なお、関連用語は、クラスの親子関係と兄弟関係のクラスに限るものではなく、クラスの上下２階層及びそれ以上の階層のクラスとプロパティの名称を利用するものであっても良い。関連度は、０〜１００％の設定があり、該クラスの親子クラス及び該クラスが利用したプロパティの場合は、デフォルトの関連度９０％に設定し、兄弟クラスの場合は８０％に設定している。関連度は、ユーザの利用状況により更新される。また、同じ用語を持つクラスが多数オントロジーに定義されている場合には、各オントロジーの情報を関連用語ＤＢ２ｂに格納される関連用語集に登録する。
【００３７】
（２）シソーラス辞書３を利用する
シソーラス辞書３を利用して、関連用語を関連用語ＤＢ２ｂに登録する。より詳細には、クラス項目用語を用いて、シソーラス辞書３から関連する用語を検索して獲得する。なお、検索結果の関連用語が該クラスの関連用語に登録されていない場合は、関連度１００％にし、関連用語ＤＢ２ｂに格納される関連用語集への登録を行う。
【００３８】
次に、検索キーワードの履歴を用いて既存のオントロジーに対する改善提案を行う手順を示し、この手順に従って、上述した部分以外のサーバー１００を構成する各部について説明する。
【００３９】
図９は、検索キーワードの履歴を用いて既存のオントロジーに対する改善提案を作成する手順を示すフローチャートである。図９に示すように、検索キーワードの履歴を用いて既存のオントロジーに対する改善提案を作成するまでに、４つのステップがある。
ステップＳ１：検索キーワードを検索履歴上に保存する。
ステップＳ２：検索履歴から、頻出する検索キーワード集合を検出する。
ステップＳ３：頻出キーワード集合を用いて、検索キーワード間の関係を獲得する。
ステップＳ４：獲得した検索キーワードを用いて、改善提案を作成する。
以下、各ステップの詳細について説明する。
【００４０】
（ステップＳ１：検索キーワードを検索履歴上に保存する）
検索キー設定部４は、図１０に示すような検索設定画面３０をクライアント３００に表示させる。すなわち、ユーザは、登録されたオントロジーへのアクセスを、検索キー設定部４による検索設定画面３０を介して行うことになる。
【００４１】
なお、サーバー１００にアクセスするユーザは、オントロジーへのアクセス目的によって、以下の２つのユーザ分類に分けることができる。
（ア）オントロジーのインスタンスに関心あるユーザとメタデータに関心あるユーザに分類する。すなわち、「メタデータ関係者」及び「インスタンス関係者」に分類する。
（イ）オントロジーの分野毎にユーザの分類を行う。例えば：電気関連、機械関連、化学関連。
【００４２】
オントロジーのメタデータ・インスタンスへの関心によるユーザ分類（ア）と、分野毎のユーザ分類（イ）は、同時に行うことができる。ユーザは、自分が所属（ア）と（イ）の分類を選択して登録する。さらに、ユーザが細かい分類をし、クライアント３００により管理される事も可能である。
【００４３】
図１０に示す検索設定画面３０では、クラス、プロパティ、値（プロパティの値）、単位（プロパティの単位）の、４つの領域を指定する。ユーザは、該当する領域から検索条件の設定を行う。各検索条件は、“ＡＮＤ”又は“ＯＲ”のブール関係を持つ。ユーザは、“ＡＮＤ”又は“ＯＲ”のどちら一つの関係を選択して設定する。
【００４４】
検索設定画面３０における検索条件（例えば、クラス、プロパティ）を介して検索キー設定部４に設定した検索キーワードは、検索履歴記憶部５により図１１に示すような検索履歴ＤＢ６の「検索キーワード履歴」に記憶される。
【００４５】
検索設定画面３０における検索条件のクラス領域から入力された全てのクラス内容は、図１１に示す検索履歴ＤＢ６の「検索キーワード履歴」における検索クラス欄に記憶される。また、検索設定画面３０における検索条件のプロパティ領域から入力された全てのプロパティは、図１１に示す検索履歴ＤＢ６の「検索キーワード履歴」における「検索プロパティ」欄に記憶される。図１１において破線で示す６ａは、図１０に示す検索設定画面３０で設定した検索条件（プロパティ）の例である。また、各キーワード間のブール関係とは関わらずに、全てのクラス及びプロパティキーワードを検索条件として利用した回数が、図１１に示す検索履歴ＤＢ６の「検索キーワード履歴」における「利用回数」欄に記憶される。図１１に示す検索履歴ＤＢ６の「検索キーワード履歴」における「記録開始時間」は、該検索キーワードセットを記録開始した時間を示す。
【００４６】
なお、検索履歴ＤＢ６の「検索キーワード履歴」の態様は、図１１に示すものに限るものではない。例えば、設定されたクラスキーワードに対してプロパティキーワードを１つずつ対応付けて記憶するようにしても良い。
【００４７】
（ステップＳ２：頻出検索キーワード集合を検出する）
頻出検索キーワード集合検出部８は、頻出検索キーワード集合を検出する。ここで、図１１に示す検索履歴ＤＢ６を用いて、ユーザが検索時に頻繁に利用するキーワード（頻出キーワード）とその関連頻出キーワード集合を検出する方法を説明する。検索キーワードには、クラスとプロパティキーワードが存在する。そのため、頻出検索キーワード集合を検出するには、
（Ａ）頻出クラスキーワードを検出する。
（Ｂ）クラスキーワードに対して、頻出プロパティキーワードを検出する。
という手順を経ることになる。
【００４８】
（Ａ：頻出クラスキーワードの検出手順）
まず、頻出クラスキーワードを検出する手順を説明する。
【００４９】
（１）  クラスの検索キーワードに対して、夫々の利用される頻度（ｔｆ:term frequency）を計算する。各クラスの検索キーワードの利用頻度を用いて、設定された頻度閾値αより大きなキーワードを検出する。頻度閾値αは、集計した検索履歴の件数等によって、可変である。頻度が頻度閾値αより大きなキーワードは、頻出クラスキーワードリストＬ１に追加する。頻出クラスキーワードリストＬ１は、下記のように表すことができる。
Ｌ１＝｛ｋ１，ｋ２，ｋ３，ｋ４・・・｝
【００５０】
（２）  頻出クラスキーワードリストＬ１の各キーワードＫに対して、Ｋを含むキーワード個数が最大になる極大頻出集合まで検出する。以下において、例を提示して詳細に説明する。
例：Ｌ１のｋ１キーワードに対する極大頻出集合の検出
（ア）２つのキーワードを利用する場合の利用頻度（ｔｆ２（ｋ１，Ｘ））を計算する。ステップ（１）と同様に、設定された頻度閾値βより大きい頻度を持つ集合が存在する場合に、頻出集合を検出する。なお、頻度閾値βは頻度閾値αより小さく設定する。例えば、
Ｌ２（ｋ１）＝｛（ｋ１，ｈ１），（ｋ１，ｈ２）｝
である。
（イ）頻出クラスキーワードリストＬ２の各要素Ｋ２に対して、各Ｋ２を含む、３つのキーワードを利用する場合の利用頻度Ｔｆ３（）を計算し、上記と同じく、設定された頻出閾値γにより、頻出クラスキーワードリストＬ３が存在する場合に、頻出集合を検出する。例えば、
Ｌ３（ｋ１）＝｛（ｋ１，ｈ１，ｊ１１），（ｋ１，ｈ１，ｊ１２），（ｋ２，ｈ２，ｊ２）｝
である。
（ウ）上記（２）、（３）と同じ方法を用いて、極大クラスキーワードリスト（キーワードの個数が最大の場合）Ｌｍまで算出する。例えば、
Ｌｍ＝Ｌ４（ｋ１）＝｛（ｋ１，ｈ１，ｊ１１，ｉ１），（ｋ１，ｈ１，ｊ１１，ｉ２）｝
である。
（エ）クラス検索キーワードｋ１の頻出クラスキーワード集合Ｌ（ｋ１）を検出する。
Ｌ（ｋ１）＝｛Ｌ１（ｋ１），Ｌ２（ｋ１），Ｌ３（ｋ１）・・・Ｌｍ（ｋ１）｝
【００５１】
（３）  ステップ（２）をループし、Ｌ１にある全てのキーワードに対して、頻出検索キーワード集合Ｌ（ｋ）を検出する。既に検出された頻出検索キーワード集合と全く同じキーワードを利用する場合は、計算せずに頻出検索キーワード集合が得られる。
【００５２】
上述したような方法により、図１１に示す検索履歴ＤＢ６の「検索キーワード履歴」に示す例では、以下のように頻出クラスキーワード集合を検出することができる。
【００５３】
（１）１つの検索キーワードの利用頻度を計算し、Ｌ１を獲得する。
ｔｆ（ＰＣ）＝１００＋３０＋４０＋２＝１７２
ｔｆ（サーバー）＝１０
ｔｆ（計算機）＝１０
ｔｆ（ＮｏｔｅＰＣ）＝１００＋２０＝１２０
ｔｆ（ｄｉｓｐｌａｙ）＝２
頻度閾値α＝１０
と設定すると、
Ｌ１＝｛ＰＣ、計算機、ＮｏｔｅＰＣ、サーバー｝
である。
【００５４】
（２）Ｌ１の“ＰＣ”キーワードに対して、頻出クラスキーワード集合Ｌ（ＰＣ）を獲得する。
（ア）
Ｔｆ２（ＰＣ，ＮｏｔｅＰＣ）＝１００
Ｔｆ２（ＰＣ，サーバー）＝１０
Ｔｆ２（ＰＣ，計算機）＝１０
Ｔｆ２（ＰＣ，ＤＩＳＰＬＡＹ）＝２
頻度閾値β＝５
と設定すると、
Ｌ２（ＰＣ）＝｛（ＰＣ，ＮｏｔｅＰＣ），（ＰＣ，サーバー），（ＰＣ，計算機）｝；
である。
（イ）
Ｔｆ３（ＰＣ，ＮｏｔｅＰＣ，計算機）＝１０
Ｌ３（ＰＣ）＝｛（ＰＣ，ＮｏｔｅＰＣ，計算機）｝
これは“ＰＣ”の極大頻出集合になる。
（ウ）
すなわち、ＰＣの頻出クラスキーワード集合は、
Ｌ（ＰＣ）＝｛Ｌ２（ＰＣ），Ｌ３（ＰＣ）｝
＝｛（ＰＣ，ＮｏｔｅＰＣ），（ＰＣ，サーバー），（ＰＣ，計算機），｛ＰＣ，ＮｏｔｅＰＣ，計算機｝｝
である。
【００５５】
（３）  ステップ（２）と同じ計算方法を用いる。
Ｌ（計算機）＝｛（ＰＣ，計算機），｛ＰＣ，ＮｏｔｅＰＣ，計算機｝｝；
この場合は、（ＰＣ、計算機）は、Ｌ（ＰＣ）に存在するので、そのまま利用できる。
Ｌ（ＮｏｔｅＰＣ）＝｛（ＰＣ，ＮｏｔｅＰＣ）｝
この場合は、（ＰＣ、ＮｏｔｅＰＣ）の集合はＬ（ＰＣ）に存在するので、そのまま利用できる。
Ｌ（サーバー）＝｛（ＰＣ，サーバー）｝
この場合は、（ＰＣ、サーバー）の集合はＬ（ＰＣ）に存在するので、そのまま利用できる。
【００５６】
（Ｂ：頻出プロパティキーワードの検出手順）
上記検出した各キーワードの頻出クラスキーワード集合Ｌ１＝｛ｋ１，ｋ２，ｋ３，ｋ４・・・｝を用いて、各キーワードｋに対応する頻出プロパティ集合を検出する。
【００５７】
検索キーワード履歴に基づいて、検索キーワードｋを利用した全てのクラス集合と対応するプロパティ集合の中の各プロパティキーワードを利用した頻度ｔｆ（ｐｒｏｐ）を計算する。頻度Ｔｆの高いプロパティは、該検索クラスＫの頻出プロパティとされる。図１１に示す検索履歴ＤＢ６の「検索キーワード履歴」を例にして、以下において詳述する。
【００５８】
上述したように検索された頻出クラスキーワードリストＬ１は、
Ｌ１＝｛ＰＣ、計算機、ＮｏｔｅＰＣ、サーバー｝
である。ここで、検索キーワード「ＰＣ」に対する頻出プロパティ検索キーワードを検出する方法を紹介する。
【００５９】
（１）  先ず、検索クラスコラムに「ＰＣ」を含む全ての検索プロパティを検出する。図１１に示す検索履歴ＤＢ６の例においては、符号６ａとして示す全てのプロパティの和である。すなわち、
｛メーカー，メモリ，ＨＤ，電圧，生産日，Manufacture，Producer，価格｝
である。
【００６０】
（２）  各プロパティキーワードの頻度を計算する。例えば、
ｔｆ（メーカー）＝１１２
ｔｆ（メモリ）＝１７０
ｔｆ（ＨＤ）＝１７０
ｔｆ（電圧）＝１６０
ｔｆ（生産日）＝１００
ｔｆ（Ｍａｎｕｆａｃｔｕｒｅ）＝２０
ｔｆ（Ｐｒｏｄｕｃｅｒ）＝４０
ｔｆ（価格）＝５０
となる。
【００６１】
（３）  上記頻度の高いプロパティのキーワードを、頻出プロパティ集合に追加する。頻出プロパティは、設定した閾値より高い頻度を持つとなる。閾値は、可変に設定できる。図１１に示す検索履歴ＤＢ６の例においては、閾値を“２０”とすると、上記全てのプロパティは頻出プロパティになる。すなわち、頻出プロパティ集合Ｐは、
Ｐ＝｛メーカー，メモリ，ＨＤ，電圧，生産日，Manufacture，Producer，価格｝
になる。
【００６２】
以上、上述した方法を用いることにより、頻出検索キーワード集合（頻出クラスキーワード集合および頻出プロパティ集合）を獲得することができる。
【００６３】
（ステップＳ３：検索キーワード関係分析）
ステップＳ３においては、リスト生成部９が、上記分析において検出した頻出クラスキーワード集合と頻出プロパティ集合とを用いて、検索キーワード間の関係を分析する。具体的には、頻出クラスキーワード集合の各クラス用語に対して、関係分析を行う。
【００６４】
まず、頻出クラスキーワード集合を用いてクラス間の関係を示す検索キーワード関係図を生成する。頻出クラスキーワード集合にある全てのクラス要素が、該クラスとは関係があると想定する。
【００６５】
ここで、上述した頻出クラスキーワードＬ（ＰＣ）を例に説明する。
Ｌ（ＰＣ）＝｛Ｌ２（ＰＣ），Ｌ３（ＰＣ）｝
＝｛（ＰＣ，ＮｏｔｅＰＣ），（ＰＣ，サーバー），（ＰＣ，計算機），｛ＰＣ，ＮｏｔｅＰＣ，計算機｝｝
【００６６】
図１２は、頻出クラスキーワードＬ（ＰＣ）の検索キーワード関係を示す模式図である。図１２中の符号４０が、頻出クラスキーワードＬ（ＰＣ）のクラス関係である。また、図１２中の符号４１に示す頻出プロパティ集合Ｐは、クラス「ＰＣ」のプロパティになる。すなわち、
Ｐ＝｛メーカー，メモリ，ＨＤ，電圧，生産日，Manufacture，Producer，価格｝
はクラス「ＰＣ」のプロパティである。
【００６７】
次に、図１２に示した検索キーワードの関係を参照しつつ、図６に示したような用語集２（類似用語ＤＢ２ａに格納される類似用語集）を利用して類似する用語を検出する。具体的には、頻出クラスキーワード集合にある全てのクラス用語に対して、類似する用語毎に、類似クラスリストを作成する。また、頻出プロパティ集合の全てのプロパティ用語に対して、類似プロパティリストを作成する。
【００６８】
図６に示したような用語集２（類似用語ＤＢ２ａに格納される類似用語集）の例では、図１２中のクラス関係４０のクラス「ＰＣ」と「計算機」とは類似用語であることから、図１２に示すような類似クラスリスト４２を生成する。同様に、図１２中の頻出プロパティ集合４１のプロパティの「メーカー」と、「Manufacture」,「Producer」とが類似用語であることから、図１２に示すような類似プロパティリスト４３を生成する。
【００６９】
（ステップＳ４：改善提案を生成）
ステップＳ４においては、ステップＳ３で生成した検索キーワード関係図及び類似リスト（類似クラスリスト４２、類似プロパティリスト４３）を用いて、オントロジー改善提案部１０が、既存オントロジーへの改善提案を作成する。本実施の形態においては、図１３に示すように、改善提案を６つのタイプに設定する。
［タイプ１］クラスの追加：クラスの追加
［タイプ２］別名追加：クラス、又はプロパティに対して、別名の追加
［タイプ３］定義統一：異なるオントロジーにおいて、類似クラスとプロパティは、同じ定義を持つ
［タイプ４］プロパティ追加：プロパティの追加
［タイプ５］定義削除：クラス、又はプロパティの定義が重複する際に、余分なクラス、又はプロパティを削除する
［タイプ６］定義変更：クラス間の関係を変更する
以下において、既存オントロジーに対する改善提案を作成する方法を説明する。
【００７０】
まず、図１２に示すクラス関係を用いて説明する。
【００７１】
（１）  オントロジー改善提案部１０は、類似クラスリスト４２を用いて、１つのオントロジー（例えば、OntoＡ）において、類似するクラスを同時に定義しているかどうかのチェックを行う。１つのオントロジー（例えば、OntoＡ）が２つ以上の類似するクラスを同時に定義している場合には、オントロジー改善提案部１０は、１つのクラスだけを残して他のクラス定義を削除するように、自動的に改善提案を作成する。加えて、オントロジー改善提案部１０は、削除されたクラスの用語を残したクラスに別名として追加するように、改善提案を作成する。このような改善提案は、オントロジー毎に行なう。または、オントロジー毎の改善提案を作成した後、改善提案を集計し、纏めてオントロジーへ提出するようにしても良い。図１２に示すクラス関係の例では、クラス「ＰＣ」と「計算機」が類似用語であることが分かる。したがって、１つのオントロジー（OntoＡ）には、「ＰＣ」又は「計算機」のどちらか一方のクラスしか定義しないほうが望ましい。したがって、オントロジー改善提案部１０は、どちらか一方を削除するように、図１３に示す改善提案１３０１を作成する。さらに、オントロジー改善提案部１０は、クラス「ＰＣ」に用語「計算機」を別名として追加するように、図１３に示す改善提案１３０２を作成する。
【００７２】
（２）  例えばオントロジーOntoＡにおいて、頻出クラスキーワード集合に存在するクラスClsAを定義している場合には、オントロジー改善提案部１０は、頻出クラスキーワード集合にあるクラスClsAに類似するクラス項目を、ClsA項目の別名として登録するように、自動的に改善提案を作成する。図１２に示すクラス関係の例では、「ＰＣ」と「計算機」は類似用語であって、「ＰＣ」を定義したオントロジーに「計算機」を別名として追加するように改善提案をし、同じく、「計算機」を定義したオントロジーに「ＰＣ」を別名として追加するように、オントロジー改善提案部１０は、図１３に示す改善提案１３０２を作成する。
【００７３】
（３）  オントロジー改善提案部１０は、異なるオントロジーに類似するクラスをそれぞれ定義している場合には、各オントロジーの該当する類似するクラス項目について同じ定義を持つように、改善提案を作成する。例えば、オントロジー２にクラス「ＰＣ」を定義しておりオントロジー３にクラス「計算機」を定義している場合、図１２に示すクラス関係の例では「ＰＣ」と「計算機」が類似クラスであるため、オントロジー改善提案部１０は、同じ定義を持つように、図１３に示す改善提案１３０３を作成する。
【００７４】
（４）  オントロジー改善提案部１０は、クラスの関係を用いて、既存のオントロジーに定義されているクラス項目と関係のあるクラスを、当該クラス項目と親子関係又は兄弟関係のクラスであるように、改善提案を作成する。図１２に示すクラス関係の例では、クラス「ＰＣ」と、クラス「サーバー」と、クラス「ＮｏｔｅＰＣ」との間に関係がある。従って、オントロジーOntoＡにおいて、上記３つクラスの何れか一つのクラスを定義している場合は、他の２つのクラスは、該クラスの親子関係又は兄弟関係のクラスであるべきである。例えば、クラス「ＰＣ」を定義してあれば、「ＰＣ」の親子関係または兄弟関係のクラスに、クラス「サーバー」と「ＮｏｔｅＰＣ」を定義しているかどうかをチェックする。存在していないクラスは、定義が欠損している可能性があるので、該クラスを追加するように、オントロジー改善提案部１０は、図１３に示す改善提案１３０４を作成する。一方、オントロジーOntoＡにおいて、頻出クラス検索集合の全てのクラスを定義しているが、クラス間の関係が異なる場合がある。例えば、既存のオントロジーOntoＡでは、クラス「ＰＣ」はクラス「サーバー」と「ＮｏｔｅＰＣ」とは親子又は兄弟関係ではないと定義されているような場合には、オントロジーでのクラス間の関係を修正するように、オントロジー改善提案部１０は、図１３に示す改善提案１３０５を作成する。
【００７５】
次に、図１２に示すプロパティ関係を用いて説明する。
【００７６】
（１）  既存のオントロジー（OntoＡ）において類似するプロパティ項目が存在している場合、すなわち図１２において類似プロパティリスト４３が少なくとも１つ以上存在する場合には、各類似プロパティリスト４３の各プロパティを定義しているかどうかについて、オントロジー改善提案部１０は、自動的にチェックを行う。オントロジー改善提案部１０は、オントロジーOntoＡにおいて類似プロパティを定義している場合は、１つのプロパティだけを残すように改善提案を作成する。さらに、オントロジー改善提案部１０は、削除されるプロパティについて、残されるプロパティに別名として追加するように、改善提案を作成する。図１２に示すプロパティ関係の例では、プロパティの「メーカー」と「Manufacture」と「Producer」とが類似用語であるため、１つのオントロジーでは、３者の何れか１つしか定義することができない。２つ以上のプロパティを定義する場合は、１つだけ残すように、オントロジー改善提案部１０は、図１３に示す改善提案１３０６を作成する。さらに、オントロジー改善提案部１０は、削除されるプロパティの名称を別名として残されるプロパティへ追加するように、図１３に示す改善提案１３０７を作成する。
【００７７】
（２）  オントロジー改善提案部１０は、類似する項目を１つだけ定義している場合には、該項目に対して他の類似用語を別名として追加定義するように、自動的に改善提案を作成する。図１２に示すプロパティ関係の例では、「メーカー」と「Manufacture」と「Producer」とが類似用語であるため、各オントロジーに上記定義が存在する場合は、相互に別名として追加するように、オントロジー改善提案部１０は、図１３に示す改善提案１３０８を作成する。
【００７８】
（３）  オントロジー改善提案部１０は、異なるオントロジーに類似プロパティを定義している場合には、同じ定義を持つように、自動的に改善提案を作成する。図１２に示すプロパティ関係の例では、「メーカー」と「Manufacture」と「Producer」との定義を同じにするように、図１３に示す改善提案１３０９を作成する。
【００７９】
（４）  オントロジー改善提案部１０は、既存のオントロジーOntoＡにおいて、頻出プロパティ集合の全てのプロパティがOntoＡでの対応するクラスに定義しているかどうかをチェックする。オントロジー改善提案部１０は、オントロジーOntoＡでの対応クラスが全てのプロパティを定義していない場合、定義されていないプロパティをオントロジーOntoＡの該クラスに追加定義するように、自動的に改善提案を作成する。図１２に示すプロパティ関係の例では、クラス「ＰＣ」に対して、プロパティの｛メーカー（又はManufacture，又はProducer），メモリ，ＨＤ，電圧，生産日，価格｝を定義すべきである。すなわち、オントロジー改善提案部１０は、既存のオントロジーOntoＡにクラス「ＰＣ」が定義されている場合には、自動的に該クラスが利用するプロパティを検出し、上記頻出プロパティ集合との比較を行う。頻出プロパティ集合の要素がオントロジーOntoＡに定義されていない場合、オントロジー改善提案部１０は、定義欠損しているプロパティを追加するように、図１３に示す改善提案１３１０を作成する。
【００８０】
以上が、オントロジー改善提案部１０の説明である。このようにしてオントロジー改善提案部１０で作成された改善提案は、オントロジー更新部１１に送られる。
【００８１】
オントロジー更新部１１は、オントロジー改善提案部１０で作成された改善提案に従って、対応するオントロジーの対応する部分を自動的又は半自動的に更新を行う。
【００８２】
したがって、既存のオントロジーをオントロジー改善提案部１０で作成された改善提案に従って更新した場合には、更新されたオントロジーが登録部２４を介して登録オントロジーＤＢ１に登録されることになるので、用語集２もオントロジー改善提案部１０で作成された改善提案に従って更新されることになる。
【００８３】
なお、検索実行部１２は、検索設定画面３０における検索条件（例えば、クラス、プロパティ）を介して検索キー設定部４に設定した検索キーワードに基づいて登録オントロジーＤＢ１に登録されるオントロジーの検索を実行し、検索結果表示部１４は、検索実行部１２における検索結果を表示する。
【００８４】
また、用語検出提示部１３は、検索キーワードを検索実行部１２から受け取り、用語集２から検索キーワードと対応する類似用語と関連用語とを検出し、ユーザが利用するクライアント３００に図１４に示す類似・関連用語表示画面５０を表示して、類似用語５１と関連用語５２とを提示する。なお、類似・関連用語表示画面５０を介してユーザに提示する際には、類似用語と関連用語は分別せずに、用語はクラスタイプであるがプロパティタイプであるかを分類して提示する。選択用語再検索部１５は、提示された類似・関連用語表示画面５０からユーザが必要とする用語が選択された場合、選択されたキーワードの条件で登録オントロジーＤＢ１に登録されるオントロジーの再検索を実行し、検索結果表示部１４は、選択用語再検索部１５における検索結果を表示する。これにより、ユーザは提示された類似・関連用語表示画面５０から、自分関心のある用語を選択し、図１０に示す検索設定画面３０から入力した検索条件と合わせて再検索することができる。
【００８５】
このように本実施の形態によれば、検索キーワードの利用頻度と各検索キーワード間の関係、すなわち検索キーワードの履歴を用いて、既存のオントロジー構成項目であるクラス及びプロパティの品質を劣化させる要素（例えば、項目の欠損、項目の異常、項目の非統一性、項目の非正規性など）についての改善提案を作成することにより、オントロジーの品質向上を支援することができる。
【００８６】
［第２の実施の形態］
次に、本発明の第２の実施の形態を図１５ないし図２０に基づいて説明する。なお、前述した第１の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【００８７】
本実施の形態は、用語集のアクセス履歴を用いて既存のオントロジーに対する改善提案を作成する方法を示すものである。
【００８８】
サーバー１００は、図１５に示すように、辞書更新プログラムに従うことにより、辞書更新装置として機能するものであって、登録オントロジーＤＢ１と、用語集２と、シソーラス辞書３と、検索キー設定部４と、用語集生成部７と、オントロジー更新部１１と、検索実行部１２と、用語検出提示部１３と、検索結果表示部１４と、選択用語再検索部１５と、選択用語履歴保存部１６と、用語評価部１７と、評価集計部１８と、用語集アクセス履歴ＤＢ１９と、頻出用語集合検出部２０と、リスト生成部２１と、オントロジー改善提案部２２と、対応用語更新部２３と、登録部２４と、を備える。このような構成により、サーバー１００は、用語集のアクセス履歴を用いて既存のオントロジーへの改善提案を行う。
【００８９】
図１６は、用語集のアクセス履歴を用いて既存のオントロジーに対する改善提案を作成する手順を示すフローチャートである。図１６に示すように、用語集のアクセス履歴を用いて既存のオントロジーに対する改善提案を作成するまでに、４つのステップがある。
ステップＳ１１：用語集アクセス履歴を保存する。
ステップＳ１２：頻出用語集合を検出する。
ステップＳ１３：頻出用語集合を用いて用語間の関係を獲得する。
ステップＳ１４：改善提案を作成する。
以下、各ステップの詳細について説明する。
【００９０】
（ステップＳ１１：用語集アクセス履歴を保存する）
選択用語履歴保存部１６は、第１の実施の形態で説明したユーザが図１５に示す類似・関連用語表示画面５０から選択した用語と、第１の実施の形態で説明したユーザが図１０に示す検索設定画面３０から入力した検索キーワードとを対応付け、用語集アクセス履歴ＤＢ１９に記憶する。図１７は、用語集アクセス履歴ＤＢ１９に記憶された用語集アクセス履歴を示す模式図である。図１７に示すように、用語集アクセス履歴ＤＢ１９に記憶される用語集アクセス履歴は、類似用語アクセス履歴１９ａと関連用語アクセス履歴１９ｂに分類される。図１６に示す類似・関連用語表示画面５０から例えば類似用語５１における「計算機」と「パソコン」の両方を選択して再検索を行った場合、図１７に示す用語集アクセス履歴では、選択された履歴１７０１が追加される。なお、検索キーワード及び選択した用語が既に用語集アクセス履歴ＤＢ１９に記憶された用語集アクセス履歴に記憶されている場合は、コラムの「利用回数」は、プラス１になる。
【００９１】
（ステップＳ１２：頻出用語集合の検出）
ステップＳ１２においては、頻出用語集合検出部２０が、用語集アクセス履歴ＤＢ１９に記憶された用語集アクセス履歴を用いることにより、検索キーワード毎に対して頻出用語集合を検出する。
【００９２】
まず、頻出用語集合検出部２０は、頻出検索キーワードを、類似用語アクセス履歴１９ａ及び関連用語アクセス履歴１９ｂから検出する。頻出用語集合検出部２０は、１つの検索キーワード“Ｋ”に対して、類似用語アクセス履歴１９ａ及び関連用語アクセス履歴１９ｂに記憶された利用回数を計算し、利用回数の高い検索キーワードを頻出検索キーワードとする。図１７に示す例では、検索キーワード「ＰＣ」の利用回数は、１９５０回である。
ｔｆ（ＰＣ）＝９００＋１００＋２００＋５０＋１００＋２００＋２００＋２００
＝１９５０
また、検索キーワード「ＮｏｔｅＰＣ」の利用回数は、３００回である。
ｔｆ（ＮｏｔｅＰＣ）＝３００
頻出用語集合検出部２０は、上位の利用回数を持つ検索キーワード又は設定された閾値より大きい回数を持つ検索キーワードを、頻出クラスキーワードリストＬに追加する。そして、頻出用語集合検出部２０は、頻出クラスキーワードリストＬの各検索キーワードに対して、頻出用語集合を検出する。
【００９３】
まず、頻出類似用語の検出について、頻出検索キーワード「ＰＣ」を例として説明する。用語集アクセス履歴ＤＢ１９に記憶された類似用語アクセス履歴１９ａにおいては検索キーワード「ＰＣ」と対応する類似用語の利用回数が分かるので、類似用語アクセス履歴１９ａの中から利用回数が予め設定された閾値より高い用語を「頻出類似用語集合」に追加する。図１７に示す例では、検索キーワード「ＰＣ」に対して類似用語「パソコン」を選択された頻度tｆ＿ＰＣ（パソコン）＝９００，類似用語「計算機」を選択された頻度ｔｆ＿ＰＣ（計算機）＝１００，類似用語「personal computer」を選択された頻度ｔｆ＿ＰＣ（personal computer）＝２００である。閾値が１５０に設定されている場合には、検索キーワード「ＰＣ」に対する「頻出類似用語集合」SimilarＬ（ＰＣ）は、｛パソコン、personal computer｝になる。なお、閾値は、頻出用語集合検出部２０により設定することができる。
【００９４】
次に、頻出関連用語の検出について説明する。頻出類似用語を検出する方法と同様に、用語集アクセス履歴ＤＢ１９に記憶された関連用語アクセス履歴１９ｂにおいては検索キーワード「ＰＣ」と対応する関連用語の利用回数が分かるので、関連用語アクセス履歴１９ｂの中から利用回数が予め設定された閾値より高い用語を「頻出関連用語集合」に追加する。図１７に示す例では、ｔｆ＿ＰＣ（ＣＰＵ）＝５０，ｔｆ＿ＰＣ（メモリ）＝１００，ｔｆ＿ＰＣ（ＨＤ）＝２００，ｔｆ＿ＰＣ（メーカー）＝２００，ｔｆ＿ＰＣ（サーバー）=２００である。閾値が１００に設定されている場合には、検索キーワード「ＰＣ」に対する「頻出関連用語集合」RelatedＬ（ＰＣ）は、｛メモリ、ＨＤ、メーカー、サーバー｝になる。なお、閾値は、頻出用語集合検出部２０により設定することができる。
【００９５】
このようにして頻出用語集合検出部２０により検出した「頻出類似用語集合」SimlarＬ及び「頻出関連用語集合」RelatedＬを、「頻出用語集合」と称する。上述した例において、頻出用語集合検出部２０は、１つの検索キーワード「ＰＣ」に対する頻出用語集合を検出することができる。
【００９６】
以上のような処理により、頻出用語集合検出部２０は、用語集アクセス履歴ＤＢ１９に記憶された頻出検索キーワード（又は全ての検索キーワード）に対して、頻出用語集合を検出することができる。
【００９７】
（ステップＳ１３：頻出用語集合を用いて用語間の関係を生成）
ステップＳ１３においては、リスト生成部２１は、検出したキーワード毎の頻出用語集合を用いて、検索キーワード及び頻出用語集合の各用語との関係を生成する。図１８は、頻出用語集合の関係を示す模式図である。図１８に示すように、頻出用語集合のクラス用語６０に対して、プロパティ集合６１及び類似プロパティリスト６２が存在する。より詳細には、検索キーワード「ＰＣ」に対して、プロパティ集合６１と、類似プロパティリスト６２が存在する。
【００９８】
上述したように、頻出類似用語集合の全ての用語は、検索キーワードと類似用語である。例えば、検索キーワード「ＰＣ」に対する頻出類似用語集合SimilarＬ（ＰＣ）＝｛パソコン、personal computer｝は、図１８の符号６０に示すように、互いに類似用語である。
【００９９】
一方、頻出関連用語集合には、クラス用語とプロパティ用語の２種類が存在する。関連クラス用語は、検索キーワードと親子又は兄弟関係を持つ。関連プロパティ用語は、検索キーワード及びその類似用語を利用するクラスのプロパティになる。図１８に示す例では、頻出関連用語集合RelatedＬ＝｛メモリ、ＨＤ、メーカー、サーバー｝における「サーバー」はクラス用語であるため、図１８の符号６０に示すように、検索キーワードの「ＰＣ」とその類似用語クラスとは親子又は兄弟関係を持つ。他の関連用語である「メモリ」、「ＨＤ」、「メーカー」はプロパティであるので、図１８の符号６１に示すように、クラス「ＰＣ」又はクラス「パソコン」又はクラス「Personal Computer」のプロパティ集合になる。
【０１００】
さらに、リスト生成部２１は、プロパティ集合の各プロパティに対して、図６に示す類似用語集２ａから各プロパティの用語の類似用語リストを作成する。具体的には、リスト生成部２１は、図１８の符号６１に示すプロパティ集合に対して、類似用語集２ａから図１８に示す類似プロパティリスト（類似用語リスト）６２を生成する。
【０１０１】
上述したような方法を用いて、各検索キーワードとその頻出用語集合の各用語間の関連図を生成することができる。
【０１０２】
（ステップＳ１４：改善提案を作成）
ステップＳ１４においては、キーワード毎の頻出用語集合を用いて、オントロジー改善提案部２２が、既存オントロジーへの改善提案を作成する。第１の実施の形態で説明したのと同様に、本実施の形態においては、図１９に示すように、改善提案を６つのタイプに設定する。
［タイプ１］クラスの追加：クラスの追加
［タイプ２］別名追加：クラス、又はプロパティに対して、別名の追加
［タイプ３］定義統一：異なるオントロジーにおいて、類似クラスとプロパティは、同じ定義を持つ
［タイプ４］プロパティ追加：プロパティの追加
［タイプ５］定義削除：クラス、又はプロパティの定義が重複する際に、余分なクラス、又はプロパティを削除する
［タイプ６］定義変更：クラス間の関係を変更する
以下において、既存オントロジーに対する改善提案を作成する方法を説明する。
【０１０３】
まず、図１８に示すクラス関係を用いて説明する。
【０１０４】
（１）  オントロジー改善提案部２２は、１つのオントロジーが２つ以上のクラスを定義している場合は、クラス定義重複の可能性があるため、１つのクラス定義だけを残すように、自動的に改善提案を作成する。また、削除されるクラスの用語は、残されたクラスに別名として追加するように、改善提案を作成する。図１８に示すクラス関係の例では、１つのオントロジーについて、クラス「ＰＣ」、「パソコン」、「Personal Computer」のように２つ以上のクラスが定義されているので、オントロジー改善提案部２２は、１つのクラス定義だけを残すように、図１９に示す改善提案１９０１を作成する。さらに、オントロジー改善提案部２２は、残されたクラスに他の２つのクラスを別名として追加するように、図１９に示す改善提案１９０２を作成する。
【０１０５】
（２）  オントロジー改善提案部２２は、オントロジーに類似するクラス項目が定義してある場合には、他の類似用語を該クラスの別名として追加するように、改善提案を作成する。このようにオントロジークラス間の相互の別名追加することによって、オントロジー間の交換性を向上させることができる。さらに、シソーラス辞書３の用語の追加によって、オントロジーの定義をより正確にすることができる。図１８に示すクラス関係の例では、オントロジーにクラス「ＰＣ」を定義している場合において、クラス「ＰＣ」に類似するクラス「パソコン」、「personal computer」が定義してあることから、オントロジー改善提案部２２は、クラス「パソコン」、「personal computer」をクラス「ＰＣ」の別名として追加定義するように、図１９に示す改善提案１９０２を作成する。ここで、「personal computer」はシソーラス辞書３からの用語であるため、オントロジーの定義に追加することによって、定義をより正確にすることができる。
【０１０６】
（３）  オントロジー改善提案部２２は、オントロジーにおいて少なくとも１つのクラスを定義している場合に、該クラスに対する親子又は兄弟クラスについて、頻出用語集合の関係と同じ構造を持つかどうかの比較を行なう。図１８に示すクラス関係の例では、オントロジーにクラスのＰＣ」を定義していることにより、オントロジー改善提案部２２は、そのクラスの親子・兄弟クラスに、クラス「サーバー」を定義しているかどうかのチェックを行う。クラス「サーバー」の定義が存在していない場合には、オントロジー改善提案部２２は、クラス「サーバー」を追加するように、図１９に示す改善提案１９０３を作成する。一方、クラス「サーバー」が定義されているが、クラス「ＰＣ」と親子又は兄弟関係を持たない場合には、オントロジー改善提案部２２は、既存のオントロジーにおいて、クラス「サーバー」とクラス「ＰＣ」との関係を修正するように、図１９に示す改善提案１９０４を作成する。
【０１０７】
次に、図１８に示すクラスとプロパティとの関係を用いて説明する。
【０１０８】
オントロジー改善提案部２２は、既存のオントロジー（OntoＹと称する）に、クラス「ＰＣ」又はクラス「パソコン」、クラス「Personal Computer」が定義されている場合は、それらのクラスについて、図１８に示すプロパティ集合６１と同様のプロパティ集合｛Ｐ｝を定義しているかどうかのチェックを行う。
【０１０９】
（１）  オントロジーOntoＹにプロパティＰ１を定義していない場合に、オントロジー改善提案部２２は、プロパティＰ１を定義するオントロジーOntoＹに、プロパティＰ１との類似プロパティリストProp＿P1の用語を定義しているかどうかをチェックする。
（ア）  オントロジーOntoＹに、プロパティＰ１の類似プロパティリストProp＿P1に存在する２つ以上のプロパティを定義していれば、オントロジー改善提案部２２は、１つだけを残すようにプロパティの削除を要求する図１９に示す改善提案１９０５を作成する。さらに、オントロジー改善提案部２２は、削除されたプロパティを残されたプロパティに別名として追加するように、図１９に示す改善提案１９０６を作成する。
（イ）  オントロジーOntoＹにプロパティＰ１の類似プロパティリストProp＿P1の全ての用語を定義していない場合には、オントロジー改善提案部２２は、オントロジーOntoＹにプロパティＰ１を追加するように、図１９に示す改善提案１９０７を作成する。
（ウ）  オントロジーOntoＹにプロパティＰ１の類似プロパティリストProp＿P1に存在するＰｘが定義されていれば、オントロジー改善提案部２２は、プロパティＰ１はプロパティＰｘの別名として追加するように、図１９に示す改善提案１９０８を作成する。
【０１１０】
（２）  オントロジーOntoＹにプロパティ集合｛Ｐ｝にあるプロパティが全て定義されている場合に、オントロジー改善提案部２２は、プロパティＰ１を定義するオントロジーOntoＹに、プロパティＰ１の類似プロパティリストProp＿P1にある全ての用語を定義しているかどうかのチェックを行う。
（ア）  オントロジーOntoＹにプロパティＰ１の類似プロパティリストProp＿＿P1の用語を１つ以上定義している場合は、オントロジー改善提案部２２は、該プロパティを削除するように、図１９に示す改善提案１９０５を作成する。さらに、オントロジー改善提案部２２は、該用語をプロパティＰ１の別名として登録するように、別名追加の図１９に示す改善提案１９０６を作成する。
（イ）  オントロジーOntoＹにプロパティＰ１の類似プロパティリストProp＿P1の用語を１つも定義していない場合は、オントロジー改善提案部２２は、プロパティＰ１に対して類似プロパティリストProp＿P1の用語を類似度の高い順に別名として追加するように、別名追加の図１９に示す改善提案１９０６を作成する。
【０１１１】
以上が、オントロジー改善提案部２２の説明である。このようにしてオントロジー改善提案部２２で作成された改善提案は、オントロジー更新部１１に送られる。
【０１１２】
オントロジー更新部１１は、オントロジー改善提案部２２で作成された改善提案に従って、対応するオントロジーの対応する部分を自動的又は半自動的に更新を行う。
【０１１３】
したがって、既存のオントロジーをオントロジー改善提案部１０で作成された改善提案に従って更新した場合には、更新されたオントロジーが登録部２４を介して登録オントロジーＤＢ１に登録されることになるので、用語集２もオントロジー改善提案部１０で作成された改善提案に従って更新されることになる。
【０１１４】
加えて、本実施の形態においては、図１５に示すように、用語評価部１７を備えている。用語評価部１７は、選択用語再検索部１５における再検索の結果を用いて、類似度または関連度の評価を行うことができる。そして、評価集計部１８は、用語評価部１７における評価結果を集計して用語集アクセス履歴ＤＢ１９に記憶する。
【０１１５】
図２０は、評価結果１９ｃの一例を示す模式図である。なお、図２０は類似用語に対する評価の一例であるが、関連用語に対してもユーザが同様に評価することができるのは、言うまでもない。類似度及び関連度は、０−５の６段階に設定される。「５」は、図１５に示す類似・関連用語表示画面５０から選択した用語と図１０に示す検索設定画面３０から入力した検索キーワードとが最も類似または関連していることを示す。一方、「０」は、選択した用語と検索キーワードとが最も類似していない、または関連していないことを示す。
【０１１６】
そして、オントロジー改善提案部２２は、当該オントロジー改善提案部２２で作成したオントロジーへの改善提案に対し、同じ検索キーワードと用語を持つ用語評価部１７における評価結果を追加して、オントロジーへの改善提案として提出することができる。その際に、１つの検索キーワードと用語の組み合わせに対して、全てのユーザの評価結果を改善提案に追加する方法と、全ユーザの評価の平均値を改善提案に追加する方法がある。
【０１１７】
さらに、本実施の形態においては、図１５に示すように、対応用語更新部２３を備えている。対応用語更新部２３は、用語集アクセス履歴ＤＢ１９に記憶された用語評価部１７における評価結果を用いて類似・関連用語表示画面５０から選択した用語と検索設定画面３０から入力した検索キーワードとの類似度及び関連度を再計算し、対応する用語集２を更新する。以下において、対応用語更新部２３における再計算について詳述する。なお、以下においては、類似度を例として再計算の説明を行うが、関連度も同様に再計算され、用語集２を更新する。
【０１１８】
類似度は、全てのユーザの評価の平均値になる。評価平均値の計算方法は、下記式に示す通りである。
Average＿Similarity ＝ （Σ（ユーザ評価＊評価回数）／Σ評価回数）／５
図２０に示す評価例によれば、検索キーワード“ＰＣ”と、用語の“パソコン”との類似度に対するユーザ評価が２００１〜２００３に記載されている。従って、“ＰＣ”と“パソコン”の類似度Ｓは、
Ｓ＝（（５＊１０＋５＊６＋４＊４）／２０）／５
＝４．８／５
＝９６％
となる。従って、対応用語更新部２３は、図６に示す類似用語ＤＢ２ａに格納される類似用語集の“ＰＣ”と“パソコン”の類似度を“９６％”に更新する。
【０１１９】
このように本実施の形態によれば、ユーザからの検索状況の履歴の分析、すなわち類似／関連用語に対するアクセス履歴を用いて、既存のオントロジー構成項目であるクラス及びプロパティの品質を劣化させる要素（例えば、項目の欠損、項目の異常、項目の非統一性、項目の非正規性など）についての改善提案を作成することにより、オントロジーの品質向上を支援することができる。
【０１２０】
［第３の実施の形態］
次に、本発明の第３の実施の形態を図２１ないし図２４に基づいて説明する。なお、前述した第１の実施の形態または第２の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【０１２１】
本実施の形態は、第１の実施の形態におけるオントロジーへの改善提案で用いた検索キーワードの履歴と、第２の実施の形態におけるオントロジーへの改善提案で用いた用語集のアクセス履歴との両方を用いて、オントロジーに対する改善提案を作成する方法を示すものである。
【０１２２】
サーバー１００は、図２１に示すように、辞書更新プログラムに従うことにより、辞書更新装置として機能するものであって、登録オントロジーＤＢ１と、用語集２と、シソーラス辞書３と、検索キー設定部４と、検索履歴記憶部５と、検索履歴ＤＢ６と、用語集生成部７と、頻出検索キーワード集合検出部８と、リスト生成部９と、オントロジー更新部１１と、検索実行部１２と、用語検出提示部１３と、検索結果表示部１４と、選択用語再検索部１５と、選択用語履歴保存部１６と、用語評価部１７と、評価集計部１８と、用語集アクセス履歴ＤＢ１９と、頻出用語集合検出部２０と、リスト生成部２１と、オントロジー改善提案部２２と、対応用語更新部２３と、登録部２４と、を備える。このような構成により、サーバー１００は、検索キーワードの履歴と用語集のアクセス履歴とを用いて既存のオントロジーへの改善提案を行う。
【０１２３】
図２２は、検索キーワードの履歴と用語集のアクセス履歴とを用いて既存のオントロジーに対する改善提案を作成する手順を示すフローチャートである。図２２に示すように、用語集のアクセス履歴を用いて既存のオントロジーに対する改善提案を作成するまでに、６つのステップがある。
ステップＳ２１：頻出検索キーワード集合と頻出用語集合とから同じキーワードを検出する。
ステップＳ２２：頻出検索キーワード集合と頻出用語集合との頻出クラス集合の和を取る。
ステップＳ２３：頻出検索キーワード集合と頻出用語集合との頻出プロパティ集合の和を取る。
ステップＳ２４：類似クラスリストを生成する。
ステップＳ２５：類似プロパティリストを生成する。
ステップＳ２６：改善提案を作成する。
以下、各ステップの詳細について説明する。
【０１２４】
（ステップＳ２１：頻出検索キーワード集合と頻出用語集合とから同じキーワードを検出）
ステップＳ２１においては、オントロジー改善提案部２２が、第１の実施の形態で説明した頻出検索キーワード集合（図１２参照）と、第２の実施の形態で説明した頻出用語集合（図１８参照）とを取得し、取得した頻出検索キーワード集合と頻出用語集合とから同じキーワードを検出する。なお、頻出用語集合は、クラス集合とプロパティ集合を含む。図１２に示す頻出検索キーワード集合をSearch＿Ｌとすると、クラス集合Search＿class＿ＬはSearch＿class＿Ｌ＝｛ＰＣ、計算機、サーバー、ＮｏｔｅＰＣ｝であり、プロパティ集合Search＿property＿ＬはSearch＿property＿Ｌ＝｛メーカー、メモリ、ＨＤ、電圧、生産日、Manufacture、Producer、価格｝である。また、図１８に示す検索キーワード「ＰＣ」に対応する頻出用語集合をItem＿Ｌとすると、クラス集合Item＿class＿ＬはItem＿class＿Ｌ＝｛ＰＣ、パソコン、Personal Computer｝であり、プロパティ集合Item＿property＿ＬはItem＿property＿Ｌ＝｛メモリ、ＨＤ、メーカー｝である。
【０１２５】
（ステップＳ２２：頻出検索キーワード集合と頻出用語集合との頻出クラス集合の和を取る）
ステップＳ２２においては、オントロジー改善提案部２２が、頻出検索キーワード集合と頻出用語集合との頻出クラス集合の和を取る。ここで、図２３は頻出検索キーワード集合と頻出用語集合との和の一例を示す模式図である。第１の実施の形態で説明した頻出検索キーワード集合（図１２参照）と、第２の実施の形態で説明した頻出用語集合（図１８参照）との頻出クラス集合の和を取ると、図２３に示すような関係になる。図２３に示す例では、Search＿class＿ＬとItem＿class＿Ｌとの和を取ると、頻出クラス集合（Class＿Ｌ）７０は、
頻出クラス集合Class＿Ｌ＝Search＿class＿Ｌ∪Item＿class＿Ｌ＝｛ＰＣ、計算機、サーバー、ＮｏｔｅＰＣ、パソコン、Personal Computer｝
になる。
【０１２６】
（ステップＳ２３：頻出検索キーワード集合と頻出用語集合との頻出プロパティ集合の和を取る）
ステップＳ２３においては、オントロジー改善提案部２２が、頻出検索キーワード集合と頻出用語集合との頻出プロパティ集合の和を取る。第１の実施の形態で説明した頻出検索キーワード集合（図１２参照）と、第２の実施の形態で説明した頻出用語集合（図１８参照）との頻出クラス集合の和を取ると、図２３に示すような関係になる。図２３に示す例では、Search＿property＿ＬとItem＿property＿Ｌとの和を取ると、頻出プロパティ集合（Property＿Ｌ）７１は、
頻出プロパティ集合Property＿Ｌ＝Search＿property＿Ｌ∪Item＿property＿Ｌ＝｛メーカー、メモリ、ＨＤ、電圧、生産日、Manufacture、Producer、価格、メモリ、ＨＤ｝＝｛メーカー、電圧、生産日、価格、メモリ、ＨＤ｝
になる。
【０１２７】
（ステップＳ２４：類似クラスリストを生成する）
ステップＳ２４においては、オントロジー改善提案部２２が、既存の用語集２（類似用語ＤＢ２ａに格納される類似用語集）を参考にして、頻出クラス集合Class＿Ｌの全ての用語に対して類似するクラスリストを生成する。図２３における符号７２は、頻出クラス集合Class＿Ｌの類似クラスリスト例である。以下において、具体的に説明する。
【０１２８】
まず、オントロジー改善提案部２２は、頻出クラス集合Class＿Ｌの各用語が類似用語であるかどうかのチェックを行う。本実施の形態においては、図６に示す既存の用語集２（類似用語ＤＢ２ａに格納される類似用語集）を用いることにより、用語の「ＰＣ」と「パソコン」と「Personal Computer」と「計算機」が類似用語であることが分かるので、類似クラスリストClass＿ＰＣ＝｛パソコン、計算機、Personal Computer｝を生成することができる。
【０１２９】
さらに、オントロジー改善提案部２２は、既存の用語集２（類似用語ＤＢ２ａに格納される類似用語集）を用いて、上記類似クラスリストの全ての用語に対して類似用語を検出し、該類似クラスリストに重複しないように追加する。オントロジー改善提案部２２は、図６に示す既存の用語集２（類似用語ＤＢ２ａに格納される類似用語集）を用いることにより、「ＰＣ」と類似する用語「電子計算機」を類似クラスリストClass＿ＰＣに追加する。従って、Class＿ＰＣ＝｛パソコン、計算機、Personal Computer、電子計算機｝になる。
【０１３０】
同様に、オントロジー改善提案部２２は、頻出クラス集合Class＿Ｌにある他の用語「サーバー」と「ＮｏｔｅＰＣ」についての類似用語を検出し、類似用語リストClass＿サーバー＝｛Server｝と、Class＿ＮｏｔｅＰＣ＝｛ノート｝を獲得することができる。
【０１３１】
（ステップＳ２５：類似プロパティリストを生成する）
ステップＳ２５においては、オントロジー改善提案部２２が、既存の用語集２（類似用語ＤＢ２ａに格納される類似用語集）を参考にして、頻出プロパティ集合Property＿Ｌの全ての用語に対して類似するプロパティリストを生成する。図２３における符号７３は、頻出プロパティ集合Property＿Ｌの類似プロパティリスト例である。以下において、具体的に説明する。
【０１３２】
まず、オントロジー改善提案部２２は、頻出プロパティ集合Property＿Ｌの各用語が互いに類似用語であるかどうかのチェックを行う。本実施の形態においては、図６に示す既存の用語集２（類似用語ＤＢ２ａに格納される類似用語集）を用いることにより、プロパティ「メーカー」と「Manufacture」と「Producer」が類似用語であることが分かるので、類似プロパティリストProp＿メーカー＝｛Manufacture，Producer｝を生成することができる。該類似プロパティリストは、「メーカー」と「Manufacture」と「Producer」が類似用語であることを表現している。本例においては、Prop＿メーカーを用いて表しているが、Prop＿Manufactureや、Prop＿Producerでも同じ意味を持つ。このように類似用語の一つを用いることにより、類似プロパティリストを表現することができる。
【０１３３】
さらに、オントロジー改善提案部２２は、既存の用語集２（類似用語ＤＢ２ａに格納される類似用語集）を用いて、「メーカー」と類似するプロパティは用語「Maker」もあることが分かるので、用語「Maker」を「メーカー」の類似プロパティリストに追加する。従って、類似プロパティリストProp＿メーカーは、Prop＿メーカー＝｛Manufacture, Producer、maker｝になる。
【０１３４】
同様に、オントロジー改善提案部２２は、頻出プロパティ集合Property＿Ｌにある他の用語に対しても類似プロパティリストを得ることができる。
【０１３５】
最後に、オントロジー改善提案部２２は、頻出プロパティ集合（Property＿Ｌ）Ｌから類似する項目を除くことにより、図２３に示す実際の類似プロパティリスト７４を生成する。
【０１３６】
（ステップＳ２６：改善提案を作成する）
ステップＳ２６においては、オントロジー改善提案部２２が、プロパティ集合及び対応する類似クラスリストとプロパティリストを用いて、既存オントロジーへの改善提案を作成する。第１の実施の形態および第２の実施の形態で説明したのと同様に、本実施の形態においては、図２４に示すように、改善提案を６つのタイプに設定する。
［タイプ１］クラスの追加：クラスの追加
［タイプ２］別名追加：クラス、又はプロパティに対して、別名の追加
［タイプ３］定義統一：異なるオントロジーにおいて、類似クラスとプロパティは、同じ定義を持つ
［タイプ４］プロパティ追加：プロパティの追加
［タイプ５］定義削除：クラス、又はプロパティの定義が重複する際に、余分なクラス、又はプロパティを削除する
［タイプ６］定義変更：クラス間の関係を変更する
以下において、既存オントロジーに対する改善提案を作成する方法を説明する。
【０１３７】
まず、頻出クラス集合及び類似クラスリストを用いて説明する。
【０１３８】
（１）  オントロジー改善提案部２２は、１つの類似クラスリストにある全ての用語が類似であることから、１つのオントロジーには１つの項目しか定義しないように、自動的に改善提案を作成する。類似クラスリストClass＿ＰＣを例にして説明すると、クラス「ＰＣ」とその類似クラスリスト：｛パソコン、計算機、Personal Computer、電子計算機｝の全てのクラス用語に対して、１つのオントロジーに上記リストの中から１つのクラスしか定義することができない。オントロジー改善提案部２２は、２つ以上のクラスを定義している場合は、１つのクラス定義だけを残すように、図２４に示す改善提案２４０１を作成する。さらに、オントロジー改善提案部２２は、削除されるクラスを残されるクラスに別名として追加するように、図２４に示す改善提案２４０２を作成する。
【０１３９】
（２）  オントロジー改善提案部２２は、類似クラスリストの１つのクラスを定義している場合には、他の用語は別名として追加するように、改善提案を作成する。例えば、オントロジー改善提案部２２は、クラス「ＰＣ」にまだ定義していない類似用語｛パソコン、計算機、Personal Computer｝を、「ＰＣ」の別名として追加するように、図２４に示す改善提案２４０３を作成する。
【０１４０】
（３）  オントロジー改善提案部２２は、オントロジーにおいて少なくとも１つのクラスを定義している場合に、該クラスに対する親子又は兄弟クラスについて、頻出クラス集合と同様なクラスを持つかどうかの比較を行う。オントロジー改善提案部２２は、頻出クラス集合で定義されており、オントロジーで定義されていない場合には、該クラスの追加改善提案を作成する。例えば、クラス「ＰＣ」に対してクラス「サーバー」とクラス「ＮｏｔｅＰＣ」は親子クラス又は兄弟クラスに定義すべきである。従って、オントロジー改善提案部２２は、既存のオントロジーにおいて、クラス「ＰＣ」に、クラス「サーバー」とクラス「ＮｏｔｅＰＣ」を定義していない場合は、クラスを追加するように、図２４に示す改善提案２４０４を作成する。一方、既存のオントロジーで定義したクラス関係と頻出クラス集合にあるクラス間の関係と異なる場合は、オントロジー改善提案部２２は、オントロジーでのクラス間の関係を修正するように、図２４に示す改善提案２４０５を作成する。
【０１４１】
次に、クラスとプロパティとの関係を用いて説明する。
【０１４２】
既存のオントロジーにおいて、頻出クラス集合と同様なクラスを定義している場合は、該クラスに対して、頻出プロパティ集合の項目、またはプロパティの類似項目を定義すべきである。より具体的には、図２３に示す例では、既存のオントロジーにおいて、クラス「ＰＣ」（及びその類似クラス）に、頻出プロパティ集合７４の集合｛Ｐ｝、又その項目の類似リスト７３を定義すべきである。そこで、オントロジー改善提案部２２は、既存のオントロジー（OntoＸとする）の「ＰＣ」が利用するプロパティと、頻出プロパティ集合｛Ｐ｝を比較する。
【０１４３】
（１）  頻出プロパティ集合｛Ｐ｝に定義してあるプロパティＰ２が既存のオントロジーOntoＸに定義していない場合に、オントロジー改善提案部２２は、プロパティＰ２を定義するオントロジーOntoＸに、プロパティＰ２との類似プロパティリストProp＿P2の用語を定義しているかどうかをチェックする。
（ア）  オントロジーOntoＸに、プロパティＰ２の類似プロパティリストProp＿P2に存在する２つ以上のプロパティを定義していれば、オントロジー改善提案部２２は、１つだけを残すようにプロパティの削除を要求する図２４に示す改善提案２４０６を作成する。さらに、オントロジー改善提案部２２は、削除されたプロパティを残されたプロパティに別名として追加するように、図２４に示す改善提案２４０７を作成する。
（イ）  オントロジーOntoＸにプロパティＰ２の類似プロパティリストProp＿P2の全ての用語を定義していない場合には、オントロジー改善提案部２２は、オントロジーOntoＸにプロパティＰ２を追加するように、図２４に示す改善提案２４０８を作成する。
（ウ）  オントロジーOntoＸにプロパティＰ２の類似プロパティリストProp＿P2に存在するＰｘが定義されていれば、オントロジー改善提案部２２は、プロパティＰ２はプロパティＰｘの別名として追加するように、図２４に示す改善提案２４０７を作成する。
【０１４４】
（２）  オントロジーOntoＸにプロパティ集合｛Ｐ｝にあるプロパティが全て定義されている場合に、オントロジー改善提案部２２は、プロパティＰ２を定義するオントロジーOntoＸに、プロパティＰ２の類似プロパティリストProp＿P2にある全ての用語を定義しているかどうかのチェックを行う。
（ア）  オントロジーOntoＸにプロパティＰ２の類似プロパティリストProp＿＿P2の用語を１つ以上定義している場合は、オントロジー改善提案部２２は、該プロパティを削除するように、図２４に示す改善提案２４０６を作成する。さらに、オントロジー改善提案部２２は、該用語をプロパティＰ２の別名として登録するように、図２４に示す別名追加の改善提案２４０７を作成する。
（イ）  オントロジーOntoＸにプロパティＰ２の類似プロパティリストProp＿P2の用語を１つも定義していない場合は、オントロジー改善提案部２２は、プロパティＰ２に対して類似プロパティリストProp＿P2の用語を類似度の高い順に別名として追加するように、図２４に示す別名追加の改善提案２４０９を作成する。
【０１４５】
以上が、オントロジー改善提案部２２の説明である。このようにしてオントロジー改善提案部２２で作成された改善提案は、オントロジー更新部１１に送られる。
【０１４６】
オントロジー更新部１１は、オントロジー改善提案部２２で作成された改善提案に従って、対応するオントロジーの対応する部分を自動的又は半自動的に更新を行う。
【０１４７】
このように本実施の形態によれば、第１の実施の形態と、第２の実施の形態の両方の情報を利用しているため、第１の実施の形態および第２の実施形態より改善提案の範囲を広くすることができる。
【０１４８】
［第４の実施の形態］
次に、本発明の第４の実施の形態を図２５および図２６に基づいて説明する。なお、前述した第１の実施の形態ないし第３の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【０１４９】
図１０に示す検索設定画面３０を介して検索キー設定部４に設定される検索条件は、前述したクラスおよびプロパティに限るものではない。例えば、図１０に示すように、その値や単位なども検索条件として検索キー設定部４に設定することができる。そして、検索設定画面３０における検索条件（例えば、クラス、プロパティ、プロパティの値および単位の情報など）を介して検索キー設定部４に設定した検索キーワードは、検索履歴ＤＢ６に記憶される。図２５は、検索履歴ＤＢ６に記憶される検索キーワード履歴６ｂを示す模式図である。図２５に示すように、設定したクラスキーワードは、「クラス」コラムに記憶する。設定したクラス条件と同時に設定したプロパティ検索条件は、プロパティは「プロパティ」のコラムに記憶し、値は「値」のコラムに記憶する。プロパティに対して、単位の設定があれば、「単位」のコラムに記憶する。プロパティと値の関係は、「計算符号」コラムに記憶する。「値」、「単位」、「計算符号」などは、プロパティに付帯する用語である。
【０１５０】
頻出検索キーワード集合検出部８は、検索履歴ＤＢ６に記憶された検索キーワード履歴に対して頻出検索キーワード集合を検出し、リスト生成部９は、頻出検索キーワード集合に含まれる全てのプロパティに付帯する用語リストを生成する。
【０１５１】
オントロジー改善提案部１０は、キーワード毎の頻出用語集合を用いて、既存オントロジーへの改善提案を作成する。本実施の形態においては、図２６に示すように、改善提案を３つのタイプに設定する。
［タイプ１］データタイプ（ＤａｔａＴｙｐｅ）
［タイプ２］単位（ＵＮＩＴ）
［タイプ３］ＥＮＵＭ
以下において、既存オントロジーに対する改善提案を作成する方法を説明する。
【０１５２】
（１）  ＤａｔａＴｙｐｅ
図２５に示すように、頻出クラス「ＰＣ」における頻出プロパティとしては、プロパティ「メモリ」がある。検索キーワード履歴上では、プロパティ「メモリ」に対して、良く利用される値は２５６、又は５１２であることが分かる。夫々の利用頻度は、tf＿メモリ（２５６）＝３０であり、tf＿メモリ（５１２）＝８０である。オントロジー改善提案部１０は、該プロパティが利用する値は整数であることを自動的に判別し、プロパティ「メモリ」のデータタイプを整数にするように、図２６に示すオントロジーへの改善提案２６０１を作成する。
【０１５３】
（２）  ＵＮＩＴ
図２５に示すように、頻出クラス「ＰＣ」における頻出プロパティとしては、プロパティ「電圧」がある。このようなプロパティ「電圧」について、頻繁に指定される単位を検出することができる。図２５に示す例では、プロパティ「電圧」に対して、単位Ｖ（ボルト）が利用された回数は“３０”であり、該プロパティについてはその他の単位は利用されていない。即ち、単位のＶ（ボルト）が、プロパティ「電圧」が頻繁に利用される単位である。オントロジー改善提案部１０は、オントロジーの該当するクラス（図２５に示す例では、「ＰＣ」又は「ＮｏｔｅＰＣ」）の「電圧」プロパティについて“単位”のアトリビュートを利用している場合には、“Ｖ（ボルト）”に定義するように、図２６に示すオントロジーへの改善提案２６０２を作成する。
【０１５４】
（３）  ＥＮＵＭ
頻出クラスの頻出プロパティは、元のオントロジーにおいてセットである場合がある。セットタイプのプロパティは、決定された値のセットから、該プロパティの値を選択するデータタイプである。例えば、“色”のプロパティに対して、｛赤、黒、白、青、・・・｝の色のセットから値を選ぶ。本実施の形態においては、プロパティがセットである場合は、検索履歴ＤＢ６に記憶される検索キーワード履歴（検索値の履歴）６ｂを用いて、該プロパティの頻出値を検出することができる。図２５に示す例では、プロパティ「メーカー」に対して、頻出値は“ＡＡＡ”、“ＢＢＢ”、“ＣＣＣ”であることが分かる。従って、既存のオントロジーにおいて、プロパティ「メーカー」の選択できる値セットは上記３者を含むことが必要である。オントロジー改善提案部１０は、既存のオントロジーでは、上記３者を定義していない場合には、定義していない値を列挙子として追加するように、図２６に示すオントロジーへの改善提案２６０３を作成する。
【図面の簡単な説明】
【０１５５】
【図１】本発明の第１の実施の形態にかかるデータ検索表示システムのシステム構築例を示す模式図である。
【図２】サーバーおよびクライアントのモジュール構成図である。
【図３】サーバーの機能構成を示すブロック図である。
【図４】オントロジー構成の一例を示す模式図である。
【図５】図４の一部をＸＭＬフォーマットで表した例を示す説明図である。
【図６】類似用語集のデータ構成の一例を示す模式図である。
【図７】関連用語集のデータ構成の一例を示す模式図である。
【図８】関連用語集のデータ構成の一例を示す模式図である。
【図９】改善提案を作成する手順を示すフローチャートである。
【図１０】検索設定画面を示す正面図である。
【図１１】検索キーワード履歴を示す模式図である。
【図１２】検索キーワード関係を示す模式図である。
【図１３】改善提案例を示す模式図である。
【図１４】類似・関連用語表示画面を示す正面図である。
【図１５】本発明の第２の実施の形態にかかるサーバーの機能構成を示すブロック図である。
【図１６】改善提案を作成する手順を示すフローチャートである。
【図１７】用語集アクセス履歴を示す模式図である。
【図１８】頻出用語集合の関係を示す模式図である。
【図１９】改善提案例を示す模式図である。
【図２０】評価結果の一例を示す模式図である。
【図２１】本発明の第３の実施の形態にかかるサーバーの機能構成を示すブロック図である。
【図２２】改善提案を作成する手順を示すフローチャートである。
【図２３】頻出検索キーワード集合と頻出用語集合との和の一例を示す模式図である。
【図２４】改善提案例を示す模式図である。
【図２５】本発明の第４の実施の形態にかかる検索キーワード履歴を示す模式図である。
【図２６】改善提案例を示す模式図である。
【符号の説明】
【０１５６】
１        辞書記憶部
２        類似／関連用語記憶部
４        検索キー設定部
５        検索履歴記憶部
８        頻出検索キーワード集合検出部
９        リスト生成部
１０      改善提案作成部
１１      辞書更新部
１２      検索実行部
１３      用語検出提示部
１５      選択用語再検索部
１９      アクセス履歴記憶部
２０      頻出用語集合検出部
２１      リスト生成部
１７      用語評価部
１８      評価集計部
２２      改善提案作成部
２３      対応用語更新部
１００    辞書更新装置
【図１】
2008242836.tif 000003
【図２】
2008242836.tif 000004
【図３】
2008242836.tif 000005
【図４】
2008242836.tif 000006
【図５】
2008242836.tif 000007
【図６】
2008242836.tif 000008
【図７】
2008242836.tif 000009
【図８】
2008242836.tif 000010
【図９】
2008242836.tif 000011
【図１０】
2008242836.tif 000012
【図１１】
2008242836.tif 000013
【図１２】
2008242836.tif 000014
【図１３】
2008242836.tif 000015
【図１４】
2008242836.tif 000016
【図１５】
2008242836.tif 000017
【図１６】
2008242836.tif 000018
【図１７】
2008242836.tif 000019
【図１８】
2008242836.tif 000020
【図１９】
2008242836.tif 000021
【図２０】
2008242836.tif 000022
【図２１】
2008242836.tif 000023
【図２２】
2008242836.tif 000024
【図２３】
2008242836.tif 000025
【図２４】
2008242836.tif 000026
【図２５】
2008242836.tif 000027
【図２６】
2008242836.tif 000028