NXP产品应用

_rf 断言函数-RF

小编 2025-04-02 NXP产品应用 23 0

断言函数-RF

测试用例的目的是要验证一些操作否符合我们的预期结果,所以在测试用例中,断言函数是必不可少的一项。我们做的每一步操作都会有预期的结果,为了保证操作得到的结果符合预期,我们需要在测试用例中添加断言,来保证实际结果和预期结果一致。那么先让我们来认识一些常用的断言函数:

1、should be equal 与should not be equal

我们在第一行设置一个变量,并赋值1,第二行,意思是${var}应该等于1

运行:

会发现只是打印出了变量的值,一般来说,断言函数只起断言作用,符合断言没有任何操作,不符合则报错:

现在我们把${var}值改为2,断言不变,再运行:

我们发现用例报红,并且在这里给出了断言出错。

should not be equal恰好相反,用来断言不相等。

2、should be empty与should not be empty

断言为空或不为空。

如上图,create list是一个创建列表的函数,我们没有为列表赋值,则${var}是一个空列表,运行:

可以看到打印出了预期的空列表,并且用例成功运行。

3、should contain、should not contain与should contain x times

这里先说明一下,列表变量也可以用@{var}表示,但${var}既可以表示单个变量,也可以表示列表、字典,用起来比较方便~~~ 我们创建了一个列表,内涵1、2、3值,断言列表中含有1:

运行通过,打印出了变量值,可以看到正如我们预期,${var}是一个列表,这里发现列表里每一个值前面都有一个u,这是因为RF默认是Unicode编码,这里的u对你的用例或断言都没有影响的。

should not contain不必解释。我们来说一下should contain x times,根据英文翻译即可,就是应该含有某值x次:

这里的断言意思是变量${var}中应该包含2个1,运行:

正如我们预期。

以上列出的是我在工作中最长用的断言,除此之外还有很多,他们的意思其实可以根据英文翻译即可,毕竟老外也是按着他们的目的写出来的:

Should Be Equal As Numbers与Should not Be Equal As NumbersShould End With与Should not End WithShould start With与Should not start Withshould match与should not match

以上是大家在工作中可能遇到的,如果用得上用法可以F5查询即可。

有时候我们的断言函数不能满足我们的需求,这时就需要我们用Python自己写脚本,实现相应的逻辑,然后导入系统关键字即可。

如果对接口、性能、自动化测试、面试经验交流等感兴趣的,可以关注我的头条号,我会不定期的发放免费的资料,这些资料都是从各个技术网站搜集、整理出来的,如果你有好的学习资料可以私聊发我,我会注明出处之后分享给大家。欢迎分享,欢迎评论,欢迎转发。需要资料的同学可以关注小编+转发文章+私信【测试资料】

随机森林-RF

1、概念

随机森林 (Random forest,RF)就是通过集成学习的思想将多棵树集成的一种算法,它的基本单元是决策树。

在机器学习中,随机森林是一个包含多个决策树的分类器, 并且其输出的类别是由个别树输出的类别的众数而定。

其实从直观角度来解释,每棵决策树都是一个分类器(假设现在针对的是分类问题),那么对于一个输入样本,N棵树会有N个分类结果。而随机森林集成了所有的分类投票结果,将投票次数最多的类别指定为最终的输出,这就是一种最简单的 Bagging 思想。

2、原理

1)如果训练集大小为N,对于每棵树而言,随机且有放回地从训练集中的抽取N个训练样本(这种采样方式称为bootstrap sample方法),作为该树的训练集。从这里我们可以知道:每棵树的训练集都是不同的,而且里面包含重复的训练样本;

  2)如果每个样本的特征维度为M,指定一个常数m<<M,随机地从M个特征中选取m个特征子集,每次树进行分裂时,从这m个特征中选择最优的;

  3)每棵树都尽最大程度的生长,并且没有剪枝过程。

 减小特征选择个数m,树的相关性和分类能力也会相应的降低;增大m,两者也会随之增大。所以关键问题是如何选择最优的m(或者是范围),这也是随机森林唯一的一个参数。

3、优缺点

随机森林的优点有:

1)表现性能好,与其他算法相比有着很大优势。

2)随机森林能处理很高维度的数据(也就是很多特征的数据),并且不用做特征选择。

3)在训练完之后,随机森林能给出哪些特征比较重要。

4)训练速度快,容易做成并行化方法(训练时,树与树之间是相互独立的)。

5)在训练过程中,能够检测到feature之间的影响。

6)对于不平衡数据集来说,随机森林可以平衡误差。当存在分类不平衡的情况时,随机森林能提供平衡数据集误差的有效方法。

7)如果有很大一部分的特征遗失,用RF算法仍然可以维持准确度。

8)随机森林算法有很强的抗干扰能力(具体体现在6,7点)。所以当数据存在大量的数据缺失,用RF也是不错的。

9)随机森林抗过拟合能力比较强(虽然理论上说随机森林不会产生过拟合现象,但是在现实中噪声是不能忽略的,增加树虽然能够减小过拟合,但没有办法完全消除过拟合,无论怎么增加树都不行,再说树的数目也不可能无限增加的。)

10)随机森林能够解决分类与回归两种类型的问题,并在这两方面都有相当好的估计表现。(虽然RF能做回归问题,但通常都用RF来解决分类问题)。

11)在创建随机森林时候,对generlization error(泛化误差)使用的是无偏估计模型,泛化能力强。

随机森林的缺点有:

1)随机森林在解决回归问题时,并没有像它在分类中表现的那么好,这是因为它并不能给出一个连续的输出。当进行回归时,随机森林不能够做出超越训练集数据范围的预测,这可能导致在某些特定噪声的数据进行建模时出现过度拟合。(PS:随机森林已经被证明在某些噪音较大的分类或者回归问题上回过拟合)。

2)对于许多统计建模者来说,随机森林给人的感觉就像一个黑盒子,你无法控制模型内部的运行。只能在不同的参数和随机种子之间进行尝试。

3)可能有很多相似的决策树,掩盖了真实的结果。

4)对于小数据或者低维数据(特征较少的数据),可能不能产生很好的分类。(处理高维数据,处理特征遗失数据,处理不平衡数据是随机森林的长处)。

5)执行数据虽然比boosting等快(随机森林属于bagging),但比单只决策树慢多了。

4、特征选择

RF计算特征重要度采用的是基尼指数(Gini index)、频率选择、Gini重要度、排序重要度都可以用Giniindex计算。

高斯混合模型采用的是期望最大化(EM)算法

5、常见疑惑

为什么要随机抽样训练集?

  如果不进行随机抽样,每棵树的训练集都一样,那么最终训练出的树分类结果也是完全一样的,这样的话完全没有bagging的必要;

  为什么要有放回地抽样?

  如果不是有放回的抽样,那么每棵树的训练样本都是不同的,都是没有交集的,这样每棵树都是"有偏的",都是绝对"片面的",也就是说每棵树训练出来都是有很大的差异的;而随机森林最后分类取决于多棵树(弱分类器)的投票表决,这种表决应该是"求同",因此使用完全不同的训练集来训练每棵树这样对最终分类结果是没有帮助的,这样无异于是"盲人摸象"。

随机森林随机性指的是什么?

1)随机森林的随机性体现在每颗树的训练样本是随机的;

2)树中每个节点的分裂属性集合也是随机选择确定的。

有了这两个个随机的保证,随机森林就不会产生过拟合的现象了。

  随机森林分类效果(错误率)与两个因素有关:

1)森林中任意两棵树的相关性:相关性越大,错误率越大;

2)森林中每棵树的分类能力:每棵树的分类能力越强,整个森林的错误率越低。

随机森林模型的泛化能力为什么好?

1) 产生决策树的样本是随机生成,从原样本集X中有放回地随机抽取K个训练样本,每次大概37%的样本未被抽中;

2) 构建决策树的特征值是随机选取,在对决策树每个节点进行分裂时,从全部属性中,等概率随机抽取一个属性子集,再从这个子集中选择一个最优属性来分裂节点;

3) 树产生过程中裂变的时候是选择N个最佳方向中的随机一个裂变的,裂变条件的随机性。

补充:

泛化能力(generalization ability)是指一个机器学习算法对于没有见过的样本的识别能力。我们也叫做举一反三的能力,或者叫做学以致用的能力

代码实现:https://blog.csdn.net/yingfengfeixiang/article/details/79365148

相关问答

建筑施工图纸里面的RF是什么意思图示标在屋顶标高符号处_作业帮

[最佳回答]什么是RF?RF是RadioFrequency的缩写,即射频.在电子学理论中,电流流过导体,导体周围会形成磁场;交变电流通过导体,导体周围会形成交变的电磁场,称为...

请问大金空调故障码RF是什么故障?_中央空调_舒适100网触屏版

[回答]附上大金空调故障代码一览表,请查阅故障没有RF,你指的应该是AF,一般大金空调出现AF错误由以下原因造成:当室内机的排水水位超限或者加湿系统故障时...

薄层色谱法中Rf值指的是什么?_作业帮

[最佳回答]即在大小适当的玻璃板上,均匀涂上吸附剂,厚度在一毫米以内,然后在距底边1.5厘米处点上样品溶液,形成一个小点,称为“原点”.再将薄层板置...先制备...

谁知道rf射频读卡器是什么?_其他问答_系统粉

RF读卡器是射频标签读写设备,是一种非接触式读卡器,通过电磁感应获得芯片需要的电源,并向主设备发射编码。RF读卡器是射频标签读写设备,是一种非接...

rf射频除皱是怎么回事啊?_千问健康

如果已经怀孕了,去做RF射频做了肚子局部减肥影响大吗谢谢.之前对这些很不了解,麻烦您解释的清楚一点点,谢谢请问rf射频除皱是怎么回事啊?

麻烦问ASO、ESR、RF代表啥,若都偏高得了什么_千问健康

麻烦问ASO、ESR、RF代表啥,若都偏高得了什么病

建筑施工图纸里头的RF是什么意思-ZOL问答

如果是具体软件术语,RF可能是指RevitFamily(Revit族),是BIM软件中的一个组件,用于创建和管理建筑模型中的各种构件也可能是ReinforcedConcrete,即钢筋混凝土.....

电视机后面的rf是什么接口-ZOL问答

5条回答:【推荐答案】RF接口是天线接口,也是老式的有线电视必备的接口,也是非常古董的一种标准。它在我国的发展甚至可以追溯到上世纪80年代。RF接口是目前家庭...

无风险收益率Rf为什么是系统风险_快账

这里的风险收益率是指系统风险收益率资本定价模型:R=Rf+B(Rm-Rf),这里必要收益率=无风险收益率+市场收益与无风险收益率之差的贝塔系数倍。这里的...

解得:Rf=5%,Rm=15%请问老师Rf、Rm是怎样求出来_会计学堂

[回答]是不太会解方程嘛?

猜你喜欢