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

个体经营可以建设网站吗导航 网站 分析

个体经营可以建设网站吗,导航 网站 分析,自己做优惠券网站,网站怎样建设才叫人性化这里写目录标题 Python异常检测#xff1a;Isolation Forest与局部异常因子#xff08;LOF#xff09;详解引言一、异常检测的基本原理1.1 什么是异常检测#xff1f;1.2 异常检测的应用场景 二、Isolation Forest2.1 Isolation Forest的原理2.1.1 算法步骤 2.2 Python实现… 这里写目录标题 Python异常检测Isolation Forest与局部异常因子LOF详解引言一、异常检测的基本原理1.1 什么是异常检测1.2 异常检测的应用场景 二、Isolation Forest2.1 Isolation Forest的原理2.1.1 算法步骤 2.2 Python实现2.3 案例分析2.3.1 数据准备2.3.2 模型训练与预测 三、局部异常因子LOF3.1 LOF的原理3.1.1 算法步骤 3.2 Python实现3.3 案例分析3.3.1 模型训练与预测 四、比较Isolation Forest和LOF4.1 优缺点4.2 适用场景 五、实际应用案例5.1 例子1金融欺诈检测5.1.1 数据准备5.1.2 模型训练与预测 5.2 例子2网络入侵检测5.2.1 数据准备5.2.2 模型训练与预测 六、总结 Python异常检测Isolation Forest与局部异常因子LOF详解 引言 异常检测是数据分析中的一项重要任务它用于识别与大多数数据点显著不同的异常数据。这些异常可能是错误的测量、欺诈行为或其他感兴趣的罕见事件。在本篇博客中我们将深入探讨两种常用的异常检测算法Isolation Forest和局部异常因子LOF。我们将通过多个案例展示如何在Python中实现这些算法并使用面向对象的思想构建可复用的代码。 一、异常检测的基本原理 1.1 什么是异常检测 异常检测是指通过分析数据集中的样本识别出那些显著偏离其他样本的观测点。这些异常点可能具有以下特点 远离大多数数据点。由于测量错误或故障而产生。表示潜在的欺诈行为或攻击。 1.2 异常检测的应用场景 金融欺诈检测识别不寻常的交易活动。网络安全检测潜在的入侵行为。质量控制监测生产过程中的异常情况。 二、Isolation Forest 2.1 Isolation Forest的原理 Isolation Forest是一种基于树的算法通过随机选择特征并划分数据来“孤立”异常点。由于异常点通常比正常点更容易被孤立因此该算法可以有效地区分异常数据和正常数据。 2.1.1 算法步骤 构建随机森林随机选择特征和切分点构建多棵决策树。孤立点评估通过每个数据点在森林中被孤立的深度来评估其异常程度孤立深度越浅越可能是异常点。 2.2 Python实现 我们将创建一个IsolationForestDetector类用于实现Isolation Forest算法。 import numpy as np from sklearn.ensemble import IsolationForestclass IsolationForestDetector:def __init__(self, contamination0.1):self.contamination contaminationself.model IsolationForest(contaminationself.contamination)def fit(self, X):self.model.fit(X)def predict(self, X):return self.model.predict(X) # 返回1表示正常点-1表示异常点def score_samples(self, X):return self.model.decision_function(X) # 返回每个样本的异常评分2.3 案例分析 我们将使用一个合成数据集来展示Isolation Forest的效果。 2.3.1 数据准备 from sklearn.datasets import make_blobs import matplotlib.pyplot as plt# 创建合成数据集 X, _ make_blobs(n_samples300, centers1, cluster_std0.60, random_state0) # 添加异常点 X np.vstack([X, np.array([[3, 3], [3, 4], [3, 5]])])# 可视化数据 plt.scatter(X[:, 0], X[:, 1]) plt.title(Data with Outliers) plt.xlabel(Feature 1) plt.ylabel(Feature 2) plt.show()2.3.2 模型训练与预测 # 使用Isolation Forest进行异常检测 detector IsolationForestDetector(contamination0.1) detector.fit(X)# 预测异常点 predictions detector.predict(X)# 可视化结果 plt.scatter(X[:, 0], X[:, 1], cpredictions, cmapcoolwarm) plt.title(Isolation Forest Anomaly Detection) plt.xlabel(Feature 1) plt.ylabel(Feature 2) plt.show()三、局部异常因子LOF 3.1 LOF的原理 局部异常因子Local Outlier Factor, LOF是一种基于密度的异常检测算法。它通过比较数据点与其邻居的密度来识别异常。LOF值越大表示该点的密度与其邻居的密度差异越大越可能是异常点。 3.1.1 算法步骤 计算k邻居为每个数据点找到k个最近邻居。计算局部可达密度基于邻居的距离计算每个点的密度。计算LOF值比较每个点的密度与其邻居的密度得到LOF值。 3.2 Python实现 我们将创建一个LOFDetector类用于实现LOF算法。 from sklearn.neighbors import LocalOutlierFactorclass LOFDetector:def __init__(self, n_neighbors20):self.n_neighbors n_neighborsself.model LocalOutlierFactor(n_neighborsself.n_neighbors)def fit(self, X):self.model.fit(X)def predict(self, X):return self.model.fit_predict(X) # 返回1表示正常点-1表示异常点def score_samples(self, X):return -self.model.negative_outlier_factor_ # 返回每个样本的异常评分3.3 案例分析 我们将使用相同的合成数据集来展示LOF的效果。 3.3.1 模型训练与预测 # 使用LOF进行异常检测 lof_detector LOFDetector(n_neighbors5) lof_detector.fit(X)# 预测异常点 lof_predictions lof_detector.predict(X)# 可视化结果 plt.scatter(X[:, 0], X[:, 1], clof_predictions, cmapcoolwarm) plt.title(LOF Anomaly Detection) plt.xlabel(Feature 1) plt.ylabel(Feature 2) plt.show()四、比较Isolation Forest和LOF 4.1 优缺点 特性Isolation ForestLOF可解释性中等高处理大数据的能力较好中等对异常的敏感性对全局异常更敏感对局部异常更敏感算法复杂度O(n log n)O(n^2)通常情况下 4.2 适用场景 Isolation Forest适合大规模数据集尤其是当数据分布较为均匀时。LOF适合数据集存在明显局部结构的情况例如聚类数据。 五、实际应用案例 5.1 例子1金融欺诈检测 假设我们要检测金融交易中的异常行为。我们可以使用Isolation Forest或LOF算法来分析交易数据识别潜在的欺诈行为。 5.1.1 数据准备 import pandas as pd# 加载交易数据集 # transactions pd.read_csv(transactions.csv) # 假设有一个交易数据集 # 这里我们使用合成数据进行演示 np.random.seed(0) normal_transactions np.random.normal(loc100, scale20, size(1000, 2)) fraudulent_transactions np.random.normal(loc200, scale30, size(50, 2)) X_fraud np.vstack([normal_transactions, fraudulent_transactions])# 可视化数据 plt.scatter(X_fraud[:, 0], X_fraud[:, 1]) plt.title(Transaction Data) plt.xlabel(Transaction Amount) plt.ylabel(Transaction Time) plt.show()5.1.2 模型训练与预测 # 使用Isolation Forest进行金融欺诈检测 detector_fraud IsolationForestDetector(contamination0.05) detector_fraud.fit(X_fraud)# 预测异常交易 fraud_predictions detector_fraud.predict(X_fraud)# 可视化结果 plt.scatter(X_fraud[:, 0], X_fraud[:, 1], cfraud_predictions, cmapcoolwarm) plt.title(Fraud Detection using Isolation Forest) plt.xlabel(Transaction Amount) plt.ylabel(Transaction Time) plt.show()5.2 例子2网络入侵检测 我们可以应用LOF算法来检测网络流量中的异常行为识别潜在的入侵。 5.2.1 数据准备 # 加载网络流量数据集合成数据 # network_data pd.read_csv(network_traffic.csv) # 假设有一个网络流量数据集 # 这里我们使用合成数据进行演示 X_network np.random.normal(loc0, scale1, size(1000, 2)) X_network np.vstack([X_network, np.random.normal(loc5, scale1, size(50, 2))]) # 添加异常流量# 可视化数据 plt.scatter(X_network[:, 0], X_network[:, 1]) plt.title(Network Traffic Data) plt.xlabel(Packet Size) plt.ylabel(Packet Time) plt.show()5.2.2 模型训练与预测 # 使用LOF进行网络入侵检测 lof_network_detector LOFDetector(n_neighbors10) lof_network_detector.fit(X_network)# 预测异常流量 network_predictions lof_network_detector.predict(X_network)# 可视化结果 plt.scatter(X_network[:, 0], X_network[:, 1], cnetwork_predictions, cmapcoolwarm) plt.title(Intrusion Detection using LOF) plt.xlabel(Packet Size) plt.ylabel(Packet Time) plt.show()六、总结 本文详细探讨了异常检测中的两种常用算法Isolation Forest和局部异常因子LOF。我们通过多个案例展示了如何使用Python实现这些算法并使用面向对象的思想来构建代码以增强可读性和复用性。这些算法在金融欺诈检测、网络安全和其他领域都有着广泛的应用希望本文能帮助读者深入理解异常检测的基本概念与实现方法。
http://www.dnsts.com.cn/news/277804.html

相关文章:

  • 开创集团网站建设网站的意义
  • 698元网站建设网易免费企业邮箱注册申请
  • 网站定制开发 团队建设留学网站
  • 龙华网页设计公司网站怎么做阿里巴巴官网站
  • 网站的备案的要多少钱网站详情页用cdr做可以吗
  • 网站建设如何开票指数函数图像
  • 建站免费平台网页版查询系统制作
  • 网络营销中网站的目的是企业邮箱免费注册入口
  • 布吉网站建设找哪家公司好无网站无产品链接如何做SOHO
  • 优化网站建设人员组成ps网页设计教程视频
  • 交通门户网站建设私人定制app
  • 设计网站官网狗哈尔滨网站建设制作哪家好
  • 紫色的网站电商网站代码设计
  • 诸城网站制作宿迁公司做网站
  • 品牌网站设计制作哪家好贵阳建设企业网站
  • 查一下红之易道学做的什么网站兼职设计师平台
  • 洪栾单页网站建设零距离seo
  • 网站建设是编程吗seo移动网站页面怎么做
  • 建设网站目的是什么苏州市吴中区建设局网站
  • 上海人才网官网登录不进去seo教程之关键词是什么
  • 扁平化色块风格的网站阿里图标库谁做的网站
  • 广西送变电建设公司铁塔厂网站贵州省建设厅三类人员报名网站
  • 做网站学什么什么专业江苏交通厅门户网站建设工程
  • 甘肃建设体网站网站里的网页是一个一个做的么
  • 北京网站优化哪家好有限责任公司与有限公司的区别
  • wordpress电子商务网站插件网站备案号码
  • 黄冈网站建设哪家专业网站开发美工绩效考核
  • 企业网站建设选题背景如何对网站进行管理
  • 网站建设的界面f分wordpress 数据库错误
  • 哪家建站公司好建立网站最好的模板