使用支持向量机的基于异常的入侵检测系统

news2024/11/26 12:38:57

使用支持向量机的基于异常的入侵检测系统

  • 使用支持向量机的基于异常的入侵检测系统
    • 学习目标:
    • 学习内容:
    • 1.⼀种智能⼊侵检测系统
      • 第⼀阶段
      • 第⼆阶段:分类
      • 总结
    • 2.使用支持向量机的基于异常的入侵检测系统
      • 1.预处理入侵数据集
      • 2.基于信息增益的特征排名
      • 3.分类器优化
      • 4.使用 RBF-SVM 的检测模型
      • 总结
      • 参考论文

申明: 未经许可,禁止以任何形式转载,若要引用,请标注链接地址。 全文共计3685字,阅读大概需要3分钟
更多学习内容, 欢迎关注我的个人公众号:不懂开发的程序猿

使用支持向量机的基于异常的入侵检测系统

学习目标:

  • 1.An intelligent intrusion detection system(⼀种智能⼊侵检测系统)

  • 2.Anomaly-Based Intrusion Detection System Using Support Vector Machine(使用支持向量机的基于异常的入侵检测系统)

学习内容:

1.⼀种智能⼊侵检测系统

(An intelligent intrusion detection system)

第一阶段,IDS 使⽤ K-Means 检测攻击,

第⼆阶段,使⽤监督学习对此类攻击进行分类并消除误报的数量。

数据集:KDD

数据预处理⽅法:

  • ⾸先,计算特征值的⽅差以测量该数据集中特征之间的分布。⽬标是将低方差的过滤掉。

  • 其次,我们计算并去除了相关特征以避免过拟合。当之间的相关系数两个特征接近于1,那么删除密切相关的特征有助于从模型中消除偏差。

  • 第三,使⽤最⼩⼆乘回归误差(LSQE)最⼩化特征相似性和减小最⼤化维度

  • 第四,等式

e ( x , y ) = v a r ( x ) ∗ ( 1 − r e l a t i o n ( x , y ) 2 ) e(x,y)=var(x) * (1 - relation(x,y)^2) e(x,y)=var(x)(1relation(x,y)2)

基本上衡量了关系在两个特征 x 和 y 之间。如果这些特征具有线性关系则 e(x, y) 将为 0,如果它们没有那么 e(x, y) 将等于 var(x)。

  • 最后,最⼤信息压缩指数(MICI)也⽤于分析特征关系

λ 2 ( x , y ) = m i n ( e i g v ( Σ ) ) λ_2(x,y)=min(eigv(Σ)) λ2(x,y)=min(eigv(Σ))

当 MICI 为 0 时,那么特征具有线性关系。

特征数从 41 减少到 30

第⼀阶段

使⽤ K-Means 模型对数据进行聚类和检测攻击,是简单地检测是否有攻击,可以承受误报攻击,完成这个分类,建⽴了两个低簇间相似性和良好的簇内相似性,将 n 个观测值处理成 2 个簇,查看预处理的数据特征并将它们放置成簇。分成两个集群(攻击和正常)

在这里插入图片描述

第⼆阶段:分类

在这个阶段,⽬标是降低误报率并提⾼准确性

J48 是⼀种基于决策树的算法,⽤于对数据进行分类,该算法利⽤信息熵构建决策树,基于C4.5决策树,。在构建树时,J48 会根据信息增益选择属性,熵值计算公式:
E n t r o p y = Σ i c − p i ∗ l o g 2 ( p i ) Entropy=Σ^c_i - p_i * log_2(p_i) Entropy=Σicpilog2(pi)
计算信息增益率。增益基本上是先验熵(T)和所选分⽀的熵(X)之差。
增 益 ( T , X ) = 熵 ( T ) − 熵 ( X ) 增益(T,X)=熵(T)-熵(X) (T,X)=(T)(X)
计算每个候选属性的增益后,根据信息增益最⾼的属性对数据进行拆分。⼀旦攻击信息增益最多的特征落⼊错误的分⽀,J48 的性能就不会很好。

在这里插入图片描述

J48分类器误差曲线

总结

优点:J48 是⼀种容易实现和可视化的算法。由于它基于C4.5,所以它在具有两个以上类别的离散数据中表现良好,计算要求低

在查看训练计算要求时,通常 J48 需要更多的时间和内存来进行训练,如果⽆法正确配置 J48 决策树,输出⼀个复杂的树,它的性能很差并且需要很⾼的计算能力

2.使用支持向量机的基于异常的入侵检测系统

(Anomaly-Based Intrusion Detection System Using Support Vector Machine)

在这里插入图片描述

1.预处理入侵数据集

本实验使用 NSL-KDD 数据集进行评估,共有 41 个特征,其中 34 个是数字的,7 个是符号的,因为 SVM 分类器不能使用其基本形式的数据集特征。因此,我们需要将符号数据转换为数字形式,并借助 min–max scalar(在 python 中)将其放入固定范围(-1, 1),最后将其映射为正常或异常。

2.基于信息增益的特征排名

特征排名是通过使用过滤器信息增益比来完成的,当特征对应于特定类时,熵的值较小。当特征对应多个类时,熵值更大。具有高信息增益值的特征被认为是对会话数据进行分类最重要的,信息增益比 (IGR) 是一个定量值,用于根据数据集中这些特征的值对特征进行优先级排序。

在这里插入图片描述

3.分类器优化

在基本分类中,我们使用以直线作为超平面的线性 SVM,但并非总是如此。为了减少误报的数量,我们需要一个非线性内核—径向基函数(Radial Basis Function)

RBF 用于超平面取决于最近点的地方,旨在减少误报的数量。它的值取决于两个主要因素,C——也称为惩罚因子,较高的C值具有较高的复杂性,较低的C值具有较低的复杂性。Gamma 是核系数。高 gamma 值对超平面上较远的点的影响更大,而低 gamma 值对更近的点的影响更大

在这里插入图片描述

其中r是标准偏差,x – c是从给定点到现有点中心的距离

4.使用 RBF-SVM 的检测模型

在这里插入图片描述

总结

这2篇可以结合起来考虑一下,数据预处理部分计算特征值的⽅差过滤部分数据再计算Gini指数熵进行特征排序,分类器部分对常规的线性超平面的SVM优化,用RBF-SVM来做。

参考论文

[1] Bendale S, Prasad J. Preliminary study of Software Defined Network on COVID-19 pandemic use cases[J]. Available at SSRN 3612815, 2020.

[2] Ajaeiya G A, Adalian N, Elhajj I H, et al. Flow-based intrusion detection system for SDN[C]//2017 IEEE Symposium on Computers and Communications (ISCC). IEEE, 2017: 787-793.

[3] Le D H, Tran H A. A novel Machine Learning-based Network Intrusion Detection System for Software-Defined Network[C]//2020 7th NAFOSTED Conference on Information and Computer Science (NICS). IEEE, 2020: 25-30.

[4] Kaja N, Shaout A, Ma D. An intelligent intrusion detection system[J]. Applied Intelligence, 2019, 49(9): 3235-3247.

[5] Kevric J, Jukic S, Subasi A. An effective combining classifier approach using tree algorithms for network intrusion detection[J]. Neural Computing and Applications, 2017, 28(1): 1051-1058.

[6] Saleh, A.I., Talaat, F.M. & Labib, L.M. A hybrid intrusion detection system (HIDS) based on prioritized k-nearest neighbors and optimized SVM classifiers. Artif Intell Rev 51, 403–443 (2019). https://doi.org/10.1007/s10462-017-9567-1

–end–

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/42619.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

c++ CJsonObject 读写json

CJsonObject简介 CJsonObject是Bwar基于cJSON全新开发一个C版的JSON库,CJsonObject的最大优势是简单、轻量、跨平台,开发效率极高,尤其对多层嵌套json的读取和生成、修改极为方便。CJsonObject比cJSON简单易用得多,且只要不是有意…

Linux —— 文件操作

目录 1.内核提供的文件系统调用 1.1open和close 1.2write和read 2.文件描述 2.1文件描述符 2.2文件描述符分配规则 3.重定向 3.1最“挫”的重定向 3.2使用系统调用 3.3重定向原理 3.4让我们的"shell"支持重定向操作 4.一切皆文件 1.内核提供的文件系统调用…

什么是杜邦分析?杜邦分析法的公式及示例

什么是杜邦分析? 杜邦分析也称为杜邦恒等式、杜邦方程、杜邦框架、杜邦模型或杜邦方法,是一个多步骤的财务方程式,可以深入了解企业的基本绩效。杜邦模型对影响公司股本回报率 (ROE) 的关键指标进行了全面分析。杜邦分析的另一个术语是杜邦模型。这些名…

做app的测试,你大概率会用到这个命令,尤其是做monkey测试

1.普通命令 1.1 devices命令 语法格式 :adb devices [-l] # 作用 :返回已连接设备的信息 # 示例 :adb devices : 返回设备的信息adb devices -l : 返回设备的详细信息1.2 help命令 语法格式 :adb --help # 作用 &#xff1…

人工智能:人工神经网络的应用场景

❤️作者主页:IT技术分享社区 ❤️作者简介:大家好,我是IT技术分享社区的博主,从事C#、Java开发九年,对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。 ❤️个人荣誉: 数据库领域优质创作者🏆&#x…

android接入微信API相关细节

细节1 想要接入微信,如接入分享微信功能、跳转小程序功能等;首先需要到微信开放平台申请AppId,如何申请在开放平台上的流程很清楚,就不赘述了 但有个细节就是应用包名签名,这个应用包名签名记得是以app有正式签名文件…

WebDAV之葫芦儿·派盘+思源笔记

思源笔记 支持webdav方式连接葫芦儿派盘。 想要一款支持全平台,支持Markdown语法,还支持大纲、块级双向链接、全文搜索、标签分类、数学公式、思维导图 / 流程图、代码片段、跨平台同步等全功能的笔记APP吗?推荐您使用思源笔记与葫芦儿派盘结合方案。 思源笔记是一款本地…

位 运 算

位运算符 在处理整形数值时&#xff0c;可以直接对组成整形数值的各个位进行操作。这意味着可以使用屏蔽技术获得整数中的各个位&#xff08;&#xff1f;&#xff1f;&#xff09; &(与)、|(或)、^(异或)、~(非/取反) “>>” 和 “<<” 运算符将二进制位进行…

06 Job/CronJob: 为什么不直接用Pod来处理业务?

文章目录1. 前言2. 为什么不直接使用pod?2.1 面向对象的设计思想3. 为什么要有Job/CronJob3.1 离线业务的种类4. 如何使用 YAML 描述 临时任务 Job4.1 Job 的 YAML“文件头”4.2 使用kubectl create 生成模板文件4.3 Job 的 YAML body 部分“spec ”4.4 如何在Kubernetes 里操…

【C++ STL容器】:vector存放数据

前言 时不可以苟遇&#xff0c;道不可以虚行。 STL 中最常用的容器为&#xff1a;vector&#xff0c;暂且把它理解为我们之前学过的数组Array。 一、创建一个vector容器&#xff08;数组&#xff09; 添加头文件&#xff1a;#include <vector> vector<int> v;二、…

数商云渠道商协同系统对机械企业的应用价值体现

当前&#xff0c;国内机械市场环境较复杂&#xff0c;竞争日趋激烈&#xff0c;使用单一营销渠道模式已不能适应多变的环境&#xff0c;而代理商群体作为机械行业主流营销渠道&#xff0c;也在“价格战”环境下生存空间被进一步挤压&#xff0c;因此&#xff0c;如何采用领先的…

小啊呜产品读书笔记001:《邱岳的产品手记-13》第24讲 产品案例分析:PathSource的混乱与直观 25讲 产品世界的暗黑模式:操纵的诱惑

小啊呜产品读书笔记001&#xff1a;《邱岳的产品手记-13》第24讲 产品案例分析&#xff1a;PathSource的混乱与直观 & 第25讲 产品世界的暗黑模式&#xff1a;操纵的诱惑一、今日阅读计划二、泛读&知识摘录1、第24讲 产品案例分析&#xff1a;PathSource的混乱与直观2、…

进程与信号(一)

目录 一、前言 二、What Is a Process 三、Process Structure 1、The Process Table 2、Viewing Processes 3、System Processes 4、Process Scheduling 一、前言 进程和信号是 Linux 操作环境的基本组成部分。它们控制 Linux 和所有其他类 unix 计算机系统执行的几乎所…

全新版互联网大厂面试题,分类65份PDF,累计2000页

全新版互联网大厂面试题题库非常全面 包括 Java 集合、JVM、多线程、并发编程、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat、Python、HTML、CSS、Vue、React、JavaS…

github-将本地代码上传到github上

1. 步骤&#xff1a; 准备&#xff1a;因为本地和远程是通过ssh加密的&#xff0c;所以需要生成秘钥和私钥 ssh-keygen -t rsa -C "youremailexample.com" "" 双括号里的是 关联 github的个人邮箱 cmd 里 输入 上述指令&#xff0c;然后 按三次 ent…

MySQL 进阶篇1.0

01-课程介绍 02-存储引擎-MySQL体系结构 03存储引擎-简介 查询建表语句 --默认存储引擎:InnoDBshow create table account; 查询当前数据库支持的存储引擎show engines; 04存储引擎-InnoDB介绍 开关为"ON": 表示每个innodb引擎的表都有一个idb表共享文件 …

2012-04 《信息资源管理 02378》真卷解析,逐题解析+背诵技巧

本系列博客合计 21 篇&#xff0c;每篇都将解析一张《信息资源管理》真卷&#xff0c;并附带答案解析与背诵技巧。 全国 2012 年 4 月自学考试信息资源管理试题&#xff08;02378&#xff09; 单选题 1、作为现代社会的支柱产业&#xff0c;信息产业的主体有&#xff1a;信息…

【雕爷学编程】Arduino动手做(109)---3路电压转换模块

37款传感器与执行器的提法&#xff0c;在网络上广泛流传&#xff0c;其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块&#xff0c;依照实践出真知&#xff08;一定要动手做&#xff09;的理念&#xff0c;以学习和交流为目的&am…

MySQL 数据库 group by 语句怎么优化?

一、一个简单使用示例 我这里创建一张订单表 CREATE TABLE order_info ( id int NOT NULL AUTO_INCREMENT COMMENT 主键, order_no int NOT NULL COMMENT 订单号, goods_id int NOT NULL DEFAULT 0 COMMENT 商品id, goods_name varchar(50) NOT NULL COMMENT 商品名称, …

Kamiya丨Kamiya艾美捷狗CRP ELISA说明书

Kamiya艾美捷狗CRP ELISA预期用途&#xff1a; 狗CRP ELISA是一种高灵敏度的双位点酶联免疫分析&#xff08;ELISA&#xff09;&#xff0c;用于定量测定狗生物样品中的C反应蛋白&#xff08;CRP&#xff09;。仅供研究使用。 引言 急性期蛋白质是血浆蛋白质&#xff0c;其在…