Tensforflow已经升级到了2.0,我们就先撇开1.0不说。
Tensforflow2 VS Pytorch,该选哪个学呢?
![948f2fdd07e8a34f8462ea627f28d738.png](https://i-blog.csdnimg.cn/blog_migrate/e7c926959c2c1fc0f3159c007f82a238.jpeg)
这种选择焦虑感,是不是像在前女友和现女友之间那种选择呢?[捂脸]
![75f9a507b8ad85bde2e13c0768bb2ff5.png](https://i-blog.csdnimg.cn/blog_migrate/518cf9f1d7a4010919e8d588c6d43264.jpeg)
建议:
如果是工程师,应该优先选TensorFlow2.
如果是学生或者研究人员,应该优先选择Pytorch.
当然如果时间足够,最好TensorFlow2和Pytorch都要学习掌握。
理由如下:
- 1,在工业界最重要的是模型落地,目前国内的大部分互联网企业只支持TensorFlow模型的在线部署,不支持Pytorch。 并且工业界更加注重的是模型的高可用性,许多时候使用的都是成熟的模型架构,调试需求并不大。
- 2,研究人员最重要的是快速迭代发表文章,需要尝试一些较新的模型架构。而Pytorch在易用性上相比TensorFlow2有一些优势,更加方便调试。 并且在2019年以来在学术界占领了大半壁江山,能够找到的相应最新研究成果更多。
- 3,其实TensorFlow2和Pytorch实际上整体风格已经非常相似了,学会了其中一个,学习另外一个将比较容易。两种框架都掌握的话,能够参考的开源模型案例更多,并且可以方便地在两种框架之间切换。
另外,很多人用Keras,需要注意的是:
Keras库在2.3.0版本后将不再更新,用户应该使用tf.keras。
Keras可以看成是一种深度学习框架的高阶接口规范,它帮助用户以更简洁的形式定义和训练深度学习网络。
使用pip安装的Keras库同时在tensorflow,theano,CNTK等后端基础上进行了这种高阶接口规范的实现。
而tf.keras是在TensorFlow中以TensorFlow低阶API为基础实现的这种高阶接口,它是Tensorflow的一个子模块。
tf.keras绝大部分功能和兼容多种后端的Keras库用法完全一样,但并非全部,它和TensorFlow之间的结合更为紧密。
随着谷歌对Keras的收购,Keras库2.3.0版本后也将不再进行更新,用户应当使用tf.keras而不是使用pip安装的Keras.
-----
我收集了一套经典的教程,可以30天学会Tensforflow2/Pytorch。
关注我,私信 "AI教程",可以获得教程。