(57)【要約】  分類装置は、テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出する。分類装置は、複数の連結文字列それぞれについて、テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出する。分類装置は、分類先の分布に基づいて、複数の連結文字列から特徴語を選択し、テキストデータが分類される分類カテゴリと特徴語とを対応付けた分類規則を生成する。
2020044558.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出し、
前記複数の連結文字列それぞれについて、前記テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、前記複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出し、
前記分類先の分布に基づいて、前記複数の連結文字列から特徴語を選択し、
前記テキストデータが分類される分類カテゴリと前記特徴語とを対応付けた分類規則を生成する
処理を実行させることを特徴とする分類規則生成プログラム。
【請求項２】
前記複数の連結文字列それぞれについて、当該連結文字列が前記複数のテキストデータ内に出現する出現頻度を算出し、
前記複数の連結文字列それぞれについて算出された前記分類先の分布に基づいて、前記複数の連結文字列それぞれの前記出現頻度を補正する、処理を前記コンピュータに実行させ、
前記選択する処理は、前記複数の連結文字列それぞれの補正後の出現頻度に基づき、前記特徴語を選択する、請求項１に記載の分類規則生成プログラム。
【請求項３】
前記算出する処理は、前記複数の連結文字列それぞれについて、補正前の前記出現頻度および前記分類先の分布に基づいてエントロピーを算出し、
前記補正する処理は、前記複数の連結文字列それぞれの前記出現頻度を前記エントロピーに基づき補正することを特徴とする請求項２に記載の分類規則生成プログラム。
【請求項４】
前記複数の連結文字列それぞれの補正後の出現頻度に基づき、前記テキストデータを分割する位置を特定し、
特定された位置に基づき、前記複数の連結文字列のいずれかが含まれるように前記テキストデータを分割して、複数の分割文字列を抽出する、処理を前記コンピュータに実行させ、
前記選択する処理は、前記複数の分割文字列のうち、前記出現頻度が閾値以上かつ前記エントロピーが閾値以下の分割文字列を前記特徴語として選択することを特徴とする請求項３に記載の分類規則生成プログラム。
【請求項５】
業務ログが発生した場合に、前記業務ログに含まれる前記特徴語を特定し、
前記分類規則を参照し、特定した前記特徴語と対応付けられる前記分類カテゴリを特定し、
特定した前記分類カテゴリに前記業務ログを分類する、処理を前記コンピュータに実行させることを特徴とする請求項１から４のいずれか一つに記載の分類規則生成プログラム。
【請求項６】
コンピュータが、
テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出し、
前記複数の連結文字列それぞれについて、前記テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、前記複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出し、
前記分類先の分布に基づいて、前記複数の連結文字列から特徴語を選択し、
前記テキストデータが分類される分類カテゴリと前記特徴語とを対応付けた分類規則を生成する
処理を実行することを特徴とする分類規則生成方法。
【請求項７】
テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出する抽出部と、
前記複数の連結文字列それぞれについて、前記テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、前記複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出する算出部と、
前記分類先の分布に基づいて、前記複数の連結文字列から特徴語を選択する選択部と、
前記テキストデータが分類される分類カテゴリと前記特徴語とを対応付けた分類規則を生成する生成部と
を有することを特徴とする分類規則生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分類規則生成プログラム、分類規則生成方法および分類規則生成装置に関する。
【背景技術】
【０００２】
コンピュータで使用中のアプリケーションやウィンドウタイトル、予定表のスケジュールタイトル、送受信メールのタイトルなどの業務ログを、顧客対応や商品企画などのように、その業務ログが記録されたときに行っていた業務内容に分類することが行われている。例えば、業務内容に対応付けられた各テキストデータを分割して部分文字列を抽出し、出現頻度が最も多い部分文字列を業務内容の特徴語として対応付ける。【０００３】
一例を挙げると、「商品企画」で使用された複数のテキストそれぞれについて部分文字列を抽出し、出現頻度が最も多い部分文字列「議事録」を特定する。そして、「特徴語（議事録）、業務内容（商品企画）」を分類規則として生成する。その後、新たに発生した業務ログに「議事録」が含まれる場合、当該業務ログを「商品企画」に分類する。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Rie  Kubota  Ando、Lillian  Lee、“Mostly-Unsupervised  Statistical  Segmentation  of  Japanese  Kanji  Sequences”、２００３年  Cambridge  University  Press
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記技術で生成された分類規則は、テキストデータから得られる文字列による分類であり、その後の分類に適したものではないので、分類精度が低い。例えば、文字列「定例会」は多くの業務ログに出現するが、「定例会」を含むか否かの分類規則では業務内容までを特定できない。【０００６】
なお、分類に適した語句を集めた辞書を人手で事前に用意する手法も考えられるが、業務ログ内のテキストではその業務特有の表現、その略称、通称が多く、それらを網羅することは困難であり、現実的ではない。【０００７】
一つの側面では、分類精度が高い分類規則を生成することができる分類規則生成プログラム、分類規則生成方法および分類規則生成装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の案では、分類規則生成プログラムは、コンピュータに、テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出する処理を実行させる。分類規則生成プログラムは、コンピュータに、前記複数の連結文字列それぞれについて、前記テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、前記複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出する処理を実行させる。分類規則生成プログラムは、コンピュータに、前記分類先の分布に基づいて、前記複数の連結文字列から特徴語を選択する処理を実行させる。分類規則生成プログラムは、コンピュータに、前記テキストデータが分類される分類カテゴリと前記特徴語とを対応付けた分類規則を生成する処理を実行させる。
【発明の効果】
【０００９】
一つの側面では、分類精度が高い分類規則を生成することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１にかかる分類装置の全体構成例を説明する図である。
【図２】図２は、実施例１にかかる分類装置の機能構成を示す機能ブロック図である。
【図３】図３は、業務ログＤＢに記憶される業務ログの例を示す図である。
【図４】図４は、業務分類ＤＢに記憶される分類情報の一例を示す図である。
【図５】図５は、文字列ＤＢに記憶される情報の例を示す図である。
【図６】図６は、形態素解析の処理例を説明する図である。
【図７】図７は、出現頻度の計算および出現頻度の補正を説明する図である。
【図８】図８は、出現頻度の補正結果を説明する図である。
【図９】図９は、補正後の出現頻度に基づく文字列の境界の特定を説明する図である。
【図１０】図１０は、補正後の出現頻度に基づくテキスト分割を説明する図である。
【図１１】図１１は、分類規則の生成例を説明する図である。
【図１２】図１２は、出現頻度処理の流れを示すフローチャートである。
【図１３】図１３は、規則生成処理の流れを示すフローチャートである。
【図１４】図１４は、ハードウェア構成例を説明する図である。
【発明を実施するための形態】
【００１１】
以下に、本発明にかかる分類規則生成プログラム、分類規則生成方法および分類規則生成装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【実施例１】
【００１２】
［全体構成］
図１は、実施例１にかかる分類装置１０の全体構成例を説明する図である。図１に示す分類装置１０は、ログ情報などのテキストデータを分割して特徴語を抽出し、特徴語と予め用意されたカテゴリとを対応付ける業務分類モデルを生成し、生成した業務分類モデルにしたがって、ログ情報をカテゴリに分類する分類規則生成装置の一例である。【００１３】
具体的には、図１に示すように、分類装置１０は、業務分類モデルに適用する分類規則を学習する学習器と、学習器による学習結果を適用した分類器を有する。例えば、分類装置１０は、メール、予定、電話などの業務データや、ウィンドウタイトル、アプリケーションファイルなどの操作ログをログ情報として収集する。そして、分類装置１０の学習器は、ログ情報に含まれるテキストデータを単語に分割し、連続するＮ語の文字列（単語列）の出現頻度を計算する。【００１４】
そして、分類装置１０の学習器は、各文字列が業務ログに出現する場合の業務内容の分類先の分布（ばらつき）を計算し、出現頻度を補正する。すなわち、学習器は、ばらつきの大きい文字列の出現頻度を下げる。その後、分類装置１０の学習器は、補正後の各文字列の出現頻度をもとにテキストデータの分割単位を決定し、決定した分割単位で分割された文字列から分類に適した文字列を抽出して、分類規則に採用する。例えば、学習器は、分類規則「特徴語、カテゴリ」として、「見積もり、顧客対応」や「出張申請、事務処理」などを生成する。【００１５】
分類装置１０の分類器は、このようにして生成された分類規則を適用した業務分類モデルを構築し、新たな発生する業務データや操作ログを分類規則にしたがってカテゴリに分類する。例えば、分類器は、ウィンドウタイトルに「見積もり」が含まれる業務ログをカテゴリ「顧客対応」に分類する。【００１６】
また、管理者などのユーザは、分類結果を学習器に定期的にフィードバックする。そして、分類装置１０の学習器は、上述した学習を定期的に実行し、分類規則を更新する。例えば、学習器は、フィードバックにしたがって新たな学習を繰り返すことで、分類規則「特徴語、カテゴリ」として「ＡＢＣ、顧客対応」や「ＸＹシステム、顧客対応」などを新たに追加する。したがって、分類装置１０は、分類精度が高い分類規則を生成することができる。【００１７】
［機能構成］
図２は、実施例１にかかる分類装置１０の機能構成を示す機能ブロック図である。図２に示すように、分類装置１０は、通信部１１、記憶部１２、制御部２０を有する。【００１８】
通信部１１は、他の装置との間の通信を制御する処理部であり、例えば通信インタフェースなどである。例えば、通信部１１は、業務データや操作ログなどのログ情報を他の装置から受信し、分類結果などを管理端末などに送信する。【００１９】
記憶部１２は、データや制御部２０が実行するプログラムなどを記憶する記憶装置の一例であり、例えばハードディスクやメモリなどである。記憶部１２は、業務ログＤＢ１３、業務分類ＤＢ１４、文字列ＤＢ１５、分類規則ＤＢ１６を記憶する。【００２０】
業務ログＤＢ１３は、学習対象である業務データや操作ログなどのログ情報を記憶するデータベースである。ここで記憶されるログ情報は、テキストデータであり、管理者が定期的に格納することもでき、制御部２０が取得して格納することもできる。【００２１】
図３は、業務ログＤＢ１３に記憶される業務ログの例を示す図である。図３に示すように、業務ログＤＢ１３は、送受信メールタイトルなどの業務ログ、アプリケーションファイルやウィンドウタイトルなどの操作ログ、スケジューラ等によって生成される予定表などを記憶する。業務ログは、ログが作成された時刻を示す「作成時刻」と、ログのファイル名である「ファイル名」とが対応付けられたログ情報である。図３の例では、業務ログとして、９：００：００に作成された「Ｘプロ定例会＿議事録」が業務ログとして格納されていることを示す。【００２２】
操作ログは、操作の開始と終了を示す「開始時刻、終了時刻」と、操作対象を示す「ウィンドウタイトル」と、操作対象を起動するプロセスを示す「起動プロセス」とが対応付けられたログ情報である。図３の例では、９：３５：０６から９：３８：４３の間、ＢＢＢプロセスによって起動されて、ユーザによって操作された「商談報告資料．ｂｂｂ」が業務ログとして格納されていることを示す。【００２３】
予定表は、予定の開始と終了を示す「開始時刻、終了時刻」と予定の内容を示す「件名」とを対応付けたログ情報である。図３の例では、９：３０：００に開始して、１０：３０：００に終了する「部会」が業務ログとして格納されていることを示す。【００２４】
業務分類ＤＢ１４は、分類先のカテゴリと分類済みの業務ログとを対応付けて記憶するデータベースである。図４は、業務分類ＤＢ１４に記憶される分類情報の一例を示す図である。図４に示すように、業務分類ＤＢ１４は、「分類カテゴリ、該当ログ」を対応付けて記憶する。「分類カテゴリ」は、分類先となるカテゴリを示し、ユーザ等により任意に設定変更することができる。「該当ログ」は、カテゴリに分類された業務ログの一覧である。【００２５】
図４の例では、業務ログ「商談報告資料．ｂｂｂ」が分類カテゴリ「顧客対応」に分類されたことを示し、業務ログ「Ｘプロ定例会＿議事録」が分類カテゴリ「商品企画」に分類されたことを示す。なお、分類カテゴリの例としては、クライアントとの打ち合わせや資料作成に該当する「顧客対応」、新商品のための調査や検討会議などに該当する「商品企画」、商品の設計・開発・テストなどに該当する「設計・開発」、商品の販売イベントの企画や実施などに該当する「拡販」がある。また、部会や予算管理などに該当する「職場会議」、出張精算や商談状況登録などに該当する「事務処理」、講習会参加やｅ−Ｌｅａｒｎｉｎｇなどに該当する「教育」、いずれにも該当しない「その他」などがある。【００２６】
文字列ＤＢ１５は、業務ログから抽出された文字列の出現頻度に関する情報を記憶するデータベースである。ここで記憶される情報は、制御部２０によって生成される。図５は、文字列ＤＢ１５に記憶される情報の例を示す図である。図５に示すように、文字列ＤＢ１５は、「文字列（ｗ）、出現頻度（Ｆ（ｗ））、補正後出現頻度（Ｆｅ（ｗ））」を対応付けて記憶する。【００２７】
「文字列（ｗ）」は、制御部２０によって抽出される文字列であり、「出現頻度（Ｆ（ｗ））」は、学習対象である全業務ログにおける文字列の出現頻度であり、「補正後出現頻度（Ｆｅ（ｗ））」は、制御部２０によって補正された文字列の出現頻度である。図５の例では、文字列「Ｘプロ定例会」における業務ログ全体の出現頻度が「６」回で、制御部２０によって「２．３５」回に補正されたことを示す。各項目の算出手法等については後述する。【００２８】
分類規則ＤＢ１６は、制御部２０によって生成される分類規則を記憶するデータベースである。具体的には、分類規則ＤＢ１６は、文字列と分類先のカテゴリとを対応付けて記憶する。なお、ここで記憶される分類規則は、後述する制御部２０によって生成され、業務分類モデルに適用されて、業務ログの分類に使用される。【００２９】
制御部２０は、分類装置１０全体の処理を司る処理部であり、例えばプロセッサなどである。この制御部２０は、学習部３０と分類部６０を有する。なお、学習部３０と分類部６０は、プロセッサなどが有する電子回路やプロセッサなどが実行するプロセスの一例である。【００３０】
学習部３０は、出現頻度処理部４０と規則処理部５０とを有し、業務ログと業務ログに出現する文字列の出現頻度との関係を学習し、分類規則を生成する処理部である。出現頻度処理部４０は、形態素解析部４１、頻度算出部４２、頻度補正部４３を有し、業務ログと業務ログに出現する文字列の出現頻度との関係を抽出する処理部である。【００３１】
形態素解析部４１は、各業務ログの各テキストデータを単語に分割し、連続するＮ語（Ｎは任意の自然数）を連結させた連結文字列（以下、単に文字列と記載する場合がある）を抽出する処理部である。具体的には、形態素解析部４１は、一般的な形態素解析の手法を用いて、テキストデータを単語に分割する。そして、形態素解析部４１は、抽出された単語から、連続する２語ごとに連結文字列、３語ごとの連結文字列、４語ごとの連結文字列、５語ごとの連結文字列それぞれを抽出し、頻度算出部４２に出力する。【００３２】
図６は、形態素解析の処理例を説明する図である。図６の例では、学習対象の業務ログのテキストデータが「Ｘプロ定例会＿議事録．ｘｘｘ」である例で説明する。図６に示すように、形態素解析部４１は、テキストデータ「Ｘプロ定例会＿議事録．ｘｘｘ」を単語分割し、「Ｘ」、「プロ」、「定例」、「会」、「＿」、「議事」、「録」、「．」、「ｘｘｘ」を抽出する。【００３３】
続いて、形態素解析部４１は、抽出された単語から、連続する２語（Ｎ＝２）を順次組み合わせた文字列（単語列）を生成する。すなわち、形態素解析部４１は、「Ｘプロ」、「プロ定例」、「定例会」、「会＿」、「＿議事」、「議事録」、「録．」、「．ｘｘｘ」を生成する。【００３４】
同様に、形態素解析部４１は、抽出された単語から、連続する３語（Ｎ＝３）を順次組み合わせた文字列を生成する。すなわち、形態素解析部４１は、「Ｘプロ定例」、「プロ定例会」、「定例会＿」、「会＿議事」、「＿議事録」、「議事録．」、「録．ｘｘｘ」を生成する。【００３５】
同様に、形態素解析部４１は、抽出された単語から、連続する４語（Ｎ＝４）を順次組み合わせた文字列を生成する。すなわち、形態素解析部４１は、「Ｘプロ定例会」、「プロ定例会＿」、「定例会＿議事」、「会＿議事録」、「＿議事録．」、「議事録．ｘｘｘ」を生成する。【００３６】
同様に、形態素解析部４１は、抽出された単語から、連続する５語（Ｎ＝５）を順次組み合わせた文字列を生成する。すなわち、形態素解析部４１は、「Ｘプロ定例会＿」、「プロ定例会＿議事」、「定例会＿議事録」、「会＿議事録．」、「＿議事録．ｘｘｘ」を生成する。【００３７】
頻度算出部４２は、形態素解析部４１により生成された各文字列の出現頻度を算出する処理部である。具体的には、頻度算出部４２は、連続するＮ語として抽出された各文字列が、学習対象の全業務ログにおいて何回出現するかを計数し、頻度補正部４３に出力する。例えば、頻度算出部４２は、文字列「Ｘプロ」が業務ログのテキストデータ「Ｘプロ定例会＿議事録．ｘｘｘ」、「Ｘプロ食事会」、「Ｘプロメンバー議事録．ｙｙｙ」に出現する場合、文字列「Ｘプロ」の出現頻度を「３回」と計数する。このようにして、頻度算出部４２は、各業務ログのテキストデータからＮ語として抽出された各文字列の出現頻度を算出する。なお、頻度算出部４２は、各文字列と出現頻度とを対応付けて文字列ＤＢ１５に格納する。【００３８】
頻度補正部４３は、各文字列を含む業務ログの分類先を集計し、そのばらつきの指標としてエントロピーを計算し、各文字列の出現頻度を補正する処理部である。具体的には、頻度補正部４３は、現状の分類規則に沿った分類手法により、各文字列がどの分類カテゴリに分類されるのかを特定し、分類先の分布を特定する。そして、頻度補正部４３は、多くの分類カテゴリに分類されている文字列の出現頻度を下げる補正を行う。すなわち、頻度補正部４３は、分類先がばらついている文字列の出現頻度を下げる。【００３９】
図７は、出現頻度の計算および出現頻度の補正を説明する図である。図７では、Ｎが２のときの文字列の出現頻度を例にして説明する。図７に示すように、頻度算出部４２によって、「文字列（ｗ）、出現頻度（Ｆ（ｗ））」として「Ｘプロ、８」、「プロ定例、１０」、「定例会、１４４」、「会＿、８８」、「＿議事、３７」、「議事録、９４」、「録．、２２」、「．ｘｘｘ、５４０」が抽出されたとする。【００４０】
この状態で、まず、頻度補正部４３は、業務分類ＤＢ１４や文字列ＤＢ１５を参照し、各文字列の分類先の分布を特定する。例えば、頻度補正部４３は、文字列「定例会」を含む業務ログ（テキストデータ）のうち、分類カテゴリ「職場活動」に分類される業務ログが「６６個」、分類カテゴリ「商品企画」に分類される業務ログが「２０個」、分類カテゴリ「拡販」に分類される業務ログが「１３個」、分類カテゴリ「設計・開発」に分類される業務ログが「７個」、分類カテゴリ「顧客対応」に分類される業務ログが「４個」、分類カテゴリ「その他」に分類される業務ログが「４個」であることを特定する。【００４１】
次に、頻度補正部４３は、式（１）を用いて、文字列（ｗ）を含む業務ログの分類先がｃとなる割合をもとにエントロピーを算出する。例えば、図７の定例会を例にして説明すると、「ｗ」が文字列の「定例会（１４４）」であり、「ｃ」が業務分類カテゴリの「職場企画（６６）、商品企画（２０）、拡販（１３）、設計・開発（７）、顧客対応（４）、その他（４）」のそれぞれとなる。【００４２】
【数１】
2020044558.tif 000003
【００４３】
その後、頻度補正部４３は、式（２）を用いて、各文字列について算出された出現頻度を補正する。式（２）における「Ｆ（ｗ）」は、頻度算出部４２によって算出された出現頻度であり、「ｂ」は、１．０より大きい値であり、ここでは８．０とする。図７の「定例会」を例にして説明すると、定例会の補正後の出現頻度は、「Ｆｅ（ｗ）＝１４４×８．０−１．２７６＝８．０３１」と算出される。このようにして、頻度補正部４３は、連続するＮ語として抽出された各文字列について、分類先の分布の特定、エントロピーの算出、出現頻度の補正を実行する。そして、頻度補正部４３は、補正した出現頻度を文字列ＤＢ１５に格納する。【００４４】
【数２】
2020044558.tif 000004
【００４５】
ここで、文字列に対する出現頻度および補正後出現頻度の集計結果の例を説明する。図８は、出現頻度の補正結果を説明する図である。図８に示すように、文字列「Ｘプロ」の出現頻度が「８」から「１．２３」に補正され、文字列「プロ定例」の出現頻度が「１０」から「１．４１」に補正され、文字列「Ｘプロ定例」の出現頻度が「６」から「２．３５」に補正され、文字列「プロ定例会」の出現頻度が「１０」から「１．４１」に補正される。すなわち、単語「プロ」を含む文字列において、「Ｘプロ」「プロ定例」「プロ定例会」よりも「Ｘプロ定例」は出現頻度が低いが分類先の分布のばらつき（エントロピー）が小さいため補正後出現頻度は高くなる。【００４６】
図２に戻り、規則処理部５０は、テキスト分割部５１と規則生成部５２とを有し、出現頻度処理部４０によって生成された補正後出現頻度を用いて、各業務ログのテキストデータから分類に適する文字列を抽出し、分類規則を生成する処理部である。【００４７】
テキスト分割部５１は、補正後の出現頻度を用いて、学習データである業務ログ（テキストデータ）を単語に分割する処理部である。具体的には、テキスト分割部５１は、文字列の補正後の出現頻度を基に、テキストデータの分割単位を探索する。そして、テキスト分割部５１は、探索された単位でテキストデータを分割し、分割結果を規則生成部５２に出力する。【００４８】
図９は、補正後の出現頻度に基づく文字列の境界の特定を説明する図である。図９では、Ｎが３のときの単語分割例を示している。図９に示すように、まず、テキスト分割部５１は、テキストデータ「Ｘプロ定例会＿議事録．ｘｘｘ」を単語に分割し、「Ｘ」、「プロ」、「定例」、「会」、「＿」、「議事」、「録」、「．」、「ｘｘｘ」を抽出する。【００４９】
続いて、テキスト分割部５１は、Ｎ＝３のときの文字列及び補正後出現頻度を文字列ＤＢ１５から読み込み、文字列の境界を探索する。具体的には、テキスト分割部５１は、Ｎ＝３のときの各文字列の境界について、その両側の文字列の頻度と境界をまたぐ文字列の頻度を比較し、文字列の境界を決定する。【００５０】
例えば、図９に示すように、テキスト分割部５１は、（１）文字列「Ｘプロ定例」の補正後出現頻度「２．３５」、（２）文字列「会＿議事」の補正後出現頻度「２．８７」、（３）文字列「プロ定例会」の補正後出現頻度「１．４１」、（４）文字列「定例会＿」の補正後出現頻度「１．５８」を取得する。そして、テキスト分割部５１は、先頭の単語「Ｘ」から３（Ｎ＝３）単語目の単語「定例」と４単語目の単語「会」との境界を注目境界１とする。【００５１】
続いて、テキスト分割部５１は、注目境界１の両側となる（１）の補正後出現頻度「２．３５」および（２）の補正後出現頻度「２．８７」と、注目境界１を跨る（３）の補正後出現頻度「１．４１」および（４）の補正後出現頻度「１．５７」を特定する。そして、テキスト分割部５１は、境界をまたぐ文字列の出現頻度の方が小さくなる割合（スコア）を算出する。すなわち、テキスト分割部５１は、（１）＞（３）、（２）＞（３）、（１）＞（４）、（２）＞（４）であることから、割合「４／４＝１」と算出する。【００５２】
このようにして、テキスト分割部５１は、Ｎ＝３のときの文字列の各境界について、上記手法によるスコアを算出する。さらに、テキスト分割部５１は、テキストデータ「Ｘプロ定例会＿議事録．ｘｘｘ」について、Ｎが２から５のときの各境界についても算出する。そして、テキスト分割部５１は、Ｎが２から５で出現した各境界について、Ｎが２から５のそれぞれについて算出されたスコアの平均値を算出する。例えば、テキスト分割部５１は、図９に示した注目境界１のスコアについて、Ｎが２から５のそれぞれで算出し、算出したスコアの平均値「０．６７」と算出する。【００５３】
次に、テキスト分割部５１は、テキストデータにおける各境界について算出された上記スコアに基づいて、分割位置を決定する。図１０は、補正後の出現頻度に基づくテキスト分割を説明する図である。【００５４】
図１０の（ａ）に示すように、テキスト分割部５１は、テキストデータ「Ｘプロ定例会＿議事録．ｘｘｘ」について、単語「Ｘ」と「プロ」との間の分割されやすさを表すスコア「０．５０」、単語「プロ」と「定例」の間の分割されやすさを表すスコア「０．５０」、単語「定例」と「会」の間の分割されやすさを表すスコア「０．６７」のように、図９で算出した境界を跨ぐ文字列の補正後出現頻度の割合に基づき、先頭から文字列を生成したときの割合を特定する。そして、テキスト分割部５１は、条件１「スコアが閾値（例えば０．５）を超える」または条件２「両隣の境界のスコアより高い」のいずれかを満たす境界を分割境界とする。【００５５】
例えば、図１０の（ａ）の例では、テキスト分割部５１は、単語「定例」と単語「会」との間のスコアが「０．６７」で条件１を満たすので、分割境界に決定する。また、テキスト分割部５１は、単語「＿」と単語「議事」との間のスコアが「０．７５」で条件１を満たすので、分割境界に決定する。同様に、テキスト分割部５１は、単語「録」と単語「．」との間のスコアが「０．３３」で条件２を満たすので、分割境界に決定する。そして、テキスト分割部５１は、決定した分割境界に関する情報を規則生成部５２に出力する。【００５６】
このように、補正後出現頻度およびスコアを用いることで、単純な出現頻度で決定される分割境界とは異なる分割境界となる。例えば、図１０の（ｂ）に示すように、出現頻度が閾値（例えば０．５）を超える境界を分割境界とする場合、単語「Ｘ」と単語「プロ」の間、単語「プロ」と単語「定例」の間、単語「＿」と単語「議事」の間、単語「録」と単語「．」の間が分割境界と決定される。【００５７】
図２に戻り、規則生成部５２は、テキスト分割部５１により決定された分割境界に基づいて、分割文字列を抽出し、抽出した分割文字列の中から分類カテゴリに適した分割文字列を決定する処理部である。具体的には、規則生成部５２は、図１０の（ａ）で示した手法で決定された分割境界に従って、学習データであるテキストデータ（業務ログ）を分割し、該当する分割文字列を抽出する。そして、規則生成部５２は、上述したエントロピーや補正前の出現頻度に基づき、抽出した複数の分割文字列の中から最も分類に適した分割文字列を特定する。その後、規則生成部５２は、特定した分割文字列と、学習データであるテキストデータが分類される分類カテゴリと、を対応付けた分類規則を生成して分類規則ＤＢ１６に格納する。【００５８】
図１１は、分類規則の生成例を説明する図である。図１１に示すように、規則生成部５２は、図１０で決定された分割境界にしたがって、学習データである業務ログ「Ｘプロ定例会＿議事録．ｘｘｘ」を、分割文字列「Ｘプロ定例」、「会＿」、「議事録」、「．ｘｘｘ」に分割する。続いて、規則生成部５２は、分割文字列「Ｘプロ定例会」、「会＿」、「議事録」、「．ｘｘｘ」それぞれの補正前の出現頻度とエントロピーを出現頻度処理部４０や文字列ＤＢ１５から取得する。【００５９】
そして、規則生成部５２は、条件を満たす分割文字列を、学習データの特徴語として抽出する。図１１の例では、規則生成部５２は、分割文字列「Ｘプロ定例」について出現頻度「６」とエントロピー「０．４５」、分割文字列「会＿」について出現頻度「８８」とエントロピー「１．４４」、分割文字列「議事録」について出現頻度「９４」とエントロピー「１．２３」、分割文字列「．ｘｘｘ」について出現頻度「５４０」とエントロピー「１．３８」を取得する。そして、規則生成部５２は、条件「出現頻度＞３かつエントロピー＜０．５」を満たす分割文字列「Ｘプロ定例」を特定する。その後、規則生成部５２は、学習データである業務ログ「Ｘプロ定例会＿議事録．ｘｘｘ」の分類カテゴリ「商品企画」を業務分類ＤＢ１４から特定する。そして、規則生成部５２は、分割文字列「Ｘプロ定例会」と分類カテゴリ「商品企画」とを対応付けた分類規則を生成する。【００６０】
図２に戻り、分類部６０は、分類規則ＤＢ１６にしたがって業務ログを分類する処理部である。具体的には、分類部６０は、新たに発生した分類対象の業務ログを取得し、分類規則ＤＢ１６に記憶される分類規則の分割文字列が含まれるか否かを判定する。そして、分類部６０は、分類対象の業務ログに含まれる分割文字列と対応付けられる分類カテゴリを、分類対象の業務ログに分類し、その結果を業務分類ＤＢ１４に格納する。【００６１】
例えば、分類部６０は、分類対象の業務ログに「Ｙ展定例」が含まれている場合、図１１に示す分類規則にしたがって、分類対象の業務ログを「拡販」に分類する。同様に、分類部６０は、分類対象の業務ログに「Ｚシス管理者定例」が含まれている場合、図１１に示す分類規則にしたがって、分類対象の業務ログを「設計・開発」に分類する。なお、分類部６０は、１つの分類対象の業務ログに、分類規則にある複数の分割文字列が含まれる場合、いずれかの分割文字列を選択してもよく、１つの分類対象の業務ログに複数の分類カテゴリを対応付けることもできる。【００６２】
［処理の流れ］
次に、上述した各処理の流れについて説明する。ここでは、出現頻度処理の流れと規則生成処理の流れとについて説明する。なお、各処理や各処理内のステップは、矛盾のない範囲内で処理順番等を入れ替えることができる。【００６３】
（出現頻度処理の流れ）
図１２は、出現頻度処理の流れを示すフローチャートである。図１２に示すように、出現頻度処理部４０は、業務ログをすべて取得し（Ｓ１０１）、全業務ログについて単語の分割処理が実行されたか否かを判定する（Ｓ１０２）。【００６４】
ここで、出現頻度処理部４０は、単語分割について未処理の業務ログが存在する場合（Ｓ１０２：Ｎｏ）、業務ログを１つ取り出し（Ｓ１０３）、業務ログを単語に分割し（Ｓ１０４）、連続するＮ語の文字列を抽出する（Ｓ１０５）。【００６５】
一方、出現頻度処理部４０は、全業務ログについて単語分割処理が終了した場合（Ｓ１０２：Ｙｅｓ）、抽出された文字列をすべて取得する（Ｓ１０６）。続いて、出現頻度処理部４０は、全文字列について出現頻度の補正処理が完了したか否かを判定する（Ｓ１０７）。【００６６】
そして、出現頻度処理部４０は、出現頻度の補正処理について未処理に業務ログが存在する場合（Ｓ１０７：Ｎｏ）、文字列を１つ取り出し（Ｓ１０８）、文字列を含む業務ログの分類先を業務分類ＤＢ１４から取得する（Ｓ１０９）。その後、出現頻度処理部４０は、出現頻度の計算や補正後出現頻度を計算し、出現頻度を更新する（Ｓ１１０）。一方、出現頻度処理部４０は、全業務ログについて出現頻度処理が終了した場合（Ｓ１０７：Ｙｅｓ）、処理を終了する。【００６７】
（規則生成処理の流れ）
図１３は、規則生成処理の流れを示すフローチャートである。図１３に示すように、規則処理部５０は、業務ログをすべて取得し（Ｓ２０１）、全業務ログについて文字列の抽出処理が実行されたか否かを判定する（Ｓ２０２）。【００６８】
ここで、規則処理部５０は、文字列の抽出処理について未処理の業務ログが存在する場合（Ｓ２０２：Ｎｏ）、業務ログを１つ取り出し（Ｓ２０３）、補正後の出現頻度を基に業務ログを分割し、各分割文字列を抽出する（Ｓ２０４）。【００６９】
一方、規則処理部５０は、全業務ログについて文字列の抽出処理が終了した場合（Ｓ２０２：Ｙｅｓ）、抽出された分割文字列をすべて取得する（Ｓ２０５）。続いて、文字列の抽出処理は、全分割文字列について分類規則の生成処理が完了したか否かを判定する（Ｓ２０６）。【００７０】
そして、規則処理部５０は分類規則の生成処理について未処理に業務ログが存在する場合（Ｓ２０６：Ｎｏ）、分割文字列を１つ取り出し（Ｓ２０７）、分割文字列を含む業務ログの出現頻度と分類先の分布を各ＤＢから取得する（Ｓ２０８）。その後、規則処理部５０は、処理対象の分割文字列が条件を満たす場合（Ｓ２０９：Ｙｅｓ）、分類規則に追加し（Ｓ２１０）、Ｓ２０６以降を繰り返し、処理対象の分割文字列が条件を満たさない場合（Ｓ２０９：Ｎｏ）、Ｓ２１０を実行することなく、Ｓ２０６以降を繰り返す。一方、規則処理部５０は、全業務ログについて分類規則の生成処理が終了した場合（Ｓ２０６：Ｙｅｓ）、処理を終了する。【００７１】
［効果］
上述したように、分類装置１０は、各文字列の出現頻度を、その文字列を含む業務ログの分類先の分布をもとに補正し、その出現頻度情報を利用してテキスト分割を行うことにより、後段の業務内容分類に適した単位の文字列を特徴語として取得することができ、その特徴語を使った規則を使うことによって分類精度が向上する。すなわち、分類装置１０は、テキストデータの分割の段階で後段の分類を考慮し、各文字列による分類先の分布（ばらつき）を利用して特徴語を抽出することにより、分類精度の高い分類規則を生成することができる。
【実施例２】
【００７２】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。【００７３】
［時刻情報の採用］
例えば、上記実施例における単語、文字列、分割文字列などの「出現頻度」は、「業務発生時間の総和（総業務時間）」と置き換えることもできる。【００７４】
［装置の分割］
上記実施例では、分類装置１０が分類規則の学習と学習後の分類とを実行する例を説明したが、これに限定されるものではなく、学習と学習後の分類とを別々の装置で実行することもできる。【００７５】
［システム］
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値などは、あくまで一例であり、任意に変更することができる。【００７６】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。【００７７】
［ハードウェア］
図１４は、ハードウェア構成例を説明する図である。図１４に示すように、分類装置１０は、通信装置１０ａ、ＨＤＤ（Hard  Disk  Drive）１０ｂ、メモリ１０ｃ、プロセッサ１０ｄを有する。また、図１４に示した各部は、バス等で相互に接続される。【００７８】
通信装置１０ａは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。ＨＤＤ１０ｂは、図２に示した機能を動作させるプログラムやＤＢを記憶する。【００７９】
プロセッサ１０ｄは、図２に示した各処理部と同様の処理を実行するプログラムをＨＤＤ１０ｂ等から読み出してメモリ１０ｃに展開することで、図２等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、分類装置１０が有する各処理部と同様の機能を実行する。具体的には、プロセッサ１０ｄは、出現頻度処理部４０と規則処理部５０等と同様の機能を有するプログラムをＨＤＤ１０ｂ等から読み出す。そして、プロセッサ１０ｄは、出現頻度処理部４０と規則処理部５０等と同様の処理を実行するプロセスを実行する。【００８０】
このように分類装置１０は、プログラムを読み出して実行することで分類方法を実行する情報処理装置として動作する。また、分類装置１０は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、分類装置１０によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。【００８１】
このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯ（Magneto−Optical  disk）、ＤＶＤ（Digital  Versatile  Disc）などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
【符号の説明】
【００８２】
１０  分類装置
１１  通信部
１２  記憶部
１３  業務ログＤＢ
１４  業務分類ＤＢ
１５  文字列ＤＢ
１６  分類規則ＤＢ
２０  制御部
３０  学習部
４０  出現頻度処理部
４１  形態素解析部
４２  頻度算出部
４３  頻度補正部
５０  規則処理部
５１  テキスト分割部
５２  規則生成部
６０  分類部
【図１】
2020044558.tif 000005
【図２】
2020044558.tif 000006
【図３】
2020044558.tif 000007
【図４】
2020044558.tif 000008
【図５】
2020044558.tif 000009
【図６】
2020044558.tif 000010
【図７】
2020044558.tif 000011
【図８】
2020044558.tif 000012
【図９】
2020044558.tif 000013
【図１０】
2020044558.tif 000014
【図１１】
2020044558.tif 000015
【図１２】
2020044558.tif 000016
【図１３】
2020044558.tif 000017
【図１４】
2020044558.tif 000018
【国際調査報告】
2020044558.tif 000019
2020044558.tif 000020
2020044558.tif 000021
2020044558.tif 000022