(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-07-25
(54)【発明の名称】モデルデプロイ方法、装置、デバイス及び記憶媒体
(51)【国際特許分類】
G06F 8/76 20180101AFI20220715BHJP
G06F 9/50 20060101ALI20220715BHJP
【FI】
G06F8/76
G06F9/50 120A
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021568827
(86)(22)【出願日】2020-10-29
(85)【翻訳文提出日】2021-11-17
(86)【国際出願番号】 CN2020124699
(87)【国際公開番号】W WO2021151334
(87)【国際公開日】2021-08-05
(31)【優先権主張番号】202010939338.9
(32)【優先日】2020-09-09
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】517406065
【氏名又は名称】平安科技(深▲せん▼)有限公司
【氏名又は名称原語表記】PING AN TECHNOLOGY (SHENZHEN) CO.,LTD.
【住所又は居所原語表記】23F,Ping’an Financial Center,No.5033 Yitian Road,Fu’an Community of Futian Street,Futian District Shenzhen,Guangdong 518000 China
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】タン,イジュン
(72)【発明者】
【氏名】スン,ラン
(72)【発明者】
【氏名】ファン,リーヤン
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376AA32
5B376AA34
5B376BC14
5B376BC38
5B376DA18
(57)【要約】
本発明の実施形態は、デジタル医療分野に応用されるモデルデプロイ方法、装置、デバイス及び記憶媒体を開示した。具体的な内容は、以下を含む。デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得する。入力/出力記述ファイルに基づいて入力データを確定して、デプロイしようとするモデルに対して出力検証を行う。デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースをデプロイしようとするモデルに割り当てる。デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定する。推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、デプロイしようとするモデルのデプロイを完了する。本発明の実施形態を採用すると、デプロイしようとするモデルのデプロイの効率と互換性を高めることができる。
【特許請求の範囲】
【請求項1】
モデルデプロイ方法であって、
デプロイしようとするモデル及び前記デプロイしようとするモデルの入力/出力記述ファイルを取得することと、
前記入力/出力記述ファイルに基づいて入力データを確定して、前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うことと、
前記デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てることと、
前記デプロイしようとするモデルが前記推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定することと、
前記推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、前記推論サービスリソースに基づいて、前記デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、前記デプロイしようとするモデルのデプロイを完了することを含む、
ことを特徴とするモデルデプロイ方法。
【請求項2】
前記入力/出力記述ファイルに基づいて入力データを確定することは、
前記入力/出力記述ファイルに基づいて、入力ノード及び入力ノードに対応する入力データフォーマットを確定することと、
前記入力データフォーマットに従って、前記入力ノードの入力データを生成することとを含む、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うことは、
前記入力ノードを介して、前記入力データを前記デプロイしようとするモデルに入力することと、
前記入力/出力記述ファイルに基づいて、出力ノード及び前記出力ノードに対応する出力データフォーマットを確定して、前記出力ノードで前記デプロイしようとするモデルの出力データを取得することと、
前記出力データフォーマットに基づいて、前記デプロイしようとするモデルの出力データに対して出力検証を行うことと、
前記出力データのフォーマットは前記出力データフォーマットと同じである場合、前記デプロイしようとするモデルの出力検証がパスすると確定することとを含む、
ことを特徴とする請求項2に記載の方法。
【請求項4】
前記複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てることは、
前記デプロイしようとするモデルのファイルフォーマットを取得して、前記デプロイしようとするモデルのファイルフォーマットを限定される目標フォーマットに変換することと、
前記フォーマット変換後のデプロイしようとするモデルに必要な基本の推論サービスリソースを分析して、前記基本の推論サービスリソースに基づいて、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記フォーマット変換後のデプロイしようとするモデルに割り当てることとを含む、
ことを特徴とする請求項1~3のいずれか一項に記載の方法。
【請求項5】
前記推論パラメータ値が前記予め設定される推論パラメータ閾値より小さい場合、複数の実行環境から推論サービスリソースを確定するステップを実行することにより、前記デプロイしようとするモデルに割り当てられる推論サービスリソースを改めて確定することをさらに含み、
前記複数の実行環境は、GPUの数量、GPUのタイプ及びGPUの実行スキームの中の一つ又はいくつかを変更して形成した実行環境を備える、
ことを特徴とする請求項4に記載の方法。
【請求項6】
前記デプロイしようとするモデルは、目標トレーニングフレームワークをトレーニングすることによって取得され、前記目標トレーニングフレームワークはCaffe、Caffeine2、TwnsorFlow、MxNet、CNTK又はPytorchの中の一つである、
ことを特徴とする請求項1~3のいずれか一項に記載の方法。
【請求項7】
前記デプロイしようとするモデルのトレーニングサンプルデータは、病気の診療情報、個人保健情報及び医療施設情報の中の少なくとも一つを含む、
ことを特徴とする請求項1~3のいずれか一項に記載の方法。
【請求項8】
モデルデプロイ装置であって、
デプロイしようとするモデル及び前記デプロイしようとするモデルの入力/出力記述ファイルを取得するように構成されているモデル取得モジュールと、
前記入力/出力記述ファイルに基づいて入力データを確定して、前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うように構成されている出力検証モジュールと、
複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てるように構成されているリソース割り当てモジュールと、
前記デプロイしようとするモデルが前記推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定するように構成されている性能検証モジュールと、
前記推論サービスリソースに基づいて、前記デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、前記デプロイしようとするモデルのデプロイを完了するように構成されている環境格納モジュールとを含む、
ことを特徴とするモデルデプロイ装置。
【請求項9】
端末装置であって、
相互に接続されたプロセッサとメモリを含み、前記メモリはプログラム命令を含むコンピュータプログラムを格納するように構成されており、前記プロセッサは、前記プログラム命令を呼び出して、
デプロイしようとするモデル及び前記デプロイしようとするモデルの入力/出力記述ファイルを取得することと、
前記入力/出力記述ファイルに基づいて入力データを確定して、前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うことと、
前記デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てることと、
前記デプロイしようとするモデルが前記推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定することと、
前記推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、前記推論サービスリソースに基づいて、前記デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、前記デプロイしようとするモデルのデプロイを完了することと、を含む方法を実行するように構成されている、
ことを特徴とする端末装置。
【請求項10】
前記入力/出力記述ファイルに基づいて入力データを確定するとき、具体的に、
前記入力/出力記述ファイルに基づいて、入力ノード及び前記入力ノードに対応する入力データフォーマットを確定することと、
前記入力データフォーマットに従って、前記入力ノードの入力データを生成することとを実行する、
ことを特徴とする請求項9に記載の端末装置。
【請求項11】
前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うとき、具体的に、
前記入力ノードを介して、前記入力データを前記デプロイしようとするモデルに入力することと、
前記入力/出力記述ファイルに基づいて、出力ノード及び前記出力ノードに対応する出力データフォーマットを確定して、前記出力ノードで前記デプロイしようとするモデルの出力データを取得することと、
前記出力データフォーマットに基づいて、前記デプロイしようとするモデルの出力データに対して出力検証を行うことと、
前記出力データのフォーマットは前記出力データフォーマットと同じである場合、前記デプロイしようとするモデルの出力検証がパスすると確定することとを実行する、
ことを特徴とする請求項10に記載の端末装置。
【請求項12】
前記複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てるとき、具体的に、
前記デプロイしようとするモデルのファイルフォーマットを取得して、前記デプロイしようとするモデルのファイルフォーマットを限定される目標フォーマットに変換することと、
前記フォーマット変換後のデプロイしようとするモデルに必要な基本の推論サービスリソースを分析して、前記基本の推論サービスリソースに基づいて、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記フォーマット変換後のデプロイしようとするモデルに割り当てることとを実行する、
ことを特徴とする請求項9~11のいずれか一項に記載の端末装置。
【請求項13】
前記プロセッサはさらに、
前記推論パラメータ値が前記予め設定される推論パラメータ閾値より小さい場合、複数の実行環境から推論サービスリソースを確定するステップを実行することにより、前記デプロイしようとするモデルに割り当てられる推論サービスリソースを改めて確定することを実行し、
前記複数の実行環境は、GPUの数量、GPUのタイプ及びGPUの実行スキームの中の一つ又はいくつかを変更して形成した実行環境を備える、
ことを特徴とする請求項12に記載の端末装置。
【請求項14】
前記デプロイしようとするモデルは、目標トレーニングフレームワークをトレーニングすることによって取得され、前記目標トレーニングフレームワークはCaffe、Caffeine2、TwnsorFlow、MxNet、CNTK又はPytorchの中の一つである、
ことを特徴とする請求項9~11のいずれか一項に記載の端末装置。
【請求項15】
コンピュータ可読記憶媒体であって、
プログラム命令を含むコンピュータプログラムを格納し、前記プログラム命令はプロセッサに実行されると、前記プロセッサに、
デプロイしようとするモデル及び前記デプロイしようとするモデルの入力/出力記述ファイルを取得することと、
前記入力/出力記述ファイルに基づいて入力データを確定して、前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うことと、
前記デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てることと、
前記デプロイしようとするモデルが前記推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定することと、
前記推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、前記推論サービスリソースに基づいて、前記デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、前記デプロイしようとするモデルのデプロイを完了することと、を含む方法を実行させる、
ことを特徴とするコンピュータ可読記憶媒体。
【請求項16】
前記入力/出力記述ファイルに基づいて入力データを確定するとき、具体的に、
前記入力/出力記述ファイルに基づいて、入力ノード及び前記入力ノードに対応する入力データフォーマットを確定することと、
前記入力データフォーマットに従って、前記入力ノードの入力データを生成することとを実行する、
ことを特徴とする請求項15に記載のコンピュータ可読記憶媒体。
【請求項17】
前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うとき、具体的に、
前記入力ノードを介して、前記入力データを前記デプロイしようとするモデルに入力することと、
前記入力/出力記述ファイルに基づいて、出力ノード及び前記出力ノードに対応する出力データフォーマットを確定して、前記出力ノードで前記デプロイしようとするモデルの出力データを取得することと、
前記出力データフォーマットに基づいて、前記デプロイしようとするモデルの出力データに対して出力検証を行うことと、
前記出力データのフォーマットは前記出力データフォーマットと同じである場合、前記デプロイしようとするモデルの出力検証がパスすると確定することとを実行する、
ことを特徴とする請求項16に記載のコンピュータ可読記憶媒体。
【請求項18】
前記複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てるとき、具体的に、
前記デプロイしようとするモデルのファイルフォーマットを取得して、前記デプロイしようとするモデルのファイルフォーマットを限定される目標フォーマットに変換することと、
前記フォーマット変換後のデプロイしようとするモデルに必要な基本の推論サービスリソースを分析して、前記基本の推論サービスリソースに基づいて、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記フォーマット変換後のデプロイしようとするモデルに割り当てることとを実行する、
ことを特徴とする請求項15~17のいずれか一項に記載のコンピュータ可読記憶媒体。
【請求項19】
前記プログラム命令はプロセッサに実行されると、さらに前記プロセッサに、
前記推論パラメータ値が前記予め設定される推論パラメータ閾値より小さい場合、複数の実行環境から推論サービスリソースを確定するステップを実行することにより、前記デプロイしようとするモデルに割り当てられる推論サービスリソースを改めて確定することを実行させ、
前記複数の実行環境は、GPUの数量、GPUのタイプ及びGPUの実行スキームの中の一つ又はいくつかを変更して形成した実行環境を備える、
ことを特徴とする請求項18に記載のコンピュータ可読記憶媒体。
【請求項20】
前記デプロイしようとするモデルは、目標トレーニングフレームワークをトレーニングすることによって取得され、前記目標トレーニングフレームワークはCaffe、Caffeine2、TwnsorFlow、MxNet、CNTK又はPytorchの中の一つである、
ことを特徴とする請求項15~17のいずれか一項に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【関連出願の参照】
【0001】
本出願は、発明の名称を「モデルデプロイの方法、装置、デバイス及び記憶媒体」とする、2020年9月9日に出願された中国特許出願第202010939338.9号の優先権を主張し、そのすべての内容が参照として本出願に組み込まれる。
【技術分野】
【0002】
本発明は、人工知能技術分野に関し、特に、モデルデプロイ方法、装置、デバイス及び記憶媒体に関する。
【背景技術】
【0003】
現在、人工知能分野におけるモデル生成は通常、モデルトレーニングとモデル推論という二つの部分に分けられる。発明者は、グラフィックスプロセッシングユニット(Graphics Processing Unit,GPU)が、強いデータ処理機能を有するため、モデルトレーニングとモデル推論に広く用いられている一方、人工知能のモデルが通常、いくつかのオープンソースフレームワーク(open source framework)に基づいて開発されるが、異なるオープンソースフレームワークの間に、及び同じオープンソースフレームワークの異なるバージョンの間に、ハードウェアレベルで互換性がない可能性があり、即ち、同じモデルがある環境で実行できるが、他の環境で実行できない可能性があることを発見した。発明者は、従来のドッカー(docker)技術によりトレーニングモデル仮想環境を構築することで、モデルが異なるソフトウェアで互換的に実行可能になるが、ドッカー技術を使用するために、非常に大きく且つ完全なモデルミラーリングファイル(model mirroring files)を配分する必要があり、ドッカー技術を使用しても、ハードウェアデバイスの実行環境を変更した後にモデルが実行できないという課題が解決されていないことを意識した。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の実施形態は、デプロイしようとするモデルに基づいて推論サービスリソースを割り当てることにより、デプロイしようとするモデルの互換性を高めることができるモデルデプロイ方法、装置、デバイス及び記憶媒体を提供する。
【課題を解決するための手段】
【0005】
第一態様において、本発明の実施形態は、モデルデプロイ方法を提供する。この方法は、
デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得することと、
入力/出力記述ファイルに基づいて入力データを確定して、入力/出力記述ファイル及び入力データに基づいて、デプロイしようとするモデルに対して出力検証を行うことと、
デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースをデプロイしようとするモデルに割り当てることと、
デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定することと、
推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイル及び推論サービスインターフェースを生成することにより、デプロイしようとするモデルのデプロイを完了することとを含む。
【0006】
第二態様において、本発明の実施形態はモデルデプロイ装置を提供する。この装置は、
デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得するように構成されたモデル取得モジュールと、
入力/出力記述ファイルに基づいて入力データを確定して、入力/出力記述ファイル及び入力データに基づいて、デプロイしようとするモデルに対して出力検証を行うように構成された出力検証モジュールと、
複数の実行環境から推論サービスリソースを確定して、推論サービスリソースをデプロイしようとするモデルに割り当てるように構成されたリソース割り当てモジュールと、
デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定するように構成された性能検証モジュールと、
推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイル及び推論サービスインターフェースを生成することにより、デプロイしようとするモデルのデプロイを完了するように構成された環境格納モジュールとを含む。
【0007】
第三態様において、本発明の実施形態は端末装置を提供する。当該端末装置は、相互に接続されたプロセッサとメモリを含み、
当該メモリは、プログラム命令を含むコンピュータプログラムを格納するように構成されており、
当該プロセッサは、上記プログラム命令を呼び出して、
デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得することと、
入力/出力記述ファイルに基づいて入力データを確定して、入力/出力記述ファイル及び入力データに基づいて、デプロイしようとするモデルに対して出力検証を行うことと、
デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースをデプロイしようとするモデルに割り当てることと、
デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定することと、
推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイル及び推論サービスインターフェースを生成することにより、デプロイしようとするモデルのデプロイを完了することと、を含む方法を実行するように構成されている。
【0008】
第四態様において、本発明の実施形態は、コンピュータ可読記憶媒体を提供する。当該コンピュータ可読記憶媒体にプログラム命令を含むコンピュータプログラムが格納されており、
当該プログラム命令は、プロセッサに実行されると、当該プロセッサに、
デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得することと、
入力/出力記述ファイルに基づいて入力データを確定して、入力/出力記述ファイル及び入力データに基づいて、デプロイしようとするモデルに対して出力検証を行うことと、
デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースをデプロイしようとするモデルに割り当てることと、
デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定することと、
推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイル及び推論サービスインターフェースを生成することにより、デプロイしようとするモデルのデプロイを完了することと、を含む方法を実行させる。
【発明の効果】
【0009】
本発明の実施形態では、入力/出力記述ファイルと入力データに基づいて、デプロイしようとするモデルに対して出力検証を行うことによって、デプロイしようとするモデル自体の実行可能性を判断して、デプロイしようとするモデル自体が正しく実行するように確保することができる。複数の実行環境から推論サービスリソースを確定して、推論サービスリソースを上記デプロイしようとするモデルに割り当てることによって、デプロイしようとするモデルが推論サービスを実行する場合の実行環境の制限を克服し、デプロイしようとするモデルのデプロイの効率と互換性を高めることができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、本発明の実施形態に係わるモデルデプロイ方法を示すフローチャートである。
【
図2】
図2は、本発明の実施形態に係わるデプロイしようとするモデルに対して出力検証を行う方法を示すフローチャートである。
【
図3】
図3は、本発明の実施形態に係わる他のモデルデプロイ方法を示すフローチャートである。
【
図4】
図4は、本発明の実施形態に係わるモデルデプロイ装置の構造を示す概略図である。
【
図5】
図5は、本発明の実施形態に係わる端末装置の構造を示す概略図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態の図面を参照しながら本発明の実施形態の技術方案を明晰に、全面的に説明する。明らかに、説明される実施形態は、本発明の一部の実施形態だけのものであり、全ての実施形態ではない。本発明に記載された実施形態に基づいて、当業者が創造的な努力なしに得ることができるすべての別の実施形態は、皆本発明の保護範囲に属する。
【0012】
本発明の技術方案は、人工知能、デジタル医療、ブロックチェーン、及び/又はビッグデータ技術分野に応用されることができる。選択的に、本発明に係わる情報(例えば、病気の診療情報など)はデータベースに格納されることができるか、又はブロックチェーンに格納されることができる。本発明はそれに対して限定しない。
【0013】
現在、人工知能技術を利用してある分野の情報に基づいてモデル構築を行うことによって、当該分野のリソース共有と当該分野の技術向上をより効果的に図ることができる。例えば、医療分野では、病気の診療情報に基づいてモデル構築を行うことによって、人々がある病気の種類、症状の特徴、原因、患者の特徴、病気になる確率及び治療方法などの情報を素早く了解することができる。個人保健情報に基づいてモデル構築を行うことによって、特定のグループの人々又はある地域の住民の健康情報(例えば、身長、体重、血圧、血糖、血脂などの情報)を可視化することができる。医療施設情報に基づいてモデル構築を行うことによって、ある地域の医療リソースの配置状況、及びある病気への治療条件を素早く了解することができる。このように、モデル構築を行ってモデルを利用して推論を行うことの適用範囲が非常に広い。本発明では、医療分野における病気の診療情報に基づいたモデル構築だけをアプリケーションシナリオとして説明する。他の分野又は医療分野における他の情報に基づいたモデル構築は、本発明の実施形態の本質と同じであるため、ここでは繰り返さない。
【0014】
医療分野における病気の診療情報に基づいたモデル構築を例として、病気の診療情報は、病気の種類、症状の特徴、原因、患者の特徴、病気になる確率及び治療方法などの情報を含むが、それらに限定されない。表現しやすさのため、本発明の実施形態に説明されるモデルは、病気の種類、症状の特徴、患者の特徴、病気になる確率という四つの情報しか含まない。病気の診療情報に基づいたモデル構築は、ある病気(例えば、心臓病)の病理情報を取得すること、心臓病の種類と詳細な分類を取得すること、各種類の心臓病を心臓病の症状の特徴と心臓病患者の特徴と相関させることとを含む。心臓病の症状の特徴は、狭心症の痛みの程度(激痛、軽度の痛み、狭心症無し)、静脈圧、安静時心拍数、最大心拍数、狭心症の頻度などの情報を含むが、それらに限定されない。心臓病患者の基本的な特徴は、年齢、性別、居住地域、食習慣、喫煙の有無、飲酒の有無などの情報を含むが、それらに限定されない。これで、心臓病の診療モデルを構築して、トレーニングサンプルを利用して心臓病の診療モデルに対してトレーニングを行う。入力サンプルに症状の特徴及び心臓病患者の特徴の中の一つ又は複数が含まれる場合、モデルによって入力サンプルに対応する心臓病になる可能性のある種類、及び当該種類に対応する心臓病になる確率を計算することができる。上記心臓病の診療モデルが取得されてから、心臓病の診療モデルは自主診断プラットフォームにデプロイされる。
【0015】
デプロイのプロセスは以下である。心臓病の診療モデル及び心臓病の診療モデルの入力/出力記述ファイルを取得する。記述ファイルに記述される入力フォーマットに従ってデータ(年齢:〇〇、性別:〇、安静時心拍数:〇〇、最大心拍数:〇〇〇、狭心症の痛みの程度:〇〇〇〇、狭心症の頻度:〇〇)を入力する。心臓病の診療モデルによって出力データを取得することができる。出力データのフォーマットが記述ファイルに記載される出力データフォーマット(病気の種類:〇〇、病気になる確率:〇〇)を満たす場合、心臓病の診療モデルの出力検証がパスすると判定し、自主診断プラットフォームにデプロイされることができる。自主診断プラットフォームは多種類の実行環境を含み、例えば、モデル推論に用いられることができる複数のGPUと多種類のGPU実行スキームを含む。一つの実行環境を選択して、例えば、8ギガバイト(gigabyte,GB,G)のビデオメモリが1つあるGPUを用いて8スレッドで心臓病の診療モデルを実行して、10個の入力データに対して推論を行って、必要な推論時間を取得して、それをもとに当該モデルの推論速度を推論パラメータ値として確定する。推論速度(推論パラメータ値)が予め設定される閾値より大きい場合、当該心臓病の診療モデルはこの実行環境で推論することができる。この場合のGPU構成を保存して、自主診療プラットフォームが心臓病の診療モデルを呼び出して推論を行うためのインターフェースを生成することにより、自主診断プラットフォームにおける心臓診断モデルのデプロイを完了する。
【0016】
本発明の実施形態では、表現しやすさのため、以下は心臓病の診療モデルをデプロイしようとするモデルとして、本発明の実施形態に係わるモデルデプロイ方法及び装置について、例を挙げながら説明する。
【0017】
図1を参照すると、
図1は、本発明の実施形態に係わるモデルデプロイ方法を示すフローチャートである。本発明の実施形態に係わる方法は以下の内容を含む。デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得する。入力/出力記述ファイルに基づいて、デプロイしようとするモデルに対して出力検証を行う。デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、デプロイしようとするモデルに割り当てる。デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定する。推論パラメータ値が予め設定される閾値より大きい場合、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、デプロイを完了する。表現しやすさのため、以下は自主診断プラットフォームにおける心臓病の診療モデルのデプロイを例として、本発明の実施形態に係わる方法を説明する。
【0018】
本発明の実施形態に係わる方法は以下のステップを含む。
【0019】
S101:デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得する。
【0020】
いくつかの実行可能な実施形態において、デプロイしようとするモデルに対応する入力/出力記述ファイルを取得する。入力/出力記述ファイルは、デプロイしようとするモデルの実行可能性を検証できる入力ノード、入力ノードに対応する入力データフォーマット、目標出力データを取得する出力ノード、出力ノードに対応する出力データフォーマットを含む。例えば、心臓病の診療モデルの入力/出力記述ファイルを取得して、それに基づいて、入力ノード(症状の特徴を入力するノード)、入力データフォーマット(安静時心拍数:〇〇、最大心拍数:〇〇〇、狭心症の痛みの程度:〇〇〇〇、狭心症の頻度:〇〇)、出力ノード(心臓病になる確率を出力するノード)及び出力データフォーマット(病気になる確率:〇〇)を取得する。又は、入力ノード(症状の特徴と患者の基本的な特徴をジョイント入力するノード)、入力データフォーマット(安静時心拍数:〇〇、最大心拍数:〇〇〇、狭心症の痛みの程度:〇〇〇〇、狭心症の頻度:〇〇、年齢:〇〇、性別:〇、喫煙の有無:〇、飲酒の有無:〇)、出力ノード(心臓病になる可能性のある種類と確率をジョイント出力するノード)及び出力データフォーマット(病気の種類:〇〇、病気になる確率:〇〇)である。具体的な内容は、実際のアプリケーションシナリオに応じて確定されることができ、ここで限定されない。
【0021】
S102:入力/出力記述ファイルに基づいて、デプロイしようとするモデルに対して出力検証を行う。
【0022】
いくつかの実行可能な実施形態において、
図2を参照すると、
図2は、本発明の実施形態に係わるデプロイしようとするモデルに対して出力検証を行う方法を示すフローチャートである。上記デプロイしようとするモデルに対して出力検証を行う方法は、以下のステップS201からステップS205までの各ステップに係わる実施形態を含む。
【0023】
S201:入力ノードに対応する入力データフォーマットに従って入力ノードの入力データを生成する。
【0024】
いくつかの実行可能な実施形態において、デプロイしようとするモデルに対応する入力/出力記述ファイルによって、入力ノード及び入力ノードに対応する入力データフォーマットを確定し、この入力データフォーマットに従って入力データを生成することができる。例えば、心臓病の診療モデルの入力/出力記述ファイルを取得して、それに基づいて、入力ノード(症状の特徴を入力するノード)及び入力データフォーマット(安静時心拍数:〇〇、最大心拍数:〇〇〇、狭心症の痛みの程度:〇〇〇〇、狭心症の頻度:〇〇)を取得して、入力データ(安静時心拍数:50、最大心拍数:120、狭心症の痛みの程度:軽度の痛み、狭心症の頻度:時々)を生成する。又は、入力ノード(症状の特徴と患者の基本的な特徴をジョイント入力するノード)及び入力データフォーマット(安静時心拍数:〇〇、最大心拍数:〇〇〇、狭心症の痛みの程度:〇〇〇〇、狭心症の頻度:〇〇、年齢:〇〇、性別:〇、喫煙の有無:〇、飲酒の有無:〇)を取得して、入力データ(安静時心拍数:50、最大心拍数:120、狭心症の痛みの程度:軽度の痛み、狭心症の頻度:時々、年齢:38、性別:男、喫煙の有無:無し、飲酒の有無:無し)を生成する。具体的な内容は、実際のアプリケーションシナリオに応じて確定されることができ、ここで限定されない。
【0025】
入力データは、自主診断プラットフォームによって対応するフォーマットに基づいて自動的にシミュレートして生成されることができるか、自主診断プラットフォームによって対応するフォーマットに基づいて関連データベース(自主診断プラットフォーム自体のデータベース、又はネットワークによって共有される他のプラットフォームのデータベース)から取得されることができる。入力データフォーマットにおける各内容に対してセマンティック認識(semantic identification)を行うことによって、又は、入力データフォーマットにおける各内容へのコードノート(code note)によって、当該内容にとって生成が必要な入力データのセマンティックを判断して、対応する種類のデータを入力データとして書き込む。
【0026】
S202:入力ノードを介して、入力データをデプロイしようとするモデルに入力する。
【0027】
S203:上記入力/出力記述ファイルに基づいて、出力ノード及び出力データフォーマットを確定して、出力ノードでデプロイしようとするモデルの出力データを取得する。
【0028】
いくつかの実行可能な実施形態において、入力ノードで入力データをデプロイしようとするモデルに入力して、デプロイしようとするモデルに対応する入力/出力記述ファイルによって、出力ノード及び出力ノードに対応する出力データフォーマットを確定して、出力データフォーマットに基づいて、デプロイしようとするモデルの出力データに対して出力検証を行う。例えば、症状の特徴を入力するノードで入力データ(安静時心拍数:50、最大心拍数:120、狭心症の痛みの程度:軽度の痛み、狭心症の頻度:時々)を心臓病の診療モデルに入力し、出力ノード(心臓病になる確率を出力するノード)及び対応する出力データフォーマット(病気になる確率:〇〇)を確定する。又は、症状の特徴と患者の基本的な特徴をジョイント入力するノードで入力データ(安静時心拍数:50、最大心拍数:120、狭心症の痛みの程度:軽度の痛み、狭心症の頻度:時々、年齢:38、性別:男、喫煙の有無:否、飲酒の有無:否)を心臓病の診療モデルに入力し、出力ノード(症状の特徴と患者の基本的な特徴をジョイント入力するノード)及び対応する出力データフォーマット(病気の種類:〇〇、病気になる確率:〇〇)を確定する。
【0029】
S204:出力データフォーマットに基づいて、デプロイしようとするモデルの出力データに対して出力検証を行う。
【0030】
S205:出力データのフォーマットは上記出力データフォーマットと同じである場合、デプロイしようとするモデルの出力検証がパスすると確定する。
【0031】
いくつかの実行可能な実施形態において、心臓病になる確率を出力するノードで取得される出力データは、「病気になる確率:FFFFF」(FFFFFは文字化け又は数値が1より大きい)である場合、出力データフォーマット(出力データフォーマットは「病気になる確率:〇〇」である)を満たさないことになる。デプロイしようとするモデルの出力検証がパスしない。即ち、心臓病の診療モデルは自主診断プラットフォームで正しく出力できない。心臓病になる確率を出力するノードで取得される出力データは、「病気になる確率:5%」である場合、出力データフォーマット(出力データフォーマットは「病気になる確率:〇〇」である)を満すことになる。デプロイしようとするモデルの出力検証がパスする。即ち、心臓病の診療モデルは自主診断プラットフォームで正しく出力できる。
【0032】
本発明の実施形態では、デプロイしようとするモデルの入力/出力記述ファイルに基づいて入力データを確定して、入力/出力記述ファイルと入力データに基づいてデプロイしようとするモデルに対して出力検証を行う。推論サービスリソースを割り当てる前に、デプロイしようとするモデル自体の実行可能性を判断して、デプロイしようとするモデル自体が正しく実行し且つ正しいモデル出力を取得するように確保することができる。推論サービスが行われる前に、デプロイしようとするモデル自体が実行不能になったり、エラーが発生したりすることを回避することで、デプロイしようとするモデルのデプロイの効率を高めることができる。
【0033】
S103:デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、デプロイしようとするモデルに割り当てる。
【0034】
いくつかの実行可能な実施形態において、自主診断プラットフォームは多種類の実行環境を含み、例えば、モデル推論に用いられる複数のGPUと多種類のGPU実行スキームを含む。例えば、自主診断プラットフォームは、タイプが異なり、実行パラメータが異なるGPUを含むことができ、モデルに対して推論を行うことができる。一つの実行環境を選択して、例えば、8Gのビデオメモリが1つあるシングルコアGPUを用いて8スレッドで心臓病の診療モデルを実行し、又は、8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行する。同時に、GPUの推論精度をF16(推論精度が低め)又はFP32(推論精度が高め)と設置することができる。
【0035】
S104:デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定する。
【0036】
いくつかの実行可能な実施形態において、デプロイしようとするモデルを実行する一つの実行環境を選択してから、例えば、推論精度がF16で8Gのビデオメモリが1つあるシングルコアGPUを用いて8スレッドで心臓病の診療モデルを実行してから、又は、推論精度がFP32で8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッド心臓病の診療モデルを実行してから、心臓病の診療モデルを利用して、10個の入力データに対して推論を行って、必要な推論時間を取得して、それをもとに当該モデルの推論速度を推論パラメータ値として確定する。推論パラメータ値は、実際のアプリケーションシナリオに応じて確定されることができ、一つのパラメータ指標(例えば、推論速度)、又は複数のパラメータ指標(所定推論時間内に並行して推論できる最大のデータ量、同じ推論精度での推論速度)を含むことができ、ここで限定されない。
【0037】
S105:推論パラメータ値が予め設定される閾値より大きい場合、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、デプロイを完了する。
【0038】
いくつかの実行可能な実施形態において、推論パラメータ値は推論速度を含み、例えば、推論精度がF16で8Gのビデオメモリが1つあるシングルコアGPUを用いて8スレッドで心臓病の診療モデルを実行して、10個の入力データに対して推論を行って、1msの必要な推論時間を取得して、それをもとに当該モデルの推論速度を10個/msと確定する。この場合のモデルの推論速度が予め設定される閾値20個/msを超えていないため、現在の実行環境がデプロイしようとするモデルによって実行される推論サービスの要求を満たさないと考えられ、実行環境を変える必要があり、推論サービスリソースを当該モデルに改めて割り当てることができる。例えば、推論精度がFP32で8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行して、10個の入力データに対して推論を行って、0.25msの必要な推論時間を取得する。この場合の当該モデルの推論速度は40個/msであり、予め設定される閾値20個/msを超えたため、現在の実行環境がデプロイしようとするモデルによって実行される推論サービスの要求を満すと考えられる。現在の実行環境がデプロイしようとするモデルによって実行される推論サービスの要求を満すと確定してから、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することができる。即ち、推論精度がFP32で8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行するために用いられる構成ファイルと、自主診断プラットフォームで推論サービスを実行するために当該モデルを呼び出すための呼び出しインターフェースとを生成することにより、デプロイしようとするモデルのデプロイを完了する。
【0039】
本発明の実施形態では、デプロイしようとするモデルの入力/出力記述ファイルに基づいて入力データを確定して、入力/出力記述ファイルと入力データに基づいてデプロイしようとするモデルに対して出力検証を行う。デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースをデプロイしようとするモデルに割り当てる。デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定する。推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、デプロイしようとするモデルのデプロイを完了する。入力/出力記述ファイルと入力データに基づいて、デプロイしようとするモデルに対して出力検証を行うことによって、デプロイしようとするモデル自体の実行可能性を判断して、デプロイしようとするモデル自体が正しく実行するように確保することができる。複数の実行環境から推論サービスリソースを確定して、推論サービスリソースを上記デプロイしようとするモデルに割り当てることによって、デプロイしようとするモデルが推論サービスを実行する場合の実行環境の制限を克服し、デプロイしようとするモデルのデプロイの効率と互換性を高めることができる。
【0040】
図3を参照すると、
図3は、本発明の実施形態に係わる他のモデルデプロイ方法を示すフローチャートである。
【0041】
S301:デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得する。
【0042】
いくつかの実行可能な実施形態において、デプロイしようとするモデルに対応する入力/出力記述ファイルを取得する。入力/出力記述ファイルは、デプロイしようとするモデルの実行可能性を検証できる入力ノード、入力ノードに対応する入力データフォーマット、目標出力データを取得する出力ノード、出力ノードに対応する出力データフォーマットを含む。例えば、心臓病の診療モデルの入力/出力記述ファイルを取得して、それに基づいて、入力ノード(症状の特徴を入力するノード)、入力データフォーマット(安静時心拍数:〇〇、最大心拍数:〇〇〇、狭心症の痛みの程度:〇〇〇〇、狭心症の頻度:〇〇)、出力ノード(心臓病になる確率を出力するノード)及び出力データフォーマット(病気になる確率:〇〇)を取得する。具体的な内容は、実際のアプリケーションシナリオに応じて確定されることができ、ここで限定されない。
【0043】
S302:入力/出力記述ファイルに基づいて、デプロイしようとするモデルに対して出力検証を行う。
【0044】
いくつかの実行可能な実施形態において、デプロイしようとするモデルに対応する入力/出力記述ファイルによって、入力ノード及び入力ノードに対応する入力データフォーマットを確定し、この入力データフォーマットに従って入力データを生成することができる。入力ノードで入力データをデプロイしようとするモデルに入力して、デプロイしようとするモデルに対応する入力/出力記述ファイルによって、出力ノード及び出力ノードに対応する出力データフォーマットを確定して、出力データフォーマットに従って、デプロイしようとするモデルの出力データに対して出力検証を行う。例えば、症状の特徴を入力するノードで入力データ(安静時心拍数:50、最大心拍数:120、狭心症の痛みの程度:軽度の痛み、狭心症の頻度:時々)を心臓病の診療モデルに入力し、出力ノード(心臓病になる確率を出力するノード)及び対応する出力データフォーマット(病気になる確率:〇〇)を確定する。心臓病になる確率を出力するノードで取得される出力データは、「病気になる確率:5%」である場合、出力データフォーマット(病気になる確率:〇〇)を満すことになる。デプロイしようとするモデルの出力検証がパスする。即ち、心臓病の診療モデルは自主診断プラットフォームで正しく出力できる。
【0045】
S303:デプロイしようとするモデルの出力検証がパスする場合、デプロイしようとするモデルのファイルフォーマットを取得して、デプロイしようとするモデルのファイルフォーマットを限定される目標フォーマットに変換する。
【0046】
いくつかの実行可能な実施形態において、上記デプロイしようとするモデルは、目標トレーニングフレームワークをトレーニングすることによって取得される。異なる目標トレーニングフレームワークがデプロイしようとするモデルによって使用されるため、デプロイしようとするモデルのファイルフォーマットが様々である。デプロイしようとするモデルのファイルフォーマットが限定される目標フォーマットと異なる場合、デプロイしようとするモデルは実行できない。例えば、Caffeを目標トレーニングフレームワークとしてトレーニングして取得されるデプロイしようとするモデルに対して、デプロイしようとするモデルのモデルファイルフォーマットは.pbフォーマットである。しかしながら、限定される目標フォーマットは、TwnsorFlowを目標トレーニングフレームワークとしてトレーニングして取得されるモデルファイルフォーマット.uffフォーマットであるため、.pbファイルを.uffファイルに変換してから、後のデプロイのステップを行う必要がある。
【0047】
いくつかの実行可能な実施形態において、デプロイしようとするモデルの目標トレーニングフレームワークはCaffe、Caffeine2、TwnsorFlow、MxNet、CNTK又はPytorchの中の一つである。
【0048】
S304:フォーマット変換後のデプロイしようとするモデルに必要な基本の推論サービスリソースを分析する。
【0049】
いくつかの実行可能な実施形態において、TensorRTを利用して、フォーマット変換後のデプロイしようとするモデルに対して分析を行って、デプロイしようとするモデルを実行して推論サービスを行うために必要な基本指標を取得する。例えば、デプロイしようとするモデルに必要な基本的なビデオメモリを確定する。具体的な例を挙げると、心臓病の診療モデルを実行するに必要な基本的なビデオメモリが8GBと確定する場合、まずはビデオメモリが8GB以下のGPU、例えば、ビデオメモリが4GBのGPUを排除して、ビデオメモリが8GB以上のGPUを利用して、心臓病の診療モデルに対して推論を行う。
【0050】
S305:基本の推論サービスリソースに基づいて、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースをデプロイしようとするモデルに割り当てる。
【0051】
いくつかの実行可能な実施形態において、自主診断プラットフォームは多種類の実行環境を含み、例えば、モデル推論に用いられる複数のGPUと多種類のGPU実行スキームを含む。例えば、自主診断プラットフォームは、タイプが異なり、実行パラメータが異なるGPUを含むことができ、モデルに対して推論を行うことができる。一つの実行環境を選択して、例えば、8Gのビデオメモリが1つあるシングルコアGPUを用いて8スレッドで心臓病の診療モデルを実行し、又は、8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行する。同時に、GPUの推論精度をF16(推論精度が低め)又はFP32(推論精度が高め)と設置することができる。
【0052】
本発明の実施形態では、デプロイしようとするモデルの出力検証がパスする場合、上記デプロイしようとするモデルのファイルフォーマットを取得して、上記デプロイしようとするモデルのファイルフォーマットを限定される目標フォーマットに変換する。上記フォーマット変換後のデプロイしようとするモデルに必要な基本の推論サービスリソースを分析する。上記基本の推論サービスリソースに基づいて、複数の実行環境から推論サービスリソースを確定して、上記推論サービスリソースを上記変換後のデプロイしようとするモデルに割り当てる。それによって、デプロイしようとするモデルが推論サービスを実行する場合のファイルフォーマットの不一致による実行環境の制限を克服し、デプロイしようとするモデルのデプロイの互換性を高めることができる。
【0053】
S306:デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定する。
【0054】
いくつかの実行可能な実施形態において、デプロイしようとするモデルを実行する一つの実行環境を選択してから、例えば、推論精度がF16で8Gのビデオメモリが1つあるシングルコアGPUを用いて8スレッドで心臓病の診療モデルを実行してから、又は、推論精度がFP32で8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行してから、心臓病の診療モデルを利用して、10個の入力データに対して推論を行って、必要な推論時間を取得して、それをもとに当該モデルの推論速度を推論パラメータ値として確定する。推論パラメータ値は、実際のアプリケーションシナリオに応じて確定されることができ、一つのパラメータ指標(例えば、推論速度)、又は複数のパラメータ指標(所定推論時間内に並行して推論できる最大のデータ量、同じ推論精度での推論速度)を含むことができ、ここで限定されない。
【0055】
S307:推論パラメータ値が予め設定される閾値より大きい場合、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、デプロイを完了する。
【0056】
いくつかの実行可能な実施形態において、推論パラメータ値は推論速度を含む。例えば、推論精度がF16で8Gのビデオメモリが1つあるシングルコアGPUを用いて8スレッドで心臓病の診療モデルを実行して、10個の入力データに対して推論を行って、1msの必要な推論時間を取得して、それをもとに当該モデルの推論速度を10個/msと確定する。それが予め設定される閾値20個/msを超えていないため、現在の実行環境がデプロイしようとするモデルによって実行される推論サービスの要求を満たさないと考えられ、実行環境を変えて、推論サービスリソースを改めて割り当てる必要がある。例えば、推論精度がFP32で8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行して、10個の入力データに対して推論を行って、0.25msの必要な推論時間を取得する。それをもとに当該モデルの推論速度を40個/msと確定し、予め設定される閾値20個/msを超えたため、現在の実行環境がデプロイしようとするモデルによって実行される推論サービスの要求を満すと考えられる。推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することができる。即ち、推論精度がFP32で8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行するために用いられる構成ファイルと、自主診断プラットフォームで推論サービスを実行するために当該モデルを呼び出すための呼び出しインターフェースとを生成することにより、デプロイしようとするモデルのデプロイを完了する。
【0057】
選択的に、いくつかの実施形態では、上記推論パラメータ値が予め設定される推論パラメータ閾値より小さい場合、複数の実行環境から推論サービスリソースを確定するステップを実行することにより、上記デプロイしようとするモデルに割り当てられる推論サービスリソースを改めて確定する。上記複数の実行環境は、GPUの数量、GPUのタイプ及びGPUの実行スキームの中の一つ又はいくつかを変更して形成した実行環境を備えることができる。これで、デプロイしようとするモデルが推論サービスを実行する場合の実行環境の不一致による推論への影響を克服し、デプロイしようとするモデルのデプロイの効率を高めることができる。
【0058】
本発明の実施形態では、デプロイしようとするモデルの出力検証がパスする場合、上記デプロイしようとするモデルのファイルフォーマットを取得して、上記デプロイしようとするモデルのファイルフォーマットを限定される目標フォーマットに変換する。上記フォーマット変換後のデプロイしようとするモデルに必要な基本の推論サービスリソースを分析する。上記基本の推論サービスリソースに基づいて、複数の実行環境から推論サービスリソースを確定して、上記推論サービスリソースを上記変換後のデプロイしようとするモデルに割り当てる。それによって、デプロイしようとするモデルが推論サービスを実行する場合のファイルフォーマットの不一致による実行環境の制限を克服し、デプロイしようとするモデルのデプロイの互換性を高めることができる。
【0059】
図4を参照すると、
図4は、本発明の実施形態に係わるモデルデプロイ装置の構造を示す概略図である。
【0060】
モデル取得モジュール401は、デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得するように構成されている。
【0061】
いくつかの実行可能な実施形態において、モデル取得モジュール401は、デプロイしようとするモデルに対応する入力/出力記述ファイルを取得するように構成されている。上記入力/出力記述ファイルは、デプロイしようとするモデルの実行可能性を検証できる入力ノード、入力ノードに対応する入力データフォーマット、目標出力データを取得する出力ノード、出力ノードに対応する出力データフォーマットを含む。例えば、心臓病の診療モデルの入力/出力記述ファイルを取得して、それに基づいて、入力ノード(症状の特徴を入力するノード)、入力データフォーマット(安静時心拍数:〇〇、最大心拍数:〇〇〇、狭心症の痛みの程度:〇〇〇〇、狭心症の頻度:〇〇)、出力ノード(心臓病になる確率を出力するノード)及び出力データフォーマット(病気になる確率:〇〇)を取得する。具体的な内容は、実際のアプリケーションシナリオに応じて確定されることができ、ここで限定されない。
【0062】
出力検証モジュール402は、上記入力/出力記述ファイルに基づいて入力データを確定して、上記入力/出力記述ファイルと入力データに基づいて、上記デプロイしようとするモデルに対して出力検証を行うように構成されている。
【0063】
いくつかの実行可能な実施形態において、出力検証モジュール402は、以下の操作を実行するように構成されている。デプロイしようとするモデルに対応する入力/出力記述ファイルによって、入力ノード及び入力ノードに対応する入力データフォーマットを確定し、この入力データフォーマットに従って入力データを生成することができる。入力ノードで入力データをデプロイしようとするモデルに入力して、デプロイしようとするモデルに対応する入力/出力記述ファイルによって、出力ノード及び出力ノードに対応する出力データフォーマットを確定して、出力データフォーマットに従って、デプロイしようとするモデルの出力データに対して出力検証を行う。例えば、症状の特徴を入力するノードで入力データ(安静時心拍数:50、最大心拍数:120、狭心症の痛みの程度:軽度の痛み、狭心症の頻度:時々)を心臓病の診療モデルに入力し、出力ノード(心臓病になる確率を出力するノード)及び対応する出力データフォーマット(病気になる確率:〇〇)を確定する。心臓病になる確率を出力するノードで取得される出力データは、「病気になる確率:5%」である場合、出力データフォーマット(病気になる確率:〇〇)を満すことになる。デプロイしようとするモデルの出力検証がパスする。即ち、心臓病の診療モデルは自主診断プラットフォームで正しく出力できる。
【0064】
リソース割り当てモジュール403は、複数の実行環境から推論サービスリソースを確定して、上記推論サービスリソースを上記デプロイしようとするモデルに割り当てるように構成されている。
【0065】
いくつかの実行可能な実施形態において、自主診断プラットフォームは多種類の実行環境を含み、例えば、モデル推論に用いられる複数のGPUと多種類のGPU実行スキームを含む。例えば、自主診断プラットフォームは、タイプが異なり、実行パラメータが異なるGPUを含むことができ、モデルに対して推論を行うことができる。リソース割り当てモジュール403は、以下の操作を実行するように構成されている。一つの実行環境を選択して、例えば、8Gのビデオメモリが1つあるシングルコアGPUを用いて8スレッドで心臓病の診療モデルを実行し、又は、8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行する。同時に、GPUの推論精度をF16(推論精度が低め)又はFP32(推論精度が高め)と設置することができる。
【0066】
性能検証モジュール404は、デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定するように構成されている。
【0067】
いくつかの実行可能な実施形態において、デプロイしようとするモデルを実行する一つの実行環境を選択してから、例えば、推論精度がF16で8Gのビデオメモリが1つあるシングルコアGPUを用いて8スレッドで心臓病の診療モデルを実行してから、又は、推論精度がFP32で8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行してから、性能検証モジュール404は、心臓病の診療モデルを利用して、10個の入力データに対して推論を行って、必要な推論時間を取得して、それをもとに当該モデルの推論速度を推論パラメータ値として確定する。推論パラメータ値は、実際のアプリケーションシナリオに応じて確定されることができ、一つのパラメータ指標(例えば、推論速度)、又は複数のパラメータ指標(所定推論時間内に並行して推論できる最大のデータ量、同じ推論精度での推論速度)を含むことができ、ここで限定されない。
【0068】
環境格納モジュール405は、上記推論サービスリソースに基づいて、上記デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、上記デプロイしようとするモデルのデプロイを完了するように構成されている。
【0069】
いくつかの実行可能な実施形態において、推論パラメータ値は推論速度を含む。例えば、推論精度がF16で8Gのビデオメモリが1つあるシングルコアGPUを用いて8スレッドで心臓病の診療モデルを実行して、10個の入力データに対して推論を行って、1msの必要な推論時間を取得する。それをもとに当該モデルの推論速度を10個/msと確定する。それが予め設定される閾値20個/msを超えていないため、現在の実行環境がデプロイしようとするモデルによって実行される推論サービスの要求を満たさないと考えられ、実行環境を変えて、推論サービスリソースを改めて割り当てる必要がある。例えば、推論精度がFP32で8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行して、10個の入力データに対して推論を行って、0.25msの必要な推論時間を取得する。それをもとに当該モデルの推論速度を40個/msと確定し、予め設定される閾値20個/msを超えたため、現在の実行環境がデプロイしようとするモデルによって実行される推論サービスの要求を満すと考えられる。環境格納モジュール405は、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成する。即ち、推論精度がFP32で8Gのビデオメモリが2つあるマルチコアGPUを用いて16スレッドで心臓病の診療モデルを実行するために用いられる構成ファイルと、自主診断プラットフォームで推論サービスを実行するために当該モデルを呼び出すための呼び出しインターフェースとを生成することにより、デプロイしようとするモデルのデプロイを完了する。
【0070】
本発明の実施形態では、デプロイしようとするモデルの入力/出力記述ファイルに基づいて入力データを確定して、入力/出力記述ファイルと入力データに基づいてデプロイしようとするモデルに対して出力検証を行う。デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースを上記デプロイしようとするモデルに割り当てる。デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定する。推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、デプロイしようとするモデルのデプロイを完了する。入力/出力記述ファイルと入力データに基づいて、デプロイしようとするモデルに対して出力検証を行うことによって、デプロイしようとするモデル自体の実行可能性を判断して、デプロイしようとするモデル自体が正しく実行するように確保することができる。複数の実行環境から推論サービスリソースを確定して、推論サービスリソースを上記デプロイしようとするモデルに割り当てることによって、デプロイしようとするモデルが推論サービスを実行する場合の実行環境の制限を克服し、デプロイしようとするモデルのデプロイの効率と互換性を高めることができる。
【0071】
図5を参照すると、
図5は、本発明の実施形態に係わる端末装置の構造を示す概略図である。
図5に示されたように、本発明の実施形態における端末装置は、一つ又は複数のプロセッサ501とメモリ502を含むことができる。プロセッサ501とメモリ502は接続されており、例えば、バス503によって接続されている。メモリ502は、プログラム命令を含むコンピュータプログラムを格納するように構成されている。プロセッサ501は、メモリ502に格納されるプログラム命令を呼び出して、以下の操作を実行するように構成されている。デプロイしようとするモデル及びデプロイしようとするモデルの入力/出力記述ファイルを取得する。入力/出力記述ファイルに基づいて入力データを確定して、入力/出力記述ファイルと入力データに基づいて、デプロイしようとするモデルに対して出力検証を行う。デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースをデプロイしようとするモデルに割り当てる。デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定する。推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、上記デプロイしようとするモデルのデプロイを完了する。
【0072】
いくつかの実行可能な実施形態において、プロセッサ501はさらに以下の操作を実行するように構成されている。上記入力/出力記述ファイルに基づいて、入力ノード及び入力ノードに対応する入力データフォーマットを確定する。入力データフォーマットに従って入力ノードの入力データを生成する。入力ノードを介して、入力データをデプロイしようとするモデルに入力する。入力/出力記述ファイルに基づいて、出力ノード及び出力ノードに対応する出力データフォーマットを確定して、出力ノードでデプロイしようとするモデルの出力データを取得する。出力データフォーマットに基づいて、デプロイしようとするモデルの出力データに対して出力検証を行う。出力データのフォーマットは上記出力データフォーマットと同じである場合、デプロイしようとするモデルの出力検証がパスすると確定する。
【0073】
いくつかの実行可能な実施形態において、プロセッサ501は以下の操作を実行するように構成されている。デプロイしようとするモデルのファイルフォーマットを取得して、デプロイしようとするモデルのファイルフォーマットを限定される目標フォーマットに変換する。フォーマット変換後のデプロイしようとするモデルに必要な基本の推論サービスリソースを分析する。基本の推論サービスリソースに基づいて、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースをフォーマット変換後のデプロイしようとするモデルに割り当てる。
【0074】
いくつかの実行可能な実施形態において、プロセッサ501は以下の操作を実行するように構成されている。上記推論パラメータ値が予め設定される推論パラメータ閾値より小さい場合、複数の実行環境から推論サービスリソースを確定するステップを実行することにより、上記デプロイしようとするモデルに割り当てられる推論サービスリソースを改めて確定する。上記複数の実行環境は、GPUの数量、GPUのタイプ及びGPUの実行スキームの中の一つ又はいくつかを変更して形成した実行環境を備える。
【0075】
いくつかの実行可能な実施形態において、上記デプロイしようとするモデルは、目標トレーニングフレームワークをトレーニングすることによって取得される。目標トレーニングフレームワークはCaffe、Caffeine2、TwnsorFlow、MxNet、CNTK又はPytorchの中の一つである。
【0076】
いくつかの実行可能な実施形態において、上記デプロイしようとするモデルのトレーニングサンプルデータは、病気の診療情報、個人保健情報及び医療施設情報の中の少なくとも一つを含む。
【0077】
いくつかの実行可能な実施形態において、プロセッサ501は、中央処理装置(Central Processing Unit,CPU)であることができる。当該プロセッサは、他の汎用プロセッサ、デジタル信号プロセッサ(Digital Signal Processor,DSP)、特定用途向け集積回路(Application Specific Integrated Circuit,ASIC)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array,FPGA)又は他のプログラマブルロジックデバイス、ディスクリートゲート又はトランジスタロジックデバイス、ディスクリートハードウェアコンポーネントなどであることができる。汎用プロセッサは、マイクロプロセッサ又は従来の任意のプロセッサなどであることができる。
【0078】
メモリ502は、読み取り専用メモリ(Read-Only Memory,ROM)とランダムアクセスメモリ(Random Access Memory,RAM)を含むことができ、且つプロセッサ501に命令とデータを提供するように構成されている。メモリ502の一部は、不揮発性ランダムアクセスメモリをさらに含むことができる。例えば、メモリ502は、デバイスのタイプに関する情報を格納することができる。
【0079】
具体的な実施形態において、上記端末装置は、それに組み込まれている各機能モジュールによって、上記
図1から
図3までの各ステップに係わる実施形態を実行することができる。具体的な内容は、上記各ステップに係わる実施形態を参照できる。ここでは繰り返さない。
【0080】
本発明の実施形態では、デプロイしようとするモデルの入力/出力記述ファイルに基づいて入力データを確定して、入力/出力記述ファイルと入力データに基づいてデプロイしようとするモデルに対して出力検証を行う。デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、推論サービスリソースを上記デプロイしようとするモデルに割り当てる。デプロイしようとするモデルが推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定する。推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、推論サービスリソースに基づいて、デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、デプロイしようとするモデルのデプロイを完了する。入力/出力記述ファイルと入力データに基づいて、デプロイしようとするモデルに対して出力検証を行うことによって、デプロイしようとするモデル自体の実行可能性を判断して、デプロイしようとするモデル自体が正しく実行するように確保することができる。複数の実行環境から推論サービスリソースを確定して、推論サービスリソースを上記デプロイしようとするモデルに割り当てることによって、デプロイしようとするモデルが推論サービスを実行する場合の実行環境の制限を克服し、デプロイしようとするモデルのデプロイの効率と互換性を高めることができる。
【0081】
本発明の実施形態は、コンピュータ可読記憶媒体をさらに提供する。当該コンピュータ可読記憶媒体には、プログラム命令を含むコンピュータプログラムが格納されている。当該命令は、プロセッサに実行されると、
図1から
図3までの各ステップに係わる予測モデルに基づくユーザー行為認識方法を実行するために用いられる。具体的な内容は、上記各ステップに係わる実施形態を参照できる。ここでは繰り返さない。
【0082】
選択的に、本発明に係わる記憶媒体、例えば、コンピュータ可読記憶媒体は、揮発性のものであることができ、又は不揮発のものであることができる。
【0083】
上記コンピュータ可読記憶媒体は、上述した任意の一つの実施形態に係わる予測モデルに基づくユーザー行為認識装置、又は上記端末装置の内部記憶ユニット、例えば電子デバイスのハードディスク又はメモリであることができる。当該コンピュータ可読記憶媒体は当該電子デバイスの外部記憶装置、例えば、当該電子デバイスに配置されるプラグイン式のハードディスク、スマートメディアカード(smart media card,SMC)、セキュアデジタル(secure digital,SD)カード、フラッシュカード(flash card)などであることができる。さらに、当該コンピュータ可読記憶媒体は、当該電子デバイスの内部記憶ユニットと外部記憶装置両方を含むことができる。当該コンピュータ可読記憶媒体は、当該コンピュータプログラムと、及び当該電子デバイスに必要な他のプログラムとデータとを格納するように構成されている。当該コンピュータ可読記憶媒体はさらに、既に出力したデータ又は出力しようとするデータを暫く格納するように構成されている。
【0084】
本発明の請求項と明細書及び図面における「第一」「第二」「第三」「第四」などの用語は特定のシーケンスの説明のためではなく、異なる対象を区別するために用いられる。また、「含む」、「備える」又は他のいかなるバリアントなどの用語は、非排他的な含みをカバーすることを意図する。例えば、一連のステップ又はユニットを含むプロセス、方法、システム、製品又は装置は、リストされたステップ又はユニットに限定せず、選択的に、リストされていない他のステップ又はユニットをさらに含み、又は選択的に、プロセス、方法、製品又は装置の固有の他のステップ又はユニットをさらに含むことができる。本明細書に言及される「実施形態」は、実施形態と結びついて説明される特定の特徴、構造、又は特性は本発明の少なくとも一つの実施形態に含まれることができることを意味する。明細書のいかなるところに現れる当該言葉は必ずしも同じ実施形態を示すとは限らず、他の実施形態と対立する独立の実施形態又は選択可能な実施形態でもない。当業者は、本明細書に記載される実施形態は他の実施形態と組み合わせることができることを明示的又は暗示的に理解すべきである。本発明の明細書と請求項に使われる用語「及び/又は」は、リストされた関連内容の一つ又はいくつかの任意の組み合わせ及び全ての可能な組み合わせを示し、また、それらの組み合わせを含む。
【0085】
本発明に開示された実施形態に基づいて記載される各例示のユニット及びアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、又は両者の組み合わせにより実現され得ることは、当業者にとって明らかである。ハードウェアとソフトウェアの互換性を明確に示すために、上記説明では、各実施形態の構成とステップを機能に基づいて一般的に説明した。それらの機能は、ハードウェアにより実行されるか又はソフトウェアにより実行されるかについて、技術方案の特定の応用又は設計の制限条件などによって決められる。当業者は、特定応用ごとに異なる方法を使用して記載される機能を実現することができるが、それらの実現は、本発明の範囲を超えると見なされるべきではない。
【0086】
本発明の実施形態に係わる方法及び関連装置は、本発明の実施形態に係わる方法を示すフローチャート及び/又は構造を示す概略図を参照しながら説明される。具体的には、方法を示すフローチャート及び/又は構造を示す概略図における各プロセス及び/又はブロック、及びフローチャート及び/又はブロック図におけるプロセス及び/又はブロックの組み合わせはコンピュータプログラム命令によって実現される。それらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、組み込みプロセッサ又は他のプログラム可能なデータ処理装置(programmable data processing device)のプロセッサに提供されることで、機械を生成する。これで、コンピュータ又は他のプログラム可能なデータ処理装置のプロセッサによって実行される命令は、フローチャートの一つのプロセス又は複数のプロセス、及び/又は構造を示す概略図の一つのブロック又は複数のブロックにおいて指定される機能を実現するに用いられる装置を生じる。それらのコンピュータプログラム命令は、コンピュータ又は他のプログラム可能なデータ処理装置に特定の方法で実行するように指示することができるコンピュータ可読記憶媒体に格納されることができる。それによって、当該コンピュータ可読記憶媒体に格納される命令は命令装置を含む製造品を生じる。当該命令装置は、フローチャートの一つのプロセス又は複数のプロセス、及び/又は構造を示す概略図の一つのブロック又は複数のブロックにおいて指定される機能を実現する。それらのコンピュータプログラム命令は、コンピュータ又は他のプログラマブルなデータ処理装置にロードされることができ、コンピュータ又は他のプログラマブルな装置で一連の操作ステップを実行して、コンピュータが実現するプロセスを生成する。これで、コンピュータ又は他のプログラマブルな装置で実行される命令は、フローチャートの一つのプロセス又は複数のプロセス、及び/又は構造を示す概略図の一つのブロック又は複数のブロックにおいて指定される機能を実現するに用いられるステップを提供する。
【手続補正書】
【提出日】2021-11-17
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
モデルデプロイ方法であって、
デプロイしようとするモデル及び前記デプロイしようとするモデルの入力/出力記述ファイルを取得することと、
前記入力/出力記述ファイルに基づいて入力データを確定して、前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うことと、
前記デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てることと、
前記デプロイしようとするモデルが前記推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定することと、
前記推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、前記推論サービスリソースに基づいて、前記デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、前記デプロイしようとするモデルのデプロイを完了することを含む、
ことを特徴とするモデルデプロイ方法。
【請求項2】
前記入力/出力記述ファイルに基づいて入力データを確定することは、
前記入力/出力記述ファイルに基づいて、入力ノード及び入力ノードに対応する入力データフォーマットを確定することと、
前記入力データフォーマットに従って、前記入力ノードの入力データを生成することとを含む、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うことは、
前記入力ノードを介して、前記入力データを前記デプロイしようとするモデルに入力することと、
前記入力/出力記述ファイルに基づいて、出力ノード及び前記出力ノードに対応する出力データフォーマットを確定して、前記出力ノードで前記デプロイしようとするモデルの出力データを取得することと、
前記出力データフォーマットに基づいて、前記デプロイしようとするモデルの出力データに対して出力検証を行うことと、
前記出力データのフォーマットは前記出力データフォーマットと同じである場合、前記デプロイしようとするモデルの出力検証がパスすると確定することとを含む、
ことを特徴とする請求項2に記載の方法。
【請求項4】
前記複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てることは、
前記デプロイしようとするモデルのファイルフォーマットを取得して、前記デプロイしようとするモデルのファイルフォーマットを限定される目標フォーマットに変換することと、
前記フォーマット変換後のデプロイしようとするモデルに必要な基本の推論サービスリソースを分析して、前記基本の推論サービスリソースに基づいて、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記フォーマット変換後のデプロイしようとするモデルに割り当てることとを含む、
ことを特徴とする請求項1~3のいずれか一項に記載の方法。
【請求項5】
前記推論パラメータ値が前記予め設定される推論パラメータ閾値より小さい場合、複数の実行環境から推論サービスリソースを確定するステップを実行することにより、前記デプロイしようとするモデルに割り当てられる推論サービスリソースを改めて確定することをさらに含み、
前記複数の実行環境は、GPUの数量、GPUのタイプ及びGPUの実行スキームの中の一つ又はいくつかを変更して形成した実行環境を備える、
ことを特徴とする請求項4に記載の方法。
【請求項6】
前記デプロイしようとするモデルは、目標トレーニングフレームワークをトレーニングすることによって取得され、前記目標トレーニングフレームワークはCaffe、Caffeine2、TwnsorFlow、MxNet、CNTK又はPytorchの中の一つである、
ことを特徴とする請求項1~3のいずれか一項に記載の方法。
【請求項7】
前記デプロイしようとするモデルのトレーニングサンプルデータは、病気の診療情報、個人保健情報及び医療施設情報の中の少なくとも一つを含む、
ことを特徴とする請求項1~3のいずれか一項に記載の方法。
【請求項8】
モデルデプロイ装置であって、
デプロイしようとするモデル及び前記デプロイしようとするモデルの入力/出力記述ファイルを取得するように構成されているモデル取得モジュールと、
前記入力/出力記述ファイルに基づいて入力データを確定して、前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うように構成されている出力検証モジュールと、
複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てるように構成されているリソース割り当てモジュールと、
前記デプロイしようとするモデルが前記推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定するように構成されている性能検証モジュールと、
前記推論サービスリソースに基づいて、前記デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、前記デプロイしようとするモデルのデプロイを完了するように構成されている環境格納モジュールとを含む、
ことを特徴とするモデルデプロイ装置。
【請求項9】
端末装置であって、
相互に接続されたプロセッサとメモリを含み、前記メモリはプログラム命令を含むコンピュータプログラムを格納するように構成されており、前記プロセッサは、前記プログラム命令を呼び出して、
デプロイしようとするモデル及び前記デプロイしようとするモデルの入力/出力記述ファイルを取得することと、
前記入力/出力記述ファイルに基づいて入力データを確定して、前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うことと、
前記デプロイしようとするモデルの出力検証がパスする場合、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てることと、
前記デプロイしようとするモデルが前記推論サービスリソースに基づいて実行する推論サービスの推論パラメータ値を確定することと、
前記推論パラメータ値が予め設定される推論パラメータ閾値以上である場合、前記推論サービスリソースに基づいて、前記デプロイしようとするモデルのリソース構成ファイルと推論サービスインターフェースを生成することにより、前記デプロイしようとするモデルのデプロイを完了することと、を含む方法を実行するように構成されている、
ことを特徴とする端末装置。
【請求項10】
前記入力/出力記述ファイルに基づいて入力データを確定するとき、具体的に、
前記入力/出力記述ファイルに基づいて、入力ノード及び前記入力ノードに対応する入力データフォーマットを確定することと、
前記入力データフォーマットに従って、前記入力ノードの入力データを生成することとを実行する、
ことを特徴とする請求項9に記載の端末装置。
【請求項11】
前記入力/出力記述ファイルと前記入力データに基づいて、前記デプロイしようとするモデルに対して出力検証を行うとき、具体的に、
前記入力ノードを介して、前記入力データを前記デプロイしようとするモデルに入力することと、
前記入力/出力記述ファイルに基づいて、出力ノード及び前記出力ノードに対応する出力データフォーマットを確定して、前記出力ノードで前記デプロイしようとするモデルの出力データを取得することと、
前記出力データフォーマットに基づいて、前記デプロイしようとするモデルの出力データに対して出力検証を行うことと、
前記出力データのフォーマットは前記出力データフォーマットと同じである場合、前記デプロイしようとするモデルの出力検証がパスすると確定することとを実行する、
ことを特徴とする請求項10に記載の端末装置。
【請求項12】
前記複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記デプロイしようとするモデルに割り当てるとき、具体的に、
前記デプロイしようとするモデルのファイルフォーマットを取得して、前記デプロイしようとするモデルのファイルフォーマットを限定される目標フォーマットに変換することと、
前記フォーマット変換後のデプロイしようとするモデルに必要な基本の推論サービスリソースを分析して、前記基本の推論サービスリソースに基づいて、複数の実行環境から推論サービスリソースを確定して、前記推論サービスリソースを前記フォーマット変換後のデプロイしようとするモデルに割り当てることとを実行する、
ことを特徴とする請求項9~11のいずれか一項に記載の端末装置。
【請求項13】
前記プロセッサはさらに、
前記推論パラメータ値が前記予め設定される推論パラメータ閾値より小さい場合、複数の実行環境から推論サービスリソースを確定するステップを実行することにより、前記デプロイしようとするモデルに割り当てられる推論サービスリソースを改めて確定することを実行し、
前記複数の実行環境は、GPUの数量、GPUのタイプ及びGPUの実行スキームの中の一つ又はいくつかを変更して形成した実行環境を備える、
ことを特徴とする請求項12に記載の端末装置。
【請求項14】
コンピュータ可読記憶媒体であって、
プログラム命令を含むコンピュータプログラムを格納し、前記プログラム命令はプロセッサに実行されると、前記プロセッサに、請求項1~7のいずれか一項に記載の方法を実行させる、 ことを特徴とするコンピュータ可読記憶媒体。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0081
【補正方法】変更
【補正の内容】
【0081】
本発明の実施形態は、コンピュータ可読記憶媒体をさらに提供する。当該コンピュータ可読記憶媒体には、プログラム命令を含むコンピュータプログラムが格納されている。当該命令は、プロセッサに実行されると、
図1から
図3までの各ステップに係わる
モデルデプロイ方法を実行するために用いられる。具体的な内容は、上記各ステップに係わる実施形態を参照できる。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0083
【補正方法】変更
【補正の内容】
【0083】
上記コンピュータ可読記憶媒体は、上述した任意の一つの実施形態に係わるモデルデプロイ装置、又は上記端末装置の内部記憶ユニット、例えば電子デバイスのハードディスク又はメモリであることができる。当該コンピュータ可読記憶媒体は当該電子デバイスの外部記憶装置、例えば、当該電子デバイスに配置されるプラグイン式のハードディスク、スマートメディアカード(smart media card,SMC)、セキュアデジタル(secure digital,SD)カード、フラッシュカード(flash card)などであることができる。さらに、当該コンピュータ可読記憶媒体は、当該電子デバイスの内部記憶ユニットと外部記憶装置両方を含むことができる。当該コンピュータ可読記憶媒体は、当該コンピュータプログラムと、及び当該電子デバイスに必要な他のプログラムとデータとを格納するように構成されている。当該コンピュータ可読記憶媒体はさらに、既に出力したデータ又は出力しようとするデータを暫く格納するように構成されている。
【国際調査報告】