(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6108212
(24)【登録日】2017年3月17日
(45)【発行日】2017年4月5日
(54)【発明の名称】同義語抽出システム、方法およびプログラム
(51)【国際特許分類】
G06F 17/30 20060101AFI20170327BHJP
G06F 17/27 20060101ALI20170327BHJP
【FI】
G06F17/30 210B
G06F17/30 170A
G06F17/30 320D
G06F17/27 695
【請求項の数】24
【全頁数】16
(21)【出願番号】特願2013-436(P2013-436)
(22)【出願日】2013年1月7日
(65)【公開番号】特開2014-132406(P2014-132406A)
(43)【公開日】2014年7月17日
【審査請求日】2015年12月24日
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(73)【特許権者】
【識別番号】504139662
【氏名又は名称】国立大学法人名古屋大学
(74)【代理人】
【識別番号】100077838
【弁理士】
【氏名又は名称】池田 憲保
(74)【代理人】
【識別番号】100129023
【弁理士】
【氏名又は名称】佐々木 敬
(72)【発明者】
【氏名】五藤 智久
(72)【発明者】
【氏名】平尾 英司
(72)【発明者】
【氏名】古橋 武
(72)【発明者】
【氏名】吉川 大弘
【審査官】
川▲崎▼ 博章
(56)【参考文献】
【文献】
特開2010−152561(JP,A)
【文献】
特開2007−199906(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/30
G06F 17/20 − 17/28
(57)【特許請求の範囲】
【請求項1】
文書を分析して、文書中の同義語を抽出する同義語抽出システムであって、
分析対象である文書の入力を受け付ける文書入力部と、
各文および複合語に形態素解析および構文解析を適用し、各単語の品詞や係り受け関係を抽出する単語分析部と、
各文が定型文か否かを判定する定型文分析部と、
同義関係を持つ単語ペア候補を同義語候補として推定する同義語候補推定部と、
推定した同義語候補から定型文と判定された定型文中の非定型語を除外する同義語候補補正部と、
同義語候補補正部の結果を表示する同義語候補出力部と、
を有することを特徴とする同義語抽出システム。
【請求項2】
請求項1に記載の同義語抽出システムにおいて、更に、単語の品詞や構文などの情報を収集して蓄積する単語データベースを備え、
前記単語データベースは、前記単語分析部からの特定の単語に関する問い合わせに対し、単語の品詞や構文に関連する情報を検索し応答することを特徴とする同義語抽出システム。
【請求項3】
請求項1又は2に記載の同義語抽出システムにおいて、
前記定型文分析部が、形態素列から成る各文の形態素編集距離分析部と、
少なくとも得られた形態素編集距離と定型文判定閾値とを比較し、定型文判定閾値以下の文を定型文とする定型文判定部と、
を有することを特徴とする同義語抽出システム。
【請求項4】
請求項3に記載の同義語抽出システムにおいて、前記定型文判定部が、文と文が共存する文書の範囲を定型文判定に利用することを特徴とする同義語抽出システム。
【請求項5】
請求項1乃至4の内のいずれか一項に記載の同義語抽出システムにおいて、前記同義語候補推定部が、各単語の共起情報の共起情報の類似度に基づき、同義関係を持つ単語ペア候補を同義語候補として推定することを特徴とする同義語抽出システム。
【請求項6】
請求項1乃至5の内のいずれか一項に記載の同義語抽出システムにおいて、更に、単語の一般概念を体系付けた一般概念情報を収集して蓄積する概念データベースを備え、前記概念データベースは、特定の単語に関する問い合わせに対し、単語の意味や用法に関連する一般概念情報を検索し応答することを特徴とする同義語抽出システム。
【請求項7】
請求項1乃至6の内のいずれか一項に記載の同義語抽出システムにおいて、前記同義語候補推定部が、各単語の概念情報の共起情報の類似度に基づき、同義関係を持つ単語ペア候補を同義語候補として推定することを特徴とする同義語抽出システム。
【請求項8】
請求項1乃至7の内のいずれか一項に記載の同義語抽出システムにおいて、前記分析対象である文書は、情報システム構築に関する提案書や仕様書というような、特定のプロジェクト案件に関する開発文書であることを特徴とする同義語抽出システム。
【請求項9】
文書を分析して、文書中の同義語を抽出する同義語抽出方法であって、
分析対象である文書の入力を受け付ける文書入力段階と、
各文および複合語に形態素解析および構文解析を適用し、各単語の品詞や係り受け関係を抽出する単語分析段階と、
各文が定型文か否かを判定する定型文分析段階と、
同義関係を持つ単語ペア候補を同義語候補として推定する同義語候補推定段階と、
推定した同義語候補から定型文と判定された定型文中の非定型語を除外する同義語候補補正段階と、
同義語候補補正段階の結果を表示する同義語候補出力段階と、
を有することを特徴とする同義語抽出方法。
【請求項10】
請求項9に記載の同義語抽出方法において、更に、単語の品詞や構文などの情報を収集して蓄積する単語データベースを備え、
前記単語データベースは、前記単語分析段階からの特定の単語に関する問い合わせに対し、単語の品詞や構文に関連する情報を検索し応答することを特徴とする同義語抽出方法。
【請求項11】
請求項9又は10に記載の同義語抽出方法において、
前記定型文分析段階が、形態素列から成る各文の形態素編集距離分析段階と、
少なくとも得られた形態素編集距離と定型文判定閾値とを比較し、定型文判定閾値以下の文を定型文とする定型文判定段階と、
を有することを特徴とする同義語抽出方法。
【請求項12】
請求項11に記載の同義語抽出方法において、前記定型文判定段階が、文と文が共存する文書の範囲を定型文判定に利用することを特徴とする同義語抽出方法。
【請求項13】
請求項9乃至12の内のいずれか一項に記載の同義語抽出方法において、前記同義語候補推定段階が、各単語の共起情報の共起情報の類似度に基づき、同義関係を持つ単語ペア候補を同義語候補として推定することを特徴とする同義語抽出方法。
【請求項14】
請求項9乃至13の内のいずれか一項に記載の同義語抽出方法において、更に、単語の一般概念を体系付けた一般概念情報を収集して蓄積する概念データベースを備え、前記概念データベースは、特定の単語に関する問い合わせに対し、単語の意味や用法に関連する一般概念情報を検索し応答することを特徴とする同義語抽出方法。
【請求項15】
請求項9乃至14の内のいずれか一項に記載の同義語抽出方法において、前記同義語候補推定段階が、各単語の概念情報の共起情報の類似度に基づき、同義関係を持つ単語ペア候補を同義語候補として推定することを特徴とする同義語抽出方法。
【請求項16】
請求項9乃至15の内のいずれか一項に記載の同義語抽出方法において、前記分析対象である文書は、情報システム構築に関する提案書や仕様書というような、特定のプロジェクト案件に関する開発文書であることを特徴とする同義語抽出方法。
【請求項17】
コンピュータに、文書を分析して、文書中の同義語を抽出する同義語抽出システムとして機能させるプログラムであって、
入力された分析対象である文書の各文および複合語に形態素解析および構文解析を適用し、各単語の品詞や係り受け関係を抽出する単語分析部と、
各文が定型文か否かを判定する定型文分析部と、
同義関係を持つ単語ペア候補を同義語候補として推定する同義語候補推定部と、
推定した同義語候補から定型文と判定された定型文中の非定型語を除外する同義語候補補正部と、
同義語候補補正部の結果を表示する同義語候補出力部として機能させることを特徴とする同義語抽出プログラム。
【請求項18】
請求項17に記載の同義語抽出プログラムにおいて、更に、単語の品詞や構文などの情報を収集して蓄積する単語データベースを前記単語分析部からの特定の単語に関する問い合わせに対し、単語の品詞や構文に関連する情報を検索し応答するように機能させることを特徴とする同義語抽出プログラム。
【請求項19】
請求項17又は18に記載の同義語抽出プログラムにおいて、
前記定型文分析部が、形態素列から成る各文の形態素編集距離分析部と、
少なくとも得られた形態素編集距離と定型文判定閾値とを比較し、定型文判定閾値以下の文を定型文とする定型文判定部と、
を有するように機能させることを特徴とする同義語抽出プログラム。
【請求項20】
請求項19に記載の同義語抽出プログラムにおいて、前記定型文判定部が、文と文が共存する文書の範囲を定型文判定に利用するように機能させることを特徴とする同義語抽出プログラム。
【請求項21】
請求項17乃至20の内のいずれか一項に記載の同義語抽出プログラムにおいて、前記同義語候補推定部が、各単語の共起情報の共起情報の類似度に基づき、同義関係を持つ単語ペア候補を同義語候補として推定することを特徴とする同義語抽出プログラム。
【請求項22】
請求項17乃至21の内のいずれか一項に記載の同義語抽出プログラムにおいて、更に、単語の一般概念を体系付けた一般概念情報を収集して蓄積する概念データベースを特定の単語に関する問い合わせに対し、単語の意味や用法に関連する一般概念情報を検索し応答するように機能させることを特徴とする同義語抽出プログラム。
【請求項23】
請求項17乃至22の内のいずれか一項に記載の同義語抽出プログラムにおいて、前記同義語候補推定部が、各単語の概念情報の共起情報の類似度に基づき、同義関係を持つ単語ペア候補を同義語候補として推定することを特徴とする同義語抽出プログラム。
【請求項24】
請求項17乃至23の内のいずれか一項に記載の同義語抽出プログラムにおいて、前記分析対象である文書は、情報システム構築に関する提案書や仕様書というような、特定のプロジェクト案件に関する開発文書であることを特徴とする同義語抽出プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、同義語抽出システム、方法およびプログラムに関し、特に、情報システム構築に関する提案書や仕様書等といった、特定の案件に関する文書群でのみ成り立つ同義語のある文書から、同義語を抽出する同義語抽出システム、方法およびプログラムに関する。
【背景技術】
【0002】
システムやソフトウェアを構築する際の上流工程では、顧客からの提案依頼書(Request For Proposal:RFP)、顧客への提案書、顧客と合意すべき要件定義書、および基本仕様書、機能仕様書、詳細仕様書等の各種仕様書がある。
【0003】
これらの開発文書は、下流工程で行うプログラム実装の設計書といえる。これらの上流工程の文書の誤りは下流のプログラムで拡散していく。拡散した全ての誤りを他のプログラムに影響を与えずに修正するためには、多大な工数が必要となる。この上流工程の開発文書中の誤りの一つとして同義語がある。なお、ここでの同義語とは、意義は同じで語形が異なっている語、換言すれば、発音や表記は異なるが、意味の同じである語をいう。
【0004】
この同義語を検出する方法としては、プロジェクト全体を理解しているプロジェクトマネージャーによるインスペクション(レビュー)が有効であるが、人的リソースが限られている場合は、その運用は困難といえる。一方、この問題点を、ツールを用いて支援しようという開示技術が報告されている。
【0005】
同義語抽出システムに関する関連技術の一例が、特許文献1に「類似表現抽出装置」として記載されている。この特許文献1に開示された類似表現抽出装置は、データ記憶部、単語グループ記憶部、シソーラス記憶部、文書入力部、単語グループ作成処理部、および、評価調整処理部から構成されている。このような構成の類似表現抽出装置は、入力された文書中の単語について、共起の頻度による単語類似度に基づく単語グループと、シソーラスでの距離などに基づく学習データグループとを作成する。そして、その学習データグループの個数と構成単語に、単語グループの個数および構成単語を一致するように単語グループの境界を調整し類似表現の各単語を出力する。すなわち、単語分類としてシソーラスとの整合と、共起類似性の程度とを考慮して、単語間の類似グループを調整するため、未知語の類似表現を抽出することが可能となる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2010−152561号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
このような先行技術は、類似表現を抽出する技術としては有効であると考えられるが、情報システム構築に関する提案書や仕様書等というような開発文書に適用した場合、誤検出(同義関係となっていない単語ペア)が高いランク(高い類似度)に多数出現してしまう。これは、類似度が高い方からある特定数(例えば上位100位)を目視で確認した場合、その中に含まれる、同義関係となっている単語ペア(同義語)の抽出率が低いことを示している。
【0008】
このようなことが起きる理由は、開発文書特有の記載内容にある。すなわち、開発文書では、一部の単語だけが置き換えられた定型表現(以降、「定型文」と呼ぶ)が繰り返し用いられている場合が多い。このような定型文を通常の共起類似性等を用いた同義語分析技術では、置き換え単語間の類似性が極端に高くなってしまい、相対的に正しい同義語の類似性が低く見積もられてしまうということが起きてしまう。
【0009】
なお、従来の同義語を抽出する技術は、異なる文(文字列)と文の類似度をより正しく算出することを主眼としている。すなわち、意味的に類似する二つの文を類似と判定させて、その結果から同義関係の単語ペアを抽出している。
【0010】
本発明の目的は、情報システム構築に関する提案書や仕様書等という開発文書から、特定の案件に関する文書群でのみ成り立つ同義語を効率的に抽出する、同義語抽出システム、方法およびプログラムを提供することにある。
【課題を解決するための手段】
【0011】
本発明者らは、上記目的を達成するために、誤検出の原因となっている開発文書中の定型文を抽出し、その結果を同義語分析に反映させることで、判定精度の向上を図ることができることを見出した。なお、本発明は誤検出結果の抽出技術であり、同義語分析の方法はいずれの方法でも構わない。
【0012】
より具体的には、本発明者らが更に、鋭意検討した結果、分析対象である文書の入力を受け付ける文書入力部と、各文および複合語に形態素解析および構文解析を適用し、各単語の品詞や係り受け関係を抽出する単語分析部と、共起関係等の類似性により同義語候補を抽出する同義語候補分析部と、各文が定型文か否かを判定する定型文分析部と、同義語候補分析部で得られた同義語候補から、定型文分析部にて定型文と判定された定型文中の非定型語を削除する同義候補補正部とその結果を表示する同義語候補出力部とを具備することを特徴とする同義語抽出システム200にて、上述の目的を達成できることを見出した。
【0013】
即ち、本発明の第1の態様によれば、文書を分析して、文書中の同義語を抽出する同義語抽出システムであって、分析対象である文書の入力を受け付ける文書入力部と、各文および複合語に形態素解析および構文解析を適用し、各単語の品詞や係り受け関係を抽出する単語分析部と、各文が定型文か否かを判定する定型文分析部と、同義関係を持つ単語ペア候補を同義語候補として推定する同義語候補推定部と、推定した同義語候補から定型文と判定された定型文中の非定型語を除外する同義語候補補正部と、同義語候補補正部の結果を表示する同義語候補出力部とを有することを特徴とする同義語抽出システムが得られる。
【0014】
ここで、本発明の第1の態様において、更に、単語の品詞や構文などの情報を収集して蓄積する単語データベースを備え、前記単語データベースは、前記単語分析部からの特定の単語に関する問い合わせに対し、単語の品詞や構文に関連する情報を検索し応答することが好ましい。
【0015】
また、本発明の第1の態様において、前記定型文分析部が、形態素列から成る各文の形態素編集距離分析部と、少なくとも得られた形態素編集距離と定型文判定閾値とを比較し、定型文判定閾値以下の文を定型文とする定型文判定部とを有することがより好ましい。
【0016】
また、本発明の第2の態様によれば、文書を分析して、文書中の同義語を抽出する同義語抽出方法であって、分析対象である文書の入力を受け付ける文書入力段階と、各文および複合語に形態素解析および構文解析を適用し、各単語の品詞や係り受け関係を抽出する単語分析段階と、各文が定型文か否かを判定する定型文分析段階と、同義関係を持つ単語ペア候補を同義語候補として推定する同義語候補推定段階と、推定した同義語候補から定型文と判定された定型文中の非定型語を除外する同義語候補補正段階と、同義語候補補正部の結果を表示する同義語候補出力段階とを有することを特徴とする同義語抽出方法が得られる。
【0017】
ここで、本発明の第2の態様において、更に、単語の品詞や構文などの情報を収集して蓄積する単語データベースを備え、前記単語データベースは、前記単語分析部からの特定の単語に関する問い合わせに対し、単語の品詞や構文に関連する情報を検索し応答することが好ましい。
【0018】
さらに、本発明第2の態様において、前記定型文分析段階が、形態素列から成る各文の形態素編集距離分析段階と、少なくとも得られた形態素編集距離と定型文判定閾値とを比較し、定型文判定閾値以下の文を定型文とする定型文判定段階とを有することがより好ましい。
【0019】
また、本発明の第3の態様によれば、コンピュータに、文書を分析して、文書中の同義語を抽出する同義語抽出システムとして機能させるプログラムであって、入力された分析対象である文書の各文および複合語に形態素解析および構文解析を適用し、各単語の品詞や係り受け関係を抽出する単語分析部と、各文が定型文か否かを判定する定型文分析部と、同義関係を持つ単語ペア候補を同義語候補として推定する同義語候補推定部と、推定した同義語候補から定型文と判定された定型文中の非定型語を除外する同義語候補補正部と、同義語候補補正部の結果を表示する同義語候補出力部として機能させることを特徴とする同義語抽出プログラムが得られる。
【0020】
ここで、本発明の第3の態様において、更に、単語の品詞や構文などの情報を収集して蓄積する単語データベースを前記単語分析部からの特定の単語に関する問い合わせに対し、単語の品詞や構文に関連する情報を検索し応答するように機能させることが好ましい。
【0021】
また、本発明の第3の態様において、前記定型文分析部が、形態素列から成る各文の形態素編集距離分析部と、少なくとも得られた形態素編集距離と定型文判定閾値とを比較し、定型文判定閾値以下の文を定型文とする定型文判定部とを有するように機能させることがより好ましい。
【発明の効果】
【0022】
本発明によれば、情報システム構築における要件定義や仕様書策定において作成される各種文書において成り立つ同義語を抽出し、それを提示することが可能となる。
【図面の簡単な説明】
【0023】
【
図1】本発明の第1の実施の形態に係る同義語抽出システムの構成の一例を示すブロック図である。
【
図2】本発明の第1の実施の形態に係る同義語抽出システムの構成の第1の変形例を示すブロック図である。
【
図3】本発明の第1の実施の形態に係る同義語抽出システムの構成の第2の変形例を示すブロック図である。
【
図4】本発明の第1の実施の形態に係る同義語抽出システムの定型分析部の具体的構成を示すブロック図である。
【
図5】
図1に示した同義語抽出システムの動作例を示すシーケンス図である。
【
図6】本発明の第2の実施の形態に係る同義語抽出システムの構成を示すブロック図である。
【
図7】本発明の実施例の結果の一例を示す図である。
【発明を実施するための形態】
【0024】
次に、本発明に係るいくらかの実施の形態について、図面を参照して詳細に説明する。なお、本発明はこれらの実施の形態に限定されるものではない。
【0025】
(第1の実施の形態)
図1は、本発明の第1の実施の形態に係る同義語抽出システム200の構成の一例を示すブロック図である。図示の同義語抽出システム200は、情報システム構築に関する提案書や仕様書等というような、特定の案件に関する文書群でのみ成り立つ同義語のある文書から、同義語を抽出するのに特に有効な同義語抽出システムである。
【0026】
図1を参照すると、本発明の第1の実施の形態に係る同義語抽出システム200は、基本的に電子機器内もしくはサーバーと電子機器およびこれらを相互に接続するインターネット等の情報通信ネットワークからなるシステム内に、少なくとも、文書入力部10、単語分析部20、同義語候補分析部30、定型文分析部40、同義語候補補正部50、同義語候補出力部60、および単語データベース100を含む。
【0027】
ここで、文書入力部10は、分析対象である文書の入力を受け付ける。
【0028】
単語分析部20は、文書もしくは文書群を構成する各文章および複合語に形態素解析や構文解析を適用し、各単語の品詞や係り受け関係を抽出する。
【0029】
同義語候補分析部30は、共起関係等の類似性により同義語候補を抽出する。
【0030】
定型文分析部40は、形態素編集距離等の利用により、定型文か否かを判定する。
【0031】
同義語候補補正部50は、同義語候補分析部30で抽出された同義語候補から、定型文分析部40で抽出された定型文中の非定型部分を除外する。
【0032】
同義語候補出力部60は、同義語候補補正部50からの結果を表示する。即ち、同義語候補補正部50にて補正された同義語候補を提示する。
【0033】
単語データベース100は、単語の品詞や構文などの情報を収集して蓄積し、単語分析部20からの特定の単語に関する問い合わせに対し、単語の品詞や構文に関連する情報を検索し応答する、データベースである。この単語データベース100としては、インターネット上のデータベースを使用することとしてもよい。
【0034】
ここで、本発明による同義語抽出システム200においては、定型文という意味的に全く違う二つの文を類似と判定させて、それらを除外するものであり、これは前述した特許文献1における構成も作用効果も全く異なるものである。
【0035】
なお、本発明における定型文とは、例えば、次に(1)〜(3)の3つの文を示す。これらの文は、センターの名称が異なるだけで、それ以外は、全く同一である。
(1)Aセンターの運用受託者と責任の範囲の切り分けを以下に示す。
(2)Bセンターの運用受託者と責任の範囲の切り分けを以下に示す。
(3)Cセンターの運用受託者と責任の範囲の切り分けを以下に示す。
【0036】
ここで、本発明における、定型文と判定された定型文中の「非定型語」とは、定型文分析部40にて定型文と判定された文の中で共通する文以外の語である。
【0037】
上述の3つの定型文の例を用いて説明すると、「Aセンター」、「Bセンター」、「Cセンター」が非定型語に該当する。この定型文では、「Aセンター」、「Bセンター」、「Cセンター」を除いた残りの文は完全に一致している。しかし、「Aセンター」、「Bセンター」、「Cセンター」は、明らかに異なるものであり、これらが同義語ではないことは明らかである。
【0038】
図2及び
図3は本発明の第1の実施の形態による同義語抽出システムの構成の第1及び第2の変形例を夫々示すブロック図である。
図1の第1の実施の形態の一例では、同義語候補分析部30と定型文分析部40とが並列の構成であるが、
図2および
図3で示される第1及び第2の変形例のように、同義語候補分析部30と定型文分析部40とが直列の構成であっても構わない。すなわち、同義候候補補正部50に、同義語候補分析部30と定型文分析部40における結果がこの順番に関係なく直列に導入されていれば、いずれの構成でも構わない。
【0039】
第1の実施の形態に係る同義語抽出システム200を電子デバイスで構成する場合には、同義語抽出システム200を、プログラム制御により動作するコンピュータで実現することが可能である。
【0040】
コンピュータは、周知のように、データを入力する入力装置と、データ処理装置と、データ処理装置での処理結果を出力する出力装置と、種々のデータベースとして働く補助記憶装置と、を具備するものである。
【0041】
そして、そのデータ処理装置は、プログラムを記憶するリードオンリメモリ(ROM)と、データを一時的に記憶するワークエリアとして使用されるランダムアクセスメモリ(RAM)と、ROMに記憶されたプログラムに従いRAMに記憶されているデータを処理する中央処理装置(CPU)とを含んで構成される。
【0042】
本発明の第1の実施の形態による同義語抽出システムを前述したようにコンピュータで実現する場合、入力装置が文書入力部10として働き、データ処理装置が、単語分析部20、同義語候補分析部30、定型文分析部40、同義候候補補正部50として働き、補助記憶装置が単語データベース100として動作し、出力装置が同義語候補出力部60として働く。
【0043】
次に、第1の実施の形態による同義語抽出システム200を構成する各構成要素を更に、詳細に説明する。
【0044】
文書入力部10は、分析対象とする文書もしくは文書群の登録(入力)を受け付ける。
【0045】
本発明の第1の実施の形態における文書あるいは文書群とは、自然言語で記載された特定の文書あるいは文書群を示し、その一つとして、情報システム構築の際に顧客から提出される提案依頼書(RFP)やベンダーが顧客に提出する提案書や要件定義書、さらには、基本設計書、機能設計書、テスト仕様書等があるが、これに限定されるものではない。
【0046】
単語分析部20は、文書もしくは文書群を構成する各文章に形態素解析や構文解析を適用することで、各文章に使用されている全単語の抽出および単語毎の品詞や格、組み合される助詞、単語間の係り受け関係に関する単語情報の抽出を行う。ここで、単語は名詞、動詞、形容詞など単独で意味をなす自立語に限定しても良い。上記単語情報には必要に応じて単語間の係り受け関係などを含めても良い。具体的には、単語分析部20は単語データベース100に単語情報を問い合わせ、文書もしくは文書群を構成する各文章に形態素解析や構文解析を適用することで、各文章に使用されている全単語の抽出および単語毎の品詞などの単語情報の抽出を行うことができる。
【0047】
同義語候補分析部30は、既存の同義語分析技術を利用することができる。例えば、各単語の共起語による共起語ベクトルを、単語間の文脈情報として抽出する技術がある。
【0048】
なお、本発明の同義語抽出システム200は、情報システム構築に関する提案書や仕様書等といった、特定の案件に関する文書群でのみ成り立つ同義語のある文書から、同義語を抽出することを目的とするものであり、同義語候補分析部30は情報システム構築に関する提案書や仕様書の特性に合った同義語分析技術を利用することが望ましい。
【0049】
例えば、同義語候補分析部30の一例としては、単語分析部20で抽出された各文章に使用されている任意の単語を基軸単語として選択し、基軸単語毎の単語情報に基づき、任意の基軸単語共起判定ルールで基軸単語と共起関係とみなされる共起語とその共起数とで表される基軸単語共起語ベクトルを全基軸単語についてまとめた基軸単語共起表を作成する方法がある。
【0050】
ここで、上記基軸単語共起判定ルールとしては、1文、1段落内の全文章、目次上の同一項目内での全文章、文書全体など、文書の特徴に合わせて共起語と見なす範囲を設定して良く、1文内での共起する動詞、および目次上の同一項目内の文章内の名詞のように品詞毎に共起とみなす範囲を変えても良い。さらに、単語情報に単語間の係り受け関係が含まれる場合は、係り受け関係のある単語かどうかを上記基軸単語共起判定ルールとして利用しても良い。
【0051】
また、共起数は共起回数でも良いが、共起回数を基軸単語毎の全共起語数で除した頻度などでも良い。また、上記基軸単語共起表とは、各行が各基軸単語に、各列が各共起語に対応している行列で、基軸単語に対する共起語の共起数が表の各値として登録されたものである。
【0052】
なお、基軸単語は相互的なもので、先に基軸単語として選択された単語であっても、後に他の単語を基軸単語とみなす場合は共起語として扱うことができる。
【0053】
定型文分析部40は、単語分析部20にて得られた形態素解析結果等を利用して、同義語分析の誤検出となる定型文を抽出するものである。この定型文分析部40で使われる方法としては、単語分析部20の分析結果を利用して、定型文を効率的に抽出するものであれば、特に限定されない。2つの文と文との類似度を評価するものであれば、いずれのものでも構わないが、定型文という非常に類似した2つの文を抽出するためには、形態素を用いて編集距離を評価し、文と文の類似度を評価する方法が好ましい。
【0054】
編集距離とは、二つの文(文字列)がどの程度異なっているかを示す数値であり、文字の挿入等の編集操作により、一つの文を別の文に変形するのに必要な手順の最小回数を示す。
【0055】
図4は
図1の同義語抽出システム200の定型文分析部40を具体的な構成を示すブロック図である。
図4に示すように、この定型文分析部40は、形態素編集距離分析部41および定型文判定部42から構成されることができる。
【0056】
形態素編集距離分析部41は、単語分析部20の形態素解析結果を編集操作して必要最低限の操作数を導出するものであり、この編集距離としては、挿入、削除、置換を編集操作とするLevenshtein距離、これに転置を加えたDamerau−Levenshtein距離などが利用できる。なお、形態素を利用した編集距離ということで、文と文の編集距離としては、名詞以外の品詞の一致も考慮されることは言うまでもない。さらに、同一品詞の置換のコストを挿入や削除に比べて低く設定し、さらに、長い方の形態素数で正規化することで、文と文の類似度をより的確に算出することができる。また、同一品詞の置換のコストを置換の回数に対して単調増加するように設定し、より置換回数の少ない文同士の距離を小さくすれば、文と文の類似度をより的確に算出することができる。ここで、文と文のペアの中で、形態素編集距離が閾値以下で、かつ、形態素数が等しいものを定型文と判定する。この閾値の設定は、操作ルールにより任意に設定することができる。
【0057】
定型文判定部42は、形態素編集距離分析部41にて導出された形態素編集距離の値と、予め設定した定型文閾値を比較し、形態素編集距離が定型文閾値以下あるいは未満の場合を定型文と判定し、その定型文として判定された定型文中の非定型語を抽出する。
【0058】
同義語候補補正部50は、定型文分析部40にて定型文と判定された定型文中の非定型語を、同義語候補分析部30の結果から除外する。除外の方法としては、同義語候補分析部30の結果から定型文分析部40にて定型文と判定された定型文中の非定型語を機械的に一括して行っても良い。しかし、同義語候補分析部30の分析結果と、定型文分析部40にて定型文と判定された定型文中の非定型語と、関連する定型文とを作業者が参照しながら、除外するべきか否かを判断しても構わない。なお、この作業は、どちらか一方を選択するものではなく、同義語候補分析部30の分析結果の上位にランク、すなわち、同義性の高い同義語候補に関しては、作業者が確認し、下位にランクしたものについては、一括して除外しても構わない。さらに、定型文と判定された定型文中の非定型語の除外作業は、同義語候補分析部30の上位にランクしたものだけを対象にしても構わない。上位とは、対象とする文書の量や、作業者の工数、あるいは、同義語候補の類似度にもよるが、300程度が望ましく、100程度がさら望ましい。
【0059】
同義語候補出力部60は、同義語候補補正部50で補正された同義語候補を出力する。ここで、出力形態は、文書内における同義語候補の組合せを色分けや太字による強調などで明示することで、文書全体を出力する形態などが適当である。他にも、出力形態としては、同義語候補の組合せを抽出した表などの形態であって良い。その際、各抽出条件における単語ペアの類似性を示すランキング表のランキングトップのみを表示する方法や、各抽出条件を総和した結果を表示することも可能である。その他、同義語候補とされた基軸単語を主ノード、その共起語を中間ノード、概念を端ノードとして関係をリンクで結んだグラフを表示し、同義語候補とされた基軸単語を最短で繋ぐリンクを色分けして強調するなどの形態であっても構わない。さらに、同義語候補を抽出する際に用いた非類似度などで同義語間に定量的な同義度を付加し、同義度が任意に設定された閾値より大きい同義語のみに表示を限定しても良いし、同義語候補間の同義度によって色分けや太字による強調もしくはグラフの単語の文字の大きさなどに強弱を与えるなどしても構わない。また、各出力形態を選択できるように、ベースとなる表示形態から必要に応じて表やグラフに移行できるようにしてもよい。また、必要に応じて動詞や名詞などを選択的に出力するようにしてもよい。
【0060】
次に、
図1のブロック図および
図5のシーケンス図を参照して、本発明の第1実施の形態に係る同義語抽出システム200の全体の動作について詳細に説明する。なお、
図5に示すシーケンス図および以下の説明は処理例であり、適宜求める処理に応じて処理順等を入れ替えたり処理を戻したり繰り返したりすることを行ってもよい。
【0061】
図5を参照すると、文書入力部10は、対象とする文書もしくは文書群の入力を受け付ける(ステップA1)。
【0062】
単語分析部20は、文書もしくは文書群を構成する各文章に形態素解析や構文解析を適用することで、各文章に使用されている全単語の抽出および単語毎の品詞や格、組み合わされる助詞、単語間の係り受け関係に関する単語情報の抽出を行う(ステップA2)。
【0063】
この際、単語データベース100は、単語の品詞や構文などの情報を収集して蓄積し、特定の単語に関する問い合わせに対し、単語の品詞や構文に関連する情報を検索し応答する(ステップA3)。
【0064】
定型文分析部40は、単語分析部20にて得られた形態素解析結果等を利用して、同義語分析の誤検出となる定型文を抽出する(ステップA4)。
【0065】
また、同義語候補分析部30は、単語分析部20で分析された文章中の単語や構文情報を基に単語間の同義性を判定し、同義性すなわち類似度の高い単語ペアを抽出する(ステップA5)。
【0066】
同義語候補補正部50は、同義語候補分析部30の分析結果と定型文分析結果から、同義語の可能性が想定される単語の組合せを同義語候補として順次抽出(推定)する(ステップA6)。
【0067】
同義語候補出力部60は、同義語候補補正部50で補正した同義語候補を出力する(ステップA7)。
【0068】
次に、本発明の第1の実施の形態に係る同義語抽出システム200の効果について説明する。
【0069】
本発明の第1の実施の形態では、形態素編集距離分析部41および定型文判定部42からなる定型文分析部により、定型文を抽出し、この定型文と判定された定型文中の非定型語を、同義語候補分析部30の分析結果から除外することで、情報システム構築に関する提案書や仕様書等という開発文書から、特定の案件に関する文書群でのみ成り立つ同義語を効率的に抽出することが可能となる。すなわち、先行技術の課題を解決することができる。
【0070】
なお、上記本発明の第1実施の形態に係る文書中の同義語抽出システム200は、同義語抽出方法として実現され得る。また、上記本発明の実施の形態に係る文書中の同義語抽出システム200は、同義語抽出プログラムによりコンピュータによって実行させるようにしても良い。
【0071】
(第2の実施の形態)
図6は、本発明の第2の実施の形態による同義語抽出システム200の構成の一例を示すブロック図である。
【0072】
図6に示すように、第2の実施の形態に係る同義語抽出システム200においては、同義語候補分析に概念分析部25と概念データベース110とを具備している。
【0073】
この概念データベース110は、単語の概念分類、同義語、類義語、用法といった単語の一般概念を体系付けた一般概念情報を収集して蓄積するとともに、同義語候補分析部30に含まれる概念情報抽出部(図示せず)からの特定の単語に関する問い合わせに対し、単語の意味や用法に関連する一般概念情報を検索し応答する。
【0074】
同義語候補分析部30の同義語候補分析に概念情報を活用することで、各単語の出現回数が少ない同義語候補分析では、共起念ベクトルが疎行列で類似の判定が困難な文章量の少ない条件でも、より的確に類似性の評価が可能になり、情報システム構築に関する提案書や仕様書等というような、特定の案件に関する文書から意義は同じで語形が異なっている同義語を抽出できる。ただし、概念情報を同義語分析に取り入れても定型文に起因する誤検出は含まれる。
【0075】
概念分析部25は、各単語の共起語ベクトルを集約した概念ベクトルを、単語間の文脈情報として抽出する。共起語ベクトルの抽出としては、上記の実施の形態で記載した方法を利用することができる。概念ベクトルの抽出としては、具体的には、基軸単語共起表の基軸単語共起語ベクトルの各共起語のそれぞれについて、概念データベース110に一般概念情報を問い合わせ、任意の範囲内で基軸単語共起表における各基軸単語共起語ベクトルの各共起語を概念に変換した基軸単語概念ベクトルを、全基軸単語についてまとめた基軸単語概念表を作成することができる。
【0076】
概念への変換で異なる共起語が同じ概念となる場合、同義語候補分析部30に含まれる概念情報抽出部(図示せず)は、それぞれの共起語を合流し、共起数の和を対応箇所へ登録する。
【0077】
また、概念データベース110として大分類、中分類、小分類のような複数の階層での概念が一般概念情報として登録されたシソーラスを用いる場合、概念分析部25は、階層毎に概念表を作成し、大分類など広い概念での基軸単語概念表で異なる共起語が同じ概念となる場合は、それぞれの共起語を合流し、共起数の和を対応箇所へ登録する。他に、概念データベース110として同義語を含む類義語群が一般概念情報として登録された類語辞書を用いた場合、概念分析部25は、共起語を対応する類義語群の各類義語に変換し、各類義語の共起数として対応する共起語の共起数を割り当て、同一の基軸単語の共起語に関して変換された類義語毎の共起数の延べ数を基軸単語概念ベクトルとして算出しても良い。
【0078】
なお、概念データベース110に共起語に対応する概念が無い場合、概念分析部25は、上記共起語を概念に変換せず、共起語の単語をそのまま概念として扱い残す。なお、基軸単語概念ベクトルに、本発明の実施の形態と同様に直行ベクトルを追加し、共起数が少ない単語ペアに対する補正を行っても良い。基本的な操作は、共起語ベクトルを用いた実施の形態と同等である。
【0079】
以上説明した本発明の実施の形態においては、情報システム構築における要件定義や仕様書策定において作成される各種文書において成り立つ同義語を抽出し、それを提示することが可能となり、情報システム構築における要件定義や仕様書策定において作成される各種文書で頻出する定型文を効率的に除去することで、単語間の類似性や同義性をより的確に算出することを可能にする。
【0080】
したがって、顧客と情報システム構築者、あるいは、情報システム構築者間の齟齬に起因する混乱を防ぎ、最終的に、齟齬に起因する情報システム構築の手戻りの削減を実現することができる。
【実施例】
【0081】
次に、具体的な実施例を用いて、本発明の実施の形態に係る同義語抽出システム200について具体的に説明する。
【0082】
同義語抽出システム200は、文書に形態素解析および構文解析を適用し、文書を構成する単語に分解し、単語毎の抽出元の文および品詞を解析することで、名詞、動詞、形容詞、および形容動詞を単語として抽出する。
【0083】
なお、動詞の内でサ行変格活用に属する動詞は、活用部分を除去しいわゆるサ変名詞化した形態で抽出する。
【0084】
さらに、同義語抽出システム200は、文書に含まれる単語の内で名詞を単語Sとし、各単語i(i=1、2、・・・、n)について、特定の単語Siと同一文中で共起関係にある名詞、動詞、形容詞を、共起語Vj(j=1、2、・・・、m)として抽出し、単語Siに対する各共起語Vijの共起回数を共起数Nijとして集計し、全ての単語Siに対する各共起語Viについて表形式にまとめた単語共起表Eを作成する。なお、単語共起表Eの単語Siに対する各共起語Vjの共起数Nijをまとめたデータセットを単語共起語ベクトルNiと呼ぶ。
【0085】
このようにして作成した単語共起語ベクトルNiにコサイン類似度を適用し、単語ペアの類似度のランキングを導出する。コサイン類似度が高い単語ペアほど同義性が高いということになる。前述の通り、この結果は定型文に起因する誤検出結果を含んでいる可能性があり、別の工程として、その定型文の抽出作業を行う。
【0086】
抽出作業は、まず、形態素解析結果を利用して、形態素編集距離を評価する。本実施例では挿入、削除、置換を編集操作とする。
【0087】
また、編集操作のコストは、挿入が1、削除が1、置換を0.1とする。コストは編集操作を行った回数を示し、編集距離はそのコストの和を示す。
【0088】
本実施例では、形態素編集距離が0.5以下で、かつ、形態素数が等しいものを定型文と判定する。例えば以下のような例文が二つあったとする。
例文1)サーバーの機能仕様の一覧を下表に示す
例文2)プリンターの機能仕様の一覧を下表に示す
この2つの文を形態素解析すると次のようになる。
例文1)サーバー/の/機能仕様/の/一覧/を/下表/に/示す
例文2)プリンター/の/機能仕様/の/一覧/を/下表/に/示す
【0089】
編集操作として、例文1中の「サーバー」を「プリンター」を置換することで2つの文は同一となる。置換のコストは、0.1に設定しているため、2つの文の形態素編集距離は0.1となる。また、形態素数は双方とも9で等しく、設定した定型文としての判定条件を満たしている。また、定型文と判定された定型文中の非定型語は、「サーバー」と「プリンター」となる。このようにして抽出された単語ペアを同義語候補分析結果から除外する。
【0090】
なお、ここでは、定型文の判定として、形態素編集距離と形態素数という2つ評価指標を利用しているが、形態素編集距離のみを利用することもできる。その際、形態素編集距離を形態素数で規格化しても構わない。
【0091】
また、文書範囲を評価指標とすることも可能である。この文書範囲とは評価する文と文の開発文書中の距離を示している。開発文書中の2つの定型文は比較的近い位置で記載されることが多いためである。この文書範囲としては、例えば200〜300文以内がある。
【0092】
図7は、補正前の同義語候補(同義語候補分析結果)と補正後(定型文分析の結果を反映)の結果の一例を示している。図中のランキングは、同義語候補分析結果を類似度の高い順に並べたもので、ランキング1位は、最も類似度が高いことを示している。定型文分析で抽出された「サーバー」と「プリンター」は明らかに同義語ではなく、この結果を同義語候補の結果か除外する。
【0093】
以上説明したように、本発明の同義語抽出システムによれば、情報システム構築に関する提案書や仕様書等というような、特定の案件に関する文書群でのみ成り立つ同義語を、その特定の案件に関する文書群から精度良く抽出し、それを提示することが可能となる。その結果、顧客と情報システム構築者、あるいは、情報システム構築者間の齟齬に起因する混乱を防ぎ、最終的に、齟齬に起因する情報システム構築の手戻りの削減を実現することができる。
【0094】
その具体的な理由は、情報システム構築における要件定義や仕様書策定において作成される各種文書中にある定型文中の非定型部分を、形態素編集距離を用いた分析により同義語候補から除外するため、同義語候補の上位にランクされる同義語候補の誤報を除去することを可能にしているためである。
【0095】
なお、実施の形態および実施例を参照して本願発明を説明したが、本願発明は上記の実施の形態および実施例に限定されるものではない。
【0096】
本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【0097】
本発明によれば、情報システム構築における要件定義や仕様書策定において作成される各種文書において、文書中の曖昧さを除外し、文書の理解・作成・修正を支援することが可能になる。したがって、本発明は手戻りの減少や顧客満足の向上など情報システム構築の効率化に関する用途に利用可能である。
【符号の説明】
【0098】
10 文書入力部
20 単語分析部
25 概念分析部
30 同義語候補分析部
40 定型文分析部
41 形態素編集距離分析部
42 定型文判定部
50 同義語候補補正部
60 同義語候補出力部
100 単語データベース
110 概念データベース
200 同義語抽出システム