首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >建立深度学习模型

建立深度学习模型
EN

Data Science用户
提问于 2017-05-05 05:36:05
回答 1查看 100关注 0票数 0

我想为一个二元分类问题建立一个深入的学习模型。我有16个特征和50k样本。如何为我的问题选择每一层的层数和神经元数?

请分享解释相同的链接。

EN

回答 1

Data Science用户

发布于 2017-05-05 12:19:23

没有规则可以从问题描述中推断出神经网络的超参数.由于只有数量的特性,数量的例子和事实,您有一个二进制分类问题,这是太少了,甚至是一个有教养的猜测。

首先,你确定你已经准备好为你的数据建立一个深入的学习模型了吗?你有没有看过这些数据,或者用PCA或the将其离散成二维,以了解数据的分离有多容易(容易分离原始数据意味着使用更简单/更浅的模型)?您可以尝试一个基本模型,如logistic回归或支持向量机,以便建立基准,以便判断深度模型是否有任何有用之处。

假设您已经准备好继续前进,那么长期的方法就是尝试各种变化,并使用交叉验证来度量结果。您可以有条不紊地这样做,例如,从一个有64个神经元的隐藏层开始,或者添加/删除层,或者在每个层中添加/删除神经元。一般来说,这些搜索并不包括所有可能的变体,但是一旦你尝试了那些看起来很有趣并且为你的问题达到了合理结果的搜索,就停止搜索。

请注意,其他超参数会影响结果,并能与您选择的神经元和层数进行交互。您不能将您对网络深度的选择与其他选择隔离开来,例如优化方法、激活函数、正则化。在开始构建模型时,花很长的时间探索这些其他因素和查看网络大小/形状是一样合理的。

很容易得到一个深度神经网络来过度拟合你的数据。因此,当您为您的问题探索超参数时,交叉验证是必要的。对神经元数量进行搜索的一个合理方法是增加神经元数量,直到你开始注意到过度拟合,然后调整调整以阻止过度拟合。此时,由于所有其他因素保持不变,可能没有必要探索有更多神经元的网络(尽管更深/更浅的网络可能仍然值得探索,如果您这样做,您将再次希望探索每一层的神经元数量)。

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

https://datascience.stackexchange.com/questions/18762

复制
相关文章

相似问题

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