机器学习之异常检测

问题的动机
什么是异常检测呢?为了解释这个概念,让我举一个例子吧:
假想你是一个飞机引擎制造商,当你生产的飞机引擎从生产线上流出时,你需要进行 QA (质量控制测试),而作为这个测试的一部分,你测量了飞机引擎的一些特征变量,比如引擎 运转时产生的热量,或者引擎的振动等等。

这里的每个点、每个叉,都是你的无标签数据。这样,异常检测问题可以定义如下:我
们假设后来有一天,你有一个新的飞机引擎从生产线上流出,而你的新飞机引擎有特征变量
xtest。所谓的异常检测问题就是:我们希望知道这个新的飞机引擎是否有某种异常,或者说,我们希望判断这个引擎是否需要进一步测试。因为,如果它看起来像一个正常的引擎,那么 我们可以直接将它运送到客户那里,而不需要进一步的测试。

给定数据集 x(1),x(2),..,x(m),我们假使数据集是正常的,我们希望知道新的数据 xtest 是不 是异常的,即这个测试数据不属于该组数据的几率如何。我们所构建的模型应该能根据该测 试数据的位置告诉我们其属于一组数据的可能性 p(x)。

异常检测主要用来识别欺骗。例如在线采集而来的有关用户的数据,一个特征向量中可 能会包含如:用户多久登录一次,访问过的页面,在论坛发布的帖子数量,甚至是打字速度 等。尝试根据这些特征构建一个模型,可以用这个模型来识别那些不符合该模式的用户。

再一个例子是检测一个数据中心,特征可能包含:内存使用情况,被访问的磁盘数量, CPU 的负载,网络的通信量等。根据这些特征可以构建一个模型,用来判断某些计算机是不 是有可能出错了。

高斯分布
高斯分布,也称为正态分布。回顾高斯分布的基本知识。 通常如果我们认为变量 x 符合高斯分布 x~N(μ,σ2)则其概率密度函数为:

应用高斯分布开发异常检测算法

异常检测算法:

开发和评价一个异常检测系统
异常检测算法是一个非监督学习算法,意味着我们无法根据结果变量 y 的值来告诉我 们数据是否真的是异常的。我们需要另一种方法来帮助检验算法是否有效。当我们开发一个 异常检测系统时,我们从带标记(异常或正常)的数据着手,我们从其中选择一部分正常数 据用于构建训练集,然后用剩下的正常数据和异常数据混合的数据构成交叉检验集和测试 集。

例如:我们有 10000 台正常引擎的数据,有 20 台异常引擎的数据。 我们这样分配数 据:
6000 台正常引擎的数据作为训练集
2000 台正常引擎和 10 台异常引擎的数据作为交叉检验集 2000 台正常引擎和 10 台异常引擎的数据作为测试集 具体的评价方法如下:
1. 根据测试集数据,我们估计特征的平均值和方差并构建 p(x)函数
2. 对交叉检验集,我们尝试使用不同的 ε 值作为阀值,并预测数据是否异常,根据 F1
值或者查准率与查全率的比例来选择 ε
3. 选出 ε 后,针对测试集进行预测,计算异常检验系统的 F1 值,或者查准率与查全
率之比

异常检测与监督学习对比
之前我们构建的异常检测系统也使用了带标记的数据,与监督学习有些相似,下面的对 比有助于选择采用监督学习还是异常检测:

选择特征
对于异常检测算法,我们使用的特征是至关重要的,下面谈谈如何选择特征:
异常检测假设特征符合高斯分布,如果数据的分布不是高斯分布,异常检测算法也能够 工作,但是最好还是将数据转换成高斯分布,例如使用对数函数:x = log(x+c),其中 c 为非 负常数; 或者 x=xc,c 为 0-1 之间的一个分数,等方法。

误差分析:
一个常见的问题是一些异常的数据可能也会有较高的 p(x)值,因而被算法认为是正常的。 这种情况下误差分析能够帮助我们,我们可以分析那些被算法错误预测为正常的数据,观察 能否找出一些问题。我们可能能从问题中发现我们需要增加一些新的特征,增加这些新特征 后获得的新算法能够帮助我们更好地进行异常检测。

我们通常可以通过将一些相关的特征进行组合,来获得一些新的更好的特征(异常数据 的该特征值异常地大或小),例如,在检测数据中心的计算机状况的例子中,我们可以用 CPU 负载与网络通信量的比例作为一个新的特征,如果该值异常地大,便有可能意味着该服务器 是陷入了一些问题中。

多元高斯分布

假使我们有两个相关的特征,而且这两个特征的值域范围比较宽,这种情况下,一般的 高斯分布模型可能不能很好地识别异常数据。其原因在于,一般的高斯分布模型尝试的是去 同时抓住两个特征的偏差,因此创造出一个比较大的判定边界。

下图中是两个相关特征,洋红色的线(根据 ε 的不同其范围可大可小)是一般的高斯分 布模型获得的判定边界,很明显绿色的 X 所代表的数据点很可能是异常值,但是其 p(x)值却 仍然在正常范围内。多元高斯分布将创建像图中蓝色曲线所示的判定边界。

在一般的高斯分布模型中,我们计算 p(x)的方法是: 通过分别计算每个特征对应的几 率然后将其累乘起来,在多元高斯分布模型中,我们将构建特征的协方差矩阵,用所有的特 征一起来计算 p(x)。


上图是 5 个不同的模型,从左往右依次分析:
1. 是一个一般的高斯分布模型
2. 通过协方差矩阵,令特征 1 拥有较小的偏差,同时保持特征 2 的偏差
3. 通过协方差矩阵,令特征 2 拥有较大的偏差,同时保持特征 1 的偏差
4. 通过协方差矩阵,在不改变两个特征的原有偏差的基础上,增加两者之间的正相关

5. 通过协方差矩阵,在不改变两个特征的原有偏差的基础上,增加两者之间的负相关

多元高斯分布模型与原高斯分布模型的关系: 可以证明的是,原本的高斯分布模型是多元高斯分布模型的一个子集,即像上图中的第
1、2、3,3 个例子所示,如果协方差矩阵只在对角线的单位上有非零的值时,即为原本的 高斯分布模型了。

原高斯分布模型被广泛使用着,如果特征之间在某种程度上存在相互关联的情况,我们 可以通过构造新新特征的方法来捕捉这些相关性。
如果训练集不是太大,并且没有太多的特征,我们可以使用多元高斯分布模型。

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

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

相关文章

美国《科技与未来城市报告》对中国智慧城市建设的启示

作者:王波、甄峰、卢佩莹来源:科技导报在全球范围内,美国一直引领信息通信技术等科技领域的发展。2008 年全球金融危机后,美国IBM 公司在《智慧地球:下一代领导人议程》主题报告中首次提出“智慧地球”理念&#xff0c…

SVM实现邮件分类

首先学习一下svm分类的使用。 主要有以下步骤: Loading and Visualizing DatajTraining Linear SVM Implementing Gaussian KernelTraining SVM with RBF Kernel 选择最优的C, sigma参数 画出边界线 线性keneral实现 C 1; model svmTrain(X, y, C, linear…

机器学习之推荐系统

我们从一个例子开始定义推荐系统的问题。 假使我们是一个电影供应商,我们有 5 部电影和 4 个用户,我们要求用户为电影打分。 基于内容的推荐系统 在一个基于内容的推荐系统算法中,我们假设对于我们希望推荐的东西有一些数据,这 些数据是有关这些东西的特征。 在我们的例子…

低潮过后,未来医疗可穿戴市场将如何发展?

来源:资本实验室在过去几年中,以智能手表为代表的可穿戴设备市场从快速爆发,并吸引全球厂商趋之若鹜;到如今平缓发展,众多厂商黯然离场,经历了一轮过山车般的炒作周期。但可穿戴设备市场难道只是看上去很美…

大规模机器学习

如果我们有一个低方差的模型,增加数据集的规模可以帮助你获得更好的结果。我们应 该怎样应对一个有 100 万条记录的训练集? 以线性回归模型为例,每一次梯度下降迭代,我们都需要计算训练集的误差的平方和, 如果我们的学习算法需要有 20 次迭代,这便已经是非常大的计算代价。 …

中国半导体:存储器能否打破海外垄断?

来源:中金公司摘要:根据WSTS的统计,全球存储器行业营收2017年达到1319亿美元,占半导体行业收入的30.1%,过去五年(2012-2017)年复合增长率高达37%。▌全球市场概览:千亿美金市场,寡头竞争,IDM模式…

hdu 4588 Count The Carries

思路:容易发现二进制表示的数的最低位规律是01010101……;接着是001100110011……;接着是:0000111100001111…… 这样我们发现每一位的循环节是2^(i1),前2^i是0,后面的是1.这样就可以算出每一位1出现的次数…

数字图像处理入门

图像是指能在人的视觉系统中产生视觉印象的客观对象,包括自然景物、拍摄到的图片、用数学方法描述的图形.图像的要素有儿何要素〈刻画对象的轮廓、 形状等〉和非几何要素(刻画对象的颜色、 材质等〉。 什么是数字图像 简单地说, 数字图像就…

马化腾六年后知乎再提问:未来十年哪些基础科学突破会影响互联网科技产业?...

来源:量子位“未来十年哪些基础科学突破会影响互联网科技产业?产业互联网和消费互联网融合创新,会带来哪些改变?”昨天午夜时分,一个新问题出现在知乎。略微不同之处在于,这个问题的提出者ID是ponyma&#…

2018 中国开源年度报告发布,阿里系独占鳌头

来源:网络大数据摘要:指南针团队使用网络爬虫与 GitHub 数据 API 获取开源代码库的数据如原代码、项目信息、项目的静态信息如项目名称、起始日期等、与动态信息如fork数、客户给与的星数等众多项目相关的信息储存在本地数据结构中。第二篇 数据篇2.1 指…

图像处理中的matlab使用

图像的矩阵表示 类和图像类型 虽然使用的是整数坐标, 但 MATLAB 中的像素值(亮度)并未限制为整数。 表 1-1 列出了 MATLAB 和图像处理工具箱为描述像素值而支持的各种类。 表中的前 8 项是数值型的数据类,第 9 项称为字符类&…

AI洞观 | 一文读懂2018安博会四大趋势

来源: 网易智能10月23-26日,2018年安博会在北京顺义举行。这是全球规模最大,最具影响力的安防展会之一,据安博会官方介绍,本次展会总面积超过10万平方米,展位数突破5000个,云集了国内外上千家安…

图像的点运算

对于一个数字图像处理系统来说, 一般可以将处理流程分为3个阶段。在获取原始图像 后, 首先是图像预处理阶段, 其次是特征抽取阶段,最后才是识别分析阶段。预处理阶段尤 为重要, 这个阶段处理不好则直接导致后面的工作…

量子计算技术发展迅猛,商业潜力初现!如何把握量子计算时代的新机遇?

来源:蓝驰创投编译:全球君摘要:通用量子计算机一旦实现,将对通信安全、导航、成像以及人工智能、生物制药、新材料研发等诸多领域产生颠覆性影响,带来国家安全和社会经济发展的极大变革。通用量子计算机一旦实现&#…

分段线性变换与直方图修正

本文主要包括以下内容 分段线性变换两种实用的直方图修正技术:直方图均衡化和直方图规定化本章的典型案例分析 基于直方图均衡化的图像灰度归一化直方图匹配 分段线性变换 分段线性变换有很多种, 包括灰度拉伸、 灰度窗口变换等, 本节仅讲述最为常用…

图像的几何变换

包含相同内容的两幅图像可能由于成像角度、透视关系乃至镜头自身原因所造成的几何失 真而呈现出截然不同的外观,这就给观测者或是图像识别程序带来了困扰。通过适当的几何变 换可以最大程度地消除这些几何失真所产生的负面影响,有利于我们在后续的处理…

交叉科学不仅不是边缘学科,反而应是科研主流

来源:科学网摘要:“信息时代将走过数字化、网络化、智能化等几个阶段,从现在分界将信息时代和智能时代划分成两个时代有点牵强。”“信息时代将走过数字化、网络化、智能化等几个阶段,从现在分界将信息时代和智能时代划分成两个时…

空间域图像增强

图像增强是数字图像处理相对简单却最具艺术性的领域之一,增强的目的是消除噪声, 显现那些被模糊了的细节或简单突出一幅图像中我们感兴趣的特征。一个简单例子是增强图 像的对比度, 使其看起来更加一目了然。增强是图像处理中非常主观的领域…

wordpress增删改查

wordpress 焦点图插件-增删改查操作 2012-02-01 15:39:14分类: 系统运维 该插件在wordpress-3.3.1-zh_CN版本下开发,主要用于在后台管理首页焦点图(图片轮播)。存放焦点图信息的表 focusphoto(id,photourl,linkto,title,descripti…

AI改变现代商业的25种方式

来源:财富编译 | Geek AI、微胖、茜茜现在,是时候真正了解 AI 未来。关于人工智能引起的焦虑 - 就业问题是其主要来源 - 现实是,没有人知道未来会如何。原因是,我们永远无法预见人类的聪明才智,以及全世界数百万企业家…