(57)【要約】【課題】１つの文書の検査のための演算負荷を軽減できるようにした校正支援装置を提供する。【解決手段】クライアント側装置１０から検査対象とされる契約文書が入力されると、ＣＰＵ４２は、契約文書を構成する単語の中から、検査対象データによって定義されている用語である対象用語を抽出し、抽出用語とする。ＣＰＵ４２は、抽出用語以前のＤ個の単語に応じたベクトルデータと、抽出用語以後のＤ個の単語に応じたベクトルデータとに基づき出力写像の入力を生成し、各単語が、抽出用語の位置に入ることが適切である可能性の大小を示すスコアを算出する。ＣＰＵ４２は、スコアに基づき、抽出用語が間違いである可能性がある場合、その旨をクライアント側装置１０に通知する。【選択図】図１
2020077269.tif 000002
【特許請求の範囲】
【請求項１】
単語集に関するデータであって該単語集に含まれるそれぞれの単語に対応する単語ベクトルデータを規定するためのデータである単語特定データと、前記単語集に含まれる単語の一部によって構成されて且つ検査対象とされる用語である対象用語を規定するデータである検査対象データと、前記対象用語以前および以後に登場する単語に応じたデータを入力として前記対象用語が適切である可能性の大小を表現するスコアを出力する出力写像を規定するデータである出力写像データと、が記憶された記憶装置と、
入力された文の中から前記対象用語を抽出し、当該抽出した対象用語である抽出用語以前に登場する１または複数の単語に関する前記単語特定データに応じた前記単語ベクトルデータと、該抽出用語以降に登場する１または複数の単語のそれぞれに関する前記単語特定データに応じた前記単語ベクトルデータとを用いて前記出力写像の入力ベクトルデータを生成し、該入力ベクトルデータと前記出力写像データとに基づき、前記スコアを算出する算出処理と、
前記スコアに基づき、前記抽出用語の適切性の判定結果を通知する通知処理と、を実行する処理回路と、を備える校正支援装置。
【請求項２】
前記出力写像は、前記単語集に含まれる単語であって前記対象用語を構成する単語よりも多くの単語のそれぞれのスコアを出力するものであり、
前記通知処理は、前記出力されたスコアのうち、前記抽出用語のスコアを選択して評価する選択処理を含む請求項１記載の校正支援装置。
【請求項３】
前記検査対象データは、前記対象用語のいくつかが互いに関連した関連用語であることを規定するデータである関連規定データを含み、
前記通知処理は、前記抽出用語のスコアと、該抽出用語に関連した前記関連用語のスコアとの選択的な大小比較に基づき、前記抽出用語のスコアに対する前記関連用語のスコアの相対的な大きさが所定以上である場合に、前記抽出用語が誤りである可能性がある旨の注意喚起をする喚起処理を含む請求項２記載の校正支援装置。
【請求項４】
前記検査対象データは、前記対象用語のいくつかが互いに関連した関連用語であることを示すデータである関連規定データを含み、
前記通知処理は、前記抽出用語のスコアと、該抽出用語に関連した前記関連用語のスコアとの選択的な大小比較に基づき、前記抽出用語のスコアに対する前記関連用語のスコアの相対的な大きさが規定以上である場合に、当該関連用語が適切である可能性がある旨通知する代替案通知処理を含む請求項２記載の校正支援装置。
【請求項５】
前記算出処理は、前記抽出用語が複合語である場合、前記出力写像の出力のうち前記抽出用語を構成する単語のスコアに基づき、前記抽出用語のスコアを算出する請求項２〜４のいずれか１項に記載の校正支援装置。
【請求項６】
前記処理回路は、外部からの要求に応じて前記検査対象データを更新することによって前記対象用語を新たに登録する登録処理を実行する請求項１〜５のいずれか１項に記載の校正支援装置。
【請求項７】
前記処理回路は、
前記通知処理に対し、前記抽出用語の適切性の判定結果に対する修正要求を受け付ける受付処理と、
前記修正要求を受け付けた場合、修正対象となった文書を前記記憶装置に記憶させる記憶処理と、を実行する請求項１〜６のいずれか１項に記載の校正支援装置。
【請求項８】
前記スコアの前記出力写像による原像であるベクトルの成分は、Ｌ側ベクトルとＲ側ベクトルとの連結ベクトルの成分を包含し、
前記Ｌ側ベクトルは、前記抽出用語以前に登場する複数の単語のそれぞれに関する前記単語ベクトルデータ同士の合成および連結の少なくとも一方の演算によって定まるベクトルデータであるＬ側ベクトルデータによって規定され、
前記Ｒ側ベクトルは、前記抽出用語以後に登場する複数の単語のそれぞれに関する前記単語ベクトルデータ同士の合成および連結の少なくとも一方の演算によって定まるベクトルデータであるＲ側ベクトルデータによって規定される請求項１〜７のいずれか１項に記載の校正支援装置。
【請求項９】
前記Ｌ側ベクトルデータを定めるために用いられて且つ前記抽出用語以後に登場する１つの単語に関する前記単語ベクトルデータと、前記Ｒ側ベクトルデータを定めるために用いられて且つ前記抽出用語以後に登場する１つの単語に関する前記単語ベクトルデータとには、対応する単語が同一であっても互いに異なるものが含まれる請求項８記載の校正支援装置。
【請求項１０】
前記単語ベクトルデータの次元は、前記単語集に規定されている単語数よりも小さい請求項１〜９のいずれか１項に記載の校正支援装置。
【請求項１１】
前記記憶装置は、文書の類型に対応付けられたデータを記憶しており、
前記処理回路は、
検査対象となる文書の類型を取得する取得処理を実行し、
前記算出処理は、前記類型に対応づけられたデータに基づき前記出力写像の入力を定める類型入力生成処理を含む請求項１０記載の校正支援装置。
【請求項１２】
前記出力写像データは、学習用の文書の各単語を、当該単語が前記対象用語であるか否かにかかわらず、教師データとし、当該教師データ以前に登場する１または複数の単語の前記単語ベクトルデータと、該教師データ以後に登場する１または複数の単語の前記単語ベクトルデータとを特徴量として学習されたデータである請求項１〜１１のいずれか１項に記載の校正支援装置。
【請求項１３】
請求項１〜１２のいずれか１項に記載の前記各処理をコンピュータによって実行させる校正支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書の校正を支援する校正支援装置、および校正支援プログラムに関する。
【背景技術】
【０００２】
たとえば、下記非特許文献１には、各単語の適切なベクトル表記を学習するアルゴリズムが記載されている。ここでは、単語数Ｖに応じた１−ｏｆ−Ｖ符号化法によって符号化された単語ベクトルを、単語数よりも小さいＮ次元のベクトルに変換する第１の線形写像と、同線形写像の出力するＮ次元ベクトルをＶ次元ベクトルに変換する第２の線形写像とを用いる。そして、文書中の特定の単語の前後のいくつかの単語を、第１の線形写像によって、Ｎ次元ベクトルに変換したものの和を第２の線形写像の入力とし、第２の線形写像の出力値によって、各単語のスコアを算出する。そして、上記特定の単語のスコアが最も大きくなるように、第１の線形写像および第２の線形写像のそれぞれを規定するパラメータを調整する。これにより、第１の線形写像の出力するＮ次元ベクトルを、単語の意味内容が適切に定量化されたベクトルとすることができる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Tomas Mikolovら「Efficient Estimation of Word Representations in Vector Space」International Conference on Learning Representations 2013（https://arxiv.org/abs/1301.3781）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記学習によって得られることとなるＮ次元ベクトルは、類似する単語同士で、対応するベクトルのなす角度が小さくなるなど、メリットを有するものの、文書中の用語の用法が適切であるか否かを検査するうえでは、必ずしも十分な情報となっていない。
【課題を解決するための手段】
【０００５】
以下、上記課題を解決するための手段およびその作用効果について記載する。
１．校正支援装置は、単語集に関するデータであって該単語集に含まれるそれぞれの単語に対応する単語ベクトルデータを規定するためのデータである単語特定データと、前記単語集に含まれる単語の一部によって構成されて且つ検査対象とされる用語である対象用語を規定するデータである検査対象データと、前記対象用語以前および以後に登場する単語に応じたデータを入力として前記対象用語が適切である可能性の大小を表現するスコアを出力する出力写像を規定するデータである出力写像データと、が記憶された記憶装置と、入力された文の中から前記対象用語を抽出し、当該抽出した対象用語である抽出用語以前に登場する１または複数の単語に関する前記単語特定データに応じた前記単語ベクトルデータと、該抽出用語以降に登場する１または複数の単語のそれぞれに関する前記単語特定データに応じた前記単語ベクトルデータとを用いて前記出力写像の入力ベクトルデータを生成し、該入力ベクトルデータと前記出力写像データとに基づき、前記スコアを算出する算出処理と、前記スコアに基づき、前記抽出用語の適切性の判定結果を通知する通知処理と、を実行する処理回路と、を備える。
【０００６】
上記構成では、出力写像が、抽出用語が適切である可能性の大小を表現するスコアを出力するため、抽出用語が適切であるか否かを適切に評価することができ、ひいては、適切性の判定結果を通知することにより文書の校正を支援することができる。特に、上記構成では、対象用語が、単語集の全単語よりも少ない単語によって構成され、また予め定められているため、全単語を対象用語とする場合と比較すると、１つの文書の検査のための演算負荷を軽減できる。
【０００７】
２．上記１記載の校正支援装置において、前記出力写像は、前記単語集に含まれる単語であって前記対象用語を構成する単語よりも多くの単語のそれぞれのスコアを出力するものであり、前記通知処理は、前記出力されたスコアのうち、前記抽出用語のスコアを選択して評価する選択処理を含む。
【０００８】
上記構成では、対象用語を構成する単語よりも多くの単語のそれぞれのスコアが出力写像によって出力されるため、対象用語が追加された場合であっても、その対象用語を構成する単語が出力に含まれているなら、出力写像データを新たに更新することなく、追加された対象用語のスコアを算出することができる。
【０００９】
３．上記２記載の校正支援装置において、前記検査対象データは、前記対象用語のいくつかが互いに関連した関連用語であることを規定するデータである関連規定データを含み前記通知処理は、前記抽出用語のスコアと、該抽出用語に関連した前記関連用語のスコアとの選択的な大小比較に基づき、前記抽出用語のスコアに対する前記関連用語のスコアの相対的な大きさが所定以上である場合に、前記抽出用語が誤りである可能性がある旨の注意喚起をする喚起処理を含む。
【００１０】
上記構成では、関連用語のスコアと抽出用語のスコアとの選択的な大小比較に基づき、抽出用語が誤りである可能性がある旨の注意喚起をするため、関連用語同士を互いに間違いやすい用語とすることにより、出力写像の全ての値の大小比較に基づく場合と比較して、検査対象を絞り込むことができる。このため、通知内容の精度を高めることができる。
【００１１】
４．上記２記載の校正支援装置において、前記検査対象データは、前記対象用語のいくつかが互いに関連した関連用語であることを規定するデータである関連規定データを含み前記通知処理は、前記抽出用語のスコアと、該抽出用語に関連した前記関連用語のスコアとの選択的な大小比較に基づき、前記抽出用語のスコアに対する前記関連用語のスコアの相対的な大きさが規定以上である場合に、当該関連用語が適切である可能性がある旨通知する代替案通知処理を含む。
【００１２】
上記構成では、関連用語のスコアが大きい場合に、関連用語が適切である可能性がある旨通知することにより、クライアントが用語を修正する支援をすることができる。特に、関連用語は関連規定データによって規定された用語であるため、スコアが大きい任意の単語を適切である可能性がある旨通知する場合と比較すると、通知した用語が実際に適切である可能性を高めることができる。
【００１３】
５．上記２〜４のいずれか１つに記載の校正支援装置において、前記算出処理は、前記抽出用語が複合語である場合、前記出力写像の出力のうち前記抽出用語を構成する単語のスコアに基づき、前記抽出用語のスコアを算出する。
【００１４】
上記構成では、抽出用語が複合語である場合、抽出用語を構成する単語のスコアに基づき抽出用語のスコアを算出することにより、各単語のスコアを出力する出力写像を用いつつも、複合語のスコアを算出することができる。
【００１５】
６．上記１〜４のいずれか１つに記載の校正支援装置において、前記処理回路は、外部からの要求に応じて前記検査対象データを更新することによって前記対象用語を新たに登録する登録処理を実行する。
【００１６】
上記構成では、対象用語を追加することができるため、クライアントが検査対象データによって規定された対象用語に不足を感じる場合に、これに対処することができる。
７．上記１〜６のいずれか１つに記載の校正支援装置において、前記処理回路は、前記通知処理に対し、前記抽出用語の適切性の判定結果に対する修正要求を受け付ける受付処理と、前記修正要求を受け付けた場合、修正対象となった文書を前記記憶装置に記憶させる記憶処理と、を実行する。
【００１７】
上記構成では、修正要求を受信することによって、通知処理の内容をクライアントが受け入れない場合に、そのフィードバックを受けることができる。そして、修正対象となった文書を記憶装置に記憶させることにより、出力写像等の更新処理に役立てることができる。
【００１８】
８．上記１〜７のいずれか１つに記載の校正支援装置において、前記スコアの前記出力写像による原像であるベクトルの成分は、Ｌ側ベクトルとＲ側ベクトルとの連結ベクトルの成分を包含し、前記Ｌ側ベクトルは、前記抽出用語以前に登場する複数の単語のそれぞれに関する前記単語ベクトルデータ同士の合成および連結の少なくとも一方の演算によって定まるベクトルデータであるＬ側ベクトルデータによって規定され、前記Ｒ側ベクトルは、前記抽出用語以後に登場する複数の単語のそれぞれに関する前記単語ベクトルデータ同士の合成および連結の少なくとも一方の演算によって定まるベクトルデータであるＲ側ベクトルデータによって規定される。
【００１９】
上記構成では、原像であるベクトルがＬ側ベクトルとＲ側ベクトルとの連結ベクトルを包含するため、抽出用語以前の単語であるのか以後の単語であるのかの情報に基づきスコアを算出することができる。このため、原像であるベクトルがＬ側ベクトルとＲ側ベクトルとの和を包含する場合と比較すると、スコアの精度を向上させることができる。
【００２０】
９．上記８記載の校正支援装置において、前記Ｌ側ベクトルデータを定めるために用いられて且つ前記抽出用語以後に登場する１つの単語に関する前記単語ベクトルデータと、前記Ｒ側ベクトルデータを定めるために用いられて且つ前記抽出用語以後に登場する１つの単語に関する前記単語ベクトルデータとには、対応する単語が同一であっても互いに異なるものが含まれる。
【００２１】
上記構成では、同一の単語であっても、それが抽出用語以前に出現する場合と以後に出現する場合とで、対応するベクトルが異なることを許容することにより、抽出用語以前の単語であるのか以後の単語であるのかの情報を表現しやすい。
【００２２】
１０．上記１〜９のいずれか１つに記載の校正支援装置において、前記単語ベクトルデータの次元は、前記単語集に規定されている単語数よりも小さい。
上記構成では、単語ベクトルデータの次元が、単語集に規定されている単語数よりも小さいため、単語数と同一の次元の場合と比較すると、出力写像のパラメータ数を低減することができ、ひいては、十分な学習がなされるうえで要求される学習データ数を軽減することができる。
【００２３】
なお、上記８〜１０に記載の校正支援装置は、前記単語ベクトルデータは、圧縮ベクトルデータであり、該圧縮ベクトルデータよりも次元数が大きい非圧縮ベクトルデータを用いて学習処理によって学習されたものであり、前記学習処理は、教師データとなる単語以前に登場する１または複数の単語に応じた前記非圧縮ベクトルデータを入力とし前記圧縮ベクトルデータを出力するＬ側圧縮写像を規定するデータであるＬ側圧縮写像データと、前記教師データとなる単語以後に登場する１または複数の前記非圧縮ベクトルデータを入力とし前記圧縮ベクトルデータを出力するＲ側圧縮写像を規定するデータであるＲ側圧縮写像データと、を前記圧縮ベクトルデータとして学習するものであり、前記教師データとなる単語以前に登場する複数の単語のそれぞれに関する前記非圧縮ベクトルデータのそれぞれを入力とする前記Ｌ側圧縮写像の出力に基づき、前記Ｌ側ベクトルデータを算出するＬ側圧縮算出処理と、前記教師データとなる単語以後に登場する複数の単語のそれぞれに関する前記非圧縮ベクトルデータのそれぞれを入力とする前記Ｒ側圧縮写像の出力に基づき、前記Ｒ側ベクトルデータを算出するＲ側圧縮算出処理と、前記Ｌ側ベクトルデータと前記Ｒ側ベクトルデータとに基づき生成されたベクトルを前記出力写像の入力として、前記出力写像の出力する前記スコアのうち前記教師データとなる単語のスコアを大きくするように学習する処理とがコンピュータによって実行される処理であるとしてもよい。
【００２４】
１１．上記１０記載の校正支援装置において、前記記憶装置は、文書の類型に対応付けられたデータを記憶しており、前記処理回路は、検査対象となる文書の類型を取得する取得処理を実行し、前記算出処理は、前記類型に対応づけられたデータに基づき前記出力写像の入力を定める類型入力生成処理を含む。
【００２５】
上記構成では、類型に対応付けられたデータに基づき出力写像の入力を定めることにより、スコアを出力する際に利用する情報量を増加させることができ、ひいてはスコアの算出精度を向上させることができる。
【００２６】
１２．上記１〜１１のいずれか１つに記載の校正支援装置において、前記出力写像データは、学習用の文書の各単語を、当該単語が前記対象用語であるか否かにかかわらず、教師データとし、当該教師データ以前に登場する１または複数の単語の前記単語ベクトルデータと、該教師データ以後に登場する１または複数の単語の前記単語ベクトルデータとを特徴量として学習されたデータである。
【００２７】
上記構成では、学習に際しては、対象用語以外の単語についても教師データに用いることにより、出力写像の出力するスコアの精度を向上させることができる。
１３．上記１〜１２のいずれか１つに記載の前記各処理をコンピュータによって実行させる校正支援プログラム。
【図面の簡単な説明】
【００２８】
【図１】第１の実施形態にかかる校正支援装置およびこれに接続されるネットワークを示す図。
【図２】同実施形態にかかる類型を示す図。
【図３】同実施形態においてウェブブラウザが実行する処理の手順を示す図。
【図４】同実施形態にかかるクライアント側装置内の表示例を示す図。
【図５】同実施形態にかかるサーバ側装置が実行する前処理の手順を示す流れ図。
【図６】同実施形態にかかるサーバ側装置が実行する校正支援処理の手順を示す流れ図。
【図７】上記校正支援処理の一部の詳細な手順を示す流れ図。
【図８】第２の実施形態にかかるサーバ側装置が実行する処理の手順を示す流れ図。
【発明を実施するための形態】
【００２９】
＜第１の実施形態＞
以下、校正支援装置にかかる第１の実施形態について図面を参照しつつ説明する。なお、以下では、「ベクトル」を、列ベクトルとし、図７においては、スペースの都合上、行ベクトルを記載する場合には、転置記号を表記しているが、本明細書では、便宜上、行ベクトルを転置記号なしで用いる。また、本明細書では、ｎ行ｍ列の行列を、行列ａｉｊ（ｉ＝１〜ｎ，ｊ＝１〜ｍ）と記載し、また、その行列の成分について、成分ａｉｊと記載し、いずれを示しているかを、記号の前に付与された単語が「行列」であるか「成分」であるかによって指定する。
【００３０】
図１に示すシステムは、法律文書のうち特に契約文書の校正を支援するためのシステムである。図１に示すように、クライアント側装置１０は、ＣＰＵ１２、ＲＯＭ１４、ＬＣＤやＬＥＤ等の表示装置１６、キーボードやマウス等の操作部１８、通信機２０を備えており、それらがネットワーク２２を介して接続されている。
【００３１】
クライアント側装置１０は、通信機２０によって外部のネットワーク３０を介してサーバ側装置４０と通信可能となっている。
サーバ側装置４０は、ＣＰＵ４２、記憶装置４４および通信機４６を備えており、それらがネットワーク４８を介して互いに接続されている。サーバ側装置４０は、通信機４６によって外部のネットワーク３０を介してクライアント側装置１０と通信可能となっている。
【００３２】
記憶装置４４は、たとえば電気的に書き換え可能な不揮発性メモリや、ハードディスク等を備えている。そして記憶装置４４には、校正支援プログラム５０や、前処理プログラム５２、単語特定データ５４、検査対象データ５６、写像データ５８、類型データ６０が記憶されている。ここで、単語特定データ５４は、サーバ側装置４０によって扱うことができる単語集を規定する単語ＩＤのデータが含まれる。本実施形態では、各単語に、「１」から連番で、互いに別の数字がＩＤとして付与されている。なお、本実施形態では、読点も１つの単語とみなす。
【００３３】
また、検査対象データ５６は、検査対象となる契約文書内において、その用語が適切に用いられているか否かの検査対象となる用語である対象用語を規定するデータである対象用語規定データを含む。また、検査対象データ５６は、対象用語のうちのいくつかが互いに関連した関連用語であることを規定するデータである関連用語規定データを含む。ここで、互いに関連する関連用語とは、特に互いに間違って用いられやすい用語である。すなわち、たとえば対象用語規定データによって、「もの、物、者、違約金、損害金、とき、時、場合」等が対象用語として規定されており、関連用語規定データによって、「もの、物、者」が互いに関連用語であることや、「違約金、損害金」が互いに関連用語であること、「とき、時、場合」が互いに関連用語であることが規定されている。
【００３４】
さらに、類型データ６０は、契約文書をカテゴリ化して細分化するためのデータである。図２に、本実施形態において類型データ６０によって細分化された各カテゴリを示す。本実施形態では、大分類として、「物」に関する契約書であるのか、「債権」に関する契約書であるのか等、８つの分類がなされ、各大分類は、更に、３つの異なるカテゴリに分類される。このため、本実施形態では、契約文書が２４種類の類型に分類されるが、クライアントが契約書の類型を通知しない場合を考慮して、類型データ６０によって、「類型入力なし」を意味するもう１種類の類型をも規定する。
【００３５】
クライアント側装置１０からサーバ側装置４０にアクセスがあり、クライアント側装置１０からサーバ側装置４０に入力されたクライアントＩＤとパスワードとが正規のものであると判定される場合、クライアント側装置１０において、ウェブブラウザによって、以下の処理が実行される。
【００３６】
図３に、ウェブブラウザの処理の手順を示す。この処理は、ＣＰＵ１２が、ウェブブラウザの指令を実行することにより実現される。なお、以下では、先頭に「Ｓ」が付与された数字によって、各処理のステップ番号を表現する。
【００３７】
図３に示す一連の処理において、ＣＰＵ１２は、まず表示装置１６に、検査を希望する契約文書を入力するための画面を表示する（Ｓ１０）。なお、ここでは、検査を希望する契約文書以外に、その契約文書の類型も入力可能となっている。これに対し、クライアントが操作部１８を操作して検査を希望する契約文書をドラッグアンドドロップ等によって入力したり、類型を選択したりすると、ＣＰＵ１２は、入力された文書をサーバ側装置４０に送信する（Ｓ１２）。次に、ＣＰＵ１２は、サーバ側装置４０から、文書中の用語の評価結果を受信し、表示装置１６に視覚情報として表示する（Ｓ１４）。
【００３８】
図４に、表示装置１６への評価結果の表示例を示す。図４の左側には、検査対象とする契約文書が表示されており、右側には、用語の使い方について検討した方が良い点（評価結果）が表示されている。特に、図４には、クライアントが評価結果のうちの［６］を選択した場合を例示している。この場合、契約文書中の該当用語である「場合」がハイライト表示される。対象用語である「場合」には、関連用語規定データによって「とき」と「時」とが関連用語として規定されている。サーバ側装置４０は、契約文書中の「場合」を抽出用語として抽出すると、これに関連する関連用語と抽出用語との相対的な適切性（正解確率）を算出する。図４には、表示装置１６に、関連用語である「とき」の正解確率が「６０％」であり、「場合」の正解確率が「３５％」であり、「時」の正解確率が「５％」である例を示している。この場合には、抽出用語よりもその関連用語である「とき」の方が正解確率が高いため、契約文書の左側の［６］の欄に、『「とき」へ変更することをおすすめします』という表示をしている。
【００３９】
クライアントは、こうした表示に基づき、評価結果が妥当であると考える場合、用語を修正することとなる。これに対し、クライアントが評価結果が妥当ではないと考える場合、提案を拒否するが、この際、クライアントは評価結果の修正要求（フィードバック情報）をサーバ側装置４０に通知することができる。すなわち、たとえば［６］の欄を右クリックすると、「修正要求出力」というタスクが表示され、クライアントが「修正要求出力」というタスクを選択することにより、フィードバック情報をサーバ側装置４０に通知することができる。
【００４０】
詳しくは、図３に戻り、ＣＰＵ４２は、修正要求があるか否かを判定し（Ｓ１６）、あると判定する場合（Ｓ１６：ＹＥＳ）、通信機２０によって、ネットワーク３０を介してサーバ側装置４０に修正データを出力する（Ｓ１８）。ここで、修正データは、提案が拒否された対象用語を規定するデータのみならず、契約文書に関するデータが含まれる。
【００４１】
ＣＰＵ４２は、Ｓ１８の処理を完了する場合や、Ｓ１６の処理において否定判定する場合には、図３に示す一連の処理を一旦終了する。
図５に、検査対象となる文書が入力されることにより、サーバ側装置４０によって実行される処理の手順を示す。図５に示す処理は、ＣＰＵ４２が、前処理プログラム５２を実行することにより実現される。
【００４２】
図５に示す一連の処理において、ＣＰＵ４２は、まず検査対象となる文書を取得する（Ｓ２０）。次に、ＣＰＵ４２は、形態素解析処理によって、文書を、単語に分解する（Ｓ２２）。次にＣＰＵ４２は、単語特定データ５４に基づき、文書中の各単語のＩＤを、文書にその単語が出現する順序を規定するラベルとともに、記憶装置４４に出力する（Ｓ２４）。次に、類型入力があるか否かを判定する（Ｓ２６）。そしてＣＰＵ４２は、類型の入力がないと判定する場合（Ｓ２６：ＮＯ）、類型データとして、類型入力がない旨を示すメタデータを付与する（Ｓ２８）。そして、ＣＰＵ４２は、Ｓ２６の処理において肯定判定する場合や、Ｓ２８の処理が完了する場合には、類型ｗＣを記憶装置４４に出力する（Ｓ３０）。なお、ＣＰＵ４２は、Ｓ３０の処理を完了する場合、図５に示す一連の処理を一旦終了する。
【００４３】
図６に、サーバ側装置４０によって実行される校正支援処理の手順を示す。図６に示す処理は、校正支援プログラム５０をＣＰＵ４２が実行することにより実現される。
図６に示す一連の処理において、ＣＰＵ４２は、まず記憶装置４４にアクセスし、図５のＳ２４の処理によって記憶された単語ＩＤや、Ｓ３０の処理で記憶された類型ｗＣを取得する（Ｓ４０）。次にＣＰＵ４２は、検査対象データ５６に基づき、入力された契約文書中の検査対象とする用語である対象用語の１つを抽出し、これを抽出用語とする（Ｓ４２）。次に、ＣＰＵ４２は、検査対象データ５６に基づき、抽出用語が複合語であるか否かを判定する（Ｓ４４）。そしてＣＰＵ４２は、複合語であると判定する場合（Ｓ４４：ＹＥＳ）、抽出用語を構成する最初の単語を抽出用語に代入する（Ｓ４６）。すなわち、たとえば、抽出用語が「違約金」の場合、「違約」と「金」との複合語であるが、先頭の単語である「違約」を抽出用語であると定義しなおす。
【００４４】
次に、ＣＰＵ４２は、抽出用語ｗ（ｉ）の関連用語ｗＬｉｎｋを抽出する（Ｓ４８）。すなわち、たとえば抽出用語が「違約金」である場合、関連用語ｗＬｉｎｋは、「損害金」となる。この処理においてＣＰＵ４２は、関連用語規定データによって規定されているすべての関連用語ｗＬｉｎｋを抽出するため、抽出用語が「場合」の場合、関連用語ｗＬｉｎｋは、「とき」と「時」となる。なお、関連用語ｗＬｉｎｋが複合語である場合、Ｓ４６の処理と同様に、関連用語を、それを構成する最初の単語であると定義しなおすこととする。すなわち、関連用語ｗＬｉｎｋが「損害金」である場合、ＣＰＵ４２は、Ｓ４８の処理において、関連用語ｗＬｉｎｋを「損害」であると定義しなおす。
【００４５】
次にＣＰＵ４２は、抽出用語ｗ（ｉ）の前に出現するＤ個の単語ｗ（ｉ−Ｄ），…，ｗ（ｉ−１）と、抽出用語ｗ（ｉ）以後に出現するＤ個の単語ｗ（ｉ＋１），…，ｗ（ｉ＋Ｄ）とを抽出する（Ｓ５０）。なお、抽出用語ｗ（ｉ）がたとえば「違約金」である場合、単語ｗ（ｉ＋１）は、Ｓ４６の処理によって抽出用語ｗ（ｉ）から排除された「金」となることから、「抽出用語ｗ（ｉ）の後に出現するＤ個の単語」と記載する代わりに、「抽出用語ｗ（ｉ）以後に出現するＤ個の単語」と記載した。
【００４６】
ただし、ここで抽出する単語は、全て抽出用語ｗ（ｉ）と同一文中の単語とする。すなわち、図４に例示したように、抽出用語ｗ（ｉ）が「場合」であって、それが、「前項の融資が否認された場合、…」という文に含まれているケースでは、「Ｄ＝７」の場合、「前項」、「の」、「融資」、「が」、「否認」、「され」、「た」の７個の単語が、単語ｗ（ｉ−Ｄ），…，ｗ（ｉ−１）として抽出される。しかし、「Ｄ＝８」の場合、抽出用語ｗ（ｉ）が含まれる文中であって抽出用語ｗ（ｉ）の前に８個の単語が存在しないため、ＣＰＵ４２は、単語ｗ（ｉ−Ｄ）については、それ以上単語が存在しないことを示すメタ単語を付与する。なお、このメタ単語には、単語特定データ５４によって単語ＩＤが規定されているものとする。
【００４７】
そして、ＣＰＵ４２は、抽出用語ｗ（ｉ）と、関連用語ｗＬｉｎｋとの相対的な正解確率を算出する（Ｓ５２）。
図７に、Ｓ５２の処理の詳細を示す。
【００４８】
図７に示す一連の処理において、ＣＰＵ４２は、まず、類型ベクトル（ｖＣ１，…，ｖＣＮ）を算出する（Ｓ７０）。次に、ＣＰＵ４２は、抽出用語ｗ（ｉ）の前に出現するＤ個の単語ｗ（ｉ−Ｄ），…，ｗ（ｉ−１）と、抽出用語ｗ（ｉ）以後に出現するＤ個の単語ｗ（ｉ＋１），…，ｗ（ｉ＋Ｄ）との２Ｄ個の単語のそれぞれを、１−ｏｆ−Ｖ符号化法によって符号化し、Ｖ次元ベクトルとする（Ｓ７２）。これにより、各単語に対応するＶ次元ベクトルは、１つの成分のみが「１」であり、残りの成分が「０」となるベクトルとなる。ここで、ＣＰＵ４２は、各単語の単語ＩＤの数字に対応するベクトルの成分が「１」であるようにＶ次元ベクトルに符号化するものとする。すなわち、たとえば、単語ｗ（ｉ−１）が「に」であり、その単語ＩＤが「１００」である場合、「に」に対応するＶ次元ベクトルは、第１００番目の成分ｖ（ｉ−１）１００のみが「１」となり、残りがゼロとなる。
【００４９】
次にＣＰＵ４２は、抽出用語ｗ（ｉ）の前に出現するＤ個の単語ｗ（ｉ−Ｄ），…，ｗ（ｉ−１）のそれぞれに対応するＤ個のＶ次元ベクトルを、Ｌ側圧縮写像を用いて、Ｄ個のＬ側投影ベクトル（ＰｖＬ（ｍ）１，…，ＰｖＬ（ｍ）Ｎ）に変換する（Ｓ７４）。ここで、「ｍ＝ｉ−Ｄ，…，ｉ−１」である。Ｌ側圧縮写像は、記憶装置４４に記憶されている写像データ５８のうちのＬ側圧縮行列ｗＬｉｊ（ｉ＝１〜Ｎ，ｊ＝１〜Ｖ）の成分に関するデータであるＬ側圧縮写像データによって規定される。ここで、Ｌ側投影ベクトルは、Ｎ次元ベクトルであり、「Ｎ」は、「Ｖ」の「１／１０」以下、望ましくは、「１／１００」以下である。
【００５０】
また、ＣＰＵ４２は、抽出用語ｗ（ｉ）以後に出現するＤ個の単語ｗ（ｉ＋１），…，ｗ（ｉ＋Ｄ）のそれぞれに対応するＤ個のＶ次元ベクトルを、Ｒ側圧縮写像を用いて、Ｄ個のＲ側投影ベクトル（ＰｖＲ（ｎ）１，…，ＰｖＲ（ｎ）Ｎ）に変換する（Ｓ７４）。ここで、「ｎ＝ｉ＋１，…，ｉ＋Ｄ」である。Ｒ側圧縮写像は、記憶装置４４に記憶されている写像データ５８のうちのＲ側圧縮行列ｗＲｉｊ（ｉ＝１〜Ｎ，ｊ＝１〜Ｖ）の成分に関するデータであるＲ側圧縮行列データによって規定される。ここで、Ｒ側投影ベクトルは、Ｎ次元ベクトルである。なお、同一の単語に対応する、Ｌ側投影ベクトルとＲ側投影ベクトルとは、必ずしも互いに一致するベクトルとは限らない。これについては、後に詳述する。
【００５１】
次に、ＣＰＵ４２は、Ｄ個のＬ側投影ベクトルを互いに加算して「Ｄ」で除算することによってＬ側合成ベクトル（ＡｖＬ１，…，ＡｖＬＮ）を算出し、Ｄ個のＲ側投影ベクトルを互いに加算して「Ｄ」で除算することによってＲ側合成ベクトル（ＡｖＲ１，…，ＡｖＲＮ）を算出する（Ｓ７６）。
【００５２】
次にＣＰＵ４２は、Ｌ側合成ベクトルと、Ｒ側合成ベクトルと、類型ベクトルとの連結によって構成されるベクトルを入力とし、出力写像によってＶ次元の出力ベクトルを出力する（Ｓ７８）。ここで、出力写像は、写像データ５８に含まれる出力行列ｗＯｉｊ（ｉ＝１〜Ｖ，ｊ＝１〜３Ｎ）によって規定される。ここで、Ｌ側合成ベクトルと、Ｒ側合成ベクトルと、類型ベクトルとの連結によって構成されるベクトルは、３Ｎ次元を有し、その第１成分から第Ｎ成分が、Ｌ側合成ベクトルの成分であり、第（Ｎ＋１）成分から第２Ｎ成分が、Ｒ側合成ベクトルの成分である。そして、出力ベクトルの第ｉ成分は、以下の３つの内積（ア）、内積（イ）および内積（ウ）の和となる。内積（ア）は、出力行列ｗＯｉｊによって規定されるＮ次元ベクトル（ｗＯｉ１，…，ｗＯｉＮ）とＬ側合成ベクトルとの内積である。内積（イ）は、出力行列ｗＯｉｊによって規定されるＮ次元ベクトル（ｗＯｉ（Ｎ＋１），…，ｗＯｉ２Ｎ）とＲ側合成ベクトルとの内積である。内積（ウ）は、出力行列ｗＯｉｊによって規定されるＮ次元ベクトル（ｗＯｉ（２Ｎ＋１），…，ｗＯｉ３Ｎ）と類型ベクトルとの内積である。
【００５３】
ここで、出力ベクトル（ｖＯ１，…，ｖＯＶ）の第ｉ成分ｖＯｉは、単語ＩＤが「ｉ」である単語が、抽出用語として適切である可能性の大小を示すスコアを示す。ここで、スコアは、数値が大きい場合に小さい場合よりも可能性が大きいことを表現する。
【００５４】
次にＣＰＵ４２は、出力ベクトルの成分ｖＯ１，…，ｖＯＶを、ソフトマックス関数によって規格化し、特に、抽出用語ｗ（ｉ）と関連用語ｗＬｉｎｋとのそれぞれに対応する成分のみを規格化されたスコアである規格化スコアＣｓ，Ｃｔ１，Ｃｔ２，…として算出する（Ｓ８０）。ここでは、１−ｏｆ−Ｖ符号化した場合、抽出用語ｗ（ｉ）は、第ｓ成分が「１」となり、残りがゼロとなると想定しており、関連用語ｗＬｉｎｋは、第ｔ１成分が「１」となり、残りがゼロとなるものや、第ｔ２成分が「１」となり、残りがゼロとなるものを想定している。
【００５５】
次にＣＰＵ４２は、抽出用語ｗ（ｉ）と関連用語ｗＬｉｎｋとのそれぞれの正解確率ｐｓ，ｐｔ１，ｐｔ２，…の和が「１」となるように規格化処理を実行する（Ｓ８２）。すなわち、ソフトマックス関数を用いる場合、Ｖ個の成分のそれぞれの規格化スコアの和が「１」となるように規格化されるため、たとえば図４に示した「とき」のスコアが「０．０００００１」等、非常に小さい値となりうる。このため、クライアントに提示する情報をよりわかりやすいものとすべく、ここでは、規格化処理を実行する。なお、抽出用語ｗ（ｉ）の関連用語が１つしかない場合、図７のＳ８０の処理において規格化スコアＣｔ２，…は、定義されておらず、Ｓ８２の処理において正解確率ｐｔ２，…は、定義されていない。
【００５６】
ＣＰＵ４２は、Ｓ８２の処理が完了する場合、図６のＳ５２の処理を完了する。
図６に戻り、ＣＰＵ４２は、契約文書中の全対象用語を抽出したか否かを判定する（Ｓ５４）。そしてＣＰＵ４２は、未だ全ては抽出していないと判定する場合（Ｓ５４：ＮＯ）、Ｓ４２の処理に戻る。これに対しＣＰＵ４２は、全てを抽出したと判定する場合（Ｓ５４：ＹＥＳ）、抽出用語の正解確率ｐｓを、関連用語の正解確率ｐｔαが上回るものがあるか否かを判定する（Ｓ５６）。この処理は、クライアントに修正の提案をすべき箇所があるか否かを判定する処理である。
【００５７】
ＣＰＵ４２は、上回るものがあると判定する場合（Ｓ５６：ＹＥＳ）、図４に例示した各正解確率のグラフデータや、図４に示した契約文書の右側のコメント欄等のデータである表示データを作成する（Ｓ５８）。
【００５８】
ＣＰＵ４２は、Ｓ５８の処理を完了する場合や、Ｓ５６の処理において否定判定する場合には、検査結果を送信する（Ｓ６０）。ここで、ＣＰＵ４２は、Ｓ５６の処理において否定判定する場合には、検査が終了した旨の情報のみを出力する。
【００５９】
次にＣＰＵ４２は、図３のＳ１８の処理が実行されたか否かを、換言すれば、修正要求があるか否かを判定する（Ｓ６２）。そしてＣＰＵ４２は、修正要求があると判定する場合（Ｓ６２：ＹＥＳ）、修正データを受信し、記憶装置４４に記憶させる（Ｓ６４）。
【００６０】
なお、ＣＰＵ４２は、Ｓ６４の処理が完了する場合や、Ｓ６２の処理において否定判定する場合には、図６に示す一連の処理を一旦終了する。
ちなみに、出力行列ｗＯｉｊや、Ｌ側圧縮行列ｗＬｉｊ、Ｒ側圧縮行列ｗＲｉｊは、次のようにして学習されたものである。すなわち、学習対象となる契約文書の各単語を抽出用語として、Ｓ７０〜Ｓ７８の処理によって出力ベクトルを求めた後、ソフトマックス関数によって、各成分の規格化スコアを算出する。そして、規格化スコアに基づき、ソフトマックスクロスエントロピーを算出し、これを最小化する。ここで、ソフトマックスクロスエントロピーは、規格化スコアＣ１，…，ＣＶのそれぞれに対するラベル変数ｌ１，…，ｌＶを用いて、−ｌ１・ＬｏｇＣ１−…−ｌＶ・ＬｏｇＣＶとなる。ここで、ラベル変数ｌｐ（ｐ＝１〜Ｖ）は、正解の単語のみ「１」、それ以外が「０」となる。
【００６１】
具体的には、ソフトマックスクロスエントロピーの出力行列ｗＯｉｊの成分による偏微分係数を算出するとともに、誤差逆伝搬法によって、ソフトマックスクロスエントロピーのＬ側圧縮行列ｗＬｉｊの成分による偏微分係数やＲ側圧縮行列ｗＲｉｊの成分による偏微分係数を算出する。そして、たとえばＡｄａｍ（Ａｄａｐｔｉｖｅ  ｍｏｍｅｎｔ  ｅｓｔｉｍａｔｉｏｎ)に基づき、出力行列ｗＯｉｊや、Ｌ側圧縮行列ｗＬｉｊ、Ｒ側圧縮行列ｗＲｉｊを更新する。
【００６２】
このように、本実施形態では、Ｌ側圧縮行列ｗＬｉｊとＲ側圧縮行列ｗＲｉｊとを同一としなかったため、上記処理によって更新され最終的に記憶装置４４に記憶されているＬ側圧縮行列ｗＬｉｊとＲ側圧縮行列ｗＲｉｊとは、同一成分のなかに互いに異なる値となるものがありうる。このため、同一の単語に対応する、Ｓ７４の処理によって生成されるＬ側投影ベクトルと、Ｓ７４の処理によって生成されるＲ側投影ベクトルとは、互いに異なるものとなりうる。
【００６３】
ちなみに、学習時には、対象用語のみならず全ての単語を順次教師データとしたのは、その方が、抽出用語ｗ（ｉ）の適切性の算出精度が向上することが発明者によって確認されているためである。
【００６４】
ここで、本実施形態の作用および効果について説明する。
ＣＰＵ４２は、契約文書が入力されると、契約文書を単語に分解し、対象用語を抽出用語として抽出する。そして、ＣＰＵ４２は、抽出用語ｗ（ｉ）の前のＤ個の単語と、抽出用語ｗ（ｉ）以後のＤ個の単語とを入力とし、各単語が抽出用語ｗ（ｉ）として適切である可能性の大小を示すスコアを、出力ベクトルの成分ｖＯ１，…，ｖＯＶとして算出する。このように、契約文書中の全単語を抽出用語とすることなく、対象用語に限って抽出用語としたため、契約文書の検査に要する演算負荷を軽減できる。
【００６５】
また、ＣＰＵ４２は、抽出用語ｗ（ｉ）の適切性を評価する際、全単語の正解確率を算出するのではなく、抽出用語ｗ（ｉ）および関連用語ｗＬｉｎｋに限って正解確率を算出し、それらの選択的な大小比較に応じて抽出用語ｗ（ｉ）の適切性を算出した。このため、全ての単語のスコアの大小比較をする場合と比較すると、演算負荷をいっそう軽減できる。さらに、全ての単語のスコアの大小比較をする場合には、「の」や「は」などの助詞や読点等、スコアが無条件に大きくなるものが出現し、適切性の算出精度が低下しやすいが、抽出用語ｗ（ｉ）と関連用語ｗＬｉｎｋとのそれぞれのスコアの選択的な大小比較をすることにより、算出精度を高めることができる。
【００６６】
以上説明した本実施形態によれば、さらに以下に記載する作用効果が得られる。
（１）１−ｏｆ−Ｖ符号化処理によって生成されたＶ次元ベクトルを、それよりも次元数の小さいＬ側投影ベクトルやＲ側投影ベクトルに変換し、これに基づき、出力写像の入力を定めた。ここで、Ｓ７２の処理によって生成されたＶ次元ベクトルの第ｘ成分が「１」の場合、Ｌ側投影ベクトルは、Ｌ側圧縮行列ｗＬｉｊの第ｘ列のベクトル（ｗＬ１ｘ，…，ｗＬＮｘ）となり、Ｒ側ベクトルは、Ｒ側圧縮行列ｗＲｉｊの第ｘ列ベクトル（ｗＲ１ｘ，…，ｗＲＮｘ）となる。換言すれば、単語ＩＤが「ｘ」の場合、Ｌ側投影ベクトルは、Ｌ側圧縮行列ｗＬｉｊの第ｘ列のベクトル（ｗＬ１ｘ，…，ｗＬＮｘ）となり、Ｒ側ベクトルは、Ｒ側圧縮行列ｗＲｉｊの第ｘ列ベクトル（ｗＲ１ｘ，…，ｗＲＮｘ）となる。Ｌ側圧縮ベクトルやＲ側圧縮ベクトルは、規格化されているわけでもなく、また、互いに異なる単語同士で直交しているわけでもないが、単語の有する情報を低次元に圧縮して表現したベクトルである。このため、１−ｏｆ−Ｖ符号化ベクトルを直接用いて出力写像の入力を定める場合と比較して、出力行列のパラメータ数を低減することができる。すなわち、１−ｏｆ−Ｖ符号化ベクトルを直接用いる場合、出力行列ｗＯｉｊのパラメータ数は、「Ｖ×（２Ｖ＋Ｎ）」となる一方、本実施形態では、「Ｖ×（３Ｎ）」で済む。また、Ｌ側圧縮行列ｗＬｉｊおよびＲ側圧縮行列ｗＲｉｊを含めても、本実施形態のパラメータ数は、「Ｖ×（５Ｎ）」で済む。このため、学習に利用できるデータ量の割に、出力行列ｗＯｉｊの精度を高めることができる。
【００６７】
（２）出力ベクトル（ｖＯ１，…，ｖＯＶ）の出力写像による原像であるベクトルの成分ＡｖＬ１，…，ＡｖＬＮ，ＡｖＲ１，…，ＡｖＲＮ，ｖＣ１，…ｖＣＮが、Ｌ側合成ベクトルとＲ側合成ベクトルとの連結ベクトルの成分ＡｖＬ１，…，ＡｖＬＮ，ＡｖＲ１，…，ＡｖＲＮを包含している。この場合、出力写像を、抽出用語ｗ（ｉ）の前に出現した単語であるのか、抽出用語ｗ（ｉ）以降に出現した単語であるのかの情報に基づき、スコアを算出する写像とすることができる。このため、出力写像が、原像をＬ側合成ベクトルとＲ側合成ベクトルとの合成ベクトルを包含する場合と比較すると、抽出用語ｗ（ｉ）との前後関係の情報を反映できることに起因して、スコアの精度を高めることができる。
【００６８】
（３）Ｌ側圧縮行列とＲ側圧縮行列とを各別の行列とした。このため、同一の単語であっても、Ｌ側投影ベクトルであるのかＲ側投影ベクトルであるのかで、互いに相違するベクトルとなりうる。このため、出力写像の入力を構成する単語ベクトル自体を、抽出用語ｗ（ｉ）の前の単語であるのか以後の単語であるのかの情報を有したものとすることができ、抽出用語ｗ（ｉ）の前であるのか以後であるのかの情報をより良く表現できる。
【００６９】
＜第２の実施形態＞
以下、第２の実施形態について、第１の実施形態との相違点を中心に図面を参照しつつ説明する。
【００７０】
本実施形態では、クライアントが対象用語を追加可能とする。
図８に、上記対象用語の追加にかかる処理の手順を示す。図８に示す処理は、校正支援プログラム５０をＣＰＵ４２が実行することによって実現される。
【００７１】
図８に示す一連の処理において、ＣＰＵ４２は、まず、クライアント側装置１０から送信される信号の有無に基づき、対象用語を新たに登録する要求があるか否かを判定する（Ｓ９０）。ＣＰＵ４２は要求があると判定する場合（Ｓ９０：ＹＥＳ）、検査対象データ５６に、登録の要求が生じた用語を、クライアントＩＤに紐づけて追加する（Ｓ９２）。これは、たとえば、検査対象データ５６に、クライアントＩＤを特定するデータを含めることにより実現できる。
【００７２】
そして、ＣＰＵ４２は、他のクライアントに登録候補がある旨を通知する（Ｓ９４）。なお、ここでは、たとえば自分が登録した対象用語を他のクライアントに通知してもよいか否かの意思表示結果を記憶装置４４に記憶しておき、通知してもよい旨の意思表示結果があるクライアントのみに通知することとしてもよい。
【００７３】
なお、ＣＰＵ４２は、Ｓ９４の処理が完了する場合や、Ｓ９０の処理において否定判定する場合には、図８に示す一連の処理を一旦終了する。
このように、本実施形態では、クライアントが希望すれば対象用語を追加可能となっている。特に、本実施形態では、出力写像が、全単語のスコアを出力する写像であるため、対象用語の追加によって、出力写像を変更する必要が生じない。さらに、出力行列ｗＯｉｊが、文書中の各単語を教師データとして適合された値であるため、対象用語の追加に伴って、新たな学習をしなくても、追加された対象用語の検査を高精度に実行することができる。
【００７４】
＜対応関係＞
上記実施形態における事項と、上記「課題を解決するための手段」の欄に記載した事項との対応関係は、次の通りである。以下では、「課題を解決するための手段」の欄に記載した解決手段の番号毎に、対応関係を示している。［１］単語ベクトルデータは、Ｓ７４の処理によって算出されるベクトルデータに対応し、算出処理は、Ｓ７６〜Ｓ７８の処理に対応する。通知処理は、Ｓ８０，Ｓ８２，Ｓ５６〜Ｓ６０の処理に対応する。校正支援装置は、サーバ側装置４０に対応し、処理回路は、校正支援プログラムを実行するＣＰＵ４２に対応する。［２］選択処理は、Ｓ８０の処理に対応する。［３］喚起処理は、Ｓ５６〜Ｓ６０の処理に対応する。［４］代替案通知処理は、Ｓ５６〜Ｓ６０の処理に対応する。［５］Ｓ４４，Ｓ４６の処理に対応する。［６］登録処理は、Ｓ９２の処理に対応する。［７］受付処理は、Ｓ６２の処理に対応し、記憶処理は、Ｓ６４の処理に対応する。［８］Ｌ側ベクトルは、Ｌ側合成ベクトル（ＡＬｖ１，…，ＡＬｖＮ）に対応し、Ｒ側ベクトルは、Ｒ側合成ベクトル（ＡＲｖ１，…，ＡＲｖＮ）に対応する。［１０］単語ベクトルデータが、Ｓ７４の処理によって生成されるベクトルデータであることに対応する。Ｌ側圧縮算出処理およびＲ側圧縮算出処理は、Ｓ７４，Ｓ７６の処理に対応する。［１１］類型入力生成処理は、Ｓ７８の処理に対応する。［１３］コンピュータは、ＣＰＵ４２に対応する。
【００７５】
＜その他の実施形態＞
なお、本実施形態は、以下のように変更して実施することができる。本実施形態および以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
【００７６】
・「類型について」
上記実施形態では、類型ベクトルの次元を、Ｌ側投影ベクトルやＲ側投影ベクトルの次元と等しくしたがこれに限らない。たとえば、類型の数の次元を有したベクトルとしてもよく、またたとえば類型の数の次元よりも小さい次元を有したベクトルとしてもよい。さらにスカラー量にて定量化してもよい。なお、スカラー量とする場合、上記実施形態やそれらの変形例における類型ベクトルとの連結を、類型を示すスカラー量（１次元ベクトル）との連結と読み替えるものとする。
【００７７】
またたとえば、類型を１−ｏｆ−Ｌ（Ｌは、類型の数）符号化法によって符号化し、符号化したＬ次元ベクトルを入力とし、Ｌ次元よりも小さいＭ次元ベクトルを出力する線形写像の出力を出力写像の入力となる類型ベクトルとしてもよい。この場合、この線形写像についても、Ｌ側圧縮写像データやＲ側圧縮写像データと同様の手法にて学習すればよい。また、この場合、線形写像を規定するデータについても記憶装置４４に記憶しておくこととするなら、新たな学習データを入手したときにこの線形写像データを規定するデータについても更新することが容易となる。
【００７８】
・「ベクトルの合成について」
上記実施形態では、Ｌ側合成ベクトルとＲ側合成ベクトルとを、ベクトルの平均値としたが、これに限らない。たとえばＳ７６の処理において、「１／Ｄ」の因子を削除することによって、単にベクトルの和としてもよい。以下では、ベクトルＡとベクトルＢとの合成ベクトルを、ベクトルＡとベクトルＢとの和の定数倍とする。ただし、定数は「０」以外の実数とする。
【００７９】
・「出力写像について」
上記実施形態では、Ｌ側合成ベクトルとＲ側合成ベクトルと類型ベクトルとの連結ベクトルを出力写像の入力としたが、これに限らない。たとえば、類型を参照しないようにしてもよい。これは具体的には、たとえば、以下のようにすればよい。
【００８０】
（ａ）上記実施形態におけるＬ側合成ベクトルとＲ側合成ベクトルとの連結ベクトルを、出力写像の入力とする。この場合、出力行列は、Ｖ行「２Ｎ」列行列となる。
（ｂ）圧縮写像を、Ｌ側とＲ側との２つとするのではなく、Ｌ側の「ｉ−Ｄ」の単語用から「ｉ−１」の単語用までのＤ個の行列と、Ｒ側の「ｉ＋１」の単語用のものから「ｉ＋Ｄ」の単語用のものまでのＤ個の行列との合計２Ｄ個の互いに成分が異なりうる圧縮写像を用いて、抽出用語以前および以後の２Ｄ個の単語ベクトルを生成する。そしてそれら２Ｄ個のＮ次元ベクトルの連結ベクトルを、出力写像の入力とする。この場合、出力行列ｗＯｉｊは、Ｖ行「２ＤＮ」列の行列となる。なお、この場合、抽出用語以前のＤ個の単語に関するＬ側ベクトルデータは、Ｄ個のＮ次元ベクトルの連結ベクトルとなり、抽出用語以後のＤ個の単語に関するＲ側ベクトルデータは、Ｄ個のＮ次元ベクトルの連結ベクトルとなる。
【００８１】
上記（ａ）および（ｂ）は、出力写像が抽出用語以前と以後との情報を識別して入力する写像であって且つ、単語ベクトル自体、位置情報を有する例である。こうした例としては、他にも、たとえば出力写像が単語ベクトルの所定数（＜Ｄ）ずつの情報を識別して入力する写像であって、単語ベクトル自体、所定数毎に、別の圧縮行列から生成されるものとする例等がある。すなわち、たとえば「Ｄ」が偶数で上記所定数が「２」の場合、Ｌ側の「ｉ−Ｄ」の単語と、「ｉ−Ｄ＋１」の単語とは、同一の単語であれば同一のＮ次元ベクトルによって表現されるが、Ｌ側の「ｉ−Ｄ」の単語と、「ｉ−Ｄ＋２」の単語とは、同一の単語であっても、互いに異なるＮ次元ベクトルによって表現されうる。そして、Ｌ側の「ｉ−Ｄ」の単語と、「ｉ−Ｄ＋１」の単語とのそれぞれのＮ次元ベクトルは合成されて、出力写像の入力を構成する。なお、この場合、出力行列ｗＯｉｊは、Ｖ行「ＤＮ」列の行列となる。さらに、互いに同一の数のベクトル同士を合成するものに限らない。たとえば、下記「出力写像の入力に関する単語について」に記載したように、抽出用語が含まれる文に隣接するいくつかの文中の単語をも含めて出力写像の入力を構成する場合、抽出用語から遠いほど、合成するベクトルの数を多くしてもよい。ただし、その場合、ベクトルの合成は、ベクトルの平均とする。
【００８２】
もっとも、出力写像による単語の位置情報の識別能力と、単語ベクトル自体による位置情報の表現能力とが同一である必要もない。たとえば、Ｓ７４の処理によって算出されるＤ個のＬ側投影ベクトルと、Ｄ個のＲ側投影ベクトルとの連結ベクトルを、出力写像の入力としてもよい。この場合、出力行列ｗＯｉｊは、Ｖ行「２ＤＮ」列の行列となる。
【００８３】
また、単語の位置情報を、出力写像と、単語ベクトル自体との双方によって識別させることは必須ではない。たとえば、出力写像に限って、単語の位置情報の識別機能を持たせてもよい。これは、たとえば以下の（ｃ）および（ｄ）等によって実現できる。
【００８４】
（ｃ）Ｌ側圧縮写像とＲ側圧縮写像とを区別せず、Ｖ次元ベクトルをＮ次元ベクトルに圧縮する単一の圧縮写像を用いる。そして、抽出用語以前のＤ個の単語のＶ次元ベクトルが上記圧縮写像によって圧縮されたＤ個のＮ次元ベクトルの合成ベクトルと、抽出用語以後のＤ個の単語のＶ次元ベクトルが上記圧縮写像によって圧縮されたＤ個のＮ次元ベクトルの合成ベクトルとの連結ベクトルを、出力写像の入力とする。この場合も、出力行列は、Ｖ行「２Ｎ」列の行列となる。
【００８５】
（ｄ）Ｌ側圧縮写像とＲ側圧縮写像とを区別せず、Ｖ次元ベクトルをＮ次元ベクトルに圧縮する単一の圧縮写像を用いる。そして、抽出用語以前のＤ個の単語のＶ次元ベクトルが上記圧縮写像によって圧縮されたＤ個のＮ次元ベクトルと、抽出用語以後のＤ個の単語のＶ次元ベクトルが上記圧縮写像によって圧縮されたＤ個のＮ次元ベクトルとの連結ベクトルを、出力写像の入力とする。この場合、出力行列は、Ｖ行「２ＤＮ」列の行列となる。
【００８６】
もっとも、単語の位置情報の反映のさせ方としては、Ｌ側であるかＲ側であるかの２者択一のものと、各単語の位置情報を全て反映させるものとに限らない。たとえば出力写像が単語ベクトルの所定数（＜Ｄ）ずつの情報を識別して入力する写像であってもよい。すなわち、たとえば「Ｄ」が偶数で上記所定数が「２」の場合、Ｌ側の「ｉ−Ｄ」の単語と、「ｉ−Ｄ＋１」の単語とのそれぞれのベクトルの合成ベクトルや、Ｌ側の「ｉ−Ｄ＋２」の単語と、「ｉ−Ｄ＋３」の単語とのそれぞれのベクトルの合成ベクトル等、Ｄ個の合成ベクトルの連結ベクトルを、出力写像の入力としてもよい。なお、この場合、出力行列ｗＯｉｊは、Ｖ行「ＤＮ」列の行列となる。さらに、互いに同一の数のベクトル同士を合成するものに限らない。たとえば、下記「出力写像の入力に関する単語について」に記載したように、抽出用語が含まれる文に隣接するいくつかの文中の単語をも含めて出力写像の入力を構成する場合、抽出用語から遠いほど、合成するベクトルの数を多くしてもよい。ただし、その場合、ベクトルの合成は、ベクトルの平均とする。
【００８７】
さらに、出力写像が複数の単語ベクトルの合成ベクトルを入力とするものであって、単語ベクトルに限って、単語の位置情報を反映可能としてもよい。これは、たとえば、次の（ｅ）および（ｆ）等によって実現できる。
【００８８】
（ｅ）上記実施形態におけるＬ側合成ベクトルとＲ側合成ベクトルとの合成ベクトルを、出力写像の入力とする。この場合、出力行列は、Ｖ行Ｎ列の行列となる。
（ｆ）圧縮写像を、Ｌ側とＲ側との２つとするのではなく、Ｌ側の「ｉ−Ｄ」の単語用から「ｉ−１」の単語用までのＤ個の行列と、Ｒ側の「ｉ＋１」の単語用のものから「ｉ＋Ｄ」の単語用のものまでのＤ個の行列との合計２Ｄ個の互いに成分が異なりうる圧縮写像を用いて、抽出用語以前および以後の２Ｄ個の単語ベクトルを生成する。そしてそれら２Ｄ個のＮ次元ベクトルの合成ベクトルを、出力写像の入力とする。この場合、出力行列ｗＯｉｊは、Ｖ行Ｎ列の行列となる。
【００８９】
もっとも、単語の位置情報の反映のさせ方としては、Ｌ側であるかＲ側であるかの２者択一のものと、各単語の位置情報を全て反映させるものとに限らない。たとえば単語の所定数（＜Ｄ）ずつで、互いに異なる圧縮行列を設けてもよい。すなわち、たとえば「Ｄ」が偶数で上記所定数が「２」の場合、Ｌ側の「ｉ−Ｄ」の単語と、「ｉ−Ｄ＋１」の単語とには、同一の圧縮行列が用いられるが、Ｌ側の「ｉ−Ｄ」の単語と、「ｉ−Ｄ＋２」の単語とでは、成分が異なりうる圧縮行列を用いてもよい。この場合であっても、全ての単語ベクトルの合成ベクトルが出力写像の入力となる以上、出力行列ｗＯｉｊは、Ｖ行Ｎ列の行列となる。
【００９０】
さらに、単語の位置情報を一切反映しなくてもよい。これは、以下の（ｇ）のようにして実現できる。
（ｇ）Ｌ側圧縮写像とＲ側圧縮写像とを区別せず、Ｖ次元ベクトルをＮ次元ベクトルに圧縮する単一の圧縮写像を用いる。そして、抽出用語以前のＤ個の単語のＶ次元ベクトルと抽出用語以後のＤ個の単語のＶ次元ベクトルとが上記圧縮する写像によって圧縮された２Ｄ個のＮ次元ベクトルの合成ベクトルを、出力写像の入力とする。この場合、出力行列は、Ｖ行Ｎ列の行列となる。
【００９１】
また、類型を参照する場合、上記（ａ）〜（ｇ）、更にはそれらの変形例を変更することによって実現できる。ここで、いずれの例であっても、単語に関するベクトルと類型ベクトルとの連結ベクトルを出力写像の入力とすることができる。そしてその場合、出力行列ｗＯｉｊは、列数が、「Ｎ」だけ増加する。しかし類型の反映のさせ方としては、これに限らない。たとえば、類型ベクトルを、上記（ａ）〜（ｇ）やそれらの変形例において出力写像の入力となるベクトルの次元数と同一の次元数を有したベクトルとし、単語に関するベクトルと類型ベクトルとの合成ベクトルを出力写像の入力ベクトルとしてもよい。この場合、類型を加える変更を施すことによっては、出力行列ｗＯｉｊの成分数が変化しない。
【００９２】
出力写像としては、線形写像に限らない。たとえば、上記実施形態における出力ベクトルの成分ｖＯ１，…，ｖＯＶのそれぞれを入力とするＶ個のロジスティックシグモイド関数の出力値が、出力写像の出力となるようにしてもよい。
【００９３】
なお、学習データを十分に確保できるのであれば、Ｓ７２の処理によって生成されるＶ次元ベクトルを直接用いて、出力写像の入力が生成されるようにしてもよい。これを上記実施形態に適用するなら、出力行列ｗＯｉｊは、Ｖ行「２Ｖ＋Ｎ」列の行列となる。
【００９４】
さらに、出力写像としては、単語特定データ５４によって特定される単語のそれぞれのスコアを出力するものに限らない。たとえば、対象用語を構成する単語数よりは多いものの、単語集の全単語よりも少ない単語のそれぞれのスコアを出力するものであってもよい。これは、たとえば、読点やメタ単語に対応するスコアについては、これを出力しないようにすることにより実現できる。これは、出力行列ｗＯｉｊを初めからそのように構成することによって実現してもよいが、たとえば、出力行列ｗＯｉｊの学習は、上記実施形態と同様に行い、その後、読点等に関する成分を除去することによって実現してもよい。すなわち、たとえば読点の単語ＩＤが「α」である場合、出力行列ｗＯｉｊの第α行の成分ｗＯα１，…，ｗＯαＮを削除すればよい。
【００９５】
またたとえば、出力写像が、検象用語のスコアのみを出力する写像であってもよい。これは、たとえば、上記実施形態における出力ベクトルの成分ｖＯ１，…，ｖＯＶのうちの対象用語に対応するものに限って、それらのスコアを出力する写像とすることにより実現できる。
【００９６】
・「出力写像の入力に関する単語について」
上記実施形態では、抽出用語以前の単語および以後の単語であって且つ抽出用語が含まれる文と同一の文中の単語に基づき、出力写像の入力を定めたが、これに限らない。たとえば抽出用語が含まれる文に隣接するいくつかの文中の単語をさらに含めてもよい。
【００９７】
・「圧縮写像について」
Ｌ側圧縮写像データとしては、線形写像に限らない。たとえばＬ側投影ベクトルの各成分ＰｖＬ１，…，ＰｖＬＮのそれぞれを入力とするＮ個のロジスティックシグモイド関数の出力を最終的な出力とする非線形写像であってもよい。
【００９８】
Ｒ側圧縮写像データとしては、線形写像に限らない。たとえばＲ側投影ベクトルの各成分ＰｖＲ１，…，ＰｖＲＮのそれぞれを入力とするＮ個のロジスティックシグモイド関数の出力を最終的な出力とする非線形写像であってもよい。
【００９９】
またたとえば、「出力写像について」の欄の（ｃ）や（ｄ），（ｇ）更にはそれらの変形例に記載したように、圧縮写像を、抽出用語以前の単語と以後の単語とで区別しない写像としてもよい。
【０１００】
・「単語のベクトル表現について」
上記実施形態では、Ｌ側圧縮写像データおよびＲ側圧縮写像データを記憶装置４４に記憶したが、これに限らない。たとえば、単語特定データ５４によって特定される単語ＩＤのそれぞれと、Ｓ７４の処理を得て生成されるＬ側投影ベクトルやＲ側投影ベクトルとを、紐づけて記憶装置４４に記憶しておいてもよい。さらに、単語特定データ５４自体を、Ｓ７４の処理を得て生成されるＬ側投影ベクトルやＲ側投影ベクトルとしてもよい。これらの場合には、Ｓ７２，Ｓ７４の処理は削除される。なお、圧縮写像によって生成される単語ベクトルを単語ＩＤに紐づけて記憶することなどは、上記「出力写像について」の欄の（ａ）〜（ｇ）の変形例やそれらの変形例においても可能である。
【０１０１】
・「抽出用語が複合語の場合について」
上記実施形態では、抽出用語が複合語である場合、そのうちの最初の単語を抽出用語とみなし、その次につながる単語については、写像の入力に加えたがこれに限らない。たとえば、抽出用語が複合語である場合において、用語によっては、そのうちの最後の単語等を抽出用語と見なし、それよりも前の単語については、写像の入力に加えてもよい。なお、抽出用語とみなされなかった単語を写像の入力とすること自体必須ではない。
【０１０２】
またたとえば、抽出用語を構成する単語の全てを、写像の入力から外し、出力写像の出力ベクトルの成分のうち、対象用語を構成する各単語のスコアの平均値を用いて、抽出用語を評価してもよい。
【０１０３】
・「抽出用語の前後の単語について」
上記実施形態では、抽出用語の前後の互いに等しいＤ個の単語を、抽出用語の検査のための入力としたが、これに限らず、抽出用語以前と以後とで、入力とする単語の数を異ならせてもよい。この場合、抽出用語以前のＤ１個の単語と、抽出用語以後のＤ２個の単語とを入力とすることとなり、上記において、「２Ｄ」と記載されている部分は「Ｄ１＋Ｄ２」と読み替えることとする。この際、いずれか一方については、複数でなくてもよい。ただし、その場合、抽出用語が複合語である場合の、抽出用語を構成する単語の一部ではないこととする。
【０１０４】
・「選択処理について」
Ｓ８０の処理においてすべての単語の規格化スコアを算出し、Ｓ５６の処理に代えて、抽出用語の規格化スコアよりも規格化スコアが大きくなる単語があるか否かを判定する処理を実行してもよい。
【０１０５】
・「抽出用語のスコアと関連用語のスコアとの選択的な大小比較について」
上記実施形態では、抽出用語の規格化スコアと関連用語の規格化スコアとを選択的に抽出して大小を比較したが、抽出用語のスコアと関連用語のスコアとの選択的な大小比較としては、これに限らない。たとえば、全単語の規格化スコアを算出するとともに、抽出用語の規格化スコアと関連用語の規格化スコアとのそれぞれに「１」を加算し、規格化スコアのうちの大きいものから選択的に２つを抽出して、正解確率を算出してもよい。
【０１０６】
・「喚起処理について」
上記実施形態では、抽出用語の正解確率ｐｓよりも関連用語の正解確率ｐｔの方が高い場合に、抽出用語が適切ではないかもしれない旨を通知したが、これに限らない。たとえば、抽出用語の正解確率ｐｓから関連用語の正解確率ｐｔの最大値を減算した値がゼロよりも大きい所定量以下である場合に、抽出用語が適切ではないかもしれない旨を通知してもよい。
【０１０７】
・「代替案通知処理について」
上記実施形態では、抽出用語の正解確率ｐｓよりも関連用語の正解確率ｐｔの方が高い場合に、代替案を通知したがこれに限らない。たとえば、抽出用語の正解確率ｐｓから関連用語の正解確率ｐｔの最大値を減算した値がゼロよりも大きい所定量以下である場合に、代替案を通知してもよい。また上記実施形態では、関連用語が複数ある場合、関連用語の全てを通知したがこれに限らない。たとえば正解確率が一番大きいもののみを代替案として通知してもよい。
【０１０８】
・「学習について」
上記実施形態では、学習時には、全単語を順次教師データとして、そのスコアを算出し、スコアに基づくソフトマックスクロスエントロピーを最小化するように、写像データを更新したが、これに限らない。たとえば、ソフトマックスクロスエントロピーに代えて、教師データに対応するスコアと「１」との差と、それ以外のスコアと「０」との差のそれぞれの２乗和を最小とするように、写像データを更新してもよい。またたとえば、全単語を順次教師データとすること自体、必須ではない。
【０１０９】
さらに、圧縮行列と出力写像とを有する場合において、学習時にそれら双方が同一の学習データを用いて更新されること自体必須ではない。たとえば、上記「出力写像について」の欄の（ｃ）および（ｄ）の例において、圧縮行列については、契約文書を含むさらに広範な文書を学習データに用いて、上記（ｇ）のモデルによって更新された成分としてもよい。この場合、圧縮行列の学習後、（ｃ）および（ｄ）のモデルを用いて、契約文書を学習データとして、出力行列のみを学習すればよい。ここで、前半の作業は、位置情報を有しないＮ次元の単語ベクトルの学習となっている。なお、こうした場合であっても、Ｓ６４の処理によって新たに学習データが生成される場合には、上記実施形態において例示した要領で学習を行ってもよい。
【０１１０】
なお、写像データの更新処理としては、Ａｄａｍを用いるものに限らず、たとえば確率的勾配降下法等を用いてもよい。
・「校正支援装置について」
上記実施形態では、サーバ側装置４０によって校正支援装置を構成したが、これに限らない。たとえば、クライアント側装置１０に、校正支援プログラム５０や、前処理プログラム５２、単語特定データ５４および検査対象データ５６をインストールし、クライアント側装置１０によって校正支援装置を構成してもよい。この場合、写像データの更新がなされる場合、更新データをクライアント側装置１０に提供可能としてもよい。
【０１１１】
・「処理回路について」
上記実施形態では、記憶装置４４に記憶されたプログラムを実行するＣＰＵ４２によって、処理回路を実現したが、これに限らない。たとえば、Ｓ７２，Ｓ７４の処理を、ハードウェア処理する専用のハードウェア回路（たとえばＡＳＩＣ等）を備える等、処理回路は、以下の（ａ）〜（ｃ）のいずれかの構成であればよい。（ａ）上記処理の全てを、プログラムに従って実行する処理装置と、プログラムを記憶するプログラム格納装置とを備える。（ｂ）上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。（ｃ）上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア処理回路や、専用のハードウェア回路は複数であってもよい。すなわち、上記処理は、１または複数のソフトウェア処理回路および１または複数の専用のハードウェア回路の少なくとも一方を備えた処理回路によって実行されればよい。
【０１１２】
・「そのほか」
上記実施形態では、中間層が１層のニューラルネットワークの出力がスコアとなるモデルを例示したが、これに限らない。たとえば、中間層が２層以上となるものであってもよい。
【０１１３】
検査対象となる文書としては、契約文書に限らない。
【符号の説明】
【０１１４】
１０…クライアント側装置、１２…ＣＰＵ、１６…表示装置、１８…操作部、２０…通信機、２２…ネットワーク、３０…ネットワーク、４０…サーバ側装置、４２…ＣＰＵ、４４…記憶装置、４６…通信機、４８…ネットワーク、５０…校正支援プログラム、５２…前処理プログラム、５４…単語特定データ、５６…検査対象データ、５８…写像データ、６０…類型データ。
【図１】
2020077269.tif 000003
【図２】
2020077269.tif 000004
【図３】
2020077269.tif 000005
【図４】
2020077269.tif 000006
【図５】
2020077269.tif 000007
【図６】
2020077269.tif 000008
【図７】
2020077269.tif 000009
【図８】
2020077269.tif 000010