(57)【要約】【課題】異常を診断する精度を向上させることができる診断装置、学習装置および診断システムを提供する。【解決手段】対象装置の動作の種類ごとに定められる複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報を、対象装置から取得する第１取得部と、対象装置の動作に応じて変化する物理量を検知する検知部から出力される検知情報を取得する第２取得部と、コンテキスト情報を、学習装置に送信する第１送信部と、検知情報を、学習装置に送信する第２送信部と、同一または類似であるコンテキスト情報にそれぞれ対応する検知情報から生成されたモデルを結合する学習装置から、第１送信部により送信されたコンテキスト情報に対応するモデルを取得する第３取得部と、第２取得部により取得された検知情報と、第３取得部により取得されたモデルと、を用いて、対象装置の動作が正常であるか否かを判定する第１判定部と、を備える。【選択図】図４
2018025945.tif 000002
【特許請求の範囲】
【請求項１】
対象装置の動作の種類ごとに定められる複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報を、前記対象装置から取得する第１取得部と、
前記対象装置の動作に応じて変化する物理量を検知する検知部から出力される検知情報を取得する第２取得部と、
前記第１取得部により取得されたコンテキスト情報を、学習装置に送信する第１送信部と、
前記第２取得部により取得された前記検知情報を、前記学習装置に送信する第２送信部と、
各コンテキスト情報に対して同一または類似であるか否かを判定し、同一または類似であるコンテキスト情報にそれぞれ対応する前記検知情報から生成されたモデルを結合する前記学習装置から、前記第１送信部により送信されたコンテキスト情報に対応するモデルを取得する第３取得部と、
前記第２取得部により取得された前記検知情報と、前記第３取得部により取得された前記モデルと、を用いて、前記対象装置の動作が正常であるか否かを判定する第１判定部と、
を備えた診断装置。
【請求項２】
前記第１送信部は、前記第１取得部により取得されたコンテキスト情報に対応する前記検知情報が前記第２送信部により送信される前に、該コンテキスト情報を前記学習装置に送信し、
前記第２送信部は、前記学習装置が、前記第１送信部により送信されたコンテキスト情報に基づいて、該コンテキスト情報に対応する前記検知情報を取得して該検知情報からモデルを生成または結合することが必要であると判定した場合、該検知情報を前記学習装置に送信する請求項１に記載の診断装置。
【請求項３】
前記第１取得部により取得されたコンテキスト情報をハッシュ化してハッシュ値を求めるハッシュ化部と、
前記第２取得部により取得された検知情報を暗号化する暗号化部と、
を、さらに備え、
前記第１送信部は、前記ハッシュ化部によりハッシュ化されたコンテキスト情報である前記ハッシュ値を、前記学習装置に送信し、
前記第２送信部は、前記暗号化部により暗号化された前記検知情報を、前記学習装置に送信し、
前記第３取得部は、各ハッシュ値に対して同一または類似であるか否かを判定し、同一または類似であるハッシュ値にそれぞれ対応する暗号化された前記検知情報から生成されたモデルを結合する前記学習装置から、前記第１送信部により送信されたハッシュ値に対応するモデルを取得する請求項１または２に記載の診断装置。
【請求項４】
前記ハッシュ化部は、前記コンテキスト情報の要素の特定の組み合わせをハッシュ化してハッシュ値を求める請求項３に記載の診断装置。
【請求項５】
前記第１取得部により取得されたコンテキスト情報に対応する前記検知情報からモデルを生成して、該モデルを、コンテキスト情報とモデルとを関連付けて記憶する前記学習装置に送信する生成部を、さらに備えた請求項１〜４のいずれか一項に記載の診断装置。
【請求項６】
前記第３取得部は、前記第１送信部により送信されたコンテキスト情報に対応する前記第２送信部により送信された前記検知情報からモデルを生成する前記学習装置から、該第１送信部により送信されたコンテキスト情報に対応するモデルを取得する請求項１〜４のいずれか一項に記載の診断装置。
【請求項７】
対象装置の動作の種類ごとに定められる複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報を取得した診断装置から該コンテキスト情報を取得する第４取得部と、
前記対象装置の動作に応じて変化する物理量を検知する検知部から出力される検知情報を取得した前記診断装置から該検知情報を取得する第５取得部と、
前記第４取得部により取得されたコンテキスト情報に対応する前記検知情報からモデルを生成する生成部と、
各コンテキスト情報に対して同一または類似であるか否かを判定する第２判定部と、
前記第２判定部により同一または類似であると判定されたコンテキスト情報にそれぞれ対応する前記モデルを結合する結合部と、
前記診断装置から取得したモデル取得要求に応じて、共に取得したコンテキスト情報に対応するモデルを選択して、該診断装置に送信する選択部と、
を備えた学習装置。
【請求項８】
前記第２判定部は、各コンテキスト情報のうち、加工条件が同一または類似である場合、前記各コンテキスト情報が同一または類似であると判定する請求項７に記載の学習装置。
【請求項９】
前記第２判定部は、各コンテキスト情報に含まれる加工条件のうち、少なくともいずれかの値が閾値で規定される所定範囲内にある場合、前記各コンテキスト情報が同一または類似であると判定する請求項７に記載の学習装置。
【請求項１０】
前記第２判定部は、各コンテキスト情報に含まれる前記対象装置の加工装置を識別する識別情報、または、前記各コンテキスト情報にそれぞれ対応する前記検知情報の信号処理の結果のうち少なくともいずれか一方が同一または類似である場合、該各コンテキスト情報が同一または類似であると判定する請求項７に記載の学習装置。
【請求項１１】
前記第４取得部は、前記診断装置によってハッシュ化されたコンテキスト情報であるハッシュ値を取得し、
前記第５取得部は、前記診断装置によって暗号化された前記検知情報を取得し、
前記生成部は、前記第４取得部により取得されたハッシュ値に対応する暗号化された前記検知情報からモデルを生成する請求項７〜１０のいずれか一項に記載の学習装置。
【請求項１２】
対象装置の動作が正常か否かを判定する診断装置と、前記診断装置による判定動作に用いられるモデルを記憶する学習装置と、備えた診断システムであって、
前記診断装置は、
前記対象装置の動作の種類ごとに定められる複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報を、該対象装置から取得する第１取得部と、
前記対象装置の動作に応じて変化する物理量を検知する検知部から出力される検知情報を取得する第２取得部と、
前記第１取得部により取得されたコンテキスト情報を、前記学習装置に送信する第１送信部と、
前記第２取得部により取得された前記検知情報を、前記学習装置に送信する第２送信部と、
前記学習装置に対して前記第１送信部により送信されたコンテキスト情報と共にモデル取得要求を送信し、該コンテキスト情報に対応するモデルを該学習装置から取得する第３取得部と、
前記第２取得部により取得された前記検知情報と、前記第３取得部により取得された前記モデルと、を用いて、前記対象装置の動作が正常であるか否かを判定する第１判定部と、
を備え、
前記学習装置は、
前記第１送信部から送信されたコンテキスト情報を取得する第４取得部と、
前記第２送信部から送信された前記検知情報を取得する第５取得部と、
前記第４取得部により取得されたコンテキスト情報に対応する前記検知情報からモデルを生成する生成部と、
各コンテキスト情報に対して同一または類似であるか否かを判定する第２判定部と、
前記第２判定部により同一または類似であると判定されたコンテキスト情報にそれぞれ対応する前記モデルを結合する結合部と、
前記第３取得部から受信した前記モデル取得要求に応じて、共に受信したコンテキスト情報に対応するモデルを選択して、該第３取得部に送信する選択部と、
を備えた診断システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、診断装置、学習装置および診断システムに関する。
【背景技術】
【０００２】
加工機等の工作機械において、加工条件に基づく動作状態ごとに、集音手段によって集音した動作音データと、予め用意した動作音データとを比較して、工作機械の動作の異常の有無を判定する技術が知られている。一般的には、検知（集音）した動作音データ等の検知情報をモニタし、設定した閾値と比較して、異常を検知する方法が取られる。この場合、学習データを対象に、検知情報と類似度の高いデータの線形結合により推定値を算出し、推定値と観測データとのはずれ度合いを求める。そして、評価する検知情報と、モデル化した学習データとの類似度により検知情報の異常の有無を判定する。
【０００３】
このような、動作の異常を判定する技術として、複数のセンサデータから学習モデルを生成し、観測データとの類似度の差異により、異常を判定する技術が開示されている（特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載された技術では、学習モデルを生成するにあたり、異常があったか否かを影響度として考慮してモデルの生成および制御閾値の設定等を行っており、異常判定の正しい結果を得るためには、異常自体を何回か発生させないと、より精度の高い異常判定ができないという問題があった。また、学習モデルを生成するにあたり、その個別の設備ごとに異常判定結果の再入力が必要となり、学習モデルの精度または完成度を向上させるためには時間がかかってしまうという問題もあった。
【０００５】
本発明は、上述の課題に鑑みてなされたものであって、異常を診断する精度を向上させることができる診断装置、学習装置および診断システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、対象装置の動作の種類ごとに定められる複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報を、前記対象装置から取得する第１取得部と、前記対象装置の動作に応じて変化する物理量を検知する検知部から出力される検知情報を取得する第２取得部と、前記第１取得部により取得されたコンテキスト情報を、学習装置に送信する第１送信部と、前記第２取得部により取得された前記検知情報を、前記学習装置に送信する第２送信部と、各コンテキスト情報に対して同一または類似であるか否かを判定し、同一または類似であるコンテキスト情報にそれぞれ対応する前記検知情報から生成されたモデルを結合する前記学習装置から、前記第１送信部により送信されたコンテキスト情報に対応するモデルを取得する第３取得部と、前記第２取得部により取得された前記検知情報と、前記第３取得部により取得された前記モデルと、を用いて、前記対象装置の動作が正常であるか否かを判定する第１判定部と、を備える。
【発明の効果】
【０００７】
本発明によれば、異常を診断する精度を向上させることができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施形態に係る診断システムの全体構成の一例を示す図である。
【図２】図２は、第１の実施形態の加工機のハードウェア構成の一例を示す図である。
【図３】図３は、第１の実施形態に係る診断装置および学習装置のハードウェア構成の一例を示す図である。
【図４】図４は、第１の実施形態に係る診断システムの機能ブロックの構成の一例を示す図である。
【図５】図５は、第１の実施形態における診断処理の一例を示すフローチャートである。
【図６】図６は、第１の実施形態におけるモデル生成処理の一例を示すフローチャートである。
【図７】図７は、第１の実施形態におけるモデル生成処理および診断処理の具体例を説明する図である。
【図８】図８は、一部のコンテキスト情報についてモデル生成処理および診断処理を行う具体例を説明する図である。
【図９】図９は、共通のモデルを他の加工工程で使用する例を説明する図である。
【図１０】図１０は、モデルが生成されていないコンテキスト情報が入力された場合にモデルを生成する動作を説明する図である。
【図１１】図１１は、第１の実施形態におけるモデル結合処理の一例を示すフローチャートである。
【図１２】図１２は、コンテキスト情報とモデルとを関連付けるテーブルの一例を示す図である。
【図１３】図１３は、第１の実施形態の変形例１−２における学習装置により必要と判定されたセンサデータを送信する動作の一例を示すフローチャートである。
【図１４】図１４は、第２の実施形態に係る診断システムの機能ブロックの構成の一例を示す図である。
【図１５】図１５は、第２の実施形態における暗号化を説明する図である。
【図１６】図１６は、第２の実施形態における暗号化を説明する図である。
【図１７】図１７は、第２の実施形態における暗号化を説明する図である。
【図１８】図１８は、コンテキスト情報の要素の組み合わせを設定する画面の一例を示す図である。
【図１９】図１９は、第２の実施形態におけるコンテキスト情報およびセンサデータを暗号化して送信する動作の一例を示すフローチャートである。
【図２０】図２０は、ハッシュ値とセンサデータとを関連付けるテーブルの一例を示す図である。
【図２１】図２１は、ハッシュ値とモデルとを関連付けるテーブルの一例を示す図である。
【図２２】図２２は、第２の実施形態におけるモデル結合処理の一例を示すフローチャートである。
【図２３】図２３は、第２の実施形態における診断処理の一例を示すフローチャートである。
【図２４】図２４は、第３の実施形態に係る診断システムの機能ブロックの構成の一例を示す図である。
【図２５】図２５は、第３の実施形態による処理の具体例を説明するための図である。
【図２６】図２６は、検知情報の決定に用いられる対応情報のデータ構造の一例を示す図である。
【図２７】図２７は、コンテキスト情報と加工区間との関係の例を示す図である。
【図２８】図２８は、加工区間の特定方法の一例を示す図である。
【図２９】図２９は、尤度と判定値ｒ（ｋ）との関係の一例を示すグラフである。
【図３０】図３０は、尤度の経時変化の一例を示す図である。
【図３１】図３１は、複数の閾値を用いる例を説明するための図である。
【図３２】図３２は、複数の閾値を用いる例を説明するための図である。
【図３３−１】図３３−１は、変形例５による判定方法の一例を説明するための図である。
【図３３−２】図３３−２は、変形例５による判定方法の一例を説明するための図である。
【図３３−３】図３３−３は、変形例５による判定方法の一例を説明するための図である。
【図３４−１】図３４−１は、変形例６による判定方法の一例を説明するための図である。
【図３４−２】図３４−２は、変形例６による判定方法の一例を説明するための図である。
【図３４−３】図３４−３は、変形例６による判定方法の一例を説明するための図である。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、本発明に係る診断装置、学習装置および診断システムの一実施形態を詳細に説明する。
【００１０】
［第１の実施形態］
（診断システムの全体構成）
図１は、第１の実施形態に係る診断システムの全体構成の一例を示す図である。図１を参照しながら、本実施形態に係る診断システム１の全体構成について説明する。
【００１１】
図１に示すように、例えば、診断システム１＿１は、加工機２００＿１に設置されたセンサ５７＿１と、診断装置１００＿１と、学習装置３００と、を含む。また、診断システム１＿２は、加工機２００＿２に設置されたセンサ５７＿２と、診断装置１００＿２と、学習装置３００と、を含む。
【００１２】
ここで、診断システム１＿１、１＿２について、任意の診断システムを示す場合、または総称する場合、単に「診断システム１」と称するものとする。診断装置１００＿１、１００＿２について、任意の診断装置を示す場合、または総称する場合、単に「診断装置１００」と称するものとする。加工機２００＿１、２００＿２について、任意の加工機を示す場合、または総称する場合、単に「加工機２００」と称するものとする。センサ５７＿１、５７＿２について、任意のセンサを示す場合、または総称する場合、単に「センサ５７」と称するものとする。すなわち、診断システム１は、加工機２００に設置されたセンサ５７と、診断装置１００と、学習装置３００と、を含む。加工機２００は、診断装置１００による診断の対象となる対象装置の一例である。
【００１３】
診断装置１００は、加工機２００の動作について異常の診断を行う装置である。図１に示すように、診断装置１００は、ネットワーク２を介して、学習装置３００と通信可能な構成となっている。ネットワーク２は、専用の接続線、有線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等の有線ネットワーク、無線ネットワークまたはインターネット等である。
【００１４】
加工機２００は、工具を用いて、加工対象に対して切削、研削または研磨等の加工を行う工作機械である。加工機２００は、診断装置１００による診断の対象となる対象装置の一例である。
【００１５】
学習装置３００は、診断装置１００から受信した検知情報から、学習処理によって診断装置１００の診断処理で用いるモデルを生成するサーバ装置である。なお、学習装置３００は、クラウドサービス上に存在しているものとしてもよい。
【００１６】
センサ５７は、加工機２００に設置されたドリル、エンドミル、バイトチップ、または砥石等の工具が発する振動または音等の物理量を検知し、検知した物理量の情報を検知情報（センサデータ）として診断装置１００へ出力する。センサ５７は、例えば、マイク、加速度センサ、またはＡＥセンサ等で構成される。
【００１７】
加工機２００と診断装置１００とは、どのような接続形態で接続されてもよい。例えば、加工機２００と診断装置１００とは、専用の接続線、有線ＬＡＮ等の有線ネットワーク、または、無線ネットワーク等により接続される。
【００１８】
なお、センサ５７の個数は任意であってよい。また、同一の物理量を検知する複数のセンサ５７を備えてもよいし、相互に異なる物理量を検知する複数のセンサ５７を備えてもよい。
【００１９】
また、センサ５７は、加工機２００に予め備えられているものとしてもよく、または、完成機械である加工機２００に対して後から取り付けられるものとしてもよい。
【００２０】
（加工機のハードウェア構成）
図２は、第１の実施形態の加工機のハードウェア構成の一例を示す図である。図２に示すように、加工機２００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）５２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５３と、通信Ｉ／Ｆ（インターフェース）５４と、駆動制御回路５５と、がバス５８で接続された構成となっている。センサ５７は、診断装置１００に通信可能に接続されている。
【００２１】
ＣＰＵ５１は、加工機２００の全体を制御する。ＣＰＵ５１は、例えば、ＲＡＭ５３をワークエリア（作業領域）としてＲＯＭ５２等に格納されたプログラムを実行することで、加工機２００全体の動作を制御し、加工機能を実現する。
【００２２】
通信Ｉ／Ｆ５４は、診断装置１００等の外部装置と通信するためのインターフェースである。駆動制御回路５５は、モータ５６の駆動を制御する回路である。モータ５６は、ドリル、砥石、カッタ、および、テーブル等の加工に用いる工具を駆動する。センサ５７は、加工機２００の動作に応じて変化する物理量（例えば、モータ５６によって回転駆動される工具の振動波形）を検知し、その検知情報を診断装置１００へ出力する。
【００２３】
（診断装置および学習装置のハードウェア構成）
図３は、第１の実施形態に係る診断装置および学習装置のハードウェア構成の一例を示す図である。ここでは、診断装置１００を例にしてハードウェア構成について説明するが、学習装置３００のハードウェア構成も同様である。
【００２４】
図３に示すように、診断装置１００は、ＣＰＵ６１と、ＲＯＭ６２と、ＲＡＭ６３と、通信Ｉ／Ｆ６４と、センサＩ／Ｆ６５と、入出力Ｉ／Ｆ６６と、補助記憶装置６７と、がバス６８で接続された構成となっている。
【００２５】
ＣＰＵ６１は、診断装置１００の全体を制御する。ＣＰＵ６１は、例えば、ＲＡＭ６３をワークエリア（作業領域）としてＲＯＭ６２等に格納されたプログラムを実行することで、診断装置１００全体の動作を制御し、診断機能を実現する。
【００２６】
通信Ｉ／Ｆ６４は、加工機２００等の外部装置と通信するためのインターフェースである。センサＩ／Ｆ６５は、加工機２００に設置されたセンサ５７から検知情報を受信するためのインターフェースである。
【００２７】
入出力Ｉ／Ｆ６６は、各種装置（例えば、入力装置６６ａおよびディスプレイ６６ｂ）とバス６８とを接続するためのインターフェースである。
【００２８】
入力装置６６ａは、文字および数字等の入力、各種指示の選択、ならびにカーソルの移動等の操作を行うためのマウスまたはキーボード等の入力装置である。
【００２９】
ディスプレイ６６ｂは、カーソル、メニュー、ウィンドウ、文字または画像等の各種情報を表示するＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、プラズマディスプレイ、または有機ＥＬ（Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ等の表示装置である。
【００３０】
補助記憶装置６７は、診断装置１００の設定情報、加工機２００から受信された検知情報、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、およびアプリケーションプログラム等の各種データを記憶するＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、またはＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の不揮発性の記憶装置である。なお、補助記憶装置６７は、診断装置１００が備えるものとしているが、これに限定されるものではなく、例えば、診断装置１００の外部に設置された記憶装置であってもよく、または、診断装置１００とデータ通信可能なサーバ装置が備えた記憶装置であってもよい。
【００３１】
なお、図３に示したハードウェア構成は一例であり、学習装置３００の場合、センサＩ／Ｆ６５は備えている必要はない。また、例えば、学習装置３００において、入力装置６６ａおよびディスプレイ６６ｂが不要であれば、備えている必要はない。
【００３２】
（診断システムの機能ブロックの構成および動作）
図４は、第１の実施形態に係る診断システムの機能ブロックの構成の一例を示す図である。図４を参照しながら、本実施形態に係る診断システム１および加工機２００の機能ブロックの構成および動作について説明する。
【００３３】
図４に示すように、加工機２００は、数値制御部２０１と、通信制御部２０２と、駆動制御部２０３と、駆動部２０４と、検知部２１１と、を有する。
【００３４】
数値制御部２０１は、駆動部２０４による加工を数値制御（ＮＣ：Ｎｕｍｅｒｉｃａｌ  Ｃｏｎｔｒｏｌ）により実行する機能部である。例えば、数値制御部２０１は、駆動部２０４の動作を制御するための数値制御データを生成して出力する。また、数値制御部２０１は、コンテキスト情報を通信制御部２０２に出力する。ここで、コンテキスト情報とは、加工機２００の動作の種類ごとに複数定められる情報である。コンテキスト情報は、例えば、工作機械（加工機２００）の識別情報、駆動部２０４の識別情報、駆動部２０４の動作状態、駆動部２０４の使用開始からの累積使用時間、駆動部２０４に係る負荷、ならびに、駆動部２０４の回転数、駆動部２０４の加工速度、駆動部２０４の大きさ、駆動部２０４に駆動される工具の径、および工具の材質等の加工条件等を示す情報である。
【００３５】
数値制御部２０１は、例えば、現在の加工機２００の動作を示すコンテキスト情報を、通信制御部２０２を介して診断装置１００に送信する。数値制御部２０１は、加工対象を加工する際、加工の工程に応じて、駆動する駆動部２０４の種類、または駆動部２０４の駆動状態（回転数、回転速度等）を変更する。数値制御部２０１は、動作の種類を変更するごとに、変更した動作の種類に対応するコンテキスト情報を、通信制御部２０２を介して診断装置１００に逐次送信する。数値制御部２０１は、例えば、図２に示すＣＰＵ５１で動作するプログラムによって実現される。
【００３６】
通信制御部２０２は、診断装置１００等の外部装置との間の通信を制御する機能部である。例えば、通信制御部２０２は、現在の動作に対応するコンテキスト情報を診断装置１００に送信する。通信制御部２０２は、例えば、図２に示す通信Ｉ／Ｆ５４、およびＣＰＵ５１で動作するプログラムによって実現される。
【００３７】
駆動制御部２０３は、数値制御部２０１により求められた数値制御データに基づいて、駆動部２０４を駆動制御する機能部である。駆動制御部２０３は、例えば、図２に示す駆動制御回路５５によって実現される。
【００３８】
駆動部２０４は、駆動制御部２０３による駆動制御の対象となる機能部である。駆動部２０４は、駆動制御部２０３による制御によって工具を駆動する。駆動部２０４は、例えば、モータ等であり、加工に用いられ、数値制御の対象となるものであればどのようなものであってもよい。なお、駆動部２０４は、２以上備えられていてもよい。駆動部２０４は、駆動制御部２０３によって駆動制御されるアクチュエータであり、例えば、図２に示すモータ５６等によって実現される。
【００３９】
検知部２１１は、加工機２００に設置されたドリル、エンドミル、バイトチップ、または砥石等の工具が発する振動または音等の物理量を検知し、検知した物理量の情報を検知情報（センサデータ）として診断装置１００へ出力する機能部である。検知部２１１は、図２に示すセンサ５７によって実現される。なお、検知部２１１の個数は任意である。例えば、同一の物理量を検知する複数の検知部２１１を備えてもよいし、相互に異なる物理量を検知する複数の検知部２１１を備えてもよい。
【００４０】
例えば、加工に用いる刃の折れ、および、刃のチッピング等が発生すると、加工時の音が変化する。このため、検知部２１１（マイク）で音響データを検知し、正常音を示すモデル等と比較することにより、加工機２００の動作の異常が検知可能となる。
【００４１】
なお、図４に示す数値制御部２０１および通信制御部２０２は、図２に示すＣＰＵ５１にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等のハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００４２】
図４に示すように、診断装置１００は、通信制御部１０１と、検知情報受信部１０２（第２取得部）と、加工情報取得部１０３（第１取得部）と、特徴抽出部１０４と、モデル取得部１０５（第３取得部）と、判定部１０６（第１判定部）と、記憶部１０７と、を有する。
【００４３】
通信制御部１０１は、加工機２００および学習装置３００等の外部装置との間の通信を制御する機能部である。通信制御部１０１は、例えば、図３に示す通信Ｉ／Ｆ６４、およびＣＰＵ６１で動作するプログラムによって実現される。通信制御部１０１は、第１受信部１０１ａと、第１送信部１０１ｂと、第２受信部１０１ｃと、第２送信部１０１ｄと、を有する。
【００４４】
第１受信部１０１ａは、加工機２００の数値制御部２０１から、通信制御部２０２を介して、コンテキスト情報を受信する機能部である。第１送信部１０１ｂは、加工機２００に対して各種情報を送信する機能部である。第２受信部１０１ｃは、学習装置３００から各種情報（例えば、診断装置１００による診断処理で用いるモデル）を受信する機能部である。第２送信部１０１ｄは、学習装置３００に対して各種情報を送信する機能部である。
【００４５】
検知情報受信部１０２は、加工機２００に設置された検知部２１１から検知情報を受信する機能部である。検知情報受信部１０２は、例えば、図３に示すセンサＩ／Ｆ６５、およびＣＰＵ６１で動作するプログラムによって実現される。
【００４６】
加工情報取得部１０３は、加工機２００から、第１受信部１０１ａにより受信されたコンテキスト情報（加工情報）を取得する機能部である。加工情報取得部１０３は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００４７】
特徴抽出部１０４は、判定部１０６による判定で用いる特徴情報を、検知情報から抽出する機能部である。特徴情報は、検知情報の特徴を示す情報であればどのような情報であってもよい。例えば、検知情報がマイクにより集音された音響データである場合、特徴抽出部１０４は、エネルギー、周波数スペクトル、および、ＭＦＣＣ（メル周波数ケプストラム係数）等を特徴情報として抽出してもよい。特徴抽出部１０４は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００４８】
モデル取得部１０５は、判定部１０６による判定動作に用いるモデルを、第２受信部１０１ｃを介して、学習装置３００から取得する機能部である。具体的には、モデル取得部１０５は、加工情報取得部１０３により取得されたコンテキスト情報を、モデル取得要求と共に、第２送信部１０１ｄを介して、学習装置３００に送信する。そして、学習装置３００は、モデル取得要求を受信すると、受信したコンテキスト情報に対応するモデルを記憶部３０９から読み出し、後述する送信部３０１ａを介して、診断装置１００のモデル取得部１０５へ送信する。モデル取得部１０５は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００４９】
判定部１０６は、特徴抽出部１０４により抽出された特徴情報と、加工情報取得部１０３により取得されたコンテキスト情報に対応し、かつ、モデル取得部１０５により取得されたモデルと、を用いて、加工機２００の動作が正常であるか否かを判定する機能部である。例えば、判定部１０６は、特徴抽出部１０４に対して検知情報からの特徴情報の抽出を依頼する。判定部１０６は、検知情報から抽出された特徴情報が正常であることの尤もらしさを示す尤度を、対応するモデルを用いて算出する。判定部１０６は、尤度と、予め定められた閾値とを比較し、例えば、尤度が閾値以上である場合に、加工機２００の動作は正常であると判定する。また、判定部１０６は、尤度が閾値未満である場合に、加工機２００の動作は異常であると判定する。判定部１０６は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００５０】
記憶部１０７は、診断装置１００による診断機能で必要な各種情報を記憶する機能部である。記憶部１０７は、例えば、図３のＲＡＭ６３および補助記憶装置６７等によって実現される。
【００５１】
なお、図４に示した診断装置１００の各機能部（通信制御部１０１、検知情報受信部１０２、加工情報取得部１０３、特徴抽出部１０４、モデル取得部１０５および判定部１０６）は、図３のＣＰＵ６１にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ等のハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００５２】
図４に示すように、学習装置３００は、通信制御部３０１と、検知情報取得部３０２（第５取得部）と、加工情報取得部３０３（第４取得部）と、特徴抽出部３０４と、生成部３０５と、判定部３０６（第２判定部）と、結合部３０７と、モデル選択部３０８（選択部）と、記憶部３０９と、有する。
【００５３】
通信制御部３０１は、診断装置１００等の外部装置との間の通信を制御する機能部である。通信制御部３０１は、例えば、図３に示す通信Ｉ／Ｆ６４、およびＣＰＵ６１で動作するプログラムによって実現される。通信制御部３０１は、送信部３０１ａと、受信部３０１ｂと、を有する。
【００５４】
送信部３０１ａは、診断装置１００に対して各種情報（例えば、診断装置１００による診断処理で用いるモデル）を送信する機能部である。受信部３０１ｂは、診断装置１００から各種情報を受信する機能部である。
【００５５】
検知情報取得部３０２は、生成部３０５によってモデルを生成する場合に、加工情報取得部３０３により取得されたコンテキスト情報に対応する検知情報を、診断装置１００から受信部３０１ｂを介して取得する機能部である。検知情報取得部３０２は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００５６】
加工情報取得部３０３は、診断装置１００から受信部３０１ｂを介して、コテキスト情報（加工情報）を取得する機能部である。加工情報取得部３０３は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００５７】
特徴抽出部３０４は、生成部３０５によるモデルの生成に用いる特徴情報（信号処理の結果）を、検知情報取得部３０２により取得された検知情報から抽出する機能部である。特徴抽出部３０４は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００５８】
生成部３０５は、特徴抽出部３０４により抽出された特徴情報から、加工情報取得部３０３により取得されたコンテキスト情報に対応するモデルを生成する機能部である。生成部３０５は、生成したモデルを、例えば、後述する図１２に示すテーブルにより、コンテキスト情報および特徴情報との関連付けを行い、記憶部３０９に記憶させる。生成部３０５は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００５９】
モデルは、例えば、加工機２００が正常に動作しているときに検知部２１１により検知された検知情報を用いて、学習により生成される。学習方法、および、学習するモデルの形式はどのような方法であってもよい。例えば、ＧＭＭ（ガウス混合モデル）、および、ＨＭＭ（隠れマルコフモデル）等のモデルおよび対応するモデル学習方法を適用できる。
【００６０】
判定部３０６は、後述する図１２に示すテーブルにおいて、各コンテキスト情報が同一または類似であるか否かを判定する機能部である。判定部３０６は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００６１】
結合部３０７は、判定部３０６により同一または類似であると判定されたコンテキスト情報に対応するそれぞれのモデルを記憶部３０９から読み出して、読み出した各モデルを結合して新たなモデルを生成する機能部である。モデルを結合する方法としては、単純な平均化処理でもよく、または、生成された日時が新しいモデルに対する重みを小さくして加重平均をとることによりモデルを結合するものとしてもよい。生成された日時が新しいモデルに対する重みを小さくして加重平均をとることによって、生成された日時が古いモデル、すなわち、診断処理に使用されてきた実績のあるモデルに対する影響を小さくしつつ、精度を向上させることができる。結合部３０７は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。なお、結合部３０７は、判定部３０６により同一または類似であると判定されたコンテキスト情報に対応するそれぞれのモデルを直接、結合して新しいモデルを生成することに限定されるものではない。例えば、結合部３０７は、同一または類似であると判定されたコンテキスト情報に対応するそれぞれの特徴情報から、新たなモデルを生成するものとしてもよい。
【００６２】
モデル選択部３０８は、診断装置１００のモデル取得部１０５から受信したモデル取得要求に応じて、共に受信したコンテキスト情報に対応するモデルを選択して記憶部３０９から読み出し、送信部３０１ａを介して診断装置１００のモデル取得部１０５へ送信する機能部である。モデル選択部３０８は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【００６３】
記憶部３０９は、特徴抽出部３０４により抽出された特徴情報、生成部３０５により生成されたモデル、および、後述する図１２に示すコンテキスト情報とモデルとを関連付けるテーブル等の各種情報を記憶する機能部である。記憶部３０９は、例えば、図３のＲＡＭ６３および補助記憶装置６７等によって実現される。
【００６４】
なお、図４に示した学習装置３００の各機能部（通信制御部３０１、検知情報取得部３０２、加工情報取得部３０３、特徴抽出部３０４、生成部３０５、判定部３０６、結合部３０７およびモデル選択部３０８）は、図３のＣＰＵ６１にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ等のハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００６５】
また、図４に示した診断装置１００、加工機２００および学習装置３００それぞれの各機能部は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図４で独立した機能部として図示した複数の機能部を、１つの機能部として構成してもよい。一方、図４の１つの機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。
【００６６】
（診断システムによる診断処理）
図５は、第１の実施形態における診断処理の一例を示すフローチャートである。図５を参照しながら、本実施形態における診断システム１の診断処理について説明する。
【００６７】
上述のように、加工機２００の数値制御部２０１は、現在の動作を示すコンテキスト情報を逐次診断装置１００に送信する。第１受信部１０１ａは、このようにして加工機２００から送信されたコンテキスト情報を受信する（ステップＳ１０１）。そして、加工情報取得部１０３は、第１受信部１０１ａにより受信されたコンテキスト情報を取得する。
【００６８】
また、加工機２００の検知部２１１は、加工時の検知情報を逐次出力する。検知情報受信部１０２は、このようにして加工機２００から送信された検知情報（センサデータ）を受信する（ステップＳ１０２）。
【００６９】
特徴抽出部１０４は、受信された検知情報から特徴情報を抽出する（ステップＳ１０３）。
【００７０】
モデル取得部１０５は、加工情報取得部１０３により取得されたコンテキスト情報を、モデル取得要求と共に、第２送信部１０１ｄを介して、学習装置３００に送信する。学習装置３００のモデル選択部３０８は、受信したモデル取得要求に応じて、共に受信したコンテキスト情報に対応するモデルを選択して記憶部３０９から読み出し、送信部３０１ａを介して診断装置１００のモデル取得部１０５へ送信する。モデル取得部１０５は、第２受信部１０１ｃを介して、コンテキスト情報に対応するモデルを取得する（ステップＳ１０４）。
【００７１】
判定部１０６は、抽出された特徴情報と、取得されたコンテキスト情報に対応するモデルとを用いて、加工機２００が正常に動作しているか否かを判定する（ステップＳ１０５）。判定部１０６は、判定結果を出力する（ステップＳ１０６）。判定結果の出力方法はどのような方法であってもよい。判定部１０６は、例えば、診断装置１００の表示装置（例えば、図３に示すディスプレイ６６ｂ）に判定結果を表示させてもよい。または、判定部１０６は、外部装置に判定結果を出力してもよい。
【００７２】
（学習装置によるモデル生成処理）
図６は、第１の実施形態におけるモデル生成処理の一例を示すフローチャートである。図６を参照しながら、本実施形態に係る学習装置３００によるモデル生成処理について説明する。なお、モデル生成処理は、例えば、診断処理の前に事前に実行される。または、モデルが定められていないコンテキスト情報が入力された場合にモデル生成処理を実行するように構成してもよい。
【００７３】
第１受信部１０１ａは、加工機２００から送信されたコンテキスト情報を受信する（ステップＳ２０１）。そして、加工情報取得部１０３は、第１受信部１０１ａにより受信されたコンテキスト情報を取得する。
【００７４】
検知情報受信部１０２は、加工機２００から送信された検知情報（センサデータ）を受信する（ステップＳ２０２）。
【００７５】
このように受信されたコンテキスト情報および検知情報が、モデルの生成に利用される。モデルは、コンテキスト情報ごとに生成されるため、検知情報は、対応するコンテキスト情報に関連付けられる必要がある。このため、例えば、検知情報受信部１０２は、受信した検知情報を、同じタイミングで第１受信部１０１ａにより受信されたコンテキスト情報と対応付けて記憶部１０７等に記憶させる。各情報を記憶部１０７等に一旦記憶し、正常時の情報であることを確認し、正常時の情報のみを用いてモデルを生成してもよい。すなわち、正常であるとラベルづけされた検知情報を用いてモデルを生成してもよい。
【００７６】
正常であるか否かの確認（ラベルづけ）は、情報を記憶部１０７等に記憶した後の任意のタイミングで実行してもよいし、加工機２００を動作させながらリアルタイムに実行してもよい。ラベルづけを実行せず、情報が正常であると仮定してモデルを生成してもよい。正常であると仮定した情報が実際は異常であった情報であった場合は、生成されたモデルにより正しく判定処理が実行されなくなる。異常と判定される頻度等によりこのような状況であるかを判断でき、誤って生成されたモデルを削除する等の対応を取ることができる。また、異常であった情報から生成されたモデルを、異常であることを判定するモデルとして利用してもよい。
【００７７】
加工情報取得部１０３（第１送信部）は、取得したコンテキスト情報を、第２送信部１０１ｄを介して、学習装置３００に送信する（ステップＳ２０３）。検知情報受信部１０２（第２送信部）は、受信した検知情報を、第２送信部１０１ｄを介して、学習装置３００に送信する（ステップＳ２０３）。学習装置３００の加工情報取得部３０３は、診断装置１００（加工情報取得部１０３）から送信されたコンテキスト情報を、受信部３０１ｂを介して取得する。学習装置３００の検知情報取得部３０２は、診断装置１００（検知情報受信部１０２）から送信された検知情報を、受信部３０１ｂを介して取得する。
【００７８】
特徴抽出部３０４は、検知情報取得部３０２により取得された検知情報から特徴情報を抽出する（ステップＳ２０４）。
【００７９】
生成部３０５は、特徴抽出部３０４により抽出された特徴情報から、加工情報取得部３０３により取得されたコンテキスト情報に対応するモデルを生成する（ステップＳ２０５）。生成部３０５は、生成したモデルを、例えば、後述する図１２に示すテーブルにより、コンテキスト情報および特徴情報との関連付けを行い、記憶部３０９に記憶させる（ステップＳ２０６）。
【００８０】
（モデル生成処理および診断処理の具体例）
次に、本実施形態によるモデル生成処理および診断処理の具体例について説明する。図７は、第１の実施形態におけるモデル生成処理および診断処理の具体例を説明する図である。
【００８１】
図７は、例えば、ある部品を加工する工程の一部についてのモデル生成処理、および、診断処理を示す。モデル生成処理では、コンテキスト情報７０１と共に受信された複数の検知情報（図７では検知情報７１１ａ〜７１１ｃ）が利用される。なお、検知情報の個数は３に限られるものではなく、任意の個数とすることができる。
【００８２】
コンテキスト情報７０１は、加工工程が、４つのモータ（モータＡ、モータＢ、モータＣ、モータＤ）を駆動する動作を含むことを示している。特徴抽出部３０４は、検知情報取得部３０２により取得された検知情報から特徴情報を抽出する。生成部３０５は、各モータに対応するコンテキスト情報ごとに、対応する検知情報から抽出された特徴情報を用いてモデルを生成する。生成されたモデルは、後述する図１２のテーブルが示すように、対応するコンテキスト情報と対応付けられて記憶部３０９等に記憶される。図７では、モータＢが駆動される場合のコンテキスト情報に対して生成されたモデル（「モータＢ」）が記憶部３０９に記憶された例が示されている。記憶されたモデルは、その後の診断処理で参照される。
【００８３】
診断処理では、モデル生成処理と同様に、コンテキスト情報７０１とともに、検知情報７２１が受信される。コンテキスト情報が「モータＢが駆動されていること」を示す場合、判定部１０６は、例えば、このコンテキスト情報が受信された期間に受信された検知情報と、モデル取得部１０５によって取得された記憶部３０９に記憶されているモデル「モータＢ」とを用いて、加工機２００の動作が正常であるか否かを判定する。
【００８４】
他のコンテキスト情報が受信される場合も同様に、対応する検知情報と、対応するモデルとを用いて、判定部１０６による判定が実行される。
【００８５】
なお、すべてのコンテキスト情報に対して判定を実行する必要はない。図８は、一部のコンテキスト情報についてモデル生成処理および診断処理を行う具体例を説明する図である。
【００８６】
図８の例では、コンテキスト情報が「モータＢが駆動されていること」を示す場合のみモデルが生成される。また、診断処理は、「モータＢが駆動されていること」を示すコンテキスト情報７０１−２が受信された場合に実行される。これにより、異常の判定に有効な検知情報のみを用いて診断処理を実行することができる。例えば、検知情報として音響データを用いる場合、無音区間等判定する必要がない区間が加工工程に含まれる場合がある。このような不要な区間を判定対象から外すことによって、誤判定を減らすこと、および、計算コストを減らすことが可能となる。すなわち、診断処理の高精度化および効率化が実現可能となる。
【００８７】
また、相互に異なる加工工程であっても、例えば、同一のモータ等を使用する場合は、対応するモデルを共通に利用して診断処理を実行してもよい。図９は、共通のモデルを他の加工工程で使用する例を説明する図である。
【００８８】
図９のコンテキスト情報９０１は、加工工程が、４つのモータ（モータＸ、モータＹ、モータＺ、モータＢ）を駆動する動作を含むことを示している。モータＢを使用する点は、例えば、図７に示す加工工程と共通する。このため、図９の加工工程でも、判定部１０６は、学習装置３００の記憶部３０９に記憶されている同一のモデル「モータＢ」と、検知情報９２１とを用いて診断処理を実行できる。
【００８９】
また、図１０は、モデルが生成されていないコンテキスト情報が入力された場合にモデルを生成する動作を説明する図である。図１０のコンテキスト情報１１０１は、加工工程が、４つのモータ（モータＸ、モータＣ、モータＤ、モータＢ）を駆動する動作を含むことを示している。モータＸの駆動を示すコンテキスト情報に対して、モデルが生成されていないものとする。
【００９０】
この場合、特徴抽出部３０４は、複数の検知情報（図１０では、検知情報１１１１ａ、１１１１ｂ、１１１１ｃ）それぞれについて、「モータＸが駆動されていること」を示すコンテキスト情報に対応する期間の検知情報から特徴情報を抽出する。生成部３０５は、抽出された特徴情報を用いて、「モータＸが駆動されていること」を示すコンテキスト情報に対応するモデル「モータＸ」を生成し、記憶部３０９に記憶する。これにより、今後モータＸを駆動する期間についても異常の判定が可能となる。
【００９１】
このように、現在の動作を示すコンテキスト情報を加工機２００から受信し、受信したコンテキスト情報に対応するモデルを用いて異常を判定できる。したがって、動作する駆動部を高精度に特定し、異常をより高精度に診断可能となる。
【００９２】
（学習装置によるモデル結合処理）
図１１は、第１の実施形態におけるモデル結合処理の一例を示すフローチャートである。図１２は、コンテキスト情報とモデルとを関連付けるテーブルの一例を示す図である。図１１および図１２を参照しながら、本実施形態に係る学習装置３００によるモデル結合処理について説明する。
【００９３】
まず、記憶部３０９には、図１２に示すように、生成部３０５により生成されたモデルと、特徴情報と、コンテキスト情報とを関連付けたテーブルが記憶されている。図１２に示すテーブルは、「工作機械Ｎｏ．」、「加工装置識別情報」、「加工条件」、「特徴情報」および「生成モデル」をそれぞれ関連付けている。「工作機械Ｎｏ．」は、例えば、図１に示す加工機２００＿１、２００＿２、・・・のように複数の工作機械を一意に示す番号である。「加工装置識別情報」は、工作機械に搭載されているＮＣ装置等の加工装置を識別する情報である。例えば、「加工装置識別情報」は、ＮＣ装置等の加工装置の型式等であればよい。「加工条件」は、加工機２００等の工作機械が加工動作を行う場合の動作条件を示す。図１２に示す例では、「加工条件」は、「モータ回転数」、「ドリル径」、「ドリル材質」、および「加工速度」によって構成されているものとしている。「特徴情報」は、例えば、特徴抽出部３０４により抽出された特徴情報の、記憶部３０９に記憶されているパスを示す情報である。「生成モデル」は、例えば、生成部３０５により生成されたモデルの、記憶部３０９により記憶されているパスを示す情報である。図１２に示すテーブルが関連付けている情報のうち、例えば、「工作機械Ｎｏ．」、「加工装置識別情報」および「加工条件」は、加工情報取得部３０３により取得されるコンテキスト情報に含まれている情報とする。
【００９４】
＜ステップＳ３０１＞
判定部３０６は、記憶部３０９に記憶された図１２に示すテーブルを参照し、各コンテキスト情報が同一または類似であるか否かを判定する。例えば、図１２に示すテーブルにおいて、判定部３０６は、「工作機械Ｎｏ．」が「１」、「４」、「５」である工作機械（加工機２００）は機械として別々のものであるが、「加工条件」である「モータ回転数」、「ドリル径」、「ドリル材質」、「加工速度」は、それぞれ「８０００」、「Φ３．０」、「超鋼」、「１２５０」で同一であるので、これらのコンテキスト情報は類似であるものと判定する。そして、ステップＳ３０２へ移行する。
【００９５】
＜ステップＳ３０２＞
結合部３０７は、判定部３０６により同一または類似であると判定されたコンテキスト情報に対応するそれぞれのモデルを記憶部３０９から読み出して、読み出した各モデルを結合して新たなモデルを生成する。例えば、図１２に示す例では、結合部３０７は、判定部３０６によって「工作機械Ｎｏ．」が「１」、「４」、「５」であるコンテキスト情報が類似であると判定されているので、それぞれのコンテキスト情報に対応するモデルである「Ｎｏ１＿ｍｏｄｅｌ」、「Ｎｏ４＿ｍｏｄｅｌ」、「Ｎｏ５＿ｍｏｄｅｌ」を記憶部３０９から読み出して結合する。そして、ステップＳ３０３へ移行する。
【００９６】
＜ステップＳ３０３＞
結合部３０７は、結合した新たなモデルを、記憶部３０９に記憶する。例えば、結合部３０７は、図１２に示す「工作機械Ｎｏ．」がそれぞれ「１」、「４」、「５」であるコンテキスト情報に関連付けて、新たなモデルを記憶部３０９に記憶させる。すなわち、結合部３０７は、図１２に示す「工作機械Ｎｏ．」がそれぞれ「１」、「４」、「５」であるコンテキスト情報に対応する「生成モデル」である「Ｎｏ１＿ｍｏｄｅｌ」、「Ｎｏ４＿ｍｏｄｅｌ」、「Ｎｏ５＿ｍｏｄｅｌ」を、例えば、新しいモデルのパスを示す「Ｎｅｗ＿ｍｏｄｅｌ」に更新する。そして、ステップＳ３０４へ移行する。
【００９７】
＜ステップＳ３０４＞
モデル選択部３０８は、診断システム１の診断装置１００のモデル取得部１０５からモデル取得要求を受信した場合、共に受信したコンテキスト情報に対応するモデルを選択して記憶部３０９から読み出し、送信部３０１ａを介して診断装置１００のモデル取得部１０５へ送信する。例えば、モデル選択部３０８は、受信したコンテキスト情報が、図１２に示す「工作機械Ｎｏ．」が「４」のコンテキスト情報と一致する場合、対応する「生成モデル」として「Ｎｅｗ＿ｍｏｄｅｌ」として示される新たなモデルを、モデル取得部１０５へ送信する。
【００９８】
以上のステップＳ３０１〜Ｓ３０３によってモデル結合処理が行われ、ステップＳ３０４のように、診断装置１００からの要求に応じて、対応するモデルを診断装置１００に送信する。
【００９９】
以上のように、各コンテキスト情報に対応する検知情報からモデルを生成して記憶している学習装置３００において、コンテキスト情報が同一または類似（例えば、「工作機械Ｎｏ．」は異なるが「加工条件」が同一）である場合、これらのコンテキスト情報に対応するモデルを結合して新たなモデルを生成するものとしている。一般的に、モデルの生成において、学習するデータ（検知情報）が多いほど、異常判定をするためのモデルの精度が向上するので、上述のように、同一または類似のコンテキスト情報に対応するモデルを結合することによって、精度の高いモデルを得ることができる。
【０１００】
なお、上述の第１の実施形態では、モデルを生成するのは学習装置３００としているが、これに限定されるものではなく、診断装置１００がモデルを生成する生成部を備えるものとし、学習装置３００は、モデルの記憶、モデルの結合、および、受信したコンテキスト情報に対応するモデルを診断装置１００に送信する機能を有する構成としてもよい。
【０１０１】
（第１の実施形態の変形例１−１）
第１の実施形態では、モデルを結合するために、コンテキスト情報が同一または類似であると判定する条件として、例えば、「工作機械Ｎｏ．」および「加工装置識別情報」は異なるが「加工条件」が同一である場合、コンテキスト情報が類似であるものと判定する例を説明した。本変形例では、コンテキスト情報が同一または類似であると判定する条件の類型について説明する。
【０１０２】
例えば、判定部３０６は、「工作機械Ｎｏ．」が異なっていても、「加工装置識別情報」および「加工条件」が同一であれば、それぞれのコンテキスト情報が類似であるものと判定してもよい。例えば、図１２に示すテーブルにおいて、判定部３０６は、「工作機械Ｎｏ．」が「１」、「５」である工作機械（加工機２００）は機械として別々のものであるが、「加工装置識別情報」は「ＴｙｐｅＡ」で同一であり、かつ、「加工条件」も同一であるので、これらのコンテキスト情報は類似であるものと判定してもよい。これによって、上述の第１の実施形態による同一および類似の判定方法と比較して、さらに「加工装置識別情報」が同一であるか否かを類似要件としているので、より精度の高いモデルを得ることができる。
【０１０３】
また、判定部３０６は、コンテキスト情報の類似の判定に閾値を設け、「加工条件」のうち少なくともいずれかの値がその閾値で規定される所定範囲内にある場合、それぞれのコンテキスト情報が類似であるものと判定してもよい。実際の加工動作においては、例えば、「モータ回転数」および「加工速度」は、被加工材料によって負荷が微小に変化する。例えば、「モータ回転数」を８０００としたとしても、実際には数％の誤差が発生する場合がある。したがって、判定部３０６による同一または類似の判定では、その時の工作機械の加工動作の状態に依存しないように、ある程度の「加工条件」の値のずれを許容するのである。例えば、上述の「モータ回転数」について許容する範囲を±１［％］とした場合、所定範囲は７９２０〜８０８０となり、この所定範囲に入っている場合は、それぞれのコンテキスト情報は類似であると判定される。
【０１０４】
なお、判定部３０６は、「加工条件」のうちすべての値について閾値で規定される所定範囲内にある場合、または、「加工条件」のうちいずれかの値が所定範囲内にあり、かつ、他の「加工条件」の値は一致している場合、それぞれのコンテキスト情報が類似であると判定してもよい。また、判定部３０６は、「加工条件」のうちいずれかの値が一致していなくても、加工動作の状態に対して影響の大きい特定の「加工条件」（例えば、図１２に示す「モータ回転数」および「加工速度」等）の値が所定範囲内にある場合、それぞれのコンテキスト情報が類似であるものと判定してもよい。
【０１０５】
このような閾値を用いた判定方法によって、「加工条件」のうち誤差の発生しやすい値を含むコンテキスト情報について類似と判定することができるので、それぞれのコンテキスト情報に対応するモデルを結合することによって、より精度の高いモデルを得ることができる。
【０１０６】
また、判定部３０６は、「加工条件」のうち、所定数以上が一致していれば、それぞれのコンテキスト情報が類似であるものと判定してもよい。例えば、図１２に示すテーブルにおいて、判定部３０６は、「加工条件」のうち「ドリル径」および「モータ回転数」がそれぞれ一致すれば、コンテキスト情報は類似であるものと判定してもよい。このような判定方法のように、「加工条件」のうち加工動作の状態に対して影響の大きいものについて一致するか否かを判定することにより、それぞれのコンテキスト情報に対応するモデルを結合して、より精度の高いモデルを得ることができる。
【０１０７】
また、判定部３０６は、「加工装置識別情報」が同一である場合、それぞれのコンテキスト情報が類似であるものと判定してもよい。例えば、図１２に示すテーブルにおいて、判定部３０６は、「工作機械Ｎｏ．」が「１」、「４」、「５」のうち、「１」および「５」に対応する「加工装置識別情報」はそれぞれ同一であるか、「１」および「４」に対応する「加工装置識別情報」はそれぞれ異なるので、「工作機械Ｎｏ．」が「１」、「５」のコンテキスト情報がそれぞれ類似であると判定してもよい。このような判定方法により、「加工装置識別情報」が同一であれば同じような特徴情報が得られるものと推定し、それぞれのコンテキスト情報に対応するモデルを結合して、より精度の高いモデルを得ることができる。なお、この判定方法は、「加工条件」をコンテキスト情報の類似要件としない方法の一例である。
【０１０８】
また、判定部３０６は、各コンテキスト情報に対応する特徴情報が類似である場合、それぞれのコンテキスト情報が類似であるものと判定してもよい。すなわち、異なるロケーションで取得された検知情報であっても、それぞれの特徴情報が類似であれば、類似のモータ音として推定することが可能である。なお、この判定方法は、「加工条件」をコンテキスト情報の類似要件としない方法の一例である。
【０１０９】
また、判定部３０６は、各コンテキスト情報の「加工装置識別情報」が同一である場合、かつ、対応する特徴情報が類似である場合、それぞれのコンテキスト情報が類似であるものと判定してもよい。なお、この判定方法は、「加工条件」をコンテキスト情報の類似要件としない方法の一例である。
【０１１０】
以上のような類型の判定方法によって、コンテキスト情報が類似であるか否かを判定することができ、これらの判定方法によって判定部３０６によりコンテキスト情報が同一または類似と判定された場合、第１の実施形態で上述したように、結合部３０７は、同一または類似であると判定されたコンテキスト情報に対応するそれぞれのモデルを記憶部３０９から読み出して、読み出した各モデルを結合して新たなモデルを生成するものとすればよい。
【０１１１】
（第１の実施形態の変形例１−２）
第１の実施形態では、加工機２００から取得したコンテキスト情報および検知情報を、その都度、学習装置３００に送信する動作について説明した。本変形例では、まず、コンテキスト情報のみを学習装置３００に送信し、学習装置３００は、受信したコンテキスト情報から、対応する検知情報を取得する必要があるか否かを判定する動作について説明する。
【０１１２】
＜診断装置による検知情報の送信動作＞
図１３は、第１の実施形態の変形例１−２における学習装置により必要と判定されたセンサデータを送信する動作の一例を示すフローチャートである。図１３を参照しながら、本変形例に係る診断装置１００による検知情報の送信動作について説明する。
【０１１３】
＜＜ステップＳ４０１＞＞
診断装置１００の第１受信部１０１ａは、加工機２００から送信されたコンテキスト情報を受信する。診断装置１００の加工情報取得部１０３は、第１受信部１０１ａにより受信されたコンテキスト情報を取得する。そして、ステップＳ４０２へ移行する。
【０１１４】
＜＜ステップＳ４０２＞＞
診断装置１００の検知情報受信部１０２は、加工機２００から送信された検知情報（センサデータ）を受信する。そして、ステップＳ４０３へ移行する。
【０１１５】
＜＜ステップＳ４０３＞＞
加工情報取得部１０３（第１送信部）は、取得したコンテキスト情報を、第２送信部１０１ｄを介して、学習装置３００へ送信する。学習装置３００の加工情報取得部３０３は、診断装置１００（加工情報取得部１０３）から送信されたコンテキスト情報を、受信部３０１ｂを介して取得する。そして、ステップＳ４０４へ移行する。
【０１１６】
＜＜ステップＳ４０４＞＞
学習装置３００の判定部３０６は、加工情報取得部３０３により取得されたコンテキスト情報と、記憶部３０９に記憶されたコンテキスト情報（例えば、図１２に示すテーブルにおいて特徴情報およびモデルに関連付けられたコンテキスト情報（「工作機械Ｎｏ．」、「加工装置識別情報」および「加工条件」）とに基づいて、加工情報取得部３０３により取得されたコンテキスト情報に対応する検知情報を取得して、モデルの生成または結合が必要か否かを判定する。
【０１１７】
具体的には、例えば、判定部３０６は、加工情報取得部３０３により取得されたコンテキスト情報に対応するモデルが既に生成され、記憶部３０９に記憶されているか否かを判定する。また、例えば、判定部３０６は、加工情報取得部３０３により取得されたコンテキスト情報と同一または類似のコンテキスト情報に対応するモデルと結合すべきか否かを判定する。判定部３０６によってモデルの生成または結合が必要か否かを判定する基準としては、例えば、加工情報取得部３０３により取得されたコンテキスト情報が含む加工条件が、世の中でよく使われる加工条件であるか否かを判定する。あまり使用されない加工条件である場合、学習装置３００は、わがわざそのコンテキスト情報に対応する検知情報を受信して、モデルを生成する必要はない。また、よく使用される加工条件である場合、学習装置３００は、そのコンテキスト情報に対応する検知情報を受信し、同一または類似のコンテキスト情報に対応するモデルと結合することで、モデルの精度を向上させることができる。そして、ステップＳ４０５へ移行する。
【０１１８】
＜＜ステップＳ４０５＞＞
判定部３０６は、モデルの生成または結合が必要であると判定した場合、診断装置１００に対して、加工情報取得部３０３により取得されたコンテキスト情報に対応する検知情報の送信を要求する。そして、ステップＳ４０６へ移行する。
【０１１９】
＜＜ステップＳ４０６＞＞
検知情報受信部１０２（第２送信部）は、受信した検知情報を、第２送信部１０１ｄを介して、学習装置３００に送信する。学習装置３００の検知情報取得部３０２は、診断装置１００（検知情報受信部１０２）から送信された検知情報を、受信部３０１ｂを介して取得する。
【０１２０】
以上のようなステップＳ４０１〜Ｓ４０６の動作によって、本変形例に係る診断装置１００による検知情報の送信動作が行われる。なお、その後のモデルの生成および結合の動作は、第１の実施形態において図６および図１１で説明した内容と同様である。
【０１２１】
以上のように、本変形例では、まず、コンテキスト情報のみを学習装置３００に送信し、学習装置３００は、受信したコンテキスト情報から、対応する検知情報を取得する必要があるか否かを判定するものとし、検知情報が必要である場合のみ受信して、モデルの生成または結合を行うものとしている。これによって、学習装置３００により検知情報を取得する必要がない場合、診断装置１００は検知情報をネットワーク２を介して学習装置３００に送信する必要がないので、診断装置１００と学習装置３００との不要なトラフィックを軽減することができる。
【０１２２】
［第２の実施形態］
本実施形態に係る診断システムについて、第１の実施形態に係る診断システム１と相違する点を中心に説明する。第１の実施形態では、診断装置１００が、コンテキスト情報および検知情報を、ネットワーク２を介して学習装置３００へ送信する場合に、そのままの状態で送信する動作について説明した。しかし、学習装置３００へ送信するコンテキスト情報または検知情報には、加工機２００の製造者等の顧客が秘匿したい情報が含まれている場合がある。本実施形態では、診断装置１００が、コンテキスト情報および検知情報を、ネットワーク２を介して学習装置３００へ送信する場合に、暗号化して送信する動作について説明する。なお、本実施形態での診断システムの全体構成、ならびに、加工機、診断装置および学習装置それぞれのハードウェア構成は、第１の実施形態で説明した構成と同様である。
【０１２３】
（診断システムの機能ブロックの構成および動作）
図１４は、第２の実施形態に係る診断システムの機能ブロックの構成の一例を示す図である。図１５は、第２の実施形態における暗号化を説明する図である。図１６は、第２の実施形態における暗号化を説明する図である。図１７は、第２の実施形態における暗号化を説明する図である。図１８は、コンテキスト情報の要素の組み合わせを設定する画面の一例を示す図である。図１４〜図１８を参照しながら、本実施形態に係る診断システムおよび加工機２００の機能ブロックの構成および動作について説明する。なお、加工機２００の機能ブロックの構成および動作は、第１の実施形態で説明した構成および動作と同様である。
【０１２４】
図１４に示すように、診断装置１００ａは、通信制御部１０１と、検知情報受信部１０２（第２取得部）と、加工情報取得部１０３（第１取得部）と、特徴抽出部１０４と、モデル取得部１０５（第３取得部）と、判定部１０６（第１判定部）と、記憶部１０７と、ハッシュ化部１０８と、暗号化部１０９と、表示制御部１１０と、表示部１１１と、入力部１１２と、を有する。なお、通信制御部１０１、検知情報受信部１０２、加工情報取得部１０３および記憶部１０７の動作は、第１の実施形態で説明した動作と同様である。
【０１２５】
ハッシュ化部１０８は、加工情報取得部１０３により取得されたコンテキスト情報を、ハッシュ関数を用いてハッシュ値を得るハッシュ化を行う機能部である。ハッシュ化は、不可逆暗号化処理であり、データの秘匿化処理の一例である。
【０１２６】
ハッシュ化部１０８は、例えば、図１５に示すように、コンテキスト情報の要素（「回転数  ２００Ｈｚ」、「モータＡ駆動中」、「工作機ＴｙｐｅＡ」、「２０ｃｍアルミ管を加工」）ごとにハッシュ化してハッシュ値を求めてもよい。この場合、各要素のハッシュ値ごとにカテゴリー化して、検知情報と対応付けることが可能となる。なお、ハッシュ化部１０８は、図１６に示すように、コンテキスト情報をまとめてハッシュ化して１のハッシュ値を求めるものとしてもよい。また、ハッシュ化部１０８は、図１７に示すように、コンテキスト情報の要素の特定の組み合わせごとにハッシュ化してハッシュ値を求めるものとしてもよい。この場合、利用する可能性があるコンテキスト情報の要素についての複数の組み合わせごとにカテゴリー化して、検知情報と対応付けることが可能となる。
【０１２７】
上述の図１７のように、コンテキスト情報の要素についての特定の組み合わせを、図１８に示すような設定画面で管理者が設定できるようにしてもよい。例えば、後述する表示制御部１１０が、入力部１１２による操作に応じて、図１８に示すような設定画面を表示部１１１に表示させ、管理者による入力部１１２による選択操作によって、コンテキスト情報の要素の組み合わせを自由に選択可能とすればよい。図１８において、例えば、管理者が入力部１１２による選択操作によって、「回転数・モータ一致」および「モータ一致」を選択して設定した場合、ハッシュ化部１０８は、コンテキスト情報の要素のうち、回転数の要素とモータについての要素との組み合わせをハッシュ化し、かつ、モータについての要素のみをハッシュ化する。
【０１２８】
ハッシュ化部１０８は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１２９】
暗号化部１０９は、検知情報受信部１０２により受信された検知情報を暗号化する機能部である。暗号化は、データの秘匿化処理の一例である。暗号化部１０９は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１３０】
特徴抽出部１０４は、判定部１０６による判定で用いる特徴情報を、暗号化部１０９により暗号化された検知情報から抽出する機能部である。特徴抽出部１０４は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１３１】
モデル取得部１０５は、判定部１０６による判定動作に用いるモデルを、第２受信部１０１ｃを介して、学習装置３００ａから取得する機能部である。具体的には、モデル取得部１０５は、ハッシュ化部１０８によりハッシュ化されたコンテキスト情報を、モデル取得要求と共に、第２送信部１０１ｄを介して、学習装置３００ａに送信する。そして、学習装置３００ａは、モデル取得要求を受信すると、受信したハッシュ化されたコンテキスト情報に対応するモデルを記憶部３０９から読み出し、後述する送信部３０１ａを介して、診断装置１００ａのモデル取得部１０５へ送信する。モデル取得部１０５は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１３２】
判定部１０６は、特徴抽出部１０４により抽出された特徴情報と、ハッシュ化部１０８によりハッシュ化されたコンテキスト情報に対応し、かつ、モデル取得部１０５により取得されたモデルと、を用いて、加工機２００の動作が正常であるか否かを判定する機能部である。例えば、判定部１０６は、特徴抽出部１０４に対して、暗号化部１０９により暗号化された検知情報からの特徴情報の抽出を依頼する。判定部１０６は、暗号化された検知情報から抽出された特徴情報が正常であることの尤もらしさを示す尤度を、対応するモデルを用いて算出する。判定部１０６は、尤度と、予め定められた閾値とを比較し、例えば、尤度が閾値以上である場合に、加工機２００の動作は正常であると判定する。また、判定部１０６は、尤度が閾値未満である場合に、加工機２００の動作は異常であると判定する。判定部１０６は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１３３】
表示制御部１１０は、表示部１１１の表示動作を制御する機能部である。表示制御部１１０は、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１３４】
表示部１１１は、表示制御部１１０による制御に従って各種情報を表示する機能部である。表示部１１１は、例えば、図３に示すディスプレイ６６ｂにより実現できる。
【０１３５】
入力部１１２は、文字および数字等の入力、各種指示の選択、ならびにカーソルの移動等の操作を行うための機能部である。入力部１１２は、例えば、図３に示す入力装置６６ａにより実現できる。
【０１３６】
なお、図１４に示した診断装置１００ａの各機能部（通信制御部１０１、検知情報受信部１０２、加工情報取得部１０３、特徴抽出部１０４、モデル取得部１０５、判定部１０６、ハッシュ化部１０８、暗号化部１０９および表示制御部１１０）は、図３のＣＰＵ６１にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ等のハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【０１３７】
図１４に示すように、学習装置３００ａは、通信制御部３０１と、検知情報取得部３０２ａ（第５取得部）と、加工情報取得部３０３ａ（第４取得部）と、特徴抽出部３０４ａと、生成部３０５ａと、判定部３０６ａ（第２判定部）と、結合部３０７ａと、モデル選択部３０８ａ（選択部）と、記憶部３０９と、を有する。なお、通信制御部３０１および記憶部３０９の動作は、第１の実施形態で説明した動作と同様である。
【０１３８】
検知情報取得部３０２ａは、生成部３０５ａによってモデルを生成する場合に、加工情報取得部３０３ａにより取得されたハッシュ化されたコンテキスト情報に対応する検知情報であって、暗号化部１０９により暗号化された検知情報を、診断装置１００ａから受信部３０１ｂを介して取得する機能部である。検知情報取得部３０２ａは、取得した暗号化した検知情報（センサデータ）、例えば、後述する図２０に示すテーブルのように、ハッシュ化されたコンテキスト情報（ハッシュ値）との関連付けを行い、記憶部３０９に記憶させる。検知情報取得部３０２ａは、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１３９】
加工情報取得部３０３ａは、ハッシュ化部１０８によりハッシュ化されたコンテキスト情報（加工情報）を、受信部３０１ｂを介して取得する機能部である。加工情報取得部３０３ａは、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１４０】
特徴抽出部３０４ａは、生成部３０５ａによるモデルの生成に用いる特徴情報を、検知情報取得部３０２ａにより取得された暗号化された検知情報から抽出する機能部である。すなわち、特徴抽出部３０４ａは、暗号化された検知情報を復号化せずに、特徴情報を抽出する。特徴抽出部３０４ａは、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１４１】
生成部３０５ａは、特徴抽出部３０４ａにより抽出された特徴情報から、加工情報取得部３０３ａにより取得されたハッシュ化されたコンテキスト情報（ハッシュ値）に対応するモデルを生成する機能部である。生成部３０５ａは、生成したモデルを、例えば、後述する図２１に示すテーブルのように、ハッシュ化されたコンテキスト情報（ハッシュ値）との関連付けを行い、記憶部３０９に記憶させる。生成部３０５ａは、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。なお、モデルの生成方法は、上述の第１の実施形態で説明した方法と同様である。
【０１４２】
判定部３０６ａは、後述する図２１に示すテーブルにおいて、各ハッシュ値（ハッシュ化されたコンテキスト情報）が同一または類似であるか否かを判定する機能部である。判定部３０６ａは、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１４３】
結合部３０７ａは、判定部３０６ａにより同一または類似であると判定されたハッシュ値に対応するそれぞれのモデルを記憶部３０９から読み出して、読み出した各モデルを結合して新たなモデルを生成する機能部である。なお、モデルを結合する方法は、上述の第１の実施形態で説明した方法と同様である。また、結合部３０７ａは、判定部３０６ａにより同一または類似であると判定されたハッシュ値に対応するそれぞれのモデルを直接、結合して新しいモデルを生成することに限定されるものではない。例えば、結合部３０７ａは、同一または類似であると判定されたハッシュ値に対応するそれぞれの暗号化された検知情報から抽出された特徴情報から、新たなモデルを生成するものとしてもよい。
【０１４４】
モデル選択部３０８ａは、診断装置１００ａのモデル取得部１０５から受信したモデル取得要求に応じて、共に受信したハッシュ値に対応するモデルを選択して記憶部３０９から読み出し、送信部３０１ａを介して診断装置１００ａのモデル取得部１０５へ送信する機能部である。モデル選択部３０８ａは、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１４５】
なお、図１４に示した学習装置３００ａの各機能部（送信部３０１ａ、検知情報取得部３０２ａ、加工情報取得部３０３ａ、特徴抽出部３０４ａ、生成部３０５ａ、判定部３０６ａ、結合部３０７ａ、モデル選択部３０８ａおよび記憶部３０９）は、図３のＣＰＵ６１にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ等のハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【０１４６】
また、図１４に示した診断装置１００ａ、加工機２００および学習装置３００ａそれぞれの各機能部は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図１４で独立した機能部として図示した複数の機能部を、１つの機能部として構成してもよい。一方、図１４の１つの機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。
【０１４７】
（診断装置による検知情報の送信動作）
図１９は、第２の実施形態におけるコンテキスト情報およびセンサデータを暗号化して送信する動作の一例を示すフローチャートである。図２０は、ハッシュ値とセンサデータとを関連付けるテーブルの一例を示す図である。図２１は、ハッシュ値とモデルとを関連付けるテーブルの一例を示す図である。図１９〜図２１を参照しながら、本実施形態に係る診断装置１００ａの暗号化された検知情報の送信動作、および、学習装置３００ａによるモデル生成処理について説明する。
【０１４８】
第１受信部１０１ａは、加工機２００から送信されたコンテキスト情報を受信する（ステップＳ５０１）。そして、加工情報取得部１０３は、第１受信部１０１ａにより受信されたコンテキスト情報を取得する。
【０１４９】
検知情報受信部１０２は、加工機２００から送信された検知情報（センサデータ）を受信する（ステップＳ５０２）。
【０１５０】
ハッシュ化部１０８は、加工情報取得部１０３により取得されたコンテキスト情報を、ハッシュ関数を用いてハッシュ値を得るハッシュ化を行う（ステップＳ５０３）。なお、ハッシュ化部１０８は、コンテキスト情報から条件に応じて複数のハッシュ値を求めてもよい。どのようにハッシュ値を求めるかについては、上述した通りである。
【０１５１】
暗号化部１０９は、検知情報受信部１０２により受信された検知情報を暗号化する（ステップＳ５０４）。
【０１５２】
加工情報取得部１０３（第１送信部）は、ハッシュ化部１０８によるハッシュ化により得られたハッシュ値を、第２送信部１０１ｄを介して、学習装置３００ａに送信する（ステップＳ５０５）。検知情報受信部１０２（第２送信部）は、暗号化部１０９により暗号化された検知情報を、第２送信部１０１ｄを介して、学習装置３００ａに送信する（ステップＳ５０５）。学習装置３００ａの加工情報取得部３０３ａは、診断装置１００ａ（加工情報取得部１０３）から送信されたハッシュ化されたコンテキスト情報を、受信部３０１ｂを介して取得する。学習装置３００ａの検知情報取得部３０２ａは、診断装置１００ａ（検知情報受信部１０２）から送信された暗号化された検知情報を、受信部３０１ｂを介して取得する。検知情報取得部３０２ａは、取得した暗号化した検知情報（センサデータ）、例えば、図２０に示すテーブルのように、ハッシュ化されたコンテキスト情報（ハッシュ値）との関連付けを行い、記憶部３０９に記憶させる。
【０１５３】
特徴抽出部３０４ａは、生成部３０５ａによるモデルの生成に用いる特徴情報を、検知情報取得部３０２ａにより取得された暗号化された検知情報から抽出する。
【０１５４】
生成部３０５ａは、特徴抽出部３０４ａにより抽出された特徴情報から、加工情報取得部３０３ａにより取得されたハッシュ化されたコンテキスト情報（ハッシュ値）に対応するモデルを生成する。生成部３０５ａは、生成したモデルを、例えば、図２１に示すテーブルのように、ハッシュ化されたコンテキスト情報（ハッシュ値）との関連付けを行い、記憶部３０９に記憶させる。
【０１５５】
なお、図２１に示すテーブルに記載されているハッシュ値はすべて別々の値となっているが、このテーブルに記憶されるハッシュ値およびモデルは１対１の関係である必要はなく、多対多の関係で記憶されるものとしてもよい。例えば、同じハッシュ値（すなわち、同じコンテキスト情報の要素）であっても、対応する検知情報は毎回異なるものであるので、生成されるモデルも異なる。その場合は、同じハッシュ値に対して、複数のモデルが関連付けられることになり、後述するモデル結合処理の対象となり得る。
【０１５６】
（学習装置によるモデル結合処理）
図２２は、第２の実施形態におけるモデル結合処理の一例を示すフローチャートである。図２２を参照しながら、本実施形態に係る学習装置３００ａによるモデル結合処理について説明する。記憶部３０９には、図２１に示すように、生成部３０５ａにより生成されたモデルと、ハッシュ値とを関連付けたテーブルが記憶されているものとする。
【０１５７】
＜ステップＳ６０１＞
判定部３０６ａは、記憶部３０９に記憶された図２１に示すテーブルを参照し、各ハッシュ値（ハッシュ化されたコンテキスト情報）が同一または類似であるか否かを判定する。なお、特定のハッシュ関数によりハッシュ化されたハッシュ値が、元のコンテキスト情報の値が少し異なるだけで、全く異なる値となるような性質を有する場合、ハッシュ値の類似性の判定は困難であるので、この場合、ハッシュ値の同一性のみを判定するものとすればよい。そして、ステップＳ６０２へ移行する。
【０１５８】
＜ステップＳ６０２＞
結合部３０７ａは、判定部３０６ａにより同一または類似であると判定されたハッシュ値に対応するそれぞれのモデルを記憶部３０９から読み出して、読み出した各モデルを結合して新たなモデルを生成する。そして、ステップＳ６０３へ移行する。
【０１５９】
＜ステップＳ６０３＞
結合部３０７ａは、結合した新たなモデルを、記憶部３０９に記憶する。そして、ステップＳ６０４へ移行する。
【０１６０】
＜ステップＳ６０４＞
モデル選択部３０８ａは、診断装置１００ａのモデル取得部１０５からモデル取得要求を受信した場合、共に受信したハッシュ値に対応するモデルを選択して記憶部３０９から読み出し、送信部３０１ａを介して診断装置１００ａのモデル取得部１０５へ送信する。
【０１６１】
以上のステップＳ６０１〜Ｓ６０３によってモデル結合処理が行われ、ステップＳ６０４のように、診断装置１００ａからの要求に応じて、対応するモデルを診断装置１００ａに送信する。
【０１６２】
（診断システムによる診断処理）
図２３は、第２の実施形態における診断処理の一例を示すフローチャートである。図２３を参照しながら、本実施形態における診断システムの診断処理について説明する。
【０１６３】
上述のように、加工機２００の数値制御部２０１は、現在の動作を示すコンテキスト情報を逐次診断装置１００ａに送信する。第１受信部１０１ａは、このようにして加工機２００から送信されたコンテキスト情報を受信する（ステップＳ７０１）。そして、加工情報取得部１０３は、第１受信部１０１ａにより受信されたコンテキスト情報を取得する。
【０１６４】
また、加工機２００の検知部２１１は、加工時の検知情報を逐次出力する。検知情報受信部１０２は、このようにして加工機２００から送信された検知情報（センサデータ）を受信する（ステップＳ７０２）。
【０１６５】
暗号化部１０９は、検知情報受信部１０２により受信された検知情報を暗号化する。特徴抽出部１０４は、暗号化部１０９により暗号化された検知情報から特徴情報を抽出する（ステップＳ７０３）。
【０１６６】
ハッシュ化部１０８は、加工情報取得部１０３により取得されたコンテキスト情報を、ハッシュ関数を用いてハッシュ値を得るハッシュ化を行う。モデル取得部１０５は、ハッシュ化部１０８によりハッシュ化されたコンテキスト情報（ハッシュ値）を、モデル取得要求と共に、第２送信部１０１ｄを介して、学習装置３００ａに送信する（ステップＳ７０４）。そして、学習装置３００ａは、モデル取得要求を受信すると、受信したハッシュ化されたコンテキスト情報に対応するモデルを記憶部３０９から読み出し、後述する送信部３０１ａを介して、診断装置１００ａのモデル取得部１０５へ送信する。モデル取得部１０５は、第２受信部１０１ｃを介して、ハッシュ値に対応するモデルを取得する（ステップＳ７０５）。
【０１６７】
判定部１０６は、特徴抽出部１０４により抽出された特徴情報と、ハッシュ化部１０８によりハッシュ化されたコンテキスト情報に対応し、かつ、モデル取得部１０５により取得されたモデルと、を用いて、加工機２００の動作が正常であるか否かを判定する（ステップＳ７０６）。判定部１０６は、判定結果を出力する（ステップＳ７０７）。判定結果の出力方法はどのような方法であってもよい。判定部１０６は、例えば、診断装置１００ａの表示装置（例えば、図３に示すディスプレイ６６ｂ）に判定結果を表示させてもよい。または、判定部１０６は、外部装置に判定結果を出力してもよい。
【０１６８】
以上のように、加工機２００からコンテキスト情報および検知情報を受信した診断装置１００ａは、コンテキスト情報をハッシュ化したハッシュ値と、暗号化した検知情報とを学習装置３００ａに送信するものとしている。また、学習装置３００ａでは、ハッシュ値に関連付けて、暗号化した検知情報からモデルを生成して記憶するものとしている。これによって、学習装置３００ａに対して送信するコンテキスト情報および検知情報に秘匿した情報が含まれている場合においても、ハッシュ化および暗号化を行って送信するので、情報の秘匿性を確保することができる。また、ハッシュ化部１０８は、コンテキスト情報の要素の特定の組み合わせごとにハッシュ化してハッシュ値を求めてもよく、この場合、利用する可能性があるコンテキスト情報の要素についての複数の組み合わせごとにカテゴリー化して、検知情報と対応付けることが可能となる。さらに、学習装置３００ａでは受信した暗号化された検知情報を復号化せずに、特徴抽出部３０４ａにより特徴情報が抽出され、生成部３０５ａによりその特徴情報からモデルが生成されるものとしている。これによって、情報の復号化による処理の負荷を軽減することができる。
【０１６９】
なお、上述の実施形態のように、秘匿化処理（ハッシュ化および暗号化）の対象は、コンテキスト情報および検知情報としているが、これに限定されるものではなく、例えば、秘匿化の必要がある情報がコンテキスト情報だけである場合、検知情報は暗号化しないものとしてもよい。
【０１７０】
［第３の実施形態］
本実施形態に係る診断システムについて、第１の実施形態に係る診断システム１と相違する点を中心に説明する。第１の実施形態では、１種類の検知情報を用いて正常か否かを判定していた。判定に用いる検知情報の個数は１に限られず、２以上であってもよい。第３の実施形態の診断システムは、複数の検知情報を用いて加工機２００の異常を判定する。なお、本実施形態での診断システムの全体構成、ならびに、加工機、診断装置および学習装置それぞれのハードウェア構成は、第１の実施形態で説明した構成と同様である。
【０１７１】
（診断装置の機能ブロックの構成および動作）
図２４は、第３の実施形態に係る診断システムの機能ブロックの構成の一例を示す図である。図２４を参照しながら、本実施形態に係る診断システムおよび加工機２００の機能ブロックの構成および動作について説明する。なお、加工機２００および学習装置３００の機能ブロックの構成および動作は、第１の実施形態で説明した構成および動作と同様である。
【０１７２】
図２４に示すように、診断装置１００ｂは、通信制御部１０１と、検知情報受信部１０２（第２取得部）と、加工情報取得部１０３（第１取得部）と、特徴抽出部１０４と、モデル取得部１０５ａ（第３取得部）と、判定部１０６ａ（第１判定部）と、記憶部１０７と、を有する。
【０１７３】
第３の実施形態では、モデル取得部１０５ａおよび判定部１０６ａの機能が第１の実施形態と異なっている。その他の構成および機能は、第１の実施形態に係る診断装置１００のブロック図である図４と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１７４】
モデル取得部１０５ａは、判定部１０６ａによる判定動作に用いるモデルを、第２受信部１０１ｃを介して、学習装置３００から取得する機能部である。具体的には、モデル取得部１０５ａは、加工情報取得部１０３により取得されたコンテキスト情報の複数の要素を、モデル取得要求と共に、第２送信部１０１ｄを介して、学習装置３００に送信する。そして、学習装置３００は、モデル取得要求を受信すると、受信したコンテキスト情報の要素にそれぞれ対応するモデルを記憶部３０９から読み出し、後述する送信部３０１ａを介して、診断装置１００ｂのモデル取得部１０５ａへ送信する。モデル取得部１０５ａは、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１７５】
判定部１０６ａは、複数の検知情報を用いて加工機２００の動作が正常であるか否かを判定する機能部である。例えば、判定部１０６ａは、コンテキスト情報に応じて、判定に用いる検知情報を切り替える。判定部１０６ａは、例えば、図３に示すＣＰＵ６１で動作するプログラムによって実現される。
【０１７６】
（診断処理の具体例）
図２５は、第３の実施形態による処理の具体例を説明するための図である。図２５の例では、コンテキスト情報１２０１と、複数種類の検知情報１２２１ａ、１２２１ｂとが受信される。検知情報１２２１ａは、例えば音響データである。検知情報１２２１ｂは、例えば加速度データである。
【０１７７】
判定部１０６ａは、コンテキスト情報が「モータＡが駆動されていること」を示す場合、検知情報１２２１ｂのうち、当該コンテキスト情報に対応する期間の検知情報１２２２ｂから抽出された特徴情報を用いて判定を実行する。この場合、判定部１０６ａは、モデル取得部１０５ａにより学習装置３００の記憶部３０９ａ−２のモデルＤＢ＿加速度から取得されたコンテキスト情報に対応するモデル「モータＡ」を使用する。
【０１７８】
また、判定部１０６ａは、コンテキスト情報が「モータＢが駆動されていること」を示す場合、検知情報１２２１ａのうち、当該コンテキスト情報に対応する期間の検知情報１２２２ａから抽出された特徴情報を用いて判定を実行する。この場合、判定部１０６ａは、モデル取得部１０５ａにより学習装置３００の記憶部３０９ｂ−２のモデルＤＢ＿音響から取得されたコンテキスト情報に対応するモデル「モータＢ」を使用する。
【０１７９】
コンテキスト情報に対応する検知情報は、例えば、記憶部１０７に記憶される対応情報を用いて決定されてもよい。図２６は、検知情報の決定に用いられる対応情報のデータ構造の一例を示す図である。対応情報は、例えば、センサデータと、コンテキスト情報と、を含む。判定部１０６ａは、このような対応情報を参照することにより、コンテキスト情報に対応する検知情報を決定することができる。
【０１８０】
なお、本実施形態に係る診断システムに対して、第２の実施形態で上述した秘匿化処理を適用することも当然可能である。
【０１８１】
次に、上述の各実施形態に適用可能な変形例について説明する。なお、以下の説明では、診断システムは第１の実施形態に係る診断システム１であるものとして説明する。
【０１８２】
［変形例１］
コンテキスト情報は、ある駆動部２１２が駆動されている区間を示しているだけであり、例えば、この駆動部２１２により工具が回転し材料に当たって加工している、実際の加工区間を厳密に抽出できない場合がある。すなわち、異常判定の精度が悪くなる場合がある。
【０１８３】
図２７は、コンテキスト情報と加工区間との関係の例を示す図である。コンテキスト情報１５０１は、モータＢが駆動されていることを示す。コンテキスト情報１５０１のみに基づくと、例えば、検知情報のうち波形区間１５１２に相当する検知情報が特定される。しかし、実際に材料を加工している区間は波形区間１５１１である。例えば、音響データを検知情報としている場合、波形区間１５１１は、工具が材料に接触して音が発生することにより検出される音響データの区間に相当する。
【０１８４】
そこで、変形例１では、コンテキスト情報と検知情報とを組合せて、実際の加工区間を特定するように構成する。すなわち、判定部１０６は、受信されたコンテキスト情報で特定される期間のうち判定に用いる期間を、受信された検知情報に基づいて決定し、決定した期間の検知情報とモデルとを用いて判定を実行する。
【０１８５】
例えば、判定部１０６は、検知情報の特徴が切り替わる時刻を特定することにより、加工区間を求める。図２８は、加工区間の特定方法の一例を示す図である。図２８の例では、判定部１０６は、検知情報の振幅が予め定められた閾値（例えば「ａ」および「−ａ」）を超えるように切り替わった時刻１６０１と、その後、閾値を下回るように切り替わった時刻１６０２とを特定する。判定部１０６は、時刻１６０１と時刻１６０２との間の区間１６１１を抽出する。そして、判定部１０６は、区間１６１１の検知情報から抽出された特徴情報を用いて判定を実行する。これにより、実際の加工区間に相当する区間の検知情報を用いて、より高精度に判定することが実行可能となる。
【０１８６】
［変形例２］
上述のように、正常か否かを判定するとき、尤度の値自体を用いてもよいし、尤度の変動を示す値を用いてもよい。変形例２では、尤度の変動を示す値の例について説明する。尤度の変動を示す値として、例えば、尤度の分散を用いることができる。例えば、区間Ｘでの尤度の分散は、以下の式（１）式により算出される。ｎＸは区間Ｘでのフレーム数、ｋはフレームのインデックス、ｘｉはフレームｉでの尤度（フレーム尤度）、μＸは区間Ｘでのフレーム尤度の平均、を表す。なお、フレームは、尤度を算出する単位区間に相当する。
【数１】
2018025945.tif 000003
【０１８７】
さらに、式（１）のような分散を元にスコア化した値を判定に用いてもよい。例えば、以下の式（２）に示す判定値ｒ（ｋ）を判定に用いてもよい。
【０１８８】
ｒ（ｋ）＝ＶＳ（ｋ）／ＶＬ（ｋ）                                  ・・・（２）
【０１８９】
Ｓ、Ｌは、区間Ｘの種類を表す。Ｓは、短い区間（Ｓｈｏｒｔ区間）を表し、Ｌは、長い区間（Ｌｏｎｇ区間）を表す。ＶＳ（ｋ）は、短い区間に対して式（１）で算出される値を示す。ＶＬ（ｋ）は、長い区間に対して式（１）で算出される値を示す。ＳおよびＬのそれぞれに対して、ｎＸ、μＸに対応する値であるｎＳ、μＳ、および、ｎＬ、μＬが算出される。
【０１９０】
図２９は、尤度と判定値ｒ（ｋ）との関係の一例を示すグラフである。尤度と閾値とを比較する判定方法では、例えば、閾値を０．９７とすると、２００〜３００フレームの間では正常と判定される。一方、判定値ｒ（ｋ）と閾値（例えば１．０）とを比較する判定方法では、２００〜３００フレームの間での尤度の変動を検出し、異常と判定することが可能となる。
【０１９１】
［変形例３］
判定部１０６は、尤度と閾値との比較で正常か異常かを判定するだけでなく、尤度の経時変化も判定して出力するように構成してもよい。例えば、１つの正常時のモデルを用いる場合、判定部１０６は、算出した尤度を記憶部１０７等に記憶し、尤度の変化（経時的に減少しているか、等）を求めてもよい。
【０１９２】
図３０は、尤度の経時変化の一例を示す図である。判定部１０６は、例えば、判定した時間と尤度とを記憶することにより尤度の経時変化を求めることができる。判定部１０６は、尤度が閾値を下回ったときに異常と判定する点は上述の各実施形態と同様である。判定部１０６は、さらに、尤度の経時変化を示す情報、および、尤度が閾値を下回ると予測される時間等を求めて出力するように構成してもよい。
【０１９３】
［変形例４］
判定部１０６は、複数の閾値を用いて品質の程度（ランク、レベル）を判定するように構成してもよい。図３１および図３２は、複数の閾値を用いる例を説明するための図である。各図は、４つの閾値（閾値１〜閾値４）を用いる例であるが、閾値の個数は４に限られない。
【０１９４】
図３１では、４つ閾値との大小関係により品質ランクをＲ１〜Ｒ５の５つに分ける例が示されている。判定部１０６は、各閾値と尤度との比較により、品質ランクを決定して出力する。品質ランクは、例えば、加工機２００により加工された物体（加工物）の品質を示す情報（品質情報）として利用できる。
【０１９５】
図３２では、４つ閾値との大小関係により、正常であるか（問題なし）、要注意であるか、および、異常であるか（品質基準以下であるか）を判定する例が示されている。正常である場合は、さらに２つのレベルであるＬ１１、Ｌ１２に分けられる。同様に、要注意である場合は、さらに２つのレベルであるＬ２１、Ｌ２２に分けられる。３以上にさらに細分化してもよい。
【０１９６】
［変形例５］
判定部１０６は、品質ランクに応じて定められる複数のモデルを用いて複数の尤度を算出し、正常か否かの判定とともに、正常である場合の品質ランクを判定してもよい。図３３−１〜図３３−３は、変形例５による判定方法の一例を説明するための図である。
【０１９７】
図３３−１、図３３−２、および、図３３−３は、それぞれ品質ランクＲ１、Ｒ２、および、Ｒ３を判定するモデルにより算出される尤度の例を示す。品質ランクＲ１は、例えば、経時変化の初期の期間１で正常と判定される品質を表す。品質ランクＲ２は、例えば、経時変化の中間の期間２で正常と判定される品質を表す。品質ランクＲ３は、例えば、経時変化の終期の期間３で正常と判定される品質を表す。
【０１９８】
判定部１０６は、このような複数の品質ランクに対応する複数のモデルを用いて、複数の尤度を算出する。通常は、いずれか１つのモデルを用いたときの尤度が閾値を超える。判定部１０６は、閾値を超えたときの尤度を算出したモデルが示す品質ランクを決定して判定結果として出力する。いずれのモデルを用いたときも尤度が閾値を超えない場合、判定部１０６は、異常であると判定する。
【０１９９】
複数のモデルは、品質ランクごとに予め生成しておけばよい。本変形例によれば、単に正常か否かを判定するだけでなく、品質のレベルも判定することが可能となる。また、現在、経時変化のいずれの期間に相当するかを判定することも可能となる。
【０２００】
［変形例６］
判定部１０６は、複数のモデルを経過時間に応じて切り替えて使用して判定を実行してもよい。図３４−１〜図３４−３は、変形例６による判定方法の一例を説明するための図である。
【０２０１】
図３４−１、図３４−２、および、図３４−３は、それぞれ期間１、期間２、および、期間３に対して生成されたモデルにより算出される尤度の例を示す。期間１、期間２、および、期間３は、それぞれ経時変化の初期、中期、および、終期の期間に相当する。各モデルは、対応する期間の検出情報を用いて予め生成しておけばよい。
【０２０２】
判定部１０６は、例えば、累積使用時間等の期間を特定するためのコンテキスト情報を用いて、いずれの期間のモデルを適用するかを判定する。判定部１０６は、特定したモデルを用いて正常か否かを判定する。本変形例によれば現時点の状態が妥当な経時変化（正常な状態）であるか、妥当な経時変化から外れた状態（異常な状態）であるかを判定することが可能となる。
【０２０３】
［変形例７］
判定部１０６は、品質ランクに応じて定められる複数のモデルのうち、指定されたモデルを用いて判定を実行してもよい。例えば、より高品質な加工物が要求される場合は、判定部１０６は、高い品質ランクに対して定められるモデルを用いる。通常の品質の加工物が要求される場合は、判定部１０６は、高品質ランクより小さい品質ランクに対して定められるモデルを用いる。いずれのモデルを用いるかは、例えば、第１受信部１０１ａにより受信されるコンテキスト情報等を用いて決定してもよい。
【０２０４】
なお、上述の各実施形態および各変形例の診断装置および学習装置で実行されるプログラムは、ＲＯＭ等に予め組み込まれて提供される。
【０２０５】
上述の各実施形態および各変形例の診断装置および学習装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅｃｏｒｄａｂｌｅ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録してコンピュータ・プログラム・プロダクトとして提供するように構成してもよい。
【０２０６】
さらに、上述の各実施形態および各変形例の診断装置および学習装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、上述の各実施形態および各変形例の診断装置および学習装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【０２０７】
また、上述の各実施形態および各変形例の診断装置および学習装置で実行されるプログラムは、上述した各機能部を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記ＲＯＭからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各部が主記憶装置上に生成されるようになっている。
【符号の説明】
【０２０８】
１、１＿１、１＿２  診断システム
２  ネットワーク
５１  ＣＰＵ
５２  ＲＯＭ
５３  ＲＡＭ
５４  通信Ｉ／Ｆ
５５  駆動制御回路
５６  モータ
５７、５７＿１、５７＿２  センサ
５８  バス
６１  ＣＰＵ
６２  ＲＯＭ
６３  ＲＡＭ
６４  通信Ｉ／Ｆ
６５  センサＩ／Ｆ
６６  入出力Ｉ／Ｆ
６６ａ  入力装置
６６ｂ  ディスプレイ
６７  補助記憶装置
６８  バス
１００、１００ａ、１００ｂ、１００＿１、１００＿２  診断装置
１０１  通信制御部
１０１ａ  第１受信部
１０１ｂ  第１送信部
１０１ｃ  第２受信部
１０１ｄ  第２送信部
１０２  検知情報受信部
１０３  加工情報取得部
１０４  特徴抽出部
１０５、１０５ａ  モデル取得部
１０６、１０６ａ  判定部
１０７  記憶部
１０８  ハッシュ化部
１０９  暗号化部
１１０  表示制御部
１１１  表示部
１１２  入力部
２００、２００＿１、２００＿２  加工機
２０１  数値制御部
２０２  通信制御部
２０３  駆動制御部
２０４  駆動部
２１１  検知部
３００、３００ａ  学習装置
３０１  通信制御部
３０１ａ  送信部
３０１ｂ  受信部
３０２、３０２ａ  検知情報取得部
３０３、３０３ａ  加工情報取得部
３０４、３０４ａ  特徴抽出部
３０５、３０５ａ  生成部
３０６、３０６ａ  判定部
３０７、３０７ａ  結合部
３０８、３０８ａ  モデル選択部
３０９、３０９ａ＿２、３０９ｂ＿２  記憶部
７０１、７０１−２  コンテキスト情報
７１１ａ〜７１１ｃ  検知情報
７２１  検知情報
９０１  コンテキスト情報
９２１  検知情報
１１０１  コンテキスト情報
１１１１ａ〜１１１１ｃ  検知情報
１２０１  コンテキスト情報
１２２１ａ、１２２１ｂ  検知情報
１５０１  コンテキスト情報
１５１１、１５１２  波形区間
１６０１、１６０２  時刻
１６１１  区間
【先行技術文献】
【特許文献】
【０２０９】
【特許文献１】特許第５３６３９２７号公報
【図１】
2018025945.tif 000004
【図２】
2018025945.tif 000005
【図３】
2018025945.tif 000006
【図４】
2018025945.tif 000007
【図５】
2018025945.tif 000008
【図６】
2018025945.tif 000009
【図７】
2018025945.tif 000010
【図８】
2018025945.tif 000011
【図９】
2018025945.tif 000012
【図１０】
2018025945.tif 000013
【図１１】
2018025945.tif 000014
【図１２】
2018025945.tif 000015
【図１３】
2018025945.tif 000016
【図１４】
2018025945.tif 000017
【図１５】
2018025945.tif 000018
【図１６】
2018025945.tif 000019
【図１７】
2018025945.tif 000020
【図１８】
2018025945.tif 000021
【図１９】
2018025945.tif 000022
【図２０】
2018025945.tif 000023
【図２１】
2018025945.tif 000024
【図２２】
2018025945.tif 000025
【図２３】
2018025945.tif 000026
【図２４】
2018025945.tif 000027
【図２５】
2018025945.tif 000028
【図２６】
2018025945.tif 000029
【図２７】
2018025945.tif 000030
【図２８】
2018025945.tif 000031
【図２９】
2018025945.tif 000032
【図３０】
2018025945.tif 000033
【図３１】
2018025945.tif 000034
【図３２】
2018025945.tif 000035
【図３３−１】
2018025945.tif 000036
【図３３−２】
2018025945.tif 000037
【図３３−３】
2018025945.tif 000038
【図３４−１】
2018025945.tif 000039
【図３４−２】
2018025945.tif 000040
【図３４−３】
2018025945.tif 000041