以下、本発明の実施形態について、図面を参照して説明する。
図1は、本発明の実施形態による文書校正システムの適用例を示す概要図である。文書校正システム1は、例えば、対象文書10と文書校正装置20とを備える。対象文書10は、校正の対象とする文書であり、例えば、チラシやカタログ、チラシ、冊子などの印刷物における印刷前の原稿である。文書校正装置20は、対象文書10に記載された文言における記載が誤っている箇所、或いは記載が誤っている可能性がある箇所を検出し、検出結果を出力する。この例では、文書校正装置20は、記載誤りを検出した結果として対象文書10#を出力する例を示している。対象文書10#は、原稿の修正すべき箇所が視認可能に囲まれている。これにより、作業者が文書校正装置20により検出された校正の候補の記載を容易に視認して、記載誤りがあるか否かを確認することが可能となる。なお、以下の説明では、文書校正装置20によって対象文書10において記載が誤っていると判定された箇所を「アラート文言」と記載する場合がある。
文書校正システム1は、各種の文書、特に専門的な分野で用いられる文書を校正する業務に適用される。専門的な分野は任意の分野であってよいが、例えば、金融、求人、小売りなどの分野である。専門的な文書には、一般的な文書には用いられない特有の文言が記載される場合がある。例えば、金融の分野においては、金融商品を紹介するパンフレットやチラシが用いられる。金融商品に関するパンフレット等には、掲載された金融商品の金利が必ず明記される必要がある。例えば、求人の分野においては、求人広告が用いられる。求人広告には、求人を男性のみや女性のみ等、片方の性別に求人を限定したり、性別に応じて異なる内容にて求人したりするような記載がないようにする必要がある。例えば、小売りの分野では、商品チラシが用いられる。商品チラシには、商品の値段が税込みの価格であるのか、税抜きの価格であるのかが明記される必要がある。
文書校正システム1では、このような専門的な分野で用いられる文書について、その分野において特有の文言が記載されているか否かを判定する。例えば、文書校正システム1は、金融商品を紹介するパンフレットやチラシにおいて、金融商品の説明の中に「年利」や「年率」など金利を表示する文言が記載されているか否かを判定する。例えば、文書校正システム1は、商品チラシにおいて、商品の値段の前後に「税込」又は「税抜」の文言が記載されているか否かを判定する。そして、文書校正システム1は、特有の文言が記載されるべき箇所に、その文言が記載されていない場合、その箇所をアラート文言として出力する。
また、文書校正システム1では、このような専門的な分野で用いられる文書について、その分野において用いてはいけない文言が記載されているか否かを判定する。例えば、文書校正システム1は、求人広告において、「主婦限定」や「体が丈夫な方求む」など、求人において用いてはいけない文言が記載されているか否かを判定する。そして、文書校正システム1は、用いてはいけない文言が記載された箇所を抽出し、抽出した箇所を、アラート文言として出力する。
図2は、本発明の実施形態による文書校正装置の構成例を示すブロック図である。文書校正装置20は、例えば、取得部21と、入力部22と、表示部23と、校正部24と、制御部25と、記憶部26とを備える。取得部21は、対象文書10を取得する。取得部21は、例えば、記憶部26やUSB(Universal Serial Bus)メモリなどの記憶媒体を参照し、記憶媒体に記憶された対象文書10を取得する。或いは、取得部21は、インターネットなどの通信ネットワークを介して、外部装置から送信された対象文書10を取得するようにしてもよい。
入力部22は、マウスやキーボードなどの入力装置からの操作情報を取得する。例えば、図1の対象文書10#のように、記載の文言が校正の候補として表示される場合を考える。作業者は、その表示を視認し、マウスやキーボードを用いて、校正の候補として抽出された箇所を修正するか否かを操作する。取得部21は、作業者により操作された情報を取得し、取得した情報を制御部25に出力する。例えば、制御部25は、取得部21により取得された情報に基づいて、対象文書10の記載を変更する。これにより、対象文書10が校正される。
表示部23は、制御部25の制御に基づいて、液晶ディスプレイなどの表示装置に表示させる情報を出力する。例えば、表示部23は、取得部21により取得された、校正を行う前の対象文書10や、校正の候補が抽出された対象文書10#を表示する。
校正部24は、対象文書10の校正を行う。校正部24は、例えば、形態素解析部240と、標準校正部241と、個別調整部242と、校正反映部243とを備える。形態素解析部240は、対象文書10について形態素(意味を持つ最小単位、例えば単語)ごとに分離して、それぞれの形態素の品詞等を判別する形態素解析を行う。形態素解析部240は、対象文書10から分離した形態素に、その属性情報を対応付けて記憶させる。形態素の属性情報は、形態素に関する情報であって、例えば、形態素の品詞の種別、表記、よみ、文字数などの情報である。形態素の品詞の種別は、名詞、助詞、動詞、形容詞などの種別である。表記は、書き表された態様であって、例えば、漢字で書き表されているか、ひらがなで書き表されているか、漢字仮名混じりで書き表されているか等を示す情報である。よみは形態素の読み方を示す情報である。文字数は形態素に係る文字の数を示す情報である。
標準校正部241は、対象文書10について標準的な文書チェックを行い、対象文書10におけるアラート文言を抽出する。ここでの標準的な文書チェックとは、一般的な日本語の誤りを検出するものであって、例えば、誤字脱字、漢字の間違い、助詞の誤り、仮名の間違いなどを検出するものである。また、標準的な文書チェックとして、呼応表現などが正しく使用されているか、漢字変換に誤りがないかなどが含まれてよい。
標準校正部241は、例えば、ディープラーニング、自然言語解析、ルールベース検出など既存の様々な技術を組み合わせて標準的な文書チェックを行う。例えば、標準校正部241は、対象文書10から抽出された助詞の使い方に誤りがあるか否かを、自然言語解析及びディープラーニングの手法を用いて判定する。この場合、標準校正部241は、学習用のデータセットをRNN(Recurrent Neural Network)などの学習モデルに学習させた学習済みモデルを予め作成する。学習用のデータセットは、学習対象(いわゆる学習データ)とその正解(いわゆる教師データ)の組合せ(データセット)である。学習用のデータセットは、例えば、助詞とその前後に記載された名詞などが含まれる文章や文章の一部(以下、文章等という)に、その文章等における助詞の用法に誤りがあるか否かを対応付けたデータセットである。学習済みモデルは、学習用のデータセットを学習することにより、入力された文章等に含まれる助詞の用法が正しいか否かを精度よく推定できるように、学習モデル内の変数を適切な値に設定したモデルである。標準校正部241は、学習させたモデルを、例えば、学習済みモデル261として記憶部26に記憶させる。
標準校正部241は、対象文書10から抽出された形態素に基づいて自然言語解析を行い、助詞の用法を判定するための文書等を抽出する。ここでの自然言語解析は、形態素解析した結果を用いて、構文や意味を抽出することである。助詞の用法を判定するための文書等は、助詞の用法が正しいか否かを判定可能な長さの文書であり、例えば、助詞とその前後の名詞等を含む文書である。標準校正部241は、対象文書10から抽出した文書等を学習済みモデルに入力する。学習済みモデルは、入力された文章等に含まれる助詞の用法が正しいか否かを推定する。標準校正部241は、学習済みモデルの推定結果に基づいて、対象文書10から抽出した文書等における助詞の用法が誤っていると推定される場合に、その文書等を、アラート文言として出力する。
標準校正部241は、例えば、自然言語解析とルールベース検出を用いて、対象文書10に使用されている呼応表現などの係り受けや、漢字変換に誤りがないかを判定する。この場合、標準校正部241は、予め、呼応表現等に用いられる文言のデータベースを記憶部26などに記憶させておく。標準校正部241は、形態素解析した結果を用いて自然言語解析を行うことにより、呼応表現等を判定し得る長さの構文を抽出し、抽出した構文に基づいてデータベースを参照する。標準校正部241は、データベースに記憶された文言が、構文に含まれている場合、その構文に含まれている呼応表現等を抽出し、その表記が誤っているか否かを判定する。呼応表現等が誤っているか否かは、例えば、自然言語解析により導出した呼応表現に用いられている形態素の互いの関係の強さを示す指標などにより判定される。標準校正部241は、呼応表現等が誤っていると判定した場合、その文言を、アラート文言として出力する。
標準校正部241は、例えば、ルールベース検出により、誤字脱字、漢字の間違い、仮名の間違いなどを検出する。この場合、標準校正部241は、予め、誤字等の正誤表に相当するデータベースを記憶部26などに記憶させておく。標準校正部241は、対象文書10に用いられている形態素ごとにデータベースを参照する。標準校正部241は、形態素がデータベースに記憶されている場合、データベースの正誤表に基づいてその表記が誤っているか否かを判定する。標準校正部241は、形態素が誤字等であると判定した場合、その文言を、アラート文言として出力する。
また、標準校正部241は、ルールベースに基づく辞書等による禁止語句の抽出だけでなく、表記ゆれのチェックなども行う。例えば、標準校正部241は、対象文書10から抽出された形態素に基づいて、読みが同一であるが表記が異なる文言群を出力する。例えば、標準校正部241は、よみが「おきゃくさま」であるものを検索し、対象文書10に用いられている「おきゃくさま」、「お客様」、「お客さま」などの単語を抽出する。標準校正部241は、表記が異なる文言群のうち1つの文言を正規の表記とし、残りの文言を「表記ゆれ」があるアラート文言として出力する。例えば、標準校正部241は、「おきゃくさま」、「お客様」、「お客さま」のうち、「おきゃくさま」という正規の表記とは異なる表記、すなわち「お客様」、「お客さま」の文言をアラート文言として出力する。
個別調整部242は、対象文書10について個別の調整を行う。個別の調整とは、対象文書10が用いられる分野に特化した専門的な文書チェックを行うことであり、ルールベース検出などの手段により一律にアラート文言として抽出された文言を、その文言が使用されている状況、対象文書10の分野等に応じて、アラート文言として残すか、アラート文言から除外するかを判定することである。また、個別の調整には、複数のエンジンを使用した結果生じた不整合を調整する処理が含まれる。
以下では、第1例として、個別調整部242が、表記ゆれとして抽出された文言を、その文言が使用されている状況に応じて調整する場合を例に説明する。例えば、よみが「うけつけ」である形態素として、「受付」、「受け付け」との文言が抽出され、これらの文言のうち「受付」が正規の表記であり、「受け付け」が表記ゆれのアラート文言とされた場合を考える。しかしながら、この文言が動詞として使用されている場合における「受け付ける」との表記は正しい表記であるため、アラート文言から除外されることが望ましい。
この対策として、標準校正部241は、表記ゆれとして抽出された文言について、その品詞に応じた調整を行う。ここで、表記ゆれとして抽出された文言は、「第1文言」の一例である。また、文言は、その品詞に応じて記載が変化する。文言における品詞とは、文言が名詞として記載されているか、或いは動詞として記載されているかを示すものであり「第1文言が対象文書に記載されている状態」の一例である。個別調整部242は、例えば、表記ゆれのアラート文言として抽出された「受け付け」との文言が、動詞として使用されている場合、その文言をアラート文言から除外する。
以下では、第2例として、個別調整部242が、求人広告に係る文書において、「主婦の方求む」「主婦のみ募集」など、片方の性別のみに限定した表記をアラート文言として抽出する場合を例に説明する。
この場合、個別調整部242は、対象文書10から、「主婦」との文言が記載された箇所を抽出し、抽出した箇所をアラート文言とすることが考えられる。しかしながら、広告に係る文書においては、「主婦、及び主夫の方歓迎」、「主婦(主夫)求む」などと表記される場合も多い。このような、主婦と主夫とが併記された場合、片方の性別のみに限定した表記とはならないため、アラート文言から除外されることが望ましい。上述したような、対象文書10から、「主婦」との文言が記載された箇所を抽出するという単純な処理では、「主婦の方求む」との文言をアラート文言とし、尚且つ、「主婦、及び主夫の方求む」との文言をアラート文言としないと判定することができない。
この対策として、個別調整部242は、2段階の処理を行う。個別調整部242は、1段階目の処理として、まず、アラート文言の候補(アラート文言候補)を抽出する。アラート文言候補は、アラート文言となる可能性がある文言である。個別調整部242は、対象文書10から所定の文言が記載されている箇所を抽出し、抽出した箇所をアラート文言候補とする。以下、1段階目で抽出に用いられる所定の文言を「アラート文言」、或いは「第1文言」と記載する場合がある。1段階目で抽出に用いられる所定の文言は「第1文言」の一例である。
上記の例では、1段階目の処理における第1文言は「主婦」である。つまり、個別調整部242は、対象文書10から、「主婦」との文言が記載された箇所を、アラート文言候補として出力する。このようにして抽出されたアラート文言候補には、「主婦の方求む」や「主婦のみ募集」などという片方の性別のみに限定した表記が含まれると共に、「主婦、及び主夫の方歓迎」、「主婦(主夫)求む」などという片方の性別のみに限定しない表記も含まれる。
個別調整部242は、2段階目の処理として、1段階目に抽出したアラート文言候補を、アラート文言から除外するか、アラート文言として残すかを判定する。個別調整部242は、1段階目で抽出したアラート文言候補が記載されている箇所の前後の文脈における所定の範囲において、所定の文言が記載されているか否かを探索する。ここで探索の範囲は、任意に決定されてよい。探索の範囲は、例えば、探索の方向と探索する文字数などにより決定される。探索の方向は、アラート文言候補を含む文章等における、アラート文言候補が記載された箇所を基準とした方向であって、当該箇所よりも前に記載されているか、当該記載よりも後に記載されているかを示す情報である。探索する文字数は、アラート文言候補が記載された箇所を基準とした文字数であって、当該箇所から所定の文字数だけ離れた距離までの範囲に記載されているか否かを示す情報である。以下、2段階目で探索に用いられる所定の文言を「第2文言」と記載する場合がある。すなわち、2段階目で探索に用いられる所定の文言は、第1文言に応じて決定される文言であり、「第2文言」の一例である。また、第1文言が記載されている箇所から所定の範囲に第2文言が記載されているか否かは「第1文言が対象文書に記載されている状態」の一例である。
上記の例では、2段階目の処理で探索に用いられる第2文言は「主夫」である。つまり、個別調整部242は、対象文書10において「主婦」との文言が記載された箇所から所定の範囲(例えば、「主婦」の記載より後の方向に3文字以内)に「主夫」との文言が記載されているかを探索する。
個別調整部242は、1段階目の処理で抽出したアラート文言候補が記載された位置から所定の探索の周囲に第2文言が記載されている場合、その第2文言が周囲に記載されているアラート文言候補を、アラート文言から除外する。ここで、探索の範囲に第2文言が記載されていることは、「対象文書の記載における所定の条件」の一例である。
上記の例では、個別調整部242は、「主婦」との文言が記載された箇所から所定の探索の範囲に「主夫」との文言が記載されている場合、そのアラート文言候補「主婦」を、アラート文言から除外する。これにより、個別調整部242は、「主婦、及び主夫の方歓迎」、「主婦(主夫)求む」などという片方の性別のみに限定しない表記を、アラート文言から除外することができる。したがって、片方の性別のみに限定した表記のみをアラート文言として残すことができ、アラート文言を検出する精度を高めることが可能である。
また、個別調整部242は、探索の範囲を、探索の方向における文字数とする。これにより、個別調整部242は、「主婦、及び主夫の方歓迎」、「主婦(主夫)求む」との文言のみならず、「主婦又は主夫」、「主婦と主夫」「主婦や主夫など」等といった、微妙に異なる表記を全て抽出することができる。したがって、ルールベースの手法を用いてこれらの文言を逐一検索する場合と比較して、簡単な処理でより多くの文言(アラート文言から除外するアラート文言候補)を抽出することが可能である。
なお、上記では探索の方向を、アラート文言候補「主婦」よりも後に記載されているとする場合を例に説明したが、これに限定されない。探索の方向は、アラート文言候補よりも前の方向であってもよいし、前又は後のいずれかの方向であってもよい。例えば、探索の方向を、アラート文言候補「主婦」よりも前又は後に記載されているとした場合、「主夫又は主婦」、「主夫と主婦」などの文言も抽出することが可能となる。
また、個別調整部242は、2段階目の処理を、必要に応じて複数回繰り返すようにしてもよい。例えば、個別調整部242は、アラート文言から除外したアラート文言候補(アラート除外文言)の一部をアラート文言として復活させてもよい。これにより、一旦アラート文言から除外した文言を別の視点からチェックすることができる。
例えば、「主婦、及び主夫」、「主婦(主夫)」、「主婦又は主夫」、「主婦と主夫」「主婦や主夫」等の文言は、片方の性別のみに限定しない表記であるため、アラート文言から除外されることが望ましい。一方、これらの統一されていない表記は、読み手にとって読みづらい場合があるため。統一した表記とするほうがよい場合が考えられる。このような場合、個別調整部242は、ある表記のみをアラート文言から除外したままとして、その表記に合致しないその他の表記を、表記ゆれが修正されるべきアラート文言として復活させる。
個別調整部242は、アラート文言候補と、第2文言との間の文言に応じて、アラート文言から除外した文言(アラート除外文言)をアラート文言に復活させるか否かを判定する。例えば、「主婦、及び主夫」、「主婦(主夫)」、「主婦又は主夫」、「主婦と主夫」「主婦や主夫」等の文言を、「主婦、及び主夫」に統一させる場合を考える。この場合、個別調整部242は、アラート文言候補「主婦」と、第2文言「主夫」との間に、所定の文言「及び」が記載されていないものを、アラート文言に復活させる。これより、個別調整部242は、「主婦(主夫)」、「主婦又は主夫」、「主婦と主夫」「主婦や主夫」の文言を、アラート文言に復活させることができる。したがって、個別調整部242は、性別限定に関する視点からはアラート文言ではないが、別の視点、つまり表記ゆれの視点から「主婦、及び主夫」に統一するべき校正の対象とすることができる。つまり、複数の視点からアラート文言を検出することが可能となり、アラート文言を検出する精度を高めることが可能である。
校正反映部243は、対象文書10に行われた校正を反映させる。校正反映部243は、対象文書10にアラート文言が記された原稿(例えば、図1における対象文書10#)を視認した作業者の入力操作に従って、対象文書10において校正された箇所を反映させる。
制御部25は、文書校正装置20を統括的に制御する。制御部25は、取得部21によって取得された対象文書10を、校正部24に出力させる。制御部25は、標準校正部241及び個別調整部242により検出されたアラート文言を、表示部23に表示させる。制御部25は、入力部22に入力された操作情報を校正反映部243に出力させる。
上述した校正部24及び制御部25に係る機能は、文書校正装置20が備えるハードウェアとしてのCPU(Central Processing Unit)、GPU(Graphics Processing Unit)等のProcessing Unit(プロセッシングユニット)がメモリ領域に記憶されたプログラムを実行することにより実現される。
記憶部26は、記憶媒体、例えば、HDD(Hard Disk Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、RAM(Random Access read/write Memory)、ROM(Read Only Memory)、またはこれらの記憶媒体の任意の組み合わせによって構成される。記憶部26は、文書校正装置20の各種の処理を実行するためのプログラム、及び各種の処理を行う際に利用される一時的なデータを記憶する。記憶部26は、例えば、辞書情報260TP、学習済みモデル261と、調整情報262とを備える。
図3及び図4は、本発明の実施形態による辞書情報260(辞書情報260A、260B)の構成例を示す図である。辞書情報260は、第1文言を抽出するための情報であって、例えば、標準IDと、ワードと、アラート種別などの項目を備える。標準IDは、標準的な校正で用いる校正エンジン(標準校正エンジン)を一意に識別する識別情報である。標準校正エンジンには、例えば辞書を用いて禁止語句を抽出するような、いわゆる禁止語句エンジンが該当する。ワードは、第1文言に相当する文言であり、例えば、属性1〜3などの小項目を備える。属性1〜3には、第1文言に関する情報が示され、例えば、属性1に表記、属性2に品詞、属性3に表記、などが示される。表記は、漢字表記や漢字仮名混じり表記、ひらがな表記、カタカナ表記などにより示され、第1文言として抽出する表記そのものを示している。品詞は、第1文言として抽出する対象となる品詞が示されている。アラート種別は、アラート文言の種別が示される。図3及び図4の例ではアラート種別は「禁止」である。これは、記載が禁止されている、つまり校正の対象となり得ることを示している。
図3の例では、「主婦」又は「シュフ」と記載された文言が名詞として用いられている場合に、アラート文言候補として抽出の対象となることを示している。
図4の例では、「主夫」又は「しゅふ」と記載された文言が名詞として用いられている場合に、アラート文言候補として抽出の対象となることを示している。
記憶部26に記憶される学習済みモデル261は、学習済みモデルを構築するための情報である。学習済みモデルを構築するための情報とは、例えば、学習済みモデルがRNN(Recurrent Neural Network)適用のモデルであれば、入力層のノード数、中間層の数及びノード数、ノード間の結合係数に応じた重みや、バイアス成分などを示す情報である。
図5及び図6は、本発明の実施形態による調整情報262(調整情報262A、262B)の構成例を示す図である。調整情報262は、第1文言と第2文言との関係を示す情報であって、例えば、調整ID、第1ワード、第2ワード、関係性、アラート種別などの項目を備える。調整IDは、個別に調整する校正エンジン(個別調整エンジン)を一意に識別する識別情報であり、具体的には、調整情報を一意に識別する識別情報である。第1ワードは、第1文言に相当する文言である。第2ワードは第2文言に相当する文言である。第1ワード及び第2ワードには、辞書情報260におけるワードと同様に、属性1〜3などの小項目を備える。これら属性1〜3は、辞書情報260におけるワードの属性1〜3と同様であるため、その説明を省略する。関係性は、第1ワードと第2ワードとの関係を示す情報である。関係性として、例えば、探索の範囲などの条件が示される。関係性には、例えば、方向、距離、及び条件などの項目が備えられている。方向は、検索の方向であって、第1ワードより前の記載か、後の記載かを示す情報である。距離は、第1ワードと第2ワードとの間の距離であり、第1ワードと第2ワードとの間に記載される文字の数である。条件は、探索の条件である。
図5の例では、第1ワードが「主婦」であり、第2ワードが「主夫」であり、第1ワードの前又は後の方向に、3文字以内に第2ワードが記載されていること、及び、両ワードの間に何らかの文字が存在する場合に、条件許可となることが示されている。条件許可とは、一旦禁止した文言について、所定条件を充足する場合に許可されることである。すなわち、一旦、アラート文言候補とした第1ワードを、探索範囲内に第2ワードが記載されているという条件を充足する場合に、アラート文言から除外して、記載を許可することである。
図6の例では、第1ワードが「主婦」であり、第2ワードが「主夫」であり、第1ワードの前又は後の方向に、3文字以内に第2ワードが記載されていること、及び、両ワードの間に文字「/(スラッシュ)」が以外の文字が存在する場合に、条件禁止となることが示されている。条件禁止とは、一旦許可した文言について、所定条件を充足する場合に、再度禁止されることである。すなわち、一旦、アラート文言から除外した文言を、「主婦」と「主夫」の間に「/(スラッシュ)」ではない文字が記載された文言をアラート文言として復活させ、再度記載を禁止することである。
図7は、本発明の実施形態による校正部が行う処理を説明する図である。図7の横方向には校正部24による処理が示されている。この例では、校正部24の個別調整部242により4回の抽出(抽出回数1回目〜4回目)が行われ、その結果に基づいてアラート文言が検出される例を示している。適用IDは、抽出の際に用いられる校正エンジンの識別情報であり、図3及び図4に示す標準ID(標準校正エンジンの識別情報)、又は図5及び図6に示す調整ID(個別調整エンジンの識別情報)のいずれかが示されている。ここでの抽出は、適用IDとして示される標準ID又は調整IDで規定される辞書などを用いたアラート文言候補の抽出、及びアラート文言候補から所定の条件を充足する文言を除外して、或いは一旦除外した文言を復活させてアラート文言を抽出する処理である。図7の縦方向には、対象文書10に記載された文言が示されている。この例では、対象文書10に、「主婦」、「主夫」、「主婦・主夫」、「主婦/主夫」、「主婦と主夫」が記載されている例を示している。
なお、図7では、アラート文言候補として抽出された文言、アラート文言として復活された文言を「×」印、アラート文言から除外された文言を「〇」印、抽出も除外もなされない文言を「−」印で、それぞれ示している。
個別調整部242は、1回目の抽出にて、適用IDとして標準ID(J0001)を用いてアラート文言候補を抽出する。標準ID(J0001)は図3の辞書情報260Aに相当する辞書である。この場合、「主婦」との記載された文言がアラート文言候補として抽出される。この例では、「主婦」、「主夫」、「主婦・主夫」、「主婦/主夫」、「主婦と主夫」の記載のうち、「主婦」、「主婦・主夫」、「主婦/主夫」、「主婦と主夫」がアラート文言候補として抽出される。
個別調整部242は、2回目の抽出にて、適用IDとして標準ID(J0002)を用いてアラート文言候補を抽出する。標準ID(J0001)は図4の辞書情報260Bに相当する辞書である。この場合、「主夫」との記載された文言がアラート文言候補として抽出される。この例では、「主婦」、「主夫」、「主婦・主夫」、「主婦/主夫」、「主婦と主夫」の記載のうち、「主夫」、「主婦・主夫」、「主婦/主夫」、「主婦と主夫」がアラート文言候補として抽出される。
個別調整部242は、3回目の抽出にて、適用IDとして調整ID(C0001)を用いてアラート文言から除外する文言を抽出する。調整ID(C0001)は図5の調整情報262Aに相当する情報である。この場合、「主婦」と「主夫」とが間3文字以内で記載された文言がアラート文言から除外される。この例では、「主婦」、「主夫」、「主婦・主夫」、「主婦/主夫」、「主婦と主夫」の記載のうち、「主婦・主夫」、「主婦/主夫」、「主婦と主夫」がアラート文言から除外される。
個別調整部242は、4回目の抽出にて、適用IDとして調整ID(C0011)を用いてアラート文言に復活させる文言を抽出する。調整ID(C0011)は図6の調整情報262Bに相当する情報である。この場合、「主婦」と「主夫」との間に「/(スラッシュ)」以外の文字が記載された文言がアラート文言として復活する。この例では、「主婦・主夫」、「主婦/主夫」、「主婦と主夫」の記載のうち、「主婦・主夫」、「主婦と主夫」がアラート文言として復活する。
個別調整部242は、4回の抽出を行った結果、「主婦」、「主夫」、「主婦・主夫」、「主婦/主夫」、「主婦と主夫」の記載のうち、「主婦」、「主夫」、「主婦・主夫」、「主婦と主夫」の記載をアラート文言として検出し、表示部23などに出力して表示させる。一方、個別調整部242は、「主婦/主夫」の記載については、アラート文言とはしない。なお、図7の備考欄に記載されているように、アラート文言と抽出した内訳として、「主婦」、及び「主夫」は、単独で記載すると片方の性別のみに限定する記載となるために、記載することが禁止されていることから抽出された文言である。「主婦・主夫」、及び「主婦と主夫」は、「主婦/主夫」に記載を統一すべきであることから抽出された文言である。
図8は、本発明の実施形態による文書校正装置が行う処理の流れを示すフローチャートである。
ステップS11:
文書校正装置20は、取得部21によって対象文書10を取得する。取得部21は取得した対象文書10の情報を、校正部24に出力する。
ステップS12:
校正部24は、取得部21から取得した対象文書10から、アラート文言を検出する。具体的に、校正部24は、形態素解析部240によって対象文書10に記載された文書を品詞ごとに分離する。校正部24は、標準校正部241によって、標準的な文書チェックを行い、対象文書10から誤字脱字などのアラート文言を検出する。また、校正部24は、個別調整部242によって、専門的な分野に特化した文書チェックを行う。個別調整部242は、辞書情報260を用いて、対象文書10に記載された第1文言を、アラート文言候補として抽出する。
ステップS13:
個別調整部242は、条件許可の個別調整があるか否かを判定する。条件許可の個別判定とは、ステップS12において抽出したアラート文言候補のうち、アラート文言から除外する文言があるか否かを判定することである。具体的には、個別調整部242は、ステップS12にて抽出に用いた第1文言に対応する調整情報262で、アラート種別が「条件許可」であるものがあるか否かを判定する。個別調整部242は、係る条件に合致する調整情報262がある場合には、条件許可の個別調整があると判定する。一方、個別調整部242は、係る条件に合致する調整情報262がない場合には、条件許可の個別調整がないと判定する。
ステップS14:
個別調整部242は、条件許可の個別調整がある場合、ステップS12において抽出したアラート文言候補から、調整情報262を用いて、アラート文言から除外する文言(アラート除外文言)を抽出する。
ステップS15:
個別調整部242は、条件禁止の個別調整があるか否かを判定する。条件禁止の個別判定とは、ステップS14において抽出したアラート除外文言のうち、アラート文言として復活させる文言があるか否かを判定することである。具体的には、個別調整部242は、ステップS12にて抽出に用いた第1文言に対応する調整情報262で、アラート種別が「条件禁止」であるものがあるか否かを判定する。個別調整部242は、係る条件に合致する調整情報262がある場合には、条件禁止の個別調整があると判定する。一方、個別調整部242は、係る条件に合致する調整情報262がない場合には、条件禁止の個別調整がないと判定する。
ステップS16:
個別調整部242は、条件禁止の個別調整がある場合、ステップS14において抽出したアラート除外文言から、調整情報262を用いて、アラート文言に復活させる文言を抽出する。
ステップS17:
個別調整部242は、個別に行う文書チェックの内容に応じて、条件許可と条件禁止を適宜繰り返し、最終的にアラート文言に残ったものを、アラート文言として出力し、例えば、表示部23に表示させる。
なお、図8では、校正に用いるエンジンの組み合わせが登録されている場合を例示して説明した。しかしながら、これに限定されることはない。文書校正装置20は、校正に用いる校正エンジン(標準校正エンジン、及び個別調整エンジン)の組み合わせを、校正エンジンから出力された結果等に応じて、その都度、手動により次の校正エンジンを選択するようにしてもよい。この場合、ステップS12の前に、作業者の操作入力などによって校正に用いる校正エンジンが、図7に示す適用IDなどで指定される。
以上説明したように、実施形態の文書校正装置20は、対象文書10から、校正の対象となるアラート文言を抽出する。実施形態の文書校正装置20は、個別調整部242を備える。個別調整部242は、対象文書10にある所定の第1文言を、アラート文言候補として抽出する。個別調整部242は、第1文言、及び第1文言が対象文書10に記載された状態(例えば、第1文言の品詞)に基づいて、当該アラート文言候補をアラート文言から除外するか否かを判定する。
これにより、実施形態の文書校正装置20では、ルールベースに基づく一律の文言抽出を行った場合であっても、その文言が記載された状態に応じて、本当にアラート文言であるのか、或いはアラート文言から除外すべきなのかを判定することができるため、精度よく校正することが可能である。しかも、本実施形態の文書校正装置20では、ルールベースに基づく一律の文言抽出を行った結果を用いて、個別の調整(判定)を行う。このため、標準的な検索エンジンをカスタマイズすることなく利用することができるため、カスタマイズする場合と比較して手間をかけることなく校正することが可能である。すなわち、専門性のある分野における専門文書であっても、手間をかけることなく精度よく校正することができる。
また、実施形態の文書校正装置20では、個別調整部242は、対象文書10にある所定の第1文言を、アラート文言候補として抽出する。個別調整部242は、第1文言に応じて決定される所定の第2文言が、対象文書10の記載における所定の条件を充足するか否かに基づいて、当該アラート文言候補をアラート文言から除外するか否かを判定する。
これにより、実施形態の文書校正装置20では、第1文言と第2文言との関係が所定の条件を充足するか否かという容易な手法を用いて、本当にアラート文言であるのか、或いはアラート文言から除外すべきなのかを判定することができる。
また、実施形態の文書校正装置20では、個別調整部242は、対象文書10からアラート文言候補を抽出した後に、抽出したアラート文言候補をアラート文言から除外するか否かを判定するという2段階の処理を用いて、アラート文言を抽出する。これにより、「主婦」単独で使用された場合にはアラートとするが、「主婦」と「主夫」と併記された場合はアラートの対象としない等、複雑な校正ルールに対応させることが可能となる。
しかも、実施形態の文書校正装置20では、個別調整部242は、第1文言とその周辺に記載された第2文言との関係に基づいてアラート文言を抽出する。このため、第1文言と第2文言とその両者の関係を設定するという非常に単純な処理で容易にアラート文言を抽出することが可能である。したがって、ディープラーニング、自然言語解析、ルールベース検出などの技術を組み合わせて特有の校正ルールを設定する場合と比較して処理負担が少ない。また、第1文言と第2文言とその両者の関係を設定し直すことで、校正ルールの変更にも容易に対応させることができる。
また、実施形態の文書校正装置20では、個別調整部242は、第1文言と第2文言との間に記載された文字の数か所定の閾値以内である場合、アラート文言候補をアラート文言から除外すると判定する。これにより、実施形態の文書校正装置20では、「主婦と主夫」、「主婦及び主夫」、「主婦(主夫)」など微妙に違う表記を、同一のアルゴリズムを用いて、全て抽出することができる。したがって、ルールベース検出などの技術を用いて、「主婦と主夫」、「主婦及び主夫」、「主婦(主夫)」などの表記を逐一抽出する場合と比較して処理負担が少ない。
また、実施形態の文書校正装置20では、個別調整部242は、第1文言と第2文言との記載順序が所定の順序である場合、アラート文言候補をアラート文言から除外すると判定する。これにより、実施形態の文書校正装置20では、「主婦と主夫」、「主夫と主婦」を区別して抽出することもできるし、区別せずに抽出することも可能である。したがって、適用する校正ルールに応じて柔軟に対応させることが可能である。
また、実施形態の文書校正装置20では、個別調整部242は、第1文言、第2文言、及び第1文言と第2文言との間に記載された文字に基づいて、一旦除外したアラート除外文言を、再度、アラート文言に復活させるか否かを判定する。これにより、実施形態の文書校正装置20では、第1文言と第2文言との間に記載された文字に基づいて、一旦除外したアラート除外文言を、再度、アラート文言に復活させることができる。したがって、実施形態の文書校正装置20では、ある校正ルールに基づいてアラート対象から除外した文言を、別の校正ルールに基づいて復活させることができる。例えば、第1文言と第2文言が併記されることでアラート文言から除外された文言について、特定の表記以外の表記ゆれを抽出したり、特定の表記のみを抽出したりすることができる。したがって、「主婦」と「主夫」と併記された場合はアラートの対象としないが、表記は「主婦・主夫」に統一させる、などといった複雑な校正ルールに対応させることが可能となる。
(変形例1)
次に、実施形態の変形例1について説明する。本変形例では、対象文書10の属性情報に応じて、アラート文言から除外するか否かを判定する点において、上述した実施形態と相違する。対象文書10の属性情報とは、対象文書10が用いられる分野、或いは対象文書10の読者として想定される人の性別や年代などの情報である。
例えば、「主婦」という文言をアラート文言として抽出するが、そもそも主婦向けの雑誌であって、求人広告を掲載しない雑誌にある表記であれば、「主婦」と「主夫」との関係性を見るまでもなく、アラート文言から除外されてよい。このような場合に、本変形例が適用される。
図9は、本発明の実施形態の変形例1による調整情報262Cの構成例を示す図である。調整情報262Cは、例えば、調整ID、ワード、関係性、アラート種別などの項目を備える。調整IDは、調整情報を一意に識別する識別情報である。ワードは、辞書情報260におけるワードと同様である。アラート種別は調整情報262Aと同様である。
本変形例において、関係性は、ワードが記載された対象文書10の属性の関係を示す情報である。対象文書10の属性とは、例えば、対象文書10が対象とする分野(ジャンル)である。
本変形例の個別調整部242は、2段階目の処理において、第1文言と対象文書10の属性情報とに基づいて、アラート文言候補をアラート文言とするか否かを判定する。例えば、個別調整部242は、調整情報262Cに記憶された関係性とアラート種別とを参照する。個別調整部242は、関係性に示されたジャンルと対象文書10のジャンルが一致し、かつ、アラート種別が条件許可である場合、第1文言をアラート文言から除外する。
以上説明したように、実施形態の変形1の個別調整部242は、第1文言と対象文書10の属性情報とに基づいて、アラート文言候補をアラート文言とするか否かを判定する。これにより、対象文書10の属性情報に応じた校正を行うことが可能である。
(変形例2)
次に、実施形態の変形例2について説明する。本変形例では、第1文言の属性情報に応じて、アラート文言から除外するか否かを判定する点において、上述した実施形態と相違する。文言の属性情報とは、表記に関する情報であって、漢字表記、かな表記、或いは漢字かな混じりの表記などを示す情報である。
例えば、「主婦」という文言をアラート文言として抽出するが、「しゅふ」、「シュフ」、「SYUFU」などの表記であれば、片方の性別のみに限定した表記とはならないため、アラート文言から除外されてよい。このような場合に、本変形例が適用される。
図10は、本発明の実施形態の変形例2による調整情報262Dの構成例を示す図である。調整情報262Dは、例えば、調整ID、ワード、関係性、アラート種別などの項目を備える。調整IDは、調整情報を一意に識別する識別情報である。ワードは、辞書情報260におけるワードと同様である。アラート種別は調整情報262Aと同様である。本変形例において、関係性は、ワードの表記を示す情報である。
本変形例の個別調整部242は、2段階目の処理において、第1文言と、その第1文言の属性情報とに基づいて、アラート文言候補をアラート文言とするか否かを判定する。例えば、個別調整部242は、調整情報262Dに記憶された関係性とアラート種別とを参照する。個別調整部242は、関係性に示された表記と対象文書10に記載された表記とが一致し、かつ、アラート種別が条件許可である場合、第1文言をアラート文言から除外する。
以上説明したように、実施形態の変形1の個別調整部242は、第1文言と第1文言の属性情報とに基づいて、アラート文言候補をアラート文言とするか否かを判定する。これにより、表記に応じた校正を行うことが可能である。
上述した実施形態における文書校正装置20の全部または一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。