【G検定まとめ】要点整理&当日用カンペの項目別詳解ページです。

詳細な知識や実装は試験には必ずしも必須ではありませんが、試験対策として理解を深めたい方はぜひ最後までご覧ください。

G検定まとめはこちら

サポートベクターマシン(SVM)

サポートベクターマシン(SVM)

サポート ベクター マシン (SVM) は、分類と回帰分析に使用される教師あり機械学習アルゴリズムです。SVM の背後にある基本的な考え方は、入力データ内のクラスを最もよく分離する超平面 (高次元空間内の直線または平面) を見つけることです。

バイナリ分類問題では、SVM は 2 つのクラス間のマージンを最大化する超平面を見つけます。これは、超平面と各クラスの最も近いデータ ポイントとの間の距離です。超平面に最も近いデータ ポイントはサポート ベクターと呼ばれるため、アルゴリズムの名前が付けられています。

最適な超平面を見つけるために、SVM は制約付き最適化問題を解こうとします。この問題の目的は、マージンが最大化されるという制約に従って分類誤差を最小化することです。最適化問題は二次計画問題として定式化でき、逐次最小最適化 (SMO) や勾配降下法などのさまざまなアルゴリズムを使用して解くことができます。

パラメータの調整

サポート ベクター マシン(SVM)では、パラメータを調整することで、境界面の形やマージンの幅を変えることができます。主なパラメータは以下の2つです。

カーネル関数:カーネル関数とは、データを高次元空間に写像する関数です。カーネル関数によって、線形分離できないデータも非線形分離できるようになります。カーネル関数には、線形カーネル、多項式カーネル、ガウシアンカーネル(RBFカーネル)、シグモイドカーネルなどがあります。
ペナルティパラメータ:ペナルティパラメータとは、マージン内に入ってしまったデータ点(誤分類点)に対する罰則の強さを表すパラメータです。ペナルティパラメータが大きいほど、誤分類点を許容しないように境界面が決まります。ペナルティパラメータはCやεなどの記号で表されることが多いです。
これらのパラメータは、交差検証やグリッドサーチなどの方法で最適化することができます。

カーネル関数

カーネル関数とは、非線形なデータを高次元空間に写像して線形分離可能にするための関数です。カーネル関数にはさまざまな種類がありますが、代表的なものとして以下のようなものがあります。

線形カーネル:内積をそのまま用いる最も単純なカーネル関数です。線形分離可能なデータに適しています。
シグモイドカーネル:ロジスティック回帰と同じシグモイド関数を用いるカーネル関数です。非線形分離可能なデータに適していますが、パラメータの調整が難しいです。
多項カーネル:内積を多項式で拡張したカーネル関数です。非線形分離可能なデータに適していますが、次数を高くすると過学習しやすくなります。
RBF(動径基底)カーネル:ガウス関数を用いるカーネル関数です。非線形分離可能なデータに最もよく使われるカーネル関数ですが、ガウス幅のパラメータの調整が重要です。
利用するカーネル関数によって得られる決定境界の様子が変わります。

ペナルティパラメータ

ペナルティパラメータとは、サポート ベクター マシンの学習時に、誤分類されたデータに対してどれだけのペナルティ(罰則)を与えるかを決めるパラメータです12。ペナルティパラメータは一般にCと表記されます。

ペナルティパラメータCの値が大きいと、誤分類されたデータに対して厳しいペナルティを与えることになります。その結果、決定境界が複雑になり、訓練データに対して高い精度を得られますが、過学習(未知のデータに対応できなくなる現象)しやすくなります。

逆に、ペナルティパラメータCの値が小さいと、誤分類されたデータに対して寛容なペナルティを与えることになります。その結果、決定境界が単純になり、訓練データに対して低い精度を得られますが、過学習しにくくなります。

したがって、ペナルティパラメータCは適切な値を設定する必要があります。一般的な方法としては、交差検証(cross-validation)やグリッドサーチ(grid-search)という手法を用いて最適な値を探索します。

サポート ベクター マシンのメリット・デメリット

サポート ベクター マシン(SVM)のメリットは以下の通りです。

汎化性能が高い:サポート ベクター マシン(SVM)では、マージン最大化という考え方に基づいて境界面を決めるため、未知のデータに対しても高い精度で分類できます。
少ない教師データで学習できる:サポート ベクター マシン(SVM)では、境界面を決めるのに必要なデータ点(サポートベクトル)だけを使って学習するため、教師データが少なくても効率的に学習できます。
非線形分離も可能:サポート ベクター マシン(SVM)では、カーネル関数というテクニックを使って、線形分離できないデータも非線形分離できるようになりますカーネル関数は様々な種類があり、データの特徴に合わせて選択できます。


サポート ベクター マシン(SVM)のデメリットは以下の通りです。

計算量が大きい:サポート ベクター マシン(SVM)では、学習データが増えることで計算量が膨大になり、学習が非効率化する可能性があります. また、パラメータの最適化やカーネル関数の選択も計算コストがかかります。
多クラス分類や回帰問題への応用が難しい:サポート ベクター マシン(SVM)は元々2値分類問題に用いられる手法です。多クラス分類や回帰問題へ応用する場合は、別途工夫や拡張が必要です. 例えば、多クラス分類では一対一法や一対他法という方法を使います。

サポート ベクター マシンの使用例

サポートベクトルマシンは、汎化性能や応用分野の広さから、データ分析の現場でよく用いられる機械学習のアルゴリズムです。主に2値分類問題に用いられますが、多クラス分類や回帰問題への応用も可能です。

サポートベクトルマシンの使用例としては、以下のようなものがあります。

画像認識:手書き文字や顔などを識別するためにサポートベクトルマシンを用いることができます。特徴量としては、画像のピクセル値やエッジなどを使います。
テキスト分類:ニュース記事やレビューなどをカテゴリーに分けるためにサポートベクトルマシンを用いることができます。特徴量としては、単語や文書の頻度などを使います。
異常検知:正常なデータと異常なデータを区別するためにサポートベクトルマシンを用いることができます。特徴量としては、データの統計的な性質や距離などを使います。
回帰予測:数値データの傾向や関係性を捉えて未来の値を予測するためにサポートベクトルマシンを用いることができます。特徴量としては、データ自体やその変換などを使います。

G検定学習法

最後までご覧いただきありがとうございました。

当サイトではG検定に役立つ情報をまとめています。

ぜひご覧ください。

本サイトの活用方法

【G検定まとめ2024】試験当日も使える! 要点整理&試験対策カンペ【動画】

1. 人工知能とは 第1回:人工知能の定義、人工知能研究の歴史 2. 人工知能をめぐる動向 第2回:探索・推論 第3回:知識表現、機械学習・深層学習 3. 人工知能分野の問題 第4回:人工知能分野の問題 4. 機械学習の […]

【G検定まとめ2024】試験当日も使える! 要点整理&試験対策カンペ

G検定の要点をシラバスから抜粋してまとめました。これから学習する方も、復習したい方にもお使いいただけます。試験当日用のG検定のカンニングペーパー参考としてもお役立てください。試験結果を保証するものではありませんので、試験 […]

【G検定2023まとめ】理解度確認&問題集まとめ【直前対策】

G検定の要点を問題形式にまとめました。試験前の理解度確認、直前対策にお役立てください。 (最終更新日:2023年3月1日) 1. 人工知能とは 問題を解く 2. 人工知能をめぐる動向 問題を解く 3. 人工知能分野の問題 […]

【G検定2023】G検定の概要と試験のポイント

このシリーズではG検定の要点を項目ごとにまとめています。 今回の記事では「G検定の概要と試験のポイント」について紹介します。 試験の概要  G検定(公式名:ジェネラリスト検定)は、JDLA:Japan Deep Lear […]

【G検定】G検定合格体験記 〜学習方法と受験体験〜

このシリーズではG検定の要点を項目ごとにまとめています。 今回の記事では、2022年7月2日(土)開催のG検定(2022#2 )に合格した学習方法と受験体験について紹介します。 これから受験される方へ参考になれば幸いです […]

【G検定2022】シラバスでみるG検定の試験内容

このシリーズではG検定の要点を項目ごとにまとめています。 今回の記事ではシラバスをもとに「G検定の試験内容」について紹介します。 試験の概要  G検定(公式名:ジェネラリスト検定)は、JDLA:Japan Deep Le […]

参考書籍

教科書として使用する書籍

体系的に知識を整理することができます。

まずは、この1冊を読んでG検定の学習を進めましょう。

検索機能が使用できるので、Kindle版が特におすすめです。

②問題集として使用する書籍

ある程度学習が進んだら、本番を意識して問題集に取り組みましょう。

本番の試験環境を意識して、このページ「要点整理&当日用カンペ」を使用しながら解答してみましょう。