(57)【特許請求の範囲】
【請求項１】
コンピュータが実行する、単文／複文構造の自然言語クエリに対する検索および情報提供方法であって、
自然言語クエリの意味分析を介して、前記自然言語クエリに含まれている２つ以上のクエリエンティティを抽出し、
各クエリエンティティの連関性を分析し、
前記分析結果に基づいて、多数のレベルからなるツリー構造のマッシュアップ検索言語を生成し、
前記マッシュアップ検索言語を生成するとき、
所定の属性と判断されたクエリエンティティについては、属性情報と対応付けられて前記マッシュアップ検索言語として用いられ、
それ以外の属性と判断されたクエリエンティティについては、属性情報が前記マッシュアップ検索言語として用いられ、
前記マッシュアップ検索言語の各レベル別のクエリエンティティに対応するデータを知識データベースから検索し、
前記検索の結果として導出したデータから、前記自然言語クエリに対応する主要情報および１つ以上のエンティティ情報を導出することと、
前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることを含むことを特徴とする、単文／複文構造の自然言語クエリに対する検索および情報提供方法。  
【請求項２】
前記マッシュアップ検索言語を生成することは、
前記自然言語クエリの意味分析を介して、前記自然言語クエリが複文構造であるかを判断することと、
前記自然言語クエリが複文構造である場合、複文構造のクエリ言語から２つ以上のクエリ句を導出することと、
前記導出した２つ以上のクエリ句に基づいて前記ツリー構造のマッシュアップ検索言語を生成することを含むことを特徴とする、請求項１に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項３】
前記マッシュアップ検索言語の属性およびドメイン情報を分析することと、
前記分析の結果に基づいて、前記マッシュアップ検索言語に対応する検索環境情報を選択することと、
前記選択した検索環境情報を用いて前記マッシュアップ検索言語を正規化することを含むことを特徴とする、請求項１に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項４】
前記正規化されたマッシュアップ検索言語を、前記選択した検索環境情報を用いて対象検索言語に変換することをさらに含むことを特徴とする、請求項３に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項５】
前記マッシュアップ検索言語の各レベルが連関している場合、
前記知識データベースから前記マッシュアップ検索言語の最上位レベルのエンティティに対応するデータを検索および導出することと、
前記マッシュアップ検索言語の最上位レベルのエンティティに対応するデータに基づいて、前記知識データベースから連続する下位レベルのエンティティに対応するデータを検索および導出することを含み、
前記マッシュアップ検索言語の最下位レベルのエンティティに対応するデータを検索および導出するまで順次繰り返し行われることを特徴とする、請求項１に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項６】
前記マッシュアップ検索言語の最下位レベルのエンティティに対応するデータを前記主要情報として導出し、残りの導出されたレベル別のエンティティに対応するデータを一つ以上のエンティティ情報として導出することをさらに含むことを特徴とする、請求項５に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項７】
前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることは、
前記検索結果画面の上段部に前記マッシュアップ検索言語の最上位レベルのエンティティ情報を出力し、前記マッシュアップ検索言語の最上位レベルのエンティティ情報の下段部に連続する下位レベルのエンティティ情報を出力し、前記マッシュアップ検索言語の最下位レベルのエンティティ情報を前記主要情報として出力する方式を利用することを特徴とする、請求項６に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項８】
前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることは、
前記主要情報および前記一つ以上のエンティティ情報を、一つ以上の属性情報、イメージ情報および映像情報の少なくとも一つを含む要約された情報形態に加工することを含むことを特徴とする、請求項１または７に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項９】
前記検索結果画面上の多数のエンティティ情報のいずれか一つに対するユーザー選択信号の入力の際に、前記ユーザー選択信号に対応するエンティティに関する情報をエンティティ詳細情報に加工することと、
前記検索結果画面を、前記主要情報および前記一つ以上のエンティティ情報が出力される要約情報領域、および前記エンティティ詳細情報が出力される詳細情報領域に区分してレイアウト変更することをさらに含むことを特徴とする、請求項８に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項１０】
前記マッシュアップ検索言語の各レベルが連関していない場合、
前記知識データベースから前記マッシュアップ検索言語のレベル別のエンティティに対応するデータを検索および導出することと、
前記導出したマッシュアップ検索言語のレベル別のエンティティに対応するデータを対象として、前記自然言語クエリの意味分析の結果に基づく論理演算を適用して最終結果データを導出することをさらに含むことを特徴とする、請求項１に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項１１】
前記最終結果データを前記主要情報として導出し、前記導出したレベル別のエンティティに対応するデータを一つ以上のエンティティ情報として導出することをさらに含むことを特徴とする、請求項１０に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項１２】
前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることは、
前記検索結果画面を、前記主要情報および主要情報関連情報が出力される主要情報領域と、前記一つ以上のエンティティ情報が出力されるエンティティ領域に区分してレイアウトすることを含むことを特徴とする、請求項１１に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項１３】
前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることは、
前記主要情報が単一属性の情報である場合、前記主要情報を自然言語ベースの応答形態に加工して提供することをさらに含むことを特徴とする、請求項１に記載の単文／複文構造の自然言語クエリに対する検索および情報提供方法。
【請求項１４】
ユーザーデバイスから入力された自然言語クエリの意味分析を介して、前記自然言語クエリに含まれている２つ以上のクエリエンティティを抽出し、各クエリエンティティの連関性を分析し、前記分析結果に基づいて、多数のレベルからなるツリー構造のマッシュアップ検索言語を生成する自然言語処理エンジンと、
レベル別のマッシュアップ検索言語を構成するクエリエンティティに対応するデータを検索する検索エンジンを含み、
前記自然言語処理エンジンは、
前記マッシュアップ検索言語を生成するとき、所定の属性と判断されたクエリエンティティについては、属性情報と対応付けられて前記マッシュアップ検索言語として用い、それ以外の属性と判断されたクエリエンティティについては、属性情報を前記マッシュアップ検索言語として用い、
前記検索エンジンは、
前記レベル別のマッシュアップ検索言語を構成するクエリエンティティに対応するデータから、前記自然言語クエリに対応する主要情報および１つ以上のエンティティ情報を加工して、同じ検索結果画面上にレイアウトすることを特徴とする、単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項１５】
前記自然言語処理エンジンは、
前記自然言語クエリの意味分析を介して、前記自然言語クエリが複文構造であるかを判断し、前記自然言語クエリが複文構造である場合、複文構造のクエリ言語から二つ以上のクエリ句を導出する意味分析モジュールと、
前記導出した二つ以上のクエリ句に基づいて前記ツリー構造のマッシュアップ検索言語を生成するマッシュアップ検索言語変換モジュールを含むことを特徴とする、請求項１４に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項１６】
前記検索エンジンは、
前記マッシュアップ検索言語の属性情報を分析して、前記マッシュアップ検索言語に対応する検索環境情報を選択し、前記選択した検索環境情報を用いて前記マッシュアップ検索言語を正規化するマッシュアップ検索言語正規化モジュールと、
前記検索環境情報に基づいて前記正規化されたマッシュアップ検索言語を対象検索言語に変換する対象検索言語変換モジュールと、
前記検索環境情報に基づいて、知識データベースから前記対象検索言語に対する物理的データを検索および導出して結果データを生成するデータ導出モジュールと、
前記検索環境情報に基づいて前記データ導出モジュールで生成した結果データを加工し、
前記加工されたデータを含む検索結果画面を生成するデータ加工モジュールを含むことを特徴とする、請求項１４に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項１７】
前記データ導出モジュールは、
前記マッシュアップ検索言語正規化モジュールでの属性分析結果に基づいてマッシュアップ検索言語の各レベルが連関している場合、
前記知識データベースから前記マッシュアップ検索言語の最上位レベルのエンティティに対応するデータを導出し、前記マッシュアップ検索言語の最上位レベルのエンティティに対応するデータに基づいて、前記知識データベースから連続する下位レベルのエンティティに対応するデータを導出し、前記マッシュアップ検索言語の最下位レベルのエンティティに対応するデータを導出するまで順次データ導出を行うことを特徴とする、請求項１６に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項１８】
前記データ導出モジュールは、
前記マッシュアップ検索言語の最下位レベルのエンティティに対応するデータを前記主要情報として導出し、残りの導出されたレベル別のエンティティに対応するデータを一つ以上のエンティティ情報として導出する段階をさらに含むことを特徴とする、請求項１７に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項１９】
前記データ加工モジュールは、
前記検索結果画面の上段部に前記マッシュアップ検索言語の最上位レベルのエンティティ情報を出力し、前記マッシュアップ検索言語の最上位レベルのエンティティ情報の下段部に連続する下位レベルのエンティティ情報を出力し、前記マッシュアップ検索言語の最下位レベルのエンティティ情報を前記主要情報として出力する方式を利用することを特徴とする、請求項１８に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項２０】
前記データ加工モジュールは、
前記主要情報および前記一つ以上のエンティティ情報を、一つ以上の属性情報、イメージ情報および映像情報の少なくとも一つを含む要約された情報形態に加工することを特徴とする、請求項１６に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項２１】
前記データ加工モジュールは、
前記検索結果画面上の多数のエンティティ情報のいずれか一つに対するユーザー選択信号の入力の際に、
前記ユーザー選択信号に対応するエンティティに関する情報をエンティティ詳細情報として加工し、前記検索結果画面を、前記主要情報および前記一つ以上のエンティティ情報が出力される要約情報領域と、前記エンティティ詳細情報が出力される詳細情報領域に区分してレイアウト変更することを特徴とする、請求項２０に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項２２】
前記データ導出モジュールは、
前記判断の結果に基づいて前記マッシュアップ検索言語の各レベルが連関していない場合、
前記知識データベースから前記マッシュアップ検索言語のレベル別のエンティティに対応するデータを検索および導出し、前記導出したマッシュアップ検索言語のレベル別のエンティティに対応するデータを対象として、前記自然言語クエリの意味分析の結果に基づく論理演算を適用して最終結果データを導出することを特徴とする、請求項１６に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項２３】
前記データ導出モジュールは、
前記最終結果データを前記主要情報として導出し、前記導出したレベル別のエンティティに対応するデータを一つ以上のエンティティ情報として導出することを特徴とする、請求項２２に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項２４】
前記データ加工モジュールは、
前記検索結果画面を、前記主要情報および主要情報関連情報が出力される主要情報領域と、前記一つ以上のエンティティ情報が出力されるエンティティ領域に区分してレイアウトすることを特徴とする、請求項２３に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【請求項２５】
前記データ加工モジュールは、
前記主要情報が単一属性の情報である場合、前記主要情報を自然言語ベースの応答形態に加工して提供することを特徴とする、請求項１４に記載の単文／複文構造の自然言語クエリに対する検索および情報提供システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自然言語クエリに対する情報抽出および情報提供方法などに係り、具体的には、単文／複文構造の意味タグ付けされた自然言語クエリに対して、ユーザーの意図に合致する検索結果、およびクエリエンティティと連関のある関連情報を効率よく提供する方法およびシステムに関する。
【背景技術】
【０００２】
オントロジー（Ｏｎｔｏｌｏｇｙ）は、実世界のオブジェクト間の意味的関係を定義することにより、コンピュータがオブジェクト間の複雑な関係から推論される情報にアクセスするための情報に対する意味的仕様を提供するものであって、人工知能、情報検索、ユビキタス、電子商取引などの様々な分野で応用できる。
【０００３】
特に、オントロジーは、ウェブ上の様々な情報を対象間の意味的関係で表現することにより、情報検索分野で既存のキーワードベースの検索では見つけることができなかった論理的クエリ結果を得ることができる。たとえば、オントロジーを利用する場合、“人口が７０００万以上で、海に面した国の首都はどこなのか？”のようなクエリに対する結果を得ることができる。
【０００４】
このようなオントロジー情報検索は、キーワードベースの検索に比べて３つの側面から有用性を持つ。第一に、キーワードベースの検索の結果は、入力キーワードが含まれている文書のみを検索結果として提供するが、オントロジー情報検索は、ユーザーが探している特定の対象とこれに対する属性情報を直接提供することができる。第二に、キーワードベースの検索は入力キーワード間の関係が反映された検索結果を保障することができないが、オントロジー情報検索は探している対象を特徴付けることが可能な他の対象との関係から情報を見つけることができる。第三に、キーワードベースの検索は既に存在する情報のみを検索することができるが、オントロジー情報検索は対象間の関係から新たな関係を見つけることにより、既存には存在しなかった新しい情報を推論することができる。
【０００５】
ところが、このようなオントロジー情報検索は、ユーザーが所望のクエリ対象を直ちに見つけることにより、ユーザーの便宜性の側面で大きく役立つが、一般ユーザーが慣れていないオントロジークエリ言語を使用しなければならないため、一般ユーザーの立場でアクセスが難しいという問題点がある。結局、一般ユーザーが、オントロジーとして構築された情報にアクセスするためには、オントロジーの構造またはオントロジークエリ言語を覚えなければならないので、オントロジーの効用性は劣る。
【０００６】
一方、自然言語は、オントロジークエリ言語で表現される論理的意味を表現するのに十分であり、一般ユーザーが慣れている。したがって、自然言語クエリでオントロジー情報にアクセスすることができれば、一般ユーザーのアクセスを容易にしてオントロジー情報検索の効用性を高めることができる。
【０００７】
オントロジー情報を自然言語クエリでアクセスするためには、自然言語クエリをオントロジークエリ言語に変換する技術が求められる。そのためには、まず、自然言語処理技術を活用して自然言語クエリに対する構造および意味を分析し、分析された自然言語クエリ情報から自然言語の表現に対応するオントロジーのオブジェクトおよび関係を探し、オントロジークエリ言語の文法構造に合わせて自然言語クエリをオントロジークエリ言語に変換しなければならない。
【０００８】
ところが、この方法は、自然言語クエリに対する構造分析および意味分析などの誤りにより、アクセスすることができないオントロジークエリ言語が発生するという問題点がある。さらに具体的に説明すると、一般的な自然言語処理技術が検索対象オントロジーにアクセスすることが可能な自然言語の表現を処理するのに必要なすべての言語資源を備えているという保障がなく、些細な文法的誤りにより誤った分析結果をもたらすおそれがあるので、アクセスすることができないオントロジークエリ言語が発生することがある。
【０００９】
結局、既存の検索方法によれば、ユーザーは、誤りが発生するクエリに対して複数回の試行錯誤を経て、システムが処理することが可能なクエリ類型を覚えなければならないが、こうなると、オントロジーベースの情報検索を初めて利用するユーザーは、自然言語処理技術が収容することが可能なクエリの形態およびオントロジーに構築された情報の具体的な内容を知らないため、どんなクエリが有用であるか分からなくなる。
【００１０】
また、サービス提供者の立場から、構築されたオントロジー情報をすべて提供することはできない。また、保有している情報の有用性を十分に示すことができない。
【００１１】
ところが、ほとんどのユーザーは、サービス提供者が準備したオントロジーに関する情報またはクエリ入力方法を入念に熟知するよりは、キーワードベースの情報検索を行うように直観的に使用することを望んでおり、新しいシステムへの適応に投資する時間および努力に比例してそのシステムに対する活用度または満足度は減ることになる。
【００１２】
したがって、情報検索の効用性および正確性を高めるための自然言語理解技術（Ｎａｔｕｒａｌ Ｌａｎｇｕａｇｅ Ｕｎｄｅｒｓｔａｎｄｉｎｇ：ＮＬＵ）に関する研究が続けられている。自然言語技術は、‘ユーザー問い合わせ’を対象としてユーザーの問い合わせの意図を把握しようとするもので、音声で発話した或いはテキストとして入力した問い合わせが入力され、自然言語技術で問い合わせの意図を把握して抽出したリストが該当問い合わせに対する出力になることを意味する。
【発明の概要】
【発明が解決しようとする課題】
【００１３】
意味タグ付けベースの自然言語クエリは、既存のキーワードベースのクエリに比べて複雑なクエリを可能にする一方、クエリに含まれているユーザークエリの意図を正確に把握し、それに合致する検索結果を提供することが難しい。
【００１４】
本発明の目的は、上述した問題点を解決するために案出されたもので、意味タグ付けされた単文／複文構造の自然言語クエリを分析し、階層的なツリー構造で上位エンティティから下位エンティティへ段階的にデータを検索することにより、ユーザーの意図に合致する情報を段階的に提供する方法およびシステムを提供することにある。
【００１５】
また、本発明の他の目的は、複文構造の自然言語クエリを構成するエンティティに基づいて検索したエンティティ情報を抽出し、ユーザークエリに対する検索結果と共に効率よく提供することができるレイアウト方法を提供することにある。
【００１６】
本発明で解決しようとする技術的課題は、上述した技術的課題に限定されず、上述していない別の技術的課題は、以降の記載から、本発明の属する技術分野における通常の知識を有する者に明確に理解できるであろう。
【課題を解決するための手段】
【００１７】
上述した課題を解決するための本発明の一様態の一実施例に係る単文／複文構造の自然言語クエリに対する検索および情報提供方法は、自然言語クエリの意味分析を介して、前記自然言語クエリに含まれている１つ以上のクエリエンティティに基づいて、多数のレベルからなるツリー構造のマッシュアップ検索言語を生成することと、前記マッシュアップ検索言語の属性情報に基づいてレベル別のマッシュアップ検索言語を構成するクエリエンティティを介して、前記マッシュアップ検索言語の各レベルがリンキング（ｌｉｎｋｉｎｇ）されているか否かを判断することと、前記判断の結果に基づいて、知識データベースから前記マッシュアップ検索言語の各レベル別のクエリエンティティに対応するデータを検索し、前記検索の結果として導出したデータから前記自然言語クエリに対応する主要情報および１つ以上のエンティティ情報を導出することと、前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることを含む。
【００１８】
本発明の実施例に係る前記マッシュアップ検索言語を生成することは、前記自然言語クエリの意味分析を介して、前記自然言語クエリが単文構造であるか複文構造であるかを判断することと、前記自然言語クエリが複文構造である場合、複文構造のクエリ言語から２つ以上のクエリ句を導出することと、前記導出した２つ以上のクエリ句に基づいて前記ツリー構造のマッシュアップ検索言語を生成することを含むことができる。
【００１９】
本発明の実施例に係る前記マッシュアップ検索言語の属性情報に基づいてレベル別のマッシュアップ検索言語を構成するクエリエンティティを介して、前記マッシュアップ検索言語の各レベルがリンキング（ｌｉｎｋｉｎｇ）されているか否かを判断することは、前記マッシュアップ検索言語の属性およびドメイン情報を分析することと、前記分析の結果に基づいて、前記マッシュアップ検索言語に対応する検索環境情報を選択することと、前記選択した検索環境情報を用いて前記マッシュアップ検索言語を正規化することを含むことができる。また、前記マッシュアップ検索言語の属性情報に基づいてレベル別のマッシュアップ検索言語を構成するクエリエンティティを介して、前記マッシュアップ検索言語の各レベルがリンキング（ｌｉｎｋｉｎｇ）されているか否かを判断することは、前記正規化されたマッシュアップ検索言語を前記選択した検索環境情報を用いて前記対象検索言語に変換することをさらに含むことができる。
【００２０】
本発明の一実施例に係る前記判断の結果に基づいて、知識データベースから前記マッシュアップ検索言語の各レベル別のクエリエンティティに対応するデータを検索し、前記検索の結果として導出したデータから前記自然言語クエリに対応する主要情報および１つ以上のエンティティ情報を導出することは、前記判断の結果に基づいて前記マッシュアップ検索言語の各レベルがリンキング（ｌｉｎｋｉｎｇ）されている場合、前記知識データベースから前記マッシュアップ検索言語の最上位レベルのエンティティに対応するデータを検索および導出することと、前記マッシュアップ検索言語の最上位レベルのエンティティに対応するデータに基づいて、前記知識データベースから連続する下位レベルのエンティティに対応するデータを検索および導出することとを含み、前記判断の結果に基づいて、知識データベースから前記マッシュアップ検索言語の各レベル別のクエリエンティティに対応するデータを検索し、前記検索の結果として導出したデータから前記自然言語クエリに対応する主要情報および１つ以上のエンティティ情報を導出することは、前記マッシュアップ検索言語の最下位レベルのエンティティに対応するデータを検索および導出するまで順次繰り返し行われ得る。
【００２１】
このとき、本発明の実施例に係る前記判断の結果に基づいて、知識データベースから前記マッシュアップ検索言語の各レベル別のクエリエンティティに対応するデータを検索し、前記検索の結果として導出したデータから前記自然言語クエリに対応する主要情報および１つ以上のエンティティ情報を導出することは、前記マッシュアップ検索言語の最下位レベルのエンティティに対応するデータを前記主要情報として導出し、残りの導出されたレベル別のエンティティに対応するデータを一つ以上のエンティティ情報として導出することをさらに含むことができる。そして、本発明の実施例に係る前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることは、前記検索結果画面の上段部に前記マッシュアップ検索言語の最上位レベルのエンティティ情報を出力し、前記マッシュアップ検索言語の最上位レベルのエンティティ情報の下段部に連続する下位レベルのエンティティ情報を出力し、前記マッシュアップ検索言語の最下位レベルのエンティティ情報を前記主要情報として出力する方式を利用することができる。
【００２２】
一方、本発明の実施例に係る前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることは、前記主要情報および前記一つ以上のエンティティ情報を、一つ以上の属性情報、イメージ情報および映像情報の少なくとも一つを含む要約された情報形態に加工することを含むことができる。
【００２３】
さらに、本発明の実施例に係る前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることは、前記検索結果画面上の多数のエンティティ情報のいずれか一つに対するユーザー選択信号の入力の際に、前記ユーザー選択信号に対応するエンティティに関する情報をエンティティ詳細情報に加工することと、前記検索結果画面を、前記主要情報および前記一つ以上のエンティティ情報が出力される要約情報領域と、前記エンティティ詳細情報が出力される詳細情報領域に区分してレイアウト変更することをさらに含むことができる。
【００２４】
本発明の他の実施例に係る前記判断の結果に基づいて、知識データベースから前記マッシュアップ検索言語の各レベル別のクエリエンティティに対応するデータを検索し、前記検索の結果として導出したデータから前記自然言語クエリに対応する主要情報および１つ以上のエンティティ情報を導出することは、前記判断の結果に基づいて前記マッシュアップ検索言語の各レベルがリンキングされていない場合、前記知識データベースから前記マッシュアップ検索言語のレベル別のエンティティに対応するデータを検索および導出することと、前記導出したマッシュアップ検索言語のレベル別のエンティティに対応するデータを対象として、前記自然言語クエリの意味分析の結果に基づく論理演算を適用して最終結果データを導出することとをさらに含むことができる。
【００２５】
このとき、本発明の実施例に係る前記判断の結果に基づいて、知識データベースから前記マッシュアップ検索言語の各レベル別のクエリエンティティに対応するデータを検索し、前記検索の結果として導出したデータから前記自然言語クエリに対応する主要情報および１つ以上のエンティティ情報を導出することは、前記最終結果データを前記主要情報として導出し、前記導出したレベル別のエンティティに対応するデータを一つ以上のエンティティ情報として導出することをさらに含むことができる。
【００２６】
そして、本発明の実施例に係る前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることは、前記検索結果画面を、前記主要情報および主要情報関連情報が出力される主要情報領域と、前記一つ以上のエンティティ情報が出力されるエンティティ領域に区分してレイアウトすることができる。
【００２７】
一方、本発明の実施例に係る前記主要情報および前記一つ以上のエンティティ情報を含む検索結果画面をレイアウトすることは、前記主要情報が単一属性の情報である場合、前記主要情報を自然言語ベースの応答形態に加工して提供することをさらに含むことができる。
【００２８】
上述した課題を解決するための本発明の他の態様の一実施例に係る自然言語クエリベースの検索システムは、ユーザーデバイスから入力された自然言語クエリの意味分析を介して、前記自然言語クエリに含まれている１つ以上のクエリエンティティに基づいて、多数のレベルからなるツリー構造のマッシュアップ検索言語に変換する自然言語処理エンジンと、前記マッシュアップ検索言語の属性情報に基づいて、前記マッシュアップ検索言語の各レベルがリンキング（ｌｉｎｋｉｎｇ）されているか否かを判断し、レベル別のマッシュアップ検索言語を構成するクエリエンティティに対応するデータを検索する検索エンジンを含んでなり、前記検索エンジンは、前記レベル別のマッシュアップ検索言語を構成するクエリエンティティに対応するデータから、前記自然言語クエリに対応する主要情報および１つ以上のエンティティ情報を加工して、同じ検索結果画面上にレイアウトすることができる。
【００２９】
本発明の実施例に係る前記自然言語処理エンジンは、前記自然言語クエリの意味分析を介して、前記自然言語クエリが単文構造であるか複文構造であるかを判断し、前記自然言語クエリが複文構造である場合、複文構造のクエリ言語から二つ以上のクエリ句を導出する意味分析モジュールと、前記導出した二つ以上のクエリ句に基づいて前記ツリー構造のマッシュアップ検索言語を生成するマッシュアップ検索言語変換モジュールとを含むことができる。
【００３０】
本発明の実施例に係る前記検索エンジンは、前記マッシュアップ検索言語の属性情報を分析して、前記マッシュアップ検索言語に対応する検索環境情報を選択し、前記選択した検索環境情報を用いて前記マッシュアップ検索言語を正規化するマッシュアップ検索言語正規化モジュールと、前記検索環境情報に基づいて前記正規化されたマッシュアップ検索言語を前記対象検索言語に変換する対象検索言語変換モジュールと、前記検索環境情報に基づいて前記知識データベースから前記対象検索言語に対する物理的データを検索および導出して結果データを生成するデータ導出モジュールと、前記検索環境情報に基づいて前記データ導出モジュールで生成した結果データを加工し、前記加工されたデータを含む検索結果画面を生成するデータ加工モジュールとを含むことができる。
【００３１】
このとき、本発明の一実施例に係る前記データ導出モジュールは、前記マッシュアップ検索言語正規化モジュールでの属性分析結果に基づいてマッシュアップ検索言語の各レベルがリンキング（ｌｉｎｋｉｎｇ）されている場合、前記知識データベースから前記マッシュアップ検索言語の最上位レベルのエンティティに対応するデータを導出し、前記マッシュアップ検索言語の最上位レベルのエンティティに対応するデータに基づいて前記知識データベースから連続する下位レベルのエンティティに対応するデータを導出し、前記マッシュアップ検索言語の最下位レベルのエンティティに対応するデータを導出するまで順次データ導出を行うことができる。
【００３２】
また、前記データ導出モジュールは、前記マッシュアップ検索言語の最下位レベルのエンティティに対応するデータを前記主要情報として導出し、残りの導出されたレベル別のエンティティに対応するデータを一つ以上のエンティティ情報として導出することをさらに含むことができる。
【００３３】
そして、本発明の実施例に係る前記データ加工モジュールは、前記検索結果画面の上段部に前記マッシュアップ検索言語の最上位レベルのエンティティ情報を出力し、前記マッシュアップ検索言語の最上位レベルのエンティティ情報の下段部に連続する下位レベルのエンティティ情報を出力し、前記マッシュアップ検索言語の最下位レベルのエンティティ情報を前記主要情報として出力する方式を利用することができる。
【００３４】
好ましくは、前記データ加工モジュールは、前記主要情報および前記一つ以上のエンティティ情報を、一つ以上の属性情報、イメージ情報および映像情報の少なくとも一つを含む要約された情報形態に加工することができる。
【００３５】
本発明の実施例に係る前記データ加工モジュールは、前記検索結果画面上の多数のエンティティ情報のいずれか一つに対するユーザー選択信号の入力の際に、前記ユーザー選択信号に対応するエンティティに関する情報をエンティティ詳細情報として加工し、前記検索結果画面を、前記主要情報および前記一つ以上のエンティティ情報が出力される要約情報領域と、前記エンティティ詳細情報が出力される詳細情報領域に区分してレイアウト変更することができる。
【００３６】
本発明の他の実施例に係る前記データ導出モジュールは、前記判断の結果に基づいて前記マッシュアップ検索言語の各レベルがリンキングされていない場合、前記知識データベースから前記マッシュアップ検索言語のレベル別のエンティティに対応するデータを検索および導出し、前記導出したマッシュアップ検索言語のレベル別のエンティティに対応するデータを対象として、前記自然言語クエリの意味分析の結果に基づく論理演算を適用して最終結果データを導出することができる。
【００３７】
このとき、本発明の実施例に係る前記データ導出モジュールは、前記最終結果データを前記主要情報として導出し、前記導出したレベル別のエンティティに対応するデータを一つ以上のエンティティ情報として導出することができる。
【００３８】
そして、本発明の実施例に係る前記データ加工モジュールは、前記検索結果画面を前記主要情報および主要情報関連情報が出力される主要情報領域と、前記一つ以上のエンティティ情報が出力されるエンティティ領域に区分してレイアウトすることができる。
【００３９】
一方、本発明の実施例に係る前記データ加工モジュールは、前記主要情報が単一属性の情報である場合、前記主要情報を自然言語ベースの応答形態に加工して提供することができる。
【００４０】
前記実施形態は本発明の好適な実施例の一部に過ぎず、本発明の技術的特徴が反映された様々な実施例は当該技術分野における通常の知識を有する者によって本発明の詳細な説明に基づいて導出および理解できる。
【発明の効果】
【００４１】
本発明の実施例によれば、意味タグ付けされた複文構造の自然言語クエリを分析し、階層的ツリー構造で上位エンティティから下位エンティティへ段階的にデータを検索することにより、ユーザーの意図に合致する情報の正確度を向上させることができる。
【００４２】
また、本発明の実施例によれば、複文構造の自然言語クエリに含まれている１つ以上のエンティティと連関のあるエンティティ情報を抽出してユーザークエリに対する検索結果と一緒に提供することにより、情報提供の多様性、ユーザーの便宜性および検索サービスの効率性を向上させることができる。
【図面の簡単な説明】
【００４３】
本発明に関する理解を助けるために詳細な説明の一部として含まれる添付図面は、本発明の実施例を提供し、詳細な説明と共に本発明の技術的思想を説明する。
【図１】本発明の実施例に係る自然言語クエリベースの検索システムの一例を示す図である。
【図２】本発明の実施例によって自然言語クエリから変換したツリー構造のマッシュアップ検索言語の一例を示す図である。
【図３】本発明の実施例に係る検索エンジンが自然言語処理エンジンから受信したメッセージアップ検索言語に基づいて情報を提供するまでの過程の一例を示す図である。
【図４】本発明の実施例に係る検索エンジンでツリー構造のマッシュアップ検索言語の属性に基づいてデータを検索し、主要情報およびエンティティ情報を導出する過程の一例を示す図である。
【図５】本発明の実施例に係る検索エンジンが導出した情報をレイアウトする方式の一例を示す図である。
【図６】本発明の実施例に係る検索システムでユーザークエリに対する検索結果画面の一例を示す図である。
【図７】本発明の実施例に係る検索システムでユーザークエリに対する検索結果画面の他の例を示す図である。
【図８】本発明の実施例に係る検索エンジンが導出した情報をレイアウトする方式の他の例を示す図である。
【図９】本発明の実施例に係る検索システムでユーザークエリに対する検索結果画面の別の例を示す図である。
【図１０】本発明の実施例に係る検索システムでユーザークエリに対する検索結果画面の別の例を示す図である。
【発明を実施するための形態】
【００４４】
本発明は、様々な変形を加えることができ、様々な実施例を有することができるが、特定の実施例を図面に例示し、本発明の詳細な説明で説明する。本発明を説明するにあたり、関連した公知の技術に対する具体的な説明が本発明の要旨を曖昧にするおそれがあると判断される場合、その詳細な説明を省略する。
【００４５】
以下、本発明に係る好適な実施形態を添付図面に基づいて詳細に説明する。添付図面と共に以下に開示される詳細な説明は、本発明の例示的な実施形態を説明しようとするもので、本発明が実施され得る唯一の実施形態を示そうとするものではない。以下の詳細な説明は、本発明の完全な理解を提供するための具体的な詳細説明を含む。ところが、当業者は、本発明がこのような具体的詳細説明なしにも実施され得ることを理解するであろう。
【００４６】
本発明は、自然言語クエリに対する情報抽出および情報提供方法などに関し、具体的には、意味タグ付けされた自然言語クエリに対して、ユーザーの意図に合致する検索結果およびクエリ対象と関連のある関連情報を効率よく提供する方法およびシステムに関する。
【００４７】
図１は本発明の実施例に係る自然言語クエリベースの検索システムの一例を示す図である。
【００４８】
図１を参照すると、本発明の実施例に係る検索システム１００は、ユーザーデバイス１１０を介して入力されたユーザークエリ言語を分析するための自然言語理解技術（Ｎａｔｕｒａｌ Ｌａｎｇｕａｇｅ Ｕｎｄｅｒｓｔａｎｄｉｎｇ：ＮＬＵ）ベースの自然言語処理エンジン１２０、検索エンジン１３０および知識データベース１４０から構成される。
【００４９】
自然言語処理エンジン１２０は、ユーザーデバイス１１０を介して入力された意味タグ付け自然言語ベースの複雑なクエリ言語を分析し、意味分析を介してマッシュアップ検索言語（ｍａｓｈｕｐ Ｑｕｅｒｙ Ｌａｎｇｕａｇｅ：ＭＱＬ）に変換し、検索エンジン１３０は、自然言語処理エンジン１２０で生成されたＭＱＬに基づいて、既に構築された知識データベースからクエリ要請された情報を導出してユーザーデバイス１１０へ提供する。
【００５０】
好ましくは、検索エンジン１３０は、ＭＱＬを介して最終的に導出することが可能なユーザークエリに符合する検索結果、およびクエリエンティティに対応するエンティティ情報を導出して提供することができる。本明細書において、クエリエンティティとは、知識データベースを介して検索結果を導出することが可能な“検索対象”を意味するもので、１つのユーザークエリには１つ以上のクエリエンティティが含まれ得る。
【００５１】
以下、本発明の実施例に係る検索システムの各構成について簡略的に説明する。
【００５２】
自然言語処理エンジン１２０は、ユーザークエリの意味分析を行う意味分析モジュール１２１、および意味分析結果に基づいて自然言語ベースのユーザークエリ言語を推論可能なＭＱＬに変換するＭＱＬ変換モジュール１２２を含む。
【００５３】
意味分析モジュール１２１は、ユーザークエリ言語が単文構造であるか複文構造であるかを分析し、クエリ言語を構成する多数の形態素間の関係分析を介してユーザークエリの意図、およびクエリ言語に含まれている詳細クエリ句を導出する。
【００５４】
たとえば、“Ａ歌手グループのメンバーが出演した映画は？”とは、ユーザークエリに対する分析の結果、“Ａ歌手グループ”と“メンバー”との連関性、“メンバー”と“出演映画”との連関性、および“映画”と“情報”との連関性を導出することができる。これに基づいて、該当クエリから、“Ａ歌手グループのメンバー”、“各メンバーが出演した映画”および“該当映画の基本情報”のように上位概念から下位概念へと階層的構造をなす階層型クエリ句を構成することができる。
【００５５】
別の例として、“女優Ｂと年齢の同じ女優は？”とは、ユーザークエリに対する意味分析の結果、“女優Ｂの年齢（Ｎ）は？”や“年齢Ｎの女優は？”などの同一レベルのクエリ句を導出することができる。
【００５６】
ＭＱＬ変換モジュール１２２は、意味分析モジュール１２１で行った分析の結果に基づいて、ユーザークエリに含まれている１つ以上のクエリ句を推論することができるように、ツリー構造のＭＱＬを生成する。すなわち、ＭＱＬ変換モジュール１２２は、自然言語ベースのユーザークエリ言語を検索用言語のＭＱＬに変換するモジュールである。
【００５７】
本明細書において、ＭＱＬとは、クエリ言語を分析し、サービス端の属性を指定する検索言語であって、自然言語で表現されたユーザークエリに意味タグ付けして知識データベースに問い合わせるために考案された言語と定義することができる。ＭＱＬは、外部的には論理的属性を用い、内部的には知識データベースの物理的属性を用いて検索結果を生成する二重構造からなる。
【００５８】
すなわち、ＭＱＬは、知識データベースの物理的構造に従わず、独自の論理的構造を構築して、設定を介して論理的構造と物理的構造との関係を定義してクエリ類型別、サービス類型別に適切なデータの提供ができるようにするための言語である。たとえば、ユーザークエリ言語に“何歳ですか”という句が含まれる場合、これを基に変換されたＭＱＬは“年齢”という属性を指定することができる。
【００５９】
ＭＱＬ変換モジュール１２２で生成するツリー構造のＭＱＬは、図２に例示されているとおりである。これについては図２を参照して後述する。
【００６０】
次に、検索エンジン１３０は、自然言語処理エンジン１２０で生成された自然言語クエリベースのツリー構造ＭＱＬに基づいて知識データベース１４０からの情報検索を行う。具体的には、ツリー構造のＭＱＬを介して最終的に導出することが可能なユーザークエリに符合する主要情報、および各クエリ句またはクエリエンティティに対応するエンティティ情報を導出して提供することができる。
【００６１】
本明細書において、“主要情報”とは、ユーザークエリが要請する事項に対する検索結果であって、複文構造のクエリに対してレベルごとに導出した一つ以上の物理的データに基づいて、クエリの意図に応じて論理的に演算して導出した情報として定義することができる。また、“エンティティ情報”とは、ユーザークエリを構成するエンティティまたはレベル別に導出したデータとして定義することができる。すなわち、エンティティ情報は、最終的に主要情報を導出するために、中間段階で用いた情報であるか、或いは主要情報の導出に用いた物理的データに連関付けられている情報である。
【００６２】
下記表１は、本発明に係るユーザークエリに対する検索結果として提供される主要情報およびエンティティ情報の一例を示すものである。
【００６３】
【表１】
0006014725.tif 000002
このような主要情報およびエンティティ情報の提供のために、検索エンジン１３０は、自然言語処理エンジン１２０から伝送されるＭＱＬの属性を分析して正規化するＭＱＬ正規化モジュール１３１と、正規化されたＭＱＬを知識データベース検索のための対象検索言語（Ｏｂｊｅｃｔ Ｑｕｅｒｙ Ｌａｎｇｕａｇｅ：ＯＱＬ）に変換するＯＱＬ変換モジュール１３２と、知識データベース１４０に基づいて、ＯＱＬに対応するデータを検索し導出するためのデータ導出モジュール１３３と、導出した検索データを、複文構造のユーザークエリに符合するように加工して検索結果画面をレイアウトするデータ加工モジュール１３４を含む
【００６４】
本明細書において、ＯＱＬとは、知識データベースの検索に最適化された言語と定義することができる。ＯＱＬは、知識データベースが使用する物理的構造を用いる。たとえば、前述した実施例において、ユーザークエリ言語である“何歳ですか”から変換された属性言語ＭＱＬ“年齢”に対して、“現在年度の値と出生年度の値を用いて年齢を計算するための検索言語”で表現されるＯＱＬに変換することができる。
【００６５】
知識データベース１４０は、ＭＱＬ属性に基づいて選択することができる様々な検索環境情報（ＭＱＬ＿ｃｏｎｆｉｇ）を格納するＭＱＬ ｃｏｎｆｉｇ ＤＢ１４１と、ＭＱＬからＯＱＬへの変換に必要な属性情報および規則情報を格納するＯＱＬ ＤＢ１４２と、知識情報ＤＢ１４３と、データ加工規則ＤＢ１４４とを含む。
【００６６】
検索エンジン１３０の各構成について考察すると、ＭＱＬ正規化モジュール１３１は、ツリー構造のＭＱＬ属性の分析を介して、ＭＱＬ ｃｏｎｆｉｇ ＤＢ１４１から、クエリの意図に合致するＭＱＬ ｃｏｎｆｉｇを導出し、これを適用して、自然言語処理エンジン１２０から受信したＭＱＬを正規化されたＭＱＬ（ＭＱＬ＿ｎｏｒｍａｌｉｚａｔｉｏｎ）に変換する。
【００６７】
本明細書において、ＭＱＬ＿ｃｏｎｆｉｇとは、検索モード（ｍｏｄｅ）、検索ドメイン（ｄｏｍａｉｎ）および検索プロパティ（ｐｒｏｐｅｒｔｙ）などを考慮して、クエリの意図に合致する検索条件、検索条件および検索データ加工方式の少なくとも一つを定義する検索環境情報として定義することができる。このとき、検索モードは、ユーザークエリの類型を意味するもので、正解型、比較型、関係型、グラフ型などを例として挙げることができ、検索ドメインは、クエリ対象または属性が属した意味上の範疇を意味するもので、“人物、映画、放送、出版物、ウェブトゥーン（Ｗｅｂｔｏｏｎ）、美術作品、植物、動物、文化財、ワイン、ゲーム”などを例として挙げることができ、検索プロパティは、クエリ対象間の関係または対象を叙述する単位を意味する。
【００６８】
したがって、ＭＱＬ正規化モジュール１３１は、ツリー構造のＭＱＬに対して検索モード、検索ドメインおよび検索プロパティの少なくとも一つに関連する属性分析を介して、ＭＱＬ ｃｏｎｆｉｇ ＤＢ１４１からクエリの意図に合致するＭＱＬ ｃｏｎｆｉｇを選択し、これに基づいてＭＱＬ＿ｎｏｒｍａｌｉｚａｔｉｏｎに変換することができる。
【００６９】
このとき、ＭＱＬ正規化モジュール１３１は、ＭＱＬ ｃｏｎｆｉｇに応じて、ユーザークエリの意図に近づけるための追加データ導出のための手がかり情報を含ませてＭＱＬ＿ｎｏｒｍａｌｉｚａｔｉｏｎを構成することができる。
【００７０】
ＯＱＬ変換モジュール１３２は、ＭＱＬ正規化モジュール１３１で変換されたＭＱＬ＿ｎｏｒｍａｌｉｚａｔｉｏｎに対してＯＱＬ ＤＢ１４２に基づいてＯＱＬに変換する。このとき、ＯＱＬ変換モジュール１３２は、ＭＱＬ＿ｃｏｎｆｉｇを基にＭＱＬの論理的ドメインおよび属性に基づいて知識情報ＤＢ１４３の物理的属性値として所望のデータを導出することが可能なＯＱＬに変換することができる。
【００７１】
データ導出モジュール１３３は、ＯＱＬ変換モジュール１３２で変換されたＯＱＬを基に知識情報ＤＢ１４３を検索して物理的データを導出し、物理的データを用いてＭＱＬ ｃｏｎｆｉｇによる主要情報およびエンティティ情報を導出する。主要情報は、ＯＱＬベースの物理的構造結果を論理的構造に変換し、論理的構造による最終的に導出された結果データとみなすことができ、エンティティ情報は、ツリー構造の階層的ＭＱＬから段階ごとに導出された物理的データであるか、或いはクエリエンティティと連関のある物理的データとみなすことができる。
【００７２】
データ加工モジュール１３４は、データ導出モジュール１３３で導出した主要情報およびエンティティ情報をＭＱＬ ｃｏｎｆｉｇに応じて加工し、これを含む検索結果画面をレイアウトする。このとき、ＭＱＬ ｃｏｎｆｉｇ ＤＢ１４１と連動するデータ加工規則ＤＢ１４４から、ＭＱＬ ｃｏｎｆｉｇに符合するデータ加工規則をもたらし、これに基づいてデータを加工することができる。たとえば、ＭＱＬ ｃｏｎｆｉｇ＿ｄｏｍａｉｎに基づいて定義された基本露出属性、イメージ提供方式、データ整列方式、リンク生成方式などに基づいてデータ加工および検索結果画面をレイアウトすることができる。
【００７３】
また、データ加工モジュール１３４は、同じ主要情報およびエンティティ情報であっても、検索結果画面上に出力されるレイアウト方式を様々に設定することができる。
【００７４】
たとえば、ユーザークエリの類型に応じて、主要情報またはエンティティ情報は、単一のオブジェクトに関する情報、或いは同じレベルの２つ以上のオブジェクトに関する情報である。データ加工モジュール１３４は、主要情報またはエンティティ情報の検索結果に基づいて、シングル型レイアウトまたは多数の検索結果が並べられるリスト型レイアウトを構成することができ、単一検索結果が“数字”または“名称”などの短答型の情報である場合、主要情報は、該当検索情報を含む一種の文章形態に加工することができる。
【００７５】
さらに、データ加工モジュール１３４は、ユーザーが主要情報またはエンティティ情報に対する詳細情報を要請する場合、検索結果画面上に主要情報およびエンティティ情報の要約情報を提供するとともに、ユーザーが選択した特定のエンティティ情報に対する詳細情報を露出させるように検索結果画面を加工することができる。
【００７６】
図２は本発明の実施例によって自然言語クエリから変換したツリー構造のＭＱＬの一例を示す図である。
【００７７】
図２を参照すると、ユーザークエリ言語は“少女時代のメンバーが出演した映画は？”であり、自然言語処理エンジンはクエリ言語を意味分析して“少女時代（歌手グループ名）、メンバー（属性）、映画（属性）”のようなエンティティを抽出し、各エンティティ間の連関性を分析して“少女時代のメンバー＞メンバーが出演した映画＞映画情報”のような上位概念から下位概念へのクエリ句を構成し、これに基づいて、図２に示したような階層的ツリー構造のＭＱＬ２００で表すことができる。例示されたツリー構造において、１レベル２１０は、“少女時代のメンバー”をＭＱＬ変換したもので、“ｏｂｊｅｃｔ／ｎａｍｅ”：“少女時代”２１１とそれに対する属性情報としての“ｐｅｒｓｏｎ／ｍｅｍｂｅｒ”２１２に変換することができる。２レベル２２０は、“メンバーが出演した映画”をＭＱＬ変換したもので、“ｐｅｒｓｏｎ／ｍｅｍｂｅｒ”２１２に対する属性情報としての“ｐｅｒｓｏｎ／ｍｏｖｉｅ＿ｐｅｒｆｏｒｍｅｄ”２２１および“ｍｏｖｉｅ／ｐｅｒｓｏｎ（ｍｅｍｂｅｒ）”２２２に変換することができる。３レベル２３０は、“ｍｏｖｉｅ／ｐｅｒｓｏｎ（ｍｅｍｂｅｒ）”２２２に対する属性情報であって、該当映画に対する詳細情報を意味する“ｍｏｖｉｅ＿ｍｅｍｂｅｒ ｐｅｒｆｏｒｍｅｄ”２３１のように構成することができる。
【００７８】
図２に例示されているツリー構造ＭＱＬは、自然言語処理エンジンで生成されたもので、検索エンジンは、このようなツリー構造ＭＱＬを用いてユーザークエリに対する主要情報およびエンティティ情報を導出する。
【００７９】
図３は本発明の実施例に係る検索エンジンが自然言語処理エンジンから受信したＭＱＬに基づいて情報を提供するまでの過程の一例を示す図である。
【００８０】
図３を参照すると、本発明の実施例に係る検索エンジンは、自然言語処理エンジンから伝送されるＭＱＬに対して、ＭＱＬに含まれているツリー構造およびＭＱＬドメインを分析する（Ｓ３０１）。
【００８１】
分析結果に基づいて、検索エンジンは、ＭＱＬ ｃｏｎｆｉｇ ＤＢからユーザークエリの意図に合致するＭＱＬ ｃｏｎｆｉｇを導出し、これに基づいて、自然言語処理エンジンから受信したＭＱＬをＭＱＬ＿ｎｏｒｍａｌｉｚａｔｉｏｎに正規化する作業を行う（Ｓ３０２）。
【００８２】
ＭＱＬ ｃｏｎｆｉｇは、表１を参照して上述したように、クエリ言語の属性に基づいてクエリモード、クエリドメイン、クエリプロパティなどの特性に応じて定義される検索環境情報であって、ユーザークエリの意図に応じて適用されるＭＱＬ ｃｏｎｆｉｇは変わりうる。このとき、該当ＭＱＬに適用するＭＱＬ ｃｏｎｆｉｇ特性に応じて、ユーザークエリの意図に最適化された主要情報およびクエリエンティティ別のエンティティ情報属性が変わり、情報提供方式も様々に変動できる。
【００８３】
ひいては、ＭＱＬ正規化過程で主要情報およびエンティティ情報を提供するための追加データ検索事項をさらに含ませてＭＱＬ＿ｎｏｒｍａｌｉｚａｔｉｏｎを構成することができる。たとえば、特定の人物に対する情報（例えば、出演映画）がクエリ属性である場合、該当映画についての情報、およびその映画に出演した他の人物についての情報もクエリエンティティにリンキングされているエンティティ情報として一緒に提供することができるように、追加のデータ検索事項を設定してＭＱＬ＿ｎｏｒｍａｌｉｚａｔｉｏｎを構成することができる。
【００８４】
ＭＱＬ正規化が行われると、検索エンジンは、前の段階（Ｓ３０２）で適用したＭＱＬｃｏｎｆｉｇに応じてＭＱＬ＿ｎｏｒｍａｌｉｚａｔｉｏｎを知識データベースに問い合わせるための検索言語ＯＱＬに変換する（Ｓ３０３）。
【００８５】
そして、変換されたＯＱＬを用いて知識データベースを検索し、対応する物理的データであるＯＱＬデータを導出するが、データ導出過程でもＭＱＬ ｃｏｎｆｉｇ＿ｍｏｄｅに応じてクエリの類型による属性別検索値の最大個数、検索用属性使用個数、結果用属性使用個数などを異にすることができる（Ｓ３０４）。
【００８６】
次に、前の段階（Ｓ３０４）で導出したＯＱＬデータを、ＭＱＬ ｃｏｎｆｉｇに応じて、既に設定されたデータ加工方式でＭＱＬ結果データに変換する（Ｓ３０５）。
【００８７】
ＭＱＬ結果データが導出されることにより、検索エンジンは、ＭＱＬ ｃｏｎｆｉｇに符合するデータ加工規則を適用してユーザーの意図を反映した検索結果提供方式で検索結果画面をレイアウトしてユーザーに提供する（Ｓ３０６）。
【００８８】
一実施例として、クエリの類型が単一検索結果を要請する場合、主要情報は、検索に基づいて導出された単一検索結果に加工できる。例えば、検索クエリが“Ｃ映画の観客数”である場合、検索結果として提供される主要情報は、Ｓ３０５で導出される“Ｃ映画の観客数＝Ｎ”というデータから、“Ｃ映画の観客数はＮ名です。”のように文章形態の単一検索結果に加工され、これを含むシングル型レイアウトを構成することができる。
【００８９】
他の実施例として、クエリの類型が２つ以上の検索結果を要請する場合、主要情報は、２つ以上の検索結果を含む複数の検索結果を並べる形態に加工できる。例えば、検索クエリが“Ｄ小説家の本”である場合、検索結果として提供される主要情報は、Ｓ３０５で導出した“Ｄ小説家が著者である一つ以上の本”というデータからそれぞれの本に関する情報を加工し、加工された１つ以上の主要情報がリスト形態で並べられるリスト型レイアウトを構成することができる。
【００９０】
図４は本発明の実施例に係る検索エンジンでツリー構造のＭＱＬ属性に基づいてデータを検索し、主要情報およびエンティティ情報を導出する過程の一例を示す図である。
【００９１】
本発明の実施例に係る検索エンジンは、ツリー構造ＭＱＬの属性を分析してＭＱＬのレベル構造でそれぞれのレベルがクエリエンティティによってリンキングされているか否かを判断する（Ｓ４０１）。ツリー構造ＭＱＬは、上述したように複文構造のユーザークエリに対する意味分析を介して、一つのクエリに含まれている多数のクエリ句を導出し、各クエリ句を一つのレベルに設定してＭＱＬに変換した形態である。
【００９２】
判断の結果、ツリー構造ＭＱＬの各レベルがエンティティによってリンキング（ｌｉｎｋｉｎｇ）されている場合、上位エンティティから下位エンティティへのデータ検索を行う（Ｓ４０２、Ｓ４０３）。
【００９３】
たとえば、“Ａ歌手グループのメンバーが出演した映画は？”とは、ユーザークエリに対する分析の結果、“Ａ歌手グループのメンバー”、“各メンバーが出演した映画”および“該当映画の基本情報”などの３つのクエリ句を導出することができる。そして、それぞれのクエリ句は“Ａ歌手グループ”、Ａ歌手グループの“メンバー”、Ａ歌手グループのメンバーが出演した“映画”というエンティティを含み、それぞれのエンティティは上位エンティティから下位エンティティにリンキングされ得る。
【００９４】
これに対し、段階Ｓ４０１での判断の結果、ツリー構造ＭＱＬの各レベルがエンティティによってリンキングされていない場合、論理演算に基づいて各レベルに対するデータ検索を行う（Ｓ４０２、Ｓ４０４）。
【００９５】
たとえば、“女優Ｂと年齢の同じ女優は？”とは、ユーザークエリに対する意味分析の結果、“女優Ｂの年齢（Ｎ）は？”や“年齢Ｎの女優は？”などのクエリ句を導出することができる。このとき、“女優Ｂ”に該当するエンティティに対して、“年齢（Ｎ）”は、別途のエンティティではなく“女優Ｂ”というエンティティに対する属性値なので、“女優Ｂの年齢（Ｎ）”と“年齢Ｎの女優”はリンキングされている上位−下位レベルと見なすことができない。このような場合、論理演算に基づいて、“女優Ｂの年齢（Ｎ）”に対応するデータを導出し、“年齢Ｎ”を属性値として持つ“人物”情報を逆に検索し、検索された“人物”データの中から、“職業−俳優”および“性別−女性”属性を満足するデータを選別する方式でデータ検索を行う。
【００９６】
検索エンジンは、上述した検索過程（Ｓ４０２〜Ｓ４０４）を介して最終的に導出された検索データを主要情報として導出し、データ検索過程でクエリエンティティに対応して導出された検索データをエンティティ情報として導出することができる（Ｓ４０５）。
【００９７】
たとえば、“Ａ歌手グループのメンバーが出演した映画は？”とは、ユーザークエリに対して、主要情報は各メンバーが出演した映画情報となり、エンティティ情報はＡ歌手グループに関する情報、各メンバーに関する人物情報などとなることができる。別の例として、“女優Ｂと年齢の同じ女優は？”とは、ユーザークエリに対して、主要情報は年齢Ｎの女優たちの情報となり、エンティティ情報は女優Ｂに対する情報、年齢Ｎの女優それぞれに対する人物情報となることができる。
【００９８】
図５は本発明の実施例に係る検索エンジンが導出した情報をレイアウトする方式の一例を示す図であり、具体的には、単文構造のクエリに対する検索結果を提供する場合を示す。
【００９９】
図５を参照すると、検索エンジンは、ユーザークエリに対する検索結果として導出した主要情報５１１およびエンティティ情報５２１を同時に提供する。このとき、主要情報５１１およびエンティティ情報５２１が露出する領域を主要情報領域５１０およびエンティティ領域５２０に区分し、主要情報領域５１０内の主要情報５１１および主要情報関連情報５１２が露出し、エンティティ領域５２０内のエンティティ情報５２１およびエンティティ関連情報５２２が露出するようにレイアウトすることができる。
【０１００】
また、主要情報５１１が露出する形態は、ユーザークエリによる検索の結果、主要情報が単一のオブジェクトに対する情報である場合にはシングル型にレイアウトし、主要情報が２つ以上のオブジェクトに対する情報である場合にはリスト型にレイアウトすることができる。ひいては、エンティティ情報も２つ以上のオブジェクトに関する情報である場合、リスト型に構成することができる。
【０１０１】
主要情報５１１、主要情報関連情報５１２、エンティティ情報５２１およびエンティティ関連情報５２２は、それぞれ要約された情報であって、ユーザーの選択に応じて主要情報５１１、主要情報関連情報５１２、エンティティ情報５２１およびエンティティ関連情報５２２のそれぞれに対する詳細情報が別途さらに提供されるように構成することができる。
【０１０２】
図６は本発明の実施例に係る検索システムでユーザークエリに対する検索結果画面の一例を示す図であり、具体的には、単文構造のクエリに対するシングル型検索結果画面の一例を示す。
【０１０３】
図６を参照すると、検索結果画面６００は、ユーザークエリ６０１に対する最終検索結果が露出する主要情報領域６１０、およびクエリエンティティ関連情報が提供されるエンティティ領域６２０に区分できる。例えば、図６に例示されているように、検索結果画面６００の左側は主要情報領域６１０から構成し、検索結果画面６００の右側はエンティティ領域６２０から構成することができる。
【０１０４】
主要情報領域６１０には、ユーザークエリを介して最終的に導出した主要情報６１１、およびユーザークエリをキーワードで検索して導出した関連情報６１２が露出し、エンティティ領域６２０には、エンティティ情報６２１およびエンティティと連関関係にある関連情報６２２が露出する。
【０１０５】
このとき、ユーザークエリの類型が“数字”のように単一検索結果でありながら、テキスト形式の検索結果を要請する場合、検索エンジンは、ＭＱＬ ｃｏｎｆｉｇに応じて導出したデータを含む文章形態に主要情報を加工することができる。
【０１０６】
図７は本発明の実施例に係る検索システムでユーザークエリに対する検索結果画面の他の例を示す図であり、具体的には、単文構造のクエリに対するリスト型検索結果画面の一例を示す。
【０１０７】
図７を参照すると、同様に、検索結果画面７００を、ユーザークエリ７０１に対する最終検索結果が露出する主要情報領域７１０、およびクエリエンティティ関連情報が提供されるエンティティ領域７２０に区分し、一例として、図７に例示されているように、検索結果画面７００の左側は主要情報領域７１０から構成し、検索結果画面７００の右側はエンティティ領域７２０から構成することができる。
【０１０８】
このとき、ユーザークエリに対する検索の結果、主要情報として導出される情報が２つ以上のオブジェクトに対するデータである場合、主要情報領域７１０には、ユーザークエリを介して最終的に導出した２つ以上の主要情報７１１、７１２をリスト形態で露出させるように構成することができる。それぞれの主要情報７１１、７１２は、該当オブジェクトに対する詳細情報を要約した形態で露出させることができる。
【０１０９】
同様に、主要情報領域７１０には、図７に示されてはいないが、主要情報と連関のある関連情報をさらに露出させることができる。
【０１１０】
エンティティ領域７２０には、ユーザークエリに含まれているエンティティに基づいて検索したエンティティ情報７２１、およびエンティティと連関のある関連情報７２２が露出する。
【０１１１】
図５〜図７を参照して上述した本発明の一実施例に係る検索結果レイアウト方式は、単文構造のユーザークエリの属性に基づいて最終的に導出された主要情報と一緒にエンティティ情報を同じ検索画面を介して提供することにより、ユーザーの便宜性を図ることができる。
【０１１２】
図８は本発明の実施例に係る検索エンジンが導出した情報をレイアウトする方式の他の例を示す図であり、具体的には、複文構造のクエリに対する検索結果を提供する場合を示す。
【０１１３】
検索エンジンは、複文構造のユーザークエリから生成されたツリー構造ＭＱＬの属性に基づいてユーザークエリに対する検索結果として導出した主要情報およびエンティティ情報を階層型構造で提供する。
【０１１４】
図８の（ａ）を参照すると、ツリー構造ＭＱＬが、クエリを構成する多数のエンティティが互いにリンキングされる多数のレベルからなる階層型構造である場合、上位エンティティから下位エンティティへリンクに応じて導出したデータの露出位置を階層的にレイアウトすることができる。すなわち、図８の（ａ）に例示されているように、第１レベルのエンティティ（上位エンティティ）に対応する情報８０１を最上位段に出力し、第１レベルエンティティ（上位エンティティ）に対応する情報８０１の下段には第２レベルエンティティ（中間エンティティ）に対応する情報８０２を出力し、第２レベルエンティティ（中間エンティティ）に対応する情報８０２の下段には第ｎレベルエンティティに対応する情報８０３を出力する方式によって階層的構造でレイアウトすることにより、複文構造のクエリ言語を解析する過程によって検出されるデータを階層的に提供することができる。このとき、各レベルのリンクに応じて最終的に導出される第ｎレベルエンティティ情報８０３が主要情報８０３となり、その他の情報８０１、８０２はエンティティ情報となる。
【０１１５】
また、同様に、ユーザークエリが単一のオブジェクトに対する情報要請である場合、主要情報はシングル型にレイアウトし、ユーザークエリが２つ以上のオブジェクトに対する情報要請である場合、主要情報をリスト型にレイアウトすることができる。さらに、エンティティ情報も２つ以上である場合には、エンティティ情報を提供する方式もリスト型に構成することができる。
【０１１６】
一方、主要情報８０３およびエンティティ情報８０１、８０２は、関連した詳細情報が要約された形態で提供されるので、ユーザーの選択に応じて、それぞれのエンティティに対応する詳細情報がさらに提供できる。
【０１１７】
図８の（ｂ）を参照すると、図８の（ａ）と同じ検索結果画面で、ユーザーが、出力されたエンティティ情報８０１〜８０３のいずれか一つを選択する場合、検索エンジンは、選択されたエンティティに対応する詳細情報８０４を検索結果画面の一定領域に出力するように検索画面レイアウトを変更することができる。すなわち、検索結果画面を、階層型エンティティ要約情報が提供される要約情報領域８１０、およびユーザーの選択による特定のエンティティの詳細情報が提供される詳細情報領域８２０に区分して再加工することができる。
【０１１８】
図９は本発明の実施例に係る検索システムでユーザークエリに対する検索結果画面の別の例を示す図であり、具体的には、複文構造のクエリに対するリスト型検索結果画面の一例を示す。
【０１１９】
図９を参照すると、検索結果画面９００は、複文構造のユーザークエリ９０１から導出した多数のレベルのリンキングされたエンティティに関する情報を提供するが、上位エンティティ情報９０２から下位エンティティ情報９０３を階層的に出力する。このとき、階層型構造上で最下位レベルに該当するエンティティ情報９０３が、ユーザークエリで要請する最終検索結果であって主要情報９０３に該当する。
【０１２０】
図９に例示されているエンティティ情報９０２および主要情報９０３は、検索結果と２つ以上のオブジェクトに関する情報を含んでいるので、それぞれリスト型にレイアウトされた。
【０１２１】
図１０は本発明の実施例に係る検索システムでユーザークエリに対する検索結果画面の別の例を示す図である。
【０１２２】
具体的には、図１０は、複文構造のクエリに対するリスト型検索結果画面の別の例を示すもので、図９に例示されている検索結果画面におけるユーザーの選択によるエンティティ詳細情報が含まれている検索結果画面の一例を示す。
【０１２３】
図１０を参照すると、検索結果画面１０００は、図９と同じユーザークエリ１００１に対してエンティティの詳細説明の要請に応えてエンティティ要約情報が提供される要約情報領域１０１０、およびエンティティ詳細情報が提供される詳細情報領域１０２０に区分できる。要約情報領域１０１０は、図９で上述したように、検索過程で導出される上位エンティティ情報１０１１から下位エンティティ情報１０１２へ段階的に各レベルのエンティティが提供される階層構造を用いる。
【０１２４】
詳細情報領域１０２０は、多数のレベルの多数のエンティティ情報のうち、ユーザーが選択した特定のエンティティに対する詳細情報１０２１が露出する。特定のエンティティに対する詳細情報１０２１は、ＭＱＬ ｃｏｎｆｉｇに応じてエンティティ属性、ドメインおよびプロパティの少なくとも一つに基づいて導出された情報でありうる。
【０１２５】
したがって、図９および図１０を参照すると、検索エンジンでユーザーが入力したユーザークエリに基づいて階層構造のエンティティ情報をベースにした主要情報およびレベル別のエンティティ情報を段階的にレイアウトして検索結果画面を提供し、ユーザーが、検索結果画面に露出した特定のエンティティに対する詳細情報を要請する場合には、検索結果画面上に情報が出力される空間を再配置し、要約情報および詳細情報が同時に提供できるように検索結果画面のレイアウトを変更することができる。
【０１２６】
このように、図８〜図１０を参照して上述した本発明の他の実施例に係る検索結果レイアウト方式は、複文構造のユーザークエリの属性に基づいてエンティティ別の要約情報がエンティティレベルに応じて段階的に出力され、ユーザーがエンティティ詳細情報を要請する場合、階層構造のエンティティ要約情報および特定のエンティティ詳細情報を同一の検索画面を介して提供することにより、ユーザーの便宜性を図ることができる。
【０１２７】
以上の説明は、本発明の技術思想を例示的に説明したものに過ぎず、本発明の属する技術分野における通常の知識を有する者であれば、本発明の本質的な特性から逸脱することなく、様々な修正および変形を加えることが可能であろう。したがって、本発明に記載された実施例は、本発明の技術思想を限定するためのものではなく、説明するためのものである。このような実施例によって本発明の技術思想が限定されるのではない。本発明の保護範囲は添付した特許請求の範囲によって解釈されるべきであり、それと同等の範囲内にあるすべての技術思想は本発明の権利範囲に含まれるものと解釈されるべきである。
【図１】
0006014725.tif 000003
【図２】
0006014725.tif 000004
【図３】
0006014725.tif 000005
【図４】
0006014725.tif 000006
【図５】
0006014725.tif 000007
【図６】
0006014725.tif 000008
【図７】
0006014725.tif 000009
【図８】
0006014725.tif 000010
【図９】
0006014725.tif 000011
【図１０】
0006014725.tif 000012