tf-slim是基于tensorflow的高层封装库,包含了目前最新的reset-net,Google-Inception等网络的实现及图像处理算法,支持多GPU并行。使用tf-slim库,可以帮助你快速搭建图像处理(包括分类,分割)的生产环境,快速开发初代产品。本文内容为来自北京信息科技大学计算机应用技术专业研二在读生吴正一讲解的怎么快速入门tf-slim。
在雷锋网AI研习社公开课上,来自北京拓尔思研发部三部图像处理实习生吴正一为大家详细介绍了tf-slim库的入门使用知识、注意事项、以及显卡选购和机器配置。
吴正一,北京信息科技大学计算机应用技术专业研二在读。目前在北京拓尔思信息技术股份有限公司,担任研发三部图像处理实习生,负责专利图像检索系统开发;主要研究方向为计算机视觉与深度学习。
以下是他在AI研习社直播的分享内容整理:
大家好,我是来自北京信息科技大学计算机应用技术专业研二在读生吴正一,目前是拓尔思图像组实习。今天的分享主题是tf-slim怎样快速上手,主要讲基于TensorFlow的高层封装库tf-slim入门知识。
装tensorflow-gpu,配置tf-slim环境
使用tf-slim训练自己的数据,以及将原始图像转换成 .tfrecord 数据文件
使用tf-slim加载tfrecord训练图像分类模型
使用训练好的模型对单张图像分类
GPU的选购和机器配置等
tf-slim适用于快速处理工作上大型图像数据。之所以它能处理大型图像数据,是因为他有一个很好的数据处理过程,它能把原始的图像转换成 .tfrecord 队列格式,读取特别快,也更加稳定。
有最新的的网络实现和预训练模型,能够快速产出。谷歌把一些最新的,最重要的大型网络已经实现好了,封装在tf-slim里面,可直接调用。
标准化的数据处理模板,适用于大型数据集。这个是比其他要好,假设处理一些数据,还要处理各种图像,这个提供了一套标准化数据处理,
多GPU并行训练,快速产出
基于TensorFlow,可实现精细化操控
原生TensorFlow框架可比作为汽车配件、钢板原材料,Keras 可比作发动机、车轮、车模型,Keras改源代码比较麻烦。tf-slim可比作一辆整车,但是又可以拆卸,因为它把最新的网络实现和预训练模型已经写好了,既封装了 一些网络实现,又能实现精细化的操作(可改源代码)。
1、配置GPU版本的TensorFlow
2、加载tf-slim库
以上具体参数可在文末视频中观看。实际上用的时候,不可能和网上一样,不可能一个文件跑到底。从训练最后一层开始,以及验证,然后再训练所有,再验证,分四个文件来跑。
视频中看scripts,可看到数据流动的过程。
从第一个文件开始训练,第二个验证,第三个慢慢调参,第四个再验证。需要注意的是checkpoint文件的用法,它可以支持断点,如果训练停了之后,下一次它可以从最新的模型接着训练。如果不需要接着上一次继续训练,要把整个checkpoint文件删掉。
这里有一个坑需要注意一下,tf-slim 未提供单张图像的预测脚本,自己用的时候需要写一个单张图片加载模型,以及单张图片的分类。
选购GPU 的考虑及性价比对比,横坐标是性能,纵坐标为价格。
待验证:1080 GPU在主机上的训练速度,双1080/1080Ti GPU的训练速度提升问题(修改TensorFlow网络架构)。
购买显卡,主板等硬件注意事项:
主板需要支持SLI(专为Nividia显卡)双路连接技术。
双显卡之间需要使用桥接器连接。如图一所示,分硬联和软联,硬联不可弯折。
主板支持PCI-E*16插槽,装两张显卡需要至少两个PCI-E*16插槽(考虑到显卡占用较大物理空间,PCI-E*16插槽最好是和PCIE*1插槽交叉排列。)
显卡电源线接在电源上,GTX1080等高端消费级显卡需要4*2pin的电源接口。
以上就是吴正一分享的主要内容。完整视频请点击阅读原文观看。
上海交通大学博士讲师团队
从算法到实战应用
涵盖CV领域主要知识点
手把手项目演示
全程提供代码
深度剖析CV研究体系
轻松实战深度学习应用领域!
▼▼▼
(限时早鸟票~)
新人福利
关注 AI 研习社(okweiwu),回复 1 领取
【超过 1000G 神经网络 / AI / 大数据,教程,论文】
点击阅读原文,观看完整视频
▼▼▼