ホームページ  >  記事  >  バックエンド開発  >  Python がサポート ベクター マシン (SVM) 分類を実装: アルゴリズム原理の詳細な説明

Python がサポート ベクター マシン (SVM) 分類を実装: アルゴリズム原理の詳細な説明

WBOY
WBOY転載
2024-01-24 09:33:051034ブラウズ

支持向量机(SVM)算法原理 Python实现支持向量机(SVM)分类

機械学習では、データ分類や回帰分析にサポート ベクター マシン (SVM) がよく使用され、超平面の分離に基づく判別アルゴリズム モデルです。言い換えれば、ラベル付きトレーニング データが与えられると、アルゴリズムは新しい例を分類するための最適な超平面を出力します。

サポート ベクター マシン (SVM) アルゴリズム モデルは、サンプルを空間内の点として表現し、マッピング後、さまざまなカテゴリのサンプルを可能な限り分割します。線形分類の実行に加えて、サポート ベクター マシン (SVM) は非線形分類を効率的に実行し、入力を高次元特徴空間に暗黙的にマッピングできます。

サポート ベクター マシンは何をしますか?

トレーニング サンプルのセットが与えられた場合、各トレーニング サンプルは 2 つのカテゴリに従ってカテゴリでマークされ、サポート ベクター マシン (SVM) トレーニング アルゴリズムを通じてモデルが構築され、新しいサンプルがこれらに割り当てられます。 2 つのカテゴリ カテゴリにより、非確率的なバイナリ線形分類器になります。

Python はサポート ベクター マシン (SVM) 分類を実装します

前提条件: Numpy、Pandas、matplot-lib、scikit-learn

最初にデータ セットを作成します

from sklearn.datasets.samples_generator import make_blobs
X,Y=make_blobs(n_samples=500,centers=2,
random_state=0,cluster_std=0.40)
import matplotlib.pyplot as plt
plt.scatter(X[:,0],X[:,1],c=Y,s=50,cmap='spring');
plt.show()

分類

xfit=np.linspace(-1,3.5)
plt.scatter(X[:,0],X[:,1],c=Y,s=50,cmap='spring')
for m,b,d in[(1,0.65,0.33),(0.5,1.6,0.55),(-0.2,2.9,0.2)]:
yfit=m*xfit+b
plt.plot(xfit,yfit,'-k')
plt.fill_between(xfit,yfit-d,yfit+d,edgecolor='none',
color='#AAAAAA',alpha=0.4)
plt.xlim(-1,3.5);
plt.show()

以上がPython がサポート ベクター マシン (SVM) 分類を実装: アルゴリズム原理の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は163.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。