(57)【要約】【課題】モデル開発者のデータセットがモデル利用者へ開示困難であってもモデル採否判断に関するモデル利用者の負荷を軽減する。【解決手段】システムが登録した情報において、学習モデルに、当該学習モデルの入力となる１か複数のデータセット要素であるデータセットが関連付けられていて、且つ、データセットに、当該データセットのフィルタが関連付けられている。システムが、評価対象の学習モデルに関連付けられているデータセットと当該データセットに関連付けられているフィルタとを基に得られたデータセットである加工済データセットを用いて当該学習モデルを評価する。システムが、閲覧対象の学習モデルに関連付いている情報の少なくとも一部と、当該学習モデルの評価の結果を示す情報とを表示する。【選択図】  図１
2020166681.tif 000002
【特許請求の範囲】
【請求項１】
１か複数の学習モデルの各々について当該学習モデルに関するモデル情報と、１か複数のデータセットの各々について当該データセットに関するデータセット情報と、１か複数のフィルタの各々について当該フィルタに関するフィルタ情報とを登録するモデル登録部と、
前記１か複数の学習モデルの各々について、当該学習モデルに、前記１か複数のデータセットのうち、当該学習モデルの入力となる１か複数のデータセット要素であるデータセットが関連付けられており、
前記１か複数のデータセットの各々について、当該データセットに、前記１か複数のフィルタのうち、当該データセットのフィルタが関連付けられており、
前記１か複数の学習モデルの各々について、当該学習モデルが評価対象の場合、当該学習モデルに関連付けられているデータセットと当該データセットに関連付けられているフィルタとを基に得られたデータセットである加工済データセットを用いて当該学習モデルを評価するモデル評価部と、
前記１か複数の学習モデルの各々について、当該学習モデルが閲覧対象の場合、当該学習モデルに関連付いている情報の少なくとも一部と、当該学習モデルの評価の結果を示す情報とを表示するモデル閲覧部と
を備えるモデル採否判断支援システム。
【請求項２】
前記１か複数のフィルタの各々について、当該フィルタのフィルタ情報は、当該フィルタが関連付けられているデータセットのうち、当該データセットが関連付けられている学習モデルの評価のために入力されるデータセット要素に関する条件を含み、
前記評価対象の学習モデルについて、前記加工済データセットは、当該学習モデルに関連付けられているデータセットのうち、当該データセットに関連付けられているフィルタのフィルタ情報が示す条件に適合する少なくとも１つのデータセット要素である、
請求項１に記載のモデル採否判断支援システム。
【請求項３】
前記モデル登録部は、少なくとも１つの学習モデルについて、下記（ｒ１）及び（ｒ２）の少なくとも１つを受け付ける１以上のユーザインターフェースである１以上の登録インターフェースを提供する、
（ｒ１）当該学習モデルに関連付ける１以上のデータセットの選択、及び、
（ｒ２）当該学習モデルについて選択された１以上のデータセットの少なくとも１つのデータセットについて、当該データセットに関連付ける１以上のフィルタの選択、
請求項１に記載のモデル採否判断支援システム。
【請求項４】
前記モデル評価部は、前記評価対象の学習モデルについて、下記（ｅ１）乃至（ｅ４）の少なくとも１つを受け付ける１以上のユーザインターフェースである１以上の評価インターフェースを提供し、
（ｅ１）当該学習モデルに関連付けられている１以上のデータセットの選択、
（ｅ２）少なくとも１つのデータセットについて、当該データセットに関連付けられている１以上のフィルタの選択、
（ｅ３）少なくとも１つのフィルタについて、当該フィルタが関連付けられているデータセットのデータセット要素に関する条件としてのパラメータ、及び、
（ｅ４）１以上の評価指標の選択、
前記モデル評価部は、前記１以上の評価インターフェースを介して受け付けられた情報に従い、前記評価対象の学習モデルの評価を行う、
請求項１に記載のモデル採否判断支援システム。
【請求項５】
前記モデル評価部は、前記評価対象の学習モデルの評価の結果を示す情報の閲覧先として許可された１か複数のユーザが属する開示範囲を示す情報である開示範囲情報の選択を受け付けるユーザインターフェースを提供し、
前記モデル閲覧部は、前記閲覧対象の学習モデルに関する情報を、当該学習モデルに関し受け付けられた開示範囲情報が示す開示範囲に属するユーザに制限する、
請求項１に記載のモデル採否判断支援システム。
【請求項６】
前記モデル評価部は、複数の計算機の各々のリソース消費量を基に前記複数の計算機から計算機を選択し、当該選択した計算機に前記評価対象の学習モデルの評価を実行させる、請求項１に記載のモデル採否判断支援システム。
【請求項７】
前記モデル評価部は、下記のうちの少なくとも１つの場合、前記評価対象の学習モデルの評価にかかった課金額を算出する、
・当該学習モデルに、当該学習モデルの評価のための課金に関する情報が関連付けられている、及び、
・当該学習モデルの評価に使用されたデータセットに、当該データセットを使用した評価のための課金に関する情報が関連付けられている、
請求項１に記載のモデル採否判断支援システム。
【請求項８】
モデル開発者により開発された前記評価対象の学習モデルの評価の結果が所定の条件に適合する場合に当該学習モデルをモデル利用者から指定された場所へ自動的にデプロイするデプロイ部、
を更に備える請求項１に記載のモデル採否判断支援システム。
【請求項９】
前記モデル評価部は、モデル開発者により開発された前記評価対象の学習モデルの評価において、前記モデル開発者により選択されたデータセットに基づく前記加工済データセットの他に、前記評価対象の学習モデルの評価を要求したモデル利用者から入力されたデータセットに属するデータセット要素も使用する、
請求項１に記載のモデル採否判断支援システム。
【請求項１０】
１か複数の学習モデルの各々について当該学習モデルに関するモデル情報と、１か複数のデータセットの各々について当該データセットに関するデータセット情報と、１か複数のフィルタの各々について当該フィルタに関するフィルタ情報とを登録し、
前記１か複数の学習モデルの各々について、当該学習モデルに、前記１か複数のデータセットのうち、当該学習モデルの入力となる１か複数のデータセット要素であるデータセットが関連付けられており、
前記１か複数のデータセットの各々について、当該データセットに、前記１か複数のフィルタのうち、当該データセットのフィルタが関連付けられており、
前記１か複数の学習モデルの各々について、当該学習モデルが評価対象の場合、当該学習モデルに関連付けられているデータセットと当該データセットに関連付けられているフィルタとを基に得られたデータセットである加工済データセットを用いて当該学習モデルを評価し、
前記１か複数の学習モデルの各々について、当該学習モデルが閲覧対象の場合、当該学習モデルに関連付いている情報の少なくとも一部と、当該学習モデルの評価の結果を示す情報とを表示する、
モデル採否判断支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、機械学習を用いて開発されたモデルである学習モデルの採否の判断を支援する新規の技術に関する。
【背景技術】
【０００２】
機械学習を用いて開発されたモデルである学習モデルを利用するサービスやアプリケーション（アプリ）が台頭してきている。しかし、誤判定等のない完全な学習モデル（以下、モデル）を開発することは困難である。そこでモデルを開発するモデル開発者は、モデルの品質を向上させるべく、例えば頻繁にモデルを改善する。このようなモデルの改善を実施する際、モデル開発者は、最も重視する指標に注目し、この指標がよりよい値になるようモデルの改善に努める。
【０００３】
他方、アプリの要件に完全に合致するモデルが存在しない場合もある。例えば、あるモータの故障の予兆を捉え、入力されたモータの回転数の変動や、軸受けの振動データから、近日中に軸受け破損が発生する確率を求めるモデルをアプリ開発者が要求するケースを考える。要求に合致するモデルが存在しない場合、例えば軸受け破損とコイル破損の両方の故障確率を求めるモデルを利用する等、アプリ開発者は目的の近いモデルを探す。しかしながら、モデルを開発したモデル開発者は、２つの故障の予測精度の平均値等の最大化を重要な指標と考え、モデルを改善するケースがある。
【０００４】
このような場合、モデル開発者とアプリ開発者が注力する指標が異なるため、あるバージョンのモデルではアプリ開発者の期待した結果を得られるが、モデル開発者が注力する指標のみに着目して改善された新しいモデルでは、必ずしもアプリ開発者が期待する結果を得られず、アプリの要件を満たせない場合がある。すなわち、アプリ開発者は刻々と改善されるモデルに対し、要件を満たすかを判断のため、都度モデルに対するテスト（評価の一例）を実施する必要がある。しかし、テストの実施には、必要なデータセットの収集や、テスト用のプログラムを開発など、アプリ開発者の技術的、金銭的、時間的な負荷が大きい。
【０００５】
なお、例えば、特許文献１は、プログラムの試験を選択する装置を開示する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】ＷＯ２０１７／１９９５１７
【発明の概要】
【発明が解決しようとする課題】
【０００７】
アプリケーションに関連するプログラムをモデルと考えれば、特許文献１により、モデルの更新を契機に必要なテストを実行することが可能かもしれない。しかし、テストを選択的に実行できても、アプリ開発者はテストに必要十分な量と質のデータを用意できるとは限らない。加えて、モデル開発者がモデルの評価に用いたテストデータをアプリ開発者が利用することも考えられるが、データセットはモデル開発者にとって一般に価値の大きい情報であり、アプリ開発者のようなモデル利用者への開示が困難な場合もある。
【０００８】
よって、モデル開発者のデータセットがモデル利用者へ開示困難であってもモデル採否判断に関するモデル利用者の負荷を軽減することが本願の１つの課題である。
【課題を解決するための手段】
【０００９】
システムが、１か複数の学習モデルの各々について当該学習モデルに関するモデル情報と、１か複数のデータセットの各々について当該データセットに関するデータセット情報と、１か複数のフィルタの各々について当該フィルタに関するフィルタ情報とを登録する。１か複数の学習モデルの各々について、当該学習モデルに、１か複数のデータセットのうち、当該学習モデルの入力となる１か複数のデータセット要素であるデータセットが関連付けられている。１か複数のデータセットの各々について、当該データセットに、１か複数のフィルタのうち、当該データセットのフィルタが関連付けられている。システムが、１か複数の学習モデルの各々について、当該学習モデルが評価対象の場合、当該学習モデルに関連付けられているデータセットと当該データセットに関連付けられているフィルタとを基に得られたデータセットである加工済データセットを用いて当該学習モデルを評価する。システムが、１か複数の学習モデルの各々について、当該学習モデルが閲覧対象の場合、当該学習モデルに関連付いている情報の少なくとも一部と、当該学習モデルの評価の結果を示す情報とを表示する。
【発明の効果】
【００１０】
本発明によれば、モデル開発者のデータセットがモデル利用者へ開示困難であってもモデル採否判断に関するモデル利用者の負荷を軽減することが期待される。
【図面の簡単な説明】
【００１１】
【図１】モデル採否判断支援システムの概要の一例を示した図である。
【図２Ａ】実施例１に係るシステム全体の構成例の一部を示した図である。
【図２Ｂ】実施例１に係るシステム全体の構成例の残りを示した図である。
【図３】計算機の構成例を示した図である。
【図４】モデル管理テーブルの構成例を示した図である。
【図５】データセット管理テーブルの構成例を示した図である。
【図６】評価プログラム管理テーブルの構成例を示した図である。
【図７】フィルタ管理テーブルの構成例を示した図である。
【図８】評価設定管理テーブルの構成例を示した図である。
【図９】評価ジョブ管理テーブルの構成例を示した図である。
【図１０】評価結果管理テーブルの構成例を示した図である。
【図１１】計算機管理テーブルの構成例を示した図である。
【図１２】ユーザ管理テーブルの構成例を示した図である。
【図１３】テナント管理テーブルの構成例を示した図である。
【図１４】ＩＦプログラムのフローチャートである。
【図１５】モデル管理プログラムのフローチャートである。
【図１６】評価制御プログラムのフローチャートである。
【図１７】評価実行プログラムのフローチャートである。
【図１８】モデル一覧画面の一例を示した図である。
【図１９Ａ】モデル詳細画面の一例の全体を示した図である。
【図１９Ｂ】モデル詳細画面の一例の一部を示した図である。
【図１９Ｃ】モデル詳細画面の一例の一部を示した図である。
【図２０Ａ】モデル評価設定画面の一例の全体を示した図である。
【図２０Ｂ】モデル評価設定画面の一例の一部を示した図である。
【図２０Ｃ】モデル評価設定画面の一例の一部を示した図である。
【図２１Ａ】モデル登録画面の一例の全体を示した図である。
【図２１Ｂ】モデル登録画面の一例の一部を示した図である。
【図２１Ｃ】モデル登録画面の一例の一部を示した図である。
【図２２】運用管理テーブルの構成例を示した図である。
【図２３】モデル運用プログラムのフローチャートである。
【発明を実施するための形態】
【００１２】
以下の説明では、「インターフェース装置」は、一つ以上のインターフェースデバイスでよい。当該一つ以上のインターフェースデバイスは、下記のうちの少なくとも一つでよい。
・一つ以上のＩ／Ｏ（Input/Output）インターフェースデバイス。Ｉ／Ｏ（Input/Output）インターフェースデバイスは、Ｉ／Ｏデバイスと遠隔の表示用計算機とのうちの少なくとも一つに対するインターフェースデバイスである。表示用計算機に対するＩ／Ｏインターフェースデバイスは、通信インターフェースデバイスでよい。少なくとも１つのＩ／Ｏデバイスは、ユーザインターフェースデバイス、例えば、キーボード及びポインティングデバイスのような入力デバイスと、表示デバイスのような出力デバイスとのうちのいずれでもよい。
・一つ以上の通信インターフェースデバイス。一つ以上の通信インターフェースデバイスは、一つ以上の同種の通信インターフェースデバイス（例えば一つ以上のＮＩＣ（Network Interface Card））であってもよいし二つ以上の異種の通信インターフェースデバイス（例えばＮＩＣとＨＢＡ（Host Bus Adapter））であってもよい。
【００１３】
また、以下の説明では、「メモリ」は、１以上のメモリデバイスであり、典型的には主記憶デバイスでよい。メモリにおける少なくとも１つのメモリデバイスは、揮発性メモリデバイスであってもよいし不揮発性メモリデバイスであってもよい。
【００１４】
また、以下の説明では、「永続記憶装置」は、１以上の永続記憶デバイスである。永続記憶デバイスは、典型的には、不揮発性の記憶デバイス（例えば補助記憶デバイス）であり、具体的には、例えば、Hard Disk Drive（ＨＤＤ）又はSolid State Drive（ＳＳＤ）である。
【００１５】
また、以下の説明では、「記憶装置」は、メモリと永続記憶装置の少なくともメモリでよい。
【００１６】
また、以下の説明では、「プロセッサ」は、１以上のプロセッサデバイスである。少なくとも１つのプロセッサデバイスは、典型的には、Central Processing Unit（ＣＰＵ）のようなマイクロプロセッサデバイスであるが、Graphics Processing Unit（ＧＰＵ）のような他種のプロセッサデバイスでもよい。少なくとも１つのプロセッサデバイスは、シングルコアでもよいしマルチコアでもよい。少なくとも１つのプロセッサデバイスは、プロセッサコアでもよい。少なくとも１つのプロセッサデバイスは、処理の一部又は全部を行うハードウェア回路（例えばField-Programmable Gate Array（ＦＰＧＡ）又はApplication Specific Integrated Circuit（ＡＳＩＣ））といった広義のプロセッサデバイスでもよい。
【００１７】
また、以下の説明では、「ｘｘｘテーブル」といった表現にて、入力に対して出力が得られる情報を説明することがあるが、当該情報は、どのような構造のデータでもよい。従って、「ｘｘｘテーブル」を「ｘｘｘ情報」と言うことができる。また、以下の説明において、各テーブルの構成は一例であり、１つのテーブルは、２つ以上のテーブルに分割されてもよいし、２つ以上のテーブルの全部又は一部が１つのテーブルであってもよい。
【００１８】
また、以下の説明では、「ｋｋｋ部」の表現にて機能を説明することがあるが、機能は、１以上のコンピュータプログラムがプロセッサによって実行されることで実現されてもよいし、１以上のハードウェア回路（例えばＦＰＧＡ又はＡＳＩＣ）によって実現されてもよい。プログラムがプロセッサによって実行されることで機能が実現される場合、定められた処理が、適宜に記憶装置及び／又はインターフェース装置等を用いながら行われるため、機能はプロセッサの少なくとも一部とされてもよい。機能を主語として説明された処理は、プロセッサ或いはそのプロセッサを有する装置が行う処理としてもよい。プログラムは、プログラムソースからインストールされてもよい。プログラムソースは、例えば、プログラム配布計算機又は計算機が読み取り可能な記録媒体（例えば非一時的な記録媒体）であってもよい。各機能の説明は一例であり、複数の機能が１つの機能にまとめられたり、１つの機能が複数の機能に分割されたりしてもよい。
【００１９】
また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサによって実行されることで、定められた処理を、適宜に記憶装置及び／又はインターフェース装置等を用いながら行うため、処理の主語が、プロセッサ（或いは、そのプロセッサを有するコントローラのようなデバイス）とされてもよい。プログラムは、プログラムソースから計算機のような装置にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバ又は計算機が読み取り可能な（例えば非一時的な）記録媒体であってもよい。また、以下の説明において、２つ以上のプログラムが１つのプログラムとして実現されてもよいし、１つのプログラムが２つ以上のプログラムとして実現されてもよい。
【００２０】
また、以下の説明では、「モデル採否判断支援システム」は、１以上の計算機で構成されてもよいし、複数の計算リソースを含んだリソースプール（例えばクラウド基盤）上に実現されてもよい。例えば、計算機が表示デバイスを有していて計算機が自分の表示デバイスに情報を表示する場合、当該計算機がモデル採否判断支援システムでよい。「情報を表示する」ことは、モデル採否判断支援システムが有する表示デバイスに当該情報を表示することであってもよいし、モデル採否判断支援システムが遠隔の表示用計算機に情報を送信することであってもよい（後者の場合は表示用計算機によって当該情報が表示される）。
【００２１】
以下、本発明を実施するための形態である幾つかの実施例を図面に従い説明し、最後に、それらの実施例を総括する。なお以降で示す実施例ならびに図面は、本発明を実施するための形態の一例であって、同様の処理が可能な他の構成及び形態への適用を制限するものではない。
【実施例１】
【００２２】
実施例１では、あるモータの軸受け破損の故障予兆診断を行うアプリを、アプリ開発者が開発するケースにおいて、刻々と改善されるモデルの採否決定を実施するケースを例に取る。
【００２３】
アプリは、モデル開発者が開発したモデルをApplication Programming Interface（ＡＰＩ）等を用いて呼び出し、診断を実施する。ただし、軸受け破損のみを高い精度で予兆診断できるモデルが存在せず、アプリ開発者は、精度は劣るがコイル破損等、軸受け破損以外の故障も診断可能なモデルをアプリから使用する。他方、モデルを開発したモデル開発者は、複数種類の故障予兆診断の予測精度の平均値の最大化を重要な指標と考え、モデルを改善する。
【００２４】
このような場合、モデル開発者とアプリ開発者が注力する指標が異なるため、あるバージョンのモデルではアプリ開発者の期待した結果を得られるが、モデル開発者が注力する指標が改善された新しいモデルでは、必ずしもアプリ開発者が期待した結果を得られない。そのため、アプリ開発者は刻々と改善されるモデルに対し、都度テスト等を実施する。
【００２５】
実施例１では、モデル採否判断支援システムが、アプリ開発者から、マーケットプレイスシステムに対して、改善されたモデルに関して、アプリ開発者が求めるデータセットと、データセットのフィルタと、モデルの採否判断に用いる指標との指定を受け付け、当該指定に従い、改善されたモデルの評価を実施する。当該評価の結果を見て、アプリ開発者は、採否判定を行う。つまり、実施例１に係るモデル採否判断支援システムは、モデル開発者が提供するデータセットの内容をアプリ開発者に非開示の状態で、アプリ開発者が所望の評価結果を得ることを可能にする。
【００２６】
図２Ａ及び図２Ｂは、実施例１に係るシステム全体の構成例を示した図である。以下の説明では、システムの種々の構成要素について、当該構成要素の数は「１か複数」であるが、適宜、説明を簡単にするために、当該構成要素は単数として扱われる。また、以下に説明する各計算機は、インターフェース装置、記憶装置及びそれらに接続されたプロセッサを有する。各計算機は、インターフェース装置経由で通信する。各計算機において、記憶装置が、プログラムや情報（例えばテーブルやファイル）を格納する。各計算機において、プロセッサが、プログラムを実行する。
【００２７】
モデル採否支援システムは、１か複数のマーケットプレイスシステム２０００と、１か複数のデータ管理システム３０００と、１か複数のアプリケーション運用システム４０００と、１か複数のモデル運用システム５０００と、１か複数の評価システム６０００とを含む。
【００２８】
マーケットプレイスシステム２０００は、モデルの管理を担い、アプリ開発者１０００やモデル開発者１０２０の要求を受け付ける。データ管理システム３０００は、モデル管理に必要なデータを管理する。アプリケーション運用システム４０００は、アプリ開発者１０００が開発したアプリを稼働させる。モデル運用システム５０００は、モデル開発者１０２０が開発したモデルを運用する。評価システム６０００は、モデルの評価を実施する。
【００２９】
１か複数のアプリ開発者１０００は、１か複数のアプリ開発用計算機１０１０を用いてアプリの開発を行い、アプリが利用するモデルの探索や、モデルの詳細情報の収集や、モデルの評価を実施する。アプリ開発用計算機１０１０は、１か複数のネットワーク１１００を介してマーケットプレイスシステム２０００と通信する。
【００３０】
１か複数のモデル開発者１０２０は、１か複数のモデル開発用計算機１０３０を用いてモデルの開発を行い、マーケットプレイスシステム２０００に対するモデルの登録や、モデルの評価を実施する。モデル開発用計算機１０３０は、１か複数のネットワーク１１００を介してマーケットプレイスシステム２０００と通信する。
【００３１】
なお、アプリ開発者１０００とモデル開発者１０２０は、マーケットプレイスシステム２０００に対してモデルの登録や評価等の実施を要求できるものであればよく、人間であっても、プログラムであってもよい。
【００３２】
マーケットプレイスシステム２０００は、１か複数のＩＦ（Interface）計算機２１００と、１か複数のモデル管理計算機２２００を含む。
【００３３】
ＩＦ計算機２１００は、モデルＩＦプログラムＰ２０００を実行する。モデルＩＦプログラムＰ２０００は、アプリ開発用計算機１０１０やモデル開発用計算機１０３０を介してアプリ開発者１０００やモデル開発者１０２０からの要求を受信し、当該要求に従う処理を実行する。
【００３４】
モデル管理計算機２２００は、モデル管理プログラムＰ２１００を実行する。モデル管理プログラムＰ２１００は、ＩＦプログラムＰ２０００から受信した要求に応じて、モデルを管理する。
【００３５】
データ管理システム３０００は、１か複数のデータ管理計算機３１００を備える。
【００３６】
データ管理計算機３１００は、データ管理（及び他の計算機に対するデータの入出力を行う）データ管理プログラムＰ３０００と、モデルの情報を含むモデル管理テーブルＴ３０００と、モデルを評価する際の入力となるデータセットを持つ情報を含むデータセット管理テーブルＴ３１００と、モデルとデータセットを入力としてモデルの評価を行う評価プログラムの情報を含む評価プログラム管理テーブルＴ３２００と、モデル評価に用いるデータセットの加工方法等が指定されたフィルタの情報を含むフィルタ管理テーブルＴ３３００と、評価設定に関する情報を含む評価設定管理テーブルＴ３４００と、モデル評価処理の実行状態の情報を含む評価ジョブ管理テーブルＴ３５００と、モデル評価の結果情報を含む評価結果管理テーブルＴ３６００と、モデル評価処理を実行する計算機の情報を含む計算機管理テーブルＴ３７００と、アプリ開発者１０００やモデル開発者１０２０の情報を含むユーザ管理テーブルＴ３８００と、複数のユーザの集合であるテナントの情報を含むテナント管理テーブルＴ３９００と、アプリから利用可能なモデルの情報を含む運用管理テーブルＴ４１００と、モデルの実体であるモデルファイルＦ３０００と、データセットの実体であるデータセットファイルＦ３２００と、評価プログラムの実体である評価プログラムファイルＦ３３００と、デプロイされたモデルの運用に用いられるモデル実行プログラムファイルＦ３４００とを備える。
【００３７】
データ管理システム３０００が備えるすべてのデータやファイルの内容の送受信は、データ管理計算機３１００が有するデータ管理プログラムＰ３０００を介して行われる。データ管理プログラムＰ３０００の一例としてデータベースマネジメントシステム（ＤＢＭＳ）が挙げられるが、データ管理プログラムＰ３０００は、データやファイルを管理することができれば、ＤＢＭＳ以外でもよい。また、データやファイルの永続化は、リレーショナルデータベースやNoSQL等のデータベースが用いられてもよいし、ファイルシステムが用いられてもよいし、データベース及びファイルシステム以外が用いられてもよい。
【００３８】
運用管理テーブルＴ４１００と、モデル実行プログラムファイルＦ３４００については、後述する。
【００３９】
なお、ＩＦプログラムはＰ２０００モデル一覧画面Ｇ１０００（図１８参照）や、モデル詳細画面Ｇ２０００（図１９Ａ〜図１９Ｃ参照）や、モデル評価設定画面Ｇ３０００（図２０Ａ〜図２０Ｃ参照）や、モデル登録画面Ｇ４０００（図２１Ａ〜図２１Ｃ参照）を、例えばアプリ開発用計算機１０１０やモデル開発用計算機１０３０が備えるブラウザ等を介して提供してよい。
【００４０】
アプリケーション運用システム４０００は、１か複数のアプリ実行計算機４２００を備える。アプリ実行計算機４２００は、１か複数の開発されたアプリＰ４１００を備える。アプリＰ４１００は、アプリ開発者１０００によって、アプリケーション運用システム４０００へデプロイされ、ネットワーク１１００を介して、モデル運用システム５０００が提供するエンドポイントへＡＰＩを用いてアクセスし、モデルサービスＰ５１００が提供する、推論等のモデルの機能を利用する。なお、アプリ実行計算機４２００は、各アプリの稼働情報を含むログを記録したり、ログを他の計算機へ送信したりしてもよい。
【００４１】
モデル運用システム５０００は、１か複数のモデル運用計算機５１００と、１か複数のモデル実行計算機５２００とを備える。モデル運用計算機５１００は、実行中のモデルを管理するモデル運用プログラムＰ５０００と、モデルへのＡＰＩを介したアクセスを制御する経路制御プログラムＰ５０５０とを備える。モデル実行計算機５２００は、１か複数の開発されたモデルの機能を提供するモデルサービスＰ５１００を備える。モデル運用計算機５１００とモデル実行計算機Ｐ５１００は、各モデルの稼働情報を含むログを記録したり、ログを他の計算機へ送信したりしてもよい。
【００４２】
モデル運用システムについては後述する。
【００４３】
評価システム６０００は、１か複数の評価制御計算機６１００と、１か複数の評価実行計算機６２００を備える。評価制御計算機６１００は、モデルの評価処理を制御する評価制御プログラムＰ６０００を備える。評価実行計算機６２００は、評価処理を実行する評価実行プログラムＰ６１００を備える。なお、評価制御計算機６１００と、評価実行計算機６２００は、各評価処理の経過等の情報を含むログを記録したり、ログを他の計算機へ送信したりしてもよい。
【００４４】
図２Ａ及び図２Ｂに例示の各計算機は、１か複数のネットワーク１１００によって接続される。ネットワーク１１００の一例はインターネットであり、Virtual Private Network（VPN）であってもよいし、その他のネットワークであってもよい。
【００４５】
図３は、各計算機に共通する要素の構成例を示した図である。
【００４６】
計算機１９１０は、メモリ１９２０と、ＣＰＵ１９３０と、入出力ＩＦ１９４０と、永続記憶装置１９５０と、ＮＷ−ＩＦ１９６０と、ＧＰＵ１９７０とを備え、これらは内部バス１９８０で接続されている。
【００４７】
プログラムは永続記憶装置１９５０に格納されており、メモリ１９２０にロードされ、ＣＰＵ１９３０で実行される。なお、本願のシステムが有するすべての計算機１９１０のメモリにはOperating System（ＯＳ）がロードされ、ＣＰＵ１９３０で実行される。
【００４８】
すべての計算機は、物理的な計算機であっても、物理的な計算機上で動作する仮想的な計算機であってもよい。また、各計算機の記憶装置は必須要素ではなく、例えば外部ストレージ装置でもよく、ストレージ装置の機能を論理的に提供するストレージサービスであってもよい。
【００４９】
各計算機が備えるＮＷ−ＩＦの一例としては、Network Interface Card（ＮＩＣ）が挙げられるが、これ以外であってもよい。
【００５０】
また、ディスプレイ等の出力装置やキーボード・マウスといった入出力ＩＦを備えてもよいし、Secure Shell（ＳＳＨ）といった手段によりネットワーク経由で当該計算機が遠隔管理される場合には、入力ＩＦは必須の要素ではない。なお、ＧＰＵ１９７０は、必須要素ではない。
【００５１】
上記の各計算機に含まれるプログラムとテーブルは、各計算機が備える記憶装置に含まれていてもよい。加えて、すべてのプログラムは各計算機が備えるＣＰＵによって実行される。
【００５２】
なお、各プログラムは、前述のように異なる複数の計算機で実行されてもよいし、１つの計算機で実行されてもよい。また、各プログラムは、１つの計算機ですべてのステップが実行されてもよいし、ステップ毎に異なる計算機で実行されてもよい。
【００５３】
また、図３に例示の構成要素以外の構成要素や、構成要素を接続する配線等が計算機に含まれてもよい。
【００５４】
図４は、モデル管理テーブルＴ３０００の構成例を示した図である。
【００５５】
モデル管理テーブルＴ３０００における各レコードは、マーケットプレイスシステム２０００に登録された各モデルの管理に必要なモデル情報を格納する。各レコードは、モデルの各バージョンのモデル情報を記録する。なお、モデル管理テーブルＴ３０００に記載されるのは同じ目的を持った同種のモデルのみでなく、例えば図の構成例のように、モータ故障予兆診断に加えて、不審物検出のように、異なる種別のモデルの情報が記載されてもよい。
【００５６】
モデル管理テーブルＴ３０００において、モデル毎にレコードが存在する。以下、１つのモデルを例に取る（図４の説明において「注目モデル」）。
【００５７】
注目モデルに対応したレコードが格納するモデル情報は、例えば、モデル情報識別子Ｔ３００５と、モデル名Ｔ３０１０と、バージョン情報Ｔ３０１５と、モデルファイルＴ３０２０と、評価時要求スペックＴ３０２５と、運用時要求スペックＴ３０３０と、開示情報Ｔ３０５０と、課金情報Ｔ３０４０と、ユーザ情報Ｔ３０４５と、テナント情報Ｔ３０５０と、概要Ｔ３０５５と、ＡＰＩ仕様Ｔ３０６０と、画像情報Ｔ３０６５と、モデルグループ情報Ｔ３０７０と、データセット識別子Ｔ３０７５と、モデル運用プログラムファイルＴ３０８０とを含む。
【００５８】
モデル情報識別子Ｔ３００５は、注目モデルのモデル情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【００５９】
モデル名Ｔ３０１０は、注目モデルの名称を示す。当該名称は、例えば、モデル登録画面Ｇ４０００を介してモデル開発者１０２０によって入力された文字列でよく、モデル一覧画面Ｇ１０００や、モデル詳細Ｇ２０００で表示されてよい。
【００６０】
バージョン情報Ｔ３０１５は、注目モデルのバージョンを識別する値を示す。なお、同じモデルであることは、例えばモデルグループ情報Ｔ３０７０の値が同値である等から判断されてもよい。バージョン情報Ｔ３０１５の値は、例えば数値で表現してもよく、モデルのバージョンを一意に特定できれば、それ以外でもよい。
【００６１】
モデルファイルＴ３０２０は、注目モデルの実体としてのファイル（例えば、ディープラーニングのネットワーク情報や重みの情報を含むファイル）のファイル名を示す。当該ファイル名は、例えば、モデル登録画面Ｇ４０００を介して指定されたファイル名でもよいし、モデルファイルを受信したデータ管理プログラムＰ３０００によって一意に付与されたファイル名でもよい。
【００６２】
評価時要求スペックＴ３０２５は、注目モデルを評価する際に評価実行計算機６２００に要求されるＣＰＵ１９３０やメモリ１９２０の性能を示す。当該性能は、例えば、評価制御プログラムＰ６０００によってどの評価実行計算機Ｐ６２００で評価を実行するかの選択に使用されてよい。
【００６３】
運用時要求スペックＴ３０３０は、注目モデルをモデル運用システム５０００のモデル実行計算機５２００で運用する際にモデル実行計算機５２００に要求されるＣＰＵ１９３０やメモリ１９２０の性能を示す。当該性能は、例えば、モデル運用プログラムＰ５０００によってどのモデル実行計算機５２００でモデルを実行するかの選択に使用されてよい。
【００６４】
開示情報Ｔ３０５０は、注目モデルのモデル情報が開示される範囲（ユーザやテナント等）を制御する値を示す。例えば、モデル一覧画面Ｇ１０００において、値が“All”であればすべてのユーザに開示したり、値が“user:1”の場合は、画面にアクセスしたユーザの識別子が“１”の場合のみ開示し、他のユーザには非開示にしたりする等、どのユーザに注目モデルを開示するかが制御されてもよい。なお、開示のみではなく、非開示のユーザを指定するため、“not user:1”など、否定を表現する“not”等の値が含まれてもよい。
【００６５】
課金情報Ｔ３０４０は、注目モデルを評価したり運用したりする際に用いられる値を含む。当該値は、評価や運用時を要求したユーザに対して課金される額等でよい。値について、例えば、評価を要求したユーザに対して１回の評価あたり“$0.001”要求する場合、“$0.001/Req”等と表現されてよい。
【００６６】
ユーザ情報Ｔ３０４５は、モデル登録画面Ｇ４０００等を介して注目モデルの各バージョンをマーケットプレイスシステム２０００に対して登録したユーザの識別子を示す。当該識別子は、例えば、ユーザ管理テーブルＴ３８００が備えるユーザ識別子Ｔ３８１０の値が用いられてよい。
【００６７】
テナント情報Ｔ３０５０は、モデル登録画面Ｇ４０００等を介して、注目モデルの各バージョンをマーケットプレイスシステム２０００に対して登録したユーザが所属するテナントの識別子を示す。当該識別子は、例えば、テナント管理テーブルＴ３９００が備えるテナント識別子Ｔ３８１０の値でよい。
【００６８】
概要Ｔ３０５５は、例えば、モデル詳細画面Ｇ２０００等で、注目モデルの説明文を表示する際に使用される情報を示す。当該情報は、モデル登録画面Ｇ４０００でモデル開発者１０２０が入力した情報（例えば、テキスト形式やMarkdown形式の情報）でよい。
【００６９】
ＡＰＩ仕様Ｔ３０６０は、注目モデルをアプリＰ４１００から利用する際のＡＰＩ仕様を示した情報でよい。当該情報は、例えば、モデル詳細画面Ｇ２０００等で表示されてよいし、モデル登録画面Ｇ４０００を介してモデル開発者１０２０から入力されてもよい。当該情報は、例えば、テキスト形式、Markdown形式、HyperText Markup Language（ＨＴＭＬ）形式、JavaScript（登録商標） Object Notation（ＪＳＯＮ）形式、及び、YAML Ain't a Markup Language（ＹＡＭＬ）形式のいずれの形式の情報でもよい。
【００７０】
画像情報Ｔ３０６５は、例えば、モデル詳細画面Ｇ２０００等で表示される注目モデルの画像を示す情報である。当該情報は、例えば、モデル登録画面Ｇ４０００でモデル開発者１０２０から指定された情報でよい。
【００７１】
モデルグループ情報Ｔ３０７０は、注目モデルについてバージョンが異なるが同じモデルのグループに属することを特定するための識別子を示す。当該識別子は、例えば、最初に登録されたバージョンのモデル情報を含むレコードのモデル識別子Ｔ３００５の値でよい。
【００７２】
データセット識別子Ｔ３０７５は、評価システム６０００で実施される注目モデルの評価で使用されるデータセットを特定する識別子でよい。当該識別子は、例えば、モデル登録画面Ｇ４０００で指定されたデータセットを管理するデータセット管理テーブルＴ３１００が有するデータセット識別子Ｔ３１１０の値でよい。
【００７３】
モデル運用プログラムファイルＴ３０８０については、後述する。
【００７４】
図５は、データセット管理テーブルＴ３１００の構成例を示した図である。
【００７５】
データセット管理テーブルＴ３１００における各レコードは、マーケットプレイスシステム２０００に登録された各モデルの評価に必要なデータセットを管理するデータセット情報を格納する。
【００７６】
データセット管理テーブルＴ３１００において、データセット毎にレコードが存在する。以下、１つのデータセットを例に取る（図５の説明において「注目データセット」）。
【００７７】
注目データセットに対応したレコードが格納するデータセット情報は、例えば、データセット識別子Ｔ３１１０と、データセット名称Ｔ３１２０と、開示情報Ｔ３１４０と、課金情報Ｔ３１５０と、ユーザ情報Ｔ３１６０と、テナント情報Ｔ３１７０と、ファイル名Ｔ３１８０とを含む。
【００７８】
データセット情報識別子Ｔ１１０は、注目データセットのデータセット情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【００７９】
データセット名称Ｔ３１２０は、注目データセットの名称を示す。当該名称は、例えばモデル登録画面Ｇ４０００でモデル開発者１０２０から指定された名称でよい。
【００８０】
開示情報Ｔ３１４０は、注目データセットのデータセット情報が開示される範囲（ユーザやテナント等）を制御する値を示す。当該値は、開示情報Ｔ３０５０の値と同様でよい。
【００８１】
課金情報Ｔ３１５０は、注目データセットを用いてモデルを評価する際に各ユーザに対して課金される額等を表現した値を含む。当該値は、例えば、評価を要求したユーザに対して１回あたり“$0.001”を要求する場合、“$0.001/Test”等と表現されてよい。
【００８２】
ユーザ情報Ｔ３１６０は、モデル登録画面Ｇ４０００等を介して注目データセットを登録したユーザの識別子を示す。当該識別子は、例えば、ユーザ管理テーブルＴ３８００が備えるユーザ識別子Ｔ３８１０の値でよい。
【００８３】
テナント情報Ｔ３１７０は、モデル登録画面Ｇ４０００等を介して注目データセットを登録したユーザが属するテナントの識別子を示す。当該値は、例えば、テナント管理テーブルＴ３９００が備えるテナント識別子Ｔ３９１０の値でよい。
【００８４】
ファイル名Ｔ３１８０は、モデル登録画面Ｇ４０００等を介して登録された注目データセットのファイルのファイル名を示す。当該ファイル名は、例えば、モデル登録画面Ｇ４０００でユーザから指定されたファイル名でもよいし、データ管理プログラムＰ３０００によって自動的に付与された値でもよい。
【００８５】
図６は、評価プログラム管理テーブルＴ３２００の構成例を示した図である。
【００８６】
評価プログラム管理テーブルＴ３２００における各レコードは、マーケットプレイスシステム２０００に登録された各モデルの評価に必要な評価プログラムを管理する評価プログラム情報を格納する。
【００８７】
評価プログラムテーブルＴ３２００において、評価プログラム毎にレコードが存在する。以下、１つの評価プログラムを例に取る（図６の説明において「注目評価プログラム」）。
【００８８】
注目評価プログラムに対応したレコードが格納する評価プログラム情報は、例えば、評価プログラム識別子Ｔ３２１０と、評価プログラムファイルＴ３２２０と、開示情報Ｔ３２４０と、課金情報Ｔ３２５０と、ユーザ情報Ｔ３２６０と、テナント情報Ｔ３２７０とを含む。
【００８９】
評価プログラム識別子Ｔ３２１０は、注目評価プログラムの評価プログラム情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【００９０】
評価プログラムファイルＴ３２２０は、注目評価プログラムのファイルのファイル名を示す。当該ファイル名は、例えば、モデル登録画面Ｇ４０００を介してユーザから指定されたファイル名でもよいし、データ管理プログラムＰ３０００によって自動的に付与された値でもよい。
【００９１】
開示情報Ｔ３２４０は、注目評価プログラムの評価プログラム情報が開示される範囲を制御する値を示す。当該値は、開示情報Ｔ３０５０の値と同じでよい。
【００９２】
課金情報Ｔ３２５０は、注目評価プログラムを用いてモデルを評価する際に各ユーザに対して課金される額等を表現した値を含む。当該値は、例えば、評価を要求したユーザに対して１回あたり“$0.001”を要求する場合、“$0.001/Test”等と表現されてよい。
【００９３】
ユーザ情報Ｔ３２６０は、モデル登録画面Ｇ４０００等を介して注目評価プログラムを登録したユーザの識別子を示す。当該識別子は、例えば、ユーザ管理テーブルＴ３８００が備えるユーザ識別子Ｔ３８１０の値でよい。
【００９４】
テナント情報Ｔ３２７０は、モデル登録画面Ｇ４０００等を介して注目評価プログラムを登録したユーザが属するテナントの識別子を示す。当該識別子は、例えば、テナント管理テーブルＴ３９００が備えるテナント識別子Ｔ３９１０の値でよい。
【００９５】
図７は、フィルタ管理テーブルＴ３３００の構成例を示した図である。
【００９６】
フィルタ管理テーブルＴ３３００における各レコードは、フィルタ情報（マーケットプレイスシステム２０００に登録された各モデルの評価する際に、どのデータセットに対して、どのようなデータの加工を実施することか可能かを示す情報）を格納する。
【００９７】
フィルタ管理テーブルＴ３３００において、フィルタ毎にレコードが存在する。以下、１つのフィルタを例に取る（図７の説明において「注目フィルタ」）。
【００９８】
注目フィルタに対応したレコードが格納するフィルタ情報は、例えば、フィルタ情報識別子Ｔ３３１０と、フィルタ名Ｔ３２２０と、説明Ｔ３３３０と、データセット識別子Ｔ３３４０と、選択可能値Ｔ３３４０とを含む。
【００９９】
フィルタ情報識別子Ｔ３３１０は、注目フィルタのフィルタ情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【０１００】
フィルタ名Ｔ３２２０は、注目フィルタの名称を示す。当該名称は、例えば、モデル登録画面Ｇ４０００のフィルタ情報Ｇ４０６５でモデル開発者１０２０によって指定されたフィルタの名称でよく、評価設定画面Ｇ３０００のフィルタ種別指定ドロップボックスＧ３０２５や、フィルタ条件テーブルＧ３０４０等の表示に使用されてよい。
【０１０１】
説明Ｔ３３３０は、注目フィルタのフィルタ情報の説明文を示す。当該説明文は、モデル登録画面Ｇ４０００のフィルタ種別説明文表示エリアＧ３０３０等の表示に使用されてよい。
【０１０２】
データセット識別子Ｔ３３４０は、注目フィルタを適用して加工する対象のデータセット（注目フィルタが関連付けられたデータセット）の識別子を示す。当該識別子は、例えば、データセット管理テーブルＴ３１００が備えるデータセット識別子Ｔ３０１０の値でよい。
【０１０３】
選択可能値Ｔ３３４０は、注目フィルタが関連付いているデータセットに対してどのような条件（データセット要素の抽出に関する条件）を指定できるかという選択肢を示す。選択肢をモデル評価画面Ｇ３０００に表示等することで、例えば、ファイル識別子が“１”のフィルタでは、モータの軸受け破損と、コイル破損と、正常状態のデータを持つデータセット識別子“１”のデータセットに対して、軸受け破損のみのデータを抽出したり、コイル破損のみのデータを抽出したりする等、ユーザは、評価制御プログラムＰ６０００で実施可能な加工方法を選択できる。
【０１０４】
図８は、評価設定管理テーブルＴ３４００の構成例を示した図である。
【０１０５】
評価設定管理テーブルＴ３４００における各レコードは、評価設定情報（マーケットプレイスシステム２０００に登録された各モデルの評価する際に、どのモデルに対して、どのデータセットと用いて、どのような加工を実施し、どのような評価を実施するかを示した情報）を格納する。
【０１０６】
評価設定管理テーブルＴ３４００において、評価設定毎にレコードが存在する。以下、１つの評価設定を例に取る（図８の説明において「注目評価設定」）。
【０１０７】
注目評価設定に対応したレコードが格納する評価設定情報は、評価設定情報識別子Ｔ３４０５と、評価設定名Ｔ３４１０と、説明Ｔ３４１５と、モデル識別子Ｔ３４２０と、フィルタ情報概要Ｔ３４２５と、フィルタ組合せ情報Ｔ３４３０と、指標Ｔ３４４０と、データセットファイルＴ３４４５と、開示情報Ｔ３５５０と、ユーザ情報Ｔ３４５５と、テナント情報Ｔ３４６０と、自動評価／デプロイＴ３４６５と、条件Ｔ３４７０と、エンドポイントＴ３４７５とを含む。
【０１０８】
評価設定情報識別子Ｔ３４０５は、注目評価設定の評価設定情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【０１０９】
評価設定名Ｔ３４１０は、注目評価設定の名称を示す。当該名称は、評価設定画面Ｇ３０００の設定名称入力テキストボックスＧ３００５でモデル開発者１０２０によって指定された名称でよく、モデル詳細画面Ｇ２０００が備える評価結果Ｇ２０３０の表示等に使用されてよい。
【０１１０】
説明Ｔ３３３０は、注目評価設定の説明文を示す。当該説明文は、評価設定画面Ｇ３０００の説明入力テキストボックスＧ３０１０でモデル開発者１０２０によって入力された説明文でよく、モデル詳細画面Ｇ２０００が備える評価結果Ｇ２０３０の表示等に使用されてよい。
【０１１１】
モデル識別子Ｔ３４２０は、注目評価設定に属するモデルの識別子を示す。当該識別子は、例えば、モデル管理テーブルＴ３０００が備えるモデル情報識別子Ｔ３００５の値でよい。
【０１１２】
フィルタ情報概要Ｔ３４２５は、注目評価設定に属するフィルタ情報の概要を示す。例えば、フィルタ情報概要Ｔ３４２５は、評価対象となるモデルに対して、どのようなデータセットに対して、どのようなフィルタ条件で加工を行い、評価を実施するかを示してよい。フィルタ情報概要Ｔ３４２５は、モデル評価設定画面Ｇ３０００において評価を実施するユーザが指定したフィルタ条件Ｇ３０４０で列挙されたフィルタ条件の情報を含んでよい。
【０１１３】
フィルタ情報概要Ｔ３４２５において、フィルタ条件の情報は、例えば１か複数の行で記録され、各行は“#”フィルタ情報識別子“X”、値“Y”の形式で記載され、各行の#は行番号、Xはフィルタ管理テーブルＴ３３００が備えるフィルタ情報識別子Ｔ３３１０の値を示し、Yはフィルタ管理テーブルＴ３３００が備える選択可能値Ｔ３３４０の値のうち、モデル評価設定画面Ｇ３０００において評価を実施するユーザが選択した値が記録されてよい。
【０１１４】
フィルタ組合せ情報Ｔ３４３０は、フィルタ情報概要Ｔ３４２５の各行に記載されたフィルタ情報をどのように組み合わせ、データを加工するか示した情報である。例えば、評価設定情報識別子Ｔ３４０５が“１”のレコードについて、フィルタ組合せ情報Ｔ３４３０が“1*2”の場合、評価制御計算機Ｐ６０００によって、データセットが持つ情報うち、軸受け破損のラベルが付与されたデータのみが抽出される。さらに、演算子が“*”のため、抽出されたデータに対して、さらにフィルタ情報Ｔ３４３０の２番目の行に記載された選択肢、“2017/12-2018/12”によって、評価に用いるデータの期間が限定され（つまり、当該期間に属するデータのみが抽出され）、抽出されたデータがモデルの評価に用いられる。
【０１１５】
なお、演算子が“+”の場合は、軸受け破損のラベルが付与されている、またはデータ取得時刻（例えば年月）が“2017/12”から“2018/12”のデータが抽出される。これら演算子は一例であり、例えば指定されたデータを除外する“not”や、括弧を用いた演算優先度指定等、他の演算子や記号が含まれてもよい。
【０１１６】
指標Ｔ３４４０は、評価結果として得たい指標を指定する情報であり、一例として、精度を示す“Accuracy”や、適合率を示す“Precision”や、再現率を示す“Recall”や、精度と再現率の調和平均を示す“F-measure”が挙げられる。なお、指標Ｔ３４４０は、モデル評価画面Ｇ３０００が備える、指標指定チェックボックスＧ３０５５で指定されたものが記録されてもよい。
【０１１７】
データセットファイルＴ３４４５は、評価制御プログラムＰ６０００により、フィルタ組合せ情報Ｔ３４３０の内容に従って抽出されたデータセットの内容が記録されたファイルのファイル名を示す。なお、ファイル名はデータ管理システム内３０００内でファイルを一意に特定できる値であればよい。
【０１１８】
開示情報Ｔ３４５０は、注目評価設定の評価設定情報が開示される範囲を制御する値を示す。当該値は、開示情報Ｔ３０５０の値でよい。
【０１１９】
ユーザ情報Ｔ３４５５は、モデルの評価を実施したユーザの識別子を示す。当該識別子は、例えば、ユーザ管理テーブルＴ３８００が備えるユーザ識別子Ｔ３８１０の値でよい。
【０１２０】
テナント情報Ｔ３４６０は、モデルの評価を実施したユーザが属するテナントの識別子を示す。当該識別子は、例えば、テナント管理テーブルＴ３９００が備えるテナント識別子Ｔ３９１０の値でよい。
【０１２１】
なお、自動評価／デプロイＴ３４６５と、条件Ｔ３４７０と、エンドポイントＴ３４７５については、後述する。
【０１２２】
図９は、評価ジョブ管理テーブルＴ３５００の構成例を示した図である。
【０１２３】
評価ジョブ管理テーブルＴ３５００における各レコードは、評価ジョブ情報（各モデルの評価がどの評価実行計算機Ｐ６１００で実行されるかという情報や、評価の評価設定情報や、評価の進捗状態等を管理する情報）を格納する。
【０１２４】
評価ジョブ管理テーブルＴ３５００において、評価ジョブ毎にレコードが存在する。以下、１つの評価ジョブを例に取る（図９の説明において「注目評価ジョブ」）。
【０１２５】
注目評価ジョブに対応したレコードが格納する評価ジョブ情報は、評価ジョブ情報識別子Ｔ３５１０と、評価設定情報識別子Ｔ３５２０と、ユーザ識別子Ｔ３５３０と、テナント識別子Ｔ３５４０と、実行計算機識別子Ｔ３５５０と、進捗状態Ｔ３５６０と、開始時刻Ｔ３５７０と、終了時刻Ｔ３５８０とを含む。
【０１２６】
評価ジョブ情報識別子Ｔ３５１０は、評価ジョブの評価ジョブ情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【０１２７】
評価設定情報識別子Ｔ３５２０は、注目評価ジョブがどのモデルに対して、どのような設定で評価を実行したか、という評価設定情報を特定するための識別子を示す。当該識別子は、例えば、評価設定管理テーブルＴ３４００が備える評価設定情報識別子Ｔ３４０５の値でよい。
【０１２８】
ユーザ識別子Ｔ３５３０は、モデルの評価を実施したユーザの識別子を示す。当該識別子は、例えば、ユーザ管理テーブルＴ３８００が備えるユーザ識別子Ｔ３８１０の値でよい。
【０１２９】
テナント識別子Ｔ３５４０は、モデルの評価を実施したユーザが属するテナントの識別子を示す。当該識別子は、例えば、テナント管理テーブルＴ３９００が備えるテナント識別子Ｔ３９１０の値でよい。
【０１３０】
実行計算機識別子Ｔ３５５０は、各評価を実行する評価実行計算機６２００を特定する識別子を示す。当該識別子は、例えば計算機管理テーブルＴ３７００が備える、１か複数の計算機識別子Ｔ３７１０の値でよい。
【０１３１】
進捗状態Ｔ３５６０は、各評価の進捗状態を示す値である。当該値、例えば“100%”等のパーセンテージで表してもよいし、“データセットを加工中”や、“評価実行中”や、“完了”等の文字列で表現してもよい。
【０１３２】
開始時刻Ｔ３５７０と終了時刻Ｔ３５８０は、注目評価ジョブの開始時刻と終了時刻を示す。開始時刻は、例えば、評価制御プログラムＰ６０００がモデル管理計算機から評価実施の要求を受信した時刻等でよい。終了時刻は、例えば、評価実行プログラムＰ６１００が評価プログラムファイルＦ３３００の実行完了を検知した時刻でよい。
【０１３３】
図１０は、評価結果管理テーブルＴ３６００の構成例を示した図である。
【０１３４】
評価結果管理テーブルＴ３６００における各レコードは、評価結果情報（モデルの評価を実施した結果がどのようなものであったかを示す情報）を格納する。
【０１３５】
評価結果管理テーブルＴ３６００において、評価結果毎にレコードが存在する。以下、１つの評価結果を例に取る（図１０の説明において「注目評価結果」）。
【０１３６】
注目評価結果に対応したレコードが格納する評価結果情報は、評価結果情報識別子Ｔ３６１０と、評価設定情報識別子Ｔ３６２０と、評価ジョブ情報識別子Ｔ３６３０と、結果Ｔ３６４０と、ログ情報Ｔ３６５０とを含む。
【０１３７】
評価結果情報識別子Ｔ３６１０は、注目評価結果の評価結果情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【０１３８】
評価設定情報識別子Ｔ３５２０は、注目評価結果が得られた評価がどのモデルに対して、どのような設定で評価を実行したか、という評価設定情報を特定するための識別子を示す。当該識別子は、例えば、評価設定管理テーブルＴ３４００が備える評価設定情報識別子Ｔ３４０５の値でよい。
【０１３９】
評価ジョブ情報識別子Ｔ３６３０は、注目評価結果が得られた評価がどの評価実行計算機Ｐ６１００で実行されるかという情報を特定するための識別子を示す。当該識別子は、例えば、評価ジョブ管理テーブルＴ３５００が備える評価ジョブ情報識別子Ｔ３５１０でよい。
【０１４０】
結果Ｔ３６４０は、注目評価結果として指標について得られた値を示す情報を含む。当該情報は、例えば、評価設定管理テーブルＴ３４００が保持する評価設定情報のうち、ユーザがどのような指標での評価を求めるかを示した、指標Ｔ３４４０の値に対する結果値を含む。結果値は、例えば、評価実行プログラムＰ６１００によって実行される評価プログラムファイルＦ３３００が出力するログ情報から収集して記録してもよいし、評価プログラムファイルＦ３３００が出力する標準出力から読み取り、記録する等してもよい。
【０１４１】
ログ情報Ｔ３６５０は、注目評価結果が得られた評価に関連するログを記録した情報である。当該情報は、例えば、評価制御プログラムＰ６０００や、評価実行プログラムＰ６１００や、評価プログラムファイルＦ３３００が出力するログや標準出力や標準エラーの内容を含んでもよい。
【０１４２】
図１１は、計算機管理テーブルＴ３７００の構成例を示した図である。
【０１４３】
計算機管理テーブルＴ３７００における各レコードは、計算機情報（モデルの評価を実行する評価実行計算機６２００のＣＰＵ１９３０やメモリ１９２０やＧＰＵ１９７０等のリソースの性能を示すリソース保有情報や、リソースの消費情報や、計算機への接続に必要な情報を含む情報）を格納する。
【０１４４】
計算機管理テーブルＴ３７００において、計算機毎にレコードが存在する。以下、１つの計算機を例に取る（図１１の説明において「注目計算機」）。
【０１４５】
注目計算機に対応したレコードが格納する計算機情報は、計算機識別子Ｔ３７１０と、種別Ｔ３７２０と、リソース保有情報Ｔ３７４０と、リソース消費情報Ｔ３７５０と、接続情報Ｔ３７６０とを含む。
【０１４６】
計算機識別子Ｔ３７１０は、注目計算機を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【０１４７】
種別Ｔ３７２０は、注目計算機の用途を示す値である。例えば、注目計算機が評価実行計算機６２００であれば、当該値は、例えば“評価”である。
【０１４８】
リソース保有情報Ｔ３７４０は、注目計算機が備える計算リソースの性能（例えば、ＣＰＵ１９３０やメモリ１９２０やＧＰＵ１９７０等のリソースの性能）を示す情報である。
【０１４９】
リソース消費情報Ｔ３７５０は、注目計算機が備える計算リソースのリソース性能のうち、評価実行プログラムや、評価プログラムファイルＦ３３００が当該計算機で実行されたことによって消費されているリソースの性能を示す。リソース消費情報Ｔ３７５０は、、各モデルの評価をどの評価実行計算機Ｐ６１００で実行するかの判断に用いられてもよい。
【０１５０】
接続情報Ｔ３７６０は、注目計算機への接続に必要な情報（例えば、評価制御プログラムＰ６０００が評価の要求を送信する際に注目計算機へ接続するのに必要な情報、一例として、Internet Protocol（ＩＰ）アドレスや、Uniform Resource Identifier（ＵＲＩ）等）である。
【０１５１】
図１２は、ユーザ管理テーブルＴ３８００の構成例を示した図である。
【０１５２】
ユーザ管理テーブルＴ３８００における各レコードは、ユーザ情報（アプリ開発者１０００や、モデル開発者１０２０等、マーケットプレイスシステム２０００を利用するユーザの情報）を格納する。
【０１５３】
ユーザ管理テーブルＴ３８００において、ユーザ毎にレコードが存在する。以下、１のユーザを例に取る（図１２の説明において「注目ユーザ」）。
【０１５４】
注目ユーザに対応したレコードが格納するユーザ情報は、ユーザ識別子Ｔ３８１０と、ユーザ名Ｔ３８２０と、パスワード３８３０と、ロールＴ３８４０と、メールアドレスＴ３８５０とを含む。
【０１５５】
ユーザ識別子Ｔ３８１０は、注目ユーザのユーザ情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番でよい）。
【０１５６】
ユーザ名Ｔ３８２０とパスワードＴ３８３０は、注目ユーザのユーザ名及びパスワード（例えば、ユーザがアプリ開発用計算機１０１０やモデル開発用計算機１０３０が備えるブラウザ等を介して、マーケットプレイスシステム２０００へアクセスする際の認証情報として用いる情報）である。なお、ユーザ名Ｔ３８２０は、例えばモデルを開発した開発者の名前として、モデル詳細画面Ｇ２０００が備えるモデル情報Ｇ２０１０等に表示してもよい。
【０１５７】
ロールＴ３８４０は、注目ユーザの役割を示す。ロールＴ３８４０の値は、例えば、モデルを開発するモデル開発者１０２０であれば“Model developer”や、アプリを開発するアプリ開発者１０００であれば“Application developer”等でよい。
【０１５８】
メールアドレスＴ３８５０は、注目ユーザのメールアドレスを示す。当該メールアドレスは、例えばモデルを開発した開発者の名前として、モデル詳細画面Ｇ２０００が備えるモデル情報Ｇ２０１０等に表示し、他のユーザが連絡できるようにされてもよい。
【０１５９】
図１３は、テナント管理テーブルＴ３９００の構成例を示した図である。
【０１６０】
テナント管理テーブルＴ３９００における各レコードは、テナント情報（アプリ開発者１０００や、モデル開発者１０２０等、マーケットプレイスシステム２０００を利用する１か複数のユーザや評価実行計算機６２００等のグループであるテナントの情報）を格納する。
【０１６１】
テナント管理テーブルＴ３９００において、テナント毎にレコードが存在する。以下、１つのテナントを例に取る（図１３の説明において「注目テナント」）。
【０１６２】
注目テナントに対応したレコードが格納するテナント情報は、テナント識別子Ｔ３９１０と、テナント名Ｔ３９２０と、所属ユーザ識別子Ｔ３９３０と、所属計算機識別子Ｔ３９４０と、管理ユーザ識別子Ｔ３９４０とを含む。
【０１６３】
テナント識別子Ｔ３９１０は、注目テナントのテナント情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【０１６４】
テナント名Ｔ３９１０は、注目テナントの名称を示す値であり、例えば文字列でよい。
【０１６５】
所属ユーザＴ３９３０は、注目テナントに属する１か複数のユーザを特定するための情報であり、例えば、ユーザ管理テーブルＴ３８００が備えるユーザ情報識別子Ｔ３８１０の値でよい。
【０１６６】
所属計算機識別子Ｔ３９４０は、注目テナントに属する評価実行計算機６２００等の１か複数の計算機を特定する情報であり、例えば、計算機管理テーブルＴ３７００が備える計算機識別子Ｔ３７１０の値でよい。
【０１６７】
管理者ユーザＴ３９３０は、注目テナントを管理する１か複数のユーザを特定するための情報であり、例えば、ユーザ管理テーブルＴ３８００が備えるユーザ情報識別子Ｔ３８１０の値でよい。
【０１６８】
図１４は、ＩＦプログラムＰ２０００のフローチャートである。
【０１６９】
ＩＦプログラムＰ２０００が実行されると、ステップＳ１０００にて、ＩＦプログラムＰ２０００は、要求の待ち受けを開始する。要求には、例えばマーケットプレイスシステム２０００が管理するモデルの一覧取得や、モデル評価の実施等、要求の種類や、モデルを一意に特定する識別子や、要求を行ったユーザの識別子等の情報が含まれる。
【０１７０】
ステップＳ１０１０では、要求が受信されると、処理がステップＳ１０２０へ進む。
【０１７１】
ステップＳ１０２０では、ＩＦプログラムＰ２０００は、受信された要求に含まれる情報（例えば、モデル情報の取得や評価実行等、要求の種別、要求を行ったユーザの識別子等）を解析する。なお、ステップＳ１０２０にて、ＩＦプログラムＰ２０００は、例えば、要求の種別や、モデル識別子等、含まれるデータの形式や内容が妥当であるかを検査する処理を実行してもよい。
【０１７２】
ステップＳ１０３０では、ＩＦプログラムＰ２０００は、解析された要求の種別を判定する。なお、ステップＳ１０２０で実施した検査の結果が、要求が妥当ではないとの結果の場合、ステップＳ１１００で、ＩＦプログラムＰ２０００が、その旨を示す応答を生成してもよい。
【０１７３】
ステップＳ１０３０の判定の結果が、モデル一覧取得であった場合、ステップＳ１０４０で、ＩＦプログラムＰ２０００が、モデル一覧画面Ｇ１０００に必要な情報を収集のため、モデル管理テーブルＴ３０００の全レコードの全情報を取得する。
【０１７４】
ステップＳ１０３０の判定の結果が、モデル詳細情報取得であった場合、ステップＳ１０５０で、ＩＦプログラムＰ２０００が、モデル詳細画面に必要な情報を収集のため、要求の内容からモデルを一意に識別するモデル識別子の情報を取得のうえ、モデル管理テーブルＴ３０００から識別子に該当するモデルの情報を取得する。
【０１７５】
ステップＳ１０３０の判定の結果が、モデル評価画面取得又はモデル登録画面取得であった場合は、ステップＳ１０６０で、ＩＦプログラムＰ２０００が、モデル登録画面Ｇ３０００で必要な内容を取得する、又は、モデル評価画面Ｇ４０００で必要な内容を取得する。なお、各画面に表示する内容の取得方法は、後述の各画面の説明で述べる。
【０１７６】
ステップＳ１０３０の判定の結果が、モデル登録であった場合、ＩＦプログラムＰ２０００が、ステップＳ１０７０で、ステップＳ１０２０で解析された要求から、モデルの登録に必要な情報を取得し、モデル管理テーブルＴ３０００に情報を新しいレコードとして追記する。
【０１７７】
ステップＳ１０３０の判定の結果が、モデル評価実行であった場合、ステップＳ１０８０で、ＩＦプログラムＰ２０００が、ステップＳ１０２０で解析された要求から、モデル評価の実行に必要な評価条件情報を取得し、評価条件管理テーブルＴ３４００に新しいレコードを追加し、さらに、追加したレコードに含まれる識別子Ｔ３４１０を、評価制御計算機６１００が有する評価制御プログラムＰ６０００へ送信する。
【０１７８】
ステップＳ１１００では、ＩＦプログラムＰ２０００が、要求に応じて収集したデータを基に、例えばモデル一覧画面の情報や、モデル登録の結果等、呼び出し元の計算機へ送信する応答データを生成する。
【０１７９】
ステップＳ１１１０では、ＩＦプログラムＰ２０００が、ステップＳ１１００で生成された応答データを、呼び出し元の計算機へ送信する。
【０１８０】
ステップＳ１１２０で、ＯＳ等からＩＦプログラムＰ２０００の終了要求がない場合は、処理がステップＳ１０１０へ戻り、終了要求があった場合は、処理がステップＳ１１３０へ進みＩＦプログラムＰ２０００が終了する。
【０１８１】
なお、ステップＳ１０２０で判別される要求には、アプリ開発者１０００やモデル開発者１０２０のユーザ情報の取得や更新、実行中のモデル評価処理の強制停止等が含まれてもよい。また、画面に表示される要素は、各画面の入出力項目に相当するパラメータを持ったＡＰＩによって実現されてもよい。また、モデルデプロイ（ステップＳ１０９０）については、後述する。
【０１８２】
図１５は、モデル管理プログラムＰ２１００のフローチャートである。
【０１８３】
モデル管理プログラムＰ２１００が実行されると、ステップＳ２０１０にて要求の待ち受けが開始される。要求には、モデル評価やモデル登録等の要求の種別等、処理に必要な要求情報が含まれる。
【０１８４】
ステップＳ２０２０で、要求が受信されると、処理がステップＳ２０３０へ進む。
【０１８５】
ステップＳ２０３０では、モデル管理プログラムＰ２１００が、例えば要求の種別等、受信した要求の情報を解析する。
【０１８６】
ステップＳ２０４０では、モデル管理プログラムＰ２１００が、解析された結果に含まれる要求の種別が、モデル評価であるか、モデルの登録であるか、モデルのデプロイであるか、を判定する。要求種別がモデル評価であればステップＳ２０７０へ、要求種別がモデル登録であればＳ２０６０へ、要求種別がモデルデプロイであればＳ２０６５へ、処理が進む。なお、モデル評価とモデル登録の何れにも該当しない場合は、ステップＳ２０８０で、要求が正しくない旨の応答が生成されてもよい。
【０１８７】
ステップＳ２０７０では、モデル管理プログラムＰ２１００が、モデルの評価を実施のため、評価システム６０００が有する評価制御計算機Ｐ６０００に対し、評価設定情報を送信し、モデルの評価を依頼する。
【０１８８】
ステップＳ２０６０では、モデル管理プログラムＰ２１００が、要求情報に含まれるモデルをマーケットプレイスへ登録のため、ステップＳ２０３０で解析された要求情報に含まれるモデル情報を用いて、モデル管理テーブルＴ３０００へ新しいレコードを追加する。このとき、同じ名称や同じモデルファイルを有するモデルのレコードが存在しないか確認し、重複する場合にはステップＳ２０８０にて、その旨を示す応答が生成されてもよい。
【０１８９】
ステップＳ２０６５では、モデル管理プログラムＰ２１００が、モデルのデプロイを実施のため、モデル運用システムが有するもモデル運用計算機５１００に対し、モデルデプロイの要求を依頼する。
【０１９０】
ステップＳ２０８０では、モデル管理プログラムＰ２１００が、モデル評価、又はモデル登録の要求が成功したか否か、又は受信した要求情報に不正があり、要求に失敗したか、等を示す応答メッセージを生成する。
【０１９１】
ステップＳ２０９０では、モデル管理プログラムＰ２１００が、生成された応答を要求送信元であるＩＦプログラムＰ２０００へ返送する。
【０１９２】
ステップＳ２１００では、モデル管理計算機２２００が有するＯＳ等から、モデル管理プログラムＰ２１００の終了要求があるかが確認される。終了要求がない場合はステップＳ２０２０へ処理が戻る。終了要求があった場合は、ステップＳ２１１０へ処理が進みモデル管理プログラムＰ２１００が終了する。
【０１９３】
図１６は、評価制御プログラムＰ６０００のフローチャートである。
【０１９４】
評価制御プログラムＰ６０００が実行されると、ステップＳ３０００にて要求の待ち受けが開始される。なお、要求は、評価対象のモデルや、使用するデータセットと、データセットの加工情報を保持した評価設定情報を含む。
【０１９５】
ステップＳ３０１０で、要求が受信されると、処理がステップＳ３０２０へ進む。
【０１９６】
ステップＳ３０２０では、評価制御プログラムＰ６０００が、要求に含まれる評価設定情報識別子を取得し、評価設定管理テーブルＴ３４００から評価設定情報識別子をキーに該当するレコードを特定し、評価設定情報を取得する。
【０１９７】
ステップＳ３０３０では、評価制御プログラムＰ６０００が、後続のステップで実施するモデルの評価に必要な、データセットの収集を行う。例えば、まず、評価制御プログラムＰ６０００が、取得した評価設定情報からフィルタ情報概要Ｔ３４２５を取得し、フィルタ情報に含まれるフィルタ情報識別子をキーに、フィルタ管理テーブルＴ３３００から該当するレコードを特定する。なお、評価設定情報の当該レコードに複数のフィルタ情報が含まれる場合、評価制御プログラムＰ６０００が、その個数分だけフィルタ管理テーブルＴ３３００から該当するフィルタ情報を取得する。評価制御プログラムＰ６０００が、取得されたフィルタ情報から、データセット識別子Ｔ３３４０を取得する。評価制御プログラムＰ６０００が、取得したデータセット識別子Ｔ３３４０をキーに、データセット管理テーブルＴ３１００に含まれるファイル名Ｔ３１８０を取得し、データ管理計算機３１００から取得したデータセットのファイルを収集する。
【０１９８】
ステップＳ３０４０では、評価制御プログラムＰ６０００が、収集されたデータセットに対し、フィルタ組合せ情報に応じた加工を実施する（例えば、様々なモータの故障状態が含まれるデータに対し、軸受け破損のみのデータを抜き出す加工を施すことで、評価用のデータ（加工済データ）を作成する。ステップＳ３０４０の総裁の一例は、例えば下記の通りである。
【０１９９】
すなわち、ステップＳ３０４０では、まず、評価制御プログラムＰ６０００が、どのような加工を施すかを示した情報を含む、フィルタ情報を取得する。評価制御プログラムＰ６０００が、ステップＳ３０２０で取得した評価設定情報のうち、フィルタ情報概要Ｔ３４２５の値をキーに、フィルタ管理テーブルＴ３３００からフィルタ情報識別子Ｔ３３００が該当するレコードをフィルタ情報として取得する。なお、フィルタ情報概要Ｔ３４２５に複数の値が含まれる場合は、評価制御プログラムＰ６０００が、その数だけ繰り返しを行うことで、複数のフィルタ情報を取得する。加えて、評価制御プログラムＰ６０００が、取得したフィルタ情報に含まれる、データセット識別子の値を取得する。
【０２００】
次に、評価制御プログラムＰ６０００が、評価設定管理テーブルＴ３４００に含まれる、フィルタ組合せ情報Ｔ３４３０の情報を参照する。参照したフィルタ組合せ情報Ｔ３４３０は、複数のフィルタを組み合わせてどのようにデータを加工するか示したものである。例えば、フィルタ組合せ情報Ｔ３４３０が“1*2”という条件が記載されている場合、取得したフィルタ情報識別子を持つフィルタ情報が、それぞれ、１：故障モードの限定、２：期間指定であり、“*”はＡＮＤ条件とした場合を考える。まず、評価制御プログラムＰ６０００が、１番目のフィルタ情報が持つフィルタ情報識別子をキーにフィルタ管理テーブルＴ３３００のフィルタ情報を取得する。さらに、評価制御プログラムＰ６０００が、取得したフィルタ情報に含まれるデータセット識別子Ｔ３３４０を用い、データセット管理テーブルＴ３１００のデータセット識別子Ｔ３１１０が該当するレコードを探索する。探索されたレコードから、評価制御プログラムＰ６０００が、ファイル名Ｔ３１８０を取得（test1.dat）し、これが加工対象のデータとなる。次に、評価制御プログラムＰ６０００が、加工対象のデータに関し、評価設定管理テーブルＴ３４００のフィルタ情報Ｔ３４３０に含まれる値を参照する。このケースでは、値が”軸受け破損”となるため、評価制御プログラムＰ６０００が、加工対象データから、軸受け破損のラベルが付与されたデータ（データセット要素）のみを抽出する加工を施す。さらに、フィルタ組合せ情報Ｔ３４３０が“1*2”であり、演算子が“*”のため、抽出されたデータに対して、評価制御プログラムＰ６０００が、フィルタ情報Ｔ３４３０の２番目のフィルタ情報に関しても同様の手順を適用し、“2017/12‐2018/12”までの期間に属するデータのみを抽出する。すなわち、評価制御プログラムＰ６０００が、加工対象データ（tes1.dat）に対して、軸受け破損のラベルが付与され2017/12から2018/12までの期間のデータのみが、モデル評価に用いられる加工済データセットとして抽出される。
【０２０１】
なお、演算子が“+”の場合は、軸受け破損のラベルが付与されている、又はデータ取得時刻が2017/12から2018/12のデータが抽出される。これら演算子は一例であり、例えば指定されたデータを除外する“not”や、括弧を用いた演算優先度指定等、他の演算子や記号が含まれてもよい。
【０２０２】
加工済データセットは、データ管理プログラムＰ３０００を介して、データ管理計算機３１００に格納される。なお、格納されるデータセットの名称はランダムに決められてもよいし、連番などで決定されてもよく、決定された名称は評価設定管理テーブルＴ３４００のデータセットファイルＴ３４４５に記録される。
【０２０３】
ステップＳ３０５０では、評価制御プログラムＰ６０００が、リソースの消費状況等を考慮し、モデル評価プログラムＦ３３００を実行する、評価実行計算機６２００を選択する。具体的には、例えば、評価制御プログラムＰ６０００が、計算機管理テーブルＴ３７００に含まれる計算機の情報のうち、種別Ｔ３７２０が“評価”となっている計算機を抽出し、さらにリソース消費状況Ｔ３７５０が示すリソース消費量が最も少ない計算機を選択してもよい。或いは、例えば、評価制御プログラムＰ６０００が、モデル管理テーブルＴ３０００から評価対象モデルの情報を取得し、評価時要求スペックと、計算機管理テーブルＴ３７００が備えるリソース保有情報Ｔ３７４０と、リソース消費情報Ｔ３７５０から、評価対象モデルが要求するスペックを満たし、かつリソースに空きがある計算機を選択してもよい。
【０２０４】
ステップＳ３０６０では、評価制御プログラムＰ６０００が、モデルの評価の状況を記録するため、評価ジョブ管理テーブルＴ３５００に新たなレコードを追加する。なお、追加されるレコードにおいて、評価設定情報識別子Ｔ３５２０は、評価設定情報識別子Ｔ３４０５であり、ユーザ識別子Ｔ３５３０は、ユーザ管理テーブルＴ３８００に含まれるユーザ識別子Ｔ３８１０のうち評価を要求したユーザの識別子であり、実行計算機識別子Ｔ３５５０は、選択された評価実行計算機６２００の識別子であり、開始時刻Ｔ３５７０は、現在の時刻を示す値であり、終了時刻Ｔ３５８０は、例えば“-”であり、進捗状態Ｔ３５６０は“0%”である。なお、評価ジョブ識別子Ｔ３５１０は、一意な値がデータ管理プログラムＰ３０００によって付与され、記録される。
【０２０５】
ステップＳ３０７０では、評価制御プログラムＰ６０００が、選択された評価実行計算機６２００に対して、モデルの評価の実行を要求する。当該要求は、評価実行計算機６２００が備える評価実行プログラムＰ６１００へ送信される。評価実行計算機６２００の特定には、計算機管理テーブルが備える接続情報Ｔ３７６０に記載された、例えばＩＰアドレスを用いて行われてもよい。なお、送信される要求には、評価設定情報識別子と、評価ジョブ識別子Ｔ３５１０とが含まれる。
【０２０６】
ステップＳ３０８０では、評価制御プログラムＰ６０００が、評価実行計算機Ｐ６１００で実行された評価の状況を監視するため、評価監視スレッドＳ３５００を開始する。それにより、ステップＳ３５１０が実行される。その後、処理がステップＳ３０９０へ進む。すなわち、スレッドによって、ステップＳ３０８０以降のステップと、ステップＳ３５１０以降のステップは評価制御計算機６１００内で並列に実行される。
【０２０７】
ステップＳ３０９０では、評価制御プログラムＰ６０００が、モデルの評価を要求したモデル管理プログラムＰ２１００に対する応答を送信する。なお、送信される応答は、評価の実行開始や、いずれかのステップで異常が発生したことを知らせるエラーメッセージを含んでよい。
【０２０８】
ステップＳ３１００では、評価制御計算機６１００が有するＯＳ等から、評価制御プログラムＰ６０００の終了要求があるかが確認される。終了要求がない場合は、ステップＳ３０１０へ処理が戻る。終了要求があった場合は、ステップＳ３１１０へ処理が進み評価制御プログラムＰ６０００が終了する。
【０２０９】
評価監視スレッドに含まれるステップＳ３５１０では、実行されたモデルの評価の状態監視が開始され、処理がステップＳ３５２０へ進む。
【０２１０】
ステップＳ３５２０では、評価監視スレッドが、評価実行計算機Ｐ６１００に対して、評価ジョブ識別子を持つジョブの実行状況を問合せ、返答を得る。評価実行計算機Ｐ６１００からの返答の値は、例えば“実行中”や、“停止中”のように、状態を文字列や数字で表したものであっても、“10%”や“20%”のように、進捗度を示すような数字であってもよく、評価監視スレッドが、得られた返答の値を評価ジョブ管理テーブルＴ３５００の進捗状態Ｔ３５５０に記録する。加えて、評価監視スレッドが、評価実行計算機Ｐ６１００が備える、ＣＰＵ１９３０やメモリ１９２０のリソース消費状況も併せて収集し、計算機管理テーブルＴ３７００のリソース消費状況Ｔ３７５０を更新する。
【０２１１】
ステップＳ３０３０では、評価監視スレッドが、返答の値がモデル評価の完了を意味する値であるかを判定し、例えば“完了”や“100%”であれば、ステップＳ３５５０へ進み、それ以外の場合はステップＳ３５４０へ進んだうえ、ステップＳ３５１０へ戻る。
【０２１２】
ステップＳ３５５０では、評価監視スレッドが、評価ジョブ管理テーブルＴ３５００の進捗状態Ｔ３５５０に“100%”や“完了”の値を記録する。ステップＳ３３６０へ処理が進み、評価監視スレッドが終了する。
【０２１３】
図１７は、評価実行プログラムＰ６１００のフローチャートである。
【０２１４】
評価制御プログラムＰ６１００が実行されると、ステップＳ４０００にて、評価制御プログラムＰ６０００からの要求が受信され、ステップＳ４０１０へ処理が進む。
【０２１５】
ステップＳ４０１０では、評価実行プログラムＰ６１００が、要求に含まれる評価設定情報識別子をキーに、評価設定管理テーブルＴ３４００から、評価設定情報を取得する。
【０２１６】
ステップＳ４０２０では、評価実行プログラムＰ６１００が、取得された評価設定情報に含まれるデータセットファイルＴ３４４５を、データ管理プログラムＰ３０００を介して取得する。
【０２１７】
ステップＳ４０３０では、評価実行プログラムＰ６１００が、取得された評価設定情報に含まれるモデル識別子Ｔ３４２０をキーに、モデル管理テーブルＴ３０００から、評価対象となるモデルの情報を取得する。さらに、評価実行プログラムＰ６１００が、取得されたモデルの情報に含まれるモデルファイルＴ３０１５を、データ管理プログラムＰ３０００を介して取得する。
【０２１８】
ステップＳ４０４０では、評価実行プログラムＰ６１００が、取得された評価設定情報に含まれるモデル識別子Ｔ３４２０をキーに、評価プログラム管理テーブルＴ３２００から、対象となるモデルの評価に必要な評価プログラムファイルＴ３２２０を特定する。さらに、評価実行プログラムＰ６１００が、特定された評価プログラムファイルＴ３２２０に記載の評価プログラムを、データ管理プログラムＰ３０００を介して取得する。
【０２１９】
ステップＳ４０５０では、評価実行プログラムＰ６１００が、指標Ｔ３４４０から指標の情報を特定する。評価実行プログラムＰ６１００が、取得したデータセットファイルと、モデルファイルと、特定された指標の情報とを取得した評価プログラムへ入力として、当該評価プログラムを実行することで、モデル評価を開始する。評価プログラムが終了後、処理がステップＳ４０６０へ進む。
【０２２０】
ステップＳ４０６０では、評価実行プログラムＰ６１００が、指標等の評価結果情報を、例えば評価プログラムが出力したログファイルや、標準出力を介して取得し、評価結果管理テーブルＴ３６００へ、新しいレコードとして追加する。なお、追加されるレコードにおいて、評価設定情報識別子Ｔ３６２０は、要求に含まれる評価設定情報識別子であり、評価ジョブ情報識別子Ｔ３６３０は、要求に含まれる評価ジョブ情報識別子であり、結果Ｔ３６４０は、取得した評価結果情報であり、ログ情報Ｔ３６５０は、例えば評価プログラムが出力したログファイルや、標準出力の内容でよい。
【０２２１】
ステップＳ４０７０では、評価実行プログラムＰ６１００が終了する。
【０２２２】
以下、本実施例において表示され得るＵＩ（User Interface）の一例である画面（典型的にはＧＵＩ（Graphical User Interface））を説明する。各画面は、例えば、データ管理プログラムＰ３０００が取得し提供する情報を基にＩＦプログラムＰ２０００によってアプリ開発用計算機１０１０又はモデル開発用計算機１０３０に表示される。
【０２２３】
図１８は、モデル一覧画面Ｇ１０００の一例を示した図である。
【０２２４】
モデル一覧画面Ｇ１０００は、登録されているモデルの一覧を示す画面である。画面Ｇ１０００は、アプリ開発用計算機１０１０とモデル開発用計算機１０３０のいずれにも表示され得る。例えば、画面１０００Ｇが、アプリ開発用計算機１０１０に表示された場合、アプリ開発者１０００が、画面１０００Ｇに表示されている一覧の中から閲覧したいモデルを選択し得る。また、例えば、画面１０００Ｇが、モデル開発用計算機１０３０に表示された場合、モデル開発者１０２０が、登録済のモデルを確認したり、新たにモデルを登録するためにモデル登録ボタンＧ１０３０を押下したりし得る。
【０２２５】
画面１０００Ｇは、複数のＵＩ、例えば、マーケットプレイスシステム２０００へ登録された１か複数のモデルのモデル画像Ｇ１０１０と、モデル名称Ｇ１０２０と、新しいモデルを登録するモデル登録ボタンＧ１０３０とを備える。
【０２２６】
画面Ｇ１０００に表示される各モデルの情報は、モデル管理テーブルＴ３０００から取得される。例えば、画像Ｇ１０１０は、画像情報Ｔ３０６０から、名称Ｇ１０２０は、モデル名Ｔ３００５から、それぞれ取得され表示される。なお、データ管理プログラムＰ３０００が、モデル管理テーブルＴ３０００が備える開示情報Ｔ３０３０の値を参照し、当該値を基に、アクセス元のユーザに画面Ｇ１０００を開示するか否かを制御する。制御の一例は、例えば下記の通りである。
・値が“All”であれば、アクセス元がいずれのユーザであっても画面Ｇ１０００を開示する。
・値が“user:1”の場合は、アクセス元のユーザの識別子が“１”の場合のみ画面Ｇ１０００を開示する。
【０２２７】
モデル登録ボタンＧ１０３０は、マーケットプレイスシステム２０００に新しいモデルを登録する画面Ｇ４０００へ遷移するためのボタン（ＧＵＩ部品の一例）である。データ管理プログラムＰ３０００は、アクセス元のユーザのユーザ識別子をキーにユーザ管理テーブルＴ３８００から当該ユーザの情報を取得し、取得したロールＴ３８４０がモデル開発者を示す”Model developer”の場合のみボタンＧ１０３０を表示してもよい。
【０２２８】
各モデルの画像Ｇ１０１０や、モデル名称Ｇ１０２０がマウスポインタでクリックされるといった所定のユーザ操作がされると、モデル詳細画面Ｇ２０００へ遷移されてよい。
【０２２９】
図１９Ａ〜図１９Ｃは、モデル詳細画面Ｇ２０００の一例を示した図である。
【０２３０】
モデル詳細画面Ｇ２０００は、画面Ｇ１０００から選択されたモデルの詳細情報を示す。画面Ｇ２０００は、複数のＵＩ、例えば、モデル名称Ｇ２００５と、モデル画像Ｇ２００７と、モデル情報Ｇ２０１０と、モデルバージョンＧ２０１５と、モデル概要Ｇ２０２０と、モデルＡＰＩＧ２０２５と、モデル評価結果Ｇ２０３０（図１９Ｂ）と、新規モデル評価ボタンＧ２０３５（図１９Ｂ）と、新モデルバージョン登録ボタンＧ２０４０と、デプロイ済み情報Ｇ２０５０（図１９Ｃ）と、新規デプロイボタンＧ４０５５（図１９Ｃ）とを備える。
【０２３１】
モデル名称Ｇ２００５と、モデル画像Ｇ２００７と、モデル概要Ｇ２０２０と、モデルＡＰＩＧ２０２５は、それぞれ、モデル管理テーブルＴ３０００に含まれる、モデル名Ｔ３００５と、画像情報Ｔ３０６０と、概要Ｔ３０５０と、ＡＰＩ仕様Ｔ３０５５と、から取得された情報である。
【０２３２】
なお、表示されるＵＩ（項目）は、図示に例示の項目以外にも、例えば、モデル管理テーブルＴ３０００が備える課金情報Ｔ３０４０が有する課金情報等を含んでもよい。
【０２３３】
モデル情報Ｇ２０１０は、モデル管理テーブルＴ３０００に含まれるバージョン情報Ｔ３０１０から取得された情報や、ユーザＴ３０４０の値をキーにユーザ管理テーブルＴ３８００から取得された情報（対象のモデルを開発したユーザの情報、及び、ユーザ名Ｔ３８２０から取得された情報）である。
【０２３４】
モデルバージョンＧ２０１５は、異なるバージョンのモデルの詳細を表示するためのドロップダウンボックスであり、モデル管理テーブルＴ３０００に対して、モデルグループ情報Ｔ３０７０が同値のレコードにおけるモデル情報のバージョン情報Ｔ３０１０から取得され表示される。
【０２３５】
評価結果情報Ｇ２０３０は、対象のモデルに対して実行された評価の結果を示したものであり、評価結果管理テーブルＴ３６００に含まれる結果Ｔ３６４０から取得された情報や、評価設定情報識別子Ｔ３６２０をキーに評価設定管理テーブルＴ３４００から取得された評価設定情報である。
【０２３６】
新規モデル評価ボタンＧ２０３５は、アプリ開発者１０００又はモデル開発者１０２０から新たに当該モデルの評価を実施することの要求を受け付けるためのボタンである。当該ボタンＧ２０３５が押下されることによって、画面がモデル評価設定画面Ｇ３０００へ遷移する。
【０２３７】
新モデルバージョン登録ボタンＧ２０４０は、モデル開発者１０２０から当該モデルの新しいバージョンを登録することの要求を受け付けるためのボタンである。当該ボタンＧ２０４０が押下されることによって、画面がモデル登録画面Ｇ４０００へ遷移する。
【０２３８】
デプロイ済み情報Ｇ２０５０は、画面に表示されたモデルの各バージョンをデプロイした情報を表示するテーブルである。当該テーブルには、例えば、デプロイされたモデルのバージョン情報、ＡＰＩを用いたアクセスに使用するエンドポイント、デプロイ時刻等の各情報と、デプロイされたモデルとエンドポイントを削除するボタン等が表示される。
【０２３９】
新規デプロイボタンＧ４０５５は、画面で表示されたモデルのバージョンを新たにデプロイすることの要求を受け付けるためのボタンである。
【０２４０】
デプロイ済み情報Ｇ２０５０と、新規デプロイボタンＧ４０５５については、後述する。
【０２４１】
図２０Ａ〜図２０Ｃは、モデル評価設定画面Ｇ３０００の一例を示した図である。
【０２４２】
モデル評価設定画面Ｇ３０００は、評価対象のモデルと、使用するデータセットと、使用するフィルタと、評価指標と、評価結果の開示範囲との指定を受け付ける画面である。画面Ｇ３０００は、複数のＵＩ、例えば、評価名称テキストボックスＧ３００５と、対象バージョン入力テキストボックスＧ３００７と、説明文テキストボックスＧ３０１０と、データセット選択ドロップダウンボックスＧ３０２０（図２０Ｂ）と、フィルタ種別指定ドロップダウンボックスＧ３０２５（図２０Ｂ）と、フィルタ種別説明文表示エリアＧ３０３０（図２０Ｂ）と、条件値入力ドロップダウンボックスＧ３０３５（図２０Ｂ）と、フィルタ条件テーブルＧ３０４０（図２０Ｃ）と、フィルタ条件追加ボタンＧ３０４５（図２０Ｂ）と、フィルタ組合せ条件指定テキストボックスＧ３０５０（図２０Ｃ）と、指標指定チェックボックスＧ３０５５と、開示指定テキストボックスＧ３０６０と、評価実行ボタンＧ３０６５と、自動評価／デプロイチェックボックスＧ３０７０と、条件入力テキストボックスＧ３０７５と、エンドポイント入力テキストボックスＧ３０８０と、を備える。
【０２４３】
なお、表示されるＵＩ（項目）は、図示に例示の項目以外にも、例えば、モデル管理テーブルＴ３０００が備える課金情報Ｔ３０４０や、データセット管理テーブルＴ３１００が備える課金情報Ｔ３１５０や、評価プログラム管理テーブルＴ３２００が備える課金情報Ｔ３２５０が有する課金情報等を含んでもよい。
【０２４４】
評価名称テキストボックスＧ３００５は、評価の名称を入力するテキストボックスである。当該ボックスＧ３００５に入力された値は、評価設定管理テーブルＴ３４００に評価設定名Ｔ３０５として記録される。
【０２４５】
対象バージョン入力テキストボックスＧ３００７は、評価対象となるモデルのバージョンの入力を受け付けるテキストボックス、又は、選択式のドロップダウンボックス等である。なお、当該ボックスＧ３００７は、モデルのバージョン番号等、モデルのバージョンを特定できる値の入力を受け付けるほか、最も新しいモデルのバージョンを示す“latest”等を受け付けてもよい。
【０２４６】
説明文テキストボックスＧ３０１０は、評価の説明（例えばテキスト形式やMarkdown形式のテキスト）の入力を受け付けるテキストボックスである。当該ボックスＧ３０１０に入力された説明は、評価設定管理テーブルＴ３４００に説明Ｔ３４１０として記録される。
【０２４７】
データセット選択ドロップダウンボックスＧ３０２０は、フィルタを適用するデータセットの選択を受け付けるドロップダウンボックスボックスである。データ管理プログラムＰ３０００は、モデル管理テーブルＴ３０００が備えるデータセット識別子Ｔ３０７５をキーに、データセット管理テーブルＴ３１００を検索し、テストデータ識別子Ｔ３１１０が合致するレコード群のファイル名Ｔ３１８０を、データセット選択ドロップダウンボックスＧ３０２０の選択肢として表示する。
【０２４８】
フィルタ種別指定ドロップボックスＧ３０２５は、データセットに対して、どのような種別のフィルタを適用するか、の選択を受け付けるドロップダウンボックスボックスである。また、条件値入力ドロップダウンボックスＧ３０３５は、フィルタ種別指定ドロップボックスＧ３０２５で選択されたフィルタの種別に対応した選択肢を表示し、フィルタリングする条件の指定を受け付けるドロップダウンボックスである。フィルタ種別指定ドロップボックスＧ３０２５の選択肢は、モデル管理テーブルＴ３０００が備えるデータセット識別子Ｔ３０７５をキーにフィルタ管理テーブルＴ３３００から特定されたレコードのフィルタ名に従う。条件値入力ドロップダウンボックスＧ３０３５の選択肢は、当該特定されたレコードの選択可能値Ｔ３３４０に従う。
【０２４９】
なお、フィルタ種別指定ドロップボックスＧ３０２５の選択肢が選択された際に、フィルタ管理テーブルＴ３３００が備える説明Ｔ３３３０が、フィルタ種別説明文表示エリアＧ３０３０へ表示さえてもよい。
【０２５０】
フィルタ条件追加ボタンＧ３０４５は、データセット選択ドロップダウンボックスＧ３０２０と、フィルタ種別指定ドロップボックスＧ３０２５と、条件値入力ドロップダウンボックスＧ３０３５とを介して選択されたフィルタを、フィルタ条件テーブルＧ３０４０へ追加することの要求を受け付けるボタンである。当該ボタンＧ３０４５が押された場合、当該選択されたフィルタに関する情報が、フィルタ条件テーブルＧ３０４０に追加される。
【０２５１】
フィルタ組合せ条件指定テキストボックスＧ３０５０は、フィルタ条件テーブルＧ３０４０に表示されたフィルタを、どのように組み合わせてモデル評価用のデータセットを生成するか、の指定を受け付けるボックスである。
【０２５２】
指標指定チェックボックスＧ３０５５は、評価結果として得たい指標の指定を受け付けるチェックボックスである。チェックボックスＧ３０５５の一例として、精度を示す“Accuracy”や、適合率を示す“Precision”や、再現率を示す“Recall”や、精度と再現率の調和平均を示す“F-measure”がある。
【０２５３】
開示指定テキストボックスＧ３０６０は、本画面Ｇ３０００にて入力された評価設定情報と、評価を実施して得られた結果情報を、どのユーザに開示するかの指定（つまり開示範囲の指定）を受け付けるテキストボックスである。開示範囲として入力され得る値の一例として、すべてのユーザへの開示を示す“All”や、特定のユーザへの開示に限定するためのユーザ名又はユーザ識別子がある。
【０２５４】
評価実行ボタンＧ３０６５は、前述の評価設定情報を用いてモデルの評価を開始することの要求を受け付けるためのボタンである。
【０２５５】
自動評価／デプロイチェックボックスＧ３０７０は、例えば最新のモデルがモデル開発者１０２０によってマーケットプレイスシステム２０００に登録された際に、自動的にモデルの評価を画面で入力された評価設定情報を用いて評価を実施し、評価の結果が、条件入力テキストボックスＧ３０７５に入力された条件に合致する場合に、モデル運用システム５０００に対する当該モデルのデプロイを実施するかを指定することを受け付けるチェックボックスである。
【０２５６】
条件入力テキストボックスＧ３０７５は、自動評価／デプロイチェックボックスＧ３０７０にチェックが付けられた場合、モデル運用システム５０００に対する当該モデルのデプロイを自動的に実施する条件の入力を受け付けるテキストボックスである。
【０２５７】
エンドポイント入力テキストボックスＧ３０８０は、自動評価／デプロイチェックボックスＧ３０７０にチェックが付けられており、条件入力テキストボックスＧ３０７５に入力された条件に評価の結果が合致する場合、デプロイされたモデルの機能を利用するためのＡＰＩのエンドポイントに関する情報の入力を受け付けるテキストボックスである。
【０２５８】
なお、自動評価／デプロイチェックボックスＧ３０７０と、条件入力テキストボックスＧ３０７５と、エンドポイント入力テキストボックスＧ３０８０については、後述する。
【０２５９】
図２１Ａ〜図２１Ｃは、モデル登録画面Ｇ４００の一例を示した図である。
【０２６０】
モデル登録画面Ｇ４０００は、モデルの登録を受け付ける画面である。画面Ｇ４０００は、複数のＵＩ、例えば、モデル名入力テキストボックスＧ４０１０と、バージョン入力テキストボックスＧ４０１５と、画像パス入力テキストボックスＧ４０２０と、画像参照ボタンＧ４０２３と、モデルファイルＧ４０２７と、評価プログラムＧ４０２８と、実行プログラムＧ４０２９と、モデル概要入力テキストボックスＧ４０３０と、ＡＰＩ仕様入力テキストボックスＧ４０３５と、データセットファイルパス入力テキストボックスＧ４０４０（図２１Ｂ）と、データセット参照ボタンＧ４０４５（図２１Ｂ）と、データセット名称入力テキストボックスＧ４０５０（図２１Ｂ）と、データセット追加ボタンＧ４０５５（図２１Ｂ）と、アップロード済みデータセット管理テーブルＧ４０６０（図２１Ｂ）と、フィルタ管理テーブルＧ４０６５（図２１Ｃ）と、フィルタ情報追加ボタンＧ４０７５（図２１Ｃ）と、開示入力テキストボックスＧ４０７０と、モデル登録ボタンＧ４０８０とを備える。
【０２６１】
なお、表示される情報項目は、図示に例示の項目以外にも、例えば、課金情報Ｔ３０４０として記録する課金情報の入力を受け付ける項目を含んでもよい。
【０２６２】
モデル名入力テキストボックスＧ４０１０は、登録されるモデルの名称の入力を受け付けるテキストボックスである。当該ボックスＧ４０１０に入力された値は、モデル管理テーブルＴ３０００にモデル名Ｔ３００５として記録される。
【０２６３】
バージョン入力テキストボックスＧ４０１５、登録されるモデルのバージョンの入力を受け付けるテキストボックスである。当該ボックスＧ４０１５に入力された値は、モデル管理テーブルＴ３０００にバージョン情報Ｔ３０１０として記録される。
【０２６４】
画像パス入力テキストボックスＧ４０２０は、モデル一覧画面Ｇ１０００や、モデル詳細画面Ｇ２０００で表示する画像ファイルについて、モデル開発用計算機におけるファイルのパスの入力を受け付けるテキストボックスである。パスは、手動で入力されてもよいし、画像参照ボタンＧ４０２３を押下しＯＳが提供するファイル選択ダイアログにて指定されたファイルのパスが入力されてもよい。
【０２６５】
画像アップロードボタンＧ４０２５は、画像パス入力テキストボックスＧ４０２０で指定されたパスに存在する画像ファイルをデータ管理システム３０００へ送信し格納することの要求を受け付けるボタンである。当該ボタンＧ４０２５が押下された場合に、画像ファイルがデータ管理システム３０００に格納される。
【０２６６】
モデルファイルＧ４０２７は、モデルの実体であるモデルファイルの指定を受け付けるテキストボックスである。指定されたモデルファイルは、モデルの評価やモデルの運用時に使用される。
【０２６７】
評価プログラムＧ４０２８は、モデルを評価システム６０００で評価する際に用いられるプログラムの指定を受け付るテキストボックスである。
【０２６８】
実行プログラムＧ４０２９は、モデル運用システム５０００にデプロイされたモデルファイルを運用するためのプログラムの指定を受け付けるテキストボックスである。なお、実行プログラムＧ４０２９については後述する。
【０２６９】
モデル概要入力テキストボックスＧ４０３０、登録されるモデルの概要（例えば、テキスト形式やMarkdown形式のテキスト）の入力を受け付けるテキストボックスである。当該ボックスＧ４０３０に入力された値は、モデル管理テーブルＴ３０００に概要Ｔ３０５５として記録される。
【０２７０】
ＡＰＩ仕様入力テキストボックスＧ４０３５、登録されるモデルを利用するためのＡＰＩ仕様（例えば、テキスト形式や、Markdown形式や、ＪＳＯＮ形式や、ＹＡＭＬ形式等のテキスト）の入力を受け付けるテキストボックスである。当該ボックスＧ４０３５に入力された値は、モデル管理テーブルＴ３０００にＡＰＩ仕様Ｔ３０６０として記録される。
【０２７１】
データセットファイルパス入力テキストボックスＧ４０４０は、モデルの評価に利用されるデータセットについて、モデル開発用計算機１０３０におけるファイルのパスの入力を受け付けるテキストボックスである。当該パスは、手動で入力されてもよいし、データセット参照ボタンＧ４０４５が押下されＯＳが提供するファイル選択ダイアログにて指定されたファイルのパスが入力されてもよい。
【０２７２】
データセット名称入力テキストボックスＧ４０５０は、データセットの名称の入力を受け付けるテキストボックスである。当該ボックスＧ４０５０に入力された値は、データセット管理テーブルＴ３１００にデータセット名称Ｔ３１２０として記録される。
【０２７３】
データセット追加ボタンＧ４０５５は、データセット名称入力テキストボックスＧ４０５０で指定したパスに存在するデータセットのファイルを、データ管理システム３０００へ送信し、格納することの要求を受け付けるボタンである。当該ボタンＧ４０５５が押下された場合に、データセットファイルＦ３２００がデータ管理システム３０００に格納される。
【０２７４】
アップロード済みデータセット管理テーブルＧ４０６０は、格納されたデータセットの情報を表示するテーブルであり、各行に１つのデータセットの情報が表示される。なお、各行に配置された削除ボタンが押下されることで、データ管理システム３０００から該当するデータセットファイルＦ３２００が削除されてもよい。
【０２７５】
フィルタ管理テーブルＧ４０６５は、格納されたデータセットをモデルの評価に用いる場合、指定可能なフィルタの情報を示したテーブルであり、各行に１つのフィルタ情報を入力できる。なお、フィルタ情報追加ボタンＧ４０７５が押下されることで、フィルタ管理テーブルＧ４０６５に新たな行が加えられてもよい。
【０２７６】
開示入力テキストボックスＧ４０７０は、登録するモデルの情報を、どのユーザに開示するかの指定（つまり開示範囲の指定）を受け付けるテキストボックスである。開示範囲として入力され得る値の一例は、上述した通り（例えば、すべてのユーザへの開示を示す“All”）である。
【０２７７】
モデル登録ボタンＧ４０８０は、モデルファイルＧ４０２７で指定したパスに存在するモデルファイルを、データ管理システム３０００へ送信して格納し、本画面Ｇ４０００で入力されたモデル情報を用いて、ＩＦプログラムＰ２０００へモデルの登録要求を送信し、マーケットプレイスシステム２０００に対する新しいモデルの登録を実行することの要求を受け付けるボタンである。
【０２７８】
本実施例によれば、アプリ開発者１０００に対してデータセットを非開示にした状態で、アプリ開発者１０００の迅速なモデル採否判断と負荷軽減を支援することができる。
【０２７９】
更に、上述したように、本実施例では、モデル開発者１０２０によって開発されたモデルのデプロイ、及びモデルを評価した結果に応じて、モデルのデプロイを自動的に行うことが可能である。これにより、アプリ開発者１０００に対してデータセットを非開示にした状態で、アプリ開発者１０００の迅速なモデル採否判断と負荷軽減を支援することに加え、各モデルをモデル運用システム５０００へデプロイし、各アプリから利用できる状態が実現される。さらに、モデルが更新された際に自動的に評価が実行され、デプロイされることで、アプリが呼び出すモデルを常に最新のものに保つ等の実現が期待される。以下、この点について述べる。
【０２８０】
例えば、図２Ａ及び図２Ｂを参照すれば、一例として下記が言える。
・デプロイされたモデルの運用に必要なモデル運用情報を含む運用管理テーブルＴ４１００と、モデルファイルＦ３０００を読み込みモデルの機能を利用するためのＡＰＩを提供するモデル実行プログラムファイルＦ３４００と、モデル運用システム５０００とがある。
・モデル運用システム５０００は、１か複数のモデル運用計算機５１００と、１か複数のモデル実行計算機５２００とを備える。モデル運用計算機５１００は、実行中のモデルを管理するモデル運用プログラムＰ５０００と、モデルへのＡＰＩを介したアクセスを制御する経路制御プログラムＰ５０５０とを備える。モデル実行計算機５２００は、１か複数の開発されたモデルの機能を提供するモデルサービスＰ５１００を備える。モデル運用計算機５１００とモデル実行計算機Ｐ５１００は、各モデルの稼働情報を含むログを記録する手段や、ログを他の計算機へ送信する機能を備えてもよい。
・経路制御プログラムＰ５０５０はデプロイされたモデルへのＡＰＩによるアクセス経路を制御できるものであればよい。
【０２８１】
また、例えば、図４を参照すれば、一例として下記が言える。
・モデル運用プログラムファイル情報Ｔ３０８０は、モデルを運用する際に必要となるモデル実行プログラムファイルＦ３４００のファイル名を示す。当該情報Ｔ３０８０には、例えば、モデル登録画面Ｇ４０００が備える実行プログラムＧ４０２９にユーザが指定したファイルがデータ管理システム３０００に登録された際にデータ管理プログラムＰ３０００によって付与された名称が記録されてよい。
【０２８２】
また、例えば、図８を参照すれば、一例として下記が言える。
・自動評価／デプロイＴ３４６５は、例えば最新のモデルがモデル開発者１０２０によってマーケットプレイスシステム２０００に登録された際に、自動的にモデルの評価を画面で入力された評価設定情報を用いて評価を実施し、評価の結果が、条件入力テキストボックスＧ３０７５に入力された条件に合致する場合に、モデル運用システム５０００に対する当該モデルのデプロイを実施するかを指定する値を示す。当該値は、例えば“Yes”、“No”等の２値の値でよい。
・条件Ｇ３０７５は、自動評価／デプロイＴ３４６５の値が例えば“Yes”であり、モデル運用システム５０００に対する当該モデルのデプロイを自動的に実施する際の、条件を示す。
・エンドポイントＴ３４７５は、自動評価／デプロイＴ３４６５の値が例えば“Yes”であり、条件Ｇ３０７５に記載の条件を満たす場合、デプロイされたモデルの機能を利用するためのＡＰＩのエンドポイントに関する情報を示す。
【０２８３】
また、例えば、図１６を参照すれば、一例として下記が言える。
・ステップＳ３５５０の後段に、ステップＳ３５５５が加えられる。これにより、モデルの評価の結果に従って、自動でモデルデプロイが実施される。
・ステップＳ３５５５では、評価制御プログラムＰ６０００が、評価設定管理テーブルＴ３４００が含む、自動評価／デプロイＴ３４６５を参照する。例えば自動評価／デプロイの有効かを示す“Yes”が記載されている場合、評価制御プログラムＰ６０００が、条件Ｔ３４７０に記載の条件情報を参照する。評価制御プログラムＰ６０００が、条件情報とステップＳ３５５０で得られた評価結果の情報を比較する。条件に合致する場合は、評価制御プログラムＰ６０００が、モデル管理システム５００が備える、モデル運用プログラムＰ５０００へ、モデルデプロイの要求を送信する。
・モデル評価の自動実行は、例えばモデル評価設定画面Ｇ３０００が備える自動評価／デプロイチェックボックスＧ３０７０が有効化されており、評価設定管理テーブルＴ３４００が含む自動評価／デプロイＴ３４６５が“Yes”の場合、当該評価を定期的に実行する処理をモデル管理プログラムＰ２１００が有するステップＳ２０７０にて実施したり、対象のモデルが更新されたタイミングで再度評価を実施したりするよう、監視する機能をモデル管理計算機２２００が備えてもよい。
【０２８４】
以上のような図面に加えて、更に、図２２及び図２３を参照して説明することができる。
【０２８５】
図２２は、運用管理テーブルＴ４１００の構成例を示した図である。
【０２８６】
運用管理テーブルＴ４１００における各レコードは、デプロイされたモデルの運用に必要な運用情報を格納する。
【０２８７】
運用管理テーブルＴ４１００において、運用（モデルデプロイ）毎にレコードが存在する。以下、１つの運用を例に取る（図２２の説明において「注目運用」）。
【０２８８】
注目運用に対応したレコードが格納する運用情報は、例えば、運用情報識別子Ｔ４１１０と、モデル情報識別子Ｔ４１２０と、ユーザ識別子Ｔ４１３０と、テナント識別子Ｔ４１５０と、実行計算機識別子Ｔ４１６０と、エンドポイント情報Ｔ４１７０と、デプロイ時刻Ｔ４１８０とを含む。
【０２８９】
運用情報識別子Ｔ４１１０は、注目運用の運用情報を一意に特定するための識別子を示す。当該識別子は、データ管理プログラムＰ３０００によって付与された値（例えば連番）でよい。
【０２９０】
モデル情報識別子Ｔ４１２０は、注目運用としてデプロイされるモデルの情報を含んだモデル情報を特定するための識別子を示す。当該識別子は、例えば、モデル管理テーブルＴ３０００が備えるモデル情報識別子Ｔ３００５の値でよい。
【０２９１】
ユーザ識別子Ｔ４１３０は、注目運用に対応したユーザの識別子を示す。当該識別子は、例えば、ユーザ管理テーブルＴ３８００が備えるユーザ識別子Ｔ３８１０の値でよい。
【０２９２】
テナント識別子Ｔ４１５０は、注目運用に対応したユーザが属するテナントの識別子を示す。当該識別子は、例えば、テナント管理テーブルＴ３９００が備えるテナント識別子Ｔ３９１０の値でよい。
【０２９３】
実行計算機識別子Ｔ３５５０は、注目運用としてデプロイされたモデルに対応したモデル実行プログラムファイルを実行するモデル実行計算機５２００を特定する識別子を示す。当該識別子は、例えば、計算機管理テーブルＴ３７００が備える計算機識別子Ｔ３７１０の値でよい。
【０２９４】
エンドポイント情報Ｔ４１７０は、注目運用としてデプロイされたモデルの機能を利用するためのＡＰＩのエンドポイントのＵＲＩを示す。なお、エンドポイント情報Ｔ４１７０は、モデルの機能を利用するために必要な情報であれば、ＵＲＩに代えて又は加えてＵＲＩ以外の情報を含んでもよい。
【０２９５】
デプロイ時刻Ｔ４１８０は、注目運用としてモデルをデプロイした時刻を示す。当該時刻の情報は、モデル詳細画面Ｇ２０００にて、ユーザがデプロイされたモデルの情報を参照するために表示されてもよい。
【０２９６】
図２３は、モデル運用プログラムＰ５０００のフローチャートである。
【０２９７】
モデル運用プログラムＰ５０００が実行されると、ステップＳ５０００にてデプロイ要求が受信され、処理がステップＳ５０１０へ進む。
【０２９８】
ステップＳ５０２０では、モデル運用プログラムＰ５０００が、要求の内容を解析し、モデル識別子を含むモデル情報と、要求を実施したユーザのユーザ情報識別子とテナント情報識別子を含むユーザ情報とテナント情報と、エンドポイント情報とを特定する。ユーザ情報とテナント情報は、ユーザ情報識別子とテナント情報識別子を用いてユーザ管理テーブルＴ３８００とテナント管理テーブルＴ３９００から特定される。モデル情報は、モデル情報識別子を用いてモデル管理テーブルＴ３０００から取得される。モデル情報から、モデルファイルＴ３０２０と、モデル実行プログラムＴ３０８０、運用時要求スペックＴ３０３０とが特定される。さらに、エンドポイント情報は、得られたユーザ情報とモデル情報に含まれるユーザ情報識別子と、モデル情報識別子と、モデルのバージョン情報とを用いて生成された情報、例えば“https://abcd.com/deployed_model/ユーザ情報識別子/モデル情報識別子/バージョン情報”である。
【０２９９】
ステップＳ５０２０では、モデル運用プログラムＰ５０００が、リソースの消費状況等を考慮し、モデル実行プログラムＦ３４００を実行するモデル実行計算機５２００を選択する。ステップＳ５０２０では、例えば、モデル運用プログラムＰ５０００が、計算機管理テーブルＴ３７００に含まれる計算機の情報のうち、種別Ｔ３７２０が”運用”となっているものを抽出し、さらにリソース消費状況Ｔ３７５０が最も少ないものを選択してもよい。或いは、例えば、モデル運用プログラムＰ５０００が、特定したモデル情報に含まれる運用時要求スペックＴ３０３０と、計算機管理テーブルＴ３７００が備えるリソース保有情報Ｔ３７４０と、リソース消費情報Ｔ３７５０とから、デプロイ対象モデルが要求するスペックを満たし、かつリソースに空きがある計算機を選択してもよい。
【０３００】
ステップＳ５０３０では、モデル運用プログラムＰ５０００が、選択されたモデル実行計算機５２００に対して、特定されたモデルファイルＴ３０２０と、モデル実行プログラムＴ３０８０の情報を含む、デプロイ実施要求を送信する。なお、デプロイ実施要求を受信したモデル実行計算機５２００は、モデルファイルＦ３０００とモデル実行ファイルＦ３４００をデータ管理システム３０００から収集し、モデル実行ファイルＦ３４００を実行する。
【０３０１】
ステップＳ５０４０では、モデル運用プログラムＰ５０００が、特定したモデル情報識別子と、ユーザ情報識別子と、テナント識別子と、エンドポイント情報と、現在の時刻の情報とを含んだ新たなレコードを、運用管理テーブルＴ４１００に追加する。
【０３０２】
ステップＳ５０５０では、モデル運用プログラムＰ５０００が、選択されたモデル実行計算機５２００の情報と、特定したエンドポイントの情報とを、経路制御プログラムＰ５０５０へ送信し、当該モデルへアクセスするため、ネットワーク観点の経路設定を実施することで、モデル運用システムの内外に存在するアプリＰ４１００等から、エンドポイントへのＡＰＩを用いたアクセスを可能にする。
【０３０３】
ステップＳ５０６０では、モデル運用プログラムＰ５０００が、デプロイ要求を送信したモデル管理プログラムＰ２１００に対し、デプロイが成功した旨や何らかのエラーで失敗した旨を含む応用を送信する。ステップＳ５０７０でモデル運用プログラムＰ５０００が終了する。
【０３０４】
以上の通り、本実施例では、アプリ開発者１０００に対してデータセットを非開示にした状態で、アプリ開発者１０００の迅速なモデル採否判断と負荷軽減を支援することに加え、各モデルをモデル運用システムへデプロイし、各アプリから利用できる状態が実現される。さらに、モデルが更新された際に自動的に評価が実行され、デプロイされることで、アプリが呼び出すモデルを常に最新のものに保つ等の実現が期待される。
【実施例２】
【０３０５】
実施例２を説明する。その際、実施例１との相違点を主に説明し、実施例１との共通点については説明を省略又は簡略する。
【０３０６】
実施例２では、アプリ開発者１０００が、モデル開発者１０２０がマーケットプレイスシステム２０００へ登録したデータセットに加え、アプリ開発者１０００が独自の用意したデータセットを併せて、モデルの評価を実施することが可能でする。これにより、アプリ開発者１０００は、アプリＰ４１００の要件により即した、自由度の高いモデルの評価を実施できる。
【０３０７】
例えば、図１５を参照すれば、一例として下記が言える。
・ステップＳ２０４０とステップＳ２０７０の間に、ステップＳ２０４５が加えられる。これにより、アプリ開発者１０００によるデータセットの追加を実現可能である。
・ステップＳ２０４５では、モデル管理プログラムＰ２１００が、モデル評価設定画面Ｇ２０００が備えるＵＩ（データセットファイルパス入力テキストボックスＧ４０４０と、データセット参照ボタンＧ４０４５と、データセット名称入力テキストボックスＧ４０５０と、データセット追加ボタンＧ４０５５と、アップロード済みデータセット管理テーブルＧ４０６０と、フィルタ管理テーブルＧ４０６５と、フィルタ情報追加ボタンＧ４０７５と、開示入力テキストボックスＧ４０７０）にて入力された情報を、アプリ開発者１０００が指示したデータセットの情報として、モデル評価の要求から取得する。さらに、モデル管理プログラムＰ２１００が、当該取得された情報を基に、データセット管理テーブルＴ３１００へ新たなレコードを加え、データセットの実体であるデータセットファイルＦ３２００をデータ管理システム３０００へ追加する。
【０３０８】
また、例えば、図２０Ａ〜図２０Ｃを参照すれば、一例として下記が言える。
・モデル評価設定画面Ｇ３０００が、図２１Ａ〜図２１Ｃを基に説明されたＵＩ（データセットファイルパス入力テキストボックスＧ４０４０と、データセット参照ボタンＧ４０４５と、データセット名称入力テキストボックスＧ４０５０と、データセット追加ボタンＧ４０５５と、アップロード済みデータセット管理テーブルＧ４０６０と、フィルタ管理テーブルＧ４０６５と、フィルタ情報追加ボタンＧ４０７５と、開示入力テキストボックスＧ４０７０）と同等のＵＩを備える。さらに、評価実行ボタンＧ３０６５が押下された際、追加した項目へ入力された情報が、ＩＦプログラムＰ２０００を介して、モデル管理プログラムＰ２１００へ送信される。
【０３０９】
以上、実施例２によれば、アプリ開発者１０００は、アプリＰ４１００の要件により即した、自由度の高いモデルの評価を実施できる。
【０３１０】
以上の幾つかの実施例についての説明を、例えば下記のように総括することができる。
【０３１１】
図１は、モデル採否判断支援システムの概要の一例を示した図である。
【０３１２】
モデル採否判断支援システム１０は、モデル登録部２０と、モデル評価部３０と、モデル閲覧部４０とを備える。モデル採否判断支援システム１０は、デプロイ部５０を備えてもよい。これらの機能２０、３０、４０及び５０の少なくとも１つは、上述したプログラム（例えばプログラムＰ２０００、Ｐ２１００、Ｐ３０００、Ｐ５０００、Ｐ５０５０、Ｐ５１００、Ｐ６０００及びＰ６１００）の少なくとも１つがプロセッサに実行されることで実現される。また、機能２０、３０、４０及び５０は、１つの計算機に存在してもよいし複数の計算機に分散して存在してもよい。
【０３１３】
モデル登録部２０は、１か複数のモデルの各々について当該モデルに関するモデル情報７０５０と、１か複数のデータセットの各々について当該データセットに関するデータセット情報７０１０と、１か複数のフィルタの各々について当該フィルタに関するフィルタ情報７０２０とを登録する。１か複数のモデルの各々について、当該モデルに、１か複数のデータセットのうち、当該モデルの入力となる１か複数のデータセット要素であるデータセットが関連付けられている。１か複数のデータセットの各々について、当該データセットに、１か複数のフィルタのうち、当該データセットのフィルタが関連付けられている。
【０３１４】
モデル評価部３０は、１か複数のモデルの各々について、当該モデルが評価対象の場合、当該モデルに関連付けられているデータセットと当該データセットに関連付けられているフィルタとを基に得られたデータセットである加工済データセットを用いて当該モデルを評価する。
【０３１５】
モデル閲覧部４０は、１か複数のモデルの各々について、当該モデルが閲覧対象の場合、当該モデルに関連付いている情報の少なくとも一部と、当該モデルの評価の結果を示す情報とを表示する。
【０３１６】
このような構成によれば、評価対象のモデルの評価は、アプリ開発者１０００（モデル利用者の一例）の計算機とは異なる計算機にて行われるため、当該モデルに関連付けられているデータセット（例えば、モデル開発者が用意したデータセット）は、モデル利用者に非開示となる。また、当該評価において使用される加工済データセットは、当該モデルに関連付けられているデータセットのフィルタを用いて得られたデータセット、例えば、アプリ開発者１０００が評価のために特に入力対象としたいデータセット要素の集合である。以上のことから、モデル開発者１０２０のデータセットがアプリ開発者１０００へ開示困難であってもモデル採否判断に関するアプリ開発者１０００の負荷を軽減することが期待される。
【０３１７】
図１の参照符号７０００は、モデル採否判断支援システム１０（例えば、マーケットプレイスシステムを含んだシステム）に登録されたモデルに対し、アプリ開発者１０００が求めるデータセットと指標でモデルを評価する際の各種情報の流れを模式的に示したものである。なお、図中の実線矢印７２１０は情報の入力を示し、破線実線７２２０は情報の出力を示す。
【０３１８】
評価設定情報７０３０は、データセットをどのように加工し、どのモデルを評価するか等、モデルの評価に必要な、データセット情報７０１０、フィルタ情報７０２０、モデル情報７０５０を含む。
【０３１９】
評価制御プログラムＰ６０００は、データセット情報７０１０から得られるデータセットと、フィルタ情報７０２０から得られるフィルタと、を入力とし、モデルの評価に用いる加工済データセット７０４０を生成する。
【０３２０】
評価実行プログラムＰ６０１０は、モデル情報７０５０から得られるモデルと、当該モデルに関連付いている評価プログラム７０６０と、上述の加工済データセット７０４０と、を入力として、モデルの評価を実施し、評価結果情報７０７０を出力する。
【０３２１】
評価制御プログラムＰ６０００に入力されるデータセットは、モデルの評価に必要なデータセット（当該モデルに関連付けられているデータセット）を示す。ただし、データセットは、加工せずに用いてもよく、後述の加工を施した加工済データセットを用いてもよい。なお、加工せずにデータセットを用いる場合、加工済データセット７０４０の内容は、データセット情報７０１０から得られたデータセットと同じでよい。
【０３２２】
フィルタ情報７０２０は、データセット情報７０１０から特定されたデータセットに対してどのような方法で加工するかという情報を含み、例えば、データセットが、モータの軸受け破損と、コイル破損と、正常状態のデータを含む場合、軸受け破損のみのデータを抽出する加工を施し、加工済データセット７０４０を生成する等が挙げられる。
【０３２３】
モデル情報７０５０は、評価対象となるモデルを特定する情報を含み、例えばモデル名称やバージョンや、ファイルのパス等を備える。
【０３２４】
評価結果情報７０７０は、加工済データセット７０４０を用いてモデルを評価した結果の情報を含み、例えば精度や、適合率や、再現率や、特異度や、精度と再現率の調和平均を示すＦ値等を含む。
【０３２５】
参照符号７５００は、データセット情報７０１０と、フィルタ情報７０２０と、評価設定情報７０３０と、モデル情報７０５０と、評価プログラム７０６０と、評価結果情報７０７０との関係性を、実線７５１０と多重度７０８０で示したものである。
【０３２６】
実線７５１０は、両辺に接続された情報が関係性を持つこと示し、例えばモデル情報７０５０と評価プログラム７０６０は、互いに多重度７０８０が“１”であり、１つのモデル情報７０５０に対して、１つの評価プログラム７０６０があることを示している。他方、データセット情報７０１０と、フィルタ情報７０２０は、１つのデータセット情報７０１０に対して、０個以上の複数のフィルタ情報７０２０があることを示している。
【０３２７】
評価設定情報７０３０は、０個以上のフィルタ情報７０２０と、１か複数のデータセット情報７０１０とモデル情報７０５０とを持ち、０個以上の評価結果情報７０７０を備える。データセット情報７０１０は、０個以上のフィルタ情報を持ち、モデル情報７０５０は、０個以上のデータセット情報７０１０と１つの評価プログラム７０６０と関係する。なお、データセット情報７０１０は、複数のモデル情報７０５０と関係があり、複数のモデルが同じデータセットと、データセットに関連するフィルタ情報７０２０を共有してもよい。
【０３２８】
１か複数のフィルタの各々について、当該フィルタのフィルタ情報７０２０は、当該フィルタが関連付けられているデータセットのうち、当該データセットが関連付けられているモデルの評価のために入力されるデータセット要素に関する条件を含んでよい。評価対象のモデルについて、加工済データセットは、当該モデルに関連付けられているデータセットのうち、当該データセットに関連付けられているフィルタのフィルタ情報７０２０が示す条件に適合する少なくとも１つのデータセット要素（例えば少なくとも１つのファイル）でよい。これにより、評価対象の学習モデルに入力される加工済データセットを、学習モデルに関連付けられているデータセットのうち、条件に適合するデータセット要素に絞ることができる。
【０３２９】
モデル登録部２０は、少なくとも１つのモデルについて、下記（ｒ１）及び（ｒ２）、
（ｒ１）当該モデルに関連付ける１以上のデータセットの選択、及び、
（ｒ２）当該モデルについて選択された１以上のデータセットの少なくとも１つのデータセットについて、当該データセットに関連付ける１以上のフィルタの選択、
の少なくとも１つを受け付ける１以上のＵＩである１以上の登録インターフェースを提供してよい。これにより、モデル開発者１０２０が、モデルに関連付けられるデータセットや、データセットに関連付けられるフィルタを制限できる。
【０３３０】
モデル評価部３０は、評価対象のモデルについて、下記（ｅ１）乃至（ｅ４）、
（ｅ１）当該モデルに関連付けられている１以上のデータセットの選択、
（ｅ２）少なくとも１つのデータセットについて、当該データセットに関連付けられている１以上のフィルタの選択、
（ｅ３）少なくとも１つのフィルタについて、当該フィルタが関連付けられているデータセットのデータセット要素に関する条件としてのパラメータ、及び、
（ｅ４）１以上の評価指標の選択、
の少なくとも１つを受け付ける１以上のＵＩである１以上の評価インターフェースを提供してよい。モデル評価部３０は、当該１以上の評価インターフェースを介して受け付けられた情報に従い、評価対象のモデルの評価を行ってよい。これにより、アプリ開発者１０００やモデル開発者１０２０といったユーザが所望する評価を実行できる。
【０３３１】
モデル評価部３０は、評価対象のモデルの評価の結果を示す情報の閲覧先として許可された１か複数のユーザが属する開示範囲を示す情報である開示範囲情報の選択を受け付けるＵＩを提供してよい。モデル閲覧部４０は、閲覧対象のモデルに関する情報を、当該モデルに関し受け付けられた開示範囲情報が示す開示範囲に属するユーザに制限してよい。これのようして、モデルの評価結果の開示範囲を一部のユーザに制限したり、モデルの評価結果を複数のユーザが共有したりすることができる。
【０３３２】
モデル評価部３０は、複数の計算機の各々のリソース消費量を基に複数の計算機から計算機（例えば、最もリソース消費量が少ない計算機）を選択し、当該選択した計算機に前記評価対象のモデルの評価を実行させてよい。これにより、効率的なモデル評価が可能である。
【０３３３】
モデル評価部３０は、下記のうちの少なくとも１つの場合、
・当該モデルに、当該モデルの評価のための課金に関する情報が関連付けられている、及び、
・当該モデルの評価に使用されたデータセットに、当該データセットを使用した評価のための課金に関する情報が関連付けられている、
評価対象のモデルの評価にかかった課金額を算出してよい。これにより、モデル開発者１０２０が用意したデータセットをアプリ開発者１０００に非開示にモデル評価を実行しつつアプリ開発者１０００が望むモデル評価を実行するといったこと、つまり、モデル開発者１０２０にもアプリ開発者１０００にも好ましいモデル評価を実行するといったことに見合った価値を算出することができる。
【０３３４】
デプロイ部５０は、モデル開発者１０２０により開発された評価対象のモデルの評価の結果が所定の条件に適合する場合に（例えば、アプリ開発者１０００から指定された指標について得られた結果がアプリ開発者１０００から指定された条件を満たしている場合に）当該モデルをアプリ開発者１０００から指定された場所へ自動的にデプロイしてよい。これにより、モデルの効率的な運用が可能である。
【０３３５】
モデル評価部３０は、モデル開発者１０２０により開発された評価対象のモデルの評価において、モデル開発者１０２０により選択されたデータセットに基づく加工済データセットの他に、評価対象のモデルの評価を要求したアプリ開発者１０００から入力されたデータセットに属するデータセット要素も使用する。これにより、アプリ開発者１０００が望む指標でのモデル評価の精度が向上することが期待できる。
【符号の説明】
【０３３６】
１０…モデル採否判断支援システム
【図１】
2020166681.tif 000003
【図２Ａ】
2020166681.tif 000004
【図２Ｂ】
2020166681.tif 000005
【図３】
2020166681.tif 000006
【図４】
2020166681.tif 000007
【図５】
2020166681.tif 000008
【図６】
2020166681.tif 000009
【図７】
2020166681.tif 000010
【図８】
2020166681.tif 000011
【図９】
2020166681.tif 000012
【図１０】
2020166681.tif 000013
【図１１】
2020166681.tif 000014
【図１２】
2020166681.tif 000015
【図１３】
2020166681.tif 000016
【図１４】
2020166681.tif 000017
【図１５】
2020166681.tif 000018
【図１６】
2020166681.tif 000019
【図１７】
2020166681.tif 000020
【図１８】
2020166681.tif 000021
【図１９Ａ】
2020166681.tif 000022
【図１９Ｂ】
2020166681.tif 000023
【図１９Ｃ】
2020166681.tif 000024
【図２０Ａ】
2020166681.tif 000025
【図２０Ｂ】
2020166681.tif 000026
【図２０Ｃ】
2020166681.tif 000027
【図２１Ａ】
2020166681.tif 000028
【図２１Ｂ】
2020166681.tif 000029
【図２１Ｃ】
2020166681.tif 000030
【図２２】
2020166681.tif 000031
【図２３】
2020166681.tif 000032