JP6701479B2 - 校正支援装置、および校正支援プログラム - Google Patents

校正支援装置、および校正支援プログラム Download PDF

Info

Publication number
JP6701479B2
JP6701479B2 JP2018211019A JP2018211019A JP6701479B2 JP 6701479 B2 JP6701479 B2 JP 6701479B2 JP 2018211019 A JP2018211019 A JP 2018211019A JP 2018211019 A JP2018211019 A JP 2018211019A JP 6701479 B2 JP6701479 B2 JP 6701479B2
Authority
JP
Japan
Prior art keywords
term
data
word
vector
words
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018211019A
Other languages
English (en)
Other versions
JP2020077269A (ja
Inventor
貴大 山腰
貴大 山腰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tokai National Higher Education and Research System NUC
Original Assignee
Tokai National Higher Education and Research System NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tokai National Higher Education and Research System NUC filed Critical Tokai National Higher Education and Research System NUC
Priority to JP2018211019A priority Critical patent/JP6701479B2/ja
Publication of JP2020077269A publication Critical patent/JP2020077269A/ja
Application granted granted Critical
Publication of JP6701479B2 publication Critical patent/JP6701479B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Machine Translation (AREA)

Description

本発明は、文書の校正を支援する校正支援装置、および校正支援プログラムに関する。
たとえば、下記非特許文献1には、各単語の適切なベクトル表記を学習するアルゴリズムが記載されている。ここでは、単語数Vに応じた1−of−V符号化法によって符号化された単語ベクトルを、単語数よりも小さいN次元のベクトルに変換する第1の線形写像と、同線形写像の出力するN次元ベクトルをV次元ベクトルに変換する第2の線形写像とを用いる。そして、文書中の特定の単語の前後のいくつかの単語を、第1の線形写像によって、N次元ベクトルに変換したものの和を第2の線形写像の入力とし、第2の線形写像の出力値によって、各単語のスコアを算出する。そして、上記特定の単語のスコアが最も大きくなるように、第1の線形写像および第2の線形写像のそれぞれを規定するパラメータを調整する。これにより、第1の線形写像の出力するN次元ベクトルを、単語の意味内容が適切に定量化されたベクトルとすることができる。
Tomas Mikolovら「Efficient Estimation of Word Representations in Vector Space」International Conference on Learning Representations 2013(https://arxiv.org/abs/1301.3781)
上記学習によって得られることとなるN次元ベクトルは、類似する単語同士で、対応するベクトルのなす角度が小さくなるなど、メリットを有するものの、文書中の用語の用法が適切であるか否かを検査するうえでは、必ずしも十分な情報となっていない。
以下、上記課題を解決するための手段およびその作用効果について記載する。
1.校正支援装置は、単語集に関するデータであって該単語集に含まれるそれぞれの単語に対応する単語ベクトルデータを規定するためのデータである単語特定データと、前記単語集に含まれる単語の一部によって構成されて且つ検査対象とされる用語である対象用語を規定するデータである検査対象データと、前記対象用語以前および以後に登場する単語に応じたデータを入力として前記対象用語が適切である可能性の大小を表現するスコアを出力する出力写像を規定するデータである出力写像データと、が記憶された記憶装置と、入力された文の中から前記対象用語を抽出し、当該抽出した対象用語である抽出用語以前に登場する1または複数の単語に関する前記単語特定データに応じた前記単語ベクトルデータと、該抽出用語以降に登場する1または複数の単語のそれぞれに関する前記単語特定データに応じた前記単語ベクトルデータとを用いて前記出力写像の入力ベクトルデータを生成し、該入力ベクトルデータと前記出力写像データとに基づき、前記スコアを算出する算出処理と、前記スコアに基づき、前記抽出用語の適切性の判定結果を通知する通知処理と、を実行する処理回路と、を備える。
上記構成では、出力写像が、抽出用語が適切である可能性の大小を表現するスコアを出力するため、抽出用語が適切であるか否かを適切に評価することができ、ひいては、適切性の判定結果を通知することにより文書の校正を支援することができる。特に、上記構成では、対象用語が、単語集の全単語よりも少ない単語によって構成され、また予め定められているため、全単語を対象用語とする場合と比較すると、1つの文書の検査のための演算負荷を軽減できる。
2.上記1記載の校正支援装置において、前記出力写像は、前記単語集に含まれる単語であって前記対象用語を構成する単語よりも多くの単語のそれぞれのスコアを出力するものであり、前記通知処理は、前記出力されたスコアのうち、前記抽出用語のスコアを選択して評価する選択処理を含む。
上記構成では、対象用語を構成する単語よりも多くの単語のそれぞれのスコアが出力写像によって出力されるため、対象用語が追加された場合であっても、その対象用語を構成する単語が出力に含まれているなら、出力写像データを新たに更新することなく、追加された対象用語のスコアを算出することができる。
3.上記2記載の校正支援装置において、前記検査対象データは、前記対象用語のいくつかが互いに関連した関連用語であることを規定するデータである関連規定データを含み前記通知処理は、前記抽出用語のスコアと、該抽出用語に関連した前記関連用語のスコアとの選択的な大小比較に基づき、前記抽出用語のスコアに対する前記関連用語のスコアの相対的な大きさが所定以上である場合に、前記抽出用語が誤りである可能性がある旨の注意喚起をする喚起処理を含む。
上記構成では、関連用語のスコアと抽出用語のスコアとの選択的な大小比較に基づき、抽出用語が誤りである可能性がある旨の注意喚起をするため、関連用語同士を互いに間違いやすい用語とすることにより、出力写像の全ての値の大小比較に基づく場合と比較して、検査対象を絞り込むことができる。このため、通知内容の精度を高めることができる。
4.上記2記載の校正支援装置において、前記検査対象データは、前記対象用語のいくつかが互いに関連した関連用語であることを規定するデータである関連規定データを含み前記通知処理は、前記抽出用語のスコアと、該抽出用語に関連した前記関連用語のスコアとの選択的な大小比較に基づき、前記抽出用語のスコアに対する前記関連用語のスコアの相対的な大きさが規定以上である場合に、当該関連用語が適切である可能性がある旨通知する代替案通知処理を含む。
上記構成では、関連用語のスコアが大きい場合に、関連用語が適切である可能性がある旨通知することにより、クライアントが用語を修正する支援をすることができる。特に、関連用語は関連規定データによって規定された用語であるため、スコアが大きい任意の単語を適切である可能性がある旨通知する場合と比較すると、通知した用語が実際に適切である可能性を高めることができる。
5.上記2〜4のいずれか1つに記載の校正支援装置において、前記算出処理は、前記抽出用語が複合語である場合、前記出力写像の出力のうち前記抽出用語を構成する単語のスコアに基づき、前記抽出用語のスコアを算出する。
上記構成では、抽出用語が複合語である場合、抽出用語を構成する単語のスコアに基づき抽出用語のスコアを算出することにより、各単語のスコアを出力する出力写像を用いつつも、複合語のスコアを算出することができる。
6.上記1〜4のいずれか1つに記載の校正支援装置において、前記処理回路は、外部からの要求に応じて前記検査対象データを更新することによって前記対象用語を新たに登録する登録処理を実行する。
上記構成では、対象用語を追加することができるため、クライアントが検査対象データによって規定された対象用語に不足を感じる場合に、これに対処することができる。
7.上記1〜6のいずれか1つに記載の校正支援装置において、前記処理回路は、前記通知処理に対し、前記抽出用語の適切性の判定結果に対する修正要求を受け付ける受付処理と、前記修正要求を受け付けた場合、修正対象となった文書を前記記憶装置に記憶させる記憶処理と、を実行する。
上記構成では、修正要求を受信することによって、通知処理の内容をクライアントが受け入れない場合に、そのフィードバックを受けることができる。そして、修正対象となった文書を記憶装置に記憶させることにより、出力写像等の更新処理に役立てることができる。
8.上記1〜7のいずれか1つに記載の校正支援装置において、前記スコアの前記出力写像による原像であるベクトルの成分は、L側ベクトルとR側ベクトルとの連結ベクトルの成分を包含し、前記L側ベクトルは、前記抽出用語以前に登場する複数の単語のそれぞれに関する前記単語ベクトルデータ同士の合成および連結の少なくとも一方の演算によって定まるベクトルデータであるL側ベクトルデータによって規定され、前記R側ベクトルは、前記抽出用語以後に登場する複数の単語のそれぞれに関する前記単語ベクトルデータ同士の合成および連結の少なくとも一方の演算によって定まるベクトルデータであるR側ベクトルデータによって規定される。
上記構成では、原像であるベクトルがL側ベクトルとR側ベクトルとの連結ベクトルを包含するため、抽出用語以前の単語であるのか以後の単語であるのかの情報に基づきスコアを算出することができる。このため、原像であるベクトルがL側ベクトルとR側ベクトルとの和を包含する場合と比較すると、スコアの精度を向上させることができる。
9.上記8記載の校正支援装置において、前記L側ベクトルデータを定めるために用いられて且つ前記抽出用語以後に登場する1つの単語に関する前記単語ベクトルデータと、前記R側ベクトルデータを定めるために用いられて且つ前記抽出用語以後に登場する1つの単語に関する前記単語ベクトルデータとには、対応する単語が同一であっても互いに異なるものが含まれる。
上記構成では、同一の単語であっても、それが抽出用語以前に出現する場合と以後に出現する場合とで、対応するベクトルが異なることを許容することにより、抽出用語以前の単語であるのか以後の単語であるのかの情報を表現しやすい。
10.上記1〜9のいずれか1つに記載の校正支援装置において、前記単語ベクトルデータの次元は、前記単語集に規定されている単語数よりも小さい。
上記構成では、単語ベクトルデータの次元が、単語集に規定されている単語数よりも小さいため、単語数と同一の次元の場合と比較すると、出力写像のパラメータ数を低減することができ、ひいては、十分な学習がなされるうえで要求される学習データ数を軽減することができる。
なお、上記8〜10に記載の校正支援装置は、前記単語ベクトルデータは、圧縮ベクトルデータであり、該圧縮ベクトルデータよりも次元数が大きい非圧縮ベクトルデータを用いて学習処理によって学習されたものであり、前記学習処理は、教師データとなる単語以前に登場する1または複数の単語に応じた前記非圧縮ベクトルデータを入力とし前記圧縮ベクトルデータを出力するL側圧縮写像を規定するデータであるL側圧縮写像データと、前記教師データとなる単語以後に登場する1または複数の前記非圧縮ベクトルデータを入力とし前記圧縮ベクトルデータを出力するR側圧縮写像を規定するデータであるR側圧縮写像データと、を前記圧縮ベクトルデータとして学習するものであり、前記教師データとなる単語以前に登場する複数の単語のそれぞれに関する前記非圧縮ベクトルデータのそれぞれを入力とする前記L側圧縮写像の出力に基づき、前記L側ベクトルデータを算出するL側圧縮算出処理と、前記教師データとなる単語以後に登場する複数の単語のそれぞれに関する前記非圧縮ベクトルデータのそれぞれを入力とする前記R側圧縮写像の出力に基づき、前記R側ベクトルデータを算出するR側圧縮算出処理と、前記L側ベクトルデータと前記R側ベクトルデータとに基づき生成されたベクトルを前記出力写像の入力として、前記出力写像の出力する前記スコアのうち前記教師データとなる単語のスコアを大きくするように学習する処理とがコンピュータによって実行される処理であるとしてもよい。
11.上記10記載の校正支援装置において、前記記憶装置は、文書の類型に対応付けられたデータを記憶しており、前記処理回路は、検査対象となる文書の類型を取得する取得処理を実行し、前記算出処理は、前記類型に対応づけられたデータに基づき前記出力写像の入力を定める類型入力生成処理を含む。
上記構成では、類型に対応付けられたデータに基づき出力写像の入力を定めることにより、スコアを出力する際に利用する情報量を増加させることができ、ひいてはスコアの算出精度を向上させることができる。
12.上記1〜11のいずれか1つに記載の校正支援装置において、前記出力写像データは、学習用の文書の各単語を、当該単語が前記対象用語であるか否かにかかわらず、教師データとし、当該教師データ以前に登場する1または複数の単語の前記単語ベクトルデータと、該教師データ以後に登場する1または複数の単語の前記単語ベクトルデータとを特徴量として学習されたデータである。
上記構成では、学習に際しては、対象用語以外の単語についても教師データに用いることにより、出力写像の出力するスコアの精度を向上させることができる。
13.上記1〜12のいずれか1つに記載の前記各処理をコンピュータによって実行させる校正支援プログラム。
第1の実施形態にかかる校正支援装置およびこれに接続されるネットワークを示す図。 同実施形態にかかる類型を示す図。 同実施形態においてウェブブラウザが実行する処理の手順を示す図。 同実施形態にかかるクライアント側装置内の表示例を示す図。 同実施形態にかかるサーバ側装置が実行する前処理の手順を示す流れ図。 同実施形態にかかるサーバ側装置が実行する校正支援処理の手順を示す流れ図。 上記校正支援処理の一部の詳細な手順を示す流れ図。 第2の実施形態にかかるサーバ側装置が実行する処理の手順を示す流れ図。
<第1の実施形態>
以下、校正支援装置にかかる第1の実施形態について図面を参照しつつ説明する。なお、以下では、「ベクトル」を、列ベクトルとし、図7においては、スペースの都合上、行ベクトルを記載する場合には、転置記号を表記しているが、本明細書では、便宜上、行ベクトルを転置記号なしで用いる。また、本明細書では、n行m列の行列を、行列aij(i=1〜n,j=1〜m)と記載し、また、その行列の成分について、成分aijと記載し、いずれを示しているかを、記号の前に付与された単語が「行列」であるか「成分」であるかによって指定する。
図1に示すシステムは、法律文書のうち特に契約文書の校正を支援するためのシステムである。図1に示すように、クライアント側装置10は、CPU12、ROM14、LCDやLED等の表示装置16、キーボードやマウス等の操作部18、通信機20を備えており、それらがネットワーク22を介して接続されている。
クライアント側装置10は、通信機20によって外部のネットワーク30を介してサーバ側装置40と通信可能となっている。
サーバ側装置40は、CPU42、記憶装置44および通信機46を備えており、それらがネットワーク48を介して互いに接続されている。サーバ側装置40は、通信機46によって外部のネットワーク30を介してクライアント側装置10と通信可能となっている。
記憶装置44は、たとえば電気的に書き換え可能な不揮発性メモリや、ハードディスク等を備えている。そして記憶装置44には、校正支援プログラム50や、前処理プログラム52、単語特定データ54、検査対象データ56、写像データ58、類型データ60が記憶されている。ここで、単語特定データ54は、サーバ側装置40によって扱うことができる単語集を規定する単語IDのデータが含まれる。本実施形態では、各単語に、「1」から連番で、互いに別の数字がIDとして付与されている。なお、本実施形態では、読点も1つの単語とみなす。
また、検査対象データ56は、検査対象となる契約文書内において、その用語が適切に用いられているか否かの検査対象となる用語である対象用語を規定するデータである対象用語規定データを含む。また、検査対象データ56は、対象用語のうちのいくつかが互いに関連した関連用語であることを規定するデータである関連用語規定データを含む。ここで、互いに関連する関連用語とは、特に互いに間違って用いられやすい用語である。すなわち、たとえば対象用語規定データによって、「もの、物、者、違約金、損害金、とき、時、場合」等が対象用語として規定されており、関連用語規定データによって、「もの、物、者」が互いに関連用語であることや、「違約金、損害金」が互いに関連用語であること、「とき、時、場合」が互いに関連用語であることが規定されている。
さらに、類型データ60は、契約文書をカテゴリ化して細分化するためのデータである。図2に、本実施形態において類型データ60によって細分化された各カテゴリを示す。本実施形態では、大分類として、「物」に関する契約書であるのか、「債権」に関する契約書であるのか等、8つの分類がなされ、各大分類は、更に、3つの異なるカテゴリに分類される。このため、本実施形態では、契約文書が24種類の類型に分類されるが、クライアントが契約書の類型を通知しない場合を考慮して、類型データ60によって、「類型入力なし」を意味するもう1種類の類型をも規定する。
クライアント側装置10からサーバ側装置40にアクセスがあり、クライアント側装置10からサーバ側装置40に入力されたクライアントIDとパスワードとが正規のものであると判定される場合、クライアント側装置10において、ウェブブラウザによって、以下の処理が実行される。
図3に、ウェブブラウザの処理の手順を示す。この処理は、CPU12が、ウェブブラウザの指令を実行することにより実現される。なお、以下では、先頭に「S」が付与された数字によって、各処理のステップ番号を表現する。
図3に示す一連の処理において、CPU12は、まず表示装置16に、検査を希望する契約文書を入力するための画面を表示する(S10)。なお、ここでは、検査を希望する契約文書以外に、その契約文書の類型も入力可能となっている。これに対し、クライアントが操作部18を操作して検査を希望する契約文書をドラッグアンドドロップ等によって入力したり、類型を選択したりすると、CPU12は、入力された文書をサーバ側装置40に送信する(S12)。次に、CPU12は、サーバ側装置40から、文書中の用語の評価結果を受信し、表示装置16に視覚情報として表示する(S14)。
図4に、表示装置16への評価結果の表示例を示す。図4の左側には、検査対象とする契約文書が表示されており、右側には、用語の使い方について検討した方が良い点(評価結果)が表示されている。特に、図4には、クライアントが評価結果のうちの[6]を選択した場合を例示している。この場合、契約文書中の該当用語である「場合」がハイライト表示される。対象用語である「場合」には、関連用語規定データによって「とき」と「時」とが関連用語として規定されている。サーバ側装置40は、契約文書中の「場合」を抽出用語として抽出すると、これに関連する関連用語と抽出用語との相対的な適切性(正解確率)を算出する。図4には、表示装置16に、関連用語である「とき」の正解確率が「60%」であり、「場合」の正解確率が「35%」であり、「時」の正解確率が「5%」である例を示している。この場合には、抽出用語よりもその関連用語である「とき」の方が正解確率が高いため、契約文書の左側の[6]の欄に、『「とき」へ変更することをおすすめします』という表示をしている。
クライアントは、こうした表示に基づき、評価結果が妥当であると考える場合、用語を修正することとなる。これに対し、クライアントが評価結果が妥当ではないと考える場合、提案を拒否するが、この際、クライアントは評価結果の修正要求(フィードバック情報)をサーバ側装置40に通知することができる。すなわち、たとえば[6]の欄を右クリックすると、「修正要求出力」というタスクが表示され、クライアントが「修正要求出力」というタスクを選択することにより、フィードバック情報をサーバ側装置40に通知することができる。
詳しくは、図3に戻り、CPU42は、修正要求があるか否かを判定し(S16)、あると判定する場合(S16:YES)、通信機20によって、ネットワーク30を介してサーバ側装置40に修正データを出力する(S18)。ここで、修正データは、提案が拒否された対象用語を規定するデータのみならず、契約文書に関するデータが含まれる。
CPU42は、S18の処理を完了する場合や、S16の処理において否定判定する場合には、図3に示す一連の処理を一旦終了する。
図5に、検査対象となる文書が入力されることにより、サーバ側装置40によって実行される処理の手順を示す。図5に示す処理は、CPU42が、前処理プログラム52を実行することにより実現される。
図5に示す一連の処理において、CPU42は、まず検査対象となる文書を取得する(S20)。次に、CPU42は、形態素解析処理によって、文書を、単語に分解する(S22)。次にCPU42は、単語特定データ54に基づき、文書中の各単語のIDを、文書にその単語が出現する順序を規定するラベルとともに、記憶装置44に出力する(S24)。次に、類型入力があるか否かを判定する(S26)。そしてCPU42は、類型の入力がないと判定する場合(S26:NO)、類型データとして、類型入力がない旨を示すメタデータを付与する(S28)。そして、CPU42は、S26の処理において肯定判定する場合や、S28の処理が完了する場合には、類型wCを記憶装置44に出力する(S30)。なお、CPU42は、S30の処理を完了する場合、図5に示す一連の処理を一旦終了する。
図6に、サーバ側装置40によって実行される校正支援処理の手順を示す。図6に示す処理は、校正支援プログラム50をCPU42が実行することにより実現される。
図6に示す一連の処理において、CPU42は、まず記憶装置44にアクセスし、図5のS24の処理によって記憶された単語IDや、S30の処理で記憶された類型wCを取得する(S40)。次にCPU42は、検査対象データ56に基づき、入力された契約文書中の検査対象とする用語である対象用語の1つを抽出し、これを抽出用語とする(S42)。次に、CPU42は、検査対象データ56に基づき、抽出用語が複合語であるか否かを判定する(S44)。そしてCPU42は、複合語であると判定する場合(S44:YES)、抽出用語を構成する最初の単語を抽出用語に代入する(S46)。すなわち、たとえば、抽出用語が「違約金」の場合、「違約」と「金」との複合語であるが、先頭の単語である「違約」を抽出用語であると定義しなおす。
次に、CPU42は、抽出用語w(i)の関連用語wLinkを抽出する(S48)。すなわち、たとえば抽出用語が「違約金」である場合、関連用語wLinkは、「損害金」となる。この処理においてCPU42は、関連用語規定データによって規定されているすべての関連用語wLinkを抽出するため、抽出用語が「場合」の場合、関連用語wLinkは、「とき」と「時」となる。なお、関連用語wLinkが複合語である場合、S46の処理と同様に、関連用語を、それを構成する最初の単語であると定義しなおすこととする。すなわち、関連用語wLinkが「損害金」である場合、CPU42は、S48の処理において、関連用語wLinkを「損害」であると定義しなおす。
次にCPU42は、抽出用語w(i)の前に出現するD個の単語w(i−D),…,w(i−1)と、抽出用語w(i)以後に出現するD個の単語w(i+1),…,w(i+D)とを抽出する(S50)。なお、抽出用語w(i)がたとえば「違約金」である場合、単語w(i+1)は、S46の処理によって抽出用語w(i)から排除された「金」となることから、「抽出用語w(i)の後に出現するD個の単語」と記載する代わりに、「抽出用語w(i)以後に出現するD個の単語」と記載した。
ただし、ここで抽出する単語は、全て抽出用語w(i)と同一文中の単語とする。すなわち、図4に例示したように、抽出用語w(i)が「場合」であって、それが、「前項の融資が否認された場合、…」という文に含まれているケースでは、「D=7」の場合、「前項」、「の」、「融資」、「が」、「否認」、「され」、「た」の7個の単語が、単語w(i−D),…,w(i−1)として抽出される。しかし、「D=8」の場合、抽出用語w(i)が含まれる文中であって抽出用語w(i)の前に8個の単語が存在しないため、CPU42は、単語w(i−D)については、それ以上単語が存在しないことを示すメタ単語を付与する。なお、このメタ単語には、単語特定データ54によって単語IDが規定されているものとする。
そして、CPU42は、抽出用語w(i)と、関連用語wLinkとの相対的な正解確率を算出する(S52)。
図7に、S52の処理の詳細を示す。
図7に示す一連の処理において、CPU42は、まず、類型ベクトル(vC1,…,vCN)を算出する(S70)。次に、CPU42は、抽出用語w(i)の前に出現するD個の単語w(i−D),…,w(i−1)と、抽出用語w(i)以後に出現するD個の単語w(i+1),…,w(i+D)との2D個の単語のそれぞれを、1−of−V符号化法によって符号化し、V次元ベクトルとする(S72)。これにより、各単語に対応するV次元ベクトルは、1つの成分のみが「1」であり、残りの成分が「0」となるベクトルとなる。ここで、CPU42は、各単語の単語IDの数字に対応するベクトルの成分が「1」であるようにV次元ベクトルに符号化するものとする。すなわち、たとえば、単語w(i−1)が「に」であり、その単語IDが「100」である場合、「に」に対応するV次元ベクトルは、第100番目の成分v(i−1)100のみが「1」となり、残りがゼロとなる。
次にCPU42は、抽出用語w(i)の前に出現するD個の単語w(i−D),…,w(i−1)のそれぞれに対応するD個のV次元ベクトルを、L側圧縮写像を用いて、D個のL側投影ベクトル(PvL(m)1,…,PvL(m)N)に変換する(S74)。ここで、「m=i−D,…,i−1」である。L側圧縮写像は、記憶装置44に記憶されている写像データ58のうちのL側圧縮行列wLij(i=1〜N,j=1〜V)の成分に関するデータであるL側圧縮写像データによって規定される。ここで、L側投影ベクトルは、N次元ベクトルであり、「N」は、「V」の「1/10」以下、望ましくは、「1/100」以下である。
また、CPU42は、抽出用語w(i)以後に出現するD個の単語w(i+1),…,w(i+D)のそれぞれに対応するD個のV次元ベクトルを、R側圧縮写像を用いて、D個のR側投影ベクトル(PvR(n)1,…,PvR(n)N)に変換する(S74)。ここで、「n=i+1,…,i+D」である。R側圧縮写像は、記憶装置44に記憶されている写像データ58のうちのR側圧縮行列wRij(i=1〜N,j=1〜V)の成分に関するデータであるR側圧縮行列データによって規定される。ここで、R側投影ベクトルは、N次元ベクトルである。なお、同一の単語に対応する、L側投影ベクトルとR側投影ベクトルとは、必ずしも互いに一致するベクトルとは限らない。これについては、後に詳述する。
次に、CPU42は、D個のL側投影ベクトルを互いに加算して「D」で除算することによってL側合成ベクトル(AvL1,…,AvLN)を算出し、D個のR側投影ベクトルを互いに加算して「D」で除算することによってR側合成ベクトル(AvR1,…,AvRN)を算出する(S76)。
次にCPU42は、L側合成ベクトルと、R側合成ベクトルと、類型ベクトルとの連結によって構成されるベクトルを入力とし、出力写像によってV次元の出力ベクトルを出力する(S78)。ここで、出力写像は、写像データ58に含まれる出力行列wOij(i=1〜V,j=1〜3N)によって規定される。ここで、L側合成ベクトルと、R側合成ベクトルと、類型ベクトルとの連結によって構成されるベクトルは、3N次元を有し、その第1成分から第N成分が、L側合成ベクトルの成分であり、第(N+1)成分から第2N成分が、R側合成ベクトルの成分である。そして、出力ベクトルの第i成分は、以下の3つの内積(ア)、内積(イ)および内積(ウ)の和となる。内積(ア)は、出力行列wOijによって規定されるN次元ベクトル(wOi1,…,wOiN)とL側合成ベクトルとの内積である。内積(イ)は、出力行列wOijによって規定されるN次元ベクトル(wOi(N+1),…,wOi2N)とR側合成ベクトルとの内積である。内積(ウ)は、出力行列wOijによって規定されるN次元ベクトル(wOi(2N+1),…,wOi3N)と類型ベクトルとの内積である。
ここで、出力ベクトル(vO1,…,vOV)の第i成分vOiは、単語IDが「i」である単語が、抽出用語として適切である可能性の大小を示すスコアを示す。ここで、スコアは、数値が大きい場合に小さい場合よりも可能性が大きいことを表現する。
次にCPU42は、出力ベクトルの成分vO1,…,vOVを、ソフトマックス関数によって規格化し、特に、抽出用語w(i)と関連用語wLinkとのそれぞれに対応する成分のみを規格化されたスコアである規格化スコアCs,Ct1,Ct2,…として算出する(S80)。ここでは、1−of−V符号化した場合、抽出用語w(i)は、第s成分が「1」となり、残りがゼロとなると想定しており、関連用語wLinkは、第t1成分が「1」となり、残りがゼロとなるものや、第t2成分が「1」となり、残りがゼロとなるものを想定している。
次にCPU42は、抽出用語w(i)と関連用語wLinkとのそれぞれの正解確率ps,pt1,pt2,…の和が「1」となるように規格化処理を実行する(S82)。すなわち、ソフトマックス関数を用いる場合、V個の成分のそれぞれの規格化スコアの和が「1」となるように規格化されるため、たとえば図4に示した「とき」のスコアが「0.000001」等、非常に小さい値となりうる。このため、クライアントに提示する情報をよりわかりやすいものとすべく、ここでは、規格化処理を実行する。なお、抽出用語w(i)の関連用語が1つしかない場合、図7のS80の処理において規格化スコアCt2,…は、定義されておらず、S82の処理において正解確率pt2,…は、定義されていない。
CPU42は、S82の処理が完了する場合、図6のS52の処理を完了する。
図6に戻り、CPU42は、契約文書中の全対象用語を抽出したか否かを判定する(S54)。そしてCPU42は、未だ全ては抽出していないと判定する場合(S54:NO)、S42の処理に戻る。これに対しCPU42は、全てを抽出したと判定する場合(S54:YES)、抽出用語の正解確率psを、関連用語の正解確率ptαが上回るものがあるか否かを判定する(S56)。この処理は、クライアントに修正の提案をすべき箇所があるか否かを判定する処理である。
CPU42は、上回るものがあると判定する場合(S56:YES)、図4に例示した各正解確率のグラフデータや、図4に示した契約文書の右側のコメント欄等のデータである表示データを作成する(S58)。
CPU42は、S58の処理を完了する場合や、S56の処理において否定判定する場合には、検査結果を送信する(S60)。ここで、CPU42は、S56の処理において否定判定する場合には、検査が終了した旨の情報のみを出力する。
次にCPU42は、図3のS18の処理が実行されたか否かを、換言すれば、修正要求があるか否かを判定する(S62)。そしてCPU42は、修正要求があると判定する場合(S62:YES)、修正データを受信し、記憶装置44に記憶させる(S64)。
なお、CPU42は、S64の処理が完了する場合や、S62の処理において否定判定する場合には、図6に示す一連の処理を一旦終了する。
ちなみに、出力行列wOijや、L側圧縮行列wLij、R側圧縮行列wRijは、次のようにして学習されたものである。すなわち、学習対象となる契約文書の各単語を抽出用語として、S70〜S78の処理によって出力ベクトルを求めた後、ソフトマックス関数によって、各成分の規格化スコアを算出する。そして、規格化スコアに基づき、ソフトマックスクロスエントロピーを算出し、これを最小化する。ここで、ソフトマックスクロスエントロピーは、規格化スコアC1,…,CVのそれぞれに対するラベル変数l1,…,lVを用いて、−l1・LogC1−…−lV・LogCVとなる。ここで、ラベル変数lp(p=1〜V)は、正解の単語のみ「1」、それ以外が「0」となる。
具体的には、ソフトマックスクロスエントロピーの出力行列wOijの成分による偏微分係数を算出するとともに、誤差逆伝搬法によって、ソフトマックスクロスエントロピーのL側圧縮行列wLijの成分による偏微分係数やR側圧縮行列wRijの成分による偏微分係数を算出する。そして、たとえばAdam(Adaptive moment estimation)に基づき、出力行列wOijや、L側圧縮行列wLij、R側圧縮行列wRijを更新する。
このように、本実施形態では、L側圧縮行列wLijとR側圧縮行列wRijとを同一としなかったため、上記処理によって更新され最終的に記憶装置44に記憶されているL側圧縮行列wLijとR側圧縮行列wRijとは、同一成分のなかに互いに異なる値となるものがありうる。このため、同一の単語に対応する、S74の処理によって生成されるL側投影ベクトルと、S74の処理によって生成されるR側投影ベクトルとは、互いに異なるものとなりうる。
ちなみに、学習時には、対象用語のみならず全ての単語を順次教師データとしたのは、その方が、抽出用語w(i)の適切性の算出精度が向上することが発明者によって確認されているためである。
ここで、本実施形態の作用および効果について説明する。
CPU42は、契約文書が入力されると、契約文書を単語に分解し、対象用語を抽出用語として抽出する。そして、CPU42は、抽出用語w(i)の前のD個の単語と、抽出用語w(i)以後のD個の単語とを入力とし、各単語が抽出用語w(i)として適切である可能性の大小を示すスコアを、出力ベクトルの成分vO1,…,vOVとして算出する。このように、契約文書中の全単語を抽出用語とすることなく、対象用語に限って抽出用語としたため、契約文書の検査に要する演算負荷を軽減できる。
また、CPU42は、抽出用語w(i)の適切性を評価する際、全単語の正解確率を算出するのではなく、抽出用語w(i)および関連用語wLinkに限って正解確率を算出し、それらの選択的な大小比較に応じて抽出用語w(i)の適切性を算出した。このため、全ての単語のスコアの大小比較をする場合と比較すると、演算負荷をいっそう軽減できる。さらに、全ての単語のスコアの大小比較をする場合には、「の」や「は」などの助詞や読点等、スコアが無条件に大きくなるものが出現し、適切性の算出精度が低下しやすいが、抽出用語w(i)と関連用語wLinkとのそれぞれのスコアの選択的な大小比較をすることにより、算出精度を高めることができる。
以上説明した本実施形態によれば、さらに以下に記載する作用効果が得られる。
(1)1−of−V符号化処理によって生成されたV次元ベクトルを、それよりも次元数の小さいL側投影ベクトルやR側投影ベクトルに変換し、これに基づき、出力写像の入力を定めた。ここで、S72の処理によって生成されたV次元ベクトルの第x成分が「1」の場合、L側投影ベクトルは、L側圧縮行列wLijの第x列のベクトル(wL1x,…,wLNx)となり、R側ベクトルは、R側圧縮行列wRijの第x列ベクトル(wR1x,…,wRNx)となる。換言すれば、単語IDが「x」の場合、L側投影ベクトルは、L側圧縮行列wLijの第x列のベクトル(wL1x,…,wLNx)となり、R側ベクトルは、R側圧縮行列wRijの第x列ベクトル(wR1x,…,wRNx)となる。L側圧縮ベクトルやR側圧縮ベクトルは、規格化されているわけでもなく、また、互いに異なる単語同士で直交しているわけでもないが、単語の有する情報を低次元に圧縮して表現したベクトルである。このため、1−of−V符号化ベクトルを直接用いて出力写像の入力を定める場合と比較して、出力行列のパラメータ数を低減することができる。すなわち、1−of−V符号化ベクトルを直接用いる場合、出力行列wOijのパラメータ数は、「V×(2V+N)」となる一方、本実施形態では、「V×(3N)」で済む。また、L側圧縮行列wLijおよびR側圧縮行列wRijを含めても、本実施形態のパラメータ数は、「V×(5N)」で済む。このため、学習に利用できるデータ量の割に、出力行列wOijの精度を高めることができる。
(2)出力ベクトル(vO1,…,vOV)の出力写像による原像であるベクトルの成分AvL1,…,AvLN,AvR1,…,AvRN,vC1,…vCNが、L側合成ベクトルとR側合成ベクトルとの連結ベクトルの成分AvL1,…,AvLN,AvR1,…,AvRNを包含している。この場合、出力写像を、抽出用語w(i)の前に出現した単語であるのか、抽出用語w(i)以降に出現した単語であるのかの情報に基づき、スコアを算出する写像とすることができる。このため、出力写像が、原像をL側合成ベクトルとR側合成ベクトルとの合成ベクトルを包含する場合と比較すると、抽出用語w(i)との前後関係の情報を反映できることに起因して、スコアの精度を高めることができる。
(3)L側圧縮行列とR側圧縮行列とを各別の行列とした。このため、同一の単語であっても、L側投影ベクトルであるのかR側投影ベクトルであるのかで、互いに相違するベクトルとなりうる。このため、出力写像の入力を構成する単語ベクトル自体を、抽出用語w(i)の前の単語であるのか以後の単語であるのかの情報を有したものとすることができ、抽出用語w(i)の前であるのか以後であるのかの情報をより良く表現できる。
<第2の実施形態>
以下、第2の実施形態について、第1の実施形態との相違点を中心に図面を参照しつつ説明する。
本実施形態では、クライアントが対象用語を追加可能とする。
図8に、上記対象用語の追加にかかる処理の手順を示す。図8に示す処理は、校正支援プログラム50をCPU42が実行することによって実現される。
図8に示す一連の処理において、CPU42は、まず、クライアント側装置10から送信される信号の有無に基づき、対象用語を新たに登録する要求があるか否かを判定する(S90)。CPU42は要求があると判定する場合(S90:YES)、検査対象データ56に、登録の要求が生じた用語を、クライアントIDに紐づけて追加する(S92)。これは、たとえば、検査対象データ56に、クライアントIDを特定するデータを含めることにより実現できる。
そして、CPU42は、他のクライアントに登録候補がある旨を通知する(S94)。なお、ここでは、たとえば自分が登録した対象用語を他のクライアントに通知してもよいか否かの意思表示結果を記憶装置44に記憶しておき、通知してもよい旨の意思表示結果があるクライアントのみに通知することとしてもよい。
なお、CPU42は、S94の処理が完了する場合や、S90の処理において否定判定する場合には、図8に示す一連の処理を一旦終了する。
このように、本実施形態では、クライアントが希望すれば対象用語を追加可能となっている。特に、本実施形態では、出力写像が、全単語のスコアを出力する写像であるため、対象用語の追加によって、出力写像を変更する必要が生じない。さらに、出力行列wOijが、文書中の各単語を教師データとして適合された値であるため、対象用語の追加に伴って、新たな学習をしなくても、追加された対象用語の検査を高精度に実行することができる。
<対応関係>
上記実施形態における事項と、上記「課題を解決するための手段」の欄に記載した事項との対応関係は、次の通りである。以下では、「課題を解決するための手段」の欄に記載した解決手段の番号毎に、対応関係を示している。[1]単語ベクトルデータは、S74の処理によって算出されるベクトルデータに対応し、算出処理は、S76〜S78の処理に対応する。通知処理は、S80,S82,S56〜S60の処理に対応する。校正支援装置は、サーバ側装置40に対応し、処理回路は、校正支援プログラムを実行するCPU42に対応する。[2]選択処理は、S80の処理に対応する。[3]喚起処理は、S56〜S60の処理に対応する。[4]代替案通知処理は、S56〜S60の処理に対応する。[5]S44,S46の処理に対応する。[6]登録処理は、S92の処理に対応する。[7]受付処理は、S62の処理に対応し、記憶処理は、S64の処理に対応する。[8]L側ベクトルは、L側合成ベクトル(ALv1,…,ALvN)に対応し、R側ベクトルは、R側合成ベクトル(ARv1,…,ARvN)に対応する。[10]単語ベクトルデータが、S74の処理によって生成されるベクトルデータであることに対応する。L側圧縮算出処理およびR側圧縮算出処理は、S74,S76の処理に対応する。[11]類型入力生成処理は、S78の処理に対応する。[13]コンピュータは、CPU42に対応する。
<その他の実施形態>
なお、本実施形態は、以下のように変更して実施することができる。本実施形態および以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
・「類型について」
上記実施形態では、類型ベクトルの次元を、L側投影ベクトルやR側投影ベクトルの次元と等しくしたがこれに限らない。たとえば、類型の数の次元を有したベクトルとしてもよく、またたとえば類型の数の次元よりも小さい次元を有したベクトルとしてもよい。さらにスカラー量にて定量化してもよい。なお、スカラー量とする場合、上記実施形態やそれらの変形例における類型ベクトルとの連結を、類型を示すスカラー量(1次元ベクトル)との連結と読み替えるものとする。
またたとえば、類型を1−of−L(Lは、類型の数)符号化法によって符号化し、符号化したL次元ベクトルを入力とし、L次元よりも小さいM次元ベクトルを出力する線形写像の出力を出力写像の入力となる類型ベクトルとしてもよい。この場合、この線形写像についても、L側圧縮写像データやR側圧縮写像データと同様の手法にて学習すればよい。また、この場合、線形写像を規定するデータについても記憶装置44に記憶しておくこととするなら、新たな学習データを入手したときにこの線形写像データを規定するデータについても更新することが容易となる。
・「ベクトルの合成について」
上記実施形態では、L側合成ベクトルとR側合成ベクトルとを、ベクトルの平均値としたが、これに限らない。たとえばS76の処理において、「1/D」の因子を削除することによって、単にベクトルの和としてもよい。以下では、ベクトルAとベクトルBとの合成ベクトルを、ベクトルAとベクトルBとの和の定数倍とする。ただし、定数は「0」以外の実数とする。
・「出力写像について」
上記実施形態では、L側合成ベクトルとR側合成ベクトルと類型ベクトルとの連結ベクトルを出力写像の入力としたが、これに限らない。たとえば、類型を参照しないようにしてもよい。これは具体的には、たとえば、以下のようにすればよい。
(a)上記実施形態におけるL側合成ベクトルとR側合成ベクトルとの連結ベクトルを、出力写像の入力とする。この場合、出力行列は、V行「2N」列行列となる。
(b)圧縮写像を、L側とR側との2つとするのではなく、L側の「i−D」の単語用から「i−1」の単語用までのD個の行列と、R側の「i+1」の単語用のものから「i+D」の単語用のものまでのD個の行列との合計2D個の互いに成分が異なりうる圧縮写像を用いて、抽出用語以前および以後の2D個の単語ベクトルを生成する。そしてそれら2D個のN次元ベクトルの連結ベクトルを、出力写像の入力とする。この場合、出力行列wOijは、V行「2DN」列の行列となる。なお、この場合、抽出用語以前のD個の単語に関するL側ベクトルデータは、D個のN次元ベクトルの連結ベクトルとなり、抽出用語以後のD個の単語に関するR側ベクトルデータは、D個のN次元ベクトルの連結ベクトルとなる。
上記(a)および(b)は、出力写像が抽出用語以前と以後との情報を識別して入力する写像であって且つ、単語ベクトル自体、位置情報を有する例である。こうした例としては、他にも、たとえば出力写像が単語ベクトルの所定数(<D)ずつの情報を識別して入力する写像であって、単語ベクトル自体、所定数毎に、別の圧縮行列から生成されるものとする例等がある。すなわち、たとえば「D」が偶数で上記所定数が「2」の場合、L側の「i−D」の単語と、「i−D+1」の単語とは、同一の単語であれば同一のN次元ベクトルによって表現されるが、L側の「i−D」の単語と、「i−D+2」の単語とは、同一の単語であっても、互いに異なるN次元ベクトルによって表現されうる。そして、L側の「i−D」の単語と、「i−D+1」の単語とのそれぞれのN次元ベクトルは合成されて、出力写像の入力を構成する。なお、この場合、出力行列wOijは、V行「DN」列の行列となる。さらに、互いに同一の数のベクトル同士を合成するものに限らない。たとえば、下記「出力写像の入力に関する単語について」に記載したように、抽出用語が含まれる文に隣接するいくつかの文中の単語をも含めて出力写像の入力を構成する場合、抽出用語から遠いほど、合成するベクトルの数を多くしてもよい。ただし、その場合、ベクトルの合成は、ベクトルの平均とする。
もっとも、出力写像による単語の位置情報の識別能力と、単語ベクトル自体による位置情報の表現能力とが同一である必要もない。たとえば、S74の処理によって算出されるD個のL側投影ベクトルと、D個のR側投影ベクトルとの連結ベクトルを、出力写像の入力としてもよい。この場合、出力行列wOijは、V行「2DN」列の行列となる。
また、単語の位置情報を、出力写像と、単語ベクトル自体との双方によって識別させることは必須ではない。たとえば、出力写像に限って、単語の位置情報の識別機能を持たせてもよい。これは、たとえば以下の(c)および(d)等によって実現できる。
(c)L側圧縮写像とR側圧縮写像とを区別せず、V次元ベクトルをN次元ベクトルに圧縮する単一の圧縮写像を用いる。そして、抽出用語以前のD個の単語のV次元ベクトルが上記圧縮写像によって圧縮されたD個のN次元ベクトルの合成ベクトルと、抽出用語以後のD個の単語のV次元ベクトルが上記圧縮写像によって圧縮されたD個のN次元ベクトルの合成ベクトルとの連結ベクトルを、出力写像の入力とする。この場合も、出力行列は、V行「2N」列の行列となる。
(d)L側圧縮写像とR側圧縮写像とを区別せず、V次元ベクトルをN次元ベクトルに圧縮する単一の圧縮写像を用いる。そして、抽出用語以前のD個の単語のV次元ベクトルが上記圧縮写像によって圧縮されたD個のN次元ベクトルと、抽出用語以後のD個の単語のV次元ベクトルが上記圧縮写像によって圧縮されたD個のN次元ベクトルとの連結ベクトルを、出力写像の入力とする。この場合、出力行列は、V行「2DN」列の行列となる。
もっとも、単語の位置情報の反映のさせ方としては、L側であるかR側であるかの2者択一のものと、各単語の位置情報を全て反映させるものとに限らない。たとえば出力写像が単語ベクトルの所定数(<D)ずつの情報を識別して入力する写像であってもよい。すなわち、たとえば「D」が偶数で上記所定数が「2」の場合、L側の「i−D」の単語と、「i−D+1」の単語とのそれぞれのベクトルの合成ベクトルや、L側の「i−D+2」の単語と、「i−D+3」の単語とのそれぞれのベクトルの合成ベクトル等、D個の合成ベクトルの連結ベクトルを、出力写像の入力としてもよい。なお、この場合、出力行列wOijは、V行「DN」列の行列となる。さらに、互いに同一の数のベクトル同士を合成するものに限らない。たとえば、下記「出力写像の入力に関する単語について」に記載したように、抽出用語が含まれる文に隣接するいくつかの文中の単語をも含めて出力写像の入力を構成する場合、抽出用語から遠いほど、合成するベクトルの数を多くしてもよい。ただし、その場合、ベクトルの合成は、ベクトルの平均とする。
さらに、出力写像が複数の単語ベクトルの合成ベクトルを入力とするものであって、単語ベクトルに限って、単語の位置情報を反映可能としてもよい。これは、たとえば、次の(e)および(f)等によって実現できる。
(e)上記実施形態におけるL側合成ベクトルとR側合成ベクトルとの合成ベクトルを、出力写像の入力とする。この場合、出力行列は、V行N列の行列となる。
(f)圧縮写像を、L側とR側との2つとするのではなく、L側の「i−D」の単語用から「i−1」の単語用までのD個の行列と、R側の「i+1」の単語用のものから「i+D」の単語用のものまでのD個の行列との合計2D個の互いに成分が異なりうる圧縮写像を用いて、抽出用語以前および以後の2D個の単語ベクトルを生成する。そしてそれら2D個のN次元ベクトルの合成ベクトルを、出力写像の入力とする。この場合、出力行列wOijは、V行N列の行列となる。
もっとも、単語の位置情報の反映のさせ方としては、L側であるかR側であるかの2者択一のものと、各単語の位置情報を全て反映させるものとに限らない。たとえば単語の所定数(<D)ずつで、互いに異なる圧縮行列を設けてもよい。すなわち、たとえば「D」が偶数で上記所定数が「2」の場合、L側の「i−D」の単語と、「i−D+1」の単語とには、同一の圧縮行列が用いられるが、L側の「i−D」の単語と、「i−D+2」の単語とでは、成分が異なりうる圧縮行列を用いてもよい。この場合であっても、全ての単語ベクトルの合成ベクトルが出力写像の入力となる以上、出力行列wOijは、V行N列の行列となる。
さらに、単語の位置情報を一切反映しなくてもよい。これは、以下の(g)のようにして実現できる。
(g)L側圧縮写像とR側圧縮写像とを区別せず、V次元ベクトルをN次元ベクトルに圧縮する単一の圧縮写像を用いる。そして、抽出用語以前のD個の単語のV次元ベクトルと抽出用語以後のD個の単語のV次元ベクトルとが上記圧縮する写像によって圧縮された2D個のN次元ベクトルの合成ベクトルを、出力写像の入力とする。この場合、出力行列は、V行N列の行列となる。
また、類型を参照する場合、上記(a)〜(g)、更にはそれらの変形例を変更することによって実現できる。ここで、いずれの例であっても、単語に関するベクトルと類型ベクトルとの連結ベクトルを出力写像の入力とすることができる。そしてその場合、出力行列wOijは、列数が、「N」だけ増加する。しかし類型の反映のさせ方としては、これに限らない。たとえば、類型ベクトルを、上記(a)〜(g)やそれらの変形例において出力写像の入力となるベクトルの次元数と同一の次元数を有したベクトルとし、単語に関するベクトルと類型ベクトルとの合成ベクトルを出力写像の入力ベクトルとしてもよい。この場合、類型を加える変更を施すことによっては、出力行列wOijの成分数が変化しない。
出力写像としては、線形写像に限らない。たとえば、上記実施形態における出力ベクトルの成分vO1,…,vOVのそれぞれを入力とするV個のロジスティックシグモイド関数の出力値が、出力写像の出力となるようにしてもよい。
なお、学習データを十分に確保できるのであれば、S72の処理によって生成されるV次元ベクトルを直接用いて、出力写像の入力が生成されるようにしてもよい。これを上記実施形態に適用するなら、出力行列wOijは、V行「2V+N」列の行列となる。
さらに、出力写像としては、単語特定データ54によって特定される単語のそれぞれのスコアを出力するものに限らない。たとえば、対象用語を構成する単語数よりは多いものの、単語集の全単語よりも少ない単語のそれぞれのスコアを出力するものであってもよい。これは、たとえば、読点やメタ単語に対応するスコアについては、これを出力しないようにすることにより実現できる。これは、出力行列wOijを初めからそのように構成することによって実現してもよいが、たとえば、出力行列wOijの学習は、上記実施形態と同様に行い、その後、読点等に関する成分を除去することによって実現してもよい。すなわち、たとえば読点の単語IDが「α」である場合、出力行列wOijの第α行の成分wOα1,…,wOαNを削除すればよい。
またたとえば、出力写像が、検象用語のスコアのみを出力する写像であってもよい。これは、たとえば、上記実施形態における出力ベクトルの成分vO1,…,vOVのうちの対象用語に対応するものに限って、それらのスコアを出力する写像とすることにより実現できる。
・「出力写像の入力に関する単語について」
上記実施形態では、抽出用語以前の単語および以後の単語であって且つ抽出用語が含まれる文と同一の文中の単語に基づき、出力写像の入力を定めたが、これに限らない。たとえば抽出用語が含まれる文に隣接するいくつかの文中の単語をさらに含めてもよい。
・「圧縮写像について」
L側圧縮写像データとしては、線形写像に限らない。たとえばL側投影ベクトルの各成分PvL1,…,PvLNのそれぞれを入力とするN個のロジスティックシグモイド関数の出力を最終的な出力とする非線形写像であってもよい。
R側圧縮写像データとしては、線形写像に限らない。たとえばR側投影ベクトルの各成分PvR1,…,PvRNのそれぞれを入力とするN個のロジスティックシグモイド関数の出力を最終的な出力とする非線形写像であってもよい。
またたとえば、「出力写像について」の欄の(c)や(d),(g)更にはそれらの変形例に記載したように、圧縮写像を、抽出用語以前の単語と以後の単語とで区別しない写像としてもよい。
・「単語のベクトル表現について」
上記実施形態では、L側圧縮写像データおよびR側圧縮写像データを記憶装置44に記憶したが、これに限らない。たとえば、単語特定データ54によって特定される単語IDのそれぞれと、S74の処理を得て生成されるL側投影ベクトルやR側投影ベクトルとを、紐づけて記憶装置44に記憶しておいてもよい。さらに、単語特定データ54自体を、S74の処理を得て生成されるL側投影ベクトルやR側投影ベクトルとしてもよい。これらの場合には、S72,S74の処理は削除される。なお、圧縮写像によって生成される単語ベクトルを単語IDに紐づけて記憶することなどは、上記「出力写像について」の欄の(a)〜(g)の変形例やそれらの変形例においても可能である。
・「抽出用語が複合語の場合について」
上記実施形態では、抽出用語が複合語である場合、そのうちの最初の単語を抽出用語とみなし、その次につながる単語については、写像の入力に加えたがこれに限らない。たとえば、抽出用語が複合語である場合において、用語によっては、そのうちの最後の単語等を抽出用語と見なし、それよりも前の単語については、写像の入力に加えてもよい。なお、抽出用語とみなされなかった単語を写像の入力とすること自体必須ではない。
またたとえば、抽出用語を構成する単語の全てを、写像の入力から外し、出力写像の出力ベクトルの成分のうち、対象用語を構成する各単語のスコアの平均値を用いて、抽出用語を評価してもよい。
・「抽出用語の前後の単語について」
上記実施形態では、抽出用語の前後の互いに等しいD個の単語を、抽出用語の検査のための入力としたが、これに限らず、抽出用語以前と以後とで、入力とする単語の数を異ならせてもよい。この場合、抽出用語以前のD1個の単語と、抽出用語以後のD2個の単語とを入力とすることとなり、上記において、「2D」と記載されている部分は「D1+D2」と読み替えることとする。この際、いずれか一方については、複数でなくてもよい。ただし、その場合、抽出用語が複合語である場合の、抽出用語を構成する単語の一部ではないこととする。
・「選択処理について」
S80の処理においてすべての単語の規格化スコアを算出し、S56の処理に代えて、抽出用語の規格化スコアよりも規格化スコアが大きくなる単語があるか否かを判定する処理を実行してもよい。
・「抽出用語のスコアと関連用語のスコアとの選択的な大小比較について」
上記実施形態では、抽出用語の規格化スコアと関連用語の規格化スコアとを選択的に抽出して大小を比較したが、抽出用語のスコアと関連用語のスコアとの選択的な大小比較としては、これに限らない。たとえば、全単語の規格化スコアを算出するとともに、抽出用語の規格化スコアと関連用語の規格化スコアとのそれぞれに「1」を加算し、規格化スコアのうちの大きいものから選択的に2つを抽出して、正解確率を算出してもよい。
・「喚起処理について」
上記実施形態では、抽出用語の正解確率psよりも関連用語の正解確率ptの方が高い場合に、抽出用語が適切ではないかもしれない旨を通知したが、これに限らない。たとえば、抽出用語の正解確率psから関連用語の正解確率ptの最大値を減算した値がゼロよりも大きい所定量以下である場合に、抽出用語が適切ではないかもしれない旨を通知してもよい。
・「代替案通知処理について」
上記実施形態では、抽出用語の正解確率psよりも関連用語の正解確率ptの方が高い場合に、代替案を通知したがこれに限らない。たとえば、抽出用語の正解確率psから関連用語の正解確率ptの最大値を減算した値がゼロよりも大きい所定量以下である場合に、代替案を通知してもよい。また上記実施形態では、関連用語が複数ある場合、関連用語の全てを通知したがこれに限らない。たとえば正解確率が一番大きいもののみを代替案として通知してもよい。
・「学習について」
上記実施形態では、学習時には、全単語を順次教師データとして、そのスコアを算出し、スコアに基づくソフトマックスクロスエントロピーを最小化するように、写像データを更新したが、これに限らない。たとえば、ソフトマックスクロスエントロピーに代えて、教師データに対応するスコアと「1」との差と、それ以外のスコアと「0」との差のそれぞれの2乗和を最小とするように、写像データを更新してもよい。またたとえば、全単語を順次教師データとすること自体、必須ではない。
さらに、圧縮行列と出力写像とを有する場合において、学習時にそれら双方が同一の学習データを用いて更新されること自体必須ではない。たとえば、上記「出力写像について」の欄の(c)および(d)の例において、圧縮行列については、契約文書を含むさらに広範な文書を学習データに用いて、上記(g)のモデルによって更新された成分としてもよい。この場合、圧縮行列の学習後、(c)および(d)のモデルを用いて、契約文書を学習データとして、出力行列のみを学習すればよい。ここで、前半の作業は、位置情報を有しないN次元の単語ベクトルの学習となっている。なお、こうした場合であっても、S64の処理によって新たに学習データが生成される場合には、上記実施形態において例示した要領で学習を行ってもよい。
なお、写像データの更新処理としては、Adamを用いるものに限らず、たとえば確率的勾配降下法等を用いてもよい。
・「校正支援装置について」
上記実施形態では、サーバ側装置40によって校正支援装置を構成したが、これに限らない。たとえば、クライアント側装置10に、校正支援プログラム50や、前処理プログラム52、単語特定データ54および検査対象データ56をインストールし、クライアント側装置10によって校正支援装置を構成してもよい。この場合、写像データの更新がなされる場合、更新データをクライアント側装置10に提供可能としてもよい。
・「処理回路について」
上記実施形態では、記憶装置44に記憶されたプログラムを実行するCPU42によって、処理回路を実現したが、これに限らない。たとえば、S72,S74の処理を、ハードウェア処理する専用のハードウェア回路(たとえばASIC等)を備える等、処理回路は、以下の(a)〜(c)のいずれかの構成であればよい。(a)上記処理の全てを、プログラムに従って実行する処理装置と、プログラムを記憶するプログラム格納装置とを備える。(b)上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。(c)上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア処理回路や、専用のハードウェア回路は複数であってもよい。すなわち、上記処理は、1または複数のソフトウェア処理回路および1または複数の専用のハードウェア回路の少なくとも一方を備えた処理回路によって実行されればよい。
・「そのほか」
上記実施形態では、中間層が1層のニューラルネットワークの出力がスコアとなるモデルを例示したが、これに限らない。たとえば、中間層が2層以上となるものであってもよい。
検査対象となる文書としては、契約文書に限らない。
10…クライアント側装置、12…CPU、16…表示装置、18…操作部、20…通信機、22…ネットワーク、30…ネットワーク、40…サーバ側装置、42…CPU、44…記憶装置、46…通信機、48…ネットワーク、50…校正支援プログラム、52…前処理プログラム、54…単語特定データ、56…検査対象データ、58…写像データ、60…類型データ。

Claims (13)

  1. 単語集に関するデータであって該単語集に含まれるそれぞれの単語に対応する単語ベクトルデータを規定するためのデータである単語特定データと、前記単語集に含まれる単語の一部によって構成されて且つ検査対象とされる用語である対象用語を規定するデータである検査対象データと、前記対象用語以前および以後に登場する単語に応じたデータを入力として前記対象用語が適切である可能性の大小を表現するスコアを出力する出力写像を規定するデータである出力写像データと、が記憶された記憶装置と、
    入力された文の中から前記対象用語を抽出し、当該抽出した対象用語である抽出用語以前に登場する1または複数の単語に関する前記単語特定データに応じた前記単語ベクトルデータと、該抽出用語以降に登場する1または複数の単語のそれぞれに関する前記単語特定データに応じた前記単語ベクトルデータとを用いて前記出力写像の入力ベクトルデータを生成し、該入力ベクトルデータと前記出力写像データとに基づき、前記スコアを算出する算出処理と、
    前記スコアに基づき、前記抽出用語の適切性の判定結果を通知する通知処理と、を実行する処理回路と、を備える校正支援装置。
  2. 前記出力写像は、前記単語集に含まれる単語であって前記対象用語を構成する単語よりも多くの単語のそれぞれのスコアを出力するものであり、
    前記通知処理は、前記出力されたスコアのうち、前記抽出用語のスコアを選択して評価する選択処理を含む請求項1記載の校正支援装置。
  3. 前記検査対象データは、前記対象用語のいくつかが互いに関連した関連用語であることを規定するデータである関連規定データを含み、
    前記通知処理は、前記抽出用語のスコアと、該抽出用語に関連した前記関連用語のスコアとの選択的な大小比較に基づき、前記抽出用語のスコアに対する前記関連用語のスコアの相対的な大きさが所定以上である場合に、前記抽出用語が誤りである可能性がある旨の注意喚起をする喚起処理を含む請求項2記載の校正支援装置。
  4. 前記検査対象データは、前記対象用語のいくつかが互いに関連した関連用語であることを示すデータである関連規定データを含み、
    前記通知処理は、前記抽出用語のスコアと、該抽出用語に関連した前記関連用語のスコアとの選択的な大小比較に基づき、前記抽出用語のスコアに対する前記関連用語のスコアの相対的な大きさが規定以上である場合に、当該関連用語が適切である可能性がある旨通知する代替案通知処理を含む請求項2記載の校正支援装置。
  5. 前記算出処理は、前記抽出用語が複合語である場合、前記出力写像の出力のうち前記抽出用語を構成する単語のスコアに基づき、前記抽出用語のスコアを算出する請求項2〜4のいずれか1項に記載の校正支援装置。
  6. 前記処理回路は、外部からの要求に応じて前記検査対象データを更新することによって前記対象用語を新たに登録する登録処理を実行する請求項1〜5のいずれか1項に記載の校正支援装置。
  7. 前記処理回路は、
    前記通知処理に対し、前記抽出用語の適切性の判定結果に対する修正要求を受け付ける受付処理と、
    前記修正要求を受け付けた場合、修正対象となった文書を前記記憶装置に記憶させる記憶処理と、を実行する請求項1〜6のいずれか1項に記載の校正支援装置。
  8. 前記スコアの前記出力写像による原像であるベクトルの成分は、L側ベクトルとR側ベクトルとの連結ベクトルの成分を包含し、
    前記L側ベクトルは、前記抽出用語以前に登場する複数の単語のそれぞれに関する前記単語ベクトルデータ同士の合成および連結の少なくとも一方の演算によって定まるベクトルデータであるL側ベクトルデータによって規定され、
    前記R側ベクトルは、前記抽出用語以後に登場する複数の単語のそれぞれに関する前記単語ベクトルデータ同士の合成および連結の少なくとも一方の演算によって定まるベクトルデータであるR側ベクトルデータによって規定される請求項1〜7のいずれか1項に記載の校正支援装置。
  9. 前記L側ベクトルデータを定めるために用いられて且つ前記抽出用語以後に登場する1つの単語に関する前記単語ベクトルデータと、前記R側ベクトルデータを定めるために用いられて且つ前記抽出用語以後に登場する1つの単語に関する前記単語ベクトルデータとには、対応する単語が同一であっても互いに異なるものが含まれる請求項8記載の校正支援装置。
  10. 前記単語ベクトルデータの次元は、前記単語集に規定されている単語数よりも小さい請求項1〜9のいずれか1項に記載の校正支援装置。
  11. 前記記憶装置は、文書の類型に対応付けられたデータを記憶しており、
    前記処理回路は、
    検査対象となる文書の類型を取得する取得処理を実行し、
    前記算出処理は、前記類型に対応づけられたデータに基づき前記出力写像の入力を定める類型入力生成処理を含む請求項10記載の校正支援装置。
  12. 前記出力写像データは、学習用の文書の各単語を、当該単語が前記対象用語であるか否かにかかわらず、教師データとし、当該教師データ以前に登場する1または複数の単語の前記単語ベクトルデータと、該教師データ以後に登場する1または複数の単語の前記単語ベクトルデータとを特徴量として学習されたデータである請求項1〜11のいずれか1項に記載の校正支援装置。
  13. 請求項1〜12のいずれか1項に記載の前記各処理をコンピュータによって実行させる校正支援プログラム。
JP2018211019A 2018-11-09 2018-11-09 校正支援装置、および校正支援プログラム Active JP6701479B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018211019A JP6701479B2 (ja) 2018-11-09 2018-11-09 校正支援装置、および校正支援プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018211019A JP6701479B2 (ja) 2018-11-09 2018-11-09 校正支援装置、および校正支援プログラム

Publications (2)

Publication Number Publication Date
JP2020077269A JP2020077269A (ja) 2020-05-21
JP6701479B2 true JP6701479B2 (ja) 2020-05-27

Family

ID=70724173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018211019A Active JP6701479B2 (ja) 2018-11-09 2018-11-09 校正支援装置、および校正支援プログラム

Country Status (1)

Country Link
JP (1) JP6701479B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7371057B2 (ja) * 2021-04-28 2023-10-30 デロイトトーマツファイナンシャルアドバイザリー合同会社 情報処理装置、情報処理方法、端末プログラム、サーバプログラム及び契約書修正支援システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003132059A (ja) * 2001-10-19 2003-05-09 Seiko Epson Corp 言語文を用いた検索装置、検索システム、検索方法、プログラム、および記録媒体
JP2010218228A (ja) * 2009-03-17 2010-09-30 Nec Corp 文書作成支援装置、その方法及びそのプログラム
JPWO2014002775A1 (ja) * 2012-06-25 2016-05-30 日本電気株式会社 同義語抽出システム、方法および記録媒体
US9996530B1 (en) * 2016-12-30 2018-06-12 Google Llc Determining NCCs and/or using the NCCs to adapt performance of computer-based action(s)

Also Published As

Publication number Publication date
JP2020077269A (ja) 2020-05-21

Similar Documents

Publication Publication Date Title
WO2020008919A1 (ja) 機械学習装置及び方法
CN109271627B (zh) 文本分析方法、装置、计算机设备和存储介质
CN107871014A (zh) 一种基于深度融合哈希的大数据跨模态检索方法及系统
CN109145245A (zh) 预测点击率的方法、装置、计算机设备及存储介质
CN111091175A (zh) 神经网络模型训练方法、分类方法、装置和电子设备
CN105975573A (zh) 一种基于knn的文本分类方法
KR20190041790A (ko) 신경망 번역 모델 구축 장치 및 방법
CN109903099B (zh) 用于评分预测的模型构建方法和系统
US11847389B2 (en) Device and method for optimizing an input parameter in a processing of a semiconductor
CN111538841B (zh) 基于知识互蒸馏的评论情感分析方法、装置及系统
CN116258145B (zh) 多模态命名实体识别方法、装置、设备以及存储介质
CN114616573A (zh) 学习辅助装置、学习装置、学习辅助方法和学习辅助程序
CN114445121A (zh) 一种广告点击率预测模型构建及广告点击率预测方法
CN114386513A (zh) 一种集成评论与评分的交互式评分预测方法及系统
CN112699215A (zh) 基于胶囊网络与交互注意力机制的评级预测方法及系统
Jaroli et al. Deep learning model based novel semantic analysis
JP6701479B2 (ja) 校正支援装置、および校正支援プログラム
CN114357284A (zh) 基于深度学习的众包任务个性化推荐方法和系统
KR20220155785A (ko) 챗봇 운영 방법 및 장치
JP2019109648A (ja) 情報処理システムおよび情報処理システムの学習方法
CN117171358A (zh) 一种基于电网调度的多模态知识图谱方法
CN113312445B (zh) 数据处理方法、模型构建方法、分类方法及计算设备
CN114066036B (zh) 一种基于自修正融合模型的成本预测方法以及装置
CN113822684B (zh) 黑产用户识别模型训练方法、装置、电子设备及存储介质
CN113449524B (zh) 一种命名实体识别方法、系统、设备以及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181114

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20181114

A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20181114

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200107

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200326

R150 Certificate of patent or registration of utility model

Ref document number: 6701479

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250