対象:初心者〜中級者 | 環境:オンライン / ローカル |
受講期限:無制限 | 受講料金:500円 |
コース概要
- ブラウザとインターネットで実行可能(Google Colab利用)
- Jupyter Notebookを利用したプログラミング演習
- サポートベクターマシン(SVM)の概要
- SVMの基本的な仕組みとハイパーパラメータの理解
- アイリスデータセットで初歩的な実装演習
- Kaggleのコンペデータセットを使った実装演習
- 特徴量の正規化
- ハイパーパラメータチューニング
- 予測の評価(混同行列と正解率)
学べる内容
本チュートリアルではサポートベクターマシン(英:Support Vector Machine)を機械学習初心者向けに解説したチュートリアルとなります。SVMの基本的な概念や理解すべき仕組み(マージン・ハイパープレイン・サポートベクター)を簡単な例を使いながら紐解いていきましょう。
また、実際のデータを使用した2つのコーディング実習も含まれています。前半は機械学習初心者向けのデータセット「Iris(アヤメの分類)」を使ってシンプルなSVMの実装を行います。SVMでは必須となる「特徴量の正規化(Normalization)」や、モデルの初歩的な評価方法(混同行列・正解率)を学びます。
後半のコーディング実習では、世界最大級の機械学習エンジニアコミュニティ「Kaggle」で公開されているデータセットを使い、実践的なSVMのモデル構築を行います。より実践的なテクニックとして、GridSearchCVを使ったハイパーパラメータチューニングの実装を行います。
初めて機械学習の手法を学ぶ方へ
本コースでは機械学習の前提知識が無くても受講は可能です。ただし、機械学習の概要や基礎知識があればより深い理解が得られます。初めて機械学習の手法を学ぶ方は下記の講座を先に受講されることをお勧めします。
チュートリアルに含まれない内容
機械学習の初学者向けのチュートリアルとなっており、本講座ではサポートベクターマシンの数学的な解説は含まれませんのでご了承ください。またSVMのモデル構築は機械学習ライブラリ「Scikit-learn」を利用します。SVMのアルゴリズムの構築は含まれません。
サポートベクターマシン(SVM)とは?
Support Vector Machineを略してSVM(エス・ブイ・エム)と一般的に呼ばれています。日本語ではサポートベクターマシンまたはサポートベクトルマシンとも呼ばれます。「教師あり学習」に属する機械学習の手法で、「分類」に対して非常に優れており、多くの企業や組織で利用されています。
分類を行うSVMを特別に「サポート・ベクター・クラシファイヤー(Support Vector Classifier)」と呼ばれています。対して回帰を行うSVMは「サポート・ベクター・レグレッション(Support Vector Regression)」と呼びます。本チュートリアルでは分類を扱う「Support Vector Classifier」のみとなります。
特徴
ブラウザーとインターネットで実行が可能
Google Colab(グーグル・コラボ)を利用することにより、特別な環境構築やインストールなどの作業を行うことなく、ブラウザのみで実行が可能です。チュートリアルでは、Google Colabの基本的な使い方、また自身のPCに環境構築を行う方法の詳細を説明しています。
実践に役立つ知識
- SVMのハイパーパラメータの理解
- 特徴量の正規化の理解と実装
- モデル評価方法(混同行列 / 正解率)
- GridSearchCVを使ったハイパーパラメータチューニング
- Kaggleデータの利用および投稿
本チュートリアルではKaggleの無料会員登録が必要です。(参考:Kaggleとは?)
受講資格
(必須)Pythonの基礎知識
(推薦)線形代数及び統計の初歩的な知識
(推薦)Numpy、Pandas、Matplotlibの初歩的な知識
原則として、Pythonの初歩的な知識がある前提となっています。「推薦」は必須ではありませんが、初歩的な知識があると、よりスムーズに受講が可能です。下記の「機械学習 準備編」の無料コースをご参照下さい。
- Numpy 入門(無料)
- Matplotlib 入門(無料)
- Pandas 入門(無料)
- 線形代数 入門(無料)
- 統計 入門 (前編)(無料)
- 統計 入門 (後編)(無料)
コース詳細
機械学習 チュートリアル サポートベクターマシン | ||
---|---|---|
Chapter 1 環境構築 | ||
【Windows編】Minicondaを利用した環境構築 | 約2,200文字 | |
【Mac】Minicondaを利用した環境構築 | 約1,900文字 | |
Google Colabを利用した環境構築 | 約2,100文字 | |
Chapter 2 SVMの概要 | ||
SVMとは? | 約500文字 | |
SVMの仕組み | 約1,200文字 | |
SVMのハイパーパラメータ | 約4,000文字 | |
Chapter 3 SVMの実装(基本編) | ||
データセットについて | 約500文字 | |
必要なライブラリのインポート | 10行 | |
データの読み込み | 10行 | |
正規化 | 7行 | |
モデル訓練 | 4行 | |
モデル評価 | 6行 | |
Chapter 4 SVMの実装(kaggle編) | ||
データセットについて | 約1,000文字 | |
ライブラリのインポート | 10行 | |
データの読み込み | 6行 | |
散布図行列でデータ確認 | 2行 | |
データの前処理 | 13行 | |
モデル訓練 | 2行 | |
モデルを使って予測(訓練データ) | 3行 | |
テストデータで予測してKaggleへ投稿 | 6行 | |
GridSearchCVでハイパーパラメーターチューニング | 18行 | |
最適化したSVMモデルの予測評価 | 3行 |
レビュー
コデクサさんの新コース、待ってました!サポートベクターマシンですが、機械学習入門書籍だと専門用語と数式が多くて理解がうまく出来ず、無料の記事だと浅すぎてよく判らずじまいでしたが…こちらのコースはその中間とも言うべきでした!数式での説明がない分、初心者の私でも理解が出来ました。さらにハイパーパラメータの説明は事例を使って詳細に解説してあり、とても解りやすかったです。オススメです。
講師からの返答
フィードバックありがとうございます!お役に立てて大変光栄です!引き続き他のコースの制作も進めておりますので 、宜しくお願い致します!
Python歴半年程度で機械学習を勉強しています。線形代数や統計の基礎が学べて本当に役に立っています。初めて有料コースに挑戦しました。いくつか躓いた箇所もありましたが、サポートベクターマシンがよく理解できたと思います。他の実践チュートリアルも挑戦してみます。
講師からの返答
フィードバックありがとうございます!お役に立てて大変光栄です!引き続き他のコースの制作も進めておりますので 、宜しくお願い致します!
講師紹介

本コース「サポートベクターマシン 入門」はcodexa(コデクサ)の機械学習エンジニアチームにて製作・監修を行いました。アメリカでデータ分析の実績を積んだデータサイエンティストから、Webエンジニアから機械学習エンジニアへ転向をした人まで幅広い層が所属しています。上級者の一方的な講義ではなく、「初心者がいかに理解しやすいか」を目標としています。日経ソフトウェアへの記事執筆(2019年1月号)。