体验DNN演示平台《A Neural Network Playground》(一)
0 本次博客内容简介
本次博客标(一),是因为我自知有些地方还是不理解。本篇博客仅暂时记录第一次玩 A Neural Network Playground的体验,如果后面有了进一步体会,会更新新的内容的。
地址是: A Neural Network Playground
现在说一下目前我个人体验。
1 我已经了解的地方
(1)线的粗细代表相应的神经元的权重。线越粗,代表连线左边的神经元的地位越重要,它输出的激活值将占据连线右边神经元接收的总激活值中的绝大部分。
(2)每一个神经元上面的图案代表该神经元输出了什么,这相当于单个神经元输出激活值可视化吧。当这些被输出的不同激活值按照不同比重被一层一层叠加起来,最终在output层将输出我们想要的结果。
(3)右上角的函数曲线分别绘出了训练集和测试集在当前网络下的损失loss,可以通过观察这幅图来判断到底误差函数能不能收敛。
(4)对于分类实验,数据集有四种(如左上角);对于回归实验,数据集有两种(图中未画出)。想切换“分类”和“回归”模式,见上方“Problem Type”。
(5)对于激活函数,有四种可供选择,可以是tanh,也可以是我们所熟悉的sigmoid。切换见上方“Activation”。
(6)神经网络的层数、每一层的神经元个数都是可以任意变更的,可以随便玩。
(7)在左侧“Ratio of training to test data”可以调训练集和测试集的比重,在右侧结果输出中,默认显示的是训练集的点,如果我们想查看测试集的点是否正确落在分类后的区域中,在下方把“Show Test Data”的勾打上,这样测试集的点就出来了,如图,这里我给出的是“训练集:测试集=1:9”的情况,有黑色边框的这些点都是测试集的点,有白色边框的点则是训练集的点:
2 我还不了解的地方
(1)最大的问题在于input中那几个神经元的选择。
通过实验可以发现,如果选择其中一个或两个,则很可能最终导致误差函数不收敛;如果把七个input层的神经元全部选中,则最终的结果95%能收敛。
但是这些输入层的神经元代表什么呢?为什么输入层会出现sinx,x2这些函数呢?难不成意思是对于输入的数据首先要代入sinx和x2,然后才输入网络吗?这样做有什么好处?
(2)在本playground中,权值w用线的粗细已经说明,不过偏置b没有提及。
是否意味着没有偏置,或者偏置在里面不再重要?
(3)不明白神经网络如何用于回归(regression),这个也是接下来我应该重点研究的内容。
(4)不明白regularization是什么,是否是大家口中的“正则化”?正则化具体又该怎么用呢?
3 总结
该平台可以随意点击随意调,相当于“玩神经网络”,给人以最直观的“随着迭代次数(iteration)增加,误差(loss)逐步减小,分类结果逐渐浮现”的体验。
2016-05-08
by 悠望南山
体验DNN演示平台《A Neural Network Playground》(一)的更多相关文章
- 论文翻译:2020_RESIDUAL ACOUSTIC ECHO SUPPRESSION BASED ON EFFICIENT MULTI-TASK CONVOLUTIONAL NEURAL NETWORK
论文翻译:https://arxiv.53yu.com/abs/2009.13931 基于高效多任务卷积神经网络的残余回声抑制 摘要 在语音通信系统中,回声会降低用户体验,需要对其进行彻底抑制.提出了 ...
- 《Neural Network and Deep Learning》_chapter4
<Neural Network and Deep Learning>_chapter4: A visual proof that neural nets can compute any f ...
- How to implement a neural network
神经网络的实践笔记 link: http://peterroelants.github.io/posts/neural_network_implementation_part01/ 1. 生成训练数据 ...
- 【论文阅读】Sequence to Sequence Learning with Neural Network
Sequence to Sequence Learning with NN <基于神经网络的序列到序列学习>原文google scholar下载. @author: Ilya Sutske ...
- 通过Visualizing Representations来理解Deep Learning、Neural network、以及输入样本自身的高维空间结构
catalogue . 引言 . Neural Networks Transform Space - 神经网络内部的空间结构 . Understand the data itself by visua ...
- 计算机视觉学习记录 - Implementing a Neural Network from Scratch - An Introduction
0 - 学习目标 我们将实现一个简单的3层神经网络,我们不会仔细推到所需要的数学公式,但我们会给出我们这样做的直观解释.注意,此次代码并不能达到非常好的效果,可以自己进一步调整或者完成课后练习来进行改 ...
- 【论文笔记】Malware Detection with Deep Neural Network Using Process Behavior
[论文笔记]Malware Detection with Deep Neural Network Using Process Behavior 论文基本信息 会议: IEEE(2016 IEEE 40 ...
- Sony深度学习框架 - Neural Network Console - 教程(1)- 原来深度学习可以如此简单
“什么情况!?居然不是黑色背景+白色文字的命令行.对,今天要介绍的是一个拥有白嫩的用户界面的深度学习框架.” 人工智能.神经网络.深度学习,这些概念近年已经涌入每个人的生活中,我想很多人早就按捺不住想 ...
- [Python Debug]Kernel Crash While Running Neural Network with Keras|Jupyter Notebook运行Keras服务器宕机原因及解决方法
最近做Machine Learning作业,要在Jupyter Notebook上用Keras搭建Neural Network.结果连最简单的一层神经网络都运行不了,更奇怪的是我先用iris数据集跑了 ...
随机推荐
- 浅谈C#委托和事件(转载)
委托给了C#操作函数的灵活性,我们可使用委托像操作变量一样来操作函数,其实这个功能并不是C#的首创,早在C++时代就有函数指针这一说法,而在我看来委托就是C#的函数指针,首先先简要的介绍一下委托的基本 ...
- curl 执行post请求
#curl -l -H "Content-type: application/json;charset=UTF-8" -H "X-Forwarded-For: 20.20 ...
- 转: Servlet 工作原理解析 from ibm
评点: 比较深入的讲了servlet容器, 作者许令波 (这个文章好像来自他自己的书中java web...) https://www.ibm.com/developerworks/cn/java/j ...
- JAVA Eclipse Incorrect line ending found carriage return 怎么办
点击项目-清理即可
- RFS 理解
1.背景 网卡接收一个数据包的情况下,会经过三个阶段: - 网卡产生硬件中断通知CPU有包到达 - 通过软中断处理此数据包 - 在用户态程序处理此数据包 在SMP体系下,这三个阶段有可能在3个 ...
- Android学习(二十)Notification通知栏
一.通知栏的内容 1.图标 2.标题 3.内容 4.时间 5.点击后的相应 二.如何实现通知栏 1.获取NotificationManager. 2.显示通知栏:notify(id,notificat ...
- vue 生命周期组件渲染
1.created 实例已完成以下的配置:数据观测 (data observer),属性和方法的运算,watch/event 事件回调.然而,挂载阶段还没开始,$el 属性目前不可见. 2.mount ...
- 【Java】Java_18 方法
方法(Method) 设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的集合. 我们设计方法的时候,最好保持方法的原子性,就是一个方法只完成1个功能,这样利于我们后期的扩展 方法的要点 ...
- Nginx 限制单个IP的并发连接数及对每个连接速度(限速)
使用Nginx限制单个IP的并发连接数能够减少一些采集程序或者DDOS的攻击. 再lnmp的nginx配置中已经添加了部分代码,但是是注释掉的,可以编辑/usr/local/nginx/conf/ng ...
- Android下Sqlite的使用(9.7)
1 http://blog.csdn.net/liuhe688/article/details/6715983 2 http://www.eoeandroid.com/thread-170715-1- ...