(57)【要約】【課題】大規模データから出現頻度の高い複合語を抽出できる情報処理装置、複合語抽出方法、及び複合語抽出プログラムを提供する。【解決手段】情報処理装置１００は、大規模データから複合語を抽出する装置であって、大規模データに対して形態素解析を行い、解析結果として得た形態素及び／又は形態素の集合である形態素列の出現頻度値を算出し、算出した出現頻度値に基づき、複合語の候補となる文字群を抽出する候補抽出手段１４と、抽出された文字群を所定の記憶領域に保持する文字群保持手段４２と、文字群保持手段４２に保持された文字群から、有効な複合語を判定するための条件を満たす文字群を、出現頻度の高い文字群として抽出する複合語抽出手段２１と、を有することを特徴とする。【選択図】図３
2012141783.tif 000002
【特許請求の範囲】
【請求項１】
大規模データから複合語を抽出する情報処理装置であって、
大規模データに対して形態素解析を行い、解析結果として得た形態素及び／又は形態素の集合である形態素列の出現頻度値を算出し、算出した出現頻度値に基づき、複合語の候補となる文字群を抽出する候補抽出手段と、
抽出された文字群を所定の記憶領域に保持する文字群保持手段と、
前記文字群保持手段に保持された文字群から、有効な複合語を判定するための条件を満たす文字群を、出現頻度の高い文字群として抽出する複合語抽出手段と、を有することを特徴とする情報処理装置。
【請求項２】
前記候補抽出手段は、
算出した出現頻度値が所定の閾値以上の前記形態素及び／又は前記形態素列を、複合語の候補となる文字群として抽出することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記複合語抽出手段は、
有効な複合語として抽出した第１文字群と第２文字群とにおいて、前記第１文字群に含まれる前記第２文字群の出現頻度値から該第１文字群の出現頻度値を減算した値を第２文字群の出現頻度値とし、減算により更新された出現頻度値に基づき、出現頻度の高い文字群を抽出することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記複合語抽出手段は、
２個の形態素の集合である形態素列と該形態素列に含まれる形態素とにおいて、形態素列に含まれる形態素の出現頻度値から該形態素列の出現頻度値を減算し、減算値を形態素の出現頻度値とし、
Ｎ個以上の形態素の集合である第１形態素列と該第１形態素列に含まれるＮ−１個の形態素の集合である第２形態素列とにおいて、第１形態素列に含まれる第２形態素列の出現頻度値から該第１形態素列の出現頻度値を減算し、減算値を第２形態素列の出現頻度値とすることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
有効／無効な複合語を判定するための条件が定義された判定条件情報を所定の記憶領域に保持する判定条件保持手段を有し、
前記複合語抽出手段は、
前記文字群保持手段に保持された文字群が、前記判定条件保持手段に保持された判定条件情報に定義された条件を満たしているか否かを判定し、判定結果に基づき、該文字群を有効な複合語として抽出することを特徴とする請求項１ないし４のいずれか一項に記載の情報処理装置。
【請求項６】
前記複合語抽出手段は、
有効な複合語を判定するための条件を満たし、かつ、無効な複合語を判定するための条件を満たしていない文字群を有効な複合語として抽出することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記候補抽出手段と前記複合語抽出手段とは、
異なるソフトウェアの実行により実現されることを特徴とする請求項１ないし６のいずれか一項に記載の情報処理装置。
【請求項８】
前記候補抽出手段は、
Ｈａｄｏｏｐにより実現されることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
複合語の候補となる文字群を所定の記憶領域に保持する文字群保持手段を有し、大規模データから複合語を抽出する情報処理装置における複合語抽出方法であって、
大規模データに対して形態素解析を行い、解析結果として得た形態素及び／又は形態素の集合である形態素列の出現頻度値を算出し、算出した出現頻度値に基づき、複合語の候補となる文字群を抽出する候補抽出手順と、
前記候補抽出手順により抽出され前記文字群保持手段に保持された文字群から、有効な複合語を判定するための条件を満たす文字群を、出現頻度の高い文字群として抽出する複合語抽出手順と、を有することを特徴とする複合語抽出方法。
【請求項１０】
複合語の候補となる文字群を所定の記憶領域に保持する文字群保持手段を有し、大規模データから複合語を抽出する情報処理装置における複合語抽出プログラムであって、
コンピュータを、
大規模データに対して形態素解析を行い、解析結果として得た形態素及び／又は形態素の集合である形態素列の出現頻度値を算出し、算出した出現頻度値に基づき、複合語の候補となる文字群を抽出する候補抽出手段と、
前記候補抽出手段により抽出され前記文字群保持手段に保持された文字群から、有効な複合語を判定するための条件を満たす文字群を、出現頻度の高い文字群として抽出する複合語抽出手段として機能させる複合語抽出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自然文から複合語を抽出する技術に関するものである。
【背景技術】
【０００２】
従来では、形態素解析により、自然文から複合語を抽出する技術が知られている。例えば、特許文献１には、サンプル文字列から形態素を抽出し、抽出した形態素を組み合わせた形態素列に対して、所定の判定条件を適用し、複合語の判定を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−９３５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の方法では、大規模データに対する複合語抽出処理が効率的に行われていない。
【０００５】
従来の複合語抽出方法では、形態素解析結果である全ての形態素列に対して、複合語の判定条件を適用し、複合語を抽出するため、複合語抽出処理が煩雑となる。そのため、形態素解析の対象が大規模データの場合には、複合語抽出装置１００に多大な処理負荷がかかってしまう。
【０００６】
このようことから、複合語抽出処理では、大規模データであっても出現頻度の高い複合語を効率よく抽出できることが望まれる。
【０００７】
本発明は上記従来技術の問題点を鑑み提案されたものであり、大規模データであっても出現頻度の高い複合語を効率よく抽出できる情報処理装置、複合語抽出方法、及び複合語抽出プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明に係る情報処理装置は、大規模データから複合語を抽出する情報処理装置であって、大規模データに対して形態素解析を行い、解析結果として得た形態素及び／又は形態素の集合である形態素列の出現頻度値を算出し、算出した出現頻度値に基づき、複合語の候補となる文字群を抽出する候補抽出手段と、抽出された文字群を所定の記憶領域に保持する文字群保持手段と、前記文字群保持手段に保持された文字群から、有効な複合語を判定するための条件を満たす文字群を、出現頻度の高い文字群として抽出する複合語抽出手段と、を有することを特徴とする。
【０００９】
このような構成によって、本発明に係る情報処理装置は、大規模データに対して形態素解析を行い、解析結果として得た形態素／形態素列（文字群）の出現頻度を計算し、計算値に基づき、複合語の候補を抽出する。情報処理装置は、複合語候補として抽出した文字群から、有効な複合語を判定するための条件を満たす文字群を抽出する。すなわち、情報処理装置は、出現頻度が所定値以上の文字群であれば、複合語候補とみなし、複合語候補とみなした文字群に対して、有効な複合語を判定する。
【００１０】
これによって、本発明に係る情報処理装置では、複合語候補抽出処理において、形態素解析結果として得た文字群から、該文字群の出現頻度に基づき複合語候補を絞り込むことで、複合語抽出処理の対象データが少なくなり、処理負荷が軽減される。その結果、本発明に係る情報処理装置では、大規模データであっても出現頻度の高い複合語が効率的に抽出される。
【００１１】
上記目的を達成するため、本発明に係る複合語抽出方法は、複合語の候補となる文字群を所定の記憶領域に保持する文字群保持手段を有し、大規模データから複合語を抽出する情報処理装置における複合語抽出方法であって、大規模データに対して形態素解析を行い、解析結果として得た形態素及び／又は形態素の集合である形態素列の出現頻度値を算出し、算出した出現頻度値に基づき、複合語の候補となる文字群を抽出する候補抽出手順と、前記候補抽出手順により抽出され前記文字群保持手段に保持された文字群から、有効な複合語を判定するための条件を満たす文字群を、出現頻度の高い文字群として抽出する複合語抽出手順と、を有することを特徴とする。
【００１２】
このような手順によって、本発明に係る複合語抽出方法は、大規模データに対して形態素解析を行い、解析結果として得た形態素／形態素列（文字群）の出現頻度を計算し、計算値に基づき、複合語の候補を抽出し、複合語候補として抽出した文字群から、有効な複合語を判定するための条件を満たす文字群を抽出するという動作を実現する。
【００１３】
これによって、本発明に係る複合語抽出方法では、大規模データであっても出現頻度の高い複合語が効率的に抽出可能な環境を提供できる。
【発明の効果】
【００１４】
本発明によれば、大規模データの形態素解析結果として得た文字群から、該文字群の出現頻度を基に複合語候補を絞り込み、絞り込まれた複合語候補から、所定の判定条件を基に有効な複合語を抽出することで、大規模データであっても出現頻度の高い複合語が効率的に抽出される情報処理装置、複合語抽出方法、及び複合語抽出プログラムを提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態に係る複合語抽出システムの構成例を示す図である。
【図２】本発明の第１の実施形態に係る複合語抽出装置のハードウェア構成例を示す図である。
【図３】本発明の第１の実施形態に係る複合語抽出機能の構成例を示す図である。
【図４】本発明の第１の実施形態に係る自然文の形態素解析例を示す図である。
【図５】本発明の第１の実施形態に係るＮ−ｇｒａｍモデルＤＢのデータ例を示す図である。
【図６】本発明の第１の実施形態に係る複合語候補ＤＢのデータ例を示す図である。
【図７】本発明の第１の実施形態に係る判定条件ＤＢのデータ例を示す図である。
【図８】本発明の第１の実施形態に係る判定条件適用時の複合語抽出データ例を示す図である。
【図９】本発明の第１の実施形態に係る出現頻度再計算時の複合語抽出データ例を示す図である。
【図１０】本発明の第１の実施形態に係る複合語候補抽出の処理手順例を示すフローチャートである。
【図１１】本発明の第１の実施形態に係る複合語抽出の処理手順例を示すフローチャートである。
【図１２】本発明の変形例に係る複合語抽出システムの構成例を示す図である。
【図１３】本発明の変形例に係る複合語抽出機能の構成例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の好適な実施の形態（以下「実施形態」という）について、図面を用いて詳細に説明する。
【００１７】
［第１の実施形態］
＜システム構成＞
図１は、本実施形態に係る複合語抽出システム１の構成例を示す図である。
【００１８】
図１には、ブログテキストＤＢ（Data Base）９１及びＷｅｂページＤＢ９２と、複合語抽出装置１００とが、データ伝送路Ｎ（例えば「ＷＡＮ：Wide Area Network」や「ＬＡＮ：Local Area Network」などのネットワーク）で接続されるシステム構成例が示されている。
【００１９】
ブログテキストＤＢ９１やＷｅｂページＤＢ９２は、ブログテキストやＷｅｂページを所定の記憶領域に保持し、これらをＤＢにより管理する機器である。つまり、ブログテキストＤＢ９１やＷｅｂページＤＢ９２は、通信手段を備えたデータ管理装置９００である。
【００２０】
複合語抽出装置１００は、複合語抽出機能を有する機器であり、通信手段を備えた情報処理装置である。
【００２１】
本実施形態に係る複合語抽出システム１では、複合語抽出装置１００が、データ管理装置９００からブログテキストやＷｅｂページのデータを取得し、取得データに対して形態素解析による複合語候補抽出処理を実行し、抽出された複合語候補に対して所定の判定条件に基づく複合語抽出処理を実行することで、有効な複合語が抽出される。
【００２２】
以上のように、本実施形態に係る複合語抽出システム１は、上記システム構成により、複合語抽出サービスを提供することができる。
【００２３】
なお、データ管理装置９００は、ブログテキストＤＢ９１やＷｅｂページＤＢ９２に限らない。形態素解析対象データを保持する機器であればよい。
【００２４】
＜ハードウェア構成＞
図２は、本実施形態に係る複合語抽出装置１００のハードウェア構成例を示す図である。
【００２５】
図２に示すように、複合語抽出装置１００は、入力装置１０１、表示装置１０２、ドライブ装置１０３、ＲＡＭ（Random Access Memory）１０４、ＲＯＭ（Read Only Memory）１０５、ＣＰＵ（Central Processing Unit）１０６、インタフェース装置１０７、及びＨＤＤ（Hard Disk Drive）１０８などを備え、それぞれがバスＢで相互に接続されている。
【００２６】
入力装置１０１は、キーボードやマウスなどを含み、複合語抽出装置１００に各操作信号を入力するのに用いられる。表示装置１０２は、ディスプレイなどを含み、複合語抽出装置１００による処理結果を表示する。
【００２７】
インタフェース装置１０７は、複合語抽出装置１００をデータ伝送路Ｎに接続するインタフェースである。これにより、複合語抽出装置１００は、データ管理装置９００と通信を行うことができる。
【００２８】
ＨＤＤ１０８は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、装置全体を制御する情報処理システム（例えば「Ｗｉｎｄｏｗｓ（商標又は登録商標）」や「ＵＮＩＸ（商標又は登録商標）」などの基本ソフトウェアであるＯＳ（Operating System））、及びシステム上において各種機能（複合語抽出機能）を提供するアプリケーションなどがある。また、ＨＤＤ１０８は、格納しているプログラムやデータを、所定のファイルシステム及び／又はＤＢにより管理している。
【００２９】
ドライブ装置１０３は、着脱可能な記録媒体１０３ａとのインタフェースである。これにより、複合語抽出装置１００は、記録媒体１０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体１０３ａには、例えば、フロッピー（商標又は登録商標）ディスク、ＣＤ（Compact Disk）、及びＤＶＤ（Digital Versatile Disk）、ならびに、ＳＤメモリカード（SD Memory card）やＵＳＢメモリ（Universal Serial Bus memory）などがある。
【００３０】
ＲＯＭ１０５は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＯＭ１０５には、複合語抽出装置１００の起動時に実行されるＢＩＯＳ（Basic Input/Output System）、情報処理システム設定、及びネットワーク設定などのプログラムやデータが格納されている。ＲＡＭ１０４は、プログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。ＣＰＵ１０６は、上記記憶装置（「ＨＤＤ」、「ＲＯＭ」、又は「記録媒体」など）から、プログラムやデータをＲＡＭ（メモリ）上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する演算装置である。
【００３１】
以上のように、本実施形態に係る複合語抽出装置１００は、上記ハードウェア構成により、複合語抽出に係る情報処理サービスを提供することができる。
【００３２】
＜複合語抽出機能＞
本実施形態に係る複合語抽出機能について説明する。
【００３３】
本実施形態に係る複合語抽出装置１００は、形態素解析から複合語候補を抽出するまでの複合語候補抽出処理と、複合語候補から有効な複合語を判定し抽出するまでの複合語抽出処理とを、分離して実行可能としている。このような環境下で、複合語抽出装置１００は、複合語候補抽出処理において、形態素解析結果として得た形態素／形態素列（文字群）の出現頻度を計算し、計算値に基づき、解析結果の文字群から複合語候補を絞り込んで抽出する。このとき、複合語抽出装置１００は、出現頻度が所定値以上の文字群を複合語候補とみなす。また、複合語抽出装置１００は、複合語抽出処理において、複合語候補として抽出した文字群から、有効な複合語を判定するための条件を満たす文字群を抽出する。このとき、複合語抽出装置１００は、有効な複合語として抽出した文字群の出現頻度を再計算し、再計算値に基づき、出現頻度の高い文字群を抽出する。本実施形態に係る複合語抽出装置１００は、このような複合語抽出機能を有している。
【００３４】
従来の複合語抽出方法では、全ての形態素解析結果に対して、複合語の判定条件を適用し、形態素解析から複合語判定までを一連の処理として実行しているため、大規模データに対する複合語抽出処理を実行する場合、複合語抽出装置１００に多大な処理負荷がかかり、効率的ではなかった。
【００３５】
そこで、本実施形態に係る複合語抽出装置１００では、形態素解析結果に対する複合語候補抽出処理と、複合語候補に対する複合語抽出処理とを分離して実行可能とし、複合語候補抽出処理において、形態素解析結果として得た文字群から、該文字群の出現頻度に基づき複合語候補を絞り込み、絞り込まれた複合語候補から、所定の判定条件を基に有効な複合語を抽出する仕組みとした。
【００３６】
これによって、本実施形態に係る複合語抽出装置１００では、複合語候補抽出処理と複合語抽出処理とが分散処理でき、複合語抽出処理の対象データが少なくなり、処理負荷が軽減される。その結果、本発明に係る情報処理装置では、大規模データであっても出現頻度の高い複合語が効率的に抽出される。
【００３７】
以下に、本実施形態に係る複合語抽出機能の構成とその動作について説明する。
【００３８】
図３は、本実施形態に係る複合語抽出機能の構成例を示す図である。
【００３９】
図３に示すように、本実施形態に係る複合語抽出機能は、データ取得部１１、形態素解析部１２、頻度計算部１３、候補抽出部１４、複合語抽出部２１、及び出力部３１などを有している。データ取得部１１、形態素解析部１２、頻度計算部１３、及び候補抽出部１４は、複合語候補抽出処理を行う機能部群であり、複合語抽出部２１は、複合語抽出処理を行う機能部である。つまり、本実施形態に係る複合語抽出機能は、複合語候補抽出処理を行う機能部と複合語抽出処理を行う機能部とが分離可能（別のソフトウェアにより実現可能）な構成となっている。なお、出力部３１は、複合語抽出部２１による抽出データを出力する機能部である。
【００４０】
《複合語候補の抽出》
データ取得部１１は、データ管理装置９００から形態素解析対象データを取得する機能部である。データ取得部１１は、例えば、所定のスケジュール（取得間隔）に従って、ブログテキストＤＢ９１やＷｅｂページＤＢ９２から、ブログテキストやＷｅｂページに含まれる自然文の文字列データ（形態素解析対象データ）を取得する。なお、データ取得方法は、上記プル型に限らない。例えば、データ管理装置９００から送信されたデータを取得するプッシュ型でもよい。
【００４１】
形態素解析部１２は、取得データに対して形態素解析を行う機能部である。形態素（morpheme）とは、自然文の要素のうち、意味をもつ最小単位であり、形態素解析（morphological analysis）とは、自然言語処理技術の１つで、自然文を意味のある単語に区切り、辞書などを利用して品詞や内容を判別することである。形態素解析部１２は、このような自然言語処理を、データ取得部１１による取得データ（ブログテキストやＷｅｂページなどに含まれる文字列データ）に対して実行し、所定の文字群（及び／又は文字）を解析結果として取得する。よって、解析結果として得られる文字群は、形態素／形態素列である。なお、形態素／形態素列は、Ｎ−ｇｒａｍデータといわれ、所定の文字列から切り出した一定個数の形態素の集合である。Ｎ−ｇｒａｍの「Ｎ」値は、上記個数を意味する。よって、形態素は、Ｎ＝１のＮ−ｇｒａｍデータであり、形態素列は、Ｎ≧２のＮ−ｇｒａｍデータである。
【００４２】
ここで、同機能部１２が行う形態素解析の具体的な動作について説明する。
【００４３】
図４は、本実施形態に係る自然文の形態素解析例を示す図である。
【００４４】
図４には、取得データに含まれた自然文の文字列が"機動戦士ロボ"であった場合の形態素解析例が示されている。
【００４５】
形態素解析部１２は、形態素解析により"機動戦士ロボ"から３つの形態素"機動"，"戦士"，"ロボ"を取得し、さらに、これらの形態素の集合である形態素列を取得する。具体的には、形態素"機動"，"戦士"，"ロボ"が、１−ｇｒａｍデータとして取得される。また、２つの形態素の集合である形態素列"機動戦士"，"戦士ロボ"が、２−ｇｒａｍデータとして取得される。また、３つの形態素の集合である形態素列"機動戦士ロボ"が、３−ｇｒａｍデータとして取得される。なお、以降では、Ｎ−ｇｒａｍデータを、Ｎ−ｇｒａｍの文字群という。
【００４６】
図３の説明に戻る。頻度計算部１３は、解析結果の形態素／形態素列の出現頻度を計算する機能部である。計算する出現頻度には、例えば、形態素／形態素列の出現回数の累積値（単位：［回数］）や、解析結果である全ての形態素／形態素列の中の各形態素／形態素列の割合値（単位：［％］）などである。なお、出現頻度を表す値（以下「出現頻度値」という）として各形態素／形態素列の割合値を用いると、全ての解析結果が得られなければ計算できない値であることから、形態素解析対象データが大規模データの場合、出現頻度値が得られるまで処理時間がかかってしまう。よって、本実施形態では、処理時間を考慮し、形態素解析と同期してリアルタイムに値が得られる出現回数の累積値を出現頻度値とする。
【００４７】
このようにして得られた形態素解析結果（形態素／形態素列の文字群）及び出現頻度計算結果（出現頻度値）は、Ｎ−ｇｒａｍモデルＤＢ４１に記録され保持される。なお、Ｎ−ｇｒａｍモデルＤＢ４１は、例えば、複合語抽出装置１００が備える記憶装置（ＨＤＤ）の所定の記憶領域にあたり、保持データをＤＢにより管理する。
【００４８】
ここで、Ｎ−ｇｒａｍモデルＤＢ４１が保持するデータ例を説明する。
【００４９】
図５は、本実施形態に係るＮ−ｇｒａｍモデルＤＢ４１のデータ例を示す図である。
【００５０】
図５に示すように、Ｎ−ｇｒａｍモデルＤＢ４１の登録データ４１Ｄは、文字群、Ｎ−ｇｒａｍ分類、及び出現頻度などの情報項目を有し、各情報項目が形態素解析結果ごとに対応づけて保持されている。
【００５１】
［文字群］項目は、形態素解析結果の文字群が記録される項目であり、項目値は、例えば、形態素／形態素列の文字群などである。［Ｎ−ｇｒａｍ分類］項目は、Ｎ−ｇｒａｍの分類が記録される項目であり、項目値は、例えば、形態素／形態素列に対応するＮ−ｇｒａｍのＮ値などである。［出現頻度］項目は、形態素解析時の出現頻度が記録される項目であり、項目値は、例えば、形態素／形態素列に対応する出現回数の累積値などである。
【００５２】
図３の説明に戻る。上記形態素解析部１２及び上記出現頻度計算部１３の処理は、大規模データを対象としている。そこで、本実施形態では、これらの処理を、例えば、Ｈａｄｏｏｐにより分散処理する。Ｈａｄｏｏｐは、ＡＳＦ（Apache Software Foundation）が開発・公開しているソフトウェア基盤（オープンソースのプラットフォーム）であり、数千ノード及びペタバイト級の大規模データを効率的に分散処理・管理することができる。本実施形態では、このような技術を用いて、上記形態素解析部１２及び上記出現頻度計算部１３の分散処理を実現する。
【００５３】
候補抽出部１４は、形態素解析結果の文字群の中から複合語候補を抽出する機能部である。候補抽出部１４は、出現頻度値に基づき、複合語候補を抽出する。具体的には、Ｎ−ｇｒａｍモデルＤＢ４１にアクセスし、参照した登録データ４１Ｄの［出現頻度］項目値に基づき、出現頻度値が所定値以上の［文字群］項目値を複合語候補として抽出する。なお、複合語候補の抽出基準となる所定値は、閾値として予め設定しておく。
【００５４】
このようにして得られた複合語候補抽出結果（一定以上の出現頻度を有する形態素／形態素列の文字群）は、複合語候補ＤＢ４２に記録され保持される。なお、複合語候補ＤＢ４２は、Ｎ−ｇｒａｍモデルＤＢ４１と同じく、複合語抽出装置１００が備える記憶装置の所定の記憶領域にあたり、保持データをＤＢにより管理する。
【００５５】
ここで、複合語候補ＤＢ４２が保持するデータ例を説明する。
【００５６】
図６は、本実施形態に係る複合語候補ＤＢ４２のデータ例を示す図である。
【００５７】
図６に示すように、複合語候補ＤＢ４２の登録データ４２Ｄは、複合語候補、Ｎ−ｇｒａｍ分類、及び出現頻度などの情報項目を有し、各情報項目が複合語抽出結果ごとに対応づけて保持されている。
【００５８】
［複合語候補］項目は、複合語候補抽出結果の文字群が記録される項目であり、項目値は、例えば、一定以上の出現頻度を有する形態素／形態素列の文字群などである。つまり、［複合語候補］項目の項目値には、形態素解析結果の文字群の中から、出現頻度に基づき絞り込まれた文字群が記録される。なお、［Ｎ−ｇｒａｍ分類］項目及び［出現頻度］項目は、Ｎ−ｇｒａｍモデルＤＢ４１が有する項目と同じであることから、その説明を省略する。
【００５９】
このように、本実施形態では、複合語候補抽出処理において、形態素解析により得られた形態素／形態素列から、出現頻度に基づき複合語候補が絞り込まれる。その結果、後続の複合語抽出処理の対象データを少なくできる。
【００６０】
《複合語の抽出》
複合語抽出部２１は、複合語候補抽出結果の文字群の中から複合語を抽出する機能部である。複合語抽出部２１は、複合語候補抽出結果の文字群の中から複合語を抽出する。複合語抽出部２１は、有効／無効な複合語を判定する判定条件に基づき、複合語を抽出する。具体的には、複合語候補ＤＢ４２にアクセスし、参照した登録データ４２Ｄの［複合語候補］項目値が条件を満たす文字群か否かを判定し、判定結果に基づき、［複合語候補］項目値を複合語として抽出する。なお、複合語の抽出基準となる判定条件は、判定種別ごとの情報として予め定義しておく。
【００６１】
判定条件は、判定条件ＤＢ５１に定義され保持される。なお、判定条件ＤＢ５１は、他のＤＢ４１，４２と同じく、複合語抽出装置１００が備える記憶装置の所定の記憶領域にあたり、保持データをＤＢにより管理する。
【００６２】
ここで、判定条件ＤＢ５１が保持するデータ例を説明する。
【００６３】
図７は、本実施形態に係る判定条件ＤＢ５１のデータ例を示す図である。
【００６４】
図７に示すように、判定条件ＤＢ５１の登録データ５１Ｄは、ＩＤ、判定種別、適用条件、及び判定条件などの情報項目を有し、各情報項目が判定条件ごとに対応づけて保持されている。なお、図７には、情報項目として、条件による判定結果を説明する［意味］項目を有するデータ例が示されているが、この項目は、本実施形態を説明する上で便宜上付加した情報項目である。よって、有効複合語の判定処理では用いないデータである。
【００６５】
［ＩＤ］項目は、判定条件の識別子（以下「識別情報」という）が定義された項目であり、項目値は、例えば、判定条件ごとに採番された管理番号（ＩＤ値）などである。［判定種別］項目は、判定条件の種別（以下「種別情報」という）が定義された項目であり、項目値は、例えば、有効／無効な複合語を判定する判定条件の識別子（ＯＫ／ＮＧ）などである。［適用条件］項目は、判定条件を適用する複合語候補の文字群の条件（以下「適用条件情報」という）が定義された項目であり、項目値は、例えば、複合語候補の文字群におけるＮ−ｇｒａｍのＮ値又はＮ値の範囲などである。［判定条件］項目は、形態素解析対象の自然文の言語文法（及び／又は文節）に基づく判定条件（以下「判定条件情報」という）が定義された項目であり、項目値は、例えば、文字パターンを表す正規表現（regular expression）の定義情報などである。正規表現とは、文字列の集合を１つの文字列で表現する方法（文字列のパターンを表現する表記法）の１つである。
【００６６】
図７には、有効な複合語を判定する３つの判定条件と無効な複合語を判定する９つの判定条件とが定義された登録データ５１Ｄが示されている。形態素解析対象の自然文が日本語の場合、定義されている判定条件には、日本語文法（表記、品詞、活用などの文法上の特性）に基づき、次のような条件が挙げられる。
【００６７】
例えば、有効な複合語を判定する判定条件には、適用条件「２−ｇｒａｍ以上」が対応づけられた正規表現「＾（自立語）＋（付属語）＋＄」が定義されている。有効複合語の判定処理において、この判定条件を用いた場合には、自立語と付属語とで構成される２−ｇｒａｍ以上の複合語候補の文字群が有効な複合語と判定され抽出される。
【００６８】
また、無効な複合語を判定する判定条件には、適用条件「２−ｇｒａｍ以上」が対応づけられた正規表現「"［ぁ−ん−ヴ］＄"」が定義されている。無効複合語の判定処理において、この判定条件を用いた場合には、ひらがな１文字の形態素で終わる２−ｇｒａｍ以上の複合語候補の文字群が無効な複合語と判定される。
【００６９】
このように、複合語候補の文字群に対して判定条件を適用し、有効／無効な複合語を判定する機能部が、複合語抽出部２１が有する条件適用部２１１にあたる。
【００７０】
図３の説明に戻る。複合語抽出部２１は、次のように複合語を抽出する。
【００７１】
条件適用部２１１は、有効な複合語を判定する判定条件に基づき、複合語候補抽出結果の文字群が有効な複合語か否かを判定する。具体的には、判定条件ＤＢ５１にアクセスし、参照した登録データ５１Ｄの［判定種別］項目値に対応づけられた［判定条件］項目値に基づき、有効な複合語を判定する際に用いる判定条件を特定する。次に、複合語候補ＤＢ４２にアクセスし、参照した登録データ４２Ｄの［複合語候補］項目値が、特定したいずれかの判定条件を満たす文字群か否かを判定する。その結果、判定条件を満たす文字群を、有効な複合語とする。
【００７２】
また、条件適用部２１１は、無効な複合語を判定する判定条件に基づき、有効な複合語として判定された文字群が無効な複合語か否かを判定する。つまり、条件適用部２１１は、判定条件を段階的に適用し、複合語候補の文字群から有効な複合語を最終判定する。具体的には、判定条件ＤＢ５１にアクセスし、参照した登録データ５１Ｄの［判定種別］項目値に対応づけられた［判定条件］項目値に基づき、無効な複合語を判定する際に用いる判定条件を特定する。次に、複合語候補ＤＢ４２にアクセスし、有効な複合語として判定された［複合語候補］項目値が、特定したいずれかの判定条件を満たす文字群か否かを判定する。その結果、判定条件を満たす文字群を、無効な複合語とする。
【００７３】
つまり、条件適用部２１１では、複合語候補の文字群の中で、有効な複合語を判定するいずれかの判定条件を満たし、かつ、無効な複合語を判定する全ての判定条件を満たさない文字群を、最終的に有効な複合語として判定する。一方、複合語候補の文字群の中で、有効な複合語を判定するいずれかの判定条件を満たさない文字群、又は、無効な複合語を判定するいずれかの判定条件を満たす文字群は、最終的に無効な複合語として判定される。
【００７４】
複合語抽出部２１は、上記条件適用部２１１の判定結果に基づき、複合語候補抽出結果の文字群の中から複合語を抽出する。具体的には、複合語候補ＤＢ４２にアクセスし、最終的に有効な複合語として判定された複合語候補の登録データ４２Ｄのみを、複合語候補ＤＢ４２から抽出し、複合語抽出データを生成する。
【００７５】
ここで、同機能部２１が行うデータ操作の具体的な動作について説明する。
【００７６】
図８は、本実施形態に係る判定条件適用時の複合語抽出データ例を示す図である。
【００７７】
（Ａ）には、複合語候補ＤＢ４２における判定条件適用前の登録データ４２Ｄの例が示されており、（Ｂ）には、判定条件適用時の複合語抽出データ４３Ｄの例が示されている。
【００７８】
例えば、（Ａ）に示す［複合語候補］項目値の文字群"ロボは"は、自立語"ロボ"と付属語"は"とで構成される２−ｇｒａｍの文字群であることから、判定条件ＤＢ５１に定義される管理番号ＩＤ０００１の有効判定条件（正規表現「＾（自立語）＋（付属語）＋＄」）を満たし、有効な複合語と判定される。しかし、文字群"ロボは"は、ひらがな１文字の形態素"は"で終わる２−ｇｒａｍの文字群でもあることから、管理番号ＩＤ００１２の無効判定条件（正規表現「"［ぁ−ん−ヴ］＄"」）を満たし、無効な複合語とも判定される。よって、複合語抽出部２１は、文字群"ロボは"の登録データ４２Ｄを、複合語候補ＤＢ４２から抽出しない。
【００７９】
また、（Ａ）に示す［複合語候補］項目値の文字群"っぽい機動"は、自立語"っぽい"，"機動"のみで構成される２−ｇｒａｍの文字群であることから、判定条件ＤＢ５１に定義される管理番号ＩＤ０００２の有効判定条件（正規表現「＾（自立語）｛１，３｝＋＄」）を満たし、有効な複合語と判定される。しかし、文字群"っぽい機動"は、接尾辞"っぽい"で始まる２−ｇｒａｍの文字群でもあることから、管理番号ＩＤ０００４の無効判定条件（正規表現「＾接尾辞」）を満たし、無効な複合語とも判定される。よって、複合語抽出部２１は、文字群"っぽい機動"の登録データ４２Ｄを、複合語候補ＤＢ４２から抽出しない。
【００８０】
また、（Ａ）に示す［複合語候補］項目値の文字群"強いこの"は、自立語"強い"，"この"のみで構成される２−ｇｒａｍの文字群であることから、判定条件ＤＢ５１に定義される管理番号ＩＤ０００２の有効判定条件を満たし、有効な複合語と判定される。しかし、文字群"強いこの"は、連体詞"この"で終わる２−ｇｒａｍの文字群でもあることから、管理番号ＩＤ０００７の無効判定条件（正規表現「（副詞｜連体詞）＄」）を満たし、無効な複合語とも判定される。よって、複合語抽出部２１は、文字群"強いこの"の登録データ４２Ｄを、複合語候補ＤＢ４２から抽出しない。
【００８１】
このように、複合語抽出部２１による上記データ操作で、複合語候補ＤＢ４２の登録データ４２Ｄからは、（Ｂ）に示す複合語抽出データ４３Ｄが生成される。なお、複合語抽出データ４３Ｄは、例えば、複合語抽出装置１００が備える記憶装置の所定の記憶領域に保持される。
【００８２】
図３の説明に戻る。複合語抽出部２１は、上記判定処理により有効な複合語とする文字群を抽出すると、抽出した文字群の出現頻度値を再計算する。
【００８３】
このように、有効な複合語として抽出した文字群に対して出現頻度値を再計算する機能部が、複合語抽出部２１が有する頻度再計算部２１２にあたる。
【００８４】
複合語抽出部２１は、次のように出現頻度値を再計算する。
【００８５】
頻度再計算部２１２は、文字群におけるＮ−ｇｒａｍのＮ値に基づき、有効な複合語として抽出した文字群の出現頻度値を再計算する。具体的には、記憶領域にアクセスし、参照した複合語抽出データ４３Ｄの［複合語候補］項目値及び［Ｎ−ｇｒａｍ分類］項目値に基づき、Ｎ−ｇｒａｍの文字群に含まれる（Ｎ−１）−ｇｒａｍの文字群を特定する。次に、特定した（Ｎ−１）−ｇｒａｍの文字群に対応する［出現頻度］項目値から、Ｎ−ｇｒａｍの文字群に対応する［出現頻度］項目値を減算する。その結果、減算値を、（Ｎ−１）−ｇｒａｍの文字群に対応する新たな出現頻度値とする。なお、Ｎ値は２以上である。よって、Ｎ−ｇｒａｍの文字群は形態素列であり、（Ｎ−１）−ｇｒａｍの文字群は形態素又は形態素列である。
【００８６】
この処理は、次のような理由から行われる。
【００８７】
複合語抽出部２１により抽出された複合語（有効な複合語として判定された文字群）は、例えば、検索キーワード入力における予測変換候補サービスとして活用される。この場合、予測変換候補サービスでは、抽出された複合語が出現頻度の高い順に提示される。また、予測変換候補サービスでは、検索ユーザが入力すると予測される文字（以下「入力候補文字」という）を多く含む複合語が提示する複合語として望ましい。
【００８８】
一方、抽出された複合語の出現頻度値は、文字群におけるＮ−ｇｒａｍのＮ値が小さい方が、出現頻度値が大きくなる傾向がある。なぜなら、Ｎ−ｇｒａｍのＮ値が小さいということは、文字群に含まれる形態素が少ないことを意味し、少ない形態素の集合であれば、形態素解析対象データにおいて出現回数が多くなるからである。
【００８９】
そのため、出現頻度値を再計算しなければ、予測変換候補サービスにおいて、入力候補文字を多く含む複合語が提示されないことが考えられる。このように、検索ユーザに対して、有用な予測変換候補が提示されるように、抽出された複合語の出現頻度値を再計算する必要がある。
【００９０】
そこで、頻度再計算部２１２では、上記減算処理により、有効な複合語として抽出した文字群に対応する出現頻度値を再計算し、入力候補文字を多く含む文字群の出現頻度値が、他の文字群の出現頻度値より、相対的に大きくなるようにする。
【００９１】
複合語抽出部２１は、上記頻度再計算部２１２の計算結果に基づき、有効な複合語として抽出された複合語抽出データ４３Ｄを降順に並び換える。具体的には、記憶領域にアクセスし、参照した複合語抽出データ４３Ｄの［出現頻度］項目値を、再計算した出現頻度値により更新し、更新した出現頻度値に基づき、複合語抽出データ４３Ｄを、出現頻度値の大きい順に並び換える。
【００９２】
ここで、同機能部２１が行うデータ操作の具体的な動作について説明する。
【００９３】
図９は、本実施形態に係る出現頻度再計算時の複合語抽出データ例を示す図である。
【００９４】
（Ａ）には、出現頻度再計算前の複合語抽出データ４３Ｄの例が示されており、（Ｂ）には、出現頻度再計算時の複合語抽出データ４３Ｄの例が示されている。
【００９５】
例えば、（Ａ）に示す［複合語候補］項目値の文字群"機動戦士"は、２−ｇｒａｍの文字群（形態素列）であり、１−ｇｒａｍの文字群"機動"，"戦士"（形態素）を含む。よって、文字群"機動"，"戦士"に対応する出現頻度値が再計算される。文字群"機動"に対応する出現頻度値は、該文字群に対応する［出現頻度］項目値から、文字群"機動戦士"に対応する出現頻度値を減算した値（１２６［回］＝１５６７３―１５５４７）に更新される。また、文字群"戦士"に対応する出現頻度値は、該文字群に対応する［出現頻度］項目値から、文字群"機動戦士"に対応する出現頻度値を減算した値（１７９［回］＝１５７３１―１５５４７）に更新される。その結果、文字群"機動戦士"に対応する出現頻度値が、該文字群に含まれる文字群"機動"，"戦士"に対応する出現頻度値により相対的に大きくなる。
【００９６】
また、（Ａ）に示す［複合語候補］項目値の文字群"機動戦士ロボ"は、３−ｇｒａｍの文字群（形態素列）であり、２−ｇｒａｍの文字群"機動戦士"，"戦士ロボ"（形態素列）を含む。よって、文字群"機動戦士"，"戦士ロボ"に対応する出現頻度値が再計算される。文字群"機動戦士"に対応する出現頻度値は、該文字群に対応する［出現頻度］項目値から、文字群"機動戦士ロボ"に対応する出現頻度値を減算した値（３０６［回］＝１５５４７―１５２４１）に更新される。また、文字群"戦士ロボ"に対応する出現頻度値は、該文字群に対応する［出現頻度］項目値から、文字群"機動戦士ロボ"に対応する出現頻度値を減算した値（３１１［回］＝１５５５２―１５２４１）に更新される。その結果、文字群"機動戦士ロボ"に対応する出現頻度値が、該文字群に含まれる文字群"機動戦士"，"戦士ロボ"に対応する出現頻度値により相対的に大きくなる。
【００９７】
このように、複合語抽出部２１による上記データ操作で、複合語抽出データ４３Ｄは、（Ｂ）に示すように、出現頻度の大きい順に並び換えられる。複合語抽出部２１は、並び換え後、複合語抽出データ４３Ｄのうち、出現頻度の高いデータ（高頻度な文字群のデータ）のみを抽出する。なお、このとき、複合語抽出部２１では、更新した出現頻度値が所定値以下である複合語抽出データ４３Ｄを削除してもよい。
【００９８】
図３の説明に戻る。出力部３１は、複合語抽出データ４３Ｄを出力する機能部である。図３には、複合語抽出データ４３Ｄの活用先として、辞書ＤＢ９３が示されている。辞書ＤＢ９３には、複合語抽出データ４３Ｄが、検索ユーザの入力候補文字のデータとして登録され、上述した予測変換候補サービスで利用されるデータ管理装置９００の１つである。
【００９９】
以上のように、本実施形態に係る複合語抽出機能は、複合語候補抽出処理と複合語抽出処理とが実行され、上記各機能部が連携動作することにより実現される。なお、本実施形態では、複合語候補抽出処理を行う機能部と複合語抽出処理を行う機能部とを、異なるソフトウェアで実現可能な構成としたことにより、複合語候補抽出処理と複合語抽出処理とを分離して実行できる。
【０１００】
本実施形態に係る複合語候補抽出処理及び複合語抽出処理は、複合語抽出装置１００に搭載（インストール）されるプログラム（複合語候補抽出処理を実行するソフトウェアと複合語抽出処理を実行するソフトウェアと）が、演算装置（ＣＰＵ）により、記憶装置からメモリ（ＲＡＭ）上に読み出され実行される。
【０１０１】
以下に、本実施形態に係る複合語候補抽出処理及び複合語抽出処理の詳細について、処理手順を示すフローチャートを用いて説明する。
【０１０２】
《複合語候補の抽出処理》
図１０は、本実施形態に係る複合語候補抽出の処理手順例を示すフローチャートである。
【０１０３】
図１０に示すように、複合語抽出装置１００は、データ取得部１１により、形態素解析対象データを取得する（ステップＳ１０１）。データ取得部１１は、例えば、ブログテキストＤＢ９１やＷｅｂページＤＢ９２から、ブログテキストやＷｅｂページに含まれる自然文の文字列データを、形態素解析対象データとして取得する。
【０１０４】
次に、複合語抽出装置１００は、形態素解析部１２により、形態素解析対象データに対して形態素解析を行う（ステップＳ１０２）。その結果、形態素解析部１２は、Ｎ−ｇｒａｍモデルＤＢ４１にアクセスし、解析結果として得た形態素／形態素列の文字群を、登録データ４１Ｄとして記録する。
【０１０５】
次に、複合語抽出装置１００は、頻度計算部１３により、解析結果として得た文字群の出現頻度値を計算する（ステップＳ１０３）。このとき、頻度計算部１３は、形態素解析対象データにおける文字群の出現回数の累積値をカウントし、出現頻度値とする。その結果、頻度計算部１３は、Ｎ−ｇｒａｍモデルＤＢ４１にアクセスし、計算した出現頻度値を、登録データ４１Ｄとして記録する。
【０１０６】
次に、複合語抽出装置１００は、候補抽出部１４により、次のような複合語候補抽出処理を実行する。
【０１０７】
候補抽出部１４は、解析結果として得た文字群の出現頻度値が所定値以上か否かを判定する（ステップＳ１０４）。このとき、候補抽出部１４は、Ｎ−ｇｒａｍモデルＤＢ４１にアクセスし、文字群ごとの登録データ４１Ｄを参照し、該当出現頻度値が予め設定しておいた閾値以上か否かを判定する。
【０１０８】
候補抽出部１４は、解析結果として得た文字群の出現頻度値が閾値以上と判定した場合（ステップＳ１０４：ＹＥＳ）、該当文字群を複合語候補として抽出する（ステップＳ１０５）。その結果、候補抽出部１４は、複合語候補ＤＢ４２にアクセスし、複合語候補として判定された文字群の登録データ４１Ｄを、登録データ４２Ｄとして記録する。
【０１０９】
一方、候補抽出部１４は、解析結果として得た文字群の出現頻度値が閾値未満と判定した場合（ステップＳ１０４：ＮＯ）、該当文字群を複合語候補として抽出しない。
【０１１０】
次に、候補抽出部１４は、解析結果として得た文字群全て（文字群の登録データ全て）に対してステップＳ１０４の判定処理を実行したか否かを判定する（ステップＳ１０６）。
【０１１１】
候補抽出部１４は、解析結果として得た文字群全てに対して上記判定処理を実行したと判定した場合（ステップＳ１０６：ＹＥＳ）、複合語候補抽出処理を終了する。
【０１１２】
一方、候補抽出部１４は、解析結果として得た文字群全てに対して上記判定処理を実行していないと判定した場合（ステップＳ１０６：ＮＯ）、ステップＳ１０４に移行し、未処理の文字群に対して判定処理を実行し、判定結果に基づく複合語候補抽出処理を実行する。
【０１１３】
《複合語の抽出処理》
図１１は、本実施形態に係る複合語抽出の処理手順例を示すフローチャートである。
【０１１４】
図１１に示すように、複合語抽出装置１００は、複合語抽出部２１により、次のような複合語抽出処理を実行する。
【０１１５】
条件適用部２１１は、予め設定しておいた有効／無効な複合語を判定する判定条件を特定する（ステップＳ２０１）。このとき、条件適用部２１１は、判定条件ＤＢ５１にアクセスし、判定条件ごとの登録データ５１Ｄを参照し、種別情報に基づき、有効／無効な複合語を判定する際に用いる判定条件情報を特定する。
【０１１６】
次に、条件適用部２１１は、特定した判定条件を複合語候補の文字群に適用する（ステップＳ２０２）。このとき、条件適用部２１１は、複合語候補ＤＢ４２にアクセスし、文字群ごとの登録データ４２Ｄを参照し、複合語候補の文字群が、特定したいずれかの判定条件を満たす文字群か否かを判定する。
【０１１７】
条件適用部２１１は、まず、複合語候補の文字群が、有効な複合語を判定する判定条件を満たしているか否かを判定する（ステップＳ２０３）。
【０１１８】
条件適用部２１１は、複合語候補の文字群が、有効な複合語を判定する判定条件を満たしていると判定した場合（ステップＳ２０４：ＹＥＳ）、同文字群が、無効な複合語を判定する判定条件を満たしているか否かを判定する（ステップＳ２０５）。
【０１１９】
複合語抽出部２１は、条件適用部２１１により、同文字群が、無効な複合語を判定する判定条件を満たしていないと判定された場合（ステップＳ２０４：ＮＯ）、該当文字群を有効な複合語として抽出する（ステップＳ２０５）。このとき、複合語抽出部２１は、有効な複合語として抽出した文字群の登録データ４２Ｄから複合語抽出データ４３Ｄを生成し、当該装置の記憶領域に保持する。
【０１２０】
一方、複合語抽出部２１は、条件適用部２１１により、複合語候補の文字群が、有効な複合語を判定する判定条件を満たしていないと判定された場合（ステップＳ２０４：ＮＯ）、又は、無効な複合語を判定する判定条件を満たしていると判定された場合（ステップＳ２０５：ＹＥＳ）、該当文字群を有効な複合語として抽出しない。
【０１２１】
次に、複合語抽出部２１は、複合語候補の文字群全て（文字群の登録データ全て）に対してステップＳ２０２〜Ｓ２０４の条件適用処理を実行したか否かを判定する（ステップＳ２０６）。
【０１２２】
複合語抽出部２１は、複合語候補の文字群全てに対して条件適用処理を実行していないと判定した場合（ステップＳ２０６：ＮＯ）、ステップＳ２０２に移行し、条件適用部２１１により、未処理の文字群に対して条件適用処理を実行し、判定結果に基づく有効複合語抽出処理を実行する。
【０１２３】
一方、複合語抽出部２１は、複合語候補の文字群全てに対して条件適用処理を実行したと判定した場合（ステップＳ２０６：ＹＥＳ）、頻度再計算部２１２により、有効な複合語と抽出した文字群の出現頻度値を再計算する（ステップＳ２０７）。このとき、頻度再計算部２１２は、文字群におけるＮ−ｇｒａｍのＮ値に基づき、出現頻度値を再計算する。具体的には、記憶領域にアクセスし、複合語抽出データ４３Ｄを参照し、有効な複合語として抽出したＮ−ｇｒａｍの文字群に含まれる（Ｎ−１）−ｇｒａｍの文字群を特定する。次に、特定した（Ｎ−１）−ｇｒａｍの文字群の出現頻度値から、Ｎ−ｇｒａｍの文字群の出現頻度を減算する。その結果、減算値が、（Ｎ−１）−ｇｒａｍの文字群に対応する出現頻度値となるように、複合語抽出データ４３Ｄの該当項目値を更新する。
【０１２４】
複合語抽出部２１は、有効な複合語として抽出した文字群に対してステップＳ２０７の再計算処理を実行したか否かを判定する（ステップＳ２０８）。
【０１２５】
複合語抽出部２１は、有効な複合語として抽出した文字群に対して再計算処理を実行していないと判定した場合（ステップＳ２０８：ＮＯ）、ステップＳ２０７に移行し、頻度再計算部２１２により、未処理の文字群に対して再計算処理を実行する。
【０１２６】
一方、複合語抽出部２１は、有効な複合語として抽出した文字群に対して再計算処理を実行したと判定した場合（ステップＳ２０８：ＹＥＳ）、再計算した出現頻度値に基づき、有効な複合語として抽出された文字群を、出現頻度値の大きい順に並び換える（ステップＳ２０９）。
【０１２７】
複合語抽出部２１は、並び換え後、高頻度な文字群を抽出する（ステップＳ２１０）。その結果、複合語抽出データ４３Ｄのうち、出現頻度の高いデータのみが抽出される。出力部３１では、このようにして抽出されたデータが出力される。
【０１２８】
＜まとめ＞
以上のように、本実施形態に係る複合語抽出装置１００によれば、形態素解析から複合語候補を抽出するまでの複合語候補抽出処理と、複合語候補から有効な複合語を判定し抽出するまでの複合語抽出処理とを、分離して実行可能とした。
【０１２９】
このような環境下で、複合語抽出装置１００は、複合語候補抽出処理を次のように行う。複合号抽出装置１００は、形態素解析部１２により、大規模データに対して形態素解析を行い、頻度計算部１３により、形態素解析結果として得た形態素／形態素列（文字群）の出現頻度を計算し、候補抽出部１４により、出現頻度の計算値に基づき、解析結果の文字群から複合語候補を絞り込んで抽出する。このとき、候補抽出部１４は、出現頻度が所定値以上の文字群を複合語候補とみなす。
【０１３０】
また、複合語抽出装置１００は、複合語抽出処理を次のように行う。複合語抽出装置１００は、複合語抽出部２１の条件適用部２１１により、複合語候補として抽出した文字群に対して、有効な複合語を判定するための条件を適用し、条件を満たす文字群を抽出する。このとき、複合語抽出部２１は、頻度再計算部２１２により、有効な複合語として抽出した文字群の出現頻度を再計算し、再計算値に基づき、出現頻度の高い文字群を抽出する。
【０１３１】
これによって、本実施形態に係る複合語抽出装置１００では、大規模データであっても出現頻度の高い複合語を効率よく抽出できる。
【０１３２】
なぜなら、本実施形態に係る複合語抽出装置１００では、複合語候補抽出処理において、形態素解析結果として得た文字群から、該文字群の出現頻度に基づき複合語候補を絞り込むことで、複合語抽出処理の対象データが少なくなり、処理負荷が軽減される。
【０１３３】
また、本実施形態に係る複合語抽出装置１００では、複合語候補抽出処理と複合語抽出処理とを分散処理することで、複合語の判定条件が変更された場合であっても、その都度、大規模データに対して一連の処理を実行するのではなく、絞り込まれた複合語候補に対して複合語抽出処理を実行するのみでよく、処理負荷が軽減される。
【０１３４】
ここまで、上記実施形態の説明を行ってきたが、上記実施形態に係る「複合語抽出機能」は、図を用いて説明を行った各処理手順を、動作環境（プラットフォーム）にあったプログラミング言語でコード化したプログラムが、複合語抽出装置１００が備える演算装置により実行されることで実現される。
【０１３５】
上記プログラムは、コンピュータが読み取り可能な記録媒体１０３ａに格納することができる。これにより、例えば、上記プログラムは、ドライブ装置１０３を介して、複合語抽出装置１００にインストールすることができる。また、複合語抽出装置１００は、インタフェース装置１０７を備えていることから、電気通信回線を用いて上記プログラムをダウンロードし、インストールすることもできる。
【０１３６】
＜変形例＞
上記実施形態では、複合語抽出装置１００で、複合語候補抽出処理と複合語抽出処理とが実行されるシステムの例を示したが、この限りでない。例えば、図１２に示すようなシステムであてもよい。
【０１３７】
図１２は、本変形例に係る複合語抽出システム１の構成例を示す図である。
【０１３８】
図１２には、ブログテキストＤＢ９１、ＷｅｂページＤＢ９２、及び複合語抽出装置１００に加えて、複合語候補抽出装置２００が、データ伝送路Ｎで接続されるシステム構成例が示されている。
【０１３９】
複合語候補抽出装置２００は、複合語候補抽出処理を実行する機器であり、通信手段を備えた情報処理装置である。
【０１４０】
本変形例に係る複合語抽出システム１では、複合語候補抽出装置２００が、データ管理装置９００からブログテキストやＷｅｂページのデータ（形態素解析対象データ）を取得し、取得データに対して形態素解析による複合語候補抽出処理を実行する。また、複合語抽出装置１００が、複合語候補抽出装置２００にアクセスし、抽出された複合語候補に対して複合語抽出処理を実行する。これにより、本変形例に係る複合語抽出システム１では、有効な複合語が抽出される。
【０１４１】
また、本変形例に係る複合語抽出システム１では、複合語抽出機能が、図１３に示すような構成となる。
【０１４２】
図１３は、本変形例に係る複合語抽出機能の構成例を示す図である。
【０１４３】
図１３に示すように、本変形例に係る複合語機能では、複合語候補抽出装置２００が、データ取得部１１、形態素解析部１２、頻度計算部１３、及び候補抽出部１４を有し、複合語抽出装置１００が、複合語抽出部２１及び出力部３１を有する。また、複合語候補抽出装置２００が、Ｎ−ｇｒａｍモデルＤＢ４１及び複合語候補ＤＢ４２を有し、複合語抽出装置１００が、判定条件ＤＢ５１を有する。
【０１４４】
本変形例では、上記機能構成により、複合語候補抽出装置２００が有する機能部と複合語抽出装置１００が有する機能部とを連携動作させることで、複合語抽出機能を実現できる。
【０１４５】
最後に、上記実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【０１４６】
１      複合語抽出システム
１１    データ取得部
１２    形態素解析部
１３    頻度計算部
１４    候補抽出部
２１    複合語抽出部
２１１  条件適用部
２１２  頻度再計算部
３１    出力部
４１    Ｎ−ｇｒａｍモデルＤＢ（Ｄ：登録データ）
４２    複合語候補ＤＢ（Ｄ：登録データ）
４３Ｄ  複合語抽出データ
５１    判定条件ＤＢ（Ｄ：登録データ）
９１    ブログテキストＤＢ
９２    ＷｅｂページＤＢ
９３    辞書ＤＢ
１００  複合語抽出装置（情報処理装置）
１０１  入力装置
１０２  表示装置
１０３  ドライブ装置（ａ：記録媒体）
１０４  ＲＡＭ（揮発性の半導体メモリ）
１０５  ＲＯＭ（不揮発性の半導体メモリ）
１０６  ＣＰＵ（演算装置）
１０７  インタフェース装置（ＮＩＣ：Network I/F Card）
１０８  ＨＤＤ（不揮発性の記憶装置）
２００  複合語候補抽出装置
９００  データ管理装置
Ｂ      バス
Ｎ      データ伝送路（ネットワーク）
【図１】
2012141783.tif 000003
【図２】
2012141783.tif 000004
【図３】
2012141783.tif 000005
【図４】
2012141783.tif 000006
【図５】
2012141783.tif 000007
【図６】
2012141783.tif 000008
【図７】
2012141783.tif 000009
【図８】
2012141783.tif 000010
【図９】
2012141783.tif 000011
【図１０】
2012141783.tif 000012
【図１１】
2012141783.tif 000013
【図１２】
2012141783.tif 000014
【図１３】
2012141783.tif 000015