コンピュータサイエンスにおいて、オンライン機械学習とは、データが順次利用可能になり、各ステップで将来のデータに対する最適な予測器を更新するために使用される機械学習手法です。これは、トレーニングデータセット全体を一度に学習して最適な予測器を生成するバッチ学習手法とは対照的です。オンライン学習は、データセット全体を学習することが計算上不可能な機械学習分野でよく用いられる手法であり、アウトオブコアアルゴリズムが必要となります。また、アルゴリズムがデータの新しいパターンに動的に適応する必要がある場合や、データ自体が時間の関数として生成される場合(例えば、国際金融市場における価格予測)にも使用されます。オンライン学習アルゴリズムは、壊滅的な干渉を受けやすいという問題がありますが、これは増分学習アプローチによって解決できます。
オンライン機械学習アルゴリズムは、広告収入を最大化するためのスポンサードサーチ、ポートフォリオ最適化、最短経路予測(確率的重み付け、例えば地図アプリケーションにおける道路交通量など)、スパムフィルタリング、リアルタイム不正検出、 eコマースの動的価格設定など、幅広い分野で応用されています。また、初期トレーニング後に継続的なリアルタイム適応を可能にするために、LLM にオンライン学習パラダイムを使用することへの関心も高まっています。[ 1 ]
教師あり学習の環境では、学ぶべきことは、入力と出力空間として、結合確率分布から抽出されたインスタンスをうまく予測するの上実際には、学習者は真の分布を知ることはない。インスタンスではなく、学習者は通常、訓練用の例のセットにアクセスできます。この設定では、損失関数は次のように与えられます。、したがって予測値との差を測定するそして真の価値理想的な目標は、関数を選択することです。、 どここれは仮説空間と呼ばれる関数空間であり、総損失の何らかの概念が最小化されるように設計されます。モデルの種類(統計モデルか敵対モデルか)に応じて、異なる損失概念を考案することができ、それによって異なる学習アルゴリズムが導き出されます。
統計的学習モデルでは、トレーニングサンプル真の分布から抽出されたものと想定されるそしてその目的は、予想される「リスク」を最小限に抑えることである。 この状況における一般的なパラダイムは、関数を推定することである。経験的リスク最小化または正則化経験的リスク最小化(通常はチホノフ正則化)によって行われます。ここで選択する損失関数によって、正則化最小二乗法やサポートベクターマシンなど、いくつかのよく知られた学習アルゴリズムが生まれます。このカテゴリの純粋なオンラインモデルは、新しい入力のみに基づいて学習します。現在の最良の予測因子また、追加の保存情報(通常はトレーニングデータのサイズとは無関係なストレージ要件があると想定される)もいくつかあります。多くの定式化、例えば非線形カーネル法では、真のオンライン学習は不可能ですが、再帰アルゴリズムを用いたハイブリッドオンライン学習の形式は使用できます。依存することが許可されているそして、これまでのすべてのデータポイントこの場合、過去のすべてのデータポイントを保存する必要があるため、必要なスペースは一定であるとは保証されませんが、バッチ学習手法と比較すると、新しいデータポイントを追加した場合の計算時間は短縮される可能性があります。
上記の問題を克服するための一般的な戦略は、ミニバッチを使用して学習することです。ミニバッチは、少量のデータを処理します。一度にデータポイントを処理できるため、これは擬似オンライン学習とみなすことができます。訓練データの総数よりもはるかに少ないデータ量。ミニバッチ法は、訓練データを繰り返し処理することで、機械学習アルゴリズムの最適化されたアウトオブコアバージョン(例えば、確率的勾配降下法)を取得するために使用されます。バックプロパゲーションと組み合わせることで、これは現在、人工ニューラルネットワークの訓練における事実上の標準訓練方法となっています。
線形最小二乗法の単純な例を用いて、オンライン学習における様々な概念を説明する。これらの概念は十分に一般的であるため、例えば他の凸損失関数など、他の設定にも適用できる。
監督付き学習の設定を検討します学習すべき線形関数であること: どこは入力(データポイント)のベクトルであり、は線形フィルタベクトルです。目標はフィルタベクトルを計算することです。この目的のために、二乗損失関数 ベクトルを計算するために使用されます経験的損失を最小限に抑える どこ
させてになるデータ行列と最初の到着後の目標値の列ベクトルデータポイント。共分散行列を仮定すると可逆である場合(そうでない場合は、ティホノフ正則化と同様の方法で進める方が望ましい)、最良の解線形最小二乗問題は次のように与えられる。
次に、共分散行列を計算します。時間がかかる反転行列は時間がかかる残りの乗算には時間がかかる合計時間は. がある場合データセット内の総ポイント数。各データポイントの到着後に解を再計算する。素朴なアプローチでは、総複雑度は行列を保存する際には、そうすれば、各ステップで更新するには追加するだけで済みますこれには時間、合計時間を短縮しかし、追加のストレージスペースは保管する[ 2 ]
再帰的最小二乗法(RLS)アルゴリズムは、最小二乗問題に対するオンラインアプローチを検討します。初期化することで、そして前節で述べた線形最小二乗問題の解は、以下の反復計算によって求めることができる。 上記の反復アルゴリズムは帰納法を用いて証明できる。[ 3 ]また、証明によれば、RLSは適応フィルタの文脈でも考察できます(RLSを参照)。
複雑さこのアルゴリズムの手順は次のとおりです。これは、対応するバッチ学習の複雑さよりも桁違いに高速です。各ステップでのストレージ要件ここに行列を格納するこれは、の場合可逆でない場合は、問題の損失関数の正則化バージョンを検討してください。そうすれば、同じアルゴリズムが、そして反復処理は次のように進む。[ 2 ]
このとき に置き換えられます またはによるすると、これは確率的勾配降下法アルゴリズムになります。この場合、計算量はこのアルゴリズムのステップは、各段階におけるストレージ要件は一定です。
ただし、ステップサイズ前述のように、期待されるリスク最小化問題を解決するには、ステップサイズを慎重に選択する必要があります。減衰ステップサイズを選択することで、平均反復の収束を証明できるこの設定は、最適化におけるよく知られた問題である確率的最適化の特殊なケースである。 [ 2 ]
実際には、データに対して複数の確率的勾配パス(サイクルまたはエポックとも呼ばれる)を実行できます。このようにして得られるアルゴリズムは増分勾配法と呼ばれ、反復に対応します。 確率的勾配法との主な違いは、ここではシーケンスがどのトレーニングポイントを訪れるかを決定するために選択されますこれは、第 1 ステップです。このようなシーケンスは、確率的または決定論的である可能性があります。反復回数は、点の数とは切り離されます (各点は複数回考慮できます)。増分勾配法は、経験的リスクの最小化を提供することが示されています。[ 4 ]増分手法は、多数の項の合計で構成される目的関数 (たとえば、非常に大きなデータセットに対応する経験的誤差) を考慮する場合に有利になることがあります。[ 2 ]
カーネルを使用すると、上記のアルゴリズムを非パラメトリックモデル(またはパラメータが無限次元空間を形成するモデル)に拡張できます。対応する手順はもはや真のオンラインではなく、すべてのデータポイントを保存する必要が生じますが、それでも総当たり法よりは高速です。この議論は二乗損失の場合に限定されていますが、任意の凸損失に拡張できます。簡単な帰納法[ 2 ]により、次のことが示されます。データ行列と出力後SGDアルゴリズムのステップ、 どこそしてそのシーケンス再帰を満たす: そして ここで注目してくださいこれは標準カーネルです、予測子は次の形式である。
さて、一般的なカーネルの場合代わりに が導入され、予測子は すると、同じ証明によって、最小二乗損失を最小化する予測器は、上記の再帰を次のように変更することによって得られることも示されます。 上記の式では、更新するすべてのデータを保存する必要があります。再帰を評価する際の合計時間計算量は、第 番目のデータポイントは、 どここれは、単一の点ペアでカーネルを評価するコストです。[ 2 ]このように、カーネルの使用により、有限次元のパラメータ空間からカーネルによって表現される、おそらく無限次元の特徴へ代わりにパラメータ空間で再帰を実行する次元はトレーニングデータセットのサイズと同じです。一般に、これは表現定理の結果です。[ 2 ]
オンライン凸最適化(OCO)[ 5 ]は、凸最適化を活用して効率的なアルゴリズムを実現する意思決定のための一般的なフレームワークです。このフレームワークは、以下のような繰り返しゲームプレイに基づいています。
のために
目標は、後悔、つまり累積損失と最良の固定点の損失との差を最小限に抑えることである。後から考えると。例として、オンライン最小二乗線形回帰の場合を考えてみましょう。ここでは、重みベクトルは凸集合から得られます。そして自然は凸型の損失関数を返す。ここで注意すべき点は暗黙的に送信されます。
しかし、一部のオンライン予測問題はOCOのフレームワークに適合しません。たとえば、オンライン分類では、予測領域と損失関数は凸ではありません。このようなシナリオでは、凸化のための2つの単純な手法、ランダム化と代理損失関数が使用されます[ 6 ]。
単純なオンライン凸最適化アルゴリズムの例をいくつか挙げます。
最も単純な学習ルールは、(現在のステップで)過去のすべてのラウンドで損失が最小の仮説を選択することです。このアルゴリズムは「リーダーに追従」と呼ばれ、ラウンドごとに異なります。単純に次のように表されます。 この方法は貪欲アルゴリズム と見なすことができる。オンライン二次最適化の場合(損失関数は) 後悔の限界は、しかし、オンライン線形最適化などの他の重要なモデル群では、FTLアルゴリズムで同様の境界を得ることはできません。そのため、FTLに正則化を追加することで修正を行います。
これはFTLの自然な修正であり、FTL解を安定化させ、より良い後悔境界を得るために使用されます。正則化関数ラウンドtでは、以下のように選択され、学習が実行されます。 特別な例として、オンライン線形最適化の場合を考えてみましょう。つまり、自然が次の形式の損失関数を返す場合です。また、正則化関数を仮定するある正の数に選ばれるすると、後悔最小化反復は次のようになることが示される。 これは次のように書き換えることができることに注意してください。これは、オンライン勾配降下法と全く同じように見える。
Sが代わりに凸部分空間である場合Sを投影する必要があり、その結果、更新ルールが修正される 。 このアルゴリズムは、ベクトルが遅延射影として知られています。勾配を累積します。これはネステロフの双対平均化アルゴリズムとしても知られています。線形損失関数と二次正則化のこのシナリオでは、後悔は次のように制限されます。したがって、平均後悔値は期待どおり0になる。
上記は、線形損失関数に対する後悔限界を証明した。アルゴリズムを任意の凸損失関数に一般化するために、劣勾配のは、の線形近似として使用されます。近くこれにより、オンライン劣勾配降下法アルゴリズムが開発された。
パラメータを初期化します
のために
二次正則化FTRLアルゴリズムは、上述のように遅延射影勾配アルゴリズムにつながります。任意の凸関数と正則化関数に上記を適用するには、オンラインミラー降下法を使用します。線形損失関数に対しては、後知恵による最適な正則化を導出でき、これによりAdaGradアルゴリズムが得られます。ユークリッド正則化の場合、後悔限界を示すことができます。さらに改善すれば強凸型および指数凹型の損失関数について。
継続的学習とは、継続的な情報ストリームを処理することによって学習済みモデルを絶えず改善することを意味します。[ 7 ]継続的学習機能は、絶えず変化する現実世界で相互作用するソフトウェアシステムや自律エージェントにとって不可欠です。しかし、継続的学習は機械学習やニューラルネットワークモデルにとって課題です。なぜなら、非定常データ分布から増分的に利用可能な情報を継続的に取得すると、一般的に壊滅的な忘却につながるからです。
オンライン学習のパラダイムは、学習モデルの選択によって異なる解釈があり、それぞれが機能シーケンスの予測精度に関して異なる意味合いを持つ。この議論では、典型的な確率的勾配降下法アルゴリズムを使用する。前述のように、その再帰式は次のように与えられる。
最初の解釈では、期待リスクを最小化する問題に適用される確率的勾配降下法について考察する。上記で定義したとおりである。[ 8 ]実際、無限のデータストリームの場合、例は分布から独立同分布で抽出されると仮定される勾配のシーケンス上記の反復では、期待リスクの勾配の確率的推定値の独立同分布サンプルが用いられます。したがって、確率的勾配降下法の複雑性に関する結果を適用して偏差を制限することができる。、 どこは最小化します[ 9 ]この解釈は有限の訓練セットの場合にも有効です。データを複数回通過すると勾配はもはや独立ではなくなりますが、それでも特殊なケースでは複雑性の結果を得ることができます。
2番目の解釈は、有限の訓練セットの場合に適用され、SGDアルゴリズムを増分勾配降下法の例として捉えます。[ 4 ]この場合、代わりに経験的リスクに着目します。 勾配が増分勾配降下反復では、勾配の確率的推定値も含まれる。この解釈は確率的勾配降下法にも関連していますが、期待リスクではなく経験的リスクを最小化するために適用されます。この解釈は期待リスクではなく経験的リスクに関するものであるため、データに対して複数回の処理を容易に行うことができ、実際には偏差のより厳密な境界が得られます。、 どこは最小化します。
学習パラダイム
一般的なアルゴリズム
学習モデル