tensorpack是一个基于TensorFlow的神经网络训练接口,主要特色是训练速度。
tensorpack架构概览
特性
tensorpack只包含少量常用的模型,因此你可以自由搭配其他框架和库提供的模型,包括sonnet、Keras、slim、tflearn、tensorlayer等。
专注于训练速度。
tensorpack以高效的方式使用TensorFlow。对许多种CNN(卷积神经网络)而言,tensorpack的性能是Keras的1.5至1.7倍。
开箱即用的分布式训练(多CPU并行数据),性能和Google官方基准测试相当。
你可以运行自带的性能测试脚本看看tensorpack有多快。
专注于大数据集。通过TensorFlow读取、预处理数据比较麻烦,tensorpack帮助你用纯Python代码加载大数据集(例如,ImageNet),而且自动带上并行。同时,tensorpack配合使用TF队列或tf.data也很方便。
提供可扩展的回调接口。编写一个回调函数,实现训练迭代以外的其他功能,然后只需一行代码就可以启用这个回调。常见的回调函数的例子:
在训练过程中调整超参
打印一些感兴趣的tensor
监控GPU使用量
发送出错率到你的手机
安装
首先安装以下依赖:
Python 2 或 3
TensorFlow >= 1.0.0 (多GPU支持需要 >=1.1.0)
OpenCV的Python绑定(可选)
然后使用pip安装:
pip install -U git+https://github.com/ppwwyyxx/tensorpack.git
以上命令会安装tensorpack到系统目录,如果不想安装到系统目录,可以在pip后加--user参数安装到用户目录。
如果你只打算单独使用tensorpack.dataflow作为数据处理库,那么TensorFlow也是可选依赖。
文档和样例代码
tensorpack项目的教程很详细,自带丰富的样例代码,范围包括上手、视知觉、强化学习和自然语言处理。
使用tensorpack重现Saining的HED论文
机器人网原创文章,未经授权禁止转载。详情见转载须知
本文来自机器人网,如若转载,请注明出处:https://www.jqr.com/news/008473