【文献】
安田 陽介 外1名,「身体的特徴情報を用いた適応的トレーニングデータ選択による日常行動認識手法」,電気学会研究会資料 情報システム研究会,一般社団法人電気学会,2013年 6月21日,IS−13−26,pp.23−27
【文献】
木村 周 外2名,「モバイル端末上における行動認識のための距離関数を用いた分類モデル生成手法の提案と評価」,電子情報通信学会技術研究報告,社団法人電子情報通信学会,2012年 3月,第111巻,第485号,pp.113−118
(58)【調査した分野】(Int.Cl.,DB名)
前記学習モデル作成部は、前記ユーザごとに算出された指標値が所定の閾値を超えるか否かに基づいて、前記ユーザの学習データが前記学習モデルに寄与する度合いを変更する
ことを特徴とする請求項1乃至4のいずれか一項に記載の学習モデル作成装置。
前記学習モデル作成部は、前記ユーザごとに、当該ユーザの学習データが前記学習モデルに寄与する度合いを更新する処理と、当該更新された度合いをもとに前記学習モデルを更新する処理とを、所定の収束条件を満たすまで繰り返して前記学習モデルを作成する
ことを特徴とする請求項1に記載の学習モデル作成装置。
学習モデルを作成する学習モデル作成装置と、前記学習モデルに基づいてラベルが未知の入力データに対応したラベルを判定する判定装置とを有する判定システムであって、
前記学習モデル作成装置は、
複数のユーザについて、入力情報と、当該入力情報に対応したラベルとを少なくとも組とする学習データを受け付ける受付部と、
前記ユーザごとの学習データが示す当該ユーザの特徴に基づいて、前記ユーザごとに、当該ユーザの特徴と、他のユーザの特徴との相違を示す指標値を算出する算出部と、
前記複数のユーザの学習データに基づいて、ラベルが未知の入力データに対応したラベルを判定するための前記学習モデルを作成する際に、前記ユーザごとに算出された指標値に基づいて、他のユーザと特徴の相違が大きいユーザの学習データが前記学習モデルに寄与する度合いを小さくして前記学習モデルを作成する学習モデル作成部とを備え、
前記判定装置は、
前記学習モデル作成部が作成した学習モデルを格納する格納部と、
前記格納された学習モデルに基づいて、前記ラベルが未知の入力データに対応したラベルを判定する判定部と
を備えることを特徴とする判定システム。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して実施形態にかかる学習モデル作成装置、判定システムおよび学習モデル作成方法を詳細に説明する。なお、以下の説明において、同様の構成要素には共通の符号を付与するとともに、重複する説明を省略する。
【0012】
(第1の実施形態)
図1は、第1の実施形態にかかる判定システムの構成の一例を示すブロック図である。
図1に示すように、判定システム1は、複数のユーザの学習データD1を受け付けて学習モデルM1を作成する学習モデル作成装置10と、ラベルが未知であるデータD2の入力を受け付け、学習モデル作成装置10が作成した学習モデルM1に基づいてデータD2のラベルを判定する判定装置20とを有する。
【0013】
学習モデル作成装置10は、学習データ変換部101と、学習データ格納部102と、ユーザモデル作成部103と、異常度算出部104と、学習モデル作成部105とを有する。
【0014】
学習データ変換部101は、学習データD1の入力を受け付ける。学習データD1は、複数のユーザから与えられ、教師つき学習における教師データに相当するデータである。具体的には、学習データD1は、ユーザの入力情報であるテキスト、画像、音声等のデータと、そのデータの内容の種別であるラベルとを少なくとも組としたデータである。
【0015】
図2は、学習データD1を説明する説明図である。
図2に示すように、学習データD1は、ユーザの入力情報がテキストである場合、「野球をしたい」などのテキストと、そのテキスト内容の種別を示す「スポーツ」等のラベルと、ユーザを識別するためのユーザIDとを有する。この学習データD1は、例えばコンソールからの入力の他、インターネット上の掲示板、ブログ、SNS(ソーシャル・ネットワーキング・サービス)などへのユーザの書き込みを収集したものであってもよい。
【0016】
学習データ変換部101は、入力された学習データD1について、データの特徴をn次元のベクトルで表記した特徴ベクトルと、ラベルの内容を数値化した数値ラベルの組に変換する。特徴ベクトルへの変換は、機械学習で一般的に用いられている公知の手法を利用する。例えば、データがテキストの場合には、形態素解析、n−gramまたは区切り文字により特徴ベクトルへ変換する手法がある。一般に、形態素解析は日本語のテキストに、空白区切りは英語のテキストに適用されることが多く、テキストの種別(日本語/英語)によって手法を変更してもよい。
【0017】
形態素解析の場合は、予め設定された辞書データをもとに、データを品詞に分割し、分割された要素をもとに特徴ベクトルへ変換する。例えば、「今日は、サッカーを、する」というテキストは、「今日/は/、/サッカー/を/、/する」と分割され、分割された要素をもとに特徴ベクトルに変換する。
【0018】
また、n−gramの場合は、データを先頭から1文字ずつずらしながらn文字の組をつくり、それらを特徴ベクトルに変換する。例えば、「今日は、サッカーを、する」というテキストは、n−gram(n=6)の場合、「今日は、サッ/日は、サッカ/…/カーを、する」という要素が作られ、これらの要素をもとに特徴ベクトルに変換する。
【0019】
また、区切り文字の場合は、データを予め定めた区切り文字(空白、句読点、カンマ等)によって分割し、分割された要素をもとに特徴ベクトルへ変換する。例えば、「今日は、サッカーを、する」というテキストは、区切り文字(”、”)の場合、「今日は/サッカーを/する」と分割され、分割された要素をもとに特徴ベクトルへ変換する。
【0020】
特徴ベクトルへの変換には、各要素の出現回数をそのまま特徴ベクトルとする方式、出現回数によらず、ある要素が出現する(1)/出現しない(0)で数値化する方式等がある。ラベルに関しても所定の規則に従って数値化する。例えば、「スポーツ」/「非スポーツ」のラベルがある場合は、「スポーツ」を「1」、「非スポーツ」を「0」のように数値化する。
【0021】
学習データ格納部102は、学習データ変換部101による変換済の学習データD1と、ユーザIDの組を格納する。学習データ格納部102は、一般のデータベース(MySQLやPostgreSQL等)を用いてもよいし、表形式やテキスト形式での格納などであってもよい。学習データ格納部102における、格納方法の種類は問わない。また、学習データ格納部102は、RAM(Random Access Memory)上に確保された作業領域で代用してもよい。
【0022】
ユーザモデル作成部103は、学習データ格納部102から変換済の学習データD1とユーザIDの組を取り出し、ユーザID(ユーザ)ごとに固有の学習モデルであるユーザモデルを作成する。
【0023】
図3は、ユーザモデル作成部103を説明する説明図である。
図3に示すように、ユーザモデル作成部103は、ユーザIDごとの学習データD11、D12に対応したユーザモデルU1、U2を作成する。ユーザモデルU1、U2は、ユーザIDが「1」、「2」におけるユーザの特徴ベクトルと数値化ラベルとの組をもとに作成される、ユーザごとの学習モデルである。ユーザモデルU1、U2の作成には、一般の機械学習手法である、ロジスティック回帰、サポートベクターマシン、パーセプトロン等を用いてもよい。作成されたユーザモデルU1、U2は、n次元のベクトルで表記される。
【0024】
異常度算出部104は、ユーザごとの学習データD1が示す各ユーザの特徴に基づいて、ユーザごとに、ユーザの特徴と、他のユーザの特徴とが、どの程度相違するかを示す指標値である異常度を算出する。具体的には、各ユーザの学習データD1や、ユーザモデルU1、U2を互いに比較することで、あるユーザが他のユーザとどの程度相違するかを示す異常度を算出する。この異常度の算出方法には、大きく分けて、各ユーザの学習データD1の違いにより算出する第1の算出方法、ユーザモデルU1、U2の違いにより算出する第2の算出方法、第1の算出方法と第2の算出方法を組み合わせた第3の算出方法がある。
【0025】
第1の算出方法では、各ユーザの学習データD1の要素の違いを基に、各ユーザの異常度を算出する。例えば、他のユーザと比べて学習データの要素が極端に少ない、もしくは多いユーザの異常度を高く算出する。
【0026】
図4は、異常度の算出を説明する説明図であり、より具体的には、第1の算出方法による異常度の算出を説明する図である。
図4に示すように、第1の算出方法の具体例としては、全てのユーザの学習データ数の平均(図示例では「40」)を算出し、算出した平均と各ユーザの学習データ数との差を、各ユーザの異常度と定義する方法がある。また、全てのユーザの学習データ数の中央値(図示例では「30」)と、各ユーザの学習データ数の差を、各ユーザの異常度と定義する方法がある。なお、第1の算出方法は、
図4の例に限定するものではなく、各ユーザの学習データD1の要素を互いに比較する方法であれば他の方法を用いてもよい。
【0027】
第2の算出方法では、ユーザモデルU1、U2を表すベクトルの大きさや方向の違いを基に、各ユーザの異常度を算出する。例えば、ユーザモデルU1、U2を表すベクトルの大きさや方向が、他とは異なるユーザの異常度を高く算出する。
【0028】
図5、
図6は、異常度の算出を説明する説明図であり、より具体的には、第2の算出方法による異常度の算出を説明する図である。ここで、
図5、
図6におけるV
1、V
2およびV
3はユーザIDが「1」、「2」、「3」のユーザモデルを2次元のベクトルとして表記したものである。また、
図5におけるV
aは、V
1、V
2およびV
3の平均のベクトルである。また、
図6におけるV
1n、V
2nおよびV
3nは、V
1、V
2およびV
3を正規化したベクトルである。また、
図6におけるV
anは、V
1n、V
2nおよびV
3nの平均のベクトルである。
【0029】
図5に示すように、第2の算出方法としては、各ユーザのユーザモデルであるV
1、V
2およびV
3の平均をとり、平均とV
1、V
2およびV
3との距離D
1、D
2、D
3をユーザごとの異常度と定義する方法がある。この場合、V
aと、V
1、V
2およびV
3との距離D
1、D
2、D
3が大きくなるほど、異常度は高くなる。
【0030】
また、
図6に示すように、第2の算出方法としては、各ユーザのユーザモデルであるV
1、V
2およびV
3について正規化し、正規化したV
1n、V
2nおよびV
3nの平均をとる。そして、平均したV
anと、V
1、V
2およびV
3とのなす角度をユーザごとの異常度と定義する方法がある。この場合、V
anと、V
1、V
2およびV
3とのなす角度が大きくなるほど、異常度は高くなる。なお、第2の算出方法は、
図5、6の例に限定するものではなく、各ユーザのユーザモデルU1、U2をもとに比較を行う方法であれば他の方法を用いてもよい。
【0031】
第3の算出方法としては、例えば、(第1の算出方法で算出された異常度)+(第2の算出方法で算出された異常度)と算出する方法がある。なお、第1の算出方法および第2の算出方法の組み合わせは、上述した単純加算以外に乗算を用いてもよく、特に限定しない。
【0032】
学習モデル作成部105は、入力された学習データD1に基づいて、判定装置20がデータD2に対応したラベルを判定するための学習モデルM1を作成する。具体的には、学習モデル作成部105は、ユーザモデル作成部103が作成した各ユーザのユーザモデルを統合した学習モデルM1を作成し、判定装置20へ出力する。この学習モデルM1の作成に際し、学習モデル作成部105は、異常度算出部104が算出した各ユーザの異常度に基づいて、他のユーザと特徴の相違が大きい、すなわち異常度の大きいユーザのユーザモデルが学習モデルM1に寄与する度合いを小さくして、学習モデルM1を作成する。異常度に応じてユーザの学習データD1の寄与を変更する方法としては、異常度から各ユーザモデルの重みを定義し、その重み付き平均により学習モデルを作成する方法、所定の閾値未満の重みに対応するユーザモデルを排除した上で学習モデルを作成する方法などがある。
【0033】
重み付き平均により学習モデルを作成する方法において、ユーザモデルの重みの定め方としては、例えば異常度の逆数を重みとする方法がある。異常度の逆数を重みとする場合、異常度が0の時には、逆数の計算ができないため、予め設定しておいた数値を重みとする等の例外処理を行う。なお、重要度から重みを定める方法は上記に限定しない。
【0034】
例えば、w
iをユーザID=iのユーザモデルとし、λ
iをユーザモデルw
iの重み、Kをユーザの総数としたとき、学習モデルw
0は以下の式(1)で算出してもよい。
【0036】
式(1)を用いる方法では、異常度の高いユーザモデルw
iは、学習モデルw
0への寄与が小さくなる。
【0037】
所定の閾値未満の重みに対応するユーザモデルを排除した上で学習モデルを作成する方法としては、重みλ
iがある所定の閾値を下回っているユーザモデルw
iは用いずに学習モデルw
0を作成する方法がある。この閾値の設定方法は、ユーザがコンソール等より予め定める方法、重みλ
iの平均を閾値とする方法があるが、それらに限定しない。
【0038】
例えば、所定の閾値をaとした場合の学習モデルw
0は、以下の式(2)で算出してもよい。
【0040】
また、重みが閾値a以上となるユーザモデルw
iは、すべて均等に扱って学習モデルw
0を算出してもよい。この場合、学習モデルw
0は、以下の式(3)で与えられる。
【0042】
なお、すべてのユーザモデルの重みλ
iが閾値aを下回った場合は、学習モデルw
0は0ベクトルとしてもよい。
【0043】
判定装置20は、データ変換部201と、判定部202と、学習モデル格納部203と、判定結果出力部204とを有する。
【0044】
データ変換部201は、ラベルが未知であるデータD2を入力として受け付ける。このデータD2は、例えばコンソールからの入力の他、例えば、入力がテキストの場合には、インターネット上の掲示板、ブログ、SNSなどへの任意の書き込みを収集したものであってもよい。データ変換部201は、学習データ変換部101と同様、受け付けたデータD2を特徴ベクトルに変換する。特徴ベクトルに変換されたデータD2は判定部202へ出力される。
【0045】
判定部202は、特徴ベクトルに変換されたデータD2を受け取ると、学習モデル格納部203に格納されている学習モデルM1を参照し、データD2に対応するラベルを判定する。具体的には、特徴ベクトルと学習モデルM1との内積が0より大きければ数値化ラベル=1、0より小さければ数値化ラベル=0、0であれば数値化ラベル=−1(「−1」は「判定不能」を示す)のように、判定部202は、特徴ベクトルと学習モデルM1との内積の値をもとにラベル判定を行う。
【0046】
学習モデル格納部203は、学習モデル作成装置10にて作成された学習モデルM1を格納する。学習モデル格納部203は、一般のデータベース(MySQLやPostgreSQL等)を用いてもよいし、表形式やテキスト形式での格納などであってもよい。学習モデル格納部203における、格納方法の種類は問わない。
【0047】
判定結果出力部204は、判定部202で得られた判定結果(数値化ラベル)を、数値化ラベルとラベル表記との対応テーブルなどを参照し、数値化する前のラベルに変換する。そして、判定結果出力部204は、変換したラベルをユーザに識別可能な判定結果R1として出力する。ただし、判定部202で得られた判定結果が「−1」の場合には、「判定不能」などの文字列を判定結果R1として出力する。ここで、判定結果出力部204が行う判定結果R1の出力は、ディスプレイへの表示出力、HDD(Hard Disk Drive)等の記憶媒体へ書き込み、ネットワーク上の他の情報処理装置(例えばPC(Personal Computer)等)への送信などであってよい。
【0048】
図7は、第1の実施形態にかかる判定システム1の処理フローを説明する説明図である。
図7に示すように、学習モデル作成装置10は、複数のユーザについて、入力情報と、その入力情報に対応したラベルとを少なくとも組とする学習データD11、D12、D13…を受け付ける。そして、学習モデル作成装置10は、学習データ変換部101において、ユーザごとの学習データD11、D12、D13が示す特徴ベクトルへの変換等の学習データ変換の処理を行う(S1)。
【0049】
次いで、学習モデル作成装置10は、ユーザモデル作成部103において、変換後のデータをもとにユーザモデルを作成し、異常度算出部104において、ユーザごとに、このユーザの特徴と、他のユーザの特徴との相違を示す異常度を算出する。そして、学習モデル作成装置10は、学習モデル作成部105において、算出した異常度と、ユーザモデルとに基づいて学習モデルM1を作成する処理(S2)を行う。このS2では、ユーザごとに算出された異常度に基づいて、他のユーザと特徴の相違が大きいユーザのユーザモデルが学習モデルM1に寄与する度合いを小さくする。
【0050】
判定装置20は、ラベルが未知のデータD2の入力を受け付ける。そして、判定装置20は、データ変換部201において、受け付けたデータD2の特徴ベクトルへの変換等のデータ変換の処理を行う(S3)。次いで、判定装置20は、判定部202において、データ変換後のデータD2を受け取り、S2で作成された学習モデルM1を参照し、データD2に対応するラベルを判定する(S4)。そして、判定装置20は、判定したラベル(図示例では「スポーツ」)を判定結果R1として出力する。
【0051】
以上のように、学習モデル作成装置10は、複数のユーザについて、入力情報と、その入力情報に対応したラベルとを少なくとも組とする学習データD1を受け付ける。そして、学習モデル作成装置10は、ユーザごとの学習データD1が示す特徴に基づいて、ユーザごとに、このユーザの特徴と、他のユーザの特徴との相違を示す異常度を算出する。そして、学習モデル作成装置10は、判定装置20がデータD2に対応したラベルを判定するための学習モデルM1を学習データD1に基づいて作成する際に、ユーザごとに算出された異常度に基づいて、他のユーザと特徴の相違が大きいユーザの学習データD1が学習モデルM1に寄与する度合いを小さくする。
【0052】
このため、学習モデル作成装置10は、誤った学習データD1を与えるユーザが存在した場合であっても、そのユーザの学習データD1が学習モデルM1に寄与する度合いを小さくすることができ、判定精度の高い学習モデルM1を作成することができる。例えば、誤った学習データD1を与えるユーザが少数の場合には、それらのユーザが与える学習データD1やユーザモデルは多数のユーザのものと大きく異なるものとなる。したがって、誤った学習データD1を与えるユーザは異常度が高くなる。異常度の高いユーザの学習データD1は学習モデルM1へ寄与する度合いが小さくなるため、エキスパードデータなどで信頼度を加味することなく、判定精度の高い学習モデルM1の作成が可能となる。また、判定装置20では、学習モデル作成装置10で作成された学習モデルM1を参照してデータD2のラベル判定を行うことから、誤った学習データD1を与えるユーザの影響を抑えた、精度の高い判定を行うことが可能となる。
【0053】
(第2の実施形態)
次に、第2の実施形態について説明する。上述した第1の実施形態では、各ユーザのユーザモデルを作成した後、ユーザごとの異常度を求め、求めた異常度を重みに変換する。そして、ユーザモデルと重みを用いて学習モデルM1を作成する。すなわち、第1の実施形態では、上述した処理を順次行って学習モデルM1を作成する順次法を例示した。第2の実施形態では、学習モデル(ユーザごとのユーザモデルおよびそれらを統合した学習モデル)と、ユーザごとの重みの更新を繰り返し、所定の収束条件を満たしたところで学習モデルとして出力する繰り返し法を例示する。
【0054】
図8は、第2の実施形態にかかる判定システム1aの構成の一例を示すブロック図である。
図8に示すように、判定システム1aの学習モデル作成装置10aは、初期化部111、学習モデル更新部112及びパラメータ更新部113を有する学習モデル作成部110としているところが判定システム1と異なっている。
【0055】
初期化部111は、学習データ格納部102から学習データD1を受け取ると、各ユーザ(任意のユーザID=kをユーザkとする)のユーザモデルw
k、学習モデルw
0、重みλ
k、正則化パラメータη(実数)を予め定めておいた値で初期化する。次いで、初期化部111は、ユーザモデルw
k、学習モデルw
0および学習データD1を学習モデル更新部112に出力し、重みλ
k、正則化パラメータηをパラメータ更新部113へ出力する。
【0056】
学習モデル更新部112は、各ユーザのユーザモデルw
kと学習モデルw
0を更新する。ここで、学習モデル更新部112における更新処理の詳細について説明する。先ず、ユーザID=kのユーザkが与えたi番目の学習データD1を(x
ki,y
ki)で表す。ここで、x
kiはn次元の特徴ベクトル、y
kiはラベルを表し、このラベルは0または1の値をとるものとする。なお、特徴ベクトルx
kiは列ベクトルである。
【0057】
また、ユーザkの与えた学習データD1の要素の総数をI
kとしたとき、I
k個の特徴ベクトルの転置を縦に並べて作ったI
k×n行列を次の式(4)のX
kで表す。
【0059】
ここで、x
Tkiはx
kiの転置を表す。また、行列Aの逆行列はA
−1と表記する。
【0060】
学習モデル更新部112は、各ユーザのユーザモデルw
kと学習モデルw
0を次の式(5)に従って更新する。なお、式(5)におけるw
kは更新前のユーザモデル、w
newkは更新後のユーザモデルを示す。また、w
0は更新前の学習モデル、w
new0は更新後の学習モデルを示す。
【0062】
ここで、βは予め定めておく必要がある正の実数であり、Hとgは次の式(6)で与えられる。
【0064】
B
kは、(i,i)成分が(1−σ(w
Tkx
ki))σ(w
Tkx
ki)のI
k次対角行列である。また、D
kは、i成分がy
ki−σ(w
Tkx
ki)のI
k次列ベクトルである。また、Iはn次単位行列である。ここで、σは次の式(7)で与えられる関数(シグモイド関数)である。
【0066】
学習モデル更新部112における更新は、所定の終了条件(収束条件)が満たされるまで実施される。ここで、終了条件としては、更新の回数が予定の数を超えた場合、更新の前後における学習モデルの変化が所定の値以下である場合などがある。
【0067】
パラメータ更新部113は、各ユーザのユーザモデルにおける重みλ
kと、正則化パラメータηを次の式(8)に従って更新する。この重みλ
kは、他のユーザとの相違を示す指標値である。
【0069】
ここで、Tr[A]は行列Aのトレースを示す。なお、異常度の定め方としては、例えば重みの逆数を異常度とする方法が考えられるが、この方法以外であってもよく、特に限定しない。
【0070】
上述した、学習モデル更新部112による学習モデル(ユーザごとのユーザモデルおよびそれらを統合した学習モデル)の更新と、パラメータ更新部113によるユーザごとの重みの更新を繰り返すことで得られる学習モデルw
0は、式(5)より以下の式(9)となる。
【0072】
上記の式(9)より、学習モデルw
0は、各ユーザモデルw
kの重み付き平均の定数倍で与えられることがわかる。なお、第1の実施形態における、所定の閾値未満を切り捨てる場合と同様、ある閾値aを定め、重みが閾値aを下回っているユーザモデルは上記の式で用いずに学習モデルw
0を作成してもよい。
【0073】
図9は、第2の実施形態にかかる学習モデル作成の処理を示すフローチャートである。
図9に示すように、学習モデル作成部110における処理が開始されると、初期化部111は、ユーザモデルw
k、学習モデルw
0、重みλ
k、正則化パラメータη(実数)を初期化する(S11)。次いで、学習モデル更新部112は、初期化されたユーザモデルw
kと学習モデルw
0を更新する(S12)。
【0074】
次いで、パラメータ更新部113は、ユーザモデルにおける重みλ
kと、正則化パラメータηを更新する(S13)。次いで、学習モデル更新部112は、S13で更新された重みλ
kと、正則化パラメータηをもとに、ユーザモデルw
kと学習モデルw
0を更新する(S14)。次いで、学習モデル作成部110は、更新の回数が予定の数を超えたか否か、更新の前後における学習モデルの変化が所定の値以下であるか否かなど、所定の収束条件を満たすか否かを判定する(S15)。
【0075】
所定の収束条件を満たさない場合(S15:NO)、学習モデル作成部110はS13へ処理を戻す。これにより、所定の収束条件を満たさない間は、ユーザモデルにおける重みλ
kおよび正則化パラメータηの更新と、ユーザモデルw
kおよび学習モデルw
0の更新とが交互に繰り返し実施されることとなる。
【0076】
所定の収束条件を満たす場合(S15:YES)、学習モデル作成部110は処理を終了し、収束条件を満たすまでに演算された学習モデルw
0を判定装置20へ出力する。
【0077】
また、上述した実施形態において説明した学習モデル作成装置10および判定装置20が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上述した実施形態にかかる学習モデル作成装置10および判定装置20における処理と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上述した実施形態と同様の処理を実現してもよい。以下に、上述したプログラムを実行するコンピュータの一例を説明する。
【0078】
図10は、実施形態にかかる判定システム1の学習モデル作成装置10および判定装置20における処理がコンピュータを用いて具体的に実現されることを示す図である。
図10に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有し、これらの各部はバス1080によって接続される。
【0079】
メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1041に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブに挿入される。シリアルポートインタフェース1050は、例えばマウス1051、キーボード1052に接続される。ビデオアダプタ1060は、例えばディスプレイ1061に接続される。
【0080】
ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記のプログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュール1093として、例えばハードディスクドライブ1031に記憶される。例えば、
図1に例示した学習モデル作成装置10の機能構成(学習データ変換部101、学習データ格納部102、ユーザモデル作成部103、異常度算出部104、学習モデル作成部105)や判定装置20の機能構成(データ変換部201、判定部202、判定結果出力部204、学習モデル格納部203)と同様の情報処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。
【0081】
また、上述したプログラムを実行する際の作業領域などは、RAM1012に確保される。処理に必要な設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1031に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
【0082】
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。また、学習モデル作成装置10および判定装置20を備える判定システム1は、上述した一つのコンピュータで実現されるものであってよいことは言うまでもないことである。