サポートベクターマシン (SVM)
サポート ベクター マシンとは何ですか? サポート ベクター マシンは、データの分類分析を実行できる教師あり機械学習モデルです。実際、サポート ベクター マシン アルゴリズムは、インスタンスを分離できる優れた超平面を見つけるプロセスです。 上記のようにデータが線形に分離可能な場合は、線形分類器を使用して 2 つのクラスを分離できます。データが非線形に分離可能な場合はどうすればよいでしょうか? 次のようになります: ご覧のとおり、異なるクラスのデータ ポイントは分離可能ですが、単純に直線を描いて分類することはできません。 では、サポート ベクター マシンを使用して非線形機械学習データセットを適合させるにはどうすればよいでしょうか? SVMの実験機械学習データセットの作成 まず、非線形機械学習データセットを作成します。 Python コードは次のとおりです。
線形サポートベクターマシンを使ってみる まず、次のように Python で実装できる線形サポート ベクター マシンの使用を試みます。
C は誤分類に関連するコストです。 C 値が高いほど、データ セットを正しく分離するアルゴリズムが厳格になります。線形分類器の場合は、kernel='linear' を使用します。 ご覧のとおり、コストを高く設定したにもかかわらず、線は赤い点と青い点をうまく分離していません。 ラジアル基底関数カーネル これまで使用した線形分類器は次のとおりです。 ご覧のとおり、g(x) は線形関数です。 g(x) > 0 の場合、予測値は 1 になります。 g(x) <0の場合、予測値は-1になります。しかし、上記のような非線形データを処理するために線形関数を使用することはできないため、線形関数を別の関数に変換する必要があります。 この分類器は、非線形データに最適であると思われます。 Python コードを見てみましょう:
ガンマは1/シグマです。覚えておいてください、シグマは調整機能です。したがって、ガンマ値が小さいほど、シグマ値が大きく、分類器はポイント間の距離に対して敏感ではなくなります。 ガンマを上げて何が起こるか見てみましょう。
ガンマを 100 倍に増やすと、トレーニング セットの分類子の精度が向上するようです。ガンマ値を 10 倍するとどうなるでしょうか?
これは、ガンマを 10000 に増やすと、より正確になるという意味ですか? 実際、ガンマ値が大きすぎると、分類器は最終的に違いを認識できなくなります。 Cを増やしましょう。 C は、機械学習データセット全体の誤分類に関連するコストです。つまり、C を増やすと、単一のデータ ポイントだけでなく、データ セット全体の感度が高まります。
SVM 分類器が 2 つのポイント グループを正常に分離できるようにするためのパラメータを見つけました。 やっとこの記事を読んで、SVM 分類器とは何か、そしてそれを非線形機械学習データセットの学習にどのように使用するかについて直感的に理解していただけたと思います。データが高次元の場合、視覚化を通じて分類器のパフォーマンスを判断することはできません。良い方法は、トレーニング セットでトレーニングし、テスト セットで混同行列や f1 スコアなどのメトリックを使用することです。 |
<<: 新型コロナウイルス感染症の流行中に音声テクノロジーが再び注目を集めているのはなぜでしょうか?
>>: 私の国は、5G、人工知能、自動運転で目覚ましい成果を上げ、革新的な国の仲間入りを果たしました。
最近、ホワイトハウスの国家サイバースペース局長室(ONCD)は、「基本的な構成要素への回帰:安全なソ...
1. はじめに機械学習の分野では、トレーニング プロセス中にモデルが過剰適合したり、不足適合になっ...
2020年初頭、突如発生した疫病により、多くの工場が「人手が足りない」状況に直面した。しかし、ロボ...
今後 20 ~ 30 年で、自動運転車 (AV) は私たちの運転習慣や輸送業界を変え、社会全体に影響...
💫X プラットフォーム ユーザー @jian は、シンプルな自然言語の指示を通じて Manus の...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
ディープラーニングと機械学習を中核とするAI技術は、主にコンピューティング能力とアルゴリズムのブレー...
あらゆる業界でますます多くの企業が、ビジネス プロセスを変革するために AI を導入しています。しか...
[[311550]] [51CTO.com クイック翻訳] 人工知能は最新の開発トレンドであり、その...