(57)【要約】【課題】階層構造をもつラベルが付与された教師データを用いてセキュリティインシデントの種別を分類する。【解決手段】取得部１５ｃが、分類の階層を表す粒度の異なるラベルが付与された教師データを取得し、変換部１５ｄが、取得された第２の粒度のラベルが付与されたデータのラベルを、第１の粒度のラベルに変換する。データに付与する第１の粒度のラベルを出力する粗分類部１５ａは、取得された第１の粒度のラベルが付与された教師データと、変換された第１の粒度のラベルが付与された教師データとを用いて、第１の粒度のラベルの付与を学習する。データに付与する粒度が第１の粒度より細かい粒度のラベルを出力し、第１の粒度のラベルから第２の粒度のラベルを出力する細分類部１５ｂは、取得された第２の粒度のラベルが付与された教師データと、粗分類部１５ａが出力した第１の粒度のラベルとを用いて、第２の粒度のラベルの付与を学習する。【選択図】図１
2018200524.tif 000002
【特許請求の範囲】
【請求項１】
データに付与する分類の階層を表す第１の粒度のラベルを出力する粗分類部と、
データに付与する粒度が前記第１の粒度のラベルより細かい第２の粒度のラベルを出力するとともに、前記第１の粒度のラベルから前記第２の粒度のラベルを出力する細分類部と、
前記第１の粒度のラベルが付与された教師データまたは前記第２の粒度のラベルが付与された教師データを取得する取得部と、
取得された前記第２の粒度のラベルが付与された教師データのラベルを、前記第１の粒度のラベルに変換する変換部と、を備え、
前記粗分類部は、取得された前記第１の粒度のラベルが付与された教師データと、変換された前記第１の粒度のラベルが付与された教師データとを用いて、前記第１の粒度のラベルの付与を学習し、
前記細分類部は、取得された前記第２の粒度のラベルが付与された教師データと、前記粗分類部が出力した前記第１の粒度のラベルとを用いて、前記第２の粒度のラベルの付与を学習することを特徴とする分類装置。
【請求項２】
さらに、データに付与する、前記第１の粒度よりさらに粗い粒度のラベルを出力する第２の粗分類部を備え、該第２の粗分類部が前記粗分類部に連結されることを特徴とする請求項１に記載の分類装置。
【請求項３】
分類装置で実行される分類方法であって、
データに付与する分類の階層を表す第１の粒度のラベルを出力する粗分類工程と、
データに付与する粒度が前記第１の粒度のラベルより細かい第２の粒度のラベルを出力するとともに、前記第１の粒度のラベルから前記第２の粒度のラベルを出力する細分類工程と、
前記第１の粒度のラベルが付与された教師データまたは前記第２の粒度のラベルが付与された教師データを取得する取得工程と、
取得された前記第２の粒度のラベルが付与された教師データのラベルを、前記第１の粒度のラベルに変換する変換工程と、を含み、
前記粗分類工程において、取得された前記第１の粒度のラベルが付与された教師データと、変換された前記第１の粒度のラベルが付与された教師データとを用いて、前記第１の粒度のラベルの付与を学習し、
前記細分類工程において、取得された前記第２の粒度のラベルが付与された教師データと、前記粗分類工程において出力された前記第１の粒度のラベルとを用いて、前記第２の粒度のラベルの付与を学習することを特徴とする分類方法。
【請求項４】
データに付与する分類の階層を表す第１の粒度のラベルを出力する粗分類ステップと、
データに付与する粒度が前記第１の粒度のラベルより細かい第２の粒度のラベルを出力するとともに、前記第１の粒度のラベルから前記第２の粒度のラベルを出力する細分類ステップと、
前記第１の粒度のラベルが付与された教師データまたは前記第２の粒度のラベルが付与された教師データを取得する取得ステップと、
取得された前記第２の粒度のラベルが付与された教師データのラベルを、前記第１の粒度のラベルに変換する変換ステップと、を含み、
前記粗分類ステップにおいて、取得された前記第１の粒度のラベルが付与された教師データと、変換された前記第１の粒度のラベルが付与された教師データとを用いて、前記第１の粒度のラベルの付与を学習し、
前記細分類ステップにおいて、取得された前記第２の粒度のラベルが付与された教師データと、前記粗分類ステップにおいて出力された前記第１の粒度のラベルとを用いて、前記第２の粒度のラベルの付与を学習する処理をコンピュータに実行させることを特徴とする分類プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分類装置、分類方法および分類プログラムに関する。
【背景技術】
【０００２】
近年、データの質の向上、データ数の増加、計算リソースの増加、あるいは機械学習のアルゴリズムの進歩に伴って、深層学習を用いた分類問題を解く事例が増加している。深層学習は、教師データとして与えられたラベル情報に基づいて、自動的にデータの特徴を抽出しながら学習を行うことにより、高い分類性能を示すことが知られている。
【０００３】
例えば、通信データ等に基づいて深層学習を用いて、発生したセキュリティインシデントの種別を自動的に分類することができる。その場合には、通信データ等に対してインシデントの種別を示すラベルが付与された教師データが必要となる。深層学習に用いられる教師データには、同じ階層で分類されている同じ粒度のラベルが付与されている必要がある。例えば、「ＤｏＳ攻撃」と「ＸＸＸマルウェアによるＤｏＳ攻撃」とは粒度が異なるラベルであり、そのままでは深層学習に用いることができない。
【０００４】
ここで、教師データは、人手によりラベルを付与したり、ウィルスチェックのサービスサイトであるVirusTotal等からセキュリティベンダが付与したラベルの情報を取得したりすることにより用意される。人手により付与されたラベルの粒度は、ラベル付与を実施した実施者によって異なる場合がある。また、セキュリティベンダにより付与されたラベルや、ＳＨＡ−１ハッシュ値等がラベルとして用いられる場合には、ラベルが異なる粒度の階層構造をもつ場合がある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Richard  P.Lippmann、“Pattern  Classification  Using  Neural  Networks”、[online]、1989年11月、IEEE  Communications  Magazine、pp.47-64、［２０１７年５月１１日検索]、インターネット＜URL:http://ieeexplore.ieee.org/abstract/document/41401/＞
【非特許文献２】Tom  Auld、Andrew  W.Moore、Stephen  F.Gull、“Bayesian  Neural  Networks  for  Internet  Traffic  Classification”、  [online]、2007年1月、IEEE  TRANSACTIONS  ON  NEWRAL  NETWORKS、VOL.18、pp.223-239、［２０１７年５月１１日検索]、インターネット＜URL:  http://ieeexplore.ieee.org/abstract/document/4049810/＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の技術では、階層構造をもつラベルが付与された教師データを用いてセキュリティインシデントの種別を分類することは困難であった。例えば、深層学習を用いてセキュリティインシデントの種別を分類する場合に、大量のインシデントのデータを収集し、各データに対して粒度の揃った適切なラベルを付与することは困難である。一方、粗い粒度のラベルの教師データを用いる場合には、細かい粒度の詳細なラベルが付与された教師データは学習に使用できない。また、新たなセキュリティインシデントが発見された場合にも、適切な粒度のラベルが付与されなければ教師データとして追加することができない。
【０００７】
本発明は、上記に鑑みてなされたものであって、階層構造をもつラベルが付与された教師データを用いてセキュリティインシデントの種別を分類することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明に係る分類装置は、データに付与する分類の階層を表す第１の粒度のラベルを出力する粗分類部と、データに付与する粒度が前記第１の粒度のラベルより細かい第２の粒度のラベルを出力するとともに、前記第１の粒度のラベルから前記第２の粒度のラベルを出力する細分類部と、前記第１の粒度のラベルが付与された教師データまたは前記第２の粒度のラベルが付与された教師データを取得する取得部と、取得された前記第２の粒度のラベルが付与された教師データのラベルを、前記第１の粒度のラベルに変換する変換部と、を備え、前記粗分類部は、取得された前記第１の粒度のラベルが付与された教師データと、変換された前記第１の粒度のラベルが付与された教師データとを用いて、前記第１の粒度のラベルの付与を学習し、前記細分類部は、取得された前記第２の粒度のラベルが付与された教師データと、前記粗分類部が出力した前記第１の粒度のラベルとを用いて、前記第２の粒度のラベルの付与を学習することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、階層構造をもつラベルが付与された教師データを用いてセキュリティインシデントの種別を分類することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の一実施形態に係る分類装置の概略構成を例示する模式図である。
【図２】図２は、ラベル情報のデータ構成を例示する図である。
【図３】図３は、分類装置の処理概要を説明するための説明図である。
【図４】図４は、ラベルの変換について説明するための説明図である。
【図５】図５は、他の実施形態に係る分類装置の構成を説明するための説明図である。
【図６】図６は、分類処理手順を示すフローチャートである。
【図７】図７は、分類プログラムを実行するコンピュータを例示する図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１２】
［分類装置の構成］
図１は、分類装置の概略構成を例示する模式図である。図１に例示するように、分類装置１０は、パソコン等の汎用コンピュータで実現され、入力部１１、出力部１２、通信制御部１３、記憶部１４、および制御部１５を備える。
【００１３】
入力部１１は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部１５に対して処理開始などの各種指示情報を入力する。出力部１２は、液晶ディスプレイなどの表示装置、プリンター等の印刷装置等によって実現される。
【００１４】
通信制御部１３は、ＮＩＣ（Network  Interface  Card）等で実現され、ＬＡＮ（Local  Area  Network）やインターネットなどの電気通信回線を介したＩｏＴ機器２等の外部の装置と制御部１５との通信を制御する。
【００１５】
記憶部１４は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現され、後述する分類処理により特定される正常な状態のモデルのパラメータ等が記憶される。なお、記憶部１４は、通信制御部１３を介して制御部１５と通信する構成でもよい。
【００１６】
本実施形態において、記憶部１４には、ラベル情報１４ａが格納される。ラベル情報１４ａは、分類装置１０で分類されたデータに付与されるラベルと、各ラベルの分類の階層を表す粒度とを示す情報である。ラベル情報１４ａは、例えば、米国政府が推進しているサイバー攻撃対策において、検知に有効なサイバー攻撃を特徴付ける指標等を記述するための技術仕様であるＳＴＩＸ（Structured  Threat  Information  eXpression）を参照して構築される。
【００１７】
図２は、ラベル情報１４ａのデータ構成を例示する図である。図２には、マルウェアが行った通信のネットワークログを分類する場合の階層型のラベルが例示されている。図２に示す例では、ＤｏＳ、ランサムウェア、およびトロイの木馬は、階層１の粒度の粗いラベルである。また、例えばＤｏＳマルウェア１およびＤｏＳマルウェア２は、階層１のＤｏＳより粒度の細かい階層２のラベルである。
【００１８】
図１の説明に戻る。制御部１５は、ＣＰＵ（Central  Processing  Unit）等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部１５は、図１に例示するように、粗分類部１５ａ、細分類部１５ｂ、取得部１５ｃ、および変換部１５ｄとして機能する。なお、これらの機能部は、それぞれ、あるいは一部が異なるハードウェアに実装されてもよい。
【００１９】
粗分類部１５ａは、データに付与する分類の階層を表す第１の粒度のラベルを出力する。また、細分類部１５ｂは、データに付与する粒度が第１の粒度のラベルより細かい第２の粒度のラベルを出力するとともに、第１の粒度のラベルから第２の細かい粒度のラベルを出力する。第１の粒度のラベルとは、例えば、図２に例示した階層１のラベルであり、第２の粒度のラベルとは、階層２のラベルである。以下、第１の粒度のラベルを粒度の粗いラベルとも記し、第２の粒度のラベルを粒度の細かいラベルまたは詳細ラベルとも記す。
【００２０】
ここで、図３を参照して粗分類部１５ａおよび細分類部１５ｂについて説明する。図３は、分類装置１０の処理概要を説明するための説明図である。図３に例示するように、本実施形態の分類装置１０は、２階層の階層型のラベルのうち、粒度の粗いラベルを出力する粗分類部１５ａと、粒度の細かいラベルを出力する細分類部１５ｂとが組み合わされて構成される。
【００２１】
粗分類部１５ａは、単一の階層のラベルを取り扱う従来の分類装置と同様に構成され、データｘが入力されると、隠れ層（ｈｉｄｄｅｎ）を介して、データｘに付与する「ＤｏＳ」等の粒度の粗いラベルｙを出力する。細分類部１５ｂは、ｈｉｄｄｅｎを介して、入力されたデータｘに付与する「ＤｏＳマルウェア１」等の粒度の細かい詳細ラベルｚを出力する。また、細分類部１５ｂは、ｈｉｄｄｅｎを介して、入力された粒度の粗いラベルｙから粒度の細かい詳細ラベルｚを出力する。
【００２２】
粗分類部１５ａおよび細分類部１５ｂは、後述するように、階層型の粒度の異なるラベルが付与されたデータを教師データとして深層学習を行う。これにより、分類装置１０は入力されたデータｘに付与する詳細ラベルｚを高精度に出力することが可能となる。このように、深層学習で最適化される誤差関数を拡張することにより、分類装置１０の分類性能を向上させることが可能となる。
【００２３】
なお、粗分類部１５ａおよび細分類部１５ｂの深層学習の方式は限定されず、例えば、変分オートエンコーダ（Variational  auto  encoder）等を用いた高度な半教師あり学習が適用されてもよい。
【００２４】
図１の説明に戻る。取得部１５ｃは、第１の粒度のラベルが付与された教師データまたは第２の粒度のラベルが付与された教師データを取得する。例えば、取得部１５ｃは、入力部１１あるいは通信制御部１３を介して、階層型のラベルが付与されたデータを教師データとして取得する。
【００２５】
変換部１５ｄは、取得された第２の粒度のラベルが付与された教師データのラベルを、第１の粒度のラベルに変換する。具体的には、変換部１５ｄは、階層型のラベルを階層の数の要素をもつベクトル形式に変換する。
【００２６】
図４は、ラベルの変換について説明するための説明図である。図４に例示するように、変換部１５ｄは、ラベル情報１４ａを参照し、例えば人手により付与された粒度のそろっていない２階層の階層型のラベルを、２つの要素をもつベクトルに変換する。例えば、変換部１５ｄは、「ＤｏＳマルウェア１」を（ＤｏＳ，ＤｏＳマルウェア１）に変換する。
【００２７】
また、粗いラベルのみが付与されていて詳細ラベルが不明である場合に、変換部１５ｄは、（ＤｏＳ，＊）あるいは（ＤｏＳ，ｎｕｌｌ）のように、不明な詳細ラベルの値を＊またはｎｕｌｌ等とする。図４に示す例では、例えば、階層１の粒度の粗いラベルである「トロイの木馬」が（トロイの木馬，＊）というベクトルに変換されている。これにより、変換部１５ｄは、取得部１５ｃが取得した教師データのラベルが階層２の詳細ラベルであった場合に、ラベル情報１４ａを参照し、階層１の粗いラベルに変換する。
【００２８】
なお、マルウェアが行った通信のネットワークログを、ＳＨＡ−１ハッシュ値等で表されるマルウェア検体ＩＤをラベルとして用いて分類する場合には、変換部１５ｄは、マルウェア検体ＩＤを元にして、最適な階層の階層型ラベルに変換する。その際、変換部１５ｄは、必要以上に詳細な階層の値、あるいは信頼度の低い階層の値を＊またはｎｕｌｌ等とする。
【００２９】
そして、粗分類部１５ａは、取得された第１の粒度のラベルが付与された教師データと、変換された第１の粒度のラベルが付与された教師データとを用いて、第１の粒度のラベルの付与を学習する。また、細分類部１５ｂは、取得された第２の粒度の詳細ラベルが付与された教師データと、粗分類部１５ａが出力した第１の粒度のラベルとを用いて、第２の粒度の詳細ラベルの付与を学習する。
【００３０】
言い換えれば、粒度の粗いラベルが付与された教師データが入力された場合に、粗分類部１５ａが粒度の粗いラベルの付与を学習する。また、粒度の細かい詳細ラベルが付与された教師データが入力された場合に、変換部１５ｄが詳細ラベルを粒度の粗いラベルに変換することにより、粗分類部１５ａが粒度の粗いラベルの付与を学習する。また、細分類部１５ｂが、粒度の細かい詳細ラベルが付与された教師データと、粗分類部１５ａが出力した粒度の粗いラベルとを用いて、詳細ラベルの付与を学習する。このように、分類装置１０は、粒度の粗いラベルが付与された教師データおよび粒度の細かい詳細ラベルが付与された教師データのすべての教師データを用いて、詳細ラベルの付与を学習することが可能となる。
【００３１】
なお、分類装置１０が取り扱うラベルの階層は３以上でもよい。ここで、図５を参照して、その場合の分類装置の構成を説明する。その場合に、分類装置１０は、さらに、データに付与する、第１の粒度よりさらに粗い粒度のラベルを出力する粗分類部１５αを備え、該粗分類部１５αが粗分類部１５ａに連結される
【００３２】
図５には、分類装置１０が３階層のラベルを取り扱う場合について例示されている。図５に示すように、階層１の粒度の粗いラベルを出力する粗分類部１５ａに、粗分類部１５ａと同様に構成され階層１よりさらに粒度の粗いラベルを出力する粗分類部１５αが連結されている。これにより、分類装置１０が、詳細ラベル、粗いラベル、および、さらに粗いラベルの３階層のラベルを取り扱うことが可能となる。
【００３３】
分類装置１０が４階層のラベルを取り扱う場合には、粗分類部１５ａおよび粗分類部１５αと同様に構成され粒度が最も粗いラベルを出力する新たな粗分類部が、粗分類部１５αに連結される。このように、分類装置１０が取り扱うラベルの階層の数が増えた場合には、粗分類部１５ａと同様に構成され粒度が最も粗いラベルを出力する新たな粗分類部を分類装置１０に連結することにより実現可能となる。これにより、分類装置１０は、多様な教師データを用いて最も粒度の細かい詳細ラベルの付与を学習することが可能となる。
【００３４】
［分類処理］
次に、図６を参照して、本実施形態に係る分類装置１０による分類処理について説明する。図６は、分類処理手順を示すフローチャートである。図６のフローチャートは、例えば、分類処理の開始を指示する操作入力があったタイミングで開始される。
【００３５】
まず、取得部１５ｃが、入力部１１あるいは通信制御部１３を介して、粒度の粗いラベルが付与された教師データまたは粒度の細かいラベルが付与された教師データを取得する（ステップＳ１）。
【００３６】
次に、変換部１５ｄが、教師データに付与されている階層型のラベルを階層の数の要素をもつベクトル形式に変換することにより、取得された教師データに詳細ラベルが付与されている場合には、詳細ラベルを粒度の粗いラベルに変換する（ステップＳ２）。
【００３７】
取得部１５ｃが、粒度の粗いラベルが付与された教師データを取得した場合に（ステップＳ３、Ｙｅｓ）、粗分類部１５ａが粗いラベルの付与を学習する（ステップＳ４）。また、取得部１５ｃが、詳細ラベルが付与された教師データを取得した場合に（ステップＳ３，Ｎｏ）、粗分類部１５ａが粗いラベルの付与を学習し、細分類部１５ｂが詳細ラベルの付与を学習する（ステップＳ５）。これにより、一連の分類処理が終了する。
【００３８】
以上、説明したように、本実施形態の分類装置１０において、粗分類部１５ａが、データに付与する分類の階層を表す第１の粒度の粗いラベルを出力する。また、細分類部１５ｂが、データに付与する第１の粒度より細かい第２の粒度の詳細ラベルを出力するとともに、第１の粒度の粗いラベルから第２の粒度の詳細ラベルを出力する。また、取得部１５ｃが、第１の粒度の粗いラベルが付与された教師データまたは第２の粒度の詳細ラベルが付与された教師データを取得する。
【００３９】
また、変換部１５ｄが、取得された第２の粒度の詳細ラベルが付与された教師データのラベルを、第１の粒度の粗いラベルに変換する。粗分類部１５ａは、取得された第１の粒度の粗いラベルが付与された教師データと、変換された第１の粒度の粗いラベルが付与された教師データとを用いて、第１の粒度の粗いラベルの付与を学習する。また、細分類部１５ｂは、取得された第２の粒度の詳細ラベルが付与された教師データと、粗分類部１５ａが出力した第１の粒度の粗いラベルとを用いて、第２の粒度の詳細ラベルの付与を学習する。
【００４０】
この場合に、粗分類部１５ａは、大量の教師データを用いて学習するので、精度が向上する。また、細分類部１５ｂは、分類対象のデータに加え、粒度の粗いラベルを用いて分類するので、精度が向上する。また、粒度の粗いラベルが付与された教師データが無駄にされることなく詳細ラベルの付与の学習に利用される。
【００４１】
このように、分類装置１０は、階層型の粒度の異なるラベルが付与されたすべての教師データを用いて、詳細ラベルの付与を学習することが可能となる。これにより、ラベルの粒度に関わらず、幅広くより多くのラベルの情報を教師データとして学習できるので、分類性能が向上する。
【００４２】
また、セキュリティインシデントの原因を絞り込みながら、その時点でわかった範囲で抽象的なラベルが付与された教師データを用いて学習することが可能となる。同一のマルウェアに対して、セキュリティベンダごとに異なるラベルが付与されていても、異なるラベルの教師データを用いて学習することができる。このように、本実施形態の分類装置１０の分類処理により、階層構造をもつラベルが付与された教師データを用いてセキュリティインシデントの種別を分類することできる。
【００４３】
さらに、データに付与するさらに粒度の粗いラベルを出力する粗分類部１５αを備え、該粗分類部１５αが粗分類部１５ａに連結されてもよい。これにより、分類装置１０が３階層のラベルを取り扱うことが可能となる。このように、分類装置１０は、多数階層構造の多様なラベルが付与された教師データを用いて、最も粒度の細かい詳細ラベルの付与を学習することが可能となる。
【００４４】
［実施例］
【００４５】
次に、本実施形態の分類装置１０と、単一の階層のラベルを取り扱う従来の分類装置について、以下の条件で実験を行って、分類精度を測定した。ここで、従来の分類装置は、ｈｉｄｄｅｎを介して入力されたデータに付与する粒度の細かい詳細ラベルを出力する。入力されるデータは、手書き数字の画像データとし、詳細ラベルは、１，２，…の１０種の数字のラベルとした。また、本実施形態の分類装置１０で取り扱われる粒度の粗いラベルは、偶数または奇数の２種類のラベルとした。
【００４６】
本実施形態の分類装置１０および従来の分類装置のそれぞれに、詳細ラベルが付与された教師データ３００件を入力し、粗いラベルが付与された教師データ９７００件を本実施形態の分類装置１０に入力し、詳細ラベルの付与の学習を行った。その後、本実施形態の分類装置１０および従来の分類装置のそれぞれに、学習されていない未知のデータ１００００件を入力した。その結果、従来の分類装置の分類精度は８２％であった。これに対し、本実施形態の分類装置１０の分類精度は８７％であり、約５％の分類精度の向上が確認された。
【００４７】
［プログラム］
上記実施形態に係る分類装置１０が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、分類装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記の分類処理を実行する分類プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の分類プログラムを情報処理装置に実行させることにより、情報処理装置を分類装置１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）などの移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistants）などのスレート端末などがその範疇に含まれる。
【００４８】
また、分類装置１０は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の分類処理に関するサービスを提供するサーバ装置として実装することもできる。例えば、分類装置１０は、教師データおよび未知のデータを入力とし、未知のデータに付与するラベルを出力する分類処理サービスを提供するサーバ装置として実装される。この場合、分類装置１０は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記の分類処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。以下に、分類装置１０と同様の機能を実現する分類プログラムを実行するコンピュータの一例を説明する。
【００４９】
図７は、分類プログラムを実行するコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。
【００５０】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０３１に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１０４１に接続される。ディスクドライブ１０４１には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１０５１およびキーボード１０５２が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１０６１が接続される。
【００５１】
ここで、ハードディスクドライブ１０３１は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。上記実施形態で説明した各テーブルは、例えばハードディスクドライブ１０３１やメモリ１０１０に記憶される。
【００５２】
また、分類プログラムは、例えば、コンピュータ１０００によって実行される指令が記述されたプログラムモジュール１０９３として、ハードディスクドライブ１０３１に記憶される。具体的には、上記実施形態で説明した分類装置１０が実行する各処理が記述されたプログラムモジュール１０９３が、ハードディスクドライブ１０３１に記憶される。
【００５３】
また、分類プログラムによる情報処理に用いられるデータは、プログラムデータ１０９４として、例えば、ハードディスクドライブ１０３１に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０３１に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した各手順を実行する。
【００５４】
なお、分類プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０３１に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１０４１等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、分類プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ＬＡＮやＷＡＮ（Wide  Area  Network）等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００５５】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【００５６】
１０  分類装置
１１  入力部
１２  出力部
１３  通信制御部
１４  記憶部
１４ａ  ラベル情報
１５  制御部
１５ａ  粗分類部
１５ｂ  細分類部
１５ｃ  取得部
１５ｄ  変換部
【図１】
2018200524.tif 000003
【図２】
2018200524.tif 000004
【図３】
2018200524.tif 000005
【図４】
2018200524.tif 000006
【図５】
2018200524.tif 000007
【図６】
2018200524.tif 000008
【図７】
2018200524.tif 000009