Tensorflow新手通过PlayGround可视化初识神经网络

2023-11-10

北京 上海巡回站 | NVIDIA DLI深度学习培训
2018年1月26/1月12日
NVIDIA 深度学习学院 带你快速进入火热的DL领域
阅读全文                                                 
>



正文共1791个字,12张图,预计阅读时间6分钟。


是不是觉得神经网络不够形象,概念不够清晰,如果你是新手,来玩玩PlayGround就知道,大神请绕道。


PlayGround是一个在线演示、实验的神经网络平台,是一个入门神经网络非常直观的网站。这个图形化平台非常强大,将神经网络的训练过程直接可视化。同时也能让我们对Tensorflow有一个感性的认识。


PlayGround的网址是:http://playground.tensorflow.org/

PlayGround页面如图所示,主要分为DATA(数据),FEATURES(特征),HIDDEN LAYERS(隐含层),OUTPUT(输出层)。


PlayGround主页面


DATA一栏里提供了4种不同形态的数据,分别是圆形、异或、高斯和螺旋。平面内的数据分为蓝色和黄色两类。


四种数据形态


我们的目标就是通过神经网络将这两种数据分类,可以看出螺旋形态的数据分类是难度最高的。除此之外,PlayGround还提供了非常灵活的数据配置,可以调节噪声、训练数据和测试数据的比例和Batch size的大小。


噪声的影响


训练数据和测试数据的比例


Batch size大小


Batch size就是每批进入神经网络数据点的个数。


FEATURES一栏包含了可供选择的7种特征:X1、X2、X1X1、X2X2、X1X2、sin(X1)、sin(X2)。


7种特征


X1可以看成以横坐标分布的数据特征,X2是以纵坐标分布的数据特征,X1X1和X2X2是非负的抛物线分布,X1X2是双曲抛物面分布,sin(X1)和sin(X2)正弦分布。我们的目标就是通过这些特征的分布组合将两类数据(蓝色和黄色)区分开,这就是训练的目的。


HIDDEN LAYERS一栏可设置多少隐含层。一般来讲,隐含层越多,衍生出的特征类型也就越丰富,对于分类的效果也会越好,但不是越多越好,层数多了训练的速度会变慢,同时收敛的效果不一定会更好,后面也会提到。


隐含层结构


因为在这里是一个分类的问题,隐含层设置为两层,刚好对应输出的类型。层与层之间的连线粗细表示权重的绝对值大小,我们可以把鼠标放在线上查看权值,也可以点击修改。


OUTPUT一栏将输出的训练过程直接可视化,通过test loss和training loss来评估模型的好坏。


输出模型


除了主要的四个部分外,在界面上还有一列控制神经网络的参数,从左到右分别是,训练的开关、迭代次数、学习速率、激活函数、正则化、正则化率和问题的类型。


神经网络控制参数


我们接下来尝试了几个例子,考虑到图片太多,直接讲一些结论,读者可以自行去摸索。


首先考虑的是激活函数的影响,比较了一下Sigmoid函数和ReLU函数:


1、选择Sigmoid函数作为激活函数,明显能感觉到训练的时间很长,ReLU函数能大大加快收敛速度,这也是现在大多数神经网络都采用的激活函数。


2、当把隐含层数加深后,会发现Sigmoid函数作为激活函数,训练过程loss降不下来,这是因为Sigmoid函数反向传播时出现梯度消失的问题(在sigmoid接近饱和区时,变换太缓慢,导数趋于0,这种情况会造成信息丢失)。


接着我们选用ReLU函数作为激活函数,比较一下隐含层数量对结果的影响:


1、我们选用了3层隐含层,每层特征个数为8,8,2的模型和6层隐含层,每层特征个数为8,8,8,8,8,2的模型。3层隐含层模型大概200步就达到了test loss为0.005,training loss为0.005,而6层隐含层模型跑了700步,test loss为0.015,training loss为0.005,有点过拟合。


8,8,2模型


8,8,8,8,8,2模型


隐含层的数量不是越多越好,层数和特征的个数太多,会造成优化的难度和出现过拟合的现象。


如果你感兴趣,很多测试你都可以尝试一下。通过神经网络,我们的系统自己就能学习到哪些特征是有效的,哪些特征是无效的,通过自己学习这些特征,然后判断问题。值得一提的是,最近很热的AlphaGo zero通过自我学习的过程,从无到有,打败了参照人类知识学习的AlphaGo,可见机器自我学习,自我进化的速度太快了,远远超越了人类历史经验的总结。人生苦短,快用Tensorflow!


原文链接:https://www.jianshu.com/p/5f83defc7615


查阅更为简洁方便的分类文章以及最新的课程、产品信息,请移步至全新呈现的“LeadAI学院官网”:

www.leadai.org

请关注人工智能LeadAI公众号,查看更多专业文章

大家都在看

LSTM模型在问答系统中的应用

基于TensorFlow的神经网络解决用户流失概览问题

最全常见算法工程师面试题目整理(一)

最全常见算法工程师面试题目整理(二)

TensorFlow从1到2 | 第三章 深度学习革命的开端:卷积神经网络

装饰器 | Python高级编程

今天不如来复习下Python基础


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Tensorflow新手通过PlayGround可视化初识神经网络 的相关文章

随机推荐

  • 简单了解YOLOv8

    简单介绍YOLOv8 这里主要关注模型的backbone和后处理的过程 并通过对比YOLOv5的架构来更深入的了解YOLOv8 模型框架 YOLOv5中的C3替换为更精简的C2f 即增加了更多的跳跃连接和split操作 Backbone 中
  • uniapp 自定义标题情况下,让标题和右侧胶囊对齐

    实现效果 无论手机类型怎么切换 自定义标题始终跟胶囊平齐 实现 在pages json文件中配置标题自定义 在index vue页面 编写自定义的标题内容 在onLoad里可以计算高度
  • 【深度学习】入门理解ResNet和他的小姨子们(三)---ResNeXt

    文章名称 Aggregated Residual Transformations for Deep Neural Networks 文章链接 https arxiv org abs 1611 05431 其实ResNeXt这个网络结构严格说
  • 大规模流量下的云边端一体化流量调度体系

    火山引擎是字节跳动旗下的云服务平台 将字节跳动快速发展过程中积累的增长方法 技术能力和工具开放给外部企业 提供云基础 视频与内容分发 数智平台VeDI 人工智能 开发与运维等服务 帮助企业在数字化升级中实现持续增长 LiveVideoSta
  • 构建领域驱动的Java应用

    引言 在现代软件开发中 设计和构建复杂的应用程序是一项充满挑战的任务 为了更好地满足业务需求和提供可维护的代码 软件开发者需要采用一些强大的工具和技术 领域驱动设计 Domain Driven Design 简称DDD 是一种优秀的方法 它
  • Codeforces 1210 D Konrad and Company Evaluation —— 暴力

    This way 题意 现在有n个人 第i个人的工资一开始是i 现在有一些人相互讨厌 然后如果第x个人和第y个人相互讨厌 并且x的工资比y高 那么x就会向y炫耀 x y z这三个人的组合是危险的 当x会向y炫耀 y会向z炫耀 每次修改一个人
  • 用户消费行为分析

    消费品用户行为分析 根据CDNOW的一段用户订单数据进行消费行为分析 CDNow是一家在线音乐零售平台 后被德国波泰尔斯曼娱乐集团公司出资收购 其资产总价值在最辉煌时曾超过10亿美元 下面主要通过分析CDNow网站的用户购买明细来分析该网站
  • Kafka拉取某一个时间段內的消息

    一般来说我们都使用Kafka来记录用户的操作记录以便后续分析 但是通常使用的时候需要按天来统计每天的去重用户数 点击量之类的 这个时候如果直接拉某个topic的数据的话 就需要判断每个消息的时间戳 还要兼顾把所有的Partition都拉完才
  • 考试系统服务器考试机,考试系统

    考试系统为 B S 结构 考试中心需具备 Win2000 服务器且安装 IIS5 0 的软件环境和一定规模的局域网硬件环境 视参加考试的学员人数决定 客户端须安装 IE5 0 或以上浏览器版本 本系统从技术上充分考虑了考试过程的完整性和安全
  • 为自己量身打造一个 Rust 项目模板/脚手架

    摘要 quick start rs quick start a rust project 是用于快速创建一个 rust 项目的脚手架 模板 标题 为自己量身打造一个 Rust 项目模板 脚手架 深度参考 Rust Code Quick St
  • 【运维工程师笔试试题】

    一 选择题 1 下列系统默认端口号错误的是 A SSH端口22 B mysql端口3306 C Telnet端口20 D Https端口443 2 linux系统中查看ip地址的命令是 A ipconig B ifconfig C icmp
  • java编写es搜索程序

    开发环境 java8 springboot pom文件导入依赖
  • 前端HTML网页之间传递数据多种办法,附代码案例

    先看效果 目前常用的有三种办法 session传递 cookie传递 url传递 url会暴露参数 其余的两个是保存在服务端和浏览器中 不会暴露在地址栏里面 使用url 下面依次介绍 一 session传递 index html h1 We
  • 微服务连接云端Sentinel 控制台失败及连接成功后出现链路空白问题(已解决)

    sentinel控制台服务器部署在云端 首先打算在本地启动微服务连接云上的sentinel 发现仅能注册进服务 却不能显示监控信息和链路信息 查询日志后发现 云上的sentinel只能从注册中心拿到微服务 但是还是没有真正的连上8179端口
  • CSS—— @keyframes 动画关键帧

    disc 动画名 可自定义 keyframes disc from transform rotate 0deg to transform rotate 360deg 说明 keyframes 1 from to 用于简单动画 只有起始和结束
  • 我是如何从不知道怎么写,到完成二十万字书稿的?

    一 去年过年的时候 父母从乡下来到我在洛阳的家 晚上陪他们看完新闻联播后 我忍不住激动的心情 特意把北航出版社给我签的书稿 Web全栈开发进阶之路 合同捧出来给他们看 并郑重其事地介绍了一番 我以为他们会大吃一惊 像孙权对吕蒙那样对我刮目相
  • 双层双向长短期记忆神经网络(bi-LSTM)的多输入时间序列回归预测——附代码

    目录 摘要 研究背景 滑动时间窗口的构建 双层双向长短期记忆神经网络构造 程序计算结果 本文Matlab代码分享 摘要 为了充分挖掘电力负荷与多维特征因素的非线性关系 提高负荷预测精度 提出了一种基于随机森林和双向长短期记忆 Bi LSTM
  • hp服务器显示完logo就黑屏,惠普电脑开机出现惠普标志后 便黑屏了是为什么

    惠普电脑开机出现惠普标志后黑屏的原因及解决办法 一 原因 1 内存条 显示器 显卡等硬件设备接触不良 2 电脑灰尘比较多使得散热不良致使CPU或显卡芯片温度过高而死机 3 恶意病毒入侵 破坏系统 4 系统文件损坏 二 解决办法 1 检查显示
  • 数据传输-零拷贝机制

    传统 IO 在开始谈零拷贝之前 首先要对传统的 IO 方式有一个概念 基于传统的 IO 方式 底层实际上通过调用read 和write 来实现 通过read 把数据从硬盘读取到内核缓冲区 再复制到用户缓冲区 然后再通过write 写入到so
  • Tensorflow新手通过PlayGround可视化初识神经网络

    北京 上海巡回站 NVIDIA DLI深度学习培训 2018年1月26 1月12日 NVIDIA 深度学习学院 带你快速进入火热的DL领域 阅读全文 gt