以下、図面にしたがって本発明の実施の形態について説明する。ただし、本発明の技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。
[データの分類の流れ]
図1は、実施の形態のデータの分類処理の概要を説明する図である。機械学習を用いた分類の処理は、学習と分類の2つのフェーズに分けられる。学習フェーズでは、学習器10−1は、予め、分類したい項目(以下、分類項目と称する)が付与されたデータ(以下、教師データと称する)Tdを入力として、モデルMdを出力する。モデルMd(規則)とは、例えば、特徴量及び特徴量の重みである。教師データTdはモデルMdを生成するためのデータである。
例えば、分類の対象となるデータがメール等の文書である場合、分類項目はスパム記事及び非スパム記事である。また、特徴量は、例えば、文書に含まれる単語である。スパム記事とは、例えば、迷惑メールであって、ユーザの同意なしに送られるメールである。
図1では、教師データTdとして、例えば、5つの事例データFEが例示される。図1の教師データTdの各行が1つの事例データFEに対応する。また、各行の行頭に付与されるラベル「+1/−1」GRは、予め検知される分類項目「+1:スパム記事/−1:非スパム記事」を表す。例えば、ユーザは、事例データFEがスパム記事であるか、非スパム記事であるかを予め判定し、各事例データFEに、分類項目「+1:スパム記事/−1:非スパム記事」をラベル付けしておく。図1の例では、1行目の事例データFEは、特徴量「金運、格安、送料、駐車場 …」を含むスパム記事(+1)であって、2行目の事例データFEは、特徴量「水、送料、無料、健康、膝 …」を含む非スパム記事(−1)である。
学習器10−1は、図1に示す教師データTdを入力として、モデルMdを生成する。モデルMdの生成処理については、図2のフローチャート図にしたがって後述する。学習器10−1が生成するモデルMdは、教師データTdが含む単語ごとに、重みを有する。図1のモデルMdは、例えば、特徴量「格安」とその重み「+2」を有する。同様にして、モデルMdは、特徴量「無料」とその重み「+1」、特徴量「送料」とその重み「+2」、特徴量「テニス」とその重み「−3」を有する。図1の例では、重みの大きい特徴量「格安」「送料」は、スパム記事への寄与率が高い特徴量を示す。また、重みの小さい特徴量「テニス」は、非スパム記事への寄与率が高い特徴量を示す。
続いて、分類フェーズでは、分類器10−2は、分類対象のデータSdを入力として、分類対象のデータSdの分類項目への分類結果を出力する。分類対象のデータSdは、教師データTdとは異なり、スパム記事か非スパム記事への分類が特定されていないデータである。
例えば、分類器10−2は、モデルMdに基づいて、分類の対象となるデータSdに含まれる特徴量に対応するスコアを算出する。そして、分類器10−2は、例えば、算出したスコアが0より大きいデータをスパム記事に分類し、算出したスコアが0以下のデータを非スパム記事に分類する。
図1の例において、分類器10−2は、分類の対象となるデータSdが、例えば、特徴量「格安、送料、テニス」を含む場合、モデルMdに基づいて、各特徴量の重み(「格安:+2」、「送料+2」、「テニス−3」)を取得する。そして、分類器10−2は、計算式「+2[格安]+2[送料]+(−3)[テニス]」に基づいて、スコア「+1(=+2+2+(−3))」を算出する。この場合、スコア「+1」が0より大きいことから、分類器10−2は、分類の対象となるデータSdがスパム記事である旨、判定する。
なお、この例では、分類の対象となるデータが文書であって、データをスパム記事と非スパム記事に分類する場合を例示した。しかし、この例に限定されるものではない。教師データTdに基づく機械学習は、例えば、分類対象のデータが画像データであって、画像データが顔を含むか否かが分類される場合にも使用される。このとき、特徴量は、例えば、肌色の割合、ピクセルの色情報、線の有無である。
[フローチャート]
図2は、学習器10−1のモデルMdの生成処理の流れを説明する図である。学習器10−1は、初めに、特徴量である各単語の重みを初期化する(S11)。次に、学習器10−1は、教師データTdが有する事例データFEを順に選択する(S12)。そして、学習器10−1は、選択した事例データFEについて、現在の重みに基づいて分類項目GRの予測値ANを計算する(S13)。予測値ANとは、現在の重みに基づいて分類した、選択した事例データFEがスパム記事であるか、または非スパム記事であるかの予測結果である。工程S13の処理の詳細は、図3のフローチャート図に基づいて後述する。
次に、学習器10−1は、予測値ANが、選択した事例データFEに予め設定される分類項目GRと異なるか否かを判定する(S14)。異なる場合(S14のYES)、事例データFEに含まれる各特徴量の重み(モデル)Mdが適切ではないことを示すため、学習器10−1は、重みを更新する(S15)。工程S15の処理の詳細は、図4のフローチャート図に基づいて後述する。一方、分類項目GRの算出した予測値ANが、選択した事例データFEに予め設定される分類項目GRと一致する場合は(S14のNO)、事例データFEに含まれる各特徴量の重みが適切であることを示すことから、学習器10−1は重みを更新しない。
そして、学習器10−1は、所定の終了条件を満たしたか否かを判定する(S16)。終了条件は、例えば、分類項目GRの予測値ANが、事例データFEに予め設定される分類項目GRと一致する精度が徐々に向上し、精度の変移が収束した場合を示す。つまり、学習器10−1は、分類項目GRの予測値ANの一致精度が所定の基準に達した場合に、教師データTdに基づく重みの生成処理を終了する。これにより、学習器10−1は、重みを高精度に生成することができる。
または、終了条件は、入力した事例データFEの件数であってもよい。学習器10−1は、入力した事例データFEの数が所定の数に達した場合に、重みの生成処理を終了する。したがって、学習器10−1は、教師データTdを1回のみ入力してモデルMdを生成してもよいし、教師データTdを複数回、繰り返し入力してモデルMdを生成してもよい。例えば、教師データTdを複数回、繰り返し入力してモデルMdを生成する場合、学習器10−1は、生成するモデルMdの精度を向上させることができる。これにより、事例データFEが少数の場合でも、学習器10−1は、教師データTdに基づく重みを、より高精度に生成することができる。
終了条件を満たしていない場合(S16のNO)、学習器10−1は、次の事例データFEを選択し(S12)、工程S13〜S15の処理を繰り返す。終了条件を満たす場合(S16のYES)、学習器10−1は、処理を終了する。
図3は、図2のフローチャート図における工程S13の処理を説明するフローチャート図である。工程S13は、選択した事例データFEについて、モデルMdに格納されている現在の重みに基づいて分類項目GRの予測値ANを計算する処理を示す。学習器10−1は、選択した事例データFEが含む特徴量の重み付き和CNを計算する(S21)。そして、学習器10−1は、算出した重み付き和CNが0以上であるか否かに基づいて予測値ANを出力する(S22)。
例えば、事例データFEが非スパム記事であって、特徴量である単語「格安」を1つ、単語「水」を1つ、単語「送料無料」を2つ含む場合を例示する。また、例えば、このとき、モデルMdに格納されている現在の重みは、特徴量「金運」の重み「+2」、特徴量「格安」の重み「+1」、特徴量「水」の重み「−1」、特徴量「送料無料」の重み「+1」、特徴量「駐車場」の重み「+1」であるものとする。そこで、学習器10−1は、計算式「1×(+1)[格安]+1×(−1)[水]+2×(+1)[送料無料]」に基づいて、重み付き和CN「2」を算出する。この場合、重み付き和CN「2」が0以上であることから、学習器10−1は、事例データFEがスパム記事であることを示す予測値AN「+1」を出力する。
図4は、図2のフローチャート図における工程S15の処理を説明するフローチャート図である。工程S15は、特徴量の重みの更新処理を示す。学習器10−1は、選択中の事例データFEが含む特徴量から、1つの特徴量を選択する(S31)。例えば、選択中の事例データFEが特徴量「格安」「水」「送料無料」を含む場合、学習器10−1は、初めに、特徴量「格安」を選択する。
次に、学習器10−1は、選択中の事例データFEの分類項目を示す値(この例では、+1/−1)に特徴量の重みを乗算した値を、重みに加算することによってモデルMdを更新する(S32)。例えば、選択中の事例データFEに予め規定される分類項目GRが非スパム記事(分類項目:−1)であって、選択した特徴量「格安」の重みが値「+1」である場合を例示する。この場合、学習器10−1は、値「−1(=−1(分類項目)×+1(重み))」を、特徴量「格安」の現在の重み(「+1」)に加算する。そして、学習器10−1は、現在の重みを、値「0(=+1−1)」に更新する。
選択中の事例データFEが含むすべての特徴量について工程S32の処理が完了していない場合(S33のNO)、学習器10−1は、選択中の事例データFEが含む別の特徴量を対象として工程S32の処理を行う。一方、選択中の事例データFEが含むすべての特徴量について処理を完了した場合(S33のYES)、学習器10−1は、選択中の事例データFEに基づく重みの更新処理(図2のS16)を終了する。
このように、予め、分類項目GRが特定された教師データTdに基づいて、分類対象のデータを分類するモデルMd(特徴量とその重み)が生成される。ただし、ユーザが十分な量の教師データTdを用意することができない場合がある。この場合、ユーザは、教師データTdの分類項目GRの比率を、真の分布の分類項目GRの比率と一致させることができないことがある。真の分布とは、分類器10−2が分類する対象のデータ(例えば、図1の分類対象のデータSd)の分類項目の分布を示す。
このように、教師データTdの分類項目GRの比率が、真の分布の分類項目GRの比率と異なる場合、精度よくデータを分類することができないことがある。モデルMdは、教師データTdの分布の傾向を有する。したがって、例えば、教師データTdのスパム記事の比率が、分類対象のデータSdのスパム記事の比率より大きい場合、よりスパム記事に分類され易い重みMdが生成されてしまう。
そこで、本実施の形態例における学習器10−1は、分類対象のデータSdの分類項目GRの第1の比率と、教師データTdの分類項目GRの第2の比率と、教師データTdの各分類項目GRにおける特徴量を含む事例データFEの割合とを使用する。そして、学習器10−1は、これらの情報に基づいて、特徴量を含む事例データFEが、分類対象のデータの分類項目GRに出現する出現確率を算出する。
本実施の形態例において、ユーザが、教師データTdを用意し、学習器10−1に入力する。また、ユーザは、分類対象のデータの分類項目の分布(第1の比率)をあらかじめ、認識している。したがって、ユーザは、分類対象のデータSdが有する分類項目GRの第1の比率を学習器10−1に入力する。つまり、ユーザは、図1の例における、分類対象のデータSdが有するスパム記事及び非スパム記事の比率を、学習器10−1に入力する。
また、ユーザは、用意した教師データTdに基づいて、教師データTdが有する分類項目GRの第2の比率を算出できる。したがって、ユーザは、図1の例における、教師データTdが有するスパム記事及び非スパム記事の比率を、教師データTdから算出し、学習器10−1に入力する。また、教師データTdの分類項目GRそれぞれにおける特徴量を含む事例データFEの割合についても、教師データTdに基づいて算出可能である。したがって、ユーザは、図1の例における、教師データTdのスパム記事及び非スパム記事における特徴量「格安」を含む事例データFEの割合を学習器10−1に入力する。
また、学習器10−1は、特徴量の出現確率に基づいた、教師データTdの特徴量の値に基づいて、モデル(規則)Mdを生成する。そして、分類器10−2は、分類の対象とする複数のデータを、生成したモデルMdに基づいて分類する。
[出現確率]
ここで、出現確率について説明する。図1の例に基づく場合、例えば、特徴量「格安」の分類項目「スパム記事」の出現確率は、特徴量「格安」を含む事例データFEが真の分布のスパム記事に出現する出現確率を示す。また、特徴量「格安」の分類項目「非スパム記事」の出現確率は、特徴量「格安」を含む事例データFEが真の分布の非スパム記事に出現する出現確率を示す。
具体的に、特徴量「格安」の分類項目「スパム記事」の出現確率が30%である場合、教師データTdが有する特徴量「格安」を含む事例データFEが、真の分布の分類項目「スパム記事」から30%の確率でサンプリングされたことを示す。言い換えると、これは、教師データTdが有する特徴量「格安」を含む事例データFEが、70%の確率で、真の分布の分類項目「非スパム記事」から偶発的にサンプリングされてしまったことを示す。出現確率の算出処理については、後述する。
したがって、本実施の形態例における学習器10−1は、例えば、特徴量「格安」の分類項目「スパム記事」の出現確率が30%である場合、教師データTdの分類項目「スパム記事」GRに属する事例データFEが含む特徴量「格安」の値を、30%の確率で使用する。即ち、学習器10−1は、教師データTdの分類項目「スパム記事」GRに属する事例データFEが含む特徴量「格安」の値を、70%の確率にしたがって使用しない。
このように、本実施の形態例における学習器10−1は、真の分布の分類項目に対する、教師データTdの特徴量の出現確率を算出する。そして、学習器10−1は、出現確率にしたがって、教師データTdの特徴量を採用するか否かを確率的に判定する。これにより、本実施の形態例における学習器10−1は、教師データTdの特徴量の分布を、真の分布に近づけることができる。そして、学習器10−1は、特徴量の各分類項目GRの出現確率に基づいた教師データTdの特徴量に基づいて、モデルMdを生成する。これにより、学習器10−1は、真の分布を有する教師データTdに基づいてモデルMdを生成することができ、分類の対象となるデータをより高精度に分類項目GRに分類することができる。
続いて、本実施の形態例におけるデータ分類装置の構成、及び、ブロック図を説明する。本実施の形態例におけるデータ分類装置は、図1の学習器10−1、及び、分類器10−2に対応する機能を実行する。
[データ分類装置の構成]
図5は、本実施の形態例におけるデータ分類装置10の構成を説明する図である。図5のデータ分類装置10は、例えば、プロセッサ11、入力装置12、出力装置13、HDD等の記憶媒体14、RAM(Random Access Memory)等のメモリ15を有する。各部は、バス16を介して相互に接続される。入力装置12は、例えば、キーボードやマウス等であって、出力装置13は、例えば、ディスプレイである。
記憶媒体14には、教師データTdと、真の分布DIを示す情報が記憶される。教師データTdはユーザが用意する。また、真の分布DIは既知である。また、メモリ15には、例えば、本実施の形態例におけるデータ分類プログラムPRが記憶される。プロセッサ11は、記憶媒体14に記憶される教師データTd及び真の分布DIを入力として、データ分類プログラムPRと協働することによって、本実施の形態例におけるデータ分類処理を実現する。
[データ分類装置のブロック図]
図6は、本実施の形態例におけるデータ分類装置10のブロック図を説明する図である。データ分類装置10のデータ分類プログラムPRは、例えば、出現確率算出部21、モデル生成部22、データ分類部23を有する。図6のモデル生成部22は、図1の学習器10−1に対応する処理を行い、データ分類部23は、図1の分類器10−2に対応する処理を行う。
出現確率算出部21は、記憶媒体14(図5)に記憶された真の分布DIが有する分類項目GRの比率を入力とする。また、出現確率算出部21は、記憶媒体14(図5)に記憶された教師データTdに基づいて、教師データTdが有する分類項目GRの比率と、教師データTdの分類項目GRそれぞれにおける特徴量を含む事例データFEの割合を入力とする。
そして、出現確率算出部21は、入力した情報に基づいて、各特徴量について、教師データTdに含まれる特徴量が真の分布DIの各分類項目に出現する出現確率Pbを算出する。モデル生成部22は、出現確率算出部21によって算出された各特徴量の出現確率Pbに基づいて、教師データTdに含まれる特徴量の値のうち、採用する値を判定する。そして、モデル生成部22は、教師データTdの採用した特徴量の値に基づいて、モデルMdを生成する。
データ分類部23は、モデル生成部22によって生成されたモデルMdに基づいて、分類の対象となるデータを分類項目に分類する。出現確率Pb、及び、モデルMdは、図1の記憶媒体14等に記憶されてもよいし、メモリ15上に保持されてもよい。
次に、本実施の形態例におけるデータ分類装置10の処理をフローチャート図に基づいて説明する。
[フローチャート]
図7は、本実施の形態例におけるデータ分類装置10のモデルMdの生成処理の流れを説明する図である。図7のフローチャート図は、図2のフローチャート図に示した基準の、モデルMdの生成処理と工程S42の処理が異なる。
データ分類装置10の出現確率算出部21は、図2のフローチャート図と同様にして、初めに、特徴量を示す各単語の重みを初期化する(S41)。ここで、本実施の形態例における出現確率算出部21は、教師データTdが含む各特徴量について、真の分布DIにおける各分類項目GRの出現確率Pbを計算する(S42)。出現確率算出部21は、算出した出現確率Pbを例えば、記憶媒体14(図1)等に記憶する。前述したとおり、出現確率Pbは、教師データTd内の特徴量が、真の分布の分類項目それぞれから十分な確実性に基づいてサンプリングされた確率を示す。工程S42の処理の詳細については、具体例に基づいて後述する。
続いて、データ分類装置10のモデル生成部22は、図2に示したフローチャート図と同様にして、教師データTdが有する事例データFEを順に選択し(S43)、現在の重みに基づいて分類項目GRの予測値ANを計算する(S44)。工程S44の処理の詳細は、図3のフローチャート図と同様である。そして、モデル生成部22は、図2に示したフローチャート図と同様にして、分類項目GRの算出した予測値ANが、選択した事例データFEに予め設定される分類項目GRと異なる場合に(S45のYES)、事例データFEに含まれる重みを更新する(S46)。工程S46の処理の詳細は、図8のフローチャート図に基づいて後述する。
一方、分類項目GRの算出した予測値ANが、選択した事例データFEに予め設定される分類項目GRと一致する場合は(S45のNO)、モデル生成部22は事例データFEに含まれる特徴量の重みを更新しない。そして、終了条件を満たしていない場合(S47のNO)、モデル生成部22は、次の事例データFEを選択し(S43)、工程S44〜S46の処理を繰り返す。終了条件を満たす場合(S47のYES)、モデル生成部22は、処理を終了する。
図2のフローチャート図で説明したとおり、終了条件は、例えば、分類項目GRの予測値ANが、事例データFEに予め設定される分類項目GRと一致する正解の精度が徐々に向上し、精度の変移が収束した場合を示す。つまり、モデル生成部22は、分類項目GRの予測値ANの一致の精度が所定の基準に達した場合に、教師データTdに基づく重みの生成処理を終了する。これにより、モデル生成部22は、重みを、高精度に生成することができる。
図8は、本実施の形態例における特徴量の重みの更新処理(図7の工程S46)を説明するフローチャート図である。図8のフローチャート図は、図4のフローチャート図に示した基準の、特徴量の重みの更新処理と工程S52、S53の処理が異なる。
モデル生成部22は、選択中の事例データFEが含む特徴量から、特徴量を1つ選択する(S51)。ここで、本実施の形態例におけるモデル生成部22は、選択した特徴量の出現確率Pbにしたがって、当該特徴量の重みを更新の可否を決定する(S52)。
具体的に、モデル生成部22は、選択した特徴量の各分類項目の出現確率Pbを記憶媒体14等から読み出す。そして、モデル生成部22は、選択した特徴量の各分類項目の出現確率Pbにしたがって、事例データFEが含む選択中の特徴量の値を採用するか否かを判定する。そして、モデル生成部22は、選択中の特徴量の値を採用する場合に、当該特徴量の重みを更新する旨、決定する。また、モデル生成部22は、選択中の特徴量の値を採用しない場合は、当該特徴量の重みを更新しない旨、決定する。
より具体的に、モデル生成部22は、選択中の特徴量の、事例データFEに予め設定される分類項目の出現確率Pbに基づいて、選択中の特徴量が真の分布の当該分類項目に出現する確実性が高い場合に、選択中の特徴量の値を採用する。言い換えると、モデル生成部22は、選択中の特徴量の、事例データFEに予め設定される分類項目の出現確率Pbに基づいて、選択中の特徴量が真の分布の別の分類項目に出現する確実性が高い場合は、選択中の特徴量の値を採用しない。工程S52の処理の詳細は、具体例に基づいて後述する。
選択中の特徴量の重みを更新しない場合(S53のNO)、モデル生成部22は、選択中の事例データFEが含む別の特徴量に関して、出現確率Pbにしたがって重みの更新の可否を決定する(S52)。一方、選択中の特徴量の重みを更新する場合(S53のYES)、モデル生成部22は、図4のフローチャート図で説明したとおり、選択中の事例データFEの分類項目を示す値(この例では、+1/−1)に特徴量の値を乗算した値を、重みに加算する。これにより、モデル生成部22はモデルMdを更新する(S54)。
選択中の事例データFEが含むすべての特徴量について工程S52、S53の処理を行っていない場合は(S55のNO)、モデル生成部22は、選択中の事例データFEが含む別の特徴量を対象として工程S52〜S54の処理を行う。一方、選択中の事例データFEが含むすべての特徴量について工程S52、S53の処理を完了した場合(S55のYES)、モデル生成部22は、選択中の事例データFEに基づく重みの更新処理(図7のS46)を終了する。モデル生成部22は、例えば、生成した特徴量ごとの重みをモデルMdとして、記憶媒体14等に記憶する。
なお、図7のフローチャート図における重みの更新処理S46において、モデル生成部22は、例えば、終了条件を満たすまで、事例データFEに基づく重みの生成処理を繰り返す。したがって、モデル生成部22は、同一の事例データFEを複数回入力してモデルMdを生成する場合がある。これにより、モデル生成部22は、事例データFEが少数の場合でも、教師データTdに基づく重みを、より高精度に生成することができる。
図7のフローチャート図によると、モデル生成部22は、事例データFEを選択する都度、事例データFEに含まれる特徴量の値を出現確率Pbにしたがって採用するか否かを判定し直す。つまり、モデル生成部22は、毎回、特徴量の出現確率に基づいて採用し直した特徴量の値に基づいて、モデルを生成する。
特徴量の値が出現確率Pbにしたがって採用されることから、同一の事例データであっても、特徴量の値が採用されるか否かの結果は同一ではない。したがって、モデル生成部22は、同一の事例データFEを複数回入力する場合、入力する都度、事例データFEに含まれる特徴量の値を出現確率Pbにしたがって採用し直して重みを更新することにより、重みの精度を向上させることができる。
ただし、図7のフローチャート図の例に限定されるものではなく、モデル生成部22は、同一の事例データFEを複数回入力する場合に、入力する都度、事例データFEに含まれる特徴量の値を出現確率Pbにしたがって採用し直さなくてもよい。例えば、モデル生成部22は、一度、出現確率Pbにしたがって採用した特徴量の値を、繰り返し入力して重みを更新してもよい。つまり、モデル生成部22は、一回、特徴量の出現確率に基づいて採用した同一の特徴量の値に基づいてモデルを生成してもよい。
続いて、出現確率Pbの算出処理を具体例に基づいて説明する。出現確率Pbの算出処理の説明に当たり、本実施の形態例における真の分布DI、教師データTdが有する分布を説明する。
[真の分布と教師データの分布]
図9は、本実施の形態例における分類項目の真の分布DIと教師データTdが有する分類項目の分布の相違を説明する図である。前述したとおり、データ分類装置10には、分類の対象とするデータの真の分布DIが入力される。図9の例によると、真の分布DIは、「1(スパム記事/+1):9(非スパム記事/−1)」である。これは、スパム記事の数がn件である場合、非スパム記事の数は、n×9件であることを示す。
また、ユーザが教師データTdを用意することから、教師データTdの分類項目の分布、教師データTdの各分類項目における特徴量を含む教師データの割合についても入力される。図9の例によると、教師データTdの各分類項目に属する事例データFEの数は「100件(スパム記事/+1):200(非スパム記事/−1)」である。したがって、教師データTdの分布は、「1(スパム記事/+1):2(非スパム記事/−1)」である。
この例では、特徴量「水」の例にしたがって説明する。図9の例において、教師データTdの分類項目「スパム記事/+1」の100件の事例データのうち、特徴量「水」を含む事例データは5件である。また、特徴量「水」について、分類項目「非スパム記事/−1」の200件の事例データのうち、特徴量「水」を含む事例データは20件である。したがって、教師データTdの各分類項目における特徴量を含む教師データの割合は、スパム記事「5/100」、非スパム記事「20/200」である。
また、図9の例によると、教師データTdのスパム記事の比率(1/3)は、真の分布DIのスパム記事の比率(1/10)に対して大きい。したがって、真の分布DIを考慮することなく、教師データTdに基づいてモデルMdを生成した場合、教師データTdのスパム記事の事例データFEに含まれる特徴量の重みがより大きい値に算出されてしまう。つまり、教師データTdのスパム記事の比率が、真の分布DIのスパム記事の比率に対して大きいことから、よりスパム記事に分類され易いモデルMdが生成される。
これに対し、本実施の形態例によると、真の分布DIを有するように特徴量が採用された教師データTdに基づいてモデルMdを生成することにより、特徴量の重みがより高精度に生成される。
[教師データ]
図10は、図9で説明した教師データTdを表H1にしたがって説明する図である。図10の表H1は、図9に示す教師データTdの一部の事例データFEを表す。また、前述したとおり、本実施の形態例における学習器(データ分類装置)10−1は、出現確率Pbにしたがって教師データTdに含まれる特徴量の値を採用し、モデルMdを生成する。
図10の表H1の行それぞれは、1つの事例データFE(この例では、文書)を表す。表H1のラベルは、その文書の属する分類項目GRを表し、ラベル「+1」はスパム記事、ラベル「−1」は非スパム記事を示す。また、表H1の各セルは、行に対応する文書が、列に対応する特徴量を含む場合に値「1」を、含んでいない場合に値「0」を有する。なお、図10に示す表H1は、単語を1つ有するか、複数有するかに関わらず、値「1」を有する。
具体的に、図10の例の教師データTdの1行目に示す事例データFEは、スパム記事であって、特徴量「格安」「送料」「金運」を有し、特徴量「水」を有しない。また、2行目に示す事例データFEは、非スパム記事であって、特徴量「送料」を有し、特徴量「格安」「金運」「水」を有しない。同様にして、3行目に示す事例データFEは、非スパム記事であって、特徴量「水」を有し、特徴量「格安」「送料」「金運」を有しない。他の行の事例データFEについても、同様である。
次に、特徴量「水」を例示して、出現確率を具体的に説明する。図9、図10に示す教師データTdの特徴量「水」を含む事例データFEが真の分布DIのスパム記事の事例データFEに出現する出現確率、及び、非スパム記事の事例データFEに出現する出現確率の算出処理を説明する。
本実施の形態例におけるモデル生成部22は、教師データTdの特徴量(例えば、「水」)が、真の分布DIの分類項目「スパム記事」「非スパム記事」に含まれる出現確率を、ベイズ推定に基づいて算出する。ベイズ推定は、一般的に知られる手法である。
式1は、教師データTdの特徴量wi(本実施の形態例では、単語)が、真の分布DIの分類項目Aに含まれる出現確率を算出する計算式である。式1では、特徴量「wi」を含む分類項目Aの事例データFEの割合P(wi|A)(=式4)に、真の分布の分類項目Aの割合P(A)(=式6)を乗算した値を、特徴量「wi」を含む割合P(wi)(=式3)で除算する。これにより、事例データFEの特徴量「wi」が、真の分布DIの分類項目Aに出現する出現確率を算出する。
まず、式1で使用する変数を説明する。初めに、式6から順に説明する。式6では、真の分布の分類項目Aの割合P(A)を算出する。具体的に、式6における変数RAは、真の分布DIにおける分類項目Aの比率であって、変数RBは真の分布DIにおける分類項目Bの比率である。したがって、式6が算出する変数P(A)は、真の分布DI全体における分類項目Aの割合を示す。
次に、式4について説明する。式4は、教師データTdの分類項目Aにおいて特徴量wiを含む事例データFEの割合P(wi|A)を算出する。式4における変数NAは、教師データTdにおける分類項目Aの事例データFEの数である。また、式4の変数fA(wi)は、教師データTdの分類項目Aの事例データFE内の特徴量「wi」を含む事例データFEの数である。
次に、式3について説明する。式3は、特徴量「wi」を含む事例データの割合を、真の分布にしたがって正規化した割合P(wi)を算出する。式3における変数NAは教師データTdにおける分類項目Aの事例データFEの数、変数NBは教師データTdにおける分類項目Bの事例データFEの数である。
また、式3における変数fA(wi)は、教師データTdの分類項目Aの事例データFE内の特徴量「wi」を含む事例データFEの数である。同様にして、変数fB(wi)は、教師データTdの分類項目Bの事例データFE内の特徴量「wi」を含む事例データFEの数である。また、式3における変数P(B)は、式7に基づいて算出され、真の分布DI全体における分類項目Bの割合を示す。
つまり、式3が算出する変数P(wi)は、特徴量「wi」を含む事例データ(fA(wi)/NA、fB(wi)/NB)の割合を、真の分布にしたがって正規化した値である。そして、式1は、式3によって算出される変数P(wi)、式4が算出する変数P(wi|A)、式6が算出す変数P(A)に基づいて、教師データTdの特徴量wiが真の分布DIの分類項目Aに含まれる出現確率P(A|wi)を算出する。
次に、式2は、教師データTdの特徴量wiが、真の分布DIの分類項目Bに含まれる出現確率を算出する計算式である。式2では、特徴量「wi」を含む分類項目Bの事例データFEの割合P(wi|B)(=式5)に、真の分布の分類項目Bの比率P(B)(=式7)を乗算した値を、特徴量「wi」を含む割合P(wi)(=式3)で除算する。式2における変数P(wi|B)は式5によって算出される。また、式2における変数P(wi)は、式3によって算出され、変数P(B)は式7によって算出される。変数P(wi)、変数P(B)については前述したとおりである。
式5が算出する変数P(wi|B)は、教師データTdの分類項目Bにおいて特徴量「wi」を含む事例データFEの割合を示す。式5における変数NBは、教師データTdにおける分類項目Bの事例データFEの数である。また、式5の変数fB(wi)は、教師データTdの分類項目Bの事例データFE内の特徴量wiを含む事例データFEの数である。また、前述したとおり、式は、特徴量「wi」を含む事例データ(fA(wi)/NA、fB(wi)/NB)の割合を、真の分布にしたがって正規化した変数P(wi)を算出する。
そして、式2は、式3が算出する変数P(wi)、式5が算出する変数P(wi|B)、式7が算出する変数P(B)に基づいて、教師データTdの特徴量wiが真の分布DIの分類項目Bに含まれる出現確率P(B|wi)を算出する。
図9、図10に示す真の分布DI、教師データTdに対応すると、例えば、分類項目Aはスパム記事、分類項目Bは非スパム記事に該当する。まず、教師データTdの特徴量「水」が真の分布DIの非スパム記事に含まれる出現確率の算出例を説明する。
式6が算出する、真の分布DI全体におけるスパム記事の割合P(A)は、値「0.1(=1/10)」である。また、式7が算出する、真の分布DI全体における非スパム記事の割合P(B)は、値「0.9(=9/10)」である。また、式4が算出する、教師データTdのスパム記事に属する事例データFE内の特徴量「水」を含む事例データFEの割合fA(wi)は、値「0.05(=5/100)」である。また、式5が算出する、教師データTdの非スパム記事に属する事例データFE内の特徴量「水」を含む事例データFEの割合fB(wi)は、値「0.1(=20/200)」である。
したがって、式3が算出する、真の分布DIに基づいて正規化した、教師データTd全体における特徴量wiを含む事例データFE数の割合P(wi)は、値「0.09736842105264158…(=(5*(1/10)+20*(9/10)) / (100*(1/10)+200*(9/10)))」となる。そして、式1は、教師データTdの特徴量「水」が真の分布DIのスパム記事に含まれる出現確率P(A|wi)として、値「0.05135135135135136(=「0.05*0.1/0.09736842105264158…」)」を算出する。
したがって、図9、図10が示す教師データTdの特徴量「水」が、真の分布DIのスパム記事に含まれる出現確率P(A|wi)は約5%(≒0.05135…)である。特徴量「水」のスパム記事の出現確率が値「5%」である場合、教師データTdが有する特徴量「水」を含む事例データFEが、真の分布DIのスパム記事のデータからサンプリングされている確率が5%であることを示す。これは、教師データTdが有する特徴量「水」を含む事例データFEが、95%の確率で、真の分布DIの非スパム記事のデータから偶発的にサンプリングされてしまったことを示す。
したがって、モデル生成部22は、教師データTdのスパム記事の事例データFEが有する特徴量「水」の値を、5%の確率で教師データTdとして採用する。即ち、モデル生成部22は、教師データTdは、教師データTd内のスパム記事の事例データFEが有する特徴量「水」の値を、95%の確率で採用しない。
次に、教師データTdの特徴量「水」が真の分布DIの非スパム記事に含まれる出現確率の算出例を説明する。式2は、教師データTdの特徴量「水」が真の分布DIの非スパム記事に含まれる出現確率P(B|wi)として、値「0.9243243243243244(=「0.1*0.9/0.09736842105264158…」)」を算出する。
したがって、図9、図10が示す教師データTdの特徴量「水」が、真の分布DIの非スパム記事に含まれる出現確率P(B|wi)は92%(≒0.92432…)である。特徴量「水」の非スパム記事の出現確率が値「92%」である場合、教師データTdが有する特徴量「水」を含む事例データFEが、真の分布DIの非スパム記事のデータからサンプリングされている確率が92%であることを示す。これは、教師データTdが有する特徴量「水」を含む事例データFEが、8%の確率で、真の分布DIのスパム記事のデータから偶発的にサンプリングされてしまったことを示す。
したがって、モデル生成部22は、教師データTdの非スパム記事の事例データFEが有する特徴量「水」の値を、92%の確率で教師データTdとして採用する。即ち、モデル生成部22は、教師データTdは、教師データTd内の非スパム記事の事例データFEが有する特徴量「水」の値を、8%の確率で採用しない。
[教師データの採用]
図11は、教師データTdの採用処理の一例を示す図である。図11の教師データTdを表す表H1は、図10の表H1と同一であって、表H2は出現確率Pbに従った特徴量の採用結果を表す教師データTdxを表す表である。前述したとおり、本実施の形態例における教師データTdの特徴量「水」が、真の分布DIのスパム記事への出現確率Pbは5%であって、真の分布DIの非スパム記事への出現確率Pbは92%である。
具体的に、モデル生成部22は、教師データTdの特徴量「水」を含むスパム記事の事例データFEのうち、95%の事例データFEの特徴量「水」の値「1」を採用しない。採用されない特徴量「水」の値「1」は、値「0」とみなされる。したがって、表H1に示す教師データTd内のスパム記事(ラベル:+1)に属する事例データFEにおける特徴量「水」の値「1」は、95%の確率で値「0」となり、5%の確率で値「1」となる。具体的に、図11の表H1の4行目のスパム記事(ラベル:+1)の事例データFEの特徴量「水」の値「1」p1は、95%の確率に該当したため採用されず、表H2において値「0」となっている。
図9で説明したとおり、本実施の形態例は100件のスパム記事の事例データFEのうち、特徴量「水」を含む事例データFEは5件である。したがって、5件の事例データFEのうち、5%の事例データFEの特徴量「水」の値のみが採用されることを示す。このため、教師データTd(H1)のスパム記事の事例データFEにおける特徴量「水」の値は、ほとんど採用されない。
また、モデル生成部22は、教師データTdの特徴量「水」を含む非スパム記事の事例データFEのうち、8%の事例データFEの特徴量「水」の値「1」を採用しない。採用されない特徴量「水」の値「1」は、値「0」とみなされる。したがって、表H1に示す教師データTd内の非スパム記事(ラベル:−1)に属する事例データFEにおける特徴量「水」の値「1」は、8%の確率で値「0」となり、92%の確率で値「1」となる。
図9で説明したとおり、本実施の形態例における200件のスパム記事の事例データFEのうち、特徴量「水」を含む事例データFEは20件である。したがって、20件の事例データFEのうち、92%の事例データFEの特徴量「水」の値が採用されることを示す。このため、教師データTd(H1)の非スパム記事の事例データFEにおける特徴量「水」の値は、ほぼ採用される。
また、モデル生成部22は、別の特徴量「格安」「送料」金運」等についても、スパム記事/非スパム記事における各出現確率を算出し、出現確率にしたがって教師データTdにおける各特徴量の値「1」を採用する。したがって、図11の表H1の6行目の非スパム記事(ラベル:−1)の事例データFEの特徴量「格安」の値「1」p2は、特徴量「格安」の非スパム記事の出現確率Pbにしたがって採用されず、表H2において値「0」となっている。
このように、モデル生成部22は、各特徴量の出現確率に基づいて、真の分布DIと比率が異なる分布を有する教師データTdを、真の分布DIと同一の比率を有するように教師データTdの特徴量の値を採用し、モデルMdを生成する。そして、データ分類部23は、モデルMdに基づいて、分類の対象となるデータを分類する。モデル生成部22は、より精度の高いモデルMdを生成することができることから、データ分類部23は、精度の高いモデルMdに基づいて、より高精度に、データを分類項目に分類することができる。
なお、本実施の形態例におけるデータ分類装置10は、教師データTdの事例データFEの特徴量を部分的に除いて採用する。即ち、本実施の形態例におけるデータ分類装置10は、教師データTdの事例データFE単位に採用の可否を判定するのではなく、事例データFEの特徴量の値単位に採用の可否を判定する。例えば、図11の表H2において、データ分類装置10は、4行目の事例データFE−1を不採用にするのではなく、4行目の事例データFE−1における特徴量「水」の値p1を不採用とする。
これにより、本実施の形態例におけるデータ分類装置10によると、教師データTdの事例データFEの量を減少させることなく、モデルMdを生成することができる。したがって、十分な量の事例データFEを用意できない場合であっても、データ分類装置10は、事例データFEの量を減少させることなく、真の分布DIと比率が一致した教師データTdを生成することができる。
また、本実施の形態例におけるデータ分類装置10は、教師データTdの特徴量単位に採用の可否を判定するのではなく、事例データFEの特徴量の値単位に採用の可否を判定する。例えば、図11の表H2において、データ分類装置10は、特徴量「水」自体(WD)を不採用にするのではなく、一部の事例データFEに含まれる特徴量「水」の値p1を不採用とする。
これにより、本実施の形態例におけるデータ分類装置10によると、教師データTdの特徴量の数を減少させることなく、モデルMdを生成することができる。したがって、十分な量の事例データFEを用意できない場合であっても、データ分類装置10は、特徴量の数を減少させることなく、真の分布DIと比率が一致した教師データTdを生成することができる。
したがって、データ分類装置10は、教師データTdの情報量を大幅に減少させることなく、真の分布DIと同一の分類項目GRの比率を有する教師データTdを使用することができる。つまり、データ分類装置10は、十分な量の教師データTdを用意できない場合であっても、分類精度の高いモデルMdを生成することができる。
図12は、教師データTdの別の例を表H3にしたがって説明する図である。図10、図11の例では、事例データFEそれぞれが有する特徴量(単語)の数に関わらず、特徴量を有する場合は値「1」を、有しない場合は値「0」を有する教師データTdを例示した。しかしながら、教師データTdは、事例データFEそれぞれが有する特徴量(単語)の数を、特徴量の値として有していてもよい。
具体的に、図12の表H3の1行目に示す事例データFEは、スパム記事であって、単語「格安」「金運」をそれぞれ1つずつ、単語「送料」を4つ有し、単語「水」を有していない。また、2行目に示す事例データFEは、非スパム記事であって、単語「送料」を3つ有し、単語「格安」「金運」「水」を有していない。同様にして、3行目に示す事例データFEは、非スパム記事であって、単語「水」を3つ有し、単語「格安」「送料」「金運」を有していない。また、4行目に示す事例データFEは、スパム記事であって、単語「格安」「水」をそれぞれ2つ有し、単語「送料」「金運」を有していない。他の行の事例データFEについても、同様である。
図12では、図10、図11の例と同様にして、教師データTdの特徴量「水」が、真の分布DIのスパム記事に含まれる出現確率が5%であって、非スパム記事に含まれる出現確率が92%である場合を例示する。図12のような教師データTdについても、モデル生成部22は、特徴量「水」の値がいずれであっても、教師データTdの特徴量「水」を含むスパム記事の事例データFEのうち、95%の事例データFEの特徴量「水」の値を採用しない。
例えば、図12の表H3の4行目のスパム記事(ラベル:+2)の事例データFEの特徴量「水」の値「2」p4は、95%の確率に該当する場合、値「0」となる。同様にして、例えば、表H3の3行目の非スパム記事(ラベル:−1)の事例データFEの特徴量「水」の値「3」p3は、8%の確率に該当する場合、値「0」となる。他の特徴量についても、同様である。
以上のように、本実施の形態例のデータの分類方法によると、プロセッサが、特徴量を含む教師データがデータの分布の分類項目に出現する出現確率を算出する、算出工程を有する。算出工程では、分類対象のデータの複数の分類項目の第1の比率と、複数の教師データの複数の分類項目の第2の比率と、複数の教師データの分類項目それぞれにおける特徴量を含む教師データの割合とを入力とする。また、本実施の形態例のデータの分類方法によると、プロセッサが、出現確率に基づいた特徴量を有する複数の教師データに基づいて、特徴量及び当該特徴量の重みを有する規則を生成する生成工程を有する。また、データの分類方法によると、プロセッサが、分類の対象とする複数のデータを、生成した規則に基づいて分類する分類工程を有する。
これにより、本実施の形態例におけるデータの分類方法によると、教師用データTdが有する分類項目の分布に依存することなく、分類対象のデータが有する分布(真の分布)に基づいたモデルMdを生成することが可能になる。したがって、分類対象のデータが有する分布に基づいたモデルMdにしたがって、分類対象のデータをより高精度に分類することが可能になる。
上記の実施例では、分類対象のデータが有する真の分布をユーザに入力させる例で説明したが、分類器10−2を学習させながら、分類する対象のデータが有する分布を求めてもよい。また、日本の人口統計に合うように、言語処理にてユーザIDを収集したソーシャルメディア分析においては、真の分布に合うように分類する対象集合を作成している場合がある。このような場合に、対象集合を定義する情報に真の分布が含まれていれば、その情報に含まれる真の分布を用いても良い。
このような集合では、例えば、年代が若いほど、ユーザの属性情報が開示され、年代が高いほど、ユーザの属性情報が開示されにくい傾向がある。そのため年代が高いほど、言語解析により推定したユーザが増え、例えば、年代で分類する場合に、教師データ(属性情報が開示されるユーザ)の分布と真の分布との差が生じてしまうことがある。本実施例は、このように、真の分布は固定されており、教師データ(ユーザの属性情報の開示)が変更される場合にも有効である。
また、教師データの分布を真の分布に適合させるために、モデルにバイアスをかける手法や、ランキングによる手法がある。機械学習における分類において、例えば、教師データが有する分類項目の比率が同率ではない場合、学習器は、データが多数派の分類項目に分類され易いモデルを生成する。モデルにバイアスをかける手法によると、分類される比率が真の分布に適合するように、学習器が生成したモデルにバイアスをかける(特徴量の重みを加算する)。
しかしながら、モデルにバイアスをかける手法によると、本来、少数派の分類項目(この例では、スパム記事)に寄与する特徴量の影響が、多数派の分類項目(この例では、非スパム記事)でも大きくなってしまう。例えば、単語「送料無料」という特徴量を例示する。単語「送料無料」はスパム記事により多く含まれることが推定されるが、非スパム記事にも含まれ得る。したがって、教師データの比率を真のデータの比率に適合させるために、単語「送料無料」の重みを加算した場合、非スパム記事への分類にも寄与してしまうことになる。
また、スパム記事と非スパム記事両方に同率に含まれる単語(例えば、「今日」) は、中立的な特徴量である。しかしながら、教師データの比率を真のデータの比率に適合させるために、単語「今日」の重みを加算した場合、非スパム記事への分類にも寄与してしまうことになる。
このように、多数派の分類項目にバイアスをかける(特徴量の重みを調整する)方法によると、分類の精度が向上しない。また、バイアスのかけ方は、例えば、経験的に求められるため、最適な結果の保証が困難であると共に、手続き上のコストが高くなる。また、モデルは、教師データを高精度に分類するよう学習器によって最適化されているため、任意にバイアスをかけた場合、高精度の分類結果を導く保証が失われる。
次に、ランキングによる手法を説明する。分類器は、モデルに基づいて一定量の分類対象のデータを分類項目に該当する度合い順にランキングする。そして、分類器は、一定量のデータのランキング結果に基づいて、真の分布に対応するようにデータを分類する。これにより、教師データの比率が真のデータの比率と一致しない場合であっても、分類対象のデータが真の分布に従って分類可能になる。
しかしながら、ランキングによる手法を利用する場合、分類対象のデータを逐次的に分類することはできず、一定量のデータを蓄積してから分類する必要がある。また、分類の信頼性を確保するために、十分な量のデータをランキングする必要があり、事前にデータ量を計ることが容易ではない。
これに対し、本実施の形態例におけるデータの分類方法によると、分類対象のデータが有する分布に基づいた、教師データTdを取得する。そして、本実施の形態例におけるデータの分類方法では、取得した教師データTdに基づいて生成したモデルMdを生成する。これにより、モデルMdに対するバイアスの調整や、ランキング方式による分類の調整が不要になる。
また、本実施の形態例のデータ分類方法によると、真の分布DIとの整合性を考慮することなく、教師データTdを生成、及び、追加することができる。例えば、スパム記事として報告された事例データFEを大量に入手し、入手したスパム記事の事例データFE全てを教師データTdとして用いる場合、教師データTdのスパム記事/非スパム記事の事例データFEの分布が、真の分布DIと一致しないことがある。スパム記事の比率が真の分布におけるスパム記事の比率より大きい場合、スパム記事に分類され易い特徴量の重みが生成されてしまう。
これに対し、本実施の形態例のデータ分類方法によると、入手したスパム記事全てを、教師データTdとして用いた場合であっても、真の分布に対応した出現確率Pbに基づいて教師データTdが有する特徴量の値が採用される。したがって、真の分布DIが有する分類項目の比率通りにデータを分類可能なモデルMdが生成可能になる。
また、本実施の形態例におけるデータ分類方法の生成工程では、特徴量の出現確率に基づいて、複数の教師データの特徴量の値を使用するか否か判定し、使用すると判定した特徴量の値に基づいて、特徴量及び当該特徴量の重みを有する規則を生成する。これにより、本実施の形態例のデータ分類方法によると、分類対象のデータが有する分布を適用した教師用データTdに基づいて、モデルMdを生成することができる。
また、本実施の形態例におけるデータ分類方法の生成工程では、特徴量の第1の分類項目の出現確率に基づいて複数の教師データの第1の分類項目に属する教師データの特徴量の値を使用するか否か判定する。また、生成工程では、特徴量の第2の分類項目の出現確率に基づいて複数の教師データの第2の分類項目に属する教師データの特徴量の値を使用するか否か判定する。
これにより、本実施の形態例のデータ分類方法によると、特徴量の各分類項目の出現確率に基づいて、分類項目それぞれに属する教師データに含まれる特徴量の値を、真の分布に対応するように採用することが可能になる。
また、本実施の形態例のデータ分類方法の生成工程は、生成した規則(モデル)Mdに基づく、複数の教師データの分類項目への分類結果の精度が所定の基準に達するまで繰り返される。これにより、複数の教師データに基づいて、より高精度にデータを分類可能なモデルMdが生成可能になる。
また、本実施の形態例のデータ分類方法の生成工程では、複数の教師データを繰り返し使用する場合、一回、特徴量の出現確率に基づいて取得した特徴量の値に基づいて規則(モデル)Mdを生成する。したがって、複数の教師データに基づいて採用された同一の特徴量の値に基づいて、繰り返しモデルMdが生成されることにより、より高精度にデータを分類可能なモデルMdが生成可能になる。
また、本実施の形態例のデータ分類方法の生成工程では、複数の教師データを繰り返し使用する場合、毎回、特徴量の出現確率に基づいて取得し直した特徴量の値に基づいて規則(モデル)Mdを生成する。したがって、毎回、複数の教師データに基づいて採用された同一ではない特徴量の値に基づいて、繰り返しモデルMdが生成されることにより、さらに高精度にデータを分類可能なモデルMdが生成可能になる。
[他の実施の形態例]
なお、上記の実施例では、データ分類装置10が、出現確率に基づいて、教師データTdの特徴量を採用するか否かを判定した。ただし、この例に限定されるものではない。データ分類装置10は、例えば、教師データTdの特徴量が、出現確率に基づく特徴量と一致するように、さらに、特徴量を修正してもよい(例えば、図11の例によると、値0から値1に修正)。または、データ分類装置10は、例えば、教師データTdの特徴量が、出現確率に基づく特徴量と一致するように、採用する事例データFEの追加や削除等を行ってもよい。
以上の実施の形態をまとめると、次の付記のとおりである。
(付記1)
分類の対象とする複数のデータを、前記データに含まれる特徴量に基づいて複数の分類項目に分類する方法であって、
プロセッサが、前記データの前記複数の分類項目の第1の比率と、複数の教師データの前記複数の分類項目の第2の比率と、前記複数の教師データの前記分類項目それぞれにおける前記特徴量を含む前記教師データの割合とに基づいて、前記特徴量を含む教師データが前記データの分布の前記分類項目に出現する出現確率を算出する算出工程と、
プロセッサが、前記出現確率に基づいた前記特徴量を有する前記複数の教師データに基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する生成工程と、
プロセッサが、前記分類の対象とする複数のデータを、前記生成した規則に基づいて分類する分類工程と、を有するデータ分類方法。
(付記2)
付記1において、
前記生成工程では、前記特徴量の前記出現確率に基づいて、前記複数の教師データの前記特徴量の値を使用するか否か判定し、前記使用すると判定した特徴量の値に基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する、データ分類方法。
(付記3)
付記2において、
前記生成工程では、前記特徴量の第1の分類項目の前記出現確率に基づいて前記複数の教師データの前記第1の分類項目に属する前記教師データの前記特徴量の値を使用するか否か判定し、前記特徴量の第2の分類項目の前記出現確率に基づいて前記複数の教師データの前記第2の分類項目に属する前記教師データの前記特徴量の値を使用するか否か判定するデータ分類方法。
(付記4)
付記1乃至3のいずれかにおいて、
前記生成工程は、前記生成した規則に基づく前記複数の教師データの前記分類項目への分類結果の精度が所定の基準に達するまで繰り返されるデータ分類方法。
(付記5)
付記4において、
前記生成工程では、前記複数の教師データを繰り返し使用する場合、一回、前記特徴量の前記出現確率に基づいて取得した特徴量の値に基づいて前記規則を生成するデータ分類方法。
(付記6)
付記4において、
前記生成工程では、前記複数の教師データを繰り返し使用する場合、毎回、前記特徴量の前記出現確率に基づいて取得し直した特徴量の値に基づいて前記規則を生成するデータ分類方法。
(付記7)
分類の対象とする複数のデータを、前記データに含まれる特徴量に基づいて複数の分類項目に分類する処理であって、
前記データの前記複数の分類項目の第1の比率と、複数の教師データの前記複数の分類項目の第2の比率と、前記複数の教師データの前記分類項目それぞれにおける前記特徴量を含む前記教師データの割合とに基づいて、前記特徴量を含む教師データが前記データの分布の前記分類項目に出現する出現確率を算出し、
前記出現確率に基づいた前記特徴量を有する前記複数の教師データに基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する、
処理をコンピュータに実行させるデータ分類プログラム。
(付記8)
付記7において、
前記規則を生成する処理では、前記特徴量の前記出現確率に基づいて、前記複数の教師データの前記特徴量の値を使用するか否か判定し、前記使用すると判定した特徴量の値に基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する、データ分類プログラム。
(付記9)
付記8において、
前記規則を生成する処理では、前記特徴量の第1の分類項目の前記出現確率に基づいて前記複数の教師データの前記第1の分類項目に属する前記教師データの前記特徴量の値を使用するか否か判定し、前記特徴量の第2の分類項目の前記出現確率に基づいて前記複数の教師データの前記第2の分類項目に属する前記教師データの前記特徴量の値を使用するか否か判定するデータ分類プログラム。
(付記10)
付記7乃至9のいずれかにおいて、
前記規則を生成する処理は、前記生成した規則に基づく前記複数の教師データの前記分類項目への分類結果の精度が所定の基準に達するまで繰り返されるデータ分類プログラム。
(付記11)
分類の対象とする複数のデータを、前記データに含まれる特徴量に基づいて複数の分類項目に分類するデータ分類装置であって、
前記データの前記複数の分類項目の第1の比率と、複数の教師データの前記複数の分類項目の第2の比率と、前記複数の教師データの前記分類項目それぞれにおける前記特徴量を含む前記教師データの割合とを記憶する記憶部と、
前記第1の比率と、前記第2の比率と、前記特徴量を含む前記教師データの割合とに基づいて、前記特徴量を含む教師データが前記データの分布の前記分類項目に出現する出現確率を算出し、前記出現確率に基づいた前記特徴量を有する前記複数の教師データに基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する処理部と、を有するデータ分類装置。
(付記12)
付記11において、
前記処理部は、前記特徴量の前記出現確率に基づいて、前記複数の教師データの前記特徴量の値を使用するか否か判定し、前記使用すると判定した特徴量の値に基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する、データ分類装置。
(付記13)
付記12において、
前記処理部は、前記特徴量の第1の分類項目の前記出現確率に基づいて前記複数の教師データの前記第1の分類項目に属する前記教師データの前記特徴量の値を使用するか否か判定し、前記特徴量の第2の分類項目の前記出現確率に基づいて前記複数の教師データの前記第2の分類項目に属する前記教師データの前記特徴量の値を使用するか否か判定するデータ分類装置。
(付記14)
付記11乃至13のいずれかにおいて、
前記処理部は、前記規則を生成する処理を、前記生成した規則に基づく前記複数の教師データの前記分類項目への分類結果の精度が所定の基準に達するまで繰り返すデータ分類装置。