基于蜣螂算法优化的SVM数据分类预测-附代码

2023-11-18

基于蜣螂算法优化的SVM数据分类预测 - 附代码


摘要:为了提高SVM数据的分类预测准确率,对SVM中惩罚参数和核函数参数利用蜣螂算法进行优化。

1.数据集

wine 数据的来源是 UCI 数据库 , 记录的是在意大利同一区域里三种不同品种的葡萄酒的化学成分分析,数据里含有 178 个样本,每个样本含有 13 个特征分量(化学成分〉,每个样本 的类别标签已给。将这 178 个样本的 50%作为训练集,另 50%作为测试集 ,用训练集对 SVM 进行训练可以得到分类模型,再用得到的模型对测试集进行类别标签预测。

整体数据存储在 chapter_WineClass. mat ,解释如下: classnumber = 3 ,记录类别数目;

wine, 178 × 13 的 一个 double 型的矩阵,记录 178 个样本的 13 个属性;

wine_ labels, 178 × 1的 一个 double 型的列向盘,记录 178 个样本各自的类别标签 。

图1.数据集

2.SVM模型建立

首先需要从原始数据里把训练集和测试集提取出来,然后进行一定的预处理(必要的时候 还需要进行特征提取),之后用训练集对 SVM 进行训练,最后用得到的模型来预测测试集的分类标签。

图2.SVM模型

其中数据预处理采用归一化处理:对训练集和测试集进行归一化预处理,采用的归一化映射如下 。
y = x − x m i n x m a x − x m i n (1) y = \frac{x-x_{min}}{x_{max} - x{min}} \tag{1} y=xmaxxminxxmin(1)

3.基于蜣螂算法优化的SVM

蜣螂算法的具体原理参考博客:https://blog.csdn.net/u011835903/article/details/128280084。

蜣螂算法的优化参数为SVM中惩罚参数c和核函数参数g。适应度函数为SVM对测试集的预测正确率。
f i n t e n e s s = m a x ( a c c u r a c y [ p r e d i c t ( t e s t ) ] finteness = max(accuracy[predict(test)] finteness=max(accuracy[predict(test)]

4.测试结果

蜣螂参数设置如下:

%目标函数
fun = @getObjValue; %适应度函数
% 优化参数的个数 (c、g)
dim = 2;
% 优化参数的取值下限
lb = [10^-1, 2^-5];
ub = [10^1, 2^4];
pop =10; %蜣螂数量
Max_iteration=20;%最大迭代次数

在这里插入图片描述

从最终结果来看,经过蜣螂优化的SVM测试集预测正确率为100%。而未经过优化的SVM的正确率为98.78%(数据来源于《MATLAB神经网络43个案例分析》)

5.参考文献:

书籍《MATLAB神经网络43个案例分析》

6.Matlab代码

7.python代码

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于蜣螂算法优化的SVM数据分类预测-附代码 的相关文章

随机推荐

  • 小程序开发Q&A

    本文总结小程序开发中常见的错误问题 请开发者利用浏览器的搜索功能来检索关键字 快速定位到相关问题 快捷键Ctrl F打开搜索框 Q1 为什么会出现 脚本错误或者未正确调用Page 的错误提示 A 出现这个错误的原因通常是因为对应页面的js文
  • 真香系列!史上最全的微服务专业术语面试50问,赶快收藏备战金九银十!

    前言 上个月4号通过阿里工作的学长进行内推 7天简历评估 11号接到电话面试 尽管猝不及防回答仓促 但好在前期准备充分 通过 3天后进行现场面试 通知时间为早上10点 当日设了七点闹钟 结果五点五十三分惊醒后再无法入睡 起床 重新翻看之前做
  • 春秋云镜 CVE-2022-32991

    春秋云镜 CVE 2022 32991 Web Based Quiz System SQL注入 靶标介绍 该CMS的welcome php中存在SQL注入攻击 1 启动场景 2 注册任意用户 3 登录成功进入主页 http eci 2zei
  • postgresql 清空数据表 truncate

    在 mysql 中如果需要清空表 只需要 TRUNCATE table name 即可 如果有自增的 id 字段 也会还原回 1 但是 postgresql 与 mysql 稍有不同 postgresql 的自增字段 是通过 序列 sequ
  • Python Turtle绘图基础(三)——Turtle色彩和画笔设置

    今天继续给大家介绍Python相关知识 本文主要内容是Python Turtle绘图基础 三 包括Turtle色彩和Turtle画笔设置 一 Turtle色彩设置 想要用Turtle绘制出更加复杂 更加美丽的图形 就必须学习Turtle的色
  • 【按照年月去统计信息并分类展示】

    1 前言 需求是需要将历史订单按照年月分类展示 并展示汇总值 由于后端返回的是数组的数据 并没有将数据做好统计分类 出于对自己的自信以及不想给别人添麻烦的信息 然后自己写了一下处理的方法 然后放上最后的效果图吧 2 代码实现 按照月份统计每
  • 跟着英雄刷算法-素数

    跟着英雄大佬刷算法的第三天 数论基础 优化一 对于一个非素数n来说 如果x是n的一个因子 那么n x也是n的一个因子 我们可以假设x 所以对于一个数n 判断它是否为一个素数我们需要确定的范围为 2 根号下n 优化二 例1 不是素数返回0 b
  • Tomcat 8 解决“At least one JAR was scanned for TLDs yet contained no TLDs”问题

    参考 http stackoverflow com questions 14375673 how to fix jsp compiler warning one jar was scanned for tlds yet contained
  • 网络层抓包tcpdump

    sudo tcpdump i eth0 s 0 nn host iphost w xxx pcap 这段代码使用了命令行工具 tcpdump 用于在Linux系统上捕获网络数据包 让我详细介绍一下这段代码的含义和 tcpdump 的用法 代
  • 2022年4月3日-4月15日(方案A,ogremain源码抄写+ue4视频学习,共22小时,合计1270小时,剩8730小时)

    截至2022年4月1日 ogreMain剩下4533行 含注释 纯代码2646行 周二时学完了ue第五套视频教程编辑器1 good 接下来 UE4视频教程进行到了mysql 1 1 tf1 2 1 oss 4 2 simpleThread
  • c语言/c++(数据结构篇) 之 括号匹配检验实例(栈和队列)(4/7)

    实验目的及要求 熟悉掌握利用栈完成括号是否匹配的检验 实验内容 利用栈完成括号匹配检验 目的 掌握栈的后进先出原则在解决实际问题中的应用 内容 输入一组括号 构造栈 利用栈判断所输入的括号是否匹配 并能够输出匹配 多左括号 多右括号三种不同
  • Centos7Hadoop集群搭建准备工作

    设置静态IP地址 1 vi etc sysconfig network scripts ifcfg ens33 BOOTPROTO static ONBOOT yes 固定IP IPADDR IP地址 子网掩码 NETMASK 255 25
  • [思维模式-8]:《如何系统思考》-4- 认识篇 - 什么是系统思考?系统思考的特征?系统思考的思维转变。

    目录 第1章 系统思考概述 1 1 什么是系统思考 1 2 系统思考适合解决什么样的问题 解决复杂问题的有效利器 1 3 思维模式的转换 还原论向整体论 西医向中医 第2章 系统思考的四项特征 2 1 看到全貌而非局部 2 2 看透结构而非
  • 基于 Kintex-7 FPGA + Nvidia TX2 = 16通道高速ADC数据采集系统

    在之前接触的设计中如果涉及要实现ADC采样的话 往往会从精度和速率来考虑对性能的影响 一般来说精度是固定的或有一个最大精度设置 但是采样速率的话 过快会造成采样不准确 往往会对整个设计的性能造成限制 所以一直期望有这样一个系统 可以实现高速
  • 如何配置Java环境变量

    文章目录 零 首先需要进入环境变量页面 一 配置 JAVA HOME 变量 二 配置 Path 变量 三 配置 CLASSPATH 变量 四 验证是否配置成功 零 首先需要进入环境变量页面 1 win i 打开设置页面 点击系统 2 点击关
  • Camera的学习笔记(二)——ISP

    ISP概念 ISP是Image Signal Processor的缩写 全称是影像处理器 在相机成像的整个环节中 它负责接收感光元件 Sensor 的原始信号数据 可以理解为整个相机拍照 录像的第一步处理流程 对图像质量起着非常重要的作用
  • 改善服务器响应时间,一种改进WWW服务器响应时间的调度方法

    一种改进WWW服务器响应时间的调度方法 这篇论文提出了一种基于控制因子 处于先来先服务和最短作业优先调度方法之间的分类调度方法 它是非抢占的 且不会发生HTTP请求长期等待而未得到WW 本文共3页 阅读全文 gt gt 公共交通是城市居民出
  • element UI 对导航el-menu 样式的修改

    element UI 对导航el menu 样式的修改 对样式进行修改时 el menu horizontal gt el submenu el submenu title el menu horizontal gt el submenu
  • 关于unity3的中关于创建方法的总结

    关于创建基本物体 有些情况会使用上 物体碰撞 游戏里怪物和英雄的触发事件上 创建一个简单物体 隐藏mesh可以作为简单的触法器使用 多次创建预制体Prefab 方法Instantiate original Object position V
  • 基于蜣螂算法优化的SVM数据分类预测-附代码

    基于蜣螂算法优化的SVM数据分类预测 附代码 文章目录 基于蜣螂算法优化的SVM数据分类预测 附代码 1 数据集 2 SVM模型建立 3 基于蜣螂算法优化的SVM 4 测试结果 5 参考文献 6 Matlab代码 7 python代码 摘要