(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-06
(45)【発行日】2022-01-21
(54)【発明の名称】機械学習システムのトレーニング方法及びトレーニングシステム
(51)【国際特許分類】
G06N 20/00 20190101AFI20220114BHJP
【FI】
G06N20/00
(21)【出願番号】P 2018546445
(86)(22)【出願日】2017-02-21
(86)【国際出願番号】 CN2017074318
(87)【国際公開番号】W WO2017148314
(87)【国際公開日】2017-09-08
【審査請求日】2020-02-21
(31)【優先権主張番号】201610125904.6
(32)【優先日】2016-03-04
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】510330264
【氏名又は名称】アリババ・グループ・ホールディング・リミテッド
【氏名又は名称原語表記】ALIBABA GROUP HOLDING LIMITED
(74)【代理人】
【識別番号】110001243
【氏名又は名称】特許業務法人 谷・阿部特許事務所
(72)【発明者】
【氏名】ジョウ ジュン
【審査官】多賀 実
(56)【参考文献】
【文献】特開2009-288933(JP,A)
【文献】特開2012-022558(JP,A)
【文献】特開2001-344590(JP,A)
【文献】浦 晃 ほか,「分散計算環境における並列パーセプトロンの将棋評価関数への適用」,情報処理学会研究報告 ゲーム情報学(GI) [online],情報処理学会,2014年03月10日,第2014-GI-31巻, 第6号,pp.1-8,[2014年3月11日検索],インターネット:<URL:https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=99285&item_no=1&attribute_id=1&file_no=1>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
機械学習システムのトレーニング方法であって、トレーニングデータは前記機械学習システムをトレーニングするために使用され、前記トレーニング方法は、
前記トレーニングデータを複数の作業マシンに割り当てることと、
各作業マシンによって割り当てられたトレーニングデータを複数のデータに分割し、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得することと、
各データを基に各作業マシンによって計算された前記ローカル重み及び前記ローカル損失関数値を集計し、現在の重み及び現在の損失関数値を取得することと、
前記現在の重み及び/または前記現在の損失関数値を使用して、モデル異常検出を行うことと、
前記モデル異常検出の結果が第1のタイプの異常であることに応じて、前回の集計の重み及び損失関数値を前記トレーニング用の機械学習システムに入力することと、
前記モデル異常検出の前記結果が第2のタイプの異常であることに応じて、前記現在の重み及び/または前記現在の損失関数値を第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、前記トレーニング用の機械学習システムにそれらを入力することと
を備える、前記方法。
【請求項2】
前記現在の重み及び/または前記現在の損失関数値を使用して前記モデル異常検出を行うことは、
前記現在の損失関数値が前回の集計の損失関数値のk倍より大きいかどうかを判定することと、
前記現在の損失関数値が前記前回の集計の前記損失関数値のk倍より大きいかどうかを判定することに応じて、前記モデル異常検出の結果が第1のタイプの異常であると判定することとを備える、
請求項1に記載のトレーニング方法。
【請求項3】
前記現在の重み及び/または前記現在の損失関数値を使用して前記モデル異常検出を行うことは、
前記現在の重みの要素の最大値及び/または最小値の絶対値が所定の第2の閾値より大きいかどうかを判定することと、
前記現在の重みの前記要素の前記最大値及び/または前記最小値の前記絶対値が前記所定の第2の閾値より大きいかどうかを判定することに応じて、前記モデル異常検出の前記結果が第2のタイプの異常であると判定することとを備える、
請求項1に記載のトレーニング方法。
【請求項4】
前記モデル異常検出の前記結果が前記第2のタイプの異常であることに応じて、前記現在の重み及び/または前記現在の損失関数値を前記第1の閾値内の前記現在の重み及び/または前記現在の損失関数値に修正することは、前記第1の閾値より大きい前記最大値及び/または前記最小値の前記絶対値を有する要素を前記第1の閾値ずつ減算し、各要素が前記第1の閾値内に収まる現在の重みを取得することを備える、
請求項3に記載のトレーニング方法。
【請求項5】
前記現在の重み及び/または前記現在の損失関数値を使用して前記モデル異常検出を行うことは、
第1
回目の集計から第n回目の集計までの損失関数値の平均値が第1
回目の集計の損失関数値より大きいかどうかを判定することと、
前記第1
回目の集計から第n回目の集計までの前記損失関数値の前記平均値が前記第1
回目の集計の前記損失関数値より大きいかどうかを判定することに応じて、前記モデル異常検出の前記結果が前記第1のタイプの異常であると判定することとを備える、
請求項1に記載のトレーニング方法。
【請求項6】
前記現在の重み及び/または前記現在の損失関数値を使用して前記モデル異常検出を行った後、前記方法はさらに、前記モデル異常検出の結果が正常であることに応じて、前記現在の重み及び/または前記現在の損失関数値を前記トレーニング用の機械学習システムに入力することを備える、
請求項1に記載のトレーニング方法。
【請求項7】
前記モデル異常検出の前記結果が正常であることに応じて、前記現在の重み及び/または前記現在の損失関数値を前記トレーニング用の機械学習システムに入力した後、前記方法はさらに、
前記トレーニングが終了したかどうかを判定することと、
前記トレーニングが終了したと判定することに応じて、モデルを生成することと、
前記トレーニングが終了していないと判定することに応じて、各データを基に各作業マシンによって計算された前記ローカル重み及び前記ローカル損失関数値の前記取得を再度繰り返すこととを備える、
請求項6に記載のトレーニング方法。
【請求項8】
前記トレーニングが終了したかどうかを判定することは、前記現在の損失関数値及び前記前回の集計の前記損失関数値が第3の閾値より小さいことを検出することに応じて、前記トレーニングが終了したことを判定することを備える、
請求項
7に記載のトレーニング方法。
【請求項9】
前記複数の作業マシンに前記トレーニングデータを割り当てる前に、前記方法はさらに、前記トレーニングデータを取得することを備え、前記トレーニングデータを前記複数の作業マシンに割り当てることはさらに、各作業マシンの識別に従って、前記複数の作業マシンに前記トレーニングデータを割り当てることを備える、
請求項1に記載のトレーニング方法。
【請求項10】
各データを基に各作業マシンによって計算された前記ローカル重み及び前記ローカル損失関数値を集計し、前記現在の重み及び前記現在の損失関数値を取得することは、
各データを基に各作業マシンによって計算されたローカル重みを合計して、前記現在の重みを取得することと、
各データを基に各作業マシンによって取得されたローカル損失関数値を合計して、前記
現在の損失関数値を取得することとを備える、
請求項1に記載のトレーニング方法。
【請求項11】
機械学習システムのトレーニングシステムであって、トレーニングデータは前記機械学習システムをトレーニングするために使用され、前記トレーニングシステムは、
前記トレーニングデータを複数の作業マシンに割り当てるように構成されるトレーニングデータ割り当てモジュールと、
各作業マシンに割り当てられたトレーニングデータを複数のデータに分割するように構成されるトレーニングデータ分割モジュールと、
各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得するように構成される取得モジュールと、
各データを基に各作業マシンによって計算された前記ローカル重み及び前記ローカル損失関数値を集計し、現在の重み及び現在の損失関数値を取得するように構成される集計モジュールと、
前記現在の重み及び/または前記現在の損失関数値を使用して、モデル異常検出を行うように構成される異常検出モジュールと、
前記モデル異常検出の結果が第1のタイプの異常であることに応じて、前回の集計の重み及び損失関数値を前記トレーニング用の機械学習システムに入力するように構成される第1の処理モジュールと、
前記モデル異常検出の前記結果が第2のタイプの異常であることに応じて、前記現在の重み及び/または前記現在の損失関数値を、第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、それらを前記トレーニング用の機械学習システムに入力するように構成される第2の処理モジュールと
を備える、前記トレーニングシステム。
【請求項12】
前記異常検出モジュールは、
前記現在の損失関数値が前回の集計の損失関数値のk倍より大きいかどうかを判定するように構成される第1の判定サブモジュールと、
前記現在の損失関数値が前記前回の集計の前記損失関数値のk倍より大きいかどうかを判定することに応じて、前記モデル異常検出の結果が第1のタイプの異常であると判定するように構成される第1の決定サブモジュールとを備える、
請求項11に記載のトレーニングシステム。
【請求項13】
前記異常検出モジュールは、
前記現在の重みの要素の最大値及び/または最小値の絶対値が所定の第2の閾値より大きいかどうかを判定するように構成される第2の判定サブモジュールと、
前記現在の重みの前記要素の前記最大値及び/または前記最小値の前記絶対値が前記所定の第2の閾値より大きいかどうかを判定することに応じて、前記モデル異常検出の前記結果が第2のタイプの異常であると判定するように構成される第2の決定サブモジュールとを備える、
請求項11に記載のトレーニングシステム。
【請求項14】
前記モデル異常検出の前記結果が前記第2のタイプの異常である場合、前記現在の重み及び/または前記現在の損失関数値を前記第1の閾値内の前記現在の重み及び/または前記現在の損失関数値に修正することは、所定の第2の閾値より大きい前記最大値及び/または前記最小値の前記絶対値を有する要素を前記第1の閾値ずつ減算し、各要素が前記第1の閾値内に収まる現在の重みを取得することを備える、
請求項13に記載のトレーニングシステム。
【請求項15】
前記異常検出モジュールは、
第1
回目の集計から第n回目の集計までの損失関数値の平均値が第1
回目の集計の損失関数値より大きいかどうかを判定するように構成される第3の判定サブモジュールと、
前記第1
回目の集計から第n回目の集計までの前記損失関数値の前記平均値が前記第1
回目の集計の前記損失関数値より大きいかどうかを判定することに応じて、前記モデル異常検出の前記結果が前記第1のタイプの異常であると判定するように構成される第3の決定サブモジュールとを備える、
請求項11に記載のトレーニングシステム。
【請求項16】
前記モデル異常検出の前記結果が正常であることに応じて、前記現在の重み及び/または前記現在の損失関数値を前記トレーニング用の機械学習システムに入力するように構成されるトレーニングモジュールをさらに備える、
請求項11に記載のトレーニングシステム。
【請求項17】
前記トレーニングが終了したかどうかを判定するように構成される終了判定モジュールと、
前記トレーニングが終了したと判定することに応じて、モデルを生成するように構成されるモデル生成モジュールと、
前記トレーニングが終了していないと判定することに応じて、各データを基に各作業マシンによって計算された前記ローカル重み及び前記ローカル損失関数値を再度取得することを行うように構成されるリターン実行モジュールとをさらに備える、
請求項16に記載のトレーニングシステム。
【請求項18】
前記終了判定モジュールは、前記現在の損失関数値及び前記前回の集計の前記損失関数値
が第3の閾値より小さいことを検出することに応じて、前記トレーニングが終了したことを判定するように構成される、
請求項
17に記載のトレーニングシステム。
【請求項19】
前記トレーニングデータを取得するように構成されるトレーニングデータ取得モジュールをさらに備え、前記トレーニングデータ割り当てモジュールは、各作業マシンの識別に従って、前記トレーニングデータを前記複数の作業マシンに割り当てるように構成される、
請求項11に記載のトレーニングシステム。
【請求項20】
前記集計モジュールは、
各データを基に各作業マシンによって計算されたローカル重みを合計して、前記現在の重みを取得するように構成される重み集積モジュールと、
各データを基に各作業マシンによって取得されたローカル損失関数値を合計して、前記
現在の損失関数値を取得するように構成される損失関数値集積モジュールとを備える、
請求項11に記載のトレーニングシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、ビッグデータ処理の技術分野に関し、特に、機械学習システムのトレーニング方法及びシステムに関する。
【背景技術】
【0002】
今日、優れたサービスをユーザに提供することは、全てのインターネット企業が達成しようとする目標である。このため、大半の企業は、機械学習を使用してユーザの好み及び習慣を把握し、個別サービスを提供している。例えば、各ウェブサイトは、ユーザの好みに応じて最大限にサービスを提供するために、機械学習システムを使用してユーザのオンライン行動データを収集し、異なる性別/年齢のユーザに異なる検索結果を提供することができる。
【0003】
上記の機械学習システムは、ユーザブラウジング/クリック/購入/トップポスティング/ポストへのコメント投稿等などの多数のユーザの行動データを収集し、いくつかの機械学習アルゴリズムを使用して機械学習システムをオフラインでトレーニングすることができる。予測モデルを取得した後、予測モデルをオンラインシステムに配置して、ユーザにサービスを提供する。例えば、Amazonの推奨システムでは、ユーザの好みを学習後、ユーザの過去の行動履歴(昨日の履歴及び昨日から2週間以外を含むなど)に基づいて、様々なユーザに様々な製品を推奨することができる。
【0004】
この方法は、過去のユーザの行動データを使用してオフラインでトレーニングを行ってモデルを取得するものであり、オフライン学習と呼ばれる。ただし、通常の状況では、ユーザの行動及び関心は1日以内に大幅に変化する可能性がある。オフライン学習システムでユーザによって生成された履歴はトレーニング用のシステムにすぐには追加できないため、当然ながら、オフライン学習はこの変化を把握することができない。
【0005】
オンライン学習とは、新しいトレーニングデータが受信される度に、モデルが継続的にモデル自体を更新することを意味し、したがって、より優れた結果を得ることができる。オンライン学習の精度は比較的高いが、データ収集期間が比較的短いため、モデルはデータ内のノイズの影響を受けやすく、これによりモデルのトレーニングが不安定になる。同時に、オンライン学習では非同期更新モデルの手法が採用されているため、トレーニングデータはモデルに継続的に流入し、モデルは常に更新されて学習する。モデルのトレーニングは、特定の制御不能な問題により中断することが多く、トレーニングが失敗することがある。その結果、使用可能なモデルの生成が失敗するため、オンラインサービスに影響が生じ、ユーザ体験が損なわれる。
【発明の概要】
【0006】
上記の問題に鑑みて、本出願の実施形態は、上記の問題を解決するか、または上記の問題を少なくとも部分的に解決する機械学習システムのトレーニング方法及びトレーニングシステムを提供するように提案される。
【0007】
上記の問題を解決するために、本出願は機械学習システムのトレーニング方法を開示し、これはトレーニングデータを使用して機械学習システムをトレーニングするものである。トレーニング方法は、トレーニングデータを複数の作業マシンに割り当てることと、各作業マシンによって割り当てられたトレーニングデータを複数のデータに分割することと、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得することと、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を集計して現在の重み及び現在の損失関数値を取得することと、現在の重み及び/または現在の損失関数値を使用してモデル異常検出を行うことと、モデル異常検出の結果が第1のタイプの異常であることに応じて、トレーニング用の機械学習システムに前回の集計の重み及び損失関数値を入力することと、モデル異常検出の結果が第2のタイプの異常であることに応じて、現在の重み及び/または現在の損失関数値を第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、トレーニング用の機械学習システムにそれらを入力することとを含む。
【0008】
本出願の実施形態は少なくとも以下の利点を有する。
【0009】
本出願の実施形態によって提案される機械学習システムのトレーニング方法及びトレーニングシステムによれば、各作業マシンが一度に1つのデータのみを処理し、データに従って計算されたローカル重み及びローカル損失関数値を集計し、これにより、各計算後に僅かな重み及び損失関数値を正確に更新し、オンライン学習が既存技術のデータ内のノイズの影響を受けやすいという問題を回避する効果を達成することができる。同時に、現在の重み及び/または現在の損失関数値を取得した後に異常検出が行われる。取得した現在の重み及び/または取得した現在の損失関数値が第1のタイプの異常または第2のタイプの異常に属することを検出することに応じて、この計算で計算される現在の重み及び/または現在の損失関数値は破棄されてよく、前回の集計から取得された重み及び損失関数値は機械学習モデルに入力されるか、あるいは、今回計算される現在の重み及び/または現在の損失関数値は修正され、各計算及び集計によって取得される重み及び損失関数値の更新は有効範囲に限定される。これにより、モデルトレーニングが不安定になることを回避し、データノイズに耐えるシステム機能が向上し、オンライン学習の機械学習システムの安定性を改善し、機械学習システムの正常出力を保証し、オンライン後の機械学習システムのサービス機能を改善する。
【図面の簡単な説明】
【0010】
【
図1】本出願の第1の実施形態による、機械学習システムのトレーニング方法のフロー図である。
【
図2】本出願の第2の実施形態による、機械学習システムのトレーニング方法のフロー図である。
【
図3】本出願の第3の実施形態による、機械学習システムのトレーニング方法のフロー図である。
【
図4】本出願の第4の実施形態による、機械学習システムのトレーニングシステムのブロック図である。
【
図5】本出願の第5の実施形態による、機械学習システムのトレーニングシステムのブロック図である。
【
図6】本出願の第6の実施形態による、機械学習システムのトレーニングシステムのブロック図である。
【発明を実施するための形態】
【0011】
本出願の実施形態における技術的解決策は、本出願の実施形態における図面を参照して以降に明確かつ完全に説明される。当然ながら、説明される実施形態は本出願の実施形態の一部を表すに過ぎず、全てを表すわけではない。当業者が本出願の実施形態を基に取得するその他全ての実施形態は、本開示の保護範囲内に該当する。
【0012】
本出願は、機械学習システムのトレーニング方法を提案する。トレーニング方法は、トレーニングデータを複数の作業マシンに最初に割り当てることと、各作業マシンによって割り当てられたトレーニングデータを複数のデータに分割することと、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得することと、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を集計して現在の重み及び現在の損失関数値を取得することと、現在の重み及び/または現在の損失関数値を使用してモデル異常検出を行うことと、モデル異常検出の結果が第1のタイプの異常であることに応じて、トレーニング用の機械学習システムに前回の集計の重み及び損失関数値を入力することと、モデル異常検出の結果が第2のタイプの異常であることに応じて、現在の重み及び/または現在の損失関数値を第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、トレーニング用の機械学習システムにそれらを入力することとを含む。
【0013】
第1の実施形態
本出願の第1の実施形態は、機械学習システムのトレーニング方法を提供する。
図1は、本出願の第1の実施形態による、機械学習システムのトレーニング方法のフロー図である。機械学習システムは、好適には分散型の機械学習システムであり、パラメータサーバを含む。パラメータサーバは、例えば、複数の作業マシン(作業者またはスレーブ)、複数のサーバ及びコーディネータを含んでよい。
図1に示すように、トレーニング方法は以下のステップを含む。
【0014】
ステップS101:トレーニングデータを複数の作業マシンに割り当てる。
【0015】
このステップでは、例えば、各作業マシンはその識別に従って各作業マシンのトレーニングデータを読み取ることができ、データは作業マシン間で重複しない。このステップは、例えば、コーディネータによって、各作業マシンの識別に従って各作業マシンに属するトレーニングデータに分割されてよく、それぞれのトレーニングデータは対応する作業マシンによって読み取られる。
【0016】
ステップS102:各作業マシンに割り当てられたトレーニングデータを複数のデータに分割する。
【0017】
このステップでは、例えば、各作業マシンは、各作業マシンに割り当てられたトレーニングデータを作業マシン自体のシステム構成を基に複数のデータに分割し、各作業マシンの各処理は1つのデータを基に処理を行う。換言すると、各作業マシンは一度に1つのデータのみを処理する。
【0018】
ステップS103:各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得する。
【0019】
このステップでは、例えば、各作業マシンにおいて、それぞれの作業マシンによって取得されたトレーニングデータのデータを基に、この計算におけるそれぞれの作業マシンに対応するローカル重み及びローカル損失関数値を計算して取得する。機械学習システムは複数の作業マシンを含むため、この計算において複数の作業マシンによって取得される多数のローカル重み及びローカル損失関数値はこのステップで取得することができる。
【0020】
ステップS104:各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を集計し、現在の重み及び現在の損失関数値を取得する。
【0021】
このステップでは、例えば、各作業マシンは、計算されたローカル重み及び計算されたローカル損失関数値をサーバに送信する。サーバは、現時点における複数の作業マシンによって計算された複数のローカル重み及びローカル損失関数値を集計し、現在の重み及び現在の損失関数値を取得する。集計の過程は、加算、加算後の平均化及びその他を含むがこれらに限定されず、本発明によって特に限定されるわけではない。
【0022】
ステップS103で各作業マシンによってローカル重み及びローカル損失関数値を計算した後、ローカル重み及びローカル損失関数値を非同期的にサーバに送信してよい。コーディネータは、ステップS104において、サーバを作動して複数のローカル重み及びローカル損失関数の集計を行わせてよい。
【0023】
ステップS105:現在の重み及び/または現在の損失関数値を使用して、モデル異常検出を行う。
【0024】
このステップでは、例えば、集計された現在の重み及び/または現在の損失関数値をモデル異常検出装置に入力し、所定の条件に従って、モデルが異常であるかどうかを検出してよい。検出結果は、例えば、正常、第1のタイプの異常及び第2のタイプの異常であり得る。この3つの場合について、対応する処理が個別に行われる。
【0025】
一実施形態では、モデル異常検出装置の入力値は、現在の重み、現在の損失関数値、前回の集計の重み及び前回の集計の損失関数値である。前回の集計の重みは、前回の計算で使用されたデータを基に各作業マシンによって計算された前回のローカル重み損失関数値を合計することによって取得される。前回の集計の損失関数値は、前回の計算で使用されたデータを基に各作業マシンによって計算された前回の損失関数値を合計することによって計算される。
【0026】
ステップS106:モデル異常検出の結果が第1のタイプの異常であることに応じて、前回の集計の重み及び前回の集計の損失関数値をトレーニング用の機械学習システムに入力する。
【0027】
このステップでは、例えば、検出結果が第1のタイプの異常である場合、現在の計算において各作業マシンが取得したローカル重み及びローカル損失関数値、集計後の現在の重み及び現在の損失関数値は無視されるか、削除される。前回の集計の重み及び前回の集計の損失関数値をトレーニング用の機械学習システムに入力する。
【0028】
ステップS107:モデル異常検出の結果が第2のタイプの異常であることに応じて、現在の重み及び/または現在の損失関数値を、第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、それらをトレーニング用の機械学習システムに入力する。
【0029】
このステップでは、例えば、検出結果が第2のタイプの異常であり、モデル微調整装置に入力することができ、現在の重み及び/または現在の損失関数値を所定の第1の閾値ずつ減算して、第1の閾値内にある現在の重み及び/または現在の損失関数値の各要素の値を取得し、これらはトレーニング用の機械学習システムに入力される。特に、現在の重み及び/または現在の損失関数値が、最初に所定の第1の閾値ずつ減算した後でも第1の閾値の範囲外である場合、各要素の値が第1の閾値の範囲内となるまで、現在の重み及び/または現在の損失関数値を第1の閾値ずつ減算する処理を1回以上行ってよい。
【0030】
本出願の第1の実施形態によって提案される機械学習システムのトレーニング方法によれば、各作業マシンが一度に1つのデータのみを処理し、データに従って計算されたローカル重み及びローカル損失関数値を集計し、これにより、各計算後に僅かな重み及び損失関数値を正確に更新し、オンライン学習が既存技術のデータ内のノイズの影響を受けやすいという問題を回避する効果を達成することができる。同時に、現在の重み及び/または現在の損失関数値を取得した後に異常検出が行われる。取得した現在の重み及び/または取得した現在の損失関数値が第1のタイプの異常または第2のタイプの異常に属することを検出することに応じて、この計算で計算される現在の重み及び/または現在の損失関数値は破棄されてよく、前回の集計から取得された重み及び損失関数値は機械学習モデルに入力されるか、あるいは、今回計算される現在の重み及び/または現在の損失関数値は修正され、各計算及び集計によって取得される重み及び損失関数値の更新は有効範囲に限定される。これにより、モデルトレーニングが不安定になることを回避し、データノイズに耐えるシステム機能が向上し、オンライン学習の機械学習システムの安定性を改善し、機械学習システムの正常出力を保証し、オンライン後の機械学習システムのサービス機能を改善する。
【0031】
第2の実施形態
本出願の第2の実施形態は、機械学習システムのトレーニング方法を提供する。
図2は、本出願の第2の実施形態による、機械学習システムのトレーニング方法のフロー図である。機械学習システムは、好適には分散型の機械学習システムである。
図2に示すように、トレーニング方法は以下のステップを含む。
【0032】
S201:トレーニングデータを複数の作業マシンに割り当てる。
【0033】
S202:各作業マシンに割り当てられたトレーニングデータを複数のデータに分割する。
【0034】
S203:各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得する。
【0035】
S204:各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を集計し、現在の重み及び現在の損失関数値を取得する。
【0036】
S205:現在の重み及び/または現在の損失関数値を使用して、モデル異常検出を行う。
【0037】
S206:モデル異常検出の結果が第1のタイプの異常であることに応じて、前回の集計の重み及び前回の集計の損失関数値をトレーニング用の機械学習システムに入力する。
【0038】
S207:モデル異常検出の結果が第2のタイプの異常であることに応じて、現在の重み及び/または現在の損失関数値を、第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、それらをトレーニング用の機械学習システムに入力する。
【0039】
上記のステップS201~S207の部分は第1の実施形態のステップS101~S107の部分と同じであり、本明細書には繰り返して説明しない。
【0040】
本実施形態では、ステップS205、つまり、現在の重み及び/または現在の損失関数値を使用してモデル異常検出を行うことは以下を含む。
【0041】
サブステップS205a:現在の損失関数値が前回の集計の損失関数値のk倍より大きいかどうかを判定する。
【0042】
このサブステップでは、現在の損失関数値が異常であるかどうかを判定するための基準として、値kを事前に設定することができる。
【0043】
サブステップS205b:現在の損失関数値が前回の集計の損失関数値のk倍より大きいかどうかを判定することに応じて、モデル異常検出の結果が第1のタイプの異常であると判定する。
【0044】
このサブステップでは、現在の損失関数値が前回の集計の損失関数値のk倍より大きいと判定することに応じて、今回計算されて集計された現在の損失関数値を第1のタイプの異常、つまり、重大な異常として考慮することができる。モデルにこのような異常があると判定することに応じて、今回計算された現在の重み及び現在の損失関数値をそのまま破棄することができる。
【0045】
本実施形態では、ステップS205、つまり、現在の重み及び/または現在の損失関数値を使用してモデル異常検出を行うことはさらに以下を含んでよい。
【0046】
サブステップS205c:現在の重みの要素の最大値及び/または最小値の絶対値が所定の第2の閾値より大きいかどうかを判定する。
【0047】
このサブステップでは、現在の重みはN要素から構成されるベクトルである。現在の重みを集計した後、ベクトルの各要素(すなわち、各次元)の最大値及び/または最小値の絶対値が所定の第2の閾値より大きいかどうかに関して判定を行うことができる。第2の閾値は事前に指定することができる。
【0048】
サブステップS205d:現在の重みの要素の最大値及び/または最小値の絶対値が所定の第2の閾値より大きいかどうかを判定することに応じて、モデル異常検出の結果が第2のタイプの異常であると判定する。
【0049】
このサブステップでは、現在の重みの要素の最大値及び最小値のうちの少なくとも1つの絶対値が所定の第2の閾値より大きいと判定することに応じて、モデルには第2のタイプの異常、つまり、比較的軽微な異常があると考えられる。現在の計算で計算された現在の重み及び現在の損失関数値は、修正によって第1の閾値内の現在の重み及び/または現在の損失関数値に修正されてよく、これらはトレーニング用の機械学習システムに入力される。
【0050】
好適には、現在の重み及び/または現在の損失関数値を第1の閾値内のローカル重み及び/またはローカル損失関数値に修正することは、所定の第2の閾値より大きい最大値及び/または最小値の絶対値を有する要素(複数可)を第2の閾値ずつ減算し、各要素が第2の閾値内に収まる現在の重みを取得することを含んでよい。
【0051】
本実施形態では、ステップS205、つまり、現在の重み及び/または現在の損失関数値を使用してモデル異常検出を行うことはさらに以下を含んでよい。
【0052】
サブステップS205e:第1のn集計の損失関数値の平均値が第1の集計の損失関数値より大きいかどうかを判定する。
【0053】
このサブステップでは、第1のn集計から取得された損失関数値が、例えば、特定の記憶領域に記憶され、第1のn集計の損失関数値の平均値を計算することができる。値が第1の集計から取得された損失関数値より大きいかどうかに関する判定が行われる。
【0054】
サブステップS205f:第1のn集計の損失関数値の平均値が第1の集計の損失関数値より大きいと判定することに応じて、モデル異常検出の結果が第1のタイプの異常であると判定する。
【0055】
このサブステップでは、第1のn集計の損失関数値の平均値が第1の集計の損失関数値より大きいと判定することに応じて、モデルには第1のタイプの異常、つまり、比較的重大な異常があると考えられてよい。モデルにこのような異常があると判定することに応じて、今回計算された現在の重み及び現在の損失関数値をそのまま破棄することができる。
【0056】
本出願の第2の実施形態によって提案される機械学習システムのトレーニング方法によれば、各作業マシンが一度に1つのデータのみを処理し、データに従って計算されたローカル重み及びローカル損失関数値を集計し、これにより、各計算後に僅かな重み及び損失関数値を正確に更新し、オンライン学習が既存技術のデータ内のノイズの影響を受けやすいという問題を回避する効果を達成することができる。同時に、現在の重み及び/または現在の損失関数値を取得した後に異常検出が行われる。取得した現在の重み及び/または取得した現在の損失関数値が第1のタイプの異常または第2のタイプの異常に属することを検出することに応じて、この計算で計算される現在の重み及び/または現在の損失関数値は破棄されてよく、前回の集計から取得された重み及び損失関数値は機械学習モデルに入力されるか、あるいは、今回計算される現在の重み及び/または現在の損失関数値は修正され、各計算及び集計によって取得される重み及び損失関数値の更新は有効範囲に限定される。これにより、モデルトレーニングが不安定になることを回避し、データノイズに耐えるシステム機能が向上し、オンライン学習の機械学習システムの安定性を改善し、機械学習システムの正常出力を保証し、オンライン後の機械学習システムのサービス機能を改善する。
【0057】
第3の実施形態
本出願の第3の実施形態は、機械学習システムのトレーニング方法を提供する。
図3は、本出願の第3の実施形態による、機械学習システムのトレーニング方法のフロー図である。機械学習システムは、好適には分散型の機械学習システムである。
図3に示すように、トレーニング方法は以下のステップを含む。
【0058】
S301:トレーニングデータを複数の作業マシンに割り当てる。
【0059】
S302:各作業マシンに割り当てられたトレーニングデータを複数のデータに分割する。
【0060】
S303:各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得する。
【0061】
S304:各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を集計し、現在の重み及び現在の損失関数値を取得する。
【0062】
S305:現在の重み及び/または現在の損失関数値を使用して、モデル異常検出を行う。
【0063】
S306:モデル異常検出の結果が第1のタイプの異常であることに応じて、前回の集計の重み及び前回の集計の損失関数値をトレーニング用の機械学習システムに入力する。
【0064】
S307:モデル異常検出の結果が第2のタイプの異常であることに応じて、現在の重み及び/または現在の損失関数値を、第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、それらをトレーニング用の機械学習システムに入力する。
【0065】
上記のステップS301~S307の部分は第1の実施形態のステップS101~S107の部分と同じであり、本明細書には繰り返して説明しない。
【0066】
本実施形態では、ステップS205の後、つまり、現在の重み及び/または現在の損失関数値を使用してモデル異常検出を行った後、トレーニング方法はさらに以下を含んでよい。
【0067】
S308。モデル異常検出の結果が正常であることに応じて、現在の重み及び/または現在の損失関数値をトレーニング用の機械学習システムに入力する。
【0068】
本実施形態では、現在の計算及び集計後に現在の重み及び現在の損失関数値においてモデルが正常である場合、現在の重み及び/または現在の損失関数値は有効な計算結果として機能してよく、トレーニング用の機械学習システムに入力される。
【0069】
さらに、好適な実施形態では、ステップS308の後、つまり、モデル異常検出の結果が正常であることに応じて、現在の重み及び/または現在の損失関数値をトレーニング用の機械学習システムに入力した後、方法はさらに以下を含む。
【0070】
S309:トレーニングが終了したかどうかを判定する。
【0071】
このステップでは、例えば、現在の損失関数値及び前回の集計後の損失関数値が第3の閾値より小さいことを検出することに応じて、トレーニングが終了したと判定する。第3の閾値はシステムによって検出される閾値であってよい。
【0072】
しかしながら、当業者であれば、判定ステップは、第3の閾値との差異を比較することによって行われることに限定されないと明確に理解することができる。トレーニングが終了したかどうかを確認するための様々な方法が当技術分野に存在し、その詳細は本明細書で完全に説明するわけではない。
【0073】
S310:トレーニングが終了したと判定することに応じて、モデルを生成する。
【0074】
このステップでは、トレーニングが終了した、つまり、モデルが既に使用可能であると判定することに応じて、モデルが生成される。例えば、モデルをオンラインで適用することができる。
【0075】
S311:トレーニングが終了していないと判定することに応じて、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を再度取得することを行う。
【0076】
このステップでは、例えば、現在の損失関数値及び前回の集計の損失関数値が第3の閾値より大きいことを検出することに応じて、トレーニングが終了していないと判定される。この場合、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値の取得は繰り返し行われてよい。換言すると、各作業マシンは、使用要件を満たすモデルが取得されるまで、他のデータを基にローカル重み及びローカル損失関数値を計算し続け、次の集計(複数可)で取得される現在の重み(複数可)及び現在の損失関数値(複数可)にトレーニング方法が繰り返される。
【0077】
追加的には、第1~第3の実施形態に開示された解決策において、好適には、複数の作業マシンにトレーニングデータを割り当てる前に、方法はトレーニングデータを取得することをさらに含む。
【0078】
トレーニングデータを複数の作業マシンに割り当てることは、各作業マシンの識別に従って、複数の作業マシンにトレーニングデータを割り当てることをさらに含む。
【0079】
さらに、第1~第3の実施形態に開示された解決策において、好適には、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を集計して現在の重み及び現在の損失関数値を取得することは、各データを基に各作業マシンによって計算されたローカル重みを合計して現在の重みを取得することと、各データを基に各作業マシンによって取得されたローカル損失関数値を合計して現在のローカル損失関数を取得することとを含むことができる。
【0080】
本出願の第3の実施形態によって提案される機械学習システムのトレーニング方法によれば、各作業マシンが一度に1つのデータのみを処理し、データに従って計算されたローカル重み及びローカル損失関数値を集計し、これにより、各計算後に僅かな重み及び損失関数値を正確に更新し、オンライン学習が既存技術のデータ内のノイズの影響を受けやすいという問題を回避する効果を達成することができる。同時に、現在の重み及び/または現在の損失関数値を取得した後に異常検出が行われる。取得した現在の重み及び/または取得した現在の損失関数値が第1のタイプの異常または第2のタイプの異常に属することを検出することに応じて、この計算で計算される現在の重み及び/または現在の損失関数値は破棄されてよく、前回の集計から取得された重み及び損失関数値は機械学習モデルに入力されるか、あるいは、今回計算される現在の重み及び/または現在の損失関数値は修正され、各計算及び集計によって取得される重み及び損失関数値の更新は有効範囲に限定される。これにより、モデルトレーニングが不安定になることを回避し、データノイズに耐えるシステム機能が向上し、オンライン学習の機械学習システムの安定性を改善し、機械学習システムの正常出力を保証し、オンライン後の機械学習システムのサービス機能を改善する。
【0081】
第4の実施形態
本出願の第4の実施形態は、機械学習システムのトレーニングシステムを提供する。
図4は、本出願の第4の実施形態による、機械学習システムのトレーニングシステムのブロック図である。機械学習システムは、好適には分散型の機械学習システムである。
図4に示すように、トレーニングシステム400は、トレーニングデータを複数の作業マシンに割り当てるように構成されるトレーニングデータ割り当てモジュール401と、各作業マシンに割り当てられたトレーニングデータを複数のデータに分割するように構成されるトレーニングデータ分割モジュール402と、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得するように構成される取得モジュール403と、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を集計して現在の重み及び現在の損失関数値を取得するように構成される集計モジュール404と、現在の重み及び/または現在の損失関数値を使用してモデル異常検出を行うように構成される異常検出モジュール405と、モデル異常検出の結果が第1のタイプの異常であることに応じて、トレーニング用の機械学習システムに前回の集計の重み及び損失関数値を入力するように構成される第1の処理モジュール406と、モデル異常検出の結果が第2のタイプの異常であることに応じて、現在の重み及び/または現在の損失関数値を第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、トレーニング用の機械学習システムにそれらを入力するように構成される第2の処理モジュール407とを含む。
【0082】
本出願の第4の実施形態によって提案される機械学習システムのトレーニングシステムによれば、各作業マシンが一度に1つのデータのみを処理し、データに従って計算されたローカル重み及びローカル損失関数値を集計し、これにより、各計算後に僅かな重み及び損失関数値を正確に更新し、オンライン学習が既存技術のデータ内のノイズの影響を受けやすいという問題を回避する効果を達成することができる。同時に、現在の重み及び/または現在の損失関数値を取得した後に異常検出が行われる。取得した現在の重み及び/または取得した現在の損失関数値が第1のタイプの異常または第2のタイプの異常に属することを検出することに応じて、この計算で計算される現在の重み及び/または現在の損失関数値は破棄されてよく、前回の集計から取得された重み及び損失関数値は機械学習モデルに入力されるか、あるいは、今回計算される現在の重み及び/または現在の損失関数値は修正され、各計算及び集計によって取得される重み及び損失関数値の更新は有効範囲に限定される。これにより、モデルトレーニングが不安定になることを回避し、データノイズに耐えるシステム機能が向上し、オンライン学習の機械学習システムの安定性を改善し、機械学習システムの正常出力を保証し、オンライン後の機械学習システムのサービス機能を改善する。
【0083】
第5の実施形態
本出願の第5の実施形態は、機械学習システムのトレーニングシステムを提供する。
図5は、本出願の第5の実施形態による、機械学習システムのトレーニングシステムのブロック図である。機械学習システムは、好適には分散型の機械学習システムである。
図5に示すように、トレーニングシステム500は、トレーニングデータを複数の作業マシンに割り当てるように構成されるトレーニングデータ割り当てモジュール501と、各作業マシンに割り当てられたトレーニングデータを複数のデータに分割するように構成されるトレーニングデータ分割モジュール502と、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得するように構成される取得モジュール503と、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を集計して現在の重み及び現在の損失関数値を取得するように構成される集計モジュール504と、現在の重み及び/または現在の損失関数値を使用してモデル異常検出を行うように構成される異常検出モジュール505と、モデル異常検出の結果が第1のタイプの異常であることに応じて、トレーニング用の機械学習システムに前回の集計の重み及び損失関数値を入力するように構成される第1の処理モジュール506と、モデル異常検出の結果が第2のタイプの異常であることに応じて、現在の重み及び/または現在の損失関数値を第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、トレーニング用の機械学習システムにそれらを入力するように構成される第2の処理モジュール507とを含む。
【0084】
実施形態では、異常検出モジュール505は、現在の損失関数値が前回の集計の損失関数値のk倍より大きいかどうかを判定するように構成される第1の判定サブモジュール505aと、現在の損失関数値が前回の集計の損失関数値のk倍より大きいかどうかを判定することに応じて、モデル異常検出の結果が第1のタイプの異常であると判定するように構成される第1の決定サブモジュール505bと、現在の重みの要素の最大値及び/または最小値の絶対値が所定の第2の閾値より大きいかどうかを判定するように構成される第2の判定サブモジュール505cと、現在の重みの要素の最大値及び/または最小値の絶対値が所定の第2の閾値より大きいかどうかを判定することに応じて、モデル異常検出の結果が第2のタイプの異常であると判定するように構成される第2の決定サブモジュール505dとを含む。
【0085】
異常検出モジュール505はさらに、第1のn集計の損失関数値の平均値が第1の集計の損失関数値より大きいかどうかを判定するように構成される第3の判定サブモジュール505eと、第1のn集計の損失関数値の平均値が第1の集計の損失関数値より大きいと判定することに応じて、モデル異常検出の結果が第1のタイプの異常であると判定するように構成される第3の決定サブモジュール505fとを含む。
【0086】
好適には、モデル異常検出の結果が第2のタイプの異常である場合、現在の重み及び/または現在の損失関数値を第2の閾値内の現在の重み及び/または現在の損失関数値に修正することは、所定の第2の閾値より大きい最大値及び/または最小値の絶対値を有する要素を第2の閾値ずつ減算し、各要素が第2の閾値内に収まる現在の重みを取得することを含む。
【0087】
本出願の第5の実施形態によって提案される機械学習システムのトレーニングシステムによれば、各作業マシンが一度に1つのデータのみを処理し、データに従って計算されたローカル重み及びローカル損失関数値を集計し、これにより、各計算後に僅かな重み及び損失関数値を正確に更新し、オンライン学習が既存技術のデータ内のノイズの影響を受けやすいという問題を回避する効果を達成することができる。同時に、現在の重み及び/または現在の損失関数値を取得した後に異常検出が行われる。取得した現在の重み及び/または取得した現在の損失関数値が第1のタイプの異常または第2のタイプの異常に属することを検出することに応じて、この計算で計算される現在の重み及び/または現在の損失関数値は破棄されてよく、前回の集計から取得された重み及び損失関数値は機械学習モデルに入力されるか、あるいは、今回計算される現在の重み及び/または現在の損失関数値は修正され、各計算及び集計によって取得される重み及び損失関数値の更新は有効範囲に限定される。これにより、モデルトレーニングが不安定になることを回避し、データノイズに耐えるシステム機能が向上し、オンライン学習の機械学習システムの安定性を改善し、機械学習システムの正常出力を保証し、オンライン後の機械学習システムのサービス機能を改善する。
【0088】
第6の実施形態
本出願の第6の実施形態は、機械学習システムのトレーニングシステムを提供する。
図6は、本出願の第6の実施形態による、機械学習システムのトレーニングシステムのブロック図である。機械学習システムは、好適には分散型の機械学習システムである。
図6に示すように、トレーニングシステムは、トレーニングデータを複数の作業マシンに割り当てるように構成されるトレーニングデータ割り当てモジュール601と、各作業マシンに割り当てられたトレーニングデータを複数のデータに分割するように構成されるトレーニングデータ分割モジュール602と、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を取得するように構成される取得モジュール603と、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を集計して現在の重み及び現在の損失関数値を取得するように構成される集計モジュール604と、現在の重み及び/または現在の損失関数値を使用してモデル異常検出を行うように構成される異常検出モジュール605と、モデル異常検出の結果が第1のタイプの異常であることに応じて、トレーニング用の機械学習システムに前回の集計の重み及び損失関数値を入力するように構成される第1の処理モジュール606と、モデル異常検出の結果が第2のタイプの異常であることに応じて、現在の重み及び/または現在の損失関数値を第1の閾値内にある現在の重み及び/または現在の損失関数値に修正し、トレーニング用の機械学習システムにそれらを入力するように構成される第2の処理モジュール607とを含む。
【0089】
本実施形態では、システムはさらに、モデル異常検出の結果が正常であることに応じて、現在の重み及び/または現在の損失関数値をトレーニング用の機械学習システムに入力するように構成されるトレーニングモジュール608を含む。
【0090】
本実施形態では、システムはさらに、トレーニングが終了したかどうかを判定するように構成される終了判定モジュール609と、トレーニングが終了したと判定することに応じて、モデルを生成するように構成されるモデル生成モジュール610と、トレーニングが終了していないと判定することに応じて、各データを基に各作業マシンによって計算されたローカル重み及びローカル損失関数値を再度取得することを行うように構成されるリターン実行モジュール611とを含む。
【0091】
本実施形態では、終了判定モジュールは、現在の損失関数値及び前回の集計の損失関数値が第3の閾値より小さいことを検出することに応じて、トレーニングが終了したことを判定するように構成される。
【0092】
本実施形態では、システムはさらに、トレーニングデータを取得するように構成されるトレーニングデータ取得モジュールを含んでよい。トレーニングデータ割り当てモジュールは、各作業マシンの識別に従って、トレーニングデータを複数の作業マシンに割り当てるように構成される。
【0093】
好適には、集計モジュールは、各データを基に各作業マシンによって計算されたローカル重みを合計して現在の重みを取得するように構成される重み集積モジュールと、各データを基に各作業マシンによって取得されたローカル損失関数値を合計して現在のローカル損失関数を取得するように構成される損失関数値集積モジュールとを含む。
【0094】
本出願の第6の実施形態によって提案される機械学習システムのトレーニングシステムによれば、各作業マシンが一度に1つのデータのみを処理し、データに従って計算されたローカル重み及びローカル損失関数値を集計し、これにより、各計算後に僅かな重み及び損失関数値を正確に更新し、オンライン学習が既存技術のデータ内のノイズの影響を受けやすいという問題を回避する効果を達成することができる。同時に、現在の重み及び/または現在の損失関数値を取得した後に異常検出が行われる。取得した現在の重み及び/または取得した現在の損失関数値が第1のタイプの異常または第2のタイプの異常に属することを検出することに応じて、この計算で計算される現在の重み及び/または現在の損失関数値は破棄されてよく、前回の集計から取得された重み及び損失関数値は機械学習モデルに入力されるか、あるいは、今回計算される現在の重み及び/または現在の損失関数値は修正され、各計算及び集計によって取得される重み及び損失関数値の更新は有効範囲に限定される。これにより、モデルトレーニングが不安定になることを回避し、データノイズに耐えるシステム機能が向上し、オンライン学習の機械学習システムの安定性を改善し、機械学習システムの正常出力を保証し、オンライン後の機械学習システムのサービス機能を改善する。
【0095】
実施形態の方法と基本的に類似しているため、装置の実施形態の説明は比較的簡素であり、関連部分は実施形態の方法の説明を参照することができる。
【0096】
本明細書における各実施形態は漸進的に説明されており、各実施形態は他の実施形態とは異なる点を強調している。実施形態の中で同一または類似の部分を相互に参照することができる。
【0097】
当業者は、本出願の実施形態が、方法、装置またはコンピュータプログラム製品として提供可能であることを理解すべきである。したがって、本出願の実施形態は、完全なハードウェアの実施形態、完全なソフトウェアの実施形態またはソフトウェアとハードウェアの組み合わせである実施形態の形態をとってよい。さらに、本出願の実施形態は、コンピュータが使用可能なコードを内蔵した1つ以上のコンピュータが使用可能な記憶媒体(これには、磁気ストレージデバイス、CD-ROM、光ストレージデバイスなどが含まれるが、これらに限定されない)の形態で実装されるコンピュータプログラム製品の形態をとってよい。
【0098】
典型的な構成では、計算デバイスは1つ以上のプロセッサ(CPU)、入出力インターフェース、ネットワークインターフェース及びメモリを含む。メモリは、例えば、不揮発性メモリ、ランダムアクセスメモリ(RAM)及び/または、例えば、読み出し専用メモリ(ROM)もしくはフラッシュRAMなどの不揮発性メモリなどのコンピュータ可読媒体の形態を含んでよい。メモリはコンピュータ可読媒体の一例である。コンピュータ可読媒体は、揮発性または不揮発性タイプ、取り外し可能または取り外し不可能な媒体を含んでよく、任意の方法または技術を使用して情報の記憶を実現してよい。情報は、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータを含んでよい。コンピュータ記憶媒体の例は、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、他のタイプのランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、電気的に消去可能でプログラム可能な読み出し専用メモリ(EEPROM)、クイックフラッシュメモリもしくは他の内部記憶技術、コンパクトディスク読み出し専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)もしくは他の光ストレージ、磁気カセットテープ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または計算デバイスによってアクセスされ得る情報を記憶するために使用され得る任意の他の非伝送媒体を含むが、これらに限定されるものではない。本明細書に定義される通り、コンピュータ可読媒体は変調されたデータ信号及び搬送波などの一時的な媒体を含まない。
【0099】
本出願の実施形態は、本出願の実施形態による方法、端末デバイス(システム)及びコンピュータプログラム製品のフロー図及び/またはブロック図を参照して説明される。フロー図及び/またはブロック図の各フロー及び/または各ブロック、ならびにフロー図及び/またはブロック図のフロー及び/またはブロックの組み合わせは、コンピュータプログラム命令によって実施され得ることを理解すべきである。コンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、組込みプロセッサまたはマシンを製造する他のプログラム可能なデータ処理端末デバイスのプロセッサに提供されてよく、そのため、コンピュータまた他のプログラム可能なデータ処理端末デバイスのプロセッサによる命令の実行を通じて、フロー図の1つ以上のフロー及び/またはブロック図の1つ以上のブロックで指定される機能を実施するための装置が作成される。
【0100】
これらのコンピュータプログラム命令は、コンピュータまたは他のプログラム可能なデータ処理端末デバイスに特定の方法で動作するように指示することが可能なコンピュータ可読ストレージデバイスに記憶されてもよく、これによって、コンピュータ可読ストレージデバイスに記憶される命令は、命令装置を含む製品を製造する。命令装置は、フロー図の1つ以上のフロー及び/またはブロック図の1つ以上のブロックに指定される機能を実施する。
【0101】
これらのコンピュータプログラム命令は、コンピュータまたは他のプログラム可能なデータ処理端末デバイス上にロードされてもよく、これにより、一連の動作ステップがコンピュータまたは他のプログラム可能な端末デバイス上で行われ、コンピュータ実施プロセスを生成する。コンピュータまたは他のプログラム可能な端末デバイスで実行される命令は、フロー図の1つ以上のフロー及び/またはブロック図の1つ以上のブロックに指定される機能を実施するステップを提供する。
【0102】
本出願の実施形態の好適な実施形態について説明したが、当業者は、基本的な発明概念を学べば、これらの実施形態に追加の変更及び修正を加えることができる。したがって、添付の特許請求の範囲は、本出願の実施形態の範囲内に該当する好適な実施形態ならびに全ての変更及び修正を含むものとして解釈されることが意図される。
【0103】
最後に、第1の及び第2のなどの関係語は、本明細書において、あるエンティティまたは動作を他のエンティティまたは動作と区別するためにのみ使用され、これらの動作またはエンティティ間の任意のそのような関係もしくは順序の存在を必ずしも必要としたり示唆したりするわけではないことも留意すべきである。さらに、用語「include(含む)」、「contain(含む)」またはそれらの任意の変形例は、非排他的包含をカバーすることを意図する。したがって、一連の要素を含むプロセス、方法、商品または端末デバイスは、これらの要素だけでなく、明示的に列挙されていない他の要素も含むか、あるいはこのようなプロセス、方法、商品または端末デバイスに固有の要素も含む。それ以上の制約なく、「・・・を含む」の文により定義される要素は、要素を含むプロセス、方法、商品または端末デバイスが別の同一要素をさらに含むことを排除しない。
【0104】
本出願に提供される機械学習システムのトレーニング方法及びトレーニングシステムを上記に詳細に説明した。本明細書は本出願の趣旨及び実装を例示するために特定の例を使用している。上記の実施形態の説明は、本出願の方法及び主要な概念の理解を容易にするために使用されるにすぎない。同時に、当業者は、本出願の概念に基づいて、特定の実装及び適用範囲を変更することができる。要約すると、本明細書の内容は、本出願に対する制限として解釈されるべきではない。