(57)【特許請求の範囲】
【請求項１】
システムとともに使用するためのコンピューター実施方法であって、
前記方法が、
（ａ）第１のテキストおよび第１の領域定義を含む第１の質問インスタンスを選択し、前記第１の領域定義は、前記第１のテキストで表される質問に対して応答を提供するために使用され得る情報を含んでいる可能性のあるデータセットの領域を識別するように設計されており、前記領域定義は、前記データセット中のタグ付き要素に合わせられた領域を識別することと、
（ｂ）ステップ（ｃ）および（ｄ）の前に、前記第１の領域定義に基づき、前記データセットの第１の領域を識別することと、
（ｃ）前記第１の質問インスタンスを表す出力をユーザーに提供することと、
（ｄ）前記第１の質問インスタンスに対する答えを受け取る前に、前記データセットの前記第１の領域を表す出力を前記ユーザーに提供することとを含む方法。
【請求項２】
前記（ｂ）は、
前記第１の領域定義によって指定される第１の文書タイプを識別することと、
前記データセット内の前記第１の文書タイプの文書を識別することと
をさらに含む、請求項１に記載の方法。
【請求項３】
前記（ｂ）は、
前記第１の領域定義によって指定されるセクションタイプを識別することと、
前記データセット内の前記第１のセクションタイプのセクションを識別することと
をさらに含む、請求項１に記載の方法。
【請求項４】
前記第１の領域定義によって指定される概念との関係を識別することと、
前記データセット内の前記概念を表す第２のコード化データと前記指定された関係を有する前記データセット内の第１のコード化データを識別することと
をさらに含む、請求項１に記載の方法。
【請求項５】
前記（ｂ）は、
前記第１の領域定義に基づき、前記データセットの複数の部分を識別することを含み、前記第１の領域が前記複数の部分を含む、請求項１に記載の方法。
【請求項６】
前記データセットが複数の文書を含み、
前記複数の部分が前記複数の文書のうちの第１の文書の第１の部分を含み、
前記複数の部分が前記複数の文書のうちの第２の文書の第２の部分を含む、
請求項５に記載の方法。
【請求項７】
（ｅ）前記第１の質問インスタンスおよび前記データセットに基づき、前記第１の質問インスタンスに対する第１の応答を自動的に生成することをさらに含む、請求項１に記載の方法。
【請求項８】
（ｆ）前記第１の応答を表す出力を前記ユーザーに提供することをさらに含む、請求項７に記載の方法。
【請求項９】
（ｅ）が前記データセットの特定のサブセットに基づき、前記第１の質問インスタンスに対する前記第１の応答を自動的に生成することを含み、
前記方法が、
（ｆ）が前記データセットの前記特定のサブセットを表す出力を前記ユーザーに提供することをさらに含む、請求項７に記載の方法。
【請求項１０】
前記第１の応答が、応答内容および、前記応答内容が前記第１の質問インスタンスに正しく応答する可能性を示す信頼性スコアを含む、請求項７に記載の方法。
【請求項１１】
（ｅ）が、前記応答内容と、人間から受信した前記第１の質問インスタンスに対する少なくとも１つの以前の応答との間の一致の程度に基づき、前記信頼性スコアを自動的に生成することを含む、請求項１０に記載の方法。
【請求項１２】
前記第１の応答が、前記第１の応答を生成するため、（ｅ）において信頼する前記データセットの少なくとも１つの部分への少なくとも１つのポインターを含む、請求項７に記載の方法。
【請求項１３】
（ｆ）前記第１の応答に関するフィードバックを表す入力を前記ユーザーから受信することと、
（ｇ）前記入力のレコードをコンピューター可読媒体に保存することとをさらに含む、請求項７に記載の方法。
【請求項１４】
前記ユーザーからの前記入力が前記第１の応答の確認ステータスを示す、請求項１３に記載の方法。
【請求項１５】
（ｈ）第２のテキストおよび第２の領域定義を含む、第２の質問インスタンスにアクセスすることと、
（ｉ）前記第１の応答の前記確認ステータスに基づき前記第２の質問に対する応答を生成するか否かを判断することと
をさらに含む、請求項１４記載の方法。
【請求項１６】
前記ユーザーからの前記入力が前記第１の質問インスタンスに対する第２の応答を表す、請求項１３記載の方法。
【請求項１７】
（ｆ）前記応答内容が前記第１の質問インスタンスに正しく応答する可能性を示す信頼性スコアを生成することと、
（ｇ）前記信頼性スコアに基づき、前記ユーザーに対して、前記第１の応答に関するフィードバックを表す入力を求めるか否かを判断することと、
（ｈ）前記ユーザーに前記入力を求めるべきと判断される場合に限り、前記ユーザーに、前記第１の応答に関するフィードバックを表す入力を求めることとをさらに含む、
請求項７記載の方法。
【請求項１８】
前記第１の質問インスタンスが、第１の質問定義をさらに含み、（ｅ）が、前記第１の応答を自動的に生成するために、前記第１の質問定義を処理することを含む、請求項７に記載の方法。
【請求項１９】
前記第１の質問定義が前記第１のテキストと無関係である、請求項１８に記載の方法。
【請求項２０】
前記第１の領域定義が、前記第１のテキストと無関係である、請求項１に記載の方法。
【請求項２１】
コンピューター可読媒体であって、
前記コンピューター可読媒体上に有形的に保存されているコンピューター可読命令を含み、
前記命令が、システムと共に使用するための方法を実行するため、少なくとも１つのコンピュータープロセッサーによって実行可能であって、
前記コンピューター可読媒体が、
前記少なくとも１つのコンピュータープロセッサーによって、第１のテキストおよび第１の領域定義を含む第１の質問インスタンスを選択し、前記第１の領域定義は、前記第１のテキストで表される質問に対して応答を提供するために使用され得る情報を含んでいる可能性のあるデータセットの領域を識別するように設計されており、前記領域定義は、前記データセット中のタグ付き要素に合わせられた領域を識別するための命令と、
前記少なくとも１つのコンピュータープロセッサーによって、前記第１の質問インスタンスを表す出力をユーザーに提供する前、および前記データセットの前記第１の領域を表す出力をユーザーに提供する前に、前記第１の領域定義に基づき、前記データセットの第１の領域を識別するための命令と、
前記少なくとも１つのコンピュータープロセッサーによって、前記第１の質問インスタンスを表す出力をユーザーに提供するための命令と、
前記少なくとも１つのコンピュータープロセッサーによって、前記第１の質問インスタンスに対する答えを受け取る前に、前記データセットの前記第１の領域を表す出力をユーザーに提供するための命令とを含む、コンピューター可読媒体。
【請求項２２】
前記データセットの第１の領域を識別するための命令が、
前記第１の領域定義によって指定される第１の文書タイプを識別するための命令と、
前記データセット内の前記第１の文書タイプの文書を識別するための命令と
を含む、請求項２１に記載のコンピューター可読媒体。
【請求項２３】
前記データセットの第１の領域を識別するための命令が、
前記第１の領域定義によって指定されるセクションタイプを識別するための命令と、
前記データセット内の前記第１のセクションタイプのセクションを識別するための命令と
を含む、請求項２１に記載のコンピューター可読媒体。
【請求項２４】
前記データセットの第１の領域を識別するための命令が、
前記第１の領域定義によって指定される概念との関係を指定し、
（１）が前記データセット内の前記概念を表す第２のコード化データとの前記指定された関係を有する前記データセット内の第１のコード化データを識別することを含む、請求項２１に記載のコンピューター可読媒体。
【請求項２５】
前記データセットの第１の領域を識別するための命令が、
前記第１の領域定義に基づき、前記データセットの複数の部分を識別するための命令を含み、前記第１の領域が前記複数の部分を含む、請求項２１に記載のコンピューター可読媒体。
【請求項２６】
前記データセットが複数の文書を含み、
前記複数の部分が前記複数の文書のうちの第１の文書の第１の部分を含み、
前記複数の部分が前記複数の文書のうちの第２の文書の第２の部分を含む、
請求項２５に記載のコンピューター可読媒体。
【請求項２７】
前記第１の質問インスタンスおよび前記データセットに基づき、前記第１の質問インスタンスに対する第１の応答を自動的に生成するための命令をさらに含む、請求項２１に記載のコンピューター可読媒体。
【請求項２８】
前記第１の応答を表す出力を前記ユーザーに提供するための命令をさらに含む、請求項２７に記載のコンピューター可読媒体。
【請求項２９】
前記第１の応答を自動的に生成するための命令が、前記データセットの特定のサブセットに基づき、前記第１の質問インスタンスに対する前記第１の応答を自動的に生成するための命令を含み、
前記コンピューター可読媒体が、
前記データセットの前記特定のサブセットを表す出力を前記ユーザーに提供するための命令をさらに含む、
請求項２７に記載のコンピューター可読媒体。
【請求項３０】
前記第１の応答が、応答内容および、前記応答内容が前記質問インスタンスに正しく応答する可能性を示す信頼性スコアを含む、請求項２７に記載のコンピューター可読媒体。
【請求項３１】
前記第１の応答を自動的に生成するための命令が、前記応答内容と、人間から受信した前記第１の質問インスタンスに対する少なくとも１つの以前の応答との間の一致の程度に基づき、前記信頼性スコアを自動的に生成するための命令を含む、請求項３０に記載のコンピューター可読媒体。
【請求項３２】
前記第１の応答が、前記第１の応答を生成するため、前記第１の応答を自動的に生成するための命令において信頼する前記データセットの少なくとも１つの部分への少なくとも１つのポインターを含む、請求項２７に記載のコンピューター可読媒体。
【請求項３３】
前記第１の応答に関するフィードバックを表す入力を前記ユーザーから受信するための命令と、
前記入力のレコードをコンピューター可読媒体に保存するための命令とをさらに含む、
請求項２７に記載のコンピューター可読媒体。
【請求項３４】
前記ユーザーからの前記入力が前記第１の応答の確認ステータスを示す、請求項３３に記載のコンピューター可読媒体。
【請求項３５】
前記システムが、第２のテキストおよび第２の領域定義を含む第２の質問インスタンスをさらに含み、
前記コンピューター可読媒体が、
前記第１の応答の前記確認ステータスに基づき、前記第２の質問に対する応答を生成するか否かを判断するための命令をさらに含む、
請求項３４に記載のコンピューター可読媒体。
【請求項３６】
前記ユーザーからの前記入力が前記第１の質問インスタンスに対する第２の応答を表す、請求項３３に記載のコンピューター可読媒体。
【請求項３７】
前記応答内容が前記第１の質問インスタンスに正しく応答する可能性を示す信頼性スコアを生成するための命令と、
前記信頼性スコアに基づき、前記ユーザーに対して、前記第１の応答に関するフィードバックを表す入力を求めるか否かを判断するための命令と、
前記ユーザーに前記入力を求めるべきと判断される場合に限り、前記ユーザーに、前記第１の応答に関するフィードバックを表す入力を求めるための命令とをさらに含む、
請求項２７に記載のコンピューター可読媒体。
【請求項３８】
前記第１の質問インスタンスが、第１の質問定義をさらに含み、前記第１の応答を自動的に生成するための命令が、前記第１の応答を自動的に生成するために、前記第１の質問定義を処理するための命令を含む、
請求項２７に記載のコンピューター可読媒体。
【請求項３９】
前記第１の質問定義が前記第１のテキストと無関係である、請求項３８に記載のコンピューター可読媒体。
【請求項４０】
前記第１の領域定義が、前記第１のテキストと無関係である、請求項２１に記載のコンピューター可読媒体。
【請求項４１】
システムと共に使用するためのコンピューター実施方法であって、
前記方法が、
（ａ）第１のテキストおよび第１の領域定義を含む第１の質問インスタンスを選択し、前記第１の領域定義は、前記第１のテキストで表される質問に対して応答を提供するために使用され得る情報を含んでいる可能性のあるデータセットの領域を識別するように設計されており、前記領域定義は、前記データセット中のタグ付き要素に合わせられた領域を識別することと、
（ｂ）（ｃ）の前に、前記第１の質問の複数のインスタンスＱの各々に対して、
（ｂ−１）前記第１の領域定義に基づき、前記データセットの領域ＲＱを識別することと、
（ｂ−２）前記第１の質問のインスタンスＱに応じて、コンピューター生成された応答ＣＱを受信することと、
（ｂ−３）前記第１の質問のインスタンスＱを表す出力をユーザーに提供することと、
（ｂ−４）（ｂ−５）の前に、前記データセットの前記領域ＲＱを表す出力を前記ユーザーに提供することと、
（ｂ−５）前記第１の質問のインスタンスＱに対して人間が生成した応答を表す入力ＨＱを前記ユーザーから受信することと、
（ｃ）前記コンピューター生成された応答ＣＱと前記人間が生成した応答ＨＱとの間の一致の程度を識別することと、
を含む方法。
【請求項４２】
（ｄ）前記第１の質問の追加のインスタンスを受信することと、
（ｅ）前記一致の程度が所定の閾値を満足するか否かを判断することと、
（ｆ）前記一致の程度が前記所定の閾値を満足しない場合、前記第１の質問の前記追加のインスタンスに応じて、前記第１の質問の前記追加のインスタンスに対して自動応答が生成されていないことを示す出力を提供することとをさらに含む、
請求項４１に記載の方法。
【請求項４３】
前記人間が生成した応答ＨＱが、人間の応答の第１の集合によって提供される複数の人間が生成した応答および、少なくとも１つの人間の応答の第２の集合によって提供される複数の人間が生成した応答を含み、
前記方法が
（ｄ）人間の応答の前記第１の集合によって提供される前記複数の人間が生成した応答と、前記コンピューター生成された応答ＣＱとの間の第１の一致の程度を計算することと、
（ｅ）少なくとも１つの人間の応答の前記第２の集合によって提供される前記複数の人間が生成した応答と、前記複数のコンピューター生成された応答ＣＱとの間の第２の一致の程度を計算することと、
（ｆ）前記第１の一致の程度と前記第２の一致の程度との間の差を計算することとをさらに含む、請求項４１に記載の方法。
【請求項４４】
（ｂ）が、（ｂ−６）前記コンピューター生成された応答ＣＱを表す出力を前記ユーザーに提供することをさらに含む、請求項４１に記載の方法。
【請求項４５】
コンピューター可読媒体であって、
前記コンピューター可読媒体上に有形的に保存されているコンピューター可読命令を含み、
前記命令が、システムと共に使用するための方法を実行するため、少なくとも１つのコンピュータープロセッサーによって実行可能であり、
前記コンピューター可読媒体が、
（ａ）第１のテキストおよび第１の領域定義を含む第１の質問インスタンスを選択し、前記第１の領域定義は、前記第１のテキストで表される質問に対して応答を提供するために使用され得る情報を含んでいる可能性のあるデータセットの領域を識別するように設計されており、前記領域定義は、前記データセット中のタグ付き要素に合わせられた領域を識別するための命令と、
（ｂ）（ｃ）の前に、前記第１の質問の複数のインスタンスＱの各々に対して、
（ｂ−１）前記第１の領域定義に基づき、前記データセットの領域ＲＱを識別するための命令と、
（ｂ−２）前記第１の質問のインスタンスＱに応じて、コンピューター生成された応答ＣＱを受信するための命令と、
（ｂ−３）前記第１の質問のインスタンスＱを表す出力をユーザーに提供するための命令と、
（ｂ−４）前記データセットの前記領域ＲＱを表す出力を前記ユーザーに提供するための命令と、
（ｂ−５）前記第１の質問のインスタンスＱに対して人間が生成した応答を表す入力ＨＱを前記ユーザーから受信するための命令と、
（ｃ）前記コンピューター生成された応答ＣＱと前記人間が生成した応答ＨＱとの間の一致の程度を識別するための命令と、
を含む、
コンピューター可読媒体。
【請求項４６】
前記コンピューター可読媒体が、
（ｄ）前記第１の質問の追加のインスタンスを受信するための命令と、
（ｅ）前記一致の程度が所定の閾値を満足するか否かを判断するための命令と、
（ｆ）前記一致の程度が前記所定の閾値を満足しない場合、前記第１の質問の前記追加のインスタンスに応じて、前記第１の質問の前記追加のインスタンスに対して自動応答が生成されていないことを示す出力を提供するための命令とをさらに含む、
請求項４５に記載のコンピューター可読媒体。
【請求項４７】
前記人間が生成した応答ＨＱが、人間の応答の第１の集合によって提供される複数の人間が生成した応答および、少なくとも１つの人間の応答の第２の集合によって提供される複数の人間が生成した応答を含み、
前記コンピューター可読媒体が、
（ｄ）人間の応答の前記第１の集合によって提供される前記複数の人間が生成した応答と、前記コンピューター生成された応答ＣＱとの間の第１の一致の程度を計算するための命令と、
（ｅ）少なくとも１つの人間の応答の前記第２の集合によって提供される前記複数の人間が生成した応答と、前記複数のコンピューター生成された応答ＣＱとの間の第２の一致の程度を計算するための命令と、
（ｆ）前記第１の一致の程度と前記第２の一致の程度との間の差を計算するための命令とをさらに含む、請求項４５に記載のコンピューター可読媒体。
【請求項４８】
（ｂ）が、（ｂ−６）前記コンピューター生成された応答ＣＱを表す出力を前記ユーザーに提供するための命令をさらに含む、請求項４５に記載のコンピューター可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
〔関連出願の相互参照〕
本出願は、２０１０年２月１０日に出願された「Ｐｒｏｖｉｄｉｎｇ  Ｃｏｍｐｕｔａｂｌｅ  Ｇｕｉｄａｎｃｅ  ｔｏ  Ｒｅｌｅｖａｎｔ  Ｅｖｉｄｅｎｃｅ  ｉｎ  Ｑｕｅｓｔｉｏｎ−Ａｎｓｗｅｒｉｎｇ  Ｓｙｓｔｅｍ」という名称の、所有者が共通する米国仮特許出願第６１／３０３，２４２号からの優先権を主張し、その内容が参照により本明細書に組み込まれる。
【背景技術】
【０００２】
質問に関する情報を含む文書のコーパスを前提として、人間のオペレーターが個別の質問の集合に応答しなければならない様々な状況がある。かかる状況の一例は、人間のオペレーターが、患者の入院に関する情報を含む全文書の集合に基づいて、課金コードを患者の入院と関連付ける任務を負っている状況である。かかる文書は、例えば、入院中に患者に対して行われた医療処置および入院中に患者に関連して病院スタッフによって行われた他の支払請求可能な活動に関する情報を含み得る。
【０００３】
この文書の集合は、返済のために生成および保険会社に提供する必要のある課金コードに対する証拠のコーパスとして見なされ得る。人間のオペレーター（この例では、課金コード化の専門家）の任務は、適用可能な規則や規定を考慮しながら、所与の文書のコーパスによって正当化される課金コードの集合を導き出すことである。文書の内容を課金コードの集合にマッピングすることは、大変な努力を要する認知的作業である。それは、例えば、患者に対して行われた手術の報告書を読み、どの手術が行われたかを判断するだけでなく、かかる手術に加わった人員、かかる手術で使用された材料の種類と量（例えば、患者の動脈に挿入されたステントの数）を特定することも含み得るが、かかる情報は、適切な返済を受けるために生成する必要のある課金コードに影響し得るためである。かかる情報は、課金コードシステムの要件に合致するする形式で文書内に存在していない可能性がある。結果として、人間のオペレーターは、かかる情報を取り出すために、文書コーパスを注意深く調べる必要があり得る。
【０００４】
文書コーパスに基づく課金コードの生成に内在するかかる困難さのために、人間のコード化担当者（ｃｏｄｅｒ）を、利用可能な証拠に基づいてどの課金コードを生成するかを判断するプロセスを通じてガイドするため、様々なコンピューターベースの支援システムが開発されてきた。かかるシステムのいくつかは、人間のコード化担当者に意思決定ネットワークをガイドするが、そこでは、ネットワークの各非葉（ｎｏｎ−ｌｅａｆ）ノードが、コード化担当者によって応答される質問から構成される。人間のコード化担当者により非葉ノードの質問に対して提供される各応答は、ネットワークを通して進むべき次のパスセグメント、したがって、システムによってコード化担当者に聞かれる次の質問を決定する。葉ノードに対応する質問に対するコード化担当者からの応答を受信すると、システムは、その葉ノードに対応する一意の課金コードを返す。
【０００５】
かかるガイダンスに関わらず、人間のコード化担当者が各質問の応答に必要な情報を識別するのはまだ困難であり得る。それ故、必要なのは、利用可能な証拠のコーパスに基づき、質問に対する応答を生成するための改善された技術である。
【発明の概要】
【課題を解決するための手段】
【０００６】
コンピューターベースのシステムは、データセット内の領域のコンピューター処理可能な定義を含む。システムは、領域の定義に基づいてデータセットの領域を識別する。システムは、質問およびデータセットの識別された領域を表す出力をユーザーに提供する。システムは、また、質問およびデータセットに基づいて、その質問に対する応答を自動的に生成し、その応答を表す出力をユーザーに提供し得る。システムは、データセットのサブセットに基づいて応答を生成し、データセットのサブセットを表す出力をユーザーに提供し得る。ユーザーは、第１の応答に関するフィードバックをシステムに提供し得、システムはそれを、同一および他の質問に対する後続の応答を改善するため、そして、ユーザーとシステムとの間の不一致に応じて、システムの自動質問応答機能を無効にするために、使用し得る。
【０００７】
例えば、本発明の一実施形態は、システムと共に使用するためのコンピューター実施方法を対象にしたものであり、そのシステムは、データセットならびに、第１のテキストおよび第１の領域定義を含む第１の質問インスタンスを含む。本方法は、（１）第１の領域定義に基づきデータセットの第１の領域を識別すること、（２）第１の質問インスタンスを表す出力をユーザーに提供すること、および（３）データセットの第１の領域を表す出力をユーザーに提供することを含む。
【０００８】
本発明の別の実施形態は、システムと共に使用するためのコンピューター実施方法を対象にしたものであり、そのシステムは、データセットならびに、第１のテキストおよび第１の領域定義を含む第１の質問インスタンスを含む。本方法は、（１）第１の質問の複数のインスタンスＱの各々に対して、（１）（ａ）第１の領域定義に基づきデータセットの領域ＲＱを識別すること、（１）（ｂ）第１の質問のインスタンスＱに応じてコンピューター生成された応答ＣＱを受信すること、（１）（ｃ）第１の質問のインスタンスＱを表す出力をユーザーに提供すること、（１）（ｄ）データセットの領域ＲＱを表す出力をユーザーに提供すること、（１）（ｅ）第１の質問のインスタンスＱに対して人間が生成した応答を表す入力ＨＱをユーザーから受信すること、および（２）コンピューター生成された応答ＣＱと人間が生成した応答ＨＱとの間の一致の程度を識別することを含む。
【０００９】
本発明の様々な態様および実施形態の他の特徴および利点は、以下の説明および特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態による、質問の応答に関連する情報を含む可能性のある文書コーパスの領域を自動的に識別するためのシステムのデータフロー図である。
【図２】本発明の一実施形態による図１のシステムによって実行される方法の流れ図である。
【図３】本発明の一実施形態による図１のシステムの自動質問応答機能を改善するためのシステムのデータフロー図である。
【図４】本発明の一実施形態による図３のシステムによって実行される方法の流れ図である。
【発明を実施するための形態】
【００１１】
前述のとおり、人間のコード化担当者を、利用可能な証拠に基づきどの課金コードを生成するかを判断するプロセスを通じてガイドするため、様々なコンピューターベースの支援システムが開発されてきた。例えば、かかる支援システムは、オペレーターを質問の集合を通じてガイドし得るが、それ自身は、どの質問にも自動的に応答しようとしない。このアプローチの一拡張は、証拠のコーパスを前提として、各質問に対する応答を自動的に予測する、したがって、オペレーターの認知的負荷を削減する、自動化支援システムのためのものである。これは、本明細書で「自動応答システム」と呼ぶものの一例である。
【００１２】
かかる自動生成された応答は、しかし、必ずしも正確とは限らない。結果として、人間のオペレーターが、自動生成された応答の一部または全部の正確さを再検討する必要があり得る。かかる手動チェックは、しかし、退屈で時間がかかり得る。
【００１３】
本発明の実施形態は、質問に関連する情報を含む文書のコーパスを前提として、人間のオペレーターが個別の質問の集合に応答する必要のある類の問題に対処する。前述のとおり、いくつかのコンピューター自動化支援システムは、かかる質問に対する応答を自動的に生成することが可能であり得る。かかる自動生成された応答は、しかし、必ずしも正確とは限らない。結果として、人間のオペレーターが、自動生成された応答の一部または全部の正確さを再検討する必要があり得る。かかる手動チェックは、退屈で時間がかかり得るが、手動チェックは、システムの自動生成応答が信頼できない状況では、特に重要である。本発明の実施形態は、かかる手動チェックの効率および正確さを改善し、それにより、質問応答システム全体の効率および正確さを高めるために使用され得る。
【００１４】
図１を参照すると、本発明の一実施形態による質問応答システム１００のデータフロー図が示されている。図２を参照すると、本発明の一実施形態による図１のシステム１００によって実行される方法２００の流れ図が示されている。システム１００は、文書コーパス１０２を含み、その文書コーパスは複数の文書１０４ａ〜１０４ｎを含む（ｎは任意の数であり得る）。文書１０４ａ〜１０４ｎの各々は、１つまたは複数の領域を含み得る。例えば、文書１０４ａは、領域１０６ａ〜１０６ｍを含む（ｍは任意の数であり得る）。説明を容易にするため、図１では、文書１０４ａの領域１０６ａ〜１０６ｍのみが示されているが、残りの文書１０４ｂ〜１０４ｎもそれら自身の領域を含み、それらは、内容および数が相互に異なり得る。
【００１５】
文書コーパス１０２は、本明細書で使用される用語としての「データセット」の一例にすぎない。より一般的には、かかるデータセットは、文書以外のデータを含み得る。しかし、図解および説明を容易にするため、図１では文書が示されている。さらに、領域１０６ａ〜１０６ｍは、図１では、文書１０４ａの所定の互いに素な（ｄｉｓｊｏｉｎｔ）サブセットとして示されているが、これは一例にすぎず、本発明の制限とはならない。むしろ、以下で説明するように、データセット内の領域は、様々な方法で定義され、具体例を挙げて説明され得る。
【００１６】
システム１００は、質問１１０ａ〜１１０ｃの集合１０８も含む。図１では、３つの質問１１０ａ〜１１０ｃが示されているが、質問の集合１０８は、任意の数の質問を含み得る。さらに、質問１１０ａ〜１１０ｃは、図１では、非構造化の集合として示されているが、質問は、任意の様々な方法で編成され得る。例えば、質問１０８は、階層構造に編成され、それにより、デシジョンツリーを表し得る。別の例として、質問１１０ａ〜１１０ｃは、スロット埋込み（ｓｌｏｔ−ｆｉｌｌｉｎｇ）適用による使用のために編成され得る。かかる適用では、スロットに埋め込むための複数の情報をユーザーが提供する必要があり、その場合、それらの情報は、任意の順序で提供され得る。例えば、質問１１０ａ〜１１０ｃが、航空機のフライトの予約に必要な情報（例えば、搭乗者名、出発地、目的地、および搭乗日など）を要求する場合、かかる情報は、必要なスロットに埋め込むために、任意の順序で提供され得る。さらに別の例として、質問１１０ａ〜１１０ｃは、応答される時に、１つまたは複数の他の質問が、以前の質問に対して提供された応答に基づいて自動的に応答できるようにする質問を含み得る。
【００１７】
質問１１０ａ〜１１０ｃの各々は、質問テキスト、計算可能な質問定義、および計算可能な領域定義を含み得る。質問定義は、任意選択である。例えば、図１に示すように、質問１１０ａは、テキスト１１２ａ、質問定義１１３ａ、および領域定義１１４ａを含み、質問１１０ｂは、テキスト１１２ｂ、質問定義１１３ｂ、および領域定義１１４ｂを含み、そして、質問１１０ｃは、テキスト１１２ｃ、質問定義１１３ｃ、および領域定義１１４ｃを含む。特定の質問に関連するテキストは、その質問に対する応答を請求するように設計された任意の内容を含み得る。かかるテキストの例は、「患者に挿入されたステントは何本か？」および「患者の年齢は？」である。これらの例が示すように、特定の質問に関連するテキストは、人間に解読可能であり得るが、質問に対する応答を自動的に生成するために、コンピューターで使用可能か使用可能でないか、わからない。
【００１８】
質問に関連する質問定義は、質問のコンピューター処理可能な定義である。特に、以下でさらに詳述するように、質問に関連する質問定義は、質問に対する応答を生成するために、質問によって自動的に処理され得る。かかる応答は、正しいかどうかは分からない。したがって、質問定義のコンピューター処理は、質問に対する自動応答または質問に対する自動応答の試みのいずれかとして見なされ得る。質問定義は、例えば、文書コーパス１０２内の内容（例えば、１つまたは複数の領域１０６ａ〜１０６ｍ）を選択するため、検索エンジンにより文書コーパス１０２に対して適用され得るクエリーであり得、この場合、選択された内容は、質問定義によって定義された質問に対してコンピューターが自動生成した応答を表す。
【００１９】
質問に関連する領域定義は、文書コーパス１０２の領域のコンピューター処理可能な定義である。以下でさらに詳述するように、質問に関連する領域定義は、文書コーパス１０２の領域を識別するために、コンピューターで自動的に処理され得る。最も有用にするため、特定の質問に関連する領域定義は、質問のテキストで表される質問に対して応答を提供するために使用され得る情報を含んでいる可能性のある文書コーパス１０２の領域を識別するように設計されるべきである。例えば、質問１１０ａのテキスト１１２ａが「患者に挿入されたステントは何本か？」であれば、患者に挿入されたステント数に関する情報を含んでいる可能性のある文書コーパス１０２の領域を識別するため、質問１１０ａの領域定義１１４ａを処理可能にするのは有用であろう。
【００２０】
システム１００は、応答エンジン１１６も含む。一般に、応答エンジン１１６は、質問の集合１０８内の１つまたは複数の質問１１０ａ〜１１０ｃに対する応答を自動的に生成し得る。応答エンジン１１６は、質問１１０ａ〜１１０ｃに対してかかる応答を生成するため、それぞれ質問定義１１３ａ〜１１３ｃを使用し得る。例えば、応答エンジン１１６は、例えば、質問定義１１３ａがクエリーとして使用される文書コーパス１０２の検索を実行し、それにより、文書コーパス１０２内から質問１１０ａに対する応答を表す検索結果を生成することにより、質問１１０ａに対する応答を自動的に生成するために、質問定義１１３ａを処理し得る。
【００２１】
応答エンジン１１６は、同一の質問に複数回応答し、それにより、同一の質問に対して複数の応答を生成し得る。応答エンジン１１６は、質問１１０ａ〜１１０ｃのうちの複数に対しても応答を生成し得る。それ故、混乱を避けるため、本明細書の記述では、応答エンジン１１６は、質問１１０ａ〜１１０ｃの「インスタンス」に対する応答を生成すると記載し得る。例えば、応答エンジン１１６は、質問１１０ａの第１のインスタンスに対する応答を生成し、同一の質問１１０ａの第２のインスタンスに対する応答を生成し得る。別の例として、応答エンジン１１６は、質問１１０ａの第１のインスタンスに対する応答を生成し、質問１１０ｂの第１のインスタンスに対する応答を生成し得る。
【００２２】
応答エンジン１１６は、特定の時に応答エンジン１１６で応答する質問１１０ａ〜１１０ｃのうちの１つのインスタンス１２０ａを選択する（例えば、生成する）（図２のステップ２０２）ため、質問インスタンスセレクター１１８を含み得る。質問インスタンスセレクター１１８は、現在の質問インスタンス１２０ａを任意の様々な方法で選択し得る。例えば、質問の集合１０８内の質問１１０ａ〜１１０ｃがデシジョンツリーを表す場合、質問インスタンスセレクター１１８は、そのデシジョンツリーの根の部分の質問に対応する質問インスタンスを生成することにより、開始し得る。質問インスタンスセレクター１１８は、その後、以前の質問インスタンスに対して提供された応答に基づき、デシジョンツリー内をナビゲートすることにより、次の質問インスタンスを選択し得る。しかし、本発明の実施形態は、質問インスタンスを選択する任意の特定の方法に限定するものではない。
【００２３】
応答エンジン１１６は、領域識別器１２２も含む。領域識別器１２２は、現在の質問インスタンス１２０ａ内（例えば、関連する）の領域定義に基づき、文書コーパス内の領域１２４ａを識別する（図２のステップ２０４）。例えば、質問インスタンス１２０ａが質問１１０ａのインスタンスであれば、領域識別器１２２は、領域１２４ａを、質問１１０ａの領域定義１１４ａで定義される文書コーパス１０２の領域として識別する。
【００２４】
現在の質問インスタンス１２０ａの領域定義は、その対応する領域を様々な方法で定義し得る。結果として、領域識別器１２２は、領域１２４ａを様々な方法で識別し得る。例えば：
・領域定義は、文書のタイプを指定し得、その場合、領域識別器１２２は、指定されたタイプの文書コーパス１０２内の全ての文書を識別された領域１２４ａとして識別し得る
・領域定義は、セクションのタイプを指定し得、その場合、領域識別器１２２は、指定されたタイプの文書コーパス１０２内の全ての文書セクションを識別された領域１２４ａとして識別し得る
・領域定義は、キーワードを指定し得、その場合、領域識別器１２２は、指定されたキーワードに合致するか、かつ／または指定されたキーワードの近くにある文書コーパス１０２内の全てのテキストを識別された領域１２４ａとして識別し得る
・領域定義は、概念との関係（例えば、「ＸはＹである」または「ＸはＹを有する」）を指定し得、その場合、領域識別器１２２は、文書コーパス１０２内のその概念を表す他のデータとの指定された関係を有する文書コーパス１０２内の全てのデータを、識別された領域１２４ａとして識別し得る。
【００２５】
領域定義は、前述したタイプの複数の領域指定を任意の様々な方法で結合し得る。例えば、領域定義は、ブール演算子（例えば、ＡＮＤ、ＯＲ、ＮＯＴ、ＸＯＲ）で結合された複数の領域指定を含み得る。これらの例が示すように、領域識別器１２２で識別される領域１２４ａは、文書１０４ａまたは他の文書１０４ｂ〜１０４ｎのうちの１つ内の事前定義した領域１０６ａ〜１０６ｍ（例えば、セクション）のうちの１つに対応し得るが、これは必須ではない。むしろ、識別された領域１２４ａは、領域識別器１２２で動的に識別され得、文書コーパス１０２内からのデータの任意の１つ、２つ、またはそれ以上の隣接および／または非隣接の部分を含み得る。これが意味するように、識別された領域１２４ａは、例えば、文書、セクション、およびタグ付き要素など、文書コーパス内の事前定義した構造に合わせ得るが、その必要はない。
【００２６】
応答エンジン１１６は、システム１００の人間のユーザー１３０に対して、質問インスタンス１２０ａを表す出力１２８ａ（図２のステップ２０６）および識別された領域１２４ａを表す出力１２６ａ（図２のステップ２０８）を提供し得る。かかる出力１２４ａおよび１２８ａは、例えば、領域識別器１２２が領域１２４ａを識別する前または後に、提供され得る。応答エンジン１１６は、出力１２４ａおよび１２８ａを、同時に、または相互に異なる時に提供し得る。
【００２７】
質問インスタンス出力１２８ａは、任意の様々な形式をとり得る。例えば、質問インスタンス出力１２８ａは、質問インスタンス１２０ａに対応する質問のテキストを含み得る。例えば、質問インスタンス１２０ａが質問１１０ａのインスタンスであれば、質問インスタンス出力１２８ａは、質問１１０ａのテキスト１１２ａを含み得る。
【００２８】
領域出力１２６ａは、任意の様々な形式をとり得る。例えば、領域出力１２６ａは、識別された領域１２４ａの全体を表し得る。例えば、識別された領域１２４ａが文書１０４ａの単一のセクションであれば、領域出力１２６ａは、文書１０４ａのセクション全体を表し得る。別の例として、識別された領域１２４ａが、文書コーパス１０２内のテキストまたは他のデータの複数の（もしかすると、非隣接の）部分を含む場合、領域出力１２６ａは、テキストまたは他のデータのかかる部分全てを表し得る。テキストのかかる部分は、完全に文書１０４ａのうちの単一の文書内であるか、または文書１０４ａ〜１０４ｎのうちの複数の文書の間に広がり得る。例えば、識別された領域１２４ａは、文書１０４ａの第１の部分および文書１０４ｂの第２の部分を含み得、その場合、領域出力１２６ａは、かかる部分の両方を含み得る。
【００２９】
別の例として、領域出力１２６ａは、識別された領域１２４ａのサブセットを表し得る。かかるサブセットは、例えば、質問インスタンス１２０ａに特に関連する可能性があると見なされる識別された領域の一部など、識別された領域１２４ａの要約であり得る。
【００３０】
識別された領域１２４ａがデータセット１０２の複数の部分を含む場合、かかる複数の部分は、様々な方法で、ユーザー１３０に対する出力である得る。例えば、応答エンジン１１６は、かかる部分全てを表す出力を、例えば、かかる部分全てのテキストを単一のウィンドウ内に表示することにより、ユーザー１３０に対して同時にまたは実質的に相互に同時に提供し得る。
【００３１】
別の例として、応答エンジン１１６は、初めは、データセット１０２の複数の部分のうちの単一の部分のみを表す出力をユーザー１３０に提供し得る。応答エンジン１１６は、その後、データセット１０２の複数の部分のうちの第２の部分を表す出力を、以降の時に（例えば、ユーザー１３０からの入力に応じて）、ユーザー１３０に提供し得る。例えば、システム１００は、ユーザー１３０が、例えば、１つの部分から次に進むために、キーをたたくか、またはマウスボタンをクリックすることにより、各部分の表示を繰り返すことができるようにし得る。
【００３２】
応答エンジン１１６は、応答生成器１３２も含み得、それは、質問インスタンス１２０ａおよび文書コーパス１０２の一部または全部に基づき、質問インスタンス１２０ａに対する応答１３４ａを自動的に生成し得る（図２のステップ２１０）。また、応答生成器１３２は、識別された領域１２４ａを入力として受信し、質問インスタンス１２０ａ、文書コーパスの一部または全部、および識別された領域の一部または全部に基づき、応答１３４ａを生成し得る。例えば、応答生成器１３２は、応答１３４ａを生成する過程で、文書コーパス１０２の他の部分ではなく、文書コーパス１０２内の識別された領域１２４ａを検査し得る。
【００３３】
応答生成器１３２は、応答１３４ａを生成する際に、検査する文書コーパス１０２の領域を選択するために、代わりに、質問インスタンス１２０ａの領域定義（例えば、質問１１０ａの領域定義１１４ａ）を使用し得ることに留意されたい。この場合、領域識別器１２２の機能の一部または全部は、領域識別器１２２に追加で、または領域識別器１２２内の代わりに、応答生成器１３２内に組み込まれる。
【００３４】
応答生成器１３２は、応答１３４ａを表す出力１３６ａをユーザー１３０に提供し得る（図２のステップ２１６）。応答出力１３６ａは、任意の様々な形式をとり得る。例えば、応答１３４ａは、応答内容１３８ａを含み得（図２のステップ２１２）、応答出力１３６ａは、応答内容１３８ａ、または応答内容１３８ａから導出された出力を含み得る（図２のステップ２１８）。例えば、質問インスタンス１２０ａが「患者に挿入されたステントは何本か？」という質問をされた場合、応答内容１３８ａは、テキストの「３」を含み得る。
【００３５】
より一般的には、応答内容１３８ａは、応答生成器１３２によって証拠から導出され、応答内容１３８ａに対する支援を提供する、応答エンジン１１６で発見された任意の文であり得る。応答内容１３８ａは、例えば、ブール質問（例えば、「患者にステントが挿入されたか？」）、多肢選択式問題（例えば、「手術が行われたのは何曜日か？」）、値の質問（例えば、「患者に挿入されたステントは何本か？」）、または自由回答形式の質問（例えば、「患者の主訴は何か？」）を肯定的に断定するか、または否定し得る。
【００３６】
応答内容１３８ａは、例えば、応答生成器１３２が、質問インスタンス１２０ａに対する応答を十分に正当化する証拠を文書コーパス１０２内で見つけることができなかった場合などに、応答生成器１３２が、質問インスタンス１２０ａに応じて、いかなる応答内容も生成できなかったことも示し得る。つまり、応答生成器１３２は、質問インスタンス１２０ａに応答しようとし得るが、そうできないこともあり得る。この場合、応答内容１３８ａは、質問インスタンス１２０ａに対する応答を生成する試みが失敗したことを示す「Ｎ／Ａ」または「情報なし」などの値を持ち得る。
【００３７】
応答生成器１３２が、文書コーパス１０２の特定の部分（サブセット）のみに基づいて（例えば、識別された領域１２４ａまたは識別された領域１２４ａのサブセットのみに基づいて）応答１３４ａを生成した場合、応答出力１３６ａは、応答１３４ａを生成するために応答生成器１３２が信頼した文書コーパス１０２の特定のサブセットの表現を含み得る。例えば、応答生成器１３２が、文書１０４ａの領域１０６ａ（例えば、セクション、段落、または文）を信頼した場合、応答出力１３６ａは、その領域１０６ａ（例えば、領域１０６ａの全テキストなど）の表現を含み得る。別の例として、応答出力１３６ａは、文書コーパス１０２の信頼した部分へのリンクまたは他のポインターを含み得る。
【００３８】
さらに、応答出力１３６ａは、識別された領域１２４ａの一部または全部の表現を含み得る。例えば、応答出力１３６ａは、応答生成器１３２が、応答１３４ａを生成するために識別された領域１２４ａのサブセット（一部）のみを信頼した場合でさえ、識別された領域１２４ａ全体の表現を含み得る。応答生成器１３２が、識別された領域１２４ａを表すかかる出力をユーザー１３０に対して提供するのは、応答１３４ａを生成するために応答生成器１３２が信頼しなかった領域１２４ａの部分でさえ、質問インスタンス１２０ａに関連するさらなる情報を含み得るため、有用であり得、そして、ユーザー１３０はその情報を、質問インスタンス１２０ａへの応答、応答生成器の応答１３４ａの修正、または応答生成器の応答１３４ａの正確性の確認において、有用であると気づき得る。
【００３９】
前述した応答出力１３６ａの任意の特定の例は、相互に任意の組合わせで結合し得る。例えば、応答出力１３６ａは、応答内容１３６ａを表すテキストおよび応答１３４ａを生成するために応答生成器１３２が信頼した文書コーパス１０２の一部を表すテキストの両方を含み得る。
【００４０】
応答１３４ａを生成する過程で、応答生成器１３２は、応答内容１３８ａが質問インスタンス１２０ａに正しく応答する可能性を示す信頼性スコア１４０ａを生成し得る（図２のステップ２１４）。応答出力１３６ａは、例えば、数（例えば、信頼性の高さに応じて、０〜１の範囲の１０進数または０〜１００の範囲の整数）またはグラフィカル表示（例えば、高信頼性に対して緑、中程度の信頼性に対して黄、および低信頼性に対して赤）などの形式で、信頼性スコア１３８ａの表現を含み得る（図２のステップ２２０）。あるいは、例えば、応答生成器１３２は、対応する信頼性スコア１３８ａが十分に高くない（例えば、信頼性スコア１３８ａが所定の最小閾値を下回る場合）という判断に応じて、応答出力１３６ａを抑制し得る。
【００４１】
より一般的には、応答生成器１３２は、応答１３４ａを表すいかなる出力もユーザーに提供する必要はない。むしろ、応答生成器１３２は、応答１３４ａを自動的に生成し得るが、応答１３４ａを表すいかなる出力もユーザー１３０に提供しない可能性がある。以下でより詳細に説明するように、かかるサイレント自動応答生成は、例えば、ユーザー１３０が自動生成された応答を通知されない場合でさえ、自動生成された応答と手動で生成された応答との間の一致の程度をトラッキングするために有用であり得る。
【００４２】
信頼性スコア１４０ａの使用が示すように、システム１００の設計は、応答１３４ａが質問インスタンス１２０ａに正しく応答しない可能性があるという認識を反映し得る。本発明の特定の実施形態は、ユーザー１３０（および他のユーザー）から受信した、応答エンジン１１６で生成された応答１３４ａおよび他の応答の品質に関するフィードバックに基づき、質問応答システム１００の動作を自動的に調整することにより、この問題に対処する。
【００４３】
例えば、図３を参照すると、応答エンジン１１６で生成される応答の品質を改善するためのシステム３００が示されている。図４を参照すると、本発明の一実施形態による図３のシステム３００によって実行される方法４００の流れ図が示されている。図４の方法４００は、例えば、図３の方法３００が終了した後（例えば、図１のシステム１００がユーザー１３０に領域出力１２６ａ、質問インスタンス出力１２０ａ、および、もしかすると応答出力１３６ａを提供した後）に開始し得る。
【００４４】
ユーザー１３０は、応答フィードバック３０２の形式で、応答３１４に関するフィードバックを提供し得る（図４のステップ４０２）。例えば、ユーザー１３０は、システム３００から応答出力１３６ａを受信した後に、およびそれに応じて、かかるフィードバック３０２をシステム３００に提供し得る。ユーザー１３０は、しかし、システム３００がユーザー１３０に応答出力１３６ａを提供しなかった場合でさえ、応答フィードバック３０２を提供し得る。
【００４５】
応答フィードバック３０２の受信に応じて、応答エンジン１１６は、例えば、フィードバック３０２を、ユーザー１３０および、もしかするとシステム３００の他のユーザーから受信したフィードバックの集合３０４内に保存することにより、フィードバック３０２のレコードを保存し得る（図４のステップ４０４）。つまり、応答フィードバックの集合３０４は、同じ質問の複数のインスタンスに対するフィードバックおよび／または複数の質問のインスタンスに対するフィードバックを含み得る。応答フィードバックの集合３０４内の応答フィードバック３０２のレコードは、フィードバック３０２が対応する自動生成された応答の表示などの情報、およびフィードバック３０２を提供したユーザー１３０を識別する情報を含み得る。
【００４６】
応答フィードバック３０２は、任意の様々な形式をとり得る。例えば、応答フィードバック３０２は、応答１３４ａが正しいか正しくないかの２進表示、またはユーザーの応答１３４ａとの一致の程度（例えば、０〜１または１〜１００の段階で）の表示など、応答１３４ａの確認ステータスを示し得る。別の例として、応答フィードバック３０２は、質問インスタンス１２０ａに対してユーザー１３０によって生成された応答を表し得る。例えば、応答エンジン１１６が応答１３４ａを自動的に生成するが、ユーザー１３０に応答出力１３６ａを提供せず、かつ、ユーザー１３０が同じ質問インスタンス１２０ａに対して手動で生成した応答を提供する場合、応答エンジン１１６は、かかる手動で生成された応答を応答フィードバック３０２として扱い得るが、これは、たとえ、かかるフィードバック３０２が、応答エンジン１１６で自動的に生成された応答を表す、ユーザー１３０に対する出力に応じて提供されていない場合にもそうである。
【００４７】
システム３００は、例えば、システム３００で生成される後続の応答の品質を改善することにより、システム３００の性能を改善するためにフィードバック３０２を使用し得る。例えば、応答エンジン１１６が第２の質問インスタンス１２０ａに応答しようとする場合を考える（図４のステップ４０６）。この例について、第２の質問インスタンス１２０ｂが、第１の質問インスタンス１２０ａと同じ質問のインスタンスであると仮定する。
【００４８】
応答エンジン１１６は、第２の質問インスタンス１２０ｂの領域定義に基づき、文書コーパス１０２内の第２の領域１２４ｂを識別するため（図４のステップ４０８）、第２の質問インスタンス１２０ａを表す第２の質問インスタンス出力１２８ｂを生成し、ユーザー１３０に提供するため（図４のステップ４１０）、および第２の領域１２４ｂを表す第２の領域出力１２６ｂを生成し、ユーザー１３０に提供するため（図４のステップ４１２）、図１に関連して前述した技術を使用し得る。第１および第２の質問インスタンス出力１２０ａ〜１２０ｂは、同一であるか、または相互に異なり得、第１および第２の識別された領域１２４ａ〜１２４ｂは、同一であるか、または相互に異なり得、また、第１および第２の領域出力１２６ａ〜１２６ｂは、同一であるか、または相互に異なり得ることに留意されたい。
【００４９】
応答エンジン１１６は、第２の質問インスタンス１２０ｂに対する第２の応答１３４ｂを自動的に生成するため、図１に関連して前述した技術を使用し得る（図４のステップ４１４）。第２の応答１３４ｂは、第２の応答内容１３８ｂ（図４のステップ４１６）および第２の信頼性スコア１４０ｂ（図４のステップ４１８）を含み得る。第２の応答信頼性スコア１４０ｂは、全体または一部において、第２の応答内容１３８ｂとユーザー１３０から以前に提供されたフィードバック３０２との間の一致の程度を反映し得る。例えば、フィードバック３０２が、第１の応答内容１３８ａを拒絶する場合、信頼性スコア１４０は、フィードバック３０２が第１の応答内容１３８ａを承認した場合よりも低いかも知れない。より一般的には、ユーザー１３０が、質問インスタンス１２０ａおよび１２０ｂに対応する質問の複数のインスタンスに対してフィードバックを提供している場合、応答１３４ｂの信頼性スコア１４０ｂは、全体または一部において、第２の応答内容１３８と、かかる以前のフィードバックの一部または全部との間の一致の程度の関数であり得る。
【００５０】
応答生成器１３２は、第２の応答１３４ｂとユーザーフィードバック３０２との間の一致の程度を任意の様々な方法で識別し得る。例えば、ユーザーフィードバック３０２が、第１の質問インスタンス１２０ａに対する応答の形式である場合、応答生成器１３２は、ユーザーの応答を第２の応答内容１３８ｂと比較して、それらの間の一致の程度を識別し得る。別の例として、ユーザーフィードバック３０２が、第１の応答１３４ａとの一致の程度（例えば、「正しい」または「誤っている」）の形式である場合、応答生成器１３２は、第１の応答内容１３８ａ、ユーザーフィードバック３０２、および第２の応答内容に基づき、応答フィードバック３０２と第２の応答内容１３８ｂとの間の一致の程度を識別し得る。例えば、第１の応答内容１３８ａが第２の応答内容１３８ｂと同一であり、かつユーザーフィードバック３０２が第１の応答内容１３８ａとの不一致を示す場合、応答生成器１３２は、応答フィードバック３０２も第２の応答内容１３８ｂとの不一致を示すと結論付け得る。逆に、第１の応答内容１３８ａが第２の応答内容１３８ｂと同一であり、かつユーザーフィードバック３０２が第１の応答内容１３８ａとの一致を示す場合、応答生成器１３２は、応答フィードバック３０２も第２の応答内容１３８ｂとの一致を示すと結論付け得る。
【００５１】
応答生成器１３２は、応答１３４ｂを表す、応答出力１３６ｂを生成し、かかる出力１３６ｂをユーザー１３０に提供し得る（図４のステップ４２０）。出力１３６ｂは、応答内容１３８ｂ（図４のステップ４２２）および／または信頼性スコア１４０ｂ（図４のステップ４２４）の表現を含み得る。信頼性スコア１４０ｂの表現をユーザー１３０に提供すると、その信頼性スコア１４０ｂがシステム３００に対するユーザーの以前のフィードバックを反映する場合には、ユーザー１３０が応答内容１３８ｂの正確さを信頼すべき程度に関して、ユーザー１３０が情報に基づいて判断を下すことを可能にし、それにより質問インスタンス１２０ｂに対する追加の証拠について、識別された領域１２４ｂを十分に再検討するかどうか、およびその方法に関して、ユーザー１３０が情報に基づいて判断を下すことを可能にする。
【００５２】
図３には示されていないが、ユーザー１３０は、第２の応答１３４ｂおよび同じ質問の追加のインスタンスに対する追加の応答に関するフィードバック（フィードバック３０２に類似）を提供し得る。かかるフィードバックの全ては、保存されるか、そうでなければ、応答フィードバックの集合３０４に反映され得る。それ故、応答フィードバック３０２の使用に関する以下のどの言及も、より一般的に、応答フィードバックの集合３０４の一部または全部の使用に関する言及と理解されるべきである。より一般的には、応答の自動生成、かかる応答に関するフィードバックの受信、および自動生成された応答と対応する人間のフィードバックとの間の一致の程度の識別など、本明細書に記載の任意のステップは、複数の質問インスタンスについて、繰り返され得る。
【００５３】
システム３００は、質問インスタンス１２０ａ〜１２０ｂに対応する質問の自動応答を有効にするか無効にするかを判断する（図４のステップ４２６）ため、応答フィードバック３０２、または応答フィードバックの集合３０４の一部もしくは全部を使用し得る。例えば、応答エンジン１１６が、応答フィードバック３０２に基づいて、第２の応答１３４ｂが誤っているか、または第２の応答１３４ｂの信頼性スコア１４０ｂが十分に高くないと判断する場合、応答エンジン１１６は、次の１つまたは複数を実行し得る：
・応答生成器１３２が同じ質問の後続のインスタンスに対する応答を生成しないようにするか、または応答生成器１３２に、かかる質問インスタンスに対して「無応答（ｎｏ  ａｎｓｗｅｒ）」の応答を生成させる
・応答生成器１３２が第２の応答１３４ｂを表す出力１３６ｂをユーザー１３０に提供しないようにする
・第２の応答内容１３８ｂが「無応答」の応答を表すように、第２の応答１３４ｂを修正する。
【００５４】
前述のいくつかの例では、ユーザー１３０は、第１の応答１３４ａに応じて、応答フィードバック３０２を提供する。しかし、ユーザー１３０は、応答エンジン１１６で自動的に生成された全ての応答に応じて、かかるフィードバックを提供する必要があるわけではない。例えば、応答エンジン１１６は、信頼性スコア１４０ａに基づいて、ユーザー１３０に第１の応答１３４に関するフィードバックを求めるか否かを判断し得る。特に、応答エンジン１１６は、信頼性スコア１４０ａが十分に高くない場合（例えば、信頼性スコア１４０ａが所定の閾値を超えていない場合）に限り、ユーザー１３０にかかるフィードバックを求め得る。このようにして、システム３００は、人間のチェックから最も利益を得る可能性のある応答についてのみフィードバックを求めることにより、ユーザーの時間を効果的に利用し得る。
【００５５】
応答エンジン１１６は、応答エンジン１１６が自動生成した応答１３４ａを表す出力１３６をユーザー１３０に提供するか否かにかかわらず、ユーザーフィードバック３０２と対応する自動生成された応答１３４ａとの間の一致の程度を識別し得る。例えば、応答エンジン１１６は、質問インスタンス１２０ａに対する応答１３４ａを自動的に生成するが、応答出力１３６ａをユーザー１３０に提供しないことがある。この「サイレント」自動応答モードでは、応答エンジン１１６は、自動生成した応答１３４ａに関して、ユーザー１３０から応答フィードバック３０２を受信し、フィードバック３０２と応答１３４ａとの間の一致の程度を識別するために、フィードバック３０２を使用し得る。これは、応答エンジン１１６が、システム１００とユーザー１３０との間の一致の程度を継続してトラッキングおよび更新できるようにするため、例えば、応答エンジン１１６の自動応答機能を無効にして、実行することは有用であり得る。応答エンジン１１６は、その後、ユーザー１３０と応答エンジン１１６との間の一致の程度が許容可能な高さのレベルに達した（例えば、所定の閾値を超える）場合、自動応答（および応答出力１３６ａのユーザー１３０への自動提供）を有効にし得る。応答エンジン１１６は、それにより、応答出力１３６ａのユーザー１３０への自動提供を初めて有効にするか、またはかかる出力を、以前に無効にされた後のある時点で再度有効にし得る。
【００５６】
応答エンジン１１６は、応答フィードバック３０２と第２の応答１３４との間の一致の程度に応じてのみならず、代替として応答フィードバックの集合３０４の一部または全部と第２の応答１３４との間の一致の程度に基づいて、自動質問応答の無効化および有効化に関連して前述した、任意の決定、および任意の動作をし得る。言い換えれば、応答エンジン１１６は、ユーザー１３０により応答エンジン１１６に対して提供された複数のフィードバック入力に基づき、自動質問応答を無効または有効にするかを判断し得る。
【００５７】
応答フィードバックの集合３０４の任意の関数（例えば、その平均、中央値、モード、最小値、または最大値）が、応答エンジンの自動応答機能を有効または無効にするかを判断するために使用され得る。別の例として、フィードバックの集合３０４内の各フィードバック単位と対応する自動生成された応答との間の一致の程度の任意の関数が、応答エンジンの自動応答機能を有効または無効にするかを判断するために使用され得る。例えば、応答エンジン１１６は、ユーザーフィードバック（フィードバックの集合３０４内に表されるように）が自動生成された応答と一致する場合の割合が、所定の閾値を下回れば、自動応答を無効にし、ユーザーフィードバック（フィードバックの集合３０４内に表されるように）が自動生成された応答と一致する場合の割合が、（同一または異なる）所定の閾値を上回れば、自動応答を有効にし得る。
【００５８】
同様に、システム３００は、図３に示す、ユーザー１３０に対応する、応答フィードバックの集合３０４に加えて、応答フィードバックの集合を含み得る。例えば、システム３００は、複数のユーザーからのフィードバックを含む応答フィードバックの集合を含み得、その各ユーザーは、本明細書で開示する任意の方法でかかるフィードバックを提供し得る。かかるフィードバックの集合は、任意の方法で結合され、その後、応答エンジンの自動応答機能を任意の時に有効にするか無効にするかを判断するために、システム３００によって使用され得る。
【００５９】
前述の例では、特定の質問インスタンスに関して、ユーザー１３０と応答エンジン１１６との間の一致が不十分であれば、応答エンジン１１６に、同じ質問の他のインスタンスの自動応答を無効にさせ得る。別の例として、同じ質問の複数のインスタンスに関して、ユーザー１３０と応答エンジン１１６との間の一致が不十分であれば、応答エンジン１１６に、同じ質問の他のインスタンスの自動応答を無効にさせ得る。
【００６０】
さらに別の例として、同じ質問の１つまたは複数のインスタンスに関して、ユーザー１３０と応答エンジン１１６との間の一致が不十分であれば、応答エンジン１１６に、ユーザー１３０および応答エンジン１１６が一致しない質問以外の質問を含め、質問の集合１０８内の質問１１０ａ〜１１０ｃの一部または全部の自動応答を無効にさせ得る。さらに別の例として、応答集合１０８内の複数の質問のインスタンスに関して、ユーザー１３０と応答エンジン１１６との間の一致が不十分であれば、応答エンジン１１６に、ユーザー１３０および応答エンジン１１６が一致しない質問以外の質問を含め、質問の集合１０８内の質問１１０ａ〜１１０ｃの一部または全部の自動応答を無効にさせ得る。
【００６１】
逆に、前述した状況のいずれかにおいて、ユーザー１３０と応答エンジン１１６との間の一致が十分であれば、応答エンジン１１６に、自動応答の無効化に関して前述した任意の方法で、質問インスタンスおよび／または質問の自動応答を有効にさせ得る。
【００６２】
システム３００は、特定の質問インスタンスに関するユーザー１３０と応答エンジン１１６との間の一致の程度に基づき、信頼性スコアも識別し得る。質問インスタンスに関する信頼性スコアは、その質問インスタンスに対するシステムの自動生成した応答の信頼性の程度を表す。システム３００は、全体的な結論をもたらす複数の質問インスタンスの信頼性スコアを結合し、その結論に対する全体的な信頼性スコアを提供する。例えば、（３つの質問に対応する）３つの質問インスタンスが（応答エンジン１１６および／またはユーザー１３０により）順番に応答されて、３本のステントが患者に挿入されたという結論に達した場合、システム３００は、３つの質問インスタンスの各々に対して信頼性スコアを生成し、これら３つの信頼性スコアに対して関数を適用し、３本のステントが患者に挿入されたという全体的な結論に対する総信頼性スコアを生成し得る。例えば、３本のステントに対する請求に関連する課金コードの信頼性は、その課金コードの生成に使用された応答の信頼性スコアから導出し得る。システム３００は、その後、（ａ）異なる方法で応答されていれば、全体的な結果（例えば、課金コード）が変わっていたかも知れない応答、（ｂ）コード化担当者によって確認されていれば、結果の信頼性が非常に改善したであろう応答に、オペレーターを導き得る。
【００６３】
前述のように、システム３００は、複数のユーザーからのフィードバックのレコードを取得および保存し得る。各かかるユーザーからのフィードバックは、ユーザーによって応答された各質問インスタンスに対するユーザー自身が手動で生成した応答を含み得る。結果として、システム３００は、質問インスタンスに対する各ユーザーの手動で生成した応答と、同じ質問インスタンスに対してシステムが自動生成した応答との間の一致の程度をトラッキングし得る。システム３００は、それ故、システムが自動生成した応答との一致または不一致の全体的な程度が高い個々のユーザーを識別し得る。別の例として、システム３００は、応答の参照プロファイルを展開するため、ユーザーのコミュニティからの手動で生成された応答のレコードを使用し得る。システム３００は、その後、システムの自動生成した応答に、例えば、参照プロファイルで示されるノルム（ｎｏｒｍ）よりも多かれ少なかれ著しく高い頻度で一致する、個々の人間のオペレーターを識別するため、参照プロファイルを使用し得る。かかる識別は、質問毎に、または複数（例えば、全部）の質問に渡って実行され得る。
【００６４】
かかる範囲外のユーザーを識別すると、かかる範囲外のユーザーとそのピア（ｐｅｅｒ）との間のかかる不一致は、基本的な規則に関する系統的な不一致を示す（例えば、範囲外のユーザーは、問われた質問を間違って解釈し得るか、または規則の知識が欠如している可能性がある）ため、システム３００に、警告を表すメッセージを生成させ得る。別の例として、オペレーターの１グループ（例えば、特定の医療施設の全コード化担当者）が、同様の他のサイトの平均プロファイルから大きく逸脱している場合、これは、かかる逸脱に内在する理由のさらなる調査を促し得る。
【００６５】
別の例として、システム３００は、ユーザー１３０および／または他のユーザーが、質問１１０ａ〜１１０ｃに対する応答を生成するため、文書コーパス１０２のどの領域を信頼するかをトラッキングし得る。かかるトラッキングは、例えば、ユーザーの動作（例えば、特定の領域の参照および／または特定の領域からのテキストのカットアンドペースト）をモニタリングすることにより、および／またはユーザーが応答（例えば、図３の応答フィードバック３０２）内で引用した領域をトラッキングすることにより実行され得る。システム３００は、システム３００で潜在的に有用であると識別されている対象の領域（例えば、識別された領域１２４）が、実際にユーザーにとって有用であるか否かを判断するため、ユーザーにより実際に信頼されているかかる領域を分析し得る。
【００６６】
質問の集合１０８内の１つの質問の領域定義によって識別された特定の領域が、実際にはシステム３００のユーザーによって十分に頻繁に（例えば、かかる領域の実際の信頼の頻度が所定の閾値を下回る場合）信頼されていないとシステムが判断すると、システム３００は、かかる領域を、潜在的にその質問に関連するとして識別するのを中止し得る。システム３００は、例えば、領域定義から信頼されない領域を除外するために、信頼されない領域を識別した領域定義を変更し得る。
【００６７】
逆に、システムのユーザーが、質問の集合１０８内の特定の質問に応答する際に、文書コーパス１０２内の特定の領域を実際に十分頻繁に（例えば、かかる領域の実際の信頼の頻度が所定の閾値を超える場合）信頼しているとシステムが判断すると、システムはその後、同じ質問をユーザーに対して提示する際に、その領域をユーザーに対して特定し得る。システム３００は、例えば、ユーザーが実際に信頼する領域を含めるため、その質問の領域定義を変更し得る。
【００６８】
本発明の実施形態は、様々な利点をもつ。例えば、本発明の実施形態は、質問に応答するのに適切な情報を含んでいる可能性のある文書コーパス内の領域を識別するプロセスを自動化する。これは、人間のオペレーターのかかる領域を見つける負担を軽減する。代わりに、システムは、かかる潜在的に関連のある領域をユーザーに対して自動的に表示し得、それにより、質問に応答するというユーザーのタスクを簡略化する。これは、問題の領域が大規模な文書コーパス内に含まれていて、それ故、見つけるのが困難な場合、大幅な時間の節約を意味し得る。これは、システム自体が応答を自動的に生成することができない場合でさえ、当てはまる。
【００６９】
システムは、かかる自動的に識別した領域を、応答を自動的に生成するためにも使用し得る。潜在的に関連のある領域に的をしぼる機能は、システムの自動質問応答構成要素の正確性を向上し得る。かかる自動生成した応答の人間によるチェックが必要な場合でさえ、正しい可能性が高い応答を自動的に生成する機能は、かかる人間による確認に必要な時間を削減し得る。
【００７０】
個々の要素の質問に対する人間とコンピューターとの一致の自動トラッキングを有効にすると、個々の要素の質問に対するか、またはシステム全体に対するかにかかわらず、サポート機能を自動的に有効または無効にすることが可能になる。この機能は、自動生成されたガイダンスが、信頼できる場合にはかかるガイダンスを継続して提供しながら、かかるガイダンスが信頼できないと立証されている状況では、人間のチェック担当者を誤った方向に導く可能性を削減できる。同様に、個々の人間のチェック担当者の、同様の人間のチェック担当者の参照集合に対するパフォーマンスをトラッキングすると、信頼性が特に低いかまたは特に高いチェック担当者の識別が可能になり、それにより、システムの改善が可能になる。
【００７１】
本発明の様々な実施形態の別の有益性は、それらが課金のコード化問題を、小さい、個々に解決可能なステップに分解することである。これらの個々のステップで起こる問題は、人間のユーザー（例えば、コード化担当者または医師）の方が良く理解でき得る。結果として、人間のユーザーの方が正確な応答を提供し、また、概して、複雑な課金コード化問題の全体に直面する場合よりも、素早く容易にそれを行う可能性が高い。
【００７２】
本発明の様々な実施形態の別の有益性は、単一ステップで、既存のシステムを完全に除外または置換する必要なく、かかる既存のシステムに徐々に統合または「成長」できることである。例えば、人間のチェック担当者によって完全に手動でコードが入力される既存のシステムは、本発明の実施形態で補完され得、それは、かかる人間のチェック担当者がより効率的に作業できるよう、彼らに提案し得る。別の例として、コードが自動的または半自動的に生成される既存のシステムは、本発明の実施形態によって補完され得、それは、自動生成された応答を二重にチェックし、修正するため、人間のチェック担当者に対してガイダンスを提供し得る。本発明の実施形態は、追加の機能を、かかる機能の全てを同時に適用する必要なく、ゆっくり時間をかけて採用するために、使用され得る。
【００７３】
本発明の実施形態のさらに別の利点は、人間が生成した応答とコンピューターが生成した応答の両方のうちの最良のものを提供することである。理論的には、たとえ、完全にコンピューター化されたシステムが、自然言語処理を使用して、全ての質問に対して自動的に応答を生成できるとしても、全ての質問に対するコンピューター実行可能な規則を正式に定義するには、著しく費用がかかるであろう。本発明の実施形態は、コンピューター自動化を人間の技能と組み合わせ、それにより、コンピューターのみまたは人間のみを使用したシステムで得られるよりも高い正確さと低い費用で、コンピューター自動化と人間の判断の両方の利点を獲得することにより、かかるコンピューター自動化の有益性が得られるようにする。
【００７４】
さらに別の例として、本発明の実施形態は、質問自体だけでなく、その質問に対する応答を検討するのに役立ち得る文書コーパスの領域に関する情報もユーザーに提供することにより、ユーザーが質問に応答するのを支援し得る。かかる潜在的に関連する領域は、システムにより任意の様々な方法で自動的に識別され得る。特に、システムは、質問自体の内容とは無関係な領域定義を使用して、質問に応答するのに適した情報を潜在的に含む領域を識別し得ることに留意すべきである。例えば、質問が「患者は鬱血性心不全か？」の場合、その質問に対する領域定義は、その患者の電子カルテの「疾患」セクションをポイントし得る。言い換えれば、システムは、質問の応答に潜在的に関連する領域を識別するために、質問のどのテキストも使用する必要がない。実際、質問のテキストと質問の領域定義に共通する用語がないこともある。同様に、特定の質問内の質問定義および領域定義は、共通する任意のテキストまたは他の内容を共有する必要がない。これは、質問（テキストおよび／または定義）および対応する領域定義は、異なる目的を果たすという事実を反映する。質問の目的は、どの情報が求められているか（すなわち、「何か」）を指定することであり、他方、対応する領域定義の目的はその情報をどこで探すか（すなわち、「どこか」）を指定することである。
【００７５】
本発明は、特定の実施形態に関して前述してきたが、前述の実施形態は、一例として提供したに過ぎず、本発明の範囲を制限または定義するものではないことを理解されたい。以下の実施形態を含むがそれに限定されず、様々な他の実施形態も特許請求の範囲内である。例えば、本明細書で説明する要素および構成要素は、同じ機能を実行するため、さらに追加の構成要素に分けられるか、またはより少ない構成要素を形成するために結合され得る。
【００７６】
前述した技術は、例えば、ハードウェア、コンピューター可読媒体に有形的に具体化されたソフトウェア、ファームウェア、またはそれらの任意の組合わせで実施され得る。前述した技術は、プロセッサー、そのプロセッサーで可読な記憶媒体（例えば、揮発性および不揮発性メモリおよび／または記憶素子）、少なくとも１つの入力装置、および少なくとも１つの出力装置を含む、プログラム可能なコンピューター上で実行する１つまたは複数のコンピュータープログラムで実施され得る。プログラムコードは、説明した機能を実行するため、および出力を生成するために、入力装置を用いて入力された入力に適用され得る。出力は、１つまたは複数の出力装置に提供され得る。
【００７７】
特許請求の範囲内の各コンピュータープログラムは、例えば、アセンブリ言語、機械語、高水準手続き型プログラミング言語、またはオブジェクト指向プログラミング言語など、任意のプログラミング言語で実施され得る。プログラミング言語は、例えば、コンパイルまたは翻訳されたプログラミング言語であり得る。
【００７８】
かかる各コンピュータープログラムは、コンピュータープロセッサーで実行するため、機械可読記憶装置に有形的に具体化されたコンピュータープログラム製品に実施され得る。本発明の方法ステップは、入力に関する操作および出力の生成により、本発明の機能を実行するため、固定のコンピューター可読媒体上に有形的に具体化されたプログラムを実行するコンピュータープロセッサーによって実行され得る。適切なプロセッサーには、例として、汎用および専用マイクロプロセッサーの両方を含む。一般に、プロセッサーは、読取り専用メモリおよび／またはランダムアクセスメモリから命令およびデータを受け取る。有形的に具体化されたコンピュータープログラム命令に適した記憶装置には、例えば、ＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリ装置を含む半導体メモリ装置、内蔵されたハードディスクおよび取外し可能ディスク、光磁気ディスク、およびＣＤ−ＲＯＭなどの、全ての形式の不揮発性メモリを含む。前述のいずれも、特別に設計されたＡＳＩＣ（特定用途向け集積回路）またはＦＰＧＡ（フィールドプログラマブルゲートアレイ）で補完されるか、またはそれに組み込まれ得る。コンピューターは、一般に、例えば、内蔵ディスク（図示せず）または取外し可能ディスクなどの記憶媒体からもプログラムおよびデータを受け取る。これらの要素は、従来型のデスクトップまたはワークステーションコンピューター、ならびに本明細書に記載の方法を実施するコンピュータープログラムの実行に適した他のコンピューターにも見られ、それらは、任意のデジタル印刷エンジンもしくはマーキングエンジン、ディスプレイモニター、または、紙、フィルム、ディスプレイ画面、もしくは他の出力媒体上に、カラーもしくはグレースケールの画素を生成できる他のラスター出力装置と共に使用され得る。
【図１】
0006023593.tif 000002
【図２】
0006023593.tif 000003
【図３】
0006023593.tif 000004
【図４】
0006023593.tif 000005