百科问答小站 logo
百科问答小站 font logo



为什么做机器学习的很少使用假设检验? 第1页

  

user avatar   breaknever 网友的相关建议: 
      

机器(统计)学习中主要涉及了两种假设检验:

  1. 针对特定数据集上的特定模型(如逻辑回归),分析不同变量的显著性
  2. 在多个数据集上对比多个分类器的性能,分析不同模型表现的差异

1. 先讨论第一类检验(特定数据集上变量的显著性)。在社科类文章中的数据分析(如回归)是工具,目的是从数据中归纳结论。而在计算机领域,目的是设计新的模型,而不是分析数据,一般不会专门对实验数据下结论。换句话说:社科类研究中数据分析是工具,而机器学习的目的往往是模型而不是数据本身

因为这个原因,我们发现在社科类文章中往往是“对特定数据集上的一个回归模型的变量做显著性分析,来证明某个变量是否对模型有意义”。比如一个数据集有性别、年龄、收入三个变量,分析这几个变量对于患糖尿病的影响。在这种情况下,做统计检验无可厚非。

当然,这样做也有风险和偶然性。比如我常说的一个例子:Freedman在1989年做过的模拟实验 [1]中发现,即使数据全是由噪音构成,在适当的处理后,也能发现数据中显著的相关性:6个特征显著且对回归所做的F-test的p值远小于0.05,即回归存在统计学意义。更多例子可以看:微调:有哪些相关性不等于因果性的例子?

除此之外,我们也认为广义线性模型的数据挖掘能力有限,对于复杂的非线性数据可能无法很好的拟合。所以社科类文章中的很多结论也不完全正确,但受限于数据,往往这就是当下的最优解。正因为如此,也有不少研究者在呼吁弱化p值的重要性。

而在机器学习中,一个变量是否重要,往往是通过“特征选择”和“特征重要性排序”来体现的。比如大部分决策树模型和集成树模型都可以提供一个变量重要性排序,可以等同视为统计检验。从实际效果上看,往往更好。

但为什么大部分社科类研究必须要用广义线性回归模型呢?主要是为了可解释性,来说明不同变量对最终结果的“贡献”,因此另一个附加价值就是统计检验。而机器学习因为其黑箱性导致了不大适合用于数据分析,也就不存在统计检验。值得注意的,虽然没有统计检验,但受益于机器学习中各种复杂模型的有效性,预测结果往往更准确,而且也可以得到很多有价值的分析结果。但用于学术研究的话,往往人们无法信任纯粹的对比和变量重要性排序,因此社科类中很多研究还是基于各种线性回归。

2. 再讨论第二类情况(对比多个模型在多个数据集上的表现)。其实这是机器学习,尤其是传统机器学习方向的一个趋势,越来越多的论文要求提供统计检验。我最近的一篇论文的审稿意见就有这么一条:“必须做统计检验”。

当然,这个要求有时并不合理,在特定领域也没有必要,原因如下:

  • 需要一定数量的数据集(样本量),一般来说大于10个,甚至15个数据集比较好。但这样显然是不现实的,很多领域(如机器视觉)的数据集非常大。如果是深度学习在多个大数据集上运行的开销过大,大部分情况并不现实。
  • 当数据集已经非常大且具有代表性时,没有必要做统计检验。举个简单的例子,如果有世界上百分之99人的图片,并用其预测剩下百分之1的人性别。那么在99%数据上表现足够好的模型应该就是最好的,不必多此一举。说到底,这个可能是统计学和机器学习的差异,前者更严谨后者更有效,难分优劣。
  • 不可否认,很多人其实是做过统计检验的,因为不显著于是又删掉了。换句话说,回避统计检验一定程度上也造成了灌水现象...

但话说回来,在传统机器学习领域,尤其是大量使用UCI上数据集的研究(如很多无监督学习),其实是可以做统计检验的,因为数据集都不大且数量众多。而在机器学习模型上做统计检验的重要性在2006年就有一篇JMLR论文讨论过[3],结合我的一些经验可以简单归纳为:

首先结论如下,在对比两个算法多个数据集上的表现时:
- 如果样本配对(paired)且符合正态分布,优先使用配对t检测(paired t test)。
- 如果样本不符合正态分布,但符合配对,使用Wilcoxon Signed Ranks test。
- 如果样本既不符合正态分布,也不符合配对,甚至样本量都不一样大,可以尝试Mann Whitney U test。值得注意的是,MW是用来处理独立测量(independent measures)数据,要分情况讨论,后文会深入分析。

在对比多个算法多个数据集上的表现时:
- 如果样本符合ANOVA(repeated measure)的假设(如正态、等方差),优先使用ANOVA。
- 如果样本不符合ANOVA的假设,使用Friedman test配合Nemenyi test做post-hoc。
- 如果样本量不一样,或因为特定原因不能使用Friedman-Nemenyi,可以尝试Kruskal Wallis配合Dunn's test。值得注意的是,这种方法是用来处理独立测量数据,要分情况讨论。

更详细的如何用统计检验对比机器学习模型,请参考:微调:常用的机器学习算法比较?


[1] Freedman, L.S. and Pee, D., 1989. Return to a note on screening regression equations. The American Statistician, 43(4), pp.279-282.

[2] 15 Insane Things That Correlate With Each Other

[3] Demšar, J., 2006. Statistical comparisons of classifiers over multiple data sets. Journal of Machine learning research, 7(Jan), pp.1-30.


user avatar   yoursister123 网友的相关建议: 
      

一大早起来真是笑死我了。

由于老头环空前的热潮,以及B站特有的UP主靠制作视频吸引流量转直播的模式,导致很多有人气但完全没有魂系列经验的主播在播这款游戏。比如某幻、瓶子。

(就是一开始制作视频是主业,直播是兼职,甚至是乐趣兴趣,到直播为主,制作视频反倒成了兼职。这种现象在游戏区特别明显。)

这就很有节目效果了,我看几个有名气的主播,都是重复被虐,平均活不过5分钟。真正是在哪里跌倒就从哪里跌倒。

很多在我们这些老玩家看来常识性的东西,对于他们来说完全不存在的。

盾反这种就不提了(其实我也不会),连二人转、回合制、推图都不懂。在大型地牢里不想打小怪,一个劲往前跑,结果变成开火车;当着怪物的面喝药=白喝;开宝箱被怪物背刺;以为学了法术就是法爷了,结果被几只鸟打得抱头鼠窜。

然后另一边,那些原本有魂系列经验的主播,就吃了刻板印象的亏。觉得自己有技术有实力,也不练级就顺着主线硬钢。就比如一上来的野外精英太阳骑士,要么你死要么我亡,绕路是不可能绕路的。

太阳骑士都还好,毕竟王老菊都能杀。

但没有等级,没有血量,没有伤害,硬钢噩兆。

真当噩兆快慢刀是假的,自己打几次就能盾反了?而且老头环这次砍了盾反在BOSS战中的作用,要反三次(二次)才能触发处决。

结果被虐3000遍,又不好意思去练级,尬在那了。

老头环是不是玩家的盛宴我还不知道(买了游戏,昨天也预下载了,结果今天起来发现那个盘满了……正在重新下载,下载完了又发现,我的电脑只有8G内存……),但肯定是不少主播的灾难、观众的盛宴。

当然,我也知道有些主播直播受罪是搞节目效果,但我也是真看到有主播被气到下播了。

另外一点,老头环这次其实是以探索为主要玩法。

B站UP主老戴今天专门做了一期视频讲解,想要玩好、玩轻松,就是尽可能的探索地图,拿物品、刷等级。而不是走到哪杀到哪,打不过硬去打。

就比如第一个剧情BOSS前,大地图上有的是小型地牢,野外精英,要把图清完了再去打噩兆,真跟打弟弟一样。(收回我的话,40级30血20耐20敏+3打刀7瓶奶,打了7次才过。前三次就是纯背板,后三次有点贪,经常血瓶白喝,最后一次基本掌握出手时机,就硬耗过去了。)

其实魂系列游戏特别吃角色强度(等级、装备),一些小怪你一刀砍死和一刀残血,完全就是两种难度。打BOSS,你挨一下就要喝药,和挨两下才需要喝药也是两倍的差距。

不过按照这么个玩法,的确没有什么节目效果。

讲真,还真就是看那些新手主播无能狂怒最有节目效果。

至于游戏本体,如今我也的确是玩上了,总体上来说符合我的期待。

作为一个中年人,我其实是在看了老头环试玩视频后才接触魂系列的。

原因有2,一是手残反映慢,玩这种游戏非常苦手;二是,我其实不太喜欢魂系列那种压抑的黑暗风格。

但老头环作为开放世界,虽然依旧以压抑阴郁为主,但也有光明广阔的场景。比如一开始做完新手指引推门而出的那一刻。

至于在难度与操作方面,远程技能的实用化,召唤物的存在,以及跳砍与伪盾反的出现,真的能够解决很多问题。

只是看你愿不愿意当一个“卑鄙的褪色者”。

远程技能包括法术与射击。我玩的武士,初始给的长弓非常给力。尤其记得推一座城堡图的时候,一开始不清楚套路,进入城堡被满地的炸药桶与两个放火球的法师直接秒了。复活后掏出长弓,一剑封喉,解决掉法师无伤过了。

还有初期的一个地牢,一个场景墙上爬着的与左右墙角蹲着的类似地精的怪物,近战5-6刀才能砍死。

第一次去直接围殴致死。

第二次,用弓箭一只只引过来,很轻松就过了。

至于近战武器,我是非常推荐初期见完老婆就能开箱子拿到的君王大剑。

这把武器虽然攻速低,成长性也低,但在初期真的非常实用。

尤其是在跳劈方面。

这一作跳劈虽然强但也看武器,比如武士上来给的打刀就属于跳劈对空,跳起来横着劈一刀,有时候都打不到站着的怪。而大剑则是竖着往地上砸,范围极大。

我举一个例子,就是我开地图第一次遇到红灵。就是等对方打完一套跳劈就完了。

我的战斗策略就是,遇事不决,举盾防御,然后跳劈。

至于BOSS战,依旧有难度,也许跳劈和法术都没啥作用,依靠的依旧是精准的闪躲后普攻(排除盾反)。

但我觉得这算是魂系列的乐趣之一。

如果随便什么BOSS战都能逃课,那也就没意思了。




  

相关话题

  nlp有哪些值得完整实现一遍的算法? 
  先验分布、后验分布、似然估计这几个概念是什么意思,它们之间的关系是什么? 
  机器学习算法进行分类时,样本极度不平衡,评估模型要看哪些指标? 
  人脸识别哪家强? 
  有哪些相关性不等于因果性的例子? 
  如何看待 Richard Sutton 说的「人工智能中利用算力才是王道」? 
  支持向量机(SVM)是什么意思? 
  你见过最差的算法工程师能差到什么程度? 
  如何评价Kaiming He团队的MoCo v3? 
  时间序列,AR(2)的方差怎么求? 

前一个讨论
为什么经常有农产品滞销,在市里买菜却很贵?
下一个讨论
为什么微软不出一门像 Go 或者 Rust 的跨平台系统级语言?





© 2024-11-24 - tinynew.org. All Rights Reserved.
© 2024-11-24 - tinynew.org. 保留所有权利