説明

オントロジー作成支援装置及びプログラム

【課題】 状況や条件等に応じて内容が変化するオントロジーを効率良く作成させる。
【解決手段】 条件の組み合わせという次元によって、内容が変化する、同一の概念体系に係る1又は複数の多次元オントロジーの作成、更新を支援するオントロジー作成支援装置に関する。条件なし時用の基本オントロジーを格納しておくと共に、条件存在時の多次元オントロジーと基本オントロジーとの差分情報である次元別オントロジーを格納しておく。指定された条件の組み合わせに従った次元別オントロジーと基本オントロジーとを合成し、表示/編集用オントロジーを生成し、オペレータの操作に応じてこれを編集する。保存指令時には、表示/編集用オントロジーの基本オントロジーからの差分情報を、次元別オントロジーとして格納する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はオントロジー作成支援装置及びプログラムに関し、例えば、推論や意図理解といった高度な言語処理を行う検索システムや対話システムで利用する、大規模かつ複雑な概念体系を持つオントロジーの作成、編集に適用し得るものである。
【背景技術】
【0002】
本件出願人は、対話の中で、徐々に掘り下げた質問を繰り返すことにより、ニーズや価値観を引き出す(以下、「ラダリング」と呼ぶ)手法を活用し、利用者とシステムがシナリオに基づいて対話を繰り返すことにより、利用者が自ら表現することが困難であったサービスやコンテンツに関するニーズを引き出し、多種多様でかつ大量のサービスやコンテンツの中からそれとマッチするものを探し出し提供することを可能とするモデルサービス「ラダリング型検索サービス」を研究、開発している。
【0003】
このラダリング型検索サービスでは、オントロジーで記述されるドメイン知識及びそれに基づいて動作する対話制御、意図解析が根幹である。システムは、ドメイン毎に記述するオントロジーに基づいて、質問文を生成しユーザに提示する。ユーザの回答を意図解析によって意味レベルで解釈し、そのユーザから引き出された情報と、予め検索対象解析(ユーザの回答を解釈する意図解析をそのまま用いる)が検索対象データを解析した結果とマッチングすることにより、検索を実現している。全てのデータは、ドメイン毎に記述するオントロジーに集約し、オントロジーをドメイン毎に記述して置き換えることにより、システムを変更せずに、様々なドメインに対応することができるようになっている。
【0004】
「ラダリング型検索サービス」では、オントロジーを全面活用している。ここで、オントロジーとは、「言葉が表わす概念や概念間の関係を表現したネットワーク構造」である。対話システムとしては、オントロジーを利用することで、ユーザから聞き出す構造を階層的に記述することができる。対話システムで利用するためのオントロジーは、利用者の入力を理解したり、それまでの対話をモデル化したりするために利用される。例えば、船越等は、ホテル予約に関するis-a関係で定義されたドメインオントロジーを構築し、ユーザ発話を認識して対話するシステムの研究を行っている(非特許文献1参照)。
【0005】
ところで、以上のように利用されるオントロジーを作成したり、作成支援したりする方法としては、従来、種々のものが提案されている(特許文献1、非特許文献2参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2001−14166号公報
【非特許文献】
【0007】
【非特許文献1】船越他著、「ドメインオントロジーに基づく言語理解」、人工知能学会、第21回全国大会、2007年
【非特許文献2】古崎他著、「「法造」によるオントロジーの分散共同構築支援」、人工知能研究会資料、SIG−SWO−A603−05、2007年
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、非特許文献1に記載のような従来のオントロジーは、主にスロットを埋めていく方式による対話処理において利用されることを想定しており、複雑な知識を用いた対話システムには適用できないといった課題がある。より高度な対話システムを構築するためには、利用者とシステムの対話(対話履歴)に応じて、文脈すなわちコンテキストを認識して対話を制御できるオントロジーであることが望まれる。
【0009】
このような状況や条件等に応じて内容が変化するオントロジーが提案されても、内容が変化するという従来のオントロジーとは異なる特徴を持っているため、従来のオントロジーの作成装置や作成支援装置では、作成することができず、若しくは、作成し難く生産性が悪くなってしまう。
【0010】
そのため、状況や条件等に応じて内容が変化するオントロジーを効率良く作成させることができるオントロジー作成支援装置及びプログラムが望まれている。
【課題を解決するための手段】
【0011】
第1の本発明は、条件なしを含めて条件の組み合わせという次元によって、内容が変化する、同一の概念体系に係る複数の多次元オントロジーの作成、更新を支援するオントロジー作成支援装置であって、(1)条件なし時の多次元オントロジーである基本オントロジーを格納している基本オントロジー格納手段と、(2)条件が存在するときの多次元オントロジーと、基本オントロジーとの差分情報である次元別オントロジーを格納している次元別オントロジー格納手段と、(3)条件の組み合わせをオペレータに指定させる条件設定手段と、(4)指定された条件の組み合わせに従い、上記基本オントロジー格納手段及び上記次元別オントロジー格納手段から基本オントロジー及び次元別オントロジーを取り出して合成し、表示/編集用オントロジーを生成する表示/編集用オントロジー生成手段と、(5)オペレータの操作に応じて、表示/編集用オントロジーを操作するオントロジー編集手段と、(6)オペレータからの出力指令に応じ、その時点での表示/編集用オントロジーを、新たな基本オントロジーとして、又は、その時点での表示/編集用オントロジーの基本オントロジーからの差分情報を、指定された条件の組み合わせに応じた次元別オントロジーとして出力する次元別オントロジー出力手段とを備えることを特徴とする。
【0012】
第2の本発明は、条件なしを含めて条件の組み合わせという次元によって、内容が変化する、同一の概念体系に係る複数の多次元オントロジーの作成、更新を支援するオントロジー作成支援プログラムであって、コンピュータを、(1)条件なし時の多次元オントロジーである基本オントロジーを格納している基本オントロジー格納手段と、(2)条件が存在するときの多次元オントロジーと、基本オントロジーとの差分情報である次元別オントロジーを格納している次元別オントロジー格納手段と、(3)条件の組み合わせをオペレータに指定させる条件設定手段と、(4)指定された条件の組み合わせに従い、上記基本オントロジー格納手段及び上記次元別オントロジー格納手段から基本オントロジー及び次元別オントロジーを取り出して合成し、表示/編集用オントロジーを生成する表示/編集用オントロジー生成手段と、(5)オペレータの操作に応じて、表示/編集用オントロジーを操作するオントロジー編集手段と、(6)オペレータからの出力指令に応じ、その時点での表示/編集用オントロジーを、新たな基本オントロジーとして、又は、その時点での表示/編集用オントロジーの基本オントロジーからの差分情報を、指定された条件の組み合わせに応じた次元別オントロジーとして出力する次元別オントロジー出力手段として機能させることを特徴とする。
【発明の効果】
【0013】
本発明によれば、状況や条件等に応じて内容が変化するオントロジーを効率良く作成させることができるようになる。
【図面の簡単な説明】
【0014】
【図1】実施形態のオントロジー作成支援装置の機能的な構成を示すブロック図である。
【図2】「プログラム言語」についての従来のオントロジーを示す説明図である。
【図3】「プログラム言語」についての多次元オントロジーを示す説明図(1)である。
【図4】「プログラム言語」についての多次元オントロジーを示す説明図(2)である。
【図5】「プログラム言語」についての多次元オントロジーを示す説明図(3)である。
【図6】基本オントロジー及び次元別オントロジーから、多次元オントロジーを構成できることの概念的な説明図である。
【図7】実施形態のオントロジー作成支援装置における編集時の表示画面の概念的構成を示す説明図である。
【図8】実施形態のオントロジー作成支援装置の編集で適用可能なビジュアルエディタ型画像を示す説明図である。
【図9】実施形態のオントロジー作成支援装置の編集で適用可能なスプレットシート型画像を示す説明図である。
【図10】実施形態のオントロジー作成支援装置において、表示/編集用オントロジーを表示させる際のオントロジー読出動作を示すフローチャートである。
【図11】「制度」についてのオントロジーを示す説明図である。
【図12】実施形態のオントロジー作成支援装置において、上書き部分を区別する表示を適用したスプレットシート型画像を示す説明図である。
【図13】実施形態のオントロジー作成支援装置において、編集後の表示/編集用オントロジーを保存させる動作を示すフローチャートである。
【発明を実施するための形態】
【0015】
(A)主たる実施形態
以下、本発明によるオントロジー作成支援装置及びプログラムの一実施形態を、図面を参照しながら説明する。
【0016】
(A−1)多次元オントロジーの説明
実施形態のオントロジー作成支援装置(及びプログラム)を説明する前に、実施形態のオントロジー作成支援装置を適用して作成しようとする、新たなオントロジー(以下、多次元オントロジーと呼ぶ)を説明する。
【0017】
今までのオントロジーでは、語と語の関係や概念を表す際、一つの観点からしか表現することができない。例えば、ラダリング型検索サービスに今までのオントロジーを適用したとしても、文脈すなわちコンテキストを認識して対話を制御できる体系にはなっていない。そこで、本件出願人は、ラダリング型検索サービスのシステムにおいて、多数の意味空間を多次元化して保持し、対話で得られるユーザのデータ/状況に応じて、使用する意味空間を瞬時に切り替えることができるような「多次元オントロジー」技術を提案している。多次元オントロジーにより、従来のオントロジーでは1つの観点からしか記述し得なかったクラスやプロパティを複数の観点から記述することができ、さらに、これらの意味空間に継承関係を持たせることができる。
【0018】
図2は、「プログラム言語」についての従来のオントロジーを示す説明図であり、図3〜図5はそれぞれ、「プログラム言語」についての多次元オントロジーを示す説明図である。
【0019】
図2に示すように、従来のオントロジーは、「プログラム言語」の種類の用語を、体系化対象の要素(クラス)とし、それらの上下関係などに基づいた階層に応じ、ネットワーク構造(ツリー構造)に記述したものである。
【0020】
多次元オントロジーは、従来のオントロジーでは表現できない条件や状況など(以下、単に、条件と呼ぶ)に応じた多様性を提供するオントロジーであって、図3〜図5に示すように、従来のオントロジーと同様なネットワーク構造に加え、「条件」及び「プロパティ」を追加したものである。多次元オントロジーでは、「条件」によってクラスが有する「プロパティ」の値を変化させる。
【0021】
ここで、一例として、転職に適した企業を検索するラダリング型検索サービスに、多次元オントロジーを適用する場合を考える。
【0022】
転職希望者に、職種や業種の希望を聞く前の状況、すなわち、希望職種や希望業種が定まっていない状況では、プログラム言語について、図3に示すような条件「なし」の多次元オントロジーが適用される。職種や業種の希望を聞く前の状況では、転職に適した企業を検索する際に、プログラム言語のスキルの重要度は判断できず、全種類のプログラム言語の重要度(プロパティ)を低く抑えている。
【0023】
転職希望者との対話が進み、希望職種が「プログラマ」であることが判明した状況では、プログラム言語について、図4に示すような条件「職種==プログラマ」の多次元オントロジーが適用される。希望職種がプログラマである場合、プログラム言語のスキルの重要度は高くなり、また、各プログラム言語の重要度もニーズにより変化する。
【0024】
さらに、転職希望者との対話が進み、希望業種が「インターネット」であることが判明した状況では、プログラム言語について、図5に示すような条件「職種==プログラマ&&業種==インターネット」の多次元オントロジーが適用される。希望職種がプログラマで希望業種がインターネット業界である場合、Web開発で良く使用されるプログラム言語のスキルの重要度は高くなる。
【0025】
図3〜図5に示すような条件(条件なしを含む)によって異なるプロパティ値が適用される多次元オントロジーをそれぞれ別個に用意して記憶すると、従来のオントロジーを適用する場合より、非常に多くの記憶容量が必要となってしまう。
【0026】
そのため、条件が存在する多次元オントロジーについては、条件が存在しない多次元オントロジーとの差分情報(相違する部分情報)だけを記憶させるように、多次元オントロジーを記述することとした。
【0027】
以下では、条件が存在しないベースとなる多次元オントロジーを「基本オントロジー」と呼び、条件が存在する多次元オントロジーの基本オントロジーとの差分情報を「次元別オントロジー」と呼ぶ。条件が入力された際にどの次元別オントロジーを優先させるかの情報を次元優先度と呼ぶ。
【0028】
例えば、プロパティ値が、基本オントロジーで「0.1」で多次元オントロジーで「0.9」であれば、それらの差である「0.8」を次元別オントロジーに記述するのではなく、基本オントロジーの「0.1」の部分に上書きして置き換えられる「0.9」を次元別オントロジーに記述する。
【0029】
図6は、基本オントロジー及び次元別オントロジーから、多次元オントロジーを構成できることの概念的な説明図である。
【0030】
同じ対象(概念や意味等)に係る次元別オントロジーは、条件の組み合わせ(=次元)によって様々なものがある。図6は、(1)職種=SE&&業種=ITの次元別オントロジー、(2)職種=営業&&業種=ITの次元別オントロジー、(3)職種=SEの次元別オントロジー、(4)職種=営業の次元別オントロジー、(5)業種=ITの次元別オントロジー等を記載している。
【0031】
転職希望者の希望業種も希望職種も分からないときは、図6(A)に示すように、基本オントロジーがそのまま多次元オントロジーとなる。
【0032】
転職希望者の希望業種がITと分かったときには、図6(B)に示すように、基本オントロジーに、業種=ITの次元別オントロジーが上書きされて、その次元での多次元オントロジーが形成される。
【0033】
さらに、転職希望者の希望職種が営業と分かったときには、図6(C)に示すように、基本オントロジーに、業種=ITの次元別オントロジー、職種=営業の次元別オントロジー、職種=営業&&業種=ITの次元別オントロジーがこの順に上書きされて、その次元での多次元オントロジーが形成される。ここで、上書きされる順序を規定するものが次元優先度であり、条件が細密なものほど高くなっており、細密度が同程度である業種と職種との間では、転職で優先される職種の方が次元優先度は高くなっている。
【0034】
実施形態のオントロジー作成支援装置は、上述した基本オントロジーや次元別オントロジーをオペレータが作成するのを支援するものである。
【0035】
(A−2)実施形態のオントロジー作成支援装置の構成
図1は、実施形態のオントロジー作成支援装置の機能的な構成を示すブロック図である。実施形態のオントロジー作成支援装置は専用装置として構成されても良く、また、パソコンなどのコンピュータにオントロジー作成支援プログラムをインストールすることで構成されても良いものであるが、機能的には、図1で表すことができる。
【0036】
図1において、実施形態のオントロジー作成支援装置1は、入出力部2、制御部3及び記憶部4を有する。
【0037】
入出力部2は、キーボードやマウスなどが該当する入力部10と、ディスプレイやプリンタなどが該当する出力部11とを有する。なお、ディスプレイに表示されるボタンアイコンなども入力部10の要素である。
【0038】
記憶部4は、オントロジーデータ(ドメイン知識データ)を記憶している。記憶されているオントロジーデータは、基本オントロジー(のデータ)30、次元別オントロジー(のデータ)31、次元優先度定義テーブル32及び表示/編集用オントロジー(のデータ)33である。
【0039】
基本オントロジー30は、上述したように、条件なしのベースとなるオントロジーであり、編集がなされた場合には、少なくとも編集後の基本オントロジーが記憶されている。なお、編集前の基本オントロジーをも格納するようにしても良く、編集前の基本オントロジーを格納しないで更新履歴(編集履歴)を格納するようにしても良い。更新履歴は、全体に対する付随情報として付随させるようにしても良く、また、オントロジー内のクラス単位に、そのクラスの更新履歴を付随させるようにしても良い。なお、クラス単位に、そのクラスのコメントを付随させる機能を設けるようにしても良い。
【0040】
ここで、編集が1回も実行されることがない当初の基本オントロジーとしては、条件やプロパティを持たない既存のオントロジー適用することができる。
【0041】
次元別オントロジー31は、上述したように、その次元(条件の組み合わせ)の多次元オントロジーの、基本オントロジーからの差分情報である。例えば、実施形態のオントロジー作成支援装置1が立ち上げられた直後においては、次元別オントロジー31は存在せず、当該オントロジー作成支援装置1を用いた編集処理により徐々に生成され、記憶部4に記憶されていくものである。
【0042】
次元優先度定義テーブル32は、上述した次元優先度を格納しているものである。この実施形態では、次元優先度を固定的に格納しているものを示しているが、次元の種類や次元優先度をもオペレータが適宜更新できるようにしても良い。
【0043】
表示/編集用オントロジー33は、オペレータに表示出力し、その表示画面上でオペレータが編集操作するための多次元オントロジーである。言い換えると、オペレータの作業用の表示オントロジーである。
【0044】
制御部3は、例えば、実施形態のオントロジー作成支援プログラム及びその実行部が該当するものであり、機能的には、条件設定部20、表示/編集用オントロジー生成部21、オントロジー編集部22及び次元別オントロジー出力部23を有する。
【0045】
条件設定部20は、入出力部2と協働して、編集(新規作成を含む)対象のオントロジーを指定させた上で、次元を規定する条件(条件なしを含む)を設定させるものである。例えば、編集対象のオントロジーが上述した「プログラム言語」のオントロジー(図2〜図5参照)であれば、条件設定部20は、入力部10から、オペレータが入力した「プログラム言語」のオントロジーという指定情報を取り込むと共に、設定された条件を取り込むことになる。
【0046】
表示/編集用オントロジー生成部21は、条件設定部20が取り込んだ設定条件に従い、オペレータに表示出力し、その表示画面上でオペレータが編集操作するための表示/編集用オントロジー33を生成するものである。表示/編集用オントロジー生成部21は、オントロジー指定情報で指定された種類の基本オントロジー30に、条件設定部20が取り込んだ設定条件で定まる次元別オントロジー31を上書きして表示/編集用オントロジー33を生成するものである。ここで、条件設定部20が取り込んだ設定条件で定まる次元別オントロジー31が複数ある場合には、表示/編集用オントロジー生成部21は、次元優先度定義テーブル32の格納内容に従って、複数の次元別オントロジー31間での上書き順序を定めて上書きを実行する。生成される表示/編集用オントロジーは、基本オントロジーに次元別オントロジーが上書きされて構成された多次元オントロジーとなっている。表示/編集用オントロジー生成部21は、記憶されている基本オントロジー30や次元別オントロジー31のデータ形式(例えばCSV形式)から、表示画像(例えばビットマップ形式)を形成するための変換処理を適宜行う。
【0047】
生成された表示/編集用オントロジー33は、上述のように、記憶部4に記憶されると共に、出力部11によって表示出力される。
【0048】
オントロジー編集部22は、生成されて出力部11に表示出力されている表示/編集用オントロジーを、オペレータの操作に応じて編集することにより、多次元オントロジーを編集するものである。オントロジー編集部22の編集動作により、表示/編集用オントロジー(多次元オントロジー)33も適宜変化するものである。
【0049】
次元別オントロジー出力部23は、表示/編集用オントロジー(多次元オントロジー)33が出力部11に表示出力されている際に、オペレータが入力部10に対してオントロジーの保存を指示した際に、表示出力されている表示/編集用オントロジーに係る次元別オントロジー(若しくは基本オントロジー)を、記憶部4の次元別オントロジー31の格納領域(若しくは基本オントロジー30の格納領域)に出力して、新規保存又は更新保存させるものである。
【0050】
図7は、実施形態のオントロジー作成支援装置1における編集時の表示画面の概念的構成を示す説明図である。
【0051】
編集時の表示画面は、表示/編集用オントロジー(作業用の多次元オントロジー)を表示する表示/編集用オントロジー表示エリアAR1と、条件を表示する条件表示エリアAR2とを有する。表示/編集用オントロジー表示エリアAR1に表示される表示/編集用オントロジーは、条件表示エリアAR2に条件が設定されていない場合には基本オントロジーとなり、条件表示エリアAR2に条件が設定されている場合には、基本オントロジーに、その設定条件で定まる次元に係る次元別オントロジーを上書きした多次元オントロジーとなる。表示/編集用オントロジー表示エリアAR1には、表示/編集用オントロジーに加えて後述する他の情報を表示するようにしても良い。
【0052】
プロパティの値を操作したりクラスを追加入力したりするエリアとして、表示/編集用オントロジー表示エリアAR1を併用するようにしても良く、また、表示/編集用オントロジー表示エリアAR1や条件表示エリアAR2以外の表示エリアを利用するようにしても良い。
【0053】
表示/編集用オントロジーなどの表示画像の形態としては、例えば、図8に示すようなビジュアルエディタ型画像PICVや、図9に示すようなスプレットシート型画像PICSを適用できる。なお、オペレータが自己の好みに応じて、ビジュアルエディタ型画像PICV又はスプレットシート型画像PICSを選択できるようにしても良い。また、図8に示すようなビジュアルエディタ型画像PICVと、図9に示すようなスプレットシート型画像PICSとの両方を1つの画面上に並べて表示するようにしても良い。
【0054】
図8に示すビジュアルエディタ型画像PICVは、表示/編集用オントロジー表示エリアAR1や条件表示エリアAR2に加えて、データの作成/選択用エリアAR3が設けられた例を示している。表示/編集用オントロジー表示エリアAR1における表示/編集用オントロジーは、ネットワーク構造で表示される。各クラスを表す図形には、クリック毎にダイアログボックスの表示/非表示を切り替えるボタンが付与されており、そのボタンに対するクリック操作で適宜所望するダイアログボックスを表示させることができる。図8では、用語「CTO」の説明文のダイアログボックスと、用語「CTO」と同じことを表す異なる表記のダイアログボックスとが表示されている。クラスを表すノードアイコンそのものを操作した場合には、プロパティ値に係るダイアログボックスを表示することができる。ダイアログボックス内の文字列に対しては編集することができる。
【0055】
図9に示すスプレットシート型画像PICSは、表示/編集用オントロジー表示エリアAR1及び条件表示エリアAR2を有し、条件及び表示/編集用オントロジーは表形式で表示される。図9に「データ1」及び「データ2」と記述している列は、2種類のプロパティの値を示している。図9では省略しているが、図8にダイアログボックスで示したような説明文や異表記も、任意の列で表示させるようにしても良い。
【0056】
(A−3)実施形態のオントロジー作成支援装置の動作
次に、実施形態のオントロジー作成支援装置1の動作を説明する。以下では、編集の元となる表示/編集用オントロジーを表示させる際のオントロジー読出動作、及び、編集後の保存指令が発行された際の動作を順に説明する。
【0057】
図10は、表示/編集用オントロジーを表示させる際のオントロジー読出動作を示すフローチャートである。
【0058】
専用装置としてのオントロジー作成支援装置1の電源がオンされた直後や、オントロジー作成支援装置1の主たる要素であるオントロジー作成支援プログラムが起動された直後では、オントロジーの選択と条件の指定とを実行させる画像(本明細書の添付図面では図示していない)を表示させ、オペレータによって、いずれかのオントロジーが選択され、条件(条件なしを含む)が指定され、その選択及び指定の確定操作がなされると、図10に示す処理を開始する。オントロジーの選択及び条件の指定は、条件設定部20が実行する。
【0059】
例えば、各オントロジーのネットワーク構造におけるトップノードの用語(図3の例であれば「プログラム言語」)の一覧(例えば50音順やアルファベット順)を表示させて、編集に供するオントロジーを選択させる。また、図9に示すように、条件を規定する要素を併記して条件を指定させる。
【0060】
また、オントロジーの編集が開始された後においても、対象とするオントロジーが切り替えられた場合(例えば、「プログラム言語」のオントロジーから、図11(図11では条件やプロパティを省略している)に示すような「制度」のオントロジーに切り替えられた場合)や、条件が変更された場合にも、図10に示す処理を改めて開始する。なお、このような場合において、編集された後のオントロジーに対する保存動作(図13)が実行されることなく、対象とするオントロジーの切替えや、条件の変更が指示された際には、編集後のオントロジーを保存するか否かを確認した上で、図10に示す処理に移行するようにしても良く、また、後述する図13に示す保存動作を自動的に実行した後、図10に示す処理に移行するようにしても良い。
【0061】
なお、条件が変更された場合には、図10の処理を改めて開始するのではなく、その時点の表示/編集用オントロジーをそのまま、条件偏向後の表示/編集用オントロジーとして処理するようにしても良い。
【0062】
図10に示す処理を開始すると、表示/編集用オントロジー生成部21は、まず、処理対象についての基本オントロジーを、表示/編集用オントロジー33のエリアに格納した後(ステップ100)、条件が指定されたか否かを判別する(ステップ101)。
【0063】
条件が指定されていない場合には、格納されている表示/編集用オントロジー33を含めた表示画像(図8又は図9参照)を表示させて(ステップ105)、図10に示す一連の処理を終了する。
【0064】
一方、条件が指定されている場合には、表示/編集用オントロジー生成部21は、指定された条件で定まる次元の次元別オントロジーを検索することを通じて(ステップ102)、指定された条件で定まる次元の次元別オントロジーが、格納されている次元別オントロジーの中に存在するか否かを判別する(ステップ103)。
【0065】
指定された条件で定まる次元の次元別オントロジーが格納されていない場合には、格納されている表示/編集用オントロジー33(ここでは基本オントロジーと同一)を含めた表示画像を表示させて(ステップ105)、図10に示す一連の処理を終了する。
【0066】
指定された条件で定まる次元の次元別オントロジーが格納されている場合には、表示/編集用オントロジー生成部21は、該当する次元別オントロジーを、表示/編集用オントロジー33に上書きして表示/編集用オントロジー33を更新させ(ステップ104)、その後、格納されている表示/編集用オントロジー33(基本オントロジー+次元別オントロジー)を含めた表示画像を表示させて(ステップ105)、図10に示す一連の処理を終了する。
【0067】
なお、指定された条件で定まる次元の次元別オントロジーが複数存在する場合には、表示/編集用オントロジー生成部21は、次元優先度定義テーブル32の格納内容に従って、複数の次元別オントロジー31間での上書き順序を定めて上書きする。
【0068】
また、表示/編集用オントロジー生成部21は、次元別オントロジーを上書きした場合には、上書きによって基本オントロジーと異なるようになった部分を、表示画像で区別するように処理するようにしても良い。例えば、表示色を変えたり、網掛けを実行したり、点滅的な表示にしたりするようにしても良い。図12は、上書き部分を区別する表示を適用したスプレットシート型画像を示す説明図である。図示は省略するが、ビジュアルエディタ型画像についても、上書き部分を区別する表示を適用しても良い。
【0069】
オペレータは、表示された表示/編集用オントロジーに対し、所望する編集を行う。この際における表示/編集用オントロジー生成部21の処理の説明は省略する。なお、スプレットシート型画像が適用されている場合の編集処理は、スプレットシート型画像に対する既存の編集処理と同様である。また、ビジュアルエディタ型画像が適用されている場合の編集処理は、ネットワーク構造(ツリー構造)の画像に対する既存の編集処理と同様である。
【0070】
なお、編集処理において、対象とするオントロジーが切り替えられた場合や、条件が変更された場合には、上述したように、上述した図10に示す処理が改めて実行される。
【0071】
表示されている表示/編集用オントロジーに対する編集が終了したときには、オペレータは、入力部10を用いてその保存を指示する。このとき、次元別オントロジー出力部23は、図13に示す処理を開始する。なお、図13は編集後の表示/編集用オントロジーを保存させる動作を示すフローチャートである。
【0072】
次元別オントロジー出力部23は、図13に示す処理を開始すると、まず、保存が指示された表示/編集用オントロジーに対し、条件が指定されていたか否かを判別する(ステップ200)。
【0073】
条件が指定されていなければ、次元別オントロジー出力部23は、記憶部4に格納されている基本オントロジー30を、表示/編集用オントロジー33に更新した後(ステップ201)、図13に示す一連の処理を終了する。
【0074】
一方、条件が指定されていれば、次元別オントロジー出力部23は、指定された条件で定まる次元の次元別オントロジー31を検索することを通じて(ステップ202)、指定された条件で定まる次元の次元別オントロジーが、格納されている次元別オントロジー31の中に存在するか否かを判別する(ステップ203)。
【0075】
指定された条件で定まる次元の次元別オントロジーが、既に格納されている次元別オントロジー31の中のない場合には、指定された条件で定まる次元の次元別オントロジー(のファイル)を新規に作成する(ステップ204)。
【0076】
次元別オントロジー出力部23は、指定された条件で定まる次元の次元別オントロジーが既に存在する場合には直ちに、指定された条件で定まる次元の次元別オントロジーが存在していない場合には上述した新規の作成処理を行った後、基本オントロジー30と、保存が指示された表示/編集用オントロジー(多次元オントロジー)33との差分情報を得て、次元別オントロジー31をその差分情報に更新させ(ステップ205)、その後、図13に示す一連の処理を終了する。
【0077】
以上のようにして表示/編集用オントロジーを保存する場合、記述された内容をそのまま保存するようにしても良く、また、スクリプトを実行する機能を介して、データの変換を行い、変換結果を保存するようにしても良い。
【0078】
多次元オントロジーに、上述したような「説明文」や「異表記」の情報を付随させる場合において、これらの付随情報は常に基本オントロジーに付随させるものと決定しても良い。この場合、付随情報の更新時には、基本オントロジー30の付随情報をその時点で更新させるようにしても良く、また、付随情報以外の差分情報で次元別オントロジー31を更新すると共に、基本オントロジー30の付随情報も並行して更新させるようにしても良い。
【0079】
フローチャートの図示は省略するが、ある処理対象(例えば、「プログラム言語」)のオントロジーに関する基本オントロジー及び種々の多次元オントロジーを編集する場合のオペレータの操作の流れ例を説明する。
【0080】
操作を開始する前の基本オントロジー30として、プロパティの値が付与されていないもの(従来のオントロジー)が格納されていたとする。また、その処理対象の次元別オントロジー31は何ら格納されていないとする。
【0081】
まず、オペレータは、その基本オントロジー30を読み出し、基本オントロジーだけを含む表示/編集用オントロジーの表示画面に対し、各クラスにプロパティ値を付加する操作を行った後、保存を指示する。これにより、記憶部4の基本オントロジー30が更新される。
【0082】
その後、オペレータは、優先度が最も低い次元に係る条件を設定する。このとき、更新された基本オントロジー30が読み出されて表示/編集用オントロジーとして表示され、オペレータは、表示画面に対し、その条件下で適切なプロパティ値を各クラスに付加する操作を行った後、保存を指示する。これにより、記憶部4に、最下位優先度の指定条件に係る次元別オントロジー31(のファイル)が確保され、そこに、基本オントロジー30との差分情報でなる次元別オントロジー31が格納される。
【0083】
続いて、オペレータは、優先度が次に低い次元に係る条件を設定する。このとき、更新された基本オントロジー30と格納された次元別オントロジーとが合成された表示/編集用オントロジーが表示され、オペレータは、表示画面に対し、その条件下で適切なプロパティ値を各クラスに付加する操作を行った後、保存を指示する。これにより、記憶部4に、今回の優先度の指定条件に係る次元別オントロジー31(のファイル)が確保され、そこに、基本オントロジー30との差分情報でなる次元別オントロジー31が格納される。
【0084】
なお、更新された基本オントロジー30と格納された次元別オントロジーとが合成された表示/編集用オントロジーは、改めて合成処理(上書き処理)を行うことで、表示/編集用オントロジーを得るようにしても良く(この場合には図10が実行される)、また、条件が切り替えられる前の表示/編集用オントロジー(の画像)を継続させることで得るようにしても良い(この場合には図10が実行されない)。
【0085】
その後も、オペレータは、条件を変更した後、プロパティ値の付加(変更処理を含む)を行い、保存を指示することにより、異なる次元別オントロジーを次々と格納させることができる。
【0086】
また、格納済みの多次元オントロジーの更新時には、オペレータは、以下のように操作すれば良い。
【0087】
オペレータは、処理対象のオントロジーと条件とを指定する。このとき、処理対象についての基本オントロジーが読み出されて表示/編集用オントロジーとして格納され、さらに、指定条件で定まる次元別オントロジーが取り出されて、その時点の表示/編集用オントロジーに上書きされる。オペレータは、このようにして表示された表示/編集用オントロジーに対して、所望するクラスのプロパティ値の更新などを行った後、保存を指示する。このとき、更新後の表示/編集用オントロジーにおける基本オントロジーからの差分情報に、格納されている次元別オントロジーが更新される。
【0088】
(A−4)実施形態の効果
上記実施形態によれば、条件(状況や狭義の条件等)に応じて内容が変化する種々の多次元オントロジーを、表示上で多次元オントロジーでも、内部的には、条件なしの基本オントロジーと、条件指定時の差分の次元別オントロジーとに分けて、生成、更新させるようにしたので、効率良く生成、更新させることができる。
【0089】
すなわち、次元別オントロジーが差分情報でなるので、総データ量を抑えることができ、必要なメモリ容量を小さく抑えることができ、メモリのアクセスに要する時間などを抑えることができ、この点で、生成や更新を迅速に実行することができる。
【0090】
また、状況や狭義の条件等に応じて内容が変化するオントロジーを、従来のオントロジーの生成方法の延長上で実現しようとすると、そのようなオントロジーを構築できず、又は、構築できたとしても、データの構造などが複雑になり、生成や更新の効率が非常に悪いものとなる。
【0091】
(B)他の実施形態
上記実施形態の説明においても、種々変形実施形態に言及したが、さらに、以下に例示するような変形実施形態を挙げることができる。
【0092】
上記実施形態では、次元別オントロジーとして、条件の組み合わせ(例えば、職種=営業&&業種=IT)で定まる次元のもの認めたが、次元別オントロジーは1つの条件だけに関係するようにして構築しても良い。例えば、職種=営業&&業種=ITの次元別オントロジーを認めず、職種=営業の次元別オントロジーと、業種=ITの次元別オントロジーとを生成するようにしても良い。
【0093】
また、上記実施形態では、表示/編集用オントロジーを保存する場合、基本オントロジーとの差分を、条件で定まる次元別オントロジーに保存するものを示したが、保存する次元別オントロジーを以下のように決定するようにしても良い。例えば、複数の次元別オントロジーから生成された表示/編集用オントロジーの編集されたものを保存する場合、基本オントロジーとの差分を一番優先度の高い次元別オントロジーに保存するようにしても良く、また、複数の次元別オントロジーの条件を全て含む次元別オントロジー(の種類)を新規に作成してその次元別オントロジーに差分情報を保存するようにしても良い。
【0094】
上記実施形態では、次元別オントロジーのマージ機能を持たないものを示したが、マージ機能を設けるようにしても良い。例えば、表示/編集用オントロジーを保存する場合、更新された次元別オントロジーと、他の次元別オントロジーとの類似度(例えばプロパティ値の差分二乗和)を演算し、類似度が所定の閾値を超えている場合には、1つの多次元オントロジーにまとめるようにしても良い。この場合、例えば、各クラスのプロパティ値として平均値を適用し、次元(条件の組み合わせ)として、マージ前の次元別オントロジーの各次元のいずれが指定されても良いように記述すれば良い。
【0095】
上記実施形態では、表示/編集用オントロジーは処理対象と1対1であるものを示したが、表示/編集用オントロジーの保存処理に際に、複数の処理対象に分けて、保存させるようにしても良い。例えば、図11に示すような「制度」の多次元オントロジーを、「休日制度」、「住居」、「各種手当て」に分けて保存させるようにしても良い。このような分割を、基本オントロジーの保存時にのみ認めるようにしても良い。また、このような分割は、オペレータの指示に従って行っても良く、自動的に行うようにしても良い。後者の場合であれば、トップノードの次に位置する複数のノードをトップノードとして見た場合の下位層全体のノード数と、閾値との比較により分割を行うか否かを決定するようにしても良い。
【0096】
逆に、複数のオントロジーファイルの内容を、クラス名などをキーにマージして、一つの表示/編集用オントロジーを生成するようにしても良い。
【0097】
表示/編集用オントロジーを表示させる際には、参考となる情報(例えば、直前の更新時刻や今までの更新回数など)を表示させるようにしても良い。その際、参照表示エリアは、編集不可であることを示す表示方法(文字の色を変えるなど)を採用したり、ロックをかけて編集不能にする機能を持たせるようにしても良い。
【0098】
表示/編集用オントロジーを保存する場合には、エラーチェック(形式チェックや重複登録のチェックなど)を実行し、不適切なデータを検出するようにしても良い。
【0099】
また、次元別オントロジー作成後に、基本オントロジーの情報が更新された場合において、その後に次元別オントロジーを編集させるときには、表示/編集用オントロジーの該当箇所(基本オントロジーで更新された部分)をオペレータが認識できるように表示しても良い。例えば、更新部分の色を変えたり、別ウインドウで更新前の情報を表示したりするようにする。例えば、基本オントロジーについては、最新の情報とその直前の情報(これについては差分情報で良い)とを記憶すると共に、保存時刻を付与しておき、次元別オントロジーも保存時刻を付与しておくことにより、上記の処理を行うことができる。
【0100】
上記説明では、条件によって、プロパティの値が変化する多次元オントロジーを説明したが、条件によって変化する内容はプロパティの値に限定されるものではない。例えば、内容によって、クラスが増減するものであっても良い。
【0101】
また、多次元オントロジーに係る言語も、日本語に限定されず、英語、中国語などの他の言語に広く適用することもできる。
【0102】
実施形態のオントロジー作成支援装置で生成される多次元オントロジーの用途は、ラダリング型検索サービスに限定されるものではなく、多次元オントロジーは、オントロジーを利用する種々の処理サービスに適用することができる。
【0103】
実施形態のオントロジー作成支援装置は物理的に1台の装置で構成されている必要はなく、複数台の装置(例えばコンピュータ)に分かれて構成されたものであっても良い。
【符号の説明】
【0104】
1…オントロジー作成支援装置、20…条件設定部、21…表示/編集用オントロジー生成部、22…オントロジー編集部、23…次元別オントロジー出力部、30…基本オントロジー、31…次元別オントロジー、32…次元優先度定義テーブル、33…表示/編集用オントロジー。

【特許請求の範囲】
【請求項1】
条件なしを含めて条件の組み合わせという次元によって、内容が変化する、同一の概念体系に係る1又は複数の多次元オントロジーの作成、更新を支援するオントロジー作成支援装置であって、
条件なし時の多次元オントロジーである基本オントロジーを格納している基本オントロジー格納手段と、
条件が存在するときの多次元オントロジーと、基本オントロジーとの差分情報である次元別オントロジーを格納している次元別オントロジー格納手段と、
条件の組み合わせをオペレータに指定させる条件設定手段と、
指定された条件の組み合わせに従い、上記基本オントロジー格納手段及び上記次元別オントロジー格納手段から基本オントロジー及び次元別オントロジーを取り出して合成し、表示/編集用オントロジーを生成する表示/編集用オントロジー生成手段と、
オペレータの操作に応じて、表示/編集用オントロジーを操作するオントロジー編集手段と、
オペレータからの出力指令に応じ、その時点での表示/編集用オントロジーを、新たな基本オントロジーとして、又は、その時点での表示/編集用オントロジーの基本オントロジーからの差分情報を、指定された条件の組み合わせに応じた次元別オントロジーとして出力する次元別オントロジー出力手段と
を備えることを特徴とするオントロジー作成支援装置。
【請求項2】
条件なしを含めて条件の組み合わせという次元によって、内容が変化する、同一の概念体系に係る1又は複数の多次元オントロジーの作成、更新を支援するオントロジー作成支援プログラムであって、
コンピュータを、
条件なし時の多次元オントロジーである基本オントロジーを格納している基本オントロジー格納手段と、
条件が存在するときの多次元オントロジーと、基本オントロジーとの差分情報である次元別オントロジーを格納している次元別オントロジー格納手段と、
条件の組み合わせをオペレータに指定させる条件設定手段と、
指定された条件の組み合わせに従い、上記基本オントロジー格納手段及び上記次元別オントロジー格納手段から基本オントロジー及び次元別オントロジーを取り出して合成し、表示/編集用オントロジーを生成する表示/編集用オントロジー生成手段と、
オペレータの操作に応じて、表示/編集用オントロジーを操作するオントロジー編集手段と、
オペレータからの出力指令に応じ、その時点での表示/編集用オントロジーを、新たな基本オントロジーとして、又は、その時点での表示/編集用オントロジーの基本オントロジーからの差分情報を、指定された条件の組み合わせに応じた次元別オントロジーとして出力する次元別オントロジー出力手段と
して機能させることを特徴とするオントロジー作成支援プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2010−262342(P2010−262342A)
【公開日】平成22年11月18日(2010.11.18)
【国際特許分類】
【出願番号】特願2009−110636(P2009−110636)
【出願日】平成21年4月30日(2009.4.30)
【国等の委託研究の成果に係る記載事項】(出願人による申告)国等の委託研究の成果に係る特許出願(平成20年度経済産業省情報大航海プロジェクト「モデルサービスの開発と実証」委託研究、産業技術力強化法第19条の適用を受けるもの)
【出願人】(000000295)沖電気工業株式会社 (6,645)
【出願人】(000139012)株式会社リクルート (20)
【Fターム(参考)】