(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-13
(45)【発行日】2024-05-21
(54)【発明の名称】装置、方法およびプログラム
(51)【国際特許分類】
G05B 23/02 20060101AFI20240514BHJP
【FI】
G05B23/02 Z
(21)【出願番号】P 2022007927
(22)【出願日】2022-01-21
【審査請求日】2023-04-11
(73)【特許権者】
【識別番号】000006507
【氏名又は名称】横河電機株式会社
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】藤井 英幸
(72)【発明者】
【氏名】片山 裕貴
【審査官】渡邊 捷太郎
(56)【参考文献】
【文献】特開2021-189792(JP,A)
【文献】特開2018-206199(JP,A)
【文献】特開2022-010199(JP,A)
【文献】特開2016-192034(JP,A)
【文献】国際公開第2021/095693(WO,A1)
【文献】国際公開第2019/130434(WO,A1)
【文献】国際公開第2021/149518(WO,A1)
【文献】特開2017-142739(JP,A)
【文献】中国特許出願公開第109218024(CN,A)
【文献】米国特許出願公開第2021/0158939(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 23/02
(57)【特許請求の範囲】
【請求項1】
学習モデルに学習処理を行うための複数の学習アルゴリズムのそれぞれについて、利用権限を有するアカウントを記憶する記憶部と、
各学習アルゴリズムの利用を、当該学習アルゴリズムについて利用権限を有するアカウントのユーザに制限する利用制御部と、
前記複数の学習アルゴリズムのうち一の学習アルゴリズムについて利用権限を有するアカウントのユーザから供給される学習データを用いて当該一の学習アルゴリズムにより学習モデルの学習処理を行う学習処理部と、
を備える装置。
【請求項2】
前記記憶部に新たな学習アルゴリズムを追加登録する登録部を備え、
前記登録部は、前記新たな学習アルゴリズムについて利用権限を有するアカウントに、当該新たな学習アルゴリズムの開発者のアカウントを含める、請求項1に記載の装置。
【請求項3】
前記記憶部は、利用権限の有効期限をさらに記憶する、請求項1または2に記載の装置。
【請求項4】
前記利用制御部は、前記複数の学習アルゴリズムのうち利用対象として選択された学習アルゴリズムについて利用権限を有しないアカウントのユーザに対し、前記複数の学習アルゴリズムのうち当該アカウントが利用権限を有する学習アルゴリズムの何れかを利用させる、請求項1から3の何れか一項に記載の装置。
【請求項5】
前記利用制御部は、各学習モデルの利用を、前記複数の学習アルゴリズムのうち、当該学習モデルの学習処理で用いられた学習アルゴリズムについて利用権限を有するアカウントのユーザに制限する、請求項1から4の何れか一項に記載の装置。
【請求項6】
前記記憶部は、各学習モデルについて利用権限を有するアカウントをさらに記憶し、
前記利用制御部は、各学習モデルの利用を、当該学習モデルについて利用権限を有するアカウントのユーザに制限する、請求項1から4の何れか一項に記載の装置。
【請求項7】
前記利用制御部は、複数の前記学習モデルのうち利用対象として選択された学習モデルについて利用権限を有しないアカウントのユーザに対し、前記複数の学習モデルのうち当該アカウントが利用権限を有する学習モデルの何れかを利用させる、請求項5または6に記載の装置。
【請求項8】
前記一の学習アルゴリズムにより学習処理が行われた一の学習モデルついて利用権限を有する一のアカウントのユーザから、または、当該一のアカウントのユーザにより設定されたセンサから、当該一の学習モデルに対する入力データを取得する入力データ取得部と、
前記入力データ取得部により取得された前記入力データを前記一の学習モデルに供給する供給部と、
前記入力データが入力された前記一の学習モデルから出力される出力データを前記一のアカウントのユーザに出力する出力部と、
をさらに備える、請求項5から7の何れか一項に記載の装置。
【請求項9】
前記一の学習モデルから出力される出力データの精度を取得する精度取得部と、
前記精度取得部により取得された精度が基準値よりも低いことに応じて、その旨を前記一のアカウントのユーザに報知する報知部と、
をさらに備える、請求項8に記載の装置。
【請求項10】
前記供給部は、前記入力データ取得部により取得された前記入力データを、他の学習モデルにさらに供給し、
前記精度取得部は、前記他の学習モデルから出力される出力データの精度をさらに取得し、
前記報知部は、前記一の学習モデルの出力データの精度よりも、前記他の学習モデルの出力データの精度の方が高いことに応じて、その旨を前記一のアカウントのユーザに報知する、請求項9に記載の装置。
【請求項11】
前記学習処理部は、前記一のアカウントのユーザからの指示に応じて、前記入力データを含む学習データを用いて、前記一の学習モデルの学習処理をさらに行う、請求項8から10の何れか一項に記載の装置。
【請求項12】
学習モデルに学習処理を行うための複数の学習アルゴリズムのそれぞれについて、利用権限を有するアカウントを記憶する記憶段階と、
各学習アルゴリズムの利用を、当該学習アルゴリズムについて利用権限を有するアカウントのユーザに制限する利用制御段階と、
前記複数の学習アルゴリズムのうち一の学習アルゴリズムについて利用権限を有するアカウントのユーザから供給される学習データを用いて当該一の学習アルゴリズムにより学習モデルの学習処理を行う学習処理段階と、
を備える方法。
【請求項13】
コンピュータを、
学習モデルに学習処理を行うための複数の学習アルゴリズムのそれぞれについて、利用権限を有するアカウントを記憶する記憶部と、
各学習アルゴリズムの利用を、当該学習アルゴリズムについて利用権限を有するアカウントのユーザに制限する利用制御部と、
前記複数の学習アルゴリズムのうち一の学習アルゴリズムについて利用権限を有するアカウントのユーザから供給される学習データを用いて当該一の学習アルゴリズムにより学習モデルの学習処理を行う学習処理部
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、装置、方法およびプログラムに関する。
【背景技術】
【0002】
特許文献1には、「実地データ(in-the-field data)を使用して興味深い予測を生成できるトレーニング済み機械学習モデルを構築しようとする際に…研究者が必要とするデータにアクセスできない」と記載されている。
[先行技術文献]
[特許文献]
[特許文献1] 特表2019-526851号公報
【発明の概要】
【0003】
本発明の第1の態様においては、装置が提供される。装置は、複数の学習アルゴリズムのそれぞれについて、利用権限を有するアカウントを記憶する記憶部を備えてよい。装置は、各学習アルゴリズムの利用を、当該学習アルゴリズムについて利用権限を有するアカウントのユーザに制限する利用制御部を備えてよい。装置は、複数の学習アルゴリズムのうち一の学習アルゴリズムについて利用権限を有するアカウントのユーザから供給される学習データを用いて当該一の学習アルゴリズムにより学習モデルの学習処理を行う学習処理部を備えてよい。
【0004】
装置は、記憶部に新たな学習アルゴリズムを追加登録する登録部を備えてよい。登録部は、新たな学習アルゴリズムについて利用権限を有するアカウントに、当該新たな学習アルゴリズムの開発者のアカウントを含めてよい。
【0005】
記憶部は、利用権限の有効期限をさらに記憶してよい。
【0006】
利用制御部は、複数の学習アルゴリズムのうち利用対象として選択された学習アルゴリズムについて利用権限を有しないアカウントのユーザに対し、複数の学習アルゴリズムのうち当該アカウントが利用権限を有する学習アルゴリズムの何れかを利用させてよい。
【0007】
利用制御部は、各学習モデルの利用を、複数の学習アルゴリズムのうち、当該学習モデルの学習処理で用いられた学習アルゴリズムについて利用権限を有するアカウントのユーザに制限してよい。
【0008】
記憶部は、各学習モデルについて利用権限を有するアカウントをさらに記憶してよい。利用制御部は、各学習モデルの利用を、当該学習モデルについて利用権限を有するアカウントのユーザに制限してよい。
【0009】
利用制御部は、複数の学習モデルのうち利用対象として選択された学習モデルについて利用権限を有しないアカウントのユーザに対し、複数の学習モデルのうち当該アカウントが利用権限を有する学習モデルの何れかを利用させてよい。
【0010】
装置は、一の学習アルゴリズムにより学習処理が行われた一の学習モデルついて利用権限を有する一のアカウントのユーザから、または、当該一のアカウントのユーザにより設定されたセンサから、当該一の学習モデルに対する入力データを取得する入力データ取得部を備えてよい。装置は、入力データ取得部により取得された入力データを一の学習モデルに供給する供給部を備えてよい。装置は、入力データが入力された一の学習モデルから出力される出力データを一のアカウントのユーザに出力する出力部を備えてよい。
【0011】
装置は、一の学習モデルから出力される出力データの精度を取得する精度取得部を備えてよい。装置は、精度取得部により取得された精度が基準値よりも低いことに応じて、その旨を一のアカウントのユーザに報知する報知部を備えてよい。
【0012】
供給部は、入力データ取得部により取得された入力データを、他の学習モデルにさらに供給してよい。精度取得部は、他の学習モデルから出力される出力データの精度をさらに取得してよい。報知部は、一の学習モデルの出力データの精度よりも、他の学習モデルの出力データの精度の方が高いことに応じて、その旨を一のアカウントのユーザに報知してよい。
【0013】
学習処理部は、一のアカウントのユーザからの指示に応じて、入力データを含む学習データを用いて、一の学習モデルの学習処理をさらに行ってよい。
【0014】
本発明の第2の態様においては、方法が提供される。方法は、複数の学習アルゴリズムのそれぞれについて、利用権限を有するアカウントを記憶する記憶段階を備えてよい。方法は、各学習アルゴリズムの利用を、当該学習アルゴリズムについて利用権限を有するアカウントのユーザに制限する利用制御段階を備えてよい。方法は、複数の学習アルゴリズムのうち一の学習アルゴリズムについて利用権限を有するアカウントのユーザから供給される学習データを用いて当該一の学習アルゴリズムにより学習モデルの学習処理を行う学習処理段階を備えてよい。
【0015】
本発明の第3の態様においては、プログラムが提供される。プログラムは、コンピュータを、複数の学習アルゴリズムのそれぞれについて、利用権限を有するアカウントを記憶する記憶部として機能させてよい。プログラムは、コンピュータを、各学習アルゴリズムの利用を、当該学習アルゴリズムについて利用権限を有するアカウントのユーザに制限する利用制御部として機能させてよい。プログラムは、コンピュータを、複数の学習アルゴリズムのうち一の学習アルゴリズムについて利用権限を有するアカウントのユーザから供給される学習データを用いて当該一の学習アルゴリズムにより学習モデルの学習処理を行う学習処理部として機能させてよい。
【0016】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0017】
【
図2】新たな学習アルゴリズムを追加登録する場合に装置2によって表示される画面を示す。
【
図3】ユーザ毎に利用権限を設定する場合に装置2によって表示される画面を示す。
【
図7】本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ2200の例を示す。
【発明を実施するための形態】
【0018】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0019】
[1.システム1]
図1は、本実施形態に係るシステム1を示す。システム1は、1または複数のユーザ端末10と、設備11と、装置2とを備える。
【0020】
[1.1.ユーザ端末10]
各ユーザ端末10は、ユーザにより操作される端末である。ユーザ端末10は、一例としてPCであってよい。各ユーザ端末10のユーザは、装置2によって提供されるサービスを利用するためのアカウントを有してよい。
【0021】
[1.2.設備11]
各設備11は、それぞれユーザにより操業される。各設備11には、1または複数のセンサ111が設けられてよい。例えば設備11は、複数の機器110が設けられたプラントでもよいし、複数の機器110を複合させた複合装置でもよい。プラントとしては、化学やバイオ等の工業プラントの他、ガス田や油田等の井戸元やその周辺を管理制御するプラント、水力・火力・原子力等の発電を管理制御するプラント、太陽光や風力等の環境発電を管理制御するプラント、上下水やダム等を管理制御するプラント等が挙げられる。
【0022】
[1.2.1.機器110]
各機器110は、器具、機械または装置であり、例えば、設備11のプロセスにおける圧力、温度、pH、速度、流量などの少なくとも1つの物理量を制御するバルブ、ポンプ、ヒータ、ファン、モータ、スイッチ等のアクチュエータであってよい。各機器110は互いに異種でもよいし、少なくとも一部の2以上の機器110が同種でもよい。本実施形態では一例として、機器110は外部から有線または無線で制御されるが、手動で制御されてもよい。
【0023】
[1.2.2.センサ111]
各センサ111は、設備11の状態の測定を行う。センサ111は、圧力、温度、pH、速度、流量などの少なくとも1つの物理量を測定してよい。また、センサ111は、設備11の収量や、生産物の品質、混入する不純物の割合、各機器110の運転状況などの測定を行ってもよい。各センサ111は互いに異種でもよいし、少なくとも一部の2以上のセンサ111が同種でもよい。一例として、複数のセンサ111は、設備11内の炉における別々の位置に設けられた温度センサであってよい。各センサ111は、測定データをユーザ端末10に供給してよい。
【0024】
[1.3.装置2]
装置2は、学習モデル2110の生成及び運用を行う。装置2は、学習モデル2110の生成および運用のサービスを提供する事業者(ベンダとも称する)により設置されてよく、ベンダによって使用される部分(ベンダ領域20とも称する)と、提供されるサービスを利用するユーザによって使用される部分(ユーザ領域21とも称する)とを有してよい。ユーザ領域21は、ユーザ毎に設けられてよい。
【0025】
装置2は、ベンダ領域20にアルゴリズム記憶部200と、管理データ記憶部201と、管理部202と、制御部203とを有してよい。また、装置2は、各ユーザ領域21に操作取得部210と、記憶部211と、学習データ取得部212と、学習処理部213と、入力データ取得部214と、供給部215と、出力部216と、精度取得部217と、報知部218とを有してよい。なお、装置2は、1または複数のコンピュータであってよく、PCなどで構成されてもよいし、クラウドコンピューティングにより実現されてもよい。
【0026】
[1.3.1.アルゴリズム記憶部200]
アルゴリズム記憶部200は、1または複数の学習アルゴリズムを記憶する。学習アルゴリズムは、機械学習を行うためのアルゴリズムであってよく、後述の学習処理部213によって学習処理に用いられてよい。例えば、学習アルゴリズムは、ランダムフォレストや、ニューラルネットワーク、サポートベクタマシン、ロジスティック回帰などであってよい。学習アルゴリズムは、PhythonやR言語などのプログラミング言語で記述されたプログラムであってよい。
【0027】
アルゴリズム記憶部200には、ベンダから供給される新たな学習アルゴリズムが追加記憶されてよい。新たな学習アルゴリズムとは、既にアルゴリズム記憶部200に記憶されている既存の学習アルゴリズムに対して修正が加えられたものであってもよいし、既存の学習アルゴリズムとは異なる種類のもの(一例としてナイーブベイズやマルコフ連鎖など)であってもよい。
【0028】
[1.3.2.管理データ記憶部201]
管理データ記憶部201は、記憶部の一例であり、複数の学習アルゴリズムのそれぞれについて、利用権限を有するアカウントを記憶する。一例として、管理データ記憶部201は、リレーショナルデータベースであってよい。
【0029】
ここで、学習アルゴリズムの利用とは、当該学習アルゴリズムを用いて学習モデル2110の学習処理を行うことであってよい。これに加えて、または、これに代えて、学習アルゴリズムの利用は、当該学習アルゴリズムを用いて学習処理が行われた学習モデル2110を利用することであってもよいし、学習アルゴリズムをユーザ領域や、装置2に接続された外部機器へコピーすることであってもよい。管理データ記憶部201は、アルゴリズム記憶部200に記憶された少なくとも一部の学習アルゴリズムについて、利用権限を有するアカウントを記憶してよい。管理データ記憶部201は、全ユーザに利用権限を付与すべき一部の学習アルゴリズムについては、利用権限を有するアカウントとして、全てのユーザのアカウントを記憶してよい。このような学習アルゴリズムは、一例として、アルゴリズム記憶部200にデフォルトで記憶された学習アルゴリズムや、精度の低い学習モデル2110が生成される学習アルゴリズムであってよい。
【0030】
管理データ記憶部201は、利用権限の有効期限をさらに記憶してよい。有効期限が記憶される場合に、利用権限を有するアカウントとは、有効期限内の利用権限を有するアカウントであってよい。有効期限は、一部の学習アルゴリズムの利用権限についてのみ設定されてもよいし、一部のアカウントの利用権限についてのみ設定されてもよい。また、有効期限は、全ての利用権限について設定されてもよい。有効期限は利用権限ごとに異なってよく、一例として1月や1年などでもよいし、無期限でもよい。
【0031】
管理データ記憶部201は、学習処理により生成された各学習モデル2110について、利用権限を有するアカウントをさらに記憶してよい。本実施形態では一例として学習モデル2110について利用権限を有するアカウントは、当該学習モデル2110の学習処理に用いられた学習アルゴリズムについて利用権限を有するアカウントの少なくとも一部であるが、当該学習アルゴリズムについての利用権限を有しないアカウントであってもよい。管理データ記憶部201は、学習モデル2110の利用権限について有効期限をさらに記憶してもよい。学習モデル2110についての利用権限の有効期限は、学習アルゴリズムについての利用権限の有効期限と同様に、一部の学習モデル2110の利用権限についてのみ設定されてもよいし、一部のアカウントの利用権限についてのみ設定されてもよい。また、有効期限は、全ての利用権限について設定されてもよい。学習モデル2110についての利用権限の有効期限は利用権限ごとに異なってよく、一例として1月や1年などでもよいし、無期限でもよい。
【0032】
また、管理データ記憶部201は、各学習アルゴリズムに対応付けて、そのメタデータをさらに記憶してよい。学習アルゴリズムのメタデータは、その識別番号、名称、詳細情報、アイコン情報(一例としてアイコンの画像データや、その格納アドレス)、および、使用手順などの少なくとも1つを含んでよい。同様に、管理データ記憶部201は、各学習モデル2110に対応付けてメタデータをさらに記憶してよい。
【0033】
[1.3.3.管理部202]
管理部202は、アルゴリズム記憶部200および管理データ記憶部201の記憶内容を管理する。
【0034】
管理部202は、ベンダのオペレータから供給される新たな学習アルゴリズムをアルゴリズム記憶部200に記憶させてよい。また、管理部202は、ベンダのオペレータによる装置2の操作に応じて、アルゴリズム記憶部200に記憶された学習アルゴリズムを編集してよい。
【0035】
また、管理部202は、登録部の一例であってよく、管理データ記憶部201に新たな学習アルゴリズムを追加登録してよい。管理部202は、ベンダのオペレータによる装置2の操作に応じ、新たな学習アルゴリズムを利用権限の設定対象として管理データ記憶部201に新たに記憶させることで、学習アルゴリズムの追加登録を行ってよい。
【0036】
管理部202は、追加登録される新たな学習アルゴリズムに対応付けて、そのメタデータを管理データ記憶部201に記憶させてよい。また、管理部202は、管理データ記憶部201に新たな学習アルゴリズムを追加登録する場合には、当該新たな学習アルゴリズムについて利用権限を有するアカウントを管理データ記憶部201に記憶させてよい。管理データ記憶部201は、新たな学習アルゴリズムの開発者のアカウントを、当該学習アルゴリズムについて利用権限を有するアカウントに含めてよい。管理部202は、ベンダのオペレータによる装置2の操作に応じて、管理データ記憶部201に記憶されたメタデータや、アカウントを編集してよい。
【0037】
なお、新たな学習アルゴリズムは、ベンダおよびユーザの少なくとも一方によって開発されてよく、利用権限が設定されるアカウントは、当該学習アルゴリズムの少なくとも一部を開発したユーザのアカウントであってよい。
【0038】
[1.3.4.制御部203]
制御部203は、装置2の各部を制御する。
【0039】
例えば、制御部203は、利用制御部の一例であってよく、各学習アルゴリズムの利用を、当該学習アルゴリズムについて利用権限を有するアカウントのユーザに制限してよい。制御部203は、後述の操作取得部210から供給されるユーザのアカウントと、利用される学習アルゴリズムについて管理データ記憶部201に記憶されたアカウントとを照合して、学習アルゴリズムの利用制限を行ってよい。
【0040】
一例として、制御部203は、一の学習アルゴリズムを用いた学習処理を、当該一の学習アルゴリズムについて利用権限を有するアカウントのユーザに制限してよい。制御部203は、一の学習アルゴリズムについて利用権限を有しないアカウントのユーザによって、当該一の学習アルゴリズムを用いた学習処理が後述の学習処理部213により行われる場合に、学習処理部213をディセーブルしてよい。
【0041】
また、制御部203は、各学習モデル2110の利用を、当該学習モデル2110について利用権限を有するアカウントのユーザに制限してよい。制御部203は、操作取得部210から供給されるユーザのアカウントと、利用される学習モデル2110について管理データ記憶部201に記憶されたアカウントとを照合して、学習モデル2110の利用制限を行ってよい。制御部203は、一の学習モデル2110について利用権限を有しないアカウントのユーザによって当該一の学習モデル2110の利用が行われる場合に、学習モデル2110をディセーブルしてよい。
【0042】
また、制御部203は、図示しない表示部に、学習アルゴリズムについてのメタデータや、その入力画面または編集画面を表示させてもよいし、学習アルゴリズムのリストを表示させてもよいし、ユーザ毎の利用権限の設定画面を表示させてもよい。
【0043】
[1.3.5.操作取得部210]
操作取得部210は、装置2により提供されるサービスのユーザから種々の操作を取得する。操作取得部210は、ユーザ端末10から操作を取得してよい。操作取得部210は、取得した操作の内容から、ユーザによる入力内容や選択内容を取得してよい。例えば、操作取得部210は、ユーザのアカウントを取得してもよいし、利用する学習アルゴリズムや学習モデル2110の選択内容を取得してもよい。操作取得部210は、取得した内容を制御部203に供給してよい。
【0044】
[1.3.6.記憶部211]
記憶部211は、種々の情報を記憶する。本実施形態では一例として、記憶部211は、1または複数の学習モデル2110と、学習データ2111と、運用データ2112とを記憶してよい。なお、ユーザ領域21の記憶部211に記憶される情報は、ベンダからアクセス可能であってよい。
【0045】
各学習モデル2110は、学習処理部213による学習処理によって生成される。各学習モデル2110は、入力データが入力されることに応じて、推定や判定、評価の結果を示す出力データを出力してよい。
【0046】
本実施形態では一例として、学習モデル2110は、センサ111による測定データが入力データとして入力されることに応じて、設備11の状態や設備11の異常原因、設備11の生産物の状態などを示す出力データを出力してよい。
【0047】
これに加えて、または、これに代えて、学習モデル2110は、センサ111により取得されたデータが入力データとして入力されることに応じて、設備11や生産物について目標の状態を実現するのに推奨される設備11の制御内容を示す出力データを出力してよい。設備11の制御内容は、設備11のプロセスにおける圧力、温度、pH、速度、流量などの少なくとも1つの物理量を示してもよいし、設備11に設けられた機器110に対する制御パラメータを示してもよい。
【0048】
学習データ2111は、学習モデル2110の学習処理に用いられる。学習データ2111は、学習処理後の学習モデル2110に対する入力データおよび出力データと同種のデータを含んでよい。一例として、学習データ2111は、設備11が以前に操業されたときの測定データと、設備11や生産物の実際の状態を示すデータとを含んでよい。また、学習データ2111は、設備11が以前に操業されたときの測定データと、設備11の制御内容とを含んでよい。
【0049】
運用データ2112は、学習処理後の学習モデル2110が利用された場合の、学習モデル2110に対する入力データと、学習モデル2110からの出力データとを有する。なお、学習データ2111に含まれる入力データと、運用データ2112に含まれる入力データとは、必ずしも同じ設備11のセンサ111により測定されていなくてもよい。別言すれば、学習モデル2110は、学習段階においては、一の設備11のセンサ111により測定された入力データを含む学習データで学習処理が行われてよく、学習後の運用段階においては、他の設備11のセンサ111により測定された入力データが入力されてよい。
【0050】
[1.3.7.学習データ取得部212]
学習データ取得部212は、ユーザから学習データを取得する。本実施形態では一例として、学習データ取得部212は、ユーザ端末10から学習データを取得してよい。学習データ取得部212は、取得した学習データを記憶部211に記憶させてよい。
【0051】
[1.3.8.学習処理部213]
学習処理部213は、アルゴリズム記憶部200に記憶された何れかの学習アルゴリズムによって学習モデル2110の学習処理を行う。学習処理部213は、複数の学習アルゴリズムのうち、一の学習アルゴリズムについて利用権限を有するアカウントのユーザから供給される学習データを用いて、当該一の学習アルゴリズムにより学習モデル2110の学習処理を行ってよい。本実施形態では一例として、学習処理部213は、当該学習処理部213と同じユーザ領域内の記憶部211に記憶される学習データ2111を用いて学習処理を行ってよい。これにより、一の学習アルゴリズムによる学習処理に用いられる学習データは、当該一の学習アルゴリズムについて利用権限を有するアカウントのユーザから供給される学習データに制限されてよい。
【0052】
[1.3.9.入力データ取得部214]
入力データ取得部214は、学習モデル2110に対する入力データをユーザから取得する。入力データ取得部214は、一の学習アルゴリズムにより学習処理が行われた一の学習モデル2110ついて利用権限を有する一のアカウントのユーザから、または、当該一のアカウントのユーザにより設定されたセンサ111から、当該一の学習モデル2110に対する入力データを取得してよい。本実施形態では一例として入力データ取得部214は、ユーザ端末10から入力データを取得してよい。また、入力データ取得部214は、ユーザ端末10から供給されて予め記憶部211に記憶された学習データ2111から入力データを取得してもよい。入力データ取得部214は、取得した入力データを供給部215に供給してよい。
【0053】
[1.3.10.供給部215]
供給部215は、入力データ取得部214により取得された、一の学習モデル2110に対する入力データを当該一の学習モデル2110に供給する。
【0054】
[1.3.11.出力部216]
出力部216は、供給部215によって入力データが入力された一の学習モデル2110から出力される出力データを、上述の一のアカウントのユーザ、つまり、入力データの供給元のユーザに出力する。
【0055】
[1.3.12.精度取得部217]
精度取得部217は、一の学習モデル2110から出力される出力データの精度を取得する。出力データの精度は、出力データの正確さの度合いであってよい。また、出力データの精度は、学習モデル2110による推定や判定、評価の正確さの度合いであってよい。
【0056】
例えば、出力データが設備11や生産物の状態を2値や多値の状態パラメータで示す場合には、精度は、出力データで示される状態パラメータの値と、実際の設備や生産物の状態に応じた状態パラメータの値との近似度であってよい。これに代えて、出力データが設備11や生産物について目標の状態を実現するのに推奨される設備11の制御内容を2値や多値の制御パラメータで示す場合には、精度は、出力データで示される制御パラメータの値で設備11を実際に制御した場合の状態を示す実際の状態パラメータの値と、目標の状態を示す状態パラメータの値との近似度であってよい。
【0057】
精度取得部217は、精度を算出してよい。精度取得部217は、取得した精度を報知部218に供給してよい。
【0058】
[1.3.13.報知部218]
報知部218は、精度取得部217により取得された精度が基準値よりも低いことに応じて、学習モデル2110を使用した一のアカウントのユーザにその旨を報知する。基準値は任意に設定されてよい。報知を受けたアカウントのユーザは、利用する学習モデル2110を変更してもよいし、改めて学習モデル2110の学習処理を行ってもよいし、基準値を変更してもよい。
【0059】
以上の装置2によれば、ユーザから供給される学習データを用いて学習モデル2110の学習処理が行われるので、ユーザが有するデータ、ひいては当該データのドメインに固有のドメイン知識をベンダ側に集約することができる。従って、ドメインに適した学習アルゴリズムをベンダ側で開発することが可能となる。
また、各学習アルゴリズムの利用が当該学習アルゴリズムについて利用権限を有するアカウントのユーザに制限され、一の学習アルゴリズムについて利用権限を有するアカウントのユーザから供給される学習データを用いて、当該一の学習アルゴリズムにより学習モデル2110の学習処理が行われる。従って、利用権限を有しないアカウントのユーザによる学習アルゴリズムの利用を防止し、利用権限を有するアカウントのユーザによる学習アルゴリズムの利用を効率化することができる。また、ニーズに応じた学習アルゴリズムを各アカウントのユーザに利用させて所望の学習モデル2110を生成させることができる。また、学習アルゴリズムや、生成された学習モデル2110をアカウントのユーザに利用させることによる収益化を可能とすることができる。
【0060】
また、新たな学習アルゴリズムが追加登録され、当該新たな学習アルゴリズムについて利用権限を有するアカウントに、その開発者のアカウントが含まれる。従って、新たな学習アルゴリズムの開発者は、その利用を継続しつつ、当該学習アルゴリズムの管理をベンダに任せることができる。よって、学習アルゴリズムの開発者に対して新たな学習アルゴリズムの登録を促し、利用可能な学習アルゴリズムの数を増やすことができる。また、新たに開発された学習アルゴリズムについての情報をベンダ側に集約することができる。
【0061】
また、管理データ記憶部201には利用権限の有効期限がさらに記憶されるので、各学習アルゴリズムの利用が、当該学習アルゴリズムについて有効期限内の利用権限を有するアカウントのユーザに制限される。従って、学習アルゴリズムの利用者をさらに制限し、利用権限を有するアカウントのユーザによる学習アルゴリズムの利用をいっそう効率化することができる。
【0062】
また、各学習モデル2110の利用が、学習処理で用いられた学習アルゴリズムについて利用権限を有するアカウントのユーザに制限される。従って、学習アルゴリズムについて利用権限を有さないアカウントのユーザによる学習モデル2110の利用を防止し、学習モデル2110の利用を効率化することができる。また、学習モデル2110の利用を希望するアカウントのユーザに対し、利用権限の取得を促すことができる。
【0063】
また、一の学習モデル2110ついて利用権限を有する一のアカウントのユーザや、当該ユーザにより設定されたセンサ111から入力データが取得されて当該一の学習モデル2110に供給され、当該一の学習モデル2110から出力される出力データが一のアカウントのユーザに供給される。従って、利用権限を有するアカウントのユーザが装置2を介して学習モデル2110を利用し、学習モデル2110から入力データに応じた出力データを取得することができる。
【0064】
また、一の学習モデル2110から出力される出力データの精度が基準値よりも低いことに応じて、学習モデル2110を利用したアカウントのユーザにその旨が報知される。従って、精度の低い学習モデル2110を利用するアカウントのユーザに対し、当該学習モデル2110に対するさらなる学習処理や、利用する学習モデル2110の変更を促すことができる。
【0065】
[2.表示画面例]
図2は、新たな学習アルゴリズムを追加登録する場合に装置2によって表示される画面を示す。新たな学習アルゴリズムを追加登録する場合には、当該学習アルゴリズムのメタデータ(本実施形態では一例として、学習アルゴリズムの識別番号や名称、詳細情報、アイコン情報、使用手順など)の入力欄2011が表示画面に表示されてよく、入力内容に応じたメタデータが管理データ記憶部201に記憶されてよい。また、表示画面には、学習アルゴリズムをアルゴリズム記憶部200に記憶させるためのアップロードボタン2012が表示されてよい。
【0066】
なお、管理データ記憶部201に登録された学習アルゴリズムを確認する場合には、登録された学習アルゴリズムのリストが表示画面に表示されてよい。学習アルゴリズムのリストには、各学習アルゴリズムのメタデータが一覧表示されてよい。この状態において管理部202は、ベンダのオペレータによる装置2の操作に応じて、メタデータの内容の編集や、学習アルゴリズムの追加登録、削除を行ってよい。
【0067】
図3は、ユーザ毎に利用権限を設定する場合に装置2によって表示される画面を示す。ユーザ毎に利用権限を設定する場合には、選択されたユーザのアカウントと、管理データ記憶部201に登録された各学習アルゴリズムの名称と、利用権限を設定するための学習アルゴリズムごとのチェックボックスとが表示画面に表示されてよい。また、何れかの学習アルゴリズムが選択された場合には、当該学習アルゴリズムによって学習処理が行われた学習モデル2110の名称と、利用権限を設定するための学習アルゴリズムごとのチェックボックスとが表示画面に示されてよい。利用権限が設定された学習アルゴリズムや学習モデル2110に対しては、その有効期限の入力欄2013が表示されてよい。
【0068】
[3.装置2の動作]
図4、
図5は、装置2の動作を示す。装置2は、ステップS1~S55の処理を実行することにより学習モデル2110の生成および運用を行ってよい。なお、この動作においては、予めアルゴリズム記憶部200に学習アルゴリズムが記憶されてよく、管理データ記憶部201には各学習アルゴリズムについて、利用権限を有するアカウントが記憶されてよい。
【0069】
ステップS1において操作取得部210は、ユーザのアカウント(他のユーザのアカウントと区別して第1ユーザの第1アカウントとも称する)を取得する。操作取得部210は、装置2により提供されるサービスにログインする第1ユーザから第1アカウントを取得してよい。
【0070】
ステップS3において操作取得部210は、利用対象の学習アルゴリズムの選択操作を取得する。操作取得部210は、アルゴリズム記憶部200に記憶された複数の学習アルゴリズムの何れかを利用対象とする選択操作を取得してよい。
【0071】
ステップS5において制御部203は、選択された学習アルゴリズムに対し、第1アカウントが利用権限を有するか否かを判定する。制御部203は、利用権限の有効期限が切れている場合には、第1アカウントが利用権限を有しないと判定してよい。ステップS5において第1アカウントが利用権限を有しないと判定された場合(ステップS5;No)には、ステップS7に処理が移行してよい。ステップS5において第1アカウントが利用権限を有すると判定された場合(ステップS5;Yes)にはステップS13に処理が移行してよい。
【0072】
ステップS7において制御部203は、選択された学習アルゴリズムに対して利用権限を申請する操作が操作取得部210を介して行われるか否かを判定する。ステップS7において利用権限の申請操作が行われないと判定した場合(ステップS7;No)にはステップS9に処理が移行してよい。ステップS7において利用権限の申請操作が行われたと判定した場合(ステップS7;Yes)には、ステップS11に処理が移行してよい。
【0073】
ステップS9において制御部203は、アルゴリズム記憶部200内の他の学習アルゴリズムの利用を提案する旨のメッセージを第1ユーザに供給してよい。これにより、利用権限の無いユーザによる学習アルゴリズムの利用が防止され、各学習アルゴリズムの利用が、当該学習アルゴリズムについて利用権限を有するアカウントのユーザに制限される。また、選択された学習アルゴリズムについて利用権限を有しないアカウントのユーザは、当該アカウントが利用権限を有する学習アルゴリズムの何れかを利用することとなる。制御部203は、第1アカウントが利用権限を有する学習アルゴリズムの一覧を第1ユーザに供給し、何れかの学習アルゴリズムを第1ユーザに選択させてよい。ステップS9の処理が完了したら、上述のステップS3に処理が移行してよい。
【0074】
ステップS11において制御部203は、選択された学習アルゴリズムについての利用権限を第1アカウントに設定する。制御部203は、第1アカウントを、選択された学習アルゴリズムについて利用権限を有するアカウントとして管理データ記憶部201に記憶させてよい。制御部203は、選択された学習アルゴリズムの利用料金が支払われることを条件として利用権限を設定してよい。
【0075】
ステップS13において制御部203は、サービスの利用形態として、学習モデル2110の学習処理と、学習モデル2110の利用との何れが第1ユーザにより選択されるかを判定する。学習モデル2110の学習処理が選択されたと判定した場合(ステップS13;モデルの学習)には、ステップS15に処理が移行してよい。学習モデル2110の利用が選択されたと判定した場合(ステップS13;モデルの利用)には、ステップS21に処理が移行してよい。
【0076】
ステップS15において学習処理部213は、選択された学習アルゴリズムによって学習モデル2110の学習処理を行う。学習処理部213は、第1ユーザから供給される学習データを用いて当該一の学習アルゴリズムにより学習モデル2110の学習処理を行ってよい。学習処理部213は、記憶部211に記憶された学習データ2111(一例として記憶部211に記憶された学習データ2111のうち第1ユーザにより選択された学習データ2111)を用いて学習処理を行ってよい。学習処理部213は、学習データ2111の一部を後述のステップS21~S31での精度確認用としておき、残りの学習データ2111を用いて学習処理を行ってよい。
【0077】
なお、学習処理部213は、第1ユーザからの指示に応じて、後述のステップS41~S55の処理で既に用いられた学習モデル2110の学習処理をさらに行ってよい。学習処理部213は、後述のステップS53で当該学習モデル2110に入力された入力データを含む学習データを用いて学習処理を行ってよい。
【0078】
学習処理後には、生成された学習モデル2110(他の学習モデル2110と区別して学習モデル2110Aとも称する)が第1ユーザのユーザ領域21の記憶部211に記憶されてよい。また、管理データ記憶部201には、学習モデル2110Aについて利用権限を有するアカウントとして、第1アカウントが記憶されてよい。この場合に、管理データ記憶部201には、利用権限の有効期限として、予め設定された基準期限が記憶されてよい。これに代えて、学習モデル2110Aについての利用権限は、ベンダのオペレータの操作に応じて管理データ記憶部201に記憶されてもよい。
【0079】
ステップS21において入力データ取得部214は、記憶部211に記憶された学習データ2111のうち、ステップS15において精度確認用とされて学習処理に用いられなかった学習データから、学習モデル2110Aに対する入力データを取得する。
【0080】
ステップS23において供給部215は、取得された入力データを、学習モデル2110Aに供給する。本実施形態では一例として、供給部215は、取得された入力データを、1または複数の他の学習モデル2110にもさらに供給してよい。他の学習モデル2110は、第1ユーザのユーザ領域21における各学習モデル2110のうち、学習モデル2110Aとは異なる学習モデル2110であってよい。これに代えて、他の学習モデル2110は、装置2内の他のユーザ領域21における学習モデル2110であってもよい。
【0081】
ステップS31において精度取得部217は、学習モデル2110Aの出力データの精度を取得する。精度取得部217は、出力データで示される状態パラメータの値と、実際の状態パラメータの値との近似度を精度として取得する場合には、学習モデル2110Aから出力データを取得すると共に、実際の状態パラメータの値を第1ユーザから取得して、精度を算出してよい。また、精度取得部217は、目標の状態を示す状態パラメータの値と、実際の状態パラメータの値との近似度を精度として取得する場合には、目標の状態を示す状態パラメータの値を学習モデル2110Aから取得すると共に、実際の状態パラメータの値を第1ユーザから取得して、精度を算出してよい。
【0082】
精度取得部217は、上述のステップS23で入力データが供給された他の学習モデル2110から出力される出力データの精度をさらに取得してもよい。精度取得部217は、学習モデル2110Aの出力データの精度と同様にして、他の学習モデル2110の出力データの精度を取得してよい。
【0083】
ステップS33において報知部218は、精度取得部217により取得された精度が基準値よりも低いか否かを判定する。本動作例では一例として、基準値は、他の学習モデル2110から出力される出力データの精度であってよい。ステップS33において精度が基準値より低いと判定された場合(ステップS33;Yes)には、ステップS35に処理が移行してよい。精度が基準値より低い場合とは、学習モデル2110Aの出力データの精度よりも、1または複数の他の学習モデル2110から出力される出力データの精度が高い場合であってよい。ステップS33において精度が基準値以上であると判定された場合(ステップS33;No)には、ステップS13に処理が移行してよい。
【0084】
ステップS35において報知部218は、学習モデル2110Aの出力データの精度が基準値より低い旨を第1ユーザに報知する。本動作例においては一例として、報知部218は、学習モデル2110Aの出力データの精度よりも、他の学習モデル2110の出力データの精度の方が高いことに応じて、その旨を第1ユーザに報知してよい。この場合には、報知部218は、学習モデル2110Aよりも精度が高かった他の学習モデル2110や、その学習処理に用いられた学習アルゴリズムを示すメッセージを第1ユーザに供給してよい。
【0085】
ステップS37において制御部203は、学習アルゴリズムを選択する旨の操作と、学習アルゴリズムの利用形態を選択する旨の操作との何れが第1ユーザにより操作取得部210を介して行われるかを判定する。ステップS37において学習アルゴリズムを選択する旨の操作が行われたと判定した場合(ステップS37;アルゴリズム選択)には、ステップS3に処理が移行してよい。これにより、報知を受けた第1ユーザは、学習モデル2110Aの学習処理に用いた学習アルゴリズムを修正して新たな学習アルゴリズムを開発し、ベンダからアルゴリズム記憶部200にアップロードさせてよい。これにより、ステップS3において新たな学習アルゴリズムの選択が可能となる。また、ステップS37において利用形態を選択する旨の操作が行われたと判定した場合(ステップS37;利用形態選択)には、ステップS13に処理が移行してよい。これにより、報知を受けた第1ユーザは、出力データの精度が低かった学習モデル2110Aの学習処理を改めて行ってもよいし、他の学習モデル2110を利用してもよい。
【0086】
ステップS41において操作取得部210は、利用対象の学習モデル2110の選択操作を取得する。操作取得部210は、記憶部211に記憶された学習モデル2110の何れかを利用対象とする選択操作を取得してよい。なお、本実施形態では一例として、操作取得部210は、第1アカウントが利用権限を有する学習モデル2110を利用対象とする選択操作を取得してもよいし、利用権限を有しない学習モデル2110を利用対象とする選択操作を取得してもよい。第1アカウントが利用権限を有しない学習モデル2110は、一例として第1ユーザのユーザ領域21の記憶部211に記憶された学習モデル2110のうち、有効期限が切れた学習モデル2110でもよいし、他のユーザ領域21の記憶部211に記憶された学習モデル2110でもよい。
【0087】
ステップS43において制御部203は、選択された学習モデル2110に対し、第1アカウントが利用権限を有するか否かを判定する。制御部203は、利用権限の有効期限が切れている場合には、第1アカウントが利用権限を有しないと判定してよい。ステップS43において第1アカウントが利用権限を有しないと判定された場合(ステップS43;No)には、ステップS45に処理が移行してよい。ステップS43において第1アカウントが利用権限を有すると判定された場合(ステップS43;Yes)にはステップS51に処理が移行してよい。
【0088】
ステップS45において制御部203は、選択された学習モデル2110に対して利用権限を申請する操作が操作取得部210を介して行われるか否かを判定する。ステップS45において利用権限の申請操作が行われないと判定した場合(ステップS45;No)にはステップS47に処理が移行してよい。ステップS45において利用権限の申請操作が行われたと判定した場合(ステップS45;Yes)には、ステップS49に処理が移行してよい。
【0089】
ステップS47において制御部203は、第1ユーザのユーザ領域21における他の学習モデル2110の利用を提案する旨のメッセージを第1ユーザに供給してよい。これにより、各学習モデル2110の利用が、当該学習モデル2110について利用権限を有するアカウントのユーザに制限される。また、選択された学習モデル2110について利用権限を有しないアカウントのユーザは、当該アカウントが利用権限を有する学習モデル2110の何れかを利用することとなる。制御部203は、第1アカウントが利用権限を有する学習モデル2110の一覧を第1ユーザに供給し、何れかの学習モデル2110を第1ユーザに選択させてよい。ステップS47の処理が完了したら、上述のステップS41に処理が移行してよい。
【0090】
ステップS49において制御部203は、選択された学習モデル2110についての利用権限を第1アカウントに設定する。制御部203は、第1アカウントを、選択された学習モデル2110について利用権限を有するアカウントとして管理データ記憶部201に記憶させてよい。制御部203は、選択された学習モデル2110の利用料金が支払われることを条件として利用権限を設定してよい。
【0091】
ステップS51において入力データ取得部214は、第1ユーザから、または第1ユーザにより設定されたセンサ111から、入力データを取得する。
【0092】
ステップS53において供給部215は、取得された入力データを、選択された学習モデル2110に供給する。
【0093】
ステップS55において出力部216は、選択された学習モデル2110から出力された出力データを第1ユーザに出力する。出力データは、ステップS51で取得された入力データと共に運用データ2112として記憶部211に記憶されてよい。ステップS55の処理が完了したら、上述のステップS13に処理が移行してよい。
【0094】
以上の動作によれば、利用対象とされた学習アルゴリズムについて利用権限を有しないアカウントのユーザに対し、当該アカウントが利用権限を有する学習アルゴリズムの何れかが利用対象として提供される。従って、利用対象として選択された学習アルゴリズムの利用権限を有しない場合であっても、他の学習アルゴリズムを利用することができる。
【0095】
同様に、利用対象とされた学習モデル2110について利用権限を有しないアカウントに対し、当該アカウントが利用権限を有する学習モデル2110の何れかが利用対象として提供される。従って、利用対象として選択された学習モデル2110の利用権限を有しない場合であっても、他の学習モデル2110を利用することができる。
【0096】
また、第1ユーザから取得された入力データが他の学習モデル2110に供給されて当該他の学習モデル2110から出力される出力データの精度がさらに取得され、利用された一の学習モデル2110の出力データの精度よりも他の学習モデル2110の出力データの精度の方が高いことに応じて、その旨が第1ユーザに報知される。従って、利用された一の学習モデル2110よりも精度の高い他の学習モデル2110の存在を第1ユーザに知らせ、利用する学習モデル2110の変更を促すことができる。
【0097】
また、第1ユーザからの指示に応じて、学習モデル2110に入力された入力データを含む学習データを用いて当該学習モデル2110の学習処理がさらに行われる。従って、学習モデル2110の利用時に用いた入力データを用いて当該学習モデル2110に対し追加の学習処理を行うことができる。
【0098】
[4.変形例]
図6は、変形例に係るシステム1Bを示す。システム1Bは、装置2と、1または複数の設備11と、1または複数のエッジデバイス3とを備える。なお、本変形例に係るシステム100において、
図1に示された構成と略同一のものには同一の符号を付け、説明を省略する。
【0099】
エッジデバイス3は、装置2によって提供されるサービスを利用するユーザ(他のユーザと区別して第2ユーザとも称する)により設備11および装置2と通信可能に設けられる。エッジデバイス3は、設備11の近傍に設けられてもよいし、設備11内に設けられてもよい。エッジデバイス3は、記憶部211Bと、入力データ取得部214Bと、供給部215Bと、出力部216Bとを有する。
【0100】
記憶部211Bは、有効期限データ2113と、学習モデル2110Bと、運用データ2112Bとを記憶する。有効期限データ2113は、学習モデル2110Bに対してユーザのアカウント(第2アカウントとも称する)が有する利用権限の有効期限を示してよい。第2ユーザは、上述の実施形態における第1ユーザと同一のユーザであってもよいし、異なるユーザであってもよい。
【0101】
学習モデル2110Bは、第2ユーザのユーザ領域21に記憶される学習モデル2110の何れかと同一の学習モデルであってよい。学習モデル2110Bは、第2アカウントが利用権限を有する学習モデル2110であってよい。学習モデル2110Bは、有効期限データ2113で示される有効期限が切れた場合には、少なくとも出力データの出力を行わなくてよい。
【0102】
運用データ2112Bは、学習モデル2110Bが利用された場合での学習モデル2110Bに対する入力データと、学習モデル2110Bからの出力データとを有する。
【0103】
なお、記憶部211B内の学習モデル2110Bは、製造後のエッジデバイス3が装置2に接続された状態で、第2ユーザやベンダの操作に応じて装置2の記憶部211からエッジデバイス3の記憶部211Bにダウンロードされてもよい。また、有効期限データ2113は、学習モデル2110Bがエッジデバイス3にダウンロードされる場合に、制御部203によって管理データ記憶部211から読み出され、エッジデバイス3の記憶部211Bにダウンロードされてもよい。ただし、学習モデル2110Bおよび有効期限データは、エッジデバイス3の製造時に予め装置2から記憶部211Bにダウンロードされてもよい。
【0104】
入力データ取得部214Bは、第2ユーザにより設定されたセンサ111から、学習モデル2110Bに対する入力データを取得する。入力データ取得部214Bは、取得した入力データを供給部215Bに供給してよい。
【0105】
供給部215Bは、入力データ取得部214Bにより取得された入力データを学習モデル2110Bに供給する。
【0106】
出力部216Bは、供給部215Bによって入力データが入力された学習モデル2110Bから出力される出力データを第2ユーザに出力する。出力部216は、第2ユーザのユーザ端末10に出力データを出力してよい。
【0107】
以上のエッジデバイス3は、有効期限が切れていない限りにおいて上述のステップS51~S55の処理を行い、センサ111からの入力データを学習モデル2110Bに供給して得られる出力データを第2ユーザのユーザ端末10に出力してよい。
【0108】
以上の変形例によれば、センサ111による測定データをリアルタイムに学習モデル2110Bに供給し、学習モデル2110Bからの出力データを取得することができる。
【0109】
なお、上記の変形例においては、エッジデバイス3は記憶部211B、入力データ取得部214B、供給部215Bおよび出力部216Bを備えることとして説明したが、他の構成をさらに備えてもよい。例えば、エッジデバイス3は、上述の実施形態における精度取得部217および報知部218をさらに備えてもよい。
【0110】
[5.その他の変形例]
上記の実施形態や変形例においては、装置2はアルゴリズム記憶部200と、管理部202と操作取得部210と、記憶部211と、学習データ取得部212と、入力データ取得部214と、供給部215と、出力部216と、精度取得部217と、報知部218とを有することとして説明したが、これらの何れかを有しなくてもよい。例えば、装置2がアルゴリズム記憶部200を有しない場合には、装置2に外部接続された記憶装置に学習アルゴリズムが記憶されてもよい。同様に、装置2が記憶部211を有しない場合には、装置2に外部接続された記憶装置に学習モデル2110が記憶されてもよい。
【0111】
また、制御部203は各学習モデル2110,2110Bの利用を、当該学習モデル2110,2110Bについて利用権限を有するアカウントのユーザに制限することとして説明したが、他の利用権限を有するアカウントのユーザに制限してもよい。例えば、制御部203は、各学習モデル2110,2110Bの利用を、当該学習モデル2110,2110Bの学習処理で用いられた学習アルゴリズムについて利用権限を有するアカウントのユーザに制限してもよい。この場合に、管理データ記憶部201には、学習アルゴリズムについて利用権限が記憶され、学習モデル2110について利用権限が記憶されていなくてもよい。また、管理データ記憶部201は、学習アルゴリズム0の利用権限を、当該学習アルゴリズムで学習処理が行われた各学習モデル2110,2110Bについての利用権限としても記憶してよい。また、管理データ記憶部201は、学習アルゴリズムの利用権限の有効期限を、当該学習アルゴリズムで学習処理が行われた各学習モデル2110,2110Bについての利用権限の有効期限としても記憶してよい。
【0112】
また、精度取得部217はステップS15での学習処理後に学習モデル2110から取得される出力データの精度を取得することとして説明したが、ステップS51~S55での学習モデル2110の利用により取得される出力データの精度を取得してもよい。この場合には、報知部218は、学習モデル2110の運用段階において出力データの精度が低いと判定される場合に報知を行ってよい。
【0113】
また、精度取得部217は他の学習モデル2110から出力される出力データの精度を基準値として用いることとして説明したが、予めベンダやユーザにより設定された固定値を基準値として用いてもよい。
【0114】
また、制御部203は利用権限の有効期限が切れている場合には、利用権限の申請が行われるか否かを判定することとして説明したが、有効期限までの時間が基準時間を下回ったことに応じて、該当の利用権限を有するアカウントのユーザに予め通知を行い、利用権限の更新を促してもよい。
【0115】
また、制御部203は利用権限の申請が行われない場合に、使用対象の学習アルゴリズムや学習モデル2110の変更を提案することとして説明したが、処理を終了してもよい。
【0116】
また、センサ111は圧力や温度などの物理量を測定することとして説明したが、画像センサとして画像データを取得してもよい。この場合には、学習モデル2110は、画像データが入力されることに応じて画像認識の結果を出力してもよい。一例として、センサ111は監視カメラ内の画像センサであってよく、学習モデル2110は、画像内で人物を検出してもよい。
【0117】
また、本発明の様々な実施形態は、フローチャートおよびブロック図を参照して記載されてよく、ここにおいてブロックは、(1)操作が実行されるプロセスの段階または(2)操作を実行する役割を持つ装置のセクションを表わしてよい。特定の段階およびセクションが、専用回路、コンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、および/またはコンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタルおよび/またはアナログハードウェア回路を含んでよく、集積回路(IC)および/またはディスクリート回路を含んでよい。プログラマブル回路は、論理AND、論理OR、論理XOR、論理NAND、論理NOR、および他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックアレイ(PLA)等のようなメモリ要素等を含む、再構成可能なハードウェア回路を含んでよい。
【0118】
コンピュータ可読媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(RTM)ディスク、メモリスティック、集積回路カード等が含まれてよい。
【0119】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk(登録商標)、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1または複数のプログラミング言語の任意の組み合わせで記述されたソースコードまたはオブジェクトコードのいずれかを含んでよい。
【0120】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサまたはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して提供され、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【0121】
図7は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ2200の例を示す。コンピュータ2200にインストールされたプログラムは、コンピュータ2200に、本発明の実施形態に係る装置に関連付けられる操作または当該装置の1または複数のセクションとして機能させることができ、または当該操作または当該1または複数のセクションを実行させることができ、および/またはコンピュータ2200に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ2200に、本明細書に記載のフローチャートおよびブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定の操作を実行させるべく、CPU2212によって実行されてよい。
【0122】
本実施形態によるコンピュータ2200は、CPU2212、RAM2214、グラフィックコントローラ2216、およびディスプレイデバイス2218を含み、それらはホストコントローラ2210によって相互に接続されている。コンピュータ2200はまた、通信インタフェース2222、ハードディスクドライブ2224、DVD-ROMドライブ2226、およびICカードドライブのような入/出力ユニットを含み、それらは入/出力コントローラ2220を介してホストコントローラ2210に接続されている。コンピュータはまた、ROM2230およびキーボード2242のようなレガシの入/出力ユニットを含み、それらは入/出力チップ2240を介して入/出力コントローラ2220に接続されている。
【0123】
CPU2212は、ROM2230およびRAM2214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ2216は、RAM2214内に提供されるフレームバッファ等またはそれ自体の中にCPU2212によって生成されたイメージデータを取得し、イメージデータがディスプレイデバイス2218上に表示されるようにする。
【0124】
通信インタフェース2222は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ2224は、コンピュータ2200内のCPU2212によって使用されるプログラムおよびデータを格納する。DVD-ROMドライブ2226は、プログラムまたはデータをDVD-ROM2201から読み取り、ハードディスクドライブ2224にRAM2214を介してプログラムまたはデータを提供する。ICカードドライブは、プログラムおよびデータをICカードから読み取り、および/またはプログラムおよびデータをICカードに書き込む。
【0125】
ROM2230はその中に、アクティブ化時にコンピュータ2200によって実行されるブートプログラム等、および/またはコンピュータ2200のハードウェアに依存するプログラムを格納する。入/出力チップ2240はまた、様々な入/出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入/出力コントローラ2220に接続してよい。
【0126】
プログラムが、DVD-ROM2201またはICカードのようなコンピュータ可読媒体によって提供される。プログラムは、コンピュータ可読媒体から読み取られ、コンピュータ可読媒体の例でもあるハードディスクドライブ2224、RAM2214、またはROM2230にインストールされ、CPU2212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ2200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置または方法が、コンピュータ2200の使用に従い情報の操作または処理を実現することによって構成されてよい。
【0127】
例えば、通信がコンピュータ2200および外部デバイス間で実行される場合、CPU2212は、RAM2214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース2222に対し、通信処理を命令してよい。通信インタフェース2222は、CPU2212の制御下、RAM2214、ハードディスクドライブ2224、DVD-ROM2201、またはICカードのような記録媒体内に提供される送信バッファ処理領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、またはネットワークから受信された受信データを記録媒体上に提供される受信バッファ処理領域等に書き込む。
【0128】
また、CPU2212は、ハードディスクドライブ2224、DVD-ROMドライブ2226(DVD-ROM2201)、ICカード等のような外部記録媒体に格納されたファイルまたはデータベースの全部または必要な部分がRAM2214に読み取られるようにし、RAM2214上のデータに対し様々なタイプの処理を実行してよい。CPU2212は次に、処理されたデータを外部記録媒体にライトバックする。
【0129】
様々なタイプのプログラム、データ、テーブル、およびデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU2212は、RAM2214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプの操作、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM2214に対しライトバックする。また、CPU2212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU2212は、第1の属性の属性値が指定される、条件に一致するエントリを当該複数のエントリの中から検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
【0130】
上で説明したプログラムまたはソフトウェアモジュールは、コンピュータ2200上またはコンピュータ2200近傍のコンピュータ可読媒体に格納されてよい。また、専用通信ネットワークまたはインターネットに接続されたサーバーシステム内に提供されるハードディスクまたはRAMのような記録媒体が、コンピュータ可読媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ2200に提供する。
【0131】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0132】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0133】
1 システム
2 装置
3 エッジデバイス
10 ユーザ端末
11 設備
20 ベンダ領域
21 ユーザ領域
110 機器
111 センサ
200 アルゴリズム記憶部
201 管理データ記憶部
202 管理部
203 制御部
210 操作取得部
211 記憶部
212 学習データ取得部
213 学習処理部
214 入力データ取得部
215 供給部
216 出力部
217 精度取得部
218 報知部
2110 学習モデル
2111 学習データ
2112 運用データ
2113 有効期限データ