ある製造業の企業が、設備のセンサーデータから異常の有無を判定するため、RBFカーネルを用いたサポートベクターマシン(SVM)を学習させた。訓練データでの正解率はほぼ100%だったが、検証データでの正解率は大きく下がった。この状況を改善するための調整として、最も適切なものを1つ選べ。
正解と解説を見る
解説
正解 A
この問題の論点:SVMの過学習とハイパーパラメータ
ポイント
SVMのCは誤分類をどこまで許すかを決めるハイパーパラメータです。過学習しているときは、Cやγを小さくして境界をなめらかにします。
選択肢ごとの解説
- A
適切 正解
Cは、マージンの内側に入ったり誤分類されたりしたデータに課すペナルティの強さです。Cを小さくすると多少の誤りを許して広いマージンを取るため、境界がなめらかになり過学習を抑えられます。値は交差検証で選びます。
- B
不適切
Cを大きくすると、訓練データを1つも誤らないように境界が複雑になり、マージンは狭くなります。すでに訓練データに過剰に適合している状況では、過学習をさらに強めます。
- C
不適切
γが大きいほど各データの影響範囲が狭くなり、個々のデータに合わせた細かい境界になります。過学習しているときは、逆にγを小さくするのが一般的な調整です。
- D
不適切
SVMはデータ間の距離や内積をもとに境界を決めるため、値の範囲が大きい特徴量の影響が強く出ます。標準化などで特徴量の範囲をそろえてから学習するのが基本です。
試験での狙われ方
ソフトマージンのCの大小と、マージンの広さや過学習との関係を、事例と組み合わせて問う形が考えられます。
参考
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目7 教師あり学習)
- scikit-learn User Guide, 1.4. Support Vector Machines (1.4.5 Tips on Practical Use、1.4.6.1 Parameters of the RBF Kernel)
- Cortes and Vapnik, Support-Vector Networks, Machine Learning 20 (1995)