TensorFlow作为谷歌主导的开源深度学习框架,以其强大的性能和完善的生态支持,在开发者社群和工程实践中广为流行。无数AI大厂、创业公司和个人开发者们都在使用TensorFlow开发和部署深度学习模型,TensorFlow甚至成为人工智能的代名词。
CSDN发布的《-中国开发者调查报告》显示,TensorFlow是目前AI工程师首选的深度学习框架。
然而,一片阴云始终萦绕在AI初学者的脑际,那就是——
TensorFlow怎么这么难?
确实,相对于一些其他的深度学习框架,TensorFlow往往给人留下“入门门槛高”的刻板印象。在旧版本的TensorFlow开发中,你不仅需要了解人工智能的相关知识,还要接受“计算图”“会话”“占位符”等各种新概念的考验,使得TensorFlow的学习曲线变得相当陡峭。除此以外,各种复杂琐碎的API也让人头痛,说TensorFlow是人工智能开发中的C++也不为过。
谷歌的工程师们显然也注意到了这一问题。于是,在将近两年的迭代开发后,全新的TensorFlow2在去年10月横空出世。TensorFlow2不仅使用与PyTorch类似的“即时执行模式”建立模型,还更为深入地整合了易用的深度学习高层框架Keras。二者的强强联合使得TensorFlow2的使用变得简明而优雅,学习门槛大为降低。
与此同时,TensorFlow进一步强化了其在性能和生态上的巨大优势。无论是日益丰富的预训练模型库TensorFlowHub、谷歌的模型训练专用硬件TPU,还是前沿的量子机器学习库TensorFlowQuantum,开发者们几乎可以在TensorFlow开源生态内进行一切AI相关的研究、开发和部署工作。
对于初学者来讲,当你想学一个深度学习框架,我们究竟想要学到什么?
如果你是学生和研究者,你的预期是?
可能已经“啃”完了吴恩达(AndrewNg)的机器学习公开课或者斯坦福大学的UFIDLTutorial,或是正在学习深度学习课程。你也可能已经了解了链式求导法则、梯度下降法和损失函数的概念,并且对卷积神经网络(CNN)、循环神经网络(RNN)和强化学习的理论也有了大致的认识。然而,你依然不知道这些模型如何在计算机中具体实现。
这时,你希望能有一个程序库,帮助你把书本上的公式和算法运用于实践,并建立模型,进行训练。
如果你是开发者和工程师,你的