(57)【特許請求の範囲】
【請求項１】
複数の文章の中から類義語を検出するための共起パターンを生成するようにコンピュータを機能させるプログラムであって、
検出すべき類義語のシードとなる１つ以上のシード単語ｓの集合を設定するシード単語設定手段と、
複数の文章の中から、各シード単語ｓが出現するシード文を検索するシード文検索手段と、
全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出し、各単語ｗについて全てのシード単語ｓに共通する共起頻度に基づく評価値Score(ｗ)を算出し、該評価値Score(ｗ)が所定閾値以上となる共通特徴の単語ｗを検出する特徴単語検出手段と、
シード単語ｓ及び共通特徴の単語ｗが共に出現する所定長の単語列を検出する単語列検出手段と、
各単語列について前記シード単語ｓの部分を変数文字（ワイルドカード）に置き換えた共起パターンを生成する共起パターン生成手段と
してコンピュータを機能させることを特徴とするプログラム。
【請求項２】
前記複数の文章の中から、前記共起パターンを用いて前記変数文字に合致する類義候補単語と類義候補単語出現数とを検索する類義候補単語検出手段と、
前記シード単語ｓ毎及び前記類義候補単語毎に、共起パターン番号を要素とする類義候補単語出現数の共起パターンベクトルを算出する共起パターンベクトル算出手段と、
前記シード単語ｓの共起パターンベクトルと、前記類義候補単語の共起パターンベクトルとの間の類似度が所定閾値以上となる当該類義候補単語を、類義語として出力する類義語決定手段と
してコンピュータを機能させることを特徴とする請求項１に記載のプログラム。
【請求項３】
前記類義語決定手段は、複数のシード単語ｓの共起パターンベクトルの相乗平均と、前記類義候補単語の共起パターンベクトルとの間の類似度を算出する
ようにコンピュータを機能させることを特徴とする請求項１又は２に記載のプログラム。
【請求項４】
前記特徴単語検出手段について、前記評価値Score(ｗ)は、相互情報量基準によって算出するようにコンピュータを機能させることを特徴とする請求項１から３のいずれか１項に記載のプログラム。
【請求項５】
前記シード文検索手段は、前記文章から、形態素解析によって形態素を抽出し、それら形態素の中にシード単語ｓを含むシード文を検索するものであり、
前記単語列検出手段は、前記所定長の単語列を、所定長の形態素列として検出する
ようにコンピュータを機能させることを特徴とする請求項１から４のいずれか１項に記載のプログラム。
【請求項６】
装置を用いて、複数の文章の中から類義語を検出するための共起パターンを生成する方法であって、
検出すべき類義語のシードとなる１つ以上のシード単語ｓの集合を設定する第１のステップと、
複数の文章の中から、各シード単語ｓが出現するシード文を検索する第２のステップと、
全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出し、各単語ｗについて全てのシード単語ｓに共通する共起頻度に基づく評価値Score(ｗ)を算出し、該評価値Score(ｗ)が所定閾値以上となる共通特徴の単語ｗを検出する第３のステップと、
シード単語ｓ及び共通特徴の単語ｗが共に出現する所定長の単語列を検出する第４のステップと、
各単語列について前記シード単語ｓの部分を変数文字（ワイルドカード）に置き換えた共起パターンを生成する第５のステップと
を有することを特徴とする方法。
【請求項７】
前記複数の文章の中から、前記共起パターンを用いて前記変数文字に合致する類義候補単語と類義候補単語出現数とを検索する第６のステップと、
前記シード単語ｓ毎及び前記類義候補単語毎に、共起パターン番号を要素とする類義候補単語出現数の共起パターンベクトルを算出する第７のステップと、
前記シード単語ｓの共起パターンベクトルと、前記類義候補単語の共起パターンベクトルとの間の類似度が所定閾値以上となる当該類義候補単語を、類義語として出力する第８のステップと
を更に有することを特徴とする請求項６に記載の方法。
【請求項８】
複数の文章の中から類義語を検出するための共起パターンを生成する装置であって、
検出すべき類義語のシードとなる１つ以上のシード単語ｓの集合を設定するシード単語設定手段と、
複数の文章の中から、各シード単語ｓが出現するシード文を検索するシード文検索手段と、
全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出し、各単語ｗについて全てのシード単語ｓに共通する共起頻度に基づく評価値Score(ｗ)を算出し、該評価値Score(ｗ)が所定閾値以上となる共通特徴の単語ｗを検出する特徴単語検出手段と、
シード単語ｓ及び共通特徴の単語ｗが共に出現する所定長の単語列を検出する単語列検出手段と、
各単語列について前記シード単語ｓの部分を変数文字（ワイルドカード）に置き換えた共起パターンを生成する共起パターン生成手段と
を有することを特徴とする装置。
【請求項９】
前記複数の文章の中から、前記共起パターンを用いて前記変数文字に合致する類義候補単語と類義候補単語出現数とを検索する類義候補単語検出手段と、
前記シード単語ｓ毎及び前記類義候補単語毎に、共起パターン番号を要素とする類義候補単語出現数の共起パターンベクトルを算出する共起パターンベクトル算出手段と、
前記シード単語ｓの共起パターンベクトルと、前記類義候補単語の共起パターンベクトルとの間の類似度が所定閾値以上となる当該類義候補単語を、類義語として出力する類義語決定手段と
を更に有することを特徴とする請求項８に記載の装置。
【請求項１０】
複数の文章の中から類義語を検出する類義語検索サーバであって、
クライアントから、検出すべき類義語のシードとなる１つ以上のシード単語ｓの集合を受信し且つ設定するシード単語設定手段と、
複数の文章の中から、各シード単語ｓが出現するシード文を検索するシード文検索手段と、
全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出し、各単語ｗについて全てのシード単語ｓに共通する共起頻度に基づく評価値Score(ｗ)を算出し、該評価値Score(ｗ)が所定閾値以上となる共通特徴の単語ｗを検出する特徴単語検出手段と、
シード単語ｓ及び共通特徴の単語ｗが共に出現する所定長の単語列を検出する単語列検出手段と、
各単語列について前記シード単語ｓの部分を変数文字（ワイルドカード）に置き換えた共起パターンを生成する共起パターン生成手段と、
前記複数の文章の中から、前記共起パターンを用いて前記変数文字に合致する類義候補単語と類義候補単語出現数とを検索する類義候補単語検出手段と、
前記シード単語ｓ毎及び前記類義候補単語毎に、共起パターン番号を要素とする類義候補単語出現数の共起パターンベクトルを算出する共起パターンベクトル算出手段と、
前記シード単語ｓの共起パターンベクトルと、前記類義候補単語の共起パターンベクトルとの間の類似度が所定閾値以上となる当該類義候補単語を、類義語として出力する類義語決定手段と
を有することを特徴とする類義語検索サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、類義語の集合を検出する技術に関する。
【背景技術】
【０００２】
世の中で用いられる単語やその意味は、時代の変化に応じて常に増加及び変化を続けている。そのために、単語単独の意味合いのみならず、単語同士の間で意味が類似する類義語の集合を、自動的に収集及び検出する技術が所望されている。この技術は、文書の分類処理や検索処理に有用であって、例えば商品名、社名などの名称や略称を、商品の種別や業種等で分類することができる。しかし、新規の名称や略称については、それらの種別を人手で定義し且つ分類する必要があり、非常に高いコストを要する。
【０００３】
従来、単語同士の間の類似度を用いて類義語を自動的に抽出する技術がある（例えば非特許文献１参照）。この技術によれば、対象単語（シード単語）に対して共起する他の単語やパターンを検出し、その共起頻度や相互情報量等の類似度として数値化し、類似度の高い単語を、対象単語の類義語として抽出する。
【０００４】
一方で、単語は、出現する文書や文脈によっては意味が異なり、類義語とみなす単語も変わってくる場合がある。例えば単語「マンハッタン」は、一般的には都市名の意味を持つが、文脈によってはカクテルの名前や映画の作品名としての意味を持つ。このように、単語が、文脈に応じた多義性を持つことによって、類義語も変わってくる。そのために、類義語を自動的に抽出した場合、このような多義性や一般性によって、意図とは異なる類義語を抽出してしまうという問題が生じる。
【０００５】
これに対して、比較的少ない対象単語集合を入力として与えることによって、それらの単語と共起するパターンを獲得し、そのパターンを用いて新たな類義語を獲得する技術がある。この技術によれば、ユーザは、対象単語集合によって、新たな類義語集合の粒度を制御することができる。
例えば対象単語集合を「ウォッカ」「テキーラ」とした場合は、「ウイスキー」「ブランデー」ような「酒類」の範囲における類義語を取得することが期待できる。
一方で、対象単語集合を「ウォッカ」「麦茶」とした場合、「コーヒー」「ミルク」のような「飲料」（酒類よりも上位概念）の範囲における類義語を取得することが期待できる。
【０００６】
このような技術の課題は、一般性の高い共起パターンを生成してしまうことにある。そのような共起パターンを用いることによって、対象単語集合に対して、本来の意味とは異なる意味の単語を取得してしまう場合がある。
例えば自動車の車種に関するカテゴリの集合を取得しようとして、「ｘを買う」や「ｘが好き」のような一般性の高い共起パターンを生成したとする。
この共起パターンを用いて、対象単語集合を「ウォッカ」「テキーラ」とした場合、「ウイスキー」「ブランデー」の他に、「新車」や「プリン」など関連の弱い類義語も取得してしまう。
【０００７】
この課題に対して、対象単語集合の上位下位関係を利用する技術がある（例えば非特許文献２参照）。この技術によれば、類義語の上位下位関係データに、「ウォッカ」「テキーラ」「焼酎」「ワイン」に共通の上位カテゴリとして「酒類」が蓄積されているとする。この場合、対象単語集合を「ウォッカ」「テキーラ」とした場合、共通の上位カテゴリ「酒類」に属する単語集合が、類義語として取得される。
そして、例えば「ウォッカ」「テキーラ」に共通して関連の強い共起パターン「ｘで酔う」を獲得する。この共起パターンを用いることによって、「焼酎」「ワイン」は関連の強い類義語候補となる。一方で、「新車」「プリン」は関連の弱い単語となる。これによって、「ウォッカ」「テキーラ」と関連の弱い類義語候補を、フィルタリングによって除外することができる。
【０００８】
また、同様の課題に対して、類義語の上位下位関係データを用いることなく、スニペットの列挙表現形式を利用する技術もある（例えば特許文献１参照）。この技術によれば、スニペットの列挙表現形式で区切られた区間で、対象単語の周辺に、その類義語候補が列挙されやすい傾向を利用して、類義語候補を取得している。
【０００９】
この列挙表現は、例えば「...ウォッカ、ジンライム、テキーラ、ブランデー、ウィスキー...」のように多くの区点で区切られている。このような区間は、区点間の文字列数の標準偏差を用いて抽出されている。例えば、対象単語「ウォッカ」「テキーラ」で検索することによって、以下のスニペットが得られる。
「・・・、ウォッカ、ジンライム、テキーラ、ブランデー、ウィスキー、・・・」
そして、「ウォッカ」「テキーラ」を含む単語が列挙された区間を推定し、対象単語から近い距離にある「ジンライム」「ブランデー」「ウィスキー」を類義語候補として獲得する。そして、対象単語と類義語候補とのそれぞれについて、前後の単語列を文脈とみなし、その文脈の類似度によって類義語を決定する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１２−１８５６６６号公報
【非特許文献】
【００１１】
【非特許文献１】相澤彰子、「大規模テキストコーパスを用いた語の類似度計算に関する考察」、情報処理学会論文誌、２００８年、Vol.49、No.3、p.1426〜p.1436、[online]、［平成２５年７月２２日検索］、インターネット＜URL:http://ci.nii.ac.jp/naid/110006644536＞
【非特許文献２】高瀬翔、岡崎直観、乾健太郎、「意味カテゴリの階層関係を活用した集合拡張」、言語処理学会、第１８回年次大会、p.475〜p.478、[online]、［平成２５年７月２２日検索］、インターネット＜URL:http://www.anlp.jp/proceedings/annual_meeting/2012/pdf_dir/D2-9.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、非特許文献２に記載の技術によれば、上位下位関係データから、入力した対象単語集合に対する上位カテゴリが得られない場合、意味の異なる単語を類義語として獲得してしまう。例えば、対象単語「ウォッカ」「テキーラ」に対して、「酒類」のような共通の上位カテゴリが上位下位関係データに既に定義されていなければ、関連の弱い単語を除外するパターン「ｘで酔う」を獲得することができない。結果的に、関連の弱い「新車」「プリン」を類義語として獲得してしまう。また、固有名詞の単語に対しては、このような上位下位関係を得ることも難しい。
【００１３】
また、特許文献１に記載の技術によれば、対象単語を含んだ列挙表現の中に、類義語の候補が列挙されやすい傾向を利用している。しかしながら、商品名などの固有表現以外も含む任意の対象単語集合に対して、必ずしもそれらの単語を共に含んだ列挙表現が得られるとは限らない。
【００１４】
そこで、本発明は、シード単語（対象単語）と関連の弱い類義語候補が検索されることを回避するために、シード単語集合との共起の強さが共に高く且つ一般性の高いパターンを除外することができる共起パターンを生成するプログラム、方法、装置及びサーバを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明によれば、複数の文章の中から類義語を検出するための共起パターンを生成するようにコンピュータを機能させるプログラムであって、
検出すべき類義語のシードとなる１つ以上のシード単語ｓの集合を設定するシード単語設定手段と、
複数の文章の中から、各シード単語ｓが出現するシード文を検索するシード文検索手段と、
全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出し、各単語ｗについて全てのシード単語ｓに共通する共起頻度に基づく評価値Score(ｗ)を算出し、該評価値Score(ｗ)が所定閾値以上となる共通特徴の単語ｗを検出する特徴単語検出手段と、
シード単語ｓ及び共通特徴の単語ｗが共に出現する所定長の単語列を検出する単語列検出手段と、
各単語列についてシード単語ｓの部分を変数文字（ワイルドカード）に置き換えた共起パターンを生成する共起パターン生成手段と
してコンピュータを機能させることを特徴とする。
【００１６】
本発明のプログラムにおける他の実施形態によれば、
複数の文章の中から、共起パターンを用いて変数文字に合致する類義候補単語と類義候補単語出現数とを検索する類義候補単語検出手段と、
シード単語ｓ毎及び類義候補単語毎に、共起パターン番号を要素とする類義候補単語出現数の共起パターンベクトルを算出する共起パターンベクトル算出手段と、
シード単語ｓの共起パターンベクトルと、類義候補単語の共起パターンベクトルとの間の類似度が所定閾値以上となる当該類義候補単語を、類義語として出力する類義語決定手段と
してコンピュータを更に機能させることも好ましい。
【００１７】
本発明のプログラムにおける他の実施形態によれば、
類義語決定手段は、複数のシード単語ｓの共起パターンベクトルの相乗平均と、類義候補単語の共起パターンベクトルとの間の類似度を算出する
ようにコンピュータを機能させることも好ましい。
【００１８】
本発明のプログラムにおける他の実施形態によれば、
特徴単語検出手段について、評価値Score(ｗ)は、相互情報量基準によって算出するようにコンピュータを機能させることも好ましい。
【００１９】
本発明のプログラムにおける他の実施形態によれば、
シード文検索手段は、文章から、形態素解析によって形態素を抽出し、それら形態素の中にシード単語ｓを含むシード文を検索するものであり、
単語列検出手段は、所定長の単語列を、所定長の形態素列として検出する
ようにコンピュータを機能させることも好ましい。
【００２０】
本発明によれば、装置を用いて、複数の文章の中から類義語を検出するための共起パターンを生成する方法であって、
検出すべき類義語のシードとなる１つ以上のシード単語ｓの集合を設定する第１のステップと、
複数の文章の中から、各シード単語ｓが出現するシード文を検索する第２のステップと、
全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出し、各単語ｗについて全てのシード単語ｓに共通する共起頻度に基づく評価値Score(ｗ)を算出し、該評価値Score(ｗ)が所定閾値以上となる共通特徴の単語ｗを検出する第３のステップと、
シード単語ｓ及び共通特徴の単語ｗが共に出現する所定長の単語列を検出する第４のステップと、
各単語列についてシード単語ｓの部分を変数文字（ワイルドカード）に置き換えた共起パターンを生成する第５のステップと
を有することを特徴とする。
【００２１】
本発明の方法における他の実施形態によれば、
複数の文章の中から、共起パターンを用いて変数文字に合致する類義候補単語と類義候補単語出現数とを検索する第６のステップと、
シード単語ｓ毎及び類義候補単語毎に、共起パターン番号を要素とする類義候補単語出現数の共起パターンベクトルを算出する第７のステップと、
シード単語ｓの共起パターンベクトルと、類義候補単語の共起パターンベクトルとの間の類似度が所定閾値以上となる当該類義候補単語を、類義語として出力する第８のステップと
を更に有することも好ましい。
【００２２】
本発明によれば、複数の文章の中から類義語を検出するための共起パターンを生成する装置であって、
検出すべき類義語のシードとなる１つ以上のシード単語ｓの集合を設定するシード単語設定手段と、
複数の文章の中から、各シード単語ｓが出現するシード文を検索するシード文検索手段と、
全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出し、各単語ｗについて全てのシード単語ｓに共通する共起頻度に基づく評価値Score(ｗ)を算出し、該評価値Score(ｗ)が所定閾値以上となる共通特徴の単語ｗを検出する特徴単語検出手段と、
シード単語ｓ及び共通特徴の単語ｗが共に出現する所定長の単語列を検出する単語列検出手段と、
各単語列についてシード単語ｓの部分を変数文字（ワイルドカード）に置き換えた共起パターンを生成する共起パターン生成手段と
を有することを特徴とする。
【００２３】
本発明の装置における他の実施形態によれば、
複数の文章の中から、共起パターンを用いて変数文字に合致する類義候補単語と類義候補単語出現数とを検索する類義候補単語検出手段と、
シード単語ｓ毎及び類義候補単語毎に、共起パターン番号を要素とする類義候補単語出現数の共起パターンベクトルを算出する共起パターンベクトル算出手段と、
シード単語ｓの共起パターンベクトルと、類義候補単語の共起パターンベクトルとの間の類似度が所定閾値以上となる当該類義候補単語を、類義語として出力する類義語決定手段と
を更に有することも好ましい。
【００２４】
本発明によれば、複数の文章の中から類義語を検出する類義語検索サーバであって、
クライアントから、検出すべき類義語のシードとなる１つ以上のシード単語ｓの集合を受信し且つ設定するシード単語設定手段と、
複数の文章の中から、各シード単語ｓが出現するシード文を検索するシード文検索手段と、
全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出し、各単語ｗについて全てのシード単語ｓに共通する共起頻度に基づく評価値Score(ｗ)を算出し、該評価値Score(ｗ)が所定閾値以上となる共通特徴の単語ｗを検出する特徴単語検出手段と、
シード単語ｓ及び共通特徴の単語ｗが共に出現する所定長の単語列を検出する単語列検出手段と、
各単語列についてシード単語ｓの部分を変数文字（ワイルドカード）に置き換えた共起パターンを生成する共起パターン生成手段と、
複数の文章の中から、共起パターンを用いて変数文字に合致する類義候補単語と類義候補単語出現数とを検索する類義候補単語検出手段と、
シード単語ｓ毎及び類義候補単語毎に、共起パターン番号を要素とする類義候補単語出現数の共起パターンベクトルを算出する共起パターンベクトル算出手段と、
シード単語ｓの共起パターンベクトルと、類義候補単語の共起パターンベクトルとの間の類似度が所定閾値以上となる当該類義候補単語を、類義語として出力する類義語決定手段と
を有することを特徴とする。
【発明の効果】
【００２５】
本発明のプログラム、方法、装置及びサーバによれば、シード単語と関連の弱い類義語候補が検索されることを回避するために、シード単語集合との共起の強さが共に高く且つ一般性の高いパターンを除外することができる共起パターンを生成することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明におけるプログラムの機能構成図である。
【図２】文章データベースに蓄積された文章データを表す説明図である。
【図３】シード単語及びシード文を表す説明図である。
【図４】特徴単語検出部によって算出された共通特徴スコアを表す説明図である。
【図５】複数の単語列からなる共起パターンを表す説明図である。
【図６】類義候補単語検出部によって検索された単語列を表す説明図である。
【図７】共起パターンベクトル算出部によって算出された共起類似度を表す説明図である。
【図８】本発明における類義語検索サーバを含むシステム構成図である。
【発明を実施するための形態】
【００２７】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【００２８】
図１は、本発明におけるプログラムの機能構成図である。
【００２９】
図１によれば、類義語検索装置（又はサーバ）に搭載されたコンピュータを機能させるプログラムの構成が表されており、文章データベース１０と、共起パターン生成プログラムと、類義語検出プログラムとから構成されている。これら機能構成部の処理の流れは、類義語検出装置及び類義語検出方法としても理解できる。
【００３０】
［文章データベース１０］
文章データベース１０は、類義語を検出するための大量の文章（テキストデータ）を蓄積している。大量の文章は、マスメディアによって配信されたものに限られず、ブログやＳＮＳ(Social Networking Service)よって発信されたものも含まれる。また、文章データベースは１０は、文章毎に、形態素解析によって形態素に区分し、形態素毎の出現数も計数して蓄積する。形態素解析とは、文法及び単語辞書を情報源として用いて、自然言語で書かれた文を言語として意味を持つ最小単位である形態素(Morpheme)に分割する技術をいう。また、形態毎の品詞も判別して蓄積する。
【００３１】
図２は、文章データベースに蓄積された文章データを表す説明図である。
【００３２】
図２によれば、文章データベース１０は、蓄積した文章に含まれる文毎に、文頭単語ＢＯＳと文末単語ＥＯＳとの間で複数の形態素に区分し、その単語ｗ及び品詞を記憶する。
文：「新聞の囲碁欄を見たい」
ＢＯＳ／新聞／の／囲碁欄／を／見たい／ＥＯＳ
文：「教育は今後はどう？」
ＢＯＳ／教育／は／今後／は／どう／ＥＯＳ
ＢＯＳは、シード単語sから前方で最も近い文頭単語を意味し、ＥＯＳは、シード単語sから後方で最も近い文末単語を意味する。
そして、単語ｗ毎に、大量の文章における出現数Ｃ(ｗ)を記憶する。尚、全単語の出現数Ｃ(＊)も記憶する。
【００３３】
＜共起パターン生成プログラム＞
共起パターン生成プログラムは、文章データベース１０を用いて、大量の文章の中から類義語を検出するための「共起パターン」を生成する。図１によれば、共起パターン生成プログラムは、シード単語設定部１１と、シード文検索部１２と、特徴単語検出部１３と、単語列検出部１４と、共起パターン生成部１５とを有する。
【００３４】
［シード単語設定部１１］
シード単語設定部１１は、検出すべき類義語のシードとなる１つの以上のシード単語ｓの集合を設定する。本発明によれば、「シード単語」とは「種」を意味し、その種に類する類義語を検出することができる。また、設定されるシード単語は、１語に限られず、複数語からなるシード単語集合であることが好ましい。ユーザによって設定されたシード単語集合は、シード文検索部１２へ出力される。
【００３５】
図３は、シード単語及びシード文を表す説明図である。
【００３６】
図３によれば、シード単語集合として、例えば自動車メーカを意味する単語「Ａ社」「Ｂ社」が設定されたとする。この場合、「Ａ社」「Ｂ社」に対する類義語を検出することができる。
【００３７】
［シード文検索部１２］
シード文検索部１２は、文章データベース１０を参照し、各シード単語ｓが出現するシード文（ＢＯＳ／・・・／ＥＯＳ）を検索する。ここでは、複数のシード文からなるシード文集合が検索される。
図３によれば、シード単語ｓ毎に、以下のようなシード文が検索される。
ＢＯＳ／中古車／で／買っ／た／Ａ社／の／ガイア／です／ＥＯＳ
ＢＯＳ／現在／Ａ社／純正／ナビ／に／・・・／ＥＯＳ
ＢＯＳ／Ｂ社／の／ＣＭ／は／ＣＧ／合成／です／か／ＥＯＳ
ＢＯＳ／Ｂ社／の／高級車／について・・・／ＥＯＳ
検索されたシード文集合は、特徴単語検出部１３へ出力される。
【００３８】
［特徴単語検出部１３］
特徴単語検出部１３は、（Ｓ１）全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出し、（Ｓ２）各単語ｗについて全てのシード単語ｓに共通する共起頻度に基づく評価値Score(ｗ)を算出し、（Ｓ３）評価値Score(ｗ)が所定閾値以上となる共通特徴単語ｗを検出する。
【００３９】
図４は、特徴単語検出部によって算出された共通特徴スコアを表す説明図である。
【００４０】
（Ｓ１）全てのシード文を用いて各シード単語ｓ及び各単語ｗが出現する共起頻度Ｃ(ｗ,ｓ)を算出する。各シード単語ｓは、シード単語集合Ｓに含まれる各単語である（ｓ∈Ｓ）。単語ｗとは、全てのシード文集合に出現する単語であって、この中から共通特徴単語が検出されることとなる。また、共起頻度とは、例えばシード文集合に対する出現数である。
【００４１】
図４によれば、例えば以下のように計数されている。尚、「＊」は、変数文字としてのワイルドカードを意味し、何の語が含まれてもよい。
Ｃ（純正，＊）      ＝183回
Ｃ（純正，Ａ社）    ＝16回
Ｃ（純正，Ｂ社）    ＝6回
・・・・
Ｃ（中古車，＊）    ＝2,616回
Ｃ（中古車，Ａ社）  ＝6回
Ｃ（中古車，Ｂ社）  ＝7回
・・・・
Ｃ（発売する，＊）  ＝12,342回
Ｃ（発売する，Ａ社）＝8回
Ｃ（発売する，Ｂ社）＝9回
・・・・
【００４２】
（Ｓ２）次に、各単語ｗについて全てのシード単語ｓに共通する共起頻度Ｃ（ｗ，ｓ）に基づく評価値Score(ｗ)を算出する。評価値Score(ｗ)は、例えば相互情報量(Mutual information)基準によって算出する。相互情報量基準とは、例えば２つの確率変数の相互依存の尺度を表す確率的手法をいい、対象単語に対して同義又は類義として共起する数の高い類義語を抽出するものである。
【００４３】
具体的には、シード単語ｓ及び単語ｗ毎に、以下の式によって値を算出する。
pmi(ｗ，ｓ)＝log2｛（Ｃ(＊)・Ｃ(ｗ,ｓ)）／（Ｃ(ｗ)・Ｃ(ｓ)）｝
図４によれば、例えば以下のように算出されている。
pmi(純正，Ａ社)
＝log2｛（Ｃ(＊)・Ｃ(純正,Ａ社)）／（Ｃ(純正)・Ｃ(Ａ社)）｝
＝log2｛（15,315,752・16）／（183・263）｝
＝12.3139
pmi(純正，Ｂ社)
＝log2｛（Ｃ(＊)・Ｃ(純正,Ｂ社)）／（Ｃ(純正)・Ｃ(Ｂ社)）｝
＝log2｛（15,315,752・6）／（183・187）｝
＝11.3909
・・・
pmi(中古車，Ａ社)
＝log2｛（Ｃ(＊)・Ｃ(中古車,Ａ社)）／（Ｃ(中古車)・Ｃ(Ａ社)）｝
＝log2｛（15,315,752・6）／（2,616・263）｝
＝7.0614
pmi(中古車，Ｂ社)
＝log2｛（Ｃ(＊)・Ｃ(中古車,Ｂ社)）／（Ｃ(中古車)・Ｃ(Ｂ社)）｝
＝log2｛（15,315,752・7）／（2,616・187）｝
＝7.7758
・・・
【００４４】
そして、単語ｗ毎に、複数のシード単語ｓのpmiにおける相乗平均を、評価値Score(ｗ)とする。図４によれば、評価値Score(ｗ)は、単語ｗ毎に、pmi(ｗ，Ａ社）とpmi(ｗ，Ａ社）との相乗平均とする。
【００４５】
（Ｓ３）最後に、評価値Score(ｗ)が所定閾値以上となる共通特徴単語ｗを検出する。尚、評価値Score(ｗ)が高い上位ｎ個の単語ｗを、共通特徴単語ｗとしてもよい。
図４によれば、例えば、単語「発売する」は、一般的に社名や商品と共に用いられる単語であって、「高級車」「中古車」よりも共に共起頻度が高い値となっている。しかし、「発売する」の共起頻度総数Ｃ(発売する)が高いために、「発売する」の評価値Score(発売する)は、Score(高級車)やScore(中古車)よりも低い値となっている。
Score(発売する)＝5.5594
Score(高級車)  ＝9.9964
Score(中古車)  ＝7.4100
図４によれば、例えば上位１０個又は所定閾値6.0000以上となる共通特徴単語のみを選択する。
そして、特徴単語検出部１３は、選択された共通特徴単語を、単語列検出部１４へ出力する。
【００４６】
［単語列検出部１４］
単語列検出部１４は、シード単語ｓ及び共通特徴単語ｗが共に出現する所定長の単語列を検出する。所定長の単語列は、所定長の形態素列である。例えば所定長は２文字以上であって、少なくともシード単語ｓ及び共通特徴単語ｗを含む。
【００４７】
図５は、複数の単語列からなる共起パターンを表す説明図である。
【００４８】
図５によれば、所定長は３文字であって、シード単語ｓ及び共通特徴単語ｗを含む。例えば、以下のような単語列が検出されている。
「Ａ社純正部品」  「Ｂ社純正部品」
「Ａ社の高級車」  「Ｂ社の高級車」
「Ａ社が参戦し」  「Ｂ社が参戦し」
「Ａ社新型セダン」「Ｂ社新型セダン」
「中古のＡ社」    「中古のＢ社」
検出された単語列は、共起パターン生成部１５へ出力される。
【００４９】
［共起パターン生成部１５］
共起パターン生成部１５は、各単語列についてシード単語の部分を変数文字（ワイルドカード）に置き換えた共起パターンを生成する。
【００５０】
図５によれば、以下のようにワイルドカードに置き換えた共起パターンが生成されている。尚、各共起パターンには、固有の共起パターン番号が付与されている。
１：「＊純正部品」
２：「＊の高級車」
３：「＊が参戦し」
４：「＊新型セダン」
５：「中古の＊」
具体的には、「ｘを発売する」のような一般的な共起パターンは、低い評価値となることによって除外されることとなる。
【００５１】
これによって、シード単語と関連の弱い類義語候補が検索されることを回避するために、シード単語集合との共起の強さが共に高く且つ一般性の高いパターンを除外することができる共起パターンを生成することができる。
【００５２】
＜類義語検出プログラム＞
類義語検出プログラムは、生成された共起パターンを用いて、文章データベース１０から類義語を検出する。図１によれば、類義語検出は、類義候補単語検出部１６と、共起パターンベクトル算出部１７と、類義語決定部１８とを有する。
【００５３】
［類義候補単語検出部１６］
類義候補単語検出部１６は、大量の文章の中から、共起パターンに当てはまる単語列を検索する。
【００５４】
図６は、類義候補単語検出部によって検索された単語列を表す説明図である。
【００５５】
例えば以下のような単語列が検索される。
「Ｃ社純正部品」「メーカ純正部品」「Ｄ社純正部品」
「Ｃ社の高級車」「Ｄ社の高級車」「外国の高級車」
「Ｄ社が参戦し」「Ｅ社が参戦し」
「Ｃ社新型セダン」「Ｄ社新型セダン」
「中古のＣ社」「中古のＦ社」
・・・
ここで、変数文字（ワイルドカード）の部分に当てはまる全単語を「類義語候補」とする。検出された類義候補単語は、共起パターンベクトル算出部１７へ出力される。
【００５６】
［共起パターンベクトル算出部１７］
共起パターンベクトル算出部１７は、シード単語ｓ毎及び類義候補単語毎に、共起パターン番号を要素とする類義候補単語出現数の共起パターンベクトルを算出する。
【００５７】
図７は、共起パターンベクトル算出部によって算出された共起類似度を表す説明図である。
【００５８】
図７によれば、シード単語ｓ毎及び類義候補単語毎に、共起パターン番号を要素として、その単語の出現数が表されている。共起パターンベクトルは、類義語決定部１８へ出力される。
【００５９】
［類義語決定部１８］
類義語決定部１８は、シード単語ｓの共起パターンベクトルと、類義候補単語の共起パターンベクトルとの間の類似度が所定閾値以上となる当該類義候補単語を、類義語として出力する。
シード単語ｓの共起パターンベクトルは、複数のシード単語ｓの共起パターンベクトルの相乗平均である。
また、類似度とは、ｃｏｓ類似度であってもよい。ｃｏｓ類似度は、類義語候補毎に、各共起パターン番号を要素とするベクトルと、全シード単語に対応する共起パターン番号を要素とするベクトルとの和をとったものである。尚、ｃｏｓ類似度とは、ベクトル同士の成す角度の近さを表現し、１に近ければ類似しており、０に近ければ類似していないことになる。
【００６０】
具体的には、図７によれば、シード単語となる「Ａ社」の共起出現数と、「Ｂ社」の共起出現数との和となる共起パターンのベクトルを算出する。そして、この共起パターンのベクトルと、各類義候補単語「Ｃ社」「Ｄ社」「メーカ」等とのｃｏｓ類似度を共起類似度として算出する。
【００６１】
最終的に、共起類似度の上位ｍ個の類義候補単語を、類義語として出力する。図７によれば、類義候補単語「メーカ」は、対象単語「Ａ社」「Ｂ社」の上位カテゴリに相当する単語であるが、文章中での使われ方が異なることから、「Ｃ社」「Ｃ社」に比べて共起類似度は低い値となる。
【００６２】
図８は、本発明における類義語検索サーバを含むシステム構成図である。
【００６３】
図８によれば、前述した類義語検索サーバ（装置）が、インターネットのようなネットワークに接続されている。インターネットには、マスメディアサーバや、ブログサーバ、ＳＮＳサーバ等が接続されている。マスメディアサーバは、一定の質を保った文章を公開する。また、ブログサーバやＳＮＳサーバは、ユーザ端末から発信された投稿文章を公開する。特に、個人によって投稿された文章は、個人が様々な社会的又は文化的な話題について意見及び感想を述べたものであって、時代背景を最も反映したものであることが多い。類義語検索サーバ１は、これら外部サーバ３から、文章（テキストデータ）を収集することができる。勿論、類義語検索サーバ１は、予め大量の文章をディスクに蓄積したものであってもよい。
【００６４】
また、ユーザ端末２から、類義語検索サーバ１へ、ユーザによって入力されたシード単語をクエリとして要求することができる。これに対し、類義語検索サーバ１は、前述した図１の処理によって検索した類義語を応答することができる。このようなシーケンスは、ユーザ端末２にインストールされた言語アプリケーションによって利用することができる。
【００６５】
以上、詳細に説明したように、本発明のプログラム、方法、装置及びサーバによれば、シード単語と関連の弱い類義語候補が検索されることを回避するために、シード単語集合との共起の強さが共に高く且つ一般性の高いパターンを除外することができる共起パターンを生成することができる。この共起パターンを用いることによって、シード単語と関連の弱い類義語が検出されることを回避することができる。そのために、従来技術のような単語集合における上位下位関係データベースを必要としない。また、本発明によれば、類義語を獲得するためのテキストデータの表現形式も問わない。
【００６６】
従来技術の例に従って、「ウォッカ」「テキーラ」を対象単語として設定したとする。この場合、一般性の高い共起パターンでは、「ｘを買う」や「ｘが好き」も現れるために、対象単語と関連の弱い「新車」や「プリン」も獲得していた。このような共起パターンは、他の単語とも多く共起している。従って、単語「買う」「好き」から見て、対象単語「ウォッカ」「テキーラ」がその他の単語との共起の強さを比較する。ここで、「ウォッカ」「テキーラ」との共起が相対的に弱い単語を用いることなく、類義語候補を検索するための共起パターンを生成する。これによって、「新車」や「プリン」のような類義語を検出しないようにすることができる。
【００６７】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【００６８】
１  類義語検索装置、類義語検索サーバ
１０  文章データベース
１１  シード単語設定部
１２  シード文検索部
１３  特徴単語検出部
１４  単語列検出部
１５  共起パターン生成部
１６  類義候補単語検出部
１７  共起パターンベクトル算出部
１８  類義語決定部
２  ユーザ端末
３  外部サーバ
【図１】
0006049201.tif 000002
【図２】
0006049201.tif 000003
【図３】
0006049201.tif 000004
【図４】
0006049201.tif 000005
【図５】
0006049201.tif 000006
【図６】
0006049201.tif 000007
【図７】
0006049201.tif 000008
【図８】
0006049201.tif 000009