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》(一)的更多相关文章

  1. 论文翻译:2020_RESIDUAL ACOUSTIC ECHO SUPPRESSION BASED ON EFFICIENT MULTI-TASK CONVOLUTIONAL NEURAL NETWORK

    论文翻译:https://arxiv.53yu.com/abs/2009.13931 基于高效多任务卷积神经网络的残余回声抑制 摘要 在语音通信系统中,回声会降低用户体验,需要对其进行彻底抑制.提出了 ...

  2. 《Neural Network and Deep Learning》_chapter4

    <Neural Network and Deep Learning>_chapter4: A visual proof that neural nets can compute any f ...

  3. How to implement a neural network

    神经网络的实践笔记 link: http://peterroelants.github.io/posts/neural_network_implementation_part01/ 1. 生成训练数据 ...

  4. 【论文阅读】Sequence to Sequence Learning with Neural Network

    Sequence to Sequence Learning with NN <基于神经网络的序列到序列学习>原文google scholar下载. @author: Ilya Sutske ...

  5. 通过Visualizing Representations来理解Deep Learning、Neural network、以及输入样本自身的高维空间结构

    catalogue . 引言 . Neural Networks Transform Space - 神经网络内部的空间结构 . Understand the data itself by visua ...

  6. 计算机视觉学习记录 - Implementing a Neural Network from Scratch - An Introduction

    0 - 学习目标 我们将实现一个简单的3层神经网络,我们不会仔细推到所需要的数学公式,但我们会给出我们这样做的直观解释.注意,此次代码并不能达到非常好的效果,可以自己进一步调整或者完成课后练习来进行改 ...

  7. 【论文笔记】Malware Detection with Deep Neural Network Using Process Behavior

    [论文笔记]Malware Detection with Deep Neural Network Using Process Behavior 论文基本信息 会议: IEEE(2016 IEEE 40 ...

  8. Sony深度学习框架 - Neural Network Console - 教程(1)- 原来深度学习可以如此简单

    “什么情况!?居然不是黑色背景+白色文字的命令行.对,今天要介绍的是一个拥有白嫩的用户界面的深度学习框架.” 人工智能.神经网络.深度学习,这些概念近年已经涌入每个人的生活中,我想很多人早就按捺不住想 ...

  9. [Python Debug]Kernel Crash While Running Neural Network with Keras|Jupyter Notebook运行Keras服务器宕机原因及解决方法

    最近做Machine Learning作业,要在Jupyter Notebook上用Keras搭建Neural Network.结果连最简单的一层神经网络都运行不了,更奇怪的是我先用iris数据集跑了 ...

随机推荐

  1. 关于iframe的高度自适应问题(js)

    function SetCwinHeight() { var cwin=document.getElementById("cwin"); if (document.getEleme ...

  2. JS与原生OC/Swift相互调用总结

    代码地址如下:http://www.demodashi.com/demo/12754.html JS-OC-Swift JS和OC/Swift相互调用,主要总结了JS和OC交互的三种方式 1.使用UI ...

  3. 有道词典for mac不能取词解决方案

    在mac上装了有道词典,发现在Chrome上不能取词,网上也没有搜到合适的解决方案,后来发现解决这个问题很简单,打开有道词典,点击设置, 再点击软件更新,就会发现有chrome取词插件,安装就OK了. ...

  4. BAT都来参加的 DevOps Master 培训

    原文:http://www.sohu.com/a/128425731_262549 自高效运维社区开设 DevOps Master 认证培训以来,已经总共有120多人拿到证书,其中在今年春节后,有68 ...

  5. requests 模块入门玩法和高级玩法

    1.安装 pip install requests 2. http://docs.python-requests.org/zh_CN/latest/user/quickstart.html http: ...

  6. android activity声明周期学习笔记

    android生命周期图: Activity继承了ApplicationContext: 1:初次加载activity时顺序执行:onCreate()-->onStart()-->onRe ...

  7. linux bash shell run ros launch file and multi_node

    #!/bin/bash #source /opt/ros/melodic/setup.bash #source /home/pi/catkin_ws/devel/setup.bash #ROS_PAC ...

  8. php序列化&反序列化坑

    一: 在php中如果我们统一编码是没有什么问题了,但是很多朋友会发现一个问题就是utf8和gbk编码中返回的值会有所区别: php 在utf8和gbk编码下使用serialize和unserializ ...

  9. Linux系统下如何监测磁盘的使用空间

    不管是我们在安装软件还是监测软件的使用性能,我们都要随时掌握系统磁盘的使用情况. 使用df命令 df df命令用于显示磁盘分区上的可使用的磁盘空间.默认显示单位为KB.可以利用该命令来获取硬盘被占用了 ...

  10. java学习笔记——java中对象的创建,初始化,引用的解析

    如果有一个A类. 1.例如以下表达式: A  a1 = new A(); 那么A是类,a1是引用.new A()是对象.仅仅是a1这个引用指向了new A()这个对象. 2.又如: A  a2; A代 ...