tflearn教程_利用 TFLearn 快速搭建经典深度学习模型
使用 TensorFlow 一个最大的好处是可以用各种运算符(Ops)灵活构建计算图,同时可以支持自定义运算符(见本公众号早期文章《TensorFlow 增加自定义运算符》)。由于运算符的粒度较小,在构建深度学习模型时,代码写出来比较冗长,比如实现卷积层:5, 9
这种方式在设计较大模型时会比较麻烦,需要程序员徒手完成各个运算符之间的连接,像一些中间变量的维度变换、运算符参数选项、多个子网络连接处极易发生问题,肉眼检查也很难发现代码中潜伏的 bug,会导致运行时出错(运气好),或者运行时不出错但运行结果不可解释(运气不好),消耗大量时间和精力。
有没有更好的实现各种经典模型的方式?
答案是肯定的!
我们今天学习一下在 TensorFlow 之上构建的高层次 API—— TFLearn【2】。
TFLearn 是一个模块化和透明的深度学习库,构建在 TensorFlow 之上。
它为 TensorFlow 提供高层次 API,目的是便于快速搭建试验环境,同时保持对 TensorFlow 的完全透明和兼容性。
TFLearn 的一些特点:
容易使用和易于理解的高层次 API 用于实现深度神经网络,附带教程和例子;
通过高度模块化的内置神经网络层、正则化器、优化器等进行快速原型设计;
对 TensorFlow 完全透明,所有函数都是基于 tensor,可以独立于 TFLearn 使用;
强大的辅助函数,训练任意 TensorFlow 图,支持多输入、多输出和优化器;
简单而美观的图可视化,关于权值、梯度、特征图等细节;
无需人工干预,可使用多 CPU、多 GPU;
高层次 API 目前支持最近大多数深度学习模型,像卷积网络、LSTM、BiRNN、BatchNorm、PReLU、残差网络、生成网络、增强学习…… 将来会一直更新最近的深度学习技术;
心动不如行动,我们马上就体验!在一台已经安装了 TensorFlow 的机器上(安装步骤参考之前文章《TensorFlow 1.0.0rc1 入坑记》《利用 TensorFlow 集装箱快速搭建交互式开发环境》《如何在 Windows 系统玩 TensorFlow》)直接运行以下命令:pip in
检查安装成功:
为了方便运行 TFLearn 附带例程,我们需要克隆 TFLearn 源码:
先看看如何用 TFLearn 实现 AlexNet 用于 Oxford 17 类鲜花数据集分类任务的:
上图为论文【1】 中的 AlexNet 结构。
TFLearn 例程中实现的 AlexNet 和论文【1】中相比做了一些修改:
输入图像尺寸变为 227 x 227;
将 2-tower 架构改为 single-tower;
最后一个分类层的输出类别数从 1000 变为 17;
运行该例程:
该程序会自动下载 Oxford 17 flowers 数据集, 选了几个不同类别图片如下:
运行 AlexNet 模型训练截图如下:
在另一个命令行窗口启动 TensorBoard:
打开浏览器,输入地址:localhost:6006,打开 TensorBoard 页面,查看训练过程的准确率、loss 值变化:
AlexNet 模型可视化(之一)
(之二)
模型权值分布:
模型权值的直方图,可以看出权值训练历史:
通过今天内容,读者可以看出使用 TFLearn 高层次 API 相比直接使用 TensorFlow 实现深度学习模型具有使用更简单、构建更快速、可视化更方便等特点,从此无需手动处理各个运算符之间的连接,解放了生产力,提高了模型设计和优化效率。
作为练习,读者可以进一步学习 TFLearn 实现其他经典深度学习模型如 VGG、Inception、NIN、ResNet 等,对比原始论文学习,相信会有更大的收获。
参考文献
【1】Alex Krizhevsky, Ilya Sutskever & Geoffrey E. Hinton. ImageNet Classification with Deep Convolutional Neural Networks. NIPS, 2012.
tflearn教程_利用 TFLearn 快速搭建经典深度学习模型相关推荐
- GitChat · 人工智能 | 如何零基础用 Keras 快速搭建实用深度学习模型
GitChat 作者:谢梁 原文: 如何零基础用 Keras 快速搭建实用深度学习模型 关注微信公众号:GitChat 技术杂谈 ,一本正经的讲技术 [不要错过文末活动] 前言 在这篇小文章中,我们将 ...
- 文本分类模型_文本分类中的经典深度学习模型
众所周知,文本分类是NLP领域中十分基础的任务,大部分文本分类模型稍加修改就可以应用到其他任务中.下面介绍几个经典的文本分类模型. 图中被引数来源google学术(2019/5/16) 1. text ...
- 利用远程云服务器跑深度学习模型
利用远程云服务器跑深度学习模型主要有三个问题需要解决. 一是深度学习环境的搭建,二是已搭建环境的保存,三是远程数据的传输. 深度学习环境的搭建 以阿里云为例,在购买服务器创建实例时,可以在镜像市场选择 ...
- 钉钉一行代码_利用Python快速搭建钉钉和邮件数据推送系统
前面的文章我们写到了利用Python实现钉钉和邮件的数据推送,在数据处理这一块实现了对mysql和odps的数据获取和处理,可以满足常规业务大部分数据场景需求,在一家初创公司数据基础建设还不完善的时候 ...
- 铁威马NAS教程之利用docker快速搭建个人在线书库
这是一个基于Calibre的简单的图书管理系统,支持在线阅读.主要特点是:美观的界面.支持多用户.支持在线阅读.支持邮件推送.支持OPDS.支持一键安装,网页版初始化配置,轻松启动网站等等. 那么,如 ...
- 60分钟入门PyTorch,官方教程手把手教你训练第一个深度学习模型(附链接)
来源:机器之心 本文约800字,建议阅读5分钟. 本文介绍了官方教程入门PyTorch的技巧训练. 近期的一份调查报告显示:PyTorch 已经力压 TensorFlow 成为各大顶会的主流深度学习框 ...
- 60分钟入门PyTorch,官方教程手把手教你训练第一个深度学习模型
点击我爱计算机视觉标星,更快获取CVML新技术 本文转载自机器之心. 近期的一份调查报告显示:PyTorch 已经力压 TensorFlow 成为各大顶会的主流深度学习框架.想发论文,不学 PyTor ...
- ecology9 后端开发环境搭建_利用Vagrant快速搭建开发环境
Docker大家应该都了解吧,一个非常方便的技术,可以让我们随时随地部署应用.但是部署应用虽然方便了,开发环境的搭建还是那样的,要自己安装一大堆软件.那么有没有类似的工具可以方便我们呢?这就是本文要的 ...
- 2020.2idea怎么创建html模块_利用idea快速搭建一个项目
一.前提准备:电脑安装好jdk1.8,安装好IDEA 二.步骤 1.点击创建一个新项目 2.选择 Spring initializr选项,这是一个非常方便的生成Springboot的工具,确认信息无误 ...
最新文章
- [SLAM] a bite of SLAM
- sublime text3注册激活及失效解决办法
- Matlab 图像处理相关函数命令
- qt udp多线程收发过程_! udp多线程的有关问题
- win7下安装Oracle10g解决方案
- .net 识别一维码_天若OCR文字识别 v5.0 原创好用的OCR及翻译小工具
- Python | 字符串isdecimal(),isdigit(),isnumeric()和Methods之间的区别
- 科园贸易:帆软助力其推动数据应用落地,打造自主可控数据平台
- Dubbo详细介绍与安装使用过程
- 影像能力甩友商一条街 华为P40系列底气在这
- [smali] This Handler class should be static or leaks might occur
- matlab高等数学实验答案,高等数学实验matlab参考完整答案.doc
- 虹软科技Java人脸识别_java人脸识别 虹软ArcFace 2.0,java SDK使用、人脸识别-抽取人脸特征并做比对...
- 我是一只 IT小小鸟
- 易语言单窗口单ip软件源码_想要挣钱创收 那就用脚本操作手机群控软件啊
- pdfobject.js和pdf.js的详解
- 硬盘被计算机限制如果解锁,硬盘被锁怎么办
- 和小白一起学习V4L2采集视频
- 做读书笔记好用的软件分享
- [Shiro教程] Shiro 教程基于SSM(SpringMVC + Spring + Mybatis)