(57)【特許請求の範囲】
【請求項１】
文書データから単語を抽出する抽出部と、
関係がある複数の単語を関連付けて記述した関係語辞書データから、前記抽出部が抽出した前記単語と関係する他の単語を関係語として取得する関係語取得部と、
前記関係語辞書データから前記関係語と関係する他の単語を間接関係語として取得する間接関係語取得部と、
前記抽出部が抽出した前記単語のそれぞれについて、前記単語の前記関係語が前記文書データに出現する数と、前記単語の前記間接関係語が前記文書データに出現する数とに基づいて前記単語の重要性を定量的に表す重要度を算出する重要度算出部と、
前記抽出部が抽出した前記単語の中から、前記重要度算出部が算出した前記重要度に基づいて主題を表す単語を選択する選択部と、
を備えることを特徴とする主題語抽出装置。
【請求項２】
前記抽出部は、前記文書データに含まれる所定の品詞の単語を抽出する、
ことを特徴とする請求項１に記載の主題語抽出装置。
【請求項３】
前記重要度算出部は、前記抽出部が抽出した前記単語の重要度を、前記単語の前記関係語が前記文書データに出現する数と、前記単語の前記間接関係語が前記文書データに出現する数とのそれぞれに重み付けした結果を加算して算出する、
ことを特徴とする請求項１または請求項２のいずれか１項に記載の主題語抽出装置。
【請求項４】
前記間接関係語取得部は、前記関係語辞書データから前記間接関係語と関係する他の単語を間接関係語として取得する処理を所定回繰り返す、
ことを特徴とする請求項１から請求項３のいずれか１項に記載の主題語抽出装置。
【請求項５】
コンピュータを、
文書データから単語を抽出する抽出手段と、
関係がある複数の単語を関連付けて記述した関係語辞書データから、前記抽出手段が抽出した前記単語と関係する他の単語を関係語として取得する関係語取得手段と、
前記関係語辞書データから前記関係語と関係する他の単語を間接関係語として取得する間接関係語取得手段と、
前記抽出手段が抽出した前記単語のそれぞれについて、前記単語の前記関係語が前記文書データに出現する数と、前記単語の前記間接関係語が前記文書データに出現する数とに基づいて前記単語の重要性を定量的に表す重要度を算出する重要度算出手段と、
前記抽出手段が抽出した前記単語の中から、前記重要度算出手段が算出した前記重要度に基づいて主題を表す単語を選択する選択手段と、
を具備する主題語抽出装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主題語抽出装置、及びプログラムに関する。
【背景技術】
【０００２】
文書に含まれる単語の中から主題語となる重要な単語を抽出する技術の一つに、ｔｆ−ｉｄｆがある（例えば、非特許文献１参照）。ｔｆ−ｉｄｆは、文書中に出願する単語の頻度と、その単語が出現する文書頻度とを用いて単語の重要度を計算する。しかし、ｔｆ−ｉｄｆでは文脈を考慮していないため、主題語を正しく抽出できない場合がある。そこで、文書中の単語の重要度を、ｔｆ−ｉｄｆだけではなく、文書中にある単語の関係性を考慮した値も加味して計算し、主題語を抽出する技術がある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２４２７９１号公報
【非特許文献】
【０００４】
【非特許文献１】「ｔｆ−ｉｄｆ」、［online］、ウィキペディア、［平成２６年１０月２２日検索］、インターネット〈ＵＲＬ：http://ja.wikipedia.org/wiki/Tf-idf〉
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術では、文書中に出現する単語間に直接なんらかの関係性がないと重要度は高くならない。例えば、「肩こりには生姜がきく・・・温泉に入るのもよい。・・・ヨガもよいであろう。」という文書があるとする。この場合、「肩こり」と「生姜」、「肩こり」と「温泉」、「肩こり」と「ヨガ」のような単語間の関係パスが辞書から得られれば、「肩こり」の重要度は増す。しかし、既存の辞書は、上位下位関係の単語を示すものや、類似した単語を示すものであり、全ての単語間の直接関係を記述した辞書は実際には存在しがたい。そのため、特許文献１の技術を実現することは容易ではない。
【０００６】
本発明は、このような事情を考慮してなされたもので、単語間の関係を全て記述した辞書がなくとも文書から主題となる単語を抽出する主題語抽出装置、及びプログラムを提供する。
【課題を解決するための手段】
【０００７】
本発明の一態様は、文書データから単語を抽出する抽出部と、関係がある複数の単語を関連付けて記述した関係語辞書データから、前記抽出部が抽出した前記単語と関係する他の単語を関係語として取得する関係語取得部と、前記関係語辞書データから前記関係語と関係する他の単語を間接関係語として取得する間接関係語取得部と、前記抽出部が抽出した前記単語のそれぞれについて、前記単語の前記関係語が前記文書データに出現する数と、前記単語の前記間接関係語が前記文書データに出現する数とに基づいて前記単語の重要性を定量的に表す重要度を算出する重要度算出部と、前記抽出部が抽出した前記単語の中から、前記重要度算出部が算出した前記重要度に基づいて主題を表す単語を選択する選択部と、を備えることを特徴とする主題語抽出装置である。
この発明によれば、主題語抽出装置は、文書データから抽出した単語と関係する他の単語である関係語と、各関係語それぞれと関係する他の単語である間接関係語を、関係語辞書データから取得する。主題語抽出装置は、文書データから抽出した単語の重要度を、その単語の関係語が文書データに出現する数と、その単語の間接関係語が文書データに出現する数とに基づいて算出する。主題語抽出装置は、文書データから抽出した単語の中から重要度に基づいて主題を表す単語を選択する。
これにより、主題語抽出装置は、単語間の関係を全て記述した辞書がなくとも、例えば既存の関係語辞書を利用して、文書に含まれる単語の中から主題としてふさわしい単語を抽出することができる。
【０００８】
本発明の一態様は、上述する主題語抽出装置であって、前記抽出部は、前記文書データに含まれる所定の品詞の単語を抽出する、ことを特徴とする。
この発明によれば、主題語抽出装置は、文書データに含まれる所定の品詞の単語の中から、主題を表す単語を選択する。
これにより、主題語抽出装置は、文書データから、名詞など、主題としてわかりやすい品詞の単語を主題語として抽出することができる。
【０００９】
本発明の一態様は、上述する主題語抽出装置であって、前記重要度算出部は、前記抽出部が抽出した前記単語の重要度を、前記単語の前記関係語が前記文書データに出現する数と、前記単語の前記間接関係語が前記文書データに出現する数とのそれぞれに重み付けした結果を加算して算出する、ことを特徴とする。
この発明によれば、主題語抽出装置は、文書データから抽出した単語の重要度を、その単語の関係語が文書データに出現する数と、その単語の間接関係語が文書データに出現する数とのそれぞれに重み付けした結果を加算することにより算出する。
これにより、主題語抽出装置は、文書データに関係語が出現する数と間接関係語が出現する数とのうち、直接の関係語が出現する数により大きな重みを置き、直接の関係語が文書データに多く出現する単語ほど重要度が高くなり易いようにするなど、重要度を適切に算出することが可能となる。
【００１０】
本発明の一態様は、上述する主題語抽出装置であって、前記間接関係語取得部は、前記関係語辞書データから前記間接関係語と関係する他の単語を間接関係語として取得する処理を所定回繰り返す、ことを特徴とする。
この発明によれば、主題語抽出装置は、文書データから抽出した単語の間接関係語と関係がある単語をさらに用いて、単語の重要度を算出することができる。
これにより、主題語抽出装置は、間に複数の単語をはさんでたどり着く関係の単語が文書データに出現する数をさらに利用して、文書に含まれる単語の中から主題としてふさわしい単語を抽出することができる。
【００１１】
本発明の一態様は、コンピュータを、文書データから単語を抽出する抽出手段と、関係がある複数の単語を関連付けて記述した関係語辞書データから、前記抽出手段が抽出した前記単語と関係する他の単語を関係語として取得する関係語取得手段と、前記関係語辞書データから前記関係語と関係する他の単語を間接関係語として取得する間接関係語取得手段と、前記抽出手段が抽出した前記単語のそれぞれについて、前記単語の前記関係語が前記文書データに出現する数と、前記単語の前記間接関係語が前記文書データに出現する数とに基づいて前記単語の重要性を定量的に表す重要度を算出する重要度算出手段と、前記抽出手段が抽出した前記単語の中から、前記重要度算出手段が算出した前記重要度に基づいて主題を表す単語を選択する選択手段と、を具備する主題語抽出装置として機能させるためのプログラムである。
【発明の効果】
【００１２】
本発明によれば、単語間の関係を全て記述した辞書がなくとも文書から主題となる単語を抽出することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態による主題語抽出装置の動作概要を説明するための図である。
【図２】同実施形態による主題語抽出装置の構成を示すブロック図である。
【図３】同実施形態による主題語抽出装置の主題語抽出処理を示すフローチャートである。
【図４】同実施形態による単語リストの例を示すフローチャートである。
【図５】同実施形態による主題語抽出装置の単語リスト生成処理を示すフローチャートである。
【図６】同実施形態による主題語抽出装置の第一重要度要素算出処理を示すフローチャートである。
【図７】同実施形態による主題語抽出装置の第二重要度要素算出処理を示すフローチャートである。
【図８】同実施形態による文書データの例を示す図である。
【図９】同実施形態による主題語抽出装置が図８の文書データから抽出した単語を示す図である。
【図１０】同実施形態による関係語辞書データの例を示す図である。
【図１１】同実施形態による単語リストに関係語及び間接関係語を追加した図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照しながら本発明の実施形態を詳細に説明する。
図１は、本発明の一実施形態による主題語抽出装置の動作概要を示す図である。本実施形態による主題語抽出装置は、関係語辞書データを利用して、文書データに含まれる文から主題となる単語を抽出する。
【００１５】
関係語辞書データは、関係がある複数の単語を関連付けて記述したデータである。このような関係語辞書データには、既存の類語辞典や概念辞書のデータを用いることができる。例えば、類語辞典には、角川類語新辞典、分類語彙表などを用いることができる。また、例えば、概念辞書のデータには、「通信研究機構（ＮＩＣＴ）、”ＡＬＡＧＩＮ  言語資源・音声資源サイト”、高度言語情報融合フォーラム、［online］、インターネット〈URL：https://alaginrc.nict.go.jp/opensource.html>」を用いることができる。
【００１６】
関係語辞書データに、「肩こり」−「温熱」、「肩こり」−「体操」、「温熱」−「生姜」、「温熱」−「温泉」、「体操」−「ヨガ」のような単語同士の関係が登録されているとする。なお、「単語Ｔ１」−「単語Ｔ２」は、単語Ｔ１と単語Ｔ２との間に直接の関係があることを示す。単語Ｔ２は単語Ｔ１の関係語であり、単語Ｔ１は単語Ｔ２の関係語である。
【００１７】
文書データが、「肩こりには生姜がきく・・・温泉に入るのもよい。・・・ヨガもよいであろう。」というテキストを含む場合、この文書データからは、「肩こり」、「生姜」、「温泉」、「ヨガ」などの単語が抽出される。関係語辞書データには、抽出されたこれらの単語間の直接の関係は登録されていない。しかし、単語間に直接の関係（パス）が関係語辞書データに登録されていない場合でも、他の単語を挟んで単語間のパスが得られる場合がある。例えば、「肩こり」−「温熱」−「生姜」、「肩こり」−「温熱」−「温泉」、「肩こり」−「体操」−「ヨガ」のように、共通する関係語を間に挟むことにより、「肩こり」から「生姜」、「温泉」、「ヨガ」にたどり着く（パスを張る）ことができる。このように、単語Ｔ１と単語Ｔ３とが共通の関係語を有しており、単語Ｔ１から共通の関係語を間に挟んで単語Ｔ３へたどり着くことができる場合、単語Ｔ３を単語Ｔ１の間接関係語とする。
【００１８】
本実施形態の主題語抽出装置は、文書データに含まれる文から抽出された単語に、その単語の関係語が文書データに出現する数と、その単語から共通の関係語を挟むことによりたどり着くことができる間接関係語が文書データに出現する数とに応じて重要度を与える。本実施形態の主題語抽出装置は、抽出された単語の中から重要度に基づいて主題語を選択する。
【００１９】
図２は、本発明の一実施形態による主題語抽出装置１の構成を示すブロック図であり、本実施形態と関係する機能ブロックのみを抽出して示してある。主題語抽出装置１は、コンピュータ装置により実現され、同図に示すように、入力部１１と、抽出部１２と、関係語取得部１３と、間接関係語取得部１４と、重要度算出部１５と、選択部１６とを備えて構成される。
【００２０】
主題語抽出装置１は、関係語辞書記憶装置３と接続される。関係語辞書記憶装置３は、関係語辞書データを記憶する。例えば、関係語辞書データは、「単語Ｔ１  ［関係名］  単語Ｔ２」の形式により記述される複数の項目データを含む。「単語Ｔ１  ［関係名］  単語Ｔ２」は、単語Ｔ１と単語Ｔ２が関係名で表される関係を持つことを表す。例えば、項目データは、「果物  ［上位下位］  りんご」、「台風  ［原因結果］  大雨」などを示す。関係語辞書データには、同一の単語について、それぞれ異なる他の単語（関係語）との関係を示す項目データが複数含まれ得る。
【００２１】
入力部１１は、文書データの入力を受ける。文書データは、１以上の文を示すテキストデータを含む。文書データには、例えば、ウェブページ、電子書籍、電子番組表（EPG：Electronic Program Guide）の番組概要文などを用いることができる。抽出部１２は、入力部１１により入力された文書データに含まれるテキストデータから単語を抽出する。関係語取得部１３は、関係語辞書記憶装置３が記憶している関係語辞書データから、抽出部１２が抽出した単語のそれぞれと関係がある他の単語を抽出部１２が抽出した単語の関係語として取得する。間接関係語取得部１４は、関係語辞書記憶装置３が記憶している関係語辞書データから、抽出部１２が抽出した単語の関係語と関係がある他の単語を間接関係語として取得する。重要度算出部１５は、抽出部１２が抽出した各単語について、単語の重要性を定量的に表す重要度を算出する。単語の重要度は、その単語の関係語が文書データに出現する数と、その単語の間接関係語が文書データに出現する数とに基づいて算出される。選択部１６は、抽出部１２が抽出した単語の中から、重要度算出部１５が算出した重要度に基づいて主題となる単語である主題語を選択し、選択した主題語を出力する。
【００２２】
図３は、主題語抽出装置１の主題語抽出処理を示すフローチャートである。
まず主題語抽出装置１の入力部１１は、文書データの入力を受ける（ステップＳ１１０）。抽出部１２は、ステップＳ１１０において入力された文書データの中から、文書データを１つ選択する（ステップＳ１１５）。抽出部１２は、ステップＳ１１５において選択した文書データに含まれるテキストデータから所定の品詞の単語を抽出する。本実施形態では、所定の品詞を名詞とする。抽出部１２は、抽出した単語の一覧を設定したデータである単語リストを生成する（ステップＳ１２０）。単語リストに設定されたｉ番目の単語を、単語Ａｉと記載する（ｉは１以上の整数）。また、以下では、単語Ａ１、Ａ２、…を総称して単語Ａと記載する。
【００２３】
関係語取得部１３は、単語リストに設定されている単語Ａｉのそれぞれの関係語を関係語辞書記憶装置３が記憶している関係語辞書データから取得する。取得した単語Ａｉのｎｉ個（ｎｉは１以上の整数）の関係語をそれぞれ、関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉとする。関係語Ｂｉｊ（ｊは１以上ｎｉ以下の整数）は、単語Ａｉのｊ番目の関係語である。単語Ａｉの関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉを総称して関係語Ｂｉと記載する。関係語取得部１３は、単語Ａｉの関係語Ｂｉが文書データに出現する数を第一重要度要素Ｖ１−ｉとして算出し、単語リストに設定する（ステップＳ１２５）。以下では、関係語Ｂ１、Ｂ２、…を総称して関係語Ｂと記載し、第一重要度要素Ｖ１−１、Ｖ１−２、…を総称して第一重要度要素Ｖ１と記載する。
【００２４】
間接関係語取得部１４は、単語Ａｉのｎｉ個の関係語Ｂｉそれぞれの関係語を関係語辞書記憶装置３が記憶している関係語辞書データから取得し、単語Ａｉの間接関係語とする。関係語Ｂｉｊの関係語として得られたｋｉｊ個（ｋｉｊは１以上の整数）の間接関係語を、間接関係語Ｃｉｊ１、Ｃｉｊ２、…、Ｃｉｊｋｉｊとする。以下では、単語Ａｉの間接関係語Ｃｉｊ１、Ｃｉｊ２、…、Ｃｉｊｋｉｊを総称して間接関係語Ｃｉｊと記載し、単語Ａｉの間接関係語Ｃｉ１、Ｃｉ２、…、Ｃｉｎｉを総称して、間接関係語Ｃｉと記載する。なお、間接関係語取得部１４は、関係語Ｂｉの関係語のうち、単語Ａｉと一致する関係語は間接関係語Ｃｉからは除外する。間接関係語取得部１４は、単語Ａｉの間接関係語Ｃｉが文書データに出現する数を第二重要度要素Ｖ２−ｉとして算出し、単語リストに設定する（ステップＳ１３０）。以下では、単語Ａ１、単語Ａ２、…それぞれの間接関係語Ｃ１、Ｃ２、…を総称して間接関係語Ｃと記載し、単語Ａ１、Ａ２、…それぞれの第二重要度要素Ｖ２−１、Ｖ２−２、…を総称して第二重要度要素Ｖ２と記載する。
【００２５】
重要度算出部１５は、単語リストに設定されている単語Ａｉの第一重要度要素Ｖ１−ｉ及び第二重要度要素Ｖ２−ｉを用いて、以下の式（１）により単語Ａｉの重要度Ｖ−ｉを算出する。
【００２６】
重要度Ｖ−ｉ＝（１−ｕ）×［第一重要度要素Ｖ１−ｉ］＋ｕ×［第二重要度要素Ｖ２−ｉ］  （０≦ｕ≦０．５）      …（１）
【００２７】
重要度算出部１５は、各単語Ａｉについて算出した重要度Ｖ−ｉを単語リストに設定する（ステップＳ１３５）。以下では、重要度Ｖ−ｉを総称して重要度Ｖと記載する。
【００２８】
選択部１６は、単語リストから重要度Ｖが所定条件を満たす単語Ａを主題語として選択する(ステップＳ１４０）。所定条件は、例えば、重要度が最も高いという条件でもよく、重要度が高いものから所定数という条件でもよく、最も高い重要度の所定割合以上の値の重要度という条件でもよい。選択部１６は、ステップＳ１４０において選択した主題語を出力する(ステップＳ１４５）。
【００２９】
抽出部１２は、ステップＳ１１０において入力された文書データの中に、未選択の文書データがあるか否かを判断する（ステップＳ１５０）。抽出部１２は、未選択の文書データがあると判断した場合（ステップＳ１５０：ＹＥＳ）、ステップＳ１１５からの処理を繰り返す。
なお、抽出部１２は、ステップＳ１２０において文書データに含まれるテキストデータから所定の品詞の単語を抽出できなかった場合、ステップＳ１２５〜ステップＳ１４５までの処理を行わず、ステップＳ１５０の処理を実行する。
そして、抽出部１２は、ステップＳ１１０において入力された文書データを全て選択したと判断した場合（ステップＳ１５０：ＮＯ）、処理を終了する。
【００３０】
図４は、単語リストの例を示す図である。同図に示すように、単語リストは、文書データから抽出した名詞である単語Ａｉ（ｉ＝１、２、…）と、単語Ａｉの第一重要度要素Ｖ１−ｉ、第二重要度要素Ｖ２−ｉ、及び、重要度Ｖ−ｉとを対応付けたデータである。
【００３１】
図５は、主題語抽出装置１の単語リスト生成処理を示すフローチャートである。同図に示す単語リスト生成処理は、図３のステップＳ１２０の詳細な処理である。
抽出部１２は、選択した文書データに含まれるテキストデータから１文を選択する（ステップＳ２１０）。抽出部１２は、選択した文を形態素解析する（ステップＳ２１５）。形態素解析には、既存の技術を用いることができる。例えば、既存の形態素解析の技術として、「”Mecab”、［online］、インターネット〈URL：https://code.google.com/p/mecab/>」を用いることができる。
【００３２】
抽出部１２は、形態素解析した結果に基づいて、選択した文から名詞の単語を抽出する（ステップＳ２２０）。抽出部１２は、抽出した単語のうち単語リストに未登録の単語を単語リストに単語Ａとして追加する（ステップＳ２２５）。なお、抽出部１２は、単語Ａが文書データに出現した延べ回数を示す出現頻度をさらに単語リストに設定する場合がある。出現頻度を設定する場合とは、第一重要度要素Ｖ１に単語Ａの関係語Ｂが文書データに出現する延べ回数を使用する場合や、第二重要度要素Ｖ２に単語Ａの間接関係語Ｃが文書データに出現する延べ回数を使用する場合である。この場合、抽出部１２は、ステップＳ２２０において抽出した単語が単語リストに未登録であるときには、抽出した単語と、選択された文からその単語が抽出された数を示す出現頻度とを単語リストに設定する。また、抽出した単語が単語リストに登録済みのときには、抽出部１２は、単語リストに設定されているその単語の出現頻度を、選択された文からその単語が抽出された数を加算した値に更新する。
【００３３】
抽出部１２は、ステップＳ２１０において選択した文が、文書データに含まれるテキストデータの最後の文ではないと判断した場合（ステップＳ２３０：ＮＯ）、ステップＳ２１０からの処理を繰り返す。
そして、抽出部１２は、ステップＳ２１０においてした文が、文書データに含まれるテキストデータの最後の文であると判断した場合（ステップＳ２３０：ＹＥＳ）、処理を終了する。
【００３４】
図６は、主題語抽出装置１の第一重要度要素算出処理を示すフローチャートである。同図に示す第一重要度要素算出処理は、図３のステップＳ１２５の詳細な処理である。
関係語取得部１３は、変数ｉに初期値１を設定する（ステップＳ３１０）。関係語取得部１３は、単語リストに設定されているｉ番目の単語Ａｉを選択する（ステップＳ３１５）。関係語取得部１３は、単語Ａｉの関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉを関係語辞書記憶装置３が記憶している関係語辞書データから取得する（ステップＳ３２０）。関係語取得部１３は、取得した関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉのうち単語リストに単語Ａとして出現する関係語Ｂｉの数を計数し、第一重要度要素Ｖ１−ｉとする(ステップＳ３２５）。
なお、関係語取得部１３は、関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉのそれぞれが文書データに出現する延べ回数を合計し、第一重要度要素Ｖ１−ｉとしてもよい。延べ回数を合計して第一重要度要素Ｖ１−ｉとする場合、図５のステップＳ２２５において、抽出部１２は、単語リストに単語Ａの出現頻度を記録しておく。そして、関係語取得部１３は、関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉのうち、単語リストに単語Ａとして出現する関係語Ｂｉについてはその出現頻度を単語リストから取得し、単語リストに単語Ａとして出現しない関係語Ｂｉについては出現頻度を「０」とする。関係語取得部１３は、関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉそれぞれの出現頻度を合計し、単語Ａｉの第一重要度要素Ｖ１−ｉとする。
また、ステップＳ３２０において関係語Ｂｉを取得できなかった場合、関係語取得部１３は、第一重要度要素Ｖ１−ｉを「０」とする。
関係語取得部１３は、ステップＳ３２５において得た第一重要度要素Ｖ１−ｉを単語Ａｉと対応付けて単語リストに設定する（ステップＳ３３０）。
【００３５】
関係語取得部１３は、単語リストに設定されている単語Ａを全て選択していないと判断した場合（ステップＳ３３５：ＮＯ）、変数ｉに１を加算してステップＳ３１５からの処理を繰り返す（ステップＳ３４０）。
そして、関係語取得部１３は、単語リストに設定されている単語Ａを全て選択したと判断した場合（ステップＳ３３５：ＹＥＳ）、処理を終了する。
【００３６】
図７は、主題語抽出装置１の第二重要度要素算出処理を示すフローチャートである。同図に示す第二重要度要素算出処理は、図３のステップＳ１３０の詳細な処理である。
間接関係語取得部１４は、変数ｉに初期値１を設定する（ステップＳ４１０）。間接関係語取得部１４は、単語リストに設定されているｉ番目の単語Ａｉを選択する（ステップＳ４１５）。間接関係語取得部１４は、単語Ａｉのそれぞれの関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉを関係語辞書記憶装置３が記憶している関係語辞書データから取得する（ステップＳ４２０）。なお、間接関係語取得部１４は、図６のステップＳ３２０において関係語取得部１３が取得した関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉを取得してもよい。
【００３７】
間接関係語取得部１４は、変数ｊに初期値１を設定する（ステップＳ４２５）。間接関係語取得部１４は、関係語Ｂｉｊの関係語を関係語辞書記憶装置３が記憶している関係語辞書データから取得し、単語Ａｉの間接関係語Ｃｉｊ１、Ｃｉｊ２、…、Ｃｉｊｋｉｊとする（ステップＳ４３０）。
【００３８】
間接関係語取得部１４は、間接関係語Ｃｉｊ１、Ｃｉｊ２、…、Ｃｉｊｋｉｊのうち、単語リストに単語Ａとして出現する間接関係語Ｃｉｊの数を、関係語Ｂｉｊに関する第二重要度部分要素Ｖ２−ｉ−ｊとする(ステップＳ４３５）。
なお、間接関係語取得部１４は、間接関係語Ｃｉｊ１、Ｃｉｊ２、…、Ｃｉｊｋｉｊのそれぞれが文書データに出現する延べ回数を合計し、第二重要度部分要素Ｖ２−ｉ−ｊとしてもよい。延べ回数を合計して第二重要度部分要素Ｖ２−ｉ−ｊとする場合、図５のステップＳ２２５において、抽出部１２は、単語リストに単語Ａの出現頻度を記録しておく。そして、間接関係語取得部１４は、間接関係語Ｃｉｊ１、Ｃｉｊ２、…、Ｃｉｊｋｉｊのうち、単語リストに単語Ａとして出現する間接関係語Ｃｉｊについてはその出現頻度を単語リストから取得し、単語リストに単語Ａとして出現しない間接関係語Ｃｉｊについては出現頻度を「０」とする。間接関係語取得部１４は、間接関係語Ｃｉｊ１、Ｃｉｊ２、…、Ｃｉｊｋｉｊそれぞれの出現頻度を合計し、単語Ａｉの第二重要度部分要素Ｖ２−ｉ−ｊとする。
また、ステップＳ４３０において間接関係語Ｃｉｊを取得できなかった場合、間接関係語取得部１４は、単語Ａｉの第二重要度部分要素Ｖ２−ｉ−ｊを「０」とする。
【００３９】
間接関係語取得部１４は、変数ｊがｎｉ未満であり、ステップＳ４２０において取得した関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉの全てをまだ選択していないと判断した場合（ステップＳ４４０：ＮＯ）、変数ｊに１を加算してステップＳ４３０からの処理を繰り返す（ステップＳ４４５）。
そして、間接関係語取得部１４は、変数ｊがｎｉに達し、ステップＳ４２０において取得した関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉの全てを選択したと判断した場合（ステップＳ４４０：ＮＯ）、ステップＳ４５０の処理を実行する。つまり、間接関係語取得部１４は、単語Ａｉの関係語Ｂｉ１〜ＢｉｎｉのそれぞれについてステップＳ４３５において得た第二重要度部分要素Ｖ２−ｉ−１〜Ｖ２−ｉ−ｎｉを合計し、単語Ａｉの第二重要度要素Ｖ２−ｉを算出する（ステップＳ４５０）。間接関係語取得部１４は、ステップＳ４５０において得た第二重要度要素Ｖ２−ｉを単語Ａｉと対応付けて単語リストに設定する（ステップＳ４５５）。
【００４０】
間接関係語取得部１４は、単語リストに設定されている単語Ａを全て選択していないと判断した場合（ステップＳ４６０：ＮＯ）、変数ｉに１を加算してステップＳ４１５からの処理を繰り返す（ステップＳ４６５）。
なお、ステップＳ４２０において関係語Ｂｉを取得できなかった場合、間接関係語取得部１４は、第二重要度要素Ｖ２−ｉを「０」とし、ステップＳ４５５からの処理を行う。
そして、間接関係語取得部１４は、単語リストに設定されている単語Ａを全て選択したと判断した場合（ステップＳ４６０：ＹＥＳ）、処理を終了する。
【００４１】
図７の処理の後、図３のステップＳ１３５からの処理が実行される。つまり、重要度算出部１５は、単語リストに設定されている各単語Ａの重要度Ｖを、第一重要度要素Ｖ１及び第二重要度要素Ｖ２を用いて算出し、単語リストに設定する（ステップＳ１３５）。選択部１６は、単語リストに設定されている単語Ａの中から重要度Ｖに基づいて主題語を選択し(ステップＳ１４０）、出力する(ステップＳ１４５）。
【００４２】
続いて、主題語抽出装置１の主題語抽出処理を、具体例を用いて説明する。
図８は、文書データの例を示す図である。主題語抽出装置１の抽出部１２は、ステップＳ１１０において入力部１１が受けた文書データの中から、図８に示す文書データＤを選択する。抽出部１２は、文書データＤに含まれる文章から名詞の単語を抽出する。
【００４３】
図９は、抽出部１２が文書データＤから抽出した単語を示す図である。同図には、抽出した各単語が文書データＤに出現する頻度についても示している。抽出部１２は、図９に示す名詞の単語「肩こり」、「解消」、「方法」、「体」、…を、単語Ａとして設定した単語リストを生成する。
【００４４】
図１０は、関係語辞書記憶装置３が記憶している関係語辞書データの例を示す図である。関係語取得部１３は、図１０に示す関係語辞書データを参照して各単語Ａの関係語Ｂを取得し、単語Ａの関係語Ｂが単語リストに出現する数（または単語Ａの関係語Ｂが文書データに出現する延べ回数）を第一重要度要素Ｖ１として単語リストに設定する。また、間接関係語取得部１４は、関係語辞書データを参照して各単語Ａの間接関係語Ｃを取得し、間接関係語Ｃが単語リストに出現する数（または単語Ａの間接関係語Ｃが文書データに出現する延べ回数）を第二重要度要素Ｖ２として単語リストに設定する。
【００４５】
図１１は、単語リストに単語Ａの関係語Ｂ及び間接関係語Ｃを追加した図である。
同図に示すように、単語Ａ「肩こり」については、図１０に示す関係語辞書データから関係語Ｂ「体操」、「温熱」、…が得られる。関係語Ｂの後ろに記述されている（○）は、単語リストに出現することを示し、（×）は単語リストに出現しないことを示す。単語Ａ「肩こり」の関係語Ｂ「体操」、「温熱」、…のうち、単語リストに出現するのは「体操」のみであるため、第一重要度要素Ｖ１は「１」となる。
【００４６】
また、単語Ａ「肩こり」の関係語Ｂ「体操」については、関係語辞書データから関係語「肩こり」、…が得られる。また、単語Ａの関係語Ｂ「温熱」については、関係語辞書データから関係語「肩こり」、「温泉」、「生姜」、…が得られる。関係語Ｂについて得られた関係語のうち、単語Ａ「肩こり」と一致する関係語は間接関係語Ｃから除外される。よって、単語Ａ「肩こり」の間接関係語Ｃとして、「温泉」、「生姜」、…が得られる。間接関係語Ｃの後ろに記述されている（○）は、単語リストに出現することを示し、（×）は単語リストに出現しないことを示す。単語Ａ「肩こり」の間接関係語Ｃ「温泉」、「生姜」、…のうち、単語リストに出現するのは「温泉」、「生姜」の２つであるため、第二重要度要素Ｖ２は「２」となる。
単語Ａ「肩こり」の重要度Ｖは、式（１）に基づいて、１．５（＝０．５×１＋０．５×２）と算出される。
【００４７】
同様に、単語Ａ「温泉」については、関係語Ｂ「リラックス」、「温熱」、…が得られ、単語リストには「リラックス」のみが出現するため、第一重要度要素Ｖ１は「１」となる。また、単語Ａ「温泉」については、間接関係語Ｃ「生姜」、…が得られ、単語リストには「生姜」のみが出現するため、第二重要度要素Ｖ２は「１」となる。単語Ａ「温泉」の重要度Ｖは、式（１）に基づいて、１．０（＝０．５×１＋０．５×１）と算出される。
【００４８】
また、単語Ａ「リラックス」の関係語Ｂのうち「温泉」のみが単語リストに出現するため、第一重要度要素Ｖ１は「１」となる。また、単語Ａ「リラックス」の間接関係語Ｃはいずれも単語リストに出現しないため、第二重要度要素Ｖ２は「０」となる。単語Ａ「リラックス」の重要度Ｖは、式（１）に基づいて、０．５（＝０．５×１＋０．５×０）と算出される。
【００４９】
また、単語Ａ「生姜」の関係語Ｂのうち「料理」のみが単語リストに出現するため、第一重要度要素Ｖ１は「１」となる。また、単語Ａ「生姜」の間接関係語Ｃのうち「温泉」のみが単語リストに出現するため、第二重要度要素Ｖ２は「１」となる。単語Ａ「生姜」の重要度Ｖは、式（１）に基づいて、１．０（＝０．５×１＋０．５×１）と算出される。
【００５０】
なお、関係語Ｂ、間接関係語Ｃが文書データに出現した延べ回数をそれぞれ第一重要度要素Ｖ１、第二重要度要素Ｖ２とする場合、図９に示す各単語Ａの出現頻度を単語リストに設定しておく。
そして、単語Ａ「肩こり」の場合、関係語Ｂのうち「体操」の出現頻度が「１」であり、他の関係語Ｂの出現頻度は「０」であるため第一重要度要素Ｖ１は「１」となる。また、単語Ａ「肩こり」の間接関係語Ｃのうち「温泉」の出現頻度が「２」、「生姜」の出現頻度が「２」であり、他の間接関係語Ｃの出現頻度は「０」であるため、第二重要度要素Ｖ２は「４」となる。よって、単語Ａ「肩こり」の重要度Ｖは、式（１）に基づいて、２．５（＝０．５×１＋０．５×４）と算出される。
同様に、単語Ａ「温泉」の場合、関係語Ｂのうち「リラックス」の出現頻度が「１」であり、他の関係語Ｂの出現頻度は「０」であるため第一重要度要素Ｖ１は「１」となる。また、単語Ａ「温泉」の間接関係語Ｃのうち「生姜」の出現頻度が「２」であり、他の間接関係語Ｃの出現頻度は「０」であるため、第二重要度要素Ｖ２は「２」となる。よって、単語Ａ「温泉」の重要度Ｖは、式（１）に基づいて、１．５（＝０．５×１＋０．５×２）と算出される。
【００５１】
上記のように各単語Ａの重要度を算出した結果、単語Ａ「肩こり」の重要度Ｖが最も高くなる。選択部１６は、最も高い重要度Ｖの単語Ａ「肩こり」を主題語として選択する。
なお、式（１）における係数ｕの値は、学習用の文書データについて係数ｕを変化させながら主題語抽出を行い、人手により抽出した主題語と適合する確率が高いときの係数ｕの値に基づいて決定する。
【００５２】
文書データＤの主題語は「肩こり」であるが、文書データ群が文書データＤのみからなるという条件でｔｆ−ｉｄｆを計算した場合、図９に示すように出現頻度が最も高い単語「有効」が主題語として選択されてしまう。
また、関係語辞書データを参照して、文書内の単語同士に直接関係が得られた場合に重みを付ける従来技術もあるが、直接関係のある単語対が全て含まれる関係語辞書データは現実的には存在しがたい。関係語辞書データに「生姜  [食材]  料理]、「温泉  [有効]  リラックス」、「肩こり  [対処法]  体操」のような２単語間の関係しか登録されていない場合、「肩こり」の重みはさほど大きくならないことが考えられる。
本実施形態の主題語抽出装置１は、文書データから抽出した単語の重要度を、直接関係する単語が文書データに出現する数に加え、間に他の単語をはさんで間接的に関係する単語が文書データに出現する数を用いて重要度を算出する。このように算出した重要度を用いることにより、主題語抽出装置１は、文書データに出現する単語の中から、主題語として適切な単語を抽出することができる。
【００５３】
なお、選択部１６は、ｔｆ−ｉｄｆなどの頻度情報を組み合わせて、単語Ａの中から主題を抽出してもよい。例えば、選択部１６は、ｔｆ−ｉｄｆ値が所定よりも高い単語Ａのうち、重要度Ｖが所定条件を満たす単語Ａを主題語として抽出する。ｔｆ−ｉｄｆ値が所定よりも高い単語Ａとは、ｔｆ−ｉｄｆ値が所定値以上の単語Ａ、ｔｆ−ｉｄｆ値が高いものから所定数の単語Ａ、などとすることができる。あるいは、選択部１６は、重要度Ｖが所定条件を満たす単語Ａのうち、ｔｆ−ｉｄｆ値が最も高いものから所定数の単語Ａを主題語として抽出してもよい。
【００５４】
また、関係語取得部１３は、単語Ａの第一重要度要素Ｖ１を関係語Ｂが単語リストに出現する数とする場合、所定の分野に属する関係語Ｂについては、出現数に１より大きな値の係数を乗算してもよい。
例えば、単語Ａｉの関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉであり、単語リストには、関係語Ｂｉ１、Ｂｉ２、Ｂｉ３が出現し、関係語Ｂｉ４〜Ｂｉｎｉは出現しないとする。関係語Ｂｉ１及びＢｉ２が所定の分野に属する単語である場合、関係語Ｂｉ１及びＢｉ２についてはそれぞれ１×ａ（ａ＞１）回と計数する。よって、単語Ａｉの第一重要度要素Ｖ１−ｉは、２×ａ＋１となる。
同様に、間接関係語取得部１４は、単語Ａの第二重要度要素Ｖ２を間接関係語Ｃが単語リストに出現する数とする場合、所定の分野に属する間接関係語Ｃについては出現数に１より大きな値の係数を乗算してもよい。
【００５５】
また、関係語取得部１３は、単語Ａの第一重要度要素Ｖ１を文書データにおける各関係語Ｂの出現頻度の合計とする場合、所定の分野に属する関係語Ｂについては、出現頻度に１より大きな値の係数を乗算してもよい。例えば、単語Ａｉの関係語Ｂｉ１、Ｂｉ２、…、Ｂｉｎｉであり、文書データには、関係語Ｂｉ１が２回、関係語Ｂｉ２が３回出現し、関係語Ｂｉ３〜Ｂｉｎｉは出現しないとする。関係語Ｂｉ１が所定の分野に属する単語である場合、関係語Ｂｉ１の出現頻度「２」には係数ａ（ａ＞１）を乗算する。よって、単語Ａｉの第一重要度要素Ｖ１−ｉは、関係語Ｂｉ１の出現頻度「２」×係数ａ＋関係語Ｂｉ２の出現頻度「３」となる。
同様に、関係語取得部１３は、単語Ａの第二重要度要素Ｖ２を文書データにおける各間接関係語Ｃの出現頻度の合計とする場合、所定の分野に属する間接関係語Ｃについては、出現頻度に１より大きな値の係数を乗算してもよい。
【００５６】
また、間接関係語取得部１４は、単語Ａの間接関係語Ｃに関係する関係語を関係語辞書データから読み出して、単語Ａの間接関係語とする処理をｍ回（ｍは１以上の整数）繰り返してもよい。間接関係語Ｃに関係する関係語を間接関係語Ｅ１、間接関係語Ｅ１に関係する関係語を間接関係語Ｅ２、…とする。重要度算出部１５は、単語Ａの関係語Ｂが文書データに出現する数Ｖ１、単語Ａの間接関係語Ｃが文書データに出現する数Ｖ２、単語Ａの間接関係語Ｅ１が文書データに出現する数Ｖ３、単語Ａの間接関係語Ｅ２が文書データに出現する数Ｖ４、…のそれぞれに所定の重み付け係数を乗算した後に加算して、単語Ａの重要度を算出する。なお、Ｖ１の重み付け係数＞Ｖ２の重み付け係数＞Ｖ３の重み付け係数＞Ｖ４の重み付け係数、…とする。
【００５７】
上述した実施形態によれば、主題語抽出装置１は、文書データに出現する単語同士の関係を用いることにより、話題性を考慮した単語を文書データから抽出することができる。この単語同士の関係には、直接の関係がある単語だけではなく、間接的に関係する単語の関係までが用いられる。従って、文書データに出現する単語同士が、関係語辞書データに直接関係する単語として登録されていなくても、文書データ中の他の単語と関係を多く有する単語に高い重要度を与え、主題語にふさわしい単語を抽出することができる。このように主題語抽出装置１が文書データから抽出した主題語は、文書から情報を抽出したり、文書を要約したり、文書データに関連するコンテンツを推薦したりするために利用可能である。
【００５８】
上述した主題語抽出装置１は、内部にコンピュータシステムを有している。そして、主題語抽出装置１の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、ＣＰＵ及び各種メモリやＯＳ、周辺機器等のハードウェアを含むものである。
【００５９】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の概念辞書記憶部のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【符号の説明】
【００６０】
１  主題語抽出装置
１１  入力部
１２  抽出部
１３  関係語取得部
１４  間接関係語取得部
１５  重要度算出部
１６  選択部
３  関係語辞書記憶装置
【図１】
0006448128.tif 000002
【図２】
0006448128.tif 000003
【図３】
0006448128.tif 000004
【図４】
0006448128.tif 000005
【図５】
0006448128.tif 000006
【図６】
0006448128.tif 000007
【図７】
0006448128.tif 000008
【図８】
0006448128.tif 000009
【図９】
0006448128.tif 000010
【図１０】
0006448128.tif 000011
【図１１】
0006448128.tif 000012