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. Jakarta雅加达项目简介

    Jakarta项目是在Apache软件基金会营运的公开源代码软件开发项目之一.开发着面向编程语言Java的程序库,框架等. Jakarta是Apache组织下的一套Java解决方案的开源软件的名称,它 ...

  2. 配置php扩展memcache

    配置php扩展memcache 环境说明: 系统版本    CentOS 6.9 x86_64         软件版本    nginx-1.12.2        php-5.5.38       ...

  3. 20160208.CCPP体系具体解释(0018天)

    程序片段(01):main.c 内容概要:PointWithOutInit #include <stdio.h> #include <stdlib.h> //01.野指针具体解 ...

  4. Elasticsearch教程(七) elasticsearch Insert 插入数据(Java)

    首先我不赞成再采用一些中间件(jar包)来解决和 Elasticsearch  之间的交互,比如 Spring-data-elasticsearch.jar 系列一样,用就得依赖它.而 Elastic ...

  5. PS如何制作超酷3D字效果

    效果图.jpg (24.94 KB) 2008-4-4 21:46 1.打开PS 执行文件-新建-新建550X400像素空白文档 1.jpg (36.69 KB) 2008-4-4 21:46 2.输 ...

  6. 自己如何正确获取MYSQL的ADO连接字符串

    1.下载安装MYSQL的ODBC数据库驱动程序(mysql-connector-odbc-5.3.4-win32.msi或者mysql-connector-odbc-5.3.4-winx64.msi) ...

  7. react-native 常见操作 及 git 补充

    一. react-native 常见操作 1.创建项目 react-native init Market(项目名称,首字母大写) 2.安装常用插件 npm install react-native-t ...

  8. 【Excle数据透视表】如何利用图标集将销售数据划分为五个等级

    我们如何用图标集来直观看出订单情况呢? 现在有数据如下: 步骤 选中"订单列"→开始→条件格式→图标集→等级→ 此时,在每个数字前面都出现了一个等级符号了 查看预置五等级图标集的规 ...

  9. Oracle 重置序列

    Oracle将自增sequence重置为初始值1时,若是删除再重建,那么依赖它的函数和存储过程将失效,需要重新编译. 这里利用相反的过程,利用负值步长参数,将递增值改为(sequence.NEXTVA ...

  10. Android 图片查看器

    1 http://blog.csdn.net/wang8512945/article/details/8075413 2 http://blog.csdn.net/lcore/article/deta ...