(57)【要約】【課題】排他的なラベルが付与された学習データによる学習を実行することを課題とする。【解決手段】学習装置は、学習対象のデータそれぞれに対して、１または複数のラベルを要素とするラベルベクトルを設定する。例えば、学習装置は、学習対象のデータそれぞれに設定する対象であるラベル間の相関に基づき前記ラベルベクトルを生成する。そして、学習装置は、学習対象のデータと、学習対象のデータそれぞれに設定されたラベルベクトルを用いて、ニューラルネットワークを含む学習モデルに対する学習を行わせる。【選択図】図２
2019159612.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
学習対象のデータそれぞれに対して、１または複数のラベルを要素とするラベルベクトルを設定し、
前記学習対象のデータと、前記学習対象のデータそれぞれに設定された前記ラベルベクトルを用いて、ニューラルネットワークを含む学習モデルに対する学習を行わせる
処理を実行させる学習プログラム。
【請求項２】
前記学習対象のデータそれぞれに設定する対象であるラベル間の相関に基づき前記ラベルベクトルを生成し、前記学習対象のデータそれぞれに対して前記ラベルベクトルを設定する処理を、前記コンピュータに実行させる請求項１に記載の学習プログラム。
【請求項３】
前記学習対象のデータそれぞれに設定する対象である複数のラベルについて、各ラベル間の相関関係を判定し、
前記複数のラベルのうち、いずれのラベルとも相関がないラベルについては当該ラベルに該当するか否かを示す値を設定し、相関があるラベル間については前記相関に基づく値を設定した前記ラベルベクトルを生成し、
前記ラベルベクトルを前記学習対象のデータそれぞれに設定する処理を、前記コンピュータに実行させる請求項１に記載の学習プログラム。
【請求項４】
前記相関があるラベル間について各ラベルに該当するデータの分布を生成し、各データの分布に基づく発生確率をもとに前記ラベルベクトルを生成する処理を、前記コンピュータに実行させる請求項３に記載の学習プログラム。
【請求項５】
コンピュータが、
学習対象のデータそれぞれに対して、１または複数のラベルを要素とするラベルベクトルを設定し、
前記学習対象のデータと、前記学習対象のデータそれぞれに設定された前記ラベルベクトルを用いて、ニューラルネットワークを含む学習モデルに対する学習を行わせる
処理を実行する学習方法。
【請求項６】
学習対象のデータそれぞれに対して、１または複数のラベルを要素とするラベルベクトルを設定する設定部と、
前記学習対象のデータと、前記学習対象のデータそれぞれに設定された前記ラベルベクトルを用いて、ニューラルネットワークを含む学習モデルに対する学習を行わせる学習部と
を有する学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習プログラム、学習方法および学習装置に関する。
【背景技術】
【０００２】
従来から、ラベル付きデータを用いた教師あり学習が知られている。教師あり学習では、ラベル１であればその他のラベルではないなどのように、ラベルの付け方が排他的である。しかし、一般的に排他的にラベルが付けられない条件も存在する。例えば、犬好きか猫好きかのラベルを付与するときに、両方好きな人も存在するから、ラベルの付け方を排他的なものとするために、いずれか一方だけにラベル付けを行うことは、学習対象のデータとしても好ましくない。
【０００３】
近年では、排他的にラベルが付けられない条件下でも、識別器やラベル変換を用いて、排他的にラベル付けを行う技術が知られている。例えば、ラベル１に該当するか否かの２値分類識別器、ラベル２に該当するか否かの２値分類識別器のように、Ｎ個のラベル各々に対して識別器を生成する手法が知られている。
【０００４】
また、ラベルごとの組合せを新たなラベルとする手法が知られている。図１１は、排他的ラベル変換を説明する図である。図１１に示すように、ラベル１、ラベル２、ラベル３のすべてに該当するデータには、新たなラベルａを付与し、ラベル１とラベル２に該当するがラベル３には該当しないデータには、新たなラベルｂを付与し、ラベル１とラベル３に該当するがラベル２には該当しないデータには、新たなラベルｃを付与する。このように、ラベルの組合せごとに新たなラベルを付与した学習データを生成する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−１６６９６２号公報
【特許文献２】特開２０１７−０１６４１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記技術では、ラベルを集約することによって、判別速度の劣化や学習結果の判別精度の劣化が発生し、学習精度が劣化する。例えば、識別器を生成する手法では、ラベル分の識別器が必要となるので、計算時間が増大し、識別時間も増大する。
【０００７】
また、新たなラベルを付与する手法では、もとのラベル数ｎに対して２のｎ乗のラベル数となるので、ラベル数が指数的に増加する。このため、学習に必要な学習データ数が膨大になり、学習時間も膨大になる。また、図１１に示すように、全データのうち各ラベルに該当するデータの比率と、各ラベルの比率とを等価として処理すると、間違った学習を助長することもあり、学習精度が劣化する。
【０００８】
一つの側面では、排他的なラベルが付与された学習データによる学習を実行することができる学習プログラム、学習方法および学習装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の案では、学習プログラムは、コンピュータに、学習対象のデータそれぞれに対して、１または複数のラベルを要素とするラベルベクトルを設定する処理を実行させる。学習プログラムは、コンピュータに、前記学習対象のデータと、前記学習対象のデータそれぞれに設定された前記ラベルベクトルを用いて、ニューラルネットワークを含む学習モデルに対する学習を行わせる処理を実行させる。
【発明の効果】
【００１０】
一実施形態によれば、排他的なラベルが付与された学習データによる学習を実行することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施例１にかかる学習装置の全体例を説明する図である。
【図２】図２は、実施例１にかかる学習装置の機能構成を示す機能ブロック図である。
【図３】図３は、学習データＤＢに記憶される情報の例を示す図である。
【図４】図４は、各ラベルの相関関係を示す図である。
【図５】図５は、ラベル設定の例を説明する図である。
【図６】図６は、ラベルベクトルの生成例を説明する図である。
【図７】図７は、ラベル設定の別例を説明する図である。
【図８】図８は、処理の流れを示すフローチャートである。
【図９】図９は、実験結果を説明する図である。
【図１０】図１０は、ハードウェア構成例を説明する図である。
【図１１】図１１は、排他的ラベル変換を説明する図である。
【発明を実施するための形態】
【００１２】
以下に、本願の開示する学習プログラム、学習方法および学習装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【実施例１】
【００１３】
［全体構成］
図１は、実施例１にかかる学習装置の全体例を説明する図である。図１に示すように、実施例１にかかる学習装置１０は、学習データのラベルに対してスコアを付与した後に、深層学習（ディープラーニング（ＤＬ）・Deep  Learning）などを用いた判別処理（学習処理）を実行して、学習データを正しく判別（分類）できるように、スコアを用いてニューラルネットワーク（ＮＮ：Neural  Network）などを学習する。その後、学習結果を適用した学習モデルを用いることで、判別対象データの正確な事象（ラベル）の推定を実現する。なお、学習データには、画像、動画、文書、グラフなど様々なデータを採用することができる。
【００１４】
例えば、学習装置１０は、ＮＮを含む学習モデルに対する学習を行わせるコンピュータ装置であり、学習対象のデータと、学習対象のデータである学習データそれぞれに付された１または複数のラベルとを用いて、ＮＮを含む学習モデルに対する学習を行わせる。
【００１５】
一般的に、ＮＮを含む学習モデルの学習に各データに対して決定するラベルは、行列として保持する。しかし、従来から使用されていたＳＶＭ（Support  Vector  Machine）などのアルゴリズムが、ラベルを一つに決める必要があったこと、また、各データに対するラベルベクトルに対して正規分布を想定しているため、学習アルゴリズムも正規分布を仮定して作られており、正規分布とはならない複数ラベルを設定した学習は実行されてこなかった。
【００１６】
このようなことから、近年では、ラベル１でもありラベル２でもあるというものを学習できるようになることが求められている。そこで、実施例１にかかる学習装置１０は、各データに各ラベルン確率値を加えて拡張型ラベルベクトルを組にし、そのデータを深層学習の出力目標値とする。すなわち、学習装置１０は、各データにラベルごとの条件としてラベルベクトルを付与し、最適化の評価関数を全ラベルの条件が一致しているかの尺度とするので、排他的なラベルでも一括に学習することができる。なお、本実施例では、ラベル１に該当する場合に「ラベル１が〇（丸）」、ラベル１に該当しない場合に「ラベル１が×（バツ）」などと記載する場合がある。
【００１７】
［機能構成］
図２は、実施例１にかかる学習装置１０の機能構成を示す機能ブロック図である。図２に示すように、学習装置１０は、通信部１１と記憶部１２と制御部２０を有する。
【００１８】
通信部１１は、他の装置との通信を制御する処理部であり、例えば通信インタフェースである。例えば、通信部１１は、管理者の端末から、処理開始指示を受信する。また、通信部１１は、管理者の端末等から、学習対象であるデータ（入力データ）を受信して入力データＤＢ１３に格納する。
【００１９】
記憶部１２は、プログラムやデータを記憶する記憶装置の一例であり、例えばメモリやハードディスクなどである。この記憶部１２は、入力データＤＢ１３、学習データＤＢ１４、学習結果ＤＢ１５を記憶する。
【００２０】
入力データＤＢ１３は、学習対象となる入力データを記憶するデータベースである。ここで記憶されるデータは、人手等によってラベルが設定されていてもよく、未設定あってもよい。なお、データは、管理者等によって格納することもでき、通信部１１が受信して記憶することもできる。
【００２１】
学習データＤＢ１４は、学習対象の教師ありデータを記憶するデータベースである。具体的には、学習データＤＢ１４は、後述する制御部２０によって、入力データＤＢ１３に記憶される入力データと当該入力データに設定されたラベルとを対応付けて記憶する。図３は、学習データＤＢ１４に記憶される情報の例を示す図である。図３に示すように、学習データＤＢ１４は、「データＩＤ、ラベル１、ラベル２、ラベル３」を対応付けて記憶する。各ラベルは、排他的なラベルであり、例えばラベル１＝猫好き、ラベル２＝犬好き、ラベル３＝鳥好きなどである。つまり、各ラベルが同時に成立する場合がある。
【００２２】
図３の例では、データＩＤが「１」のデータには、「ラベル１、ラベル２、ラベル３」として「１．０、０、１．０」のラベルベクトルが設定されていることを示す。つまり、データ１には、ラベル１とラベル３が設定されている。なお、ここで示したラベルベクトルの次元数や数値は、一例であり、任意に設定変更することができる。
【００２３】
学習結果ＤＢ１５は、学習結果を記憶するデータベースである。例えば、学習結果ＤＢ１５は、制御部２０による学習データの判別結果（分類結果）、機械学習やディープラーニングによって学習された各種パラメータを記憶する。
【００２４】
制御部２０は、学習装置１０全体の処理を司る処理部であり、例えばプロセッサなどである。この制御部２０は、設定部２１と学習部２２を有する。なお、設定部２１と学習部２２は、プロセッサなどが有する電子回路やプロセッサなどが実行するプロセスの一例である。
【００２５】
設定部２１は、各入力データにラベルベクトルを付して学習データを生成し、学習データＤＢ１４に格納する処理部である。具体的には、設定部２１は、各ラベルの相関を判定する。そして、設定部２１は、相関がない場合には、各ラベルが独立していると仮定して、各ラベルを設定したラベルベクトルを設定する。一方、設定部２１は、相関がある場合には、各ラベルの分布を最適化し、最適化した分布に基づく値を各ラベルに設定したラベルベクトルを設定する。
【００２６】
ここで、各種に手法について具体的に説明する。なお、各ラベルについて十分なデータ数がそろっているものとする。まず、設定部２１は、相関性の判断を行う。具体的には、設定部２１は、全体でラベル１の〇×（該当／非該当）の比率を算出する。例えば、設定部２１は、全データのうち、ラベル１に該当するデータとラベル１に該当しないデータの比率を算出する。
【００２７】
次に、設定部２１は、ラベル２が〇（該当）の中でラベル１の〇×（該当／非該当）の比率を算出する。例えば、設定部２１は、ラベル２に該当するデータのうち、ラベル１にも該当するデータとラベル１には該当しないデータとの比率を算出する。そして、設定部２１は、上記比率の差が閾値未満であれば、ラベル１とラベル２は独立すると判定する。一方、設定部２１は、上記比率の差が閾値以上であれば、ラベル１とラベル２は相関関係にあると判定する。
【００２８】
例えば、ラベル間に相関がある場合とは、ラベル１が２０歳以上か未満か、ラベル２が３０歳以上か未満かのように、ラベル１からラベル２へ変化していくことがあり途中に両方のラベルになる場合などが該当する。このような場合に、単純に両方を１とすると学習が難しい場合がある。例えば、ネットワーク構造が単純（レイヤーやユニット数が少ない）なＮＮを用いた場合、相関性のものは一方が上がるともう一方は下がるという学習モデルになる。一方で、ネットワーク構造が複雑（レイヤーやユニット数が多い）なＮＮを用いた場合、相関性のものも独自に判断するようになるが、学習に時間がかかり、膨大な学習データも必要になる。
【００２９】
ここで、相関関係の整理を行った結果を図４に示す。図４は、各ラベルの相関関係を示す図である。図４は、ラベル１からラベル６の相関関係を示している。図４の場合、ラベル１とラベル３とに相関があり、ラベル４とラベル５とラベル６に相関があり、ラベル２が独立している。この場合、設定部２１は、各データのラベル２について、他のラベルに関係なく、該当する場合は「１．０」を設定し、該当しない場合は「０．０」を設定する。
【００３０】
次に、相関がある各ラベルの値設定について説明する。ここでは、一例としてラベル１とラベル３の関係について説明する。図５は、ラベル設定の例を説明する図である。図５に示すように、設定部２１は、ラベル１に該当するデータの分布とラベル２に該当するデータの分布が図５の（ａ）に示す分布になると仮定する。次に、設定部２１は、図５の（ｂ）に示すように、各分布の最低確率を設定する。この最低確率は、ユーザが設定する確率の最低値であり、各分布の端がノイズのようなもとの判断できる発生確率が設定される。
【００３１】
続いて、設定部２１は、図５の（ｃ）に示す各面積の比率とデータの比率とが同じになるように分布を最適化する。ここで、「面積ａ：面積ｂ＝ラベル１に該当するデータの中でラベル３も該当するデータ：ラベル１に該当するデータの中でラベル３には該当しないデータ」である。また、「面積ｃ：面積ｄ＝ラベル３に該当するデータの中でラベル１も該当するデータ：ラベル３に該当するデータの中でラベル１には該当しないデータ」である。
【００３２】
その後、設定部２１は、最適化された分布をもとにラベルベクトルを生成する。図６は、ラベルベクトルの生成例を説明する図である。図６に示すように、設定部２１は、正規化後の分布から、ラベル１の最大値ｐ、ラベル１の最小値ｔ、ラベル３の最大値ｑ、ラベル３の最小値ｓ、交差値ｒを特定する。
【００３３】
そして、設定部２１は、ラベル１にもラベル２にも該当するデータに対して、ラベルベクトルの第１成分にｒ、ラベルベクトルの第２成分にｒを設定したラベルベクトル「ラベル１＝ｒ、ラベル２＝ｒ」を付与する。また、設定部２１は、ラベル１には該当するがラベル２には該当しないデータに対して、ラベルベクトルの第１成分にｐ、ラベルベクトルの第２成分にｓを設定したラベルベクトル「ラベル１＝ｐ、ラベル２＝ｓ」を付与する。また、設定部２１は、ラベル１には該当しないがラベル２には該当するデータに対して、ラベルベクトルの第１成分にｑ、ラベルベクトルの第２成分にｔを設定したラベルベクトル「ラベル１＝ｑ、ラベル２＝ｔ」を付与する。
【００３４】
なお、ここでは、２つのラベルに相関がある場合の例で説明したが、３つ以上のラベルに相関がある場合でも同様の手法でラベルベクトルを生成することができる。図７は、ラベル設定の別例を説明する図である。図７の（ａ）に示すように、設定部２１は、ラベル４とラベル５とラベル６とのそれぞれの間に相関がある場合、二次元の３つの分布関数の重なりの体積をデータの比率とみなして、上述した図５から図６の処理を実行する。また、図７の（ｂ）に示すように、設定部２１は、ラベル４とラベル５に相関があり、ラベルとラベル６に相関があり、ラベル４とラベル６には相関がない関係の場合、３つの分布関数で同様の比率を考えることで、上述した図５から図６の処理を実行することができる。
【００３５】
このようにして、設定部２１は、相関がある各ラベルに該当するデータの分布および発生確率に基づいた値を算出し、当該値を設定したラベルベクトルを生成して、各データにラベルベクトルを設定することができる。
【００３６】
図２に戻り、学習部２２は、学習データＤＢ１４に記憶される学習データを用いてＮＮを含む学習モデルの学習を実行し、学習結果を学習結果ＤＢ１５に格納する処理部である。図３の例では、学習部２２は、ＩＤ＝１のデータについてはラベルベクトル「ラベル１＝１．０、ラベル２＝０、ラベル３＝１．０」を入力として学習を実行する。
【００３７】
［処理の流れ］
次に、上述したラベルベクトルの設定処理について説明する。図８は、処理の流れを示すフローチャートである。
【００３８】
図８に示すように、設定部２１は、入力データが受信されて入力データＤＢ１３に格納されて、処理開始時の指示を受け付ける（Ｓ１０１：Ｙｅｓ）、設定対象となる各ラベルを読み込む（Ｓ１０２）。なお、設定対象のラベルは、ユーザの指定により特定することもでき、入力データにラベルが予め設定されている場合はそのラベルを読み込むことで特定できる。
【００３９】
続いて、設定部２１は、上述した手法により各ラベルの相関関係を判定し（Ｓ１０３）、相関のあるラベルを抽出する（Ｓ１０４）。続いて、設定部２１は、図５から図６で手法を用いて、ラベルの分布の生成および分布の最適化を実行する（Ｓ１０５）。そして、設定部２１は、図７で説明した手法を用いて、最低化された分布をもとにラベルベクトルの各成分を算出する（Ｓ１０６）。
【００４０】
そして、設定部２１は、Ｓ１０４からＳ１０６の処理が未処理である、相関のあるラベルが存在する場合（Ｓ１０７：Ｙｅｓ）、Ｓ１０４以降を繰り返す。一方、設定部２１は、Ｓ１０４からＳ１０６の処理が未処理である、相関のあるラベルが存在しない場合（Ｓ１０７：Ｎｏ）、入力データＤＢ１３から各入力データを読み込む（Ｓ１０８）。
【００４１】
そして、設定部２１は、各入力データにラベルベクトルを設定した学習データを生成して学習データＤＢ１４に格納する（Ｓ１０９）。具体的には、設定部２１は、相関がない独立したラベルについてはそのままの値（該当（１．０）または非該当（０．０））を設定し、相関があるラベルについてはＳ１０６で生成された値を設定した、ラベルベクトルを生成して各入力データに付与する。
【００４２】
その後、学習部２２は、学習データＤＢ１４から各学習データを読み込み（Ｓ１１０）、各学習データのラベルベクトルをもとに学習を実行する（Ｓ１１１）。
【００４３】
［効果］
上述したように、学習装置１０は、ＮＮを含む学習モデルの学習において、学習に用いることができるラベルが１つである、という制約に対応して、１つのデータに対するラベルを１つに集約することによる弊害を、データの分布に基づく確率などを設定したラベルベクトル（小数ラベル）により解決することができるので、ラベルを集約させることによる、判別速度の劣化や学習結果の判定精度劣化を抑制することができる。
【００４４】
ここで、実施例１による手法と従来手法との比較を行った実験結果を説明する。まず、実験の条件を説明する。ここでは、１０次元のベクトルデータを生成し、各次元で乱数（０〜１）を発生させて１２００データを生成する。また、各要素で０．５以上か否かでラベルを生成する。具体的には、第１成分が０．５以上でラベル１を付与する。また、第１、５、７の各成分が０．５以上でそれ以外の成分が０．５未満であれば、ラベル１、５、７が付与される。相関性判定を行うと全ラベルが独立と判定されるものとする。
【００４５】
ここでは、実施例１による手法（実施例１）、排他的なラベルの組合せに新たにラベルを付与して１０２４ラベルを生成する手法（排他的ラベル化）、ラベルごとに識別器を用意して１０個の識別器を用いる手法（複数識別器）で実験を行い、その結果を比較する。
【００４６】
図９は、実験結果を説明する図である。図９は、実施例１、排他ラベル化、複数識別機のそれぞれについて、全ラベル正答率、不正解ラベル最大数、各ラベル正答率、１データあたりの識別時間を示す。なお、全ラベル正答率は、全ラベルが正答した割合を示し、不正解ラベル最大数は、すべてのラベルが全て正解する全ラベル正解ではなかったデータのうち不正解だったラベルの最大数を示す。各ラベル正答率は、各ラベルについて正解した割合を合計したものであり、１データあたりの識別時間は、１つの識別対象のデータを処理するのにかかった時間である。
【００４７】
図９に示すように、排他ラベル化では、すべてのラベルが正答したデータはなく、すべてのラベルが誤答した場合もあり、正答率も低い。複数識別器と実施例１とでは、正答率に大きな差はない。しかし、複数識別器では、実施例１に比べて、約１０倍の処理時間がかかった。このように、実施例１では、正答率の向上と処理時間の短縮との両方を実現することができる。
【実施例２】
【００４８】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【００４９】
［設定］
上記実施例では、相関や分布に基づく値をラベルベクトルに設定する例を説明したが、これに限定されるものではない。例えば、排他的なラベルについては、ユーザ等が設定した値、過去の履歴等に基づく値、統計学的に算出した値などの静的な値を設定することもできる。
【００５０】
［集約］
例えば、学習装置１０は、相関があるラベルのうち、実施例１のような分布に基づいて各ラベルに値を設定するのではなく、いずれかのラベルだけを設定することもできる。図４の例で説明すると、学習装置１０は、相関があるラベル１とラベル３のうちのいずれかのラベル、他のラベルと相関がないラベル２、相関があるラベル４から６のうちのいずれかのラベルだけを設定したラベルベクトルをデータに付与して学習することもできる。実施例１では、学習装置１０は、ラベルベクトル「ラベル１，ラベル２，ラベル３，ラベル４，ラベル５」として「０．６，１．０，０．４，０．２，０．３，０．５」などのように設定するが、これに限らず、「１．０，１．０，０．０，０．０，１．０，０．０」などと設定することもできる。このようにすることで、ラベル集約にかかる処理時間の短縮を実現しつつ、学習データと集約ラベルの矛盾の発生を抑制し、学習精度の劣化を抑制できる。
【００５１】
また、全部のラベルを使用せずに、使用するラベルを予め整理することもできる。例えば、複数の類似するラベルを１つのラベルに集約することもできる。また、相関があるラベルをまとめて複数のグループを生成し、各グループから任意の１つのラベルを選択することもできる。このようにすることで、ラベル集約にかかる処理時間の短縮を実現しつつ、学習精度の劣化を抑制できる。
【００５２】
［システム］
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値などは、あくまで一例であり、任意に変更することができる。
【００５３】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００５４】
［ハードウェア］
図１０は、ハードウェア構成例を説明する図である。図１０に示すように、学習装置１０は、通信装置１０ａ、ＨＤＤ（Hard  Disk  Drive）１０ｂ、メモリ１０ｃ、プロセッサ１０ｄを有する。また、図１１に示した各部は、バス等で相互に接続される。
【００５５】
通信装置１０ａは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。ＨＤＤ１０ｂは、図２に示した機能を動作させるプログラムやＤＢを記憶する。
【００５６】
プロセッサ１０ｄは、図２に示した各処理部と同様の処理を実行するプログラムをＨＤＤ１０ｂ等から読み出してメモリ１０ｃに展開することで、図２等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、学習装置１０が有する各処理部と同様の機能を実行する。具体的には、プロセッサ１０ｄは、設定部２１、学習部２２等と同様の機能を有するプログラムをＨＤＤ１０ｂ等から読み出す。そして、プロセッサ１０ｄは、設定部２１、学習部２２等と同様の処理を実行するプロセスを実行する。
【００５７】
このように学習装置１０は、プログラムを読み出して実行することで学習方法を実行する情報処理装置として動作する。また、学習装置１０は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、学習装置１０によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【００５８】
このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯ（Magneto−Optical  disk）、ＤＶＤ（Digital  Versatile  Disc）などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
【符号の説明】
【００５９】
１０  学習装置
１１  通信部
１２  記憶部
１３  入力データＤＢ
１４  学習データＤＢ
１５  学習結果ＤＢ
２０  制御部
２１  設定部
２２  学習部
【図１】
2019159612.tif 000003
【図２】
2019159612.tif 000004
【図３】
2019159612.tif 000005
【図４】
2019159612.tif 000006
【図５】
2019159612.tif 000007
【図６】
2019159612.tif 000008
【図７】
2019159612.tif 000009
【図８】
2019159612.tif 000010
【図９】
2019159612.tif 000011
【図１０】
2019159612.tif 000012
【図１１】
2019159612.tif 000013