(57)【要約】      （修正有）【課題】信頼性の高い情報処理を行う情報処理装置、情報処理方法及び情報処理プログラムを提供する。【解決手段】情報処理装置１の自動設計部８は、耐故障要求取得部３と、教師データ定義部４と、故障パターン生成部５と、モデル更新部６と、実行制御部７とを備える。耐故障要求取得部３は、複数の入力データ及び複数の入力データに対する耐故障要求を取得する。教師データ定義部４は、複数の入力データのうち少なくとも一つの入力データを所定の情報処理モデルに入力したときの耐故障要求を満たす出力を教師データとして定義する。故障パターン生成部５は、複数の入力データと耐故障要求とに基づいて、複数の故障パターンを生成する。モデル更新部６は、複数の故障パターンと教師データとに基づいて、情報処理モデルを更新する。実行制御部７は、複数の入力データを、モデル更新部にて更新された情報処理モデルに与えて実行する。【選択図】図１
2019091367.tif 000002
【特許請求の範囲】
【請求項１】
複数の入力データを取得する入力データ取得部と、
前記複数の入力データに対する耐故障要求を取得する耐故障要求取得部と、
前記複数の入力データのうち少なくとも一つの入力データを所定の情報処理モデルに入力したときの耐故障要求を満たす出力を教師データとして定義する教師データ定義部と、
前記複数の入力データと前記耐故障要求とに基づいて、前記複数の入力データの少なくとも一つをそれぞれ含む複数の故障パターンを生成する故障パターン生成部と、
前記複数の故障パターンと前記教師データとに基づいて、前記耐故障要求を満たす前記入力データの故障に耐えられるように前記情報処理モデルを更新するモデル更新部と、
前記複数の入力データを、前記モデル更新部にて更新された前記情報処理モデルに与えて実行する実行制御部と、を備える情報処理装置。
【請求項２】
前記入力データ取得部は、複数のセンサのそれぞれが検出した複数の検出信号を前記複数の入力データとして取得し、
前記耐故障要求取得部は、前記複数のセンサのうち故障したセンサの数を示す重故障数の上限値を前記耐故障要求として取得し、
前記故障パターン生成部は、前記重故障数の上限値以下の故障数の範囲内で、故障したセンサの検出信号の組合せを示す前記故障パターンを生成し、
前記モデル更新部は、前記故障パターンに含まれない入力データを用いて耐故障要求を満たす情報処理を行うように前記情報処理モデルを更新する、請求項１に記載の情報処理装置。
【請求項３】
前記故障パターン生成部は、前記重故障数の上限値以下の故障数の範囲内で、前記複数の入力データの組合せの数が少ないものから順に、前記複数の入力データの組合せを探索して、前記複数の故障パターンを生成する、請求項２に記載の情報処理装置。
【請求項４】
前記故障パターン生成部は、前記重故障数の上限値以下の故障数の範囲内で、故障したセンサ以外のセンサの検出信号を入力信号とする新たな前記情報処理モデルに対応する故障パターンを生成する、請求項２に記載の情報処理装置。
【請求項５】
前記入力データ取得部は、複数のセンサのそれぞれが検出した複数の検出信号を前記複数の入力データとして取得し、
前記耐故障要求取得部は、前記複数のセンサの任意の組合せの故障確率を前記耐故障要求として取得し、
前記故障パターン生成部は、前記故障確率が所定の上限値以下の前記複数の故障パターンを生成する、請求項１に記載の情報処理装置。
【請求項６】
前記モデル更新部は、前記複数の故障パターンのそれぞれに対応する複数の前記情報処理モデルを更新し、
前記実行制御部は、
前記複数のセンサの少なくとも一つが故障したか否かを監視するモニタ部と、
故障したセンサ以外のセンサが検出した検出信号を入力データとして取得する故障除外入力データ取得部と、
前記故障除外入力データ取得部が取得した入力データを用いて前記複数の情報処理モデルを実行して得られた出力データを合成して出力する合成出力部と、を有する、請求項２乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
前記複数のセンサは、所定の対象物または対象サービスの需要予測に関連する前記複数の検出信号を出力する、請求項１乃至６のいずれか一項に記載の情報処理装置。
【請求項８】
複数の入力データを取得し、
前記複数の入力データに対する耐故障要求を取得し、
前記複数の入力データのうち少なくとも一つの入力データを所定の情報処理モデルに入力したときの耐故障要求を満たす出力を教師データとして定義し、
前記複数の入力データと前記耐故障要求とに基づいて、前記複数の入力データの少なくとも一つをそれぞれ含む複数の故障パターンを生成し、
前記複数の故障パターンと前記教師データとに基づいて、前記耐故障要求を満たす前記入力データの故障に耐えられるように前記情報処理モデルを更新し、
前記複数の入力データを、前記モデル更新部にて更新された前記情報処理モデルに与えて実行する、情報処理方法。
【請求項９】
コンピュータに、
複数の入力データを取得するステップと、
前記複数の入力データに対する耐故障要求を取得するステップと、
前記複数の入力データのうち少なくとも一つの入力データを所定の情報処理モデルに入力したときの耐故障要求を満たす出力を教師データとして定義するステップと、
前記複数の入力データと前記耐故障要求とに基づいて、前記複数の入力データの少なくとも一つをそれぞれ含む複数の故障パターンを生成するステップと、
前記複数の故障パターンと前記教師データとに基づいて、前記耐故障要求を満たす前記入力データの故障に耐えられるように前記情報処理モデルを更新するステップと、
前記複数の入力データを、前記モデル更新部にて更新された前記情報処理モデルに与えて実行するステップと、を実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【０００２】
自動運転車等では、多数のセンサ情報を用いて種々の情報処理を行っており、センサの数が多いほど、複雑かつ高度な情報処理を行うことができる一方で、センサが故障する確率も高くなり、耐故障性が低下してしまう。
【０００３】
センサを多重化して故障確率を抑制するハードウェア対策や、センサの故障を想定した処理を追加するソフトウェア対策などにより、センサの故障の影響を軽減して情報処理の信頼性を高める手法が提案されている。
【０００４】
しかしながら、上述したハードウェア対策を行うと、ハードウェア規模が大きくなって、小型化が困難になるとともに、製品コストも高くなる。また、上述したソフトウェア対策を行うには多大の時間と開発コストが必要になる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−１４６５６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明が解決しようとする課題は、センサの検出信号等の複数の入力データの一部が故障しても、信頼性の高い情報処理を行うことができる情報処理装置、情報処理方法及び情報処理プログラムを提供することである。
【課題を解決するための手段】
【０００７】
本実施形態によれば、複数の入力データを取得する入力データ取得部と、
前記複数の入力データに対する耐故障要求を取得する耐故障要求取得部と、
前記複数の入力データのうち少なくとも一つの入力データを所定の情報処理モデルに入力したときの耐故障要求を満たす出力を教師データとして定義する教師データ定義部と、
前記複数の入力データと前記耐故障要求とに基づいて、前記複数の入力データの少なくとも一つをそれぞれ含む複数の故障パターンを生成する故障パターン生成部と、
前記複数の故障パターンと前記教師データとに基づいて、前記耐故障要求を満たす前記入力データの故障に耐えられるように前記情報処理モデルを更新するモデル更新部と、
前記複数の入力データを、前記モデル更新部にて更新された前記情報処理モデルに与えて実行する実行制御部と、を備える情報処理装置が提供される。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態による情報処理装置の概略構成を示すブロック図。
【図２】実行制御部の内部構成の一例を示すブロック図。
【図３】図１の情報処理装置の処理手順の一例を示すフローチャート。
【図４】モデル集合の順次拡張法の処理手順を示すフローチャート。
【図５】モデル集合の順次拡張法の動作事例を示すフローチャート。
【図６】第２の実施形態による情報処理装置の概略構成を示すブロック図。
【図７】故障パターン生成部が生成する故障パターンの一例を示す図。
【図８】図６の情報処理装置の処理手順の一例を示すフローチャート。
【発明を実施するための形態】
【０００９】
以下、図面を参照して実施の形態について説明する。なお、本件明細書と添付図面においては、理解のしやすさと図示の便宜上、一部の構成部分を省略、変更または簡易化して説明および図示しているが、同様の機能を期待し得る程度の技術内容も、本実施の形態に含めて解釈することとする。
【００１０】
（第１の実施形態）
図１は第１の実施形態による情報処理装置１の概略構成を示すブロック図である。図１の情報処理装置１は、入力データ取得部２と、耐故障要求取得部３と、教師データ定義部４と、故障パターン生成部５と、モデル更新部６と、実行制御部７とを備えている。図１のうち、入力データ取得部２と、耐故障要求取得部３と、教師データ定義部４と、故障パターン生成部５と、モデル更新部６とは、自動設計部８を構成している。すなわち、図１の情報処理装置１は、大きく分けると、自動設計部８と実行制御部７とを備えている。
【００１１】
図１の情報処理装置１は、一つまたは複数のハードウェアで構成可能である。ここで、ハードウェアとは、半導体ＩＣでもよいし、回路基板上に複数の回路素子を実装した電子回路でもよい。あるいは、図１の情報処理装置１の機能を、コンピュータや制御回路がソフトウェアとして実行してもよい。
【００１２】
入力データ取得部２は、複数の入力データを取得する。より具体的な一例では、入力データ取得部２は、複数のセンサのそれぞれが検出した複数の検出信号を複数の入力データとして取得する。センサの種類は問わない。例えば、図１の情報処理装置１が何らかの対象物又は対象サービスの需要予測に関する情報処理を行う場合、複数のセンサのうち一部のセンサは、温度や湿度等の環境情報を検出してもよい。また、図１の情報処理装置１が自動運転用の情報処理を行う場合、複数のセンサのうち一部のセンサは、乗物の周囲を撮像する撮像センサであってもよい。なお、入力データ取得部２が取得する入力データは、必ずしもセンサの検出信号には限定されない。例えば、センサ以外の外部装置の出力データを入力データ取得部２が入力データとして取得してもよい。
【００１３】
耐故障要求取得部３は、入力データ取得部２が取得した複数の入力データに対する耐故障要求を取得する。より具体的な一例では、耐故障要求取得部３は、複数のセンサのうち故障したセンサの数を示す重故障数の上限値を耐故障要求として取得する。重故障数の上限値が１の場合は一重故障と呼ばれ、重故障数の上限値が２の場合は二重故障と呼ばれる。
【００１４】
教師データ定義部４は、複数の入力データのうち少なくとも一つの入力データを所定の情報処理モデルに入力したときの耐故障要求を満たす出力を教師データとして定義する。
【００１５】
故障パターン生成部５は、複数の入力データと耐故障要求とに基づいて、複数の入力データの少なくとも一つをそれぞれ含む複数の故障パターンを生成する。より具体的な一例では、故障パターン生成部５は、重故障数の上限値以下の故障数の範囲内で、故障したセンサの検出信号の組合せを示す故障パターンを生成する。
【００１６】
モデル更新部６は、複数の故障パターンと教師データとに基づいて、耐故障要求を満たす入力データの故障に耐えられるように情報処理モデルを更新する。
【００１７】
実行制御部７は、複数の入力データを、モデル更新部６にて更新された情報処理モデルに与えて実行する。図２は実行制御部７の内部構成の一例を示すブロック図である。図２の実行制御部７は、モニタ部１１と、故障除外入力データ取得部１２と、モデル実行部１３と、合成出力部１４とを有する。
【００１８】
モニタ部１１は、複数のセンサの少なくとも一つが故障したか否かを監視する。故障除外入力データ取得部１２は、故障したセンサ以外のセンサが検出した検出信号を入力データとして取得する。モデル実行部１３は、モデル更新部６で更新された複数の情報処理モデルに対して故障除外入力データ取得部１２が取得した入力データを入力して、情報処理モデルを実行する。合成出力部１４は、複数の情報処理モデルを実行して得られた出力データを合成して出力する。
【００１９】
図３は図１の情報処理装置１の処理手順の一例を示すフローチャートである。このフローチャートでは、複数のセンサからなるセンサ群の検出信号を入力データ取得部２が取得する例を示している。図３のステップＳ１〜Ｓ５は自動設計部８の処理であり、ステップＳ６〜Ｓ１０は実行制御部７の処理である。
【００２０】
まず、入力データ取得部２は、センサ群内の複数のセンサからの検出信号を複数の入力データとして取得する（ステップＳ１）。次に、耐故障要求取得部３は、耐故障要求Ｋを取得する（ステップＳ２）。耐故障要求Ｋは、図１の情報処理装置１の操作者がキーボード等により入力してもよいし、予め用意された選択画面からマウス等により選択してもよい。あるいは、耐故障要求Ｋの値を記憶する不図示の記憶装置から読み出してもよい。
【００２１】
次に、故障パターン生成部５は、複数の入力データと耐故障要求Ｋとに基づいて、複数の故障パターンＦＳを生成する（ステップＳ３）。次に、モデル更新部６は、複数の故障パターンＦＳと教師データ定義部４で定義された教師データとに基づいて、複数の故障パターンＦＳに対応する複数の情報処理モデルを更新する（ステップＳ４）。ここでは、一部のセンサが故障して有効な入力データが入力されない場合であっても、適切な情報処理結果が得られるように、教師データを用いて複数の情報処理モデルを訓練（更新）する。複数の情報処理モデルの更新が完了すると、更新済の複数の情報処理モデルが出力される（ステップＳ５）。
【００２２】
ステップＳ５の処理が終了すると、実行制御部７の処理に移行する。なお、実行制御部７の処理を行っている間にも継続してステップＳ１〜Ｓ５の自動設計部８の処理を行ってもよい。実行制御部７内のモニタ部１１は、センサ群に属する各センサが故障したか否かを監視する（ステップＳ６）。センサ群の監視は、連続的に行ってもよいし、断続的に行ってもよい。故障除外入力データ取得部１２は、故障のセンサ以外のセンサの検出信号を入力データとして取得する（ステップＳ７）。情報処理実行部は、ステップＳ７で取得した入力データを、ステップＳ５で出力された複数の情報処理モデルに入力して、各情報処理モデルを実行する（ステップＳ８）。続いて、合成出力部１４は、各情報処理モデルの出力データを合成して出力する（ステップＳ９）。次に、情報処理の実行を継続するか否かを判定し（ステップＳ１０）、実行を継続する場合にはステップＳ６に戻り、実行を停止する場合には処理を終了する。
【００２３】
次に、モデル更新部６の処理動作について詳細に説明する。機械学習で利用される入力データの全体集合をＸＳとする。情報処理モデルＭ1がセンサ等の情報源（説明変数）ｘ1，ｘ2を入力データとして利用することを以下の（１）式で表す。以下では、情報処理モデルを単にモデルと呼ぶこともある。
Ｍ1＝｛ｘ1，ｘ2｝⊆ＸＳ    …（１）
【００２４】
また、モデル更新部６が更新する全モデルを含むモデル集団をＭＳとすると、入力データＸＳは以下の（２）式、情報処理モデルＭiは（３）式、モデル集団ＭＳは（４）式で表される。
【００２５】
【数１】
2019091367.tif 000003
【００２６】
モデル集団ＭＳと情報処理モデルＭiの故障を表す関数Ｆはそれぞれ、以下の（５）式と（６）式で表される。
【数２】
2019091367.tif 000004
【００２７】
モデル集団ＭＳがどのような場合に故障するかは、故障を表す関数である論理式Ｆ(ＭＳ)を論理和標準型ＤＮＦに変換したときの各項を調べることで分析できる。例えば、モデル集団ＭＳ＝｛Ｍ1、Ｍ2｝が２つのモデルＭ1＝｛ｘ1，ｘ2｝とＭ2＝｛ｘ1，ｘ3｝を有する場合、故障パターンＦＳは、４通り（ｘ1，ｘ1ｘ2，ｘ1ｘ3，ｘ2ｘ3）となる。モデルＭ1、Ｍ2はいずれも１次の説明変数の項を含むため、一重故障に対する脆弱性を持つ。よって、モデル集団ＭＳの故障確率Ｙは、以下の（７）式で表される。
【数３】
2019091367.tif 000005
【００２８】
モデル更新部６が行うモデル集合ＭＳの更新手順は一通りとは限らない。以下では、更新手順として順次拡張法とその動作事例を説明する。
【００２９】
図４はモデル集合ＭＳの順次拡張法の処理手順を示すフローチャートである。まず、モデル集団ＭＳを初期モデルＭ1に初期化する（ステップＳ１１）。すなわち、ＭＳ＝｛Ｍ1｝とする。ここでは、必要な耐故障レベルＫを入力して、耐故障レベルＫを満たす初期モデルＭ1を生成する。
【００３０】
次に、モデル集団ＭＳの故障パターンＤＮＦ(ＭＳ)の中から最小項Ｆを選択する（ステップＳ１２）。最小項Ｆのサイズが耐故障要求Ｋより大きいか否かを判定し（ステップＳ１３）、｜Ｆ｜＞Ｋであれば、モデル集団ＭＳを出力して（ステップＳ１４）、図４の処理を終了する。ここで、ＸＳは説明変数の集合である。
【００３１】
｜Ｆ｜≦Ｋであれば、サイズがＸＳ以下で、かつ最小値Ｆ以外の説明変数の集合ＸＳ'を生成する（ステップＳ１５）。このとき、集合ＸＳ'の全ての変数を利用する必要はなく、所定の変数選択アルゴリズムを適用して変数を絞り込んだモデルＭ'を新たなモデルにしてもよい。次に、生成した集合ＸＳ'から新たなモデルＭ'を生成する（ステップＳ１６）。次に、生成した新たなモデルＭ'をモデル集団ＭＳに追加して、ステップＳ１２に戻る。
【００３２】
モデル集団ＭＳの順次拡張法では、初期モデルを出発点として、指定の重故障レベルを満たすまで、モデル集団を拡張していく。図４の処理手順で、計算処理量が指数オーダで増える処理は、モデル集団ＭＳから故障パターンＦＳを示す論理和標準形ＤＮＦ(ＭＳ)を計算する処理である。ＤＮＦ(ＭＳ)の計算の目的は、高々Ｋ以下の重故障への耐性を調べることである。この目的は、説明変数集合ＸＳからサイズＫ以下の部分集合を列挙して、各部分集合の変数に真値を割り振ったときに、モデル集団ＭＳが真値になるか否かを計算することで達せられる。変数サイズＮがＯ(１０)、耐故障レベルＫが１〜３程度であれば、単純な数値計算でも十分である。
【００３３】
図５はモデル集合ＭＳの順次拡張法の動作事例を示すフローチャートである。このフローチャートでは、パッチ拡張法の処理手順をわかりやすく説明するため、小規模な故障パターンＦＳを扱う例を示している。この例では、説明変数の集合ＸＳが３個の変数｛ｘ1，ｘ2，ｘ3｝を含み、耐故障数Ｋは２としている。また、集合ＸＳ中の各説明変数の優先度は、ｘ1＞ｘ2＞ｘ3であり、説明変数を選択する際には、優先度がより上位の説明変数が選択されるものとする。
【００３４】
まず、初期モデルＭ1＝｛ｘ1，ｘ2｝となり、モデル集合ＭＳ＝｛Ｍ1｝となる（ステップＳ２１）。このとき、ＤＮＦ(ＭＳ)＝ｘ1ｘ2であり、ｘ1かｘ2のどちらかの故障を示す一重故障に対する脆弱性を持つ。そこで、例えば、ｘ2への対策のために、モデルへの入力変数ＸＳ'を、ＸＳ'＝ＸＳ−｛ｘ2｝＝｛ｘ1，ｘ3｝に制限したモデルＭ２＝｛ｘ1｝を生成し、モデル集合ＭＳ＝｛Ｍ1，Ｍ2｝に拡張する（ステップＳ２２）。
【００３５】
このとき、ＤＮＦ(ＭＳ)＝ｘ1＋ｘ1ｘ2であることから、ｘ1への対策を行う必要があり、ステップＳ２２と同様に、モデルＭ3＝｛ｘ2｝を生成し、モデル集合ＭＳ＝｛Ｍ1，Ｍ2，Ｍ3｝に拡張する（ステップＳ２３）。
【００３６】
次には、モデルＭ4＝｛ｘ3｝を生成してモデル集団ＭＳを拡張していき、最終的に二重故障に耐えられる４つのモデルからなるモデル集団ＭＳ＝｛Ｍ1，Ｍ2，Ｍ3，Ｍ4｝＝｛｛ｘ1，ｘ2｝，｛ｘ1｝，｛ｘ2｝，｛ｘ3｝｝を生成する（ステップＳ２４）。
【００３７】
このように、第１の実施形態では、センサ検出信号等の入力データの故障を想定して、耐故障要求を満たすようにモデルを更新し、更新されたモデルに入力データを与えてモデルを実行させて所望の情報処理を行うため、例えば一部のセンサが故障して、一部の入力データが正しく入力されない場合であっても、安定して精度よく、各種の情報処理を行うことができる。
【００３８】
特に、第１の実施形態では、重故障数の上限値以下の故障数の範囲内で故障パターンＦＳを生成して、故障パターンＦＳに含まれない入力データを用いて信頼性の高い情報処理を行うようにモデルを更新するため、更新されたモデルを実行することで、一部の入力データに故障があっても、信頼性の高い情報処理を行うことができる。
【００３９】
（第２の実施形態）
第２の実施形態は、故障確率に上限を設定して、モデルを更新するものである。図６は第２の実施形態による情報処理装置１の概略構成を示すブロック図である。図６の情報処理装置１は、図１と同様に、入力データ取得部２と、耐故障要求取得部３と、教師データ定義部４と、故障パターン生成部５と、モデル更新部６と、実行制御部７とを備えているが、入力データ取得部２が取得する入力データの内容と、耐故障要求取得部３が取得する故障要求の内容と、故障パターン生成部５の処理内容とが図１とは異なっている。
【００４０】
入力データ取得部２が取得する入力データは、図１の入力データ取得部２が取得する入力データに加えて、各入力データの故障確率ＰＳを含んでいる。例えば、３つのセンサからの検出信号が入力データとして入力される場合、入力データ取得部２は、これら３つのセンサからの検出信号に対応する入力データＸＳ＝｛ｘ1，ｘ2，ｘ3｝を取得する他に、各センサの故障確率ＰＳ＝｛ｐ1，ｐ2，ｐ3｝を取得する。
【００４１】
故障パターン生成部５は、モデル集団の故障確率Ｐが所定値Ｐ０以下とするために対処すべき故障パターンＦＳを生成する。
【００４２】
図７は故障パターン生成部５が生成する故障パターンＦＳの一例を示す図である。図７では、３つのセンサの検出信号からなる入力データＸＳ｛ｘ1，ｘ2，ｘ3｝と、各センサの故障確率ＰＳ＝｛ｐ1，ｐ2，ｐ3｝が入力される例を示している。図７では、各センサの故障は独立して生じるものとし、情報処理装置１全体の故障確率Ｐ≦Ｐ０＝１／５００以下としている。
【００４３】
図７において、零重故障の確率は、(１−ｐ1)＊(１−ｐ2)＊(１−ｐ3)である。一重故障の確率は、ｐ1＝１／１０、ｐ2＝１／１０、ｐ3＝１／１００である。二重故障の確率は、ｐ1＊ｐ2＝１／１００、ｐ2＊ｐ3＝１／１０００、ｐ3＊ｐ1＝１／１０００である。三重故障の確率は、ｐ1＊ｐ2＊ｐ3＝１／１００００である。
【００４４】
情報処理装置１全体の故障確率Ｐとして、Ｐ≦Ｐ０＝１／５００以下が要求されたとする。故障パターンＦＳが重なる確率は小さいため、故障の発生確率が小さい順に整列して、単純な加算で見積もる。許容する故障パターンＦＳは、発生確率が小さい順に発生確率が１／５００以下である図７の故障パターン５〜７とする。対処すべき故障パターンＦＳは、許容パターン以外の０〜４、すなわちＦＳ＝｛｛ｘ1｝，｛ｘ2｝，｛ｘ3｝，｛ｘ1，ｘ2｝｝となる。モデル更新部６は、各故障ｆ∈ＦＳを除いた変数集合Ｘ'＝Ｘ−ｆを入力とするモデルを生成する。
【００４５】
図８は図６の情報処理装置１の処理手順の一例を示すフローチャートである。まず、入力データ取得部２は、センサ群内の複数のセンサからの検出信号と各センサの故障確率を入力データとして取得する（ステップＳ３１）。次に、耐故障要求取得部３は、故障確率の許容する上限値Ｐ０を耐故障要求として取得する（ステップＳ３２）。次に、故障パターン生成部５は、故障確率の上限値Ｐ０に基づいて故障パターンＦＳを生成する（ステップＳ３３）。次に、モデル更新部６は、複数の故障パターンＦＳと教師データ定義部４で定義された教師データとに基づいて、複数の故障パターンＦＳに対応する複数の情報処理モデルを更新する（ステップＳ３４）。複数の情報処理モデルの更新が完了すると、更新済の複数の情報処理モデルが出力される（ステップＳ３５）。ステップＳ３５の処理後に行われる実行制御部７の処理は、図３と同様である。
【００４６】
次に、第２の実施形態による情報処理装置１の処理動作をより詳細に説明する。複数の入力データの故障確率がそれぞれ大きく異なる場合、第１の実施形態のような重故障のレベルを指定するだけでは、必要な信頼性を確保できないことがある。例えば、説明変数ｘ1と説明変数ｘ2の故障確率が１／１０、説明変数ｘ3の故障確率が１／１０００のとき、説明変数ｘ3の故障確率は説明変数ｘ1とｘ2が同時に故障する確率よりは低い。このような場合、二重故障への対策が十分とは言えない。故障確率の上限値を耐故障要求として与えた上で、情報処理装置１の故障確率が上限値を超えないようにモデル集団ＭＳを決める必要がある。
【００４７】
モデル集団ＭＳが複数のモデルを含む場合、各モデルが独立に故障する場合は全体の故障確率が下がる。一般には、各モデルは独立ではなく、複数のモデルが同じ説明変数を入力データとして用いる場合があり、共通原因故障ＣＣＦが発生する。情報処理装置１の故障確率を考える際は、このようなＣＣＦを考慮する必要がある。
【００４８】
確率変数Ｘiは、入力データｘiが故障のときに１、正常のときに０となる。確率変数Ｘは０か１の値を取るため、べき乗しても値は変わらない。すなわち、確率変数Ｘは、代数的な簡略化規則Ｘ＊Ｘ＝Ｘを適用することができる。
【００４９】
故障確率ｐは、以下の（８）式で表される。
ｐ＝Ｅ[Ｘi]＝(１−ｐi)×０＋ｐi×１＝ｐi  …（８）
【００５０】
確率変数の演算は、論理積ＡＮＤが以下の（９）式で表され、論理和ＯＲが以下の（１０）式で表される。
ＡＮＤ(ｘ1，ｘ2)＝１−(１−ｘ1)＊(１−ｘ2)    …（９）
ＯＲ(ｘ1，ｘ2)＝ｘ1＊ｘ2    …（１０）
【００５１】
モデルＭ1(ｘ1，ｘ2)とＭ2(ｘ1，ｘ2)からなるモデル集団ＭＳ＝｛Ｍ1，Ｍ2｝を備えた情報処理装置１全体の故障を表す確率変数Ｙは、以下の（１１）式で表される。
Ｙ＝ＡＮＤ(ＯＲ(ｘ1，ｘ2)，ＯＲ(ｘ1，ｘ3))＝(ｘ1＋ｘ2−ｘ1＊ｘ2)＊(ｘ1＋ｘ3−ｘ1＊ｘ3)＝ｘ1＋ｘ1＊ｘ3＋ｘ2＊ｘ3−ｘ1＊ｘ2    …（１１）
【００５２】
よって、情報処理装置１全体の故障確率Ｅ[Ｙ]は、以下の（１２）式で表される。
Ｅ[Ｙ]＝ｐ1＋ｐ1＊ｐ3＋ｐ2＊ｐ3−ｐ1＊ｐ2    …（１２）
本実施形態では、情報処理装置全体の故障確率が上限値を超えないように、各故障パターンＦＳに含まれない入力データを用いて情報処理を行うべくモデルを更新する。故障確率を考慮に入れることで、故障パターンによって故障確率が大きく異なる場合であっても、情報処理モデルの信頼性を向上することができる。
【００５３】
このように、第２の実施形態では、故障確率の上限値を耐故障要求とし、故障確率の上限値に達しないように情報処理モデルを更新するため、信頼性の高いモデルを決定でき、入力データの一部が故障していても、情報処理の信頼性を向上できる。
【００５４】
（第３の実施形態）
第１及び第２の実施形態による情報処理装置１は、種々の対象物または対象サービスの需要予測に適用することができる。対象物や対象サービスの具体的な内容は問わないが、例えば、電力需要の予測や、店舗で販売する商品の販売予測等に適用できる。
【００５５】
例えば、電力需要を予測するための機械学習を用いた情報処理には、学習フェーズと予測フェーズがある。電力需要を予測するのに用いるセンサの故障は、学習フェーズと予測フェーズのどちらでも発生しうる。学習フェーズでは、ある予測モデルが学習時に参照する、あるセンサの検出信号を利用不可として故障を発生させる。次の予測フェーズでは、ある予測モデルが参照する、あるセンサの検出信号を利用不可として故障を発生させる。最終的に、故障しなかった予測モデルの出力を集めて重み平均を取ることで、情報処理装置１の予測値とする。
【００５６】
なお、機械学習機能に関する故障は、学習フェーズと予測フェーズのどちらでも発生しうる。現実的な状況を考えると、故障の原因は、センサ等の情報源だけとは限らず、情報源と予測モデルの組合せであることが多い。例えば、需要予測の場合、予測精度を長期的に維持するために、定期的な再学習機能を組み込むものとする。例えば、重回帰モデルの説明変数が強く相関する場合など、再学習に用いるデータの多様性が不足した場合、学習が異常終了することがある。また、予測に用いるデータを準備できても、一般化加法モデルのように平滑化スプラインを用いた回帰で学習時のデータ範囲を逸脱する場合など、学習時のデータ範囲を大きく超える場合は、予測が異常終了することがある。このように、機械学習の故障の原因は、利用データと学習モデルの相性に由来する場合が多い。
【００５７】
予測誤差のスコア値を参照した上で、故障していない正常な予測モデルの出力を誤差の少ない結果を重視するようにブレンドして予測モデルを合成する。
【００５８】
このように、複数の予測モデルを組み合わせることで、学習フェーズや予測フェーズで発生しうるセンサ等の情報源の故障に対処できる。予測モデルの集団は、予測モデルが参照する情報源の組を列挙することで特徴づけられる。
【００５９】
上述した実施形態で説明した情報処理装置１の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、情報処理装置１の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【００６０】
また、情報処理装置１の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【００６１】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６２】
１  情報処理装置、２  入力データ取得部、３  耐故障要求取得部、４  教師データ定義部、５  故障パターン生成部、６  モデル更新部、７  実行制御部、８  自動設計部、１１  モニタ部、１２  故障除外入力データ取得部、１３  モデル実行部、１４  合成出力部、
【図１】
2019091367.tif 000006
【図２】
2019091367.tif 000007
【図３】
2019091367.tif 000008
【図４】
2019091367.tif 000009
【図５】
2019091367.tif 000010
【図６】
2019091367.tif 000011
【図７】
2019091367.tif 000012
【図８】
2019091367.tif 000013