首页 > 其他分享 >如何解释鲁棒性?

如何解释鲁棒性?

时间:2024-03-13 10:46:07浏览次数:28  
标签:解释 稳定 模型 系统 如何 鲁棒 外卖 鲁棒性

参考知乎回答:https://www.zhihu.com/question/304499849/answers/updated
鲁棒性,英文为Robustness(承受故障和干扰的能力),是许多复杂系统(包括复杂网络)的关键属性。复杂网络的鲁棒性研究对许多领域都非常重要。本文着重介绍了鲁棒性的基本定义、命名起源、分类区别、提升方法和具体应用,供大家学习参考。

鲁棒性的基本定义

鲁棒性(英语:Robustness),鲁棒是Robust的音译,“robust”有四个含义:

  1. “强健的;强壮的”

  2. “结实的;耐用的;坚固的”

  3. “(体制或机构)强劲的;富有活力的”

  4. “坚定的;信心十足的”。

百度百科对鲁棒性的定义是:鲁棒是Robust的音译,也就是健壮和强壮的意思。它也是在异常和危险情况下系统生存的能力。比如说,计算机软件在输入错误、磁盘故障、网络过载或有意攻击情况下,能否不死机、不崩溃,就是该软件的鲁棒性。所谓“鲁棒性”,也是指控制系统在一定(结构,大小)的参数摄动下,维持其它某些性能的特性。

鲁棒性的起源

据考察,鲁棒一词最早起源于1979年,南开大学涂奉生、齐寅峰教授在《信息与控制》上,分别发表题为《鲁棒(Robust)调节器》和《鲁棒调节器的一种设计》3的两篇文章,文章中首次将robust翻译为“鲁棒性”。有学者认为,将“robust”译为“鲁棒”是“音义兼顾”的绝好译法。因为“robust调节器”具有“使系统保持稳定且具有渐进调节特性的能力”,而“‘鲁’者粗莽也,‘棒’者强之同义也。”所以“‘鲁棒’一词较好地表明了此类调节器的特征,且较‘粗壮’,‘强壮’等词生动。”鲁棒性一词因其形神兼备的译法逐渐得到学术界的认可,渐渐沿用下来。

鲁棒性与稳定性的区别

鲁棒性和稳定性都是反应控制系统抗干扰能力的参数,但鲁棒性不等同于稳定性。

定义上

“鲁棒性”,是指控制系统在一定(结构,大小)的参数摄动下,维持其它某些性能的特性。

“稳定性”,是指控制系统在使它偏离平衡状态的扰动作用消失后,返回原来平衡状态的能力。

受到的扰动

稳定性是指系统受到瞬时扰动,扰动消失后系统回到原来状态的能力,而鲁棒性是指系统受到持续扰动能保持原来状态的能力。

稳定的概念

稳定性分为一致稳定和渐进稳定,就是说可以慢慢的稳定也可以螺旋形绕着稳定点稳定:

鲁棒性,是指你可以设定一个鲁棒界(可以 2 范数也可以是无穷范数),只要系统在这个界内就是稳定的。

以送外卖为例做一个形象的比喻:

外卖小哥在送餐时遇到了极端天气(如暴雨暴雪),当这个极端天气结束后,外卖小哥仍然可以以原先的速度送餐,我们可以说外卖小哥是稳定的;但如果在遭遇极端天气的过程中,外卖小哥冒着雨雪将外卖按时送到顾客手中,这种情况就称为鲁棒性好。

稳定性是指系统不随外界而变化的能力,鲁棒性是指当外界变化时,系统自适应的能力。

  1. 鲁棒性的分类

在实际问题中,系统特性或参数的摄动常常是不可避免的,产生摄动的原因主要有两个方面:一个是由于测量的不精确使特性或参数的实际值会偏离它的设计值(标称值),另一个是系统运行过程中受环境因素的影响而引起特性或参数的缓慢漂移。

控制系统的一个鲁棒性是指控制系统在某种类型的扰动作用下,包括自身模型的扰动下,系统某个性能指标保持不变的能力。对于实际工程系统,人们最关心的问题是一个控制系统当其模型参数发生大幅度变化或其结构发生变化时能否仍保持渐近稳定,这叫稳定鲁棒性。进而还要求在模型扰动下系统的品质指标仍然保持在某个许可范围内,这称为品质鲁棒性。

设计一个控制器,如果该控制器对对象集合中的每个对象都能满足给定的性能指标,则称该控制器对此性能指标(特性)是鲁棒的,两个重要的鲁棒概念是:

稳定鲁棒性:一个控制器如果对集合P中的每一个对象都能保证系统稳定则是鲁棒稳定的。

品质鲁棒性:一个控制器如果对集合P中的每一个对象都能保证系统稳定和一种特定品质则认为是品质鲁棒的。

如何提高鲁棒性

AI模型的鲁棒可以理解为模型对数据变化的容忍度。假设数据出现较小偏差,只对模型输出产生较小的影响,则称模型是鲁棒的。 Huber从稳健统计的角度给出了鲁棒性的3个要求:

1.模型具有较高的精度或有效性。

2.对于模型假设出现的较小偏差(noise),只能对算法性能产生较小的影响。

3.对于模型假设出现的较大偏差(outlier),不能对算法性能产生“灾难性”的影响。

提升鲁棒性的方法:

1)从数据上提升性能

收集更多的数据、产生更多的数据、对数据做缩放、对数据做变换、特征选择、重新定义问题

2)从算法上提升性能

算法的筛选、从文献中学习、重采样的方法

3)从算法调优上提升性能

注意力机制(给与每个像素权重,来衡量像素间的相关性SPNet)、模型可诊断性、权重的初始化、学习率、激活函数、网络结构、batch和epoch、正则项、优化目标、提早结束训练

4)用融合方法提升效果

模型融合、视角融合、stacking、多尺度融合(使用不同尺度的卷积核,增加模型的感受野,典型代表金字塔Deeplab系列)

5)增加模型宽度

将通道分成多组,每组单独进行卷积,然后再将通道合成可以减少模型的参数,提高模型准确率,增加鲁棒性(ResNext)。

鲁棒性的应用

在实际中,鲁棒性的应用非常广泛,由于测量的不精确和运行中受环境因素的影响,不可避免地会引起系统特性或参数缓慢而不规则的漂移,所以在应用复杂性范式对各种类型控制系统进行设计时,都要考虑鲁棒性问题。如组织行为管理、制定战略规划、提供决策方案,生态系统的恢复性,动态平衡、遗传网络、遗传变异的阻尼,生物复杂性的发展定向进化进化的自动选择,免疫系统里的分布式反馈。神经系统,计算机网络系统,经济社会系统的经济博弈、社会制度、政治协议、体制机制等等。

标签:解释,稳定,模型,系统,如何,鲁棒,外卖,鲁棒性
From: https://www.cnblogs.com/hazy-star/p/18070093

相关文章

  • 在Java中如何通过优化代码来节省内存
    Java程序的一个常见问题是高内存使用率,这会导致性能问题甚至崩溃。因此,需要使用内存节省技术来优化Java代码并减少内存使用非常重要。选择正确的数据类型:使用适当大小的数据类型可以避免不必要的内存浪费。例如,如果你知道一个整数的取值范围在-128到127之间,那么使用byte类......
  • 如何查看docker 项目的配置文件
    目录如何查看Docker项目的配置文件方法一:通过Docker命令查看配置文件方法二:通过数据卷挂载方式查看配置文件方法三:使用Docker可视化工具查看配置文件示例场景方法一:通过Docker命令查看配置文件方法二:通过数据卷挂载方式查看配置文件方法三:使用Docker可视化工具查看配......
  • 如何在 Linux 中禁用 IPv6?
    IPv6(InternetProtocolversion6)是互联网上的下一代网络协议,它的部署旨在解决IPv4地址枯竭的问题,并提供更多的地址空间以支持未来的互联网增长。然而,在某些情况下,禁用IPv6可能是必要的,例如在特定网络环境下IPv6不可用或不安全时。本文将介绍在Linux系统中如何禁用IPv6的方......
  • (一)Web功能测试下的安全测试如何进行?
        想到安全测试很多功能测试人员都很难入手,以为都是专业的安全测试人员去做。比如经常碰到的任务:某某某测试下系统有哪些安全问题,而对于经历过长达五六年的web功能、性能、接口测试人员来说,面对该任务就一头雾水。     万事开头难,难在第一步如何走?没有知......
  • 阿里二面:如何定位&避免死锁?连着两个面试问到了!
    在面试过程中,死锁是必问的知识点,当然死锁也是我们日常开发中也会遇到的一个问题,同时一些业务场景例如库存扣减,银行转账等都需要去考虑如何避免死锁,一旦线上发生了死锁,那可能年终不保。。。。。下面我们就来聊一聊死锁如何定位,以及如何避免。什么是死锁死锁(Deadlock)是指在操作系......
  • 交换机的二、三、四层交换技术,教科书式的工作原理解释
    1交换机交换机的工作原理交换机根据收到数据帧中的源MAC地址建立该地址同交换机端口的映射,并将其写入MAC地址表中。交换机将数据帧中的目的MAC地址同已建立的MAC地址表进行比较,以决定由哪个端口进行转发。如数据帧中的目的MAC地址不在MAC地址表中,则向所有端口转发。这一过......
  • 如何解决跨网文件交换行为分散难管控等问题?
    跨网文件交换是指在不同的网络环境之间,如内网和外网,安全地传输文件的过程。这通常涉及到网络隔离的场景,比如政府机构、金融机构、大型企业等,它们为了安全和保密的需要,会通过物理隔离、逻辑隔离等方式,建立多个隔离的网络环境。在这些环境中,实现跨网文件交换需要确保数据的安全性和......
  • 在Linux中,访问一个站点5xx了,如何定位问题?
    当访问一个托管在Linux服务器上的站点时,如果收到5xx系列的HTTP状态码(如500InternalServerError、502BadGateway、503ServiceUnavailable等),这意味着服务器在处理请求时遇到了问题。定位这类问题通常需要遵循以下步骤:查看服务器错误日志对于Web服务器,如Apache或Nginx,首......
  • 在Linux中,如何查看磁盘详细使用情况?
    在Linux系统中,查看磁盘详细使用情况主要有以下几个命令和工具:1.df命令df(diskfree)命令用于查看文件系统的总空间、已使用空间、剩余空间以及使用率等信息。以下是一些基本用法:#显示所有文件系统及其磁盘使用情况,以人类可读的格式(KB、MB、GB等)df-h#显示指定文件系统......
  • 在Linux中,如何理解Tcp/ip协议三次握手?
    在Linux(以及其他支持TCP/IP协议的操作系统)中,TCP(TransmissionControlProtocol,传输控制协议)为了建立一个可靠的数据传输连接,采用了三次握手(Three-wayHandshake)的过程来初始化连接。以下是TCP三次握手的详细步骤和解释:第一次握手(SYN):客户端(Client)想要与服务器(Server)建立连接时......