(57)【要約】【課題】電話によるカスタマーサポート業務等において、お客からの質問等に対して迅速かつ適切な対応を実現するのに好適なテキスト分類技術を提供する。【解決手段】入力される学習データを分類器Ａ及び分類器Ｂを用いて学習させ、分類器Ａにおいて学習に利用されない学習データの一部（すなわち、分類器Ａにおける精度確認用の学習データＤｌｖ）は、分類器Ｂにおいて本来の学習用の学習データＤｌｌに割り当てる。一方、分類器Ｂにおいて学習に利用されない学習データの一部（すなわち、分類器Ｂにおける精度確認用の学習データＤｌｖ）は、分類器Ａにおいて本来の学習用の学習データＤｌｌに割り当てる。【選択図】図９
2018206238.tif 000002
【特許請求の範囲】
【請求項１】
分類器を用いて自然言語のクラス分類を行うテキスト分類装置であって、
複数の分類器と、
学習テキストデータと学習カテゴリを含む学習データを複数入力する入力部と、
前記分類器ごとに、入力される複数の前記学習データの一部を、精度確認用の学習データとして割り当てるとともに、残りの前記学習データを、学習用の学習データとして割り当てるアサイン部と、
割り当てられた前記学習用の学習データを用いて、対応する前記分類器を学習するとともに、割り当てられた前記精度確認用の学習データを用いて、対応する前記分類器の学習の精度確認を行う学習部とを備え、
前記アサイン部は、
いずれか１つの分類器において、前記精度確認用の学習データとして割り当てる前記学習データの一部を、残りのいずれか１つの分類器において、前記学習用の学習データとして割り当てる、テキスト分類装置。
【請求項２】
前記各分類器の学習が終了した後に入力されるテキストデータに対し、前記各分類器を統合してテキスト分類を行う分類部をさらに具備する、請求項１に記載テキスト分類装置。
【請求項３】
前記複数の分類器は、所定のモデルを用いたテキスト分類器であり、前記複数の分類器のうち、少なくとも１つの分類器は、他の分類器と異なるモデルを用いたテキスト分類器である、請求項２に記載のテキスト分類装置。
【請求項４】
前記少なくとも１つの分類器は、ＬＲＣのモデルを用いたテキスト分類器であり、前記他の分類器は、ＤＮＮのモデルを用いたテキスト分類器である、請求項３に記載のテキスト分類装置。
【請求項５】
分類器を用いて自然言語のクラス分類を行うテキスト分類装置であって、
複数の分類器と、
各分類器で共用されるマスター単語情報を記録したマスター単語コーパスと、
前記分類器ごとに生成されるドメイン単語情報を記録した複数のドメイン単語コーパスと、
前記各分類器を用いて、入力されるテキストデータをテキスト分類する分類部とを備え、
前記分類部は、
前記分類器に対応する前記ドメイン単語コーパスを優先的に参照し、前記ドメイン単語コーパスに、前記テキストデータの単語が含まれている場合には、前記ドメイン単語コーパスから前記単語を読み出し、読み出した前記単語とともに、対応する前記分類器を用いて前記テキスト分類を行う、テキスト分類装置。
【請求項６】
前記分類部は、前記ドメイン単語コーパスに、前記テキストデータの単語が含まれていない場合には、前記マスター単語コーパスを参照し、前記マスター単語コーパスに記録されている前記単語に対して表現の補完を行い、前記表現の補完後の前記単語とともに、対応する前記分類器を用いて前記テキスト分類を行う、請求項５に記載のテキスト分類装置。
【請求項７】
記憶部を備えたコンピュータが、分類器を用いて自然言語のクラス分類を行うテキスト分類方法であって、
前記コンピュータは、前記記憶部に記憶されたプログラムを実行することにより、
学習テキストデータと学習カテゴリを含む学習データを複数入力する入力ステップと、
複数の分類器のそれぞれについて、入力される複数の前記学習データの一部を、精度確認用の学習データとして割り当てるとともに、残りの前記学習データを、学習用の学習データとして割り当てるアサインステップと、
割り当てられた前記学習用の学習データを用いて、対応する前記分類器を学習するとともに、割り当てられた前記精度確認用の学習データを用いて、対応する前記分類器の学習の精度確認を行う学習ステップとを実行し、
前記アサインステップは、
いずれか１つの分類器において、前記精度確認用の学習データとして割り当てる前記学習データの一部を、残りのいずれか１つの分類器において、前記学習用の学習データとして割り当てる、テキスト分類方法。
【請求項８】
記憶部を備えたコンピュータが、分類器を用いて自然言語のクラス分類を行うテキスト分類方法であって、
前記記憶部には、各分類器で共用されるマスター単語情報を記録したマスター単語コーパスと、前記分類器ごとに生成されるドメイン単語情報を記録した複数のドメイン単語コーパスが記憶され、
前記コンピュータは、前記記憶部に記憶されたプログラムを実行することにより、
前記各分類器を用いて、入力されるテキストデータをテキスト分類する分類ステップを実行し、
前記分類ステップは、
前記分類器に対応する前記ドメイン単語コーパスを優先的に参照し、前記ドメイン単語コーパスに、前記テキストデータの単語が含まれている場合には、前記ドメイン単語コーパスから前記単語を読み出し、読み出した前記単語とともに、対応する前記分類器を用いて前記テキスト分類を行う、テキスト分類方法。
【請求項９】
分類器を用いて自然言語のクラス分類を行う、記憶部を備えたコンピュータを、
複数の分類器と、
学習テキストデータと学習カテゴリを含む学習データを複数入力する入力部と、
前記分類器ごとに、入力される複数の前記学習データの一部を、精度確認用の学習データとして割り当てるとともに、残りの前記学習データを、学習用の学習データとして割り当てるアサイン部と、
割り当てられた前記学習用の学習データを用いて、対応する前記分類器を学習するとともに、割り当てられた前記精度確認用の学習データを用いて、対応する前記分類器の学習の精度確認を行う学習部として機能されるためのプログラムであって、
前記アサイン部は、
いずれか１つの分類器において、前記精度確認用の学習データとして割り当てる前記学習データの一部を、残りのいずれか１つの分類器において、前記学習用の学習データとして割り当てる、テキスト分類プログラム。
【請求項１０】
分類器を用いて自然言語のクラス分類を行う、記憶部を備えたコンピュータであって、前記記憶部には、各分類器で共用されるマスター単語情報を記録したマスター単語コーパスと、前記分類器ごとに生成されるドメイン単語情報を記録した複数のドメイン単語コーパスが記憶され、
前記コンピュータを、
複数の分類器と、
前記各分類器を用いて、入力されるテキストデータをテキスト分類する分類部として機能させるためのプログラムであって、
前記分類部は、前記分類器に対応する前記ドメイン単語コーパスを優先的に参照し、前記ドメイン単語コーパスに、前記テキストデータの単語が含まれている場合には、前記ドメイン単語コーパスから前記単語を読み出し、読み出した前記単語とともに、対応する前記分類器を用いて前記テキスト分類を行う、テキスト分類プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキスト分類装置、テキスト分類方法及びプログラムに関する。
【背景技術】
【０００２】
コールセンタのような電話でカスタマーサポートが必要とされる業種では、電話対応時にさまざまな情報を参照するとともに、経験に基づくノウハウを活用しながら、お客の質問に回答していくことが必要となる。
【０００３】
カスタマーサポートにおいて過去に行われた質疑応答の内容は、後の同種の質問に備え、紙媒体に印刷するなどしてマニュアルを作成し、各オペレータに配布することでカスタマーサポート業務の効率化が図られている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−１５７４４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、経験の浅いオペレータが電話対応する場合や、不慣れな分野で電話対応することが必要な場合には、マニュアルの参照回数が多くなりがちで通話の保留回数が増え、対応時間が長くなる傾向にある。これにより、お客にストレスを与えるといった問題や、コールセンタのコストが上昇するといった問題が指摘されていた。
【０００６】
本発明は以上説明した事情を鑑みてなされたものであり、電話によるカスタマーサポート業務等において、お客からの質問等に対して迅速かつ適切な対応を実現するのに好適なテキスト分類技術を提供することを目的の一つとする。
【課題を解決するための手段】
【０００７】
本発明の一態様におけるテキスト分類装置は、分類器を用いて自然言語のクラス分類を行うテキスト分類装置であって、複数の分類器と、学習テキストデータと学習カテゴリを含む学習データを複数入力する入力部と、分類器ごとに、入力される複数の学習データの一部を、精度確認用の学習データとして割り当てるとともに、残りの前記学習データを、学習用の学習データとして割り当てるアサイン部と、割り当てられた学習用の学習データを用いて、対応する分類器を学習するとともに、割り当てられた精度確認用の学習データを用いて、対応する分類器の学習の精度確認を行う学習部とを備え、アサイン部は、いずれか１つの分類器において、精度確認用の学習データとして割り当てる学習データの一部を、残りのいずれか１つの分類器において、学習用の学習データとして割り当てる。
【０００８】
上記構成において、各分類器の学習が終了した後に入力されるテキストデータに対し、各分類器を統合してテキスト分類を行う分類部をさらに具備する構成としてもよい。
【０００９】
上記構成において、複数の分類器は、所定のモデルを用いたテキスト分類器であり、複数の分類器のうち、少なくとも１つの分類器は、他の分類器と異なるモデルを用いたテキスト分類器であってもよい。
【００１０】
上記構成において、少なくとも１つの分類器は、ＬＲＣのモデルを用いたテキスト分類器であり、他の分類器は、ＤＮＮのモデルを用いたテキスト分類器であってもよい。
【００１１】
本発明の他の態様におけるテキスト分類装置は、分類器を用いて自然言語のクラス分類を行うテキスト分類装置であって、複数の分類器と、各分類器で共用されるマスター単語情報を記録したマスター単語コーパスと、分類器ごとに生成されるドメイン単語情報を記録した複数のドメイン単語コーパスと、各分類器を用いて、入力されるテキストデータをテキスト分類する分類部とを備え、分類部は、分類器に対応するドメイン単語コーパスを優先的に参照し、ドメイン単語コーパスに、テキストデータの単語が含まれている場合には、ドメイン単語コーパスから単語を読み出し、読み出した単語とともに、対応する分類器を用いてテキスト分類を行う。
【００１２】
上記構成において、分類部は、ドメイン単語コーパスに、テキストデータの単語が含まれていない場合には、マスター単語コーパスを参照し、マスター単語コーパスに記録されている単語に対して表現の補完を行い、表現の補完後の単語とともに、対応する分類器を用いてテキスト分類を行ってもよい。
【発明の効果】
【００１３】
本発明によれば、電話によるカスタマーサポート業務等において、お客からの質問等に対して迅速かつ適切な対応を実現するのに好適なテキスト分類技術を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係るテキスト分類システムの基本原理を示す説明図である。
【図２】コールセンタでの運用を例示した図である。
【図３】学習データを例示した図である。
【図４】コールセンタでの運用を例示した図である。
【図５】テキスト分類装置の機能構成を示すブロック図である。
【図６】複数種類の分類器を例示した図である。
【図７】各コーパスの利用方法を説明するための図である。
【図８】学習データの利用方法を説明するための図である。
【図９】学習データの利用方法を説明するための図である。
【図１０】単語の分散表現を二次元表示した図である。
【図１１】単語分散表現の学習を説明するための図である。
【図１２】単語分散表現の学習を複数回実施したときの学習結果を示す図である。
【図１３】異なるコーパス間で単語を当てはめた状態を示す図である。
【図１４】表現の補完を説明するための模式図である。
【図１５】表現の補完の処理フローを示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下に本発明の実施形態を説明する。以下の図面の記載において、同一または類似の部分には同一または類似の符号で表している。但し、図面は模式的なものである。したがって、具体的な寸法などは以下の説明を照らし合わせて判断するべきものである。また、図面相互間においても互いの寸法の関係や比率が異なる部分が含まれていることは勿論である。さらに、本発明の技術的範囲は、当該実施形態に限定して解するべきではない。
【００１６】
Ａ．本実施形態
Ａ−１．基本原理
図１は、本実施形態に係るテキスト分類システム１００の基本原理を示す説明図である。テキスト分類システム１００は、コールセンタ等で用いて好適な「問い合わせ対応」を効率化するためのシステムであり、自然文分類器を用いて自然言語処理（クラス分類）を行う。テキスト分類システム１００は、図１に示すように、学習処理機能Ｆ１と、分類処理機能Ｆ２とを備えている。
【００１７】
＜学習処理機能Ｆ１＞
ディープラーニングを用いて自然言語のクラス分類を行う自然文分類処理部１２０は、利用者サーバ１１０から、大量に用意された自然文（例えば問い合わせ）と、自然文に対応する分類（例えば問い合わせに対する回答分類；以下、「カテゴリ」と略称する。）とのセットを、学習データＤｌとして受け取る。自然文分類処理部１２０は、受け取った学習データをもとに、機械学習することでクラス分類を行うテキスト分類器１３０を作成する。
【００１８】
図２に示すコールセンタでの運用を例に説明すると、まず、管理者は、業務中の問い合わせ内容やログを参照しながら、利用者サーバ１１０を適宜操作して、問い合わせ内容をあらわすテキストデータとカテゴリとのセットである学習データＤｌを作成する。図３は、学習データＤｌを例示した図である。図３に示すように、学習データＤｌは、実際にオペレータが問い合わせ内容から書き起こしたテキストデータ（以下、学習テキストデータ）Ｄｌｔと、問い合わせに応じて実際に回答した内容を分類したカテゴリ（以下、学習カテゴリ）Ｃｌｙとのセットによって構成されている。一例をあげて説明すると、例えば「・・・低速化について知りたい。」という問い合わせ（すなわち学習テキストデータＤｌｔ）については、「Ｓｐｅｅｄｌｉｍｉｔ」というカテゴリ（すなわち学習カテゴリＣｌｙ）が対応づけられている（図３参照）。なお、学習データＤ１を何セット用意するか、カテゴリを何種類登録しておくか等は、システム設計等に応じて適宜設定・変更可能である。管理者は、図３に示すような複数セットの学習データＤｌを作成すると、作成した学習データＤｌを学習リクエストＲｌとともに自然文分類処理部１２０に出力する（図２参照）。
【００１９】
＜分類処理機能Ｆ２＞
一方、分類処理を行う際、自然文分類処理部１２０は、外部（利用者サーバ１１０など）から自然文Ｓｎを受け取ると、分類器１３０を用いて受け取った自然文Ｓｎを解析することで、適切なカテゴリＣｙを判別し、判別したカテゴリＣｙを出力する。
【００２０】
図４に示すコールセンタでの運用を例に説明すると、まず、オペレータは、与えられたＰＣ端末などを適宜操作し、お客の問い合わせ内容をテキスト入力する（例えば、「○×放題に変更したい」など）。利用者サーバ１１０は、問い合わせ内容を示すテキストデータＤｔｗを受け取ると、受け取ったテキストデータＤｔｗを分類リクエストＲｃとともに自然文分類処理部１２０に出力する。自然文分類処理部１２０は、テキスト分類器１３０を用いて、受け取ったテキストデータＤｔｗを解析し、カテゴリＣｙの判別を行う。自然文分類処理部１２０は、テキスト分類器１３０の学習データを参照することで、例えば「○×放題に変更したい」というテキストデータＤｔｗについては、“料金プラン変更”というカテゴリＣｙが最適であると判断すると、判断結果として“料金プラン変更”というカテゴリＣｙを利用者サーバ１１０に返答する。利用者サーバ１１０は、自然文分類処理部１２０からの返答結果に基づき、料金プランを変更するのに最適な業務画面をオペレータのＰＣ端末などに表示する。オペレータは、ＰＣ端末などに表示される業務画面を参照しながら、問い合わせに対する回答として契約プランの変更に必要な情報をお客に求める。以下、本実施形態に係る自然文分類処理部１２０を備えたテキスト分類装置２００について説明する。
【００２１】
Ａ−２．構成
図５は、テキスト分類装置２００の機能構成を示すブロック図である。テキスト分類装置２００は、例えばパーソナルコンピュータにより構成され、自然文分類処理部１２０、分類器１３０のほか、通信インタフェース部１４０、操作部１５０、記憶部１６０を備えている。
【００２２】
自然文分類処理部１２０は、例えばＣＰＵ、ＡＳＩＣ、ＦＰＧＡ等のプロセッサ、ＲＯＭやＲＡＭなどのメモリにより構成され、プロセッサがメモリに格納された各種制御プログラムを実行することにより、学習部１２１と分類部１２２の機能を提供する。なお、自然文分類処理部１２０が備える各部の機能の詳細は後述する。
【００２３】
分類器１３０は、自然文分類処理部１２０による制御の下、入力されるテキストデータＤｔｗを解析し、カテゴリＣｙの判別を行う。図５に示すように、本実施形態では、ＤＮＮ（Deep Neural Network）のモデルを用いた２種類の分類器１３０を利用する。もっとも、分類器の数は２つに限らず、３つ以上であってもよい。この場合、利用する分類器は、ＤＮＮのモデルを用いたものに限定する趣旨ではなく、例えばＤＮＮのモデルを用いた２種のテキスト分類器に加え、ＬＲＣ（Logistic Regression Classifier；ロジスティック回帰）を利用したモデルを用いた１種類のテキスト分類器を利用してもよい（例えば図６参照）。このように、複数の分類器を利用するのは、機械学習の分類器の性能（分類精度など）の向上を図るためである。なお、利用する分類器のタイプとして、例えばＳＶＭ（Support Vector Machine）などを用いてもよい。
【００２４】
通信インタフェース部１４０は、外部のネットワークと接続する装置などから構成され、インターネットやイントラネットなどの通信網を介して利用者サーバ１１０等との間で各種データを授受する。
【００２５】
操作部１５０は、例えばキーボードやマウスなどの入力装置や、各種情報を表示する表示パネルなどを備えて構成される。
【００２６】
記憶部１６０は、例えばＨＤＤ（Hard Disk Drive）やＳＤＤ（Solid State Drive）など、書き換え可能な不揮発性メモリなどから構成されている。記憶部１６０は、１種類のマスター単語コーパスＣｍと、複数のドメイン単語コーパスＣｄとを備えている。
【００２７】
マスター単語コーパスＣｍは、例えばインターネット上に存在する様々なサイトなど（外部）から入手した大量のテキスト情報に基づき、予め単語や単語の意味情報（以下、「マスター単語情報」と総称する。）を集積したものである。マスター単語コーパスＣｍは、複数の分類器１３０で共用されるコーパスである。マスター単語コーパスＣｍは、本システムの運用に先駆け、別装置が事前に作成し、自然文分類処理部１２０が保守・管理するようにしてもよい。また、自然文分類処理部１２０が、マスター単語コーパスＣｍの作成、保守、管理を統括的に実施してもよい。
【００２８】
ドメイン単語コーパスＣｄは、分類器１３０ごとに設けられており、本実施形態では２つのドメイン単語コーパスＣｄが設けられている。ドメイン単語コーパスＣｄは、インターネット上のサイトでほぼ見かけないような独自の単語や単語の意味情報（例えば、特定業界や特定企業内でのみ使用される単語や単語の意味情報など；以下、「ドメイン単語情報」と総称する。）を集積したものである。自然文分類処理部１２０は、各分類器１３０を生成する際に、対応する各ドメイン単語コーパスＣｄを生成し、分類器１３０ごとに保守・管理する。
【００２９】
周知のとおり、機械学習を使ってテキスト分類を行う際には、各単語や単語の意味情報をあらかじめ学習しておくと、分類精度の向上を図ることができる。そこで、本実施形態では、上述したマスター単語コーパスＣｍ及びドメイン単語コーパスＣｄを作成し、これらマスター単語コーパスＣｍ及びドメイン単語コーパスＣｄを用いてテキスト分類を行うことで、分類精度の向上を図っている。なお、詳細は後述するが、マスター単語コーパスＣｍは、各ドメイン単語コーパスＣｄに比べてデータ量が膨大であり、複数のバージョンを保持・管理するのは難しい。そこで、本実施形態では、入力されるテキストデータＤｔｗを解析し、カテゴリＣｙを判別する際、自然文分類処理部１２０は、対応する分類器１３０のドメイン単語コーパスＣｄを優先的に参照し、当該ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれているかいないかをチェックする（図７参照）。自然文分類処理部１２０は、ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれていないと判断した場合にのみ、マスター単語コーパスＣｍを参照し、当該マスター単語コーパスＣｍからテキストデータＤｔｗの単語を読み出す、といった作業を行う。これにより、各コーパスを効率的に利用することが可能となる。
【００３０】
Ａ−３．学習データの利用方法
図８は、学習データの利用方法を説明するための図である。
すでに説明したように、自然文分類処理部１２０は、利用者サーバ１１０から、学習テキストデータＤｌｔ（問い合わせ内容）と学習カテゴリＣｌｙ（回答した内容の分類）とのセットからなる複数の学習データＤｌを受け取ると、受け取った学習データＤｌをもとに、分類器１３０を作成・学習する。分類器１３０を学習する際、学習の進捗度合いをモニタリングするためには、入力されるデータを、実際に分類器１３０が分類したときの精度を確認する必要がある。精度を確認する方法の一つとして、図６に示すように、自然文分類処理部１２０に入力される複数の学習データＤｌの一部を、精度確認用の学習データＤｌｖに割り当てるとともに、残りの学習データＤｌを、本来の学習用の学習データＤｌｌに割り当てる、といった方法が考えられる。ただし、単に、入力される複数の学習データＤｌの一部を精度確認用の学習データＤｌｖに割り当てただけでは、学習データの一部が学習に反映されないという問題が生じる。
【００３１】
そこで、図９に示すように、自然文分類処理部１２０の学習部（アサイン部）１２１は、利用者サーバ１１０から、通信インタフェース部（入力部）１４０を介して入力される学習データＤｌを、２つの分類器１３０（図９では、分類器Ａと分類器Ｂ）に提供するとともに、一方の分類器１３０において精度確認用の学習データＤｌｖに割り当てる学習データＤｌの一部を、他方の分類器１３０において本来の学習用の学習データＤｌｌに割り当てるように、学習データＤｌの割り当てを制御する。
【００３２】
図９の場合を例に詳述すると、分類器Ａにおいて学習に利用されない学習データの一部（すなわち、分類器Ａにおける精度検証用の学習データＤｌｖ）は、分類器Ｂにおいて本来の学習用の学習データＤｌｌに割り当てられる。一方、分類器Ｂにおいて学習に利用されない学習データの一部（すなわち、分類器Ｂにおける精度検証用の学習データＤｌｖ）は、分類器Ａにおいて本来の学習用の学習データＤｌｌに割り当てられる。学習部１２１は、割り当てられた本来の学習用の学習データＤｌｌを用いて、対応する分類器１３０を学習するとともに、割り当てられた精度検証用の学習データＤｌｖを用いて、対応する分類器１３０の学習の精度確認を行う。
【００３３】
この結果、入力される学習データ全体を学習に利用しつつ、正確な精度確認（精度検証）を実現することが可能となる。なお、学習が終了した後、外部から入力されるテキストデータを分類する際、自然文分類処理部１２０の分類部１２２は、２つの分類器１３０（図９では、分類器Ａと分類器Ｂ）を統合利用することで、精度の高いテキスト分類を実現する。
【００３４】
Ａ−４．単語コーパスの補完
すでに説明したように、本実施形態では、マスター単語コーパスＣｍとドメイン単語コーパスＣｄの両方を利用することを前提としつつ、ドメイン単語コーパスＣｄを優先的に利用し、ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれないと判断した場合にのみ、マスター単語コーパスＣｍを参照し、当該マスター単語コーパスＣｍからテキストデータＤｔｗの単語を読み出す、といった作業を行う（前掲図７参照）。この際、異なるコーパス間（すなわち、マスター単語コーパスＣｍとドメイン単語コーパスＣｄとの間）では、後述するように、単純な単語の当てはめはできない。よって、本実施形態では、マスター単語コーパスＣｍに格納されているマスター単語情報と、ドメイン単語コーパスＣｄに格納されているドメイン単語情報との間で、「表現の補完」を行う。以下、表現の補完の詳細について、説明する。
【００３５】
表現の補完の前提として、ＮＬＣを用いた自然言語処理では、単語の意味を低次元の実数値ベクトルであらわす表現（いわゆる単語の分散表現）が広く利用されている。ここで、図１０は、単語の分散表現（単語分散表現）を二次元表示した図である。
【００３６】
各単語は、あらかじめ定めた任意の次元の実数値ベクトルで表すことができ、各ベクトル間のユークリッド距離を演算することで各単語の意味の近さ（すなわち、単語間の類似度）を求めることができる。図１０では、各単語「りんご」、「オレンジ」、「スマートフォン」、「高機能携帯端末」が、それぞれ2次元の実数値ベクトル（０．１，０．２）、（０．２，０．１）、（０．４，０．９）、（０．５，０．８）で表現されている場合を示している。
【００３７】
図１１は、単語分散表現の学習を説明するための図である。
図１１に示す例では、各単語の意味が近いほど単語ベクトル間の距離が近くなるように、単語分散表現の学習を行う。この結果、各単語がランダムに配置された状態から（図１１に示す「学習前」参照）、各単語の意味が近いほど単語ベクトル間の距離が近い状態に遷移する（図１１に示す「学習後」参照）。図１１では、「リンゴ」と「オレンジ」との間の距離、「スマートフォン」と「高機能携帯端末」との間の距離が短くなっている（それぞれ近づいている）ことがわかる。なお、学習に際しては、各単語が含まれる文（文書や要約など）を利用する。
【００３８】
図１２は、単語分散表現の学習を複数回実施したときの学習結果を示す図である。
図１２に示す学習後Ａ及び学習後Ｂを比較して明らかなように、学習後Ａ及び学習後Ｂのいずれも、意味が近い単語同士（「リンゴ」と「オレンジ」、「スマートフォン」と「高機能携帯端末」）は相対的に近くなっているものの、各単語のベクトルの値自体は、学習のたびに変わることがわかる。図１２に示す「リンゴ」と「オレンジ」を例に説明すると、学習後Ａ及び学習後Ｂのいずれも、各単語間の距離は相対的に短くなっているが、「リンゴ」のベクトル値は、学習後Ａで（０．１，０．２）、学習後Ｂで（０．３，０．８）、「オレンジ」のベクトル値は、学習後Ａで（０．２，０．１）、学習後Ｂで（０．４，０．９）といったように、各単語のベクトル値は学習のたびに変わっている。
【００３９】
単語分散表現の上記性質により、あるコーパスの単語（単語ベクトル）を別のコーパスに当てはめただけでは、単語間の相対的な距離は意味をなさない（すなわち、各単語の意味が近いほど単語ベクトル間の距離が近くなるという相関関係が崩れる）。図１３は、異なるコーパス間で単語を当てはめた状態を示す図である。図１３に示すように、コーパスＡに登録されている単語「多機能携帯」を、コーパスＢにコピーしたとする。この場合、単語「多機能携帯」の単語ベクトルは、コーパスＡ及びコーパスＢにおいていずれも（０．３，０．９）となる。しかしながら、抜き出した単語「多機能携帯」と、その他の単語（「スマートフォン」など）の間の相対的な距離は、コーパス間で大きくことなってしまう。すなわち、コーパスＡ上では、抜き出した単語「多機能携帯」が単語「スマートフォン」や単語「高機能携帯端末」の近くに位置するのに対し、コーパスＢ上では、コピーされた単語「多機能携帯」は、単語「スマートフォン」や単語「高機能携帯端末」よりも、単語「オレンジ」や単語「りんご」に近くなってしまう。
【００４０】
このような問題に対応するために、本実施形態では、「表現の補完」を行う。ここで、図１４は、表現の補完を説明するための模式図である。表現の補完の実装は任意の変換関数である。具体的には、図１４に示すように、コーパスＡの任意の単語ｘをコーパスＢにコピーする場合に、線形変換の行列式Ｗｘ＋ｂにより適切な変換ができるように学習する（Ｗ；線形変換の行列、ｂ；バイアス）。適切な変換を求める方法としては、両コーパス間（図１４では、コーパスＡとコーパスＢ）に共通する単語群が、もっとも正確に変換できるものを、あらかじめ機械学習により推定・学習する方法が挙げられる。このようにして求めた最適な変換関数を利用することで、転写元のコーパスＡと転写先のコーパスＢの間において、各単語間の距離は略一定に保たれる（図１４参照）。なお、表現の補完のコンセプトは、例えば先行する論文（R. Kiros, Y. Zhu, R. Salakhutdinov, R. S. Zemel, A. Torralba, R. Urtasun, and S. Fidler. Skip-Thought  Vectors. In NIPS, 2015）等に詳しい。
【００４１】
図１５は、表現の補完の処理フローを示すフローチャートである。
自然文分類処理部１２０の分類部１２２は、利用者サーバ１１０からテキストデータＤｔｗを受け取ると、まず、所定の分類器１３０（分類器Ａなど）のドメイン単語コーパスＣｄを優先的に参照し（ステップＳ１）、当該ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれているかいないかをチェックする（図７参照；ステップＳ２）。分類部１２２は、ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれていると判断すると（ステップＳ２；ＹＥＳ）、ドメイン単語コーパスＣｄから該当する単語を読み出し（ステップＳ３）、対応する分類器１３０を用いてテキスト分類（すなわち、適切なカテゴリＣｙを判別・出力）を行い、分類結果を利用者サーバ１１０に返答して（ステップＳ４）、処理を終了する。
【００４２】
一方、分類部１２２は、ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれていないと判断すると（ステップＳ２；ＮＯ）、マスター単語コーパスＣｍを参照する（ステップＳ５）。そして、分類部１２２は、マスター単語コーパスＣｍに該当する単語があることを見つけると、図１４に示すような表現の補完を行う（ステップＳ６）。表現の補完を行うことで、分類部１２２は、マスター単語コーパスＣｍのマスター単語情報とドメイン単語コーパスＣｄのドメイン単語情報とが混在等する状況でも、分類器１３０を適切に動作させることが可能となる。分類部１２２は、表現の補完後のマスター単語情報と、対応する分類器１３０を用いてテキスト分類を行い、分類結果を利用者サーバ１１０に返答して（ステップＳ４）、処理を終了する。
【００４３】
以上説明したように、本実施形態によれば、入力される学習データを分類器Ａ及び分類器Ｂを用いて学習させ、分類器Ａにおいて学習に利用されない学習データの一部（すなわち、分類器Ａにおける精度検証用の学習データＤｌｖ）は、分類器Ｂにおいて本来の学習用の学習データＤｌｌに割り当てる。一方、分類器Ｂにおいて学習に利用されない学習データの一部（すなわち、分類器Ｂにおける精度検証用の学習データＤｌｖ）は、分類器Ａにおいて本来の学習用の学習データＤｌｌに割り当てる。この結果、入力される学習データ全体を学習に利用しつつ、正確な精度確認（精度検証）を実現することが可能となる。分類器１３０の学習精度を上げることで、迅速かつ正確なテキスト分類が可能となり、これを活用することで、電話によるカスタマーサポート業務等において、お客からの質問等に対して迅速かつ適切な対応を実現することができる。
【００４４】
また、本実施形態では、各分類器１３０に共通のマスター単語コーパスＣｍと、分類器１３０ごとに設けられたドメイン単語コーパスＣｄを用いることで分類精度の向上を図っている。ここで、マスター単語コーパスＣｍは、各ドメイン単語コーパスＣｄに比べてデータ量が膨大であり、複数のバージョンを保持・管理するのは難しいため、対応する分類器１３０のドメイン単語コーパスＣｄを優先的に参照し、ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれていない場合にのみ、マスター単語コーパスＣｍを参照し、当該マスター単語コーパスＣｍからテキストデータＤｔｗの単語を読み出す、といった作業を行う。これにより、各コーパスを効率的に利用することが可能となる。各コーパスを効率的に利用することで、迅速かつ正確なテキスト分類が可能となり、これを活用することで、電話によるカスタマーサポート業務等において、お客からの質問等に対して迅速かつ適切な対応を実現することができる。
【００４５】
Ｂ．変形例
本発明は、上記の実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、他の様々な変更を加えて実施することができる。すなわち、上記の実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではなく、様々な変形例を採用することができる。
【００４６】
上記本実施形態では、表現の補完を行う際、所定の分類器１３０（分類器Ａなど）のドメイン単語コーパスＣｄを優先的に参照する構成としたが（図１５参照）、いずれの分類器１３０のドメイン単語コーパスＣｄを最初に参照するかは、任意に設定・変更可能である。分類器１３０が複数ある場合（例えば分類器Ａ及び分類器Ｂ）、分類部１２２は、例えば分類器Ａのドメイン単語コーパスＣｄを最初に参照し、当該ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれているかいないかをチェックする。分類部１２２は、当該ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれていないと判断した場合には、分類器Ｂのドメイン単語コーパスＣｄを参照し、当該ドメイン単語コーパスＣｄにテキストデータＤｔｗの単語が含まれているかいないかをチェックする。そして、分類部１２２は、いずれのドメイン単語コーパスＣｄにもテキストデータＤｔｗの単語が含まれていないと判断した場合にはじめて、マスター単語コーパスＣｍを参照するようにしてもよい。
【００４７】
なお、本明細書において、「部」とは、単に物理的構成を意味するものではなく、その「部」が有する機能をソフトウェアによって実現する場合も含む。また、１つの「部」や装置が有する機能が２つ以上の物理的構成や装置により実現されても、２つ以上の「部」や装置の機能が１つの物理的手段や装置により実現されてもよい。
【００４８】
また、本明細書において上述した各処理におけるステップは、処理内容に矛盾を生じない範囲で任意に順番を変更し、または並列に実行することができる。
【００４９】
本明細書において説明した各処理を実施するプログラムは、記録媒体に記憶させてもよい。この記録媒体を用いれば、テキスト分類装置２００に、上記プログラムをインストールすることができる。ここで、上記プログラムを記憶した記録媒体は、非一過性の記録媒体であっても良い。非一過性の記録媒体は特に限定されないが、例えば、ＣＤ−ＲＯＭ等の記録媒体であっても良い。
【符号の説明】
【００５０】
１００…テキスト分類システム、１１０…利用者サーバ、１２０…自然文分類処理部、１３０…分類器、１４０…通信インタフェース部、１５０…操作部、１６０…記憶部、２００…テキスト分類装置、Ｃｄ…マスター単語コーパス、Ｃｄ…ドメイン単語コーパス
【図１】
2018206238.tif 000003
【図２】
2018206238.tif 000004
【図３】
2018206238.tif 000005
【図４】
2018206238.tif 000006
【図５】
2018206238.tif 000007
【図６】
2018206238.tif 000008
【図７】
2018206238.tif 000009
【図８】
2018206238.tif 000010
【図９】
2018206238.tif 000011
【図１０】
2018206238.tif 000012
【図１１】
2018206238.tif 000013
【図１２】
2018206238.tif 000014
【図１３】
2018206238.tif 000015
【図１４】
2018206238.tif 000016
【図１５】
2018206238.tif 000017
【手続補正書】
【提出日】平成30年8月31日(2018.8.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
分類器を用いて自然言語のクラス分類を行うテキスト分類装置であって、
複数の分類器と、
学習テキストデータと学習カテゴリを含む学習データを複数入力する入力部と、
前記分類器ごとに、入力される複数の前記学習データの一部を、精度確認用の学習データとして割り当てるとともに、残りの前記学習データを、学習用の学習データとして割り当てるアサイン部と、
割り当てられた前記学習用の学習データを用いて、対応する前記分類器を学習するとともに、割り当てられた前記精度確認用の学習データを用いて、対応する前記分類器の学習の精度確認を行う学習部とを備え、
前記アサイン部は、
いずれか１つの分類器において、前記精度確認用の学習データとして割り当てる前記学習データの一部を、残りのいずれか１つの分類器において、前記学習用の学習データとして割り当てる、テキスト分類装置。
【請求項２】
前記各分類器の学習が終了した後に入力されるテキストデータに対し、前記各分類器を統合してテキスト分類を行う分類部をさらに具備する、請求項１に記載のテキスト分類装置。
【請求項３】
前記複数の分類器は、所定のモデルを用いたテキスト分類器であり、前記複数の分類器のうち、少なくとも１つの分類器は、他の分類器と異なるモデルを用いたテキスト分類器である、請求項２に記載のテキスト分類装置。
【請求項４】
前記少なくとも１つの分類器は、ＬＲＣのモデルを用いたテキスト分類器であり、前記他の分類器は、ＤＮＮのモデルを用いたテキスト分類器である、請求項３に記載のテキスト分類装置。
【請求項５】
記憶部を備えたコンピュータが、分類器を用いて自然言語のクラス分類を行うテキスト分類方法であって、
前記コンピュータは、前記記憶部に記憶されたプログラムを実行することにより、
学習テキストデータと学習カテゴリを含む学習データを複数入力する入力ステップと、
複数の分類器のそれぞれについて、入力される複数の前記学習データの一部を、精度確認用の学習データとして割り当てるとともに、残りの前記学習データを、学習用の学習データとして割り当てるアサインステップと、
割り当てられた前記学習用の学習データを用いて、対応する前記分類器を学習するとともに、割り当てられた前記精度確認用の学習データを用いて、対応する前記分類器の学習の精度確認を行う学習ステップとを実行し、
前記アサインステップは、
いずれか１つの分類器において、前記精度確認用の学習データとして割り当てる前記学習データの一部を、残りのいずれか１つの分類器において、前記学習用の学習データとして割り当てる、テキスト分類方法。
【請求項６】
分類器を用いて自然言語のクラス分類を行う、記憶部を備えたコンピュータを、
複数の分類器と、
学習テキストデータと学習カテゴリを含む学習データを複数入力する入力部と、
前記分類器ごとに、入力される複数の前記学習データの一部を、精度確認用の学習データとして割り当てるとともに、残りの前記学習データを、学習用の学習データとして割り当てるアサイン部と、
割り当てられた前記学習用の学習データを用いて、対応する前記分類器を学習するとともに、割り当てられた前記精度確認用の学習データを用いて、対応する前記分類器の学習の精度確認を行う学習部として機能されるためのプログラムであって、
前記アサイン部は、
いずれか１つの分類器において、前記精度確認用の学習データとして割り当てる前記学習データの一部を、残りのいずれか１つの分類器において、前記学習用の学習データとして割り当てる、テキスト分類プログラム。