特表-20044558IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧
再表2020-44558分類規則生成プログラム、分類規則生成方法および分類規則生成装置
<>
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000005
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000006
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000007
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000008
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000009
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000010
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000011
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000012
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000013
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000014
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000015
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000016
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000017
  • 再表WO2020044558-分類規則生成プログラム、分類規則生成方法および分類規則生成装置 図000018
< >
(19)【発行国】日本国特許庁(JP)
【公報種別】再公表特許(A1)
(11)【国際公開番号】WO/0
(43)【国際公開日】2020年3月5日
【発行日】2021年4月30日
(54)【発明の名称】分類規則生成プログラム、分類規則生成方法および分類規則生成装置
(51)【国際特許分類】
   G06F 16/35 20190101AFI20210402BHJP
【FI】
   G06F16/35
【審査請求】有
【予備審査請求】未請求
【全頁数】22
【出願番号】特願2020-540004(P2020-540004)
(21)【国際出願番号】PCT/0/0
(22)【国際出願日】2018年8月31日
(81)【指定国】 AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JO,JP,KE,KG,KH,KN,KP,KR,KW,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】特許業務法人酒井国際特許事務所
(72)【発明者】
【氏名】野呂 智哉
(72)【発明者】
【氏名】馬場 謙介
(72)【発明者】
【氏名】福田 茂紀
(72)【発明者】
【氏名】大倉 清司
(72)【発明者】
【氏名】太田 唯子
(72)【発明者】
【氏名】毛利 隆夫
(72)【発明者】
【氏名】岩崎 靖
(72)【発明者】
【氏名】木田 祐太郎
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175FA03
(57)【要約】
分類装置は、テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出する。分類装置は、複数の連結文字列それぞれについて、テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出する。分類装置は、分類先の分布に基づいて、複数の連結文字列から特徴語を選択し、テキストデータが分類される分類カテゴリと特徴語とを対応付けた分類規則を生成する。
【特許請求の範囲】
【請求項1】
コンピュータに、
テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出し、
前記複数の連結文字列それぞれについて、前記テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、前記複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出し、
前記分類先の分布に基づいて、前記複数の連結文字列から特徴語を選択し、
前記テキストデータが分類される分類カテゴリと前記特徴語とを対応付けた分類規則を生成する
処理を実行させることを特徴とする分類規則生成プログラム。
【請求項2】
前記複数の連結文字列それぞれについて、当該連結文字列が前記複数のテキストデータ内に出現する出現頻度を算出し、
前記複数の連結文字列それぞれについて算出された前記分類先の分布に基づいて、前記複数の連結文字列それぞれの前記出現頻度を補正する、処理を前記コンピュータに実行させ、
前記選択する処理は、前記複数の連結文字列それぞれの補正後の出現頻度に基づき、前記特徴語を選択する、請求項1に記載の分類規則生成プログラム。
【請求項3】
前記算出する処理は、前記複数の連結文字列それぞれについて、補正前の前記出現頻度および前記分類先の分布に基づいてエントロピーを算出し、
前記補正する処理は、前記複数の連結文字列それぞれの前記出現頻度を前記エントロピーに基づき補正することを特徴とする請求項2に記載の分類規則生成プログラム。
【請求項4】
前記複数の連結文字列それぞれの補正後の出現頻度に基づき、前記テキストデータを分割する位置を特定し、
特定された位置に基づき、前記複数の連結文字列のいずれかが含まれるように前記テキストデータを分割して、複数の分割文字列を抽出する、処理を前記コンピュータに実行させ、
前記選択する処理は、前記複数の分割文字列のうち、前記出現頻度が閾値以上かつ前記エントロピーが閾値以下の分割文字列を前記特徴語として選択することを特徴とする請求項3に記載の分類規則生成プログラム。
【請求項5】
業務ログが発生した場合に、前記業務ログに含まれる前記特徴語を特定し、
前記分類規則を参照し、特定した前記特徴語と対応付けられる前記分類カテゴリを特定し、
特定した前記分類カテゴリに前記業務ログを分類する、処理を前記コンピュータに実行させることを特徴とする請求項1から4のいずれか一つに記載の分類規則生成プログラム。
【請求項6】
コンピュータが、
テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出し、
前記複数の連結文字列それぞれについて、前記テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、前記複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出し、
前記分類先の分布に基づいて、前記複数の連結文字列から特徴語を選択し、
前記テキストデータが分類される分類カテゴリと前記特徴語とを対応付けた分類規則を生成する
処理を実行することを特徴とする分類規則生成方法。
【請求項7】
テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出する抽出部と、
前記複数の連結文字列それぞれについて、前記テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、前記複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出する算出部と、
前記分類先の分布に基づいて、前記複数の連結文字列から特徴語を選択する選択部と、
前記テキストデータが分類される分類カテゴリと前記特徴語とを対応付けた分類規則を生成する生成部と
を有することを特徴とする分類規則生成装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分類規則生成プログラム、分類規則生成方法および分類規則生成装置に関する。
【背景技術】
【0002】
コンピュータで使用中のアプリケーションやウィンドウタイトル、予定表のスケジュールタイトル、送受信メールのタイトルなどの業務ログを、顧客対応や商品企画などのように、その業務ログが記録されたときに行っていた業務内容に分類することが行われている。例えば、業務内容に対応付けられた各テキストデータを分割して部分文字列を抽出し、出現頻度が最も多い部分文字列を業務内容の特徴語として対応付ける。
【0003】
一例を挙げると、「商品企画」で使用された複数のテキストそれぞれについて部分文字列を抽出し、出現頻度が最も多い部分文字列「議事録」を特定する。そして、「特徴語(議事録)、業務内容(商品企画)」を分類規則として生成する。その後、新たに発生した業務ログに「議事録」が含まれる場合、当該業務ログを「商品企画」に分類する。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Rie Kubota Ando、Lillian Lee、“Mostly-Unsupervised Statistical Segmentation of Japanese Kanji Sequences”、2003年 Cambridge University Press
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記技術で生成された分類規則は、テキストデータから得られる文字列による分類であり、その後の分類に適したものではないので、分類精度が低い。例えば、文字列「定例会」は多くの業務ログに出現するが、「定例会」を含むか否かの分類規則では業務内容までを特定できない。
【0006】
なお、分類に適した語句を集めた辞書を人手で事前に用意する手法も考えられるが、業務ログ内のテキストではその業務特有の表現、その略称、通称が多く、それらを網羅することは困難であり、現実的ではない。
【0007】
一つの側面では、分類精度が高い分類規則を生成することができる分類規則生成プログラム、分類規則生成方法および分類規則生成装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
第1の案では、分類規則生成プログラムは、コンピュータに、テキストデータを単語分割して得られる単語を連結した複数の連結文字列を抽出する処理を実行させる。分類規則生成プログラムは、コンピュータに、前記複数の連結文字列それぞれについて、前記テキストデータを含む複数のテキストデータそれぞれが分類される分類カテゴリを記憶する記憶部を参照し、前記複数のテキストデータのうち、当該連結文字列を含むテキストデータの分類先の分布を算出する処理を実行させる。分類規則生成プログラムは、コンピュータに、前記分類先の分布に基づいて、前記複数の連結文字列から特徴語を選択する処理を実行させる。分類規則生成プログラムは、コンピュータに、前記テキストデータが分類される分類カテゴリと前記特徴語とを対応付けた分類規則を生成する処理を実行させる。
【発明の効果】
【0009】
一つの側面では、分類精度が高い分類規則を生成することができる。
【図面の簡単な説明】
【0010】
図1図1は、実施例1にかかる分類装置の全体構成例を説明する図である。
図2図2は、実施例1にかかる分類装置の機能構成を示す機能ブロック図である。
図3図3は、業務ログDBに記憶される業務ログの例を示す図である。
図4図4は、業務分類DBに記憶される分類情報の一例を示す図である。
図5図5は、文字列DBに記憶される情報の例を示す図である。
図6図6は、形態素解析の処理例を説明する図である。
図7図7は、出現頻度の計算および出現頻度の補正を説明する図である。
図8図8は、出現頻度の補正結果を説明する図である。
図9図9は、補正後の出現頻度に基づく文字列の境界の特定を説明する図である。
図10図10は、補正後の出現頻度に基づくテキスト分割を説明する図である。
図11図11は、分類規則の生成例を説明する図である。
図12図12は、出現頻度処理の流れを示すフローチャートである。
図13図13は、規則生成処理の流れを示すフローチャートである。
図14図14は、ハードウェア構成例を説明する図である。
【発明を実施するための形態】
【0011】
以下に、本発明にかかる分類規則生成プログラム、分類規則生成方法および分類規則生成装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【実施例1】
【0012】
[全体構成]
図1は、実施例1にかかる分類装置10の全体構成例を説明する図である。図1に示す分類装置10は、ログ情報などのテキストデータを分割して特徴語を抽出し、特徴語と予め用意されたカテゴリとを対応付ける業務分類モデルを生成し、生成した業務分類モデルにしたがって、ログ情報をカテゴリに分類する分類規則生成装置の一例である。
【0013】
具体的には、図1に示すように、分類装置10は、業務分類モデルに適用する分類規則を学習する学習器と、学習器による学習結果を適用した分類器を有する。例えば、分類装置10は、メール、予定、電話などの業務データや、ウィンドウタイトル、アプリケーションファイルなどの操作ログをログ情報として収集する。そして、分類装置10の学習器は、ログ情報に含まれるテキストデータを単語に分割し、連続するN語の文字列(単語列)の出現頻度を計算する。
【0014】
そして、分類装置10の学習器は、各文字列が業務ログに出現する場合の業務内容の分類先の分布(ばらつき)を計算し、出現頻度を補正する。すなわち、学習器は、ばらつきの大きい文字列の出現頻度を下げる。その後、分類装置10の学習器は、補正後の各文字列の出現頻度をもとにテキストデータの分割単位を決定し、決定した分割単位で分割された文字列から分類に適した文字列を抽出して、分類規則に採用する。例えば、学習器は、分類規則「特徴語、カテゴリ」として、「見積もり、顧客対応」や「出張申請、事務処理」などを生成する。
【0015】
分類装置10の分類器は、このようにして生成された分類規則を適用した業務分類モデルを構築し、新たな発生する業務データや操作ログを分類規則にしたがってカテゴリに分類する。例えば、分類器は、ウィンドウタイトルに「見積もり」が含まれる業務ログをカテゴリ「顧客対応」に分類する。
【0016】
また、管理者などのユーザは、分類結果を学習器に定期的にフィードバックする。そして、分類装置10の学習器は、上述した学習を定期的に実行し、分類規則を更新する。例えば、学習器は、フィードバックにしたがって新たな学習を繰り返すことで、分類規則「特徴語、カテゴリ」として「ABC、顧客対応」や「XYシステム、顧客対応」などを新たに追加する。したがって、分類装置10は、分類精度が高い分類規則を生成することができる。
【0017】
[機能構成]
図2は、実施例1にかかる分類装置10の機能構成を示す機能ブロック図である。図2に示すように、分類装置10は、通信部11、記憶部12、制御部20を有する。
【0018】
通信部11は、他の装置との間の通信を制御する処理部であり、例えば通信インタフェースなどである。例えば、通信部11は、業務データや操作ログなどのログ情報を他の装置から受信し、分類結果などを管理端末などに送信する。
【0019】
記憶部12は、データや制御部20が実行するプログラムなどを記憶する記憶装置の一例であり、例えばハードディスクやメモリなどである。記憶部12は、業務ログDB13、業務分類DB14、文字列DB15、分類規則DB16を記憶する。
【0020】
業務ログDB13は、学習対象である業務データや操作ログなどのログ情報を記憶するデータベースである。ここで記憶されるログ情報は、テキストデータであり、管理者が定期的に格納することもでき、制御部20が取得して格納することもできる。
【0021】
図3は、業務ログDB13に記憶される業務ログの例を示す図である。図3に示すように、業務ログDB13は、送受信メールタイトルなどの業務ログ、アプリケーションファイルやウィンドウタイトルなどの操作ログ、スケジューラ等によって生成される予定表などを記憶する。業務ログは、ログが作成された時刻を示す「作成時刻」と、ログのファイル名である「ファイル名」とが対応付けられたログ情報である。図3の例では、業務ログとして、9:00:00に作成された「Xプロ定例会_議事録」が業務ログとして格納されていることを示す。
【0022】
操作ログは、操作の開始と終了を示す「開始時刻、終了時刻」と、操作対象を示す「ウィンドウタイトル」と、操作対象を起動するプロセスを示す「起動プロセス」とが対応付けられたログ情報である。図3の例では、9:35:06から9:38:43の間、BBBプロセスによって起動されて、ユーザによって操作された「商談報告資料.bbb」が業務ログとして格納されていることを示す。
【0023】
予定表は、予定の開始と終了を示す「開始時刻、終了時刻」と予定の内容を示す「件名」とを対応付けたログ情報である。図3の例では、9:30:00に開始して、10:30:00に終了する「部会」が業務ログとして格納されていることを示す。
【0024】
業務分類DB14は、分類先のカテゴリと分類済みの業務ログとを対応付けて記憶するデータベースである。図4は、業務分類DB14に記憶される分類情報の一例を示す図である。図4に示すように、業務分類DB14は、「分類カテゴリ、該当ログ」を対応付けて記憶する。「分類カテゴリ」は、分類先となるカテゴリを示し、ユーザ等により任意に設定変更することができる。「該当ログ」は、カテゴリに分類された業務ログの一覧である。
【0025】
図4の例では、業務ログ「商談報告資料.bbb」が分類カテゴリ「顧客対応」に分類されたことを示し、業務ログ「Xプロ定例会_議事録」が分類カテゴリ「商品企画」に分類されたことを示す。なお、分類カテゴリの例としては、クライアントとの打ち合わせや資料作成に該当する「顧客対応」、新商品のための調査や検討会議などに該当する「商品企画」、商品の設計・開発・テストなどに該当する「設計・開発」、商品の販売イベントの企画や実施などに該当する「拡販」がある。また、部会や予算管理などに該当する「職場会議」、出張精算や商談状況登録などに該当する「事務処理」、講習会参加やe−Learningなどに該当する「教育」、いずれにも該当しない「その他」などがある。
【0026】
文字列DB15は、業務ログから抽出された文字列の出現頻度に関する情報を記憶するデータベースである。ここで記憶される情報は、制御部20によって生成される。図5は、文字列DB15に記憶される情報の例を示す図である。図5に示すように、文字列DB15は、「文字列(w)、出現頻度(F(w))、補正後出現頻度(F(w))」を対応付けて記憶する。
【0027】
「文字列(w)」は、制御部20によって抽出される文字列であり、「出現頻度(F(w))」は、学習対象である全業務ログにおける文字列の出現頻度であり、「補正後出現頻度(F(w))」は、制御部20によって補正された文字列の出現頻度である。図5の例では、文字列「Xプロ定例会」における業務ログ全体の出現頻度が「6」回で、制御部20によって「2.35」回に補正されたことを示す。各項目の算出手法等については後述する。
【0028】
分類規則DB16は、制御部20によって生成される分類規則を記憶するデータベースである。具体的には、分類規則DB16は、文字列と分類先のカテゴリとを対応付けて記憶する。なお、ここで記憶される分類規則は、後述する制御部20によって生成され、業務分類モデルに適用されて、業務ログの分類に使用される。
【0029】
制御部20は、分類装置10全体の処理を司る処理部であり、例えばプロセッサなどである。この制御部20は、学習部30と分類部60を有する。なお、学習部30と分類部60は、プロセッサなどが有する電子回路やプロセッサなどが実行するプロセスの一例である。
【0030】
学習部30は、出現頻度処理部40と規則処理部50とを有し、業務ログと業務ログに出現する文字列の出現頻度との関係を学習し、分類規則を生成する処理部である。出現頻度処理部40は、形態素解析部41、頻度算出部42、頻度補正部43を有し、業務ログと業務ログに出現する文字列の出現頻度との関係を抽出する処理部である。
【0031】
形態素解析部41は、各業務ログの各テキストデータを単語に分割し、連続するN語(Nは任意の自然数)を連結させた連結文字列(以下、単に文字列と記載する場合がある)を抽出する処理部である。具体的には、形態素解析部41は、一般的な形態素解析の手法を用いて、テキストデータを単語に分割する。そして、形態素解析部41は、抽出された単語から、連続する2語ごとに連結文字列、3語ごとの連結文字列、4語ごとの連結文字列、5語ごとの連結文字列それぞれを抽出し、頻度算出部42に出力する。
【0032】
図6は、形態素解析の処理例を説明する図である。図6の例では、学習対象の業務ログのテキストデータが「Xプロ定例会_議事録.xxx」である例で説明する。図6に示すように、形態素解析部41は、テキストデータ「Xプロ定例会_議事録.xxx」を単語分割し、「X」、「プロ」、「定例」、「会」、「_」、「議事」、「録」、「.」、「xxx」を抽出する。
【0033】
続いて、形態素解析部41は、抽出された単語から、連続する2語(N=2)を順次組み合わせた文字列(単語列)を生成する。すなわち、形態素解析部41は、「Xプロ」、「プロ定例」、「定例会」、「会_」、「_議事」、「議事録」、「録.」、「.xxx」を生成する。
【0034】
同様に、形態素解析部41は、抽出された単語から、連続する3語(N=3)を順次組み合わせた文字列を生成する。すなわち、形態素解析部41は、「Xプロ定例」、「プロ定例会」、「定例会_」、「会_議事」、「_議事録」、「議事録.」、「録.xxx」を生成する。
【0035】
同様に、形態素解析部41は、抽出された単語から、連続する4語(N=4)を順次組み合わせた文字列を生成する。すなわち、形態素解析部41は、「Xプロ定例会」、「プロ定例会_」、「定例会_議事」、「会_議事録」、「_議事録.」、「議事録.xxx」を生成する。
【0036】
同様に、形態素解析部41は、抽出された単語から、連続する5語(N=5)を順次組み合わせた文字列を生成する。すなわち、形態素解析部41は、「Xプロ定例会_」、「プロ定例会_議事」、「定例会_議事録」、「会_議事録.」、「_議事録.xxx」を生成する。
【0037】
頻度算出部42は、形態素解析部41により生成された各文字列の出現頻度を算出する処理部である。具体的には、頻度算出部42は、連続するN語として抽出された各文字列が、学習対象の全業務ログにおいて何回出現するかを計数し、頻度補正部43に出力する。例えば、頻度算出部42は、文字列「Xプロ」が業務ログのテキストデータ「Xプロ定例会_議事録.xxx」、「Xプロ食事会」、「Xプロメンバー議事録.yyy」に出現する場合、文字列「Xプロ」の出現頻度を「3回」と計数する。このようにして、頻度算出部42は、各業務ログのテキストデータからN語として抽出された各文字列の出現頻度を算出する。なお、頻度算出部42は、各文字列と出現頻度とを対応付けて文字列DB15に格納する。
【0038】
頻度補正部43は、各文字列を含む業務ログの分類先を集計し、そのばらつきの指標としてエントロピーを計算し、各文字列の出現頻度を補正する処理部である。具体的には、頻度補正部43は、現状の分類規則に沿った分類手法により、各文字列がどの分類カテゴリに分類されるのかを特定し、分類先の分布を特定する。そして、頻度補正部43は、多くの分類カテゴリに分類されている文字列の出現頻度を下げる補正を行う。すなわち、頻度補正部43は、分類先がばらついている文字列の出現頻度を下げる。
【0039】
図7は、出現頻度の計算および出現頻度の補正を説明する図である。図7では、Nが2のときの文字列の出現頻度を例にして説明する。図7に示すように、頻度算出部42によって、「文字列(w)、出現頻度(F(w))」として「Xプロ、8」、「プロ定例、10」、「定例会、144」、「会_、88」、「_議事、37」、「議事録、94」、「録.、22」、「.xxx、540」が抽出されたとする。
【0040】
この状態で、まず、頻度補正部43は、業務分類DB14や文字列DB15を参照し、各文字列の分類先の分布を特定する。例えば、頻度補正部43は、文字列「定例会」を含む業務ログ(テキストデータ)のうち、分類カテゴリ「職場活動」に分類される業務ログが「66個」、分類カテゴリ「商品企画」に分類される業務ログが「20個」、分類カテゴリ「拡販」に分類される業務ログが「13個」、分類カテゴリ「設計・開発」に分類される業務ログが「7個」、分類カテゴリ「顧客対応」に分類される業務ログが「4個」、分類カテゴリ「その他」に分類される業務ログが「4個」であることを特定する。
【0041】
次に、頻度補正部43は、式(1)を用いて、文字列(w)を含む業務ログの分類先がcとなる割合をもとにエントロピーを算出する。例えば、図7の定例会を例にして説明すると、「w」が文字列の「定例会(144)」であり、「c」が業務分類カテゴリの「職場企画(66)、商品企画(20)、拡販(13)、設計・開発(7)、顧客対応(4)、その他(4)」のそれぞれとなる。
【0042】
【数1】
【0043】
その後、頻度補正部43は、式(2)を用いて、各文字列について算出された出現頻度を補正する。式(2)における「F(w)」は、頻度算出部42によって算出された出現頻度であり、「b」は、1.0より大きい値であり、ここでは8.0とする。図7の「定例会」を例にして説明すると、定例会の補正後の出現頻度は、「F(w)=144×8.0−1.276=8.031」と算出される。このようにして、頻度補正部43は、連続するN語として抽出された各文字列について、分類先の分布の特定、エントロピーの算出、出現頻度の補正を実行する。そして、頻度補正部43は、補正した出現頻度を文字列DB15に格納する。
【0044】
【数2】
【0045】
ここで、文字列に対する出現頻度および補正後出現頻度の集計結果の例を説明する。図8は、出現頻度の補正結果を説明する図である。図8に示すように、文字列「Xプロ」の出現頻度が「8」から「1.23」に補正され、文字列「プロ定例」の出現頻度が「10」から「1.41」に補正され、文字列「Xプロ定例」の出現頻度が「6」から「2.35」に補正され、文字列「プロ定例会」の出現頻度が「10」から「1.41」に補正される。すなわち、単語「プロ」を含む文字列において、「Xプロ」「プロ定例」「プロ定例会」よりも「Xプロ定例」は出現頻度が低いが分類先の分布のばらつき(エントロピー)が小さいため補正後出現頻度は高くなる。
【0046】
図2に戻り、規則処理部50は、テキスト分割部51と規則生成部52とを有し、出現頻度処理部40によって生成された補正後出現頻度を用いて、各業務ログのテキストデータから分類に適する文字列を抽出し、分類規則を生成する処理部である。
【0047】
テキスト分割部51は、補正後の出現頻度を用いて、学習データである業務ログ(テキストデータ)を単語に分割する処理部である。具体的には、テキスト分割部51は、文字列の補正後の出現頻度を基に、テキストデータの分割単位を探索する。そして、テキスト分割部51は、探索された単位でテキストデータを分割し、分割結果を規則生成部52に出力する。
【0048】
図9は、補正後の出現頻度に基づく文字列の境界の特定を説明する図である。図9では、Nが3のときの単語分割例を示している。図9に示すように、まず、テキスト分割部51は、テキストデータ「Xプロ定例会_議事録.xxx」を単語に分割し、「X」、「プロ」、「定例」、「会」、「_」、「議事」、「録」、「.」、「xxx」を抽出する。
【0049】
続いて、テキスト分割部51は、N=3のときの文字列及び補正後出現頻度を文字列DB15から読み込み、文字列の境界を探索する。具体的には、テキスト分割部51は、N=3のときの各文字列の境界について、その両側の文字列の頻度と境界をまたぐ文字列の頻度を比較し、文字列の境界を決定する。
【0050】
例えば、図9に示すように、テキスト分割部51は、(1)文字列「Xプロ定例」の補正後出現頻度「2.35」、(2)文字列「会_議事」の補正後出現頻度「2.87」、(3)文字列「プロ定例会」の補正後出現頻度「1.41」、(4)文字列「定例会_」の補正後出現頻度「1.58」を取得する。そして、テキスト分割部51は、先頭の単語「X」から3(N=3)単語目の単語「定例」と4単語目の単語「会」との境界を注目境界1とする。
【0051】
続いて、テキスト分割部51は、注目境界1の両側となる(1)の補正後出現頻度「2.35」および(2)の補正後出現頻度「2.87」と、注目境界1を跨る(3)の補正後出現頻度「1.41」および(4)の補正後出現頻度「1.57」を特定する。そして、テキスト分割部51は、境界をまたぐ文字列の出現頻度の方が小さくなる割合(スコア)を算出する。すなわち、テキスト分割部51は、(1)>(3)、(2)>(3)、(1)>(4)、(2)>(4)であることから、割合「4/4=1」と算出する。
【0052】
このようにして、テキスト分割部51は、N=3のときの文字列の各境界について、上記手法によるスコアを算出する。さらに、テキスト分割部51は、テキストデータ「Xプロ定例会_議事録.xxx」について、Nが2から5のときの各境界についても算出する。そして、テキスト分割部51は、Nが2から5で出現した各境界について、Nが2から5のそれぞれについて算出されたスコアの平均値を算出する。例えば、テキスト分割部51は、図9に示した注目境界1のスコアについて、Nが2から5のそれぞれで算出し、算出したスコアの平均値「0.67」と算出する。
【0053】
次に、テキスト分割部51は、テキストデータにおける各境界について算出された上記スコアに基づいて、分割位置を決定する。図10は、補正後の出現頻度に基づくテキスト分割を説明する図である。
【0054】
図10の(a)に示すように、テキスト分割部51は、テキストデータ「Xプロ定例会_議事録.xxx」について、単語「X」と「プロ」との間の分割されやすさを表すスコア「0.50」、単語「プロ」と「定例」の間の分割されやすさを表すスコア「0.50」、単語「定例」と「会」の間の分割されやすさを表すスコア「0.67」のように、図9で算出した境界を跨ぐ文字列の補正後出現頻度の割合に基づき、先頭から文字列を生成したときの割合を特定する。そして、テキスト分割部51は、条件1「スコアが閾値(例えば0.5)を超える」または条件2「両隣の境界のスコアより高い」のいずれかを満たす境界を分割境界とする。
【0055】
例えば、図10の(a)の例では、テキスト分割部51は、単語「定例」と単語「会」との間のスコアが「0.67」で条件1を満たすので、分割境界に決定する。また、テキスト分割部51は、単語「_」と単語「議事」との間のスコアが「0.75」で条件1を満たすので、分割境界に決定する。同様に、テキスト分割部51は、単語「録」と単語「.」との間のスコアが「0.33」で条件2を満たすので、分割境界に決定する。そして、テキスト分割部51は、決定した分割境界に関する情報を規則生成部52に出力する。
【0056】
このように、補正後出現頻度およびスコアを用いることで、単純な出現頻度で決定される分割境界とは異なる分割境界となる。例えば、図10の(b)に示すように、出現頻度が閾値(例えば0.5)を超える境界を分割境界とする場合、単語「X」と単語「プロ」の間、単語「プロ」と単語「定例」の間、単語「_」と単語「議事」の間、単語「録」と単語「.」の間が分割境界と決定される。
【0057】
図2に戻り、規則生成部52は、テキスト分割部51により決定された分割境界に基づいて、分割文字列を抽出し、抽出した分割文字列の中から分類カテゴリに適した分割文字列を決定する処理部である。具体的には、規則生成部52は、図10の(a)で示した手法で決定された分割境界に従って、学習データであるテキストデータ(業務ログ)を分割し、該当する分割文字列を抽出する。そして、規則生成部52は、上述したエントロピーや補正前の出現頻度に基づき、抽出した複数の分割文字列の中から最も分類に適した分割文字列を特定する。その後、規則生成部52は、特定した分割文字列と、学習データであるテキストデータが分類される分類カテゴリと、を対応付けた分類規則を生成して分類規則DB16に格納する。
【0058】
図11は、分類規則の生成例を説明する図である。図11に示すように、規則生成部52は、図10で決定された分割境界にしたがって、学習データである業務ログ「Xプロ定例会_議事録.xxx」を、分割文字列「Xプロ定例」、「会_」、「議事録」、「.xxx」に分割する。続いて、規則生成部52は、分割文字列「Xプロ定例会」、「会_」、「議事録」、「.xxx」それぞれの補正前の出現頻度とエントロピーを出現頻度処理部40や文字列DB15から取得する。
【0059】
そして、規則生成部52は、条件を満たす分割文字列を、学習データの特徴語として抽出する。図11の例では、規則生成部52は、分割文字列「Xプロ定例」について出現頻度「6」とエントロピー「0.45」、分割文字列「会_」について出現頻度「88」とエントロピー「1.44」、分割文字列「議事録」について出現頻度「94」とエントロピー「1.23」、分割文字列「.xxx」について出現頻度「540」とエントロピー「1.38」を取得する。そして、規則生成部52は、条件「出現頻度>3かつエントロピー<0.5」を満たす分割文字列「Xプロ定例」を特定する。その後、規則生成部52は、学習データである業務ログ「Xプロ定例会_議事録.xxx」の分類カテゴリ「商品企画」を業務分類DB14から特定する。そして、規則生成部52は、分割文字列「Xプロ定例会」と分類カテゴリ「商品企画」とを対応付けた分類規則を生成する。
【0060】
図2に戻り、分類部60は、分類規則DB16にしたがって業務ログを分類する処理部である。具体的には、分類部60は、新たに発生した分類対象の業務ログを取得し、分類規則DB16に記憶される分類規則の分割文字列が含まれるか否かを判定する。そして、分類部60は、分類対象の業務ログに含まれる分割文字列と対応付けられる分類カテゴリを、分類対象の業務ログに分類し、その結果を業務分類DB14に格納する。
【0061】
例えば、分類部60は、分類対象の業務ログに「Y展定例」が含まれている場合、図11に示す分類規則にしたがって、分類対象の業務ログを「拡販」に分類する。同様に、分類部60は、分類対象の業務ログに「Zシス管理者定例」が含まれている場合、図11に示す分類規則にしたがって、分類対象の業務ログを「設計・開発」に分類する。なお、分類部60は、1つの分類対象の業務ログに、分類規則にある複数の分割文字列が含まれる場合、いずれかの分割文字列を選択してもよく、1つの分類対象の業務ログに複数の分類カテゴリを対応付けることもできる。
【0062】
[処理の流れ]
次に、上述した各処理の流れについて説明する。ここでは、出現頻度処理の流れと規則生成処理の流れとについて説明する。なお、各処理や各処理内のステップは、矛盾のない範囲内で処理順番等を入れ替えることができる。
【0063】
(出現頻度処理の流れ)
図12は、出現頻度処理の流れを示すフローチャートである。図12に示すように、出現頻度処理部40は、業務ログをすべて取得し(S101)、全業務ログについて単語の分割処理が実行されたか否かを判定する(S102)。
【0064】
ここで、出現頻度処理部40は、単語分割について未処理の業務ログが存在する場合(S102:No)、業務ログを1つ取り出し(S103)、業務ログを単語に分割し(S104)、連続するN語の文字列を抽出する(S105)。
【0065】
一方、出現頻度処理部40は、全業務ログについて単語分割処理が終了した場合(S102:Yes)、抽出された文字列をすべて取得する(S106)。続いて、出現頻度処理部40は、全文字列について出現頻度の補正処理が完了したか否かを判定する(S107)。
【0066】
そして、出現頻度処理部40は、出現頻度の補正処理について未処理に業務ログが存在する場合(S107:No)、文字列を1つ取り出し(S108)、文字列を含む業務ログの分類先を業務分類DB14から取得する(S109)。その後、出現頻度処理部40は、出現頻度の計算や補正後出現頻度を計算し、出現頻度を更新する(S110)。一方、出現頻度処理部40は、全業務ログについて出現頻度処理が終了した場合(S107:Yes)、処理を終了する。
【0067】
(規則生成処理の流れ)
図13は、規則生成処理の流れを示すフローチャートである。図13に示すように、規則処理部50は、業務ログをすべて取得し(S201)、全業務ログについて文字列の抽出処理が実行されたか否かを判定する(S202)。
【0068】
ここで、規則処理部50は、文字列の抽出処理について未処理の業務ログが存在する場合(S202:No)、業務ログを1つ取り出し(S203)、補正後の出現頻度を基に業務ログを分割し、各分割文字列を抽出する(S204)。
【0069】
一方、規則処理部50は、全業務ログについて文字列の抽出処理が終了した場合(S202:Yes)、抽出された分割文字列をすべて取得する(S205)。続いて、文字列の抽出処理は、全分割文字列について分類規則の生成処理が完了したか否かを判定する(S206)。
【0070】
そして、規則処理部50は分類規則の生成処理について未処理に業務ログが存在する場合(S206:No)、分割文字列を1つ取り出し(S207)、分割文字列を含む業務ログの出現頻度と分類先の分布を各DBから取得する(S208)。その後、規則処理部50は、処理対象の分割文字列が条件を満たす場合(S209:Yes)、分類規則に追加し(S210)、S206以降を繰り返し、処理対象の分割文字列が条件を満たさない場合(S209:No)、S210を実行することなく、S206以降を繰り返す。一方、規則処理部50は、全業務ログについて分類規則の生成処理が終了した場合(S206:Yes)、処理を終了する。
【0071】
[効果]
上述したように、分類装置10は、各文字列の出現頻度を、その文字列を含む業務ログの分類先の分布をもとに補正し、その出現頻度情報を利用してテキスト分割を行うことにより、後段の業務内容分類に適した単位の文字列を特徴語として取得することができ、その特徴語を使った規則を使うことによって分類精度が向上する。すなわち、分類装置10は、テキストデータの分割の段階で後段の分類を考慮し、各文字列による分類先の分布(ばらつき)を利用して特徴語を抽出することにより、分類精度の高い分類規則を生成することができる。
【実施例2】
【0072】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【0073】
[時刻情報の採用]
例えば、上記実施例における単語、文字列、分割文字列などの「出現頻度」は、「業務発生時間の総和(総業務時間)」と置き換えることもできる。
【0074】
[装置の分割]
上記実施例では、分類装置10が分類規則の学習と学習後の分類とを実行する例を説明したが、これに限定されるものではなく、学習と学習後の分類とを別々の装置で実行することもできる。
【0075】
[システム]
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値などは、あくまで一例であり、任意に変更することができる。
【0076】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0077】
[ハードウェア]
図14は、ハードウェア構成例を説明する図である。図14に示すように、分類装置10は、通信装置10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、図14に示した各部は、バス等で相互に接続される。
【0078】
通信装置10aは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。HDD10bは、図2に示した機能を動作させるプログラムやDBを記憶する。
【0079】
プロセッサ10dは、図2に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ10cに展開することで、図2等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、分類装置10が有する各処理部と同様の機能を実行する。具体的には、プロセッサ10dは、出現頻度処理部40と規則処理部50等と同様の機能を有するプログラムをHDD10b等から読み出す。そして、プロセッサ10dは、出現頻度処理部40と規則処理部50等と同様の処理を実行するプロセスを実行する。
【0080】
このように分類装置10は、プログラムを読み出して実行することで分類方法を実行する情報処理装置として動作する。また、分類装置10は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、分類装置10によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【0081】
このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO(Magneto−Optical disk)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
【符号の説明】
【0082】
10 分類装置
11 通信部
12 記憶部
13 業務ログDB
14 業務分類DB
15 文字列DB
16 分類規則DB
20 制御部
30 学習部
40 出現頻度処理部
41 形態素解析部
42 頻度算出部
43 頻度補正部
50 規則処理部
51 テキスト分割部
52 規則生成部
60 分類部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
【国際調査報告】