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

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

▶ ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングの特許一覧

特許7638708損失関数に基づいてトレーニングされたモデルの処理
<>
  • 特許-損失関数に基づいてトレーニングされたモデルの処理 図1
  • 特許-損失関数に基づいてトレーニングされたモデルの処理 図2
  • 特許-損失関数に基づいてトレーニングされたモデルの処理 図3
  • 特許-損失関数に基づいてトレーニングされたモデルの処理 図4
  • 特許-損失関数に基づいてトレーニングされたモデルの処理 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-02-21
(45)【発行日】2025-03-04
(54)【発明の名称】損失関数に基づいてトレーニングされたモデルの処理
(51)【国際特許分類】
   G06N 20/00 20190101AFI20250225BHJP
【FI】
G06N20/00
【請求項の数】 13
【外国語出願】
(21)【出願番号】P 2021000853
(22)【出願日】2021-01-06
(65)【公開番号】P2021111399
(43)【公開日】2021-08-02
【審査請求日】2023-10-18
(31)【優先権主張番号】20150536
(32)【優先日】2020-01-07
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100135633
【弁理士】
【氏名又は名称】二宮 浩康
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】ムハンマド ビラル ザファール
(72)【発明者】
【氏名】クリストフ ツィマー
(72)【発明者】
【氏名】マヤ リタ ルドルフ
(72)【発明者】
【氏名】マーティン シーク
(72)【発明者】
【氏名】ゼバスティアン ゲアヴィン
【審査官】大倉 崚吾
(56)【参考文献】
【文献】米国特許第10397266(US,B1)
【文献】特開2017-038924(JP,A)
【文献】特開2018-116584(JP,A)
【文献】米国特許出願公開第2019/0095764(US,A1)
【文献】国際公開第2015/093068(WO,A1)
【文献】特開2017-138929(JP,A)
【文献】国際公開第2015/190203(WO,A1)
【文献】米国特許出願公開第2018/0017690(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
G06F 21/60
(57)【特許請求の範囲】
【請求項1】
損失関数に基づいてトレーニングされたモデルを処理するためのシステム(100)であって、
前記モデルは、入力インスタンスを考慮して、モデル出力を提供するように構成されており、前記モデルは、目的関数を反復して最適化することによってトレーニングデータセットによりトレーニングされており、前記目的関数は、前記トレーニングデータセットの各トレーニングインスタンスに対する前記損失関数に従った各損失を含み、
前記システムは、
・前記モデル(030)と、前記モデルがトレーニングされたトレーニングデータセット(040)とにアクセスするように構成されているデータインタフェース(120)と、
・前記トレーニングデータセットの1つ又は複数の不所望なトレーニングインスタンスを識別する削除要求メッセージを受け取るように構成されている削除要求インタフェース(160)と、
・前記削除要求メッセージを受け取ると、前記モデルを、前記1つ又は複数の不所望なトレーニングインスタンスから独立させるように構成されているプロセッササブシステム(140)と、
を含み、前記独立は、
・残余のデータセットを取得するために、前記1つ又は複数の不所望なトレーニングインスタンスを前記トレーニングデータセットから削除することと、
・前記残余のデータセットに対する適応モデルを決定することと、
によって行われ、前記決定は、
・前記トレーニングされたモデルのパラメータのセットに基づいて、前記適応モデルのパラメータのセットを初期化することと、
・前記残余のデータセットに関して前記目的関数を最適化することによって、前記適応モデルの前記パラメータのセットを反復して適応させることと、
によって行われ
前記プロセッササブシステム(140)は、前記適応モデルの前記パラメータのセットの前記反復適応化の反復において、前記パラメータのセットに関する前記目的関数に対する1つ又は複数の二次導関数を決定するように構成されており、前記パラメータのセットの適応化は、決定された前記二次導関数に基づいており、
前記プロセッササブシステム(140)は、前記適応モデルの前記パラメータのセットの前記反復適応化のさらなる反復において、一次最適化方法を使用して前記パラメータのセットを適応させるように構成されている、
損失関数に基づいてトレーニングされたモデルを処理するためのシステム(100)。
【請求項2】
前記トレーニングデータセットは、各ユーザから収集された複数のトレーニングインスタンスを含み、前記削除要求メッセージは、トレーニングインスタンスが前記トレーニングデータセットから削除されるべきユーザを示す、
請求項1に記載のシステム(100)。
【請求項3】
ユーザのトレーニングインスタンスは、前記ユーザの1つ又は複数のセンサ測定値、例えば画像を含む、
請求項2に記載のシステム(100)。
【請求項4】
前記プロセッササブシステム(140)は、ユーザデバイスから前記トレーニングインスタンスを受け取ることによって前記ユーザのトレーニングインスタンスを収集するようにさらに構成されており、前記トレーニングインスタンスは、前記ユーザの生理学的量の前記ユーザデバイスによるセンサ測定値を含む、
請求項3に記載のシステム(100)。
【請求項5】
前記トレーニングされたモデルは、パラメータの第1のセットによってパラメータ化された特徴抽出器と、パラメータの第2のセットによってパラメータ化された、さらなるトレーニングされたモデルとを含み、前記特徴抽出器は、前記不所望なトレーニングインスタンスを含まない、さらなるデータセットによりトレーニングされており、前記プロセッササブシステム(140)は、パラメータの前記第2のセットを適応させることによって、前記適応モデルを決定するように構成されている、
請求項1乃至4のいずれか一項に記載のシステム(100)。
【請求項6】
前記プロセッササブシステム(140)は、
・前記パラメータのセットに関する前記目的関数に対するヘッシアンを正定値にするために付加されるべき対角ノイズの量を決定し、
・前記付加されるべき対角ノイズの量が閾値を超える場合、前記一次最適化方法を使用して1回又は複数回の反復において前記パラメータのセットを適応させる
ようにさらに構成されている、
請求項1乃至5のいずれか一項に記載のシステム(100)。
【請求項7】
前記プロセッササブシステム(140)は、前記目的関数に対するヘッシアンの逆行列の積及び前記目的関数の勾配を決定するように構成されており、前記決定は、前記積及び前記ヘッシアンにおける二次方程式を最小化することによって行われる、
請求項乃至のいずれか一項に記載のシステム(100)。
【請求項8】
前記プロセッササブシステム(140)は、準ニュートン法を使用して、ヘッセ行列又はヘッセ行列の逆行列を近似するように構成されている、
請求項1乃至7のいずれか一項に記載のシステム(100)。
【請求項9】
前記トレーニングされたモデルは、非線形のモデル、例えばニューラルネットワークを含む、
請求項1乃至のいずれか一項に記載のシステム(100)。
【請求項10】
前記トレーニングされたモデルは、複数の層を含むニューラルネットワークを含み、前記プロセッササブシステム(140)は、前記ニューラルネットワークの前記複数の層のサブセットのみの重みの反復適応化によって、前記適応モデルの前記パラメータのセットを反復して適応させるように構成されている、
請求項1乃至のいずれか一項に記載のシステム(100)。
【請求項11】
損失関数に基づいてトレーニングされたモデルを処理する、コンピュータにより実施される方法(400)であって、
前記モデルは、入力インスタンスを考慮して、モデル出力を提供するように構成されており、前記モデルは、目的関数を反復して最適化することによってトレーニングデータセットによりトレーニングされており、前記目的関数は、前記トレーニングデータセットの各トレーニングインスタンスに対する前記損失関数に従った各損失を含み、
前記方法は、
・前記モデル及び前記モデルがトレーニングされた前記トレーニングデータセットにアクセスすること(410)と、
・前記トレーニングデータセットの1つ又は複数の不所望なトレーニングインスタンスを識別する削除要求メッセージを受け取ること(420)と、
・前記削除要求メッセージを受け取ると、前記モデルを、前記1つ又は複数の不所望なトレーニングインスタンスから独立させることと、
を含み、前記独立は、
・残余のデータセットを取得するために、前記1つ又は複数の不所望なトレーニングインスタンスを前記トレーニングデータセットから削除すること(430)と、
・前記残余のデータセットに対する適応モデルを決定すること(440)と、
によって行われ、前記決定は、
・前記トレーニングされたモデルのパラメータのセットに基づいて、前記適応モデルのパラメータのセットを初期化すること(442)と、
・前記残余のデータセットに関して前記目的関数を最適化することによって、前記適応モデルの前記パラメータのセットを反復して適応させること(444)と、
によって行われ
前記方法は、
前記適応モデルの前記パラメータのセットの前記反復適応化の反復において、前記パラメータのセットに関する前記目的関数に対する1つ又は複数の二次導関数を決定することであって、前記パラメータのセットの適応化は、決定された前記二次導関数に基づいている、ことと、
前記適応モデルの前記パラメータのセットの前記反復適応化のさらなる反復において、一次最適化方法を使用して前記パラメータのセットを適応させることと、
をさらに含む、
コンピュータにより実施される方法(400)。
【請求項12】
クエリインスタンスを取得することと、前記1つ又は複数の不所望なトレーニングインスタンスから独立したモデル出力を取得するために前記適応モデルを前記クエリインスタンスに適用することと、をさらに含む、
請求項11に記載の方法(400)。
【請求項13】
プロセッサシステムによって実行される際に、前記プロセッサシステムに、請求項11又は12に記載の、コンピュータにより実施される方法を実施させるための命令を表す一時的又は非一時的なデータ(510)を含むコンピュータ可読媒体(500)。
【発明の詳細な説明】
【技術分野】
【0001】
発明の分野
本発明は、損失関数に基づいてトレーニングされたモデルを処理するためのシステム、及び、それに対応する、コンピュータにより実施される方法に関する。さらに、本発明は、この方法を実施するための命令を含むコンピュータ可読媒体に関する。
【背景技術】
【0002】
発明の背景
スマートウォッチ、フィットネストラッカ及び身体に取り付けられたセンサ等のウェアラブルデバイスは、ユーザの種々の量、例えば心拍数若しくは血圧等の生理学的量、又は、例えば位置、速度、回転速度等の他の種類の物理的量を測定及び追跡することを可能にする。その後、このような測定値は、典型的にはセンタにおいて収集され、これらの測定値を利用する種々のサービス、例えば活動記録又は睡眠アドバイス等を提供することができる。これらのサービスの多くは、例えば、パターンを認識する又は予測を行うためにユーザから収集された情報に機械学習モデルを適用する。機械学習モデルの人気のあるクラスは、いわゆる「経験損失最小化(Empirical Risk Minimization)」(ERM)タイプのモデルのクラスであり、これらは、典型的には非線形の損失関数に従って決定された、各トレーニングインスタンスに対する損失を含む目的関数を反復して最適化することによって、トレーニングデータセットによりトレーニングされる。この種のモデルの例は、ニューラルネットワーク又は最小二乗モデル又はロジスティック回帰モデルを含む。ユーザから収集された情報へのモデルの適用とは別に、サービスは通常、機械学習モデルをさらに洗練するために、従って、それらのサービスを改良するためにも、この情報を使用する。また、他の多くの設定においては、機械学習モデルは、例えば、医療画像処理又は顔認識において、個人情報によりトレーニングされる。
【0003】
機械学習モデルが、特定の人物に関する個人情報を含むトレーニングデータセットによりトレーニングされる場合には、これは、この個人情報がデータセットに含まれていなかったとしたら、トレーニングによって、異なったモデルが生じたであろうという意味において、機械学習モデルがその個人情報に依存していることを意味する。特に、トレーニングされたモデルのパラメータのセットは、異なっているものとしてよい。結果として、トレーニングされたモデルがそれに適用され得る少なくとも1つの入力インスタンスに対しても、個人情報を使用してトレーニングされたモデルは、個人情報を使用しないでトレーニングされたモデルとは異なるモデル出力を提供し得る。いくつかのケースにおいては、これらの相違によって、単に、トレーニングされたモデルから、データセットにおける個人に関する情報を引き出すことが可能であることが判明した。これは、「モデル反転(model inversion)」として知られている事象である。より一般的には、トレーニングされたモデルは事実上、それらの個人情報を含むトレーニングデータセットの関数であるので、トレーニングデータセットに含まれている人物がそのように望む場合、トレーニングされたモデルを、それらが関与するトレーニングインスタンスから実質的に独立させることができることは、望ましいことであろう。実際に、多くの設定においては、欧州連合の一般データ保護規則(GDPR)又は米国の医療保険の相互運用性と説明責任に関する法律(HIPPA)等のプライバシー規制は、例えば、機械学習モデルをトレーニングするために、種々の程度に及んで、データ主体がそれらの個人情報をどの程度使用することができるかを管理可能であることを要求することがある。
【先行技術文献】
【非特許文献】
【0004】
【文献】「Privacy-preserving logistic regression」K.Chaudhuri及びC.Monteleoni著(Advances in Neural Information Processing Systems,第289~296頁,2009年)
【発明の概要】
【発明が解決しようとする課題】
【0005】
特定のいずれかのトレーニングレコードによりモデル出力の依存を制限する既知の方法は、差分プライベート摂動技術(differentially private perturbation techniques)を利用することによるものである。差分プライバシーは、数学的なフレームワークであり、これは、任意の単一のトレーニングレコードの不存の存在によるモデル出力に対する偏差の最大の量を指定する。ERMタイプのモデルの設定、特にロジスティック回帰モデルにおいては、K.Chaudhuri及びC.Monteleoni著「Privacy-preserving logistic regression」(Advances in Neural Information Processing Systems,第289~296頁,2009年)が、単一のレコードの存在の作用を隠すために、既存のトレーニングされたモデルを使用すること、及び、その出力へ十分なノイズを付加することを提案している。従って、付加されたノイズによって、モデル出力を、大部分、単一のトレーニングレコードから独立させることができる。
【課題を解決するための手段】
【0006】
発明の概要
ノイズをERMタイプのモデルのモデル出力に付加し、これによって、モデル出力を多かれ少なかれ、単一のトレーニングレコードから独立させることができるが、そうすることによって、多くのモデル出力を収集し、それらのノイズをキャンセルすることによって、少なくとも部分的に否定される可能性のある統計的保証のみが提供される。さらに、ノイズを付加することは、必然的に、モデル出力の正確さを低減させる。また、Chaudhuriのアプローチ及び差分プライバシーのフレームワークは、より一般的に、モデル出力への単一のレコードの影響に関係し、そのため、複数のトレーニングレコードへのモデル出力の依存を十分に制限することができない場合がある。基本的に、モデルを独立させる必要があるレコードが多いほど、より多くのノイズを付加する必要があり、従って、より多くの正確さを犠牲にする必要があるであろう。事実上、ノイズの付加は、トレードオフを提供し、ここで、モデル出力をトレーニングレコードからより独立させることによって、結果的に、取得されるモデル出力の正確さが低下する。さらに、Chaudhuriのアプローチにおいては、ノイズを付加するとモデル出力のプライバシーへの影響が低減されるが、格納されている既存のモデルは、依然として個人情報の関数であるため、依然としてモデル反転が可能である可能性があり、及び/又は、依然として個人情報を表す可能性がある。例えば、種々の状況において、モデル出力にノイズを適用することは、GDPR及び同様の他のプライバシー規制に起因する、忘れられる権利の要求を満たすための十分な措置とはみなされない場合がある。
【0007】
本発明の第1の態様においては、請求項1によって特定されているように、損失関数に基づいてトレーニングされたモデルを処理するためのシステムが提案される。本発明の他の態様においては、請求項13によって特定されているように、対応する、コンピュータにより実施される方法が提案される。発明のある態様においては、請求項15によって特定されているように、コンピュータ可読媒体が提供される。
【0008】
種々の実施形態においては、有利には、損失関数に基づいてトレーニングされたモデルが、1つ又は複数の不所望なトレーニングインスタンスから独立させられるものとしてよい。これは、モデルがトレーニングされた後、好ましくはモデルが展開された後にも行われる。例えば、展開されたモデルは、最初は1つ又は複数の不所望なトレーニングインスタンスに依存するものとしてよく、1つ又は複数の不所望なトレーニングインスタンスを示す削除要求メッセージを受信したときに、これらのトレーニングインスタンスから独立させられるものとしてよい。削除要求メッセージを受信して行動することによって、興味深いことに、モデルを1つ又は複数の特定のトレーニングインスタンスから独立させることができ、モデルを、どれであるかが分からない任意の1つのトレーニングインスタンスから独立させる必要はなくなる。これは、例えば、モデル出力に大量のノイズを付加することを回避することができる方法である。
【0009】
驚くべきことに、本発明者らは、この目的のために、トレーニングされたモデルと共に、モデルのトレーニングに使用されたトレーニングデータセットも保持され得ることを想定した。従って、削除要求が生じると、不所望なトレーニングインスタンスをトレーニングデータセットから削除することによって、残余のデータセットが決定されるものとしてよい。次に、残余のデータセットに対する適応モデルが決定されるものとしてよく、これは、トレーニングされたモデルのパラメータに基づいて適応モデルのパラメータのセットを初期化することによって、かつ、モデルの損失関数に従って、残余のデータセットのインスタンスの損失を最適化することによって適応モデルのパラメータのセットを反復して適応させることによって行われる。不所望なトレーニングインスタンスからモデルを独立させることは、一般的に、不所望なトレーニングインスタンスに関してモデルを「トレーニング解除すること」と称され得る。
【0010】
特定のトレーニングインスタンスからモデルを独立させることによって、かつ、このような特定のインスタンスに対する削除要求メッセージを受信したときにのみこのように行うことによって、可能な間、例えば、データ主体が同意を撤回していない間、トレーニングインスタンスを引き続き使用可能であるようにすることができる。さらに、特定のトレーニングインスタンスからモデルを独立させることによって、例えば、任意の特定のトレーニングインスタンスを隠すために十分に大きい一般的なノイズを付加することを回避することができる。実際に、適応モデルのパラメータは、例えば、削除要求メッセージに対処する前と後との両方において、モデルのトレーニングに使用される目的関数に最適であるものとしてよく、モデル出力が基づいている可能性があるレコードを考えると、モデルは、最大の正確さでモデル出力を提供することができる可能性がある。例えば、適応モデルは、残余のデータセットにおけるトレーニングによって取得されるモデルに対応するものとしてよい。
【0011】
残余のデータセットに関して目的関数を最適化することによって、興味深いことに、適応モデルが取得されるものとしてよく、これは、1つ又は複数の不所望なトレーニングインスタンスから独立している目的関数を最適化することによって適応モデルのパラメータを取得することができるという意味において、1つ又は複数の不所望なトレーニングインスタンスから独立している。例えば、残余のデータセットに基づいてモデルを最初からトレーニングすることによって、パラメータのセットが取得されるものとしてもよい。この意味において、1つ又は複数の不所望なトレーニングインスタンスは、トレーニングされたモデルから完全に削除されているとみなされるものとしてよい。従って、削除要求に対処した後、トレーニングデータセットから、トレーニングされたモデルから、かつ、トレーニングされたモデルの適用から結果として生じるモデル出力から、不所望なトレーニングレコードが消去されたと考察されるものとしてよい。トレーニングされたモデルの適応化が、モデルを入力インスタンスに適用する同一の当事者によって行われる必要はなく、特に、トレーニングされたモデルを使用する総ての当事者がトレーニングデータセットにアクセスする必要はない、ということに留意されたい。例えば、システムは、削除要求メッセージに対処するように構成されているものとしてよく、かつ、1つ又は複数の削除要求メッセージに応答して適応モデルを決定し、入力インスタンスにモデルを適用するために1つ又は複数の他のシステムに適応モデルを提供するように構成されているものとしてよい。このようなケースにおいては、削除要求メッセージに対処するシステムは、トレーニングデータセットにアクセスする必要があり得るが、適応モデルを取得し、それを適用するシステムは、このようなアクセスを必要としない場合がある。従って、慎重に取り扱われるべき情報の公開を制限することができ、さらに安全性が向上する。
【0012】
興味深いことに、トレーニングされたモデルのパラメータに基づいて、適応モデルのパラメータを初期化することによって、削除要求メッセージが効率的に対処され得る。例えば、残余のデータセットに基づく、モデルの完全な再トレーニングが、回避され得る。本本発明者らが認識したように、トレーニングされたモデルのパラメータのセットは、各トレーニングインスタンスに対する損失を含む目的関数に基づいてトレーニングされ得るので、パラメータのこのセットは、残余のデータセットに関する最適化に対する比較的良好な初期推定であり得る。例えば、パラメータのこのセット自体、又は、それに近い値、例えば、比較的少量のノイズを付加することによって取得された値が、残余のデータセットに関する最適化に対する初期推定として使用されるものとしてよい。例えば、目的関数は、各トレーニングインスタンスの損失の合計を含むものとしてよい。比較的少ないトレーニングインスタンスが削除される場合、例えば、単一のインスタンス、最大で10、最大で50、又は、最大でトレーニングデータセットの1%若しくは最大でトレーニングデータセットの5%のインスタンスが削除される場合、残余のデータセットに対する目的関数は、主として、元来のデータセットに対する目的関数と同等の損失を含み得る。従って、残余のデータセットに対する目的関数の最適は、元来のトレーニングデータセットに対する目的関数の最適に比較的近いと予想され得る。結果として、パラメータのセットを適応させるために、比較的少ない反復で足り得る。適応モデルのパラメータのこのような反復適応化は、全体的に、不所望なトレーニングインスタンスに関する「反復トレーニング解除」と称される。
【0013】
一般的に、削除要求メッセージは、種々の理由により送られるものとしてよい。例えば、削除要求メッセージは、トレーニングインスタンスを引き続き使用するための同意の欠如、例えば、トレーニングインスタンスを使用するための同意の撤回を表すものとしてよい。これは、トレーニングインスタンスが特定のユーザに関する個人情報を含むケースであり得る。例えば、ユーザ自身が、同意の撤回を送るものとしてよい。このような同意の撤回は時折、忘れられる権利の要求又は消去する権利の要求として知られている。同意の撤回は、自動的に行われるものとしてもよく、例えば、ユーザは、条件付き同意、例えば、期限付きの同意又は他の種類の条件に依存する同意を提供するものとしてよく、及び/又は、同意がユーザ以外の当事者、例えば、データ共有契約を結んでいる他の当事者によって取り消されるものとしてよい。このようなケース及び他のケースにおいて、削除要求メッセージが、同意管理システムから受け取られるものとしてよく、同意管理システムは、トレーニングデータセットからのトレーニングインスタンスを使用するための同意が失われていることを検出すると、削除要求メッセージを送るように構成されている。このような同意管理システムは、モデルを処理するためのシステムと、例えば単一のデバイスにおいて結合されるものとしてよい。
【0014】
しかし、削除要求メッセージは、必ずしも、トレーニングインスタンスを引き続き使用するための同意の欠如を表すものでなくてよい。例えば、異常検出システムにおいて、トレーニングインスタンスが時には有害なインスタンスとも称される敵対的なインスタンスを表していることが検出されるものとしてよい。例えば、他の当事者が、モデルを改ざんする、例えばモデルの決定境界を、悪意を持って揺り動かすためにインスタンスを提供している場合がある。このようなケースでも、モデルをこのような敵対的なインスタンスから独立させることが望ましい。例えば、インスタンスが、時代遅れであると特定されることがある。このようなケースにおいては、モデルを不所望なトレーニングインスタンスから独立させることによって、モデルの正確さが向上することがある。異なる場所において、例えば異なる国におけるモデルの展開を可能にするために、モデルが、1つ又は複数のトレーニングインスタンスから独立させられるものとしてもよい。例えば、1つ又は複数のトレーニングインスタンスに対して、異なる場所における処理に対する同意が得られないことがあり、又は、モデルの異なるバージョンを異なる場所において展開することが望まれることがある。これは、例えば、無料バージョン及び有料バージョン等である。このようなケースにおいては、各場所に対する適応モデルが決定され、1つ又は複数の各場所に提供されるものとしてよい。
【0015】
本明細書に記載される技術は、種々の種類のトレーニングされたモデルに使用可能である。特に、興味深いことに、本明細書に記載される技術は、非線形のトレーニングされたモデルに適用されるものとしてよい。種々の実施形態においては、トレーニングされたモデルは分類器であり、例えば、入力インスタンスを1つ又は複数のクラスに分類するように構成されているモデルである。例えば、モデルは、2つのクラスに対する二項分類器又は3つ以上のクラスに対するマルチクラス分類器であるものとしてよい。種々の実施形態においては、トレーニングされたモデルは回帰モデルであり、例えば、入力インスタンスを考慮して、1つ又は複数の出力量、例えば実数値出力に対して値を予測するように構成されているモデルである。種々の実施形態においては、トレーニングされたモデルは物体検出モデルであり、例えば、入力画像において1つ又は複数の物体を検出するように構成されている、例えば、入力インスタンスにおいて検出された所与の種類の物体の位置を出力するように構成されているモデルである。種々の実施形態においては、トレーニングされたモデルはセグメンテーションモデルであり、例えば、入力インスタンスの特徴、例えば入力画像のピクセルを各クラスレベルに関連付けるように構成されているモデルである。種々の実施形態においては、トレーニングされたモデルは生成モデルであり、例えば、潜在的な特徴ベクトルに基づいた画像等のインスタンスを生成するように構成されているモデルである。モデルは、例えば、時系列モデリング又は予報のための時系列モデルであるものとしてもよい。
【0016】
本明細書に記載される技術は、種々の種類のデータ、特に、音響データ、画像データ、ビデオデータ、レーダデータ、LiDARデータ、超音波データ、モーションデータ、熱画像データ等のセンサデータ、又は、種々の個々のセンサの読み取り値若しくはその履歴に適用可能である。例えば、種々の実施形態において、センサ測定値は、1つ又は複数のセンサからセンサインタフェースを介して取得されるものとしてよく、例えば、カメラ、レーダ、LiDAR、超音波センサ、モーションセンサ若しくは熱センサから、又は、心拍数若しくは血圧等の生理学的パラメータを測定する種々のセンサ又は任意の組合せから取得されるものとしてよい。これらのセンサ測定値に基づいて、モデルが適用される入力インスタンスが決定されるものとしてよい。
【0017】
全体的に示されている実施形態とは別に、本明細書に記載のモデルを処理するための技術を有利に適用することができる、種々の付加的な実施形態も想定される。
【0018】
ある実施形態においては、モデルは、コンピュータによって制御される機械を制御するための制御システムに適用されるものとしてよい。これは例えば、ロボット、車両、家庭用電化製品、電動工具、製造機械、パーソナルアシスタント、アクセス制御システム等である。制御システムは、コンピュータによって制御される機械の一部であっても、コンピュータによって制御される機械とは別個のものであるものとしてもよい。例えば、制御信号は、制御システムによって、モデル出力の少なくとも一部に基づいて決定されるものとしてよい。入力として、モデルは、コンピュータによって制御される機械及び/又はそれが動作する物理的環境の状態を表すデータを取得するものとしてよい。
【0019】
モデルは、情報を伝達する種々のシステムにおいて適用されるものとしてもよい。これは、例えば、監視下の建物若しくは他の物体の画像に基づく監視システム、又は、例えば身体若しくは身体の一部の画像に基づく医療用画像システムである。モデルは、例えば、製造された物体の欠陥を検査する、製造プロセス用の光学的な品質検査システムにおいて使用されるものとしてもよい。例えば、このような欠陥は、製造された物体の画像から検出されるものとしてよい。
【0020】
ある実施形態においては、モデルは、自動運転車両において適用されるものとしてよい。例えば、入力インスタンスは車両の周辺の画像を含むものとしてよい。例えばモデルは、例えば交通標識を分類するための分類器、例えば画像を検出し若しくは画像を歩行者、道路表面、他の車両等を表す領域にセグメント化するための検出モデル又はセグメンテーションモデル、又は、例えば人間の軌道予測のための時系列予測モデルであるものとしてよい。種々のケースにおいて、モデル出力は、少なくとも部分的に、自動運転車両を制御するために使用されるものとしてよく、例えば異常、例えば、歩行者の突然の道路横断を検出すると、自動運転車両を安全モードにおいて動作させるために使用されるものとしてよい。
【0021】
ある実施形態においては、モデルは、医療用画像分析、例えば医療用画像分類において適用されるものとしてよい。例えば、モデルは、身体又は身体の一部の画像、例えば、MRI、CT又はPETスキャンにおいて腫瘍又は医療に関連する他の物体を検出するために使用されるものとしてよい。又は、モデルは、画像を異なる病状又は他の種類の医学的結果に分類するために使用されるものとしてよい。
【0022】
ある実施形態においては、モデルが、種々の外部デバイス、例えば、IoTデバイスの測定値の信号処理に適用されるものとしてよい。例えば、モデルは、デバイスの到来するセンサ測定値のストリームに、例えば、異常又は他の種類のイベントを検出するために適用されるものとしてよい。
【0023】
ある実施形態においては、モデルは、予知保全のために適用されるものとしてよく、例えば、大型のデバイス、例えば車又は医療用デバイスのコンポーネント、例えばスクリーン又はバッテリーが交換される必要があるか否かを、使用データ、例えば時系列データに基づいて予測するために適用されるものとしてよい。
【0024】
ある実施形態においては、モデルは、ロボット等の自律型デバイスを、物理的環境において相互作用させるトレーニングのためのシステムにおいて、例えば、模倣学習等による強化学習システムへの入力を決定するために使用されるモデルにおいて使用されるものとしてよい。例えば、モデルは、強化学習システムに対する入力特徴を決定するように構成されている特徴抽出器であるものとしてよい。
【0025】
ある実施形態においては、モデルは、物理的なシステム、例えば技術的なシステムの種々の測定可能な量を予測するために使用されるものとしてよい。このようなシステムは、デバイスと、このデバイスが相互作用する物理的環境とを含むものとしてよい。一般的に、種々の技術的なシステムは、明示的にモデル化するためには複雑すぎる基礎となる物理的なモデルを有している。例えば、車両エンジンの排出値又は他の物理的な量を予測するモデルは、複雑な、非線形的な形式において、その入力パラメータ、例えば、速度及び負荷又はエンジン制御ユニット(ECU)の入力パラメータに依存し得る。
【0026】
任意選択的に、トレーニングデータセットは、各ユーザから収集された複数のトレーニングインスタンスを含むものとしてよい。従って、トレーニングインスタンスは、これらのユーザに関する個人情報を表すものとしてよい。削除要求メッセージは、トレーニングインスタンスがトレーニングデータセットから削除されるべきユーザを示すものとしてよい。例えば、レコードが、関連付けられたユーザ識別子、ユーザ識別子を指定する削除要求メッセージと共に格納されるものとしてよい。削除要求メッセージは、削除されるべきユーザの特定のレコードを指定することによって、ユーザを示すこともできる。特定のユーザに関連付けられたデータを削除することを可能にすることによって、忘れられる権利の要求としても知られる消去する権利の要求、及び/又は、同意を撤回するユーザに適当に対処することが可能になり得る。削除要求メッセージは、複数のユーザのデータを示すものとしてよい。
【0027】
任意選択的に、ユーザのトレーニングインスタンスは、ユーザの1つ又は複数のセンサ測定値を含むものとしてよい。例えば、測定値は、ユーザの画像、血圧又は心拍数等のユーザの生理学的量の測定値であるものとしてよい。測定値は、ユーザのゲノム配列、指紋等であるものとしてもよい。データは、任意の適当なセンサを使用して測定されるものとしてよい。この種の測定されたデータは、本質的にユーザに関連しているので、それは特にプライバシーに敏感である可能性があり、従って、データセットからそのようなデータを含むトレーニングインスタンスを削除し得ることが特に望ましい場合がある。
【0028】
任意選択的に、ユーザのトレーニングインスタンスは、ユーザデバイスからトレーニングインスタンスを受け取ることによって収集されるものとしてよい。この種のトレーニングインスタンスは、ユーザの生理学的量、例えば心拍数及び/又は血圧のユーザデバイスによるセンサ測定値を含むものとしてよい。例えば、ユーザデバイスは、スマートウォッチ、スマートフォン、又は、他の種類のウェアラブルデバイス、家庭用医療測定デバイス等であるものとしてよい。ユーザデバイスは、モデル出力が望まれているインスタンスとしてトレーニングインスタンスを提供するものとしてよい。例えば、ユーザデバイスからインスタンスを受け取ると、モデルがインスタンスに適用されるものとしてよく、モデル出力はユーザデバイスに提供されるものとしてよく、このインスタンスは、後の段階で、モデルを洗練するためのトレーニングインスタンスとして使用される。トレーニングインスタンス以外に、削除要求メッセージもユーザデバイス自体から受け取られるものとしてよく、例えば、ユーザは、ユーザデバイスの測定値の処理に対する同意を撤回するために、ユーザデバイス上の設定を変更するものとしてよい。しかし、削除要求メッセージが、他のデバイスから、ユーザによって送られるものとしてもよく、これは、例えば、ユーザデバイスによっても使用されるユーザアカウントにログインすることによって行われる。
【0029】
任意選択的に、トレーニングされたモデルは、パラメータの第1のセットによってパラメータ化された特徴抽出器と、パラメータの第2のセットによってパラメータ化された、さらなるトレーニングされたモデルとを含むものとしてよい。画像分類においては、しかし、種々の他の機械学習タスクにおいても、別個の特徴抽出器の使用はそれ自体、知られている。例えば、Oxford Visual Geometry GroupによってトレーニングされたVGGネットは、実際には、種々のアプリケーションに対する特徴抽出器として使用されている。この種のケースにおいては、特徴抽出器及びさらなるトレーニングされたモデルは、種々のデータセットによりトレーニングされるものとしてよい。例えば、特徴抽出器は、事前トレーニングされた特徴抽出器であるものとしてよく、例えば、比較的大きいデータセットによりトレーニングされるものとしてよく、トレーニングされたモデルは、事前トレーニングされた特徴抽出器を得て、単に、さらなるトレーニングされたモデルをトレーニングすることによって取得される。特徴抽出器は、第3の当事者によってトレーニングされるものとしてよく、又は、トレーニングされたモデルを適用する当事者にサービスとして、例えばGoogle及びMicrosoftのAIプラットフォーム等の一部として提供されるものとしてもよい。種々のケースにおいて、1つ又は複数の不所望なトレーニングインスタンスが、特徴抽出器がトレーニングされたさらなるデータセットに含まれていない場合がある。従って、トレーニングされたモデルは、さらなるトレーニングされたモデルのパラメータの第2のセットの適応化は行われるが、特徴抽出器のパラメータの第1のセットの適応化は行われないことによって適応させられるものとしてよい。従って、別個の特徴抽出器の使用は、最適化することができ、例えば、比較的大きいデータセットによりトレーニングすることができ、複数のトレーニングされたモデル間において共有し得る特徴抽出器を使用することができるという理由に限らず、有益であり得る。実際、これとは別に、不所望なトレーニングインスタンスを削除するためにトレーニングされたモデルを比較的容易に更新することが可能になるものとしてもよく、例えば、更新される必要があるパラメータが少なくなり、モデルの一部だけが再トレーニングされればよく、効率が改良される。
【0030】
任意選択的に、適応モデルのパラメータのセットの適応化の1回、複数回又は総ての反復において、この適応化は、適応モデルのパラメータのセットに関する目的関数に対する二次導関数の利用を可能にし得る。例えば、ニュートン法又はその変形等の二次最適化法の反復は、パラメータのセットを適応させるために使用されるものとしてよい。例えば、目的関数のヘッシアンが、パラメータの現在のセットに対して計算されるものとしてよく、又は、少なくとも推定されるものとしてよい。興味深いことに、適応モデルのパラメータのセットが、トレーニングされたモデルのパラメータのセットに基づいて初期化されるものとしてよいので、例えばセットが、トレーニングされたモデルのパラメータのセットに等しい又は少なくとも近いので、この初期推定は既に、比較的良好であるものとしてよい。本発明者らが認識しているように、これは、二次法の使用を可能にするものとしてよい。二次法は、解の比較的小さい領域の外側においては機能しない可能性があるが、そのようなケースにおいては、最急降下法等の一次法よりも速く収束する可能性がある。
【0031】
任意選択的に、二次法がいくつかの反復において使用され得る場合でも、最急降下法等の一次法が他の反復において使用されるものとしてよい。例えばどちらが、目的関数に対する最適な改良を提供するかに基づいた一次最適化と二次最適化との間の柔軟な切り替えによって、手元の状況に最適な方法が柔軟に選択されるものとしてよい。従って、例えばパラメータのセットに対する良好な初期推定によって生じる二次最適化の使用の利点は、可能である場合には、他のケースでも、例えば、二次最適化が最適解から離れることが判明した場合にも、得ることができ、適応モデルの決定に向けた進展が得られ続ける。
【0032】
任意選択的に、二次最適化の使用時には、対角ノイズがヘッシアンに付加されるものとしてよく、これによって、ヘッシアンを正の半確定にする。それ自体、当技術分野においてヘッシアンダンピングとして知られているこのプロセスは、反転不可能なヘッシアン及び/又は最適解から離れる二次最適化に関する問題を回避するために使用されるものとしてよい。ヘッシアンダンピングは、必ずしもヘッシアン自体を明示的に計算することを含まず、例えば、最適化は対角ノイズが付加されているヘッシアンの逆行列と連携し得るということに留意されたい。正則化項、例えば、L2正則化項をパラメータに付加することも可能である。事実上、一定の強さを有する正則化項は、同等のサイズの対角ノイズをヘッシアンの対角線に付加する方法としてみなされるものとしてよい。
【0033】
任意選択的に、付加されるべき対角ノイズの量が一定の閾値を超える場合、最適化は、再度の二次最適化の実行の試行前に、1つ又は複数の一次最適化反復、例えば最急降下法反復を適用することを含むものとしてよい。例えば、1回、2回、多くとも又は少なくとも3回又は多くとも又は少なくとも5回の反復において、一次最適化反復が適用されるものとしてよい。これは、ヘッシアンが再び決定される前に行われ、場合によっては次に、再び二次最適化反復が実行される。このようにして、例えば、目的関数の最適値の近傍から外れた、一次最適化よりも悪い結果を与えるであろう状況において、二次最適化ステップが回避されるものとしてよい。
【0034】
任意選択的に、二次最適化は、目的関数に対するヘッシアンの逆行列の積及び目的関数の勾配の決定を含むものとしてよい。これは、例えば、ニュートン反復及びその変形におけるケースである。このようなケースにおいて、この積は、Barak A.Pearlmutter著「Fast Exact Multiplication by the Hessian」(Neural computation 6(1):第147~160頁,1994年)(参照によって本願に組み込まれる)からそれ自体知られているように、積及びヘッシアンにおける二次方程式を最小化することによって決定されるものとしてよい。興味深いことに、このようにして、完全なヘッシアンを格納すること及び/又は反転させることが回避されるものとしてよく、二次最適化反復のパフォーマンスが改善される。
【0035】
任意選択的に、二次最適化反復において使用されるヘッセ行列又はその逆行列は、準ニュートン法を使用して近似されるものとしてよい。特に、反復において、ヘッシアン又はその逆行列の初期近似が決定されるものとしてよく、後続の反復において、ヘッシアン又はその逆行列に対する近似が更新されるものとしてよい。これは、例えば、パラメータのセットの更新を伴う。種々の準ニュートン法は、更新されたヘッシアンが正の半確定であることを保証することもでき、従って、二次最適化ステップは、パラメータのセットを改良するために効果的である。従って、この種の方法は、それを必要とする各反復に対してヘッセ行列を再計算することを回避するものとしてよく、従って、さらに、パフォーマンスが改良される。BFGS及びL-BFGS等の種々の準ニュートン法は当技術分野においてそれ自体知られており、ここに適用されるものとしてよい。
【0036】
任意選択的に、トレーニングされたモデルは、非線形のモデル、例えばニューラルネットワークを含むものとしてよい。この技術は、種々の既知のニューラルネットワークアーキテクチャ、例えば、畳み込みニューラルネットワーク(CNN)、回帰型ニューラルネットワーク(RNN)、完全に接続された層を含むネットワーク又は任意の組合せと組み合わせられるものとしてよい。ニューラルネットワークは、人工ニューラルネットワークとしても知られている。このケースにおいて、パラメータのセットは、ニューラルネットワークのノードの重みを含み得る。例えば、モデルの層の数は、少なくとも5個又は少なくとも10個であるものとしてよく、ノード及び/又は重みの数は、少なくとも10000個又は少なくとも100000個であるものとしてよい。特定の用途に応じて、ニューラルネットワーク及び他の種類の機械読み出し可能なモデルに対して種々の既知のアーキテクチャが使用されるものとしてよい。最適化の目的物を含み、本願における技術と組み合わせて適用可能な他の非線形モデルは、種々の誘導点ガウス過程を含み、これは、例えば、Titsias著「Variational Model Selection for Sparse Gaussian Process Regression」(Technical report,University of Manchester,2009年)、Hensman,Fusi及びLawrence著「Gaussian Processes for Big Data」(2013年,https://arxiv.org/abs/1309.6835)、並びに、Salimbeni及びDeisenroth著「Doubly Stochastic Variational Inference for Deep Gaussian Processes」(https://arxiv.org/abs/1705.08933,2017年)から既知である(これら3つの論文は、参照によって本願に組み込まれる)。これらの非線形モデルは、典型的には、反復して決定されたそれらのパラメータのセットを有しており、従って、本願に記載されているように、良好な初期推定に基づいて適応モデルを反復して決定することは特に有益である。
【0037】
任意選択的に、トレーニングされたモデルは、複数の層を伴うニューラルネットワークを含むものとしてよい。このようなケースにおいては、適応モデルは、ニューラルネットワークの複数の層のサブセットのみの重みの反復適応化によって決定されるものとしてよい。一般的に、任意のサブセットが選択されるものとしてよく、これは、例えば、所定の数kに対する最後のk層又は最初のk層、総ての偶数層等である。これらの層のサブセットだけを考慮することによって、最適化のパフォーマンスを格段に向上させることが可能であり、また、引き続き、不所望なトレーニングインスタンスを含まない残余のデータセットに関連して最適が決定され得る。
【0038】
任意選択的に、適応モデルの決定の後に、クエリインスタンスが取得されるものとしてよく、1つ又は複数の不所望なトレーニングインスタンスから独立したモデル出力を取得するために適応モデルがこのクエリインスタンスに適用されるものとしてよい。他の箇所でも議論されているように、モデルの適応化とクエリインスタンスへのモデルの適用とが同一のシステムによって実行されても、異なるシステムによって実行されるものとしてもよい。例えば、適応化後のある時点において適用が実行され、この適用後のある時点において他の適応化が実行される等のインタリーブ方式により、適応化及び/又は適用の両方を複数回実行することも可能である。例えば、システムは、複数の各削除要求メッセージ及び/又はモデル適用メッセージを取得し、モデルの適応化又は適用によって、これらのメッセージに相応に応答するように構成されているものとしてよい。任意選択的に、適応モデルを決定する当事者が、トレーニングデータセットでモデルをあらかじめトレーニングしているものとしてよい。このようなケースにおいては、この当事者は、トレーニングされたモデルと共にトレーニングデータセットを格納するものとしてよく、これによって、削除要求メッセージを処理することが可能である。従って、トレーニングデータセット内の潜在的に慎重に取り扱われるべき情報が、トレーニング及び/又は適応化を行う当事者に対して局所的に保存されているものとしてよく、例えば、これに対して、オリジナルのトレーニングされたモデル及びその適応化は、クエリインスタンスへの適用のために他の当事者に提供されるものとしてよい。
【0039】
任意選択的に、適応モデルの決定の単一の動作において、複数の削除要求メッセージが受け取られ、対処されるものとしてよい。例えば、複数の削除要求メッセージが、例えば一定の時間窓、有利にはかなり短い時間窓、例えば最大1分又は最大30分の時間窓が通過するまで収集されるものとしてよい。その代わりに又はそれに加えて、複数の削除要求メッセージが、一定の最大量、例えば、最大で10個、最大で100個又はトレーニングデータセットの最大1%又は最大2%の不所望なトレーニングインスタンスに到達するまで、及び/又は、一定の最大量、例えば最大で5個又は最大で50個のメッセージが受け取られるまで、収集されるものとしてよい。複数の削除要求メッセージをこれに応じてバッチ処理することによって、効率が改善される。しかし、処理される不所望なトレーニングインスタンスの総数は引き続き、有利には、比較的低く維持され、これによって、トレーニングされたモデルのパラメータの現在のセットが、適応モデルの反復決定に対する良好な推定を提供することが保証される。
【0040】
当業者には、本発明の上述した実施形態、実装及び/又は任意選択の態様のうちの2つ以上を、有用であるとみなされる任意の形式において組み合わせることができることが明らかであろう。
【0041】
対応する、コンピュータにより実施される方法の説明された修正及び変形に対応する、任意のシステム及び/又は任意のコンピュータ可読媒体の修正及び変形は、本説明に基づいて当業者によって実行可能であり、システムの説明された修正及び変形に基づく方法又は媒体の修正及び変形についても同様である。
【0042】
本発明のこれらの態様及び他の態様は、以下の説明において例として説明された実施形態及び添付の図面から明らかになり、さらに、これらを参照して解明されるであろう。
【図面の簡単な説明】
【0043】
図1】損失関数に基づいてトレーニングされたモデルを処理するためのシステムを示している。
図2】1つ又は複数の不所望なトレーニングインスタンスに対してトレーニングされたモデルを適応させる方法、及び、入力インスタンスに、適応させられたトレーニングされたモデルを適用する方法の詳細な例を示している。
図3】特徴抽出器を含むトレーニングされたモデルを適応させる方法の詳細な例を示している。
図4】損失関数に基づいてトレーニングされたモデルを処理する、コンピュータにより実施される方法を示している。
図5】データを含むコンピュータ可読媒体を示している。
【0044】
図面は、全く概略的であり、縮尺どおりに描かれていないことに留意されたい。図面において、既に説明した要素に相当する要素は、同一の参照番号を有し得る。
【発明を実施するための形態】
【0045】
実施形態の詳細な説明
図1は、損失関数に基づいてトレーニングされたモデルを処理するためのシステム100を示している。このモデルは、入力インスタンスを考慮して、モデル出力を提供するように構成されているものとしてよい。このモデルは、目的関数を反復して最適化することによってトレーニングデータセットによりトレーニングされるものとしてよい。目的関数は、トレーニングデータセットの各トレーニングインスタンスに対する損失関数に従った各損失を含むものとしてよい。システム100は、データインタフェース120とプロセッササブシステム140とを含むものとしてよく、これらは、データ通信121を介して内部で通信するものとしてよい。データインタフェース120は、モデル030と、モデルがトレーニングされたトレーニングデータセット040とにアクセスするものとしてよい。
【0046】
プロセッササブシステム140は、システム100の動作中かつデータインタフェース120の使用中にデータ030、040にアクセスするように構成されているものとしてよい。例えば、図1に示されているように、データインタフェース120は、上述のデータ030、040を含み得る外部データストレージ021へアクセス122を提供するものとしてよい。選択的に、データ030、040は、システム100の一部である内部データストレージからアクセスされるものとしてよい。選択的に、データ030、040が、他のエンティティからのネットワークを介して受け取られるものとしてよい。全般的に、データインタフェース120は種々の形態であるものとしてよく、これは、ローカルエリアネットワーク又はワイドエリアネットワーク、例えばインタネットに対するネットワークインタフェース、内部データストレージ又は外部データストレージへのストレージインタフェース等である。データストレージ021は、任意の既知の、適当な形態であるものとしてよい。
【0047】
システム100は、削除要求メッセージ124を受け取るように構成されている削除要求インタフェース160も含むものとしてよい。削除要求メッセージ124は、トレーニングデータセットの1つ又は複数の不所望なトレーニングインスタンスを識別するものとしてよい。削除要求インタフェース160は、データ通信123を介して、プロセッササブシステム140と内部通信するものとしてよい。削除要求インタフェース160は、例えば、USB、IEEE1394又は類似のインタフェースを使用して、他のシステム、例えば、ユーザデバイスと直接的に通信するように配置されていて、それらのシステムから削除要求メッセージを受け取るものとしてよい。削除要求インタフェース160は、コンピュータネットワークを介して通信するものとしてもよく、これは、例えば、ワイヤレスパーソナルエリアネットワーク、インタネット、イントラネット、LAN、WLAN等である。例えば、削除要求インタフェース160は、コンピュータネットワークに応じて、コネクタ、例えば、ワイヤレスコネクタ、Ethernetコネクタ、Wi-Fi、4G又は4Gアンテナ、ZigBee(登録商標)チップ等を含むものとしてよい。図面は、例えば、インタネットを介してスマートウォッチ070から受け取った削除要求メッセージ124を示しており、ここで、スマートウォッチ070は、1つ又は複数のセンサ、例えば、図面に示されているセンサ075を使用して、ユーザの1つ又は複数の生理学的量を測定するように構成されているものとしてもよい。システム100は、1つ又は複数のユーザデバイス070及び/又はモデルを適用する他のシステムと共にユーザデータ処理システムを形成するものとしてよい。
【0048】
削除要求インタフェース160は、内部の通信インタフェース、例えば、バス、API、ストレージインタフェース等であるものとしてもよい。例えば、システム100は、同意がトレーニングデータセット040に対して使用可能であることを保証する同意管理システムの一部であるものとしてよく、例えば、同意管理システムの他の一部は、削除要求メッセージを、本願に記載されているシステム100に送るものとしてよい。他の例として、システム100は、不所望なトレーニングインスタンス、例えば、敵対的な例又は他の種類の外れ値を検出し、これに対処するように構成されている異常検出システムの一部であるものとしてよく、このケースにおいては、異常検出システムの他の部分は、削除要求メッセージを、本願に記載されているシステム100に送るものとしてよい。
【0049】
プロセッササブシステム140は、システム100の動作中かつデータインタフェース120の使用中に、削除要求メッセージ124を受け取ると、モデルを、1つ又は複数の不所望なトレーニングインスタンスから独立させるように構成されているものとしてよい。モデルを独立させるために、プロセッササブシステム140は、残余のデータセットを取得するために、かつ、残余のデータセットに対する適応モデルのために、1つ又は複数の不所望なトレーニングインスタンスをトレーニングデータセットから削除するように構成されているものとしてよい。残余のデータセットに対する適応モデルを決定するために、プロセッササブシステム140は、トレーニングされたモデルのパラメータのセットに基づいて、適応モデルのパラメータのセットを初期化し、残余のデータセットに関して目的関数を最適化することによって、適応モデルのパラメータのセットを反復して適応させるように構成されているものとしてよい。
【0050】
任意選択的なコンポーネントとして、システム100は、画像入力インタフェース又は任意の他の種類の入力インタフェース(図示されていない)を、カメラ等のセンサからセンサデータを取得するために含むものとしてよい。プロセッササブシステム140は、取得されたセンサデータに基づいてトレーニングされたモデルに対する入力インスタンスを取得するように、かつ、取得された入力インスタンスに適応モデルを適用するように構成されているものとしてよい。例えば、カメラは、画像データを捕捉するように構成されているものとしてよく、プロセッササブシステム140は、画像データから入力インスタンスを決定するように構成されている。入力インタフェースは、種々の種類のセンサ信号、例えば、ビデオ信号、レーダ/LiDAR信号、超音波信等用に構成されているものとしてよい。任意選択的なコンポーネントとして、システム100は、ディスプレイ出力インタフェース又は、入力インスタンスに対する適応モデルの出力をディスプレイ等のレンダリングデバイスに出力する任意の他の種類の出力インタフェース(図示されていない)も含むものとしてよい。例えば、ディスプレイ出力インタフェースは、ディスプレイのためのディスプレイデータを生成するものとしてよく、これによって、ディスプレイは、モデル出力を、感覚的に知覚し得る態様においてレンダリングする。これは、例えば、画面上の視覚化として行われる。任意選択的なコンポーネントとして、システム100は、アクチュエータにアクチュエータデータを提供するためのアクチュエータインタフェース(図示されていない)も含むものとしてよい。アクチュエータデータによって、アクチュエータは、入力インタフェースに対して決定されたモデル出力に基づいて、システムの環境における行動に影響を与える。
【0051】
システム100の動作の種々の詳細及び態様は、その任意選択的な態様を含めて、図2乃至図3に関連してさらに解明される。
【0052】
全般的に、システム100は、ワークステーション、例えばラップトップ若しくはデスクトップに基づくワークステーション、又は、サーバ等の単一のデバイス若しくは装置として又は単一のデバイス若しくは装置内に具現化されるものとしてよい。このデバイス又は装置は、適当なソフトウェアを実行する1つ又は複数のマイクロプロセッサを含むものとしてよい。例えば、プロセッササブシステムは、単一の中央処理ユニット(CPU)によって具現化されるものとしてよいが、そのようなCPU及び/又は他の種類の処理ユニットの組合せ又はシステムによって具現化されるものとしてもよい。ソフトウェアが、対応するメモリ、例えば、RAM等の揮発性メモリ又はフラッシュメモリ等の不揮発性メモリにダウンロード及び/又は格納されているものとしてよい。選択的に、システムの機能的なユニット、例えばデータインタフェース及びプロセッササブシステムが、例えばフィールドプログラマブルゲートアレイ(FPGA)及び/又はグラフィックスプロセッシングユニット(GPU)であるプログラマブルロジックの形態においてデバイス又は装置内に実装されているものとしてよい。全般的に、システムの各機能ユニットは、回路の形態において実装されているものとしてよい。システム100が分散して、例えば、分散サーバ等の異なるデバイス又は装置を含み、例えばクラウドコンピューティングの形態において実装されるものとしてもよいということに留意されたい。
【0053】
図2は、1つ又は複数の不所望なトレーニングインスタンスに対してトレーニングされたモデルを適応させる方法及び適応させられたトレーニングされたモデルを入力インスタンスに適用する方法の、詳細でありながら非限定的な例を示している。
【0054】
トレーニングされたモデルTM,230と、このモデルがトレーニングされたトレーニングデータセットTD,240とが図示されている。トレーニングされたモデルは、入力インスタンスを考慮して、モデル出力を提供するように構成されているものとしてよい。トレーニングされたモデルは、当技術分野から知られている技術を使用して、トレーニングデータセットTDによりトレーニングされているものとしてよい。トレーニングされたモデルTMとトレーニングデータセットTDとが、本願に記載されているように、例えば1つ又は複数の先行する不所望なトレーニングインスタンスを以前のデータセットから削除することによって決定された残余のデータセットと、対応する適応モデルとして決定されるものとしてもよい。トレーニングされたモデルTMは、非線形モデル、例えばニューラルネットワークであるものとしてよい。全般的に、トレーニングされたモデルTMは、教師あり学習、例えば、トレーニングされたモデルの関連付けられた所望の成果を伴うトレーニングインスタンスのトレーニングデータセットTDを使用してトレーニングされているものとしてよい。例えば、トレーニングされたモデルTMは、回帰モデル又は分類モデルであるものとしてよい。しかし、トレーニングされたモデル又はトレーニングされたモデルの少なくとも一部が、教師なし学習、例えばword2vecスタイルの埋め込み、又は、自己教師あり学習、例えば画像回転予測タスク(image rotation prediction tasks)を使用してトレーニングされることも可能である。このような教師なしモジュール及び/又は自己教師ありモジュールを、本願に記載されている技術を使用してトレーニング解除することもできる。説明を簡単にするために、教師あり学習によってトレーニングされたトレーニングされたモデルTMの反復的なトレーニング解除が議論される。いくつかのトレーニングインスタンスTI1,241;TIi,242;TIj,243及びTIn,244が図示されている。全般的に、トレーニングインスタンスの数は、例えば、少なくとも又は多くとも10000個、少なくとも又は多くとも100000個又は少なくとも又は多くとも1000000個であるものとしてよい。
【0055】
数学的に、トレーニングデータセットTDによりトレーニングされたモデルTMのトレーニングは、教師あり学習設定でのこのケースにおいて、以下のように定式化されるものとしてよい。トレーニングデータセットTDは、
【数1】
と表されるものとしてよく、ここで、トレーニングインスタンスTI*は、
【数2】
と表されるものとしてよい。例えば入力インスタンスは、入力特徴ベクトルx∈X、例えば、
【数3】
とターゲット値y∈Yとを含むものとしてよい。例えばTMは、分類モデルであるものとしてよく、このケースにおいてYは、
【数4】
と等しいものとしてよく、ここで、Cは、クラスの総数である。他の例として、TMは、回帰モデルであるものとしてよく、このケースにおいては、例えばYは、
【数5】
と等しいものとしてよい。全般的に、トレーニングされたモデルTMは、トレーニングデータセットTDによりトレーニングされるものとしてよく、これによって、トレーニングデータセットTDから、見えない入力インスタンスへ一般化する関数f:X→Yを学習する。
【0056】
全般的に、トレーニングデータセットTDは、ユーザの1つ又は複数のセンサ測定値を含むものとしてよい。これは、例えば、ピクセルによって表された画像、特徴等、又は、例えば、時系列における種々の生理学的量の測定値等である。
【0057】
トレーニングされたモデルTMは、損失関数に基づいて、トレーニングデータセットTDによりトレーニングされているものとしてよい。例えば、トレーニングされたモデルTMは、経験損失最小化(Empirical Risk Minimization:ERM)モデルであるものとしてよい。この種のモデルの例は、正則化された最小二乗回帰モデル、ロジスティック回帰モデル及び種々の種類のニューラルネットワーク、例えば、ディープニューラルネットワーク及びスパースディープ/非ディープガウス過程モデルを含む。図示されているように、この種のモデルは、典型的には、図示されているパラメータPAR1,231からPARk,232まで等の、パラメータθのセットによってパラメータ化されている。例えば、パラメータのセットは、多くとも若しくは少なくとも1000個、多くとも若しくは少なくとも10000個、又は、多くとも若しくは少なくとも1000000個であるものとしてよい。
【0058】
例えば、このケースにおいては、トレーニングされたモデルTMは回帰モデルであり、入力インスタンスxに対するTMのモデル出力は、f(x;θ)と表される。他の例として、このケースにおいては、トレーニングされたモデルTMは、二項分類モデルであり、入力インスタンスxに対するTMのモデル出力は、
【数6】
として得られるものとしてよく、マルチクラス分類の場合にも同様である。損失関数は、各トレーニングインスタンスに対する損失を表すものとしてよく、例えば、損失関数は、所望のモデル出力に対するトレーニングインスタンスに対するモデル出力の偏差を決定するものとしてよい。モデルTMは、トレーニングデータセットTDの各トレーニングインスタンスに対する損失関数に従った各損失を含む目的関数を最適化することによってトレーニングされているものとしてよい。各損失の組合せ、例えば合計は、時折、トレーニングデータセットTDにわたった経験損失と称される。例えば、パラメータのセットPAR*は、最適化問題
【数7】
を解くことによって決定されるものとしてよく、ここで、
【数8】
は、損失関数の観点におけるトレーニングデータセットTDに対する各損失を組み合わせ、
【数9】
これは、例えば、二乗損失、クロスエントロピー損失等である。目的関数は、正則化項等の付加的な項を含むものとしてよい。モデルは、従来の方式において、例えば、最急降下法等の反復最適化法、例えば確率的、バッチ又はミニバッチ最急降下法によって、トレーニングデータセットによりトレーニングされているものとしてよい。
【0059】
トレーニングされたモデルTMを入力インスタンスに適用するために、典型的には、トレーニングデータセットTDにアクセスする必要はないということに留意されたい。例えば、カーネル化されていないSVM分類器の場合には、予測の形式におけるモデル出力は、
【数10】
として決定されるものとしてよく、ここで、θは、パラメータPAR*のセットに含まれている入力特徴空間において決定超平面を指定するベクトルである。
【0060】
しかし、興味深いことに、トレーニングデータセットTDは引き続き、削除要求メッセージに対処するために、トレーニングされたモデルと共に格納又はアクセスされるものとしてよい。図面は、削除要求メッセージRRM,210を示している。削除要求メッセージは、トレーニングデータセットTDの1つ又は複数の不所望なトレーニングインスタンスUTI,245を示すものとしてよい。例えば、図示されている削除要求メッセージRRMは、トレーニングインスタンスTIi,242からTIj,243までを示している。不所望なトレーニングインスタンスは、種々の形式において、例えば、メッセージにインスタンスを含めることによって、又は、メッセージにインデックスを含めることによって示されるものとしてよい。他の例として、トレーニングデータセットTDは、各ユーザから収集された複数のトレーニングインスタンスを含むものとしてよく、このケースにおいては、削除要求メッセージRRMは、トレーニングインスタンスがトレーニングデータセットTDから削除されるべきユーザを、例えばユーザ識別子等の形態において表すものとしてよい。
【0061】
削除要求メッセージRRMを受け取ると、トレーニングされたモデルTMは、1つ又は複数の不所望なトレーニングインスタンスUTIから独立させられるものとしてよい。このために、削除動作REM,220において、1つ又は複数の不所望なトレーニングインスタンスUTIがトレーニングデータセットTDから削除され、従って、残余のデータセットが取得される。この図面に示されているように、この動作は、典型的には、その場で、トレーニングデータセットTDで実行される。ただし、不所望なトレーニングインスタンスを伴わないトレーニングデータセットのコピーを作成することもできる。
【0062】
さらに、モデル適応動作MAD,250において、残余のデータセットに対する適応モデルATM,260が決定されるものとしてよい。数学的に言えば、不所望なトレーニングインスタンスを
【数11】
として表すことによって、この不所望なトレーニングインスタンスに関する適応モデルATMの決定の問題が、適応モデルの決定の問題として表現されるものとしてよく、ここで、この適応モデルは、この適応モデルが、残余のデータセットからの最初からのトレーニングによって取得可能であるという意味において、残余のデータセット
【数12】
によりトレーニングされている。又は、これは、少なくとも、残余のデータセットに関する最適化の結果として表現されるものとしてよい。D’trainの上述の定義は、単一の不所望なトレーニングインスタンスのケースを実証している。例えば、単一のインスタンスの削除を反復することによって、又は、複数のインスタンスが削除された残余のデータセットD’trainに関して最適化を実行することによって、複数の不所望なトレーニングインスタンスのケースを扱うことができる。典型的には、適応モデルATMは、元来のトレーニングされたモデルTMと同等の構造を有しており、例えば、トレーニングされたモデルTMにおけるものと同等であるが、パラメータに対する異なる値に基づいている機能又はプロシージャが、適応モデルATMにおけるモデル出力を決定するために使用されるものとしてよい。トレーニングされたモデルTMのパラメータPAR1からPARkまでに対応する適応モデルのパラメータPAR1’,261からPARk’,262までがそれぞれ図面に示されている。パラメータPAR*の数と、パラメータPAR*’の数とは、典型的には同一である。
【0063】
興味深いことに、適応モデルATMのパラメータPAR*’を決定するために、これらのパラメータは最初に、元来のトレーニングされたモデルTMのパラメータPAR*のセットに基づいて初期化されるものとしてよく、例えば、それに等しく設定されるものとしてよく、又は、少量の付加されたノイズ等を除いて等しく設定されるものとしてよい。次に、パラメータPAR*’は、トレーニングされたモデルTMをトレーニングするために使用されたものと同一であるが、ここでは、残余のデータセットに関する目的関数を最適化することによって、反復して適応させられるものとしてよい。例えば、最適化の上述の数学的な表現の観点において、適応モデルのパラメータPAR*’は、θopt’と表されるものとしてよく、最適化:
【数13】
として決定されるものとしてよい。
【0064】
一般的に、モデルのパラメータのセットの反復適応化の種々の方法は当技術分野において、それ自体知られており、本願に適用可能である。これは、例えば、確率的最急降下法等の確率的アプローチである。例えば、Kingma及びBa著「Adam:A Method for Stochastic Optimization」(https://arxiv.org/abs/1412.6980において閲覧可能であり、本願に参照として組み込まれる)において開示されているAdam optimizerが使用可能である。知られているように、また、元来のトレーニングされたモデルTMのトレーニングにも適用されるように、そのような最適化方法は、発見的(帰納的:heuristic)なものである場合があり、及び/又は、局所的最適に到達し得るものである。トレーニングは、インスタンスごとのベースにより、又は、多くとも若しくは少なくとも64個又は多くとも若しくは少なくとも256個のインスタンスのバッチにより、実行されるものとしてよい。最急降下法のタイプの種々の有利な代替案と拡張とについて、全体を通して説明する。パラメータPAR*’のセットの反復適応化は、最大で所定数の反復を実行すること、及び/又は、停止条件に基づいて反復適応化を終了させることを含むものとしてよい。これは、例えば、目的関数における変化が、1回又は複数回の後続の反復において所定の閾値よりも小さい場合である。又は、これは、それ自体知られている他の停止条件を使用することを含む。いくつかのケースにおいては、一次最適化の使用が有利であるものとしてよい。なぜなら、例えば、一般的に、二次最適化方法よりも必要とされるメモリが少ないからである。
【0065】
興味深いことに、本発明者らは、パラメータPAR*’のセットの反復適応化が、適応モデルのパラメータのセットの反復適応化の反復において、目的関数に対する二次導関数を使用することによって改良され得ることを認識した。一般的に、最適化における二次導関数の使用は、二次導関数を使用しない最急降下法等の一次最適化とは対照的に、二次最適化と称されるものとしてよい。特に、パラメータPAR*’のセットの良好な初期推定が、元来のトレーニングされたモデルのパラメータPAR*のセットに基づいて取得可能であるので、二次最適化方法の使用は、特に効果的であり得る。二次導関数は、反復ごとに評価されるものとしてよいが、以下に説明するように、準ニュートン法を使用して二次導関数を追跡し続けることも可能である。
【0066】
一般的に、反復最適化の間、一次最適化ステップと二次最適化ステップとが組み合わせられるものとしてよく、例えば、1回又は複数回の反復において、一次最適化ステップが適用されるものとしてよく、他方では、1回又は複数回の他の反復において、二次最適化ステップが適用されるものとしてよい。各反復に対する適当な最適化ステップを選択することによって、最適化の全体的な効率が改善され得る。実際に、例えば、パラメータPAR*’のセットに対する初期推定が十分に正確ではない場合には、二次最適化ステップだけでは最適に到達することさえ不可能な場合があり、ここで、付加的に1つ又は複数の一次最適化ステップを実行することは、完全に最適に到達するために役立つ場合がある。特に有益な実施形態においては、一次最適化ステップよりも格段に良好な結果を提供すると予想される場合、例えば、目的関数を改良する二次最適化ステップの十分条件が満たされる場合、及び/又は、二次ステップが一次ステップよりも格段に良好な結果を提供することができることを示す十分条件が満たされる場合には、二次最適化ステップが実行されるものとしてよい。1つ又は複数の一次最適化ステップは、他の方式において実行されるものとしてよい。例えば、十分条件のチェックが、二次反復自体の実行よりも早く行われる場合があり、このケースにおいては、特定のパフォーマンスの改良が実現され得る。全体を通して種々の例が提示される。
【0067】
特に、いくつかの反復又は総ての反復において、パラメータのセットを更新するためにニュートン反復ステップが使用されるものとしてよい。特に、上記において提示した数学的定式化の観点において、一次最適化の定義によって、
【数14】
が留意されるものとするとよい。従って、このケースにおいては、
【数15】
を留意することによって、
【数16】
として、θoptを中心にした∇R’(θ)のテイラー級数展開が取得されるものとしてよい。
【0068】
いくつかの例外的なケースにおいては、上述の方程式が単一のステップにおいて、パラメータの初期のセットから収束するものとしてよく、例えば、θopt乃至θopt’である。例えば、これは、θoptでR’(θ)が二次である場合としてよく、例えば、テイラー級数展開の最初の2つの項を通じたR’(θ)の近似が正確である場合である。しかし、多くのケースにおいて、単一の反復を実行することによって最適には到達せず、従って、目的関数のこの種の最適、例えば、局所的最適に到達するために複数の反復が実行されるものとしてよい。例えば、複数の連続したニュートンステップが実行されるものとしてよい。ニュートン反復に対する各ステップサイズは、例えば、それ自体公知のWolfe条件又はGoldstein条件を介して決定可能である。
【0069】
少なくとも1つの二次反復において、ヘッセ行列が正定値でない場合がある。結果として、ヘッセ行列は、反転可能でないことがあり、又は、ヘッセ行列は、反転可能であることがあるが、二次反復が、目的関数の最適から離れる場合がある。一般的にこれは、残余のデータセットに対する最適θopt’が、適応モデルのパラメータのセットがそれに初期化された値θoptから比較的離れている場合に生じ得る。これを阻止するために、1つ又は複数の二次最適化反復において、例えば、ヘッシアンダンピングとしてそれ自体公知であるプロセスによって、対角ノイズがヘッシアンに付加されるものとしてよい。例えば、ヘッシアンダンピングが適用されると、対角ノイズの増加する量がヘッシアンに付加されるものとしてよく、これは、例えば、H=H+τIであり、ここで、
【数17】
である。例えば、ヘッシアンHが、総ての対角値が正である対角優位になり、結果として正定行列になるまで、対角ノイズが付加されるものとしてよい。他の箇所でも議論されているように、対角ノイズは、ヘッシアンを明確に計算することなく、例えば、L2正則化項等の正則化項を含めることによって、損失関数に付加されるものとしてよい。例えば、ヘッシアンにτサイズ化された対角ノイズを効率的に付加するために、所与の強さτを有する正則化項が使用されるものとしてよい。
【0070】
興味深いことに、本発明者らは、ヘッシアンに付加されるべき対角ノイズの量を決定するために、当技術分野において時々行われるように、コレスキー分解を介した正定性が得られるかをチェックする必要がないことがあるということを認識した。この種の正定性チェックは、O(nd)最悪時間計算量を受けることがあり、ここで、dは、モデルのパラメータの数であり、nは、トレーニングインスタンスの数である。本発明者らが認識したように、このパフォーマンスのペナルティは、例えば、二次最適化が目的関数の降下方向に導くか否かをチェックすることによって、例えば、ニュートン反復のケースにおいては、
【数18】
か否かをチェックすることによって、十分な量の対角ノイズが付加されているか否かをチェックすることによって、回避されるものとしてよい。このチェックは、他の箇所においてさらに説明された確率的ヘッセ近似を使用する場合には、例えばO(nd)において、又は、以下に説明される共役勾配ヘッセベクトル積手法を使用する場合にはO(ndm)において、実行されるものとしてよく、ここで、m≪dである。ここで、nは、トレーニングデータポイントの数を指している。従って、種々の設定においては、これは、コレスキー分解を使用する場合よりも、より効率的であり得る。他の例として、十分な量の対角ノイズが付加されているか否かのチェックは、ヘッセ行列が、総ての対角値が正である対角優位対称行列であるか否かをチェックすることによって実行されるものとしてよい。このチェックは、ヘッシアンを具体化することによって、O(nd)時間計算量において実行されるものとしてよく、また、任意選択的に、早期放棄を使用することによって、例えばO(d)を犠牲にして、例えば、ヘッシアンに一度に1つのデータポイントを構築し、さらに、条件に違反すると直ちにチェックを停止することによって実行されるものとしてよい。一般的に、種々のパラメータ値に対して、正定性を直接チェックする代わりに、十分であるが必要ではない、正定性に対する条件をチェックすることによって、全体的なパフォーマンスが向上する場合がある。
【0071】
いくつかの実施形態においては、目的関数に対するヘッシアンをパラメータPAR*’のセットに関して決定した後に、ヘッシアンを正定値にするために必要な対角ノイズの量が決定されるものとしてよい。例えば、上述の条件のうちの1つのような、正定性に対する十分な条件を、ノイズの量が十分であるか否かをチェックするために使用するものとしてよい。付加されるべき対角ノイズの量が閾値を超える場合、1回又は複数回の反復において、一次最適化方法を使用してパラメータPAR*’のセットが適応させられるものとしてよい。これは、例えば、任意選択により、ライン探索等の適当なステップサイズ選択メカニズムを備えた最急降下法である。例えば、対角ノイズの量が閾値を超えるか否かのチェックは、対角ノイズの量が固定された閾値より大きいか否かのチェックを含み、これは、例えば、ヘッセ行列の各行の合計の10倍又は100倍である。従って、例えば、局所的最適から比較的離れている場合に、それが逆効果的な方向に最適化を導く可能性がある設定において、二次方法を使用することが回避されるものとしてよく、代わりに、このケースにおいて一次方法が使用されるものとしてよい。その後、再びヘッシアンがそれに基づいて決定されるものとしてよく、例えば、可能である場合には、二次最適化ステップが適用されるものとしてよい。
【0072】
種々の二次最適化方法、例えばニュートン反復は、ヘッセ行列を計算すること、及び、反転させることを含むものとしてよい。既知のアルゴリズムを使用することによって、これはO(Nd)動作において反復して実行されるものとしてよく、ここで、dは、ヘッセ行列の行及び列の数であり、例えば、ベクトルθのサイズである。本発明者らが認識したように、これは、残余のデータセットに対する適応モデルの決定の設定において不所望であり得る。なぜなら、パラメータPAR*’のセットは、極めて大きい場合があり、例えば、少なくとも100000個、少なくとも100万個、又は、さらに、少なくとも1000万個の場合があるからである。
【0073】
興味深いことに、種々の実施形態において、目的関数に対するヘッシアンの逆行列の積及び目的関数の勾配は、例えば、ニュートン反復において使用されているように、積及びヘッシアンにおける二次方程式を最小化することによって決定されるものとしてよい。従って、O(nd)時間計算量は、約O(ndm)まで低減されるものとしてよく、ここで、m≪dである。これは、パラメータの数が比較的多い現在の設定において特に有益である。例えば、Barak Pearlmutter著「Fast exact multiplication by the Hessian」(Neural Computation,6(1):第147~160頁,1994年)(この技術に関する限り、参照によって本願に組み込まれる)に開示されている共役勾配ヘッセベクトル積法が使用され得る。種々の実施形態において、例えば、ニュートン反復において使用される勾配ベクトル伴うヘッシアンの逆行列の積が確率的に推定されるものとしてもよく、これは、例えば、P.Koh及びP.Liang著「Understanding black-box predictions via influence functions」(Proceedings of ICML 2017年)(確率的ヘッセ推定の第3節が参照によって本願に組み込まれる)からそれ自体公知である。また、確率的ヘッセ推定は、例えば、反復がO(nd)時間において実行されることを可能にすることによって、パフォーマンスを格段に向上させることができる。
【0074】
種々の実施形態においては、二次反復における使用のためのヘッセ行列又はその逆行列は、準ニュートン法を使用してそれを推定することによって決定されるものとしてよい。このようなケースにおいては、反復において、ヘッセ行列の現在の近似が、ヘッセ行列の先行する近似の適応化によって推定されるものとしてよく、又は、その逆行列についても同様である。種々のこの種の方法、例えばBFGS又はL-BFGSは、それ自体公知であり、適用可能である。
【0075】
種々の実施形態においては、残余のデータセットに対する適応モデルは、適応モデルATMのパラメータのセットのサブセットのみの反復適応化によって決定されるものとしてよい。例えば、不所望なトレーニングインスタンスを含むトレーニングされたモデルで元来トレーニングされているパラメータを含む他のパラメータが、元来のトレーニングされたモデルTMからコピーされるものとしてよい。特に、複数の層を伴うニューラルネットワークのケースにおいては、ニューラルネットワークの複数の層のサブセットのみの重みが、最適化において適応させられるものとしてよい。興味深いことに、引き続き、不所望なトレーニングインスタンスUTIは、十分に削除されたとみなされ得る。また、最適化問題が、パラメータのセットのサブセットのみを最適化することによって、かなり効率的に解決され得る。
【0076】
図示されているように、適応モデルATMが決定されると、モデル適用動作MAP,280が、適応モデルATMを入力インスタンスII,270に適用するために使用されるものとしてよく、結果として、モデル出力MO,290になる。例えば、モデル適用MAPは、適応モデルを決定した同一のシステムによって、又は、適応モデルを取得する他のシステムによって、実行されるものとしてよい。興味深いことに、少なくとも、そのパラメータPAR*’のセットが、不所望なトレーニングインスタンスUTIが削除されている残余のデータセットに関して定められた目的関数の最適を表し得るという意味において、モデル出力MOは不所望なトレーニングインスタンスUTIから独立しているとみなされ得る。さらに、残余のデータセット自体及び適応モデルATMも、この意味において、不所望なトレーニングインスタンスUTIから独立しているとみなされ得る。従って、削除要求メッセージRRMに対処する適当な方法が示されている。
【0077】
図3は、特徴抽出器を含むトレーニングされたモデルを適応させる方法の、詳細でありながら非限定的な例を示している。この例は、図2の例に基づいているものとしてよい。トレーニングされたモデルTM,330が図示されており、これは、入力インスタンスを考慮して、モデル出力を提供するように構成されている。トレーニングされたモデルTMは、トレーニングデータセットの各トレーニングインスタンスの損失関数に従った各損失を含む目的関数の反復最適化によって、トレーニングデータセットTDによりトレーニングされるものとしてよい。例えば、トレーニングインスタンスTI1,341;TIi,342;TIj,343及びTIn,344が図示されている。図2と同様に、1つ又は複数のトレーニングインスタンスが、トレーニングされたモデルTMがそこから独立させられるべき不所望なトレーニングインスタンスとして識別されるものとしてよい。例として、図面は、不所望なトレーニングインスタンスUTI,345として識別されるトレーニングインスタンスTIi及びTIjを示している。従って、モデル適応動作MAD,350が、トレーニングデータセットTDから不所望なトレーニングインスタンスUTIを削除することによって取得された残余のデータセットに対して適応モデルATM,360を決定するために実行されるものとしてよい。
【0078】
興味深いことに、図示された例において、トレーニングされたモデルTMは、パラメータFPAR1,338からFPARi,339までの第1のセットによってパラメータ化された特徴抽出器FX,334を含むものとしてよい。さらに、トレーニングされたモデルTMは、パラメータPAR1,331からPARk,332までの第2のセットによってパラメータ化されたさらなるトレーニングされたモデルFTM,333を含むものとしてよい。従って、トレーニングされたモデルTMは、クエリインスタンスの特徴表現を取得するために、特徴抽出器FXをクエリインスタンスに適用することによって、及び、モデル出力を取得するために、さらなるトレーニングされたモデルFTMを特徴表現に適用することによって、クエリインスタンスに適用されるものとしてよい。
【0079】
さらなるトレーニングされたモデルFTMは、不所望なトレーニングインスタンスUTIを含むトレーニングデータセットTDによりトレーニングされるものとしてよい。損失関数に基づいてトレーニングされた、トレーニングされたモデルTMは、このような例においては、例えば、トレーニングデータセットのトレーニングインスタンスに対する損失関数に従った各損失を含む目的関数を反復して更新することによって、損失関数に基づいてトレーニングされた、そのさらなるトレーニングされたモデルFTMを少なくとも指すものとしてよく、このケースにおけるさらなるトレーニングされたモデルFTMへの入力は、特徴抽出器FXによって与えられている。
【0080】
しかし、興味深いことに、特徴抽出器FXは、不所望なトレーニングインスタンスを含まない、さらなるデータセット(図示されていない)によりトレーニングされるものとしてよい。例えば、特徴抽出器は、例えば、第3の当事者から取得された事前にトレーニングされた特徴抽出器であるものとしてよい。この図面においては、特徴抽出器は、パラメータのセットを含むものとして示されているが、特徴抽出器FXが、例えば、Google AI Platform又はthe Microsoft AI Platform等の機械学習フレームワークの例えばAPIを介してアクセスされる外部の特徴抽出器であるものとしてよいということが理解されるであろう。一般的に、特徴抽出器FXは、複数のトレーニングされたモデルの間において共有されているものとしてよい。徴抽出器FXは、例えば、公的に使用可能なデータの比較的大きいデータセットによりトレーニングされるものとしてもよく、これに対して、さらなるトレーニングされたモデルFTMは、比較的小さいデータセットによりトレーニングされるものとしてよい。例えば、特徴抽出器は、Oxford大学のVGGネットワーク又は類似の一般的に事前にトレーニングされたモデルであるものとしてよい。特徴抽出器は、損失関数を使用してトレーニングされているものとしてよいが、これは必須ではなく、知られている特徴抽出器をトレーニングする種々の他の方法が使用されるものとしてよく、又は、特徴抽出器FXをトレーニングする第3の当事者によって使用されているものとしてよい。
【0081】
興味深いことに、比較的大きいデータセットによりトレーニングされた一般的な特徴抽出器FXを使用することによって、比較的小さいデータセットにより十分に、さらなるトレーニングされたモデルFTMのトレーニングをすることができるようになっているものとしてよい。例えば、トレーニングデータセットTDは、多くとも100個、多くとも1000個又は多くとも10000個のトレーニングインスタンスを含むものとしてよい。他方では、特徴抽出器のトレーニングデータセットは、例えば、少なくとも100000個又は少なくとも1000000個のトレーニングインスタンスを含むものとしてよい。さらなるトレーニングされたモデルをトレーニングするために比較的小さいデータセットを使用することは、パフォーマンス及びデータ収集の労力の観点から有益であり得るが、これによって、削除要求メッセージに適当に対処することが特に重要になり得る。なぜなら、例えば、トレーニングデータセットTDの単一のインスタンスがパラメータPAR*及び/又はさらなるトレーニングされたモデルFTMのモデル出力に対して比較的大きい影響を有していることがあるからである。
【0082】
適応モデルATMを決定する際に、特徴抽出器FXのパラメータFPAR*は、変化しないように保持されるものとしてよい。例えば、図面に示されているように、適応モデルATMは、トレーニングされたモデルTMと同等の特徴抽出器FXを含むものとしてよく、また、トレーニングされたモデルの特徴抽出器のパラメータPAR1,・・・,PARiのセットが使用されるものとしてもよい。例えば、あるケースにおいては、トレーニングされたモデルTMは、その場で適応させられ、トレーニングされたモデルのこの部分に対する適応化が必要ない場合がある。引き続き、モデルのこの部分が、不所望なトレーニングインスタンスUTIから独立しているものとしてよい。
【0083】
しかし、図示されているように、トレーニングされたモデルTMの適応化は、さらなるトレーニングされたモデルFTMの適応化を含むものとしてよく、これによって、適応させられたさらなるトレーニングされたモデルFTM’,363が取得される。適応モデルATMのさらなるトレーニングされたモデルFTM’のパラメータPAR1’,361からPARk’,362までが図面に示されている。これらのパラメータは、図2のトレーニングされたモデルに対して記載されているように適応させられるものとしてよい。例えば、パラメータPAR*’は、例えば、図2において行われているようにトレーニングされたモデルTMからのパラメータPAR*のセットに基づいて初期化されるものとしてよい。この場合には、さらなるトレーニングされたモデルFTM’のパラメータPAR*’のセットが、トレーニングデータセットTDから不所望なトレーニングインスタンスUTIを削除したことによって取得された残余のデータセットに関して目的関数を最適化することによって、反復して適応させられるものとしてよい。図2に対して議論された目的関数を最適化する種々の技術が、ここに適用されるものとしてよい。興味深いことに、さらなるトレーニングされたモデルFTMは、同一のタスク用に完全にトレーニングされたモデルより小さい場合があり、及び/又は、比較的小さいデータセットによりトレーニングされている場合がある。結果として、反復最適化の反復がより速くなる可能性があり、さらに、最適に到達するために必要な反復がより少なくなり得る。従って、パフォーマンスを改善することができ、他方では、引き続き、不所望なトレーニングインスタンスUTIから独立しているモデルが決定される。
【0084】
図示されていないが、クエリインスタンスの特徴表現を取得するために、適応させられたトレーニングされたモデルATMの特徴抽出器FX、例えば、トレーニングされたモデルTMの元来の特徴抽出器FXをクエリインスタンスに適用することによって、さらに、モデル出力を取得するために、適応させられたさらなるトレーニングされたモデルFTM’を特徴表現に適用することによって、適応させられたトレーニングされたモデルATMが、クエリインスタンスに適用されるものとしてよい。
【0085】
図4は、損失関数に基づいてトレーニングされたモデルを処理する、コンピュータにより実施される方法400のブロック図を示している。このモデルは、入力インスタンスを考慮して、モデル出力を提供するように構成されている。このモデルは、目的関数の反復最適化によって、トレーニングデータセットによりトレーニングされるものとしてよい。目的関数は、トレーニングデータセットの各トレーニングインスタンスに対する損失関数に従った各損失を含むものとしてよい。方法400は、図1のシステム100の動作に対応するものとしてよい。しかし、これは制限ではなく、方法400は、他のシステム、装置又はデバイスを使用して実行されるものとしてもよい。
【0086】
方法400は、「モデルへのアクセス、データのトレーニング(ACCESSING MODEL,TRAINING DATA)」と称される動作において、モデル及びこのモデルがトレーニングされたトレーニングデータセットへのアクセス410を含むものとしてよい。
【0087】
方法400は、さらに、「削除要求メッセージの受け取り(RECEIVING REMOVAL REQUEST MESSAGE)」と称される動作において、削除要求メッセージの受け取り420を含むものとしてよい。削除要求メッセージは、トレーニングデータセットの1つ又は複数の不所望なトレーニングインスタンスを識別するものとしてよい。
【0088】
方法400は、さらに、削除要求メッセージを受け取ると、1つ又は複数の不所望なトレーニングインスタンスからモデルを独立させることを含むものとしてよい。1つ又は複数の不所望なトレーニングインスタンスからモデルを独立させるために、方法400は、「不所望なトレーニングインスタンスの削除(REMOVING UNDESIRED TRAINING INSTANCES)」と称される動作において、残余のデータセットを取得するための、トレーニングデータセットからの1つ又は複数の不所望なトレーニングインスタンスの削除430を含むものとしてよい。
【0089】
モデルを独立させるために、方法400は、さらに、「適応モデルの決定(DETERMINING ADAPTED MODEL)」と称される動作において、残余のデータセットに対する適応モデルの決定440を含むものとしてよい。適応モデルを決定するために、方法400は、「パラメータの初期化(INITIALIZING PARAMETERS)」と称される動作において、トレーニングされたモデルのパラメータのセットに基づく適応モデルのパラメータのセットの初期化442を含むものとしてよい。適応モデルを決定するために、方法400は、さらに、「残余のデータセットに関する反復適応化(ITERATIVELY ADAPTING WITH RESPECT TO REMAINDER DATASET)」と称される動作において、残余のデータセットに関する目的関数を最適化することによる適応モデルのパラメータのセットの反復適応化444を含むものとしてよい。
【0090】
全般的に、図4の方法400の動作は、任意の適当な順番で実行されるものとしてよく、例えば、連続的に、同時に、又は、それらの組合せにおいて実行されるものとしてよく、適用可能な場合、例えば、入力/出力の関係によって、必要とされる特定の順序に従うものとしてよい。
【0091】
この方法は、コンピュータにより実施する方法として、専用ハードウェアとして、又は、両方の組合せとして、コンピュータ上において実施されるものとしてよい。また、図5に示されているように、コンピュータに対する命令、例えば実行可能なコードが、例えば、機械可読な物理的マークのシリーズ510の形態において、及び/又は、異なる電気的、例えば、磁気的又は光学的特性又は値を有する要素のシリーズとして、コンピュータ可読媒体500上に格納されるものとしてよい。実行可能なコードは、一時的又は非一時的に格納されているものとしてよい。コンピュータ可読媒体の例はメモリデバイス、光学的な記憶装置、集積回路、サーバ、オンラインソフトウェア等を含む。図5は、光ディスク500を示している。
【0092】
実施例、実施形態、又は、任意選択的な特徴は、非限定的であると示されているか否かにかかわらず、特許請求される本発明を限定するものとして理解されるべきではない。
【0093】
上記の実施形態は、本発明を限定するのではなく、例示するものであり、当業者は、添付の特許請求の範囲から逸脱することなく、多くの選択的な実施形態を設計することができるであろうということに留意されたい。特許請求の範囲においては、括弧の間に配置された参照記号は、特許請求の範囲を制限するものと解釈されるべきではない。動詞「comprise」とその語形変化は、特許請求の範囲に記載されているもの以外の要素又は段階の存在を排除するものではない。要素に先行する冠詞「a」又は「an」は、複数のそのような要素の存在を排除するものではない。要素のリスト又はグループの前にあるときの「少なくとも1つ」等の表現は、リスト又はグループからの要素の総て又は任意のサブセットの選択を表す。例えば、「A、B及びCの少なくとも1つ」という表現は、Aのみ、Bのみ、Cのみ、AとBとの両方、AとCとの両方、BとCとの両方、又は、A、B及びCの総てを含むと理解されるべきである。本発明は、いくつかの別個の要素を含むハードウェアによって、及び、適当にプログラムされたコンピュータによって実施されるものとしてよい。いくつかの手段を列挙する装置クレームにおいては、これらの手段のいくつかは、単一かつ同一のハードウェアアイテムによって具現化され得る。特定の措置が相互に異なる従属請求項に記載されているという単なる事実は、これらの措置の組合せを有利に使用することができないことを示すものではない。
図1
図2
図3
図4
図5