以下図面について、本発明の一実施の形態を詳述する。
(1)本実施の形態による曖昧箇所訂正支援システムの構成
図1において、1は全体として本実施の形態による曖昧箇所訂正支援システムを示す。この曖昧箇所訂正支援システム1は、ネットワーク2を介して接続された曖昧箇所訂正支援装置3及びファイルサーバ4と、1又は複数のクライアント5とを備えて構成される。
曖昧箇所訂正支援装置3は、内部バス10を介して相互に接続されたCPU(Central Processing Unit)11、メインメモリ12、補助記憶装置13、ネットワークアダプタ14及び入出力部15と、入力装置16及び表示装置17とを備えた汎用のコンピュータ装置から構成される。
CPU11は、曖昧箇所訂正支援装置3全体の動作制御を司るプロセッサである。またメインメモリ12は、例えば揮発性の半導体メモリから構成され、CPU11のワークメモリとして利用される。
補助記憶装置13は、ハードディスク装置やSSD(Solid State Drive)又はフラッシュメモリ等の大容量の不揮発性記憶媒体から構成され、各種プログラムや必要なデータが格納される。補助記憶装置13に格納されたプログラムがメインメモリ12にロードされ、このプログラムをCPU11が実行することにより、後述のような曖昧箇所訂正支援装置3全体としての各種処理が行われる。
ネットワークアダプタ14は、例えばNIC(Network Interface Card)などから構成され、ネットワーク2を介したファイルサーバ4やクライアント5との通信時におけるプロトコル制御を行う。
入出力部15は、入力装置16及び表示装置17に対するインタフェースであり、ユーザ操作に応じて入力装置16から与えられるコマンドを曖昧箇所訂正支援装置3内部の信号フォーマットに変換したり、画像情報を対応する信号フォーマットに変換して表示装置17に出力する。
入力装置16は、ユーザが必要な操作を行うために利用するデバイスであり、例えば、マウスやキーボードなどから構成される。入力装置16は、ユーザ操作に応じたコマンドを入出力部15に出力する。また表示装置17は、例えば、液晶ディスプレイや有機EL(Electro Luminescence)ディスプレイなどから構成され、入出力部15から与えられた画像情報に応じた画面や画像を表示する。
ファイルサーバ4は、文書ファイルFLを蓄積及び管理するファイルシステム機能が搭載された汎用のサーバ装置であり、内部バス20を介して接続されたCPU21、補助記憶装置22、ネットワークアダプタ23及び入出力部24と、入力装置25及び表示装置26とを備えて構成される。
これらCPU21、補助記憶装置22、ネットワークアダプタ23、入出力部24、入力装置25及び表示装置26は、それぞれ曖昧箇所訂正支援装置3のCPU11、補助記憶装置13、ネットワークアダプタ14、入出力部15、入力装置16及び表示装置17と同様の機能及び構成を有するものであるため、ここでの詳細説明は省略する。
ファイルサーバ4の補助記憶装置22には、各種プログラムのほか、各文書ファイルFLのデータと、文書ファイルFLごとのファイル情報FLIなどが格納される。なお、ファイル情報は、対応する文書ファイルFLに基づく文書に対応する製品のバージョンや当該文書の作成日及び作成者の情報や、その文書が関連する製品の製品名などのその文書のメタ情報を含む情報である。
クライアント5は、ユーザが文書ファイルFLをファイルサーバ4に読み書きしたり、所望する文書内の曖昧箇所の訂正作業の支援を曖昧箇所訂正支援装置3に要求するために利用するコンピュータ装置である。
このクライアント5は、内部バス30を介して相互に接続されたCPU31、メインメモリ32、ネットワークアダプタ33及び入出力部34と、入力装置35及び表示装置36とを備えて構成される。
これらCPU31、メインメモリ32、ネットワークアダプタ33、入出力部34、入力装置35及び表示装置36は、それぞれ曖昧箇所訂正支援装置3のCPU11、メインメモリ12、ネットワークアダプタ14、入出力部15、入力装置16及び表示装置17と同様の機能及び構成を有するものであるため、ここでの詳細説明は省略する。
(2)曖昧箇所訂正支援機能
次に、曖昧箇所訂正支援装置3に搭載された曖昧箇所訂正支援機能について説明する。この曖昧箇所訂正支援機能は、クライアント5を介してユーザにより指定された対象とする文書(以下、これを対象文書と呼ぶ)内の数値的に曖昧な表現箇所(曖昧箇所)の記載を、数値的に明瞭化するようユーザが訂正する訂正作業を支援する機能である。
なお、以下においては、ファイルサーバ4に格納された文書ファイルFLに基づく文書(以下、これを蓄積文書と呼ぶ)や、ユーザにより指定される対象文書は、ソフトウェア製品の開発段階でやり取りされたメールや設計メモ又は設計資料などであるものとする。また対象文書の曖昧箇所を明瞭化するように訂正する訂正作業を実行するユーザは、ある程度の知識を有するベテラン技術者であるものとする。
以上のような曖昧箇所訂正支援機能を実現するための手段として、曖昧箇所訂正支援装置3の補助記憶装置13には、多条件テーブル作成プログラム40、曖昧単語抽出プログラム41、曖昧構文抽出プログラム42、訂正候補抽出プログラム43、訂正候補スコア付けプログラム44、訂正箇所・訂正内容表示プログラム45、選択訂正候補学習プログラム46、訂正結果表示プログラム47及び同様訂正箇所判定プログラム48と、多条件テーブル50、曖昧単語テーブル51、曖昧構文テーブル52、重みテーブル53、同一構文判定テーブル54及び製品名テーブル55とが格納されている。
多条件テーブル作成プログラム40は、蓄積文書内の各文章に対して係り受け解析をそれぞれ行うことにより、各蓄積文書から「If-Then形式」で記述された文章の一部又は全部を「多条件文」として抽出し、抽出した多条件文に関する必要な情報を多条件テーブル50に登録する機能を有するプログラムである。
なお、ここでの「If-Then形式」とは、ソフトウェア関連の文書において多く用いられる「主語」、「動詞」、動詞が表す動作の程度を表す「数値」及び動詞が表す動作の「発生条件(〜とき、〜時)」、を含む表現形式であり、例えば、「初回起動をするときには、メモリを4GB以上に増やす」や、「KBE-500エラー発生時、メモリを16GBに増量する」などの文章がこれに該当する。前者の例では、「初回起動をするとき」が発生条件、「メモリ」が主語、「4GB以上」が数値、「増やす」が動詞にそれぞれ該当し、後者の例では「KBE-500エラー発生時」が発生条件、「メモリ」が主語、「16GBに」が数値、「増量する」が動詞にそれぞれ該当する。
曖昧単語抽出プログラム41は、「多い」、「少ない」、「長期間」及び「少し」などの曖昧性を有する形容表現の単語(以下、これを曖昧単語と呼ぶ)を含む文章又は文章の一部分を曖昧箇所として対象文書から抽出する機能を有するプログラムである。
また曖昧構文抽出プログラム42は、例えば「メモリを増やす」のように、述語動詞で表された動作の程度を表す数値(例えば「4GBに」)を伴わなければ内容が曖昧となる文章又は文章の一部分を曖昧箇所として対象文書から抽出する機能を有するプログラムである。
訂正候補抽出プログラム43は、曖昧単語抽出プログラム41や曖昧構文抽出プログラム42により抽出された対象文書内の曖昧箇所ごとに、その曖昧箇所を数値的に明瞭な記述に訂正する際の参考とすべき多条件文を訂正候補として多条件テーブル50から抽出する機能を有するプログラムである。具体的に、訂正候補抽出プログラム43は、多条件テーブル50に登録された幾つかの多条件文の中から、その主語が対象文書から抽出した曖昧箇所の主語と一致する多条件文をすべて特定し、これら多条件文をその曖昧箇所の訂正候補としてそれぞれ抽出する。
例えば、対象文書における曖昧箇所が「メモリを多く使用する」というものであり、多条件テーブル50に「初回起動をするとき、メモリを4GB以上に増やす」という多条件文と、「KBE-500エラー発生時、メモリを16GBに増量する」という多条件文とが格納されていた場合、訂正候補抽出プログラム43は、これらの多条件文をかかる曖昧箇所の訂正候補として抽出する。
訂正候補スコア付けプログラム44は、訂正候補抽出プログラム43により対象文書内の各曖昧箇所についてそれぞれ抽出された訂正候補ごとに、その訂正候補に含まれる数値を対応する曖昧箇所の述語動詞の修飾語として追加することの適正度合を表すスコア(以下、これを訂正候補スコアと呼ぶ)をそれぞれ算出し、算出した訂正候補スコアをその訂正候補に付与する機能を有するプログラムである。
訂正箇所・訂正内容表示プログラム45は、対象文書内のユーザにより指定された曖昧箇所の各訂正候補に関する情報(多条件テーブル50に格納されている対応する多条件文の情報)や、これら訂正候補の訂正候補スコアに基づいて、図9について後述する曖昧箇所訂正支援画面70や図10について後述する訂正候補詳細画面100を表示装置17に表示する機能を有するプログラムである。ユーザは、対象文書内の対応する曖昧箇所についてどの訂正候補の数値を利用して内容を明瞭化するかを、この曖昧箇所訂正支援画面70や訂正候補詳細画面100を用いて判断及び選択したり、選択した訂正候補の数値を利用してかかる曖昧箇所を実際に訂正することができる。
選択訂正候補学習部46は、曖昧箇所訂正支援画面70(図9)上でユーザにより設定された、当該曖昧箇所訂正支援画面70に情報を表示すべき訂正候補のフィルタリング条件を抽出して図5について後述する重みテーブル53に登録する機能を有するプログラムである。重みテーブル53に登録された情報は、その後、訂正候補の訂正候補スコアを算出する際に利用される。
また訂正結果表示部47は、ユーザにより対象文書内の各曖昧箇所について行われた訂正作業の作業結果(つまり訂正後の曖昧箇所)を表示装置17に表示する機能を有するプログラムである。訂正結果表示部47は、対象文書内のユーザにより訂正されなかった曖昧箇所については、訂正候補スコアが最も高い訂正候補を用いてその曖昧箇所を訂正(つまり、その訂正候補を述語動詞の修飾語として追加するよう訂正)する。
さらに同様訂正箇所判定部48は、ファイルサーバ4に蓄積された各蓄積文書から、対象文書内の訂正された各曖昧箇所と同じ構文(名詞及び述語動詞の組合わせ)の文章の一部又は全部を蓄積文書の曖昧箇所として抽出し、その曖昧箇所の訂正候補をユーザに提示する機能を有するプログラムである。
一方、多条件テーブル50は、上述のように多条件テーブル作成プログラム40により蓄積文書から抽出された上述の多条件文に関する必要な情報を記憶及び管理するために利用されるテーブルであり、図2に示すように、発生条件欄50A、主語欄50B、数値欄50C、動作欄50D、原文欄50E、製品名欄50F、バージョン欄50G、作成日欄50H及び作成者欄50Iを備えて構成される。多条件テーブル50では、1つの行が蓄積文書から抽出された1つの多条件文に対応する。
そして原文欄50Eには、蓄積文書から抽出された多条件文が格納される。また主語欄50Bには、その多条件文において主語に該当する部分の文節が格納され、動作欄50Dには、その多条件文において述語動詞に該当する部分の文節が格納される。さらに数値欄50Cには、その多条件文において述語動詞により表される動作の程度を表す数値の文節が格納され、発生条件欄50Aには、対応する多条件文において述語動詞により表される動作が発生するための発生条件が格納される。
例えば、図2に示すように、原文欄50Eに格納された多条件文が「初回起動をするとき、メモリを4GB以上に増やす」というものであった場合、主語欄50Bには「メモリを」、動作欄50Dには「増やす」、数値欄50Cには「4GB以上に」が格納され、発生条件欄50Aには「初回起動をするとき」が格納される。
また製品名欄50F及びバージョン欄50Gには、それぞれその多条件文を抽出した蓄積文書が関連する製品の製品名及びバージョン(製品バージョン)が格納され、作成日欄50H及び作成者欄50Iには、それぞれその蓄積文書の作成日及び作成者が格納される。なお、これら製品名、バージョン、作成日及び作成者の情報は、ファイルサーバ4に格納された対応する蓄積文書のファイル情報FLI(図1)から多条件テーブル作成プログラム40により取得されて多条件テーブル50に登録される。
従って、図2の例の場合、「初回起動をするとき、メモリを4GB以上に増やす」という原文を含む蓄積文書は、「Product1」という製品名の「7.0.0」というバージョンのソフトウェアに関する文書であり、「2010/07/05」に「A」という人が作成したものであることが示されている。
曖昧単語テーブル51は、事前に登録された曖昧単語を記憶保持するために利用されるテーブルであり、図3に示すように、「多い」、「少ない」、「長期間」及び「少し」などの曖昧単語が格納される。
なお、この曖昧単語テーブル51は、ユーザが手作業により作成するようにしてもよく、また曖昧箇所訂正支援装置3が自動的に作成するようにしてもよい。後者の場合、ユーザが種となる「ディスク」、「メモリ」及び「通信速度」などの名詞を曖昧箇所訂正支援装置3に与え、曖昧箇所訂正支援装置3が、ファイルサーバ4に蓄積された各蓄積文書内でかかる名詞を検索し、その名詞に係り受けしている形容表現の単語を曖昧単語として抽出して曖昧単語テーブル51に登録するようにすればよい。
また曖昧構文テーブル52は、事前に登録された曖昧構文を記憶保持するために利用されるテーブルであり、図4に示すように、主語欄52A及び述語動詞欄52Bを備えて構成される。曖昧構文テーブル52では、1つの行が曖昧構文を構成する1つの名詞に対応する。そして主語欄52Aには、対応する曖昧構文における主語が格納され、述語動詞欄52Bには、その曖昧構文における述語動詞が格納される。
なお、この曖昧構文テーブル52は、ユーザが手作業により作成するようにしてもよく、また曖昧箇所訂正支援装置3が自動的に作成するようにしてもよい。後者の場合、ユーザが種となる名詞を曖昧箇所訂正支援装置3に与え、曖昧箇所訂正支援装置3が、ファイルサーバ4に蓄積された各蓄積文書内でかかる名詞を検索し、その名詞に係り受けしている述語動詞と、その名詞との組み合わせを曖昧構文として曖昧構文テーブル52に登録するようにすればよい。
重みテーブル53は、ユーザが、表示装置17に表示された図9について後述する曖昧箇所訂正支援画面70を用いて訂正候補を絞り込む際に指定したフィルタリング条件を記憶及び管理するために利用されるテーブルである。
実際上、本曖昧箇所訂正支援装置3では、ユーザは、対象文書内のそのとき対象としている曖昧箇所の各訂正候補の内容を図9の曖昧箇所訂正支援画面70や図10の訂正候補詳細画面100を用いてそれぞれ確認する際、これら訂正候補の中から所望する訂正候補を絞り込むために、訂正候補の抽出元の蓄積文書が関連する製品の製品名及びバージョンや、その蓄積文書の作成日及び作成者、並びに、その蓄積文書のドキュメント種別(メール、設計メモ及び設計資料など)をフィルタリング条件として設定することができる。重みテーブル53は、このように設定されたフィルタリング条件を記憶及び管理するためのテーブルである。
この重みテーブル53は、図5に示すように、識別ID欄53A、曖昧文章ID欄53B、第1の製品名欄53C、第1のバージョン欄53D、第1の作成日欄53E、第1の作成者欄53F、ドキュメント種別欄53G、訂正元文章ID欄53H、第2の製品名欄53I、第2のバージョン欄53J、第2の作成日欄53K及び第2の作成者欄53Lを備えて構成される。重みテーブル53では、1つの行が対象文書内の1つの曖昧箇所に対して設定された各フィルタリング条件の内容に対応する。
そして識別ID欄53Aには、重みテーブル53においてその行の情報に対して付与された識別IDが格納され、曖昧文章ID欄53Bには、その対象文書内の各文章に対してそれぞれ付与されたその文章に固有の識別ID(文書ID)のうち、曖昧表現の訂正が行われた曖昧箇所を含む文章の文章IDが格納される。
また第1の製品名欄53Cには、対応するフィルタリング条件として、訂正候補の抽出元の蓄積文書が関連する製品の製品名が設定されていた場合には「1」が格納され、当該フィルタリング条件としてかかる製品名が設定されていなかった場合には「0」が格納される。
同様に、第1のバージョン欄53Dには、対応するフィルタリング条件として、訂正候補の抽出元の蓄積文書が関連する製品のバージョンが設定されていた場合には「1」が格納され、当該フィルタリング条件としてかかるバージョンが設定されていなかった場合には「0」が格納される。
また第1の作成日欄53Eには、対応するフィルタリング条件として訂正候補の抽出元の蓄積文書の作成日が設定されていた場合には「1」が格納され、当該フィルタリング条件としてかかる作成日が設定されていなかった場合には「0」が格納される。
さらに第1の作成者欄53Fには、対応するフィルタリング条件として訂正候補の抽出元の蓄積文書の作成者が設定されていた場合には「1」が格納され、当該フィルタリング条件としてかかる作成者が設定されていなかった場合には「0」が格納される。
さらにドキュメント種別欄53Gには、対応するフィルタリング条件として訂正候補の抽出元の蓄積文書のドキュメント種別が設定されていた場合には「1」が格納され、当該フィルタリング条件としてかかるドキュメント種別が設定されていなかった場合には「0」が格納される。
訂正元文章ID欄53Hには、最終的に選択された訂正候補の抽出元の蓄積文書(以下、これを最終選択訂正候補抽出元文書と呼ぶ)におけるその訂正候補を含む文章の文章IDが格納される。
また第2の製品名欄53Iには、かかる最終選択訂正候補抽出元文書が関連する製品の製品名が格納され、第2のバージョン欄53Jには、当該製品の製品バージョンが格納される。さらに第2の作成日欄53Kには、最終選択訂正候補抽出元文書の作成日が格納され、第2の作成者欄53Lには、最終選択訂正候補抽出元文書の作成者が格納される。
従って、図5の例の場合、対象文書における「145987234」という文章IDが付与された文章の曖昧箇所について適切な訂正候補を抽出する際、ユーザは、曖昧箇所訂正支援画面70(図9)において「製品名」、「バージョン」をフィルタリング条件として設定しており、この曖昧箇所について最終的に数値が適用された訂正候補を含む蓄積文書内の文章の文章IDが「076342456」で、最終選択訂正候補抽出元文書が関連する製品の製品名は「Product1」、その製品バージョンは「10.0.0」、また最終選択訂正候補抽出元文書の作成日は「2010/05/17」、作成者は「A」であったことが示されている。
同一構文判定テーブル54は、ユーザにより訂正された対象文書内の曖昧箇所の構文(曖昧構文)を記憶及び管理するために利用されるテーブルであり、図6に示すように、主語欄54A及び述語動詞欄54Bを備えて構成される。同一構文判定テーブル54では、1つの行がユーザにより訂正された1つの曖昧箇所の構文に対応する。そして主語欄54Aには、対応する曖昧構文における主語が格納され、述語動詞欄54Bには、その曖昧構文における述語動詞が格納される。
製品名テーブル55は、現在までに販売等した製品のバージョン範囲を管理するために利用されるテーブルであり、図7に示すように、番号欄55A、製品名欄55B及びバージョン範囲欄55Cを備えて構成される。製品名テーブル55では、1つの行が1つの製品名に対応する。
そして番号欄55Aには、この製品名テーブル55において各製品名に対してそれぞれ付与された識別番号が格納され、製品名欄55Bには、対応する製品の製品名が格納される。またバージョン範囲欄55Cには、その製品のバージョンの範囲が格納される。従って、図7の例の場合、製品名テーブルにおいて「1」という識別番号が付与された「Product1」という製品名の製品のバージョン範囲は「3.0.0〜9.2.0」であることが示されている。
なお製品名テーブル55は、ユーザが予め手作業により作成するようにしてもよく、また本曖昧箇所訂正支援装置3が自動的に作成するようにしてもよい。後者の場合、曖昧箇所訂正支援装置3は、各蓄積文書の文書ファイル情報FLI(図1)からその蓄積文書が関連する製品の製品名及びバージョンを抽出し、抽出したこれらの情報に基づいてこれまでの各製品の製品名及びそのバージョン範囲を検出して、これを製品名テーブル55に登録するようにすればよい。
(3)各種画面の構成
図8は、訂正候補スコア付けプログラム44(図1)の処理結果に基づいて訂正箇所・訂正内容表示プログラム45(図1)により曖昧箇所訂正支援装置3(図1)の表示装置17(図1)に表示される曖昧箇所提示画面60の構成例を示す。この曖昧箇所提示画面60では、対象文書のテキストが表示されると共に、曖昧単語抽出プログラム41(図1)や曖昧構文抽出プログラム42(図1)により抽出された当該テキスト内の曖昧箇所が着色又はマーキングなどの方法により強調表示される。なお、図8は、かかるテキストの曖昧箇所がマーキングされた例を示している。
そして曖昧箇所提示画面60内の強調表示された1つの曖昧箇所をクリックにより指定すると、この曖昧箇所提示画面60に重ねて図9に示す曖昧箇所訂正支援画面70が表示される。この曖昧箇所訂正支援画面70は、曖昧箇所提示画面60でユーザが指定した曖昧箇所(以下、これをユーザ指定曖昧箇所と呼ぶ)の内容を数値的に明瞭化する訂正作業を支援する画面であり、グラフ表示フィルタリング領域71と、フィルタリングパラメータ領域72とを備えて構成される。
グラフ表示フィルタリング領域71は、3次元グラフ表示領域80及びグラフ表示調整領域81から構成される。そして3次元グラフ表示領域80には、訂正候補スコアをz軸、訂正候補の数値をx軸、後述するフィルタリングパラメータ設定領域72において選択されたフィルタリング条件の項目をy軸とする3次元座標(以下、これを3次元グラフと呼ぶ)83が表示される。なお、図9は、フィルタリングパラメータ設定領域72において選択されたフィルタリング条件の項目が「バージョン」であった場合の例である。この場合、x軸には、ユーザ指定曖昧箇所について抽出された各訂正候補にそれぞれ含まれる「数値」の最小値から最大値の範囲内で目盛りが表示される。
また3次元グラフ83内には、ユーザ指定曖昧箇所について訂正候補抽出プログラム43(図1)により抽出された各訂正候補にそれぞれ対応する直方体形状のブロック84が対応するxy座標位置にそれぞれ表示される。この際、x軸方向及びy軸方向の値がいずれも同じ訂正候補が複数存在する場合、これら訂正候補にそれぞれ対応する各ブロック84は、同じxy座標位置に積み上げられて表示される。
また各ブロック84は、それぞれ対応する訂正候補について訂正候補スコア付けプログラム44(図1)により付与された訂正候補スコアに応じた高さでそれぞれ表示される。これにより3次元グラフ83では、ブロック84の積上げ個数と、各ブロック84の高さとに基づいて、どのブロック84に対応する訂正候補の「数値」が適正であるかをユーザが視覚的に瞬時に判断できるようになされている。
またグラフ表示調整領域81には、訂正候補スコア範囲調整スライドバー85及び記述文章数調整スライドバー86と、対応する各訂正候補をそれぞれ抽出した各蓄積文書のドキュメント種別(メール、設計メモ及び設計資料など)の種別名をそれぞれ表す文字列87と、これらドキュメント種別にそれぞれ対応付けられたチェックボックス(以下、これをドキュメント種別選択用チェックボックスと呼ぶ)88とがそれぞれ表示される。
そしてユーザは、訂正候補スコア範囲調整スライドバー85をスライド操作することによって、ユーザ指定曖昧箇所について抽出された複数の訂正候補の中から対応するブロック84を3次元グラフ83に表示すべき訂正候補の訂正候補スコアの範囲を設定することができる。従って、3次元グラフ84には、訂正候補スコア範囲調整スライドバー85を用いて設定された範囲内の訂正候補スコアが付与された訂正候補に対応するブロック84のみが表示され、かかる範囲から外れた訂正候補スコアが付与された訂正候補に対応するブロック84は表示されない。
またユーザは、記述文章数調整スライドバー86を操作することによって、3次元グラフ83内にブロック84を表示すべき、ブロック84の積上げ個数の最低数を設定することができる。なお、ここでの「積上げ個数」とは、同じxy座標に積み上げられたブロック84の数を指す。従って、例えば、積上げ個数が「1」に設定された場合には、対応するすべての訂正候補にそれぞれ対応するブロック84が3次元グラフ83内に表示される一方で、積上げ個数が「2」に設定された場合には、対応する訂正候補のうち、同じxy座標位置にブロック84が表示される他の訂正候補が存在しない訂正候補のブロック84は表示されない。同様に、積上げ数が「3」に設定された場合には、対応する訂正候補のうち、同じxy座標位置にブロック84が表示される他の訂正候補が2つ以上存在しない訂正候補のブロック84は表示されない。
さらにユーザは、所望するドキュメント種別選択用チェックボックス88をクリックして、当該ドキュメント種別選択用チェックボックス88の表示形態を対応するドキュメント種別が選択された状態(黒く塗り潰された状態)に設定することにより、ユーザ指定曖昧箇所について抽出された複数の訂正候補の中から対応するブロック84を3次元グラフ83内に表示すべき当該訂正候補の抽出元の蓄積文書のドキュメント種別を選択することができる。例えば、図9の例の場合、ドキュメント種別として「メール(msg)」、「設計メモ(.txt)」及び「設計資料(.doc/docx)」のみが選択されているため、3次元グラフ83内には、ユーザ指定曖昧箇所について抽出された複数の訂正候補のうち、これらのドキュメント種別の蓄積文書から抽出された各訂正候補にそれぞれ対応するブロック84のみが表示される。
一方、フィルタリングパラメータ領域72は、訂正候補について取得される対応する蓄積文書のメタ情報の各項目にそれぞれ対応させて区分されている。本実施の形態の場合、これらの項目として、図2のように「製品名」、「バージョン」、「作成日」及び「作成者」の4つの項目があるため、図9では、フィルタリングパラメータ領域72がこれら4つの項目(以下、これをフィルタリング条件項目と呼ぶ)にそれぞれ対応させて4つの領域部分72A〜72Dに区分された例を示している。
そしてフィルタリングパラメータ領域72内の「製品名」に対応する領域部分72Aには、ユーザ指定曖昧箇所について抽出された複数の訂正候補の抽出元の各蓄積文書がそれぞれ関連している各製品の製品名をそれぞれ表す文字列90と、これら製品名とそれぞれ対応付けられたチェックボックス91とが表示される。そしてユーザは、これらのチェックボックス91の中から所望するチェックボックス91をクリックしてそのチェックボックス91の表示形態を対応する製品名が選択された状態(黒く塗り潰された状態)に設定することにより、ユーザ指定曖昧箇所について抽出された複数の訂正候補の中から、3次元グラフ83内に対応するブロック84を表示させるべき訂正候補が抽出された抽出元の蓄積文書が関連する製品の製品名をフィルタリング条件として設定することができる。図9では、かかる製品名として「Product1」、「Product2」及び「Product4」という3つの製品の製品名が検出され、これらの製品名の中から「Product1」という製品名がフィルタリング条件として設定された例が示されている。
またフィルタリングパラメータ領域72内の「バージョン」に対応する領域部分72Bには、バージョン範囲設定スライドバー92が表示される。そしてユーザは、このバージョン範囲設定スライドバー92を利用して、ユーザ指定曖昧箇所について抽出された複数の訂正候補の抽出元の各蓄積文書がそれぞれ対応する製品のバージョン範囲の中から、対応するブロック84を3次元グラフ83内に表示させるべき訂正候補の抽出元の蓄積文書が対応する製品のバージョン範囲を指定することができる。図9では、ユーザ指定曖昧箇所について抽出された複数の訂正候補の抽出元の各蓄積文書がそれぞれ対応する製品のバージョン範囲が「V1.0.0」〜「V10.0.0」であったため、このバージョン範囲内で対応するブロック84を3次元グラフ83内に表示させるべき訂正候補の抽出元の各蓄積文書のバージョン範囲を指定できるようスライドバーの目盛りが表記された例が示されている。
さらにフィルタリングパラメータ領域72内の「作成日」に対応する領域部分72Cには、作成日範囲設定スライドバー93が表示される。そしてユーザは、この作成日範囲設定スライドバー93を利用して、ユーザ指定曖昧箇所について抽出された複数の訂正候補の抽出元の各蓄積文書の作成日の中から、対応するブロック84を3次元グラフ83内に表示させるべき訂正候補の抽出元の各蓄積文書の作成日の範囲を指定することができる。図9では、ユーザ指定曖昧箇所について抽出された複数の訂正候補の抽出元の各蓄積文書の作成日がすべて「2000」年以降であったため、この範囲内で対応するブロック84を3次元グラフ83内に表示させるべき訂正候補の抽出元の各蓄積文書の作成日の範囲を指定できるよう作成日範囲設定スライドバー93の目盛りが表記された例が示されている。
さらにフィルタリングパラメータ領域72内の「作成者」に対応する領域部分72Dには、ユーザ指定曖昧箇所について抽出された複数の訂正候補の抽出元の各蓄積文書の作成者の氏名をそれぞれ表す文字列94と、これら氏名にそれぞれ対応付けられたチェックボックス95とが表示される。そしてユーザは、これら作成者の氏名の中から所望する作成者に対応するチェックボックス95をクリックして当該チェックボックス95の表示形態を対応する作成者を選択した状態(黒く塗り潰された状態)に設定することにより、ユーザ指定曖昧箇所について抽出された複数の訂正候補の中から、3次元グラフ83内に対応するブロック84を表示させるべき訂正候補が抽出された抽出元の蓄積文書の作成者をフィルタリング条件として設定することができる。図9では、かかる作成者として「A」、「B」、「C」及び「D」という4人の作成者が検出され、これら4人すべての作成者がフィルタリング条件として設定された例が示されている。
またフィルタリングパラメータ領域72の「製品名」、「バージョン」、「作成日」及び「作成者」の各フィルタリング条件項目にそれぞれ対応する領域部分72A〜72Dには、それぞれY軸設定用のチェックボックス96A〜96Dが表示される。そしてユーザは、これらのチェックボックス96A〜96Dの中から所望する1つのフィルタリング条件項目に対応するチェックボックス96A〜96Dをクリックしてその表示形態を対応する項目を選択した状態(黒く塗り潰された状態)に設定することにより、そのフィルタリング条件項目を3次元グラフ83のy軸に設定することができる。図9の例では、「バージョン」の項目が3次元グラフ83のy軸に設定された例を示している。
さらにフィルタリングパラメータ領域72の「製品名」、「バージョン」、「作成日」及び「作成者」の各フィルタリング条件項目にそれぞれ対応する領域部分72A〜72Dには、それぞれアンケート用のチェックボックス(以下、これをアンケート用チェックボックスと呼ぶ)97A〜97Dが表示される。そしてユーザは、これらアンケート用チェックボックス97A〜97Dの中からユーザ指定曖昧箇所を訂正する際に特に参照したフィルタリング条件項目に対応するアンケート用チェックボックス97A〜97Dをクリックしてその表示状態を対応するフィルタリング条件項目を選択した状態(黒く塗り潰された状態)に設定することにより、後述のようにユーザ指定曖昧箇所について抽出された複数の訂正候補の中から当該ユーザ指定曖昧箇所を訂正する際に特に参照したフィルタリング条件項目を本曖昧箇所訂正支援装置3(図1)に学習させることができる。
なお、グラフ表示フィルタリング領域71のグラフ表示調整領域81で設定された条件や、フィルタリングパラメータ領域72の「製品名」、「バージョン」、「作成日」及び「作成者」の各フィルタリング条件項目にそれぞれ対応する領域部分72A〜72Dで設定された各フィルタリング条件はアンド条件であり、すべての条件を満たす訂正候補に対応するブロック84のみが3次元グラフ83内に表示される。
他方、本曖昧箇所訂正支援装置3では、曖昧箇所訂正支援画面70の3次元グラフ83内に表示されたブロック84のうち、所望するブロック84をクリックして選択することにより、図10に示すような訂正候補詳細画面100を曖昧箇所訂正支援画面70に重ねて表示させることができる。
そして、この訂正候補詳細画面100には、曖昧箇所訂正支援画面70の3次元グラフ83内のユーザにより選択されたブロック(以下、これを選択ブロックと呼ぶ)84に対応する訂正候補の詳細情報が格納された訂正候補詳細情報表101が表示される。
実際上、訂正候補詳細情報表101は、抽出元文書ID欄101A、発生条件欄101B、主語欄101C、数値欄101D、動作欄101E、原文欄101F、製品名欄101G、バージョン欄101H、作成日欄101I、作成者欄101J及び訂正候補スコア欄101Kを備えて構成される。
そして抽出元文書ID欄101Aには、ファイルサーバ4に蓄積されたすべての蓄積文書内のすべての文章に対してそれぞれ付与された識別ID(以下、これを文章IDと呼ぶ)のうち、選択ブロック84に対応する訂正候補が抽出された蓄積文書内の当該訂正候補を含む文章に対して付与された文章IDが表示される。
また発生条件欄101B、主語欄101C、数値欄101D、動作欄101E、原文欄101F、製品名欄101G、バージョン欄101H、作成日欄101I及び作成者欄101Jには、図2について上述した多条件テーブル50における選択ブロック84に対応する訂正候補の行の発生条件欄50A、主語欄50B、数値欄50C、動作欄50D、原文欄50E、製品名欄50F、バージョン欄50G、作成日欄50H及び作成者欄50Iにそれぞれ格納された情報と同じ情報が表示される。さらに訂正候補スコア欄101Kには、その訂正候補について訂正候補スコア付けプログラム44(図1)により算出された訂正候補スコアが表示される。
この際、訂正候補詳細情報表101では、製品名欄101G、バージョン欄101H、作成日欄101I及び作成者欄101Jのうち、曖昧箇所訂正支援画面70のフィルタリングパラメータ領域72における「製品名」、「バージョン」、「作成日」及び「作成者」の各フィルタリング条件項目にそれぞれ対応する領域部分72A〜72D内のアンケート用チェックボックス97A〜97Dが黒く塗り潰された状態に設定されているフィルタリング条件項目に対応する欄101G〜101Iに表示された文字列が赤色で着色されるなどして強調表示される。
さらに訂正候補詳細画面100の訂正候補詳細情報表101の上側には、「この訂正候補の数値を曖昧箇所の訂正内容に確定する」という文字列102と、チェックボックス(以下、これを訂正候補選択チェックボックスと呼ぶ)103とが表示される。そしてユーザは、この訂正候補詳細情報表101に詳細が表示された訂正候補の数値(数値欄101Dに表示された数値)を、ユーザ指定曖昧箇所における述語動詞の修飾語として追加する数値に指定する場合には、この訂正候補選択チェックボックス103をクリックするようにして、当該訂正候補選択チェックボックス103を有効な状態(訂正候補選択チェックボックス103が塗り潰された状態)に設定する。
この場合、ユーザが訂正候補詳細画面100の右上に表示された「×」マーク104をクリックしてこの訂正候補詳細画面100を閉じた段階で、対象文書におけるユーザ指定曖昧箇所内の適切な位置に、訂正候補詳細画面100の訂正候補詳細情報表101の数値欄101Dに表示された数値を述語動詞の修飾語として追加するようにして当該ユーザ指定曖昧箇所が訂正される。
なお、訂正候補選択チェックボックス103を有効な状態に設定せずに「×」マーク104をクリックすることによりこの訂正候補詳細画面100を閉じることもできるが、この場合にはかかる訂正は行われない。
(4)文書訂正機能に関する各種処理
次に、かかる文書訂正機能に関連して曖昧箇所訂正支援装置3において実行される各種処理の具体的な処理内容について説明する。なお、以下においては、各種処理の処理主体を「プログラム」として説明するが、実際上はその「プログラム」に基づいてCPU11(図1)がその処理を実行することは言うまでもない。
(4−1)多条件テーブル作成処理
図11は、多条件テーブル作成プログラム40(図1)により定期的に実行される多条件テーブル作成処理の具体的な処理内容を示す。多条件テーブル作成プログラム40は、この図11に示す処理手順に従って、定期的に最新の多条件テーブル50(図2)を作成する。
実際上、多条件テーブル作成プログラム40は、この多条件テーブル作成処理を開始すると、まず、ファイルサーバ4に蓄積された蓄積文書の中からステップS2以降が未処理の蓄積文書を1つ選択し(S1)、選択した蓄積文書(以下、これを選択蓄積文書と呼ぶ)の文書ファイルFL(図1)をファイルサーバ4から読み出す(S2)。また多条件テーブル作成プログラム40は、選択蓄積文書のファイル情報FLI(図1)をファイルサーバ4から読み出すことにより取得する(S3)。
続いて、多条件テーブル作成プログラム40は、変数iの値を1にセットし(S4)、選択蓄積文書を構成する文章のうちの、最初からi番目の文章に対する係り受け解析を実行する(S5)。
そして多条件テーブル作成プログラム40は、この係り受け解析により多条件文を検出できた場合には、検出した多条件文に関する必要な情報を多条件テーブル50に登録する(S6)。なお、この多条件文を多条件テーブル50に登録する際、選択蓄積文書が対応する製品のバージョン、選択蓄積文書の作成日及び作成者や、その選択蓄積文書が関連する製品名などの情報については、ステップS3で取得した選択蓄積文書のファイル情報FLIから取得する。
次いで、多条件テーブル作成プログラム40は、選択蓄積文書を構成する文章のうち、ステップS5の係り受け解析が未実行の文章が存在するか否かを判断する(S7)。そして多条件テーブル作成プログラム40は、この判断で肯定結果を得ると、変数iの値をインクリメント(1増加)する(S8)。
また多条件テーブル作成プログラム40は、ステップS5に戻り、この後、ステップS7で肯定結果を得るまでステップS5〜ステップS8の処理を繰り返す。この繰返し処理により選択蓄積文書を構成するすべての文章に対する係る受け解析が実行され、文章内に多条件文がある場合にその多条件文に関する必要な情報が多条件テーブル50に順次登録される。
そして多条件テーブル作成プログラム40は、やがて選択蓄積文書を構成するすべての文章に対する係り受け解析が完了することによりステップS7で否定結果を得ると、ステップS2以降が未処理の蓄積文書が存在するか否かを判断する(S9)。
そして多条件テーブル作成プログラム40は、この判断で肯定結果を得ると、ステップS1に戻り、この後、ステップS1で選択する蓄積文書を未処理の他の蓄積文書に順次切り替えながら、ステップS1〜ステップS9の処理を繰り返す。
そして多条件テーブル作成プログラム40は、やがてすべての蓄積文書のすべての文章に対する係り受け解析が完了することによりステップS9で否定結果を得ると、この多条件テーブル作成処理を終了する。
(4−2)曖昧箇所訂正支援処理
(4−2−1)全体の処理の流れ
一方、図12は、かかる曖昧箇所訂正支援機能に関連して、曖昧箇所訂正支援装置3において実行される一連の処理(以下、これを曖昧箇所訂正支援処理と呼ぶ)の流れを示す。曖昧箇所訂正支援装置3は、この図12に示す処理手順に従って、対象文書内の曖昧箇所を明瞭な記載に訂正する訂正作業を支援する。
実際上、曖昧箇所訂正支援装置3においてユーザにより対象文書が指定されると、この図12に示す曖昧箇所訂正支援処理が開始され、まず、曖昧単語抽出プログラム41(図1)が、曖昧単語テーブル51(図3)を参照して、対象文書内の曖昧単語を抽出する曖昧単語抽出処理を実行する(S10)。このとき抽出された曖昧単語を含む箇所が対象文書内の曖昧箇所である。
続いて、訂正候補抽出プログラム41(図1)が、曖昧構文テーブル52(図4)を参照して、対象文書内のいずれかの曖昧構文と主語及び述語動詞が一致する文章を抽出する曖昧構文抽出処理を実行する(S11)。このとき抽出された箇所も対象文書内の曖昧箇所である。
次いで、訂正候補抽出プログラム42(図1)が、ステップS10及びステップS11でそれぞれ検出された対象文書内の曖昧箇所のそれぞれについて、その曖昧箇所の述語動詞で表された動作の程度を表す数値を含む訂正候補を多条件テーブル50から抽出する訂正候補抽出処理を実行する(S12)。
この後、訂正候補スコア付け処理プログラム44(図1)が、ステップS12で抽出された各訂正候補に対して訂正候補スコアを算出して付与する訂正候補スコア付け処理を実行する(S13)。
さらに、この後、訂正箇所・訂正内容表示プログラム45(図1)が、ステップS10及びステップS11で検出された対象文書内の曖昧箇所が強調表示された図8について上述した曖昧箇所提示画面60や、図9について上述した曖昧箇所訂正支援画面70及び図10について上述した訂正候補詳細画面100をユーザ操作に応じて順次表示する訂正箇所・訂正内容表示処理を実行する(S14)。
続いて、選択訂正候補学習プログラム46(図1)が、対象文書内の各曖昧箇所についてユーザが曖昧箇所訂正支援画面70(図9)上で所望する訂正候補を絞り込む際に利用した各フィルタリング条件に応じた情報を重みテーブル53(図5)に登録する選択訂正候補学習処理を実行する(S15)。
次いで、訂正結果表示プログラム47(図1)が、ユーザにより曖昧箇所訂正支援画面70(図9)及び訂正候補詳細画面100(図10)を用いて行われた訂正作業に従って対象文書の各曖昧箇所がそれぞれ訂正された、訂正後の対象文書のテキストを図8と同じ構成の訂正結果画面(図示せず)に表示する訂正結果表示処理を実行する(S16)。なお、かかる訂正結果画面では、ユーザにより訂正が行われなかった対象文書の曖昧箇所については、その曖昧箇所について抽出された訂正候補のうちの最も訂正候補スコアが高い訂正候補の数値が述語動詞の修飾語として追加するように自動訂正された状態で表示される。
さらに同様訂正箇所判定プログラム48が、ファイルサーバ4内の蓄積文書における、ユーザにより訂正された曖昧箇所と同じ構文(曖昧構文)の文章をユーザに提示すると共に、その文章の訂正候補を上述と同様に提示する同様訂正箇所判定処理を実行する(S17)。そして、この後、この曖昧箇所訂正支援処理が終了する。
(4−2−2)曖昧単語抽出処理
図13は、図12について上述した曖昧箇所訂正支援処理のステップS10で曖昧単語抽出プログラム41により実行される上述の曖昧単語抽出処理の具体的な処理内容を示す。
曖昧単語抽出プログラム41は、曖昧箇所訂正支援処理がステップS10に進むとこの図13に示す曖昧単語抽出処理を開始し、まず、対象文書のフォーマット形式をプレーンテキスト形式に変換する(S20)。
続いて、曖昧単語抽出プログラム41は、曖昧単語テーブル51に登録されている曖昧単語の中からステップS22以降が未処理の曖昧単語を1つ選択し(S21)、選択した曖昧単語(以下、これを選択曖昧単語と呼ぶ)を対象文書内で検索する(S22)。
次いで、曖昧単語抽出プログラム41は、ステップS22の検索で選択曖昧単語を検出できたか否かを判断する(S23)。そして曖昧単語抽出プログラム41は、この判断で否定結果を得るとステップS25に進む。また曖昧単語抽出プログラム41は、ステップS23の判断で肯定結果を得ると、ステップS22の検索で選択曖昧単語を検出した対象文書内のすべての文章の文章IDをそれぞれ記憶する(S24)。
次いで、曖昧単語抽出プログラム41は、曖昧単語テーブル51に登録された曖昧単語のうちでステップS22以降が未処理の曖昧単語があるか否かを判断する(S25)。そして曖昧単語抽出プログラム41は、この判断で肯定結果を得るとステップS21に戻り、この後、ステップS21で選択する曖昧単語を曖昧単語テーブル51に登録された曖昧単語のうちのステップS22以降が未処理の他の曖昧単語に順次切り替えながらステップS21〜ステップS25の処理を繰り返す。この繰返し処理により、対象文書内の曖昧単語テーブル51に登録されたいずれかの曖昧単語が出現する箇所がそれぞれ曖昧箇所として抽出され、これら曖昧箇所をそれぞれ含む文章の文章IDがそれぞれ記憶される。
そして曖昧単語抽出プログラム41は、やがて曖昧単語テーブル51に登録されたいずれかの曖昧単語が出現する対象文書内のすべての文章の文章IDを検出し終えることによりステップS25で否定結果を得ると、この曖昧単語抽出処理を終了する。
(4−2−3)曖昧構文抽出処理
一方、図14は、図12について上述した曖昧箇所訂正支援処理のステップS11で曖昧構文抽出プログラム42により実行される上述の曖昧構文抽出処理の具体的な処理内容を示す。
曖昧構文抽出プログラム42は、曖昧箇所訂正支援処理がステップS11に進むとこの図14に示す曖昧構文抽出処理を開始し、まず、曖昧構文テーブル52に登録されている曖昧構文の中からステップS31以降が未処理の曖昧構文を1つ選択し(S30)、選択した曖昧構文(以下、これを選択曖昧構文と呼ぶ)と同じ主語及び述語動詞を含む文章を対象文書内で検索する(S31)。
次いで、曖昧構文抽出プログラム42は、ステップS31の検索で選択曖昧構文と同じ主語及び述語動詞を含む文章を検出できたか否かを判断する(S32)。そして曖昧構文抽出プログラム42は、ステップS32の判断で否定結果を得るとステップS34に進む。また曖昧構文抽出プログラム42は、ステップS32の判断で肯定結果を得ると、ステップS31の検索で検出した選択曖昧構文と同じ主語及び述語動詞を含むすべての対象文章内の文章の文章IDをそれぞれ記憶する(S33)。
次いで、曖昧構文抽出プログラム42は、曖昧構文テーブル52に登録された曖昧構文のうちでステップS31以降が未処理の曖昧構文があるか否かを判断する(S34)。そして曖昧構文抽出プログラム42は、この判断で肯定結果を得るとステップS30に戻り、この後、ステップS30で選択する曖昧構文を曖昧構文テーブル52に登録された曖昧構文のうちのステップS31以降が未処理の他の曖昧構文に順次切り替えながらステップS30〜ステップS34の処理を繰り返す。この繰返し処理により、対象文書内の曖昧構文テーブル52に登録されたいずれかの曖昧構文と同じ主語及び述語動詞を含む対象文章内の箇所がそれぞれ曖昧箇所として順次検出され、これら曖昧箇所をそれぞれ含む文章の文章IDが順次記憶される。
そして曖昧構文抽出プログラム42は、やがて曖昧構文テーブル52に登録されたいずれかの曖昧構文と同じ主語及び述語動詞を含む対象文書内のすべて文章を検出し、その文章IDを記憶し終えることによりステップS34で否定結果を得ると、この曖昧構文抽出処理を終了する。
(4−2−4)訂正候補抽出処理
図15は、図12について上述した曖昧箇所訂正支援処理のステップS12で訂正候補抽出プログラム43により実行される上述の訂正候補抽出処理の具体的な処理内容を示す。
訂正候補抽出プログラム43は、曖昧箇所訂正支援処理がステップS12に進むとこの図15に示す訂正候補抽出処理を開始し、まず、図13のステップS24又は図14のステップS33で文章IDを記憶した対象文書内の曖昧箇所のうち、ステップS41以降が未処理の曖昧箇所を1つ選択する(S40)。
続いて、訂正候補抽出プログラム43は、ステップS40で選択した曖昧箇所(以下、図15の説明において、これを選択曖昧箇所と呼ぶ)を読み込む(S41)。
次いで、訂正候補抽出プログラム43は、多条件テーブル50(図2)に登録されている多条件文の中からステップS43以降が未処理の多条件文を1つ選択し(S42)、ステップS43で読み込んだ選択曖昧箇所の主語が、ステップS42で選択した多条件文(以下、これを選択多条件文と呼ぶ)の主語を含むか否かを判断する(S43)。
そして訂正候補抽出プログラム43は、この判断で否定結果を得るとステップS45に進む。また訂正候補抽出プログラム43は、ステップS43の判断で肯定結果を得ると、選択多条件文を選択曖昧箇所の訂正候補に追加し(S44)、この後、ステップS43以降が未処理の多条件文が多条件テーブル50に存在するか否かを判断する(S45)。
訂正候補抽出プログラム43は、この判断で肯定結果を得るとステップS42に戻り、この後、ステップS42で選択する多条件文をステップS43以降が未処理の他の多条件文に順次切り替えながら、ステップS42〜ステップS45を上述と同様に繰り返す。この繰返し処理により、選択曖昧箇所の訂正候補がすべて抽出されることになる。
そして訂正候補抽出プログラム43は、やがてそのときの選択曖昧箇所に関して、多条件テーブル50に登録されているすべての多条件文についてステップS42〜ステップS44の処理を実行し終えることによりステップS45で否定結果を得ると、図13のステップS24又は図14のステップS33で対応する文章の文章IDを記憶した対象文書内の曖昧箇所のうちでステップS41以降が未処理の曖昧箇所があるか否かを判断する(S46)。
訂正候補抽出プログラム43は、この判断で否定結果を得るとステップS40に戻り、この後、ステップS40で選択する曖昧箇所を、図13のステップS24又は図14のステップS33で位置を記憶した対象文書内の他の曖昧箇所であって、ステップS41以降が未処理の他の曖昧箇所に順次切り替えながらステップS40〜ステップS46の処理を繰り返す。この繰返し処理により、図13のステップS24又は図14のステップS33で文章IDを記憶した対象文書内の各曖昧箇所に対する訂正候補がそれぞれ抽出される。
そして訂正候補抽出プログラム43は、これらの曖昧箇所に対する訂正候補をすべて抽出し終えることによりステップS46で否定結果を得ると、この訂正候補抽出処理を終了する。
(4−2−5)訂正候補スコア付け処理
図16は、図12について上述した曖昧箇所訂正支援処理のステップS13で訂正候補スコア付けプログラム44により実行される上述の訂正候補スコア付け処理の具体的な処理内容を示す。
訂正候補スコア付けプログラム44は、曖昧箇所訂正支援処理がステップS13に進むとこの図16に示す訂正候補スコア付け処理を開始し、まず、図13のステップS24又は図14のステップS33で対応する文章の文章IDを記憶した対象文書内の曖昧箇所のうち、ステップS51以降が未処理の曖昧箇所を1つ選択する(S50)。
続いて、訂正候補スコア付けプログラム44は、ステップS50で選択した曖昧箇所(以下、図16の説明において、これを選択曖昧箇所と呼ぶ)について訂正候補抽出プログラム43により抽出された訂正候補のうち、ステップS52以降が未処理の訂正候補を1つ選択する(S51)。
また訂正候補スコア付けプログラム44は、ステップS51で選択した訂正候補(以下、図15の説明において、これを選択訂正候補と呼ぶ)に対応する多条件文における発生条件を多条件テーブル50から取得し(S52)、選択曖昧箇所に記載された事象の発生条件と、ステップS52で取得した発生条件との類似度合を表す類似度スコアを算出する(S53)。
具体的に、訂正候補スコア付けプログラム44は、選択曖昧箇所に記載された事象の発生条件(第1の発生条件とする)と、ステップS52で取得した発生条件(第2の発生条件する)とをそれぞれdoc2vecで数値ベクトル化し、第1の発生条件の数値ベクトル(第1の数値ベクトルとする)と、第2の発生条件の数値ベクトル(第2の数値ベクトルとする)とに基づいて、次式
のように、第1及び第2の数値ベクトルの内積を第1及び第2の数値ベクトルのベクトル長の乗算結果で除算することによりコサイン類似度を算出し、これをかかる類似度スコアとする。なおコサイン類似度は、0〜1.0の範囲の値として算出され、値が1.0に近いほどより類似していることを意味する。
また訂正候補スコア付けプログラム44は、選択曖昧箇所を含む文書(つまり対象文書)に対応する製品の製品名と、選択訂正候補に対応する製品の製品名とが一致するか否かを表す同一製品スコアを算出する(S54)。
具体的に、訂正候補スコア付けプログラム44は、まず、対象文書全体の記載内容からその対象文書に対応する製品の製品名を特定すると共に、選択訂正候補に対応する製品の製品名を多条件テーブル50の対応する行の製品名欄50F(図2)から取得し、これらの製品名が一致するか否かを判定する。そして訂正候補スコア付けプログラム44は、これらの製品名が一致する場合、次式
のように、重みテーブル53(図5)における第1の製品名欄53(図5)に「1」が設定されているエントリの合計個数sumに1を加算した値を定数0.01に乗算するようにして同一製品スコアを算出する。
さらに訂正候補スコア付けプログラム44は、対象文書に対応する製品のバージョンと、選択訂正候補に対応する多条件文が抽出された蓄積文書(以下、これを対応蓄積文書と呼ぶ)に対応する製品のバージョンとの差を表すスコアをバージョン差スコアとして算出する(S55)。
具体的に、訂正候補スコア付けプログラム44は、まず、対象文書に対応する製品のバージョン(以下、これを対象文書製品バージョンと呼ぶ)を対応するファイル情報FLI(図1)から取得すると共に、選択訂正候補を含む蓄積文書に対応する製品のバージョン(以下、これを該当蓄積文書製品バージョンと呼ぶ)を当該蓄積文書のファイル情報FLI(図1)から取得し、これら対象文書製品バージョン及び該当蓄積文書製品バージョンのバージョン差を次式のようにして算出する。
なお(3)式において、「最新バージョン値」は、対象文書製品バージョン及び該当蓄積文書製品バージョンの双方に共通して対応する製品の最新のバージョンを表す各整数をそのまま並べた値であり、「最古バージョン値」は、かかる製品の最古のバージョンを表す各整数をそのまま並べた値である。「最新バージョン値」及び「最古バージョン値」は製品名テーブル55(図7)から取得したかかる製品の最新バージョン及び最古バージョンの各値をそれぞれ利用して算出する。
例えば、「最古バージョン」は、対象文書製品バージョン及び該当蓄積文書製品バージョンの双方に共通して対応する製品の最新のバージョンが「7.0.1」の場合、「7.0.1」を構成する各整数である「7」、「0」及び「1」をそのまま並べた「701」(=7×102+0×101+2)が最新バージョンであり、当該製品の最古のバージョンが「1.0.2」の場合、「1.0.2」を構成する各整数である「1」、「0」及び「2」をそのまま並べた「102」(=1×102+0×101+2)が最古バージョンである。
そして訂正候補スコア付けプログラム44は、算出したバージョン差に基づいて、次式
のように、重みテーブル53における第1のバージョン欄53D(図5)に「1」が設定されているエントリの合計個数sumに1を加算した値をバージョン差に乗算するようにしてバージョン差スコアを算出する。
加えて、訂正候補スコア付けプログラム44は、対象文書の作成日と、対応蓄積文書の作成日との近さに応じたスコアを作成日スコアとして算出する(S56)。
具体的に、訂正候補スコア付けプログラム44は、対象文書の作成日(以下、これを対象文書作成日と呼ぶ)を当該対象文書のメタ情報から取得すると共に、選択訂正候補を含む蓄積文書の作成日(以下、これを該当蓄積文書作成日と呼ぶ)を当該蓄積文書のファイル情報FLIから取得し、これら対象文書作成日及び該当第1及び該当蓄積文書作成日の作成日の日数差(以下、これを作成日差と呼ぶ)を次式のようにして算出する。
なお(5)式において、「最古の蓄積文書作成日」は、ファイルサーバ4に蓄積された蓄積文書の作成日のうちの最古の蓄積文書の作成日であり、「最新の蓄積文書作成日」は、ファイルサーバに蓄積された蓄積文書の作成日のうちの最新の蓄積文書の作成日である。
そして訂正候補スコア付けプログラム44は、算出した作成日差に基づいて、次式
のように、重みテーブル50における第1の作成日欄53Eに「1」が設定されているエントリの合計個数sumに1を加算した値を作成日差に乗算するようにして作成日スコアを算出する。
また訂正候補スコア付けプログラム44は、対象文書の作成者の信頼性に応じたスコアを作成者信頼性スコアとして算出する(S57)。
具体的に、訂正候補スコア付けプログラム44は、選択訂正候補を含む蓄積文書の作成者を当該蓄積文書のファイル情報FLIから取得し、次式
のように、重みテーブル50のエントリのうち、当該作成者の名前が第2の作成者欄53L(図5)に格納され、かつ第1の作成者欄53F(図5)に「1」が格納されているエントリの合計数sumに定数0.001を乗算するようにしてその作成者の信頼作成者スコアを算出する。
次いで、訂正候補スコア付けプログラム44は、上述のようにしてステップS52〜ステップS57でそれぞれ算出した類似度スコア、同一製品スコア、バージョン差スコア、作成日スコア及び作成者信頼性スコアに基づいて選択訂正候補の訂正候補スコアを算出する(S58)。
なお、本実施の形態においては、訂正候補スコア付けプログラム44は、類似度スコア、同一製品スコア、バージョン差スコア、作成日スコア及び作成者信頼性スコアをすべて合算した値を選択訂正候補のスコアとして算出する。この場合、上述のような各スコアの算出方法によれば、類似度スコアが最も大きな値となり、これに比べて他の同一製品スコア、バージョン差スコア、作成日スコア及び作成者信頼性スコアが微小な値となるため、類似度スコアの値(つまり発生条件の類似度合)が選択訂正候補の訂正候補スコアに大きく寄与することになる。
続いて、訂正候補スコア付けプログラム44は、それまでに選択曖昧箇所の各訂正候補についてそれぞれ算出した訂正候補スコアに基づいて、これら訂正候補を訂正候補スコアの降順にソートする(S59)。そして訂正候補スコア付けプログラム44は、この後、選択曖昧箇所について訂正候補抽出プログラム43により抽出された訂正候補のうち、ステップS52以降が未処理の訂正候補があるか否かを判断する(S60)。
訂正候補スコア付けプログラム44は、この判断で肯定結果を得るとステップS51に戻り、この後、ステップS51で選択する訂正候補を、訂正候補抽出プログラム53により選択曖昧箇所について抽出された訂正候補であって、ステップS52以降が未処理の他の訂正候補に順次切り替えながら、ステップS51〜ステップS60の処理を繰り返す。この繰返し処理により正候補抽出プログラム43により選択曖昧箇所について抽出されたすべての訂正候補の訂正候補スコアがそれぞれ算出され、これら訂正候補がその訂正候補スコアに従って降順にソートされることになる。
そして訂正候補スコア付けプログラム44は、やがて正候補抽出プログラム43により選択曖昧箇所について抽出されたすべての訂正候補に対するスコア付け及びこれら訂正候補のソートを完了することによりステップS60で否定結果を得ると、対象文書内のすべての曖昧箇所についてステップS51以降の処理を実行し終えたか否かを判断する(S61)。
訂正候補スコア付けプログラム44は、この判断で肯定結果を得るとステップS50に戻り、この後、ステップS50で選択する曖昧箇所を、ステップS51以降が未処理の他の曖昧箇所に順次切り替えながら、ステップS50〜ステップS61の処理を繰り返す。この繰返し処理により対象文書内の各曖昧箇所に対する上述の処理が実行されることになる。
そして訂正候補スコア付けプログラム44は、やがて対象文書内の各曖昧箇所に対する上述の処理を実行し終えることによりステップS61で否定結果を得ると、この訂正候補スコア付け処理を終了する。
(4−2−6)選択訂正候補学習処理
図17は、図12について上述した曖昧箇所訂正支援処理のステップS15で選択訂正候補学習プログラム46(図1)により実行される上述の選択訂正候補学習処理の具体的な処理内容を示す。
選択訂正候補学習プログラム46は、図10について上述した訂正候補詳細画面100で訂正候補選択チェックボックス103が有効な状態(訂正候補選択チェックボックス103が塗り潰された状態)となっている状態でこの訂正候補詳細画面100が閉じられると、この図17に示す選択候補訂正学習処理を開始する。
そして選択訂正候補学習プログラム46は、まず、訂正候補詳細画面100が閉じられた際の曖昧箇所訂正支援画面70(図9)のグラフ表示フィルタリング領域71(図9)のグラフ表示調整領域81(図9)で選択されていたドキュメント種別や、フィルタリングパラメータ領域72(図9)で設定されていた各フィルタリング条件の設定内容を取り込む(S70)。
続いて、選択訂正候補学習プログラム46は、重みテーブル50の未使用の行を1つ確保し、ステップS70で取り込んだ情報に基づいて、その行の各欄に必要な情報をそれぞれ格納する(S71)。そして選択訂正候補学習プログラム46は、この後、この選択訂正候補学習処理を終了する。
(4−2−7)同様訂正箇所判定処理
図18は、図12について上述した曖昧箇所訂正支援処理のステップS17で同様訂正箇所判定プログラム48(図1)により実行される上述の同様訂正箇所判定処理の具体的な処理内容を示す。
同様訂正箇所判定プログラム48は、曖昧箇所訂正支援処理がステップS17に進むとこの図18に示す同様訂正箇所判定処理を開始し、まず、対象文書内の訂正された各曖昧箇所に対する係り受け解析をそれぞれ実行する(S80)。
続いて、同様訂正箇所判定プログラム48は、ステップS80の係り受け解析の解析結果に基づいて、対象文書内の訂正された曖昧箇所ごとの曖昧構文をそれぞれ抽出し、抽出した曖昧構文をすべて同一構文判定テーブル54に格納する(S81)。なお、このステップSにおける個々の曖昧箇所に対する曖昧構文の抽出手法は、図14について上述した曖昧構文抽出処理と同様の抽出手法を利用することができる。
次いで、同様訂正箇所判定プログラム48は、ファイルサーバ4(図1)に蓄積された各蓄積文書から、同一構文判定テーブル54に格納されたいずれかの曖昧構文と同じ曖昧構文の文章(つまり曖昧構文と主語及び述語動詞が同じ文章)を抽出する(S82)。
そして同様訂正箇所判定プログラム48は、ステップS82で抽出した各文章について、それぞれ上述の曖昧箇所訂正支援処理(図12)のステップS12〜ステップS16と同様の処理を実行する(S83)。これによりユーザは、ステップSで抽出した各文章を明瞭化する訂正作業を行うことができる。
そして同様訂正箇所判定プログラム83は、この後、ステップS81で抽出した各文章に対する訂正作業が完了すると、この同様訂正箇所判定処理を終了する。
(5)本実施の形態の効果
以上のように本実施の形態の曖昧箇所訂正支援装置3は、ファイルサーバ4に蓄積された蓄積文書から多条件文を抽出して多条件テーブル50を作成すると共に、対象文書から曖昧箇所を抽出し、抽出した曖昧箇所と主語が一致する多条件文をその曖昧箇所の訂正候補として多条件テーブル50から抽出し、曖昧箇所の発生条件と、各訂正候補の発生条件との類似度合に基づいて各訂正候補に訂正候補スコアを付与し、当該訂正候補スコアに応じた高さのブロック84を訂正箇所・訂正内容表示画面70の3次元グラフ83内に表示する。
従って、ユーザは、かかる3次元グラフ83内に表示されたブロック84の積上げ個数や各ブロック84の高さに基づいて、対象文書内の対応する曖昧箇所に適用すべき訂正候補を選択及び決定することができる。よって、本曖昧箇所訂正支援装置3によれば、対象文書内の曖昧箇所に述語動詞の修飾語として追加すべき数値として、関連する蓄積文書全体の中から最も適切な数値を選択及び決定することができるため、対象文書内の曖昧箇所の記述を数値的に明瞭化する訂正作業を容易化及び適正化することができる。
(6)他の実施の形態
なお上述の実施の形態においては、曖昧箇所訂正支援画面70において、対象文書内の対応する曖昧箇所について抽出された各訂正候補の訂正候補スコアをそれぞれ対応するブロック84の高さで表現するようにした場合について述べたが、本発明はこれに限らず、各訂正候補の訂正候補スコアを色や大きさ、濃度などの他の表示態様で表現するようにしてもよい。また各訂正候補の訂正候補スコアをブロック84と対応付けて表示するようにしてもよい。
また上述の実施の形態においては、曖昧箇所訂正支援装置3をファイルサーバ4とは別個に設けるようにした場合について述べたが、本発明はこれに限らず、ファイルサーバ4に曖昧箇所訂正支援装置3の機能を搭載するようにしてもよい。
さらに上述の実施の形態においては、対象文書や蓄積文書がソフトウェア製品の開発段階でやり取りされたメールや設計メモ又は設計資料などである場合について述べたが、本発明はこれに限らず、対象文書や蓄積文書がソフトウェア製品以外の技術文書や他の種類の文書である場合にも本発明を適用することができる。
さらに上述の実施の形態においては、複数の蓄積文書から主語、述語動詞、述語動詞の程度を表す数値及び動詞が表す動作の発生条件を含む箇所を多条件文としてそれぞれ抽出する多条件抽出部としての多条件テーブル作成プログラム40と、対象文書内の曖昧箇所を抽出する曖昧箇所抽出部としての曖昧単語抽出プログラム41及び曖昧構文抽出プログラム42と、複数の蓄積文書から抽出された多条件文のうちの曖昧箇所と主語が一致する多条件文を、当該曖昧箇所の訂正候補としてそれぞれ抽出する訂正候補抽出部としての訂正候補抽出プログラム43と、曖昧箇所に含まれる動詞が表す動作の発生条件と、当該曖昧箇所について抽出された各訂正候補の前記発生条件との類似度合に基づいて、各訂正候補に訂正候補スコアをそれぞれ付与する訂正候補スコア付け部としての訂正候補スコア付けプログラム44と、各訂正候補を、付与された訂正候補スコアに応じた表示形態で表示する表示部としての訂正箇所・訂正内容表示プログラム45と、対象文書内の対象としている曖昧箇所について表示部により表示された訂正候補の中から、訂正候補を絞り込むためにユーザにより設定されたフィルタリング条件を保存する訂正候補学習部としての選択訂正候補学習プログラム46と、訂正結果表示プログラム47と、各蓄積文書から、対象文書内の訂正された曖昧箇所と同じ構文の文書の一部又は全部を当該蓄積文書内の曖昧箇所としてそれぞれ抽出し、当該曖昧箇所に対する訂正候補をユーザに提示する同様訂正箇所判定部としての同様訂正箇所判定プログラム48とを1つのコンピュータ装置(曖昧箇所訂正支援装置2)に実装するようにした場合について述べたが、本発明はこれに限らず、これらのプログラムを複数のコンピュータ装置に分散させて配置し、これらプログラムが協働して本実施の形態と同様の処理をそれぞれ実行するようにしてもよい。