中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

豬八戒網(wǎng)站 怎么做兼職/品牌策劃公司介紹

豬八戒網(wǎng)站 怎么做兼職,品牌策劃公司介紹,wordpress建站難不難,深圳微信建網(wǎng)站文章目錄 機(jī)器學(xué)習(xí)專欄 介紹 特征縮放 示例代碼 硬間隔與軟間隔分類 主要代碼 代碼解釋 非線性SVM分類 結(jié)語 機(jī)器學(xué)習(xí)專欄 機(jī)器學(xué)習(xí)_Nowl的博客-CSDN博客 介紹 作用:判別種類 原理:找出一個(gè)決策邊界,判斷數(shù)據(jù)所處區(qū)域來識(shí)別種類 簡(jiǎn)單…

文章目錄

機(jī)器學(xué)習(xí)專欄

介紹

特征縮放

示例代碼

硬間隔與軟間隔分類

主要代碼

代碼解釋

非線性SVM分類

結(jié)語


機(jī)器學(xué)習(xí)專欄

機(jī)器學(xué)習(xí)_Nowl的博客-CSDN博客

介紹

作用:判別種類

原理:找出一個(gè)決策邊界,判斷數(shù)據(jù)所處區(qū)域來識(shí)別種類

簡(jiǎn)單介紹一下SVM分類的思想,我們看下面這張圖,兩種分類都很不錯(cuò),但是我們可以注意到第二種的決策邊界與實(shí)例更遠(yuǎn)(它們之間的距離比較寬),而SVM分類就是一種尋找距每種實(shí)例最遠(yuǎn)的決策邊界的算法


特征縮放

SVM算法對(duì)特征縮放很敏感(不處理算法效果會(huì)受很大影響)

特征縮放是什么意思呢,例如有身高數(shù)據(jù)和體重?cái)?shù)據(jù),若身高是m為單位,體重是g為單位,那么體重就比身高的數(shù)值大很多,有些機(jī)器學(xué)習(xí)算法就可能更關(guān)注某一個(gè)值,這時(shí)我們用特征縮放就可以把數(shù)據(jù)統(tǒng)一到相同的尺度上

示例代碼

from sklearn.preprocessing import StandardScaler
import numpy as np# 創(chuàng)建一個(gè)示例數(shù)據(jù)集
data = np.array([[1.0, 2.0, 3.0],[4.0, 5.0, 6.0],[7.0, 8.0, 9.0]])# 創(chuàng)建StandardScaler對(duì)象
scaler = StandardScaler()# 對(duì)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化
scaled_data = scaler.fit_transform(data)print("原始數(shù)據(jù):\n", data)
print("\n標(biāo)準(zhǔn)化后的數(shù)據(jù):\n", scaled_data)# 結(jié)果是
# [[-1.22474487 -1.22474487 -1.22474487]
#  [ 0.          0.          0.        ]
#  [ 1.22474487  1.22474487  1.22474487]]

?StandardScaler是一種數(shù)據(jù)標(biāo)準(zhǔn)化的方法,它對(duì)數(shù)據(jù)進(jìn)行線性變換,使得數(shù)據(jù)的均值變?yōu)?,標(biāo)準(zhǔn)差變?yōu)?。?

解釋上面的數(shù)據(jù)

在每列上進(jìn)行標(biāo)準(zhǔn)化,即對(duì)每個(gè)特征進(jìn)行獨(dú)立的標(biāo)準(zhǔn)化。每個(gè)數(shù)值是通過減去該列的均值,然后除以該列的標(biāo)準(zhǔn)差得到的。

  • 第一列:(1?4)/9=?1.22474487(1?4)/9?=?1.22474487,(4?4)/9=0(4?4)/9?=0,(7?4)/9=1.22474487(7?4)/9?=1.22474487。
  • 第二列:(2?5)/9=?1.22474487(2?5)/9?=?1.22474487,(5?5)/9=0(5?5)/9?=0,(8?5)/9=1.22474487(8?5)/9?=1.22474487。
  • 第三列:(3?6)/9=?1.22474487(3?6)/9?=?1.22474487,(6?6)/9=0(6?6)/9?=0,(9?6)/9=1.22474487(9?6)/9?=1.22474487。

這樣,標(biāo)準(zhǔn)化后的數(shù)據(jù)集就符合標(biāo)準(zhǔn)正態(tài)分布,每個(gè)特征的均值為0,標(biāo)準(zhǔn)差為1。


硬間隔與軟間隔分類

硬間隔分類就是完全將不同的個(gè)體區(qū)分在不同的區(qū)域(不能有一點(diǎn)誤差)

軟間隔分類就是允許一些偏差(圖中綠和紅色的點(diǎn)都有一些出現(xiàn)在了對(duì)方的分區(qū)里)

硬間隔分類往往會(huì)出現(xiàn)一些問題,例如有時(shí)候模型不可能完全分成兩類,同時(shí),硬間隔分類往往可能導(dǎo)致過擬合,而軟間隔分類的泛化能力就比硬間隔分類好很多


主要代碼

from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import LinearSVCmodel = Pipeline([("scaler", StandardScaler()),("linear_svc", LinearSVC(C=1, loss="hinge"))
])model.fit(x, y)

代碼解釋

在這里,Pipeline的構(gòu)造函數(shù)接受一個(gè)由元組組成的列表。每個(gè)元組的第一個(gè)元素是該步驟的名稱(字符串),第二個(gè)元素是該步驟的實(shí)例。在這個(gè)例子中,第一個(gè)步驟是數(shù)據(jù)標(biāo)準(zhǔn)化,使用StandardScaler,命名為"scaler";第二個(gè)步驟是線性支持向量機(jī),使用LinearSVC,命名為"linear_svc"。這兩個(gè)步驟會(huì)按照列表中的順序依次執(zhí)行。

參數(shù)C是正則程度,hinge是SVM分類算法的損失函數(shù),用來訓(xùn)練模型


非線性SVM分類

上述方法都是在數(shù)據(jù)集可線性分離時(shí)用到的,當(dāng)數(shù)據(jù)集呈非線性怎么辦,我們?cè)诨貧w任務(wù)中講過一個(gè)思想,用PolynomialFeatures來產(chǎn)生多項(xiàng)式,再對(duì)每個(gè)項(xiàng)進(jìn)行線性擬合,最后結(jié)合在一起得出決策邊界

具體代碼

import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.preprocessing import PolynomialFeatures
from sklearn.svm import SVC
from sklearn.pipeline import make_pipeline
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import accuracy_score# 生成非線性數(shù)據(jù)集
X, y = datasets.make_circles(n_samples=100, factor=0.5, noise=0.1, random_state=42)# 劃分訓(xùn)練集和測(cè)試集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# 使用多項(xiàng)式特征和線性SVM
degree = 3  # 多項(xiàng)式的次數(shù)
svm_classifier = make_pipeline(StandardScaler(), PolynomialFeatures(degree), SVC(kernel='linear', C=1))
svm_classifier.fit(X_train, y_train)# 預(yù)測(cè)并計(jì)算準(zhǔn)確率
y_pred = svm_classifier.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)# 繪制決策邊界
def plot_decision_boundary(X, y, model, ax):h = .02x_min, x_max = X[:, 0].min() - 1, X[:, 0].max() + 1y_min, y_max = X[:, 1].min() - 1, X[:, 1].max() + 1xx, yy = np.meshgrid(np.arange(x_min, x_max, h), np.arange(y_min, y_max, h))Z = model.predict(np.c_[xx.ravel(), yy.ravel()])Z = Z.reshape(xx.shape)ax.contourf(xx, yy, Z, alpha=0.8)ax.scatter(X[:, 0], X[:, 1], c=y, edgecolors='k', marker='o', s=80, linewidth=0.5)ax.set_xlim(xx.min(), xx.max())ax.set_ylim(yy.min(), yy.max())# 繪制結(jié)果
fig, ax = plt.subplots(figsize=(8, 6))
plot_decision_boundary(X_train, y_train, svm_classifier, ax)
ax.set_title('Polynomial SVM Decision Boundary')
plt.show()

運(yùn)行結(jié)果


結(jié)語

SVM分類是一種經(jīng)典的分類算法,也叫大間隔分類算法。它可以用來線性分類,也可以非線性分類(可以與PolynomialFeatures結(jié)合,當(dāng)然還有其他方法,我們之后再說)

http://www.risenshineclean.com/news/568.html

相關(guān)文章:

  • 樂平市網(wǎng)站建設(shè)/網(wǎng)絡(luò)營(yíng)銷ppt案例
  • 福田做商城網(wǎng)站建設(shè)哪家公司靠譜/百度推廣是怎么做的
  • 外國(guó)客戶網(wǎng)站/營(yíng)銷策劃公司取名大全
  • 網(wǎng)站后綴是nl是哪個(gè)國(guó)家/想要導(dǎo)航推廣網(wǎng)頁怎么做
  • php一臺(tái)電腦做網(wǎng)站/百度人工
  • 學(xué)做網(wǎng)站買什么樣的書/發(fā)布新聞稿
  • 網(wǎng)站建設(shè)公司建設(shè)/市場(chǎng)調(diào)研分析報(bào)告
  • 網(wǎng)站地圖 seo/武漢百度關(guān)鍵詞推廣
  • 我的世界有什么做的視頻網(wǎng)站/家庭優(yōu)化大師免費(fèi)下載
  • app界面生成器/seo1搬到哪里去了
  • 怎么做刷會(huì)員的網(wǎng)站/seo排名點(diǎn)擊器曝光行者seo
  • 用cn作網(wǎng)站行么/企業(yè)關(guān)鍵詞大全
  • 公司網(wǎng)站制作內(nèi)容/2022年今天新聞聯(lián)播
  • 海淘返利網(wǎng)站怎么做/上海網(wǎng)絡(luò)營(yíng)銷上海網(wǎng)絡(luò)推廣
  • 國(guó)內(nèi)出名網(wǎng)站建設(shè)設(shè)計(jì)公司/qq推廣軟件
  • 亞馬遜雨林破壞現(xiàn)狀/文章優(yōu)化關(guān)鍵詞排名
  • 靈璧零度網(wǎng)站建設(shè)/國(guó)際新聞最新
  • wordpress 上傳文件中文亂碼/西安搜索引擎優(yōu)化
  • 中企動(dòng)力青島分公司/寧波seo關(guān)鍵詞如何優(yōu)化
  • 中國(guó)建設(shè)銀行人力資源網(wǎng)站/營(yíng)銷互聯(lián)網(wǎng)推廣公司
  • 做站群的網(wǎng)站要備案嗎/電商網(wǎng)站平臺(tái)搭建
  • 微信商城與網(wǎng)站一體/谷歌瀏覽器下載手機(jī)版中文
  • 微信推送在哪個(gè)網(wǎng)站做/百度seo排名優(yōu)化技巧分享
  • 聚民網(wǎng)網(wǎng)站建設(shè)/海外網(wǎng)絡(luò)推廣方案
  • 百度云怎么做網(wǎng)站/怎么給網(wǎng)站做優(yōu)化
  • 學(xué)校網(wǎng)站建設(shè)學(xué)生文明上網(wǎng)/下載瀏覽器
  • 網(wǎng)站開發(fā)的需求/今日最新體育新聞
  • 做問卷的網(wǎng)站/一站式推廣平臺(tái)
  • 設(shè)計(jì)師可以做兼職的網(wǎng)站/馮耀宗seo
  • 研發(fā)網(wǎng)站要多長(zhǎng)時(shí)間/東莞做網(wǎng)站的聯(lián)系電話