更新于 2026年10月10日 全文 519 字未阅读

深度学习科研中,代码能力跟不上怎么办?#

以前经常跟新来的师弟师妹强调,在看论文学技术的同时一定不要荒废了代码,对于那些经典的网络结构在学习的过程中除了掌握它的原理,一定要学会在一种框架下的使用。

例如CNN、LeNet5、AlexNet、ResNet、LSTM,最近几年的 Transformer 和 Bert 等。 因为如果你只为了快学完原理就去搞下一个算法,那么当你有想法的时候你就会发现你全都不会实现。并且很多模型结构的细节只有去看代码才能明白,例如 transformer。

如果你现在也遇到了同样的问题,那就是少了上面说到的这一步。

建议先把上面说到的7个模型的代码实现都弄清楚(大约一个月),当你完成这一步之后眼下的困难应该就会迎刃而解。

深度学习科研中,代码能力跟不上怎么办?阅读代码顺序图

总结:

  1. 先把常见的基础模型的代码细致弄清楚,一行一行理解清楚包括原理;

  2. 后续只要有比较重要的模型出来,例如 transformer 和 bert 这种,继续阅读源码弄清楚实现方式;

  3. 阅读代码的时候按照自上而下的路子来,即先做到跑起来,再弄清楚各个大模块和类的作用,然后了解各个函数和各行代码的含义。

  4. 有精力的话可以把开源框架里的实现方式拿来琢磨一下,尝试自己把其中的核心部分拎出来,然后自己借助这些部分实现整个模型。例如我自己在学 transformer 和 bert 的时候,就逐一阅读了google开源的代码,然后结合着 Transformers 库里面的实现方式,把整个模型又重新梳理和实现了一遍。

阅读 --