IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッドの特許一覧

特開2023-86678深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法及び装置
<>
  • 特開-深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法及び装置 図1
  • 特開-深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法及び装置 図2
  • 特開-深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法及び装置 図3
  • 特開-深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法及び装置 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023086678
(43)【公開日】2023-06-22
(54)【発明の名称】深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法及び装置
(51)【国際特許分類】
   G06N 20/00 20190101AFI20230615BHJP
【FI】
G06N20/00
【審査請求】有
【請求項の数】31
【出願形態】OL
(21)【出願番号】P 2022178862
(22)【出願日】2022-11-08
(31)【優先権主張番号】202111508796.8
(32)【優先日】2021-12-10
(33)【優先権主張国・地域又は機関】CN
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Linux
2.WINDOWS
3.macOS
4.JAVASCRIPT
5.ARM
(71)【出願人】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100139066
【弁理士】
【氏名又は名称】伊藤 健太郎
(72)【発明者】
【氏名】ウー,ティエン
(72)【発明者】
【氏名】マ,ヤンジュン
(72)【発明者】
【氏名】ユ,ディアンハイ
(72)【発明者】
【氏名】ヤン,イェファ
(72)【発明者】
【氏名】ドゥ,ユニン
(57)【要約】      (修正有)
【課題】深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法、装置、記憶媒体及びプログラムを提供する。
【解決手段】方法は、ターゲットデバイスに、深層学習モデルの生成プロセス全体に環境準備を提供する基本実行環境を構築するステップS101と、業務要求及び/又はハードウェア要求にしたがって、基本実行環境において深層学習モデルの基本機能を生成して、第1処理結果を得るステップS102と、第1処理結果に基づいて、基本実行環境において深層学習モデルの拡張機能を生成して、第2処理結果を得るステップS103と、予め設定されたテストスクリプトを利用して第2処理結果に対して機能テストを行い、テスト結果を出力するステップS104と、を含む。
【選択図】図1
【特許請求の範囲】
【請求項1】
ターゲットデバイスに、深層学習モデルの生成プロセス全体に環境準備を提供する基本実行環境を構築するステップと、
業務要求及び/又はハードウェア要求にしたがって、前記基本実行環境において前記深層学習モデルの基本機能を生成して、第1処理結果を得るステップと、
前記第1処理結果に基づいて、前記基本実行環境において前記深層学習モデルの拡張機能を生成して、第2処理結果を得るステップと、
予め設定されたテストスクリプトを利用して前記第2処理結果に対して機能テストを行い、テスト結果を出力するステップと、を含む、
深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法。
【請求項2】
前記ターゲットデバイスに、前記基本実行環境を構築するステップは、
前記ターゲットデバイスのハードウェア配置情報を取得するステップと、
前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのソフトウェア配置情報を決定するステップと、
前記ハードウェア配置情報及び前記ソフトウェア配置情報を利用して、前記基本実行環境を構築するステップと、を含む、
請求項1に記載の方法。
【請求項3】
前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのソフトウェア配置情報を決定するステップは、
前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのオペレーティングシステム情報、深層学習フレームワーク情報、モデルライブラリ情報、プレトレーニングモデル、及び前記プレトレーニングモデルに対応するトレーニングデータと予測データを決定するステップを含む、
請求項2に記載の方法。
【請求項4】
前記業務要求及び/又は前記ハードウェア要求にしたがって、前記基本実行環境において前記深層学習モデルの基本機能を生成して、前記第1処理結果を得るステップは、
前記深層学習モデルの生成プロセス全体に含まれる、前記深層学習モデルを開発、トレーニング、及び推理するために用いられる複数の処理段階を決定するステップと、
前記業務要求及び/又は前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るステップと、を含む、
請求項1に記載の方法。
【請求項5】
前記業務要求及び/又は前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るステップは、
前記業務要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第1部分処理段階の基本機能を生成して、第3処理結果を得るステップと、
前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第2部分処理段階の基本機能を生成して、第4処理結果を得るステップと、
前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第3部分処理段階の基本機能を生成して、第5処理結果を得るステップと、
前記第3処理結果、前記第4処理結果、及び前記第5処理結果を利用して、前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るステップと、を含む、
請求項4に記載の方法。
【請求項6】
前記業務要求にしたがって、前記基本実行環境において前記第1部分処理段階の基本機能を生成して、前記第3処理結果を得るステップは、
前記業務要求にしたがって、モデルライブラリから、前記基本実行環境において使用対象のモデルアルゴリズムを選択するステップと、
前記業務要求にしたがって、前記基本実行環境において使用対象のモデル圧縮方式を選択するステップと、
前記業務要求にしたがって、前記基本実行環境において使用対象の予測デプロイメント方式を選択するステップと、
前記モデルアルゴリズム、前記モデル圧縮方式、及び前記予測デプロイメント方式を前記第3処理結果として決定するステップと、を含む、
請求項5に記載の方法。
【請求項7】
前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第2部分処理段階の基本機能を生成して、前記第4処理結果を得るステップは、
前記ハードウェア要求にしたがって、前記基本実行環境において使用対象の、モデルトレーニングに使用される第1ソフトウェア・ハードウェア環境及びモデル推理デプロイメントに使用される第2ソフトウェア・ハードウェア環境を配置するステップと、
前記第1ソフトウェア・ハードウェア環境及び前記第2ソフトウェア・ハードウェア環境を前記第4処理結果として決定するステップとを含む、
請求項5に記載の方法。
【請求項8】
前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第3部分処理段階の基本機能を生成して、前記第5処理結果を得るステップは、
前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において使用対象のモデルトレーニング方式を選択するステップと、
前記モデルトレーニング方式を前記第5処理結果として決定するステップと、を含む、
請求項5に記載の方法。
【請求項9】
前記複数の処理段階には、
モデルアルゴリズムの選択段階と、
モデルトレーニングソフトウェア・ハードウェア環境の配置段階と、
モデルトレーニング方式の選択段階と、
モデル圧縮方式の選択段階と、
モデルトレーニング段階と、
モデル保存段階と、
モデル予測デプロイメント方式の選択段階と、
モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階と、が含まれる、
請求項4に記載の方法。
【請求項10】
前記第1処理結果に基づいて、前記基本実行環境において前記深層学習モデルの拡張機能を生成して、前記第2処理結果を得るステップは、
前記第1処理結果に基づいて、前記複数の処理段階のうちの各処理段階に前記基本機能以外の前記拡張機能を追加し、各処理段階に対応する多種選択対象の機能を決定するステップと、
各処理段階に対応する多種選択対象の機能からいずれか一種の機能をそれぞれ選択して組み合わせ、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るステップと、を含む、
請求項4に記載の方法。
【請求項11】
各処理段階に対応する多種選択対象の機能からいずれか一種の機能をそれぞれ選択して組み合わせ、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るステップは、
モデルアルゴリズムの選択段階において、組み合わせ対象のモデルアルゴリズムをランダムに選択するステップと、
モデルトレーニングソフトウェア・ハードウェア環境の配置段階において、第1組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定するステップと、
モデルトレーニング方式の選択段階において、組み合わせ対象のモデルトレーニング方式をランダムに選択するステップと、
モデル圧縮方式の選択段階において、組み合わせ対象のモデル圧縮方式をランダムに選択するステップと、
モデル予測デプロイメント方式の選択段階において、組み合わせ対象のモデル予測デプロイメント方式をランダムに選択するステップと、
モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階において、第2組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定するステップと、
各処理段階に対応する多種選択対象の機能の各種組み合わせが全て実行されるまで、前記組み合わせ対象のモデルアルゴリズム、前記第1組み合わせ対象のソフトウェア・ハードウェア環境、前記組み合わせ対象のモデルトレーニング方式、前記組み合わせ対象のモデル圧縮方式、前記組み合わせ対象のモデル予測デプロイメント方式、及び前記第2組み合わせ対象のソフトウェア・ハードウェア環境を組み合わせて、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るステップと、を含む、
請求項10に記載の方法。
【請求項12】
前記予め設定されたテストスクリプトを利用して前記第2処理結果に対して機能テストを行い、テスト結果を出力するステップは、
前記予め設定されたテストスクリプトを利用して前記深層学習モデルの生成プロセス全体において少なくとも1つのテストポイントを設定するステップと、
前記少なくとも1つのテストポイントに基づいて前記第2処理結果に対して機能テストを行い、前記テスト結果を出力するステップと、を含む、
請求項4に記載の方法。
【請求項13】
前記第2処理結果には、前記複数の処理段階のうちの各処理段階に対応する多種選択対象の機能の各種組み合わせが含まれ、前記少なくとも1つのテストポイントに基づいて前記第2処理結果に対して機能テストを行い、前記テスト結果を出力するステップは、
前記少なくとも1つのテストポイントに基づいて、各処理段階に対応する多種選択対象の機能の各種組み合わせに対して機能テストをそれぞれ行い、前記テスト結果を出力するステップを含む、
請求項12に記載の方法。
【請求項14】
前記テスト結果には、
前記深層学習モデルの標識情報と、
前記深層学習モデルに関連するソフトウェア・ハードウェア配置情報と、
前記深層学習モデルの属性テスト情報と、
前記深層学習モデルの予測結果情報と、が含まれる、
請求項12に記載の方法。
【請求項15】
ターゲットデバイスに、深層学習モデルの生成プロセス全体に環境準備を提供する基本実行環境を構築するための構築モジュールと、
業務要求及び/又はハードウェア要求にしたがって、前記基本実行環境において前記深層学習モデルの基本機能を生成して、第1処理結果を得るための第1生成モジュールと、
前記第1処理結果に基づいて、前記基本実行環境において前記深層学習モデルの拡張機能を生成して、第2処理結果を得るための第2生成モジュールと、
予め設定されたテストスクリプトを利用して前記第2処理結果に対して機能テストを行い、テスト結果を出力するためのテストモジュールと、を含む、
深層学習フレームワークに基づいて深層学習モデルを生成して適用する装置。
【請求項16】
前記構築モジュールは、前記ターゲットデバイスのハードウェア配置情報を取得し、前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのソフトウェア配置情報を決定し、前記ハードウェア配置情報及び前記ソフトウェア配置情報を利用して、前記基本実行環境を構築するために用いられる、
請求項15に記載の装置。
【請求項17】
前記構築モジュールは、前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのオペレーティングシステム情報、深層学習フレームワーク情報、モデルライブラリ情報、プレトレーニングモデル、及び前記プレトレーニングモデルに対応するトレーニングデータと予測データを決定するために用いられる、
請求項16に記載の装置。
【請求項18】
前記第1生成モジュールは、前記深層学習モデルの生成プロセス全体に含まれる、前記深層学習モデルを開発、トレーニング、及び推理するために用いられる複数の処理段階を決定するために用いられ、前記業務要求及び/又は前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るために用いられる、
請求項15に記載の装置。
【請求項19】
前記第1生成モジュールは、前記業務要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第1部分処理段階の基本機能を生成し、第3処理結果を得て、前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第2部分処理段階の基本機能を生成し、第4処理結果を得て、前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第3部分処理段階の基本機能を生成し、第5処理結果を得て、前記第3処理結果、前記第4処理結果、及び前記第5処理結果を利用して、前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るために用いられる、
請求項18に記載の装置。
【請求項20】
前記第1生成モジュールは、前記業務要求にしたがって、モデルライブラリから、前記基本実行環境において使用対象のモデルアルゴリズムを選択し、前記業務要求にしたがって、前記基本実行環境において使用対象のモデル圧縮方式を選択し、前記業務要求にしたがって、前記基本実行環境において使用対象の予測デプロイメント方式を選択し、前記モデルアルゴリズム、前記モデル圧縮方式、及び前記予測デプロイメント方式を前記第3処理結果として決定するために用いられる、
請求項19に記載の装置。
【請求項21】
前記第1生成モジュールは、前記ハードウェア要求にしたがって、前記基本実行環境において使用対象の、モデルトレーニングに使用される第1ソフトウェア・ハードウェア環境及びモデル推理デプロイメントに使用される第2ソフトウェア・ハードウェア環境を配置し、前記第1ソフトウェア・ハードウェア環境及び前記第2ソフトウェア・ハードウェア環境を前記第4処理結果として決定するために用いられる、
請求項19に記載の装置。
【請求項22】
前記第1生成モジュールは、前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において使用対象のモデルトレーニング方式を選択し、前記モデルトレーニング方式を前記第5処理結果として決定するために用いられる、
請求項19に記載の装置。
【請求項23】
前記複数の処理段階には、
モデルアルゴリズムの選択段階と、
モデルトレーニングソフトウェア・ハードウェア環境の配置段階と、
モデルトレーニング方式の選択段階と、
モデル圧縮方式の選択段階と、
モデルトレーニング段階と、
モデル保存段階と、
モデル予測デプロイメント方式の選択段階と、
モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階と、が含まれる、
請求項18に記載の装置。
【請求項24】
前記第2生成モジュールは、前記第1処理結果に基づいて、前記複数の処理段階のうちの各処理段階に前記基本機能以外の前記拡張機能を追加し、各処理段階に対応する多種選択対象の機能を決定し、各処理段階に対応する多種選択対象の機能からいずれか一種の機能をそれぞれ選択して組み合わせ、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るために用いられる、
請求項18に記載の装置。
【請求項25】
前記第2生成モジュールは、モデルアルゴリズムの選択段階において、組み合わせ対象のモデルアルゴリズムをランダムに選択し、モデルトレーニングソフトウェア・ハードウェア環境の配置段階において、第1組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定し、モデルトレーニング方式の選択段階において、組み合わせ対象のモデルトレーニング方式をランダムに選択し、モデル圧縮方式の選択段階において、組み合わせ対象のモデル圧縮方式をランダムに選択し、モデル予測デプロイメント方式の選択段階において、組み合わせ対象のモデル予測デプロイメント方式をランダムに選択し、モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階において、第2組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定し、各処理段階に対応する多種選択対象の機能の各種組み合わせが全て実行されるまで、前記組み合わせ対象のモデルアルゴリズム、前記第1組み合わせ対象のソフトウェア・ハードウェア環境、前記組み合わせ対象のモデルトレーニング方式、前記組み合わせ対象のモデル圧縮方式、前記組み合わせ対象のモデル予測デプロイメント方式、及び前記第2組み合わせ対象のソフトウェア・ハードウェア環境を組み合わせて、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るために用いられる、
請求項24に記載の装置。
【請求項26】
前記テストモジュールは、前記予め設定されたテストスクリプトを利用して前記深層学習モデルの生成プロセス全体において少なくとも1つのテストポイントを設定し、前記少なくとも1つのテストポイントに基づいて前記第2処理結果に対して機能テストを行い、前記テスト結果を出力するために用いられる、
請求項18に記載の装置。
【請求項27】
前記第2処理結果には、前記複数の処理段階のうちの各処理段階に対応する多種選択対象の機能の各種組み合わせが含まれ、前記テストモジュールは、前記少なくとも1つのテストポイントに基づいて、各処理段階に対応する多種選択対象の機能の各種組み合わせに対して機能テストをそれぞれ行い、前記テスト結果を出力するために用いられる、
請求項26に記載の装置。
【請求項28】
前記テスト結果には、
前記深層学習モデルの標識情報と、
前記深層学習モデルに関連するソフトウェア・ハードウェア配置情報と、
前記深層学習モデルの属性テスト情報と、
前記深層学習モデルの予測結果情報と、が含まれる、
請求項26に記載の装置。
【請求項29】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信可能に接続されたメモリと、を含み、
前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記少なくとも1つのプロセッサが請求項1~14のいずれか1項に記載の方法を実行できるように、前記命令が前記少なくとも1つのプロセッサによって実行される、
電子機器。
【請求項30】
コンピュータ命令が記憶されている非一時的コンピュータ読み取り可能な記憶媒体であって、前記コンピュータ命令は、前記コンピュータに請求項1~14のいずれか1項に記載の方法を実行させるために用いられる、
非一時的コンピュータ読み取り可能な記憶媒体。
【請求項31】
コンピュータプログラムを含み、前記コンピュータプログラムがプロセッサによって実行されると、請求項1~14のいずれか1項に記載の方法が実現される、
コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、コンピュータ技術の分野に関し、特に、深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法及び装置に関する。
【背景技術】
【0002】
人工知能技術の発展に伴い、深層学習フレームワークを使用して深層学習モデルを開発して、それぞれの業務シーンの問題を解決する企業が多くなっている。代表的なフローは、業務要求側が自分の業務シーンに応じて要求を提出し、アルゴリズムエンジニアが適切な基本アルゴリズムを選択し、適切なデータを準備し、深層学習フレームワークを使用してデータ処理、アルゴリズム最適化、パラメータ最適化、モデルトレーニングなどの一連の動作を経て、要求に合致する深層学習モデルをトレーニングし、実際の業務生産環境にデプロイメントし、最終的に業務がオンラインとなる。
【0003】
しかし、上記の手段を採用して問題を解決する場合、人工作業による処理のプロセスが煩雑すぎで、人工作業による処理を経た後に得られるアルゴリズムは、業務環境に適合しないという問題が生じる可能性がある。
【0004】
上記の問題に対して、有効な解決手段が未だに提案されていない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本開示は、深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法及び装置を提供する。
【課題を解決するための手段】
【0006】
本開示の一態様によれば、深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法を提供し、当該方法は、ターゲットデバイスに、深層学習モデルの生成プロセス全体に環境準備を提供する基本実行環境を構築するステップと、業務要求及び/又はハードウェア要求にしたがって、前記基本実行環境において前記深層学習モデルの基本機能を生成して、第1処理結果を得るステップと、前記第1処理結果に基づいて、前記基本実行環境において前記深層学習モデルの拡張機能を生成して、第2処理結果を得るステップと、予め設定されたテストスクリプトを利用して前記第2処理結果に対して機能テストを行い、テスト結果を出力するステップと、を含む。
【0007】
選択可能に、前記ターゲットデバイスに、前記基本実行環境を構築するステップは、前記ターゲットデバイスのハードウェア配置情報を取得するステップと、前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのソフトウェア配置情報を決定するステップと、前記ハードウェア配置情報及び前記ソフトウェア配置情報を利用して、前記基本実行環境を構築するステップと、を含む。
【0008】
選択可能に、前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのソフトウェア配置情報を決定するステップは、前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのオペレーティングシステム情報、深層学習フレームワーク情報、モデルライブラリ情報、プレトレーニングモデル、及び前記プレトレーニングモデルに対応するトレーニングデータと予測データを決定するステップを含む。
【0009】
選択可能に、前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において前記深層学習モデルの基本機能を生成して、前記第1処理結果を得るステップは、前記深層学習モデルの生成プロセス全体に含まれる、前記深層学習モデルを開発、トレーニング、及び推理するために用いられる複数の処理段階を決定するステップと、前記業務要求及び/又は前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るステップと、を含む。
【0010】
選択可能に、前記業務要求及び/又は前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るステップは、前記業務要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第1部分処理段階の基本機能を生成して、第3処理結果を得るステップと、前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第2部分処理段階の基本機能を生成して、第4処理結果を得るステップと、前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第3部分処理段階の基本機能を生成して、第5処理結果を得るステップと、前記第3処理結果、前記第4処理結果、及び前記第5処理結果を利用して、前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るステップと、を含む。
【0011】
選択可能に、前記業務要求にしたがって、前記基本実行環境において前記第1部分処理段階の基本機能を生成して、前記第3処理結果を得るステップは、前記業務要求にしたがって、モデルライブラリから、前記基本実行環境において使用対象のモデルアルゴリズムを選択するステップと、前記業務要求にしたがって、前記基本実行環境において使用対象のモデル圧縮方式を選択するステップと、前記業務要求にしたがって、前記基本実行環境において使用対象の予測デプロイメント方式を選択するステップと、前記モデルアルゴリズム、前記モデル圧縮方式、及び前記予測デプロイメント方式を前記第3処理結果として決定するステップと、を含む。
【0012】
選択可能に、前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第2部分処理段階の基本機能を生成して、前記第4処理結果を得るステップは、前記ハードウェア要求にしたがって、前記基本実行環境において使用まちの、モデルトレーニングに使用される第1ソフトウェア・ハードウェア環境及びモデル推理デプロイメントに使用される第2ソフトウェア・ハードウェア環境を配置するステップと、前記第1ソフトウェア・ハードウェア環境及び前記第2ソフトウェア・ハードウェア環境を前記第4処理結果として決定するステップとを含む。
【0013】
選択可能に、前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第3部分処理段階の基本機能を生成して、前記第5処理結果を得るステップは、前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において使用対象のモデルトレーニング方式を選択するステップと、前記モデルトレーニング方式を前記第5処理結果として決定するステップと、を含む。
【0014】
選択可能に、前記複数の処理段階は、モデルアルゴリズムの選択段階と、モデルトレーニングソフトウェア・ハードウェア環境の配置段階と、モデルトレーニング方式の選択段階と、モデル圧縮方式の選択段階と、モデルトレーニング段階と、モデル保存段階と、モデル予測デプロイメント方式の選択段階と、モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階と、を含む。
【0015】
選択可能に、前記第1処理結果に基づいて、前記基本実行環境において前記深層学習モデルの拡張機能を生成して、前記第2処理結果を得るステップは、前記第1処理結果に基づいて、前記複数の処理段階のうちの各処理段階に前記基本機能以外の前記拡張機能を追加し、各処理段階に対応する多種選択対象の機能を決定するステップと、各処理段階に対応する多種選択対象の機能からいずれか一種の機能をそれぞれ選択して組み合わせ、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るステップと、を含む。
【0016】
選択可能に、各処理段階に対応する多種選択対象の機能からいずれか一種の機能をそれぞれ選択して組み合わせ、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るステップは、モデルアルゴリズムの選択段階において、組み合わせ対象のモデルアルゴリズムをランダムに選択するステップと、モデルトレーニングソフトウェア・ハードウェア環境の配置段階において、第1組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定するステップと、モデルトレーニング方式の選択段階において、組み合わせ対象のモデルトレーニング方式をランダムに選択するステップと、モデル圧縮方式の選択段階において、組み合わせ対象のモデル圧縮方式をランダムに選択するステップと、モデル予測デプロイメント方式の選択段階において、組み合わせ対象のモデル予測デプロイメント方式をランダムに選択するステップと、モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階において、第2組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定するステップと、各処理段階に対応する多種選択対象の機能の各種組み合わせが全て実行されるまで、前記組み合わせ対象のモデルアルゴリズム、前記第1組み合わせ対象のソフトウェア・ハードウェア環境、前記組み合わせ対象のモデルトレーニング方式、前記組み合わせ対象のモデル圧縮方式、前記組み合わせ対象のモデル予測デプロイメント方式、及び前記第2組み合わせ対象のソフトウェア・ハードウェア環境を組み合わせて、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るステップと、を含む。
【0017】
選択可能に、前記予め設定されたテストスクリプトを利用して前記第2処理結果に対して機能テストを行い、テスト結果を出力するステップは、前記予め設定されたテストスクリプトを利用して前記深層学習モデルの生成プロセス全体において少なくとも1つのテストポイントを設定するステップと、前記少なくとも1つのテストポイントに基づいて前記第2処理結果に対して機能テストを行い、前記テスト結果を出力するステップと、を含む。
【0018】
選択可能に、前記第2処理結果には、前記複数の処理段階のうちの各処理段階に対応する多種選択対象の機能の各種組み合わせが含まれ、前記少なくとも1つのテストポイントに基づいて前記第2処理結果に対して機能テストを行い、前記テスト結果を出力するステップは、前記少なくとも1つのテストポイントに基づいて、各処理段階に対応する多種選択対象の機能の各種組み合わせに対して機能テストをそれぞれ行い、前記テスト結果を出力するステップを含む。
【0019】
選択可能に、前記テスト結果は、前記深層学習モデルの標識情報と、前記深層学習モデルに関連するソフトウェア・ハードウェア配置情報と、前記深層学習モデルの属性テスト情報と、前記深層学習モデルの予測結果情報と、を含む。
【0020】
本開示の別の態様にて提供される深層学習フレームワークに基づいて深層学習モデルを生成して適用する装置は、ターゲットデバイスに、深層学習モデルの生成プロセス全体に環境準備を提供する基本実行環境を構築するための構築モジュールと、業務要求及び/又はハードウェア要求にしたがって、前記基本実行環境において前記深層学習モデルの基本機能を生成して、第1処理結果を得るための第1生成モジュールと、前記第1処理結果に基づいて、前記基本実行環境において前記深層学習モデルの拡張機能を生成して、第2処理結果を得るための第2生成モジュールと、予め設定されたテストスクリプトを利用して前記第2処理結果に対して機能テストを行い、テスト結果を出力するためのテストモジュールと、を含む。
【0021】
選択可能に、前記構築モジュールは、前記ターゲットデバイスのハードウェア配置情報を取得し、前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのソフトウェア配置情報を決定し、前記ハードウェア配置情報及び前記ソフトウェア配置情報を利用して、前記基本実行環境を構築するために用いられる。
【0022】
選択可能に、前記構築モジュールは、前記ハードウェア配置情報に基づいて、前記ターゲットデバイスのオペレーティングシステム情報、深層学習フレームワーク情報、モデルライブラリ情報、プレトレーニングモデル、及び前記プレトレーニングモデルに対応するトレーニングデータと予測データを決定するために用いられる。
【0023】
選択可能に、前記第1生成モジュールは、前記深層学習モデルの生成プロセス全体に含まれる、前記深層学習モデルを開発、トレーニング、及び推理するために用いられる複数の処理段階を決定するために用いられ、前記業務要求及び/又は前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るために用いられる。
【0024】
選択可能に、前記第1生成モジュールは、前記業務要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第1部分処理段階の基本機能を生成して、第3処理結果を得、前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第2部分処理段階の基本機能を生成し、第4処理結果を得て、前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において前記複数の処理段階のうちの第3部分処理段階の基本機能を生成し、第5処理結果を得て、前記第3処理結果、前記第4処理結果、及び前記第5処理結果を利用して、前記複数の処理段階のうちの各処理段階の基本機能を生成して、前記第1処理結果を得るために用いられる。
【0025】
選択可能に、前記第1生成モジュールは、前記業務要求にしたがって、モデルライブラリから、前記基本実行環境において使用対象のモデルアルゴリズムを選択し、前記業務要求にしたがって、前記基本実行環境において使用対象のモデル圧縮方式を選択し、前記業務要求にしたがって、前記基本実行環境において使用対象の予測デプロイメント方式を選択し、前記モデルアルゴリズム、前記モデル圧縮方式、及び前記予測デプロイメント方式を前記第3処理結果として決定するために用いられる。
【0026】
選択可能に、前記第1生成モジュールは、前記ハードウェア要求にしたがって、前記基本実行環境において使用対象の、モデルトレーニングに使用される第1ソフトウェア・ハードウェア環境及びモデル推理デプロイメントに使用される第2ソフトウェア・ハードウェア環境を配置し、前記第1ソフトウェア・ハードウェア環境及び前記第2ソフトウェア・ハードウェア環境を前記第4処理結果として決定するために用いられる。
【0027】
選択可能に、前記第1生成モジュールは、前記業務要求及び前記ハードウェア要求にしたがって、前記基本実行環境において使用対象のモデルトレーニング方式を選択し、前記モデルトレーニング方式を前記第5処理結果として決定するために用いられる。
【0028】
選択可能に、前記複数の処理段階は、モデルアルゴリズムの選択段階と、モデルトレーニングソフトウェア・ハードウェア環境の配置段階と、モデルトレーニング方式の選択段階と、モデル圧縮方式の選択段階と、モデルトレーニング段階と、モデル保存段階と、モデル予測デプロイメント方式の選択段階と、モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階と、を含む。
【0029】
選択可能に、前記第2生成モジュールは、前記第1処理結果に基づいて、前記複数の処理段階のうちの各処理段階に前記基本機能以外の前記拡張機能を追加し、各処理段階に対応する多種選択対象の機能を決定し、各処理段階に対応する多種選択対象の機能からいずれか一種の機能をそれぞれ選択して組み合わせ、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るために用いられる。
【0030】
選択可能に、前記第2生成モジュールは、モデルアルゴリズムの選択段階において、組み合わせ対象のモデルアルゴリズムをランダムに選択し、モデルトレーニングソフトウェア・ハードウェア環境の配置段階において、第1組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定し、モデルトレーニング方式の選択段階において、組み合わせ対象のモデルトレーニング方式をランダムに選択し、モデル圧縮方式の選択段階において、組み合わせ対象のモデル圧縮方式をランダムに選択し、モデル予測デプロイメント方式の選択段階において、組み合わせ対象のモデル予測デプロイメント方式をランダムに選択し、モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階において、第2組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定し、各処理段階に対応する多種選択対象の機能の各種組み合わせが全て実行されるまで、前記組み合わせ対象のモデルアルゴリズム、前記第1組み合わせ対象のソフトウェア・ハードウェア環境、前記組み合わせ対象のモデルトレーニング方式、前記組み合わせ対象のモデル圧縮方式、前記組み合わせ対象のモデル予測デプロイメント方式、及び前記第2組み合わせ対象のソフトウェア・ハードウェア環境を組み合わせて、前記深層学習モデルの生成プロセス全体を実行して、前記第2処理結果を得るために用いられる。
【0031】
選択可能に、前記テストモジュールは、前記予め設定されたテストスクリプトを利用して前記深層学習モデルの生成プロセス全体において少なくとも1つのテストポイントを設定し、前記少なくとも1つのテストポイントに基づいて前記第2処理結果に対して機能テストを行い、前記テスト結果を出力するために用いられる。
【0032】
選択可能に、前記第2処理結果には、前記複数の処理段階のうちの各処理段階に対応する多種選択対象の機能の各種組み合わせが含まれ、前記テストモジュールは、前記少なくとも1つのテストポイントに基づいて、各処理段階に対応する多種選択対象の機能の各種組み合わせに対して機能テストをそれぞれ行い、前記テスト結果を出力するために用いられる。
【0033】
選択可能に、前記テスト結果は、前記深層学習モデルの標識情報と、前記深層学習モデルに関連するソフトウェア・ハードウェア配置情報と、前記深層学習モデルの属性テスト情報と、前記深層学習モデルの予測結果情報と、を含む。
【0034】
本開示の別の態様よれば、電子機器を提供し、当該電子機器は、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに通信可能に接続されたメモリと、を含み、前記メモリには、前記少なくとも1つのプロセッサにより実行可能な命令が記憶され、前記少なくとも1つのプロセッサが上記のいずれか1項に記載の方法を実行できるように、前記命令が前記少なくとも1つのプロセッサによって実行される。
【0035】
本開示の別の態様によれば、コンピュータ命令が記憶されている非一時的コンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ命令は、前記コンピュータに上記のいずれか1項に記載の方法を実行させるために用いられる。
【0036】
本開示の別の態様によれば、コンピュータプログラムを含むコンピュータプログラム製品を提供し、前記コンピュータプログラムがプロセッサによって実行されると、上記のいずれか1項に記載の方法が実現される。
【0037】
本明細書に記載された内容は、本開示の実施例の肝心な特徴又は重要な特徴を特定することを意図したものではなく、本開示の範囲を限定することを意図したものでもないことを理解されたい。本開示の他の特徴は、以下の明細書によって容易に理解されるであろう。
【図面の簡単な説明】
【0038】
図面は、本解決手段をよりよく理解するためのものであり、本発明を限定するものではない。
図1】本発明の実施例1に係る深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法のフローチャートである。
図2】本発明の選択可能な実施形態にて提供されるシステムアーキテクチャの図である。
図3】本発明の実施例にて提供される深層学習フレームワークに基づいて深層学習モデルを生成して適用する装置の構造のブロック図である。
図4】本開示の実施例を実施するために用いられる例示的な電子機器400を示す概略的なブロック図である。
【発明を実施するための形態】
【0039】
以下、図面を参照しながら本開示の例示的な実施例を説明するが、理解を容易にするために、本開示の実施例の様々な詳細事項がこの説明に含まれており、それらは単に例示的なものとみなされるべきである。したがって、当業者であれば、本開示の範囲及び精神から逸脱することなく、ここに説明される実施例に対して様々な変更及び修正を行うことができることを理解できるだろう。同様に、分かりやすくかつ簡潔にするために、以下の説明では、周知の機能及び構造についての説明が省略される。
【0040】
本願は、図1に示す深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法を提供する。図1は、本発明の実施例1に係る深層学習モデルを生成する方法のフローチャートであり、図1に示すように、当該方法は、ターゲットデバイスに、深層学習モデルの生成プロセス全体に環境準備を提供する基本実行環境を構築するステップS101と、業務要求及び/又はハードウェア要求にしたがって、基本実行環境において深層学習モデルの基本機能を生成して、第1処理結果を得るステップS102と、第1処理結果に基づいて、基本実行環境において深層学習モデルの拡張機能を生成して、第2処理結果を得るステップS103と、予め設定されたテストスクリプトを利用して第2処理結果に対して機能テストを行い、テスト結果を出力するステップS104と、を含む。
【0041】
上記のステップにより、ターゲットデバイスに、深層学習モデルの生成プロセス全体を構築できる基本実行環境を構築し、業務要求及び/又はハードウェア要求にしたがって、基本実行環境において深層学習モデルの基本機能を生成し、第1処理結果を得て、第1処理結果に基づいて、基本実行環境で深層学習モデルの拡張機能を生成し、第2処理結果を得て、予め設定されたテストスクリプトを利用して第2処理結果に対して機能テストを行い、テスト結果を出力する。実行環境において深層学習を生成する基本機能は、業務要求及び/又はハードウェア要求に応じて得られるので、実際のシーン及び業務要求に適合できる。また、第1処理結果に基づいて、基本実行環境において深層学習モデルの拡張機能を生成するので、第1処理結果に応じて、的を絞って拡張機能の設定を行うことができる。最後に、第2処理結果をテストすることで、モデルの機能を効果的に検証することができ、さらに、モデルの環境と機能を構築する時に生じるモデル設計の全フローの設定ができないという関連技術に存在する技術的問題を解決した。ここで、予め設定されたテストスクリプトを利用して第2処理結果に対して機能テストを行い、テスト結果を出力することは、モデル設計の全フローの確実性を保証するために用いられる。
【0042】
選択可能な一実施例として、ターゲットデバイスに基本実行環境を構築する。ここで、ターゲットデバイスは、実行環境を構築し、モデルの構築、トレーニング及び検証を実行できるデバイス、例えばホストコンピュータなどであり、ここでは限定しない。基本実行環境は、深層学習モデルの生成プロセス全体に環境準備を提供する実行環境であり、即ち、開発前に基本環境の準備作業を行う必要がある。実際の業務と要求の違い、ターゲットデバイスのハードウェア条件の違いに応じて、開発して構築される基本実行環境も異なる。したがって、ターゲットデバイスに基本実行環境を構築する時、先にターゲットデバイスのハードウェア配置情報を取得し、当該ハードウェア配置情報に基づいて、ターゲットデバイスのソフトウェア配置情報を決定してもよい。ここで、ハードウェア配置情報により、ターゲットデバイスの複数のソフトウェア情報を決定でき、例えば、ターゲットデバイスのオペレーティングシステム情報、深層学習フレームワーク情報、モデルライブラリ情報、プレトレーニングモデル、及びプレトレーニングモデルに対応するトレーニングデータと予測データを決定できる。さらに、ハードウェア配置情報及びソフトウェア配置情報を利用して、基本実行環境を構築する。ハードウェア配置情報及びソフトウェア配置情報で構築される基本実行環境により、当該ターゲットデバイスに適することが保証され、後続開発の整然とした実行を保障することができ、実際の業務環境は、ハードウェアの種類が非常に多く、ソフトウェアのバージョンも非常に多く、大量の情報から適する実行環境を正確に配置することが難しいという関連技術の問題を解決した。
【0043】
選択可能な一実施例として、業務要求及び/又はハードウェア要求にしたがって、基本実行環境において深層学習モデルの基本機能を生成して、第1処理結果を得る。業務要求及び/又はハードウェア要求にしたがって基本機能を決定することにより、モデルが円滑かつ整然に実行されるように、基本機能が現在の業務要求を満たすことができることを保証できる。
【0044】
選択可能な一実施例として、深層学習モデルの生成プロセス全体には複数の処理段階が含まれ、例えば、生成プロセス全体には、モデルアルゴリズムの選択段階、モデルトレーニングソフトウェア・ハードウェア環境の配置段階、モデルトレーニング方式の選択段階、モデル圧縮方式の選択段階、モデルトレーニング段階、モデル保存段階、モデル予測デプロイメント方式の選択段階、モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階などが含まれる。深層学習モデルを生成するために、上記の複数の段階に対して該当する設定を行う必要がある。上記の複数の処理段階は、深層学習モデルの開発、深層学習モデルトレーニング、及び深層学習モデルの推理に用いられることができる。それにより、モデルの開発、トレーニング、推理、検証の全フローを実現する。したがって、基本実行環境において深層学習モデルの基本機能を生成して、第1処理結果を得る時、先に深層学習モデルの生成プロセス全体に含まれる複数の処理段階を決定し、業務要求及び/又はハードウェア要求にしたがって、異なる処理段階に的を絞って基本機能の設計を行い、基本実行環境において複数の処理段階のうちの各処理段階の基本機能を生成して、第1処理結果を得ることができる。それにより、アルゴリズムのモデル選択を行うのが困難で、全フローがサポートされないなどの関連技術に存在する問題を解決する。
【0045】
選択可能な一実施例として、業務要求及び/又はハードウェア要求にしたがって、基本実行環境において複数の処理段階のうちの各処理段階の基本機能を生成して、第1処理結果を得るステップは、業務要求にしたがって、基本実行環境において複数の処理段階のうちの第1部分処理段階の基本機能を生成して、第3処理結果を得る部分と、ハードウェア要求にしたがって、基本実行環境において複数の処理段階のうちの第2部分処理段階の基本機能を生成して、第4処理結果を得る部分と、業務要求及びハードウェア要求にしたがって、基本実行環境において複数の処理段階のうちの第3部分処理段階の基本機能を生成して、第5処理結果を得る部分と、を含む。即ち、業務要求、ハードウェア要求、及び業務要求とハードウェア要求にしたがって、基本機能の設定をそれぞれ行い、先に対応する処理結果をそれぞれ得てから、それぞれ得られた処理結果、即ち第3処理結果、第4処理結果、及び第5処理結果を利用して、複数の処理段階のうちの各処理段階の基本機能を生成して、第1処理結果を得る。業務要求、ハードウェア要求、及び業務要求とハードウェア要求のそれぞれに対して該当する設定を行うことにより、得られた第1処理結果をより適合させることができ、実際のシーン及び要求により適する。以下、業務要求、ハードウェア要求、及び業務要求とハードウェア要求にしたがって、基本機能の設定をそれぞれ行い、先に、対応する処理結果をそれぞれ得るプロセスについて詳細に説明する。
【0046】
1)業務要求にしたがって、基本実行環境において第1部分処理段階の基本機能を生成して、第3処理結果を得る。ここで、業務要求にしたがって、基本実行環境において第1部分処理段階の基本機能を生成し、前記基本機能は、モデルアルゴリズム、モデル圧縮方式、予測デプロイメント方式などを含み得る。即ち、上記のプロセスは、業務要求にしたがって、モデルライブラリから基本実行環境において使用対象のモデルアルゴリズムを選択し、業務要求にしたがって、基本実行環境において使用対象のモデル圧縮方式を選択し、業務要求にしたがって、基本実行環境において使用対象の予測デプロイメント方式を選択することである。ここで、業務要求に応じてモデルアルゴリズムを選択することで、多くの深層学習オープンアルゴリズム論文から、どのように適切で確実なアルゴリズムを見つけ出すかが非常に困難であるという関連技術の問題を解決する。業務要求に応じてモデル圧縮方式を選択し、ここで、圧縮により、大きなトレーニングモデルのモデル体積を小さくして、予測速度を向上させる効果を実現するために、モデル圧縮方式にSlim技術を採用して、Slim技術のモデル選択を行う。業務要求に応じる予測デプロイメント方式では、実際にデプロイメントする時、先に、例えば基本的なInferenceモードなどの標準化されたフォーマットでモデルを保存し、さらに、当該フォーマットに応じて変換することで、デプロイメントを実現するようにしてもよい。それにより、予測デプロイメントが様々なデプロイメント方式に関する場合、円滑にデプロイメントできないという関連技術の問題を解決する。
【0047】
2)ハードウェア要求にしたがって、基本実行環境において複数の処理段階のうちの第2部分処理段階の基本機能を生成して、第4処理結果を得る。ここで、ハードウェア要求にしたがって、基本実行環境において第2部分処理段階の基本機能を生成し、前記基本機能には、ソフトウェア・ハードウェア環境などが含まれ得る。ここで、ソフトウェア・ハードウェア環境は、例えばモデルトレーニングに使用されるソフトウェア・ハードウェア環境、モデル推理デプロイメントに使用されるソフトウェア・ハードウェア環境などの、異なる場合のソフトウェア・ハードウェア環境に分けられる。異なる場合のソフトウェア・ハードウェア環境のいずれも配置する必要がある。即ち、上記のプロセスは、ハードウェア要求にしたがって、基本実行環境において使用対象の第1ソフトウェア・ハードウェア環境及び第2ソフトウェア・ハードウェア環境を配置し、第1ソフトウェア・ハードウェア環境は、モデルトレーニングに使用されるソフトウェア・ハードウェア環境であり、第2ソフトウェア・ハードウェア環境は、モデル推理デプロイメントに使用されるソフトウェア・ハードウェア環境である。ハードウェア要求に応じてソフトウェア・ハードウェア環境を決定することで、モデルが当該ソフトウェア・ハードウェア環境において使用できるものになり、即ち、当該ターゲットデバイスは、モデルが当該ソフトウェア・ハードウェア環境において実行できるようにするものである。そして、ハードウェア要求がソフトウェア・ハードウェア環境に適合するので、モデルが正常に実行することを保証する前提で、モデルの生成速度を効果的に速めることができ、モデルの生成効率を向上させることができる。
【0048】
3)業務要求及びハードウェア要求にしたがって、基本実行環境において複数の処理段階のうちの第3部分処理段階の基本機能を生成して、第5処理結果を得る。ここで、業務要求とハードウェア要求にしたがって、基本実行環境において複数の処理段階のうちの第3部分処理段階の基本機能を生成し、前記基本機能には、モデルトレーニング方式などが含まれる。即ち、業務要求及びハードウェア要求にしたがって、基本実行環境において使用対象のモデルトレーニング方式を選択する。モデルを生成する時、サポートが不十分であるという関連技術の問題、例えば、トレーニング部分に関する分散型、混合精度の能力サポートが不十分であるという問題を解決するために、業務要求及びハードウェア要求にしたがって、モデルトレーニング方式を決定する。
【0049】
選択可能な一実施例として、第1処理結果に基づいて、基本実行環境において深層学習モデルの拡張機能を生成して、第2処理結果を得る。全フローにおいて、より包括的でより完全な機能サポートを実現するために、基本機能の開発に加えて、肝心な段階をセットして補足することができる。拡張機能を生成する時、第1処理結果に基づいて、複数の処理段階のうちの各処理段階に基本機能以外の拡張機能を追加し、各処理段階に対応する多種選択対象の機能を決定し、各処理段階に対応する多種選択対象の機能からいずれか一種の機能をそれぞれ選択して組み合わせ、深層学習モデルの生成プロセス全体を実行して、第2処理結果を得るステップを含み得る。なお、複数の処理段階の機能を拡張する時、2つずつ隣接する処理段階に応じて各段階の異なる状況を決定し、異なる状況について該当する設定を行って、処理段階で拡張された機能がいずれも有効であることを保証し、さらに、生成されたモデルが有効であることを保証することができる。当該ステップにより、モデルの機能を拡張できるだけでなく、モデルの数を非常に容易に拡張することができ、実際の業務要求を実現できる複数のモデルを容易にかつ迅速に生成することができる。
【0050】
選択可能な一実施例として、各処理段階に対応する多種選択対象の機能からいずれか一種の機能をそれぞれ選択して組み合わせ、深層学習モデルの生成プロセス全体を実行して、第2処理結果を得るステップは複数あり、例えば、モデルアルゴリズムの選択段階において、組み合わせ対象のモデルアルゴリズムをランダムに選択し、モデルトレーニングソフトウェア・ハードウェア環境の配置段階において、第1組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定し、モデルトレーニング方式の選択段階において、組み合わせ対象のモデルトレーニング方式をランダムに選択し、モデル圧縮方式の選択段階において、組み合わせ対象のモデル圧縮方式をランダムに選択し、モデル予測デプロイメント方式の選択段階において、組み合わせ対象のモデル予測デプロイメント方式をランダムに選択し、モデル推理デプロイメントのソフトウェア・ハードウェア環境の配置段階において、第2組み合わせ対象のソフトウェア・ハードウェア環境をランダムに決定する。さらに、各処理段階に対応する多種選択対象の機能の各種組み合わせが全て実行されるまで、組み合わせ対象のモデルアルゴリズム、第1組み合わせ対象のソフトウェア・ハードウェア環境、組み合わせ対象のモデルトレーニング方式、組み合わせ対象のモデル圧縮方式、組み合わせ対象のモデル予測デプロイメント方式、及び第2組み合わせ対象のソフトウェア・ハードウェア環境を組み合わせて、前記深層学習モデルの生成プロセス全体を実行して、第2処理結果を得る。モデルの数を大幅に拡張し、可能な状況を全部検証して、実際の業務要求を実現できるモデルを容易にかつ迅速に生成することができる。
【0051】
選択可能な一実施例として、予め設定されたテストスクリプトを利用して第2処理結果に対して機能テストを行い、テスト結果を出力する。ここで、テスト結果は、深層学習モデルの標識情報と、深層学習モデルに関連するソフトウェア・ハードウェア配置情報と、深層学習モデルの属性テスト情報と、深層学習モデルの予測結果情報と、を含む。例えば、深層学習モデルの標識情報は、モデル生成プロセスに使用されるソフトウェアバージョン番号情報を含み得、ソフトウェア・ハードウェア配置情報は、モデルトレーニングに使用されるソフトウェア・ハードウェア配置情報、モデル推理デプロイメントに使用されるソフトウェア・ハードウェア配置情報を含み得、属性テスト情報は、モデルトレーニングプロセスにおける速度、精度、損失値、経過時間、モデルの性能などの情報を含み得、予測結果情報は、モデル名、予測データなどの予測結果を含み得る。異なる態様に関するテスト結果を出力することにより、各態様の情報を明確に了解することができる。予め設定されたテストスクリプトを利用して第2処理結果に対して機能テストを行うことにより、モデルを全面的に評価して、正確で確実性の高いテスト結果を得ることができる。ここで、予め設定されたテストスクリプトは、ワンクリックで実行されてもよく、自動的に実行されてもよい。ワンクリックで実行される予め設定されたテストスクリプトを使用することにより、モデルを様々な複雑なソフトウェア・ハードウェア環境にデプロイメントすることができ、自動化の予め設定されたテストスクリプトを利用することにより、モデルの全フローの機能サポートを迅速に開始してテスト結果を検証して出力することができ、結果により、様々な環境での実現性検証をさらに決定することができる。また、定期的に予め設定されたテストスクリプトを使用してテストすることもでき、テストエントリー要求を厳しくし、かつ、テストを定期的に開始することにより、モデルの安定性や確実性を確保する。
【0052】
選択可能な一実施例として、予め設定されたテストスクリプトを利用して深層学習モデルの生成プロセス全体において少なくとも1つのテストポイントを設定し、少なくとも1つのテストポイントに基づいて第2処理結果に対して機能テストを行い、テスト結果を出力する。即ち、テストポイントは、テストを実行して、テスト結果を得る機能を有する。例えば、テスト結果は深層学習モデルの属性テスト情報の経過時間を含む場合、当該経過時間情報は、テストポイントを設定することで得られる。例えば、モデルを生成する時に1つのテストポイントを確立し、モデルトレーニングが終了した時に1つのテストポイントを確立し、これら2つのテストポイントは、それぞれその時点の時間を記録し、これら2つのテストポイントの差を求めると、モデルトレーニングのための経過時間を得ることができ、それにより、経過時間というテスト結果を得る。テストポイントは、具体的な状況に応じて、対応する他の設定を行ってもよいことにより、テストポイントは、複数の機能テストを実行して、複数の対応するテスト結果を得ることができる。テストポイントを設定することにより、様々なシーンでのトレーニングからデプロイメントまでの全フローを迅速に完了することができ、モデルが開発、トレーニング、推理の全フロー機能を円滑に完了することを保証する。
【0053】
なお、複数の処理段階のうちの各処理段階に対応する多種選択対象の機能の各種組み合わせは、少なくとも1つのテストポイントに基づいて第2処理結果に対して機能テストを行う時に出力するテスト結果は、さらに、少なくとも1つのテストポイントに基づいて各処理段階に対応する多種選択対象の機能の各種組み合わせに対してそれぞれ機能テストを行って出力するテスト結果を含む。
【0054】
上記の実施例及び選択可能な実施例に基づいて、選択可能な実施形態を提供し、以下に具体的に説明する。
【0055】
本発明の選択可能な実施形態において、深層学習フレームワークに基づいてモデルの開発、トレーニング、推理の全フローをサポートする解決手段を提供し、対応するシステムを配置し、システムは完全なコード、ドキュメント、ツールセット及び仕様を含み、深層学習モデルへの開発、トレーニング、推理の全フローに対する深層学習フレームワークのサポートを保証する。
【0056】
図2は、本発明の選択可能な実施形態にて提供されるシステムアーキテクチャの図であり、図2に示すように、豊かな産業レベルのモデルライブラリから、モデルのモデル選択、トレーニングソフトウェア・ハードウェア環境のモデル選択、モデルトレーニング、Slim技術のモデル選択、モデル保存、予測デプロイメント方式、及びデプロイメントソフトウェア・ハードウェア環境のモデル選択などを行うステップを含む。図2に示すシステムは、上記のステップにより、深層学習モデルの開発、トレーニング、推理の全フローの機能サポートをカバーする。
【0057】
ここで、ソフトウェア・ハードウェア環境には、Linux、windows、macOSにおけるGPU、CPU、NPU、DCU、XPUなどの環境が含まれ、モデルトレーニングには、分散型トレーニング、混合精度トレーニングなどのトレーニング方式が含まれ、予測デプロイメント方式には、Inference、serving、lite、js(JavaScript)などのデプロイメント方式が含まれ、デプロイメントソフトウェア・ハードウェア環境には、Linux、windows、macOSにおけるGPU、CPU、NPU、DCU、XPU、ARM、Webなどの環境が含まれる。Slim技術のモデル選択とは、主にモデル圧縮(クリッピング、定量化を含む)を指し、主に一般的にトレーニングされるモデルは大きく、圧縮によりモデルの体積を小さくして、予測速度を向上させることである。
【0058】
以下、本発明の選択可能な実施形態について詳細に説明する。
【0059】
(一)基本環境の準備
主に、開発前の基本環境の準備であり、ここで、準備段階には、ハードウェアデバイスの準備、基本オペレーティングシステムのインストール、深層学習フレームワークのインストール、コンパイルする又はコンパイル済みのサードパーティのライブラリの準備などが含まれ、プレトレーニングモデルのダウンロードと解凍、及び、基本トレーニング、予測データのダウンロードと解凍を行う。
【0060】
(二)基本機能の開発
S1、各部分の単独モデルを開発する。
【0061】
1)モデルのモデル選択:産業レベルのモデルライブラリから適切なモデルアルゴリズムを選択し、ここで、モデルアルゴリズムは、ユーザが自分の経験によって選択したものであってもよいし、産業レベルのモデルライブラリによって推薦されたアルゴリズムからユーザが選択したものであってもよい。
【0062】
2)トレーニングソフトウェア・ハードウェア環境の選択:実際の状況、即ち、実際に適用時のソフトウェア・ハードウェア条件に応じて、適切なソフトウェア・ハードウェア環境を選択する。
【0063】
3)モデルトレーニング段階:ソフトウェア・ハードウェア環境及び実際の業務要求にしたがって、モデルトレーニング方式を選択する。
【0064】
4)モデル圧縮技術のモデル選択:実際の業務要求のうちのモデルの大きさや速度に対する要求にしたがって、適切なモデル技術を選択する。
【0065】
S2、モデル開発フローを完了し、モデルトレーニングを開始する。
【0066】
S3、モデル保存:トレーニング済みのモデルを基本的なinferenceモードとして保存する。
【0067】
S4、デプロイメントに関する処理を行う。
【0068】
1)予測デプロイメントのモデル選択:実際の業務要求にしたがって、適切な予測デプロイメント方式を選択する。
【0069】
2)推理デプロイメントソフトウェア・ハードウェア環境のモデル選択:実際の状況、即ち実際に適用時のソフトハードウェア条件に応じて、適切なソフトウェア・ハードウェア環境を選択する。
【0070】
(三)サポート機能の開発
基本機能の開発に加えて、肝心な段階をセットして補足して、全フローをつなげ、全フローの機能サポートを実現する。
【0071】
S1、(一)の標準環境において、1つのモデルを選択し、(二)の各ステップを連結し、各段階で1つを選択する前提で1つの線で全フローをつなげる。
【0072】
ここで、標準環境とは、実際の状況において、決定された1つの環境セットを指し、後のステップでは変化しない。
【0073】
S2、ステップごとの複数の選択を拡張して、2つずつ隣接する組み合わせで各段階の異なる状況を決定し、各段階の複数の選択及び次の段階の各組み合わせの機能がいずれも効果的に実行されることを保証する。
【0074】
S3、開発、トレーニングから推理までの全フローにおいて、上記図のブロック図全体の有効性を保証する。
【0075】
S4、モデル数を拡張し、最終的に全てのモデルの全フローをつなげる。
【0076】
(四)全フロー報告の出力
主には、(二)、(三)の肝心なフロー報告の出力であり、ここで、出力内容は、
1)開発された自動化テストスクリプトと、
2)自動化を利用してコードのトレーニング及び推理中に指標の出力を必要とする位置に少量のテストポイントを加えることにより、テストポイントが肝心なプリント情報を含む複数の情報を得ることができることと、
3)自動化テストスクリプトを開始して、テスト報告結果を出力し、ここで、テスト報告結果の内容は、トレーニング関連速度、loss、精度、経過時間と、関連ソフトウェアバージョン番号、ハードウェア、配置情報の予測と、モデル名、モデルトレーニング時のデータセット情報、性能情報(例えば、表示メモリリソース情報の消費)、経過時間、及び予測結果などの情報を含むが、これらに限定されないことと、を含む。
【0077】
上記の選択可能な実施形態により、以下の有益な効果を達成できる。
【0078】
(1)本発明の選択可能な実施形態にて提供される方法及びシステムは、様々なオープンソースプロジェクトの開発プロセスに広く適用でき、トレーニングから推理までの全フローの機能サポートを提供する。
【0079】
(2)本発明の選択可能な実施形態にて提供される方法及びシステムは、企業内部のコードのメンテナンスと管理フローに広く適用でき、企業オンラインの問題リスクを低減する。
【0080】
(3)本発明の選択可能な実施形態にて提供される方法及びシステムには、システムプリセットアルゴリズムが使用され、産業実践によりよく適用でき、企業開発者は実際のプロジェクトに、本システムで沈殿したモデルアルゴリズム、及び開発、トレーニングから推理までの全フローの機能サポートを使用し、開発効率を50%以上向上させることができる。
【0081】
(4)本発明の選択可能な実施形態にて提供される方法及びシステムを使用して、企業自体の深層学習開発フローに対する品質管理を行うことができ、プロセスにおける互換性問題、適合性問題を効果的に低減することができ、テストの1回通過率を20%向上させる。
【0082】
(5)本発明の選択可能な実施形態にて提供される方法及びシステムを使用して、ワンクリックで自動化テストスクリプトを実行することができ、新しいソフトウェア・ハードウェア環境におけるモデルの適合能力を迅速に検証することができ、様々な企業の集中調達・入札・評価プロセスに適用でき、自動化スクリプトによりソフトウェア・ハードウェア環境の合致率を検証し、検証コストを30%低減する。
【0083】
(6)本発明の選択可能な実施形態にて提供される方法及びシステムは、仕様、ツールを提供し、この仕様、ツールは、関連分野の団体規格及び業界規格として徐々に普及することができ、関連業界全体の深層学習フレームワークに基づく開発、トレーニング、推理の全フローの標準化の程度を向上させる。
【0084】
本発明の実施例によれば、さらに、深層学習フレームワークに基づいて深層学習モデルを生成して適用する装置を提供し、図3は、本発明の実施例にて提供される深層学習フレームワークに基づいて深層学習モデルを生成して適用する装置の構造のブロック図であり、図3に示すように、当該装置は、構築モジュール301と、第1生成モジュール302と、第2生成モジュール303と、テストモジュール304と、を含み、以下、当該装置を説明する。
【0085】
構築モジュール301は、ターゲットデバイスに、深層学習モデルの生成プロセス全体に環境準備を提供する基本実行環境を構築するために用いられ、第1生成モジュール302は、上記の構築モジュール301に接続され、業務要求及び/又はハードウェア要求にしたがって、基本実行環境において深層学習モデルの基本機能を生成して、第1処理結果を得るために用いられ、第2生成モジュール303は、上記の第1生成モジュール302に接続され、第1処理結果に基づいて、基本実行環境において深層学習モデルの拡張機能を生成して、第2処理結果を得るために用いられ、テストモジュール304は、上記の第2生成モジュール303に接続され、予め設定されたテストスクリプトを利用して第2処理結果に対して機能テストを行い、テスト結果を出力するために用いられる。
【0086】
なお、上記の構築モジュール301、第1生成モジュール302、第2生成モジュール303、及びテストモジュール304は、実施例1におけるステップS101からステップS104に対応し、複数のモジュール及び対応するステップによって実現される実例及び適応シーンは同じであるが、上記の実施例1に開示した内容に限定されない。
【0087】
本開示の技術的解決手段において、係るユーザの個人情報の取得、記憶、及び適用などは、いずれも関連する法規制の規定に合致し、公序良俗に反することはない。
【0088】
本開示の実施例によれば、本開示は、さらに、電子機器、読み取り可能な記憶媒体、及びコンピュータプログラム製品を提供する。
【0089】
図4は、本開示の実施例を実施するために使用できる例示的な電子機器400を示す概略的なブロック図である。電子機器は、例えばラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレームコンピュータ、及び他の適切なコンピュータなどの様々な形態のデジタルコンピュータを示すことを目的とする。電子機器は、例えばパーソナルデジタルプロセッサ、携帯電話、スマートフォン、ウェアラブルデバイス、及び他の類似するコンピューティングデバイスなどの様々な形態のモバイルデバイスを示すこともできる。本明細書で示される構成要素、それらの接続と関係、及びそれらの機能は単なる例であり、本明細書に説明及び/又は要求される本開示の実現を制限することを意図するものではない。
【0090】
図4に示すように、機器400は、コンピューティングユニット401を含み、読み取り専用メモリ(ROM)402に記憶されているコンピュータプログラム、又は記憶ユニット408からランダムアクセスメモリ(RAM)403にロードされたコンピュータプログラムに応じて、様々な適切な動作及び処理を実行することができる。RAM403には、機器400の操作に必要な様々なプログラムやデータも記憶できる。コンピューティングユニット401、ROM402、及びRAM403は、バス404を介して互に接続される。入力/出力(I/O)インターフェース405もバス404に接続される。
【0091】
キーボード、マウスなどの入力ユニット406と、様々なタイプのディスプレイ、スピーカなどの出力ユニット407と、磁気ディスク、光ディスクなどの記憶ユニット408と、ネットワークカード、モデム、無線通信送受信機などの通信ユニット409とを含む、機器400の複数の構成要素は、I/Oインターフェース405に接続される。通信ユニット409は、インターネットなどのコンピュータネットワーク及び/又は様々な電気通信ネットワークを介して、機器400が他のデバイスと情報/データを交換することを可能にする。
【0092】
コンピューティングユニット401は、処理及びコンピューティング能力を有する様々な汎用及び/又は専用処理コンポーネントであり得る。コンピューティングユニット401のいくつかの例示は、中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、様々な専用人工知能(AI)コンピューティングチップ、様々な機械学習モデルアルゴリズムを実行するコンピューティングユニット、デジタルシグナルプロセッサ(DSP)、及びいずれの適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。コンピューティングユニット401は、以上に説明された各方法及び各処理、例えば深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法を実行する。例えば、いくつかの実施例において、深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法は、例えば記憶ユニット408などの機械読み取り可能な媒体に有形に含まれるコンピュータソフトウェアプログラムとして実装されてもよい。いくつかの実施例において、コンピュータプログラムの一部又は全部は、ROM402及び/又は通信ユニット409を介して機器400にロード及び/又はインストールされてもよい。コンピュータプログラムは、RAM403にロードされてコンピューティングユニット401によって実行されると、以上に説明された深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法の1つ又は複数のステップを実行することができる。代替のものとして、他の実施例において、コンピューティングユニット401は、他のいずれの適切な方式で(例えば、ファームウェアを用いて)、深層学習フレームワークに基づいて深層学習モデルを生成して適用する方法を実行するように配置されてもよい。
【0093】
本明細書の以上に説明されたシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップ(SOC)、複雑プログラマブル論理デバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組合せで実装され得る。これらの様々な実施形態は、1つ又は複数のコンピュータプログラムで実施されることを含み、ここで、当該1つ又は複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行及び/又は解釈されることができ、当該プログラマブルプロセッサは、専用又は汎用のプログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及び命令を受信し、当該記憶システム、当該少なくとも1つの入力装置、及び当該少なくとも1つの出力装置にデータ及び命令を送信することができる。
【0094】
本開示の方法を実施するためのプログラムコードは、1つ又は複数のプログラミング言語の任意の組み合わせで編集されてもよい。これらのプログラムコードは、汎用コンピュータ、専用コンピュータ、又は他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供されてもよく、プログラムコードがプロセッサ又はコントローラによって実行されると、フローチャート及び/又はブロック図で定義された機能/操作が実施される。プログラムコードは、完全に機械上で実行されても、部分的に機械上で実行されてもよく、独立型ソフトウェアパッケージとして、一部が機械上で実行されるとともに、一部がリモート機械上で実行されてもよいし、完全にリモート機械もしくはサーバ上で実行されてもよい。
【0095】
本開示の文脈において、機械読み取り可能な媒体は、命令実行システム、装置或いはデバイスの使用に提供されるか、又は命令実行システム、装置或いはデバイスと結合して使用されるプログラムを含むか、又は記憶することができる有形媒体であってもよい。機械読み取り可能な媒体は、機械読み取り可能な信号媒体又は機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子、磁気、光学、電磁、赤外線、又は半導体システム、装置、もしくはデバイス、又は上記内容の任意の適切な組み合わせを含み得るが、これらに限定されない。機械読み取り可能な記憶媒体のより具体的な例は、1つ又は複数のワイヤに基づく電気接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光記憶装置、磁気記憶装置、又は記内容のいずれの適切な組み合わせを含む。
【0096】
ユーザとのインタラクションを提供するために、コンピュータ上で本明細書に説明されるシステム及び技術を実施することができ、当該コンピュータは、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有し、ユーザは、当該キーボード及び当該ポインティングデバイスによって、コンピュータに入力することが可能になる。他の種類の装置も、ユーザとのインタラクションを提供することができ、例えば、ユーザに提供されるフィードバックは、任意の形態のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形態(音響入力と、音声入力と、触覚入力とを含む)でユーザからの入力を受信することができる。
【0097】
本明細書で説明するシステム及び技術は、バックエンド構成要素を含むコンピューティングシステム(例えば、データサーバとして)、又はミドルウェア構成要素を含むコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンド構成要素を含むコンピューティングシステム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータであり、ユーザは、当該グラフィカルユーザインタフェース又は当該ウェブブラウザにより本明細書で説明するシステム及び技術の実施形態とインタラクションする)、又はこのようなバックエンド構成要素、ミドルウェア構成要素、又はフロントエンド構成要素の任意の組み合わせを含むコンピューティングシステムに実装されることができる。システムの構成要素は、いずれの形態又は媒体のデジタルデータ通信(例えば、通信ネットワーク)を介して互いに接続されることができる。通信ネットワークの例示には、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)と、インターネットが含まれる。
【0098】
コンピュータシステムは、クライアントとサーバとを含み得る。クライアント及びサーバは、一般に、互いに遠く離れており、通常は、通信ネットワークを介してインタラクションする。対応するコンピュータ上で実行されるとともに、互いにクライアント-サーバの関係を有するコンピュータプログラムにより、クライアントとサーバとの関係が生成される。サーバは、クラウドサーバであってもよいし、分散型システムのサーバであってもよいし、ブロックチェーンと組み合わせたサーバであってもよい。
【0099】
上記に示される様々な形態のフローを用いて、ステップの並べ替え、追加、又は削除を行うことができることを理解されたい。例えば、本開示に記載された各ステップは、並列に実行されてもよいし、順次実行されてもよいし、異なる順序で実行されてもよく、本開示に開示される技術案が所望の結果を実現する限り、本明細書に限定されない。
【0100】
上記の具体的な実施形態は、本開示の保護範囲を制限するものではない。当業者は、設計要求及び他の要因に基づいて、様々な修正、コンビネーション、サブコンビネーション、及び置換を行うことができることを理解されたい。本開示の精神と原則の範囲内で行われる修正、等価置換及び改良などは、いずれも本開示の保護範囲に含まれるべきである。
図1
図2
図3
図4