(57)【特許請求の範囲】
【請求項１】
学習データから教師あり機械学習に基づき生成された識別関数を用いて予測データの分類を行うデータ分類装置であって、
前記予測データに対する前記識別関数の出力値の絶対値が所定の閾値を超えるか否かを判定する判定手段と、
前記判定手段により、前記出力値の絶対値が前記所定の閾値を超えないと判定された場合に、追加データを使用して前記予測データの分類を行う再識別手段と
を備えることを特徴とするデータ分類装置。
【請求項２】
前記再識別手段は、前記追加データを前記予測データに加えて得られた追加済予測データに前記識別関数を適用することにより、前記予測データの分類を行う
ことを特徴とする請求項１に記載のデータ分類装置。
【請求項３】
前記追加データは、前記予測データを発信したユーザと同じユーザにより発信されたデータである
ことを特徴とする請求項２に記載のデータ分類装置。
【請求項４】
前記追加データは、前記予測データを発信したユーザとは異なるユーザのデータであって、当該予測データが発信されたエリアと同じエリアから発信されたデータである
ことを特徴とする請求項２に記載のデータ分類装置。
【請求項５】
前記再識別手段は、前記異なるユーザのデータを前記追加データとして使用する場合において、当該異なるユーザのデータの分類傾向に基づいて、前記識別関数を変更した関数を適用して分類を行う
ことを特徴とする請求項４に記載のデータ分類装置。
【請求項６】
前記再識別手段は、前記出力値の絶対値が前記所定の閾値を超えない場合に、所定の時間又は所定の回数の範囲内で、前記追加データを使用した前記予測データの分類を複数回、繰り返し行う
ことを特徴とする請求項１ないし５のうちいずれか１項に記載のデータ分類装置。
【請求項７】
前記追加データは、通信サービスに係る装置のログデータであり、前記再識別手段は、前記データ分類装置における再識別用データ格納部の中に優先度の高いログデータが存在するか否かを判定することにより、前記分類を行う
ことを特徴とする請求項１ないし６のうちいずれか１項に記載のデータ分類装置。
【請求項８】
前記追加データは、前記予測データが発信された時刻から、所定時間内に出力されたデータである
ことを特徴とする請求項１ないし７のうちいずれか１項に記載のデータ分類装置。
【請求項９】
学習データから教師あり機械学習に基づき生成された識別関数を用いて予測データの分類を行うデータ分類装置が実行するデータ分類方法であって、
前記予測データに対する前記識別関数の出力値の絶対値が所定の閾値を超えるか否かを判定する判定ステップと、
前記判定ステップにおいて、前記出力値の絶対値が前記所定の閾値を超えないと判定された場合に、追加データを使用して前記予測データの分類を行う再識別ステップと
を備えることを特徴とするデータ分類方法。
【請求項１０】
コンピュータを、請求項１ないし８のうちいずれか１項に記載のデータ分類装置における各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、教師あり機械学習アルゴリズムに基づいて、予測データの分類を行う技術に関連するものである。
【背景技術】
【０００２】
近年、IP系サービスを支えるネットワーク機器のオペレーションにおいて、サイレント故障の早期検知や故障の予兆検知を目的として、Twitter（登録商標）に代表されるSNS（Social Networking Service）の情報を分析する技術が注目を集めている（例えば、特許文献１、非特許文献１参照）。短いメッセージをリアルタイムで発信することができるSNSのデータを分析することで、ユーザが感じているサービスの状態をリアルタイムに把握できる可能性がある。
【０００３】
また、上記のようなメッセージから故障に関連する情報を抽出する技術として、サポートベクトルマシンなどの教師あり機械学習アルゴリズムがある。教師あり機械学習では、学習データ（教師データとも呼ぶ）として、目視によって選んだ故障に関する情報のメッセージ、および故障とは関係ないメッセージを与え、各メッセージに基づいて、正解データと不正解データを分ける識別関数（予測モデル）を作成する。この方法では、各メッセージの単語の共起関係を考慮して故障情報メッセージかどうかを判定することができるため、単純なキーワードで検索するよりも精度が向上する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2015-095060号公報
【非特許文献】
【０００５】
【非特許文献１】Syslog+SNS分析によるネットワーク故障検知・原因分析技術木村達明，竹下恵，豊野剛，横田将裕，西松研，森達哉、NTT技術ジャーナル, Vol.25, pp20-24, 2013.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した教師あり機械学習アルゴリズムでは、学習データをもとに構築した識別関数を利用して予測したいデータの分類を行う。しかしながら、識別境界付近に存在するデータは誤って識別されてしまう可能性があるという課題がある。
【０００７】
例えば、図１に示すように、教師あり機械学習アルゴリズムにより生成された識別関数をｙ（ｘ）とし、ｙ（ｘ）＞０であれば「分類１」と判定し、ｙ＜０であれば「分類２」と判定する予測モデルを考える。この場合、ｙ（ｘ）＝０の境界から十分に離れた領域については正確な判定が行われ易い。これに対して、判定結果（ｙ（ｘ）の出力）がｙ（ｘ）＝０に近いデータについては誤判定が起こり易い。例えば、ｙ（ｘ）＞０であるから「分類１」と判定されたデータが、実際には「分類２」であるといったことが生じ得る。例えば、Twitter（登録商標）などの短いテキストから判定する場合、情報量が少なく誤判定が起きやすい。
【０００８】
上記のような課題は、背景技術で説明したような故障の識別に限らずに、教師あり機械学習の適用全般に生じ得る課題である。
【０００９】
本発明は上記の点に鑑みてなされたものであり、学習データから教師あり機械学習に基づき生成された識別関数を用いて予測データの分類を行う際に、識別境界付近に存在する分類の曖昧なデータについて、分類の明確性を向上させることを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の実施の形態によれば、学習データから教師あり機械学習に基づき生成された識別関数を用いて予測データの分類を行うデータ分類装置であって、
前記予測データに対する前記識別関数の出力値の絶対値が所定の閾値を超えるか否かを判定する判定手段と、
前記判定手段により、前記出力値の絶対値が前記所定の閾値を超えないと判定された場合に、追加データを使用して前記予測データの分類を行う再識別手段と
を備えることを特徴とするデータ分類装置が提供される。
【００１１】
また、本発明の実施の形態によれば、学習データから教師あり機械学習に基づき生成された識別関数を用いて予測データの分類を行うデータ分類装置が実行するデータ分類方法であって、
前記予測データに対する前記識別関数の出力値の絶対値が所定の閾値を超えるか否かを判定する判定ステップと、
前記判定ステップにおいて、前記出力値の絶対値が前記所定の閾値を超えないと判定された場合に、追加データを使用して前記予測データの分類を行う再識別ステップと
を備えることを特徴とするデータ分類方法が提供される。
【発明の効果】
【００１２】
本発明の実施の形態によれば、学習データから教師あり機械学習に基づき生成された識別関数を用いて予測データの分類を行う際に、識別境界付近に存在する分類の曖昧なデータについて、分類の明確性を向上させることを可能とする技術が提供される。
【図面の簡単な説明】
【００１３】
【図１】課題を説明するための図である。
【図２】本実施の形態における文書分類装置１００の構成図である。
【図３】学習データの例を示す図である。
【図４】識別関数生成の処理手順を示すフローチャートである。
【図５】予測データの例を示す図である。
【図６】実施例１の処理手順を示すフローチャートである。
【図７】追加用データの例を示す図である。
【図８】実施例２の処理手順を示すフローチャートである。
【図９】ログデータの例を示す図である。
【図１０】実施例３の処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施の形態（本実施の形態）を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。例えば、本実施の形態で説明する予測データ、追加用データ、及びログデータは、通信システムの故障や性能低下等の予測を想定したデータになっているが、本発明は、このような分野に限らず、様々な分野に適用可能である。
【００１５】
本実施の形態では、教師あり機械学習に基づき生成された識別関数を、予測したいデータ（予測データ）に適用した結果、予測データの予測結果が識別境界付近に存在する場合に、他のデータベースから得られる追加データを用いて再度識別を行うこととしている。以下、より詳細に説明する。
【００１６】
（装置構成）
図２に、本実施の形態における文書分類装置１００の構成図を示す。図２に示すように、文書分類装置１００は、学習データ格納部１０１、予測データ格納部１０２、再識別用データ格納部１０３、データ入力部１０４、形態素解析部１０５、特徴ベクトル化部１０６、識別関数生成部１０７、識別関数格納部１０８、識別部１０９、再識別部１１０、及び出力部１１１を有する。各機能部の概要は以下のとおりである。
【００１７】
学習データ格納部１０１は、識別関数生成のもとなる学習データを格納する。予測データ格納部１０２は、識別関数を使用した分類の識別の対象となるデータを格納する。再識別用データ格納部１０３は、識別結果が識別境界付近である場合において再識別を行うために使用するデータを格納する。本実施の形態において、学習データ、予測データ、再識別用データはいずれもテキストのデータである。
【００１８】
データ入力部１０４は、上記の各データを入力し、対応する格納部に格納する。形態素解析部１０５は、テキストの形態素解析を行い、当該テキストを単語に分ける。特徴ベクトル化部１０６は、形態素解析部１０５で得られたテキスト毎の形態素解析結果を入力し、テキスト毎の特徴ベクトルを算出する。
【００１９】
識別関数生成部１０７は、教師あり機械学習の技術を用いて、特徴ベクトル化部１０６により得られた特徴ベクトル化された学習データから、予測データの分類を識別するための識別関数を生成する。なお、識別関数の生成には例えばサポートベクトルマシンのような従来技術を用いることができる。識別関数格納部１０８は、識別関数生成部１０７により生成された識別関数を格納する。
【００２０】
識別部１０９は、特徴ベクトル化された予測データを識別関数に入力し、識別関数の出力値に基づいて、予測データの分類の識別を行う。再識別部１１０は、再識別用データを用いて再識別を行う。出力部１１１は、識別部１０９又は再識別部１１０による識別結果を出力する。
【００２１】
なお、本実施の形態では、文書分類装置１００が、学習データから識別関数を生成する機能と、識別／再識別の機能の両方を有するが、学習データから識別関数を生成する機能を有しないこととしてもよい。この場合、例えば、外部装置で生成された識別関数が文書分類装置１００に入力、格納され、識別／再識別において使用される。
【００２２】
本実施の形態における文書分類装置１００は、例えば、コンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、文書分類装置１００が有する機能は、当該コンピュータに内蔵されるＣＰＵやメモリ等のハードウェア資源を用いて、当該装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体（可搬メモリ等）に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
【００２３】
以下、文書分類装置１００の動作例をより詳細に説明する。以下では、最初に各実施例に共通である識別関数の生成について説明し、その後に、識別／再識別処理の各実施例を説明する。
【００２４】
（識別関数の生成処理）
まず、学習データから識別関数を生成する処理を説明する。本実施の形態の学習データは特定のものに限られるわけではないが、例えば、Twitter（登録商標）等のSNSのデータや、Web上のデータである。
【００２５】
図３は、文書分類装置１００の学習データ格納部１０１に格納されている学習データの集合の例を示す図である。図３に示すように、学習データは、"文書"，"正解ラベル"のカラムを含む。正解ラベルは２値のどちらかの値を取る。例えば、文書の内容について、不満かそうでないかを分類する場合に、不満と分類される場合には１、それ以外は−１を取る。
【００２６】
図４のフローチャートの手順に沿って、文書分類装置１００による識別関数の生成処理を説明する。まず、形態素解析部１０５が学習データ格納部１０１から学習データを取得する（ステップＳ１０１）。
【００２７】
形態素解析部１０５は、学習データにおけるテキスト（文書）毎に形態素解析を行い、テキストを単語単位に分かち書きする（ステップＳ１０２）。テキスト毎の形態素解析結果は特徴ベクトル化部１０６に入力される。形態素解析技術としては従来技術を用いることができる。形態素解析の一例を以下に示す。形態素解析により単語単位と併せて品詞も抽出可能である。
【００２８】
入力：「私と友達は一緒に学校に行った」
出力１：「私/と/友達/は/一緒/に/学校/に/行った」
出力２：「私：名詞/と：助詞/友達：名詞/は：助詞/一緒:名詞/に：助詞/学校:名詞/に/行った：動詞」
次に、特徴ベクトル化部１０６が、テキスト毎の形態素解析結果から、テキスト毎の特徴ベクトルを算出する（ステップＳ１０３）。ここでは、例えば、特徴ベクトル化部１０６は、各形態素（単語）の出現頻度をそのテキストの特徴としてベクトル化する。テキスト毎の特徴ベクトルは、識別関数生成部１０７に入力される。
【００２９】
次に、識別関数生成部１０７は、教師あり機械学習モデルを用いて、特徴ベクトル化された学習データから、予測データを識別するための識別関数を生成する（ステップＳ１０４）。ステップＳ１０５において、識別関数生成部１０７から識別関数が出力され、識別関数格納部１０８に格納される。以下、識別関数をｙ（ｘ）とする。また、基本的に、ｙ（ｘ）の出力値が正である場合の予測データの分類が「分類１」であり、負である場合の分類が「分類２」であるとする。
【００３０】
（実施例１）
次に、文書分類装置１００の動作例として、予測データの識別に関する実施例１を説明する。
【００３１】
予測データは特定のものに限られるわけではないが、例えば、Twitter（登録商標）等のSNSのデータや、Web上のデータである。特に実施例１では、予測データはSNSのデータであることを想定している。例えば、データ入力部１０４はネットワークから当該SNSのデータをリアルタイムに取得し、予測データとして予測データ格納部１０２に順次格納するとともに、予測データに対して順次、以下で説明する識別／再識別処理が行われる。
【００３２】
実施例１における予測データの例を図５に示す。図５に示すように、当該予測データは、"ユーザＩＤ"、"文書"、"発信時刻"、"発信位置"のカラムを含む。
【００３３】
図６のフローチャートに示す手順に沿って、実施例１における文書分類装置１００の処理手順を説明する。なお、以降の各実施例において実行される形態素解析、特徴ベクトル化については、学習データに対する形態素解析、特徴ベクトル化と同じであるため、簡単に説明する。
【００３４】
新たな予測データが予測データ格納部１０２に格納されると、形態素解析部１０５が、予測データの文書（テキスト）に対して形態素解析を行う（ステップＳ２０２）。次に、特徴ベクトル化部１０６が、形態素解析結果から特徴ベクトルを算出する（ステップＳ２０３）。
【００３５】
次に、識別部１０９が、特徴ベクトル化された予測データに対して識別関数を適用して出力値を計算する。そして、特徴ベクトルをｘ、識別関数をｙ（ｘ）、閾値をｔとした場合、識別部１０９は、｜ｙ（ｘ）｜＞ｔを満たすかどうかの判定を行う（ステップＳ２０４）。なお、ｔは予め定めた正の値である。｜ｙ（ｘ）｜＞ｔかどうかの判定を行うことは、出力値が、ｙ（ｘ）＝０の境界付近にないか否かの判定を行うことに相当する。
【００３６】
ステップＳ２０４において｜ｙ（ｘ）｜＞ｔであると判定された場合、ステップＳ２０５に進み、識別部１０９は、ｙ（ｘ）＞ｔならば予測データを分類１と識別し、ｙ（ｘ）＜−ｔならば予測データを分類２と識別し、識別結果を出力部１１１を介して出力する。
【００３７】
ステップＳ２０４において、｜ｙ（ｘ）｜≦ｔであると判定された場合、ステップＳ２０６に進み、再識別のための処理が開始される。
【００３８】
実施例１では、再識別において、予測データに、再識別用データ格納部１０３に格納されている追加用データを付加し、当該追加用データが付加された予測データ（これを追加済予測データと呼ぶ）に対して、最初の識別処理と同様の手順で識別を実行する。
【００３９】
図７に、実施例１（及び実施例２）において再識別用データ格納部１０３に格納されている追加用データの集合の例を示す。実施例１の追加用データは、予測データと同様のデータであり、例えば、Twitter（登録商標）等のSNSのデータや、Web上のデータであり、データ入力部１０４から順次入力されるものである。特に実施例１では、予測データはSNSのデータであることを想定している。図７に示すように、当該追加用データは、"ユーザＩＤ"、"文書"、"発信時刻"、"発信位置"のカラムを含む。
【００４０】
なお、予測データ格納部１０２に順次予測データを蓄積していくことで、実施例１（実施例２）の追加用データとして、予測データ格納部１０２に格納されるデータを用いることとしてもよい。
【００４１】
図６のステップＳ２０６において、再識別部１１０は、予測データを発信したユーザと同じユーザから発信された一つ前のデータ（追加用データ）を再識別用データ格納部１０３から取得し、当該追加用データを予測データに追加して、新たに予測データを作成する。
【００４２】
この追加が行われた予測データを追加済予測データと呼ぶことにする。一例として、追加用データの文書部分が「ＡＢＣＤ」であるとして、追加用データの文書部分が「ＥＦＧＨ」であれば、追加済予測データは「ＡＢＣＤＥＦＧＨ」となる。
【００４３】
その後、形態素解析部１０５が追加済予測データに対して形態素解析を行い（ステップＳ２０７）、特徴ベクトル化部１０９が、形態素解析結果から特徴ベクトルを算出する（ステップＳ２０８）。
【００４４】
そして、ステップＳ２０９において、再識別部１１０が、特徴べクトルを識別関数に入力して出力値を計算する。再識別部１１０は、出力値の絶対値が閾値ｔを超えるかどうか（｜ｙ（ｘ）｜＞ｔを満たすかどうか）を判定し、閾値ｔを超えればステップＳ２１０に進み、出力値の正負に応じた分類を識別結果として出力する。
【００４５】
一方、出力値の絶対値が閾値ｔを超えない場合（｜ｙ（ｘ）｜≦ｔの場合）、ステップＳ２０６に戻り、予測データと同じユーザから発信された未追加のデータのうち、一つ前のデータ（最初の予測データの２つ前のデータ）を、現在の追加済予測データに加えることで、再度、識別を実行する。｜ｙ（ｘ）｜≦ｔが継続する間、このような処理が繰り返される。
【００４６】
本実施の形態で想定しているSNSのデータは短い場合が多く、分類が曖昧になりやすい。そこで、上記のようにデータを追加することで、分類の確度を増加させることができる。
【００４７】
なお、繰り返し回数の閾値を設けて、繰り返し回数が、当該閾値に達しても｜ｙ（ｘ）｜≦ｔとなる場合には処理を終了してもよい。例えば、繰り返し回数の閾値を２回とした場合、再識別処理を３回行って、３回目も｜ｙ（ｘ）｜≦ｔとなる場合に、処理を終了する。また、処理時間の閾値を設け、例えば、再識別処理に入った時刻から当該閾値の時間を経過した時点で、｜ｙ（ｘ）｜≦ｔとなっている場合には、処理を終了してもよい。これらの繰り返し制御についても再識別部１１０が実行する。
【００４８】
また、上記の例では、再識別処理時の追加用データとして、予測データのユーザと同じユーザのデータを使用することとしているが、異なるユーザのデータを使用して、上記と同様の再識別処理を行うこととしてもよい。
【００４９】
この場合、ステップＳ２０６において、予測データが発信されたエリア（"発信位置"で識別）に属する、予測データのユーザとは異なるユーザのデータを追加用データとして使用する。予測データの発信エリアに属する異なるユーザのデータが複数ある場合には、予測データに時間的に最も近い過去の（かつ未追加の）データを使用する。
【００５０】
上記のようにして異なるユーザのデータを追加用データとして使用することは、例えば、同じユーザのデータが追加用データとして存在しない場合に行うこととしてもよいし、設定により、いずれを使用するかを決定してもよい。
【００５１】
なお、異なるユーザのデータを追加用データとして使用する場合、当該異なるユーザの分類傾向によっては、予測データに追加することによって、誤った分類になる可能性がある。なお、「分類傾向」とは、当該異なるユーザの複数のデータに対して識別関数を適用した場合における分類の偏りの度合（正側に分類される割合が高い等）のことである。そこで、異なるユーザのデータを追加用データとして使用する場合には、識別関数に所定値を加える等により、識別関数の変更（シフト）を行ってもよい。
【００５２】
一例として、再識別部１１０が、予測データと異なるユーザのデータを追加用データとして使用する場合において、当該異なるユーザについての過去の所定数のデータについて、識別関数により識別を行う。そして、例えば、当該異なるユーザのデータについて、特定の分類になる傾向が強い場合に、識別関数を変更する。一例として、上記所定数のうちの高い割合（例：８割以上）で、ｙ（ｘ）が予め定めた正の閾値以上となる場合に、その傾向を削減するために、ｆ（ｘ）＝ｙ（ｘ）−Ａ（Ａは正の値）を、異なるユーザのデータを追加用データとして使用する場合における、ステップＳ２０９での識別関数として使用する。また、上記所定数のうちの高い割合（例：８割以上）で、ｙ（ｘ）が予め定めた負の閾値以下となる場合に、その傾向を削減するために、ｆ（ｘ）＝ｙ（ｘ）＋Ｂ（Ｂは正の値）を、異なるユーザのデータを追加用データとして使用する場合の識別関数として使用する。
【００５３】
（実施例２）
次に、実施例２について説明する。実施例２は、基本的に実施例１と同様である。以下、主に実施例１と異なる点について説明する。
【００５４】
実施例２では、再識別処理において、追加済予測データを作成する際に、所定時間内に同じユーザから発信されたデータを追加用データとして使用する。「所定時間」は特定の時間に限定されないが、実施例２では、予測データの発信時刻から過去３時間以内のデータを対象としている。
【００５５】
図８は、実施例２における文書分類装置１００の処理手順を示すフローチャートである。図８のステップＳ３０１〜Ｓ３０５は、実施例１で説明した図６のステップＳ２０１〜Ｓ２０５と同じである。
【００５６】
ステップＳ３０４での判定がＮｏとなった場合（再識別を行うと判定した場合）、ステップＳ３０６に進む。
【００５７】
ステップＳ３０６において、再識別部１１０は、再識別用データ格納部１０３に、予測データのユーザと同じユーザから発信されたデータであって、予測データの発信時刻から過去３時間以内のデータ（未追加のデータ）があるかどうかを判定する。
【００５８】
ステップＳ３０６での判定がＹｅｓであれば、ステップＳ３０７に進み、３時間以内のデータのうちの一つ前のデータを追加して、追加済予測データを作成する。追加済予測データの作成自体は実施例１と同じである。一方、ステップＳ３０６での判定がＮｏであれば、処理を終了する。
【００５９】
ステップＳ３０７〜Ｓ３１１は、実施例１における図６のステップＳ２０６〜Ｓ２１０と同じである。ステップＳ３１０において、｜ｙ（ｘ）｜≦ｔである場合、ステップＳ３０６に戻り、予測データのユーザと同じユーザから発信されたデータであって、予測データの発信時刻から過去３時間以内に未追加のデータがあるかどうかを判定し、ある場合には、一つ前のデータ（最初の予測データの２つ前のデータ）を、現在の追加済予測データに加えることで、再度、識別を実行する。｜ｙ（ｘ）｜≦ｔが継続する間、かつ、過去３時間以内に未追加のデータがある間、このような処理が繰り返される。
【００６０】
また、実施例２においても、実施例１と同様に、繰り返しの回数又は時間の閾値を設けて、閾値に達しても｜ｙ（ｘ）｜≦ｔとなる場合には、処理を終了することとしてもよい。
【００６１】
更に、実施例２においても、実施例１と同様に、異なるユーザであって同エリアのユーザのデータを追加用データとして使用してもよい。また、実施例１の場合と同様に、異なるユーザのデータを使用する場合における識別関数の変更を行うこととしてもよい。
【００６２】
また、上記の実施例１、２では、追加用データとして、予測データよりも過去のデータを使用しているが、例えば、リアルタイム処理ではなく、バッチ処理で予測データの分類を行う場合などについては、予測データの時刻よりも後の時刻のデータを追加用データとして使用することとしてもよい。また、予測データの時刻の前のデータ及び後のデータの両方を追加用データとして使用してもよい。
【００６３】
（実施例３）
次に、実施例３について説明する。実施例３では、再識別処理において、通信サービスを提供するためのサーバ等の機器のログを再識別用データとして使用する。図９に、実施例３において再識別用データ格納部１０３に格納されているログデータの集合の例を示す。図９に示すように、当該ログデータは、"ホスト名"，"位置"，"時刻"，"優先度"，"メッセージ"のカラムを含む。ここでの"位置"は、"ホスト名"で示されるサーバが設置されている位置を示す。"時刻"はメッセージが出力された時刻を示す。実施例３では、文書分類装置１００のデータ入力部１０４から、このようなログデータが入力され、再識別用データ格納部１０３に格納される。
【００６４】
図１０は、実施例３における文書分類装置１００の処理手順を示すフローチャートである。図１０のステップＳ４０１〜Ｓ４０５は、実施例１で説明した図６のステップＳ２０１〜Ｓ２０５と同じである。
【００６５】
ステップＳ４０４での判定がＮｏとなった場合（再識別を行うと判定した場合）、ステップＳ４０６に進む。
【００６６】
ステップＳ４０６において、再識別部１１０は、再識別用データ格納部１０３に、予測データの発信時刻から過去３時間以内に優先度の高いログデータ（例えば，syslogではemerge, alert, crit）があるかどうかを判定する。
【００６７】
過去３時間以内に優先度の高いログデータがある場合には、識別結果を分類１として出力し（ステップＳ４０７）、該当のログデータがなければ識別結果を分類２として出力する（ステップＳ４０８）。ここで、優先度の高いログデータがある場合に「分類１」とし、ない場合に「分類２」とすることは、予め定めておくことである。
【００６８】
上記の例では、予測データの発信時刻から過去３時間以内に優先度の高いログデータがあるかどうかを判定しているが、「３時間」は一例に過ぎない。「３時間」以外の時間を用いてもよい。なお、前述したとおり、予測データよりも後のログデータを利用可能な場合には、予測データよりも後の所定時間内のログデータに関して、優先度の高いログデータがあるかどうかを判定することとしてもよい。
【００６９】
また、実施例１又は実施例２と、実施例３とを組み合わせて実施してもよい。例えば、実施例１、２の再識別処理を行っても分類できない場合（｜ｙ（ｘ）｜≦ｔとなる場合）に、ログデータを使用した分類を行うこととしてもよい。
【００７０】
上記のように、実施例１、２では、予測データ以外のデータとして、予測データの前後の同一ユーザのデータ、もしくは異なるユーザの同場所のデータを用いるので、分類の判定に用いる情報量を拡充でき、分類の明確性を向上させることができる。
【００７１】
また、例えば、あるイベントに関するあるユーザのデータの判定結果が曖昧である場合でも、「不満」と判定される他のログが同時刻や同場所で多く存在していれば、「不満らしさ」は増すと考えられる。また、同時刻や同場所で「不満」と判定された他のログが無ければ「不満らしさ」は減ると考えられる。このような観点で、実施例３では、予測データとは種類の異なるログを判定に使用することで、分類の明確性を向上させている。
【００７２】
（実施の形態のまとめ）
以上、説明したように、本実施の形態により、学習データから教師あり機械学習に基づき生成された識別関数を用いて予測データの分類を行うデータ分類装置であって、前記予測データに対する前記識別関数の出力値の絶対値が所定の閾値を超えるか否かを判定する判定手段と、前記判定手段により、前記出力値の絶対値が前記所定の閾値を超えないと判定された場合に、追加データを使用して前記予測データの分類を行う再識別手段とを備えるデータ分類装置が提供される。実施の形態で説明した文書分類装置１００は、当該データ分類装置の例である。
【００７３】
前記再識別手段は、例えば、前記追加データを前記予測データに加えて得られた追加済予測データに前記識別関数を適用することにより、前記予測データの分類を行う。また、前記追加データは、前記予測データを発信したユーザと同じユーザにより発信されたデータであってもよいし、前記追加データは、前記予測データを発信したユーザとは異なるユーザのデータであって、当該予測データが発信されたエリアと同じエリアから発信されたデータであってもよい。
【００７４】
前記再識別手段は、前記異なるユーザのデータを前記追加データとして使用する場合において、当該異なるユーザのデータの分類傾向に基づいて、前記識別関数を変更した関数を適用して分類を行うこととしてもよい。
【００７５】
前記再識別手段は、前記出力値の絶対値が前記所定の閾値を超えない場合に、所定の時間又は所定の回数の範囲内で、前記追加データを使用した前記予測データの分類を複数回、繰り返し行うこととしてもよい。
【００７６】
前記追加データは、例えば、通信サービスに係る装置のログデータであり、前記再識別手段は、前記データ分類装置における再識別用データ格納部の中に優先度の高いログデータが存在するか否かを判定することにより、前記分類を行うこととしてもよい。
【００７７】
前記追加データは、前記予測データが発信された時刻から、所定時間内に出力されたデータであることとしてもよい。
【００７８】
本実施の形態によれば、学習データから教師あり機械学習に基づき生成された識別関数を用いて予測データの分類を行う際に、識別境界付近に存在する分類の曖昧なデータについて、追加データを用いて再識別を行うので、明確に分類を行うことが可能となる。
【００７９】
以上、本実施の形態について詳述したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００８０】
１００  文書分類装置
１０１  学習データ格納部
１０２  予測データ格納部
１０３  再識別用データ格納部
１０４  データ入力部
１０５  形態素解析部
１０６  特徴ベクトル化部
１０７  識別関数生成部
１０８  識別関数格納部
１０９  識別部
１１０  再識別部
１１１  出力部
【図１】
0006563350.tif 000002
【図２】
0006563350.tif 000003
【図３】
0006563350.tif 000004
【図４】
0006563350.tif 000005
【図５】
0006563350.tif 000006
【図６】
0006563350.tif 000007
【図７】
0006563350.tif 000008
【図８】
0006563350.tif 000009
【図９】
0006563350.tif 000010
【図１０】
0006563350.tif 000011