反向传播神经网络中最佳特征与实例比

我在尝试使用反向传播神经网络对一个特定问题进行留一法交叉验证。我的训练数据中有8个特征和20个实例。我试图让神经网络学习一个函数来构建预测模型。现在的问题是预测中的错误率相当高。我猜测与所考虑的特征数量相比,训练中的实例数量较少。这个结论是否正确?是否有最佳的特征与实例比?


回答:

(在机器学习文献中,这个话题通常被表述为给定数据集的可接受大小或形状,因为数据集通常被描述为一个m x n矩阵,其中m是行数(数据点),n是列数(特征);显然m >> n是首选。)

无论如何,我不知道特征与观测值的可接受范围的一般规则;这可能有几个原因:

  • 这样的比率将强烈依赖于数据的质量(信噪比);

  • 特征的数量只是模型复杂度的一个元素(例如,特征之间的相互作用);而模型复杂度是数据实例(数据点)数量的最强决定因素。

因此,解决这个问题有两种方法——因为它们是相反的,所以可以同时应用于同一个模型:

  • 减少特征数量;或者

  • 使用统计技术来利用你所拥有的数据

针对上述两种路径,我提供了一些建议:

  1. 消除“非重要”特征——即那些对你的响应变量的变异性没有贡献的特征。主成分分析(PCA)是一种快速且可靠的方法来做到这一点,尽管还有许多其他技术通常被归类为“降维”。

  2. 使用自助法代替交叉验证。方法上的差异看似微小,但减少预测错误的(通常是显著的)改进在多层感知器(神经网络)中已被充分记录(例如,Efron, B. 和 Tibshirani, R.J., 自助法:对交叉验证的改进, 美国统计协会杂志, 92, 548-560., 1997)。如果你不熟悉用于分割训练和测试数据的自助法,通常的技术与交叉验证类似,只是你不是取整个数据集的子集,而是取子样本Elements的第7.11节是对自助法的一个很好的介绍。

我发现的关于这个一般话题的最佳单一来源是Hastie, Tibshirani和Friedman的优秀著作统计学习的元素中的第7章模型评估和选择。这本书可以从书的主页免费下载。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

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