JP2016018358A - データ分類方法、データ分類プログラム、及び、データ分類装置 - Google Patents

データ分類方法、データ分類プログラム、及び、データ分類装置 Download PDF

Info

Publication number
JP2016018358A
JP2016018358A JP2014140254A JP2014140254A JP2016018358A JP 2016018358 A JP2016018358 A JP 2016018358A JP 2014140254 A JP2014140254 A JP 2014140254A JP 2014140254 A JP2014140254 A JP 2014140254A JP 2016018358 A JP2016018358 A JP 2016018358A
Authority
JP
Japan
Prior art keywords
data
classification
teacher data
feature amount
feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014140254A
Other languages
English (en)
Other versions
JP6365032B2 (ja
Inventor
哲朗 高橋
Tetsuro Takahashi
哲朗 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014140254A priority Critical patent/JP6365032B2/ja
Priority to US14/791,651 priority patent/US9582758B2/en
Publication of JP2016018358A publication Critical patent/JP2016018358A/ja
Application granted granted Critical
Publication of JP6365032B2 publication Critical patent/JP6365032B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

【課題】教師データと分析するデータの分布が異なっている場合でも、良好な分類規則を生成し、より正確な分析を行うデータ分類方法、データ分類プログラム、及び、データ分類装置を提供する。
【解決手段】分類の対象とする複数のデータを、前記データに含まれる特徴量に基づいて複数の分類項目に分類する方法であって、プロセッサが、前記データの前記複数の分類項目の第1の比率と、複数の教師データの前記複数の分類項目の第2の比率と、前記複数の教師データの前記分類項目それぞれにおける前記特徴量を含む前記教師データの割合とに基づいて、前記特徴量を含む教師データが前記データの分布の前記分類項目に出現する出現確率を算出する算出工程と、プロセッサが、前記出現確率に基づいた前記特徴量を有する前記複数の教師データに基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する生成工程と、プロセッサが、前記分類の対象とする複数のデータを、前記生成した規則に基づいて分類する分類工程と、を有する。
【選択図】図8

Description

本発明は、データ分類方法、データ分類プログラム、及び、データ分類装置に関する。
教師データに基づく機械学習によって、データを分類する技術がある(例えば、特許文献1)。教師データに基づく機械学習は、画像や文書などのデータの分類などに幅広く使われる。複数のデータを複数の項目の1つに分類する場合、学習器が、教師データに基づいて、分類のための特徴量及びその重み付けを示す規則(モデル)を生成する。そして、分類器が、複数のデータを入力として、データに含まれる特徴量の重み付けに基づいてスコアを算出し、スコアに基づいてデータを複数の項目に分類する。
特開2005-44330号公報
このように、機械学習によると、教師データを正解のデータとして、分類のためのモデルが学習される。ただし、教師データが有する分布は、分類の対象となるデータが有する分布(真の分布と称する)と異なることがある。教師データが有する分布が真の分布と異なる場合、データの分類精度が低下することがある。
1つの側面は、本発明は、教師データと分析するデータの分布が異なっている場合でも、良好な分類規則を生成し、より正確な分析を行うデータ分類方法、データ分類プログラム、及び、データ分類装置を提供する。
第1の側面は、分類の対象とする複数のデータを、前記データに含まれる特徴量に基づいて複数の分類項目に分類する方法であって、プロセッサが、前記データの前記複数の分類項目の第1の比率と、複数の教師データの前記複数の分類項目の第2の比率と、前記複数の教師データの前記分類項目それぞれにおける前記特徴量を含む前記教師データの割合とに基づいて、前記特徴量を含む教師データが前記データの分布の前記分類項目に出現する出現確率を算出する算出工程と、プロセッサが、前記出現確率に基づいた前記特徴量を有する前記複数の教師データに基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する生成工程と、プロセッサが、前記分類の対象とする複数のデータを、前記生成した規則に基づいて分類する分類工程と、を有する。
第1の側面によれば、教師データと分析するデータの分布が異なっている場合でも、良好な分類規則を生成し、より正確な分析を行う。
データの分類処理の概要を説明する図である。 学習器のモデルの生成処理の流れを説明する図である。 図2のフローチャート図における工程S13の処理を説明するフローチャート図である。 図2のフローチャート図における工程S15の処理を説明するフローチャート図である。 本実施の形態例におけるデータ分類装置の構成を説明する図である。 本実施の形態例におけるデータ分類装置のブロック図を説明する図である。 本実施の形態例のデータ分類装置のモデルの生成処理の流れを説明する図である。 図7のフローチャート図における工程S46の処理を説明するフローチャート図である。 本実施の形態例における分類項目の真の分布と教師データが有する分類項目の分布の相違を説明する図である。 図9で説明した教師データを表に基づいて説明する図である。 教師データの採用処理の一例を示す図である。 教師データの別の例を表にしたがって説明する図である。
以下、図面にしたがって本発明の実施の形態について説明する。ただし、本発明の技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。
[データの分類の流れ]
図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の分類項目「スパム記事」「非スパム記事」に含まれる出現確率を、ベイズ推定に基づいて算出する。ベイズ推定は、一般的に知られる手法である。
Figure 2016018358
Figure 2016018358
Figure 2016018358
Figure 2016018358
Figure 2016018358
Figure 2016018358
Figure 2016018358
式1は、教師データTdの特徴量w(本実施の形態例では、単語)が、真の分布DIの分類項目Aに含まれる出現確率を算出する計算式である。式1では、特徴量「w」を含む分類項目Aの事例データFEの割合P(w|A)(=式4)に、真の分布の分類項目Aの割合P(A)(=式6)を乗算した値を、特徴量「w」を含む割合P(w)(=式3)で除算する。これにより、事例データFEの特徴量「w」が、真の分布DIの分類項目Aに出現する出現確率を算出する。
まず、式1で使用する変数を説明する。初めに、式6から順に説明する。式6では、真の分布の分類項目Aの割合P(A)を算出する。具体的に、式6における変数Rは、真の分布DIにおける分類項目Aの比率であって、変数Rは真の分布DIにおける分類項目Bの比率である。したがって、式6が算出する変数P(A)は、真の分布DI全体における分類項目Aの割合を示す。
次に、式4について説明する。式4は、教師データTdの分類項目Aにおいて特徴量wを含む事例データFEの割合P(w|A)を算出する。式4における変数Nは、教師データTdにおける分類項目Aの事例データFEの数である。また、式4の変数f(w)は、教師データTdの分類項目Aの事例データFE内の特徴量「w」を含む事例データFEの数である。
次に、式3について説明する。式3は、特徴量「w」を含む事例データの割合を、真の分布にしたがって正規化した割合P(w)を算出する。式3における変数Nは教師データTdにおける分類項目Aの事例データFEの数、変数Nは教師データTdにおける分類項目Bの事例データFEの数である。
また、式3における変数f(w)は、教師データTdの分類項目Aの事例データFE内の特徴量「w」を含む事例データFEの数である。同様にして、変数f(w)は、教師データTdの分類項目Bの事例データFE内の特徴量「w」を含む事例データFEの数である。また、式3における変数P(B)は、式7に基づいて算出され、真の分布DI全体における分類項目Bの割合を示す。
つまり、式3が算出する変数P(w)は、特徴量「w」を含む事例データ(f(w)/N、f(w)/N)の割合を、真の分布にしたがって正規化した値である。そして、式1は、式3によって算出される変数P(w)、式4が算出する変数P(w|A)、式6が算出す変数P(A)に基づいて、教師データTdの特徴量wが真の分布DIの分類項目Aに含まれる出現確率P(A|w)を算出する。
次に、式2は、教師データTdの特徴量wが、真の分布DIの分類項目Bに含まれる出現確率を算出する計算式である。式2では、特徴量「w」を含む分類項目Bの事例データFEの割合P(w|B)(=式5)に、真の分布の分類項目Bの比率P(B)(=式7)を乗算した値を、特徴量「w」を含む割合P(w)(=式3)で除算する。式2における変数P(w|B)は式5によって算出される。また、式2における変数P(w)は、式3によって算出され、変数P(B)は式7によって算出される。変数P(w)、変数P(B)については前述したとおりである。
式5が算出する変数P(w|B)は、教師データTdの分類項目Bにおいて特徴量「w」を含む事例データFEの割合を示す。式5における変数Nは、教師データTdにおける分類項目Bの事例データFEの数である。また、式5の変数f(w)は、教師データTdの分類項目Bの事例データFE内の特徴量wを含む事例データFEの数である。また、前述したとおり、式は、特徴量「w」を含む事例データ(f(w)/N、f(w)/N)の割合を、真の分布にしたがって正規化した変数P(w)を算出する。
そして、式2は、式3が算出する変数P(w)、式5が算出する変数P(w|B)、式7が算出する変数P(B)に基づいて、教師データTdの特徴量wが真の分布DIの分類項目Bに含まれる出現確率P(B|w)を算出する。
図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の割合f(w)は、値「0.05(=5/100)」である。また、式5が算出する、教師データTdの非スパム記事に属する事例データFE内の特徴量「水」を含む事例データFEの割合f(w)は、値「0.1(=20/200)」である。
したがって、式3が算出する、真の分布DIに基づいて正規化した、教師データTd全体における特徴量wを含む事例データFE数の割合P(w)は、値「0.09736842105264158…(=(5*(1/10)+20*(9/10)) / (100*(1/10)+200*(9/10)))」となる。そして、式1は、教師データTdの特徴量「水」が真の分布DIのスパム記事に含まれる出現確率P(A|w)として、値「0.05135135135135136(=「0.05*0.1/0.09736842105264158…」)」を算出する。
したがって、図9、図10が示す教師データTdの特徴量「水」が、真の分布DIのスパム記事に含まれる出現確率P(A|w)は約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|w)として、値「0.9243243243243244(=「0.1*0.9/0.09736842105264158…」)」を算出する。
したがって、図9、図10が示す教師データTdの特徴量「水」が、真の分布DIの非スパム記事に含まれる出現確率P(B|w)は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のいずれかにおいて、
前記処理部は、前記規則を生成する処理を、前記生成した規則に基づく前記複数の教師データの前記分類項目への分類結果の精度が所定の基準に達するまで繰り返すデータ分類装置。
10:データ分類装置、11:プロセッサ、12:入力装置、13:出力装置、14:記憶媒体、15:メモリ、PR:データ分類プログラム、21:出現確率算出部、22:モデル生成部、23:データ分類部

Claims (8)

  1. 分類の対象とする複数のデータを、前記データに含まれる特徴量に基づいて複数の分類項目に分類する方法であって、
    プロセッサが、前記データの前記複数の分類項目の第1の比率と、複数の教師データの前記複数の分類項目の第2の比率と、前記複数の教師データの前記分類項目それぞれにおける前記特徴量を含む前記教師データの割合とに基づいて、前記特徴量を含む教師データが前記データの分布の前記分類項目に出現する出現確率を算出する算出工程と、
    プロセッサが、前記出現確率に基づいた前記特徴量を有する前記複数の教師データに基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する生成工程と、
    プロセッサが、前記分類の対象とする複数のデータを、前記生成した規則に基づいて分類する分類工程と、を有するデータ分類方法。
  2. 請求項1において、
    前記生成工程では、前記特徴量の前記出現確率に基づいて、前記複数の教師データの前記特徴量の値を使用するか否か判定し、前記使用すると判定した特徴量の値に基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する、データ分類方法。
  3. 請求項2において、
    前記生成工程では、前記特徴量の第1の分類項目の前記出現確率に基づいて前記複数の教師データの前記第1の分類項目に属する前記教師データの前記特徴量の値を使用するか否か判定し、前記特徴量の第2の分類項目の前記出現確率に基づいて前記複数の教師データの前記第2の分類項目に属する前記教師データの前記特徴量の値を使用するか否か判定するデータ分類方法。
  4. 請求項1乃至3のいずれかにおいて、
    前記生成工程は、前記生成した規則に基づく前記複数の教師データの前記分類項目への分類結果の精度が所定の基準に達するまで繰り返されるデータ分類方法。
  5. 請求項4において、
    前記生成工程では、前記複数の教師データを繰り返し使用する場合、一回、前記特徴量の前記出現確率に基づいて取得した特徴量の値に基づいて前記規則を生成するデータ分類方法。
  6. 請求項4において、
    前記生成工程では、前記複数の教師データを繰り返し使用する場合、毎回、前記特徴量の前記出現確率に基づいて取得し直した特徴量の値に基づいて前記規則を生成するデータ分類方法。
  7. 分類の対象とする複数のデータを、前記データに含まれる特徴量に基づいて複数の分類項目に分類する処理であって、
    前記データの前記複数の分類項目の第1の比率と、複数の教師データの前記複数の分類項目の第2の比率と、前記複数の教師データの前記分類項目それぞれにおける前記特徴量を含む前記教師データの割合とに基づいて、前記特徴量を含む教師データが前記データの分布の前記分類項目に出現する出現確率を算出し、
    前記出現確率に基づいた前記特徴量を有する前記複数の教師データに基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する、
    処理をコンピュータに実行させるデータ分類プログラム。
  8. 分類の対象とする複数のデータを、前記データに含まれる特徴量に基づいて複数の分類項目に分類するデータ分類装置であって、
    前記データの前記複数の分類項目の第1の比率と、複数の教師データの前記複数の分類項目の第2の比率と、前記複数の教師データの前記分類項目それぞれにおける前記特徴量を含む前記教師データの割合とを記憶する記憶部と、
    前記第1の比率と、前記第2の比率と、前記特徴量を含む前記教師データの割合とに基づいて、前記特徴量を含む教師データが前記データの分布の前記分類項目に出現する出現確率を算出し、前記出現確率に基づいた前記特徴量を有する前記複数の教師データに基づいて、前記特徴量及び当該特徴量の重みを有する規則を生成する処理部と、を有するデータ分類装置。
JP2014140254A 2014-07-08 2014-07-08 データ分類方法、データ分類プログラム、及び、データ分類装置 Active JP6365032B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014140254A JP6365032B2 (ja) 2014-07-08 2014-07-08 データ分類方法、データ分類プログラム、及び、データ分類装置
US14/791,651 US9582758B2 (en) 2014-07-08 2015-07-06 Data classification method, storage medium, and classification device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014140254A JP6365032B2 (ja) 2014-07-08 2014-07-08 データ分類方法、データ分類プログラム、及び、データ分類装置

Publications (2)

Publication Number Publication Date
JP2016018358A true JP2016018358A (ja) 2016-02-01
JP6365032B2 JP6365032B2 (ja) 2018-08-01

Family

ID=55067831

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014140254A Active JP6365032B2 (ja) 2014-07-08 2014-07-08 データ分類方法、データ分類プログラム、及び、データ分類装置

Country Status (2)

Country Link
US (1) US9582758B2 (ja)
JP (1) JP6365032B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018194919A (ja) * 2017-05-12 2018-12-06 富士通株式会社 学習プログラム、学習方法及び学習装置
WO2019130974A1 (ja) * 2017-12-25 2019-07-04 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
JP2020102069A (ja) * 2018-12-25 2020-07-02 みずほ情報総研株式会社 審査支援システム、審査支援方法及び審査支援プログラム
US11741363B2 (en) 2018-03-13 2023-08-29 Fujitsu Limited Computer-readable recording medium, method for learning, and learning device

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019022136A1 (ja) * 2017-07-25 2019-01-31 国立大学法人東京大学 学習方法、学習プログラム、学習装置及び学習システム
US10839269B1 (en) * 2020-03-20 2020-11-17 King Abdulaziz University System for fast and accurate visual domain adaptation
CN113902010A (zh) * 2021-09-30 2022-01-07 北京百度网讯科技有限公司 分类模型的训练方法和图像分类方法、装置、设备和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7617285B1 (en) * 2005-09-29 2009-11-10 Symantec Corporation Adaptive threshold based spam classification
JP2010092266A (ja) * 2008-10-08 2010-04-22 Nec Corp 学習装置、学習方法及びプログラム
JP2013238983A (ja) * 2012-05-14 2013-11-28 Nippon Telegr & Teleph Corp <Ntt> スパム分類モデル生成装置及び方法及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005044330A (ja) 2003-07-24 2005-02-17 Univ Of California San Diego 弱仮説生成装置及び方法、学習装置及び方法、検出装置及び方法、表情学習装置及び方法、表情認識装置及び方法、並びにロボット装置
JP2007219880A (ja) * 2006-02-17 2007-08-30 Fujitsu Ltd 評判情報処理プログラム、方法及び装置
JP4797069B2 (ja) * 2007-01-18 2011-10-19 富士通株式会社 キーワード管理プログラム、キーワード管理システムおよびキーワード管理方法
JP4833336B2 (ja) * 2007-05-08 2011-12-07 富士通株式会社 キーワード出力プログラム、装置、及び方法
US20100070339A1 (en) * 2008-09-15 2010-03-18 Google Inc. Associating an Entity with a Category

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7617285B1 (en) * 2005-09-29 2009-11-10 Symantec Corporation Adaptive threshold based spam classification
JP2010092266A (ja) * 2008-10-08 2010-04-22 Nec Corp 学習装置、学習方法及びプログラム
JP2013238983A (ja) * 2012-05-14 2013-11-28 Nippon Telegr & Teleph Corp <Ntt> スパム分類モデル生成装置及び方法及びプログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018194919A (ja) * 2017-05-12 2018-12-06 富士通株式会社 学習プログラム、学習方法及び学習装置
WO2019130974A1 (ja) * 2017-12-25 2019-07-04 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
JPWO2019130974A1 (ja) * 2017-12-25 2020-11-19 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
JP7226320B2 (ja) 2017-12-25 2023-02-21 ソニーグループ株式会社 情報処理装置、情報処理方法及びプログラム
US11741363B2 (en) 2018-03-13 2023-08-29 Fujitsu Limited Computer-readable recording medium, method for learning, and learning device
JP2020102069A (ja) * 2018-12-25 2020-07-02 みずほ情報総研株式会社 審査支援システム、審査支援方法及び審査支援プログラム

Also Published As

Publication number Publication date
JP6365032B2 (ja) 2018-08-01
US20160012333A1 (en) 2016-01-14
US9582758B2 (en) 2017-02-28

Similar Documents

Publication Publication Date Title
JP6365032B2 (ja) データ分類方法、データ分類プログラム、及び、データ分類装置
JP5079019B2 (ja) 情報フィルタリングシステム、情報フィルタリング方法および情報フィルタリングプログラム
US10963692B1 (en) Deep learning based document image embeddings for layout classification and retrieval
US9898464B2 (en) Information extraction supporting apparatus and method
JP2012118977A (ja) 文書類似性計算の機械学習に基づく最適化およびカスタマイズのための方法およびシステム
AU2017251771B2 (en) Statistical self learning archival system
US8832015B2 (en) Fast binary rule extraction for large scale text data
JP5638503B2 (ja) テキスト要約装置、方法及びプログラム
US20180260737A1 (en) Information processing device, information processing method, and computer-readable medium
CN113256383B (zh) 保险产品的推荐方法、装置、电子设备及存储介质
US20190205361A1 (en) Table-meaning estimating system, method, and program
Agarwal et al. Sentiment analysis in stock price prediction: a comparative study of algorithms
US20170039451A1 (en) Classification dictionary learning system, classification dictionary learning method and recording medium
CN105164672A (zh) 内容分类
JPWO2017188048A1 (ja) 作成装置、作成プログラム、および作成方法
US9053434B2 (en) Determining an obverse weight
CN113780365A (zh) 样本生成方法和装置
US12008519B2 (en) Methods and apparatus for assessing diversity bias in algorithmic matching of job candidates with job opportunities
US11861512B1 (en) Determining content to present for human review
JP5175585B2 (ja) 文書処理装置、電子カルテ装置および文書処理プログラム
CN108038735A (zh) 数据生成方法及装置
JP5633424B2 (ja) プログラム及び情報処理システム
CN112988699B (zh) 模型训练方法、数据标签的生成方法及装置
JP6538762B2 (ja) 類似度計算装置及び類似度計算方法
JP2006004103A (ja) 文書分類体系間の構造マッチング方法、構造マッチング装置、構造マッチングプログラム及びそのプログラムを記録した記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170406

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180419

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180605

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180618

R150 Certificate of patent or registration of utility model

Ref document number: 6365032

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150