JP2021064099A - 情報処理装置、情報処理システム、学習モデルの生成方法、異常予測方法、およびプログラム - Google Patents

情報処理装置、情報処理システム、学習モデルの生成方法、異常予測方法、およびプログラム Download PDF

Info

Publication number
JP2021064099A
JP2021064099A JP2019187646A JP2019187646A JP2021064099A JP 2021064099 A JP2021064099 A JP 2021064099A JP 2019187646 A JP2019187646 A JP 2019187646A JP 2019187646 A JP2019187646 A JP 2019187646A JP 2021064099 A JP2021064099 A JP 2021064099A
Authority
JP
Japan
Prior art keywords
time
data
input
series data
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019187646A
Other languages
English (en)
Other versions
JP7391601B2 (ja
Inventor
ゆり子 原井
Yuriko Harai
ゆり子 原井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2019187646A priority Critical patent/JP7391601B2/ja
Priority to US17/066,498 priority patent/US11461057B2/en
Publication of JP2021064099A publication Critical patent/JP2021064099A/ja
Application granted granted Critical
Publication of JP7391601B2 publication Critical patent/JP7391601B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/121Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1286Remote printer device, e.g. being remote from client or server via local network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

【課題】精度の良い学習モデルを得ること。精度の良い学習モデルを行って精度の良い推論を行うこと。【解決手段】プリンタ600は、センサ500から得られた時系列のデータである時系列データのうち、プリンタ600が稼働していることを示す条件を満たす時系列データを入力データとして選定する。クラウドサーバー200は、第一時刻までの入力データと、第一時刻の後の第二時刻のセンサデータである教師データとに基づいて、第一時刻までの入力データを入力した場合に、第二時刻に対応する予測値を出力データとして出力するように学習された学習モデルを生成する。【選択図】図12

Description

本発明は、情報処理装置、情報処理システム、学習モデルの生成方法、異常予想方法、およびプログラムに関する。
機械学習を用いて、装置の画像データまたはセンサデータから異常を予測する方法が提案されている。一般的に、機械学習を用いて装置の異常を予測するためには、学習時に、正常時のデータと異常時のデータとの両方が必要になる。しかしながら、装置の故障により発生する異常なデータは、収集される数が少なく、学習に十分なデータ数が集まらないことが多い。このような学習時の異常データ不足を解決するために、装置の正常時データのみを学習させたモデルを生成し、この生成したモデルに入力したデータの推論値と実際に観測された値との誤差を比較することにより、異常を予測する手法がある。
上記の手法を用いた異常予測として、特許文献1がある。特許文献1では、装置のセンサデータに対する予測値を出力する機械学習モデルと、そのモデルの予測誤差を入力とした相関モデルとを組み合わせ、異常予測する方法が記載されている。また、特許文献1では、学習時に使用する正常データは、装置が正常状態にあった全時系列センサデータの中で、基準時刻から一定期間内のデータのみを正常データとして学習させるようにしている。
特開2018−112852号公報
装置の中には、ユーザの操作を受け付けるまでは待機状態になっているような装置がある。このような装置においては、正常データには、待機状態のデータが大量に含まれることになる。このため、装置の稼働時において得られた入力データの推論精度が悪くなる。一方で、装置の待機状態において得られたデータを入力して推論を行っても異常を予測できる可能性は極めて低く、無駄な処理および通信が発生してしまう。また、ユーザ操作に応じて種々の稼働時間が可変となるような装置においては、特許文献1のように、所定時間内のデータを用いて学習をしても、適切な学習が行われない虞がある。
本発明の一態様に係る情報処理装置は、デバイスの状態を示す時系列のデータである時系列データを取得する取得手段と、前記取得手段で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定手段と、前記選定手段によって選定された第一時刻までの前記入力データと、前記第一時刻の後の第二時刻の前記デバイスの状態を示すデータである教師データとに基づいて、前記第一時刻までの入力データを入力した場合に、前記第二時刻に対応する予測値を出力データとして出力するように学習された学習モデルを生成する生成手段と、を有することを特徴とする。
本発明によれば、精度の良い学習モデルを得ることができる。また、精度の良い学習モデルを行って精度の良い推論を行うことができる。
情報処理システムの構成を示す図。 クラウドサーバーおよびエッジサーバーの構成を示すブロック図。 プリンタの構成を示すブロック図。 情報処理システムのソフトウェア構成を示す図。 学習モデルおよび学習済モデルを利用する際の入出力の構造を示す概念図。 入力に用いられるデータを説明する図。 学習時の学習モデルの入出力の構造を示す図。 学習時に使用する学習用データの例を示す図。 異常状態の判定を行う構造を説明する図。 推論時の判定を含む推論処理のフローチャート図。 推論時の判定を含む推論処理のフローチャート図。 学習時の情報処理システム全体の動きを示すシーケンス図。 推論時の情報処理システム全体の動きを示すシーケンス図。 異常判定時の通知例を示す図。 データ選定処理およびデータ加工処理を示すフローチャート図。
以下、実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが必須のものとは限らない。なお、同一の構成については、同じ符号を付して説明する。
<<第1実施形態>>
本実施形態では、異常を検出する対象の装置としてプリンタを用いる例を中心に説明する。プリンタは、例えば、ユーザ操作を受け付けるまでは装置が稼働せず、待機状態を維持している装置の一種である。このような装置においては、正常データには、装置が稼働していない待機時のデータが大量に含まれてしまう。プリンタにおいては、一般的に、ユーザ操作に基づいて装置が稼働して、処理(即ち、印刷処理)が行われる。このとき、ページ数、解像度、紙種、または印刷モードのような種々の設定によって稼働時間が可変になる。以下で説明する実施形態では、装置が正常な状態であり、かつ装置が稼働して処理が行われている場合のデータを用いて学習モデルを生成する例を説明する。また、生成された学習モデル(学習済モデルという)を用いて推論を行って得られたデータを用いて、装置の異常を判定する例を説明する。
<システム構成>
図1は、本実施形態における情報処理システム100の構成を示す図である。情報処理システム100は、ローカルエリアネットワーク102またはインターネット104で接続されたクラウドサーバー200、エッジサーバー300、およびデバイス400を含む。デバイス400には、ネットワーク接続が可能な各種装置が含まれる。例えばデバイス400には、センサ500、プリンタ600、クライアント端末401、デジタルカメラ402、および音声入出力装置403などが挙げられる。クライアント端末401には、パーソナルコンピュータ、ワークステーション、スマートフォン、またはタブレットなどの各種端末が含まれる。ただし、デバイス400は、これらの種類に限られるものではなく、例えば冷蔵庫、テレビ、もしくはエアコンなどの家電製品、工業製品、または製造装置などであってもよい。これらデバイス400は、ローカルエリアネットワーク102で相互に接続され、ローカルエリアネットワーク102に設置されているルータ103を介してインターネット104と接続することが可能である。
図1において、ルータ103は、ローカルエリアネットワーク102とインターネット104とを接続する装置として示されている。しかしながら、ルータ103に、ローカルエリアネットワーク102を構成する無線LANアクセスポイント機能を持たせることも可能である。この場合、各デバイス400は、有線LANでルータ103と接続する以外に、無線LANでアクセスポイントと接続してローカルエリアネットワーク102に参加することができる。例えばプリンタ600とクライアント端末401とは、有線LANで接続し、プリンタ600とセンサ500とは、無線LANで接続するように構成することも可能である。
各デバイス400およびエッジサーバー300は、ルータ103を介して接続されたインターネット104を経由してクラウドサーバー200と相互に通信することが可能である。エッジサーバー300と各デバイス400とは、ローカルエリアネットワーク102を経由して相互に通信することが可能である。また、各デバイス400同士もローカルエリアネットワーク102を経由して相互に通信することが可能である。また、センサ500とプリンタ600とは、近距離無線通信101によって通信可能である。近距離無線通信101としては、Bluetooth(登録商標)規格またはNFC規格に則った無線通信を利用するものが考えられる。尚、図1に示す構成は、一例を示すものであって、異なる構成を採用してもよい。例えば、ルータ103がアクセスポイント機能を備えている例を示したが、アクセスポイントはルータ103と異なる装置で構成されてもよい。また、エッジサーバー300と各デバイス400との間の接続は、ローカルエリアネットワーク102以外の接続手段を用いるものであってもよい。例えば無線LAN以外のLPWA、ZigBee、Bluetooth、近距離無線通信などの無線通信、USBなどの有線接続、または赤外線通信などを用いるものであってもよい。センサ500は、センサを内蔵したデバイスであってもよい。たとえばセンサ500内にデータを保持する構成をもったものであってもよい。また、センサ500は、プリンタ600などの装置の内部に配されていてもよい。図1に示す、クラウドサーバー200、エッジサーバー300、およびデバイス400は、いずれも情報処理装置の一種である。
<サーバーの構成>
図2は、クラウドサーバー200およびエッジサーバー300の構成を示すブロック図である。ここでは、クラウドサーバー200およびエッジサーバー300のハードウェア構成としては共通のものを利用するものとして説明する。以下、構成の説明の便宜上、クラウドサーバー200およびエッジサーバー300を、単に、サーバー200、300と呼ぶ。サーバー200、300は、装置全体の制御を行うメインボード210と、ネットワーク接続ユニット201と、ハードディスクユニット202とを有する。メインボード210は、CPU211、内部バス212、プログラムメモリ213、データメモリ214、ネットワーク制御回路215、ハードディスク制御回路216、およびGPU217を有する。
メインボード210に配置されるマイクロプロセッサ形態のCPU211は、内部バス212を介して接続されているプログラムメモリ213に格納されている制御プログラムと、データメモリ214の内容とに従って動作する。CPU211は、ネットワーク制御回路215を介してネットワーク接続ユニット201を制御することで、インターネット104またはローカルエリアネットワーク102などのネットワークと接続し、他の装置との通信を行う。CPU211は、ハードディスク制御回路216を経由して接続されたハードディスクユニット202にデータを読み書きすることができる。ハードディスクユニット202には、プログラムメモリ213にロードして使用されるオペレーティングシステムおよびサーバー200、300の制御ソフトウェアが格納されるほか、各種のデータも格納される。メインボード210には、GPU217が搭載されており、各種演算処理をCPU211の代わりにGPU217に実行させることが可能である。
GPU217は、データを多く並列処理することで効率的な演算を行うことができるので、ディープラーニングのような学習モデルを用いて複数回に渡り学習を行う場合にはGPU217で処理を行うことが有効である。そこで本実施形態では、後述の学習部251(図4参照)による処理には、CPU211に加えてGPU217を用いるものとする。具体的には、学習モデル252を含む学習プログラムを実行する場合に、CPU211とGPU217とが協同して演算を行うことで学習を行う。なお、学習部251の処理はCPU211またはGPU217のみにより演算が行われても良い。また、後述の推論部351(図4参照)も学習部251と同様に、GPU217を用いても良い。また、本実施形態ではクラウドサーバー200とエッジサーバー300とで共通の構成を使用するものとして説明したが、この構成に限られるものではない。例えばクラウドサーバー200には、GPU217を搭載するがエッジサーバー300では搭載しない構成を採用してもよい。あるいは、クラウドサーバー200とエッジサーバー300とで、異なる性能のGPU217を用いるものとして構成してもよい。
<プリンタの構成>
図3は、プリンタ600の構成を示すブロック図である。プリンタ600は、装置全体の制御を行うメインボード610と、操作パネル605と、近距離無線通信ユニット606と、無線LANユニット608とを含む。メインボード610は、CPU611、プログラムメモリ613、データメモリ614、スキャナ615、印刷部617、無線LAN制御回路618、近距離無線通信制御回路619、操作部制御回路620、およびGPU621を有する。データメモリ614は、画像メモリ616を有する。
メインボード610に配置されるマイクロプロセッサ形態のCPU611は、内部バス612を介して接続されているROM形態のプログラムメモリ613に格納されている制御プログラムと、RAM形態のデータメモリ614の内容とに従って動作する。CPU611は、スキャナ615を制御して原稿を読み取り、データメモリ614中の画像メモリ616に格納する。また、CPU611は、印刷部617を制御してデータメモリ614中の画像メモリ616の画像を記録媒体に印刷することができる。CPU611は、無線LAN制御回路618を通じて無線LANユニット608を制御することで、他の通信端末装置と無線LAN通信を行う。またCPU611は、近距離無線通信制御回路619を介して近距離無線通信ユニット606を制御することによって、他の近距離無線通信端末との接続を検知したり、他の近距離無線通信端末との間でデータの送受信を行ったりすることができる。CPU611は、操作部制御回路620を制御することによって操作パネル605にプリンタ600の状態の表示または機能選択メニューの表示を行ったり、ユーザからの操作を受け付けたりすることが可能である。また、CPU611は、定期的にプリンタ600の状態をプログラムメモリ613またはデータメモリ614に保持、記録しておく処理を行うことも可能である。操作パネル605には、バックライトが備えられており、CPU611は操作部制御回路620を介してバックライトの点灯または消灯を制御することができる。
<学習および推論の処理>
図4は、情報処理システム100のソフトウェア構成を示す図である。図4では、ソフトウェア構成のうち、本実施形態における学習および推論の処理に関わるものを中心に記載しており、その他のソフトウェアモジュールについては不図示としている。例えば各デバイスまたはサーバー上で動作するオペレーティングシステム、各種ミドルウェア、およびメンテナンスのためのアプリケーション等については図示を省略している。
クラウドサーバー200は、学習用データ生成部250、学習部251、および学習モデル252を備える。学習用データ生成部250は、外部から受信したデータから、学習部251が処理可能な学習用データを生成するモジュールである。学習用データは、学習部251へ入力される時系列データXである。尚、学習用データ生成部250は、外部から受信したデータをそのまま学習用データとして扱ってもよい。学習部251は、学習用データ生成部250から受け取った学習用データを用いて学習モデル252に対する学習を実行するプログラムモジュールである。即ち、学習部251による学習によって学習モデル252が生成される。尚、学習部251は、学習モデル252の精度がより良くなるように、学習モデル252のハイパーパラメータをチューニングする処理を行ってよい。学習モデル252は、学習部251で行った学習モデルのパラメータおよび推論誤差などの学習結果を蓄積する。ここでは学習モデル252をリカレントニューラルネットワーク(RNN)として実現する例を説明する。本例では、RNNに時系列データを入力することで、入力された時系列データ以降の時刻の予測値を出力する学習モデルが生成される。学習部251によって学習が行われた学習モデル252は、エッジサーバー300に学習済モデル352として配信され、エッジサーバー300において管理される。学習済モデル352は、エッジサーバー300において行われる推論処理に用いられる。
エッジサーバー300は、データ収集・提供部350、推論部351、および学習済モデル352を備える。データ収集・提供部350は、デバイス400から受信したデータ、または、エッジサーバー300が自ら収集したデータを、学習に用いるためのデータ群としてクラウドサーバー200に送信するモジュールである。推論部351は、デバイス400から送られるデータを基に、学習済モデル352を用いて推論を実行し、その結果をデバイス400に返送するプログラムモジュールである。デバイス400から送られるデータは、推論部351の入力データXとなるデータである。
学習済モデル352は、エッジサーバー300で行う推論に用いられる。学習済モデル352も学習モデル252と同様にニューラルネットワークとして実現されるものとする。ただし、学習済モデル352は、学習モデル252と同一のものであってもよいし、学習モデル252の一部を抽出して利用するものであってもよい。学習済モデル352は、クラウドサーバー200で蓄積して配信された学習モデル252を格納する。学習済モデル352は、学習モデル252の全部が配信されたものであってもよいし、学習モデル252のうち、エッジサーバー300での推論に必要な一部分だけが抜き出されて配信されたものであってもよい。
デバイス400は、アプリケーション部450およびデータ送受信部451を備える。アプリケーション部450は、デバイス400で実行する各種の機能を実現するモジュールであり、機械学習による学習・推論の仕組みを利用するモジュールである。データ送受信部451は、エッジサーバー300に学習または推論を依頼するモジュールである。学習時には、データ送受信部451は、アプリケーション部450からの依頼により学習に用いるデータをエッジサーバー300のデータ収集・提供部350に送信する。また、推論時には、データ送受信部451は、アプリケーション部450からの依頼により推論に用いるデータをエッジサーバー300に送信し、その結果を受信してアプリケーション部450に返す。
尚、図4では、クラウドサーバー200で学習して生成した学習モデル252をエッジサーバー300に学習済モデル352として配信し、配信された学習済モデル352をエッジサーバー300が推論に利用する例を説明した。しかしながら、学習または推論を、それぞれ、クラウドサーバー200、エッジサーバー300、デバイス400のどこで実行するかは、ハードウェア資源の配分、または、計算量もしくはデータ通信量の大小などに応じて構成を決定すればよい。あるいはこれら資源の配分、または、計算量もしくはデータ通信量の増減に応じて動的に変えるように構成してもよい。学習および推論を行う主体が異なる場合、推論側は、推論のみで使用するロジックを用いたり、学習済モデル352の容量を削減したりすることで、より高速で実行できるように構成したりすることが可能である。
図5は、学習モデル252および学習済モデル352を利用する際の入出力の構造を示す概念図である。図5(a)は、学習時における、学習モデル252とその入出力データとの関係を示す。学習時において用いられる学習用データは、入力データX(501)と教師データT(502)とを含む。入力データX(501)は、学習モデル252の入力層のデータである。本実施形態における入力データXは、時系列のデータである。入力データXの詳細は後述する。入力データXを学習モデル252に入力すると、時系列データである入力データXよりも後の第二時刻のデータを学習モデル252が予測した結果が、出力データY(503)として出力される。学習時には、入力データXよりも後の第二時刻で実際に計測されたデータとして教師データT(502)が与えられている。このため、出力データYと教師データTとを損失関数504に与えることにより、予測結果の正解からのずれ量L(505)(予測誤差ともいう)が得られる。
学習時においては、多数の学習用データに対してずれ量L(505)が小さくなるように、学習モデル252中のRNNのパラメータ等を更新する。本実施形態では、使用する機械学習アルゴリズムとしてRNNを用いる例を説明したが、他の再帰型ニューラルネットワークを用いてもよい。例えば、Long short−term memory(LSTM)または双方向RNNなどを用いてもよい。さらにネットワーク構造として、複数のネットワーク構造を組み合わせたものを用いてもよい。例えば、畳み込みニューラルネットワーク(CNN)と、RNNもしくはLSTMなどの再帰型ニューラルネットワークまたはオートエンコーダなどとを組み合わせてもよい。
図5(b)は、推論時における、学習済モデル352とその入出力データとの関係を示す。入力データX(551)は、学習済モデル352の入力層のデータである。推論時における入力データX(551)もまた、時系列のデータである。入力データXを学習済モデル352に入力すると、時系列データである入力データXよりも後の時刻(第二時刻に相当)のデータを学習済モデル352が予測した結果が、出力データY(553)として出力される。推論時には、この出力データYを推論結果として利用する。尚、推論時の学習済モデル352は、学習時の学習モデル252と同等のネットワーク構造を備えるものとして説明したが、推論で必要な部分のみを抽出したものを学習済モデル352として用意することもできる。これによって学習済モデル352のデータ量を削減したり、推論処理の時間を短縮したりすることが可能である。
<異常予測処理>
次に、本実施形態の異常予測処理を説明する。本実施形態の異常予測処理は、デバイス400の特定の装置状態のデータを、学習・推論工程の入力データから除外するデータ選定処理を含む。例えば、デバイス400の静止状態のデータを学習・推論工程の入力から除外するデータ選定処理が行われる。
本実施形態では、装置の正常時データで学習をさせた学習モデルを生成する。前述したように、生成される学習モデルは、時系列データである入力データXを入力すると、入力データXよりも後の第二時刻の出力データYを出力するように構成される。推論段階では、異常予測を行う装置(本例ではエッジサーバー300)が、この生成された学習モデル(学習済モデル)に入力データXを入力すると、入力データXよりも後の第三時刻(第二時刻に対応)の出力データYが得られる。一方で、エッジサーバー300は、その後の第三時刻に対応する実測値も取得する。そして、この実際に観測された実測値と、学習モデルから出力された出力データY(推論値)と、の誤差を比較することにより、異常を予測する。この学習済モデルは、デバイス400の正常時データのみで学習がされている。このため、推論時において、デバイス400が正常状態であるときのデータが学習済モデルに入力されると、推論値と実際に観測された値との予測誤差が小さくなる。つまり、精度よく推論が機能する。一方で、デバイス400が異常状態であるときのデータが学習済モデルに入力されると、推論値と実際に観測された値との予測誤差は大きくなる。つまり、推論値と実際に観測された値との差(予測誤差)が所定の閾値よりも大きい場合、そのデバイス400が異常状態または異常になり得る状態であると判定をすることができる。このように、本実施形態では、予測誤差を異常判定閾値と比較し、その大小関係によって装置が正常か異常かを判定する。このようにして、学習済モデルに入力したデータが、装置の異常を示すデータであったかを帰納的に判定することができる。
本実施形態では、学習時において入力する入力データを、詳細に選定する処理が行われる。即ち、単なる正常時データを入力データとして扱うのではなく、正常時データであり、かつ装置が稼働状態において得られたデータを入力データとして選定する。正常時データという観点のみでデータを選定すると、特定の状態のデータが大量に含まれてしまう可能性がある。たとえば、プリンタ600のように、ユーザ操作があるまでは装置が待機状態にあり、稼働していない状態が続く、という特徴のある装置(デバイス)では、正常データには、装置が稼働していない待機中のデータが大量に含まれてしまう。これにより、稼働時に入力されたデータの推論精度が悪くなる。そこで、本実施形態では、正常時データであり、かつ、装置が稼働している状態(例えば、待機状態または静止状態でない状態)のデータを、学習段階の入力データとして選定する処理を行う。また、推論段階においても、装置が稼働している状態(例えば、待機状態または静止状態でない状態)のデータを入力データとして選定する処理を行う。即ち、本実施形態では、装置が待機状態または静止状態のデータを、学習工程および推論工程の入力データから除外するデータ選定処理が行われる。
図6は、入力に用いられるデータを説明する図である。図6(a)は、入力データXの例である。入力データXは、図6(a)に示すように、各列がパラメータごとのデータで構成され、各行が時刻カウントごとのデータで構成されている時系列データである。ここで、入力データXは、パラメータごとに異なるセンサデータを格納してもよい。例えばパラメータ1には温度、パラメータ2には圧力といったように対応するデータを格納してもよい。図6(b)は、3カウント前のデータから次の1カウント分のデータを予測する学習モデルを生成する場合に、学習時に使用する入力データXおよび教師データTの学習データの例を示す。入力データの時刻長および予測する時刻長は、適用するシステムに応じて適宜変更してもよい。これらは学習モデルのハイパーパラメータとも考えられるため、学習モデル252の精度が向上するように学習部251にて入力データの時刻長および予測する時刻長を選択させることもできる。尚、時系列データは、複数の種別のパラメータを含む例を示したが、単一の種別のパラメータを含むものであってもよい。また、1カウントは、所定の時間単位であればよく、センサデータに応じて適宜決定されるものとする。
図7は、学習時の学習モデル252の入出力の構造を示す図である。以降では、学習モデル252は、3カウント前のデータから次の1カウント分のデータを予測するモデルとして説明する。入力データXとしてはセンサデータ700を使用する。教師データTとしてはセンサデータ750を使用する。即ち、入力データXも教師データTも、どちらも実際に測定して得られた実測値のデータが用いられる。尚、本例においてセンサデータ700は、センサデータ750に含まれるデータの3カウント前までのデータの集合であるものとする。学習モデル252では、センサデータ700を学習モデル252に入力した時の出力と、教師データT750とのずれ量Lが最小となるよう学習が行われて、学習モデル252が更新(生成)される。即ち、時刻カウントt=s−3、s−2、s−1のセンサデータ700を学習モデル252に入力した時に得られる、時刻カウントt=sの予測値である出力データY(503)と、時刻カウントt=sの実測値であるセンサデータ750とが得られる。この時刻カウントt=sの予測値である出力データY(503)と、時刻カウントt=sの実測値であるセンサデータ750とを損失関数504に入力する。このとき、損失関数504から得られる予測誤差が、ずれ量L(505)となる。
図8は、学習時に使用する学習用データの例を示す図である。図8(a)は、一対の学習用データを示しており、入力データXと教師データTとのペアを表している。図8(b)は、推論時に異常予測のための指標として使用する異常判定閾値を説明する図である。学習用データセット821には、図8(a)で示すような学習用データの組が複数含まれている。本例では、学習用データセット821には、学習モデルのパラメータ更新に使用するトレーニングデータ822と、学習モデルのパラメータ更新に使用せず学習モデル252の予測精度を評価するためのバリデーションデータ823とが含まれる。トレーニングデータ822およびバリデーションデータ823は、同じ種類のデータであるものの、その用途(学習モデルのパラメータ更新に使われるか否か)が異なる。
本実施形態では、バリデーションデータ823を用いて異常判定閾値830が決定される。具体的には、バリデーションデータ823の入力データXを学習モデル252に入力して得られた出力データYと、入力データXに対応する教師データTとの予測誤差に対応するずれ量L(505)が、バリデーションデータ823ごとに予測精度として得られる。バリデーションデータ823を用いて得られるこのずれ量L505は、学習モデルのパラメータ更新には使用されない。本実施形態では、バリデーションデータ823を用いて得られるずれ量L505の平均値が、異常判定閾値830として決定される。尚、バリデーションデータを用意する際の手法としては、クロスバリデーション法、ホールドアウト法、リーブワンアウト法のいずれかまたはその他の手法を用いてもよい。本実施形態では、異常判定閾値830は、バリデーションデータの平均値(即ち、平均誤差)である例を説明したが、その他の指標を用いてもよい。例えば、バリデーションデータのずれ量Lの最大値、最小値、その他の統計値を用いてもよい。
図9は、推論時における学習済モデル352の入出力と学習済モデル352の出力データにより異常状態の判定を行う構造とを説明する図である。入力データXとして、学習時と同様のセンサデータ900が使用される。具体的には、時刻カウントt=s−3、s−2、s−1のデータが入力データXとなる。上述したように学習済モデル352は、3カウント前のデータから次の1カウントのデータを予測するように生成されたモデルである。このため、学習済モデル352の出力データYは、時刻カウントt=sのデータの推論値(予測値)となる。推論時に求められるずれ量L(505)は、時刻カウントt=sの推論値である出力データY(503)と、時刻カウントt=sの実測値であるセンサデータ950とを損失関数504に入力したときに得られる予測誤差である。損失関数504は、学習時と同一の損失関数を用いてもよい。判定処理960は、ずれ量L(505)から装置が異常であるかの判定を行う処理である。判定処理960を含む推論処理のフローについては後述する。判定値961は、判定処理960の出力値である。このようにして、推論時の出力データを用いて装置が異常であるかの判定を行うことができる。
図10および図11は、推論処理および判定処理960の処理を示すフローチャート図である。推論処理および判定処理960は、図10または図11に示すいずれの処理で行われもよい。この例においては、図10および図11に示す処理は、エッジサーバー300の推論部351で行われるものとして説明する。即ち、エッジサーバー300のCPU211およびGPU217が、プログラムメモリ213に格納されたプログラムに従って、データメモリ214に格納されている学習済モデル352を用いて、推論処理および判定処理を行う。なお、各処理の説明における記号「S」は、当該フローチャートにおけるステップであることを意味する(以下、本明細書において同様である)。
図10は、1回の推論結果により、装置が正常か異常かの判定を行う場合のフローチャート図である。S1001にて推論部351は、入力データX(実測値)以降の後時刻の出力データY(推論値)を推論する。即ち、推論部351は、学習済モデル352に入力データXを入力し、入力データXに対応する出力データY(推論値)を得る。その後、S1002にて推論部351は、S1001で得た推論値と同時刻カウントの実測値を受信したか否かを判定する。本例では、デバイス400のデータ送受信部451から、推論値と同時刻カウントの実測値を受信したか否かを判定する。推論値と同時刻カウントの実測値を受信した場合、S1003に進み、そうでない場合、S1002の判定を繰り返し、実測値を受信するまで処理を待機する。尚、デバイス400内で異常予測処理を行う場合、S1002の判定は、装置内において実測値を取得したか否かを判定する処理とすればよい。
S1003において推論部351は、推論値と、その推論値と同時刻カウントの実測値と、を損失関数504に入力して、ずれ量Lを算出する。S1004にて推論部351は、S1003で算出したずれ量Lと、異常判定閾値との大小関係を比較する。異常判定閾値の方が大きければS1005に進み、推論部351は、判定値を正常と設定する。そうでなければS1006に進み、推論部351は、判定値を異常と設定する。そして、処理を終了する。
図11は、連続した複数回の推論結果により、装置が正常であるか異常であるかの判定を行う場合のフローチャート図である。S1101〜S1104の処理は、図10のS1001〜S1004の処理と同様の処理であるが、図11の例では、S1101〜S1104の処理が連続回ループして行われる。このとき、連続して行う回数は任意の回数を決めてよい。図11では、推論処理を連続実行中に一度もずれ量Lが異常判定閾値を下回らなければ、S1106にて判定値を異常と設定し、そうでなければS1105にて判定値を正常と設定して終了する。図11の処理は、複数回の推論結果が全て異常判定閾値以上となるような場合に、異常と判定する処理である。
図12は、学習時における情報処理システム100全体の動きを表すシーケンス図である。図12のプリンタ600の処理は、プログラムメモリ613に格納されたプログラムに従ってCPU611およびGPU621の少なくとも一方が実行する処理である。図12のエッジサーバー300およびクラウドサーバー200の処理は、それぞれ、プログラムメモリ213に格納されているプログラムに従ってCPU211およびGPU217の少なくとも一方が実行する処理である。後述する図13の推論時の処理についても同様である。
図12では、センサ500からのセンサデータをプリンタ600が受信し、センサデータを用いてクラウドサーバー200で学習した結果をエッジサーバー300が学習済モデルを保持するまでの流れを示している。センサ500は、プリンタ600に搭載されているセンサ、または、プリンタ600の挙動を監視しているセンサであるものとする。まず、センサ500は、S1201においてデータを計測する。そして、S1202においてセンサ500は、S1201でセンサデータをプリンタ600に送信する。このように、センサ500では、データの逐次計測と送信とが行われる。
プリンタ600は、S1211においてセンサデータを受信する。尚、プリンタ600は、S1211で、所定数(または所定期間)受信したセンサデータを蓄積してから次の処理に移行してもよい。S1212においてプリンタ600は、受信したセンサデータが正常時のデータであるかを判定する。正常時のデータであるかの判定方法は、様々である。例えば、正常時のデータかどうかを判定するための第一の方法として、プリンタ600内に格納されたログを参照する方法がある。センサデータが計測された日時に、センサ500またはプリンタ600にエラーが発生していたかどうか、あるいは印刷結果に異常があったかを確認し、エラーまたは異常が発生していなければ正常時のデータと判定することができる。第二の方法として、複数のセンサ500による異常計測結果を用いることもできる。たとえば、火災報知器、漏電検知器、または地震感知器といったセンサによって異常を検知した場合にプリンタ600に異常発生を通知するようにしておく。そして、プリンタ600内に保持された異常発生時刻とセンサデータが計測された日時とを比較して、センサデータ計測日時に異常が発生したかを判定することもできる。第三の方法として、過去に計測されたセンサデータに正常時のデータまたは異常時のデータを示すラベルを手動で振っておくこともできる。
正常時のデータである場合、S1213に処理が進み、正常時のデータでない場合、S1211に処理が戻る。即ち、正常時のデータでない場合には、本実施形態の学習に適していないデータであるので、以降の処理には用いられない。尚、学習段階の処理では、基本的に過去に得られたデータを用いて学習が行われる。このため、S1212において、センサデータが正常時のデータであるかの判定が行われる。一方で、後述する推論処理においては、基本的に、現在得られているデータを用いて、現在または将来の異常を判定する処理が行われる。このため、後述する推論処理においては、S1212に相当する判定は行われない。
S1213においてプリンタ600は、センサデータが、データ選定条件を満たすデータであるかを判定する。データ選定条件を満たすデータの場合、S1214に進み、そうでない場合、S1211に処理が戻る。本例では、データ選定条件は、装置が稼働中であることを条件とする。装置が稼働中であるかは、例えば装置が静止中などの待機状態であるかを判定することで決定できる。一例として、S1213では、データ計測時のプリンタ600の装置状態が静止中であったかを判定する。装置状態が静止中である場合、データ選定条件を満たしていないとして、当該データは、学習には用いられないことになる。前述したように、装置状態が静止中の場合、装置が稼働していない待機時のデータが大量に含まれてしまうので、学習精度が上がらない虞があるからである。尚、本例では、静止中のデータでない場合にのみ、学習処理を行う例を説明したが、データ選定条件として複数の装置状態を設けてもよい。例えば、装置状態が初期化処理中または静止中以外の場合に学習処理を行うようにしてもよい。
S1214においてプリンタ600は、データ加工処理を行う。ここでは受信したセンサデータを、入力データXおよび教師データTの形式になるように変換する処理を行う。また、S1214では必要に応じて、標準化、正規化、主成分分析を始めとする次元削減処理、その他の特徴量算出のための処理を行うこともできる。なお、本例では、S1214はプリンタ600で行う場合を説明したが、プリンタ600が、加工処理前のデータをエッジサーバー300、あるいはクラウドサーバー200に送信し、受信先でS1214に相当する処理が行われてもよい。S1215においてプリンタ600は、エッジサーバー300にS1214で加工したデータと共に学習依頼を送信する。
S1221においてエッジサーバー300は、プリンタ600から送信された学習依頼を受信する。S1222においてエッジサーバー300は、クラウドサーバー200に学習依頼を送信する。
S1231においてクラウドサーバー200は、エッジサーバー300から送信された学習依頼を受信する。S1232においてクラウドサーバー200は、学習処理を開始する。S1233においてクラウドサーバー200は、S1232において学習した学習結果を蓄積する。なお、学習結果には、生成される学習済モデル352のほか、異常判定閾値830も含まれる。S1226でクラウドサーバー200は、エッジサーバー300に学習済モデル352および異常判定閾値830を配信する。S1241においてエッジサーバー300は、クラウドサーバー200から受信した学習済モデル352および異常判定閾値830を保持する。
尚、本例では、学習依頼を行う場合には、プリンタ600からエッジサーバー300を経由して学習依頼がクラウドサーバー200に送信される場合を説明した。しかしながら、これに限るものではなく、プリンタ600からクラウドサーバー200へ直接学習依頼を送信するように構成されてもよい。また、エッジサーバー300およびクラウドサーバー200を用意せず、プリンタ600が全ての処理を行うように構成されてもよい。
本例では、クラウドサーバー200で学習が行われる毎にエッジサーバー300への学習済モデル352の配信が行われるように説明したが、大量の学習がクラウドサーバー200で行われる場合には都度配信しなくてもよい。クラウドサーバー200からエッジサーバー300に所定のタイミングで定期的に学習済モデル352を配信してもよい。エッジサーバー300から必要に応じて配信要求を送信し、配信要求に応じてクラウドサーバー200からエッジサーバー300に配信させるように構成してもよい。また、ここではプリンタ600のセンサデータのみを学習した学習済モデル352が配信されるように説明したが、プリンタ600の推論に使用さる学習済モデル352は、必ずしもプリンタ600の学習データを用いて学習されていなくてよい。例えば、プリンタ600以外の別のプリンタのデータを学習して作成された学習済モデルを配信し、その学習済モデルをプリンタ600が推論に使用してもよい。また、別のプリンタのデータを用いて学習が行われた学習済モデルに、プリンタ600のデータを用いて追加で学習させた学習済モデルが生成されてもよい。
また、入力データの選定処理およびデータ加工処理は、学習を行うクラウドサーバー200および推論を行うエッジサーバー300で、それぞれ行われてもよい。
図13は、推論時における情報処理システム100の動きを表すシーケンス図である。図13では、センサ500からのセンサデータをプリンタ600が受信し、プリンタ600から送信されたセンサデータによって、エッジサーバー300が推論を行い、推論結果に基づいてプリンタ600が装置の異常を予測する流れを示している。S1301、S1302、S1311の処理は、図12のS1201、S1202,S1211と同様の処理であるので、説明を省略する。また、S1312のデータ選定条件およびS1313のデータ加工処理も、図12のS1213およびS1214と同様の処理であるので、説明を省略する。
S1313までの処理によってセンサデータの加工が終了した後、S1314においてプリンタ600は、エッジサーバー300への推論処理依頼を行う。推論処理依頼には、S1313で加工されたセンサデータが含まれる。ここで、図10のS1003または図11のS1103のずれ量Lを算出に必要な、センサデータの推論値と同時刻カウントのセンサデータの実測値は、推論処理依頼を行うS1314の時点で送信してもよい。または、S1314以降にエッジサーバー300に送信してもよい。
S1321においてエッジサーバー300は、プリンタ600から受信した推論処理依頼に含まれるセンサデータを用いて、推論を行う。S1321の推論処理は、図10または図11で説明した処理に相当する。S1321の推論処理の結果、判定値には、異常であるか正常であるかの値が設定される。S1322においてエッジサーバー300は、推論結果をプリンタ600に送信する。尚、判定値には単にずれ量に基づく値が設定されていればよく、異常であるか正常であるかは、判定値の送信先のプリンタ600で判定されてもよい。
S1331においてプリンタ600は、エッジサーバー300から推論結果を受信する。S1332においてエッジサーバー300は、S1331で受信した推論結果が異常であるかを判定する。異常でなければプリンタ600は、S1311以降の処理を繰り返し、異常であればS1333で装置の異常が予測された旨を通知する処理を行う。
図14は、S1333における通知内容の表示例である。異常の通知時にはプリンタ600は、操作パネル605に各種の情報を表示することができる。図14の例では、以下の情報が表示されている。即ち、異常が予測されたことを伝えるテキスト1400、推論実行時の日時1401、センサ名称1402、推論結果が異常であった累計回数1403、分析結果1404、および異常を予測するまでのセンサ値の推移1405、などの情報を表示している。また、プリンタ600のみならず、クライアント端末401にも同様の内容を通知することができる。尚、通知内容の表示は、この例に限られず、任意の内容を通知してよい。
以上説明したように、本実施形態によれば、異常予測のための機械学習処理において、学習時において、学習に適していない特定の状態のデータが多くなってしまうことを抑制することができる。即ち、本実施形態では、装置の正常データであり、かつ装置が稼働中のデータを用いて学習が行われる。これにより、推論が精度良く機能するようになる。また、推論時においても、装置が稼働中のデータを用いて推論が行われるので、精度の良い推論が行われる。さらに、学習時および推論時において入力データが選定されるので、学習、推論の処理時間、処理回数を短縮することができる。
<<第2実施形態>>
第1実施形態では、特定の装置状態のデータを学習工程および推論工程の入力から除外するデータ選定処理を行い、異常予測を行う例を説明した。第2実施形態では、センサデータの変位に基づいて、学習工程および推論工程の入力から除外するデータを選定する選定処理を行う例を説明する。
例えば、センサデータが変位した場合とは、装置の温度、湿度、圧力、およびインク濃度等の状態が変化した場合である。センサデータの変位には、環境条件の変化、経時変化、またはユーザ操作による稼働などのように、各種の要因が想定される。換言すれば、センサデータが変位していない場合には、装置が待機状態または静止状態であることが想定される。
そこで、本実施形態では、センサデータが変位したとき場合に、該当するセンサデータを、学習工程および推論工程の入力に選定する。これにより、装置の状態が変化したと考えられるときに、装置が異常であるかの判定を行うことが可能である。また、本実施形態によれば、学習処理および推論処理に関わるプリンタ600、エッジサーバー300、およびクラウドサーバー200への負荷を軽減することができる。尚、情報処理システム100全体のフローチャート処理、学習、および推論時の基本的な入出力構造は、第1実施形態と同一であるため、説明は省略する。
図15は、第2実施形態において、プリンタ600におけるデータ選定条件判定処理(S1213、S1312)とデータ加工処理(S1214、S1313)との内容を具体的に示したフローチャート図である。
S1501において、プリンタ600は、時刻カウントsのセンサデータを受信する。S1502においてプリンタ600は、前時刻カウントs−1のセンサデータの値と比較する。このとき、値が一致しなかった場合は、S1503に進み、プリンタ600は、時刻カウントsのセンサデータを、学習用または推論用データとして選定する。値が一致した場合、S1501に戻り処理を繰り返す。即ち、プリンタ600は、比較対象時刻のセンサデータと、比較対象時刻よりも所定時刻前のデータとの値が異なる場合に、比較対象時刻のセンサデータを学習用または推論用データとして選定する。
S1504においてプリンタ600は、選定したデータ長がxに達したら、選定したデータを入力としてS1215またはS1314以降の処理を行う。このとき、データ長xは、任意の値であり、学習モデルの推論精度が良くなるように適宜決定すればよい。また、センサデータには、センサが計測した値だけでなく、計測した日時を含めてもよい。本例では、S1502において、1つ前の時刻カウントのセンサデータと値が一致するかを比較したが、nカウント前のセンサデータと値の一致を比較してもよい。また、nカウント前のセンサデータと値が一致しなくなってから、mカウント分の期間はデータを必ず選定するようにし、S1502の判定回数を削減するような処理を行ってもよい。
<<その他の実施形態>>
以上説明した実施形態では、異常予測処理の判定対象となる装置は、プリンタ600である場合を例に挙げて説明したが、これに限られない。異常判定の対象となる装置は、装置が稼働している期間が固定的な期間ではなく、ユーザ操作等に応じて可変となる装置であれば、プリンタ600以外の任意のデバイス400とすることができる。
また、学習段階および推論段階における入力データは、センサから得られた時系列データである例を説明したが、センサから得られたデータに所定の処理を行った後の時系列データを、入力データとしてもよい。
また、異常判定閾値は、学習モデル252の生成時におけるバリデーションデータの統計的な値を用いる例を説明したが、これに限られない。学習済モデル352を用いて判定処理を行った際に用いた予測誤差の統計的な値をさらに加味して、異常判定閾値が決定されてもよい。
上記の実施形態で説明したデータ選定条件判定処理(S1213、S1312)は、種々の態様で行うことができる。例えば、操作パネル605で特定の操作を受け付けたとき、という条件をデータ選定条件としてもよい。例えば、操作パネル605に学習の実行ボタンおよび推論の実行ボタンを設け、実行ボタンが押下されたときのみ、センサデータを選定し、学習および推論が行われるようにしてもよい。また、操作パネルでプリンタ600を動作させる操作、例えば印刷実行が行われる操作またはメンテナンス実行が行われる操作がなされたときのみ、センサデータを選定し、学習および推論が行われるようにしてもよい。
また、データ選定条件判定処理(S1213、S1312)に、装置の外部および内部に設置したデジタルカメラ402の映像を利用してもよい。たとえば、デジタルカメラ402で撮影した映像から、ある判定アルゴリズムで判定を行った判定結果に応じて、データ選定を行ってもよい。
また、データ選定条件判定処理(S1213、S1312)に、装置の外部および内部に設置した音声入出力装置403からの音声を利用してもよい。たとえば、音声入出力装置403の音声から、ある判定アルゴリズムで判定を行った結果に応じて、データ選定を行ってもよい。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワークまたは記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。コンピュータは、1または複数のプロセッサーまたは回路を有し、コンピュータ実行可能命令を読み出し実行するために、分離した複数のコンピュータまたは分離した複数のプロセッサーまたは回路のネットワークを含みうる。
プロセッサーまたは回路は、中央演算処理装置(CPU)、マイクロプロセッシングユニット(MPU)、グラフィクスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートウェイ(FPGA)を含みうる。また、プロセッサーまたは回路は、デジタルシグナルプロセッサ(DSP)、データフロープロセッサ(DFP)、またはニューラルプロセッシングユニット(NPU)を含みうる。
記憶媒体は、非一時的なコンピュータ可読媒体とも称することができる。また、記憶媒体は、1または複数のハードディスク(HD)、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、分散コンピューティングシステムの記憶装置を含みうる。また、記憶媒体は、光ディスク(例えば、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)、またはブルーレイディスク(BD、登録商標))、フラッシュメモリデバイス、及びメモリカードを含みうる。
100 情報処理システム
200 クラウドサーバー
300 エッジサーバー
400 デバイス
600 プリンタ

Claims (25)

  1. デバイスの状態を示す時系列のデータである時系列データを取得する取得手段と、
    前記取得手段で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定手段と、
    前記選定手段によって選定された第一時刻までの前記入力データと、前記第一時刻の後の第二時刻の前記デバイスの状態を示すデータである教師データとに基づいて、前記第一時刻までの入力データを入力した場合に、前記第二時刻に対応する予測値を出力データとして出力するように学習された学習モデルを生成する生成手段と、
    を有することを特徴とする情報処理装置。
  2. デバイスの状態を示す時系列のデータである時系列データを取得する取得手段と、
    前記取得手段で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定手段と、
    前記選定手段によって選定された第一時刻までの前記入力データと、前記第一時刻の後の第二時刻の前記デバイスの状態を示すデータである教師データとに基づいて、前記第一時刻までの入力データを入力した場合に、前記第二時刻に対応する予測値を出力データとして出力する学習モデルを学習部に生成させるための、前記入力データと前記教師データとを含む学習データを送信する送信手段と、
    を有することを特徴とする情報処理装置。
  3. 前記選定手段は、取得した時系列データのうち、正常時のデータであり、かつ前記デバイスが稼働していることを示す条件を満たす時系列データを前記入力データとして選定することを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記選定手段は、前記デバイスのログに基づいて、エラーが発生していない期間のデータを前記正常時のデータと決定することを特徴とする請求項3に記載の情報処理装置。
  5. デバイスの状態を示す時系列のデータである時系列データを取得する取得手段と、
    前記取得手段で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定手段と、
    前記選定手段によって選定された第一時刻の入力データの後の第二時刻の前記デバイスの状態を示すデータである実測値を取得する第二取得手段と、
    前記デバイスが稼働していることを示す条件を満たす第一時刻までの時系列データを入力した場合に、前記第一時刻の後の第二時刻に対応する推論値を出力データとして出力する学習済モデルに対して、前記選定手段によって選定された前記第一時刻までの入力データを入力して得られた推論値と、前記第二取得手段で取得した前記第二時刻の前記実測値と、に基づく情報を出力する出力手段と、
    を有することを特徴とする情報処理装置。
  6. 前記出力手段は、前記推論値と前記第二時刻の前記実測値とのずれ量が、所定の閾値を超える場合、第1情報を出力し、前記所定の閾値より小さい場合、前記第1情報と異なる第2情報を出力することを特徴とする請求項5に記載の情報処理装置。
  7. デバイスの状態を示す時系列のデータである時系列データを取得する取得手段と、
    前記取得手段で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定手段と、
    前記選定手段が選定した第一時刻の入力データの後の第二時刻の前記デバイスの状態を示すデータである実測値を取得する第二取得手段と、
    前記デバイスが稼働していることを示す条件を満たす第一時刻までの時系列データを入力した場合に、前記第一時刻の後の第二時刻に対応する推論値を出力データとして出力する学習済モデルを管理するサーバーに対して、前記選定手段によって選定された前記第一時刻の入力データと、前記第二取得手段で取得した前記実測値とを含む、処理依頼を送信する送信手段と、
    前記処理依頼に応じて、前記サーバーにおいて前記第一時刻までの入力データを前記学習済モデルに入力して得られた推論値と、前記実測値と、に基づき送信される情報を受信する受信手段と、
    前記受信手段により受信された前記情報に基づいて、表示手段に所定の表示を出力する制御手段と、
    を有することを特徴とする情報処理装置。
  8. 前記制御手段は、前記受信手段により受信された前記情報に基づいて、前記表示手段に前記所定の表示として前記デバイスが異常であることを示す表示を出力することを特徴とする請求項7に記載の情報処理装置。
  9. 前記受信手段は、前記サーバーにおいて前記推論値と、前記実測値とのずれ量が、所定の閾値を超える場合、第1情報を受信し、前記所定の閾値より小さい場合、前記第1情報と異なる第2情報を受信することを特徴とする請求項7または8に記載の情報処理装置。
  10. 前記所定の閾値は、前記学習済モデルの生成に用いられたバリデーションデータに基づいて決定されることを特徴とする請求項6または9に記載の情報処理装置。
  11. 前記所定の閾値は、前記学習済モデルの生成の元となる学習モデルに前記バリデーションデータのうちの入力データを入力したときに前記学習モデルから出力された出力データと、前記バリデーションデータのうちの教師データとのずれ量に基づく統計的な値であることを特徴とする請求項10に記載の情報処理装置。
  12. 前記所定の閾値は、前記ずれ量の平均値であることを特徴とする請求項10または11に記載の情報処理装置。
  13. 前記選定手段は、前記デバイスが、静止中、待機中、または初期化処理中でない場合に、前記デバイスが稼働していると決定することを特徴とする請求項1から12のいずれか一項に記載の情報処理装置。
  14. 前記選定手段は、前記取得手段が取得した時系列データにおいて、比較対象時刻のデータと、前記比較対象時刻よりも所定時刻前のデータとの値が異なる場合に、前記比較対象時刻の時系列データを前記入力データとして選定することを特徴とする請求項1から12のいずれか一項に記載の情報処理装置。
  15. 前記選定手段は、前記デバイスの操作パネルにおいて特定の操作がされた場合に得られる時系列データを前記入力データとして選定することを特徴とする請求項1から12のいずれか一項に記載の情報処理装置。
  16. 前記選定手段は、前記デバイスを撮影した映像または前記デバイスの音声を入力とした判定アルゴリズムで、特定の判定結果が出た場合に、時系列データを前記入力データとして選定することを特徴とする請求項1から12のいずれか一項に記載の情報処理装置。
  17. 前記デバイスの状態を示すデータは、前記デバイスの状態を検知するセンサが検知して得られたデータであることを特徴とする請求項1から16のいずれか一項に記載の情報処理装置。
  18. 前記時系列データは、複数のセンサのデータを集合したデータであることを特徴とする請求項1から17のいずれか一項に記載の情報処理装置。
  19. デバイスの状態を示す時系列のデータである時系列データを取得する取得手段と、
    前記取得手段で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定手段と、
    前記選定手段によって選定された第一時刻までの前記入力データと、前記第一時刻の後の第二時刻の前記デバイスの状態を示すデータである教師データとに基づいて、前記第一時刻までの入力データを入力した場合に、前記第二時刻に対応する予測値を出力データとして出力するように学習された学習モデルを生成する生成手段と、
    を有することを特徴とする情報処理システム。
  20. デバイスの状態を示す時系列のデータである時系列データを取得する取得手段と、
    前記取得手段で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定手段と、
    前記選定手段によって選定された第一時刻の入力データの後の第二時刻の前記デバイスの状態を示すデータである実測値を取得する第二取得手段と、
    前記デバイスが稼働していることを示す条件を満たす第一時刻までの時系列データを入力した場合に、前記第一時刻の後の第二時刻に対応する推論値を出力データとして出力する学習済モデルに対して、前記選定手段によって選定された前記第一時刻までの入力データを入力して得られた推論値と、前記第二取得手段で取得した前記第二時刻の前記実測値と、に基づく情報を出力する出力手段と、
    を有することを特徴とする情報処理システム。
  21. デバイスの状態を示す時系列のデータである時系列データを取得する取得手段と、
    前記取得手段で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定手段と、
    前記選定手段によって選定された第一時刻までの前記入力データと、前記第一時刻の後の第二時刻の前記デバイスの状態を示すデータである教師データとに基づいて、前記第一時刻までの入力データを入力した場合に、前記第二時刻に対応する予測値を出力データとして出力するように学習された学習済モデルを生成する生成手段と、
    前記選定手段によって選定された第三時刻の入力データの後の第四時刻の前記デバイスの状態を示すデータである実測値を取得する第二取得手段と、
    前記選定手段によって選定された前記第三時刻の入力データを前記学習済モデルに入力した場合に得られた前記第四時刻の推論値と、前記第二取得手段で取得した前記第四時刻の前記実測値と、に基づく情報を出力する出力手段と、
    を有することを特徴とする情報処理システム。
  22. デバイスの状態を示す時系列のデータである時系列データを取得する取得工程と、
    前記取得工程で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定工程と、
    前記選定工程によって選定された第一時刻までの前記入力データと、前記第一時刻の後の第二時刻の前記デバイスの状態を示すデータである教師データとに基づいて、前記第一時刻までの入力データを入力した場合に、前記第二時刻に対応する予測値を出力データとして出力するように学習された学習モデルを生成する生成工程と、
    を有することを特徴とする学習モデルの生成方法。
  23. デバイスの状態を示す時系列のデータである時系列データを取得する取得工程と、
    前記取得工程で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定工程と、
    前記選定工程が選定した第一時刻の入力データの後の第二時刻の前記デバイスの状態を示すデータである実測値を取得する第二取得工程と、
    前記デバイスが稼働していることを示す条件を満たす第一時刻までの時系列データを入力した場合に、前記第一時刻の後の第二時刻に対応する推論値を出力データとして出力する学習済モデルに対して、前記選定工程によって選定された前記第一時刻までの入力データを入力して得られた推論値と、前記第二取得工程で取得した前記第二時刻の前記実測値と、に基づく情報を出力する出力工程と、
    を有することを特徴とする異常予測方法。
  24. デバイスの状態を示す時系列のデータである時系列データを取得する取得工程と、
    前記取得工程で取得した時系列データのうち、前記デバイスが稼働していることを示す条件を満たす時系列データを入力データとして選定する選定工程と、
    前記選定工程によって選定された第一時刻までの前記入力データと、前記第一時刻の後の第二時刻の前記デバイスの状態を示すデータである教師データとに基づいて、前記第一時刻までの入力データを入力した場合に、前記第二時刻に対応する予測値を出力データとして出力するように学習された学習済モデルを生成する生成工程と、
    前記選定工程によって選定された第三時刻の入力データの後の第四時刻の前記デバイスの状態を示すデータである実測値を取得する第二取得工程と、
    前記選定工程によって選定された前記第三時刻の入力データを前記学習済モデルに入力した場合に得られた前記第四時刻の推論値と、前記第二取得工程で取得した前記第四時刻の前記実測値と、に基づく情報を出力する出力工程と、
    を有することを特徴とする異常予測方法。
  25. コンピュータを、請求項1から18のいずれか一項に記載の情報処理装置が有する各手段として機能させるためのプログラム。
JP2019187646A 2019-10-11 2019-10-11 情報処理装置、情報処理システム、学習モデルの生成方法、異常予測方法、およびプログラム Active JP7391601B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019187646A JP7391601B2 (ja) 2019-10-11 2019-10-11 情報処理装置、情報処理システム、学習モデルの生成方法、異常予測方法、およびプログラム
US17/066,498 US11461057B2 (en) 2019-10-11 2020-10-09 Information processing system that generates a learning model based on selected input data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019187646A JP7391601B2 (ja) 2019-10-11 2019-10-11 情報処理装置、情報処理システム、学習モデルの生成方法、異常予測方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2021064099A true JP2021064099A (ja) 2021-04-22
JP7391601B2 JP7391601B2 (ja) 2023-12-05

Family

ID=75383704

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019187646A Active JP7391601B2 (ja) 2019-10-11 2019-10-11 情報処理装置、情報処理システム、学習モデルの生成方法、異常予測方法、およびプログラム

Country Status (2)

Country Link
US (1) US11461057B2 (ja)
JP (1) JP7391601B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113781873A (zh) * 2021-09-17 2021-12-10 泰顺县华工启明星培训学校有限公司 一种人工智能教学远程无线烧写主板
EP4206838A1 (en) 2021-12-29 2023-07-05 Petkim Petrokimya Holding A.S. Forecasting and anomaly detection method for low density polyethylene autoclave reactor

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021117877A (ja) * 2020-01-29 2021-08-10 セイコーエプソン株式会社 デバイス管理システム、サーバー、およびデバイス管理システムの制御方法
JP2022029702A (ja) * 2020-08-05 2022-02-18 キヤノン株式会社 学習システム、電子機器、及びその制御方法、並びにプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018063545A (ja) * 2016-10-12 2018-04-19 横河電機株式会社 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体
JP2018073241A (ja) * 2016-11-01 2018-05-10 日本電信電話株式会社 検知装置、検知方法および検知プログラム
WO2019142331A1 (ja) * 2018-01-19 2019-07-25 株式会社日立製作所 障害予測システムおよび障害予測方法
JP2021033842A (ja) * 2019-08-28 2021-03-01 株式会社東芝 状態監視装置、方法及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6782495B2 (en) * 2001-06-19 2004-08-24 Xerox Corporation Method for analyzing printer faults
US7519564B2 (en) * 2004-11-16 2009-04-14 Microsoft Corporation Building and using predictive models of current and future surprises
US7730364B2 (en) * 2007-04-05 2010-06-01 International Business Machines Corporation Systems and methods for predictive failure management
JP6896432B2 (ja) 2017-01-11 2021-06-30 株式会社Ye Digital 故障予知方法、故障予知装置および故障予知プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018063545A (ja) * 2016-10-12 2018-04-19 横河電機株式会社 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体
JP2018073241A (ja) * 2016-11-01 2018-05-10 日本電信電話株式会社 検知装置、検知方法および検知プログラム
WO2019142331A1 (ja) * 2018-01-19 2019-07-25 株式会社日立製作所 障害予測システムおよび障害予測方法
JP2021033842A (ja) * 2019-08-28 2021-03-01 株式会社東芝 状態監視装置、方法及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113781873A (zh) * 2021-09-17 2021-12-10 泰顺县华工启明星培训学校有限公司 一种人工智能教学远程无线烧写主板
EP4206838A1 (en) 2021-12-29 2023-07-05 Petkim Petrokimya Holding A.S. Forecasting and anomaly detection method for low density polyethylene autoclave reactor

Also Published As

Publication number Publication date
US20210109687A1 (en) 2021-04-15
JP7391601B2 (ja) 2023-12-05
US11461057B2 (en) 2022-10-04

Similar Documents

Publication Publication Date Title
JP2021064099A (ja) 情報処理装置、情報処理システム、学習モデルの生成方法、異常予測方法、およびプログラム
JP6847591B2 (ja) 異常検知システム、モデル生成装置、異常検知装置、異常検知方法、モデル生成プログラム、および、異常検知プログラム
US11151850B2 (en) Presence detection based on signal data
KR101510860B1 (ko) 사용자 의도 파악 어플리케이션 서비스 방법 및 서버와 이를 이용한 사용자 의도 파악 어플리케이션 서비스 시스템
JP5948938B2 (ja) データ生成装置、方法およびプログラム
JP2018119924A (ja) 診断装置
US20200105411A1 (en) Contextually Grouping Sensor Channels For Healthcare Monitoring
EP2791829B1 (en) Method for rule-based context acquisition
JPWO2018216197A1 (ja) 異常重要度算出システム、異常重要度算出装置、及び異常重要度算出プログラム
JPWO2020003460A1 (ja) 異常検知装置
WO2018216258A1 (ja) 処理装置、処理方法及びプログラム
KR101183124B1 (ko) 상황 모니터링을 지원하는 모바일 장치, 이를 이용하는 상황 모니터링 방법 및 이를 포함하는 상황 모니터링 시스템
EP3295567B1 (en) Pattern-based data collection for a distributed stream data processing system
US20160299966A1 (en) System and Method for Creation and Detection of Process Fingerprints for Monitoring in a Process Plant
JP6828633B2 (ja) データ処理装置及びその制御方法、並びにプログラム
US20150161021A1 (en) Terminal device, system, and method for processing sensor data stream
KR102273908B1 (ko) 산업용 빅데이터 서버를 위한 냉각 시스템
KR20200104816A (ko) 복합 이상행동 탐지를 위한 영상 분석기 및 영상 분석 방법
JP7215574B2 (ja) 監視システム、監視方法及びプログラム
KR102074412B1 (ko) IoT 전력레벨 조절 장치
Novilla et al. The use of fuzzy logic for online monitoring of manufacturing machine: An intelligent system
KR101996237B1 (ko) 분산처리를 통한 IoT 센서 디바이스 및 플랫폼
KR20190108515A (ko) 인공 신경망 데이터 처리기를 포함하는 센서 장치
JP2018190281A (ja) データ処理装置、データ処理方法およびプログラム
US11934284B2 (en) Method and system for synthetic application monitoring

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230523

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230710

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231024

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231122

R151 Written notification of patent or utility model registration

Ref document number: 7391601

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151