翻译: 可视化深度学习神经网络一

在这里插入图片描述

这是一个随意书写的28*28像素、分辨率很低的数字 3 但你的大脑一看见就能轻松辨识出来 ,我想要你好好欣赏这点 人脑能够毫无障碍地辨识是非常厉害的
在这里插入图片描述

我的意思是,这个、这个、还有这个,都能被识别为 3 即使前后图像的图形组成有很大差异 当你看到这张 3 在眼中所激发的感光细胞 跟当你看到这张 3 所激发的感光细胞是非常不同的 但在你惊人聪明的视觉皮层的处理下 能将这两个3视为同一个概念,
在这里插入图片描述

同时将其他图像视为不同的概念
在这里插入图片描述

要是我要你:「嘿! 坐下来帮我写个程序, 」「输入像这个 28*28 像素的数字图像」 「接着输出该程序认为的 0 到 10 之间的一个数字 ,必须跟你认为的一样。」 这个任务将不再是家常便饭,而变得吓死人的困难 除非你是山顶洞人 我想不用再强调机器学习和神经网络之间,对未来发展的关联性和重要性 我现在要向你展示神经网络究竟是什么 假设你没有相关背景知识
在这里插入图片描述

我会可视化神经网络的运作 并且把它当作一门数学,不仅仅是当下流行词语

在这里插入图片描述

我希望你将能理解为什么神经网络是长这个样子 当你看到或听到机器借着神经网络来「学习」时 是了解其意涵的 这支视频将解释神经网络的结构structure 而下一部影片将解释机器学习learning。
在这里插入图片描述

我们要做的是打造一个可以辨识手写数字的神经网络 这是介绍这种主题很典型的范例 我乐于保持这种模式,因为在看完两支影片后 我会给你一些很好的网站,你可以在那里学到很多,并且下载代码 在你的电脑里好好研究 神经网络发展成很多很多不同类型 而且近年来对这些的研究有爆炸性的趋势
在这里插入图片描述

但这两支入门影片只会带你来认识,最简单的一种神经网络:「多层感知机 multilayer perceptron」(MLP) 最基本的样子 这是必要的入门知识 对于将来要理解现在任何一种强大的神经网络 而且相信我,今天的主题已经够复杂了,足以让你脑袋打结 即使是这么简单的神经网络也可以经由学习来分辨手写数字 这对电脑来说是非常酷的一件事 而且与此同时你也将看到神经网络不尽人意的地方
在这里插入图片描述

神经网络一如其名,是启发自生物的大脑神经结构 让我们来剖析它吧

何谓神经元,又是什么机制让它们连在一起的?
在这里插入图片描述

现在,当我说「神经元」,我要你联想到它是乘载一个数字的容器 基本是介于0和1之间的数字,但实际上不止于此

在这里插入图片描述

例如:神经网络以输入图像的每个像素,对应到每个神经元作为输入 也就是说输入层总共有784个神经元,每个都有乘载数字 ,每个数字代表了对应像素的灰阶值灰阶值0即黑色,1即白色这些在神经元中的数字称为「激活值」 在此你可能注意到 每当神经元激活值越高,该神经元就越亮 于是全部的 784 个神经元,组成了神经网络的第一层

在这里插入图片描述

我们现在跳到最后一层,这层有10个神经元,各自表示0到9的数字同样在这边的神经元也各自有着介于0到1的激励值表示对于给定的图像,神经网络对于实际数字的判断结果在输入层和输出层之间,有数个「隐藏层」 现在在本入门影片里 对于神经网络是如何进行判断的,我们只能先把它看做是巨大的问号 本影片展示的视觉化神经网络,我设计了两个隐层, 个别搭载16个神经元 这只是摆好看的设定 老实说之所以选择两个隐层,是基于可视化让你看得清楚的考量,待会解释
在这里插入图片描述

而安排 16 个神经元,只是为了符合版面,也是为了让你看得清楚 在实际应用上,神经网络的结构经实验不断调整可以变得非常巨大且特殊 神经网络操作一层激励值的方式,会决定下一层的激励值 这正是神经网络的核心价值,不同以往的数据处理技术,现在发展成只要输入 激励值从上一层传到下一层,最后输出足够正确的结果 神经网络的本质就是模仿生物的大脑, 就像一丛脑细胞被激发 引发其他神经细胞的串联反应 我现在展示的 这个神经网络已经训练完成了,可以准确识别图像中的数字
在这里插入图片描述

让我来解释「传递激励值」这点 意思是:当你输入一张 28x28 像素的图像,它将点亮 所有 784 个神经元 每个都比照对应像素的灰阶值,来决定自己的激励值 决定的数值分布状态会影响下一层被激活的神经元的分布 又会导致下一层不同的分布 最后抵达输出层,输出层的神经元也会有特定的分布 而最亮的那个就是神经网络所认为最有可能答对的答案 但在一脚踏进数学之前, 要先知道上层如何影响下层,而且机器学习为什么会有用
在这里插入图片描述

为什么我们认为层状结构会像这样聪明地运作是非常合理的? 我们在期待什么呢? 我们最想要神经网络的隐藏层怎么运作呢? 在你或我在辨识图中的数字时我们会把各种笔画拼凑在一起。

在这里插入图片描述

一个 9 字,上面有圆圈,而在右边有一条直线 一个 8 字,上面也有一个圆圈但在下面与另一个圆圈相连 一个 4 基本上可以拆解成就像那些特定的笔画
在这里插入图片描述

一个理想的情况中我们会希望第二层的每个神经元 能识别这些笔画的其中之一 每次你输入一个有顶部有个圆圈的图像如 9 或 8 时 隐层第二层的某些特定神经元的激励值就会接近 1 而我要的并不是单单适用这种圆圈, 而是更广泛的各种圆圈皆适用 如此,在隐层第二层到输出层的神经元
在这里插入图片描述

只需要学习对应于数字的笔画的组合 当然这又丢出了一道难题 因为你怎么让那些神经元知道那些数字该对应到那些特定的笔画? 而我甚至还没开始讲上一层怎么影响下一层,但是再听我解释一下这里 辨识一个圆圈的问题也可以分解成辨识一些较小零件的问题 一个合理的方法是认出组成它的各式各样的边 同样的道理,你在数字1,4或者7中所看到的一条长线真的就是好几小条的短线,根据特定笔画顺序,组合成的长线 所以我们期望在这网络第二层

在这里插入图片描述

对应着各式各样的一些小边 也许出现一个像这样的一个图像就点亮 所有大约有 8 到 10 种有关的特定神经元 它接着点亮后上方的圆圈和一根垂直的长线以及点亮和一条线相联的神经元 最后点亮数字 9 的神经元 不管这个是不是我们最终的网络实际上的实施是另一个问题 这个我们在知道怎样了训练网络之后我在回过来讲 但至少我们可能有点希望 像是一种以这样分层结构为目标的
在这里插入图片描述

你可以进一步想象怎样能来检测像这样的边和式样对其他的图像识别功能真是有用的

在这里插入图片描述

参考

https://youtu.be/aircAruvnKk?si=vvJtlByXpXaDHj7y

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/50620.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

懂个锤子Vue 项目工程化扩展:

Vue项目工程化扩展📶: 前言:当然既然学习框架的了,HTMLCSSJS三件套必须的就不说了: JavaScript 快速入门 紧跟前文,目标学习Vue2.0——3.0: 懂个锤子Vue、WebPack5.0、WebPack高级进阶 涉及的…

SpringBoot 禁用RabbitMQ自启动

1.背景 在实际开发中,项目中使用了mq,但是在测试的时候用不到mq,或者测试环境的mq挂了, 希望能正常启动项目 2.步骤 这很简单在配置文件中增加一个配置就可以了 spring:autoconfigure:exclude: org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration 表示启…

WEB前端开发中如何实现大文件上传?

大文件上传是个非常普遍的场景,在面试中也会经常被问到,大文件上传的实现思路和流程。在日常开发中,无论是云存储、视频分享平台还是企业级应用,大文件上传都是用户与服务器之间交互的重要环节。随着现代网络应用的日益复杂化&…

康师傅JAVA核心内容

链接:康师傅JAVA核心内容 (qq.com)

黑龙江等保测评如何做到既全面又高效?

在黑龙江省进行等保测评,必须在全面和高效之间寻求一个平衡点,以保证网络的安全性和可靠性。黑龙江等保测评怎样才能在二者之间发现黄金交汇点?下面,我们来揭开谜底。 精准定位,明确测评范围 首先,一个综…

Docker与LXC差异以及相关命令

容器:Docker与LXC差异以及相关命令 ​ LXC与Docker对比,LXC只实现了进程沙盒化,不支持在不同的机器上进行移植;Docker将应用的所有配置和环境进行了抽象,打包到一个容器中,此容器可以在任何安装了docker的…

Java-Swing开发-003布局

文章目录 布局管理器常用布局BorderLayoutFlowLayoutGridLayoutGridBagLayout 布局管理器 Swing里负责布局的玩意,方便调整组件位置,一般是container里设置 1.JFrame默认布局为BorderLayout 2.JPanle默认布局为FlowLayout 常用布局 BorderLayout 东…

【DEVOPS】gitChecker快速使用指南

0. 目录 1. 前言2. gitChecker简介3. 快速应用4. 相关 1. 前言 时过境迁,原本以为不需要文档说明的操作,四年后的现在因为GitLab服务器的掉电损坏,被迫面对从零开始的一切,才发现实际执行时的一步一个坑。 痛定思痛之下&#xf…

jQuery常用选择器(入门级)代码演示

1.基本选择器&#xff1a; // 选择id为"myElement"的元素 $("#myElement");// 选择class为"myClass"的所有元素 $(".myClass");// 选择所有<p>标签 $("p");2.属性选择器&#xff1a; // 选择带有name属性的input元素…

vscode搭建rust开发环境

由于rustrover不是免费的&#xff0c;此处教学搭建一套基于vscode的rust开发环境&#xff0c;可运行&#xff0c;可调式 1.下载vscode1.91.1 Download Visual Studio Code - Mac, Linux, Windows 2.下载插件 打开网站下载插件 rust-analyzer-0.4.2049、vscode-lldb-1.10.0、…

c#中的正则表达式和日期的使用(超全)

在 C# 中&#xff0c;正则表达式&#xff08;Regular Expressions&#xff09;是一种强大的文本处理工具&#xff0c;用于执行各种字符串搜索、替换和验证任务。以下是一些常用的正则表达式示例及其用途&#xff1a; 1. 邮箱地址验证 ​ string emailPattern "^[^\s][^…

redis 缓存中间件 (缓存数据库)

redis的简介 nginx web服务器 php 转发动态请求 tomcat web页面 &#xff0c;也可以转发动态请求 springboot 自带tomcat 所有的数据库都不支持高并发&#xff0c;一旦访问量激增&#xff0c;数据库很快就会崩溃。 redis 也是一个数据库&#xff0c;不单单是一个缓存工具…

docker 配置安装宝塔面板

宝塔镜像 https://hub.docker.com/r/btpanel/baota 配置宝塔 第一步&#xff1a;创建一个名为 bt-data 的目录&#xff0c;此目录将存储宝塔数据。 $ mkdir bt-data $ chmod -R 755 bt-data 第二步&#xff1a;在 bt-data 目录中创建一个名为 docker-compose.yml 的文件&#x…

IDEA项目的依赖(pom.xml文件)导入问题及解决

前言&#xff1a;该文章为转载&#xff0c;没有仔细的看 IDEA新建项目和pom.xml文件被修改时&#xff0c;右下角都会出现 Maven projects need to be imported&#xff08;项目需要导入依赖&#xff09; 如下&#xff0c;点击 Import Changes导入后&#xff0c;有时会一直处于…

数据库-存储过程

1、概念 存储过程&#xff08;Stored Procedure&#xff09;是在大型数据库系统中&#xff0c;一组为了完成特定功能的SQL 语句集&#xff0c;存储在数据库中&#xff0c;经过第一次编译后&#xff0c;再次调用不需要重复编译&#xff0c;用户通过指定存储过程的名字并给出参数…

【Android面试八股文】荣耀面试算法题:输出所有的水仙花数

文章目录 一、水仙花数的定义二、算法实现 一、水仙花数的定义 要输出所有的水仙花数&#xff0c;我们需要先了解什么是水仙花数。 水仙花数&#xff08;Narcissistic number&#xff09;&#xff0c;也称为自恋数、自幂数、阿姆斯特朗数&#xff0c;是指一个 n 位的正整数&a…

NAS、SAN 与 DAS 的比较与应用场景

文章目录 1. NAS&#xff08;网络附加存储&#xff09;定义特点实现成本&#xff1a;适用场景 2. SAN&#xff08;存储区域网络&#xff09;定义特点实现成本&#xff1a;适用场景 3. DAS&#xff08;直接附加存储&#xff09;定义特点实现成本&#xff1a;适用场景 区别总结结…

Redis学习[1] ——基本概念和数据类型

Redis学习[1] ——基本概念和数据类型 一、Redis基础概念 1.1 Redis是什么&#xff0c;有什么特点&#xff1f; Redis是一个基于**内存的数据库&#xff0c;因此读写速度非常快**&#xff0c;常用作缓存、消息队列、分布式锁和键值存储数据库。支持多种数据结构&#xff1a;…

Java 内推 | 教育行业缺口来了,研发,运维,产品,教研,职能,营销... 别错过

Java 内推 | 教育行业缺口来了&#xff0c;研发&#xff0c;运维&#xff0c;产品&#xff0c;教研,职能&#xff0c;营销… 别错过 岗位职责&#xff1a; 1、根据公司战略及业务规划&#xff0c;参与部门业务架构分析与设计&#xff0c;包含规划立足当前、面向未来的应用架构…