オンライン学習 (G検定)

オンライン学習

1. 定義と概要

オンライン学習とは、機械学習において学習データを1件ずつ、または少量ずつ逐次的に読み込みながら、その都度モデルのパラメータ(モデルの内部にあり、学習によって少しずつ調整されていく数値)を更新していく学習方式です。全データを一括で保持する必要がなく、データが時間の経過とともに逐次到着する状況、たとえば時系列データやストリーミングデータのような場面に適した学習方式といえます。

確率的勾配降下法(SGD)は、データ1件ごとに勾配(損失、つまり予測のズレを減らす方向を示す数値の手がかり)を計算して少しずつパラメータを更新していく最適化の手法です。1件ごとに少しずつ進む更新の仕方がオンライン学習の考え方と重なるため、相性の良いアルゴリズムとして知られています。

従来の機械学習では、あらかじめ収集した訓練データセット全体を一括で学習させる方式が基本でした。データがリアルタイムに生成され続けるWebサービスやセンサー機器の普及に伴い、全データを毎回学習し直すことが計算コストやメモリ容量の面で非現実的になる場面が増えてきました。

この背景から、データが到着するたびに逐次更新できるオンライン学習が、変化の速い環境に対応する学習方式として位置づけられています。届いたデータをその場で取り込めるため、モデルを作り直す作業を待たずに最新の傾向を反映できます。

2. 試験対策ポイント

オンライン学習について、理解するうえで中心になるのはメリットとデメリットの両面です。メリットは、新しい傾向にすぐ適応できる点と、データを1件ずつ処理するため全データをメモリに保持する必要がなくメモリ消費を抑えられる点の2つです。この即応性と省メモリ性が、オンライン学習の評価される理由といえます。

一方でデメリットとして、直近に届いたデータやノイズ(データに混じった誤差や異常な値)・異常値の影響を強く受けやすい点が挙げられます。加えて、新しいデータへの適応を優先するあまり、過去に学習した傾向をうまく反映できなくなっていく点も課題として扱われます。変化への追従力と引き換えに、安定性を犠牲にしやすいという関係にあります。

なお、この現象自体は継続学習や転移学習・ファインチューニングの文脈で破壊的忘却(新しい学習によって、過去に学んだ内容が失われてしまう現象)と呼ばれ、G検定では別のテーマとして扱われます。用語としてどちらのテーマに属するかは、混同しやすいところです。

アルゴリズムの知識としては、確率的勾配降下法(SGD)が、オンライン学習と相性の良い手法としてセットで扱われます。また、バッチ学習・ミニバッチ学習と並べて整理されることが多く、更新単位が「全データ一括」「少数サンプルの集合」「1件ずつ」のいずれに当たるかという整理の軸が押さえておきたいポイントです。

3. 関連概念との比較・相違点

バッチ学習との最大の違いは、パラメータを更新するタイミングと単位にあります。バッチ学習とは、訓練データ全体を一括して読み込み、その全体を使ってパラメータを更新する学習方式です。データが届くたびに逐次更新するオンライン学習とは対照的な関係にあります。

バッチ学習は安定した学習ができる一方、データ全体をメモリに保持する必要があり、データの変化への追従は遅くなります。オンライン学習は追従力に優れる代わりに、直近のデータの影響を受けやすいという裏返しの関係にあります。

ミニバッチ学習との違いは、更新単位の粒度にあります。ミニバッチ学習とは、少数サンプルの集合を単位としてパラメータを更新する方式です。1件ずつ更新するオンライン学習と、データ全体で更新するバッチ学習の中間に位置づけられ、実務のディープラーニングでも広く使われています。

3つの方式を、更新単位・変化への追従・メモリ消費という軸で並べると違いがはっきりします。

学習方式 更新単位 変化への追従 メモリ消費
バッチ学習 訓練データ全体を一括 遅い(そのぶん安定した学習ができる) データ全体を保持するため大きい
ミニバッチ学習 少数サンプルの集合 オンライン学習とバッチ学習の中間 中間
オンライン学習 1件ずつ、または少量ずつ 速い(直近のデータの影響も受けやすい) 全体を保持しないため小さい

更新単位が「全データ一括」「少数サンプルの集合」「1件ずつ」のどれに当たるかという軸で、3つの学習方式を対比して捉えることが取り違えやすい点です。

4. ビジネス・実務での活用シナリオ

ECサイトの推薦システム(ユーザーの好みに合わせて商品やコンテンツをおすすめする仕組み)では、閲覧や購買行動のデータが絶え間なく発生します。オンライン学習でモデルを都度更新すれば、最新の興味・関心をリアルタイムに反映したおすすめを提示できます。ユーザーの好みは日々変化するため、過去のデータだけで固定したモデルでは鮮度の高い提案が難しくなります。

クレジットカードの不正検知(クレジットカードの不正利用など、通常と異なる異常なパターンを見つけ出す仕組み)でも、オンライン学習が活用されています。不正の手口は次々と新しいパターンに変化するため、取引データが届くたびにモデルを更新し続けることで検知精度を保てます。過去のパターンだけに依存したモデルでは、新手の手口を見逃すリスクが高まります。

金融市場の価格予測でも同様の考え方が使われます。価格は時々刻々と変化するため、逐次到着する取引データに合わせてモデルを更新し続けることが求められます。バッチ学習のように一定間隔でまとめて再学習する方式では、変化の速い市場の動きに追いつけない場面が生じます。

5. 要点まとめ

  • オンライン学習は、データが届くたびに1件ずつモデルのパラメータを逐次更新していく学習方式で、教育分野のeラーニングとは異なる機械学習の専門用語です。
  • メリットは新しい傾向への迅速な適応とメモリ消費の少なさで、デメリットはノイズ・異常値の影響を受けやすい点と、過去の傾向への対応力が薄れやすい点です。
  • バッチ学習(全データ一括更新)、ミニバッチ学習(少数サンプル単位の更新)との更新単位の違いが、G検定では対比の形で扱われる論点です。

6. 確認問題

問1オンライン学習は、データが到着するたびにモデルのパラメータを逐次更新していく学習方式であり、確率的勾配降下法(SGD)と相性が良いとされる。

解答・解説をみる

○ 正しい

確率的勾配降下法(SGD)はデータ1件ごとに勾配を計算してパラメータを更新するため、オンライン学習と親和性が高いアルゴリズムとして扱われます。この組み合わせは、あわせて整理しておきたい関連知識です。

問2オンライン学習は訓練データ全体を一度に読み込んで学習するため、バッチ学習よりも多くのメモリを消費する。

解答・解説をみる

× 誤り

正しくは逆の関係にあります。オンライン学習はデータを1件ずつ処理するためメモリ消費を抑えられ、訓練データ全体を一括で読み込むのはバッチ学習の特徴です。逆向きの記述は混同しやすい組み合わせです。

問3オンライン学習は直近のデータやノイズの影響を受けやすく、新しいデータへの適応を優先するあまり過去に学習した傾向を忘れてしまう現象が課題として挙げられる。

解答・解説をみる

○ 正しい

この現象は変化への追従力と引き換えのリスクとしてオンライン学習のデメリットに位置づけられます。なお破壊的忘却(新しい学習によって、過去に学んだ内容が失われてしまう現象)という用語自体は、継続学習や転移学習・ファインチューニングの文脈で使われることが多い言葉です。