Tensorflow2深度学习有哪些十必知技巧,如何高效掌握?

摘要:博主根据自身多年的深度学习算法研发经验,整理分享以下十条必知。 含参考资料链接,部分附上相关代码实现。 独乐乐不如众乐乐,希望对各位看客有所帮助。 待回头有时间再展开细节说一说深度学习里的那些道道。 有什么技术需求需要有偿解决的也可以邮件或
博主根据自身多年的深度学习算法研发经验,整理分享以下十条必知。 含参考资料链接,部分附上相关代码实现。 独乐乐不如众乐乐,希望对各位看客有所帮助。 待回头有时间再展开细节说一说深度学习里的那些道道。 有什么技术需求需要有偿解决的也可以邮件或者QQ联系博主。 邮箱QQ同ID:gaozhihan@vip.qq.com 当然除了这十条,肯定还有其他“必知”, 欢迎评论分享更多,这里只是暂时拟定的十条,别较真哈。 主要学习其中的思路,切记,以下思路在个别场景并不适用 。 1.数据回流 [1907.05550] Faster Neural Network Training with Data Echoing def data_echoing(factor): return lambda image, label: tf.data.Dataset.from_tensors((image, label)).repeat(factor) 作用: 数据集加载后,在数据增广前后重复当前批次进模型的次数,减少数据的加载耗时。 等价于让模型看n次当前的数据,或者看n个增广后的数据样本。 2.AMP 自动精度混合 在bert4keras中使用混合精度和XLA加速训练 - 科学空间|Scientific Spaces tf.config.optimizer.set_experimental_options({"auto_mixed_precision": True}) 作用: 降低显存占用,加速训练,将部分网络计算转为等价的低精度计算,以此降低计算量。 3.优化器节省显存 3.1 [1804.04235]Adafactor: Adaptive Learning Rates with Sublinear Memory Cost mesh/optimize.py at master · tensorflow/mesh · GitHub 3.2[1901.11150] Memory-Efficient Adaptive Optimization google-research/sm3 at master · google-research/google-research (github.com) 作用: 节省显存,加速训练, 主要是对二阶动量进行特例化解构,减少显存存储。
阅读全文