2019年10月1日北京时间凌晨2点,谷歌公司献礼70周年发布了Tensorflow2.0正式版。
新版的最大特点是将keras加入到了官方代码中,keras的高度封装使得在搭建简单的网络时非常便捷,但同时也造成模型的细节不透明、难以进行创新性更改等问题。
此外,目前网络上的教程少之又少,即便有也只能称之为keras教程而不是tensorflow教程(官方的教程亦是如此),而且tensorflow本身函数名称经常调整,旧版的代码几乎不能直接拿来用。
因此,我决定自己写一份tensorflow 2.0正式版教程。说是教程,其实只算是我自己的一份学习笔记,也希望能和更多的人一起交流。这份教程的重点会在于尽量不依赖keras的封装来搭建网络(就像早期的tensorflow中,卷积层的W与b都需要事先声明并指定计算方式,虽然繁琐但事无巨细的coding过程能对网络有很透彻的理解),包括各个网络层的细节实现、网络的训练与测试、数据增强等各个方面。当然教程的最开始还是会采用keras搭建几个经典网络,从而保证重新实现的模型在性能上能和采用keras实现的对齐。