(57)【要約】【課題】人工知能によって制御される対象の動作または状態が望ましくない結果をもたらす可能性のある動作または状態であるか否かを判定する。【解決手段】本発明の一態様によれば、判定装置は、取得部と、判定部とを含む。取得部は、学習用の人工知能に学習用の対象の動作または状態を制御させることを含む第１の機械学習を通じて得られた第１の学習結果が設定された第１の人工知能によって制御されている対象の動作または状態の観測結果を表す入力データを取得する。判定部は、入力データが、第１の機械学習が実行された期間における学習用の対象の動作または状態に基づいて定められる要注意動作または要注意状態を表すか否かを判定する。【選択図】      図１
2018151959.tif 000002
【特許請求の範囲】
【請求項１】
学習用の人工知能に学習用の対象の動作または状態を制御させることを含む第１の機械学習を通じて得られた第１の学習結果が設定された第１の人工知能によって制御されている対象の動作または状態の観測結果を表す入力データを取得する取得部と、
前記入力データが、前記第１の機械学習が実行された期間における前記学習用の対象の動作または状態に基づいて定められる要注意動作または要注意状態を表すか否かを判定する判定部と
を具備する、判定装置。
【請求項２】
前記判定部は、前記第１の機械学習が実行された期間における前記学習用の対象の動作または状態の観測結果を表す観測データを学習データとして用いる第２の機械学習を通じて得られた第２の学習結果を利用して、前記入力データが前記要注意動作または前記要注意状態を表すか否かを判定する、請求項１に記載の判定装置。
【請求項３】
前記判定部は、前記第２の学習結果が設定された第２の人工知能に、前記入力データを与え、前記入力データが前記要注意動作または前記要注意状態を表すか否かを判定させる、請求項２に記載の判定装置。
【請求項４】
前記入力データが前記要注意動作または前記要注意状態を表す場合に警報を発する警報部をさらに具備する、請求項１乃至請求項３のいずれか１項に記載の判定装置。
【請求項５】
前記入力データが前記要注意動作または前記要注意状態を表す場合に前記対象の動作または状態への制御に介入する介入部をさらに具備する、請求項４に記載の判定装置。
【請求項６】
コンピュータを、
学習用の人工知能に学習用の対象の動作または状態を制御させることを含む第１の機械学習を通じて得られた第１の学習結果が設定された第１の人工知能によって制御されている対象の動作または状態の観測結果を表す入力データを取得する手段、
前記入力データが、前記第１の機械学習が実行された期間における前記学習用の対象の動作または状態に基づいて定められる要注意動作または要注意状態を表すか否かを判定する手段
として機能させるための判定プログラム。
【請求項７】
第１の学習用の人工知能に学習用の対象の動作または状態を制御させることを含む第１の機械学習が実行された期間における前記学習用の対象の動作または状態の観測結果を表す第１の観測データに基づいて作成された第１の学習データを取得することと、
入力データが前記第１の学習データに基づいて定められる要注意動作または要注意状態を表すか否かを第２の学習用の人工知能に判定させることを含む第２の機械学習を行うことと
を具備する、学習方法。
【請求項８】
前記第１の観測データは、前記第１の機械学習が実行された期間のうち前記第１の学習用の人工知能の学習到達度が閾値以下である期間における前記学習用の対象の動作または状態の観測結果を表す、請求項７に記載の学習方法。
【請求項９】
前記第１の観測データは、前記第１の機械学習の完了後の前記第１の学習用の人工知能または前記第１の機械学習を通じて得られた第１の学習結果が設定された第１の人工知能によって制御されている対象の動作または状態の観測結果を表す第２の観測データに一致しない第３の観測データを含み、
前記第１の学習データは、前記第３の観測データに基づいて作成される、
請求項７に記載の学習方法。
【請求項１０】
前記第２の機械学習は、前記第１の学習データと前記第２の観測データに基づいて作成された第２の学習データとを用いて行われ、
前記第１の学習データは、前記第３の観測データが前記要注意動作または前記要注意状態に該当することを示す第１の教師データを含み、
前記第２の学習データは、前記第２の観測データが前記要注意動作または前記要注意状態に該当しないことを示す第２の教師データを含む、
請求項９に記載の学習方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人工知能の出力の妥当性を判定する技術に関する。
【背景技術】
【０００２】
人工知能に例えばデータを分類するなどの知的能力を獲得させるために、機械学習が行われる。例えば、特許文献１には、ニューラルネットワークを利用して、検査画像から被検査物の良否を判定する技法が開示されている。
【０００３】
対象の動作または状態を制御する能力（制御能力）を獲得することを目的に機械学習が行われることもある。かかる機械学習によって、人工知能は、例えば、ロボットハンド（またはピックアンドプレース装置）によりワークをつかんでＡ地点からＢ地点へ移動させて設置する、という動作を行わせる制御能力を獲得するかもしれない。これにより、人間がロボットハンドの制御プログラムを逐一コーディングしなくても、人工知能がロボットハンドにかかる動作を行わせることができる。
【０００４】
しかしながら、機械学習によって獲得された制御能力が常に望ましい結果をもたらすとは限らない。すなわち、対象は、例えば暴走などの不具合により、意図しない動作（例えば衝突などの危険な動作）を行ったり、意図しない状態（例えば推奨温度範囲を超えた高温などの危険な状態）に陥ったりする可能性がある。
【０００５】
一般論として、望ましくない結果をもたらすような対象の動作または状態の全てを設計者が事前に網羅的に定義して判定プログラムをコーディングすることは事実上不可能である。特に、人工知能に対象の動作または状態を制御させる場合には、その人工知能で制御される内容が人間のプログラマにとって予想できないため、人間のプログラマには判定プログラムをコーディングすることができない。
【０００６】
特許文献２には、ニューラルネットワークの入力ノード値が学習データの入力ノード値に一致若しくは類似であるか否かにより、当該ニューラルネットワークの出力ノード値の確からしさを評価する技法が開示されている。本文献ではニューラルネットワークへの入力が学習に用いられたデータなのか、未学習のデータなのかに応じて、出力の確からしさを評価している。しかし、学習時に用いられたデータが入力されれば、ニューラルネットワークの出力により制御される対象が望ましい結果をもたらすとは限らない。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００４−１９１１１２号公報
【特許文献２】特開平５−２２５１６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、人工知能によって制御される対象の動作または状態が望ましくない結果をもたらす可能性のある動作または状態であるか否かを判定することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の第１の態様によれば、判定装置は、取得部と、判定部とを含む。取得部は、学習用の人工知能に学習用の対象の動作または状態を制御させることを含む第１の機械学習を通じて得られた第１の学習結果が設定された第１の人工知能によって制御されている対象の動作または状態の観測結果を表す入力データを取得する。判定部は、入力データが、第１の機械学習が実行された期間における学習用の対象の動作または状態に基づいて定められる要注意動作または要注意状態を表すか否かを判定する。故に、この態様によれば、対象の動作または状態の観測結果から望ましくない結果の発生を判定することができる。
【００１０】
本発明の第２の態様によれば、判定部は、第１の機械学習が実行された期間における学習用の対象の動作または状態の観測結果を表す観測データを学習データとして用いる第２の機械学習を通じて得られた第２の学習結果を利用して、入力データが要注意動作または要注意状態を表すか否かを判定する。故に、この態様によれば、望ましくない結果の発生を予測するために機械学習の学習結果を利用することができる。
【００１１】
本発明の第３の態様によれば、判定部は、第２の学習結果が設定された第２の人工知能に、入力データを与え、入力データが要注意動作または要注意状態を表すか否かを判定させる。故に、この態様によれば、人工知能に、対象の動作または状態の観測結果から望ましくない結果の発生を予測させることができる。
【００１２】
本発明の第４の態様によれば、判定装置は、入力データが要注意動作または要注意状態を表す場合に警報を発する警報部をさらに含む。故に、この態様によれば、望ましくない結果の発生が予測される場合に警報を発することができる。
【００１３】
本発明の第５の態様によれば、判定装置は、入力データが要注意動作または要注意状態を表す場合に対象の動作または状態への制御に介入する介入部をさらに含む。故に、この態様によれば、望ましくない結果の発生が予測される場合に対象の動作または状態への制御に介入することができる。
【００１４】
本発明の第６の態様によれば、学習方法は、学習用の人工知能に学習用の対象の動作または状態を制御させることを含む第１の機械学習を通じて得られた第１の学習結果が設定された第１の人工知能によって制御されている対象の動作または状態の観測結果を表す入力データを取得することを含む。さらに、学習方法は、入力データが第１の学習データに基づいて定められる要注意動作または要注意状態を表すか否かを第２の学習用の人工知能に判定させることを含む第２の機械学習を行うことを含む。この態様によれば、対象の動作または状態の観測結果から望ましくない結果の発生を予測するための機械学習を行うことができる。
【００１５】
本発明の第７の態様によれば、第１の観測データは、第１の機械学習が実行された期間のうち第１の学習用の人工知能の学習到達度が閾値以下である期間における学習用の対象の動作または状態の観測結果を表す。故に、この態様によれば、望ましくない結果をもたらす可能性の高い動作または状態に基づいて、要注意動作および要注意状態に該当する動作または状態を学習することができる。
【００１６】
本発明の第８の態様によれば、第１の観測データは、第１の機械学習の完了後の第１の学習用の人工知能または第１の機械学習を通じて得られた第１の学習結果が設定された第１の人工知能によって制御されている対象の動作または状態の観測結果を表す第２の観測データに一致しない第３の観測データを含む。また、第１の学習データは、第３の観測データに基づいて作成される。故に、この態様によれば、高い確率で適切であると推測される動作または状態を除外して、要注意動作および要注意状態に該当する動作または状態を学習することができる。
【００１７】
本発明の第９の態様によれば、第２の機械学習は、第１の学習データと第２の観測データに基づいて作成された第２の学習データとを用いて行われる。第１の学習データは、第３の観測データが要注意動作または要注意状態に該当することを示す第１の教師データを含む。第２の学習データは、第２の観測データが要注意動作または要注意状態に該当しないことを示す第２の教師データを含む。故に、この態様によれば、要注意動作または要注意状態に該当する動作または状態をより正確に学習することができる。
【発明の効果】
【００１８】
本発明によれば、人工知能によって制御される対象の動作または状態が望ましくない結果をもたらす可能性のある動作または状態であるか否かを判定することができる。
【図面の簡単な説明】
【００１９】
【図１】第１の実施形態に係る判定装置を例示するブロック図。
【図２】図１の判定装置を含む制御システムを例示するブロック図。
【図３】図２の制御装置および判定装置に付与される能力を学習するための機械学習システムを例示するブロック図。
【図４】利用者からの求めに応じて図２の制御装置および判定装置の機械学習サービスを提供するサービス提供システムのブロック図。
【図５】図４のサービス提供システムの動作を例示するフローチャート。
【図６】図１の判定装置の動作の説明図。
【発明を実施するための形態】
【００２０】
以下、図面を参照しながら実施形態の説明を述べる。なお、以降、説明済みの要素と同一または類似の要素には同一または類似の符号を付し、重複する説明については基本的に省略する。
【００２１】
（第１の実施形態）  
図１に例示されるように、第１の実施形態に係る判定装置１００は、取得部１０１と、判定部１０２と、警報部１０４と、介入部１０５と、記憶部１０６とを含む。判定装置１００は、後述される対象の動作または状態の観測結果を表す入力データを取得する。ここで、対象とは、直接的な制御対象に限られず、当該直接的な制御対象の動作または状態によって影響を受ける間接的な制御対象を含み得る。例えば、対象は、ロボットハンドと、当該ロボットハンドによってつかまれるワークとを含み得る。また、動作または状態とは、動作および状態の一方または両方を含み得る。動作および状態は、明確に区別されなくてよい。
【００２２】
判定装置１００は、この入力データが、後述される要注意動作または要注意状態を表すか否かを判定する。さらに、判定装置１００は、入力データが要注意動作または要注意状態を表す場合に警報を発したり、対象の動作または状態への制御に介入したりしてもよい。
【００２３】
取得部１０１は、例えば、外部装置と接続するためのインタフェース（例えば、入力ポート、通信ポート）であり、接続する外部装置に応じて適宜構成され得る。取得部１０１は、入力データを取得する。取得部１０１は、入力データをそのまま判定部１０２へ送ってもよいし、必要な加工（データ形式の変換など）を行ってから判定部１０２へ送ってもよい。
【００２４】
入力データは、後述される人工知能によって制御されている対象の動作または状態の観測結果を表す。対象は、産業用、手術用、エンターテイメント用若しくはその他のロボット、化学プラント、自動車若しくはその他の機械用のエンジン、ネブライザなどの治療器、ビルの空調システム、などの制御可能な種々の装置であり得る。そして、入力データは、例えば対象がロボットハンドの場合、ロボットハンドの動きの軌跡やモータの動き、モータへの印加電流値などでの観測に基づいて得られる。また、例えば対象が化学プラントの場合、反応槽の中での燃焼若しくは他の化学反応の状態（例えば、対象またはその周囲の温度、湿度）などの観測に基づいて得られる。また、例えば対象が自動車若しくはその他の機械用のエンジンの場合、自動車やエンジン自体の動作情報や、エンジンの回転数、供給する燃料の量、燃焼の温度などでの観測に基づいて得られる。また、例えば対象がネブライザの場合、振動子の振動数などでの観測に基づいて得られる。また、例えば対象がビルの空調システムの場合、消費電力などの観測に基づいて得られてよい。
【００２５】
対象の動作または状態の観測には、例えばイメージセンサ（カメラ）、マイクロホン、回転数センサ、加速度センサ、角速度センサ、電流センサ、温度センサ、湿度センサ、振動センサ、騒音センサ、動作時間センサ、消費電力センサなどの種々のセンサを用いることができる。取得部１０１は、かかるセンサなどの観測装置から直接的に入力データを取得してもよいし、かかる観測装置によって図示されないストレージに格納された入力データを取得してもよい。
【００２６】
観測対象となる動作または状態は、望ましくない結果をもたらすおそれがあるか否かの判定に用いることができるものを選択してよい。例えば、予め定められた耐用温度、耐用電流若しくは耐用電圧を超えた範囲で対象が稼働することになるおそれがあるか否かを判定する場合には、対象またはその周囲の温度、対象に印加される電流若しくは電圧などを観測すればよい。
【００２７】
判定部１０２は、例えば、ハードウェアプロセッサであるＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などを含み得る。具体的には、ＣＰＵは、記憶部１０６に格納されたプログラムをＲＡＭに展開する。そして、ＣＰＵがかかるプログラムを解釈および実行することで、判定部１０２は以下に説明する動作（情報処理）を行う。
【００２８】
判定部１０２は、取得部１０１から入力データを受け取り、当該入力データが要注意動作または要注意状態を表すか否かを判定する。判定部１０２は、判定結果を警報部１０４および介入部１０５に通知する。
【００２９】
要注意動作または要注意状態は、対象の動作または状態を制御する能力（制御能力）を獲得するための機械学習が実行された期間における学習用の対象の動作または状態に基づいて定められる。ここで、この機械学習は、学習用の人工知能にこの学習用の対象の動作または状態を制御させることを含む。
【００３０】
なお、学習用の人工知能は、対象を実際に制御する（すなわち、運用時に使用される）人工知能と同一であってもよいし、異なっていてもよい。対象を実際に制御する人工知能は、この機械学習を通じて得られた学習結果が設定されていればよい。
【００３１】
学習用の対象は、人工知能によってその動作または状態が実際に制御される（すなわち、運用時に使用される）対象と同一であってもよいし、異なっていてもよい。具体的には、学習用の対象は、実際に制御される対象と同種の実機であってもよいし、シミュレーションモデルであってもよい。すなわち、機械学習は、シミュレーション上で実行されてもよい。
【００３２】
一般的に、機械学習時に学習用の対象が危険な動作を行ったり危険な状態に陥ったりする可能性が高く、かつ、それによって生じ得る損害が大きいと予想される場合には、機械学習をシミュレーション上で実行することが好ましい。他方、危険な動作に対する安全上の措置（例えば、ロボットハンドの可動範囲内に当該ロボットハンドの操作に関係のない人または物が入らないように使用環境を整える）がとられている場合、学習用の対象の故障、破損などの可能性が低い場合などには、実機を用いて機械学習が行われ得る。また、対象若しくはその使用環境に個体差があり、対象毎に精密な制御を行う必要がある場合には、学習用の対象として使用された実機がそのまま運用時にも転用され得る。
【００３３】
制御能力を獲得するための機械学習は典型的には強化学習に相当し、その実行中（特に初期段階）に学習用の対象はでたらめに決定された制御値を与えられ、危険な動作（例えば、ロボットハンドが可動範囲ぎりぎりまで使って動く）を含めて様々な動作を行ったり、危険な状態を含めて様々な状態に陥ったりする。
【００３４】
学習用の人工知能は、次第に、望ましくない結果をもたらすような動作または状態を避け、望ましい結果をもたらすような動作または状態を指向するように学習していく。故に、機械学習が実行される期間（特に初期段階）における学習用の対象の動作または状態を観測すれば、望ましくない結果をもたらすような対象の要注意動作または要注意状態を把握することができる。
【００３５】
なお、観測対象となる動作または状態は、人間（判定装置の設計者または運用者）が予め選択しておいてもよい。この場合には、不必要なデータを観測する手間を省くことができる。或いは、機械学習が実行される期間には可能な限り多種多様な動作または状態を観測し、事後的に人間またはソフトウェア（人工知能を含み得る）が要注意動作および要注意状態を定めるために用いる動作または状態を選択してもよい。この場合には、要注意動作および要注意状態の取りこぼしを減らすことができる。
【００３６】
判定部１０２は、人工知能を利用して判定を行ってもよい。具体的には、判定部１０２は、入力データが要注意動作または要注意状態を表すか否かを判定する能力（判定能力）を獲得済みのＡＩ（Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ）１０３に、入力データを与えて判定をさせてもよい。ＡＩ１０３および後述される他のＡＩは、例えばＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などのプロセッサが、ＲＡＭに展開されたプログラムを実行することで実現される。
【００３７】
或いは、判定部１０２は、機械学習が実行された期間（特に初期段階）における学習用の対象の動作または状態の観測結果を表す観測データに、入力データ（これは、人工知能によって実際に制御されている対象の動作または状態の観測結果を表すデータである）が一致するか否かにより判定を行ってもよい。
【００３８】
ＡＩ  １０３は、例えば深層ニューラルネットワークであってよい。ＡＩ  １０３は、判定能力を獲得するための機械学習（例えばディープラーニング）を通じて得られた学習パラメータ（例えば、ニューラルネットワーク内のユニットのバイアス、ユニット間のエッジの重みなど）を持つ学習モデルを設定される。この機械学習の詳細は、図３を用いて後述される。
【００３９】
このように、判定部１０２は、人工知能によって実際に制御されている対象の動作または状態の観測結果が要注意動作または要注意状態を表すか否か判定する。故に、この判定部１０２は、図６に示すように、対象２１０を制御する人工知能２０１が実際に活用される場面において、人工知能２０１からの出力を監視し、当該出力が要注意動作または要注意状態を引き起こすか否か判定することができる。さらに、判定結果に応じて、警報部１０４および介入部１０５が後述する処理を行う。
【００４０】
警報部１０４は、例えば、ブザー、スピーカーなどの警報装置であってもよいし、外部の警報装置に接続するためのインタフェースであってもよい。判定部１０２から判定結果を通知される。警報部１０４は、入力データが要注意動作または要注意状態を表すという判定結果を通知された場合には、警報を発する。警報は、例えば、人間（対象の使用者、管理者など）に対して対象の動作または状態に問題があることを画像、光、音などを用いて視覚的または聴覚的に報知することであってもよいし、対象またはそれを直接的若しくは間接的に制御する制御装置（人工知能、人工知能からの制御値に基づいて対象の制御信号を生成する装置など）に対して当該対象の動作または状態に問題があることを報知することであってもよい。具体的には、警報部１０４は、メーターパネル上のアイコンを点灯させたり、対象を制御しているＡＩの再学習を促したりしてもよい。警告を受けた人間、または、対象若しくはその制御装置は、対象の制御を停止若しくはリセットしたり、対象の動作または状態への制御を人間または別の制御装置（例えば、人手でコーディングされた制御プログラムを実行する制御装置）に委ねたり、ＡＩの再学習を行ったりすることで、望ましくない結果を回避することができる。
【００４１】
介入部１０５は、例えば、ハードウェアプロセッサであるＣＰＵ、ＲＡＭ、ＲＯＭなどを含み得る。具体的には、ＣＰＵは、記憶部１０６または他の記憶部（例えば介入部１０５に内蔵された図示しない記憶部）に格納されたプログラムをＲＡＭに展開する。そして、ＣＰＵがかかるプログラムを解釈および実行することで、介入部１０５は以下に説明する動作（情報処理）を行う。かかるプログラムは、例えば、判定部１０２のＣＰＵから入力データが要注意動作または要注意状態を表すという判定結果を示す信号を受け取り、対象２１０の制御に介入するための信号（例えば、対象２１０を緊急停止させる信号）を出力するための命令が記述され得る。
【００４２】
介入部１０５は、判定部１０２から判定結果を通知される。介入部１０５は、入力データが要注意動作または要注意状態を表すという判定結果を通知された場合には、対象の動作または状態への制御に介入する。介入は、例えば、対象の動作または状態への制御を停止若しくはリセットすることであってもよいし、対象の動作または状態への制御を人間または別の制御装置（例えば、人手でコーディングされた制御プログラムを実行する制御装置）に委ねることであってもよい。
【００４３】
なお、警報部１０４による警報および介入部１０５による介入は、段階的に行われてもよい。具体的には、要注意動作または要注意状態がもたらす結果（例えば前述の報酬の低さ）に応じて、当該要注意動作または要注意状態のリスクが評価されてよい。そして、リスクの低い要注意動作または要注意状態が発見された場合には拘束力の弱い警報および介入が行われ、リスクの高い要注意動作または要注意状態が発見された場合には拘束力の強い警報および介入が行われてよい。
【００４４】
警報部１０４は、判定装置１００から削除されてもよい。具体的に、警報部１０４は、対象または他の装置に組み込まれてもよいし、全く存在しなくてもよい。同様に、介入部１０５は、判定装置１００から削除されてもよい。具体的に、介入部１０５は、対象または他の装置に組み込まれてもよいし、全く存在しなくてもよい。
【００４５】
記憶部１０６は、例えば、ハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ソリッドステートドライブ（ＳＳＤ：Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などを含み得る。記憶部１０６には、例えば、判定部１０２のＣＰＵによって実行されるプログラムを格納する。かかるプログラムは、必要に応じて、判定部１０２のＣＰＵによって読み出され、判定部１０２のＲＡＭに展開され、当該ＣＰＵによって実行される。さらに、記憶部１０６は、介入部１０５のＣＰＵによって実行されるプログラムを格納してもよい。
【００４６】
図１の判定装置１００は、例えば図２に示される制御システムに組み込まれ得る。図２の制御システムは、制御装置２００と、対象２１０と、観測装置２２０と、判定装置１００とを含む。
【００４７】
制御装置２００は、対象２１０の動作または状態を制御するための制御値を入力データに基づいて生成する。入力データは、例えば、画像、温度などの対象の動作または状態を制御するために参照され得る情報を表す。制御装置２００は、この制御値を出力データとして対象２１０に送る。制御装置２００は、例えば、対象２１０がエンジンである場合には、エンジン制御用のＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）などであってよい。また、制御装置２００は、例えば、対象２１０がロボットハンドである場合には、ロボットハンド制御用のコントローラなどであってよい。制御装置２００は、対象２１０に対する制御能力を獲得するための機械学習を通じて得られた学習結果が設定されたＡＩ  ２０１に入力データを与え、出力データを得る。
【００４８】
対象２１０は、制御装置２００から制御値を受け取り、これに応答する。例えば、対象２１０は、燃料を噴射したり、クランク軸の回転数を変更したり、空調の設定温度を変更したり、モータを駆動してロボットハンドを動かしたりする。対象２１０の動作または状態は、観測装置２２０によって観測される。
【００４９】
観測装置２２０は、例えば、イメージセンサ（カメラ）、マイクロホン、回転数センサ、加速度センサ、角速度センサ、電流センサ、温度センサ、湿度センサ、振動センサ、騒音センサ、動作時間センサ、消費電力センサなどの種々のセンサを含むことができる。観測装置２２０は、対象２１０の動作または状態を観測し、観測データを生成する。観測装置２２０は、観測データを入力データとして判定装置１００に送る。
【００５０】
判定装置１００は、観測装置２２０から入力データを受け取り、当該入力データが要注意動作または要注意状態を表すか否かを判定する。判定装置１００は、判定結果に基づいて、制御装置２００または図示されない人間若しくは他の制御装置に警告を発したり、対象２１０の動作または状態への制御に介入したりしてもよい。判定装置１００は、対象２１０とは独立した装置であってもよいし、対象２１０に組み込まれていてもよい。また、判定装置１００は、制御装置２００とは独立した装置であってもよいし、制御装置２００に組み込まれていてもよい。
【００５１】
図３には、制御能力を獲得するための機械学習（強化学習）および判定能力を獲得するための機械学習（教師あり学習）をそれぞれ実施する機械学習システムが例示される。これら機械学習では、学習データベース装置３１０に格納されている学習データが用いられる。なお、これら機械学習では、学習データベース装置３１０に格納されている図示されないテストデータが学習到達度の評価のために用いられてもよい。また、制御能力を獲得するための機械学習に用いられる学習データ（制御能力学習データ）と、判定能力を獲得するための機械学習に用いられる学習データ（判定能力学習データ）とは、異なる学習データベース装置に格納されていてもよい。
【００５２】
第１の学習データ作成装置３００は、学習用のＡＩ  ３２１に与えられる入力データに相当する制御能力学習データを作成し、学習データベース装置３１０に格納する。入力データは、例えば、画像、温度などの対象の動作または状態を制御するために参照され得る情報を表す。
【００５３】
制御能力学習装置３２０は、学習用のＡＩ  ３２１に学習用の対象３３０の動作または状態を制御させることを含む機械学習を行う。具体的には、制御能力学習装置３２０は、学習データベース装置３１０から制御能力学習データを読み出し、これを入力データとしてＡＩ  ３２１に与え、出力データ（学習用の対象３３０に直接的または間接的に与えられる制御値）を得る。出力データは、例えば、油圧シリンダ、モータ、ソノレイドなどのアクチュエータに与えられる制御値であってもよい。対象３３０がエンジンの場合、例えばエンジンへの燃料噴射コマンド、クランク軸の回転数を上げる若しくは下げるコマンドなどであってもよい。対象３３０がロボットハンドの場合、例えば各アクチュエータへの供給電流を上げるまたは下げるコマンドなどでもよい。ＡＩ  ３２１は、この出力データによって制御された対象３３０が望ましい結果をもたらせば高い報酬を獲得し、望ましくない結果をもたらせば低い報酬を獲得するなどして学習していく。対象３３０がもたらす結果は、例えば観測装置３４０による観測に基づいて評価することができる。望ましい結果は、機械学習によって獲得することが望まれる能力などに依存して定められ、例えば、動作完了までの時間低減、燃費の向上、環境負荷の低減、消費電力の削減などであり得る。制御能力学習装置３２０は、この報酬を最大化するようにＡＩ  ３２１の機械学習（学習パラメータの更新）を行う。
【００５４】
制御能力学習装置３２０は、学習用のＡＩ  ３２１の学習到達度をテストデータを用いて評価し、学習目標に到達したならば、学習結果（学習モデル）を対象への制御を行うＡＩ（例えば図２のＡＩ  ２０１）に設定する。
【００５５】
なお、対象への制御を行うＡＩは、学習用のＡＩ  ３２１とは別個のＡＩであってもよいし、学習済みのＡＩ  ３２１が転用されてもよい。また、制御能力学習装置３２０および対象への制御を行うＡＩは、同一の装置（例えば、ＥＣＵやロボットのコントローラ）に組み込まれていてもよい。
【００５６】
観測装置３４０は、制御能力学習装置３２０によって機械学習が実行される期間における学習用の対象３３０の動作または状態を観測し、第１の観測データを生成する。観測装置３４０は、第１の観測データを第２の学習データ作成装置３５０に送る。第１の観測データは、制御能力学習装置３２０によって機械学習が実行される期間のうち学習用のＡＩ  ３２１の学習到達度が閾値以下である期間における対象３３０の動作または状態の観測結果を表してもよい。一般に、ＡＩの学習到達度が高くなるほど（機械学習の完了が近づくほど）、望ましくない結果が生じる可能性は低下する。故に、機械学習の初期段階では、対象３３０の運用時にはあり得ない動作を行ったり状態に陥ったりする。このあり得ない動作や状態は、対象３３０の運用時の要注意動作または要注意状態と言える。そのため、機械段階の初期段階に行われる、このあり得ない動作や状態を第１の観測データとして得て、後述する判定能力学習装置３６０で学習することで、要注意動作および要注意状態を学習できるかもしれない。
【００５７】
また、第１の観測データは、制御能力学習装置３２０によって機械学習が実行された期間のうち学習用のＡＩ  ３２１の学習到達度が第１の閾値以上であって第２の閾値以下である期間における対象３３０の動作または状態の観測結果としてもよい。
【００５８】
第２の学習データ作成装置３５０は、判定能力を獲得するための機械学習に用いられる学習データである判定能力学習データを作成する。具体的には、第２の学習データ作成装置３５０は、観測装置３４０から第１の観測データを受ける。
【００５９】
第２の学習データ作成装置３５０は、第１の観測データに基づいて判定能力学習データを作成する。判定能力学習データは、少なくとも後述される第１の学習データを含む。また、判定能力学習データは、後述される第２の学習データを含んでいてもよいし含まなくてもよい。
【００６０】
判定能力学習装置３６０は、ＣＰＵなどのプロセッサと、当該プロセッサによって実行されるプログラムを格納する記憶部と、当該プログラムを展開するためのＲＡＭとを含み得る。ＣＰＵは、記憶部に格納されたプログラムをＲＡＭに展開し、これを解釈および実行することで以下に説明する動作を行う。
【００６１】
判定能力学習装置３６０は、判定能力学習データを用いて、入力データが判定能力学習データに基づいて定められる要注意動作または要注意状態を表すか否かを学習用のＡＩ  ３６１に判定させることを含む機械学習を行う。具体的には、判定能力学習装置３６０は、ＡＩ  ３６１に学習データに含まれる入力データを与え、出力データ（判定結果）を得る。判定能力学習装置３６０は、この出力データが学習データに含まれる教師データに近づくようにこのＡＩ  ３６１の機械学習（学習パラメータの更新）を行う。
【００６２】
判定能力学習装置３６０は、学習用のＡＩ  ３６１の学習到達度をテストデータを用いて評価し、学習目標に到達したならば、学習結果（学習モデル）を判定装置１００のＡＩ  １０３に設定する。
【００６３】
なお、ＡＩ  １０３は、学習用のＡＩ  ３６１とは別個のＡＩであってもよいし、学習済みのＡＩ  ３６１が転用されてもよい。また、判定能力学習装置３６０は、判定装置１００に組み込まれていてもよい。
【００６４】
第１の学習データは、例えば、第１の観測データ（入力データ）と、当該第１の観測データの表す動作または状態が要注意動作または要注意状態に該当することを示す値（教師データ）との組であってもよい。
【００６５】
或いは、第１の学習データは、第１の観測データの一部または全部である第３の観測データ（入力データ）と、当該第３の観測データの表す動作または状態が要注意動作または要注意状態に該当することを示す値（教師データ）との組であってもよい。ここで、第３の観測データとは、第１の観測データのうち第２の観測データに一致しないものを指す。そして、第２の観測データは、制御能力学習装置３２０による機械学習の完了後のＡＩ  ３２１または当該機械学習を通じて得られた学習結果が設定されたＡＩによって制御されている対象の動作または状態の観測結果を表す。一般に、かかる第２の観測データの表す動作または状態は、高い確率で適切な動作または状態であると推測できるので、第１の学習データから除外されてよい。他方、かかる第２の観測データに基づいて第２の学習データが作成されてもよい。第２の学習データは、例えば、第２の観測データ（入力データ）と、当該第２の観測データの表す動作または状態が要注意動作または要注意状態に該当しないことを示す値（教師データ）との組であってもよい。
【００６６】
利用者からの要求に応じて制御能力および判定能力を獲得するための機械学習サービスを提供するサービス提供システムが図４に例示される。図４のサービス提供システムは、第１の学習データ作成装置３００と、学習データベース装置３１０と、制御能力学習装置３２０と、第２の学習データ作成装置３５０と、判定能力学習装置３６０と、利用者端末４００と、学習依頼装置４１０とを含む。各装置は、ネットワークＮＷ経由で互いに接続されている。
【００６７】
なお、図４のサービス提供システムの装置構成は例示に過ぎない。すなわち、図４に示される装置の一部または全部が１つの装置に統合されてもよいし、図４に示される装置の機能が複数の装置に分散されてもよい。また、図４のサービス提供システムの一部の装置が削除または変更され得るし、図４に示されていない装置が追加され得る。
【００６８】
図４の各装置は、基本的に、入出力部と、ＣＰＵなどのプロセッサと、当該プロセッサによって実行されるプログラムを格納する記憶部と、当該プログラムを展開するためのＲＡＭとを含み得る。ＣＰＵは、記憶部に格納されたプログラムをＲＡＭに展開し、これを解釈および実行することで以下に説明する動作を行う。
【００６９】
ここで、入出力部は、例えば、（ネットワークを介して）外部装置と接続するためのインタフェース（例えば、入出力ポート、通信ポート）であり、接続する外部装置に応じて適宜構成され得る。入出力部は、ＣＰＵに与える入力データを外部装置から受け取ったり、ＣＰＵからの出力データを外部装置に送ったりする。
【００７０】
第１の学習データ作成装置３００は、前述のように、制御能力学習データを作成し、学習データベース装置３１０に格納する。制御能力学習データを作成するためのベースとなるデータが学習依頼装置４１０からの入力データに含まれていてもよい。
【００７１】
制御能力学習装置３２０は、学習依頼装置４１０から学習開始指令を受け取る。さらに、制御能力学習装置３２０は、例えば、機械学習によって獲得することが望まれる制御能力を定める仕様データを受け取るかもしれない。制御能力学習装置３２０は、仕様データに基づいて、学習用のＡＩ  ３２１の学習目標を設定したり、強化学習における報酬を設定したりしてよい。
【００７２】
学習データベース装置３１０は、制御能力を獲得するための機械学習に用いられる制御能力学習データと、判定能力を獲得するための機械学習に用いられる判定能力学習データとを格納する。制御能力学習データは、第１の学習データ作成装置３００によって作成され、制御能力学習装置３２０によって必要に応じて読み出される。判定能力学習データは、第２の学習データ作成装置３５０によって作成され、判定能力学習装置３６０によって必要に応じて読み出される。判定能力学習データは、前述の第１の学習データを含み、オプションとして第２の学習データを含み得る。
【００７３】
第２の学習データ作成装置３５０は、観測データに基づいて判定能力学習データを作成し、学習データベース装置３１０に格納する。判定能力学習データを作成するためのベースとなる観測データは、図４に示されていない観測装置から直接的に取得されてもよいし、学習依頼装置４１０からの入力データに含まれていてもよい。
【００７４】
判定能力学習装置３６０は、学習依頼装置４１０から学習開始指令を受け取る。さらに、判定能力学習装置３６０は、学習依頼装置４１０から仕様データを受け取るかもしれない。判定能力学習装置３６０は、仕様データに基づいて、学習用のＡＩ  ３６１の学習目標を設定してもよい。
【００７５】
利用者端末４００は、利用者の目的にふさわしい機械学習の提供をサービス提供システムに依頼する。利用者端末４００は、例えば、仕様データおよび学習開始指令を受け取り、これらを学習依頼装置４１０に送る。仕様データは、対象の構造、用途、目的または耐負荷性能などを示す値を含み得る。
【００７６】
学習依頼装置４１０は、利用者端末４００から仕様データおよび学習開始指令を学習依頼として受け付ける。学習依頼装置４１０は、仕様データおよび学習開始指令を制御能力学習装置３２０および判定能力学習装置３６０へと送る。
【００７７】
図５は、図４のサービス提供システムの動作を例示する。利用者が、利用者端末４００に仕様データおよび学習開始指令を入力することで、図５の動作は開始する。
【００７８】
まず、学習依頼装置４１０は、利用者端末４００から仕様データおよび学習開始指令を学習依頼として受け取る（ステップＳ５０１）。この学習依頼をトリガとして、第１の学習データ作成装置３００は、制御能力学習データを作成し、学習データベース装置３１０に格納する（ステップＳ５０２）。
【００７９】
制御能力学習装置３２０は、ステップＳ５０２において作成された制御能力学習データを用いて、ＡＩ  ３２１の機械学習を行う（ステップＳ５０３）。ステップＳ５０３の学習結果は、利用者端末４００へと送られ、利用者の使用するＡＩに設定され得る。
【００８０】
ステップＳ５０３における対象の動作または状態の観測データに基づいて、第２の学習データ作成装置３５０は、判定能力学習データを作成し、学習データベース装置３１０に格納する（ステップＳ５０４）。
【００８１】
判定能力学習装置３６０は、ステップＳ５０４において作成された判定能力学習データを用いて、ＡＩ  ３６１の機械学習を行う（ステップＳ５０５）。ステップＳ５０５の学習結果は、利用者端末４００へと送られ、利用者の使用するＡＩに設定され得る。
【００８２】
以上説明したように、第１の実施形態に係る判定装置は、人工知能によって制御されている対象の動作または状態の観測結果を表す入力データが、要注意動作または要注意状態を表すか否かを判定する。これら要注意動作または要注意状態は、当該人工知能のための機械学習時における学習用の対象の動作または状態に基づいて定められているので、望ましくない結果をもたらす可能性が高いと推測できる。故に、この判定装置によれば、対象の動作または状態の観測結果から望ましくない結果の発生を予測することができる。
【００８３】
上述の実施形態は、本発明の概念の理解を助けるための具体例を示しているに過ぎず、本発明の範囲を限定することを意図されていない。実施形態は、本発明の要旨を逸脱しない範囲で、様々な構成要素の付加、削除または転換をすることができる。
【００８４】
上記各実施形態において説明された種々の機能部は、回路を用いることで実現されてもよい。回路は、特定の機能を実現する専用回路であってもよいし、プロセッサのような汎用回路であってもよい。
【００８５】
上記各実施形態の処理の少なくとも一部は、汎用のコンピュータを基本ハードウェアとして用いることでも実現可能である。上記処理を実現するプログラムは、コンピュータで読み取り可能な記録媒体に格納して提供されてもよい。プログラムは、インストール可能な形式のファイルまたは実行可能な形式のファイルとして記録媒体に記憶される。記録媒体としては、磁気ディスク、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ等）、光磁気ディスク（ＭＯ等）、半導体メモリなどである。記録媒体は、プログラムを記憶でき、かつ、コンピュータが読み取り可能であれば、何れであってもよい。また、上記処理を実現するプログラムを、インターネットなどのネットワークに接続されたコンピュータ（サーバ）上に格納し、ネットワーク経由でコンピュータ（クライアント）にダウンロードさせてもよい。
【００８６】
上記各実施形態の一部または全部は、特許請求の範囲のほか以下の付記に示すように記載することも可能であるが、これに限られない。  
（付記１）  
メモリと、
前記メモリに接続されたプロセッサと
を具備し、
前記プロセッサは、
（ａ）学習用の人工知能に学習用の対象の動作または状態を制御させることを含む第１の機械学習を通じて得られた第１の学習結果が設定された第１の人工知能によって制御されている対象の動作または状態の観測結果を表す入力データを取得し、
（ｂ）前記入力データが、前記第１の機械学習が実行された期間における前記学習用の対象の動作または状態に基づいて定められる要注意動作または要注意状態を表すか否かを判定する
ように構成される、判定装置。
【００８７】
（付記２）  
プロセッサによって行われる学習方法であって、
前記学習方法は、
第１の学習用の人工知能に学習用の対象の動作または状態を制御させることを含む第１の機械学習が実行された期間における前記学習用の対象の動作または状態の観測結果を表す第１の観測データに基づいて作成された第１の学習データを取得することと、
入力データが前記第１の学習データに基づいて定められる要注意動作または要注意状態を表すか否かを第２の学習用の人工知能に判定させることを含む第２の機械学習を行うことと
を具備する、学習方法。
【符号の説明】
【００８８】
１００・・・判定装置
１０１・・・取得部
１０２・・・判定部
１０３，２０１，３２１，３６１・・・ＡＩ
１０４・・・警報部
１０５・・・介入部
１０６・・・記憶部
２００・・・制御装置
２１０，３３０・・・対象
２２０，３４０・・・観測装置
３００・・・第１の学習データ作成装置
３１０・・・学習データベース装置
３２０・・・制御能力学習装置
３５０・・・第２の学習データ作成装置
３６０・・・判定能力学習装置
４００・・・利用者端末
４１０・・・学習依頼装置
【図１】
2018151959.tif 000003
【図２】
2018151959.tif 000004
【図３】
2018151959.tif 000005
【図４】
2018151959.tif 000006
【図５】
2018151959.tif 000007
【図６】
2018151959.tif 000008