(57)【要約】【課題】学習器のバージョンアップに関わりなく、従前の出力との同一性を確保する。【解決手段】複数の学習器２ａ〜２ｃは、予め調整された内部パラメータを含む所定の関数に基づいて、ｍ（ｍ≧２の自然数）次元の要素よりなる入力データを入力として、ｎ（ｎ＜ｍ）次元の要素よりなる出力データを出力する。これらの学習器２ａ〜２ｃは、時系列的な順序で追加され、それぞれの関数または内部パラメータの値が互いに異なる。実績データベース６は、過去の実績として採用された入力データを含む実績データのそれぞれを、この実績データの処理を行った一の学習器（学習器２ａ〜２ｃのいずれか）と対応付けて記憶する。選択部３は、実績データベース６の記憶内容を参照して、今回の処理対象となる入力データの出力として、複数の学習器２ａ〜２ｃの出力データのいずれかを選択的に出力する。【選択図】図１
2018163623.tif 000002
【特許請求の範囲】
【請求項１】
多重型学習システムにおいて、
予め調整された内部パラメータを含む所定の関数に基づいて、ｍ（ｍ≧２の自然数）次元の要素よりなる入力データを共通の入力として、ｎ（ｎ＜ｍ）次元の要素よりなる出力データをそれぞれ出力すると共に、時系列的な順序で追加され、前記関数または前記内部パラメータの値が互いに異なる複数の学習器と、
過去に処理された実績がある入力データと、当該処理を行った一の学習器とを対応付けた実績データを記憶する実績記憶部と、
前記実績記憶部に記憶された実績データに基づいて、今回の処理対象となる入力データの出力として、前記複数の学習器の出力データのいずれかを選択する選択部と
を有することを特徴とする多重型学習システム。
【請求項２】
前記選択部は、今回の処理対象となる入力データが前記実績記憶部に実績データとして記憶されている場合、当該入力データの出力として、前記実績記憶部に記憶された前記一の学習器である第１の学習器の出力データを選択することを特徴とする請求項１に記載された多重型学習システム。
【請求項３】
前記選択部は、今回の処理対象となる入力データが前記実績記憶部に実績データとして記憶されていない場合、当該入力データの出力として、前記複数の学習器のうち、最も新しく追加された第２の学習器の出力データを選択することを特徴とする請求項２に記載された多重型学習システム。
【請求項４】
前記実績記憶部は、前記実績データとして、過去に処理された実績がある入力データに対応した出力データを含み、
前記第２の学習器は、前記第１の学習器よりも多数の前記実績データを用いた学習によって構築されることを特徴とする請求項３に記載された多重型学習システム。
【請求項５】
前記選択部によって出力データが選択される毎に、前記実績記憶部に新たな実績データを追加する実績更新部をさらに有することを特徴とする請求項１から４のいずれかに記載された多重型学習システム。
【請求項６】
前記実績更新部は、今回の処理対象となる入力データが前記実績記憶部に実績データとして記憶されており、かつ、当該入力データの出力として、前記実績記憶部に記憶された前記一の学習器の出力データと、前記複数の学習器のうち、最も新しく追加された最新の学習器の出力データとが一致する場合、当該実績データに対応付ける学習器を前記最新の学習器に集約することを特徴とする請求項５に記載された多重型学習システム。
【請求項７】
多重型学習プログラムにおいて、
予め調整された内部パラメータを含む所定の関数に基づいて、ｍ（ｍ≧２の自然数）次元の要素よりなる入力データを共通の入力として、ｎ（ｎ＜ｍ）次元の要素よりなる出力データをそれぞれ出力すると共に、時系列的な順序で追加され、前記関数または前記内部パラメータの値が互いに異なる複数の学習器を構築する第１のステップと、
過去に処理された実績がある入力データと、当該処理を行った一の学習器とを対応付けた実績データを実績記憶部に記憶する第２のステップと、
前記実績記憶部に記憶された実績データに基づいて、今回の処理対象となる入力データの出力として、前記複数の学習器の出力データのいずれかを選択する第３のステップと
を有する処理をコンピュータに実行させることを特徴とする多重型学習プログラム。
【請求項８】
前記第３のステップは、今回の処理対象となる入力データが前記実績記憶部に実績データとして記憶されている場合、当該入力データの出力として、前記実績記憶部に記憶された前記一の学習器である第１の学習器の出力データを選択するステップを含むことを特徴とする請求項７に記載された多重型学習プログラム。
【請求項９】
前記第３のステップは、今回の処理対象となる入力データが前記実績記憶部に実績データとして記憶されていない場合、当該入力データの出力として、前記複数の学習器のうち、最も新しく追加された第２の学習器の出力データを選択するステップを含むことを特徴とする請求項８に記載された多重型学習プログラム。
【請求項１０】
前記実績記憶部は、前記実績データとして、過去に処理された実績がある入力データに対応した出力データを含み、
前記第２の学習器は、前記第１の学習器よりも多数の前記実績データを用いた学習によって構築されることを特徴とする請求項９に記載された多重型学習プログラム。
【請求項１１】
前記第３のステップによって出力データが選択される毎に、前記実績記憶部に新たな実績データを追加する第４のステップをさらに有することを特徴とする請求項７から１０のいずれかに記載された多重型学習プログラム。
【請求項１２】
前記第４のステップは、今回の処理対象となる入力データが前記実績記憶部に実績データとして記憶されており、かつ、当該入力データの出力として、前記実績記憶部に記憶された前記一の学習器の出力データと、前記複数の学習器のうち、最も新しく追加された最新の学習器の出力データとが一致する場合、当該実績データに対応付ける学習器を前記最新の学習器に集約するステップを含むことを特徴とする請求項１１に記載された多重型学習プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多重型学習システムおよび多重型学習プログラムに係り、特に、学習器のバージョンアップ対応に関する。
【背景技術】
【０００２】
従来、複数の学習器を備えた処理システムが知られている。例えば、特許文献１には、与えられたタスクを達成するための行動方策を学習する並列学習装置が開示されている。具体的には、並列に設けられた複数の学習器は、センサ部によって検出された外界の状態に基づいて同時に学習した学習結果から、行動方策を個別に決定する。確率的選択器は、それぞれの学習器によって決定された複数の行動方策の中から、学習器毎の学習性能に基づいて、いずれかの行動方策を選択する。アクチュエータ部は、選択された行動方策に従って、行動を実行する。これにより、選択された学習器が決定した行動方策により得られた経験から、タスクを達成するための行動方策が全ての学習器で同時に学習される。その結果、複数の学習器の学習効率が高まり、タスクに適した構造を獲得するまでの学習時間の短縮を図ることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−０７８５１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、学習器を備えた各種の処理システムでは、過去の処理実績の蓄積（サンプル数）が増加したことに伴い、これを用いた学習によって学習器を再構築し、従前の学習器を再構築されたものに置き換えることがある。このようなバージョンアップを行うことで、処理実績をより忠実に反映して、全体的な出力精度の向上が期待できる。しかしながら、バージョンアップ後の出力がバージョンアップ前の出力を包含することは保証されず、バージョンアップ前では正解とされたものが、バージョンアップ後では不正解とされる可能性がある。このような出力の不整合は、バージョンアップに際して、バージョンアップ前とは異なる関数（別のアルゴリズム）を新たに採用した場合においても生じ得る。
【０００５】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、学習器のバージョンアップに関わりなく、従前の出力との同一性を確保することである。
【課題を解決するための手段】
【０００６】
第１の発明は、複数の学習器と、実績記憶部と、選択部とを有する多重型学習システムを提供する。複数の学習器は、予め調整された内部パラメータを含む所定の関数に基づいて、ｍ（ｍ≧２の自然数）次元の要素よりなる入力データを共通の入力として、ｎ（ｎ＜ｍ）次元の要素よりなる出力データをそれぞれ出力する。また、これらの学習器は、時系列的な順序で追加され、関数または内部パラメータの値が互いに異なる。実績記憶部は、過去に処理された実績がある入力データと、この処理を行った一の学習器とを対応付けた実績データを記憶する。選択部は、実績記憶部に記憶された実績データに基づいて、今回の処理対象となる入力データの出力として、複数の学習器の出力データのいずれかを選択する。
【０００７】
ここで、第１の発明において、上記選択部は、今回の処理対象となる入力データが実績記憶部に実績データとして記憶されている場合、この入力データの出力として、実績記憶部に記憶された一の学習器である第１の学習器の出力データを選択することが好ましい。この場合、上記選択部は、今回の処理対象となる入力データが実績記憶部に実績データとして記憶されていない場合、この入力データの出力として、複数の学習器のうち、最も新しく追加された第２の学習器の出力データを選択してもよい。また、上記実績記憶部は、実績データとして、過去に処理された実績がある入力データに対応した出力データを含み、上記第２の学習器は、第１の学習器よりも多数の実績データを用いた学習によって構築されることが好ましい。
【０００８】
第１の発明において、選択部によって出力データが選択される毎に、実績記憶部に新たな実績データを追加する実績更新部をさらに設けてもよい。この場合、上記実績更新部は、今回の処理対象となる入力データが実績記憶部に実績データとして記憶されており、かつ、この入力データの出力として、実績記憶部に記憶された一の学習器の出力データと、複数の学習器のうち、最も新しく追加された最新の学習器の出力データとが一致する場合、この実績データに対応付ける学習器を最新の学習器に集約することが好ましい。
【０００９】
第２の発明は、以下の第１から第３のステップを有する処理をコンピュータに実行させる多重型学習プログラムを提供する。第１のステップでは、予め調整された内部パラメータを含む所定の関数に基づいて、ｍ（ｍ≧２の自然数）次元の要素よりなる入力データを共通の入力として、ｎ（ｎ＜ｍ）次元の要素よりなる出力データをそれぞれ出力すると共に、時系列的な順序で追加され、関数または内部パラメータの値が互いに異なる複数の学習器を構築する。第２のステップでは、過去に処理された実績がある入力データと、この処理を行った一の学習器とを対応付けた実績データを実績記憶部に記憶する。第３のステップでは、実績記憶部に記憶された実績データに基づいて、今回の処理対象となる入力データの出力として、複数の学習器の出力データのいずれかを選択する。
【００１０】
ここで、第２の発明において、上記第３のステップは、今回の処理対象となる入力データが実績記憶部に実績データとして記憶されている場合、この入力データの出力として、実績記憶部に記憶された一の学習器である第１の学習器の出力データを選択するステップを含むことが好ましい。この場合、上記第３のステップは、今回の処理対象となる入力データが実績記憶部に実績データとして記憶されていない場合、この入力データの出力として、複数の学習器のうち、最も新しく追加された第２の学習器の出力データを選択するステップを含んでいてもよい。また、上記実績記憶部は、実績データとして、過去に処理された実績がある入力データに対応した出力データを含み、上記第２の学習器は、第１の学習器よりも多数の実績データを用いた学習によって構築されることが好ましい。
【００１１】
第２の発明において、第３のステップによって出力データが選択される毎に、実績記憶部に新たな実績データを追加する第４のステップをさらに設けてもよい。この場合、上記第４のステップは、今回の処理対象となる入力データが実績記憶部に実績データとして記憶されており、かつ、この入力データの出力として、実績記憶部に記憶された一の学習器の出力データと、複数の学習器のうち、最も新しく追加された最新の学習器の出力データとが一致する場合、この実績データに対応付ける学習器を最新の学習器に集約することが好ましい。
【発明の効果】
【００１２】
本発明によれば、時系列的な順序で追加された複数の学習器を用いて学習器を多重化し、過去に処理された実績がある入力データについては、この入力データの処理を行った学習器と対応付けた上で、実績データとして実績記憶部に記憶しておく。そして、今回の処理対象となる入力データの出力としては、実績記憶部に記憶された実績データに基づいて、複数の学習器の出力データのいずれかが選択される。これにより、過去の実績と関連する入力データが今回の処理対象として入力された場合、過去の実績と同じ出力データが出力されるので、学習器をバージョンアップしても、従前の出力との同一性を確保できる。
【図面の簡単な説明】
【００１３】
【図１】多重型学習システムのブロック図
【図２】実績データベースの構成図
【図３】バージョンアップ前における本学習システムの説明図
【図４】１回目のバージョンアップ後における本学習システムの説明図
【図５】１回目のバージョン後の学習器への実績データの集約を示す図
【図６】２回目のバージョンアップ後における本学習システムの説明図
【図７】２回目のバージョン後の学習器への実績データの集約を示す図
【図８】変形例に係る多重型学習システムのブロック図
【発明を実施するための形態】
【００１４】
図１は、本実施形態に係る多重型学習システムのブロック図である。多重型学習システム１は、同類の学習器を併存・重複させることによって一定の冗長性を有しており、画像認識、音声認識、自然言語処理、電子商取引とった様々な用途で使用可能である。この学習システム１は、特定の意味をなす入力データに対して、予測、分類、推論といった特定の目的に合致した出力データを出力する。入力データは、機械学習手法で取り扱うことができるように、特定の対象物や事象を特徴化・抽象化した構造データであって、ｍ（ｍ≧２の自然数）次元の要素を有する。例えば、入力が物体を三次元形状の場合、入力データとしては、ＳＨＯＴ（Signature of Histograms of OrienTations）、ＰＦＨ（Point Feature Histograms）、ＰＰＦ（Point Pair Feature）などが挙げられる。また、出力データは、用途に応じた有意なデータであって、入力データの次元数ｎよりも小さいｍ次元の要素を有する。
【００１５】
多重型学習システム１は、学習部２と、選択部３と、実績更新部４と、学習処理部５と、実績データベース６とを主体に構成されている。このような学習システム１は、典型的には、コンピュータにインストールされた所定のコンピュータ・プログラムを実行することによって実現されるが、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field-Programmable Gate Array）などでハードウェア的に実現してもよい。
【００１６】
学習部２は、並列に設けられた複数の学習器２ａ〜２ｃによって構成されており、それぞれの学習器２ａ〜２ｃが備える関数の内部パラメータの値は、事前の学習によって予め調整されている。これらの学習器２ａ〜２ｃは、外部から供給された入力データを共通の入力として、出力データを個別に出力する。学習器２ａ〜２ｃは、これらが連係して一つの有意なデータを出力するのではなく、それぞれが、特定の目的に合致した有意なデータを単独かつ独立して出力する。その意味において、それぞれの学習器２ａ〜２ｃは基本的に「同類」である。
【００１７】
また、学習器２ａ〜２ｃは、自己が備える関数（アルゴリズム）、または、その関数の内部パラメータの値が互いに異なっている。前者の例としては、学習器２ａがニューラルネットワーク、学習器２ｂがサポートベクターマシン、学習器２ｃが自己組織化マップ（ＳＯＭ：Self-Organizing Map）といった如くである。ただし、学習器２ａ〜２ｃの関数は互いに相違している必要はなく、一部のみが相違していてもよいし、全てが同一であってもよい。また、後者の例としては、異なる教師データ群（教師データのサンプル数が時系列的に増加する場合を含む。）に基づいて、異なる学習タイミングで、学習器２ａ〜２ｃが独立して構築される形態が挙げられる。
【００１８】
上述したように「同類」の学習器２ａ〜２ｃを併存・重複させることによって、学習部２を多重化した場合、学習部２の構成上の冗長性は増すことになるが、かかる構成を敢えて採用する理由は、学習部２をバージョンアップしても、従前の出力との同一性を確保するためである。本実施形態では、複数の学習器２ａ〜２ｃとして、時系列的な順序で追加された形態（バージョンアップ）を想定しており、バージョンアップに従って、複数の学習器２ａ〜２ｃが併存する点に構成上の特徴がある。以下、学習器２ａから学習器２ｃに至る順で順次追加されたものとし、最も古いバージョンの学習器２ａを「Ｖｅｒ１」、中間バージョンの学習器２ｂを「Ｖｅｒ２」、最も新しいバージョンの学習器２ｃを「Ｖｅｒ３」でそれぞれ識別することとする。なお、学習部２が備える学習器の数は、最低限２つであればよく、バージョンアップの回数に応じて随時増加していく。
【００１９】
選択部３は、実績記憶部に相当する実績データベース６に記憶された実績データに基づいて、今回の処理対象となる入力データの出力として、複数の学習器２ａ〜２ｃの出力データのいずれかを選択する。本実施形態において、外部から供給された入力データは、学習部２の前段に設けられた選択部３によって、学習器２ａ〜２ｃのいずれかに振り分けられると共に、振り分けられた入力データに対して生成された一つの出力データが外部に出力される。
【００２０】
図２は、実績データベース６の構成図である。この実績データベース６は、学習システム１において過去に処理された実績を記憶・管理する。具体的には、実績データベース６は、実績毎に設けられた実績レコード群によって構成されている、一つの実績レコード（実績データ）には、過去に処理された実績がある「入力データ」と、この入力データに対応して出力された「出力データ」と、この入力データの処理を行った「学習器」とが対応付けて記述されている。同図の例は、識別子「Ｖｅｒ1」で識別される学習器２ａによって、入力データＩＮ1〜ＩＮ3等の入力に対して、出力データＯＵＴ1〜ＯＵＴ3等がそれぞれ出力された実績があること、識別子「Ｖｅｒ2」で識別される学習器２ｂによって、入力データＩＮi等の入力に対して、出力データＯＵＴi等が出力された実績があること、および、識別子「Ｖｅｒ3」で識別される学習器２ｃによって、入力データＩＮj等の入力に対して、出力データＯＵＴj等が出力された実績があることを示している。
【００２１】
選択部３は、実績データベース６に記憶された実績データに基づいて、今回の処理対象となる入力データの出力として、複数の学習器２ａ〜２ｃの出力データのいずれかを選択する。本実施形態では、複数の学習器２ａ〜２ｃのいずれかを選択し、選択されたもののみに入力データを供給することによって、出力データの選択が等価的かつ結果的に行われる。なお、このような選択を可能にするためには、実績データベース６で管理すべき情報としては、少なくとも「入力データ」と「学習器」とで足り、「出力データ」を管理する必要はない。「出力データ」を管理する理由は、もっぱら、実績データベース６の実績を用いた学習によって、学習部２の再構築を行うためである。
【００２２】
学習器２ａ〜２ｃ（の出力データ）のを選択は、今回の処理対象となる入力データと、実績データベースに記憶された実績データとを比較することによって行われる。具体的には、入力データと同一の実績データが存在する場合、この実績データによって指定された一の学習器（学習器２ａ〜２ｃのいずれか）が選択される。一方、入力データと同一の実績データが存在しない場合、複数の学習器２ａ〜２ｃのうち、最も新しく追加された学習器２ｃが選択される。なお、入力データと実績データとが同一の場合のみならず、両者が類似する場合も、類似する実績データによって指定された一の学習器を選択するようにしてもよい。例えば、入力データと実績データとの類似度を所定の基準や数式で評価して、類似度が所定のしきい値以上の場合、両者が類似すると判定される。
【００２３】
実績更新部４は、学習器２ａ〜２ｃのいずれかより出力データが選択的に出力される毎に、換言すれば、学習システム１による一つの出力毎に、実績データベース６に新たな実績データを追加して、実績データベース６を更新する。この更新は、学習システム１の出力をもって一律に行ってもよいが、例えば、出力データに対するユーザの承認を得ることといった如く、実績データベース６の更新に特定の条件を設けてもよい。
【００２４】
学習処理部５は、実績データベース６の実績を用いた学習によって、学習部２の再構築を行う。学習部２の再構築は、従前の学習器を新たな学習器に置き換えるのではなく、従前の学習器と、新たな学習器とを併存・重複させる形、すなわち、多重化することによって行われる。
【００２５】
つぎに、本学習システム１における学習部２のバージョンアップについて説明する。図３は、バージョンアップ前における本学習システム１の説明図である。同図の状態において、識別子「Ｖｅｒ１」で識別される学習器２ａは、唯一かつ最新のバージョンである。したがって、今回の処理対象となる入力データが実績データベース６に実績データとして記憶されているか否かに関わりなく、この入力データの出力として、識別子「Ｖｅｒ１」で識別される学習器２ａの出力データが一律に選択される。そして、入力データが実績データベース６に記憶されていない場合、そのような入力データ（ＩＮ1〜ＩＮ3等）の処理が行われる毎に、「学習器」のフィールドに識別子「Ｖｅｒ１」が記述された実績レコードが随時追加されていくことになる。
【００２６】
図４は、１回目のバージョンアップ後における本学習システム１の説明図である。バッチ処理にて行われるバージョンアップにより、当初の学習器２ａに新たなバージョンの学習器２ｂが追加され、学習部２として２つの学習器２ａ，２ｂが併存する形になる。新たな学習器２ｂは、１回目のバージョンアップの時点で、実績データベース６に記憶されている実績データを用いた教師あり学習によって、当初の学習器２ａとは関係なく初期状態から構築される。１回目のバージョンアップ時点で蓄積された実績（図３の状態よりも更に多数のサンプルを有する。）に基づき構築された学習器２ｂを追加することで、本学習システム１における全体的な出力精度の向上が期待できる。なお、新たな学習器２ｂは、従前の学習器２ａとは異なる関数（別のアルゴリズム）を採用してもよい。
【００２７】
２つの学習器２ａ，２ｂが併存している状態において、新たな学習器２ｂの出力が当初の学習器２ａの出力と整合するとは限らず、当初の学習器２ａでは正解とされたものが新たな学習器２ｂでは不正解とされる可能性がある。これは、学習のたびに収束する解が一定になるとは限らないという現象、すなわち、局所解に収束することに由来する。周知のとおり、学習器２ａ，２ｂの学習過程には幾つかのランダム性が含まれており、例えば、初期値が異なれば、学習が進む方向も異なり、最終的に収束する解（局所解）も異なってくる。その結果、学習器２ａ，２ｂが備える関数自体に変わりはなくても、関数の内部パラメータの値に差異が生じ、学習器２ａ，２ｂの間で出力の不整合が生じ得るのである。この点は、学習器２ａ，２ｂにおいて関数（アルゴリズム）が異なる場合も同様である。
【００２８】
そこで、従前の出力との同一性を確保すべく、今回の処理対象となる入力データが実績データベース６に実績データとして記憶されている場合、この実績データによって指定された学習器２ａ，２ｂのいずれかが選択される。具体的には、同図に示すように、入力データがＩＮ1〜ＩＮ3等の場合、これに対応する実績データが識別子「Ｖｅｒ１」なので、これによって識別される学習器２ａが選択される。これにより、過去の実績と同じ入力データ（ＩＮ1〜ＩＮ3等）については、学習器２ａが動作して、過去の実績と同じ出力データ（ＯＵＴ1〜ＯＵＴ3等）が出力されることになる。
【００２９】
一方、今回の処理対象となる入力データが実績データベース６に実績データとして記憶されていない場合、新しいバージョンを優先させるべく、最新の学習器２ｂを動作させる。そして、そのような入力データ（ＩＮi〜ＩＮi+2等）の処理が行われる毎に、「学習器」のフィールドに識別子「Ｖｅｒ２」が記述された実績レコードが随時追加されていく。同図の状態での稼働が更に進み、識別子「Ｖｅｒ２」と記述された実績データと同一の入力データが再度入力した場合には、実績データベース６の更新を行うことなく、識別子「Ｖｅｒ２」で識別される最新の学習器２ｂが動作する。
【００３０】
図５は、１回目のバージョンアップ後の学習器２ｂへの実績データの集約を示す図である。実績更新部４は、今回の処理対象となる入力データ（例えばＩＮ1）が実績データベース６に実績データとして記憶されている場合、この実績データによって指定された「学習器」（すなわち、識別子「Ｖｅｒ１」で識別される学習器２ａ）の出力データＯＵＴ1と、最も新しく追加された学習器２ｂの出力データとを比較する。そして、両者が一致する場合には、この実績データにおける「学習器」のフィールドに記述される識別子を「Ｖｅｒ１」から「Ｖｅｒ２」（すなわち、最新の学習器２ｂ）に更新する。このような更新が繰り返されることで、従前の出力との同一性を確保しつつ、実績データが最新の学習器２ｂに集約されていく。
【００３１】
図６は、２回目のバージョンアップ後における本学習システム１の説明図である。バッチ処理にて行われるバージョンアップにより、従前の学習器２ａ，２ｂに新たな学習器２ｃが追加され、学習部２として３つの学習器２ａ〜２ｃが併存する形になる。新たな学習器２ｃは、２回目のバージョンアップの時点で、実績データベース６に記憶されている実績データを用いた教師あり学習によって、従前の学習器２ａとは関係なく初期状態から構築される。２回目のバージョンアップ時点での実績（図４の状態よりも更に多数のサンプルを有する。）に基づき構築された学習器２ｃを追加することで、本学習システム１における全体的な出力精度の向上が期待できる。なお、新たな学習器２ｃは、従前の学習器２ａ，２ｂとは異なる関数（別のアルゴリズム）を採用してもよい。
【００３２】
今回の処理対象となる入力データが実績データベース６に実績データとして記憶されている場合、従前の出力との同一性を確保すべく、この実績データによって指定された学習器２ａ〜２ｃのいずれかが選択される。具体的には、同図に示すように、入力データがＩＮ1〜ＩＮ3等の場合、これに対応する実績データが識別子「Ｖｅｒ１」なので、これによって識別される学習器２ａが選択される。また、入力データがＩＮi等の場合、これに対応する実績データが識別子「Ｖｅｒ２」なので、これによって識別される学習器２ｂが選択される。これにより、過去の実績と同じ入力データ（ＩＮ1〜ＩＮ3，ＩＮi等）の入力については、学習器２ａ，２ｂのいずれかが動作して、過去の実績と同じ出力データ（ＯＵＴ1〜ＯＵＴ3，ＯＵＴi等）が出力されることになる。
【００３３】
一方、今回の処理対象となる入力データが実績データベース６に実績データとして記憶されていない場合、新たしいバージョンを優先させるべく、最新の学習器２ｃを動作させる。そして、そのような入力データ（ＩＮj等）の処理が行われる毎に、「学習器」のフィールドに識別子「Ｖｅｒ３」が記述された実績レコードが随時追加されていく。同図の状態での稼働が更に進み、識別子「Ｖｅｒ３」が記述された実績データと同一の入力データが再度入力した場合には、実績データベース６の更新を行うことなく、識別子「Ｖｅｒ３」で識別される最新の学習器２ｃが動作する。
【００３４】
図７は、２回目のバージョンアップ後の学習器２ｃへの実績データの集約を示す図である。実績更新部４は、今回の処理対象となる入力データ（例えばＩＮk）が実績データベース６に実績データとして記憶されている場合、この実績データによって指定された「学習器」（すなわち、識別子「Ｖｅｒ１」で識別される学習器２ａ、または、識別子「Ｖｅｒ２」の学習器２ｂ）の出力データＯＵＴkと、最も新しく追加された学習器２ｃの出力データとを比較する。そして、両者が一致する場合には、この実績データにおける「学習器」のフィールドに記述される識別子を「Ｖｅｒ１」（または「Ｖｅｒ２」）から「Ｖｅｒ３」（すなわち、最新の学習器２ｃ）に更新する。このような更新が繰り返されることで、従前の出力との同一性を確保しつつ、実績データが最新の学習器２ｃに集約される。
【００３５】
３回目以降のバージョンアップについても同様で、以後、バージョンアップを行う度に新たな学習器が追加され、学習部２が多重化していく。
【００３６】
図８は、変形例に係る多重型学習システム１のブロック図である。図１に示した構成との相違は、選択部３が学習部２の前段ではなく、その後段に設けられている点である。この場合、入力データは、並列に設けられた学習器２ａ〜２ｃに共通して入力され、それぞれの学習器２ａ〜２ｃから出力データが個別に出力される。選択部３は、実績データベース６に記憶された実績データに基づいて、いずれかの出力データを選択して外部に出力する。それ以外の点は、図１に示した構成と同様なので、同一の符号を付して、ここでの説明を省略する。なお、選択部３が学習部２の前後のどちらに設けようとも、選択部３によって、複数の学習器２ａ〜２ｃの出力データのいずれかが選択れるという点で変わりはない。
【００３７】
このように、本実施形態によれば、時系列的な順序で追加された同類の学習器２ａ〜２ｃを用いて学習部２を多重化すると共に、過去に処理された実績がある入力データについては、この入力データの処理を行った学習器と対応付けて、実績データとして実績データベース６に記憶しておく。そして、今回の処理対象となる入力データの出力としては、実績データベース６に記憶された実績データに基づいて、複数の学習器２ａ〜２ｃの出力データのいずれかが選択される。これにより、過去の実績と関連する入力データが今回の処理対象として入力された場合、過去の実績と同じ出力データが出力されるので、学習部２をバージョンアップしても、従前の出力との同一性を確保できる。特に、バージョンアップの際、従来とは異なる関数（アルゴリズム）を採用した場合であっても、従前の出力との同一性を損なうことがないので、バージョンアップを柔軟に行うことが可能になる。
【００３８】
また、本実施形態によれば、今回の処理対象となる入力データが実績データベース６に実績データとして記憶されており、かつ、この入力データの出力として、実績データベース６に記憶された一の学習器の出力データと、最も新しく追加された最新の学習器２ｃの出力データとが一致する場合、この実績データに対応付ける「学習器」を最新の学習器２ｃに更新する。これにより、従前の出力との同一性を確保しつつ、実績データベース６中の実績データが最新の学習器２ｃに集約される。これは、古くなった学習器２ａ，２ｂを最新の学習器２ｃに統合して、学習部２の構成が複雑化することを回避する上で有利である。
【００３９】
さらに、本実施形態によれば、今回の処理対象となる入力データが実績データベース６に実績データとして記憶されていない場合、この入力データの出力として、最も新しく追加された最新の学習器２ｃの出力データが選択される。これにより、従前の出力との同一性を確保しつつ、実績データベース６中の実績データが最新の学習器２ｃに集約されることを促進することができる。
【００４０】
なお、上述した実施形態では、今回の処理対象となる入力データが実績データベース６に実績データとして記憶されていない場合（実績の不存在時）、新しいバージョンが優先するように一の学習器を選択する例について説明した。しかしながら、新しいバージョンを優先する選択手法は、これに限定されるものではなく、様々なものが考えられる。例えば、ｋ個の学習器が併存する場合、ｋ個の学習器に同時に入力データを入力して、ｋ個の出力データのうち、同一であるものの多数決を取る。そして、数が最も多い出力データを最終的な出力とする。この場合、実績データにおける「学習器」のフィールドには、多数を占めるグループのうち、最も新しい学習器の識別子が記述される。
【符号の説明】
【００４１】
１  多重型学習システム
２  学習部
２ａ〜２ｃ  学習器
３  選択部
４  実績更新部
５  学習処理部
６  実績データベース
【図１】
2018163623.tif 000003
【図２】
2018163623.tif 000004
【図３】
2018163623.tif 000005
【図４】
2018163623.tif 000006
【図５】
2018163623.tif 000007
【図６】
2018163623.tif 000008
【図７】
2018163623.tif 000009
【図８】
2018163623.tif 000010