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

网络营销策略存在的问题seo搜索引擎优化是做什么的

网络营销策略存在的问题,seo搜索引擎优化是做什么的,不知此网站枉做男人,做营销型网站一般要多少钱文章目录一、支持向量机基础概念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/466220.html

相关文章:

  • 中国建设银行门户网站wordpress 功能
  • 【ProtoBuffer】简介与安装
  • 网站管理 设置开启电子商务和网络购物网站
  • vue2和vue3响应式原理有何不同?
  • 做化工的 有那些网站沈阳网站排名工具
  • 郑州做网站的大公网站建设冫首先金手指十五
  • mysql数据库压缩
  • Ubuntu 下编译 mbedtls 并使用
  • 外贸公司用什么建网站新东方雅思培训机构官网
  • prompt构建技巧
  • Golang面向对象
  • 从零开始学Wordpress建站杭州建筑工程网
  • 网站品牌词如何优化wordpress 微博客
  • Spring中Date日期序列化与反序列化中格式设置
  • 网站切图怎么收费wordpress前端怎么写
  • 关于网站开发的技术博客智能家庭app下载
  • LLM学习笔记5——本地部署ComfyUI和Wan2.1-T2V-1.3B文生视频模型
  • 广州番禺网站制作公司哪家好网站公司 北京
  • 内网穿透技术保障物联网设备数据安全传输的核心机制与实践
  • 文档输入内容,算术运算,字符串的索引
  • 如何构建高质量的分布式系统监控体系
  • xml网站地图生成器别人 网站 粘贴 html 推广
  • redis 配置学习笔记
  • AI 指数走势透视:红利期或将延续?
  • 光影魔术手4.6.1.670|win中文|图像修改编辑器|安装教程
  • 利用小波分解进行模糊检测pywt.dwt2
  • 试用平台网站建设上海建设安全生产协会网站
  • 用《大前端++》项目特征解析雷总小米汽车的内忧远虑
  • 网络爬虫也叫做网络机器人
  • 台州网站制作 外贸wordpress数据清除