ノルム (G検定)

ノルム

1. 定義と概要

ノルムとは、ベクトルの大きさや長さを測るための指標の総称です。代表的なものにL1ノルム、L2ノルム、L0ノルムがあり、それぞれ大きさの測り方が異なります。たとえば、2つの成分が3と4であるベクトルのL2ノルムは、各成分を2乗して合計した数の平方根にあたる5になります。同じベクトルでも、どの測り方を採用するかによって求まる数値は変わります。

ベクトルの大きさを測る方法は一つに決まっているわけではなく、目的に応じて複数の測り方が使い分けられます。

機械学習では、モデルが学習の過程で調整する重みパラメータ(モデルが学習の過程で調整していく数値)の大きさをノルムで測ります。その値に罰則を課すことで重みが極端に大きくならないよう抑える工夫が正則化で、ここにノルムが使われるという流れで登場します。ノルムはこの正則化という仕組みを支える計算の土台にあたります。

2. 試験対策ポイント

まず押さえておきたいのは、L1ノルム、L2ノルム、L0ノルムという3種の測り方の違いです。L1ノルムは各成分の絶対値を合計した値、L2ノルムは各成分を2乗して合計し平方根をとった値、L0ノルムは0でない成分の個数を数えた値であり、この3つを取り違えないことが理解の出発点になります。名前は似ていても、それぞれが表している意味はまったく別物です。

正則化との対応関係も試験でよく扱われるテーマです。L1正則化はラッソ回帰(データの傾向を直線的な関係式で予測する線形回帰に、L1正則化を組み合わせた手法)に用いられます。L1ノルムを罰則項に使うことで一部の重みを0にするスパース化(多くの重みを0にして、一部の重みだけが値を持つ状態にすること)につながります。

一方、L2正則化はリッジ回帰(L2正則化を線形回帰に組み合わせた手法)に用いられ、L2ノルムを罰則項に使うことで重み全体をなだらかに0へ近づける働きをします。この違いは正則化の種類と対になる考え方です。罰則項に使うノルムの種類によって、学習後に得られる重みの形が変わってくる、という点がここでの主眼です。

距離指標との対応関係にも触れておきます。L1ノルムはマンハッタン距離(碁盤の目状の道を移動するときのように、各方向の移動距離を単純に合計して測る距離)、L2ノルムはユークリッド距離(私たちが普段イメージする、直線で測った距離)の計算方法にそれぞれ対応します。

距離をどう測るかという発想と、ベクトルの大きさをどう測るかという発想は、根っこの部分でつながっています。正則化はもともと過学習(訓練データに対しては精度が高いが、未知のデータではうまく予測できなくなる状態)を防ぐ目的で使われており、その罰則項の大きさを測る役割をノルムが担っている、という位置づけにあります。

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

L1ノルムとL2ノルムとL0ノルムの最大の違いは、大きさの測り方そのものにあります。L1ノルムは各成分の絶対値を合計するだけの単純な計算であるのに対し、L2ノルムは2乗して合計した数の平方根をとるため、大きな成分の影響がより強く反映されます。

L0ノルムはこの2つとは性質が異なり、値の大きさではなく0でない成分の個数だけを数える指標です。同じ「ノルム」という名前でも、測っているものの意味合いが異なる点に注意が必要です。似た用語を並べて覚えるほど、この違いは取り違えやすくなります。

マンハッタン距離とユークリッド距離の最大の違いは、2点間の隔たりをどの経路で測るかにあります。マンハッタン距離は碁盤の目状の道を移動するときのように、各方向の移動距離を単純に合計して測る距離で、L1ノルムの計算方法に対応します。

一方、ユークリッド距離は私たちが普段イメージする直線の距離で、L2ノルムの計算方法に対応します。同じ2点間の距離でも、測り方によって値が異なる関係にあり、ノルムの種類と距離の種類が対になっている構造を押さえておくと理解が進みます。

L1正則化とL2正則化の最大の違いは、罰則項に使うノルムの種類によって重みへの影響の出方が変わる点にあります。L1正則化はL1ノルムを罰則項に使い、一部の重みを0にするスパース化につながる一方、L2正則化はL2ノルムを罰則項に使い、重み全体をなだらかに0へ近づけます。

どちらも過学習を抑える目的は共通していますが、結果として得られるモデルの形が異なります。重みが0になるか、なだらかに小さくなるかという結果の違いが、この2つを見分ける手がかりになります。

ここまでの対応関係を、L1ノルムとL2ノルムについて計算方法・距離・正則化の3つの軸で並べると次のようになります。

ノルム 計算方法 対応する距離 対応する正則化と重みへの影響
L1ノルム 各成分の絶対値を合計した値 マンハッタン距離 L1正則化(ラッソ回帰)。一部の重みを0にするスパース化につながる
L2ノルム 各成分を2乗して合計し平方根をとった値 ユークリッド距離 L2正則化(リッジ回帰)。重み全体をなだらかに0へ近づける

L0ノルムは0でない成分の個数を数える指標のため、この表のような計算方法と距離の対応とは別の枠で捉えておくと混同を避けられます。

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

レコメンドシステムの分野では、商品やユーザーの特徴を表すベクトル同士の距離をノルムで計算し、値が近いものを類似商品や似た好みのユーザーとして推薦する仕組みに使われています。膨大な商品数の中から関連性の高いものを絞り込む処理の土台に、ノルムによる距離計算が組み込まれています。数値化された特徴同士の近さを機械的に比較できることが、大量のデータを扱う推薦の仕組みを成り立たせています。

異常検知の分野では、正常なデータの分布から対象データまでの距離をノルムで測り、その値が一定の基準を超えたものを異常として検出する使い方があります。製造ラインのセンサーデータや通信ログの監視など、正常な状態からの逸脱を数値で捉える必要がある場面で活用されています。人の目では気づきにくいわずかなずれも、ノルムによる距離の計算であれば数値として一貫した基準で捉えられます。

特徴量選択やモデルの軽量化の場面でも、ノルムが役立っています。L1正則化で重みの一部を0にするスパース化を行うと、予測への寄与が小さい特徴量(予測に使うデータの特徴を数値で表したもの)が自動的に絞り込まれ、モデルをシンプルに保つことができます。

扱う特徴量の数が多い実務データほど、この整理の効果が大きくなります。不要な特徴量が減ることで、モデルの計算量を抑えつつ、結果の解釈もしやすくなります。

5. 要点まとめ

  • ノルムはベクトルの大きさを測る指標の総称で、L1ノルム(絶対値の合計)、L2ノルム(2乗して合計した数の平方根)、L0ノルム(0でない成分の個数)という種類があります。
  • L1ノルムはマンハッタン距離、L2ノルムはユークリッド距離の計算方法に対応する関係にあります。
  • 機械学習ではL1正則化・L2正則化の罰則項としてノルムが使われ、過学習の抑制やスパース化に関わります。

6. 確認問題

問1L1ノルムは、ベクトルの各成分の絶対値を合計した値である。

解答・解説をみる

○ 正しい

L1ノルムの定義そのもので、マンハッタン距離の計算方法に対応する関係にあります。

問2L2ノルムは、ベクトルの各成分を2乗して合計し、その数の平方根をとった値であり、ユークリッド距離の計算方法に対応する。

解答・解説をみる

○ 正しい

L2ノルムの定義そのもので、私たちが普段イメージする直線距離であるユークリッド距離に対応します。

問3L0ノルムは、ベクトルの各成分を2乗して合計した値を表す指標であり、L2ノルムと同じ計算方法である。

解答・解説をみる

× 誤り

L0ノルムは0でない成分の個数を数える指標であり、正しくは各成分を2乗して合計するのはL2ノルムです。2つの指標を取り違えた記述になっています。