(57)【要約】【課題】非構造化テキストに対するドメイン固有の検索システムを実現する、モデル駆動型の枠組みを提供すること。【解決手段】枠組みは、メタ・モデル、インスタンス・モデル、抽出モデル、及び言及モデルなど、様々なモデルを定義するための情報抽出システム、並びに情報抽出システムによって指定されるモデルを変換することで機能する、一般的なドメインにとらわれない検索システムを有する。検索システムは、ドメインのハード・コーディングされた知識を持たない、完全なドメイン非依存であり、メタ・モデルによって指定されたドメイン・モデルを変換して、検索エンジンにドメインの特殊性を与える。この枠組みはドメインにとらわれず、メタ・モデルによってドメイン関連の情報を指定するだけで、新しいドメイン用に調整され得る。モデル駆動型の手法は、関心のあるどんな新しいドメインに対しても、検索システムの再コーディングを不要にする。【選択図】図２
2020009430.tif 000002
【特許請求の範囲】
【請求項１】
モデル駆動型ドメイン固有検索を実行するためのプロセッサ実装方法（３００）であって、
メタ・モデル、インスタンス・モデル、抽出モデル、及び言及モデルを使用して、少なくとも１つの関心のあるドメインの要素を定義するステップであって、前記メタ・モデルは、複数のメタ・モデル・クラスを含み、前記少なくとも１つの関心のあるドメイン、そのプロパティ、及びそれらの関係に関するエンティティを取得するように構成され、前記インスタンス・モデルは、複数のインスタンス・クラスを含み、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスを取得又は取り込むように構成され、前記抽出モデルは、抽出モデル・クラスを含み、１つ又は複数のエンティティ、そのプロパティ、及びそれらの関係についての少なくとも１つの抽出方法を指定するように構成され、前記言及モデルは、複数の言及クラスを使用して、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスの値及び位置を、取り込むように構成されるステップ（３０２）と、
文書リポジトリから複数の文書を受信するステップ（３０４）と、
前記複数の文書に含まれる生テキストをテキスト形式に前処理するステップであって、前記前処理は、文分割、トークン化、語幹処理、品詞（ＰＯＳ）タグづけ、及び構文解析のうちの１つ又は複数を含むステップ（３０６）と、
前記少なくとも１つの関心のあるドメインについて、前記複数のメタ・モデル・クラス、前記複数のインスタンス・クラス、及び前記抽出モデル・クラスの少なくとも１つのインスタンスを取得するステップ（３０８）と、
前記抽出モデル・クラスの取得されたインスタンスを使用して、前記前処理された生テキストから、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスを抽出するステップと、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、前記メタ・モデル・クラスの対応するインスタンスに関連づけるステップ（３１０）と、
前記抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、前記言及モデルの中にオブジェクト・グラフ形式で格納するステップ（３１２）と、
前記オブジェクト・グラフを、前記複数の文書の各々に関連づけられた、前記前処理された生テキストと共に、グラフ知識ベースに索引づけするステップ（３１４）と、
前記少なくとも１つの関心のあるドメインに対応する、クエリ言語パーサを生成するステップ（３１６）と、
前記生成されたクエリ言語パーサを使用して、受信された検索クエリを、前記索引づけされたグラフ知識ベース上で同等のクエリに変換するステップであって、前記検索クエリは、言及に対するオブジェクト・クエリ、キーワード・ベースのテキスト・クエリ、又はそれらの組合せのいずれかであり、前記同等のクエリは、前記少なくとも１つの関心のあるドメインに関するステップ（３１８）と、
前記グラフ知識ベース内の前記変換されたクエリに関連する、１つ又は複数の一致を識別するステップ（３２０）と
を含む、プロセッサ実装方法。
【請求項２】
前記複数のメタ・モデル・クラスには、エンティティを取り込むよう構成されたＯｎｔＭｅｔａＣｌａｓｓクラス、プロパティを取り込むよう構成されたＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラス、及び関係を取り込むよう構成されたＯｎｔＭｅｔａＲｅｌａｔｉｏｎクラスが含まれ、前記ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラスのインスタンスは、前記ＯｎｔＭｅｔａＣｌａｓｓのインスタンスに関連づけられ、前記複数のメタ・モデル・クラスは、前記抽出モデルに含まれるＥｘｔｒａｃｔｉｏｎＭｏｄｅｌクラスに関連づけられる、請求項１に記載のプロセッサ実装方法。
【請求項３】
前記複数のインスタンス・クラスには、エンティティの少なくとも１つのインスタンスを取り込むよう構成されたＯｎｔＣｌａｓｓＩｎｓｔａｎｃｅクラス、エンティティの少なくとも１つのインスタンスのプロパティを取り込むよう構成されたＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラス、及びエンティティの少なくとも１つのインスタンス間の関係を取り込むよう構成されたＯｎＲｅｔｌａｔｉｏｎＩｎｓｔａｎｃｅクラスが含まれ、前記インスタンス・クラスのそれぞれが、前記複数のメタ・モデル・クラスからの対応するメタ・モデル・クラスに関連づけられる、請求項２に記載のプロセッサ実装方法。
【請求項４】
前記複数のインスタンス・クラスは、同義語の関連づけを使用して、同義語を取り込んで前記複数のインスタンス・クラスのインスタンスと関連づけるよう構成された、１つ又は複数のＳｙｎｏｎｙｍクラスと、前記ＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラスのインスタンスに関連づけられた値の取り得る単位を取り込むよう構成されるＵｎｉｔクラスとをさらに含む、請求項３に記載のプロセッサ実装方法。
【請求項５】
前記少なくとも１つの抽出方法は、ＤｉｃｔｉｏｎａｒｙＥｘｔｒａｃｔｉｏｎＭｏｄｅｌ、ＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌ又はＭＬＥｘｔｒａｃｔｉｏｎＭｏｄｅｌのいずれかに含まれ、前記ＤｉｃｔｉｏｎａｒｙＥｘｔｒａｃｔｉｏｎＭｏｄｅｌは、エンティティのインスタンス、そのプロパティのインスタンス、及びそれらの関係のインスタンスの辞書を使用して、前記前処理された生テキスト内の、エンティティのインスタンス、プロパティのインスタンス、及び関係のインスタンスの言及を取り込み、前記ＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌは、（ａ）前記前処理された生テキスト内の文字と一致するテキストのパターンを特定するためのＴｅｘｔＰａｔｔｅｒｎ、及び（ｂ）文字以外のパターンを特定するためのＮＬＰＰａｔｔｅｒｎを含む、１組のパターンに関連づけられ、品詞（ＰＯＳ）タグ、依存関係、及び見出語認定を含む自然言語処理の特性に基づく、請求項４に記載のプロセッサ実装方法。
【請求項６】
前記少なくとも１つの抽出方法は、取得又は取り込まれた、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスに基づいて生成された、１つ又は複数の曖昧さ除去ルールに依存する、請求項５に記載のプロセッサ実装方法。
【請求項７】
前記少なくとも１つの抽出方法は、エンティティ、そのプロパティ、及びそれらの関係の汎化階層に従って継承される、請求項１に記載のプロセッサ実装方法。
【請求項８】
前記複数の言及クラスは、前記抽出されたエンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスの位置をそれぞれ関連づけるよう構成された、ＯｎｔＣｌａｓｓＭｅｎｔｉｏｎ、ＯｎｔＰｒｏｐｅｒｔｙＭｅｎｔｉｏｎ、及びＯｎｔＲｅｌＭｅｎｔｉｏｎを含む、請求項１に記載のプロセッサ実装方法。
【請求項９】
１つ又は複数のハードウェア・プロセッサ（１０４）に動作可能に結合され、命令を格納するよう構成された、１つ又は複数のデータ記憶装置（１０２）
を備えるシステム（１００）であって、前記命令は、前記１つ又は複数のハードウェア・プロセッサで実行され、
メタ・モデル、インスタンス・モデル、抽出モデル、及び言及モデルを使用して、少なくとも１つの関心のあるドメインの要素を定義し、前記メタ・モデルは、複数のメタ・モデル・クラスを含み、前記少なくとも１つの関心のあるドメイン、そのプロパティ、及びそれらの関係に関するエンティティを取得するように構成され、前記インスタンス・モデルは、複数のインスタンス・クラスを含み、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスを取得又は取り込むように構成され、前記抽出モデルは、抽出モデル・クラスを含み、１つ又は複数のエンティティ、そのプロパティ、及びそれらの関係についての少なくとも１つの抽出方法を指定するように構成され、前記言及モデルは、複数の言及クラスを使用して、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスの値及び位置を、取り込むように構成され、
文書リポジトリから複数の文書を受信し、
前記複数の文書に含まれる生テキストをテキスト形式に前処理し、前記前処理は、文分割、トークン化、語幹処理、品詞（ＰＯＳ）タグづけ、及び構文解析のうちの１つ又は複数を含み、
前記少なくとも１つの関心のあるドメインについて、前記複数のメタ・モデル・クラス、前記複数のインスタンス・クラス、及び前記抽出モデル・クラスの少なくとも１つのインスタンスを取得し、
前記抽出モデル・クラスの取得されたインスタンスを使用して、前記前処理された生テキストから、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスを抽出し、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、前記メタ・モデル・クラスの対応するインスタンスに関連づけ、
前記抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、前記言及モデルの中にオブジェクト・グラフ形式で格納し、
前記オブジェクト・グラフを、前記複数の文書の各々に関連づけられた、前記前処理された生テキストと共に、グラフ知識ベースに索引づけ、
前記少なくとも１つの関心のあるドメインに対応する、クエリ言語パーサを生成し、
前記生成されたクエリ言語パーサを使用して、受信された検索クエリを前記索引づけされたグラフ知識ベース上で同等のクエリに変換し、前記検索クエリは、言及に対するオブジェクト・クエリ、キーワード・ベースのテキスト・クエリ、又はそれらの組合せのいずれかであり、前記同等のクエリは、前記少なくとも１つの関心のあるドメインに関し、且つ
前記グラフ知識ベース内の前記変換されたクエリに関連する、１つ又は複数の一致を識別するように構成される、システム。
【請求項１０】
前記複数のメタ・モデル・クラスには、エンティティを取り込むよう構成されたＯｎｔＭｅｔａＣｌａｓｓクラス、プロパティを取り込むよう構成されたＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラス、及び関係を取り込むよう構成されたＯｎｔＭｅｔａＲｅｌａｔｉｏｎクラスが含まれ、前記ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラスのインスタンスは、前記ＯｎｔＭｅｔａＣｌａｓｓのインスタンスに関連づけられ、前記複数のメタ・モデル・クラスは、前記抽出モデルに含まれるＥｘｔｒａｃｔｉｏｎＭｏｄｅｌクラスに関連づけられる、請求項９に記載のシステム。
【請求項１１】
前記複数のインスタンス・クラスには、エンティティの少なくとも１つのインスタンスを取り込むよう構成されたＯｎｔＣｌａｓｓＩｎｓｔａｎｃｅクラス、エンティティの少なくとも１つのインスタンスのプロパティを取り込むよう構成されたＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラス、及びエンティティの少なくとも１つのインスタンス間の関係を取り込むよう構成されたＯｎｔＲｅｌａｔｉｏｎＩｎｓｔａｎｃｅクラスが含まれ、前記インスタンス・クラスのそれぞれが、前記複数のメタ・モデル・クラスからの対応するメタ・モデル・クラスに関連づけられる、請求項１０に記載のシステム。
【請求項１２】
前記複数のインスタンス・クラスは、同義語の関連づけを使用して、同義語を取り込んで前記複数のインスタンス・クラスのインスタンスと関連づけるよう構成された、１つ又は複数のＳｙｎｏｎｙｍクラスと、前記ＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラスのインスタンスに関連づけられた値の取り得る単位を取り込むよう構成されるＵｎｉｔクラスとをさらに含む、請求項１１に記載のシステム。
【請求項１３】
前記少なくとも１つの抽出方法は、ＤｉｃｔｉｏｎａｒｙＥｘｔｒａｃｔｉｏｎＭｏｄｅｌ、ＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌ又はＭＬＥｘｔｒａｃｔｉｏｎＭｏｄｅｌのいずれかに含まれ、前記ＤｉｃｔｉｏｎａｒｙＥｘｔｒａｃｔｉｏｎＭｏｄｅｌは、エンティティのインスタンス、そのプロパティのインスタンス、及びそれらの関係のインスタンスの辞書を使用して、前記前処理された生テキスト内の、エンティティのインスタンス、プロパティのインスタンス、及び関係のインスタンスの言及を取り込み、前記ＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌは、（ａ）前記前処理された生テキスト内の文字と一致するテキストのパターンを特定するためのＴｅｘｔＰａｔｔｅｒｎ、及び（ｂ）文字以外のパターンを特定するためのＮＬＰＰａｔｔｅｒｎを含む、１組のパターンに関連づけられ、品詞（ＰＯＳ）タグ、依存関係、及び見出語認定を含む自然言語処理の特性に基づく、請求項１２に記載のシステム。
【請求項１４】
前記少なくとも１つの抽出方法は、取得又は取り込まれた、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスに基づいて生成された、１つ又は複数の曖昧さ除去ルールに依存する、請求項１３に記載のシステム。
【請求項１５】
前記少なくとも１つの抽出方法は、エンティティ、そのプロパティ、及びそれらの関係の汎化階層に従って継承される、請求項９に記載のシステム。
【請求項１６】
前記複数の言及クラスは、抽出されたエンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスの位置をそれぞれ関連づけるよう構成された、ＯｎｔＣｌａｓｓＭｅｎｔｉｏｎ、ＯｎｔＰｒｏｐｅｒｔｙＭｅｎｔｉｏｎ、及びＯｎｔＲｅｌＭｅｎｔｉｏｎを含む、請求項９に記載のシステム。
【請求項１７】
その中に具現化されているコンピュータ可読プログラムを含む非一時的コンピュータ可読媒体を備えるコンピュータプログラム製品であって、前記コンピュータ可読プログラムが、コンピュータ処理装置上で実行されると、前記コンピュータ処理装置は、
メタ・モデル、インスタンス・モデル、抽出モデル、及び言及モデルを使用して、少なくとも１つの関心のあるドメインの要素を定義し、前記メタ・モデルは、複数のメタ・モデル・クラスを含み、前記少なくとも１つの関心のあるドメイン、そのプロパティ、及びそれらの関係に関するエンティティを取得するように構成され、前記インスタンス・モデルは、複数のインスタンス・クラスを含み、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスを取得又は取り込むように構成され、前記抽出モデルは、抽出モデル・クラスを含み、１つ又は複数のエンティティ、そのプロパティ、及びそれらの関係についての少なくとも１つの抽出方法を指定するように構成され、前記言及モデルは、複数の言及クラスを使用して、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスの値及び位置を、取り込むように構成され、
文書リポジトリから複数の文書を受信し、
前記複数の文書に含まれる生テキストをテキスト形式に前処理し、前記前処理は、文分割、トークン化、語幹処理、品詞（ＰＯＳ）タグづけ、及び構文解析のうちの１つ又は複数を含み、
前記少なくとも１つの関心のあるドメインについて、前記複数のメタ・モデル・クラス、前記複数のインスタンス・クラス、及び前記抽出モデル・クラスの少なくとも１つのインスタンスを取得し、
前記抽出モデル・クラスの取得されたインスタンスを使用して、前記前処理された生テキストから、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスを抽出し、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、前記メタ・モデル・クラスの対応するインスタンスに関連づけ、
前記抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、前記言及モデルの中にオブジェクト・グラフ形式で格納し、
前記オブジェクト・グラフを、前記複数の文書の各々に関連づけられた、前記前処理された生テキストと共に、グラフ知識ベースに索引づけ、
前記少なくとも１つの関心のあるドメインに対応する、クエリ言語パーサを生成し、
前記生成されたクエリ言語パーサを使用して、受信された検索クエリを前記索引づけされたグラフ知識ベース上で同等のクエリに変換し、前記検索クエリは、言及に対するオブジェクト・クエリ、キーワード・ベースのテキスト・クエリ、又はそれらの組合せのいずれかであり、前記同等のクエリは、前記少なくとも１つの関心のあるドメインに関し、且つ
前記グラフ知識ベース内の前記変換されたクエリに関連する、１つ又は複数の一致を識別する、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
優先権主張
本出願は、２０１８年６月２６日に出願されたインド特許出願第２０１８２１０２３７３７号の優先権を主張する。上記出願の全内容は、参照により本明細書に組み入れられる。
【０００２】
本明細書の開示は、概ね検索システムに関し、詳細には、ドメイン固有の検索を実行するためのモデル駆動型システム及び方法に関する。
【背景技術】
【０００３】
多くのアプリケーション・ドメインでは、キーワード・ベースの検索は、十分でない可能性がある。アプリケーション・ドメインの概念及び関係を理解する検索エンジンが、必要とされ得る。検索エンジンはまた、様々な数量の値とドメイン・エンティティとそれらの関係とを理解する必要がある。後者は、科学及び工学のドメインで特に重要である。効果的な検索エンジンを構築するには、自然言語処理（ＮＬＰ：Ｎａｔｕｒａｌ  Ｌａｎｇｕａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ）、機械学習などのテキスト処理技術を、ドメイン・エンティティの微妙な差異及びそれらの関係を理解することによって強化する必要がある。汎化、特化階層、関係の種類、濃度（ｃａｒｄｉｎａｌｉｔｙ）、プロパティ値の種類、単位、範囲などに関するドメイン知識は、テキストを理解するうえで重要な役割を果たす。正しい精度レベルを達成するためには、ドメイン知識をテキスト処理アルゴリズムに体系化する必要がある。従って、ドメイン固有の検索エンジンを実装することは、極めて労力及び知識集約的な活動であり、関心のある各アプリケーション・ドメインに対して繰り返される必要がある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示の実施例は、従来のシステムにおいて発明者が認識している１つ又は複数の上記技術的課題への解決策として、技術的な諸改善を提供する。
【課題を解決するための手段】
【０００５】
一態様では、モデル駆動型ドメイン固有検索を実行するためのプロセッサ実装方法が提供され、この方法は、メタ・モデル、インスタンス・モデル、抽出モデル、及び言及（ｍｅｎｔｉｏｎ）モデルを使用して、少なくとも１つの関心のあるドメインの要素を定義するステップであって、メタ・モデルは、複数のメタ・モデル・クラスを含み、少なくとも１つの関心のあるドメイン、そのプロパティ、及びそれらの関係に関するエンティティを取得するように構成され、インスタンス・モデルは、複数のインスタンス・クラスを含み、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスを取得又は取り込むように構成され、抽出モデルは、抽出モデル・クラスを含み、１つ又は複数のエンティティ、そのプロパティ、及びそれらの関係についての少なくとも１つの抽出方法を指定するように構成され、言及モデルは、複数の言及クラスを使用して、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスの値及び位置を、取り込むように構成されるステップと、文書リポジトリから複数の文書を受信するステップと、複数の文書に含まれる生テキストをテキスト形式に前処理するステップであって、この前処理は、文分割、トークン化、語幹処理、品詞（ＰＯＳ：ｐａｒｔ−ｏｆ−ｓｐｅｅｃｈ）タグづけ、及び構文解析のうちの１つ又は複数を含むステップと、少なくとも１つの関心のあるドメインについて、複数のメタ・モデル・クラス、複数のインスタンス・クラス、及び抽出モデル・クラスの少なくとも１つのインスタンスを取得するステップと、取得された抽出モデル・クラスのインスタンスを使用して、前処理された生テキストからエンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスを抽出するステップと、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、メタ・モデル・クラスの対応するインスタンスに関連づけるステップと、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、言及モデルの中にオブジェクト・グラフ形式で格納するステップと、オブジェクト・グラフを、複数の文書の各々に関連づけられた、前処理された生テキストと共に、グラフ知識ベースに索引づけするステップと、少なくとも１つの関心のあるドメインに対応するクエリ言語パーサを生成するステップと、生成されたクエリ言語パーサを使用して、受信された検索クエリを索引づけされたグラフ知識ベース上で同等のクエリに変換するステップであって、検索クエリは、言及に対するオブジェクト・クエリ、キーワード・ベースのテキスト・クエリ、又はそれらの組合せのいずれかであり、同等のクエリは、少なくとも１つの関心のあるドメインに関するステップと、グラフ知識ベース内の変換されたクエリに関連する、１つ又は複数の一致を識別するステップとを含む。
【０００６】
別の態様では、１つ又は複数のプロセッサに動作可能に結合され、命令を格納するよう構成された、１つ又は複数のデータ記憶装置を備えるシステムが提供され、この命令は、１つ又は複数のプロセッサで実行され、メタ・モデル、インスタンス・モデル、抽出モデル、及び言及モデルを使用して、少なくとも１つの関心のあるドメインの要素を定義し、メタ・モデルは、複数のメタ・モデル・クラスを含み、少なくとも１つの関心のあるドメイン、そのプロパティ、及びそれらの関係に関するエンティティを取得するよう構成され、インスタンス・モデルは、複数のインスタンス・クラスを含み、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスを取得又は取り込むように構成され、抽出モデルは、抽出モデル・クラスを含み、１つ又は複数のエンティティ、そのプロパティ、及びそれらの関係についての少なくとも１つの抽出方法を指定するように構成され、言及モデルは、複数の言及クラスを使用して、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスの値及び位置を、取り込むように構成され、文書リポジトリから複数の文書を受信し、複数の文書に含まれる生テキストをテキスト形式に前処理し、この前処理は、文分割、トークン化、語幹処理、品詞（ＰＯＳ）タグづけ、及び構文解析のうちの１つ又は複数を含み、少なくとも１つの関心のあるドメインについて、複数のメタ・モデル・クラス、複数のインスタンス・クラス、及び抽出モデル・クラスの少なくとも１つのインスタンスを取得し、取得された抽出モデル・クラスのインスタンスを使用して、前処理された生テキストからエンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスを抽出し、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、メタ・モデル・クラスの対応するインスタンスに関連づけ、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、言及モデルの中にオブジェクト・グラフ形式で格納し、オブジェクト・グラフを、複数の文書の各々に関連づけられた、前処理された生テキストと共に、グラフ知識ベースに索引づけし、少なくとも１つの関心のあるドメインに対応するクエリ言語パーサを生成し、生成されたクエリ言語パーサを使用して、受信された検索クエリを索引づけされたグラフ知識ベース上で同等のクエリに変換し、検索クエリは、言及に対するオブジェクト・クエリ、キーワード・ベースのテキスト・クエリ、又はそれらの組合せのいずれかであり、同等のクエリは、少なくとも１つの関心のあるドメインに関し、グラフ知識ベース内の変換されたクエリに関連する、１つ又は複数の一致を識別するように構成される。
【０００７】
さらに別の態様では、その中に具現化されているコンピュータ可読プログラムを含む非一時的コンピュータ可読媒体を備えるコンピュータプログラム製品が提供され、コンピュータ可読プログラムが、コンピュータ処理装置上で実行されると、コンピュータ処理装置は、メタ・モデル、インスタンス・モデル、抽出モデル、及び言及モデルを使用して、少なくとも１つの関心のあるドメインの要素を定義し、メタ・モデルは、複数のメタ・モデル・クラスを含み、少なくとも１つの関心のあるドメイン、そのプロパティ、及びそれらの関係に関するエンティティを取得するように構成され、インスタンス・モデルは、複数のインスタンス・クラスを含み、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスを取得又は取り込むように構成され、抽出モデルは、抽出モデル・クラスを含み、１つ又は複数のエンティティ、そのプロパティ、及びそれらの関係についての少なくとも１つの抽出方法を指定するように構成され、言及モデルは、複数の言及クラスを使用して、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスの値及び位置を、取り込むように構成され、文書リポジトリから複数の文書を受信し、複数の文書に含まれる生テキストをテキスト形式に前処理し、この前処理は、文分割、トークン化、語幹処理、品詞（ＰＯＳ）タグづけ、及び構文解析のうちの１つ又は複数を含み、少なくとも１つの関心のあるドメインについて、複数のメタ・モデル・クラス、複数のインスタンス・クラス、及び抽出モデル・クラスの少なくとも１つのインスタンスを取得し、取得された抽出モデル・クラスのインスタンスを使用して、前処理された生テキストからエンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスを抽出し、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、メタ・モデル・クラスの対応するインスタンスに関連づけ、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、言及モデルの中にオブジェクト・グラフ形式で格納し、オブジェクト・グラフを、複数の文書の各々に関連づけられた、前処理された生テキストと共に、グラフ知識ベースに索引づけ、少なくとも１つの関心のあるドメインに対応するクエリ言語パーサを生成し、生成されたクエリ言語パーサを使用して、受信された検索クエリを索引づけされたグラフ知識ベース上で同等のクエリに変換し、検索クエリは、言及に対するオブジェクト・クエリ、キーワード・ベースのテキスト・クエリ、又はそれらの組合せのいずれかであり、同等のクエリは、少なくとも１つの関心のあるドメインに関し、グラフ知識ベース内の変換されたクエリに関連する、１つ又は複数の一致を識別する。
【０００８】
本開示の一実施例では、複数のメタ・モデル・クラスには、エンティティを取り込むよう構成されたＯｎｔＭｅｔａＣｌａｓｓクラス、プロパティを取り込むよう構成されたＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラス、及び関係を取り込むよう構成されたＯｎｔＭｅｔａＲｅｌａｔｉｏｎクラスが含まれ、ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラスのインスタンスは、ＯｎｔＭｅｔａＣｌａｓｓのインスタンスに関連づけられ、複数のメタ・モデル・クラスは、抽出モデルに含まれるＥｘｔｒａｃｔｉｏｎＭｏｄｅｌクラスに関連づけられる。
【０００９】
本開示の一実施例では、複数のインスタンス・クラスには、エンティティの少なくとも１つのインスタンスを取り込むよう構成されたＯｎｔＣｌａｓｓＩｎｓｔａｎｃｅクラス、エンティティの少なくとも１つのインスタンスのプロパティを取り込むよう構成されたＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラス、及びエンティティの少なくとも１つのインスタンス間の関係を取り込むよう構成されたＯｎｔＲｅｌａｔｉｏｎＩｎｓｔａｎｃｅクラスが含まれ、インスタンス・クラスのそれぞれが、複数のメタ・モデル・クラスからの対応するメタ・モデル・クラスに関連づけられる。
【００１０】
本開示の一実施例では、複数のインスタンス・クラスは、同義語の関連づけを使用して、同義語を取り込んで複数のインスタンス・クラスのインスタンスと関連づけるよう構成された、１つ又は複数のＳｙｎｏｎｙｍクラスと、ＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラスのインスタンスに関連づけられた値の取り得る単位を取り込むよう構成されるＵｎｉｔクラスとをさらに含む。
【００１１】
本開示の一実施例では、少なくとも１つの抽出方法は、ＤｉｃｔｉｏｎａｒｙＥｘｔｒａｃｔｉｏｎＭｏｄｅｌ、ＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌ又はＭＬＥｘｔｒａｃｔｉｏｎＭｏｄｅｌのいずれかに含まれ、ＤｉｃｔｉｏｎａｒｙＥｘｔｒａｃｔｉｏｎＭｏｄｅｌは、エンティティのインスタンス、そのプロパティのインスタンス、及びそれらの関係のインスタンスの辞書を使用して、前処理された生テキスト内の、エンティティのインスタンス、プロパティのインスタンス、及び関係のインスタンスの言及を取り込み、ＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌは、（ａ）前処理された生テキスト内の文字と一致するテキストのパターンを特定するためのＴｅｘｔＰａｔｔｅｒｎ、及び（ｂ）文字以外のパターンを特定するためのＮＬＰＰａｔｔｅｒｎを含む、１組のパターンに関連づけられ、品詞（ＰＯＳ）タグ、依存関係、及び見出語認定を含む自然言語処理の特性に基づく。
【００１２】
本開示の一実施例では、少なくとも１つの抽出方法は、取得又は取り込まれた、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスに基づいて生成された、１つ又は複数の曖昧さ除去ルールに依存する。
【００１３】
本開示の一実施例では、少なくとも１つの抽出方法は、エンティティ、そのプロパティ、及びそれらの関係の汎化階層に従って継承される。
【００１４】
本開示の一実施例では、複数の言及クラスは、抽出されたエンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスの位置をそれぞれ関連づけるよう構成された、ＯｎｔＣｌａｓｓＭｅｎｔｉｏｎ、ＯｎｔＰｒｏｐｅｒｔｙＭｅｎｔｉｏｎ、及びＯｎｔＲｅｌＭｅｎｔｉｏｎを含む。
【００１５】
前述の一般的な説明及び以下の詳細な説明の両方は、典型的及び説明的なものにすぎず、特許請求の範囲に記載の本発明を限定するものではないことを理解されたい。
【００１６】
本開示に組み入れられ、本開示の一部を構成する添付図面は、典型的な実施例を示し、説明と共に開示された原理を説明するように機能する。
【図面の簡単な説明】
【００１７】
【図１】本開示の一実施例による、モデル駆動型ドメイン固有検索を実行するためのシステムの、例示的構成図である。
【図２】本開示の一実施例による、モデル駆動型ドメイン固有検索を実行するためのシステムの、例示的実装形態のアキテクチャを示す図である。
【図３Ａ】本開示の一実施例による、モデル駆動型ドメイン固有検索を実行するための、コンピュータ実装方法の例示的流れ図である。
【図３Ｂ】本開示の一実施例による、モデル駆動型ドメイン固有検索を実行するための、コンピュータ実装方法の例示的流れ図である。
【図４】本開示の一実施例による、例示的なメタ・モデルを示す図である。
【図５】本開示の一実施例による、材料工学ドメインについての例示的なメタ・モデルを示す図である。
【図６Ａ】本開示の一実施例による、例示的なインスタンス・モデルを示す図である。
【図６Ｂ】本開示の一実施例による、例示的なインスタンス・モデルを示す図である。
【図７】本開示の一実施例による、材料工学ドメインについての例示的なインスタンス・モデルを示す図である。
【図８】本開示の一実施例による、例示的な抽出モデルを示す図である。
【図９Ａ】本開示の一実施例による、例示的な言及モデルを示す図である。
【図９Ｂ】本開示の一実施例による、例示的な言及モデルを示す図である。
【発明を実施するための形態】
【００１８】
添付図面を参照して、典型的な実施例を説明する。図において、参照番号の最も左にある桁は、参照番号が最初に現れる図を特定する。好都合である場合はいつでも、同じ又は類似の部分を指すために、同じ参照番号が図全体を通して使用される。本明細書で、開示された原理の実例及び特徴が示されるが、本開示の実施例の精神及び範囲を逸脱することなく、修正形態、改作、及び他の実装形態が可能である。以下の詳細な説明は、例示としてのみ考慮されることを意図しており、真の範囲及び精神は、以下の特許請求の範囲によって示されている。
【００１９】
ドメイン固有の検索エンジンは、通常、テキストの前処理、構文解析、依存関係の分析、情報の抽出、索引の作成などを含む。テキストの前処理、構文解析、及び依存関係分析のために、Ｓｔａｎｆｏｒｄ  Ｃｏｒｅ  ＮＬＰなど、いくつかの技術の積み重ねがある。しかし、かかる方法は、個人、組織などの一般的なエンティティを除いて、エンティティ及び関係の抽出には利用できない。いくつかの情報抽出ツールは、ドメイン固有のアルゴリズムのプラグインを可能にするが、こうしたツールは、特に科学及び工学のドメインで検索を実行するために重要となる、エンティティ及び関係の汎化、濃度の制約、プロパティ値の制約など、ドメイン知識を利用する手段を提供しない。たとえば、もし鋼材中の炭素の組成物の割合がドメイン知識の一部として理解されれば、そのドメイン知識を利用する検索エンジンは、その材料が鋼と関連づけられる可能性があるかどうかを推論するために、述べられた炭素の割合に頼ることができる。また、セマンティック・ウェブ技術に触発されたドメイン固有の検索手法は、コンテンツが最初にドメインのオントロジを使って注釈を附記される必要があり、それはすべてのシナリオにおいて実用的ではない可能性がある。
【００２０】
ここで図を、より具体的には図１から図９Ｂを参照して、好ましい実施例を示しており、こうした実施例について以下の例示的なシステム及び／又は方法に関して説明するが、ただし類似の参照する文字は、図全体を通して一貫して対応する特徴を示している。
【００２１】
図１は、本開示の一実施例によるモデル駆動型ドメイン固有検索のための、システム１００の例示的な構成図を示す。一実施例では、システム１００は、１つ又は複数のプロセッサ１０４、通信インタフェース装置又は入力／出力（Ｉ／Ｏ：ｉｎｐｕｔ／ｏｕｔｐｕｔ）インタフェース１０６、及び１つ又は複数のプロセッサ１０４に動作可能に結合された１つ又は複数のデータ記憶装置又はメモリ１０２を備える。ハードウェア・プロセッサである１つ又は複数のプロセッサ１０４は、１つ又は複数のマイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、デジタル信号プロセッサ、中央処理装置、ステート・マシン、グラフィック・コントローラ、論理回路、及び／又は動作命令に基づいて信号を操作する任意の装置として実装され得る。他の機能の中でも、プロセッサは、メモリに格納されているコンピュータ可読命令を取り出して実行するよう構成される。本開示の文脈において、表現「プロセッサ」及び「ハードウェア・プロセッサ」は互換的に使用され得る。一実施例では、システム１００は、ラップトップ・コンピュータ、ノートブック、ハンドヘルド装置、ワークステーション、メインフレーム・コンピュータ、サーバ、ネットワーク・クラウドなど、様々なコンピュータ処理システムに実装され得る。
【００２２】
Ｉ／Ｏインタフェース１０６は、たとえばウェブ・インタフェース、グラフィカル・ユーザ・インタフェースなどの、様々なソフトウェア及びハードウェア・インタフェースを備えることができ、たとえばＬＡＮ、ケーブルなどの有線ネットワーク、及びＷＬＡＮ、携帯電話、又は衛星などの無線ネットワークを含む、多種多様なネットワークＮ／Ｗ及びプロトコルの種類の範囲内で、容易に複数の通信が可能である。一実施例では、Ｉ／Ｏインタフェースは、複数の装置を互いに、又は別のサーバに接続するための、１つ又は複数のポートを備えることができる。
【００２３】
メモリ１０２には、たとえば静的ランダム・アクセス・メモリ（ＳＲＡＭ：ｓｔａｔｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）及び動的ランダム・アクセス・メモリ（ＤＲＡＭ：ｄｙｎａｍｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）などの揮発性メモリ、及び／又は、読み取り専用メモリ（ＲＯＭ：ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、消去可能でプログラム可能なＲＯＭ、フラッシュ・メモリ、ハード・ディスク、光ディスク、及び磁気テープなどの不揮発性メモリを含む、当技術分野で知られたあらゆるコンピュータ可読媒体が含まれ得る。一実施例では、システム１００の１つ又は複数のモジュール（図示せず）を、メモリ１０２に格納することができる。
【００２４】
図２は、本開示の一実施例によるモデル駆動型ドメイン固有検索のための、システム１００の例示的実装形態のアキテクチャ２００を示す。
【００２５】
図３Ａから図３Ｂは、本開示の一実施例による、モデル駆動型ドメイン固有検索のための、コンピュータ実装方法３００の例示的流れ図を示す。一実施例では、システム１００は、１つ又は複数のプロセッサ１０４に動作可能に結合された１つ又は複数のデータ記憶装置又はメモリ１０２を備え、１つ又は複数のプロセッサ１０４によって方法３００のステップを実行するよう構成される、命令を格納するよう構成される。ここで方法３００のステップは、図１のシステム１００の構成要素及び図２の例示的なアキテクチャを参照して、詳細に説明されることになる。処理ステップ、方法ステップ、技法などは、連続した順序で説明されることがあるが、かかる処理、方法、及び技法は、代替の順序で機能するよう構成され得る。言い換えれば、説明され得るステップの任意のシーケンス又は順序は、ステップがその順序で実行されるという要件を必ずしも示すものではない。本明細書に記載の処理ステップは、実用的な任意の順序で実行され得る。さらに、いくつかのステップは、同時に実行され得る。
【００２６】
一実施例では、アキテクチャ２００は、特に非構造化テキストデータに対するドメイン固有の検索を実現するための、モデル駆動型の枠組みを主に示す。高レベルで、この枠組みには、様々なモデル（メタ・モデル、インスタンス・モデル、抽出モデル、及び言及モデルなど）を定義するための情報抽出システムと、情報抽出システムによって指定されるモデルを変換することで機能する、一般的なドメインにとらわれない検索システムとの、２つの部分がある。一実施例では、ドメイン・エキスパートは、メタ・モデルでさらに符号化されている新しいドメインの仕様を定義することを容易にする。モデルが情報抽出システムによって定義されると、テキスト・マイニングが開始され得る。ここでテキスト・マイニングは、情報抽出及び検索を含む。情報抽出は、抽出モデルを使用して、文書リポジトリからエンティティ、プロパティ及び関係のインスタンスを抽出することを含む。文書リポジトリは、社内報告、オンライン記事、出版物などの構造化及び非構造化テキスト・ソースを含むことができる。一実施例では、システム１００は、ウェブ・クローラを使用し、ドメイン固有の文書を自動的にダウンロードして、文書リポジトリを作成するよう構成され得る。本開示によれば、抽出モデルは、文書リポジトリから各文書を取り出し、エンティティ、プロパティ、及び関係の抽出を実行する。次いで、抽出された情報は、言及モデル内のオブジェクト・グラフに格納され、オブジェクト・グラフはさらに索引づけモジュールによって索引づけされてグラフ知識ベースを形成し、検索モジュールによる検索クエリの処理に使用される。検索クエリを指定するために、検索クエリ・インタフェースを提供し得る。クエリ処理モジュールにより、ユーザのクエリは、関心のあるドメインに好適な形式で、同等のクエリに確実に変換される。ドメイン仕様は、情報の抽出及び検索のための入力として、明示的に取り込まれ供給されることに留意されたい。抽出モデル及び検索モジュールは、ドメインのハード・コーディングされた知識を持たない、ドメイン非依存であり、単に定義されたモデルを変換して、検索システムにドメインの特殊性を与える。次いで検索モジュールは、一致する文書を探索するために、知識グラフ知識ベースを処理する。
【００２７】
従って、本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３０２で、メタ・モデル、インスタンス・モデル、抽出モデル、及び言及モデルを使用して、少なくとも１つの関心のあるドメインの要素を定義するよう構成される。少なくとも１つの関心のあるドメインの要素を定義するステップを、メタ・モデル、インスタンス・モデル、及び抽出モデルのための、モデル駆動型ドメイン仕様ユーザ・インタフェース（ＵＩ：ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）を介して、ドメイン・エキスパートによって容易にすることができる。抽出モデルは、言及モデルを生成するために使用される。
【００２８】
一実施例では、メタ・モデルは、複数のメタ・モデル・クラスを含み、少なくとも１つの関心のあるドメインに関するエンティティ又は概念、そのエンティティに関連づけられたプロパティ、及びエンティティとそのプロパティとの間の関係を取得するよう構成される。さらに、メタ・モデルは、汎化又は特化階層の形でドメイン知識を取得し、関係濃度、プロパティ値の種類、値の範囲、単位などが取得される。図４は、本開示の一実施例による例示的なメタ・モデルを示す。一実施例では、複数のメタ・モデル・クラスには、エンティティを取り込むよう構成されたＯｎｔＭｅｔａＣｌａｓｓクラス、プロパティを取り込むよう構成されたＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラス、及び関係を取り込むよう構成されたＯｎｔＭｅｔａＲｅｌａｔｉｏｎクラスが含まれ、ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラスのインスタンスは、ＯｎｔＭｅｔａＣｌａｓｓのインスタンスに関連づけられる。ある実例は、材料工学ドメインについてのメタ・モデル・クラスであり、以下の通りである。
ＯｎｔＭｅｔａＣｌａｓｓ：Ｐｒｏｃｅｓｓ、Ｍａｔｅｒｉａｌなどのようなエンティティは、ＯｎｔＭｅｔａＣｌａｓｓクラスのインスタンスとして作成され得る。
ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙ：Ｐｒｏｃｅｓｓは、そのプロパティとしてＰｒｏｃｅｓｓ  Ｐａｒａｍｅｔｅｒを有する。この事実は、次のように表現される。ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラスのインスタンス、すなわちＰｒｏｃｅｓｓＰａｒａｍｅｔｅｒが最初に作成される。次いで、ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙの関連づけを使用して、Ｐｒｏｃｅｓｓ（ＯｎｔＭｅｔａＣｌａｓｓのインスタンス）をＰｒｏｃｅｓｓＰａｒａｍｅｔｅｒに関連づける。
ＯｎｔＭｅｔａＲｅｌａｔｉｏｎ：製造工程が、材料に加えられる。これは、ＯｎｔＭｅｔａＲｅｌａｔｉｏｎクラスのインスタンス、すなわちｐｒｏｃｅｓｓ＿ｍａｔｅｒｉａｌを作成することによって取り込まれ得る。
これに加えて、ＯｎｔＭｅｔａＣｌａｓｓクラスの２つのインスタンス、すなわちＰｒｏｃｅｓｓ及びＭａｔｅｒｉａｌが作成される。次いで、これら２つのインスタンスは、図４に示すｓｒｃＲｅｌ及びｔｇｔＲｅｌの関連づけを使用して、ＯｎｔＭｅｔａＲｅｌａｔｉｏｎのインスタンス、すなわちｐｒｏｃｅｓｓ＿ｍａｔｅｒｉａｌに関連づけられる。ＯｎｔＭｅｔａＣｌａｓｓクラス、ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラス、ＯｎｔＭｅｔａＲｅｌａｔｉｏｎクラスの３つのクラスは、材料工学ドメインの要素を完全に取り込んでいる。図５は、本開示の一実施例による、材料工学ドメインについての例示的なメタ・モデルを示す。一実施例では、メタ・モデルもまた、情報を抽出するやり方を提供する。この目的に向かって、複数のメタ・モデル・クラスは、抽出モデルに含まれるＥｘｔｒａｃｔｉｏｎＭｏｄｅｌクラスに関連づけられる。図５に示すように、エンティティであるＭａｔｅｒｉａｌ及びＰｒｏｃｅｓｓは、ＯｎｔＭｅｔａＣｌａｓｓクラスのインスタンスとして作成され、関係であるｐｒｏｃｅｓｓ＿ｍａｔｅｒｉａｌは、ＯｎｔＭｅｔａＲｅｌａｔｉｏｎクラスのインスタンスとして作成され、且つＭａｔｅｒｉａｌＰｒｏｐｅｒｔｙ及びＰｒｏｃｅｓｓＰａｒａｍｅｔｅｒは、ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラスのインスタンスとして作成され、それぞれエンティティであるＭａｔｅｒｉａｌ及びＰｒｏｃｅｓｓに関連づけられる。図５は、表記“＜ｅｎｔｉｔｙ−ｎａｍｅ＞：＜ｍｅｔａ−ｅｎｔｉｔｙ−ｎａｍｅ＞”表記を持つ、エンティティを示す。図５はまた、関係ｐｒｏｃｅｓｓ＿ｍａｔｅｒｉａｌの濃度を１．．＊：１．．＊として示しており、これは１つの材料が、１つ又は複数の工程と関連している可能性があることを意味し、その逆も成り立つ。図４に見られるように、エンティティ及び関係の間の汎化及び特化階層は、それぞれ‘ｓｕｐｅｒＣｌａｓｓ／ｓｕｂＣｌａｓｓ’及び‘ｓｕｐｅｒＲｅｌａｔｉｏｎ／ｓｕｂＲｅｌａｔｉｏｎ’の関連づけを使用して定義され得る。たとえば、製造ドメインでは、‘Ｐａｒｔ’、‘ＭｅｃｈａｎｉｃａｌＰａｒｔ’、‘ＥｌｅｃｔｒｉｃａｌＰａｒｔ’などのエンティティがあってもよく、後者の２つは前者の特化である。同様に、部品間に‘Ｉｎｔｅｒａｃｔｉｏｎ’と呼ばれる関係のある場合があり、この関係には、‘ｅｎｅｒｇｙ＿ｅｘｃｈａｎｇｅ’、‘ｍａｔｔｅｒ＿ｅｘｃｈａｎｇｅ’などの特化があり得る。
【００２９】
一実施例では、インスタンス・モデルは、複数のインスタンス・クラスを含み、エンティティ、そのプロパティ、及びエンティティとそのプロパティとの間で関連づけられた関係の少なくとも１つのインスタンスを取得又は取り込むよう構成される。少なくとも１つのインスタンスは、ドメイン・エキスパートから取得されてもよく、又は機械学習によって取り込まれてもよい。図６Ａから図６Ｂは、本開示の一実施例による、例示的なインスタンス・モデルを示す。図６Ａから図６Ｂのインスタンス・モデルを使用して、図７は、本開示の一実施例による、材料工学ドメインについての例示的なインスタンス・モデルを示し、ここで２つのプロセス・インスタンス及びそのパラメータが、ＯｎｔＣｌａｓｓＩｎｓｔａｎｃｅクラス及びＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラスのインスタンスとしてどのように作成され、対応するドメイン・エンティティ及びプロパティに関連づけられるかが示される。一実施例では、プロパティが取り得る値の範囲、使用可能な単位などもまた取り込まれ得る。たとえば、ＣｏｏｌｉｎｇＲａｔｅは、単位‘Ｃ  ｐｅｒ  ｍｉｎ’及び１から１０００の範囲の値を有するよう指定され得る。特に、図７のインスタンス・モデルは、焼入れ、焼戻しなどが製造工程であり、引張り強度、硬度などは材料特性などである、などの事実を取り込む。一実施例では、複数のインスタンス・クラスは、エンティティの少なくとも１つのインスタンスを取り込むよう構成されたＯｎｔＣｌａｓｓＩｎｓｔａｎｃｅクラス、エンティティの少なくとも１つのインスタンスのプロパティを取り込むよう構成されたＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラス、及びエンティティの少なくとも１つのインスタンス間の関係を取り込むよう構成されたＯｎｔＲｅｌａｔｉｏｎＩｎｓｔａｎｃｅクラスを含み得る。本開示によれば、インスタンス・クラスのそれぞれが、複数のメタ・モデル・クラスからの、対応するメタ・モデル・クラスに関連づけられる。たとえば、焼入れは、ＯｎｔＣｌａｓｓＩｎｓｔａｎｃｅクラスのインスタンスである。それが製造工程であるという事実は、焼入れを、ＯｎｔＭｅｔａＣｌａｓｓクラス、メタ・モデル・クラスのインスタンスであるＰｒｏｃｅｓｓと関連づけることによって、取り込まれる。
【００３０】
本開示によれば、ドメイン・エンティティ及びそのプロパティの同義語及び語彙の変形もまた考慮される。一実施例では、複数のインスタンス・クラスは、同義語の関連づけを使用して、同義語を取り込んで複数のインスタンス・クラスのインスタンスと関連づけるよう構成された、Ｓｙｎｏｎｙｍクラスをさらに含むことができる。たとえば、降伏強度と降伏応力とは同義語であり、同じドメイン・エンティティを参照する。本開示によれば、これは以下のように取り込まれ得る。ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラスのインスタンスが、降伏強度用に作成され、Ｓｙｎｏｎｙｍクラスのインスタンスが降伏応力用に作成され、次いで降伏強度は、同義語の関連づけを使用して降伏応力と関連づけられる。
【００３１】
ＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラスのインスタンスは通常、テキスト・ソース内に出現するときに値を持つ。一実施例では、複数のインスタンス・クラスは、ＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラスのインスタンスに関連づけられた値について、取り得る単位を取り込むよう構成される、Ｕｎｉｔクラスをさらに含むことができる。値を正しいプロパティ・インスタンスに関連づけるために、抽出モデルによって、値の単位が使用され得る。たとえば、テキスト・ソースで言及されている値を、その値がその単位としてパスカルを持っている場合にのみ、降伏強度と関連づけることができる。
【００３２】
一実施例では、抽出モデルは、抽出モデル・クラスを含み、エンティティ、プロパティ、及びエンティティに関連づけられた関係のうちの１つ又は複数について、少なくとも１つの抽出方法を指定するように構成される。図８は、本開示の一実施例による、例示的な抽出モデルを示す。一実施例では、少なくとも１つの抽出方法は、ＤｉｃｔｉｏｎａｒｙＥｘｔｒａｃｔｉｏｎＭｏｄｅｌ、ＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌ、又はＭＬＥｘｔｒａｃｔｉｏｎＭｏｄｅｌに含まれる。一実施例では、ＤｉｃｔｉｏｎａｒｙＥｘｔｒａｃｔｉｏｎＭｏｄｅｌは、エンティティのインスタンス、関連づけられたプロパティのインスタンス、及び関連づけられた関係のインスタンスの辞書を使用して、文書リポジトリからの検討中の複数の文書に含まれる、前処理された生テキスト内の、エンティティのインスタンス、プロパティのインスタンス、及び関係のインスタンスの言及を取り込む。一実施例では、ＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌは、（ａ）前処理された生テキスト内の文字と一致するテキストのパターンを特定するためのＴｅｘｔＰａｔｔｅｒｎ、及び（ｂ）文字以外のパターンを特定するためのＮＬＰＰａｔｔｅｒｎを含む、１組のパターンに関連づけられ、品詞（ＰＯＳ）タグ、依存関係、及び見出語認定を含む自然言語処理の特性に基づく。抽出モデルの相異なる種類が指定され得る。たとえば、エンティティであるＭａｔｅｒｉａｌは、ＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌを有し、ＭａｔｅｒｉａｌＰｒｏｐｅｒｔｙは、ＤｉｃｔｉｏｎａｒｙＥｘｔｒａｃｔｉｏｎＭｏｄｅｌを有し、関係であるｐｒｏｃｅｓｓ＿ｍａｔｅｒｉａｌは、ＭＬＥｘｔｒａｃｔｉｏｎＭｏｄｅｌなどの機械学習ベースのモデルを有することができる。
【００３３】
一実施例では、メタ・モデル・クラス及びインスタンス・クラスのインスタンス、関係、抽出モデルなどを定義するように、グラフィカル・ユーザ・インタフェース（ＧＵＩ：ｇｒａｐｈｉｃａｌ  ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）がドメイン・エキスパートのために提供され得る。たとえば、先に考慮された材料工学の実例を考えると、Ｐｒｏｃｅｓｓは、そのプロパティとしてＰｒｏｃｅｓｓＰａｒａｍｅｔｅｒを有する。これは、２つのインスタンスを作成することを必要とする。ＯｎｔＭｅｔａＣｌａｓｓクラスのインスタンスとしてのＰｒｏｃｅｓｓ、及びＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラスのインスタンスとしてのＰｒｏｃｅｓｓＰａｒａｍｅｔｅｒである。次いで、２つのインスタンスは、ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙの関連づけによって関連づけられる必要がある。本開示のシステム１００は、ＯｎｔＭｅｔａＣｌａｓｓクラス、ＯｎｔＭｅｔａＰｒｏｐｅｒｔｙクラス、及びＯｎｔＭｅｔａＲｅｌａｔｉｏｎクラスのインスタンスを作成するために、ＧＵＩページを提供することができる。インスタンスが作成されると、それは適切なＯｎｔＭｅｔａＣｌａｓｓクラスのインスタンスに関連づけられ得る。一実施例では、システム１００は、ドメイン・エキスパートによる選択のために、ドロップダウン・ボックス内に、ＯｎｔＭｅｔａＣｌａｓｓクラスのすべてのインスタンスのリストを提供することができる。ＧＵＩは、ドメイン・エキスパートがドメイン関連情報を入力するときに、関連づけの濃度の制約が考慮されるように設計され得る。
【００３４】
メタ・モデル・クラスのインスタンスが作成されると、ドメイン・エキスパートは、インスタンス・クラス及び抽出クラスのインスタンスを作成することができる。上記のＰｒｏｃｅｓｓＰａｒａｍｅｔｅｒの実例では、ドメイン・エキスパートは、冷却速度、均熱時間、オーステナイト化温度、焼鈍し時間、保持期間などのような様々なインスタンスを作成することができる。一実施例では、ＧＵＩはまた、インスタンスを、その関連づけられた工程名に容易に関連させることができる。各プロセス・パラメータについての、許される単位に関する詳細もまた、取り込まれ得る。一実施例では、システム１００は、かかるインスタンスを外部ファイルからアップロードすることができる場合、インポート機能もまた提供することができる。インポート機能は、ドメイン要素のインスタンスが外部データ・ソースで直接利用できる場合、特に役立つ。
【００３５】
本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３０４において、文書リポジトリから複数の文書を受信するよう構成される。文書リポジトリは、ポータブル文書形式（ＰＤＦ：Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）、ワード処理文書形式（ＤＯＣ）、ハイパーテキスト・マークアップ言語（ＨＴＭＬ：Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）など、種々の形式の構造化及び非構造化テキスト・ソースを含むことができる。
【００３６】
本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３０６で、複数の文書に含まれる生テキストを、テキスト形式に前処理するよう構成される。一実施例では、前処理は、文分割、トークン化、語幹処理、品詞（ＰＯＳ）タグづけ、及び構文解析のうちの１つ又は複数を含み得る。
【００３７】
本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３０８で、少なくとも１つの関心のあるドメインについて、複数のメタ・モデル・クラス、インスタンス・クラス、及び抽出モデル・クラスの少なくとも１つのインスタンスを取得するよう構成される。次いで、ドメイン内の関心のある各エンティティについて、テキスト内のエンティティの言及を抽出するためにエンティティ固有の抽出方法が使用され、その後、関心のあるエンティティに関連づけられた各プロパティに対して、プロパティの言及を抽出するためにプロパティ固有の方法が使用され、関心のある各関係に対して、関係の言及を抽出するために関係固有の方法が使用される。
【００３８】
従って、本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３１０で、取得された抽出モデル・クラスのインスタンスを使用して、前処理された生テキストから、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスを抽出し、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスを、対応するメタ・モデル・クラスのインスタンスと関連づけるよう構成される。固有の抽出方法は、一般的なレベルで指定され、複数のエンティティに再利用され得る。従って、一般的なエンティティ、プロパティ、又は関係レベルで指定された抽出方法は、固有のエンティティ、プロパティ、又は関係レベルで明示的に上書きされるまで、汎化階層の下に継承される。たとえば、エンティティ‘Ｐｅｒｓｏｎ’について指定された抽出方法は、より固有の抽出方法で明示的に上書きされない限り、‘Ｅｍｐｌｏｙｅｅ’、‘Ｍａｎａｇｅｒ’、‘Ｐｒｅｓｉｄｅｎｔ’などの抽出に使用され得る。これにより、何千ものエンティティ及び関係を含む、医療ドメインなど大規模ドメインについての情報抽出を、容易に規模拡大できる。本開示によれば、こうしたエンティティ及び関係のそれぞれについて、抽出方法を別々に指定する必要がない場合がある。一般的なレベルで抽出方法を指定し、抽出方法を継承することで再利用を可能にすることが、このシナリオの要求を満たす。
【００３９】
さらに、ＮＬＰでは、利用可能な抽出アルゴリズムは、完璧ではない場合がある。本開示の一実施例によれば、曖昧さがあれば、得られたドメイン知識を利用することによって対処され得る。たとえば、「試料は、１８００℃まで加熱され、５分間保持された後、１００℃／分で室温まで水焼入れされる。」という文があるとする。この文章がドメイン・エキスパートによって読まれると、１００℃／分が「焼入れ」工程の「冷却速度」を指すことは明らかである。しかし、文中に「冷却速度」の明示的な言及がないので、抽出方法は、この情報を推測することができない可能性がある。本開示によれば、かかるシナリオでは、あらゆる曖昧さを回避するために、ドメイン知識が利用され得る。本開示の一実施例によれば、少なくとも１つの抽出方法は、取得又は取り込まれた、エンティティ、そのプロパティ、及びそれらの関係の少なくとも１つのインスタンスに基づいて生成された、１つ又は複数の曖昧さ除去ルールに依存する。所与の例文において、メタ・モデルが、プロパティ「冷却速度」を含むエンティティ「焼入れ」を取得し、プロパティ値の単位が「℃／分」である場合、生成され得る曖昧さ除去ルールは、「ｖがどのプロパティにも結びつけられていない値であり、且つ文中に、そのプロパティの単位がｖの単位と一致するエンティティの言及がある場合は、そのプロパティにｖを結合する」である。一実施例では、１つ又は複数の曖昧さ除去ルールは、単位だけでなく、値の種類、値の範囲の制約などについても生成され得る。曖昧さ除去ルールの別の実例は、例示の文「焼入れ後の焼戻しは、それぞれ１２０℃／分及び２００℃／分の速度で行われた」に関して理解されるかもしれないが、ここでドメイン・エキスパートは、「１２０℃／分」が焼戻しの加熱速度を指し、「２００℃／分」が焼入れの冷却速度を指すことを理解することができる。しかし、「加熱速度」及び「冷却速度」についての言及がないため、ＮＬＰは混乱する可能性がある。本開示によれば、抽出モデルは、ドメイン知識に基づいてこれを自動的に理解するよう構成される。「焼入れ」と「冷却速度」との間の濃度が１：１であるとすると、生成され得る曖昧さ除去ルールは、「エンティティの言及に２つの関連づけられたパラメータ値があり、濃度が１つのパラメータ値のみを許容する場合は、最も近いパラメータ値のみ結合し、結びつけられていない値について、次に最も近いエンティティの言及を探す」である。
【００４０】
一実施例では、以下の疑似コードによって表される曖昧さ除去ルールを生成することができ、ここでコードは、関連するパターンを見つけるために、関心のあるドメインの要素を走査する。
値中心の曖昧さ除去ルール
ＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅクラスの各インスタンスｐについて、
以下のルールを生成する。
１．「ｖがどのプロパティにも結びつけられていない値の言及であり、文に、プロパティ・インスタンスとしてのｐをもち、ｐの単位がｖの単位と一致する、エンティティの言及ｅがある場合、ｖをプロパティｐに結合する」
２．「ｖがどのプロパティにも結びつけられていない値の言及であり、文に、プロパティ・インスタンスとしてｐをもち、ｐの値の範囲がｖの値と一致する、エンティティの言及ｅがある場合、ｖをプロパティｐに結合する」
関係中心の曖昧さ除去ルール
ＯｎｔＲｅｌａｔｉｏｎＩｎｓｔａｎｃｅクラスの各インスタンスｒについて、
（ｒ．ｔｇｔＣａｒｄｉｎａｌｉｔｙ＝１）の場合は、以下のルールを生成する。
「エンティティの言及ｅが２つの関連づけられたパラメータ値をもち、その両方ともｒのターゲットのインスタンスである場合は、最も近いパラメータ値のみを結合し、結びつけられていない値について、次の最も近いエンティティの言及を探す」
【００４１】
本開示の一実施例では、抽出方法は、以下に示されるように表され得る。
１．ＯｎｔＭｅｔａＣｌａｓｓクラスの各エンティティＥについて：
Ｅが、抽出方法を持っているかどうかを確認する。
持っていない場合は、その‘ｓｕｐｅｒＣｌａｓｓ’エンティティの１つが、抽出方法を持っているかどうかを確認する。
持っていない場合は、次のエンティティに進む。
テキストからＥの言及を抽出するための、抽出方法を使用する。
１．１  （Ｅ  ｕｎｉｏｎ  Ｅ．ｓｕｐｅｒＣｌａｓｓ＊）．ｏｎｔＭｅｔａＰｒｏｐｅｒｔｙ．ＭｅｔａＰｒｏｐｅｒｔｙの各プロパティＰについて、
／／Ｅ．ｓｕｐｅｒＣｌａｓｓ＊は、スーパー・クラス・クロージャ、すなわちＥのすべての先祖を指す。
／／つまり、Ｅのすべての所有するプロパティ及び継承されたプロパティのリストを取得する。
Ｐが、抽出方法を持っているかどうかを確認する。
持っていない場合は、次のプロパティに進む。
テキストからＰの言及を抽出するための、抽出方法を使用する。
２．ＯｎｔＭｅｔａＲｅｌａｔｉｏｎクラスの各関係Ｒについて：
Ｒが、抽出方法を持っているかどうかを確認する。
持っていない場合は、その‘ｓｕｐｅｒＲｅｌａｔｉｏｎ’関係の１つが、抽出方法を持っているかどうかを確認する。
持っていない場合は、次の関係に進む。
テキストからＲの言及を抽出するための、抽出方法を使用する。
３．生成された曖昧さ除去ルールを、未解決の言及に適用する。
【００４２】
本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３１２で、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスの、抽出された言及を、オブジェクト・グラフ形式で、言及モデルの中に格納するよう構成される。図９Ａから図９Ｂは、本開示の一実施例による、例示的な言及モデルを示す。一実施例では、言及モデルは、複数の言及クラスを使用して、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及びそれらの関係の言及のインスタンスの、値及び位置を取り込むよう構成される。たとえば、製品の破損に関する技術報告書が、文書の３ページの段落番号２に、破損した製品の材料の硬度値を記載している場合がある。この場合、硬度は、ファイル名、ページ番号、及び段落番号の情報を含む位置を持つことに留意されたい。位置は、以下の２つのクラスを含む。ＴａｂｌｅＬｏｃａｔｉｏｎクラス及びＴｅｘｔＬｏｃａｔｉｏｎクラスである。ＴａｂｌｅＬｏｃａｔｉｏｎクラスの場合は、ＴａｂｌｅＬｏｃａｔｉｏｎクラスの属性によって、表番号、説明文、行番号、及び列番号に関する情報が取り込まれ得る。ＴｅｘｔＬｏｃａｔｉｏｎクラスは、ファイル名及びページ番号に加えて、言及の開始場所及び終了場所を取り込むことができる。ＴｅｘｔＬｏｃａｔｉｏｎクラスは、この情報を取り込むのに好適な属性を持つことができる。上記の実例では、ＴｅｘｔＬｏｃａｔｉｏｎクラスのインスタンスが作成される（ファイル名、ページ番号、開始場所及び終了場所の属性用の適切な値を含む）。値は、以下の相異なる５種類であり得る。ＴｅｘｔＶａｌｕｅ（たとえば、焼入れ媒体用の「水」）ＮｕｍｅｒｉｃＶａｌｕｅ（たとえば、５０ロックウェル硬さ）、ＲａｎｇｅＶａｌｕｅ（たとえば、３０〜５０分間の焼入れ時間）、ＥｎｕｍＶａｌｕｅ（たとえば、＜破損率に対して重大な／重大でない＞）、及びＢｏｏｌｅａｎＶａｌｕｅ（たとえば、＜機器のオン／オフ状態＞）である。一実施例では、Ｌｏｃａｔｉｏｎクラス及びＶａｌｕｅクラスに加えて、言及クラスは、抽出された、エンティティの言及のインスタンス、プロパティの言及のインスタンス、及び関係の言及のインスタンスのそれぞれの位置に関連づけるよう構成された、ＯｎｔＣｌａｓｓＭｅｎｔｉｏｎ、ＯｎｔＰｒｏｐｅｒｔｙＭｅｎｔｉｏｎ、及びＯｎｔＲｅｌＭｅｎｔｉｏｎをさらに含み得る。例示的な文「次いで、材料は、２００℃／秒の速度で焼入れされた。」では、この文中の言及、すなわち「焼入れされた」及び「速度」について、ＯｎｔＣｌａｓｓＭｅｎｔｉｏｎ及びＯｎｔＰｒｏｐｅｒｔｙＭｅｎｔｉｏｎのインスタンスが作成される。次いで、適切な位置インスタンスが作成され、２つの言及に関連づけられる。「焼入れされた」は、焼入れプロセス・インスタンスの言及であり、「速度」は冷却速度インスタンスの言及であるという情報を取り込むために、２つの言及は、Ｑｕｅｎｃｈｉｎｇ（ＯｎｔＣｌａｓｓＩｎｓｔａｎｃｅのインスタンス）及びＣｏｏｌｉｎｇＲａｔｅ（ＯｎｔＰｒｏｐｅｒｔｙＩｎｓｔａｎｃｅのインスタンス）に関連づけられる。次に、Ｑｕｅｎｃｈｉｎｇ及びＣｏｏｌｉｎｇＲａｔｅは、それぞれＰｒｏｃｅｓｓ及びＰｒｏｃｅｓｓＰａｒａｍｅｔｅｒに関連づけられる。次いで、値を抽出するためのアルゴリズムは、Ｖａｌｕｅクラスのインスタンスとして２００を、Ｕｎｉｔクラスのインスタンスとして℃／秒を抽出する。次いで、ＰｒｏｃｅｓｓＰａｒａｍｅｔｅｒ用に指定された抽出モデルは、値インスタンスを、速度の言及に関連づけることができる。かかる抽出モデルの実例は、以下のパターンを有するＰａｔｔｅｒｎＥｘｔｒａｃｔｉｏｎＭｏｄｅｌのインスタンスであり得る。「＜値＞＜単位＞の＜プロパティ＞」であり、ここでプロパティは、工程パラメータ・インスタンスと一致する必要があり、値は、Ｖａｌｕｅクラスのインスタンスである必要があり、単位は、Ｕｎｉｔクラスのインスタンスである必要があり、一致した工程パラメータ・インスタンス用の許される単位リスト内に存在する必要がある。抽出のステップの最後で、各文書について、言及モデル内の様々なクラスのインスタンスが作成される。こうした言及インスタンスに関連づけられた要素に関する詳細は、インスタンス・モデル及びメタ・モデルのインスタンスによって取り込まれる。従って、言及を抽出するステップの後に、言及モデル、インスタンス・モデル、及びメタ・モデルにおける、クラスのオブジェクト・グラフが生成される。次いで、このグラフはさらなる処理のために、グラフ知識ベース内に格納される。
【００４３】
本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３１４で、オブジェクト・グラフを、複数の文書の各々に関連づけられた、前処理された生テキストと共に、グラフ知識ベースに索引づけするよう構成される。前処理された生テキストの索引づけは、言及に対するオブジェクト・ベースのクエリが、キーワード・ベースのクエリと共に実行されることを可能にする。
【００４４】
各ドメインでの検索では、検討中のドメインに関連する固有の構文又は形式を持つ、固有の構造化クエリを使用する必要がある。新しい検索のためにドメインが変更された場合は、それに応じてクエリ言語もまた修正が必要となるはずである。本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３１６において、少なくとも１つの関心のあるドメインに対応するクエリ言語パーサを生成するよう構成される。クエリ言語パーサはドメインに依存せず、検討中のドメインについてのメタ・モデル及びインスタンス・モデルのインスタンスに基づいて、受信されたクエリが、検討中のドメインと互換性があるかどうかの確認を実行する。本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３１８において、索引づけされたグラフ知識ベース上で、受信された検索クエリを同等のクエリに変換するよう構成される。検索クエリは、言及に対するオブジェクト・クエリ、キーワード・ベースのテキスト・クエリ、又はそれらの組合せのいずれかであり得る。本開示によれば、同等のクエリは、少なくとも１つの関心のあるドメインに関し、生成されたクエリ言語パーサを使用する。
【００４５】
本開示の一実施例では、入力検索クエリを受信するための、検索クエリ・インタフェースが提供され得る。検索クエリ・インタフェースは、宣言型クエリ言語インタフェース又はＧＵＩベースのインタフェースであり得る。一実施例では、クエリ・プロセッサ・モジュールは、クエリ言語パーサを生成し、クエリを変換し、それを索引づけされたグラフ知識ベースに適用し、その結果を提示する。本開示の一実施例では、１つ又は複数のプロセッサ１０４は、ステップ３２０で、グラフ知識ベース内の変換されたクエリに関連する１つ又は複数の一致を識別するよう構成される。
【００４６】
本開示の一実施例によるクエリ言語パーサで使用される文法のサブセットは、以下に示されるように表され得る。
【００４７】
【表１】
2020009430.tif 000003
【００４８】
クエリの基本単位は、ドメイン・インスタンス及びそのプロパティに対する値の制約／条件である（文法では、ｒｅｌａｔｉｏｎａｌＴｅｒｍで表される）。この言語は、かかる制約に対して複雑なクエリを作成するためのブール演算子を提供する。制約は、ポイント値の制約又は範囲値の制約として指定され得る。範囲の制約は、下限及び上限（たとえば［１、１０］）又は＞、＜、≧、又は≦などの関係演算子のいずれかを使って指定され得る。クエリ言語パーサは、ドメイン・エンティティとそのプロパティとの間の関連づけを走査するため、経路式に類似する構文を提供する。クエリ言語パーサは、値の制約ベースのクエリをキーワード・ベースのクエリと組み合わせるやり方もまた提供する。＄で始まる言語での、すべての非終端（ｎｏｎ−ｔｅｒｍｉｎａｌ）は、様々なドメイン・モデル・エンティティを参照する手段、又はそのプロパティ及び関係を走査するやり方を提供することに留意されたい。このようにして、クエリ言語パーサは、ドメイン・モデルの仕様によって所与のドメインに特化され得る、一般的なテンプレートを提供する。
【００４９】
一実施例では、ドメインに依存しないクエリ言語パーサは、以下のルールを生成することによって、材料工学ドメインについて例示され得る。
【００５０】
【表２】
2020009430.tif 000004
【００５１】
この生成されたフラグメントは、“ｔｅｍｐｅｒｉｎｇ［ＨｅａｔｉｎｇＲａｔｅ＞１００］＆ｑｕｅｎｃｈｉｎｇ［ＣｏｏｌｉｎｇＲａｔｅ＜２５０］”のような形式のクエリを書くことを可能にする。
【００５２】
材料工学ドメインについての例示的なクエリは、以下に示す通りであり得る。
“ｍａｔｅｒｉａｌ．ｃａｒｂｏｎ：［０．２，０．３］ｗｅｉｇｈｔ％  ＡＮＤ  ｍａｔｅｒｉａｌ．ｅｌｏｎｇａｔｉｏｎ＞０．４”：
このクエリは、使用される材料が、０．２から０．３重量パーセントの範囲内の炭素組成物を有し、実験中に材料の伸び量が０．４よりも大きかったすべての文書を検索する。
【００５３】
別の例示的なクエリは、以下に示す通りであり得る。
“ｑｕｅｎｃｈｉｎｇ［ｃｏｏｌｉｎｇ  ｒａｔｅ＞＝２００Ｃ／ｓ  ＡＮＤ  ｔｉｍｅ＞＝３０ｍｉｎ］ＡＮＤ  ｓｔｅｅｌ．ＵＴＳ：［４００，５００］ＭＰａ”：
このクエリは、冷却速度２００℃／ｓ以上、且つ焼入れ時間３０分以上で焼入れ工程が実行された、すべての文書を検索する。これらの文書はまた、その引張り強度が４００から５００ＭＰａの範囲内にある鋼材に言及していなければならない。
【００５４】
従って、本開示によれば、ＮＬＰ技術と共にドメイン知識を使用することによって、効果的なドメイン固有の検索が可能になる。モデル駆動型ドメイン固有検索は、新しいドメインで使用するための、検索システムの再コーディングが不要になることを保証する。メタ・モデルはドメイン知識を取り込み、インスタンス・モデル、抽出モデル及び言及モデルと共に、非構造化テキストでの効率的な関係認識検索を可能にする。さらに、検索クエリは、関心のあるドメインに好適なものになるように自動的にカスタマイズされる。オブジェクト・グラフに索引づけすることは、効率的で最適化された記憶装置及びより高速な検索、探索をもたらす。
【００５５】
記載の説明は、どんな当業者でも本実施例を作成し使用することができるように、本明細書で主題を示している。主題の実施例の範囲は、特許請求の範囲によって定義され、当業者が思いつく他の修正形態を含むことができる。特許請求の範囲の文字通りの言葉と異ならない、同様の要素を備えている場合、又は特許請求の範囲の文字通りの言葉と本質的な違いがない、同等の要素を備えている場合、かかる他の修正形態は、特許請求の範囲内にあることを意図している。
【００５６】
保護の範囲は、かかるプログラムと、さらにその中にメッセージを含むコンピュータ可読の手段とに拡張され、かかるコンピュータ可読の記憶手段は、プログラムがサーバ、携帯装置、又は任意の好適なプログラム可能な装置上で実行されるとき、方法の１つ又は複数のステップを実装するための、プログラムコード手段を含むことを理解されたい。ハードウェア装置は、たとえばサーバ、パーソナル・コンピュータなど、又はそれらの組合せのような、任意の種類のコンピュータを含む、プログラム可能な任意の種類の装置であってもよい。この装置はまた、たとえば特定用途向け集積回路（ＡＳＩＣ：ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）、現場でプログラム可能なゲートアレイ（ＦＰＧＡ：ｆｉｅｌｄ−ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）のような、たとえばハードウェア手段、又はハードウェア手段とソフトウェア手段との組合せ、たとえばＡＳＩＣ及びＦＰＧＡ、若しくは少なくとも１つのマイクロプロセッサ及びその中にソフトウェア・モジュールが配置された少なくとも１つのメモリであり得る、手段を含むことができる。すなわち、この手段は、ハードウェア手段とソフトウェア手段との両方を含むことができる。本明細書に示すこの方法の実施例は、ハードウェア及びソフトウェアで実装されてもよい。この装置はまた、ソフトウェア手段を含んでもよい。或いは、この実施例は、様々なハードウェア装置、たとえば複数のＣＰＵを使用して実装されてもよい。
【００５７】
本明細書の実施例は、ハードウェア要素及びソフトウェア要素を含むことができる。ソフトウェアで実装される実施例は、ファームウェア、常駐ソフトウェア、マイクロコードなどを含むがそれに限定されるものではない。本明細書に示す様々なモジュールによって実行される機能は、他のモジュール又は他のモジュールの組合せで実装されてもよい。本説明の目的では、コンピュータが使用可能な又はコンピュータが可読の媒体は、命令実行システム、装置、若しくは装置によって又はそれらと共に使用されるプログラムを含む、格納する、通信する、伝搬する、或いは転送することが可能な任意の装置であってもよい。
【００５８】
例示されたステップは、示された典型的な実施例を説明するために提示されており、進行中の技術開発は、特定の機能が実行される手法を変えるであろうことを、前もって認識されたい。これらの実例は、例示の目的で本明細書に提示されており、限定するものではない。さらに、機能的構成要素の境界は、説明の便宜上、本明細書では任意に定義されている。特定の機能及びそれらの関係が適切に実行される限り、代替の境界を定義することができる。代替形態（本明細書に記載されたものの等価物、拡張形態、変形形態、変位形態などを含む）は、本明細書に含まれる教示に基づいて、当業者には明らかであろう。かかる代替形態は、開示された実施例の範囲及び精神の範囲内に入る。また、「ｃｏｍｐｒｉｓｉｎｇ」、「ｈａｖｉｎｇ」、「ｃｏｎｔａｉｎｉｎｇ」、及び「ｉｎｃｌｕｄｉｎｇ」という単語、及び他の同様の形態は、意味において同等であり、これらの単語のうちのいずれか１つに続く１つ又は複数の品目は、かかる１つ又は複数の品目を網羅的に列挙したものであることを意味しないか、又は列挙された１つ又は複数の品目のみに限定されることを意味するか、という点で、制限がないことを意図している。本明細書及び添付の特許請求の範囲で使用されるとき、単数形「ａ」、「ａｎ」、及び「ｔｈｅ」は、文脈が明らかにそうでないことを定めない限り、複数の参照を含むことにもまた留意されたい。
【００５９】
さらに、本開示と一致する実施例を実装するに当たっては、１つ又は複数のコンピュータ可読の記憶媒体を利用することができる。コンピュータ可読の記憶媒体は、プロセッサによって読み取り可能な情報又はデータが格納され得る、任意の種類の物理的なメモリを指す。従って、コンピュータ可読の記憶媒体は、本明細書で説明される実施例と一致するステップ又は段階をプロセッサに実行させるための命令を含む、１つ又は複数のプロセッサによる実行のための命令を格納することができる。「コンピュータ可読の媒体」という用語は、有形の品目を含み、搬送波及び過渡信号を除外する、すなわち非一時的なものと理解されたい。実例としては、ランダム・アクセス・メモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、揮発性メモリ、不揮発性メモリ、ハードドライブ、ＣＤ  ＲＯＭ、ＤＶＤ、フラッシュ・ドライブ、ディスク、及び他の任意の既知の物理的記憶媒体を含む。
【００６０】
本開示及び実例は例示としてのみ考慮されることを意図しており、開示された実施例の真の範囲及び精神は、以下の特許請求の範囲によって示される。
【図１】
2020009430.tif 000005
【図２】
2020009430.tif 000006
【図３Ａ】
2020009430.tif 000007
【図３Ｂ】
2020009430.tif 000008
【図４】
2020009430.tif 000009
【図５】
2020009430.tif 000010
【図６Ａ】
2020009430.tif 000011
【図６Ｂ】
2020009430.tif 000012
【図７】
2020009430.tif 000013
【図８】
2020009430.tif 000014
【図９Ａ】
2020009430.tif 000015
【図９Ｂ】
2020009430.tif 000016
【外国語明細書】
2020009430000001.pdf