0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

学习怎样用深度神经网络替换线性模型

Tensorflowers 来源:未知 作者:李倩 2018-06-06 10:42 次阅读

AIA (AI Adventures)系列现在已经进入第六期了。前几期分享当中,Yufeng 介绍了机器学习的核心概念、基本逻辑,也介绍了要进行机器学习需要经过哪些步骤,并根据这些基本知识尝试使用线性评估器 API 打造了鸢尾花分类模型,还介绍了如何用 TensorBoard 将模型可视化分析。今天的分享中,他会带领我们一起把线性鸢尾花分类模型转换为深度神经网络结构。

在这一期的Cloud AI Adventures里,我们将会学习怎样用深度神经网络替换线性模型,从而适应日益复杂的数据集训练任务。

随着线性模型中特征列数量的增加,进而特征列之间的关系变得越来越复杂,在训练中提高精确度也越来越困难。这是一个众人皆知的问题,而数据科学家们解决它的一个有效办法就是转为使用深度神经网络。

为什么叫深度?

深度神经网络可以应对更复杂的数据集,并充分利用其多层结构来更好地概括出未知的数据,故而称其为「深度」。多层次的结构使其相比线性模型能够容纳更多的数据。不过代价就是要花费更长的训练时间,并且模型体积也更庞大,可解释性也更差。那么人们为什么还这么中意它呢?因为它往往能够提升到更高的精度。

深度学习,有如山林漫步,难寻蹊径

关于深度学习,有那么一件颇具技巧的事,那就是把所有参数都调校得「恰到好处」。超大的数据集规模决定了调优过程差不多是无穷无尽的。不过,TensorFlow 内置的 DeepClassifier 和 Regresser 类提供了一些你能随时使用的默认值,他们能让你的训练准备工作又快又轻松。

从线性训练到深度学习

下面举个例子来展示如何将早前我们的线性鸢尾花辨识模型转为深度神经网络(也就是人们常说的 DNN)。

当然, 我们不是要展示 DNN 能处理的 2000 列特征值模型,而是仅仅使用本系列贯穿始终的 4 列特征值。(要么火力全开,要么几乎用不到,哈哈哈)其实它们背后的原理都是一样的。

最主要的变化就是把 LinearClassifier 类换成 DNNClassifier 类。 这一更改会为我们创建一个深度神经网络。

用 DNNClassifier 类替换 LinearClassifier 类

其他变化

其实其他部分几乎没有变动!只是 DNN 多了个之前我们没有用到的参数。由于 DNN 的多层结构,而每一层可能有各不相同的结点数目,所以还需要在实例化时加上 hidden_units 参数。

加上 hidden_units 参数把所有东西都整合起来

这个 hidden_units 参数让你为模型的每一层指定具体的结点数目。也就是让你决定模型的大小和形状,而不需要从头开始手动把所有东西都连接起来。

改变模型的参数配置也就是一行变更的事儿

更多选项

对于任何预知的体系,自定义性和便利性往往不可兼得, DNNClassifier 尝试给开发者提供额外的参数以绕过这个局限。如果留空了,就会由一些合理的默认值来填补空缺。比如优化器、激活函数、淘汰率等等都是可以自定义的。

没错,有这么个激活函数就叫「ELU」

再没有什么其他变化了

还有其他要改变的吗?没了!这就是使用Estimators 框架的优势:用通用的方法来组织数据、训练、评价、导出模型,同时还能让你用不同的模型和参数来训练。

了解 Estimators 框架:

https://tensorflow.google.cn/api_docs/python/tf/estimator

轻松切入深度学习

又是,深度神经网络比线性模型要更加高效。在这些情况下,TensorFlow 用「只替换一处函数调用」这种少量编码即可切换模型种类的方式,让一切更加简单。此后,你会有更多的时间精力来处理数据、模型和参数,而不是费时管理训练的循环迭代。用TensorFlow Estimators来获得更轻松的 DNN 训练体验吧!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4771

    浏览量

    100752
  • 线性
    +关注

    关注

    0

    文章

    198

    浏览量

    25149
  • 深度学习
    +关注

    关注

    73

    文章

    5503

    浏览量

    121151

原文标题:AIA 第六期 | 通过深度神经网络再识 Estimator

文章出处:【微信号:tensorflowers,微信公众号:Tensorflowers】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    详解深度学习神经网络与卷积神经网络的应用

    在如今的网络时代,错综复杂的大数据和网络环境,让传统信息处理理论、人工智能与人工神经网络都面临巨大的挑战。近些年,深度学习逐渐走进人们的视线
    的头像 发表于 01-11 10:51 2038次阅读
    详解<b class='flag-5'>深度</b><b class='flag-5'>学习</b>、<b class='flag-5'>神经网络</b>与卷积<b class='flag-5'>神经网络</b>的应用

    神经网络教程(李亚非)

      第1章 概述  1.1 人工神经网络研究与发展  1.2 生物神经元  1.3 人工神经网络的构成  第2章人工神经网络基本模型  2.
    发表于 03-20 11:32

    从AlexNet到MobileNet,带你入门深度神经网络

    俊楠分享了典型模式-深度神经网络入门。本文详细介绍了关于深度神经网络的发展历程,并详细介绍了各个阶段模型的结构及特点。直播回顾请点击以下是精
    发表于 05-08 15:57

    解析深度学习:卷积神经网络原理与视觉实践

    解析深度学习:卷积神经网络原理与视觉实践
    发表于 06-14 22:21

    卷积神经网络模型发展及应用

    卷积神经网络模型发展及应用转载****地址:http://fcst.ceaj.org/CN/abstract/abstract2521.shtml深度学习是机器
    发表于 08-02 10:39

    神经网络深度学习》讲义

    神经网络深度学习》讲义
    发表于 07-20 08:58 0次下载

    BP神经网络模型学习算法

    BP神经网络模型学习算法
    发表于 09-08 09:42 10次下载
    BP<b class='flag-5'>神经网络</b><b class='flag-5'>模型</b>与<b class='flag-5'>学习</b>算法

    深度学习神经网络学习是什么样的?

    怎样理解非线性变换和多层网络后的线性可分,神经网络学习就是
    的头像 发表于 10-23 14:44 3986次阅读

    快速了解神经网络深度学习的教程资料免费下载

    本文档的详细介绍的是快速了解神经网络深度学习的教程资料免费下载主要内容包括了:机器学习概述,线性模型
    发表于 02-11 08:00 33次下载
    快速了解<b class='flag-5'>神经网络</b>与<b class='flag-5'>深度</b><b class='flag-5'>学习</b>的教程资料免费下载

    综述深度学习的卷积神经网络模型应用及发展

    深度学习是机器学习和人工智能研究的最新趋势,作为一个十余年来快速发展的崭新领域,越来越受到研究者的关注。卷积神经网络(CNN)模型
    发表于 04-02 15:29 20次下载
    综述<b class='flag-5'>深度</b><b class='flag-5'>学习</b>的卷积<b class='flag-5'>神经网络</b><b class='flag-5'>模型</b>应用及发展

    深度神经网络模型的压缩和优化综述

    近年来,随着深度学习的飞速发展,深度神经网络受到了越来越多的关注,在许多应用领域取得了显著效果。通常,在较高的计算量下,深度
    发表于 04-12 10:26 20次下载
    <b class='flag-5'>深度</b><b class='flag-5'>神经网络</b><b class='flag-5'>模型</b>的压缩和优化综述

    卷积神经网络深度神经网络的优缺点 卷积神经网络深度神经网络的区别

    深度神经网络是一种基于神经网络的机器学习算法,其主要特点是由多层神经元构成,可以根据数据自动调整神经
    发表于 08-21 17:07 4118次阅读

    cnn卷积神经网络模型 卷积神经网络预测模型 生成卷积神经网络模型

    cnn卷积神经网络模型 卷积神经网络预测模型 生成卷积神经网络模型  卷积
    的头像 发表于 08-21 17:11 1242次阅读

    深度神经网络模型有哪些

    模型: 多层感知器(Multilayer Perceptron,MLP): 多层感知器是最基本的深度神经网络模型,由多个全连接层组成。每个隐藏层的
    的头像 发表于 07-02 10:00 1388次阅读

    深度神经网络模型cnn的基本概念、结构及原理

    深度神经网络模型CNN(Convolutional Neural Network)是一种广泛应用于图像识别、视频分析和自然语言处理等领域的深度学习
    的头像 发表于 07-02 10:11 9737次阅读