(57)【特許請求の範囲】
【請求項１】
第１学習データを用いて学習させた第１機械学習モデルの性能を示す第１評価結果であって、且つ前記第１学習データと異なる第１検証データを用いて算出された該第１評価結果を得ることと、
前記第１学習データと異なる第２学習データを用いて学習させた、前記第１機械学習モデルと異なる第２機械学習モデルの性能を示す第２評価結果であって、且つ前記第１検証データと異なる第２検証データを用いて算出された該第２評価結果を得ることと、
前記第１評価結果と前記第２評価結果とに基づいて、所定の事象に関して未評価である未知データに適用した際に予測される、前記第１機械学習モデル及び前記第２機械学習モデルを含む一つの機械学習モデルの性能を示す総合評価結果を算出することと
を具備し、前記第１学習データ、前記第２学習データ、前記第１検証データ、及び前記第２検証データは、前記所定の事象に関する評価済みデータである、情報処理方法。
【請求項２】
前記第１機械学習モデル及び前記第２機械学習モデルは同一のアルゴリズムを用いる、請求項１記載の情報処理方法。
【請求項３】
前記第１機械学習モデル及び前記第２機械学習モデルは共にランダムフォレストモデルであり、
前記第１機械学習モデル及び前記第２機械学習モデルの前記ランダムフォレストモデルにおける決定木の深さ、及び／または葉ノードの数は、互いに異なる、請求項２記載の情報処理方法。
【請求項４】
前記第１学習データ及び前記第２学習データと異なる第３学習データを用いて学習させた、前記第１機械学習モデル及び前記第２機械学習モデルと異なる第３機械学習モデルの性能を示す第３評価結果であって、且つ前記第１検証データ及び前記第２検証データと異なる第３検証データを用いて算出された該第３評価結果を得ること
を更に備え、前記総合評価結果は、前記第３評価結果には基づかずに算出され、
前記総合評価結果は、前記未知データに適用した際に予測される前記第１乃至第３機械学習モデルを含む前記一つの機械学習モデルの性能を示す、請求項１記載の情報処理方法。
【請求項５】
前記総合評価結果は、複数の評価結果のうちの下位の評価結果を用いることなく、上位の複数の評価結果に基づいて算出され、
前記複数の評価結果の各々は、それぞれが互いに異なる複数の学習データを用いて学習させた、複数の機械学習モデルにつき、それぞれが互いに異なる複数の検証データを用いて算出された前記複数の機械学習モデルの性能を示し、
前記複数の学習データは、前記第１学習データ及び前記第２学習データを含み、
前記複数の検証データは、前記第１検証データ及び前記第２検証データを含み、
前記複数の機械学習モデルは、前記第１機械学習モデル及び前記第２機械学習モデルを含み、
前記複数の評価結果は、前記第１評価結果及び前記第２評価結果を含む、請求項１記載の情報処理方法。
【請求項６】
前記一つの機械学習モデルは、
前記所定の事象に関する複数の評価済みデータが各々入力され、且つ入力された前記評価済みデータに基づく機械学習が各々実行された複数の学習済モデルであって、前記第１機械学習モデル及び前記第２機械学習モデルを含む複数の第１工程学習モデルと、
前記複数の第１工程学習モデルから夫々出力された複数の出力データが入力され、且つ入力された前記複数の出力データに基づく機械学習が実行された学習済モデルである第２工程学習モデルと、
を含む請求項１乃至５いずれか１項記載の情報処理方法。
【請求項７】
前記第２工程学習モデルはニューラルネットワークである、請求項６記載の情報処理方法。
【請求項８】
前記複数の第１工程学習モデルは、互いに異なる複数のランダムフォレストモデルである、請求項６または７記載の情報処理方法。
【請求項９】
前記複数の第１工程学習モデルの各々は、前記一つの機械学習モデルに入力された前記未知データに基づいて、前記未知データと前記所定の事象との関連性の程度を示す第１評価データを生成し、生成した前記第１評価データを前記第２工程学習モデルに出力し、
前記第２工程学習モデルは、前記複数の第１工程学習モデルから夫々出力された複数の前記第１評価データに基づいて、前記未知データと前記所定の事象との関連性の程度を示す第２評価データを生成し、出力する、
請求項６乃至８いずれか１項記載の情報処理方法。
【請求項１０】
前記第１学習データを用いて前記第１機械学習モデルに学習させることと、
前記第１検証データを用いて前記第１機械学習モデルについての前記第１評価結果を算出することと、
前記第２学習データを用いて前記第２機械学習モデルに学習させることと、
前記第２検証データを用いて前記第２機械学習モデルについての前記第２評価結果を算出することと
を更に備える、請求項１乃至９いずれか１項記載の情報処理方法。
【請求項１１】
前記第１評価結果及び前記第２評価結果はそれぞれ、前記第１機械学習モデル及び前記第２機械学習モデルにおける再現率を含み、
前記総合評価結果は、前記再現率に基づいて得られる、請求項１乃至１０いずれか１項記載の情報処理方法。
【請求項１２】
前記第１学習データは第１データセットのうちの第１部分であり、前記第１検証データは前記第１データセットから前記第１部分を除いた第２部分であり、
前記第２学習データは前記第１データセットのうちの第３部分であり、前記第２検証データは前記第１データセットから前記第３部分を除いた第４部分であり、
前記第１部分の少なくとも一部は前記第３部分と異なり、
前記第２部分の少なくとも一部は前記第４部分と異なる、請求項１乃至１１いずれか１項記載の情報処理方法。
【請求項１３】
前記第１学習データと前記第２学習データは、互いの一部が重複し、
前記第１検証データと前記第２検証データは、互いの一部が重複する、請求項１２記載の情報処理方法。
【請求項１４】
前記第１学習データと前記第２検証データは、互いの一部が重複し、
前記第１検証データと前記第２学習データは、互いの一部が重複する、請求項１２記載の情報処理方法。
【請求項１５】
前記第１検証データは、複数の第１文書を含み、
前記第２検証データは、複数の第２文書を含み、
前記複数の第１文書及び前記複数の第２文書は、前記所定の事象に対する関連性の程度に応じて順序付けられ、
当該順序に対応した前記複数の第１文書に関する前記第１機械学習モデルにおける再現率と、当該順序に対応した前記複数の第２文書に関する前記第２機械学習モデルにおける再現率とを表示すること
を更に備える、請求項１１記載の情報処理方法。
【請求項１６】
前記各々の順序において、前記評価済みデータを用いた検証結果において上位であった複数の機械学習モデルの再現率の平均値に基づいて、前記総合評価結果を表示すること
を更に備える請求項１５記載の情報処理方法。
【請求項１７】
第１学習データを用いて学習させた第１機械学習モデルの性能を示す第１評価結果であって、且つ前記第１学習データと異なる第１検証データを用いて算出された該第１評価結果、及び、前記第１学習データと異なる第２学習データを用いて学習させた、前記第１機械学習モデルと異なる第２機械学習モデルの性能を示す第２評価結果であって、且つ前記第１検証データと異なる第２検証データを用いて算出された該第２評価結果を取得する評価結果取得部と、
前記第１評価結果と前記第２評価結果とに基づいて、所定の事象に関して未評価である未知データに適用した際に予測される、前記第１機械学習モデル及び前記第２機械学習モデルを含む一つの機械学習モデルの性能を示す総合評価結果を算出する総合評価結果算出部と
を具備し、前記第１学習データ、前記第２学習データ、前記第１検証データ、及び前記第２検証データは、前記所定の事象に関する評価済みデータである、情報処理装置。
【請求項１８】
情報処理プログラムであって、プロセッサにより実行されることにより前記プロセッサに対して、
第１学習データを用いて学習させた第１機械学習モデルの性能を示す第１評価結果であって、且つ前記第１学習データと異なる第１検証データを用いて算出された該第１評価結果を取得させ、
前記第１学習データと異なる第２学習データを用いて学習させた、前記第１機械学習モデルと異なる第２機械学習モデルの性能を示す第２評価結果であって、且つ前記第１検証データと異なる第２検証データを用いて算出された該第２評価結果を取得させ、
前記第１評価結果と前記第２評価結果とに基づいて、所定の事象に関して未評価である未知データに適用した際に予測される、前記第１機械学習モデル及び前記第２機械学習モデルを含む一つの機械学習モデルの性能を示す総合評価結果を算出させ、
前記第１学習データ、前記第２学習データ、前記第１検証データ、及び前記第２検証データは、前記所定の事象に関する評価済みデータである、情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【０００２】
機械学習において、学習モデルの性能を予測する手法として交差検証が広く知られている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“Control Sets: Introducing Precision, Recall, and F1 into Relatively Assisted Review”、[online]、An EDRM White Paper - part of the EDRM White Paper Series (/7596)、[2020年3月11日検索]、インターネット＜URL: https://www.edrm.net/papers/control-sets-introducing-precision-recall-and-f1-into-relativity-assisted-review/＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の一態様は、機械学習モデルの信頼性を向上可能な情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の一態様の情報処理方法は、第１学習データを用いて学習させた第１機械学習モデルの性能を示す第１評価結果であって、且つ第１学習データと異なる第１検証データを用いて算出された第１評価結果を得ることと、第１学習データと異なる第２学習データを用いて学習させた、第１機械学習モデルと異なる第２機械学習モデルの性能を示す第２評価結果であって、且つ第１検証データと異なる第２検証データを用いて算出された第２評価結果を得ることと、第１評価結果と第２評価結果とに基づいて、所定の事象に関して未評価である未知データに適用した際に予測される、前記第１機械学習モデル及び前記第２機械学習モデルを含む一つの機械学習モデルの性能を示す総合評価結果を算出することとを備える。第１学習データ、第２学習データ、第１検証データ、及び第２検証データは、前記所定の事象に関する評価済みデータである。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態に係る情報処理装置の一例を示すブロック図。
【図２Ａ】第１実施形態に係る文書検索モデルの概念図。
【図２Ｂ】第１実施形態に係る第１評価データの概念図。
【図３】第１実施形態に係るプロセッサの機能ブロック図。
【図４】第１実施形態に係る情報処理方法のフローチャート。
【図５Ａ】第１実施形態に係る文書データの概念図。
【図５Ｂ】第１実施形態に係る文書データの概念図。
【図５Ｃ】第１実施形態に係る第１評価データの概念図。
【図５Ｄ】第１実施形態に係る第１評価データの概念図。
【図５Ｅ】第１実施形態に係る第２評価データを得るための処理を示す概念図。
【図５Ｆ】第１実施形態に係る第２評価データを得るための処理を示す概念図。
【図５Ｇ】第１実施形態に係る第２評価データを得るための処理を示す概念図。
【図５Ｈ】第１実施形態に係る第２評価データの概念図。
【図６Ａ】第１実施形態に係るニューラルネットワークの概念図。
【図６Ｂ】第１実施形態に係るニューラルネットワークへの入力データを示す概念図。
【図７Ａ】第１実施形態に係るニューラルネットワークの概念図。
【図７Ｂ】第１実施形態に係るニューラルネットワークの出力を示す概念図。
【図７Ｃ】第１実施形態に係るニューラルネットワークの出力の評価方法を示す概念図。
【図８】第２実施形態に係る情報処理装置の一例を示すブロック図。
【図９】第２実施形態に係るプロセッサの機能ブロック図。
【図１０】第２実施形態に係る情報処理方法のフローチャート。
【図１１Ａ】第２実施形態に係るＴＦ−ＩＤＦ行列生成方法の概念図。
【図１１Ｂ】第２実施形態に係るＴＦ−ＩＤＦ行列生成方法の概念図。
【図１１Ｃ】第２実施形態に係るＴＦ−ＩＤＦ行列生成方法の概念図。
【図１１Ｄ】第２実施形態に係るＴＦ−ＩＤＦ行列生成方法の概念図。
【図１１Ｅ】第２実施形態に係るＴＦ−ＩＤＦ行列生成方法の概念図。
【図１２】第２実施形態に係るランダムフォレストモデルの概念図。
【図１３Ａ】第２実施形態に係るデータセット生成方法の概念図。
【図１３Ｂ】第２実施形態に係るデータセット生成方法の概念図。
【図１４Ａ】第２実施形態に係るユニット生成方法の概念図。
【図１４Ｂ】第２実施形態に係るユニット評価方法の概念図。
【図１５】第２実施形態に係る文書検索モデルの概念図。
【発明を実施するための形態】
【０００７】
以下、本発明の実施形態について、図面を参照しつつ説明する。なお、図面については、同一又は同等の要素には同一の符号を付し、重複する説明は省略する。
【０００８】
本明細書で説明する情報処理装置は、大量の文書のうち、ある事象に関連する文書を抽出し、且つ関連度に応じて文書の順位付けを行うものである。また、この順位付けを機械学習されたモデルによって行うと共に、当該モデルの性能を高精度で判断するものである。各文書は、一部に文字、数字、記号などを含む任意の形式の電子データであってよく、例えば文書データ（例えば、電子メール、議事録、仕様書、取扱説明書、各種技術文書、各種報告書、契約書、営業思料、事業計画書、電子カルテ、ウェブページなど）、プレゼンテーションデータ、表計算用データ、文字が映り込んだ画像・映像などである。また事象は、ユーザ（レビュア）が各文書との関連性を判断する任意の対象であってよく、例えば訴訟、情報漏洩、コンプライアンス違反、ハラスメント、その他の不正、離職、事故、病気などである。
【０００９】
以下では、上記事象が米国訴訟であって、レビュアが情報処理装置を用いて文書をレビューする場合を例に挙げて説明する。米国で訴訟が提起された場合、訴訟当事者はディスカバリ（証拠開示）の手続きを求められる場合がある。すなわち当事者は、訴訟に関連する文書を法廷に提出し、審理のために当該文書を開示しなければならない。このとき、訴訟に関連する文書と関連しない文書とに分類し、関連する文書のみを提出する必要がある。
【００１０】
そのため、レビュアは訴訟に関連する可能性のある文書（以下「母集団」と称する）をレビューし、各文書に対して、例えば「訴訟に関連する」または「訴訟に関連しない」などの判断を下さなければならない。母集団は大きい（例えば、数万〜数百万の文書を含む場合がある）ため、上記レビューに関する一連の作業を効率化することが求められる。
【００１１】
本明細書における情報処理装置は、例えば、文書が訴訟に関連する可能性を機械学習させたモデルによって判断し、更に可能性の高い順に文書をレビュアに提示する。また情報処理装置は、例えば、機械学習させたモデルの信頼性を高精度にレビュアに提示する。
【００１２】
（第１実施形態）
この発明の第１実施形態に係る情報処理装置、情報処理方法、及び情報処理プログラムにつき説明する。なお、第１実施形態においては、上記ディスカバリに関する場合を例として説明するが、これに限定されるものではない。
【００１３】
＜構成について＞
図１は、本実施形態に係る情報処理装置１００のブロック図である。情報処理装置１００は、機械学習可能なプロセッサを保持していればよく、例えばパーソナルコンピュータである。
【００１４】
前述のように情報処理装置１００は、例えば、文書が訴訟に関連する可能性を判断し、更に可能性の高い順に文書をレビュアに提示する。そのために、複数の機械学習モデルを組み合わせることにより、文書が訴訟に関連する確率を算出する文書検索モデル１３９を生成する。この文書検索モデル１３９の一例につき、図２Ａを用いて簡単に説明する。図２Ａは、本実施形態に係る文書検索モデル１３９の一例を示す概念図である。なお、図２Ａは一例にすぎず、本実施の形態はこれに限られるものではない。
【００１５】
図示するように文書検索モデル１３９は、第１学習モデル１３５（第１工程学習モデル）と第２学習モデルＮＮ（第２工程学習モデル）とを含む。第１学習モデル１３５は複数の例えばランダムフォレストモデルを含む。図２Ａの例であると、第１学習モデル１３５は、ランダムフォレストモデル１３５−１（第１機械学習モデル）、ランダムフォレストモデル１３５−２（第２機械学習モデル）、ランダムフォレストモデル１３５−３（第３機械学習モデル）、…ランダムフォレストモデル１３５−５０を含む。ランダムフォレストモデル１３５−１〜１３５−５０は、互いに分岐ノード数や葉ノード数などの設定が異なる。また、ランダムフォレストモデル１３５−１は、訴訟に関連するか否かが既知である第１学習データと第１検証データとを用いて学習済みであり、ランダムフォレストモデル１３５−２は、訴訟に関連するか否かが既知である第２学習データと第２検証データとを用いて学習済みであり、ランダムフォレストモデル１３５−３は、訴訟に関連するか否かが既知である第３学習データと第３検証データとを用いて学習済みであり、その他のランダムフォレストモデル１３５−４〜１３５−５０についても同様である。ランダムフォレストモデル１３５−１〜１３５−５０の詳細については、第２実施形態で説明する。また第２学習モデルＮＮは、ニューラルネットワークである。本例におけるニューラルネットワークＮＮは、入力層と出力層とを含み、中間層を有しないが、中間層を有するように構成してもよい。
【００１６】
上記構成において、訴訟に関連するか否かが分かっていない未知文書の例えば主成分（これについても詳細は第２実施形態で説明する）が、ランダムフォレストモデル１３５−１〜１３５−５０に入力される。そして、ランダムフォレストモデル１３５−１〜１３５−５０はそれぞれ、未知文書が訴訟に関連する確率Ｐ１〜Ｐ５０を出力し、これをニューラルネットワークＮＮに入力する。ニューラルネットワークＮＮは、入力された確率Ｐ１〜Ｐ５０に基づいて、最終的な訴訟に関連する確率Ｐ１０と関連しない確率Ｐ２０とを出力する。
【００１７】
本実施形態では、情報処理装置１００が、第１学習モデル１３５と、第１学習モデルを学習させるための学習データとをすでに保持している。そして、これらの情報に基づいて情報処理装置が図２Ａに示す文書検索モデル１３９を生成する方法と、文書検索モデル１３９の性能（総合評価結果）を予測する方法とについて説明する。
【００１８】
図１に戻って、情報処理装置１００の構成について説明する。図示するように情報処理装置１００は、プロセッサ１１０、ＲＯＭ１２０、ＲＡＭ１３０、入力部１４０、表示部１５０、及び通信部１６０を備えている。
【００１９】
ＲＯＭ１２０は、プロセッサ１１０により実行されるプログラムや必要なデータを保持する。
【００２０】
ＲＡＭ１３０は、プロセッサ１１０の作業領域として機能する。またＲＡＭ１３０は、第１評価プログラム１３１、第１学習プログラム１３２、文書データ１３３、第１評価データ１３４、及び第１学習モデル１３５を保持する。第１評価プログラム１３１は、文書が事象に関連するか否かを判断する機械学習モデルの評価を行う。第１学習プログラム１３２は、機械学習モデルについて学習させる。第１評価プログラム１３１と第１学習プログラム１３２は、別個のプログラムであってもよいし、１つのプログラムにまとめられていてもよい。プログラム１３１及び１３２の詳細については後述する。文書データ１３３は、事象に関連する可能性のある文書についてのデータである。文書データ１３３には、ラベル付き文書とラベル無し文書とが含まれる。ラベル付き文書とは、事前にレビュアによってレビューされ（これを事前レビューと呼ぶ）、訴訟に関連するか否かが判明している文書、すなわち関連文書である。他方でラベル無し文書は、事前レビューがなされておらず、関連するか否かが未知の文書である。第１学習モデル１３５は、文書データ１３３に適用される機械学習モデルであり、図２Ａで説明した例えば複数のランダムフォレストモデル１３５−１〜１３５−５０を含む。第１評価データ１３４は、文書データ１３３のうちのラベル付き文書につき第１学習モデル１３５を適用した結果得られる、第１学習モデル１３５の性能を示す評価結果である。第１学習モデル１３５は、例えば深さや葉ノードの異なる複数のランダムフォレストモデルであり、第１評価データ１３４は、複数のランダムフォレストモデルで得られた評価結果である。第１評価データは、各ランダムフォレストモデルにつき得られる。つまり、ランダムフォレストモデル１３５−１についての評価結果（第１評価結果）、ランダムフォレストモデル１３５−２についての評価結果（第２評価結果）、及びランダムフォレストモデル１３５−３についての評価結果（第３評価結果）を含み、以下ランダムフォレストモデル１３５−３〜１３５−５０についても同様である。なお、第１学習モデル１３５の生成方法や第１評価データ１３４を得る方法については、第２実施形態で詳細に説明する。
【００２１】
図２Ｂは、文書データ１３３の一部を用いてあるランダムフォレストモデルから得られる第１評価データ１３４の概念図である。図示するように第１評価データ１３４は、再現率（Recall）、適合率（Precision）、及びElusionを含む。再現率は、ある段階までレビューを行った際において、全ての関連文書のうちのどれだけの割合が発見できたかを示す。また適合率は、ある段階までレビューを行った際において、レビューされた全文書のうち関連文書がどれだけの割合含まれるかを示す。そしてElusionは、ある段階までレビューを行った際に、残りの未レビュー文書に含まれる関連文書の全関連文書に対する割合を示す。
【００２２】
例えば、文書データ１３３に１１２０件の文書が含まれており、そのうちの１２０件の文書を用いてランダムフォレストモデルを学習させ、検証した場合を仮定する。するとランダムフォレストモデルは、各文書が訴訟に関連する文書である確率を算出し、後述する評価結果取得部が、算出された確率の高い順に順序付けし、図２Ｂに示すようなグラフを表示するための情報を取得する。図２Ｂにおいて、横軸は文書の相対順位を示し、０．０が上位であり、１．０が下位である。また縦軸は再現率、適合率、及びElusionを示す。
【００２３】
図２Ｂの例であると、相対順位が０．２における再現率は０．６である。これは、上位の文書からレビューを行った場合、上位２０％の文書をレビューすることで、１２０件の文書に含まれる関連文書のうちの６０％が発見できることを意味する。また、相対順位が０．４における適合率は０．９である。これは、上位４０％の文書をレビューしたときに、レビュー済み文書の９０％が関連文書であることを意味する。そして、相対順位が０．６におけるElusionは０．１である。これは、上位６０％の文書をレビューしたときに、残りの未レビュー文書（全体の４０％）のうちの１０％が関連文書であることを意味する。そして、相対順位が上位であるほど、適合率及びElusionの値は高く、相対順位が下位であるほど再現率の値が高くなる。また、相対順位がゼロ（最上位）におけるElusionの値と、相対順位が１．０（最下位）における適合率の値は、全文書において関連文書の占める割合（richness）に等しい。
【００２４】
第１評価データ１３４は、複数のランダムフォレストにつき得られた図２Ｂに示すような評価結果を含む。例えばランダムフォレストが５０個用意された際には、５０個の評価結果を含む。以下では、図２Ｂに示す評価結果を「性能評価系列」と呼ぶことがある。具体的には、例えば、性能評価系列は、上述した個々のランダムフォレストの再現率、適合率、Elusionを含む。
【００２５】
図１に戻って説明を続ける。プロセッサ１１０は、例えばＣＰＵなどの演算器である。そしてプロセッサ１１０は、第１学習プログラム１３２を実行することにより、第１学習モデル１３５の結果とニューラルネットワークとを用いた文書検索モデルを構築すると共に、未知文書（関連の有無が未知である文書）についての文書検索を実行する。またプロセッサ１１０は、第１評価プログラム１３１を実行することにより、第１学習プログラム１３２を実行することにより得られた文書検索モデルの性能を予測する。
【００２６】
図３は、第１評価プログラム１３１及び第１学習プログラム１３２実行時におけるプロセッサ１１０の機能ブロック図である。図示するようにプロセッサ１１０は、評価結果取得部１１１、文書データ取得部１１２、総合評価結果算出部１１３、第１学習モデル取得部１１４、第１学習部１１５、第２学習部１１６、及び出力部１１７として機能する。
【００２７】
評価結果取得部１１１は、複数の異なるデータセットを用いて学習・検証させた、設定の異なる複数の学習モデルの性能を示す複数の評価結果を取得する。具体的には、評価結果取得部１１１は、ＲＡＭ１３０から複数の評価結果（第１評価データ１３４）を読み出す。この評価結果の一例は、図２Ａで説明した学習済みのランダムフォレストモデル１３５−１〜１３５−５０のそれぞれに関する、図２Ｂで説明した再現率、適合率、及びElusion、すなわち性能評価系列である。ランダムフォレストモデル１３５−１〜１３５−５０を得るために用いる学習データにつき、簡単に説明する。ここで、学習データとしてのデータセットは、例えば、文書データ１３３に含まれる複数の文書のうちの先頭から一部の文書（ラベル付き文書である）に相当する。より具体的には、１１２０個の文書が存在する場合、順に１２０個の文書を抽出したデータに相当する。なお、複数の異なるデータセットは、例えば、１２０個のラベル付き文書を並び替え、そのうちの例えば先頭の２／３にあたる８０個の学習用データと、残りの４０件の検証用データとを含む。このようなデータセットが、例えば５０個のランダムフォレストモデルに対して用意される。そして、用意されたデータセットの各々における学習用データを用いて５０個のランダムフォレストモデルを学習させることで、学習済みランダムフォレストモデル１３５−１〜１３５−５０が得られる。また、用意されたデータセットの各々における検証用データを用いて検証することで、学習済みランダムフォレストモデル１３５−１〜１３５−５０の評価結果が得られる。なお、先に説明した通り、設定の異なる複数の学習モデルとは、ランダムフォレストモデルを前提とした場合、深さや葉等が異なるモデルに相当する。言い換えれば、互いに異なる複数の学習モデルにおいては、同一のアルゴリズム（例えば、ランダムフォレストモデル）が用いられる。なお、学習モデルは、ランダムフォレストモデルに限られず、他の学習モデルであってもよい。また、上記デーセットの具体例については第２実施形態で説明する。
【００２８】
文書データ取得部１１２は、ＲＡＭ１３０から文書データ１３３を読み出す。
総合評価結果算出部１１３は、複数の評価結果に基づいて、設定の異なる複数の学習モデルの性能を算出する。具体的には、例えば図２Ａにおける５０個のランダムフォレストモデル１３５−１〜１３５−５０において検証用データを用いて得られた評価結果（すなわち第１評価データ１３４）を用いて、図２Ａで説明した最終的な文書検索モデル１３９（すなわち、複数の学習モデルを含んで形成される学習モデル）の総合的な評価結果、つまり、複数の学習モデルを含んで形成される学習モデル全体の再現率や適合率など、を算出する。本明細書では、この総合的な評価結果を「性能予測系列」と呼ぶことがある。
【００２９】
第１学習モデル取得部１１４は、ＲＡＭ１３０から、上記説明した第１学習モデル１３５を読み出す。第１学習部１１５は、第１学習モデル１３５を用いて、文書データ１３３に含まれる文書が関連文書である確率を算出する。第２学習部１１６は、前述の文書検索モデルを構築すると共に、未知文書についての文書検索を実行する。出力部１１７は、総合評価結果算出部１１３で得られた性能予測系列や、第２学習部１１６で得られた未知文書についての検索結果を出力する。
【００３０】
引き続き、図１に戻って説明を続ける。入力部１４０は、例えばキーボードやマウスなどであって、情報処理装置１００のユーザからの種々のデータ入力を受け付ける。表示部１５０は例えばディスプレイであり、プロセッサ１１０における処理の状況を表示する。具体的には、性能評価系列、性能予測系列、及び未知文書についての検索結果などを表示する。通信部１６０は、例えば有線または無線通信回線を介してデータを受信する。ＲＡＭ１３０内の各種プログラム１３１、１３２やデータ１３３、１３４、１３５は、通信部１６０によって受信されてもよい。
【００３１】
＜動作について＞
次に、本実施形態に係る情報処理装置１００の動作につき、図４を参照して説明する。図４は、情報処理装置１００における処理の流れを示すフローチャートである。図示するように、処理は大まかには性能予測処理、加重和の重み学習処理、及び未知文書検索処理を含む。
【００３２】
まず、情報処理装置１００のプロセッサ１１０が第１評価プログラム１３１を実行して、性能予測処理を行う。すなわち、プロセッサ１１０の評価結果取得部１１１が、ＲＡＭ１３０から第１評価データ１３４を取得する（ステップＳ１０）。図２Ａ及び図２Ｂで説明したように、５０個のランダムフォレストモデルが用意されていた場合、５０個の性能評価系列が得られる。次に総合評価結果算出部１１３が、図２Ｂの各順位における性能上位の１０系列を用いて、評価値（再現率、適合率、及びElusion）の平均を算出する（ステップＳ１１）。そして、ステップＳ１１で得られた結果に基づき、再度、順位を相対化する（ステップＳ１２）。ステップＳ１２で得られた結果は、第２評価データ１３６として、ＲＡＭ１３０に保持される。この第２評価データ１３６が、前述した総合評価結果であり、また性能予測系列である。この性能予測系列は、後の加重和の重み学習の結果得られる文書検索モデル１３９につき予測される性能を示す。そして性能予測系列は、例えば出力部１１７によって表示部１５０に出力され、レビュアに対して提示される（ステップＳ１３）。
【００３３】
次に、情報処理装置１００のプロセッサ１１０は第１学習プログラム１３２を実行して、加重和の重み学習処理と未知文書検索処理を順次行う。すなわち、第１学習モデル取得部１１４がＲＡＭ１３０から第１学習モデル１３５を取得する。また、文書データ取得部１１２が、ＲＡＭ１３０から文書データ１３３のうちのラベル付き文書を取得する。そして第１学習部１１５が、第１学習モデル１３５、すなわち例えば５０個の学習済みランダムフォレストモデルを用いて、ラベル付き文書が訴訟に関連する確率を予測する（ステップＳ１４）。引き続き第２学習部１１６は、ステップＳ１４で得られた予測結果を入力として、ニューラルネットワークＮＮの学習を行う（ステップＳ１５）。この結果、ランダムフォレストとニューラルネットワークとを含む一つの機械学習モデルである文書検索モデル１３９が生成される。
【００３４】
次にプロセッサ１１０は、未知文書検索処理を行う。すなわち、文書データ取得部１１２が、ＲＡＭ１３０から文書データ１３３のうちのラベル無し文書を取得する。そして第１学習部１１５が、第１学習モデル１３５、すなわち例えば５０個の学習済みランダムフォレストモデルを用いて、ラベル無し文書が訴訟に関連する確率を予測する（ステップＳ１６）。引き続き第２学習部１１６は、ニューラルネットワークＮＮに対して、ステップＳ１６で得られた予測結果を入力する（ステップＳ１７）。この結果、未知文書が関連文書である確率が、ニューラルネットワークＮＮから出力される。
【００３５】
上記動作につき、具体例を用いて更に説明する。まず、ステップＳ１０で取得される第１評価データ（性能評価系列）１３４について説明する。前述のとおり、第１評価データ１３４は、文書データ１３３と第１学習モデル１３５とに基づいて得られる。図５Ａは、文書データ１３３の概念図である。先に述べたように、文書データ１３３は、訴訟に関連するあらゆる電子データである。本例では、１１２０件の文書が含まれる。このうちの１２０件の文書は、事前レビューによってラベルが付与されたラベル付き文書１３３ａである。ラベル“１”は、訴訟に関連することを示し、ラベル“０”は関連しないことを示す。このラベルが、文書１３３ａに付与される。残りの１０００件の文書は、事前レビューの行われていないラベル無し文書１３３ｂである。
【００３６】
そして、ラベル付き文書１３３ａを用いて５０個のデータセットが生成され、このデータセットと第１学習モデル１３５（例えば互いに設定の異なる５０個のランダムフォレストモデル）とに基づいて第１評価データ１３４が得られる。図５Ｂは、５０個のデータセット１３７（１３７−１〜１３７−５０）の概念図である。図示するように、各データセット１３７は、例えば全ラベル付き文書１３３ａの２／３である８０件の訓練用文書と、残りの１／３である４０件の検証用文書とを含む。なお、データセット１３７−１〜１３７−５０に含まれる１２０件の文書は同じであるが、訓練用文書を構成する文書群は互いに異なり、また検証用文書を構成する文書群も互いに異なる。データセット１３７とランダムフォレストモデルについては、第２実施形態で詳細に説明する。
【００３７】
図５Ｃは、ステップＳ１０で取得される第１評価データ１３４の概念図である。図示するように、データセット１３７−１〜１３７−５０のそれぞれの４０件の検証用文書につき、順位と共に再現率Ｒ１〜Ｒ５０、適合率Ｐ１〜Ｐ５０、及びElusion Ｅ１〜Ｅ５０が得られる。図５Ｄは、図２Ｂと同様に、再現率につきグラフで示したものである。このように、５０個のデータセット１３７−１〜１３７−５０に基づいて、５０個の性能評価系列が得られる。
【００３８】
次に、ステップＳ１１及びＳ１２について説明する。図５Ｅは、再現率について示している。図示するように、ステップＳ１１においては、各順位において、５０個の再現率Ｒ１〜Ｒ５０のうち、上位１０個の再現率の値の平均が算出される。例えば相対順位０．１２５において性能評価系列における再現率Ｒ１〜Ｒ５０は以下のとおりである。  
Ｒ１＝０．１４９８
Ｒ２＝０．０６８０
…
Ｒ５０＝０．１２９９
再現率は、値が高いほど性能が良い。したがってこのＲ１〜Ｒ５０のうちの値の大きい上位１０個の平均値が算出される。そしてその結果が、性能予測系列における相対順位０．１２５の再現率Ｒpreとなる。本例の場合、例えばＲpre＝０．１１５９である。このような計算が、各順位において行われ、性能予測系列における再現率Ｒpreが得られる。
【００３９】
図５Ｆ及び図５Ｇは、それぞれ適合率とElusionの場合について示している。図５Ｆに示すように、適合率も再現率と同様に値が大きいほど性能が良い。したがって、各順位において、値の大きい１０個の適合率の平均値が算出される。そして、その結果が性能予測系列における適合率Ｐpreとされる。他方で図５Ｇに示すように、Elusionは値が小さいほど性能が良い。したがって、各順位において、値の小さい１０個のElusionの平均値が算出される。そして、その結果が性能予測系列におけるElusion Ｅpreとされる。
【００４０】
以上のようにして得られた性能予測系列は、例えば性能評価系列と共に図５Ｈのようなグラフで表示部１５０に表示される。図５Ｈにおいて、破線は性能評価系列を示し、実線が性能予測系列を示す。すなわち、再現率、適合率、及びElusionにつき、それぞれ５０本の性能評価系列と、それらの上位１０系列の平均値に基づいて得られたそれぞれ１本の性能予測系列とが表示される。この性能予測系列が、文書検索モデル１３９において予測される性能を示している。
【００４１】
次に、ステップＳ１４及びＳ１５につき説明する。まずステップＳ１４では、第１学習モデル１３５−１〜１３５−５０（５０個のランダムフォレストモデル）のそれぞれにおいて、１２０件のラベル付き文書１３３ａのラベルが“１”である確率を算出する。この結果の一例を図６Ａに示す。図６Ａにおいて、文書ＩＤとは、１２０件のラベル付き文書に割り当てられたＩＤ番号であり、例えば“１”〜“１２０”が割り当てられている。そして、図示するように、学習モデル１３５−１〜１３５−５０を用いて、ＩＤ１の文書がラベル“１”である確率が算出され、以下、ＩＤ２〜ＩＤ１２０の文書についてもそれぞれラベル“１”である確率が算出される。なお、第１学習モデル１３５−１〜１３５−５０への入力データとしては、ラベル付き文書１３３ａにおける文書主成分であってもよい。文書主成分を算出する方法については、第２実施形態で詳細に説明する。
【００４２】
次に、ステップＳ１５につき図６Ｂを用いて説明する。図示するようにステップＳ１５では、図６Ａで得られた確率を入力として、ニューラルネットワークＮＮの学習が行われる。ニューラルネットワークＮＮは、例えば入力層のユニット数が、第１学習モデル１３５の数と等しい５０個であり、中間層がない。そして出力層は、ユニット数が、ラベル数（“０”または“１”）に等しい２個の例えばSoftmax関数である。そして、各文書ＩＤにつき、５０個の確率が、入力層の５０個のユニットに入力される。例えば、まず文書ＩＤ１につき、第１学習モデル１３５−１で得られた確率Ｐ１＝０．７が入力され、第１学習モデル１３５−５０で得られた確率Ｐ５０＝０．５が入力され、確率Ｐ２〜Ｐ４９についても同様である。確率Ｐ１〜Ｐ５０は、それぞれ重みｗ１１、ｗ１２、ｗ１３、…ｗ１５０が加重されて出力層の一方のユニットに入力され、更に重みｗ２１、ｗ２２、ｗ２３、…ｗ２５０が加重されて、出力層の他方のユニットに入力される。そして出力層からは、ラベル“１”の確率Ｐ１０とラベル“０”の確率Ｐ２０が出力される。上記処理が、文書ＩＤ１〜１２０のそれぞれについて行われ、重みｗ１１、ｗ１２、ｗ１３、…ｗ１５０及びｗ２１、ｗ２２、ｗ２３、…ｗ２５０が最適な値とされる。これにより、文書検索モデル１３９のニューラルネットワークＮＮが完成する。
【００４３】
次に、ステップＳ１６及びＳ１７につき説明する。ステップＳ１６及びＳ１７では、ステップＳ１５で得られた文書検索モデル１３９を用いて未知文書の検索が行われる。すなわち、ステップＳ１４と同様に、第１学習モデル１３５−１〜１３５−５０（５０個のランダムフォレストモデル）のそれぞれにおいて、１０００件のラベル無し文書１３３ｂのラベルが“１”である確率を算出する。この結果、図６Ａと同様に、学習モデル１３５−１〜１３５−５０を用いて、ＩＤ１２１の文書がラベル“１”である確率が算出され、以下、ＩＤ１２１〜ＩＤ１１２０の文書についてもそれぞれラベル“１”である確率が算出される。
【００４４】
次に、ステップＳ１７につき図７Ａを用いて説明する。図示するようにステップＳ１７では、ステップＳ１６で得られた確率が、ステップＳ１５で学習されたニューラルネットワークＮＮに入力される。この結果、図７Ｂに示すように、ラベル無し文書１３３ｂについてのラベル“１”の最終的な確率が得られる。そして、確率の高い順に未知文書が順序付けられる。この結果は、例えば表示部１５０に表示される。ステップＳ１７で得られた結果において、各文書の重要度は、性能予測系列に基づいて判断できる。この様子を図７Ｃに示す。
【００４５】
図示するように、性能予測系列における相対順位０．０２５の再現率Ｒpreは０．０２９０である。すると、相対順位が同じであれば、ラベル無し文書１３３ｂにおいても再現率は同じであると予想される。また、事前レビューの結果、５０％（１２０件中６０件）が関連文書であれば、ラベル無し文書１３３ｂにおいても５０％（１０００件中５００件）が関連文書であると考えることができる。すると、図７Ｃに示すように、ラベル無し文書１３３ｂにおいて相対順位が０．０２５である文書は、絶対順位が２５位である。つまり、絶対順位が１〜２５位までの２５件をレビューしたとき、その中には５００件の関連文書のうちの２．９％（１４．５件）が含まれる、と予想される。適合率及びElusionについても同様に考えることができる。したがってレビュアは、何件の文書をレビューすればどの程度の再現率、適合率、Elusionが得られるか、の情報を相対順位に基づいて知ることができる。
【００４６】
＜本実施形態に係る効果＞
上記のように、本実施形態に係る情報処理装置によれば、機械学習モデルの信頼性を向上できる。本効果につき、以下説明する。
【００４７】
学習モデルの性能を予測する手法の一つとして、交差検証が知られている。交差検証では、ラベル付きデータを訓練用と検証用とに分けて取り扱う。そして、訓練用データを用いてがモデルを学習させ、検証用データに対する性能を、未知データへ当該学習モデルを適用した際に予測される性能と推定する。そして、未知データへの性能が最も高いと推定される学習モデルを、未知データの分類に利用する。
【００４８】
しかしながら、交差検証を経て選ばれたモデルは、ラベル付きデータの一部（訓練用データ）のみを学習している。したがって、ラベル付きデータの件数が少ない場合、学習データ量の不足により、未知データに対する精度が低下する可能性がある。特に、ｅディスカバリ事業においては、１０００〜２０００件程度のラベル付き文書をもとに数十万件の文書のラベルを予測する場面が多く、精度の向上が難しい場合がある。また訴訟の場合には、事件ごとに事情が特有であるため、他の事件で使用したラベル付きデータを流用することも困難である。その結果、モデルの予測可能性及び精度向上が困難である。
【００４９】
この点、本実施形態によれば、設定を変えた複数のモデル（本実施形態ではランダムフォレストモデル）と、訓練用文書と検証用文書とを含む複数のデータセットとが用意される。そして、各モデルにおいて、対応するデータセットを用いて学習と検証とを行う。つまり、交差検証を行う。更に、複数のモデルで得られた結果を入力に用いてニューラルネットワークを学習させる。そして未知データを分類する際には、複数のモデルで未知データを検証し、その検証結果をニューラルネットワークに入力することで、文書のラベルを予測する。すなわち、複数のモデルのうちの最も性能の良いひとつのみを使用するのではなく、全てのモデルを使用する。つまり、アンサンブル学習を用いる。これにより、モデルの精度を向上できる。更に、複数のモデルにおける交差検証に基づいてモデルの性能を予測するので、予測精度を向上できる。
【００５０】
（第２実施形態）
次に、この発明の第２実施形態に係る情報処理装置、情報処理方法、及び情報処理プログラムにつき説明する。本実施形態は、上記第１実施形態において、情報処理装置１００において第１評価データ１３４、第１学習モデル１３５、及びデータセット１３７を生成する方法に関する。以下では、第１実施形態と異なる点についてのみ説明する。
【００５１】
＜構成について＞
図８は、本実施形態に係る情報処理装置１００のブロック図である。図示するように、本実施形態に係る情報処理装置１００は、第１実施形態で説明した図１の構成において、ＲＡＭ１３０が更に特徴量抽出プログラム２０１、第１生成プログラム２０２、第２生成プログラム２０３、第２学習プログラム２０４、第２評価プログラム２０５を更に備えている。これらのプログラム２０１〜２０５は、その全てまたは一部が１つのプログラムにまとめられていてもよい。
【００５２】
図９は、プログラム２０１〜２０５を実行した際のプロセッサ１１０の機能ブロック図である。図示するようにプロセッサ１１０は、第１実施形態で説明した図３において、特徴量抽出部２１０、学習モデル生成部２１１、データセット生成部２１２、第３学習部２１３、及び性能評価部２１４として機能する。
【００５３】
特徴量抽出部２１０は、プロセッサ１１０が特徴量抽出プログラム２０１を実行することにより実現される。特徴量抽出部２１０は、対象文書群から特徴量を抽出し、文書主成分行列を生成する。
【００５４】
学習モデル生成部２１１は、プロセッサ１１０が第１生成プログラム２０２を実行することにより実現される。学習モデル生成部２１１は、交差検証を行うための学習モデルを生成する。本実施形態で生成されるモデルは、第１実施形態で説明したようにランダムフォレストモデルである。
【００５５】
データセット生成部２１２は、プロセッサ１１０が第２生成プログラム２０３を実行することにより実現される。データセット生成部２１２は、ラベル付き文書に基づいて複数のデータセット１３７を生成する。
【００５６】
第３学習部２１３は、プロセッサ１１０が第２学習プログラム２０４を実行することにより実現される。第３学習部２１３は、学習モデル生成部２１１で生成されたランダムフォレストモデルの学習を行う。この結果、学習済みランダムフォレストモデル１３５が得られる。
【００５７】
性能評価部２１４は、プロセッサ１１０が第２評価プログラム２０５を実行することにより実現される。性能評価部２１４は、学習モデル生成部２１１で生成され、第３学習部で学習されたランダムフォレストモデル１３５の性能評価を行う。
【００５８】
＜動作について＞
次に、本実施形態に係る情報処理装置１００の動作につき、図１０を参照して説明する。図１０は、情報処理装置１００における処理の流れを示すフローチャートである。図示するように、処理は大まかには特徴量抽出処理、学習モデル生成処理、データセット生成処理、及びモデルの学習・性能予測処理を含む。
【００５９】
まず、情報処理装置１００のプロセッサ１１０が特徴量抽出プログラム２０１を実行して、特徴量抽出処理を行う。すなわち、プロセッサ１１０の特徴量抽出部２１０が、対象文書群に基づいて、ＴＦ−ＩＤＦ行列を生成する（ステップＳ２０）。対象文書群は、例えば第１実施形態において図５Ａを用いて説明したラベル付き文書１３３ａであってもよいし、ラベル付き文書１３３ａに加えてラベル無し文書１３３ｂが含まれてもよい。引き続き特徴量抽出部２１０は、生成したＴＦ−ＩＤＦ行列につき主成分分析を行い、文書主成分行列を生成する（ステップＳ２１）。
【００６０】
次にプロセッサ１１０は、第１生成プログラム２０２を実行して、学習モデル生成処理を行う。すなわち、学習モデル生成部２１１は、それぞれ設定の異なる学習モデルを生成する（ステップＳ２２）。本例では、第１実施形態で説明したように、５０個のランダムフォレストモデルが生成される。
【００６１】
次にプロセッサ１１０は、第２生成プログラム２０３を実行して、データセット生成処理を行う。すなわち、データセット生成部２１２は、ラベル付き文書１３３ａに基づいて、第１実施形態において図５Ｂを用いて説明した例えば５０個のデータセット１３７を生成する（ステップＳ２３）。
【００６２】
次にプロセッサ１１０は、第２学習プログラム２０４及び第２評価プログラム２０５を実行して、モデルの学習及び性能予測処理を行う。すなわち、第３学習部２１３はまず、ステップＳ２２で生成された５０個の学習モデルと、ステップＳ２３で生成された５０個のデータセット１３７とをそれぞれ組み合わせて、５０個のユニットを生成する（ステップＳ２４）。引き続き第３学習部２１３は、５０個のユニットの各々において、関連付けられたデータセットの訓練用文書を用いて関連付けられた学習モデルの学習を行う（ステップＳ２５）。この結果、学習済みの５０個のランダムフォレストモデル、すなわち第１実施形態で説明した第１学習モデル１３５が得られる。更に性能評価部２１４が、５０個のユニットの各々において、関連付けられたデータセットの検証用文書を用いて、関連付けられた第１学習モデル１３５の検証を行う。そして、検証結果に基づいて、５０個の第１学習モデル１３５の性能を予測する（ステップＳ２６）。すなわち、５０個の第１学習モデル１３５の再現率、適合率、及びElusionを得る。これが、第１実施形態の図５Ｃ及び図５Ｄで説明した性能評価系列であり、第１評価データ１３４である。
【００６３】
以上のようにして第１学習モデル１３５及び第１評価データ１３４が得られた後、第１実施形態で説明したステップＳ１０以降の処理が行われる。
【００６４】
上記動作につき、具体例を用いて更に説明する。まず、ステップＳ２０〜Ｓ２２における特徴量抽出処理について説明する。本処理は、例えばＬＳＩ（Latent Semantic Indexing）を用いて行われる。まず、ＴＦ（Term Frequency）行列の計算が行われる。図１１Ａは、ＴＦ行列の概念図である。図示するようにＴＦ行列は、各文書に出現する単語Ｔ１〜ＴＭ（Ｍは２以上の自然数）の回数を示す。例えば図１１Ａの例であると、ＩＤ３の文書には単語Ｔ１が３回出現し、単語Ｔ２は出現せず、単語Ｔ３は１回出現する。ＴＦ行列で用いられる単語Ｔ１〜ＴＭは、事象（本例では訴訟）に関する単語である。なお、ＴＦ行列の計算は、ラベル付き文書１３３ａとラベル無し文書１３３ｂの両方を対象に行ってもよい。すなわち、ＴＦ行列の計算は事前レビューとは独立して実行できるため、ＴＦ行列の計算が完了した時点では、いずれの文書がモデルの学習に使用されるか、つまりラベル付き文書であるか否かが判明していないからである。もちろん、判明している際には、１２０件のラベル付き文書を対象にＴＦ行列の計算を行えばよい。しかし、第１実施形態で説明した図７Ａの処理では、１０００件のラベル無し文書１３３ｂの主成分をランダムフォレストモデルに入力するので、ステップＳ２０において１１２０件全てにつきＴＦ行列を計算してしまってもよい。
【００６５】
次に、ＤＦ（Document Frequency）の計算が行われる。図１１ＢはＤＦの概念図である。ＤＦは、各単語が１回以上出現する文書の数を示す。図１１Ｂの例であると、単語Ｔ１は１５件の文書において１回以上出現し、単語Ｔ２は４件の文書において１回以上出現する。
【００６６】
次に、ＴＦ−ＩＤＦ行列の計算が行われる。図１１ＣはＴＦ−ＩＤＦ行列の概念図である。ＴＦ−ＩＤＦ行列は、各単語の文書中における重要度を示す。ＩＤＦ（Inverse Document Frequency）は、単語の希少度を示し、希少度が高い単語は当該文書の特徴を判別するのに有用だと考えられる。ＴＦ−ＩＤＦ行列では、出現頻度が高いほど、また希少度が高いほど、大きな値とされる。図１１Ｃの例であると、ＩＤ３の文書の単語Ｔ１の値は０．３である。この値は、ＩＤ３の文書における単語Ｔ１の重要度を示し、ＩＤ３の文書のＴＦ値とＤＦとから算出される。また、図１１Ｃの例ではＬ２正規化を行うことで、行列内の値は［０，１］の範囲の値とされる。このような値とすることで、ＴＦ−ＩＤＦ行列は、機械学習やデータ分析で扱いやすくなる。
【００６７】
次に、主成分行列の計算が行われる。図１１Ｄは主成分行列の概念図である。主成分分析は、相関のある多数の変数（本例では単語）を「主成分」なる変数にまとめることで、データの次元を削減する。図１１Ｄに示すように単語Ｔ１〜ＴＭは、主成分Ｃ１〜ＣＫ（Ｋは２以上の自然数であり、例えばＫ＜Ｍであり、一例としてはＫ＝１００）に置き換えられる。そして、ある文書において例えば主成分Ｃ１の値が大きければ、当該文書においては、主成分Ｃ１と結びついた単語群の重要度が、全体の文書のなかで相対的に高いことを示す。図１１Ｅは、主成分Ｃ１〜ＣＫと単語Ｔ１〜ＴＭとの相関の強度を示している。図１１Ｅにおいて、値が大きいほど、主成分における単語の重要度を反映する。例えば主成分Ｃ２は、単語ＴＭとの相関が非常に強いことがわかる。なお、第１実施形態のステップＳ１４、Ｓ１６などでランダムフォレストモデルへ入力される文書データは、図１１Ｄに示す主成分Ｃ１〜ＣＫである。
【００６８】
次に、学習モデル生成処理について説明する。すなわちステップＳ２２において、学習モデル生成部２１１は、それぞれ設定の異なる学習モデルを生成する。本例では、例えば５０個のランダムフォレストモデルが生成される。図１２は、１つのランダムフォレストの概念図である。
【００６９】
図示するように、ランダムフォレストモデルはＬ個（Ｌは２以上の自然数）の決定木ＤＴ（ＤＴ１〜ＤＴ（Ｌ））を含む。決定木ＤＴにおいて、白丸印は分岐ノードを示し、斜線を付した丸印は葉ノードを示す。分岐ノードは、例えば「与えられた文書の主成分Ｃ１７が−１．３８５以下ならば、左下の分岐に進む」など、主成分の値に応じたデータの分類ルールを含む。決定木ＤＴを構築する際には、「その時点で振り分けられている訓練用文書１３３ｂが、ある一定の件数未満の場合、次の分岐を行わない」など、分岐の最小件数の制限が考慮され得る。図１２における「深さ」は、ノードの深さ（高さとも呼ぶ）を表し、何回の分岐を経たかに対応する。本例であると、決定木ＤＴ１の深さは５、決定木ＤＴ２の深さは４、そして決定木ＤＴ（Ｌ）の深さは５である。最大深さに制限を設けることで、ランダムフォレストモデルが訓練用文書１３３ｂに特化しすぎる（すなわち、汎化性能を低下させる）ことを抑制する。
【００７０】
分岐の末端にある葉ノードは、与えられたデータ（主成分）に対する最終的な出力に対応する。全ての訓練用文書１３３ｂはいずれかの葉ノードに割り当てられている。そして、各葉ノードは、割り当てられている文書が事象に関連するか否かの比率を基に、未知文書のラベルを予測する。例えば、未知文書に決定木を適用し、ラベル“１”の訓練用文書が９件、ラベル“０”の訓練用文書が１件割り当てられている葉ノードに到達した場合、未知文書は９０％の確率で関連文書であると判定される。また深さと同様に葉ノードも、その数に制限を設けることで、訓練用文書に特化しすぎることを抑制する。
【００７１】
ランダムフォレストモデルでは、与えられた訓練用文書に対する決定木を複数含む。ランダムフォレストモデルの主要な設定項目としては、以下のものがある。すなわち、
・決定木の個数
・分岐を行うために必要な最小文書件数
・葉ノードの最大数
・最大深さ
本実施形態では、例えば５０個のランダムフォレストモデルが生成される。そして、各ランダムフォレストモデルの主要な設定は、例えば下記の通りである。すなわち、
・決定木の数：２０個（全ランダムフォレストモデルで共通）
・分岐を行うために必要な最小データ件数：５０個のランダムフォレストモデルＲＦ１〜ＲＦ５０に対し、２〜８を周期的に設定
・葉ノードの最大数：５０個のランダムフォレストモデルＲＦ１〜ＲＦ５０に対し、８〜２０４を周期的に設定
・葉ノードの最大数：ランダムフォレストモデルＲＦ１〜ＲＦ５０に対し、３〜２３を周期的に設定
以上のようにして、５０個のランダムフォレストモデルＲＦ１〜ＲＦ５０が生成される。
【００７２】
次に、ステップＳ２３のデータセット生成処理について、図１３Ａ及び図１３Ｂを用いて説明する。図１３Ａ及び図１３Ｂは、データセット１３７−１及び１３７−２の生成方法を模式的に示している。
【００７３】
まず、図１３Ａに示すようにデータセット生成部２１２は、１２０件のラベル付き文書１３３ａを対象として、文書ＩＤリストを作成する。引き続きデータセット生成部２１２は、文書の並び順をシャッフル（ランダマイズ）する。そしてシャッフルした結果の文書リストにおける第１部分（例えば先頭の２／３（＝８０件））を訓練用文書とし、第２部分（例えば残りの１／３（＝４０件））を検証用文書として、データセット１３７−１を生成する。
【００７４】
引き続き、図１３Ｂに示すようにデータセット生成部２１２は、データセット１３７−１の文書リストの先頭から１／５０（本例では２件）をリストの末尾に移動させる。本例では、ＩＤ５１及びＩＤ１０１の文書がリストの末尾に移動される。そして、データセット１３−１と同様に、文書リストにおける第３部分（例えば先頭の２／３）を訓練用文書とし、第４部分（例えば残りの１／３）を検証用文書として、データセット１３７−２を生成する。以下図１３Ｂと同様の処理を繰り返すことにより、５０個のデータセット１３７−１〜１３７−５０が生成される。この結果、データセット１３７−１〜１３７−５０は、互いに同じ文書で構成される一方で、訓練用文書を構成する文書の組み合わせは互いに異なり、また検証用文書を構成する文書の組み合わせは互いに異なる。このように、互いに異なる訓練用文書と検証用文書を用意することで、交差検証が可能となる。
【００７５】
次に、ステップＳ２４〜Ｓ２６におけるモデルの学習・性能予測処理について説明する。まず、第３学習部２１３が、５０個のランダムフォレストモデルＲＦと５０個のデータセット１３７とに関連付けることにより、５０個のユニットＵＴ１〜ＵＴ５０を生成する。この様子を図１４Ａに示す。図示するように、ユニットＵＴ１はランダムフォレストモデルＲＦ１とデータセット１３７−１とを含む。ユニットＵＴ２はランダムフォレストモデルＲＦ２とデータセット１３７−２とを含む。以下同様であり、ユニットＵＴ５０はランダムフォレストモデルＲＦ５０とデータセット１３７−５０とを含む。
【００７６】
引き続き、第３学習部２１３によってランダムフォレストモデルＲＦの学習と検証が行われ、検証結果に基づいて性能評価部２１４が各ランダムフォレストモデルＲＦの性能を評価し、性能評価系列を得る。この様子を図１４Ｂに示す。図示するように第３学習部２１３は、ユニットＵＴ１において、データセット１３７−１の訓練用文書ＴＤ１を用いてランダムフォレストモデルＲＦ１に学習させる（ステップＳ３０）。この際、ランダムフォレストモデルＲＦ１への入力データは、訓練用文書ＴＤ１の文書主成分Ｃ１〜ＣＫ（図１１Ｄ参照）であり、出力データはラベル情報の予測結果（例えば文書がラベル“１”である確率）である。ランダムフォレストモデルＲＦ１では、各決定木から予測出力が得られ、ランダムフォレストモデルＲＦ１内においてこれらの予測出力が統合されて予測結果が出力される。以下、ユニットＵＴ２〜ＵＴ５０においても同様の処理が実行される。
【００７７】
ステップＳ３０の結果、学習済みランダムフォレストモデルが生成される。これが、第１実施形態で説明した第１学習モデル１３５に相当する。引き続き第３学習部２１３は、ユニットＵＴ１において、データセット１３７−１の検証用文書ＶＤ１を用いてランダムフォレストモデルＲＦ１を検証する（ステップＳ３１）。この際も、ランダムフォレストモデルＲＦ１への入力データは、検証用文書ＶＤ１の文書主成分Ｃ１〜ＣＫであり、出力データはラベル情報の予測結果（例えば文書がラベル“１”である確率）である。以下、ユニットＵＴ２〜ＵＴ５０においても同様の処理が実行される。
【００７８】
ステップＳ３１の結果、ユニットＵＴ１〜ＵＴ５０の各々において、順序付きの検証データ３００−１〜３００−５０が得られる。これは、検証用文書ＶＤ１につき、ラベル“１”である確率の高い順番に文書ＩＤを並べたものであり、第１実施形態で説明した図７Ｂにおいて「ＮＮが出力した「関連性あり」の確率」を「ランダムフォレストモデルが出力した「関連性あり」の確率」に読み替えたものに等しい。その後、性能評価部２１４が検証データ３００−１〜３００−５０に基づいて、ユニットＵＴ１〜ＵＴ５０の性能を評価する（ステップＳ３２）。より具体的には、第１実施形態で説明した再現率、適合率、及びElusionを算出して、ユニットＵＴ１〜ＵＴ５０についての性能評価系列１３４−１〜１３４−５０を得る。この性能評価系列１４１が、第１実施形態において図５Ｃを用いて説明した第１評価データ１３４に相当する。
【００７９】
＜本実施形態に係る効果＞
図１５は、本実施形態で得られる文書検索モデル１３９の概念図である。本実施形態に係る構成によれば、第１学習モデル１３５として、ランダムフォレストモデルを用いることができる。そして、深さや葉ノードの数などの設定値の異なる複数のランダムフォレストモデルの結果を用いることで、文書検索モデル１３９の精度と、性能予測可能性を向上できる。更に、ＬＳＩを用いて得られた文書主成分を、ランダムフォレストモデルへの入力データとして用いている。これにより、入力データの次元を低減し、プロセッサ１１０における計算量を削減できる。
【００８０】
また、共通のデータ群（例えば、１２０個のラベル付き文書１３３ａ）に基づいて、複数のデータセット（例えば、５０個のデータセット１３７−１〜１３７−５０）が生成される。複数のデータセット１３７の各々は、学習データ（訓練用文書）と検証データ（検証用文書）を含む。複数のデータセット１３７毎に、学習データを構成する文書の組合せが互いに異なり、且つ検証データを構成する文書の組合せが互いに異なる。これにより、例えばラベル付き文書１３３ａの数量が乏しい場合でも、互いに異なる複数のデータセットを生成できる。更に複数のデータセットを互いに異なるランダムフォレストモデルに適用することで、文書検索モデル１３９の精度と汎用性を向上できる。
【００８１】
（その他の変形例など）
上記のように、実施形態に係る情報処理方法は、第１学習データ（例えば、データセット１３７−１の訓練用文書ＴＤ１）を用いて学習させた第１機械学習モデル（例えば、ランダムフォレストモデル１３５−１）の性能を示す第１評価結果（例えば、ユニットＵＴ１の性能評価系列）であって、且つ第１学習データと異なる第１検証データ（例えば、データセット１３７−１の検証用文書ＶＤ１）を用いて算出された第１評価結果を得ることと、第１学習データと異なる第２学習データ（例えば、データセット１３７−２の訓練用文書ＴＤ２）を用いて学習させた、第１機械学習モデルと異なる第２機械学習モデル（例えば、ランダムフォレストモデル１３５−２）の性能を示す第２評価結果（ユニットＵＴ２の性能評価系列）であって、且つ第１検証データと異なる第２検証データ（例えば、データセット１３７−２の検証用文書ＶＤ２）を用いて算出された第２評価結果を得ることと、第１評価結果と第２評価結果とに基づいて、所定の事象（例えば、訴訟）に関して未評価である未知データに適用した際に予測される、第１機械学習モデル及び第２機械学習モデルを含む一つの機械学習モデル（複数のランダムフォレストモデル１３５＋各モデルをつなぐＮＮ＝文書検索モデル１３９）の性能を示す総合評価結果（文書検索モデル１３９についての性能予測系列）を算出することとを備える。そして、第１学習データ、第２学習データ、第１検証データ、及び第２検証データは、所定の事象に関する評価済みデータ（ラベル付きデータ）である。
【００８２】
なお、上記実施形態は一例にすぎず、種々の変形が可能である。例えば、上記実施形態では文書検索モデル１３９として、ランダムフォレストモデルとニューラルネットワークとの組み合わせの場合を例に説明した。しかし、これらの学習モデルに限定されず、例えばニューラルネットワークの代わりにサポートベクターマシンやナイーブベイズなど、種々の機械学習モデルを用いることができる。
【００８３】
更に、上記実施形態では、図４及び図１０に示す種々の処理をプロセッサ１１０がソフトウェア（プログラム１３１、１３２、２０１〜２０５）を用いて実行する場合を例に説明した。そして、各種プログラム１３１、１３２、２０１〜２０５がＲＡＭ１３０に保持される場合を例に説明した。しかし、プログラム１３１、１３２、２０１〜２０５は、ＲＡＭ１３０に限らず、コンピュータ（すなわちプロセッサ１１０）により読み取り可能な記憶装置（記録媒体）に保持されていればよく、この記録媒体としては、「一時的でない有形の媒体」、例えばテープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また本プログラムは、伝送可能な任意の伝送媒体を介してコンピュータに供給されてもよい。
【００８４】
もちろん、図４及び図１０に示す処理の少なくとも一部はハードウェアによって実現されてもよいし、ハードウェアとソフトウェアの組み合わせによって実現されてもよい。更に、上記実施形態で説明したフローチャートの処理は、可能な限り順序を入れ替えることができる。
【００８５】
上記では、本発明のいくつかの実施形態を説明したが、上述した形態に限定されるものではなく、適宜変形可能である。そして上記の構成は、実質的に類似の構成、類似の作用効果を奏する構成または類似の目的を達成できる構成で置き換えることができる。
【符号の説明】
【００８６】
１００…情報処理装置、１１０…プロセッサ、１１１…評価結果取得部、１１２…文書データ取得部、１１３…総合評価結果算出部、１１４…第１学習モデル取得部、１１５…第１学習部、１１６…第２学習部、１１７…出力部、１２０…ＲＯＭ、１３０…ＲＡＭ、１３１…第１評価プログラム、１３２…第１学習プログラム、１３３…文書データ、１３３ａ…ラベル付き文書、１３３ｂ…ラベル無し文書、１３４…第１評価データ、１３５…学習モデル、１３６…第２評価データ、１３７…データセット、１３９…文書検索モデル、１４０…入力部、１５０…表示部、１６０…通信部、２０１…特徴量抽出プログラム、２０２…第１生成プログラム、２０３…第２生成プログラム、２０４…第２学習プログラム、２０５…第２評価プログラム、２１０…特徴量抽出部、２１１…学習モデル生成部、２１２…データセット生成部、２１３…第３学習部、２１４…性能評価部、３００…検証データ
【要約】
【課題】機械学習モデルの信頼性を向上可能な情報処理装置、情報処理方法、及び情報処理プログラムを提供する。
【解決手段】情報処理方法は、第１学習データを用いて学習させた第１機械学習モデルの性能を示す第１評価結果であって、且つ第１学習データと異なる第１検証データを用いて算出された第１評価結果を得ることと、第１学習データと異なる第２学習データを用いて学習させた、第１機械学習モデルと異なる第２機械学習モデルの性能を示す第２評価結果であって、且つ第１検証データと異なる第２検証データを用いて算出された第２評価結果を得ることと、第１評価結果と第２評価結果とに基づいて、所定の事象に関して未評価である未知データに適用した際に予測される、第１機械学習モデル及び第２機械学習モデルを含む一つの機械学習モデルの性能を示す総合評価結果を算出することとを備える。
【選択図】図４【図１】
0006908250.tif 000002
【図２Ａ】
0006908250.tif 000003
【図２Ｂ】
0006908250.tif 000004
【図３】
0006908250.tif 000005
【図４】
0006908250.tif 000006
【図５Ａ】
0006908250.tif 000007
【図５Ｂ】
0006908250.tif 000008
【図５Ｃ】
0006908250.tif 000009
【図５Ｄ】
0006908250.tif 000010
【図５Ｅ】
0006908250.tif 000011
【図５Ｆ】
0006908250.tif 000012
【図５Ｇ】
0006908250.tif 000013
【図５Ｈ】
0006908250.tif 000014
【図６Ａ】
0006908250.tif 000015
【図６Ｂ】
0006908250.tif 000016
【図７Ａ】
0006908250.tif 000017
【図７Ｂ】
0006908250.tif 000018
【図７Ｃ】
0006908250.tif 000019
【図８】
0006908250.tif 000020
【図９】
0006908250.tif 000021
【図１０】
0006908250.tif 000022
【図１１Ａ】
0006908250.tif 000023
【図１１Ｂ】
0006908250.tif 000024
【図１１Ｃ】
0006908250.tif 000025
【図１１Ｄ】
0006908250.tif 000026
【図１１Ｅ】
0006908250.tif 000027
【図１２】
0006908250.tif 000028
【図１３Ａ】
0006908250.tif 000029
【図１３Ｂ】
0006908250.tif 000030
【図１４Ａ】
0006908250.tif 000031
【図１４Ｂ】
0006908250.tif 000032
【図１５】
0006908250.tif 000033