神经网络与其他一切

机器算法验证 回归 机器学习 分类 神经网络 深度学习
2022-01-24 00:29:48

我还没有从google找到满意的答案

当然,如果我拥有数百万的数据,那么深度学习就是最好的方法。

而且我已经读过,当我没有大数据时,也许在机器学习中使用其他方法会更好。给出的原因是过度拟合。机器学习:即查看数据、特征提取、从收集到的内容中制作新特征等。诸如删除高度相关的变量等。整个机器学习 9 码。

我一直在想:为什么只有一个隐藏层的神经网络不是解决机器学习问题的灵丹妙药?它们是通用估计器,可以通过 dropout、l2 正则化、l1 正则化、batch-normalization 来管理过拟合。如果我们只有 50,000 个训练示例,训练速度通常不是问题。它们在测试时比随机森林更好。

那么为什么不 - 清理数据,像通常那样估算缺失值,将数据居中,标准化数据,将其扔到具有一个隐藏层的神经网络集合中并应用正则化,直到你看到没有过度拟合,然后训练他们到最后。梯度爆炸或梯度消失没有问题,因为它只是一个 2 层网络。如果需要深层,这意味着要学习分层特征,然后其他机器学习算法也不好。例如,SVM 是一个只有铰链损失的神经网络。

一个其他机器学习算法将胜过仔细正则化的 2 层(可能是 3 层?)神经网络的示例将不胜感激。你可以给我这个问题的链接,我会尽可能训练最好的神经网络,我们可以看看 2 层或 3 层神经网络是否低于任何其他基准机器学习算法。

2个回答

每种机器学习算法都有不同的归纳偏差,因此使用神经网络并不总是合适的。线性趋势总是最好通过简单的线性回归而不是非线性网络的集合来学习。

如果你看看过去Kaggle 比赛的获胜者,除了图像/视频数据的任何挑战,你很快就会发现神经网络并不是解决所有问题的方法。这里有一些过去的解决方案。

应用正则化,直到你看到没有过度拟合,然后训练它们到最后

不能保证您可以应用足够的正则化来防止过度拟合,而不会完全破坏网络学习任何东西的能力。在现实生活中,消除训练测试差距几乎是不可行的,这就是为什么论文仍然报告训练和测试性能的原因。

他们是通用估计器

这仅在具有无限数量的单位的限制下才是正确的,这是不现实的。

你可以给我这个问题的链接,我会训练我能训练的最好的神经网络,我们可以看看 2 层或 3 层神经网络是否低于任何其他基准机器学习算法

一个我认为神经网络永远无法解决的示例问题:给定一个整数,将其分类为素数或非素数。

我相信这可以通过一个简单的算法完美地解决,该算法以升序遍历所有有效程序并找到正确识别素数的最短程序。实际上,这个 13 个字符的正则表达式字符串可以匹配素数,这在计算上不会难以搜索。


正则化能否将一个模型从一个过度拟合的模型转换为一个其表征能力被正则化严重阻碍的模型?中间不总是有那个甜蜜点吗?

是的,有一个甜蜜点,但通常是在你停止过度拟合之前。看这个图:

http://gluon.mxnet.io/_images/regularization-overfitting.png

如果您翻转水平轴并将其重新标记为“正则化量”,它非常准确 - 如果您正则化直到完全没有过度拟合,您的错误将是巨大的。当有一点过度拟合但不是太多时,就会出现“最佳点”。

一个“简单的算法,它以升序遍历所有有效程序并找到正确识别素数的最短程序”。一种可以学习的算法?

它找到参数$\theta$,使得我们有一个解释数据的假设$H(\theta)$,就像反向传播找到最小化损失的参数$\theta$(并通过代理解释数据)。只有在这种情况下,参数是一个字符串而不是许多浮点值。θ such that we have a hypothesis H(θ) which explains the data, just like backpropagation finds the parameters θ which minimize the loss (and by proxy, explains the data). Only in this case, the parameter is a string instead of many floating point values.


因此,如果我的理解正确,那么您的论点是,如果数据不多,那么在给定两者的最佳超参数的情况下,深层网络将永远不会达到最佳浅层网络的验证准确性?

是的。这是一个丑陋但希望有效的数字来说明我的观点。 https://i.imgur.com/nM3aI2l.png

但这没有意义。深度网络可以只学习浅层之上的 1-1 映射

问题不是“能不能”,而是“能不能”,如果你正在训练反向传播,答案可能不是。

我们讨论了一个事实,即较大的网络总是比较小的网络工作得更好

没有进一步的限定,这种说法是错误的。

我要补充一点,没有机器学习的灵丹妙药:

根据无免费午餐定理:

如果算法在某一类问题上表现良好,那么它必然会为在所有剩余问题上的性能下降而付出代价