如何确定我的深度学习模型需要什么类型的层?

How to determine what type of layers do I need for my Deep learning model?

假设我想制作一个可以做某事的模型。现在,当我在 Google 或 YouTube 上搜索该主题时,我发现了很多相关教程,似乎一些聪明的程序员已经用深度学习实现了该模型。

但是他们怎么知道他们需要什么类型的层、什么类型的激活函数、损失函数、优化器、单元数等。他们需要使用深度学习来解决特定问题。

有什么技巧可以知道这个,还是只是理解和经验的问题?如果有人能指出一些视频或文章来回答我的问题,那将非常有帮助。

这更多的是理解和经验的问题。从头开始构建模型时,您必须了解哪些优化器、损失等对您的特定问题有意义。为了适当地选择这些,您必须了解可用的优化器、损失函数等之间的差异。

关于选择层数和节点数、批量大小、学习率等——这些都是您需要测试和调整的超参数你试验你的模型。

如果您想在了解基本概念后更多地关注编码,我的 Deep Learning Fundamentals YouTube playlist that you may find helpful. It covers the fundamental basics of each of these topics in short videos. Additionally, this Deep Learning with Keras playlist 可能也会有所帮助。

感谢提问。

  1. CS231n Stanford lectures on CNN 初学者最好参考视频讲座here and class notes are available here
  2. 看完讲座并完成作业后,您将基本了解什么是深度学习以及所有可用的算法等。
  3. 但是当谈到解决现实世界的问题时,这还不够所以请参考 Jeremy Howard 的 this course,他在其中教授了更多关于如何使用 Kaggle 平台解决问题的知识。
  4. 使用 hackerearth、Kaggle、topcoder 等多个平台试验新模型和算法,继续解决更多问题