这篇专栏文章不是为了挑起tenserflow和pytorch中哪个更好,众所周知tensorflow诞生以来,已经成为最流行的深度学习框架,可以说github中大多数的深度学习代码实现是以tensorflow实现的,也就是说资源众多,社区强大,这是tensorflow的好处。
为什么要学习pytorch
在tensorflow之后pytorch也异军突起,成为了当下可以和tensorflow抗衡的深度学习框架,这也是为什么要学习pytorch的原因。
不是因为tensorflow不够优秀,而是因为pytorch足够优秀,它优秀到从它诞生之日起,它的发展和tensorflow一样迅速,甚至很多科研机构,工业界也在开始逐步转移到pytorch,相信在不远的将来,很有可能pytorch和tensorflow共分天下。
PyTorch深度学习框架有以下的优势:
动态图与直观性
相较于Tensorflow的静态图设计,PyTorch的动态图特性为我提供了更大的灵活性和直观性。在Tensorflow中,我需要事先定义好计算图,然后才能进行数据的输入和计算。这种方式虽然在一定程度上优化了计算效率,但对于调试和模型设计来说,却显得有些僵化。而在PyTorch中,我可以随时修改模型结构,实时查看变量的值,这对于我来说无疑更加友好。
此外,PyTorch的API设计也更为直观和简洁。它的代码风格更接近