首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >大型数据集- ANN

大型数据集- ANN
EN

Stack Overflow用户
提问于 2021-01-20 10:34:43
回答 1查看 86关注 0票数 0

我正在尝试用13个属性对大约40万个数据进行分类。我使用过python sklearn的SVM包,但它不起作用,然后我了解到SVM不适合大数据集分类。然后我使用了(sklearn) ANN,使用了下面的MLPClassifier:

代码语言:javascript
复制
MLPClassifier(solver='adam', alpha=1e-5, random_state=1,activation='relu', max_iter=500)

并使用200K样本对系统进行了训练,并在其余样本上对模型进行了测试。这种分类效果很好。然而,我担心的是该系统训练过度或过度适应。你能指导我隐藏层的数量和节点大小,以确保没有过拟合吗?(我了解到默认实现有100个隐藏神经元。是否可以按原样使用默认实现?)

EN

回答 1

Stack Overflow用户

发布于 2021-01-20 15:19:10

要知道你是否过拟合,你必须计算:

  • Training set accuracy
  • 测试集accuracy

一旦你计算了这个分数,就比较它。如果训练集分数比测试集分数高得多,那么您就过度拟合了。这意味着你的模型正在“记忆”你的数据,而不是从中学习来做出未来的预测。

如果你过度拟合神经元网络,你可能不得不减少层数,并减少每层神经元的数量。根据数据集大小,没有任何严格的规则来说明所需的层数或神经元数。对于相同的数据集大小,每个数据集可以表现出完全不同的行为。

因此,总而言之,如果你过度拟合,你将不得不使用不同的层参数和神经元数量来评估模型的准确性,然后观察哪些值可以获得最佳结果。有一些方法可以用来找到最佳参数,比如gridsearchCV

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65802314

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档