为什么SAS Viya演示中神经网络的提升效果如此稳定?

我在查看SAS Viya的机器学习演示。这个演示在一组数据集上对比了多种机器学习算法的表现。所有模型在输出中的提升图表中显示的“提升”效果几乎同样出色。

如果你调整学习过程,只使用数据集总量的0.002%(proc partition data=&casdata partition samppct=0.002;),大多数算法在产生提升效果时都会遇到问题。

但是,神经网络仍然表现得非常好。这是特性还是错误?我猜想可能是脚本没有重新初始化网络,但仅从调用中很难判断出来。


回答:

我在SAS社区得到了很好的回答,是由BrettWujek和Xinmin发布的:

Mats – 简短的回答是,神经网络具有高度的适应性,并且能够使用比许多其他技术少得多的观测值来训练出非常精确的模型。在观测值非常少的情况下,基于树的模型会非常不稳定。在这种情况下,你的样本量减少到了大约20个观测值……即使这样,对于神经网络来说,如果空间不是过于非线性,这也可能是足够的。

关于你最后的评论 – 你似乎在提到所谓的“热启动”,即可以使用之前训练过的模型作为起点,并通过提供新的观测值来进行优化。这里并没有发生这种情况,因为这种功能将在我们即将发布的版本中提供,距离现在只有一个多月的时间。

Brett

我还从Xinmin那里得到了更多细节:

Mats,PROC NNET以随机方式初始化权重,如果你在训练语句中指定了一个种子,初始权重是可重复的。NNET训练由一个复杂的非线性优化求解器驱动,如果日志显示“已收敛”的状态,这意味着模型非常适合数据。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注