我读到了使用RPCA查找时间序列数据的异常值.我对RPCA的基本原理和理论有所了解.我有一个执行RPCA的

Python库,并且几乎有两个矩阵作为输出(L和S),输入数据的低秩近似和稀疏矩阵.

输入数据:(行为一天,10个要素为列.)

DAY 1 - 100,300,345,126,289,387,278,433,189,153

DAY 2 - 300,647,245,426,889,987,278,133,295,153

DAY 3 - 200,747,145,226,489,287,378,1033,295,453

获得的产出:

L

[[ 125.20560531 292.91525518 92.76132814 141.33797061 282.93586313

185.71134917 199.48789246 96.04089205 192.11501055 118.68811072]

[ 174.72737183 408.77013914 129.45061871 197.24046765 394.84366245

259.16456278 278.39005349 134.0273274 268.1010231 165.63205458]

[ 194.38951303 454.76920678 144.01774873 219.43601655 439.27557808

288.32845493 309.71739782 149.10947628 298.27053871 184.27069609]]

S

[[ -25.20560531 0. 252.23867186 -0. 0.

201.28865083 78.51210754 336.95910795 -0. 34.31188928]

[ 125.27262817 238.22986086 115.54938129 228.75953235 494.15633755

727.83543722 -0. -0. 26.8989769 -0. ]

[ 0. 292.23079322 -0. 0. 49.72442192

-0. 68.28260218 883.89052372 0. 268.72930391]]

推论:(我的问题)

现在我如何推断可归类为异常值的点.对于前者通过查看数据,我们可以说1033看起来像一个异常值. S矩阵中的对应条目是883.89052372,其与S中的其他条目相比更多.可以使用具有固定阈值的概念来找出S矩阵条目与输入矩阵中的对应原始值的偏差来确定该点.是异常值?还是我完全理解RPCA的概念错了? TIA的帮助.

最佳答案 您正确理解了稳健PCA(RPCA)的概念:稀疏矩阵S包含异常值.

但是,S通常会包含许多观察结果(非零值),您可能不会将其归类为异常.如你所知,过滤掉这些点是个好主意.

应用固定阈值来识别相关异常值可能适用于一个数据集.但是,如果底层分布的均值和方差发生变化,则在许多数据集上使用阈值可能会产生较差的结果.

理想情况下,您计算异常分数,然后根据该分数对异常值进行分类.一种简单的方法(通常用于异常值检测)是查看您的数据点(潜在异常值)是否位于假定分布的尾部.

例如,如果您假设您的分布是高斯分布,则可以计算Z分数(z):

z =(x-μ)/σ,

其中μ是平均值,σ是标准偏差.

然后,您可以将阈值应用于计算的Z分数,以便识别异常值.例如:如果对于给定的观察z> 3,数据点是异常值.这意味着您的观察值与平均值相差超过3个标准偏差,并且位于高斯分布的0.1%尾部.与使用非标准化值的阈值相比,这种方法对数据的变化更为鲁棒.此外,调整对异常值进行分类的z值比为每个数据集查找实际比例值(在您的情况下为883.89052372)更简单.

python异常值检测_python – 使用RPCA的异常值相关推荐

  1. python数据异常值处理_Python数据清洗(三):异常值识别与处理

    作者 | 刘顺祥 来源 | 数据分析1480 原文 |Python数据清洗--缺失值识别与处理 在<Python数据清洗(一):类型转换和冗余数据删除>和<Python数据清洗(二) ...

  2. python 圆形检测_python下用OpenCV的圆形检测

    一.简介: 初次使用python的你一定感受到了python的便捷.作为高级编程语言只需调用类库即可. 对于圆形物体识别问题,opencv提供了大量方法. (代码文末附上) 二.检测步骤: 2.1读取 ...

  3. python表面瑕疵检测_python – OpenCV检测水果上的划痕

    对于 Python中的一个小实验我正在做我想要找到水果的小划痕.划痕非常小,很难被人眼检测到. 我正在使用高分辨率相机进行该实验. 这是我想要检测的缺陷: 原始图片: 这是我的结果,只有很少的代码行: ...

  4. python 人体检测_Python人体肤色检测

    Python人体肤色检测 概述 本文中的人体肤色检测功能采用 OpenCV 库实现, OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux.Windows.Andro ...

  5. python canny检测_python Canny边缘检测算法的实现

    图像边缘信息主要集中在高频段,通常说图像锐化或检测边缘,实质就是高频滤波.我们知道微分运算是求信号的变化率,具有加强高频分量的作用.在空域运算中来说,对图像的锐化就是计算微分.对于数字图像的离散信号, ...

  6. python图像检测_Python+Opencv识别两张相似图片

    在网上看到python做图像识别的相关文章后,真心感觉python的功能实在太强大,因此将这些文章总结一下,建立一下自己的知识体系. 当然了,图像识别这个话题作为计算机科学的一个分支,不可能就在本文简 ...

  7. python裂缝检测_python 裂缝识别 这是一个使用Python和PyQt5开发的一个计算机视觉辅助裂缝标注工具 - 下载 - 搜珍网...

    压缩包 : dea0e4f4dad3f0ccc7ded70e22891ce5.zip 列表 crack-label-tool-master/ crack-label-tool-master/.giti ...

  8. Python实现基于3σ原则的异常值检测

    异常值是指样本中的个别值明显偏离其余的观测值.异常值的存在会对数据分析.建模产生干扰,因此需要对数据集进行异常值检测并进行异常值删除或修正,以便后续更好地进行数据分析和挖掘.对于异常值检测,有描述性统 ...

  9. 异常值检测常用算法及案例

    异常值检测常用方法 对历史数据进行异常值检测,对突发情况或者异常情况进行识别,避免因为异常值导致预测性能降低,并对其进行调整便于后续预测. 一.3-sigma原则异常值检测 3-Sigma原则又称为拉 ...

最新文章

  1. C#技术内幕 学习笔记
  2. Winform下的地图开发控件(GMap.NET)使用心得之二
  3. 春节回来了,你收获了什么?
  4. ubuntu 启动 重启 停止 apache
  5. 一位java大牛10年资料总结
  6. vSphere 4系列之六:Standard vSwitch
  7. [NewLife.XCode]脏数据
  8. linux httpd 内存,apache占用内存过高耗完内存?
  9. 透过NpetShop 看Web项目开发中的分工合作
  10. Freemarker中通过request获得contextPath
  11. Golang 并发编程之同步原语
  12. 操作系统的 (program)loader(程序加载器)
  13. 廖雪峰Python 2.X 教程
  14. 苹果计算机远程控制软件,向日葵远程控制软件iPhone手机远程控制电脑
  15. 电脑和开发板如何串口连接
  16. Angular - FormGroup 踩坑合辑之:setValue,patchValue,reset
  17. android 密码输入框 星号,input密码框输入后设置显示为星号或其他样式
  18. STM32系列(HAL库)——F103C8T6点亮1.44寸TFT-LCD彩屏
  19. 安卓局域网外实现木马监听
  20. 利用日照时数计算太阳辐射

热门文章

  1. Window捕获消息机制-C#
  2. Access数据库创建字段类型无效问题
  3. 基础拾遗------泛型详解
  4. 华为人工智能计算机平台,华为发布首个人工智能移动计算平台
  5. linux namespace 工具,Linux Namespace : 简介
  6. matlab 判断一个数组中有没有重复的元素
  7. burpsuite下载使用详讲
  8. android模拟器电量,Android 模拟器AVD,设置电池状态
  9. lis25ba_LIS25BA - MEMS数字输出运动传感器:低噪声,高带宽,3轴加速度计,带TDM接口 - STMicroelectronics...
  10. QLineEdit的readonly、disable属性的区别