2019 6 7機器學習之svm案例

2021-09-24 05:20:40 字數 1123 閱讀 1283

1.案例:承襲decision tree的案例資料,同樣用身高和體重來界定胖瘦。如下文字檔(7.svm.txt),三個欄位各代表身高(m)、體重(kg)與胖瘦(thin/fat)。

2.問題:現在有兩人,其中一位身高1.6m、體重30kg,另一位身高1.6m、體重300kg,請問各是胖是瘦呢?

3.資料文件:7.svm.txt,內容如下。

1.5 40 thin

1.5 50 fat

1.5 60 fat

1.6 40 thin

1.6 50 thin

1.6 60 fat

1.6 70 fat

1.7 50 thin

1.7 60 thin

1.7 70 fat

1.7 80 fat

1.8 60 thin

1.8 70 thin

1.8 80 fat

1.8 90 fat

1.9 80 thin

1.9 90 fat

4.sampe code:

#coding: utf-8

import numpy as np

import scipy as sp

from sklearn import svm

from sklearn.cross_validation import train_test_split

import matplotlib.pyplot as plt

#將資料放是array中

x = np.array(data)

labels = np.array(labels)

y = np.zeros(labels.shape)

#標籤轉換為0/1,瘦代表0,胖代表1

y[labels==『fat』]=1

#訓練模型、提取特徵

#引數說明:linear代表是選擇線性模型

clf=svm.svc(kernel=『linear』)

clf.fit(x,y)

#----**並輸出結果

print clf.predict([[1.6, 30]])

print clf.predict([[1.6, 300]])

5.結果:

[ 0.]

機器學習之SVM

支援向量機是一種二類分類模型。在介紹svm之前,需要先了解支援向量這一概念,支援向量是訓練樣本的乙個子集,這一子集是二類分類的決策邊界。在二類分類過程中,可能存在無數個能夠正確分離二類資料的超平面,如圖1所示。但是不是所有的超平面都在未知資料上執行的都很好,例如圖2中的超平面b 1 就比超平面b 2...

機器學習之svm專題

svm如何用於回歸分析 手把手教你實現svm 演算法 一 四顆星 lr與svm的異同 支援向量機通俗導論 理解svm的三層境界 1000多個贊。距離度量 支援向量 損失函式 對偶問題 拉格朗日乘法 核函式 軟間隔 1 解決高維特徵的分類問題和回歸問題很有效,在特徵維度大於樣本數時依然有很好的效果。2...

機器學習之SVM介紹

support vector machine,在機器學習中,svm 既可以做回歸,也可以做分類器。svm 主要是幫我們找到乙個超平面,使不同的樣本分開,並且是各個樣本集到超平面的距離之和最大化。支援向量就是距離超平面最近的樣本點,確定了支援向量也就確定了超平面。硬間隔 在滿足線性可分的基礎上,分類完...