オントロジを用いたコンテンツ検索システムおよび方法
【課題】オントロジを用いたコンテンツ検索方法およびシステムを開示する。
【解決手段】オントロジを用いたコンテンツ検索システムは、オントロジを介して検索クエリから抽出したキーワードとこのキーワードに対応するオントロジ概念とをマッピングするキーワードマッピング部と、マッピングされたオントロジ概念を用いてオントロジからクエリグラフを決定するクエリグラフ決定部と、決定されたクエリグラフから検索クエリの検索結果に対応する出力ノードを決定する出力ノード決定部とを備える。
【解決手段】オントロジを用いたコンテンツ検索システムは、オントロジを介して検索クエリから抽出したキーワードとこのキーワードに対応するオントロジ概念とをマッピングするキーワードマッピング部と、マッピングされたオントロジ概念を用いてオントロジからクエリグラフを決定するクエリグラフ決定部と、決定されたクエリグラフから検索クエリの検索結果に対応する出力ノードを決定する出力ノード決定部とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オントロジを用いたコンテンツ検索システムおよび方法に関し、より詳細には、不完全なユーザの検索クエリの意図を、オントロジを介して正確に把握し、クエリの意図に適したコンテンツを提供するための、オントロジを用いたコンテンツ検索システムおよび方法に関する。
【背景技術】
【0002】
インターネット検索技術の発展に伴い、ユーザの検索クエリに対して正確な検索結果を提供することが重要な問題として浮上している。インターネット検索を行うユーザごとに検索能力に差があり、実際に入力する検索クエリが多様であるため、検索エンジンはユーザのクエリの意図を正確に把握してユーザが所望する検索結果を提供することが必要である。
【0003】
特に、検索時の検索クエリに必要な情報が抜けている場合、検索エンジンがユーザの検索の意図を把握することが何よりも重要となる。
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、検索エンジンの場合、人間ではなく機械であるために、不完全なユーザの検索クエリからユーザの検索の意図を把握することは困難である。
【0005】
例えば、ユーザが「アメリカ、アクション」と入力する場合、実際のユーザの検索の意図はアメリカ映画のうちでアクションジャンルに該当する映画を検索することであると仮定しよう。しかしながら、検索エンジンは、単にデータベースに含まれた文書のうちから「アメリカ」と「アクション」が共通に含まれる文書を検索結果として提供するため、「アメリカの経済状況に対して大統領が次のようなアクションを取った」という内容の文書のように、ユーザの検索の意図とは全く関係のない検索結果を提供するという問題点が発生している。
【0006】
結局、不完全かつ検索に必要な情報が抜けている検索クエリが入力されたとしても、ユーザの検索の意図に合った検索結果を提供する方法が必要となる。すなわち、定型化された人間の知識によって推論することができる能力を、機械である検索エンジンに付与する構成が必要である。
【課題を解決するための手段】
【0007】
本発明の一実施形態として、ユーザの検索クエリを構成するキーワードをオントロジ概念にマッピングし、マッピングされたオントロジ概念を介してオントロジ上でクエリグラフを決定することによって不完全なユーザの検索クエリを補完する、オントロジを用いたコンテンツ検索システムおよび方法を提供する。
【0008】
また、本発明の一実施形態として、キーワード−概念マッピングテーブルを介してキーワードとオントロジ概念とをマッピングすることにより、より迅速にクエリグラフを生成することができるコンテンツ検索システムおよび方法を提供する。
【0009】
また、本発明の一実施形態として、ノード間の最大距離または実際にデータが知識ベースに存在するか否かを考慮してクエリグラフを生成することにより、不必要なクエリグラフを生成するための資源消耗を節約することができるコンテンツ検索システムおよび方法を提供する。
【0010】
さらに、本発明の一実施形態として、生成されたクエリグラフのうちで検索クエリとの適合度によって整列してクエリグラフを決定することにより、オントロジを介して把握したユーザの検索の意図をより正確に推定することができる、オントロジを用いたコンテンツ検索システムおよび方法を提供する。
【0011】
本発明の一実施形態に係るコンテンツ検索システムは、オントロジを介して検索クエリから抽出したキーワードと前記キーワードに対応するオントロジ概念とをマッピングするキーワードマッピング部と、前記マッピングされたオントロジ概念を用いて前記オントロジからクエリグラフを決定するクエリグラフ決定部と、前記決定されたクエリグラフから前記検索クエリの検索結果に対応する出力ノードを決定する出力ノード決定部とを備えることができる。
【0012】
本発明の一側面によれば、前記クエリグラフ決定部は、前記オントロジから前記マッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成し、前記生成されたクエリグラフを整列して前記少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出することができる。
【0013】
本発明の一実施形態に係るコンテンツ検索システムは、出力ノードに対応する検索クエリの検索結果を提供する検索結果提供部をさらに備えることができる。
【0014】
本発明の一実施形態に係るコンテンツ検索方法は、オントロジを介して検索クエリから抽出したキーワードと前記キーワードに対応するオントロジ概念とをマッピングするステップと、前記マッピングされたオントロジ概念を用いて前記オントロジからクエリグラフを決定するステップと、前記決定されたクエリグラフから前記検索クエリの検索結果に対応する出力ノードを決定するステップとを含むことができる。
【0015】
本発明の一側面によれば、前記オントロジからクエリグラフを決定するステップは、前記オントロジから前記マッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成するステップと、前記生成されたクエリグラフを整列して前記少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出するステップとを含むことができる。
【0016】
本発明の一実施形態に係るコンテンツ検索方法は、前記出力ノードに対応する検索クエリの検索結果を提供するステップをさらに含むことができる。
【発明の効果】
【0017】
本発明の一実施形態によれば、ユーザの検索クエリを構成するキーワードをオントロジ概念にマッピングし、マッピングされたオントロジ概念を介してオントロジ上でクエリグラフを決定することによって不完全なユーザの検索クエリを補完する、オントロジを用いたコンテンツ検索システムおよび方法が提供される。
【0018】
また、本発明の一実施形態によれば、キーワード−概念マッピングテーブルを介してキーワードとオントロジ概念とをマッピングすることにより、より迅速にクエリグラフを生成することができるコンテンツ検索システムおよび方法が提供される。
【0019】
また、本発明の一実施形態によれば、クエリグラフの任意の2つのノード間の距離の最大値に関する条件および/または実際にデータが知識ベースに存在するか否かを考慮してクエリグラフを生成することにより、不必要なクエリグラフを生成するための資源の消耗を節約することができるコンテンツ検索システムおよび方法が提供される。
【0020】
さらに、本発明の一実施形態によれば、生成されたクエリグラフのうちで検索クエリとの適合度によって整列してクエリグラフを決定することにより、オントロジを介して把握したユーザの検索の意図をより正確に推定することができる、オントロジを用いたコンテンツ検索システムおよび方法が提供される。
【図面の簡単な説明】
【0021】
【図1】本発明の一実施形態に係るオントロジを用いて検索クエリに対する検索結果を提供する過程を説明するための図である。
【図2】本発明の一実施形態に係るコンテンツ検索システムの全体構成を示すブロック図である。
【図3】本発明の一実施形態に係るオントロジと知識ベースとの関係を説明するための図である。
【図4】本発明の一実施形態によってキーワード−概念マッピングテーブルを介してキーワードとオントロジ概念とをマッピングする過程を説明するための図である。
【図5】本発明の一実施形態に係るキーワード−概念マッピングテーブルの一例を示す図である。
【図6】本発明の一実施形態によってキーワード−概念マッピングテーブルを介してキーワードとマッピングされるオントロジ概念の組み合わせを説明するための図である。
【図7】本発明の一実施形態によって図6のオントロジ概念の組み合わせ1から決定されたクエリグラフ1−1を示す図である。
【図8】本発明の一実施形態によって図6のオントロジ概念の組み合わせ1から決定されたクエリグラフ1−2を示す図である。
【図9】本発明の一実施形態によって図6のオントロジ概念の組み合わせ2から決定されたクエリグラフ2−1を示す図である。
【図10】発明の一実施形態によって図6のオントロジ概念の組み合わせ2から決定されたクエリグラフ2−2を示す図である。
【図11】本発明の一実施形態によって決定されたクエリグラフをデータ形態に置換した結果を示す図である。
【図12】本発明の一実施形態によって出力ノード決定規則を介してクエリグラフで出力ノードを決定する過程を説明するための図である。
【図13】本発明の一実施形態によって出力ノード決定規則を説明するための一例を示す図である。
【図14】本発明の一実施形態に係るコンテンツ検索方法の全体過程を示すフローチャートである。
【発明を実施するための形態】
【0022】
以下、添付の図面に記載された内容を参照しながら、本発明に係る実施形態を詳細に説明する。ただし、本発明が実施形態によって制限または限定されることはない。各図面に提示された同じ参照符号は同じ部材を示す。
【0023】
図1は、本発明の一実施形態に係るオントロジを用いて検索クエリに対する検索結果を提供する過程を説明するための図である。
【0024】
図1を参照すれば、ユーザは、検索クエリ103を入力することができる。このとき、検索クエリ103は、少なくとも1つのキーワードで構成されてもよい。本発明の一実施形態に係るコンテンツ検索システムは、ユーザが入力した検索クエリ103に対して検索結果105を提供することができる。ここで、検索クエリ103は、不完全な形態である場合がある。このような場合には、例えば、検索クエリ103が「A、B」というキーワードを含む場合、ユーザの検索の意図がA、Bを同時に含むコンテンツを検索することであるか、またはAおよびBに互いに関連する別のコンテンツを検索することであるかを把握することが重要となる。すなわち、ユーザの検索クエリ103は、重要な部分が省略されたキーワードで構成されることがあるため、このような場合にはユーザの検索の意図を正確に把握するための情報が不足している場合がある。
【0025】
この場合、本発明の一実施形態に係るコンテンツ検索システムは、情報モデル100を用いて不完全なユーザの検索クエリ103を補完することができる。すなわち、コンテンツ検索システムは、不完全なユーザの検索クエリ103を、情報モデル100を介して補完することにより、ユーザの検索の意図に最大限適した検索結果を提供することができる。
【0026】
図1に示すように、情報モデル100は、オントロジ101と知識ベース102とで構成することができる。オントロジ101はクラスの属性とクラス間の関係とを表現するスキーマ(schema)領域を意味し、知識ベース102は実際にデータを表現するデータ領域を意味することができる。
【0027】
一例として、オントロジ101は、グローバルオントロジ(global ontology)、音楽オントロジ、映画オントロジ、および人物オントロジなどのドメインオントロジ(domain ontology)に分類することができる。ここで、ドメインオントロジとは、特定のドメインに適したドメイン知識を含むオントロジ101を意味する。このとき、ドメイン知識は、ドメインオントロジに含まれたオントロジ概念のノードに対応させることができる。ドメインオントロジは、他のドメインオントロジと概念を介して連結することができる。
【0028】
コンテンツ検索システムは、検索クエリ103から抽出したキーワードをキーワード−概念マッピングテーブル104を介してオントロジ101に存在するオントロジ概念にマッピングさせることができる。さらに、コンテンツ検索システムは、オントロジ概念を介してユーザの検索の意図を反映したクエリグラフを決定し、クエリグラフから出力ノードを抽出することができる。最終的に、コンテンツ検索システムは、出力ノードに対応する検索結果105をユーザに提供することができる。
【0029】
図2は、本発明の一実施形態に係るコンテンツ検索システムの全体構成を示すブロック図である。
【0030】
図2を参照すれば、コンテンツ検索システム200は、キーワードマッピング部201と、クエリグラフ決定部202と、出力ノード決定部203と備えることができる。追加して、コンテンツ検索システム200は、検索結果提供部204を備えることができる。
【0031】
キーワードマッピング部201は、オントロジ207を介して検索クエリ205から抽出したキーワードとキーワードに対応するオントロジ概念とをマッピングすることができる。ここで、オントロジ207は、方向性を持つグラフ(有向グラフ)構造を有していてもよい。さらに、オントロジ207は、検索クエリ205から抽出したキーワードとマッピングするための複数のノードおよびエッジで構成されてもよい。このとき、オントロジ207に存在するノードとエッジとのそれぞれをオントロジ概念(Ontology Concept)で定義してもよく、エッジはノードの属性であってもよい。論理的なモデルであるオントロジ207において、ノード−エッジ−ノードが1つのRDFトリプル(Resource Description Framework Triple)に変換されてもよい。
【0032】
さらに、オントロジ207は、実際にデータを表現する知識ベース208と連結することができる。知識ベース208も方向性を持つグラフ構造を有していてもよく、知識ベース208のノードおよびエッジを含む知識ベース概念で構成されてもよい。本発明の一実施形態によれば、オントロジ207のノードとエッジはオントロジ概念で定義され、知識ベース208のノードとエッジとは知識ベース概念で定義することができる。
【0033】
オントロジ207の有する方向性を持つグラフ構造および知識ベース208の有する方向性を持つグラフ構造は、例えば、コンピュータの記憶装置に存在する所定の領域をノードに対応付けることができる。この場合、コンピュータの記憶装置に第1の領域と第2の領域が存在する場合、第1の領域に第2の領域のアドレスを格納することにより、第1の領域に対応付けられるノードから、第2の領域に対応付けられるノードへのエッジを表現することができる。
【0034】
あるいは、ノードおよびエッジにコンピュータの記憶装置に存在する所定の領域をそれぞれ対応付けることもできる。この場合、第1のノード−エッジ−第2のノードという構造は、エッジに対応付けられる領域に、第1のノードに対応付けられる領域のアドレスおよび第2のノードに対応付けられる領域のアドレスを格納することにより表現することができる。また、第1のノードに対応付けられる領域に、エッジに対応付けられる領域のアドレスを格納し、さらに、エッジに対応付けられる領域に、第2のノードに対応付けられる領域のアドレスを格納することにより表現するようにしてもよい。
【0035】
キーワードマッピング部201は、キーワード−概念マッピングテーブル206を用いてキーワードとオントロジ概念とをマッピングすることができる。キーワード−概念マッピングテーブル206は、コンピュータの記憶装置に格納して表現することができる。一例として、キーワードマッピング部201は、キーワード−概念マッピングテーブル206を用いて検索クエリ205から抽出したキーワードに対応するオントロジ概念を検索し、生成可能なオントロジ概念の組み合わせを抽出することができる。このとき、キーワード−概念マッピングテーブル206は、1つのキーワードに対応する複数のオントロジ概念を含んでもよい。
【0036】
例えば、キーワードが「怪物」である場合、キーワードに対応するオントロジ概念が「映画」または「別名」であることがある。一例として、キーワード−概念マッピングテーブル206は、オントロジ207および知識ベース208の自然語表現であるキーワードをオントロジ概念にマッピングして記録する索引データ構造であってもよい。キーワード−概念マッピングテーブル206については、図5と図6を参照しながら具体的に説明する。
【0037】
クエリグラフ決定部202は、マッピングされたオントロジ概念を用いてオントロジからクエリグラフを決定することができる。一例として、クエリグラフ決定部202は、オントロジ207からマッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成することができる。このとき、1つのキーワード−オントロジ概念の組み合わせに対して複数のクエリグラフが生成されてもよい。
【0038】
クエリグラフは、オントロジ207の有する方向性を持つグラフ構造および知識ベース208の有する方向性を持つグラフ構造と同様にコンピュータの記憶装置の領域とアドレスとを用いて表現することができる。また、クエリグラフは、オントロジ207の有するグラフ構造のうち、キーワードがマッピングされるオントロジ概念を含むサブグラフの構造をコンピュータの記憶装置にコピーすることで作成することができる。
【0039】
一例として、クエリグラフ決定部202は、生成されるクエリグラフにおいて、オントロジ概念に対応するノード間の最大距離が所定の条件が満たされるように生成されてもよい。ここに、第1概念ノードと第2概念ノードとの間の最大距離とは、第1概念ノードと第2概念ノードとを連結する経路上に存在するノードの個数として定義される。また、第1概念ノードと第2概念ノードとを連結する経路が複数存在する場合には、経路上に存在するノードの個数を経路毎に求め、その最大値として定義することができる。また、ノードには、重みを設定することができ、第1概念ノードと第2概念ノードとを連結する経路上に存在するノードの重みの総和を、第1概念ノードと第2概念ノードとの間の距離とすることもできる。この場合、全てのノードの重みを1とすれば、重みの総和とノードの個数とは一致する。例えば、ノード1とノード2とを連結する経路にノード3とノード4が存在する場合、ノード3の重みが2であり、ノード4の重みが1であれば、ノード間の距離は2+1=3となる本発明の一実施形態によれば、クエリグラフ決定部202は、クエリグラフの任意の2つのノード間の距離の最大値に条件を課し、ノードかの距離が大きい値を有するクエリグラフを除くことにより、複数のクエリグラフが生成されることを防ぐことができる。
【0040】
他の一例として、クエリグラフ決定部202は、実際にデータが知識ベース208に存在するノードとエッジとを用いてクエリグラフを生成することができる。すなわち、特定のクエリグラフのノードに対するデータが実際に知識ベース208に存在しなければ、クエリグラフを生成する必要がないためである。
【0041】
さらに、クエリグラフ決定部202は、生成されたクエリグラフを整列して少なくとも1つのクエリグラフのうちから検索クエリ205に適したクエリグラフを抽出することができる。このとき、クエリグラフ決定部202は、生成された少なくとも1つのクエリグラフを検索クエリ205との適合度によって整列して検索クエリ205に適したクエリグラフを抽出することができる。ここで、クエリグラフ決定部202は、少なくとも1つのクエリグラフのうちでオントロジ概念に対応するノードとエッジとの間の距離が相対的に近いクエリグラフを優先して抽出することができる。あるいは、適合度は、クエリグラフの大きさとしてもよい。ここにクエリグラフの大きさとは、クエリグラフの任意の2つのノード間の距離の最大値を用いて定義される。例えば、グラフの大きさが小さいクエリグラフほど、大きな適合度を有するとしてもよい。
【0042】
このような過程により、コンテンツ検索システム200は、不完全なユーザの検索クエリを、オントロジ概念を用いたクエリグラフを用いて補完することにより、ユーザの検索の意図を把握することができる。
【0043】
出力ノード決定部203は、決定されたクエリグラフから検索クエリの検索結果に対応する出力ノードを決定することができる。一例として、出力ノード決定部203は、クエリグラフから出力ノード決定規則に従って経路検査を繰り返し実行して出力ノードを決定することができる。
【0044】
このとき、出力ノード決定部203は、クエリグラフから主語(subject)、述語(property)、および目的語(object)で構成された単一グループを抽出し、単一グループのうちで目的語を予め認識しているか否かによって主語または述語のうちのいずれか1つのノードを決定することができる。さらに、出力ノード決定部203は、決定されたノードが他の単一グループの主語となるか否かを考慮してノードを出力ノードとして決定することができる。ここで、単一グループは、オントロジ上のトリプルとして定義することができる。
【0045】
検索結果提供部204は、出力ノードに対応する検索クエリの検索結果を提供することができる。一例として、検索結果提供部204は、CPC(Click per Cost)、CTR(Click Through Ratio)、品質指数(Quality Index)、またはランダム方式のうちのいずれか1つの基準または組み合わせた基準によって検索結果を整列して提供することができる。
【0046】
図3は、本発明の一実施形態に係るオントロジと知識ベースとの関係を説明するための図である。
【0047】
図3を参照すれば、オントロジ301と知識ベース302は方向性を持つグラフ構造であることがわかる。オントロジ301は映画ドメインの一部知識を表現したものである。
【0048】
オントロジ301において、「Actor(俳優)、Movie(映画)、Director(監督)」はクラスを表わしているとすることができる。このとき、クラスは共通した属性を有するインスタンスの集合を表現する意味であり、オントロジ301において1つのノードに対応することができる。「Actor」と「Movie」とは「hasMovie」という関係にある。このとき、「hasMovie」は、オントロジ301において1つのエッジに対応させることができる。オントロジ301において、ノードおよびエッジそれぞれはオントロジ概念で定義することができる。
【0049】
さらに、オントロジ301の「Actor」に連結した知識ベース302の「actor_1273」は、チョン・ジフンという固有の名前を持つ俳優(またはピという別名を持つ俳優)を特定するIDを意味することができる。このとき、「actor_1273」はクラス「Actor」のインスタンスであることを示し、クラスに対する実際のデータを意味する。同様に、オントロジ301の「Director」に連結した知識ベース302の「director_5738」は、パク・チャノクという固有の名前を持つ監督を特定するIDを意味することができる。
【0050】
「actor_1273」と「movie_9842」は知識ベース302において1つのノードに対応させることができ、「actor_1273」と「movie_9842」の関係を示す「hasMovie」は1つのエッジに対応させることができる。知識ベース302において、ノードおよびエッジそれぞれは知識ベース概念で定義することができる。
【0051】
オントロジ301と知識ベース302のグラフ構造は論理的なモデルであり、実際に保存される場合にはRDFトリプル形態に変換されて保存されてもよい。このとき、グラフのノード−エッジ−ノードを1つのRDFトリプルに変換することができる。
【0052】
図4は、本発明の一実施形態によってキーワード−概念マッピングテーブルを介してキーワードとオントロジ概念とをマッピングする過程を説明するための図である。
【0053】
図4を参照すれば、キーワード−概念マッピングテーブル401、オントロジ402、および知識ベース403が示されている。
【0054】
ユーザから少なくとも1つのキーワードで構成された検索クエリ404が入力されると、コンテンツ検索システムは、検索クエリ404を構文解析(parsing)してキーワードを抽出することができる。コンテンツ検索システムは、抽出したキーワードとオントロジ402のオントロジ概念とを互いにマッピングさせることができる。一例として、コンテンツ検索システムは、キーワード−概念マッピングテーブル401を用いてキーワードとオントロジ概念とをマッピングさせることができる。
【0055】
キーワード−概念マッピングテーブル401は、オントロジ402および知識ベース403の自然語表現であるキーワードをオントロジ概念とマッピングして記録された索引データ構造であってもよい。図4に示すキーワード−概念マッピングテーブル401を参照すれば、「ピ」というキーワードは「Actor−hasOtherName」というオントロジ概念にマッピングすることができる。また、「イム・スジョン」というキーワードは「Actor−hasName」というオントロジ概念にマッピングすることができ、「映画」というキーワードは「O::Movie」というオントロジ概念にマッピングすることができる。ここで、「ピ」と「イム・スジョン」というキーワードは、データタイプ(クラス−属性)のオントロジ概念にマッピングすることができる。さらに、「映画」というキーワードはそれ自体でクラスを意味するため、クラス(Movie)のオントロジ概念にマッピングすることができる。ただし、データタイプと区分するために、クラス名の前にO::を付加してもよい。
【0056】
このとき、オントロジ402に示すグラフ構造は、キーワードとマッピングされたオントロジ概念の組み合わせを介して生成されたものである。1つのオントロジ概念の組み合わせに対して複数のグラフ構造が導出されてもよい。
【0057】
図5は、本発明の一実施形態に係るキーワード−概念マッピングテーブルの一例を示す図である。
【0058】
図5のキーワード−概念マッピングテーブルにおいて、キーワードは、オントロジおよび知識ベースの自然語表現を意味する。さらに、オントロジ概念は、オントロジにおいてキーワードに対応するノードまたは属性を意味することができる。
【0059】
オントロジ概念の場合、自然語表現をラベル(label)形態で設定することができる。例えば、図3に示すように、「Movie」クラスには「映画」というラベルが設定されてもよく、「Actor」クラスには「俳優」または「映画俳優」というラベルが設定されてもよい。また、「Actor」クラスの「hasMovie」という属性には「出演映画」または「出演」というラベルが設定されてもよい。設定されたラベルは、キーワード−概念マッピングテーブルから索引することができる。
【0060】
さらに、特定のキーワードに対して複数のオントロジ概念が存在してもよい。図5を参照すれば、ドメインが映画であるオントロジにおいて、「名前」というキーワードは、映画俳優の名前となることもあるし、または映画監督の名前となることもある。したがって、「名前」というキーワードは、オントロジ概念が「O::Actor−hasName」または「O::Director−hasName」とすることができる。
【0061】
このようなキーワード−概念マッピングテーブルを介し、検索クエリから抽出されたキーワードをより迅速にオントロジ上のオントロジ概念とマッピングすることができる。
【0062】
図6は、本発明の一実施形態によってキーワード−概念マッピングテーブルを介してキーワードとマッピングするオントロジ概念の組み合わせを説明するための図である。
【0063】
図6を参照すれば、検索クエリ601が「ピ、イム・スジョン、映画」というキーワードで構成されると仮定する。コンテンツ検索システムは、検索クエリ601を構文解析して少なくとも1つのキーワードを抽出することができる。コンテンツ検索システムは、検索クエリの分かち書きを考慮して検索クエリを構文解析することができる。一例として、コンテンツ検索システムは、キーワード−概念マッピングテーブル602を考慮して検索クエリを構文解析することができる。
【0064】
例えば、検索クエリが「サイボーグでも大丈夫」である場合、コンテンツ検索システムは、キーワード−概念マッピングテーブルに存在しない「サイボーグでも」と「大丈夫」に分離してキーワードを抽出することはできず、「サイボーグでも大丈夫」という1つのキーワードとして抽出することができる。
【0065】
また、分離することができるキーワードが結合して検索クエリを構成する場合(例えば、日本映画)、コンテンツ検索システムは、キーワードを分離して構文解析することができる。また、外国語を音訳した場合、コンテンツ検索システムは、多様な音訳表記を考慮してキーワードを抽出することができる。さらに、コンテンツ検索システムは、抽出したキーワードに対する同義語、類似語、関連語に対するキーワード−概念マッピングテーブルを構築することもできる。
【0066】
このように抽出されたキーワードは、キーワード−概念マッピングテーブル602を介してオントロジ概念とマッピングすることができる。検索クエリ601から抽出されたキーワードをオントロジ概念にマッピングした概念マッピング結果603を、図6に示す。
【0067】
仮に、「ピ」というキーワードが俳優の別名であるかまたは映画の題目である場合、「ピ」というキーワードは、オントロジ概念(Actor−hasOtherName)と(Movie−ofTitle)にマッピングすることができる。このため、概念マッピング結果603も組み合わせ1と組み合わせ2とに区分して決定することができ、この後に概念マッピング結果603の組み合わせによってクエリグラフを生成することができる。コンテンツ検索システムは、オントロジのドメイン知識を用いて、マッピングされたオントロジ概念の組み合わせのうちからユーザの検索の意図と最も関連がある組み合わせを推定することができる。
【0068】
図7ないし図10は、図6に示すオントロジ概念の組み合わせから生成可能なクエリグラフの一例を示している。特定条件が設定されれば、図7ないし図10に示すクエリグラフは生成されない場合もある。例えば、特定条件は、クエリグラフから任意に選んだ2つのノード間の最大距離に関する条件であってもよい。また、実際にデータが知識ベース内に存在するか否かであってもよい。
【0069】
コンテンツ検索システムは、マッピングされたオントロジ概念を用いてオントロジからクエリグラフを決定することができる。このとき、コンテンツ検索システムは、オントロジからマッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成することができる。
【0070】
一例として、コンテンツ検索システムは、オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することができる。所定の条件としては、最大距離が所定の値以下であるという条件を挙げることができる。また、所定の値は、例えば、コンテンツ検索システムのメモリに読出し可能に記憶されている値であったり、検索時に利用者より与えられ、メモリに一時的に記憶される値であったりする。さらに、コンテンツ検索システムは、実際にデータが知識ベース内に存在するクエリグラフを生成することができる。
【0071】
図7は、本発明の一実施形態によって図6のオントロジ概念の組み合わせ1から決定されたクエリグラフ1−1を示す図である。
【0072】
図6の結果を参照すれば、図7は、検索クエリ701を構成するキーワード「ピ」、「イム・スジョン」、「映画」に対し、オントロジ概念がキーワード−概念マッピングテーブル702を介してそれぞれ「Actor−hasOtherName」、「Actor−hasName」、および「O::Movie」にマッピングされた組み合わせ1に関するクエリグラフ1−1を生成する過程を示している。すなわち、マッピングされたオントロジ概念を介し、ピは俳優の別名を、イム・スジョンは俳優の名前を、映画は映画それ自体を意味することができる。
【0073】
図7に示すように、オントロジ703のオントロジ概念を用いてオントロジ概念の組み合わせ1に対するクエリグラフ1−1が生成されたことがわかる。図7のクエリグラフを介し、ユーザの検索の意図は、別名がピであり名前がイム・スジョンである俳優が出演した映画を検索することであると解釈することができる。
【0074】
仮に、別名がピであり名前がイム・スジョンである俳優が存在しなければ、図7のクエリグラフは意味のない場合がある。意味のないクエリグラフは、最終的にユーザの検索クエリに適したクエリグラフを決定するときに排除されてもよい。
【0075】
図8は、本発明の一実施形態によって図6のオントロジ概念の組み合わせ1から決定されたクエリグラフ1−2を示す図である。
【0076】
図6の結果を参照すれば、図8は、検索クエリ801を構成するキーワード「ピ」、「イム・スジョン」、「映画」に対し、オントロジ概念がキーワード−概念マッピングテーブル802を介してそれぞれ「Actor−hasOtherName」、「Actor−hasName」、および「O::Movie」にマッピングされた組み合わせ1に関するクエリグラフ1−2を生成する過程を示している。すなわち、マッピングされたオントロジ概念を介し、ピは俳優の別名を、イム・スジョンは俳優の名前を、映画は映画それ自体を意味することができる。
【0077】
図8に示すように、オントロジ803のオントロジ概念を用いてオントロジ概念の組み合わせ1に対するクエリグラフ1−2が生成されたことがわかる。図8のクエリグラフを介し、ユーザの検索の意図は、別名がピである俳優と名前がイム・スジョンである俳優が出演した映画を検索することであると解釈することができる。
【0078】
図9は、本発明の一実施形態によって図6のオントロジ概念の組み合わせ2から決定されたクエリグラフ2−1を示す図である。
【0079】
図6の結果を参照すれば、図9は、検索クエリ901を構成するキーワード「ピ」、「イム・スジョン」、「映画」に対し、オントロジ概念がキーワード−概念マッピングテーブル902を介してそれぞれ「Movie−ofTitle」、「Actor−hasName」、および「O::Movie」にマッピングされた組み合わせ2に関するクエリグラフ2−1を生成する過程を示している。すなわち、マッピングされたオントロジ概念を介し、ピは映画の題目を、イム・スジョンは俳優の名前を、映画は映画それ自体を意味することができる。
【0080】
図9に示すように、オントロジ903のオントロジ概念を用いてオントロジ概念の組み合わせ2に対するクエリグラフ2−1が生成されたことがわかる。図9のクエリグラフを介し、ユーザの検索の意図は、名前がイム・スジョンである俳優が出演した映画のうちで映画題目がピである映画を検索することであると解釈することができる。
【0081】
図10は、本発明の一実施形態によって図6のオントロジ概念の組み合わせ2から決定されたクエリグラフ2−2を示す図である。
【0082】
図6の結果を参照すれば、図10は、検索クエリ1001を構成するキーワード「ピ」、「イム・スジョン」、「映画」に対し、オントロジ概念がキーワード−概念マッピングテーブル1002を介してそれぞれ「Movie−ofTitle」、「Actor−hasName」、および「O::Movie」にマッピングされた組み合わせ2に関するクエリグラフ2−2を生成する過程を示している。すなわち、マッピングされたオントロジ概念を介し、ピは映画の題目を、イム・スジョンは俳優の名前を、映画は映画それ自体を意味することができる。
【0083】
図10に示すように、オントロジ1003のオントロジ概念を用いてオントロジ概念の組み合わせ2に対するクエリグラフ2−2が生成されたことがわかる。図10のクエリグラフを介し、ユーザの検索の意図は、名前がイム・スジョンである俳優が出演した映画のうちで映画題目がピである映画を検索することであると解釈することができる。
【0084】
図11は、本発明の一実施形態によって決定されたクエリグラフをデータ形態に置換した結果を示す図である。このとき、図11は、図7ないし図10のうちでユーザの検索クエリに適したクエリグラフが示されたものである。
【0085】
コンテンツ検索システムは、マッピングされたオントロジ概念を用いてオントロジからクエリグラフを決定することができる。具体的に、コンテンツ検索システムは、オントロジからマッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成することができる。
【0086】
このとき、コンテンツ検索システムは、オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することができる。ここで、ノード間の最大距離は、オントロジ概念に対応する第1概念ノードと第2概念ノードとを連結する経路において、経路上に存在するノードの重み付けの総和を適用した値を意味することができる。また、コンテンツ検索システムは、実際にデータが知識ベースに存在するクエリグラフを生成することができる。
【0087】
さらに、コンテンツ検索システムは、生成されたクエリグラフを整列して少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出することができる。このとき、コンテンツ検索システムは、少なくとも1つのクエリグラフのうちでオントロジ概念に対応するノードとエッジとの間の距離が相対的に小さいクエリグラフを優先して抽出することができる。
【0088】
仮に、別名がピであり名前がイム・スジョンである俳優が存在しなければ、図7に示すクエリグラフ1−1は意味のないグラフとなるため、生成されなくてもよい。
【0089】
また、仮に、名前がイム・スジョンという俳優がピという映画題目の映画に出演した場合がなければ、図9に示すクエリグラフ2−1も意味のないグラフとなるため、生成されなくてもよい。
【0090】
さらに、ノード間の最大距離を2と設定する場合、図10に示すクエリグラフ2−2の最大距離は3であるため、クエリグラフ2−2は初めから生成されなくてもよい。
【0091】
このような過程を介し、最終的に図8に示すクエリグラフ1−2を決定することができる。仮に、クエリグラフが2つ決定されれば、コンテンツ検索システムは、ユーザの検索の意図により適したクエリグラフを決定することができる。
【0092】
決定されたクエリグラフから出力ノードを決定するために、データタイプのノードをデータノードに置換する必要がある。図11を参照すれば、コンテンツ検索システムは、クエリグラフ1−2において、Actorノードに対してhasOtherName属性を有するノードを「ピ」に置換することができ、Actorノードに対してhasName属性を有するノードを「イム・スジョン」に置換することができる。このとき、クエリグラフ1−2において、どのノードを出力ノードとして決定するか否かが問題となる場合がある。
【0093】
図12は、本発明の一実施形態によって出力ノード決定規則を介してクエリグラフで出力ノードを決定する過程を説明するための図である。
【0094】
コンテンツ検索システムは、決定されたクエリグラフから出力ノード決定規則に従って経路検査を繰り返し実行して出力ノードを決定することができる。具体的には、コンテンツ検索システムは、クエリグラフから主語、述語、および目的語で構成された単一グループを抽出し、単一グループのうちで目的語を予め認識しているか否かによって主語または述語のうちのいずれか1つのノードを決定することができる。さらに、コンテンツ検索システムは、決定されたノードが他の単一グループの主語となるか否かを考慮してノードを出力ノードとして決定することができる。
【0095】
図12を参照すれば、ステップS1201で、クエリグラフが入力される。さらに、ステップS1202で、コンテンツ検索システムは、クエリグラフから単一グループ(単一SPO)を抽出する。ここで、単一グループとは、クエリグラフにおいて、ノード(主語)→エッジ(述語)→ノード(目的語)というサブグラフを意味する。
【0096】
ステップS1203で、コンテンツ検索システムは、目的語(Object:O)を既に認知しているか否かを判断する。目的語を既に認知しているか否かは、実際にデータが存在するか否か(すなわち、データノードであるか否か)で判断することができる。
【0097】
仮に、目的語が認知されていなければ、ステップS1204で、コンテンツシステムは目的語を選択する。一方、目的語が認知されていれば、ステップS1205で、コンテンツシステムは主語(Subject:S)を選択する。
【0098】
ステップS1206で、コンテンツ検索システムは、決定されたノードが他の単一グループの主語となるか否かを判断する。仮に、決定されたノードが他の単一グループの主語となれば、コンテンツシステムは、ステップS1202に戻って出力ノード決定規則を繰り返し実行する。一方、決定されたノードが他の単一グループの主語でない場合には、ステップS1207で、コンテンツ検索システムは、決定されたノードを出力ノードとして決定する。
【0099】
図13は、本発明の一実施形態によって出力ノード決定規則を説明するための一例を示す図である。
【0100】
図13を参照すれば、図11のクエリグラフ1−2が示されている。まず、コンテンツ検索システムは、クエリグラフから単一グループ(SPO)を抽出することができる。一例として、コンテンツ検索システムは、クエリグラフの終端部分から単一グループを抽出することができる。
【0101】
1番目のループにおいて、コンテンツ検索システムは、第1の単一SPOである
を抽出することができる。第1の単一グループである
において、Actorは主語(subject)を意味し、hasOtherNameは述語(Propety)を意味し、ピは目的語(Object)を意味する。
【0102】
同様に、1番目のループにおいて、コンテンツ検索システムは、第2の単一SPOである
に対してクラスを抽出することができる。ここで、第2の単一グループである
において、Actorは主語(subject)を意味し、hasNameは述語(Property)を意味し、イム・スジョンは目的語(Object)を意味する。
【0103】
その後、コンテンツ検索システムは、単一グループで目的語が予め認知されているか否かを判断することができる。上述した例において、目的語であるピとイム・スジョンはキーワードとして入力され、データノードであるため、予め認知されているものと判断することができる。したがって、コンテンツ検索システムは、上述した単一グループそれぞれで主語であるActorを選択することができる。
【0104】
2番目のループにおいて、コンテンツ検索システムは、選択されたActorが他の単一グループの主語となるか否かを判断することができる。クエリグラフ1−2に含まれた単一グループ
と
を参照すれば、Actorは他の単一グループの主語となることがわかる。すなわち、第1の単一SPOの主語であるActorは、Movieを目的語とする単一グループの主語でもあり、第2の単一SPOの主語であるActorは、Movieを目的語とする単一グループの主語でもある。その後、コンテンツ検索システムは、出力ノード決定規則を繰り返し適用することができる。
【0105】
2番目のループにおいて、単一グループ
および
の場合、目的語であるMovieが予め認識されているものではないため、単一グループで目的語であるMovieを選択することができる。
【0106】
さらに、Movieが他の単一グループの主語とはならないためループは終了し、最終的にMovieノードを出力ノードとして決定することができる。結局、クエリグラフ1−2から決定された出力ノードを考慮すれば、コンテンツ検索システムは、ユーザの検索の意図が、別名がピである俳優と名前がイム・スジョンである俳優が出演した映画を検索したことであると把握することができる。その後、コンテンツ検索システムは、別名がピである俳優と名前がイム・スジョンである俳優が出演した映画に関する検索結果をユーザに提供することができる。
【0107】
図14は、本発明の一実施形態に係るコンテンツ検索方法の全体過程を示すフローチャートである。
【0108】
ステップS1401で、コンテンツ検索システムは、検索クエリを構文解析して少なくとも1つのキーワードを抽出する。一例として、コンテンツ検索システムは、分かち書きおよびキーワード−概念マッピングテーブルを考慮して検索クエリを構文解析することができる。
【0109】
ステップS1402で、コンテンツ検索システムは、キーワード−概念マッピングテーブルを用いてキーワードとオントロジ概念とをマッピングする。オントロジ概念は方向性を持つグラフ構造であるオントロジでキーワードとマッピングされるノードおよびエッジで構成することができる。このとき、エッジはノードの属性であってもよい。
【0110】
さらに、オントロジは、実際にデータを表現する知識ベースと連結することができる。知識ベースもオントロジと同様、方向性を持つグラフ構造であり、知識ベースのノードおよびエッジを含む知識ベース概念で構成することができる。
【0111】
一例として、コンテンツ検索システムは、キーワード−概念マッピングテーブルを用いてキーワードに対応するオントロジ概念を検索し、生成可能なオントロジ概念の組み合わせを抽出することができる。このとき、キーワードに対応するオントロジ概念は少なくとも1つであってもよい。キーワード−概念マッピングテーブルは、オントロジおよび知識ベースの自然語表現であるキーワードをオントロジ概念とマッピングして記録した索引データ構造であってもよい。
【0112】
ステップS1403で、コンテンツ検索システムは、オントロジ概念を用いてオントロジから少なくとも1つのクエリグラフを生成する。このとき、コンテンツ検索システムは、オントロジからオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成することができる。
【0113】
一例として、コンテンツ検索システムは、オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することができる。このとき、ノード間の最大距離は、オントロジ概念に対応する第1概念ノードと第2概念ノードとを連結する経路において、経路上に存在するノードの重み付けの総和を適用した値であってもよい。
【0114】
他の一例として、コンテンツ検索システムは、実際にデータが知識ベースに存在するクエリグラフを生成することができる。
【0115】
ステップS1404で、コンテンツ検索システムは、クエリグラフを検索クエリとの適合度によって整列して検索クエリに適したクエリグラフを決定する。一例として、コンテンツ検索システムは、少なくとも1つのクエリグラフのうちからオントロジ概念に対応するノードとエッジとの間の距離が相対的に近いクエリグラフを優先して抽出することができる。すなわち、コンテンツ検索システムは、複数のクエリグラフからノードとエッジとの間の距離が相対的に小さいクエリグラフを検索クエリに適したクエリグラフとして決定することができる。
【0116】
ステップS1405で、コンテンツ検索システムは、クエリグラフから検索クエリの検索結果に対応する出力ノードを決定する。一例として、コンテンツ検索システムは、決定されたクエリグラフから、出力ノード決定規則に従って図12に示すフローチャートに示される経路検査を繰り返し実行して出力ノードを決定することができる。
【0117】
具体的に、コンテンツ検索システムは、クエリグラフから主語、述語、および目的語で構成された単一グループを抽出し、単一グループのうちで目的語を予め認識しているか否かによって主語または述語のうちのいずれか1つのノードを決定する。さらに、コンテンツ検索システムは、決定されたノードが他の単一グループの主語となるか否かを考慮し、先に決定されたノードを出力ノードとして決定する。
【0118】
ステップS1406で、コンテンツ検索システムは、出力ノードに対応する検索クエリの検索結果を検索して提供する。一例として、コンテンツ検索システムは、CPC、CTR、品質指数、またはランダム方式のうちのいずれか1つの基準または組み合わせた基準によって検索結果を整列して提供することができる。
【0119】
図14で説明されなかった部分は、図1ないし図13の説明を参照することができる。
【0120】
なお、本発明の一実施形態に係るオントロジを用いたコンテンツ検索方法は、コンピュータにより実現される多様な動作を実行するためのプログラム命令を含むコンピュータ読取可能な記録媒体を含む。当該記録媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせて含むこともでき、記録媒体およびプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知であり使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フレキシブルディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、フロプティカルディスクのような磁気−光媒体、およびROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれる。また、記録媒体は、プログラム命令、データ構造などを保存する信号を送信する搬送波を含む光または金属線、導波管などの送信媒体であってもよい。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードを含む。
【0121】
上述したように、本発明の好ましい実施形態を参照して説明したが、該当の技術分野において熟練した当業者にとっては、特許請求の範囲に記載された本発明の思想および領域から逸脱しない範囲内で、本発明を多様に修正および変更させることができることを理解することができるであろう。すなわち、本発明の技術的範囲は、特許請求の範囲に基づいて定められ、発明を実施するための最良の形態により制限されるものではない。
【符号の説明】
【0122】
100:情報モデル
101:オントロジ
102:知識ベース
103:検索クエリ
104:キーワード−概念マッピングテーブル
105:検索結果
【技術分野】
【0001】
本発明は、オントロジを用いたコンテンツ検索システムおよび方法に関し、より詳細には、不完全なユーザの検索クエリの意図を、オントロジを介して正確に把握し、クエリの意図に適したコンテンツを提供するための、オントロジを用いたコンテンツ検索システムおよび方法に関する。
【背景技術】
【0002】
インターネット検索技術の発展に伴い、ユーザの検索クエリに対して正確な検索結果を提供することが重要な問題として浮上している。インターネット検索を行うユーザごとに検索能力に差があり、実際に入力する検索クエリが多様であるため、検索エンジンはユーザのクエリの意図を正確に把握してユーザが所望する検索結果を提供することが必要である。
【0003】
特に、検索時の検索クエリに必要な情報が抜けている場合、検索エンジンがユーザの検索の意図を把握することが何よりも重要となる。
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、検索エンジンの場合、人間ではなく機械であるために、不完全なユーザの検索クエリからユーザの検索の意図を把握することは困難である。
【0005】
例えば、ユーザが「アメリカ、アクション」と入力する場合、実際のユーザの検索の意図はアメリカ映画のうちでアクションジャンルに該当する映画を検索することであると仮定しよう。しかしながら、検索エンジンは、単にデータベースに含まれた文書のうちから「アメリカ」と「アクション」が共通に含まれる文書を検索結果として提供するため、「アメリカの経済状況に対して大統領が次のようなアクションを取った」という内容の文書のように、ユーザの検索の意図とは全く関係のない検索結果を提供するという問題点が発生している。
【0006】
結局、不完全かつ検索に必要な情報が抜けている検索クエリが入力されたとしても、ユーザの検索の意図に合った検索結果を提供する方法が必要となる。すなわち、定型化された人間の知識によって推論することができる能力を、機械である検索エンジンに付与する構成が必要である。
【課題を解決するための手段】
【0007】
本発明の一実施形態として、ユーザの検索クエリを構成するキーワードをオントロジ概念にマッピングし、マッピングされたオントロジ概念を介してオントロジ上でクエリグラフを決定することによって不完全なユーザの検索クエリを補完する、オントロジを用いたコンテンツ検索システムおよび方法を提供する。
【0008】
また、本発明の一実施形態として、キーワード−概念マッピングテーブルを介してキーワードとオントロジ概念とをマッピングすることにより、より迅速にクエリグラフを生成することができるコンテンツ検索システムおよび方法を提供する。
【0009】
また、本発明の一実施形態として、ノード間の最大距離または実際にデータが知識ベースに存在するか否かを考慮してクエリグラフを生成することにより、不必要なクエリグラフを生成するための資源消耗を節約することができるコンテンツ検索システムおよび方法を提供する。
【0010】
さらに、本発明の一実施形態として、生成されたクエリグラフのうちで検索クエリとの適合度によって整列してクエリグラフを決定することにより、オントロジを介して把握したユーザの検索の意図をより正確に推定することができる、オントロジを用いたコンテンツ検索システムおよび方法を提供する。
【0011】
本発明の一実施形態に係るコンテンツ検索システムは、オントロジを介して検索クエリから抽出したキーワードと前記キーワードに対応するオントロジ概念とをマッピングするキーワードマッピング部と、前記マッピングされたオントロジ概念を用いて前記オントロジからクエリグラフを決定するクエリグラフ決定部と、前記決定されたクエリグラフから前記検索クエリの検索結果に対応する出力ノードを決定する出力ノード決定部とを備えることができる。
【0012】
本発明の一側面によれば、前記クエリグラフ決定部は、前記オントロジから前記マッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成し、前記生成されたクエリグラフを整列して前記少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出することができる。
【0013】
本発明の一実施形態に係るコンテンツ検索システムは、出力ノードに対応する検索クエリの検索結果を提供する検索結果提供部をさらに備えることができる。
【0014】
本発明の一実施形態に係るコンテンツ検索方法は、オントロジを介して検索クエリから抽出したキーワードと前記キーワードに対応するオントロジ概念とをマッピングするステップと、前記マッピングされたオントロジ概念を用いて前記オントロジからクエリグラフを決定するステップと、前記決定されたクエリグラフから前記検索クエリの検索結果に対応する出力ノードを決定するステップとを含むことができる。
【0015】
本発明の一側面によれば、前記オントロジからクエリグラフを決定するステップは、前記オントロジから前記マッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成するステップと、前記生成されたクエリグラフを整列して前記少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出するステップとを含むことができる。
【0016】
本発明の一実施形態に係るコンテンツ検索方法は、前記出力ノードに対応する検索クエリの検索結果を提供するステップをさらに含むことができる。
【発明の効果】
【0017】
本発明の一実施形態によれば、ユーザの検索クエリを構成するキーワードをオントロジ概念にマッピングし、マッピングされたオントロジ概念を介してオントロジ上でクエリグラフを決定することによって不完全なユーザの検索クエリを補完する、オントロジを用いたコンテンツ検索システムおよび方法が提供される。
【0018】
また、本発明の一実施形態によれば、キーワード−概念マッピングテーブルを介してキーワードとオントロジ概念とをマッピングすることにより、より迅速にクエリグラフを生成することができるコンテンツ検索システムおよび方法が提供される。
【0019】
また、本発明の一実施形態によれば、クエリグラフの任意の2つのノード間の距離の最大値に関する条件および/または実際にデータが知識ベースに存在するか否かを考慮してクエリグラフを生成することにより、不必要なクエリグラフを生成するための資源の消耗を節約することができるコンテンツ検索システムおよび方法が提供される。
【0020】
さらに、本発明の一実施形態によれば、生成されたクエリグラフのうちで検索クエリとの適合度によって整列してクエリグラフを決定することにより、オントロジを介して把握したユーザの検索の意図をより正確に推定することができる、オントロジを用いたコンテンツ検索システムおよび方法が提供される。
【図面の簡単な説明】
【0021】
【図1】本発明の一実施形態に係るオントロジを用いて検索クエリに対する検索結果を提供する過程を説明するための図である。
【図2】本発明の一実施形態に係るコンテンツ検索システムの全体構成を示すブロック図である。
【図3】本発明の一実施形態に係るオントロジと知識ベースとの関係を説明するための図である。
【図4】本発明の一実施形態によってキーワード−概念マッピングテーブルを介してキーワードとオントロジ概念とをマッピングする過程を説明するための図である。
【図5】本発明の一実施形態に係るキーワード−概念マッピングテーブルの一例を示す図である。
【図6】本発明の一実施形態によってキーワード−概念マッピングテーブルを介してキーワードとマッピングされるオントロジ概念の組み合わせを説明するための図である。
【図7】本発明の一実施形態によって図6のオントロジ概念の組み合わせ1から決定されたクエリグラフ1−1を示す図である。
【図8】本発明の一実施形態によって図6のオントロジ概念の組み合わせ1から決定されたクエリグラフ1−2を示す図である。
【図9】本発明の一実施形態によって図6のオントロジ概念の組み合わせ2から決定されたクエリグラフ2−1を示す図である。
【図10】発明の一実施形態によって図6のオントロジ概念の組み合わせ2から決定されたクエリグラフ2−2を示す図である。
【図11】本発明の一実施形態によって決定されたクエリグラフをデータ形態に置換した結果を示す図である。
【図12】本発明の一実施形態によって出力ノード決定規則を介してクエリグラフで出力ノードを決定する過程を説明するための図である。
【図13】本発明の一実施形態によって出力ノード決定規則を説明するための一例を示す図である。
【図14】本発明の一実施形態に係るコンテンツ検索方法の全体過程を示すフローチャートである。
【発明を実施するための形態】
【0022】
以下、添付の図面に記載された内容を参照しながら、本発明に係る実施形態を詳細に説明する。ただし、本発明が実施形態によって制限または限定されることはない。各図面に提示された同じ参照符号は同じ部材を示す。
【0023】
図1は、本発明の一実施形態に係るオントロジを用いて検索クエリに対する検索結果を提供する過程を説明するための図である。
【0024】
図1を参照すれば、ユーザは、検索クエリ103を入力することができる。このとき、検索クエリ103は、少なくとも1つのキーワードで構成されてもよい。本発明の一実施形態に係るコンテンツ検索システムは、ユーザが入力した検索クエリ103に対して検索結果105を提供することができる。ここで、検索クエリ103は、不完全な形態である場合がある。このような場合には、例えば、検索クエリ103が「A、B」というキーワードを含む場合、ユーザの検索の意図がA、Bを同時に含むコンテンツを検索することであるか、またはAおよびBに互いに関連する別のコンテンツを検索することであるかを把握することが重要となる。すなわち、ユーザの検索クエリ103は、重要な部分が省略されたキーワードで構成されることがあるため、このような場合にはユーザの検索の意図を正確に把握するための情報が不足している場合がある。
【0025】
この場合、本発明の一実施形態に係るコンテンツ検索システムは、情報モデル100を用いて不完全なユーザの検索クエリ103を補完することができる。すなわち、コンテンツ検索システムは、不完全なユーザの検索クエリ103を、情報モデル100を介して補完することにより、ユーザの検索の意図に最大限適した検索結果を提供することができる。
【0026】
図1に示すように、情報モデル100は、オントロジ101と知識ベース102とで構成することができる。オントロジ101はクラスの属性とクラス間の関係とを表現するスキーマ(schema)領域を意味し、知識ベース102は実際にデータを表現するデータ領域を意味することができる。
【0027】
一例として、オントロジ101は、グローバルオントロジ(global ontology)、音楽オントロジ、映画オントロジ、および人物オントロジなどのドメインオントロジ(domain ontology)に分類することができる。ここで、ドメインオントロジとは、特定のドメインに適したドメイン知識を含むオントロジ101を意味する。このとき、ドメイン知識は、ドメインオントロジに含まれたオントロジ概念のノードに対応させることができる。ドメインオントロジは、他のドメインオントロジと概念を介して連結することができる。
【0028】
コンテンツ検索システムは、検索クエリ103から抽出したキーワードをキーワード−概念マッピングテーブル104を介してオントロジ101に存在するオントロジ概念にマッピングさせることができる。さらに、コンテンツ検索システムは、オントロジ概念を介してユーザの検索の意図を反映したクエリグラフを決定し、クエリグラフから出力ノードを抽出することができる。最終的に、コンテンツ検索システムは、出力ノードに対応する検索結果105をユーザに提供することができる。
【0029】
図2は、本発明の一実施形態に係るコンテンツ検索システムの全体構成を示すブロック図である。
【0030】
図2を参照すれば、コンテンツ検索システム200は、キーワードマッピング部201と、クエリグラフ決定部202と、出力ノード決定部203と備えることができる。追加して、コンテンツ検索システム200は、検索結果提供部204を備えることができる。
【0031】
キーワードマッピング部201は、オントロジ207を介して検索クエリ205から抽出したキーワードとキーワードに対応するオントロジ概念とをマッピングすることができる。ここで、オントロジ207は、方向性を持つグラフ(有向グラフ)構造を有していてもよい。さらに、オントロジ207は、検索クエリ205から抽出したキーワードとマッピングするための複数のノードおよびエッジで構成されてもよい。このとき、オントロジ207に存在するノードとエッジとのそれぞれをオントロジ概念(Ontology Concept)で定義してもよく、エッジはノードの属性であってもよい。論理的なモデルであるオントロジ207において、ノード−エッジ−ノードが1つのRDFトリプル(Resource Description Framework Triple)に変換されてもよい。
【0032】
さらに、オントロジ207は、実際にデータを表現する知識ベース208と連結することができる。知識ベース208も方向性を持つグラフ構造を有していてもよく、知識ベース208のノードおよびエッジを含む知識ベース概念で構成されてもよい。本発明の一実施形態によれば、オントロジ207のノードとエッジはオントロジ概念で定義され、知識ベース208のノードとエッジとは知識ベース概念で定義することができる。
【0033】
オントロジ207の有する方向性を持つグラフ構造および知識ベース208の有する方向性を持つグラフ構造は、例えば、コンピュータの記憶装置に存在する所定の領域をノードに対応付けることができる。この場合、コンピュータの記憶装置に第1の領域と第2の領域が存在する場合、第1の領域に第2の領域のアドレスを格納することにより、第1の領域に対応付けられるノードから、第2の領域に対応付けられるノードへのエッジを表現することができる。
【0034】
あるいは、ノードおよびエッジにコンピュータの記憶装置に存在する所定の領域をそれぞれ対応付けることもできる。この場合、第1のノード−エッジ−第2のノードという構造は、エッジに対応付けられる領域に、第1のノードに対応付けられる領域のアドレスおよび第2のノードに対応付けられる領域のアドレスを格納することにより表現することができる。また、第1のノードに対応付けられる領域に、エッジに対応付けられる領域のアドレスを格納し、さらに、エッジに対応付けられる領域に、第2のノードに対応付けられる領域のアドレスを格納することにより表現するようにしてもよい。
【0035】
キーワードマッピング部201は、キーワード−概念マッピングテーブル206を用いてキーワードとオントロジ概念とをマッピングすることができる。キーワード−概念マッピングテーブル206は、コンピュータの記憶装置に格納して表現することができる。一例として、キーワードマッピング部201は、キーワード−概念マッピングテーブル206を用いて検索クエリ205から抽出したキーワードに対応するオントロジ概念を検索し、生成可能なオントロジ概念の組み合わせを抽出することができる。このとき、キーワード−概念マッピングテーブル206は、1つのキーワードに対応する複数のオントロジ概念を含んでもよい。
【0036】
例えば、キーワードが「怪物」である場合、キーワードに対応するオントロジ概念が「映画」または「別名」であることがある。一例として、キーワード−概念マッピングテーブル206は、オントロジ207および知識ベース208の自然語表現であるキーワードをオントロジ概念にマッピングして記録する索引データ構造であってもよい。キーワード−概念マッピングテーブル206については、図5と図6を参照しながら具体的に説明する。
【0037】
クエリグラフ決定部202は、マッピングされたオントロジ概念を用いてオントロジからクエリグラフを決定することができる。一例として、クエリグラフ決定部202は、オントロジ207からマッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成することができる。このとき、1つのキーワード−オントロジ概念の組み合わせに対して複数のクエリグラフが生成されてもよい。
【0038】
クエリグラフは、オントロジ207の有する方向性を持つグラフ構造および知識ベース208の有する方向性を持つグラフ構造と同様にコンピュータの記憶装置の領域とアドレスとを用いて表現することができる。また、クエリグラフは、オントロジ207の有するグラフ構造のうち、キーワードがマッピングされるオントロジ概念を含むサブグラフの構造をコンピュータの記憶装置にコピーすることで作成することができる。
【0039】
一例として、クエリグラフ決定部202は、生成されるクエリグラフにおいて、オントロジ概念に対応するノード間の最大距離が所定の条件が満たされるように生成されてもよい。ここに、第1概念ノードと第2概念ノードとの間の最大距離とは、第1概念ノードと第2概念ノードとを連結する経路上に存在するノードの個数として定義される。また、第1概念ノードと第2概念ノードとを連結する経路が複数存在する場合には、経路上に存在するノードの個数を経路毎に求め、その最大値として定義することができる。また、ノードには、重みを設定することができ、第1概念ノードと第2概念ノードとを連結する経路上に存在するノードの重みの総和を、第1概念ノードと第2概念ノードとの間の距離とすることもできる。この場合、全てのノードの重みを1とすれば、重みの総和とノードの個数とは一致する。例えば、ノード1とノード2とを連結する経路にノード3とノード4が存在する場合、ノード3の重みが2であり、ノード4の重みが1であれば、ノード間の距離は2+1=3となる本発明の一実施形態によれば、クエリグラフ決定部202は、クエリグラフの任意の2つのノード間の距離の最大値に条件を課し、ノードかの距離が大きい値を有するクエリグラフを除くことにより、複数のクエリグラフが生成されることを防ぐことができる。
【0040】
他の一例として、クエリグラフ決定部202は、実際にデータが知識ベース208に存在するノードとエッジとを用いてクエリグラフを生成することができる。すなわち、特定のクエリグラフのノードに対するデータが実際に知識ベース208に存在しなければ、クエリグラフを生成する必要がないためである。
【0041】
さらに、クエリグラフ決定部202は、生成されたクエリグラフを整列して少なくとも1つのクエリグラフのうちから検索クエリ205に適したクエリグラフを抽出することができる。このとき、クエリグラフ決定部202は、生成された少なくとも1つのクエリグラフを検索クエリ205との適合度によって整列して検索クエリ205に適したクエリグラフを抽出することができる。ここで、クエリグラフ決定部202は、少なくとも1つのクエリグラフのうちでオントロジ概念に対応するノードとエッジとの間の距離が相対的に近いクエリグラフを優先して抽出することができる。あるいは、適合度は、クエリグラフの大きさとしてもよい。ここにクエリグラフの大きさとは、クエリグラフの任意の2つのノード間の距離の最大値を用いて定義される。例えば、グラフの大きさが小さいクエリグラフほど、大きな適合度を有するとしてもよい。
【0042】
このような過程により、コンテンツ検索システム200は、不完全なユーザの検索クエリを、オントロジ概念を用いたクエリグラフを用いて補完することにより、ユーザの検索の意図を把握することができる。
【0043】
出力ノード決定部203は、決定されたクエリグラフから検索クエリの検索結果に対応する出力ノードを決定することができる。一例として、出力ノード決定部203は、クエリグラフから出力ノード決定規則に従って経路検査を繰り返し実行して出力ノードを決定することができる。
【0044】
このとき、出力ノード決定部203は、クエリグラフから主語(subject)、述語(property)、および目的語(object)で構成された単一グループを抽出し、単一グループのうちで目的語を予め認識しているか否かによって主語または述語のうちのいずれか1つのノードを決定することができる。さらに、出力ノード決定部203は、決定されたノードが他の単一グループの主語となるか否かを考慮してノードを出力ノードとして決定することができる。ここで、単一グループは、オントロジ上のトリプルとして定義することができる。
【0045】
検索結果提供部204は、出力ノードに対応する検索クエリの検索結果を提供することができる。一例として、検索結果提供部204は、CPC(Click per Cost)、CTR(Click Through Ratio)、品質指数(Quality Index)、またはランダム方式のうちのいずれか1つの基準または組み合わせた基準によって検索結果を整列して提供することができる。
【0046】
図3は、本発明の一実施形態に係るオントロジと知識ベースとの関係を説明するための図である。
【0047】
図3を参照すれば、オントロジ301と知識ベース302は方向性を持つグラフ構造であることがわかる。オントロジ301は映画ドメインの一部知識を表現したものである。
【0048】
オントロジ301において、「Actor(俳優)、Movie(映画)、Director(監督)」はクラスを表わしているとすることができる。このとき、クラスは共通した属性を有するインスタンスの集合を表現する意味であり、オントロジ301において1つのノードに対応することができる。「Actor」と「Movie」とは「hasMovie」という関係にある。このとき、「hasMovie」は、オントロジ301において1つのエッジに対応させることができる。オントロジ301において、ノードおよびエッジそれぞれはオントロジ概念で定義することができる。
【0049】
さらに、オントロジ301の「Actor」に連結した知識ベース302の「actor_1273」は、チョン・ジフンという固有の名前を持つ俳優(またはピという別名を持つ俳優)を特定するIDを意味することができる。このとき、「actor_1273」はクラス「Actor」のインスタンスであることを示し、クラスに対する実際のデータを意味する。同様に、オントロジ301の「Director」に連結した知識ベース302の「director_5738」は、パク・チャノクという固有の名前を持つ監督を特定するIDを意味することができる。
【0050】
「actor_1273」と「movie_9842」は知識ベース302において1つのノードに対応させることができ、「actor_1273」と「movie_9842」の関係を示す「hasMovie」は1つのエッジに対応させることができる。知識ベース302において、ノードおよびエッジそれぞれは知識ベース概念で定義することができる。
【0051】
オントロジ301と知識ベース302のグラフ構造は論理的なモデルであり、実際に保存される場合にはRDFトリプル形態に変換されて保存されてもよい。このとき、グラフのノード−エッジ−ノードを1つのRDFトリプルに変換することができる。
【0052】
図4は、本発明の一実施形態によってキーワード−概念マッピングテーブルを介してキーワードとオントロジ概念とをマッピングする過程を説明するための図である。
【0053】
図4を参照すれば、キーワード−概念マッピングテーブル401、オントロジ402、および知識ベース403が示されている。
【0054】
ユーザから少なくとも1つのキーワードで構成された検索クエリ404が入力されると、コンテンツ検索システムは、検索クエリ404を構文解析(parsing)してキーワードを抽出することができる。コンテンツ検索システムは、抽出したキーワードとオントロジ402のオントロジ概念とを互いにマッピングさせることができる。一例として、コンテンツ検索システムは、キーワード−概念マッピングテーブル401を用いてキーワードとオントロジ概念とをマッピングさせることができる。
【0055】
キーワード−概念マッピングテーブル401は、オントロジ402および知識ベース403の自然語表現であるキーワードをオントロジ概念とマッピングして記録された索引データ構造であってもよい。図4に示すキーワード−概念マッピングテーブル401を参照すれば、「ピ」というキーワードは「Actor−hasOtherName」というオントロジ概念にマッピングすることができる。また、「イム・スジョン」というキーワードは「Actor−hasName」というオントロジ概念にマッピングすることができ、「映画」というキーワードは「O::Movie」というオントロジ概念にマッピングすることができる。ここで、「ピ」と「イム・スジョン」というキーワードは、データタイプ(クラス−属性)のオントロジ概念にマッピングすることができる。さらに、「映画」というキーワードはそれ自体でクラスを意味するため、クラス(Movie)のオントロジ概念にマッピングすることができる。ただし、データタイプと区分するために、クラス名の前にO::を付加してもよい。
【0056】
このとき、オントロジ402に示すグラフ構造は、キーワードとマッピングされたオントロジ概念の組み合わせを介して生成されたものである。1つのオントロジ概念の組み合わせに対して複数のグラフ構造が導出されてもよい。
【0057】
図5は、本発明の一実施形態に係るキーワード−概念マッピングテーブルの一例を示す図である。
【0058】
図5のキーワード−概念マッピングテーブルにおいて、キーワードは、オントロジおよび知識ベースの自然語表現を意味する。さらに、オントロジ概念は、オントロジにおいてキーワードに対応するノードまたは属性を意味することができる。
【0059】
オントロジ概念の場合、自然語表現をラベル(label)形態で設定することができる。例えば、図3に示すように、「Movie」クラスには「映画」というラベルが設定されてもよく、「Actor」クラスには「俳優」または「映画俳優」というラベルが設定されてもよい。また、「Actor」クラスの「hasMovie」という属性には「出演映画」または「出演」というラベルが設定されてもよい。設定されたラベルは、キーワード−概念マッピングテーブルから索引することができる。
【0060】
さらに、特定のキーワードに対して複数のオントロジ概念が存在してもよい。図5を参照すれば、ドメインが映画であるオントロジにおいて、「名前」というキーワードは、映画俳優の名前となることもあるし、または映画監督の名前となることもある。したがって、「名前」というキーワードは、オントロジ概念が「O::Actor−hasName」または「O::Director−hasName」とすることができる。
【0061】
このようなキーワード−概念マッピングテーブルを介し、検索クエリから抽出されたキーワードをより迅速にオントロジ上のオントロジ概念とマッピングすることができる。
【0062】
図6は、本発明の一実施形態によってキーワード−概念マッピングテーブルを介してキーワードとマッピングするオントロジ概念の組み合わせを説明するための図である。
【0063】
図6を参照すれば、検索クエリ601が「ピ、イム・スジョン、映画」というキーワードで構成されると仮定する。コンテンツ検索システムは、検索クエリ601を構文解析して少なくとも1つのキーワードを抽出することができる。コンテンツ検索システムは、検索クエリの分かち書きを考慮して検索クエリを構文解析することができる。一例として、コンテンツ検索システムは、キーワード−概念マッピングテーブル602を考慮して検索クエリを構文解析することができる。
【0064】
例えば、検索クエリが「サイボーグでも大丈夫」である場合、コンテンツ検索システムは、キーワード−概念マッピングテーブルに存在しない「サイボーグでも」と「大丈夫」に分離してキーワードを抽出することはできず、「サイボーグでも大丈夫」という1つのキーワードとして抽出することができる。
【0065】
また、分離することができるキーワードが結合して検索クエリを構成する場合(例えば、日本映画)、コンテンツ検索システムは、キーワードを分離して構文解析することができる。また、外国語を音訳した場合、コンテンツ検索システムは、多様な音訳表記を考慮してキーワードを抽出することができる。さらに、コンテンツ検索システムは、抽出したキーワードに対する同義語、類似語、関連語に対するキーワード−概念マッピングテーブルを構築することもできる。
【0066】
このように抽出されたキーワードは、キーワード−概念マッピングテーブル602を介してオントロジ概念とマッピングすることができる。検索クエリ601から抽出されたキーワードをオントロジ概念にマッピングした概念マッピング結果603を、図6に示す。
【0067】
仮に、「ピ」というキーワードが俳優の別名であるかまたは映画の題目である場合、「ピ」というキーワードは、オントロジ概念(Actor−hasOtherName)と(Movie−ofTitle)にマッピングすることができる。このため、概念マッピング結果603も組み合わせ1と組み合わせ2とに区分して決定することができ、この後に概念マッピング結果603の組み合わせによってクエリグラフを生成することができる。コンテンツ検索システムは、オントロジのドメイン知識を用いて、マッピングされたオントロジ概念の組み合わせのうちからユーザの検索の意図と最も関連がある組み合わせを推定することができる。
【0068】
図7ないし図10は、図6に示すオントロジ概念の組み合わせから生成可能なクエリグラフの一例を示している。特定条件が設定されれば、図7ないし図10に示すクエリグラフは生成されない場合もある。例えば、特定条件は、クエリグラフから任意に選んだ2つのノード間の最大距離に関する条件であってもよい。また、実際にデータが知識ベース内に存在するか否かであってもよい。
【0069】
コンテンツ検索システムは、マッピングされたオントロジ概念を用いてオントロジからクエリグラフを決定することができる。このとき、コンテンツ検索システムは、オントロジからマッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成することができる。
【0070】
一例として、コンテンツ検索システムは、オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することができる。所定の条件としては、最大距離が所定の値以下であるという条件を挙げることができる。また、所定の値は、例えば、コンテンツ検索システムのメモリに読出し可能に記憶されている値であったり、検索時に利用者より与えられ、メモリに一時的に記憶される値であったりする。さらに、コンテンツ検索システムは、実際にデータが知識ベース内に存在するクエリグラフを生成することができる。
【0071】
図7は、本発明の一実施形態によって図6のオントロジ概念の組み合わせ1から決定されたクエリグラフ1−1を示す図である。
【0072】
図6の結果を参照すれば、図7は、検索クエリ701を構成するキーワード「ピ」、「イム・スジョン」、「映画」に対し、オントロジ概念がキーワード−概念マッピングテーブル702を介してそれぞれ「Actor−hasOtherName」、「Actor−hasName」、および「O::Movie」にマッピングされた組み合わせ1に関するクエリグラフ1−1を生成する過程を示している。すなわち、マッピングされたオントロジ概念を介し、ピは俳優の別名を、イム・スジョンは俳優の名前を、映画は映画それ自体を意味することができる。
【0073】
図7に示すように、オントロジ703のオントロジ概念を用いてオントロジ概念の組み合わせ1に対するクエリグラフ1−1が生成されたことがわかる。図7のクエリグラフを介し、ユーザの検索の意図は、別名がピであり名前がイム・スジョンである俳優が出演した映画を検索することであると解釈することができる。
【0074】
仮に、別名がピであり名前がイム・スジョンである俳優が存在しなければ、図7のクエリグラフは意味のない場合がある。意味のないクエリグラフは、最終的にユーザの検索クエリに適したクエリグラフを決定するときに排除されてもよい。
【0075】
図8は、本発明の一実施形態によって図6のオントロジ概念の組み合わせ1から決定されたクエリグラフ1−2を示す図である。
【0076】
図6の結果を参照すれば、図8は、検索クエリ801を構成するキーワード「ピ」、「イム・スジョン」、「映画」に対し、オントロジ概念がキーワード−概念マッピングテーブル802を介してそれぞれ「Actor−hasOtherName」、「Actor−hasName」、および「O::Movie」にマッピングされた組み合わせ1に関するクエリグラフ1−2を生成する過程を示している。すなわち、マッピングされたオントロジ概念を介し、ピは俳優の別名を、イム・スジョンは俳優の名前を、映画は映画それ自体を意味することができる。
【0077】
図8に示すように、オントロジ803のオントロジ概念を用いてオントロジ概念の組み合わせ1に対するクエリグラフ1−2が生成されたことがわかる。図8のクエリグラフを介し、ユーザの検索の意図は、別名がピである俳優と名前がイム・スジョンである俳優が出演した映画を検索することであると解釈することができる。
【0078】
図9は、本発明の一実施形態によって図6のオントロジ概念の組み合わせ2から決定されたクエリグラフ2−1を示す図である。
【0079】
図6の結果を参照すれば、図9は、検索クエリ901を構成するキーワード「ピ」、「イム・スジョン」、「映画」に対し、オントロジ概念がキーワード−概念マッピングテーブル902を介してそれぞれ「Movie−ofTitle」、「Actor−hasName」、および「O::Movie」にマッピングされた組み合わせ2に関するクエリグラフ2−1を生成する過程を示している。すなわち、マッピングされたオントロジ概念を介し、ピは映画の題目を、イム・スジョンは俳優の名前を、映画は映画それ自体を意味することができる。
【0080】
図9に示すように、オントロジ903のオントロジ概念を用いてオントロジ概念の組み合わせ2に対するクエリグラフ2−1が生成されたことがわかる。図9のクエリグラフを介し、ユーザの検索の意図は、名前がイム・スジョンである俳優が出演した映画のうちで映画題目がピである映画を検索することであると解釈することができる。
【0081】
図10は、本発明の一実施形態によって図6のオントロジ概念の組み合わせ2から決定されたクエリグラフ2−2を示す図である。
【0082】
図6の結果を参照すれば、図10は、検索クエリ1001を構成するキーワード「ピ」、「イム・スジョン」、「映画」に対し、オントロジ概念がキーワード−概念マッピングテーブル1002を介してそれぞれ「Movie−ofTitle」、「Actor−hasName」、および「O::Movie」にマッピングされた組み合わせ2に関するクエリグラフ2−2を生成する過程を示している。すなわち、マッピングされたオントロジ概念を介し、ピは映画の題目を、イム・スジョンは俳優の名前を、映画は映画それ自体を意味することができる。
【0083】
図10に示すように、オントロジ1003のオントロジ概念を用いてオントロジ概念の組み合わせ2に対するクエリグラフ2−2が生成されたことがわかる。図10のクエリグラフを介し、ユーザの検索の意図は、名前がイム・スジョンである俳優が出演した映画のうちで映画題目がピである映画を検索することであると解釈することができる。
【0084】
図11は、本発明の一実施形態によって決定されたクエリグラフをデータ形態に置換した結果を示す図である。このとき、図11は、図7ないし図10のうちでユーザの検索クエリに適したクエリグラフが示されたものである。
【0085】
コンテンツ検索システムは、マッピングされたオントロジ概念を用いてオントロジからクエリグラフを決定することができる。具体的に、コンテンツ検索システムは、オントロジからマッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成することができる。
【0086】
このとき、コンテンツ検索システムは、オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することができる。ここで、ノード間の最大距離は、オントロジ概念に対応する第1概念ノードと第2概念ノードとを連結する経路において、経路上に存在するノードの重み付けの総和を適用した値を意味することができる。また、コンテンツ検索システムは、実際にデータが知識ベースに存在するクエリグラフを生成することができる。
【0087】
さらに、コンテンツ検索システムは、生成されたクエリグラフを整列して少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出することができる。このとき、コンテンツ検索システムは、少なくとも1つのクエリグラフのうちでオントロジ概念に対応するノードとエッジとの間の距離が相対的に小さいクエリグラフを優先して抽出することができる。
【0088】
仮に、別名がピであり名前がイム・スジョンである俳優が存在しなければ、図7に示すクエリグラフ1−1は意味のないグラフとなるため、生成されなくてもよい。
【0089】
また、仮に、名前がイム・スジョンという俳優がピという映画題目の映画に出演した場合がなければ、図9に示すクエリグラフ2−1も意味のないグラフとなるため、生成されなくてもよい。
【0090】
さらに、ノード間の最大距離を2と設定する場合、図10に示すクエリグラフ2−2の最大距離は3であるため、クエリグラフ2−2は初めから生成されなくてもよい。
【0091】
このような過程を介し、最終的に図8に示すクエリグラフ1−2を決定することができる。仮に、クエリグラフが2つ決定されれば、コンテンツ検索システムは、ユーザの検索の意図により適したクエリグラフを決定することができる。
【0092】
決定されたクエリグラフから出力ノードを決定するために、データタイプのノードをデータノードに置換する必要がある。図11を参照すれば、コンテンツ検索システムは、クエリグラフ1−2において、Actorノードに対してhasOtherName属性を有するノードを「ピ」に置換することができ、Actorノードに対してhasName属性を有するノードを「イム・スジョン」に置換することができる。このとき、クエリグラフ1−2において、どのノードを出力ノードとして決定するか否かが問題となる場合がある。
【0093】
図12は、本発明の一実施形態によって出力ノード決定規則を介してクエリグラフで出力ノードを決定する過程を説明するための図である。
【0094】
コンテンツ検索システムは、決定されたクエリグラフから出力ノード決定規則に従って経路検査を繰り返し実行して出力ノードを決定することができる。具体的には、コンテンツ検索システムは、クエリグラフから主語、述語、および目的語で構成された単一グループを抽出し、単一グループのうちで目的語を予め認識しているか否かによって主語または述語のうちのいずれか1つのノードを決定することができる。さらに、コンテンツ検索システムは、決定されたノードが他の単一グループの主語となるか否かを考慮してノードを出力ノードとして決定することができる。
【0095】
図12を参照すれば、ステップS1201で、クエリグラフが入力される。さらに、ステップS1202で、コンテンツ検索システムは、クエリグラフから単一グループ(単一SPO)を抽出する。ここで、単一グループとは、クエリグラフにおいて、ノード(主語)→エッジ(述語)→ノード(目的語)というサブグラフを意味する。
【0096】
ステップS1203で、コンテンツ検索システムは、目的語(Object:O)を既に認知しているか否かを判断する。目的語を既に認知しているか否かは、実際にデータが存在するか否か(すなわち、データノードであるか否か)で判断することができる。
【0097】
仮に、目的語が認知されていなければ、ステップS1204で、コンテンツシステムは目的語を選択する。一方、目的語が認知されていれば、ステップS1205で、コンテンツシステムは主語(Subject:S)を選択する。
【0098】
ステップS1206で、コンテンツ検索システムは、決定されたノードが他の単一グループの主語となるか否かを判断する。仮に、決定されたノードが他の単一グループの主語となれば、コンテンツシステムは、ステップS1202に戻って出力ノード決定規則を繰り返し実行する。一方、決定されたノードが他の単一グループの主語でない場合には、ステップS1207で、コンテンツ検索システムは、決定されたノードを出力ノードとして決定する。
【0099】
図13は、本発明の一実施形態によって出力ノード決定規則を説明するための一例を示す図である。
【0100】
図13を参照すれば、図11のクエリグラフ1−2が示されている。まず、コンテンツ検索システムは、クエリグラフから単一グループ(SPO)を抽出することができる。一例として、コンテンツ検索システムは、クエリグラフの終端部分から単一グループを抽出することができる。
【0101】
1番目のループにおいて、コンテンツ検索システムは、第1の単一SPOである
を抽出することができる。第1の単一グループである
において、Actorは主語(subject)を意味し、hasOtherNameは述語(Propety)を意味し、ピは目的語(Object)を意味する。
【0102】
同様に、1番目のループにおいて、コンテンツ検索システムは、第2の単一SPOである
に対してクラスを抽出することができる。ここで、第2の単一グループである
において、Actorは主語(subject)を意味し、hasNameは述語(Property)を意味し、イム・スジョンは目的語(Object)を意味する。
【0103】
その後、コンテンツ検索システムは、単一グループで目的語が予め認知されているか否かを判断することができる。上述した例において、目的語であるピとイム・スジョンはキーワードとして入力され、データノードであるため、予め認知されているものと判断することができる。したがって、コンテンツ検索システムは、上述した単一グループそれぞれで主語であるActorを選択することができる。
【0104】
2番目のループにおいて、コンテンツ検索システムは、選択されたActorが他の単一グループの主語となるか否かを判断することができる。クエリグラフ1−2に含まれた単一グループ
と
を参照すれば、Actorは他の単一グループの主語となることがわかる。すなわち、第1の単一SPOの主語であるActorは、Movieを目的語とする単一グループの主語でもあり、第2の単一SPOの主語であるActorは、Movieを目的語とする単一グループの主語でもある。その後、コンテンツ検索システムは、出力ノード決定規則を繰り返し適用することができる。
【0105】
2番目のループにおいて、単一グループ
および
の場合、目的語であるMovieが予め認識されているものではないため、単一グループで目的語であるMovieを選択することができる。
【0106】
さらに、Movieが他の単一グループの主語とはならないためループは終了し、最終的にMovieノードを出力ノードとして決定することができる。結局、クエリグラフ1−2から決定された出力ノードを考慮すれば、コンテンツ検索システムは、ユーザの検索の意図が、別名がピである俳優と名前がイム・スジョンである俳優が出演した映画を検索したことであると把握することができる。その後、コンテンツ検索システムは、別名がピである俳優と名前がイム・スジョンである俳優が出演した映画に関する検索結果をユーザに提供することができる。
【0107】
図14は、本発明の一実施形態に係るコンテンツ検索方法の全体過程を示すフローチャートである。
【0108】
ステップS1401で、コンテンツ検索システムは、検索クエリを構文解析して少なくとも1つのキーワードを抽出する。一例として、コンテンツ検索システムは、分かち書きおよびキーワード−概念マッピングテーブルを考慮して検索クエリを構文解析することができる。
【0109】
ステップS1402で、コンテンツ検索システムは、キーワード−概念マッピングテーブルを用いてキーワードとオントロジ概念とをマッピングする。オントロジ概念は方向性を持つグラフ構造であるオントロジでキーワードとマッピングされるノードおよびエッジで構成することができる。このとき、エッジはノードの属性であってもよい。
【0110】
さらに、オントロジは、実際にデータを表現する知識ベースと連結することができる。知識ベースもオントロジと同様、方向性を持つグラフ構造であり、知識ベースのノードおよびエッジを含む知識ベース概念で構成することができる。
【0111】
一例として、コンテンツ検索システムは、キーワード−概念マッピングテーブルを用いてキーワードに対応するオントロジ概念を検索し、生成可能なオントロジ概念の組み合わせを抽出することができる。このとき、キーワードに対応するオントロジ概念は少なくとも1つであってもよい。キーワード−概念マッピングテーブルは、オントロジおよび知識ベースの自然語表現であるキーワードをオントロジ概念とマッピングして記録した索引データ構造であってもよい。
【0112】
ステップS1403で、コンテンツ検索システムは、オントロジ概念を用いてオントロジから少なくとも1つのクエリグラフを生成する。このとき、コンテンツ検索システムは、オントロジからオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成することができる。
【0113】
一例として、コンテンツ検索システムは、オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することができる。このとき、ノード間の最大距離は、オントロジ概念に対応する第1概念ノードと第2概念ノードとを連結する経路において、経路上に存在するノードの重み付けの総和を適用した値であってもよい。
【0114】
他の一例として、コンテンツ検索システムは、実際にデータが知識ベースに存在するクエリグラフを生成することができる。
【0115】
ステップS1404で、コンテンツ検索システムは、クエリグラフを検索クエリとの適合度によって整列して検索クエリに適したクエリグラフを決定する。一例として、コンテンツ検索システムは、少なくとも1つのクエリグラフのうちからオントロジ概念に対応するノードとエッジとの間の距離が相対的に近いクエリグラフを優先して抽出することができる。すなわち、コンテンツ検索システムは、複数のクエリグラフからノードとエッジとの間の距離が相対的に小さいクエリグラフを検索クエリに適したクエリグラフとして決定することができる。
【0116】
ステップS1405で、コンテンツ検索システムは、クエリグラフから検索クエリの検索結果に対応する出力ノードを決定する。一例として、コンテンツ検索システムは、決定されたクエリグラフから、出力ノード決定規則に従って図12に示すフローチャートに示される経路検査を繰り返し実行して出力ノードを決定することができる。
【0117】
具体的に、コンテンツ検索システムは、クエリグラフから主語、述語、および目的語で構成された単一グループを抽出し、単一グループのうちで目的語を予め認識しているか否かによって主語または述語のうちのいずれか1つのノードを決定する。さらに、コンテンツ検索システムは、決定されたノードが他の単一グループの主語となるか否かを考慮し、先に決定されたノードを出力ノードとして決定する。
【0118】
ステップS1406で、コンテンツ検索システムは、出力ノードに対応する検索クエリの検索結果を検索して提供する。一例として、コンテンツ検索システムは、CPC、CTR、品質指数、またはランダム方式のうちのいずれか1つの基準または組み合わせた基準によって検索結果を整列して提供することができる。
【0119】
図14で説明されなかった部分は、図1ないし図13の説明を参照することができる。
【0120】
なお、本発明の一実施形態に係るオントロジを用いたコンテンツ検索方法は、コンピュータにより実現される多様な動作を実行するためのプログラム命令を含むコンピュータ読取可能な記録媒体を含む。当該記録媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせて含むこともでき、記録媒体およびプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知であり使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フレキシブルディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、フロプティカルディスクのような磁気−光媒体、およびROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれる。また、記録媒体は、プログラム命令、データ構造などを保存する信号を送信する搬送波を含む光または金属線、導波管などの送信媒体であってもよい。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードを含む。
【0121】
上述したように、本発明の好ましい実施形態を参照して説明したが、該当の技術分野において熟練した当業者にとっては、特許請求の範囲に記載された本発明の思想および領域から逸脱しない範囲内で、本発明を多様に修正および変更させることができることを理解することができるであろう。すなわち、本発明の技術的範囲は、特許請求の範囲に基づいて定められ、発明を実施するための最良の形態により制限されるものではない。
【符号の説明】
【0122】
100:情報モデル
101:オントロジ
102:知識ベース
103:検索クエリ
104:キーワード−概念マッピングテーブル
105:検索結果
【特許請求の範囲】
【請求項1】
オントロジを介して検索クエリから抽出したキーワードを前記キーワードに対応するオントロジ概念にマッピングするキーワードマッピング部と、
前記マッピングされたオントロジ概念を用いて前記オントロジからクエリグラフを決定するクエリグラフ決定部と、
前記決定されたクエリグラフから前記検索クエリの検索結果に対応する出力ノードを決定する出力ノード決定部と、
を含むオントロジを用いたコンテンツ検索システム。
【請求項2】
前記オントロジ概念は、
前記オントロジを介して前記キーワードとマッピングされるノードおよびエッジで構成される方向性を持つグラフ構造を有し、
前記エッジは、
前記ノードの属性であることを特徴とする請求項1に記載のコンテンツ検索システム。
【請求項3】
前記オントロジは、
前記オントロジの実際にデータを表現する知識ベースと連結し、
前記知識ベースは、
前記知識ベースのノードおよびエッジを含む知識ベース概念で構成される方向性を持つグラフ構造を有することを特徴とする請求項2に記載のコンテンツ検索システム。
【請求項4】
前記キーワードマッピング部は、
キーワード−概念マッピングテーブルを用いて前記キーワードを前記オントロジ概念にマッピングすることを特徴とする請求項1に記載のコンテンツ検索システム。
【請求項5】
前記キーワードマッピング部は、
前記キーワード−概念マッピングテーブルを用いて前記抽出したキーワードに対応する前記オントロジ概念を検索し、生成可能な前記オントロジ概念の組み合わせを抽出することを特徴とする請求項4に記載のコンテンツ検索システム。
【請求項6】
前記キーワード−概念マッピングテーブルは、
前記オントロジおよび知識ベースの自然語表現であるキーワードを前記オントロジ概念とマッピングして記録された索引データ構造を有することを特徴とする請求項4に記載のコンテンツ検索システム。
【請求項7】
前記クエリグラフ決定部は、
前記オントロジから前記マッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成し、
前記生成されたクエリグラフを整列して前記少なくとも1つのクエリグラフのうちから検索クエリに、より適したクエリグラフを抽出することを特徴とする請求項1に記載のコンテンツ検索システム。
【請求項8】
前記クエリグラフ決定部は、
前記オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することを特徴とする請求項7に記載のコンテンツ検索システム。
【請求項9】
前記ノード間の最大距離は、
前記オントロジ概念に対応する第1概念ノードと第2概念ノードとを連結する経路において、前記経路上に存在するノードの重み付けの総和を適用した値であることを特徴とする請求項8に記載のコンテンツ検索システム。
【請求項10】
前記クエリグラフ決定部は、
実際にデータが知識ベース内に存在するクエリグラフを生成することを特徴とする請求項7に記載のコンテンツ検索システム。
【請求項11】
前記クエリグラフ決定部は、
前記少なくとも1つのクエリグラフを前記検索クエリとの適合度によって整列し、前記検索クエリに適したクエリグラフを抽出することを特徴とする請求項7に記載のコンテンツ検索システム。
【請求項12】
前記クエリグラフ決定部は、
前記少なくとも1つのクエリグラフのうちで前記オントロジ概念に対応するノードとエッジとの間の距離が相対的に小さいクエリグラフを優先して抽出することを特徴とする請求項11に記載のコンテンツ検索システム。
【請求項13】
前記出力ノード決定部は、
前記決定されたクエリグラフから出力ノード決定規則に従って経路検査を繰り返し実行して出力ノードを決定することを特徴とする請求項1に記載のコンテンツ検索システム。
【請求項14】
前記出力ノード決定部は、
前記クエリグラフから主語、述語、および目的語で構成された単一グループを抽出し、前記単一グループのうちで目的語を予め認識しているか否かによって前記主語または述語のうちのいずれか1つのノードを決定することを特徴とする請求項13に記載のコンテンツ検索システム。
【請求項15】
前記出力ノード決定部は、
前記決定されたノードが他の単一グループの主語となるか否かを考慮して前記ノードを出力ノードとして決定することを特徴とする請求項14に記載のコンテンツ検索システム。
【請求項16】
前記出力ノードに対応する検索クエリの検索結果を提供する検索結果提供部をさらに備える請求項1に記載のコンテンツ検索システム。
【請求項17】
前記検索結果提供部は、
CPC、CTR、品質指数、またはランダム方式のうちのいずれか1つの基準または組み合わせた基準によって前記検索結果を整列して提供することを特徴とする請求項16に記載のコンテンツ検索システム。
【請求項18】
オントロジを介して検索クエリから抽出したキーワードを前記キーワードに対応するオントロジ概念にマッピングするステップと、
前記マッピングされたオントロジ概念を用いて前記オントロジからクエリグラフを決定するステップと、
前記決定されたクエリグラフから前記検索クエリの検索結果に対応する出力ノードを決定するステップと、
を含むオントロジを用いたコンテンツ検索方法。
【請求項19】
前記オントロジ概念は、
前記オントロジを介して前記キーワードとマッピングされるノードおよびエッジで構成される方向性を持つグラフ構造を有し、
前記エッジは、
前記ノードの属性であることを特徴とする請求項18に記載のコンテンツ検索方法。
【請求項20】
前記オントロジは、
前記オントロジの実際にデータを表現する知識ベースと連結し、
前記知識ベースは、
前記知識ベースのノードおよびエッジを含む知識ベース概念で構成され、方向性を持つグラフ構造を有することを特徴とする請求項19に記載のコンテンツ検索方法。
【請求項21】
前記オントロジ概念をマッピングするステップは、
前記キーワード−概念マッピングテーブルを用いて前記キーワードに対応する前記オントロジ概念を検索するステップと、
生成可能な前記オントロジ概念の組み合わせを抽出するステップと、
を含む請求項18に記載のコンテンツ検索方法。
【請求項22】
前記キーワード−概念マッピングテーブルは、
前記オントロジおよび知識ベースの自然語表現であるキーワードを前記オントロジ概念とマッピングして記録された索引データ構造を有することを特徴とする請求項21に記載のコンテンツ検索方法。
【請求項23】
前記オントロジからクエリグラフを決定するステップは、
前記オントロジから前記マッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成するステップと、
前記生成されたクエリグラフを整列して前記少なくとも1つのクエリグラフのうちから検索クエリに、より適したクエリグラフを抽出するステップと、
を含む請求項18に記載のコンテンツ検索方法。
【請求項24】
前記少なくとも1つのクエリグラフを生成するステップは、
前記オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することを特徴とする請求項23に記載のコンテンツ検索方法。
【請求項25】
前記ノード間の最大距離は、
前記オントロジ概念に対応する第1概念ノードと第2概念ノードとを連結する経路上において、前記経路上に存在するノードの重み付けの総和を適用した値であることを特徴とする請求項24に記載のコンテンツ検索方法。
【請求項26】
前記少なくとも1つのクエリグラフを生成するステップは、
実際にデータが知識ベース内に存在するクエリグラフを生成することを特徴とする請求項23に記載のコンテンツ検索方法。
【請求項27】
前記少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出するステップは、
前記少なくとも1つのクエリグラフを前記検索クエリとの適合度によって整列して前記検索クエリに、より適したクエリグラフを抽出することを特徴とする請求項23に記載のコンテンツ検索方法。
【請求項28】
前記少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出するステップは、
前記少なくとも1つのクエリグラフのうちで前記オントロジ概念に対応するノードとエッジとの間の距離が相対的に小さいクエリグラフを優先して決定することを特徴とする請求項27に記載のコンテンツ検索方法。
【請求項29】
前記出力ノードを決定するステップは、
前記決定されたクエリグラフから出力ノード決定規則に従って経路検査を繰り返し実行して出力ノードを決定することを特徴とする請求項18に記載のコンテンツ検索方法。
【請求項30】
前記出力ノードを決定するステップは、
前記クエリグラフから主語、述語、および目的語で構成された単一グループを抽出するステップと、
前記単一グループのうちで目的語を予め認識しているか否かによって前記主語または述語のうちのいずれか1つのノードを決定するステップと、
前記決定されたノードが他の単一グループの主語となるか否かを考慮して前記ノードを出力ノードとして選択するステップと、
を含む請求項29に記載のコンテンツ検索方法。
【請求項31】
前記出力ノードに対応する検索クエリの検索結果を提供するステップ、
をさらに含む請求項18に記載のコンテンツ検索方法。
【請求項32】
前記検索クエリの検索結果を提供するステップは、
CPC、CTR、品質指数、またはランダム方式のうちのいずれか1つの基準または組み合わせた基準によって前記検索結果を整列して提供することを特徴とする請求項31に記載のコンテンツ検索方法。
【請求項33】
請求項18〜32のうちのいずれか一項の方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項1】
オントロジを介して検索クエリから抽出したキーワードを前記キーワードに対応するオントロジ概念にマッピングするキーワードマッピング部と、
前記マッピングされたオントロジ概念を用いて前記オントロジからクエリグラフを決定するクエリグラフ決定部と、
前記決定されたクエリグラフから前記検索クエリの検索結果に対応する出力ノードを決定する出力ノード決定部と、
を含むオントロジを用いたコンテンツ検索システム。
【請求項2】
前記オントロジ概念は、
前記オントロジを介して前記キーワードとマッピングされるノードおよびエッジで構成される方向性を持つグラフ構造を有し、
前記エッジは、
前記ノードの属性であることを特徴とする請求項1に記載のコンテンツ検索システム。
【請求項3】
前記オントロジは、
前記オントロジの実際にデータを表現する知識ベースと連結し、
前記知識ベースは、
前記知識ベースのノードおよびエッジを含む知識ベース概念で構成される方向性を持つグラフ構造を有することを特徴とする請求項2に記載のコンテンツ検索システム。
【請求項4】
前記キーワードマッピング部は、
キーワード−概念マッピングテーブルを用いて前記キーワードを前記オントロジ概念にマッピングすることを特徴とする請求項1に記載のコンテンツ検索システム。
【請求項5】
前記キーワードマッピング部は、
前記キーワード−概念マッピングテーブルを用いて前記抽出したキーワードに対応する前記オントロジ概念を検索し、生成可能な前記オントロジ概念の組み合わせを抽出することを特徴とする請求項4に記載のコンテンツ検索システム。
【請求項6】
前記キーワード−概念マッピングテーブルは、
前記オントロジおよび知識ベースの自然語表現であるキーワードを前記オントロジ概念とマッピングして記録された索引データ構造を有することを特徴とする請求項4に記載のコンテンツ検索システム。
【請求項7】
前記クエリグラフ決定部は、
前記オントロジから前記マッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成し、
前記生成されたクエリグラフを整列して前記少なくとも1つのクエリグラフのうちから検索クエリに、より適したクエリグラフを抽出することを特徴とする請求項1に記載のコンテンツ検索システム。
【請求項8】
前記クエリグラフ決定部は、
前記オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することを特徴とする請求項7に記載のコンテンツ検索システム。
【請求項9】
前記ノード間の最大距離は、
前記オントロジ概念に対応する第1概念ノードと第2概念ノードとを連結する経路において、前記経路上に存在するノードの重み付けの総和を適用した値であることを特徴とする請求項8に記載のコンテンツ検索システム。
【請求項10】
前記クエリグラフ決定部は、
実際にデータが知識ベース内に存在するクエリグラフを生成することを特徴とする請求項7に記載のコンテンツ検索システム。
【請求項11】
前記クエリグラフ決定部は、
前記少なくとも1つのクエリグラフを前記検索クエリとの適合度によって整列し、前記検索クエリに適したクエリグラフを抽出することを特徴とする請求項7に記載のコンテンツ検索システム。
【請求項12】
前記クエリグラフ決定部は、
前記少なくとも1つのクエリグラフのうちで前記オントロジ概念に対応するノードとエッジとの間の距離が相対的に小さいクエリグラフを優先して抽出することを特徴とする請求項11に記載のコンテンツ検索システム。
【請求項13】
前記出力ノード決定部は、
前記決定されたクエリグラフから出力ノード決定規則に従って経路検査を繰り返し実行して出力ノードを決定することを特徴とする請求項1に記載のコンテンツ検索システム。
【請求項14】
前記出力ノード決定部は、
前記クエリグラフから主語、述語、および目的語で構成された単一グループを抽出し、前記単一グループのうちで目的語を予め認識しているか否かによって前記主語または述語のうちのいずれか1つのノードを決定することを特徴とする請求項13に記載のコンテンツ検索システム。
【請求項15】
前記出力ノード決定部は、
前記決定されたノードが他の単一グループの主語となるか否かを考慮して前記ノードを出力ノードとして決定することを特徴とする請求項14に記載のコンテンツ検索システム。
【請求項16】
前記出力ノードに対応する検索クエリの検索結果を提供する検索結果提供部をさらに備える請求項1に記載のコンテンツ検索システム。
【請求項17】
前記検索結果提供部は、
CPC、CTR、品質指数、またはランダム方式のうちのいずれか1つの基準または組み合わせた基準によって前記検索結果を整列して提供することを特徴とする請求項16に記載のコンテンツ検索システム。
【請求項18】
オントロジを介して検索クエリから抽出したキーワードを前記キーワードに対応するオントロジ概念にマッピングするステップと、
前記マッピングされたオントロジ概念を用いて前記オントロジからクエリグラフを決定するステップと、
前記決定されたクエリグラフから前記検索クエリの検索結果に対応する出力ノードを決定するステップと、
を含むオントロジを用いたコンテンツ検索方法。
【請求項19】
前記オントロジ概念は、
前記オントロジを介して前記キーワードとマッピングされるノードおよびエッジで構成される方向性を持つグラフ構造を有し、
前記エッジは、
前記ノードの属性であることを特徴とする請求項18に記載のコンテンツ検索方法。
【請求項20】
前記オントロジは、
前記オントロジの実際にデータを表現する知識ベースと連結し、
前記知識ベースは、
前記知識ベースのノードおよびエッジを含む知識ベース概念で構成され、方向性を持つグラフ構造を有することを特徴とする請求項19に記載のコンテンツ検索方法。
【請求項21】
前記オントロジ概念をマッピングするステップは、
前記キーワード−概念マッピングテーブルを用いて前記キーワードに対応する前記オントロジ概念を検索するステップと、
生成可能な前記オントロジ概念の組み合わせを抽出するステップと、
を含む請求項18に記載のコンテンツ検索方法。
【請求項22】
前記キーワード−概念マッピングテーブルは、
前記オントロジおよび知識ベースの自然語表現であるキーワードを前記オントロジ概念とマッピングして記録された索引データ構造を有することを特徴とする請求項21に記載のコンテンツ検索方法。
【請求項23】
前記オントロジからクエリグラフを決定するステップは、
前記オントロジから前記マッピングされたオントロジ概念に対応するノードまたはエッジを含む少なくとも1つのクエリグラフを生成するステップと、
前記生成されたクエリグラフを整列して前記少なくとも1つのクエリグラフのうちから検索クエリに、より適したクエリグラフを抽出するステップと、
を含む請求項18に記載のコンテンツ検索方法。
【請求項24】
前記少なくとも1つのクエリグラフを生成するステップは、
前記オントロジ概念に対応するノード間の最大距離が所定の条件を満たすクエリグラフを生成することを特徴とする請求項23に記載のコンテンツ検索方法。
【請求項25】
前記ノード間の最大距離は、
前記オントロジ概念に対応する第1概念ノードと第2概念ノードとを連結する経路上において、前記経路上に存在するノードの重み付けの総和を適用した値であることを特徴とする請求項24に記載のコンテンツ検索方法。
【請求項26】
前記少なくとも1つのクエリグラフを生成するステップは、
実際にデータが知識ベース内に存在するクエリグラフを生成することを特徴とする請求項23に記載のコンテンツ検索方法。
【請求項27】
前記少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出するステップは、
前記少なくとも1つのクエリグラフを前記検索クエリとの適合度によって整列して前記検索クエリに、より適したクエリグラフを抽出することを特徴とする請求項23に記載のコンテンツ検索方法。
【請求項28】
前記少なくとも1つのクエリグラフのうちから検索クエリに適したクエリグラフを抽出するステップは、
前記少なくとも1つのクエリグラフのうちで前記オントロジ概念に対応するノードとエッジとの間の距離が相対的に小さいクエリグラフを優先して決定することを特徴とする請求項27に記載のコンテンツ検索方法。
【請求項29】
前記出力ノードを決定するステップは、
前記決定されたクエリグラフから出力ノード決定規則に従って経路検査を繰り返し実行して出力ノードを決定することを特徴とする請求項18に記載のコンテンツ検索方法。
【請求項30】
前記出力ノードを決定するステップは、
前記クエリグラフから主語、述語、および目的語で構成された単一グループを抽出するステップと、
前記単一グループのうちで目的語を予め認識しているか否かによって前記主語または述語のうちのいずれか1つのノードを決定するステップと、
前記決定されたノードが他の単一グループの主語となるか否かを考慮して前記ノードを出力ノードとして選択するステップと、
を含む請求項29に記載のコンテンツ検索方法。
【請求項31】
前記出力ノードに対応する検索クエリの検索結果を提供するステップ、
をさらに含む請求項18に記載のコンテンツ検索方法。
【請求項32】
前記検索クエリの検索結果を提供するステップは、
CPC、CTR、品質指数、またはランダム方式のうちのいずれか1つの基準または組み合わせた基準によって前記検索結果を整列して提供することを特徴とする請求項31に記載のコンテンツ検索方法。
【請求項33】
請求項18〜32のうちのいずれか一項の方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2010−205265(P2010−205265A)
【公開日】平成22年9月16日(2010.9.16)
【国際特許分類】
【出願番号】特願2010−45285(P2010−45285)
【出願日】平成22年3月2日(2010.3.2)
【出願人】(505205812)エヌエイチエヌ コーポレーション (408)
【Fターム(参考)】
【公開日】平成22年9月16日(2010.9.16)
【国際特許分類】
【出願日】平成22年3月2日(2010.3.2)
【出願人】(505205812)エヌエイチエヌ コーポレーション (408)
【Fターム(参考)】
[ Back to top ]