当前位置: 首页 > news >正文

小型网站制作深圳wordpress前端新增头像上传

小型网站制作深圳,wordpress前端新增头像上传,网站制作教程 pdf下载,苏州北京商场网站建设文章目录一、支持向量机基础概念1. 什么是支持向量机2. 超平面3. 支持向量4. 核函数5. 优缺点二、详细解读支持向量机1. 超平面解读2. 函数间隔3. 求解www,bbb三、支持向量机的类别1. 硬间隔支持向量机2. 软间隔支持向量机3. 非线性支持向量机四、支持向量机解决数据…

文章目录

  • 一、支持向量机基础概念
    • 1. 什么是支持向量机
    • 2. 超平面
    • 3. 支持向量
    • 4. 核函数
    • 5. 优缺点
  • 二、详细解读支持向量机
  • 三、支持向量机的类别
    • 1. 硬间隔支持向量机
    • 2. 软间隔支持向量机
    • 3. 非线性支持向量机
  • 四、支持向量机解决数据点分类问题
    • 1.鸢尾花数据(iris.csv)
    • 2. 代码实现(以鸢尾花数据集为例,硬间隔支持向量机实践)
    • 3. 结果分析
  • 五、总结

一、支持向量机基础概念

1. 什么是支持向量机

支持向量机(Support Vector Machine,SVM)是一种经典的监督学习算法,广泛应用于分类和回归任务。它的核心思想是找到一个最优超平面,将不同类别的样本在特征空间中分隔开,使分类间隔最大化 ,从而提升模型泛化能力,面对新样本时也能准确分类。

2. 超平面

在二维空间里,超平面就是一条直线,能把平面上的点分成两类;到了三维空间,超平面是一个平面。更一般地,在 n 维特征空间中,超平面是满足 wTx+b=0w^Tx + b = 0wTx+b=0(其中 www 是法向量,决定超平面方向;xxx 是样本特征向量;bbb 是偏置项)的 n−1n - 1n1 维子空间 。比如在二维二分类问题里,找的就是能分隔两类样本的直线,这就是超平面的直观体现。

3. 支持向量

那些离超平面最近的样本点,就是支持向量。它们“支撑”起了分类的间隔,对超平面的确定起着关键作用。因为只需要这些支持向量,就能确定最优超平面,其他样本点不影响超平面位置,这也让SVM在处理数据时,有很好的抗干扰性和计算优势。

4. 核函数

当样本在原始特征空间线性不可分时,核函数就派上用场了。它能把低维线性不可分的数据,映射到高维特征空间,使其线性可分,还不用显式计算高维映射,节省计算资源。常见的核函数有线性核(K(xi,xj)=xiTxjK(x_i, x_j)=x_i^Tx_jK(xi,xj)=xiTxj)、多项式核(K(xi,xj)=(γxiTxj+r)dK(x_i, x_j)=(γx_i^Tx_j + r)^dK(xi,xj)=(γxiTxj+r)dγ、r、dγ、r、dγrd是参数 )、径向基核(RBF,K(xi,xj)=exp(−γ∣∣xi−xj∣∣2)K(x_i, x_j)=exp(-γ||x_i - x_j||^2)K(xi,xj)=exp(γ∣∣xixj2)γ>0γ>0γ>0)等。

5. 优缺点

优点

  • 泛化能力强,通过最大化分类间隔,降低过拟合风险,小样本数据集上表现出色。
  • 能处理高维特征,借助核函数,不用担忧维度灾难,适合文本分类等高维场景。
  • 数学理论清晰,基于优化理论推导,模型解释性较好。

缺点

  • 对数据预处理和参数调节敏感,比如核函数参数、惩罚系数等,需仔细调参。
  • 训练时间长、空间复杂度高,样本量大时,计算开销大,训练过程可能很慢。
  • 对非均衡数据处理能力弱,类别样本数量差异大时,易偏向多数类,影响分类效果。

二、详细解读支持向量机

1. 超平面解读

超平面方程 wTx+b=0w^Tx + b = 0wTx+b=0www 是超平面法向量,决定超平面方向;bbb 是截距,决定超平面位置。对于样本点 xxx ,代入方程,根据结果正负判断类别(二分类时)。在三维空间,超平面是二维平面;维度更高,超平面是抽象的 n−1n - 1n1 维子空间,是分隔不同类别样本的“边界” 。

2. 函数间隔

函数间隔用于衡量样本点到超平面的分类确信度。对于样本 (xi,yix_i, y_ixi,yi)(yi∈{−1,1}y_i \in \{ -1, 1 \}yi{1,1} 是类别标签 ),其函数间隔 γ^i=yi(wTxi+b)\hat{γ}_i = y_i(w^Tx_i + b)γ^i=yi(wTxi+b) 。若 γ^i>0\hat{γ}_i > 0γ^i>0 ,说明分类正确,值越大,分类确信度越高;值为负则分类错误。但函数间隔受 www 缩放影响(比如 wwwbbb 同时乘以一个正数,超平面不变,函数间隔却会改变 ),所以引入几何间隔来解决这个问题。

3. 求解wwwbbb

SVM要找最优超平面,等价于求解使几何间隔最大化的 wwwbbb 。几何间隔 γi=yi(wTxi+b)∣∣w∣∣γ_i = \frac{y_i(w^Tx_i + b)}{||w||}γi=∣∣w∣∣yi(wTxi+b)∣∣w∣∣||w||∣∣w∣∣www 的范数 ),最大化几何间隔,转化为在 yi(wTxi+b)≥1y_i(w^Tx_i + b) \geq 1yi(wTxi+b)1(支持向量对应的约束,保证间隔最大化 )约束下,最小化 12∣∣w∣∣2\frac{1}{2}||w||^221∣∣w2 的优化问题(凸二次规划问题 )。通过拉格朗日乘数法,将带约束优化转化为无约束优化,求解得到最优的 wwwbbb ,确定最终超平面。


三、支持向量机的类别

1. 硬间隔支持向量机

硬间隔SVM假设数据线性可分,要求所有样本点都严格位于超平面两侧的间隔区域外,即函数间隔大于等于1,追求最大化几何间隔。优点是模型简单、分类边界清晰;但对噪声和 outliers 敏感,数据有一点线性不可分(实际数据常存在噪声 ),就无法使用,适用场景有限。

2. 软间隔支持向量机

为解决硬间隔SVM对噪声敏感问题,软间隔SVM允许部分样本点不满足间隔约束,引入松弛变量 ξi≥0ξ_i \geq 0ξi0 ,约束变为 yi(wTxi+b)≥1−ξiy_i(w^Tx_i + b) \geq 1 - ξ_iyi(wTxi+b)1ξi,同时在目标函数中加入对松弛变量的惩罚项 C∑i=1nξiC\sum_{i = 1}^{n}ξ_iCi=1nξiC>0C>0C>0 是惩罚系数,控制间隔最大化和允许样本违反约束的平衡 )。这样,模型能处理数据中少量噪声、outliers ,更贴合实际数据情况,是实际应用中常用的SVM形式。

3. 非线性支持向量机

当数据在原始特征空间线性不可分时,非线性SVM借助核函数,把原始特征空间的数据映射到高维甚至无穷维特征空间,使数据在新空间线性可分。通过核函数替代高维空间的内积计算,避免了直接映射的高计算成本,常见于处理图像识别、文本分类等复杂非线性数据分类任务,比如用RBF核函数处理图像特征分类,能有效捕捉数据非线性关系。


四、支持向量机解决数据点分类问题

1.鸢尾花数据(iris.csv)

1,5.1,3.5,1.4,0.2,0
2,4.9,3,1.4,0.2,0
3,4.7,3.2,1.3,0.2,0
4,4.6,3.1,1.5,0.2,0
5,5,3.6,1.4,0.2,0
6,5.4,3.9,1.7,0.4,0
7,4.6,3.4,1.4,0.3,0
8,5,3.4,1.5,0.2,0
9,4.4,2.9,1.4,0.2,0
10,4.9,3.1,1.5,0.1,0
11,5.4,3.7,1.5,0.2,0
12,4.8,3.4,1.6,0.2,0
13,4.8,3,1.4,0.1,0
14,4.3,3,1.1,0.1,0
15,5.8,4,1.2,0.2,0
16,5.7,4.4,1.5,0.4,0
17,5.4,3.9,1.3,0.4,0
18,5.1,3.5,1.4,0.3,0
19,5.7,3.8,1.7,0.3,0
20,5.1,3.8,1.5,0.3,0
21,5.4,3.4,1.7,0.2,0
22,5.1,3.7,1.5,0.4,0
23,4.6,3.6,1,0.2,0
24,5.1,3.3,1.7,0.5,0
25,4.8,3.4,1.9,0.2,0
26,5,3,1.6,0.2,0
27,5,3.4,1.6,0.4,0
28,5.2,3.5,1.5,0.2,0
29,5.2,3.4,1.4,0.2,0
30,4.7,3.2,1.6,0.2,0
31,4.8,3.1,1.6,0.2,0
32,5.4,3.4,1.5,0.4,0
33,5.2,4.1,1.5,0.1,0
34,5.5,4.2,1.4,0.2,0
35,4.9,3.1,1.5,0.2,0
36,5,3.2,1.2,0.2,0
37,5.5,3.5,1.3,0.2,0
38,4.9,3.6,1.4,0.1,0
39,4.4,3,1.3,0.2,0
40,5.1,3.4,1.5,0.2,0
41,5,3.5,1.3,0.3,0
42,4.5,2.3,1.3,0.3,0
43,4.4,3.2,1.3,0.2,0
44,5,3.5,1.6,0.6,0
45,5.1,3.8,1.9,0.4,0
46,4.8,3,1.4,0.3,0
47,5.1,3.8,1.6,0.2,0
48,4.6,3.2,1.4,0.2,0
49,5.3,3.7,1.5,0.2,0
50,5,3.3,1.4,0.2,0
51,7,3.2,4.7,1.4,1
52,6.4,3.2,4.5,1.5,1
53,6.9,3.1,4.9,1.5,1
54,5.5,2.3,4,1.3,1
55,6.5,2.8,4.6,1.5,1
56,5.7,2.8,4.5,1.3,1
57,6.3,3.3,4.7,1.6,1
58,4.9,2.4,3.3,1,1
59,6.6,2.9,4.6,1.3,1
60,5.2,2.7,3.9,1.4,1
61,5,2,3.5,1,1
62,5.9,3,4.2,1.5,1
63,6,2.2,4,1,1
64,6.1,2.9,4.7,1.4,1
65,5.6,2.9,3.6,1.3,1
66,6.7,3.1,4.4,1.4,1
67,5.6,3,4.5,1.5,1
68,5.8,2.7,4.1,1,1
69,6.2,2.2,4.5,1.5,1
70,5.6,2.5,3.9,1.1,1
71,5.9,3.2,4.8,1.8,1
72,6.1,2.8,4,1.3,1
73,6.3,2.5,4.9,1.5,1
74,6.1,2.8,4.7,1.2,1
75,6.4,2.9,4.3,1.3,1
76,6.6,3,4.4,1.4,1
77,6.8,2.8,4.8,1.4,1
78,6.7,3,5,1.7,1
79,6,2.9,4.5,1.5,1
80,5.7,2.6,3.5,1,1
81,5.5,2.4,3.8,1.1,1
82,5.5,2.4,3.7,1,1
83,5.8,2.7,3.9,1.2,1
84,6,2.7,5.1,1.6,1
85,5.4,3,4.5,1.5,1
86,6,3.4,4.5,1.6,1
87,6.7,3.1,4.7,1.5,1
88,6.3,2.3,4.4,1.3,1
89,5.6,3,4.1,1.3,1
90,5.5,2.5,4,1.3,1
91,5.5,2.6,4.4,1.2,1
92,6.1,3,4.6,1.4,1
93,5.8,2.6,4,1.2,1
94,5,2.3,3.3,1,1
95,5.6,2.7,4.2,1.3,1
96,5.7,3,4.2,1.2,1
97,5.7,2.9,4.2,1.3,1
98,6.2,2.9,4.3,1.3,1
99,5.1,2.5,3,1.1,1
100,5.7,2.8,4.1,1.3,1

2. 代码实现(以鸢尾花数据集为例,硬间隔支持向量机实践)

import pandas as pd
from sklearn.svm import SVC
from sklearn.model_selection import train_test_split, cross_val_score
from sklearn import metrics
import numpy as np# 读取数据集(需提前准备 iris.csv 数据集,格式为:特征1,特征2,特征3,特征4,类别  每行一条样本)
def load_iris_data():data = pd.read_csv('iris.csv')X = data.iloc[:, :-1]  # 取前4列特征y = data.iloc[:, -1]   # 取最后一列类别标签return X, y# 划分训练集和测试集,测试集占比 20%
def split_data(X, y):X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)return X_train, X_test, y_train, y_test# 训练SVM模型,使用线性核函数,C设置为无穷大模拟硬间隔(实际代码中用 float('inf') 表示)
def train_svm(X_train, y_train):svm = SVC(kernel='linear', C=float('inf'), random_state=0)  # kernel='linear' 线性核,C越大越接近硬间隔svm.fit(X_train, y_train)return svm# 评估模型在训练集上的分类表现,输出分类报告(精确率、召回率、F1等)
def evaluate_on_train(svm, X_train, y_train):y_pred_train = svm.predict(X_train)print("训练集分类报告:")print(metrics.classification_report(y_train, y_pred_train))# 评估模型在测试集上的分类表现,输出分类报告
def evaluate_on_test(svm, X_test, y_test):y_pred_test = svm.predict(X_test)print("\n测试集分类报告:")print(metrics.classification_report(y_test, y_pred_test))# 使用5折交叉验证评估模型泛化能力,输出每次验证得分和平均得分
def cross_validate_svm(svm, X, y):scores = cross_val_score(svm, X, y, cv=5)  # cv=5 表示5折交叉验证print(f"\n5折交叉验证得分: {scores}")print(f"交叉验证平均得分: {np.mean(scores)}")if __name__ == "__main__":# 流程:加载数据 → 划分数据集 → 训练模型 → 评估训练集 → 评估测试集 → 交叉验证X, y = load_iris_data()X_train, X_test, y_train, y_test = split_data(X, y)svm_model = train_svm(X_train, y_train)evaluate_on_train(svm_model, X_train, y_train)evaluate_on_test(svm_model, X_test, y_test)cross_validate_svm(svm_model, X, y)

代码说明

  • 数据集:以经典鸢尾花(Iris)数据集为例,需提前准备iris.csv文件,每行存储一条样本,包含 4 个特征(花萼长度、花萼宽度、花瓣长度、花瓣宽度 )和 1 个类别标签(如 Iris - setosa、Iris - versicolor、Iris - virginica )。
  • 硬间隔实现:通过 SVC(kernel='linear', C=float('inf')) ,将惩罚系数 C 设为无穷大,让模型尽可能追求硬间隔(严格分类,不允许样本越过间隔 ),适合数据线性可分场景。若数据有噪声,可减小 C 切换为软间隔。
  • 评估环节:先看训练集分类报告,验证模型是否 “学会” 区分样本;再看测试集表现,检验泛化能力;最后用 5 折交叉验证,更全面评估模型在不同数据子集上的稳定性。

3. 结果分析

  • 训练集评估:若训练集分类报告中各类别精确率、召回率、F1 - score 都接近 1,说明模型在训练数据上分类效果好,能准确区分样本;若指标较低,可能是模型欠拟合(如数据复杂但核函数选得简单 )或参数设置不当。
  • 测试集评估:对比测试集与训练集指标,若测试集指标也高且和训练集接近,模型泛化能力好;若测试集指标远低于训练集,要警惕过拟合(比如硬间隔场景下,数据实际有噪声但强制硬间隔,可能导致训练集完美分类、测试集出错 )。
  • 交叉验证:5 折交叉验证得分若较稳定(标准差小 ),且平均得分高,说明模型鲁棒性强;若得分波动大,可能数据分布不均或模型对数据子集敏感,需调整参数(如换核函数、调整 C 值 )。

五、总结

支持向量机是强大的监督学习算法,以最大化分类间隔为核心,通过超平面、支持向量、核函数等概念,解决线性和非线性分类问题。硬间隔、软间隔、非线性 SVM 分别适配不同数据场景,应对线性可分、含噪声、非线性数据。实际应用中,要根据数据特点选合适类别和参数,虽然有训练慢、对非均衡数据敏感等缺点,但在很多领域(如文本分类、图像识别 )仍有出色表现,理解其原理和实践方法,能为解决分类问题提供有效工具 。

http://www.dtcms.com/a/459187.html

相关文章:

  • 优秀国外网站设计赏析网站怎样做全国地区推广
  • 淘宝网站那个做的营销型网站建立
  • 徐州祥云做网站网络营销公司如何建立
  • 公司网站首页模板网站改版专题页
  • 桂林市生活网官方网站普陀网页设计
  • 网站无障碍建设百度seo权重
  • 免费电商网站建设平台php做网站首页的代码
  • 免费域名做网站遵义在线新闻中心
  • 微网站开发平台免费wordpress 使用ip访问
  • 一_建设网站前的市场分析做外贸学习网站
  • 上饶网站建设公司国家职业证书查询网入口
  • 潜江建设网站用人名做网站域名
  • 第五步:解决跨域问题,返回 token,校验token, 并定义将接收的参数全局存储的方法
  • 福建城建设厅官方网站秦皇岛信息平台
  • 云主机做网站网页制作软件ai
  • 网站建设科目做网站维护价格
  • 猎头公司应坚持的原则有seo推广公司网站模板
  • 营销型网站用什么模版合适陈幼坚设计公司官网
  • 工作室网站源码php学网页设计哪个培训学校好
  • seo网站设计就业前景wordpress sydney
  • 宝应做网站汕头小程序开发
  • 沈阳做网站公司哪家好网站开发遵循的原则
  • 网站被降权重新做网站郑州专业网站建设公司详情
  • 网站开发维护任职要求宝安中心地铁站是几号线
  • 网站运营难做嘛禅城网站建设多少钱
  • 可以盗链图片的网站重庆大型的网站建设
  • day05-问答系统
  • 永久免费的wap建站平台泉州优化公司
  • 设计网站的一般过程网站入侵怎么做
  • 网站统计排名WordPress批量修改文章