JP2004280712A - データ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラム - Google Patents
データ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラム Download PDFInfo
- Publication number
- JP2004280712A JP2004280712A JP2003074367A JP2003074367A JP2004280712A JP 2004280712 A JP2004280712 A JP 2004280712A JP 2003074367 A JP2003074367 A JP 2003074367A JP 2003074367 A JP2003074367 A JP 2003074367A JP 2004280712 A JP2004280712 A JP 2004280712A
- Authority
- JP
- Japan
- Prior art keywords
- classification
- binary
- svm
- data
- feature value
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】2値分類器の一種であるサポートベクターマシン(SVM:Support Vector Machine)をnC2個組み合わせることで、n値分類を行う従来のDDAG法は、個々の2値分類器の処理時間(個々の2値分類にかかる時間)の長短を考慮していない。本発明では各SVMにおけるSVの個数、SV中の0でない要素の総数などを指標として、個々のSVMにおける処理時間を予測し、当該時間の短いSVMから優先的に分類を行う。これにより、処理時間の長いSVMが使用される確率を下げることができ、たとえば多値分類の都度、最も処理時間の長いSVMが最初に使用されるといった無駄を回避することができる。処理時間のほか、エラー率や使用料などを考慮してSVMの使用順序を決めることも可能である。
【選択図】 図2
Description
【発明の属する技術分野】
この発明は、入力データが第1の分類あるいは第2の分類のいずれに分類されるかを判別する2値分類器を複数使用して前記入力データの多値分類を行うデータ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラムに関する。
【0002】
【従来の技術】
サポートベクターマシン(SVM:Support Vector Machine)は汎化能力の高い2値分類器であるが、複数のSVMを組み合わせることで多値分類器へと拡張した場合に、処理速度の遅さがネックとなっている。
【0003】
SVMを利用した多値分類アルゴリズムとして、代表的なものにone vsrest法、pairwise法、DDAG(Decision Directed Acyclic Graph)法などがある。このうち最も分類が高速なDDAG法は、「John C.Platt,Nello Cristiani,John Shawe−Taylor (2000) Large Margin DAGs for Multiclass Classification. In Advances in NIPS 12,MIT Press.」で発表している通り、pairwise法の高速化手法である。
【0004】
図6は、DDAG法による多値分類の手順を模式的に示す説明図である。DDAG法ではまず分類(分類先となるカテゴリ)、すなわち同図の例では「A」「B」「C」「D」の4つを一列に並べる。次に分類対象である入力データが、列の先頭の分類「A」と末尾の分類「D」のいずれに分類されるかをSVMで判別する(図中「A/D判別」)。そして判別されなかったほうの分類、たとえば上記SVMでAと判別された場合には、Dを列から棄却(削除)して、次に入力データが当該列の先頭「A」と末尾「C」のいずれに分類されるかを他のSVMで判別する(図中「A/C判別」)。
【0005】
以後は上記と同様の処理を、列内の分類が1つになるまで繰り返し、最終的に残った分類を多値分類の結果として出力する。n値分類に必要な2値分類の回数が、pairwise法ではnC2回であるのに対し、DDAG法ではn−1回となるので、そのぶん処理時間を短縮できる。
【0006】
【発明が解決しようとする課題】
しかしながらDDAG法をもってしても、実用上十分な速度での多値分類を実現できない場合がある。そしてその原因としては、SVMそのものの遅さもさることながら、上記手法が個々の2値分類にかかる時間の長短を考慮していないことが挙げられる。
【0007】
たとえば図6で示した例において、多値分類にかかる平均時間(平均多値分類時間)は、
平均多値分類時間=(A/D判別時間)+{p(A/C判別時間)+(1−p)(B/D判別時間)}+{q(A/B判別時間)+r(B/C判別時間)+(1−q−r)(C/D判別時間)}
ただしp:A/C判別が実行される確率(0≦p≦1)
q:A/B判別が実行される確率(0≦q≦1)
r:B/C判別が実行される確率(0≦r≦1)
である。
【0008】
したがって、A〜Dの任意の2つの組み合わせのうち、たとえばAとDとの判別が最も時間のかかる2値分類だったとすると、それだけ上記時間は大きくなってしまう。言い換えれば、分類を1列に並べたときにたまたまAが先頭、Dが末尾にあったというだけで、多値分類の都度この最も時間のかかるA/D判別を必ず経由することになり、無駄が大きい。
【0009】
この発明は上記従来技術による問題を解決するため、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラムを提供することを目的とする。
【0010】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するため、請求項1に記載の発明にかかるデータ分類装置は、入力データが第1の分類あるいは第2の分類のいずれに分類されるかを判別する2値分類器を複数使用して前記入力データの多値分類を行うデータ分類装置において、前記各2値分類器の特徴値を算出する特徴値算出手段と、前記特徴値算出手段により算出された特徴値にもとづいて前記各2値分類器の優先順位を決定する優先順位決定手段と、前記優先順位決定手段により決定された優先順位の高い順に前記2値分類器を使用して前記入力データの多値分類を行う多値分類手段と、を備えたことを特徴とする。
【0011】
この請求項1に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用される。
【0012】
また、請求項2に記載の発明にかかるデータ分類装置は、前記請求項1に記載の発明において、前記2値分類器がSVMであり、前記特徴値算出手段が前記各2値分類器の特徴値を、各SVMにおけるSVの個数あるいは各SVMにおけるすべてのSVの0でない要素の総数にもとづいて算出することを特徴とする。
【0013】
この請求項2に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはSVの個数などから算出されたその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用される。
【0014】
また、請求項3に記載の発明にかかるデータ分類装置は、前記請求項1または請求項2に記載の発明において、前記優先順位決定手段が、前記特徴値算出手段により算出された特徴値の昇順にソートしたときの各2値分類器の順位を前記優先順位として決定することを特徴とする。
【0015】
この請求項3に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値が小さいものから順に使用される。
【0016】
また、請求項4に記載の発明にかかるデータ分類装置は、前記請求項1〜請求項3のいずれか一つに記載の発明において、前記多値分類手段が、前記第1の分類および前記第2の分類がいずれも棄却されていない2値分類器のうち、前記優先順位決定手段により決定された優先順位が最も高い2値分類器を使用して前記入力データの2値分類を行うとともに、前記第1の分類または前記第2の分類のうち、前記2値分類において前記入力データが分類されなかったものを棄却することを、所定の条件が満足されるまで繰り返すことを特徴とする。
【0017】
この請求項4に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用される。
【0018】
また、請求項5に記載の発明にかかるデータ分類装置は、前記請求項4に記載の発明において、前記条件が、棄却された分類の個数が所定の個数に達したか、あるいは次に使用する2値分類器につき前記特徴値算出手段により算出された特徴値が所定の閾値に達したことであることを特徴とする。
【0019】
この請求項5に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用されるとともに、ある程度以上にコスト高となる2値分類器は使用されない。
【0020】
また、請求項6に記載の発明にかかるデータ分類方法は、入力データが第1の分類あるいは第2の分類のいずれに分類されるかを判別する2値分類器を複数使用して前記入力データの多値分類を行うデータ分類方法において、前記各2値分類器の特徴値を算出する特徴値算出工程と、前記特徴値算出工程で算出された特徴値にもとづいて前記各2値分類器の優先順位を決定する優先順位決定工程と、前記優先順位決定工程で決定された優先順位の高い順に前記2値分類器を使用して前記入力データの多値分類を行う多値分類工程と、を含んだことを特徴とする。
【0021】
この請求項6に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用される。
【0022】
また、請求項7に記載の発明にかかるデータ分類方法は、前記請求項6に記載の発明において、前記2値分類器がSVMであり、前記特徴値算出工程では前記各2値分類器の特徴値を、各SVMにおけるSVの個数あるいは各SVMにおけるすべてのSVの0でない要素の総数にもとづいて算出することを特徴とする。
【0023】
この請求項7に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはSVの個数などから算出されたその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用される。
【0024】
また、請求項8に記載の発明にかかるデータ分類方法は、前記請求項6または請求項7に記載の発明において、前記優先順位決定工程では、前記特徴値算出工程で算出された特徴値の昇順にソートしたときの各2値分類器の順位を前記優先順位として決定することを特徴とする。
【0025】
この請求項8に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値が小さいものから順に使用される。
【0026】
また、請求項9に記載の発明にかかるデータ分類方法は、前記請求項6〜請求項8のいずれか一つに記載の発明において、前記多値分類工程では、前記第1の分類および前記第2の分類がいずれも棄却されていない2値分類器のうち、前記優先順位決定工程で決定された優先順位が最も高い2値分類器を使用して前記入力データの2値分類を行うとともに、前記第1の分類または前記第2の分類のうち、前記2値分類において前記入力データが分類されなかったものを棄却することを、所定の条件が満足されるまで繰り返すことを特徴とする。
【0027】
この請求項9に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用される。
【0028】
また、請求項10に記載の発明にかかるデータ分類方法は、前記請求項9に記載の発明において、前記条件が、棄却された分類の個数が所定の個数に達したか、あるいは次に使用する2値分類器につき前記特徴値算出工程で算出された特徴値が所定の閾値に達したことであることを特徴とする。
【0029】
この請求項10に記載の発明によれば、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用されるとともに、ある程度以上にコスト高となる2値分類器は使用されない。
【0030】
また、請求項11に記載の発明にかかるプログラムによれば、前記請求項6〜請求項10のいずれか一つに記載された方法がコンピュータによって実行される。
【0031】
【発明の実施の形態】
以下に添付図面を参照して、この発明によるデータ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラムの好適な実施の形態を詳細に説明する。
【0032】
図1は、この発明の実施の形態によるデータ分類装置のハードウエア構成の一例を示す説明図である。図中、101は装置全体を制御するCPUを、102は基本入出力プログラムを記憶したROMを、103はCPU101のワークエリアとして使用されるRAMを、それぞれ示している。
【0033】
また、104はCPU101の制御にしたがってHD(ハードディスク)105に対するデータのリード/ライトを制御するHDD(ハードディスクドライブ)を、105はHDD104の制御にしたがって書き込まれたデータを記憶するHDを、それぞれ示している。
【0034】
また、106はCPU101の制御にしたがってFD(フレキシブルディスク)107に対するデータのリード/ライトを制御するFDD(フレキシブルディスクドライブ)を、107はFDD106の制御にしたがって書き込まれたデータを記憶する着脱自在のFDを、それぞれ示している。
【0035】
また、108はCPU101の制御にしたがってCD−RW109に対するデータのリード/ライトを制御するCD−RWドライブを、109はCD−RWドライブ108の制御にしたがって書き込まれたデータを記憶する着脱自在のCD−RWを、それぞれ示している。
【0036】
また、110はカーソル、メニュー、ウィンドウ、あるいは文字や画像などの各種データを表示するディスプレイを、111は文字、数値、各種指示などの入力のための複数のキーを備えたキーボードを、112は各種指示の選択や実行、処理対象の選択、マウスポインタの移動などを行うマウスを、それぞれ示している。
【0037】
また、113は通信ケーブル114を介してLANやWANなどのネットワークに接続され、当該ネットワークとCPU101とのインターフェースとして機能するネットワークI/Fを、100は上記各部を接続するためのバスを、それぞれ示している。
【0038】
次に、図2はこの発明の実施の形態によるデータ分類装置の構成を機能的に示す説明図である。本発明によるデータ分類装置は、1日前と現在の天気・気温および気圧を入力データとし、そこから予想される1日後の天気を出力データとする。すなわち、データの分類として「晴れ」「曇り」「雨」の3つを用意し、上記入力がいずれの分類に該当するかを特定して、分類結果すなわち「晴れ」「曇り」「雨」のいずれかを出力する。
【0039】
まず、200はデータ入力部であり、後述する多値分類部202による分類の対象となるデータを取り込んで、後述するベクトル変換部201に出力する機能部である。上記データはキーボード111から入力されるのでも、HD105やCD−RW109から読み出されるのでも、あるいはネットワークI/F113を介して他の情報処理装置などから受信されるのであってもよい。
【0040】
データ入力部200により取り込まれるデータは、具体的には
▲1▼1日前の天気(晴れ/曇り/雨のいずれか一つ)
▲2▼1日前の気温
▲3▼1日前の気圧
▲4▼現在の天気(晴れ/曇り/雨のいずれか一つ)
▲5▼現在の気温
▲6▼現在の気圧
の6つであるものとする。
【0041】
201はベクトル変換部であり、データ入力部200から入力したデータにもとづいて、当該データに代わる入力ベクトルを生成する機能部である。ここでは上記データを、下記10個の要素からなるベクトルに変換するものとする。ベクトル内の各要素の意味はそれぞれ下記の通りである。なお、x4やx5などで数値を変換しているのは、一般に、数値のスケールを揃えたほうが学習の効率が上がるためである。
【0042】
入力ベクトル:(x1,x2,x3,x4,x5,x6,x7,x8,x9,x10)
ただしx1:1日前の天気が晴れの場合1、その他の場合0
x2:1日前の天気が曇りの場合1、その他の場合0
x3:1日前の天気が雨の場合1、その他の場合0
x4:1日前の気温(摂氏)/100
x5:1日前の気圧(hPa)/100−10
x6:現在の天気が晴れの場合1、その他の場合0
x7:現在の天気が曇りの場合1、その他の場合0
x8:現在の天気が雨の場合1、その他の場合0
x9:現在の気温(摂氏)/100
x10:現在の気圧(hPa)/100−10
【0043】
たとえば、1日前の天気が晴れ、気温が24℃、気圧が1020hPaであり、現在の天気が曇り、気温が22℃、気圧が1010hPaであった場合は、当該データにつき生成される入力ベクトルは(1,0,0,0.24,0.20,0,1,0,0.22,0.10)となる。
【0044】
次に、202は多値分類部であり、ベクトル変換部201から入力した入力ベクトルの分類を判定する機能部である。多値分類部202は、分類が「晴れ」か「曇り」かを判別するSVM甲202a、「晴れ」か「雨」かを判別するSVM乙202b、「曇り」か「雨」かを判別するSVM丙202c、および後述する手順により上記いずれかのSVMを選択するSVM選択部202dを備えている。なお、ここでは分類が3つのため、SVMの数はそのうち任意の2つの組み合わせ(ペア)の数、すなわち3C2=3であるが、一般に分類がn個ある場合、SVMの個数はnC2となる。
【0045】
後述する手順による多値分類の前に、あらかじめ、多値分類部202内の個々のSVMについて学習を行っておく必要がある。本発明では学習の方法は問わないため、たとえば「John C.Platt (1998) Sequential Minimal Optimization:A Fast Algorithm for Training Support Vector Machines. Technical Report MSR−TR−98−14.」などに記載された任意の学習方法を取ればよい。
【0046】
ここでは各SVMについて、pairwise法に準じた学習を行うものとする。すなわち、あらかじめ分類が得られている教師データを用意しておき、SVMごとにそれぞれ下記のような学習を行う。
▲1▼教師データ中、出力が「晴れ」となる入力ベクトル群を正例、「曇り」となる入力ベクトル群を負例として、SVM甲202aを学習させる。
▲2▼教師データ中、出力が「晴れ」となる入力ベクトル群を正例、「雨」となる入力ベクトル群を負例として、SVM乙202bを学習させる。
▲3▼教師データ中、出力が「曇り」となる入力ベクトル群を正例、「雨」となる入力ベクトル群を負例として、SVM丙202cを学習させる。
【0047】
なお、SVMのパラメータ(後述するkernel関数として何を利用するか、どの程度のエラーを許容するか、など)の選択方法については、本発明は特に関知しないが、たとえば「工藤拓、松本裕治 (2000) Support Vector Machineを用いたChunk同定、情報処理学会研究報告NL−140」で示されているように、交差検定(cross−validation)法などの既知の方法によって、最適なパラメータを求めることが考えられる。
【0048】
次に、203は特徴値算出部であり、多値分類部202内の個々のSVMについて、その性能やパフォーマンスを示す特徴値を算出する機能部である。ここではSVMの特徴値を、当該SVMを使用することのコストの観点からとらえ、コストとして具体的にはその処理時間、すなわち各SVMにおける2値分類にかかる時間を考えるものとする。処理時間が短いSVMほど、当該SVMを使用することのコストは低く、逆に処理時間が長いSVMほどコストは高い。
【0049】
周知のように、一般にSVMは下記の式を計算することにより2値分類を行う。
【数1】
ただしsgn:正負を判定する関数
Sn:SV(サポートベクター)の集合(学習によって得られる)
αi:SVごとの重み(学習によって得られる)
yi:SVが正例か負例かによって定まる数値
h:定数(学習によって得られる)
【0050】
なお、K(xi,x)はSV(xi)と入力ベクトル(x)により算出されるkernel関数である。一般には、以下のようなkernel関数が利用される(a、bは適当な定数)。
K1(x,y)=(<x,y>+1)2
K2(x,y)=exp(−||x−y||2/a)
K3(x,y)=tanh(a<x,y>−b)
【0051】
上記(1)式から、分類時の計算時間を左右するのはSVの数、すなわちkernel関数Kを通る回数であることが分かる。そこで、あるSVMの処理時間の指標として、当該SVMにおけるSVの個数が利用できる。
【0052】
また、個々のSVを利用したkernel関数Kの処理時間が予測できる場合、SVの個数の代わりに、その和をもってSVMによる処理時間の指標として用いることもできる。たとえば標準的な実装の場合、SV中の0でない要素数が多ければ多いほど、上記のkernel関数の計算時間は長くなる。そこで、すべてのSVの、0でない要素数の和を、SVMによる処理時間の指標として用いることができる。
【0053】
特徴値算出部203は、上記の指標により推定した各SVMの処理時間、すなわち各SVMを使用することのコストを、特徴値として後述する優先順位決定部204に出力する。ここでは、SVM甲202a/乙202b/丙202cのSVの個数が、それぞれ15/10/30であり、これに比例して各SVMの特徴値が、それぞれ下記のように算出されたものとする。
SVM甲202a(晴れ/曇り判別)の特徴値:15
SVM乙202b(晴れ/雨判別)の特徴値:10
SVM丙202c(曇り/雨判別)の特徴値:30
【0054】
次に、204は優先順位決定部であり、多値分類部202内の各SVMの優先順位、すなわちどのSVMを他のSVMより優先的に使用するかを決定する機能部である。具体的には、特徴値算出部203で算出された特徴値の小さいSVMが、特徴値の大きいSVMよりも優先的に使用されるよう、SVMを特徴値の昇順にソートしたときの順位を各SVMの優先順位とする。なお、ソートの手法は特に問わないので、クイックソート法・マージソート法など、既知のアルゴリズムを利用すればよい。
【0055】
上記の例では、特徴値(すなわちコスト、より具体的には処理時間)の最も小さいSVM乙202bの優先順位が1位、次に特徴値の小さいSVM甲202aの優先順位が2位、特徴値の最も大きいSVM丙202cの優先順位が3位となる。
【0056】
なお、特徴値算出部203で算出された処理時間(絶対処理時間)をそのまま利用するのでなく、下記式により相対処理時間を算出し、その順にソートするようにしてもよい。
【数2】
ただしTr(a,b):分類aと分類bとへの2値分類器の相対処理時間
Ta(a,b):分類aと分類bとへの2値分類器の絶対処理時間
G:多値分類器の結果となりうるすべての分類の集合
n:Gの要素数(多値分類の分類数)
【0057】
上記(2)式により、絶対処理時間が同一と予測された2値分類器でも、より関連する分類(上記式の場合、分類aや分類b)の平均処理時間が長いほうが、相対処理時間としては短くなる。これによって、処理時間の長い2値分類器(上記式の場合、分類a・分類bとその他の分類を判別する2値分類器)の代わりに、処理時間の短い2値分類器(上記式の場合、分類aと分類bを判別する2値分類器)の利用が促進されることになる。
【0058】
次に、図3はこの発明の実施の形態によるデータ分類装置における、2値分類の組み合わせによる多値分類処理の手順を示すフローチャートである。図示する処理に入る前に、あらかじめ以下のものを用意しておく。
a:優先順位の順にソートされたSVM(上記例ではSVM乙202b、SVM甲202a、SVM丙202cの順)
b:aの中の位置を1つだけ保持できる機構(初期状態では先頭のSVM、上記例ではSVM乙202bを指す)
c:2値分類で棄却された分類を複数保持できる機構(初期状態では空)
【0059】
多値分類部202のSVM選択部202dは、bが指し示すSVMに指示して2値分類を実行させ、判別された分類dと棄却された分類eを得る(ステップS301)。上記例では、まずSVM乙202bが呼び出されて「晴れ」または「雨」の判別が行われる。ここではたとえば判別された分類dが「雨」、棄却された分類eが「晴れ」であったものとする。
【0060】
次に、SVM選択部202dはステップS301で棄却された分類eを、上述のcに追加する(ステップS302)。この時点で、cにはSVM乙202bにより棄却された「晴れ」のみが入っている状態となる。
【0061】
そして、SVM選択部202dはcの要素数が、多値分類の分類数−1に達したかどうかを判定する(ステップS303)。ここでは分類の総数が「晴れ」「曇り」「雨」の3個であるため、cの要素数が2個に達したかどうかを判定することになる。そして、現時点ではcの要素数は「晴れ」の1個のみであり、2個に満たないので(ステップS303:No)、次はステップS305に分岐する。
【0062】
cの要素数が分類の総数−1に満たない場合、SVM選択部202dは上記bが指し示す位置をaの中で1つ進める(ステップS305)。ここではbの指し示す位置が、先頭のSVM乙202bから2番目のSVM甲202aに切り替えられることになる。
【0063】
そして、SVM選択部202dはbにより指し示されるSVMが判別する2つの分類(f・g)を得る(ステップS306)。ここではSVM甲202aは、「晴れ」または「曇り」を判別するので、fは「晴れ」gは「曇り」となる。なお、fとgとは逆であってもよい。
【0064】
次にSVM選択部202dは、fまたはgのいずれかがcの中にあるかどうか、すなわちfまたはgがすでに棄却された分類であるか否かを判定する(ステップS307)。ここではfが「晴れ」で、cに格納された「晴れ」と一致するため(ステップS307:Yes)、ステップS305に戻ってさらにbを1つ進める(ステップS305)。
【0065】
そして、次のSVM丙202cではfが「曇り」gが「雨」となり(ステップS306)、そのいずれもまだcの中にはないので(ステップS307:No)、ステップS301に戻ってSVM丙202cに「曇り」または「雨」の判別を行わせる(ステップS301)。
【0066】
ここで判別された分類dが「曇り」、棄却された分類eが「雨」であったとすると、SVM選択部202dは棄却された分類eをcに追加するとともに(ステップS302)、cの要素数が分類の総数−1、すなわち2に達したかどうかを判定する(ステップS303)。
【0067】
そして、この時点でcの要素数は「晴れ」および「雨」の2個に達したので(ステップS303:Yes)、SVM選択部202dは分類結果出力部202eに多値分類の終了を通知し、これを受けた分類結果出力部202eでは、現時点でのd、すなわち「曇り」を多値分類の結果として出力する(ステップS304)。
【0068】
上記手順は要するに、優先順位の高い順に並べたSVMの中から、過去の2値分類で棄却されていない分類の組み合わせのSVMを順次検索し、最初に見つかったSVMで2値分類を行うとともに、この繰り返しをまだ棄却されていない分類が1つとなるまで続けるものである。
【0069】
そして、優先順位は上述のようにSVMの処理時間に応じて定められているので、上記手順により、処理時間の短いSVMが優先的に選択されて使用されることになる。言い換えれば、処理時間の長いSVMが使われる確率を下げることができ、たとえばSVM乙202bで晴れ、SVM甲202aでも晴れと判別された場合は、最も時間のかかるSVM丙202cの曇り/雨判別を経由しないで、多値分類の結果を得ることができる。
【0070】
図4は、分類が4個だった場合の6個(=4C2)のSVMの使用確率を示すグラフ、図5は、分類が10個だった場合の45個(=10C2)のSVMの使用確率を示すグラフである。図示するように、「速い」すなわち処理時間の短いSVMほど使用確率が高く、「遅い」すなわち処理時間の長いSVMほど使用確率が低くなるので、全体として多値分類にかかる平均時間を短縮することができる。
【0071】
なお、上述した実施の形態では2値分類器としてもっぱらSVMを考えたが、2値分類器としてはこれに限らず、たとえばニューロンネットワークにおけるパーセプトロンなど、2つの分類を判別できるものなら何であってもよい。
【0072】
また、上述した実施の形態では2値分類器の使用コストを、もっぱら時間の観点から把握したが、コストとしてはこれ以外にも、たとえば分類で発生するエラーなどを考えてもよい。
【0073】
一例としてSVMのエラー率の上限値は、教師データ中のSVの割合に比例することが知られている。そこで、時間が多少かかるとしてもできるだけ正確な分類結果が欲しいような場合は、エラー率が低く信頼できるSVMを優先的に使用するため、「SVの個数/教師データ数」を指標として各SVMの特徴値(信頼度の観点からとらえた特徴値)を算出するようにしてもよい。
【0074】
また、コストとして2値分類器の使用料などを考えてもよい。たとえば、ある2値分類器による判別サービスが1回10万円、別の2値分類器による判別サービスが1回5万円、というように、それぞれの2値分類の費用が異なる場合、より安価な2値分類が優先的に行われるよう、特徴値を上記費用に応じて算出する。
【0075】
また、上述した実施の形態では棄却された分類がn−1個になるまで2値分類を続けたが、途中のどこかの2値分類器で分類を停止し、当該2値分類器による判別結果を多値分類の結果として出力するようにしてもよい。
【0076】
一般に、データ数に対するSVの個数が少ないほど、SVMの汎化能力が高まることが知られている。つまりSVの数が多く、判別に時間がかかるSVMほど、信頼性も低くなる傾向にある。そこで、SVの数が少ない(信頼性が高い)SVMを利用できるうちは、上記の方法で分類の候補を絞り、
▲1▼上述のbにより指し示されるSVMのSVの数が一定の個数に達した場合
▲2▼上述のcの要素数が一定の個数(具体的にはn−1)に達した場合
のいずれかの条件が満たされる場合に、多値分類を終了するようにしてもよい。
【0077】
なお、上述したデータ入力部200、ベクトル変換部201、多値分類部202、特徴値算出部203および優先順位決定部204は、具体的にはHD105からRAM103に読み出されたプログラムをCPU101が実行することにより実現される。このプログラムはHD105のほか、FD107、CD−RW109、MOなどの各種の記録媒体に格納して配布することができ、ネットワークを介して配布することも可能である。
【0078】
【発明の効果】
以上説明したように請求項1に記載の発明は、入力データが第1の分類あるいは第2の分類のいずれに分類されるかを判別する2値分類器を複数使用して前記入力データの多値分類を行うデータ分類装置において、前記各2値分類器の特徴値を算出する特徴値算出手段と、前記特徴値算出手段により算出された特徴値にもとづいて前記各2値分類器の優先順位を決定する優先順位決定手段と、前記優先順位決定手段により決定された優先順位の高い順に前記2値分類器を使用して前記入力データの多値分類を行う多値分類手段と、を備えたので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用され、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類装置が得られるという効果を奏する。
【0079】
また、請求項2に記載の発明は、前記請求項1に記載の発明において、前記2値分類器がSVMであり、前記特徴値算出手段が前記各2値分類器の特徴値を、各SVMにおけるSVの個数あるいは各SVMにおけるすべてのSVの0でない要素の総数にもとづいて算出するので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはSVの個数などから算出されたその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用され、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類装置が得られるという効果を奏する。
【0080】
また、請求項3に記載の発明は、前記請求項1または請求項2に記載の発明において、前記優先順位決定手段が、前記特徴値算出手段により算出された特徴値の昇順にソートしたときの各2値分類器の順位を前記優先順位として決定するので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値が小さいものから順に使用され、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類装置が得られるという効果を奏する。
【0081】
また、請求項4に記載の発明は、前記請求項1〜請求項3のいずれか一つに記載の発明において、前記多値分類手段が、前記第1の分類および前記第2の分類がいずれも棄却されていない2値分類器のうち、前記優先順位決定手段により決定された優先順位が最も高い2値分類器を使用して前記入力データの2値分類を行うとともに、前記第1の分類または前記第2の分類のうち、前記2値分類において前記入力データが分類されなかったものを棄却することを、所定の条件が満足されるまで繰り返すので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用され、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類装置が得られるという効果を奏する。
【0082】
また、請求項5に記載の発明は、前記請求項4に記載の発明において、前記条件が、棄却された分類の個数が所定の個数に達したか、あるいは次に使用する2値分類器につき前記特徴値算出手段により算出された特徴値が所定の閾値に達したことであるので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用されるとともに、ある程度以上にコスト高となる2値分類器は使用されず、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類装置が得られるという効果を奏する。
【0083】
また、請求項6に記載の発明は、入力データが第1の分類あるいは第2の分類のいずれに分類されるかを判別する2値分類器を複数使用して前記入力データの多値分類を行うデータ分類方法において、前記各2値分類器の特徴値を算出する特徴値算出工程と、前記特徴値算出工程で算出された特徴値にもとづいて前記各2値分類器の優先順位を決定する優先順位決定工程と、前記優先順位決定工程で決定された優先順位の高い順に前記2値分類器を使用して前記入力データの多値分類を行う多値分類工程と、を含んだので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用され、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類方法が得られるという効果を奏する。
【0084】
また、請求項7に記載の発明は、前記請求項6に記載の発明において、前記2値分類器がSVMであり、前記特徴値算出工程では前記各2値分類器の特徴値を、各SVMにおけるSVの個数あるいは各SVMにおけるすべてのSVの0でない要素の総数にもとづいて算出するので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはSVの個数などから算出されたその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用され、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類方法が得られるという効果を奏する。
【0085】
また、請求項8に記載の発明は、前記請求項6または請求項7に記載の発明において、前記優先順位決定工程では、前記特徴値算出工程で算出された特徴値の昇順にソートしたときの各2値分類器の順位を前記優先順位として決定するので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値が小さいものから順に使用され、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類方法が得られるという効果を奏する。
【0086】
また、請求項9に記載の発明は、前記請求項6〜請求項8のいずれか一つに記載の発明において、前記多値分類工程では、前記第1の分類および前記第2の分類がいずれも棄却されていない2値分類器のうち、前記優先順位決定工程で決定された優先順位が最も高い2値分類器を使用して前記入力データの2値分類を行うとともに、前記第1の分類または前記第2の分類のうち、前記2値分類において前記入力データが分類されなかったものを棄却することを、所定の条件が満足されるまで繰り返すので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用され、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類方法が得られるという効果を奏する。
【0087】
また、請求項10に記載の発明は、前記請求項9に記載の発明において、前記条件が、棄却された分類の個数が所定の個数に達したか、あるいは次に使用する2値分類器につき前記特徴値算出工程で算出された特徴値が所定の閾値に達したことであるので、多値分類器を構成する複数の2値分類器は、それぞれの2値分類器を使用することのコスト(具体的にはその処理時間やエラー率など)を示す特徴値の大小に応じた順序で使用されるとともに、ある程度以上にコスト高となる2値分類器は使用されず、これによって、複数の2値分類器を効率的な順序で使用して多値分類を高速に行うことが可能なデータ分類方法が得られるという効果を奏する。
【0088】
また、請求項11に記載の発明によれば、前記請求項6〜請求項10のいずれか一つに記載された方法をコンピュータに実行させることが可能なプログラムが得られるという効果を奏する。
【図面の簡単な説明】
【図1】この発明の実施の形態によるデータ分類装置のハードウエア構成の一例を示す説明図である。
【図2】この発明の実施の形態によるデータ分類装置の構成を機能的に示す説明図である。
【図3】この発明の実施の形態によるデータ分類装置における、2値分類の組み合わせによる多値分類処理の手順を示すフローチャートである。
【図4】この発明の実施の形態によるデータ分類装置において、分類が4個だった場合のSVMの使用確率を示すグラフである。
【図5】この発明の実施の形態によるデータ分類装置において、分類が10個だった場合のSVMの使用確率を示すグラフである。
【図6】DDAG法による多値分類の手順を模式的に示す説明図である。
【符号の説明】
100 バス
101 CPU
102 ROM
103 RAM
104 HDD
105 HD
106 FDD
107 FD
108 CD−RWドライブ
109 CD−RW
110 ディスプレイ
111 キーボード
112 マウス
113 ネットワークI/F
114 通信ケーブル
200 データ入力部
201 ベクトル変換部
202 多値分類部
202a SVM甲
202b SVM乙
202c SVM丙
202d SVM選択部
203 特徴値算出部
204 優先順位決定部
Claims (11)
- 入力データが第1の分類あるいは第2の分類のいずれに分類されるかを判別する2値分類器を複数使用して前記入力データの多値分類を行うデータ分類装置において、
前記各2値分類器の特徴値を算出する特徴値算出手段と、
前記特徴値算出手段により算出された特徴値にもとづいて前記各2値分類器の優先順位を決定する優先順位決定手段と、
前記優先順位決定手段により決定された優先順位の高い順に前記2値分類器を使用して前記入力データの多値分類を行う多値分類手段と、
を備えたことを特徴とするデータ分類装置。 - 前記2値分類器がSVMであり、前記特徴値算出手段は前記各2値分類器の特徴値を、各SVMにおけるSVの個数あるいは各SVMにおけるすべてのSVの0でない要素の総数にもとづいて算出することを特徴とする前記請求項1に記載のデータ分類装置。
- 前記優先順位決定手段は、前記特徴値算出手段により算出された特徴値の昇順にソートしたときの各2値分類器の順位を前記優先順位として決定することを特徴とする前記請求項1または請求項2に記載のデータ分類装置。
- 前記多値分類手段は、前記第1の分類および前記第2の分類がいずれも棄却されていない2値分類器のうち、前記優先順位決定手段により決定された優先順位が最も高い2値分類器を使用して前記入力データの2値分類を行うとともに、前記第1の分類または前記第2の分類のうち、前記2値分類において前記入力データが分類されなかったものを棄却することを、所定の条件が満足されるまで繰り返すことを特徴とする前記請求項1〜請求項3のいずれか一つに記載のデータ分類装置。
- 前記条件は、棄却された分類の個数が所定の個数に達したか、あるいは次に使用する2値分類器につき前記特徴値算出手段により算出された特徴値が所定の閾値に達したことであることを特徴とする前記請求項4に記載のデータ分類装置。
- 入力データが第1の分類あるいは第2の分類のいずれに分類されるかを判別する2値分類器を複数使用して前記入力データの多値分類を行うデータ分類方法において、
前記各2値分類器の特徴値を算出する特徴値算出工程と、
前記特徴値算出工程で算出された特徴値にもとづいて前記各2値分類器の優先順位を決定する優先順位決定工程と、
前記優先順位決定工程で決定された優先順位の高い順に前記2値分類器を使用して前記入力データの多値分類を行う多値分類工程と、
を含んだことを特徴とするデータ分類方法。 - 前記2値分類器がSVMであり、前記特徴値算出工程では前記各2値分類器の特徴値を、各SVMにおけるSVの個数あるいは各SVMにおけるすべてのSVの0でない要素の総数にもとづいて算出することを特徴とする前記請求項6に記載のデータ分類方法。
- 前記優先順位決定工程では、前記特徴値算出工程で算出された特徴値の昇順にソートしたときの各2値分類器の順位を前記優先順位として決定することを特徴とする前記請求項6または請求項7に記載のデータ分類方法。
- 前記多値分類工程では、前記第1の分類および前記第2の分類がいずれも棄却されていない2値分類器のうち、前記優先順位決定工程で決定された優先順位が最も高い2値分類器を使用して前記入力データの2値分類を行うとともに、前記第1の分類または前記第2の分類のうち、前記2値分類において前記入力データが分類されなかったものを棄却することを、所定の条件が満足されるまで繰り返すことを特徴とする前記請求項6〜請求項8のいずれか一つに記載のデータ分類方法。
- 前記条件は、棄却された分類の個数が所定の個数に達したか、あるいは次に使用する2値分類器につき前記特徴値算出工程で算出された特徴値が所定の閾値に達したことであることを特徴とする前記請求項9に記載のデータ分類方法。
- 前記請求項6〜請求項10のいずれか一つに記載された方法をコンピュータに実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003074367A JP3761868B2 (ja) | 2003-03-18 | 2003-03-18 | データ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003074367A JP3761868B2 (ja) | 2003-03-18 | 2003-03-18 | データ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004280712A true JP2004280712A (ja) | 2004-10-07 |
JP3761868B2 JP3761868B2 (ja) | 2006-03-29 |
Family
ID=33290040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003074367A Expired - Fee Related JP3761868B2 (ja) | 2003-03-18 | 2003-03-18 | データ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3761868B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006039862A (ja) * | 2004-07-26 | 2006-02-09 | Mitsubishi Electric Corp | データ類別装置 |
JP2012194894A (ja) * | 2011-03-17 | 2012-10-11 | Fujitsu Ltd | データ解析プログラム、データ解析方法、およびデータ解析装置 |
KR101501349B1 (ko) * | 2013-05-15 | 2015-03-11 | 세종대학교산학협력단 | 음악 장르 분류 장치 및 그 방법 |
CN107025547A (zh) * | 2016-09-19 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 支付通道检测方法、装置及终端 |
JP2020017112A (ja) * | 2018-07-26 | 2020-01-30 | 株式会社スカイディスク | 正誤判定システム |
-
2003
- 2003-03-18 JP JP2003074367A patent/JP3761868B2/ja not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006039862A (ja) * | 2004-07-26 | 2006-02-09 | Mitsubishi Electric Corp | データ類別装置 |
JP4536445B2 (ja) * | 2004-07-26 | 2010-09-01 | 三菱電機株式会社 | データ類別装置 |
JP2012194894A (ja) * | 2011-03-17 | 2012-10-11 | Fujitsu Ltd | データ解析プログラム、データ解析方法、およびデータ解析装置 |
US8843432B2 (en) | 2011-03-17 | 2014-09-23 | Fujitsu Limited | Data analyzing computer product, data analyzing method, and data analyzing apparatus |
KR101501349B1 (ko) * | 2013-05-15 | 2015-03-11 | 세종대학교산학협력단 | 음악 장르 분류 장치 및 그 방법 |
CN107025547A (zh) * | 2016-09-19 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 支付通道检测方法、装置及终端 |
CN107025547B (zh) * | 2016-09-19 | 2020-10-16 | 创新先进技术有限公司 | 支付通道检测方法、装置及终端 |
JP2020017112A (ja) * | 2018-07-26 | 2020-01-30 | 株式会社スカイディスク | 正誤判定システム |
Also Published As
Publication number | Publication date |
---|---|
JP3761868B2 (ja) | 2006-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4311552B2 (ja) | ドキュメントの自動分離 | |
US11907816B2 (en) | Entropy based synthetic data generation for augmenting classification system training data | |
US8682896B2 (en) | Smart attribute classification (SAC) for online reviews | |
JP7028322B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
CN103679185A (zh) | 卷积神经网络分类器系统、其训练方法、分类方法和用途 | |
JP5353443B2 (ja) | データ分類器作成装置、データ分類装置、データ分類器作成方法、データ分類方法、データ分類器作成プログラム、データ分類プログラム | |
JPH07160823A (ja) | 変動する処理能力を管理するためのデータ獲得可変優先順位方法およびシステム | |
JP2020144482A (ja) | 機械学習モデル圧縮システム、機械学習モデル圧縮方法及びプログラム | |
JP6004015B2 (ja) | 学習方法、情報処理装置および学習プログラム | |
Tavakoli | Seq2image: Sequence analysis using visualization and deep convolutional neural network | |
CN113298634A (zh) | 基于时序特征和图神经网络的用户风险预测方法及装置 | |
CN113283514B (zh) | 一种基于深度学习的未知类别分类方法、装置及介质 | |
JP3761868B2 (ja) | データ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラム | |
CN112381381A (zh) | 一种智能推荐专家的装置 | |
JP5633424B2 (ja) | プログラム及び情報処理システム | |
JP2010272004A (ja) | 判別装置及び判別方法、並びにコンピューター・プログラム | |
KR101808557B1 (ko) | 다중 레이블 데이터의 중요 특징 선별 방법 및 장치, 다중 카테고리 문서의 중요 단어 선별 장치 | |
WO2022253636A1 (en) | Method for training a classifier and system for classifying blocks | |
Kouzani et al. | Multilabel classification by bch code and random forests | |
Hijazi et al. | Utilizing Artificial Bee Colony Algorithm as Feature Selection Method in Arabic Text Classification | |
EP4325397A1 (en) | Information processing apparatus, information processing method, and computer-readable storage medium | |
Kotsiantis | A hybrid decision tree classifier | |
US20240330405A1 (en) | Information processing device, information processing method, and computer-readable storage medium | |
Bai et al. | Combination of rough sets and genetic algorithms for text classification | |
US20240330406A1 (en) | Information-processing device, information-processing method, and computer-readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051004 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051202 |
|
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: 20051227 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060111 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120120 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |