正确性分析;有效性分析;有用性分析;高效性分析
⑵ 异常点检测方法
一、基本概念
异常对象被称作离群点。异常检测也称偏差检测和例外挖掘。
常见的异常成因:数据来源于不同的类(异常对象来自于一个与大多数数据对象源(类)不同的源(类)的思想),自然变异,以及数据测量或收集误差。
异常检测的方法:
(1)基于模型的技术:首先建立一个数据模型,异常是那些同模型不能完美拟合的对象;如果模型是簇的集合,则异常是不显着属于任何簇的对象;在使用回归模型时,异常是相对远离预测值的对象。
(2)基于邻近度的技术:通常可以在对象之间定义邻近性度量,异常对象是那些远离其他对象的对象。
(3)基于密度的技术:仅当一个点的局部密度显着低于它的大部分近邻时才将其分类为离群点。
二、异常点检测的方法
1、统计方法检测离群点
统计学方法是基于模型的方法,即为数据创建一个模型,并且根据对象拟合模型的情况来评估它们。大部分用于离群点检测的统计学方法都是构建一个概率分布模型,并考虑对象有多大可能符合该模型。离群点的概率定义:离群点是一个对象,关于数据的概率分布模型,它具有低概率。这种情况的前提是必须知道数据集服从什么分布,如果估计错误就造成了重尾分布。异常检测的混合模型方法:对于异常检测,数据用两个分布的混合模型建模,一个分布为普通数据,而另一个为离群点。
聚类和异常检测目标都是估计分布的参数,以最大化数据的总似然(概率)。聚类时,使用EM算法估计每个概率分布的参数。然而,这里提供的异常检测技术使用一种更简单的方法。初始时将所有对象放入普通对象集,而异常对象集为空。然后,用一个迭代过程将对象从普通集转移到异常集,只要该转移能提高数据的总似然(其实等价于把在正常对象的分布下具有低概率的对象分类为离群点)。(假设异常对象属于均匀分布)。异常对象由这样一些对象组成,这些对象在均匀分布下比在正常分布下具有显着较高的概率。
优缺点:(1)有坚实的统计学理论基础,当存在充分的数据和所用的检验类型的知识时,这些检验可能非常有效;(2)对于多元数据,可用的选择少一些,并且对于高维数据,这些检测可能性很差。
2、基于邻近度的离群点检测。
一个对象是异常的,如果它远离大部分点。这种方法比统计学方法更一般、更容易使用,因为确定数据集的有意义的邻近性度量比确定它的统计分布更容易。一个对象的离群点得分由到它的k-最近邻的距离给定。离群点得分对k的取值高度敏感。如果k太小(例如1),则少量的邻近离群点可能导致较低的离群点得分;如果k太大,则点数少于k的簇中所有的对象可能都成了离群点。为了使该方案对于k的选取更具有鲁棒性,可以使用k个最近邻的平均距离。
优缺点:(1)简单;(2)缺点:基于邻近度的方法需要O(m^2)时间,大数据集不适用;(3)该方法对参数的选择也是敏感的;(4)不能处理具有不同密度区域的数据集,因为它使用全局阈值,不能考虑这种密度的变化。
3、基于密度的离群点检测。
从基于密度的观点来说,离群点是在低密度区域中的对象。一个对象的离群点得分是该对象周围密度的逆。基于密度的离群点检测与基于邻近度的离群点检测密切相关,因为密度通常用邻近度定义。一种常用的定义密度的方法是,定义密度为到k个最近邻的平均距离的倒数。如果该距离小,则密度高,反之亦然。另一种密度定义是使用DBSCAN聚类算法使用的密度定义,即一个对象周围的密度等于该对象指定距离d内对象的个数。需要小心的选择d,如果d太小,则许多正常点可能具有低密度,从而具有高离群点得分。如果d太大,则许多离群点可能具有与正常点类似的密度(和离群点得分)。使用任何密度定义检测离群点具有与基于邻近度的离群点方案类似的特点和局限性。特殊地,当数据包含不同密度的区域时,它们不能正确的识别离群点。
为了正确的识别这种数据集中的离群点,我们需要与对象邻域相关的密度概念,也就是定义相对密度。常见的有两种方法:(1)使用基于SNN密度的聚类算法使用的方法;(2)用点x的密度与它的最近邻y的平均密度之比作为相对密度。
使用相对密度的离群点检测(局部离群点要素LOF技术):首先,对于指定的近邻个数(k),基于对象的最近邻计算对象的密度density(x,k) ,由此计算每个对象的离群点得分;然后,计算点的邻近平均密度,并使用它们计算点的平均相对密度。这个量指示x是否在比它的近邻更稠密或更稀疏的邻域内,并取作x的离群点得分(这个是建立在上面的离群点得分基础上的)。
优缺点:
(1)给出了对象是离群点的定量度量,并且即使数据具有不同的区域也能够很好的处理;
(2)与基于距离的方法一样,这些方法必然具有O(m2)的时间复杂度。对于低维数据使用特定的数据结构可以达到O(mlogm);
(3)参数选择是困难的。虽然LOF算法通过观察不同的k值,然后取得最大离群点得分来处理该问题,但是,仍然需要选择这些值的上下界。
4、基于聚类的技术
一种利用聚类检测离群点的方法是丢弃远离其他簇的小簇。这个方法可以和其他任何聚类技术一起使用,但是需要最小簇大小和小簇与其他簇之间距离的阈值。这种方案对簇个数的选择高度敏感。使用这个方案很难将离群点得分附加到对象上。一种更系统的方法,首先聚类所有对象,然后评估对象属于簇的程度(离群点得分)(基于原型的聚类可用离中心点的距离来评估,对具有目标函数的聚类技术该得分反映删除对象后目标函数的改进(这个可能是计算密集的))。基于聚类的离群点:一个对象是基于聚类的离群点,如果该对象不强属于任何簇。离群点对初始聚类的影响:如果通过聚类检测离群点,则由于离群点影响聚类,存在一个问题:结构是否有效。为了处理该问题,可以使用如下方法:对象聚类,删除离群点,对象再次聚类(这个不能保证产生最优结果)。还有一种更复杂的方法:取一组不能很好的拟合任何簇的特殊对象,这组对象代表潜在的离群点。随着聚类过程的进展,簇在变化。不再强属于任何簇的对象被添加到潜在的离群点集合;而当前在该集合中的对象被测试,如果它现在强属于一个簇,就可以将它从潜在的离群点集合中移除。聚类过程结束时还留在该集合中的点被分类为离群点(这种方法也不能保证产生最优解,甚至不比前面的简单算法好,在使用相对距离计算离群点得分时,这个问题特别严重)。
对象是否被认为是离群点可能依赖于簇的个数(如k很大时的噪声簇)。该问题也没有简单的答案。一种策略是对于不同的簇个数重复该分析。另一种方法是找出大量小簇,其想法是(1)较小的簇倾向于更加凝聚,(2)如果存在大量小簇时一个对象是离群点,则它多半是一个真正的离群点。不利的一面是一组离群点可能形成小簇而逃避检测。
优缺点:
(1)基于线性和接近线性复杂度(k均值)的聚类技术来发现离群点可能是高度有效的;
(2)簇的定义通常是离群点的补,因此可能同时发现簇和离群点;
(3) 产生的离群点集和它们的得分可能非常依赖所用的簇的个数和数据中离群点的存在性;
(4)聚类算法产生的簇的质量对该算法产生的离群点的质量影响非常大。
新颖性和离群值检测
离群值检测:训练数据包含离群值,即与其他观测值相距甚远的观测值。离群检测估计器会尝试拟合训练数据最集中的区域,忽略异常观察。
新颖性检测:训练数据不受异常值的污染,有兴趣检测新观察值是否是异常值。该情况下离群值也称为新颖性。
离群值检测和新颖性检测均用于异常检测,离群值检测称为无监督异常检测,新颖性检测称为半监督异常检测。离群值检测的情况下,离群值/异常不能形成密集的群集,可假设离群值/异常位于低密度区域;新颖性检测的情况下,只要新颖性/异常位于训练数据的低密度区域,就可以形成密集的簇。
通过对玩具数据集进行异常检测比较异常检测算法
数据集中包含一种或两种模式(高密度区域),以说明算法处理多模式数据的能力。
对于每个数据集,将生成15%的样本作为随机均匀噪声。该比例是OneClassSVM的nu参数和其他异常值检测算法的污染参数提供的值。离群值之间的决策边界以黑色显示,但是LOF除外,因为当采用LOF用于离群值检测时,没有适用于新数据的预测方法。
OneClassSVM对异常值敏感,对异常值检测执行的不好。当训练集不受异常值污染时,此估计器最适合新颖性检测。即不适用在高维中进行离群值检测或者不对基础数据的分布进行任何假设,OneClassSVM在这些情况下可能会根据其超参数给出有用的结果。
covariance EllipticEnvelope(协方差椭圆密度)假定数据是高斯分布并学习一个椭圆。在数据不是单峰时,会退化。此估计器对异常值具有鲁棒性。
IsolationFrorest和LocalOutlierFactor针对多模式数据集效果显着。LOF针对第三种数据集,明显优于其它三种估计器,该数据集中两种模式的密度不同。LOF的局部方面,即它仅将一个样本的异常评分与其邻居评分作比较,从何体现了该方法的优势。
针对最后一个均匀分布在超立方体中的数据集,很难说一个样本比另一个样本异常得多。除了OneClassSVM有些过拟合外,所有估计器都针对该情况提出不错的解决方案。针对这种情况,应该仔细观察样本的异常分数,性能好的估算器应该为所有样本分配相似的分数。
使用局部离群因子(LOF)进行离群值检测
LOF算法是一种无监督的异常检测方法,可计算给定数据点相对于其邻居的局部密度偏差。其中密度远低于其邻居的样本为异常值。
LOF算法的优势在于同时考虑了数据集的局部和全局属性:即使在异常样本具有不同底层密度的数据集中,仍能保持良好性能。问题不在于样本有多孤立,而在于样本相对于周围邻域有多孤立。
通常考虑的邻居数量(1)大于群集必须包含的最小样本数量,以便其他样本可以是相对于该群集的局部离散值;(2)小于可能是局部异常值的最大进距采样数,此类消息通常不可用,采用n_neighbors=20。
具有局部异常值的新颖性检验
LOF是一种无监督的异常检测方法,可计算给定数据点相对于其邻居的局部密度偏差,密度远低于其邻居的样本为异常值。LOF用于新颖性检验时,切勿在训练集上使用预测、决定函数、实例得分,会导致结果错误。只能对新的看不见的数据(不在训练集中)使用这些方法。
通常考虑邻居数量(1)大于群集必须包含的最小样本数,以便其他样本可以是相对于该群集的局部离群值;(2)小于可能是局部异常值的最大进距采样数,此类消息通常不可用,采用n_neighbors=20。
隔离林
在高维数据集中执行异常检测的一种有效方法是使用随机森林,分离的观察通过随机选择一个函数,随机选择所选择的特征的最大值和最小值之间的分割值。递归分区可用树结构表示,隔离样本所需的拆分数量等于从根节点到终止结点的路径长度。随机树的森林中的平均路径长度是对正态性和决策函数的度量。随机分区产生的异常路径明显较短,因此如果随机树森林为特定样本生成的较短路径,则该树代表的值很可能是异常的。
OneClassSVM
无监督的离群值检测,支持高维分布,基于libsvm
不假定数据分布的任何参数形式,可以更好的对数据的复杂形状进行建模,能够捕获真实的数据结构,难点在于调整核函数宽度参数,以便在数据散布矩阵的形状和数据过度拟合的风险间取得折中。
协方差椭圆密度
用于检测高斯分布数据集中的异常值的对象
经验协方差估计(作为非稳健估计)受到观测值异质结构的高度影响;鲁棒协方差估计能够集中于数据分布的主要模式,但是它坚持假设数据是高斯分布,产生了对数据结构的某些估计,在一定程度上是准确的。
HBOS单维效果极佳,但是标准差方法的mask 掩码效应严重。例如 数据通常在100以内,但是有两个异常点,500,1000000。这个算法就不能检出500这个异常点。
对比而言,孤立森林理论上更适合大数据的异常检测,且无掩码效应。孤立森林确定异常时训练只用样本数据。每颗树样本数量默认只有256个,默认只用100颗树。所以理论上25600个样本就能确定海量数据中的异常点了。
Sklearn的 isolation forest 例子默认是读入全量数据再采样。如果配上warm up 选项就能分批放入采样。
异常检测的深度学习研究综述
⑶ 如何对数学模型的可靠性进行检测
数学建模是使用数学模型解决实际问题.
对数学的要求其实不高.
我上大一的时候,连高等数学都没学就去参赛,就能得奖.
可见数学是必需的,但最重要的是文字表达能力
回答者:抉择415 - 童生 一级 3-13 14:48
数学模型
数学模型是对于现实世界的一个特定对象,一个特定目的,根据特有的内在规律,做出一些必要的假设,运用适当的数学工具,得到一个数学结构.
简单地说:就是系统的某种特征的本质的数学表达式(或是用数学术语对部分现实世界的描述),即用数学式子(如函数、图形、代数方程、微分方程、积分方程、差分方程等)来描述(表述、模拟)所研究的客观对象或系统在某一方面的存在规律.
数学建模
数学建模是利用数学方法解决实际问题的一种实践.即通过抽象、简化、假设、引进变量等处理过程后,将实际问题用数学方式表达,建立起数学模型,然后运用先进的数学方法及计算机技术进行求解.
数学建模将各种知识综合应用于解决实际问题中,是培养和提高学生应用所学知识分析问题、解决问题的能力的必备手段之一.
数学建模的一般方法和步骤
建立数学模型的方法和步骤并没有一定的模式,但一个理想的模型应能反映系统的全部重要特征:模型的可靠性和模型的使用性.建模的一般方法:
机理分析:根据对现实对象特性的认识,分析其因果关系,找出反映内部机理的规律,所建立的模型常有明确的物理或现实意义.
测试分析方法:将研究对象视为一个“黑箱”系统,内部机理无法直接寻求,通过测量系统的输入输出数据,并以此为基础运用统计分析方法,按照事先确定的准则在某一类模型中选出一个数据拟合得最好的模型.测试分析方法也叫做系统辩识.
将这两种方法结合起来使用,即用机理分析方法建立模型的结构,用系统测试方法来确定模型的参数,也是常用的建模方法.
在实际过程中用那一种方法建模主要是根据我们对研究对象的了解程度和建模目的来决定.机理分析法建模的具体步骤大致如下:
1、 实际问题通过抽象、简化、假设,确定变量、参数;
2、 建立数学模型并数学、数值地求解、确定参数;
3、 用实际问题的实测数据等来检验该数学模型;
4、 符合实际,交付使用,从而可产生经济、社会效益;不符合实际,重新建模.
数学模型的分类:
1、 按研究方法和对象的数学特征分:初等模型、几何模型、优化模型、微分方程模型、图论模型、逻辑模型、稳定性模型、统计模型等.
2、 按研究对象的实际领域(或所属学科)分:人口模型、交通模型、环境模型、生态模型、生理模型、城镇规划模型、水资源模型、污染模型、经济模型、社会模型等.
数学建模需要丰富的数学知识,涉及到高等数学,离散数学,线性代数,概率统计,复变函数等等 基本的数学知识
同时,还要有广泛的兴趣,较强的逻辑思维能力,以及语言表达能力等等
一般大学进行数学建模式从大二下学期开始,一般在九月份开始竞赛,一般三天时间,三到四人一组,合作完成!
⑷ 模型的检验
在限定的时空范围进行多层次立体模拟具有较大难度。通过勘查工作将各项水文地质因素相互转化为概念模型,再转变为数学模型的过程中,由于各种条件的限制,往往会出现误差。通过降压试验等方法取得水文地质参数受多种因素的影响,亦难以代表较大范围的水文地质特征。识别模型得到的一组参数有可能并不精确代表野外的实际数值,也即指通过识别模型得到的一组参数可能并不精确代表模拟的地热流体系统。模型检验有助于解决该问题。对模型进行调整检验,不断改进、完善模型,使其与实际观测资料相吻合。
由于受地热井长观资料完整性以及连续性限制,本次工作对新近系各热储层所建数值模型的拟合时间系列相对较短,而作为模型的检验期更为有限,只能选择2006年11月至2007年10月一年时间作为新近系各热储层所建数值模型的检验期。
(1)检验方法
模型检验通常是将识别得到的一组参数和模型原封不动地用来模拟另一段时间的野塌激镇外观测数据,外部影响按该时段的实际情况给出,比较模拟值和实测值,两者应在预先设定的容许误差范围内一致。对模型的检验同样采用①对观测井模拟结果与实测热流体水位过程线进行对比,要求两条对比曲线接近并达到较为理想的拟合铅物结果,观测值与计算值间的误差在允许范围内;②热流体模拟水位等值线与实测水位等值线形状相似。
在检验期内,确定馆陶组分别6个长观孔地热流体水位标高动态曲线与模型计算曲线相比较,利用模型计算出检验期内的流场图与实际绘制流场图进行模拟对比(图5-22)。
检验结果与实际误差在团粗允许范围内,说明所建模型基本反映了实际地热系统特征,对热储层的模型检验即告结束。如果检验结果不满足要求。则需要对模型重新进行模拟调参,确定一组新参数带入模型再检验,直到检验结果满足要求。
(2)参数的识别结果
对热流体流场、观测孔的拟合验证、对模型参数的灵敏度分析,以及对实测和计算数据的误差分析、热流体系统的补给量和排泄量的均衡分析等大量分析研究,其目的只有一个——得到稳定可靠能反映实际地热流体系统的数值模型。
综上所述,计算参数分区基本合理,模型识别结束所得水文地质参数(表5-10),基本表征了馆陶组热储层的运动特征,所建数值模型基本符合实际,可以利用所建数值模型进行地热资源评价。
⑸ 用时间序列的知识回答简述如何检验一个模型的有效性
为了得到正确的结论、在进行系统分析、预测和辅助决策时,必须保证模型能够准确地反映实际系统并能在计算机上正确运行.因此,必须对模型的有效性进行评估.模型有效性评估主要包括模型确认和模型验证两部分内容:模型确认考察的是系统模型(所建立的模型)与被仿真系统(研究对象)之间的关系,模型验证考察的则是系统模型与模型计算机实现之间的关系.
对于一个具体的建模项目来说,模型有效性评估贯穿于研究的始终.必须指出,模型实际上是所研究的系统的一种抽象表述形式,要验证一个模型是否百分之百有效是极其困难的,也是没有实际意义的.另外,模型是否有效是相对于研究目的以及用户需求而言的.在某些情况下,模型达到60%的可信度使可满足要求;而在另外一些情况下,模型达到99%都可能是不满足的.
模型有效性的概念出现在20世纪60年代,随着计算机仿真技术在各个学科和工程领域的普遍应用,模型有效性问题日益受到人们的关注. 1967年,美国兰德公司的fishman和Kivtat明确指出,模型有效性研究可划分为两个部分:模型的确认(validation)和验证(verification).这一观点被国际仿真学界普遍采纳.模型确认指通过比较在相同输入条判和运行环境下模型与实际系统输出之间的一致性,评价模型的可信度或可用性.模型验证则是判断模型的计算机实现是否正确.
尽管确认和验证在各文献中的定义不尽相同,但对于二者之间的区别,专家的看法却是基本一致的.简单地说,模型确认强调理论模型与实际系统之间的一致性,模型验证则强调当前模型与计算机程序之间的一致性.在有些文献中也采用工程技术人员容易接受的“校模”和“验模”两个术语来分别代替“确认”和“验证”.模型的确认和验证与建模的关系见图 8.5.
在图 8.5中,“问题实体”指被建模的对象,如系统、观念、政策、现象等.“理论模型”是为达到某种特定的研究目的而对问题实体进行的数学/逻辑描述.“计算机模型”(computerized Model)是理论模型在计算机上的实现.
通过“分析与建模”活动可以建立理论模型.计算机模型的建立需通过“编程及实现”这一步骤来完成.经过仿真“实验”即可得到关于问题实体的结果.
模型确认包括理论模型有效性确认、数据有效性确认和运行有效性确认三部分内容,其中运行有效性确认是模型确认的核心.
图 8.5 确认和验证与建模的关系
1)理论模型有效性确认
理论模型有效性确认是对理论模型中采用的理论依据和假设条件的正确性以及理论模型对问题实体描述的合理性加以证实的过程.理论模型有效性确认包括两项内容:
(1)检验模型的理论依据及假设条件的正确性.它具有两个含义,一是检验理论依据的应用条件是否满足,如线性、正态性、独立性、静态性等;该检验过程可以利用统计方法进行.二是检验各种理论的应用是否正确.
(2)子模型的划分及其与总模型的关系是否合理,即分析模型的结构是否正确,子模型问的数学/逻辑关系是否与问题实体相符.理论模型经确认有效后,才能对其进行试运行.最后根据输出结果评估模型的精度.若理论模型无效,应重复分析、建模及确认的过程.
2)数据有效性确认
数据有效性确认用于保证模型建立、评估、检验和实验所用的数据是充分的和正确的.
在模型开发过程中,数据用于模型的建立、校验和运行.充分、正确、精确的数据是建立模型的基础.数据有效性确认包括对模型中关键变量、关键参数及随机变量的确认,以及对运行有效性确认时所使用的参数和初始值等数据的确认.
3)运行有效性确认
运行有效性确认指就模型开发目的或用途而言,模型在其预期应用范围内的输出行为是否有足够的精度.
运行有效性确认的目的是对模型输出结果的精度进行计算和评估.其前提是实际系统及其可比系统的数据均可获取.通过比较模型和实际系统在相同初始条件下的输出数据,可对模型有效性进行定量分析.与实际系统相类似的系统,确认为有效的解析模型、工程计算模型、以及经过确认的模型都可作为模型的可比系统.
理论模型确认、数据有效性确认及模型验证是运行有效性确认的前提.经运行有效性确认被认为有效的模型即可作为正式模型投入运行,利用它进行实际问题的研究.若模型在运行有效性确认时被确认为无效,其原因可能是理论模型不正确、或计算机模型不正确,也可能是数据无效.具体原因的查明需从分析与建模阶段开始,重复模型的构造过程.若实际系统及其可比系统不存在或完全不可观测,则模型与系统的输出数据无法进行比较.在这种情况下,一般只能通过模型验证和理论模型确认,定性地分析模型的有效性.
理论模型有效性包括:1)表观确认,分析对与模型有关的所有信息进行评估,确定需要附加分析的内容,以提高模型的可信度水平;2)历史分析,对与模型有关的历史信息的评估,以评价模型对预期应用的适宜性.3)预期应用和需求分析,对预期应用的效果进行评估,以确定那些对资源的有效利用起关键作用的需求.4)模型概念和逼真度分析,对模型的算法和子模型进行评估,以辨识那些不适用的假设,并确定子模型的逼真度是否能保证模型的预期应用.5)逻辑追踪分析,通过模型逻辑评估模型中指定实体的行为,并确定这些行为是否都是所期望的.