深度学习与神经网络

人工智能,机器学习,深度学习,神经网络,emmmm,傻傻分不清楚,这都啥呀,你知道吗?我不知道。你知道吗?我不知道。

来来来,接下来,整硬菜:

先解释一下这几个概念:

人工智能:

人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是新一轮科技革命和产业变革的重要驱动力量。

机器学习:一种实现人工智能的方法。

是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及
人工智能的各个领域,它主要使用归纳、综合而不是演绎。

深度学习:一种实现机器学习的技术。

是利用深度的神经网络,将模型处理得更为复杂,从而使模型对数据的理解更加深入,是机器学习中一种基于对数据进行表征学习的方法。其动机在于建立、模拟人脑进行
分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本。深度学习的实质,是通过构建具有很多隐层的机器学习模型和海量的训练数据,来学习更有
用的特征,从而最终提升分类或预测的准确性。

神经网络:一种机器学习的算法。

神经网络一般有输入层->隐藏层->输出层,一般来说隐藏层数量多于两层的神经网络就叫做深度神经网络,深度学习就是采用像深度神经网络这种深层架构的一种机器学习
方法。
那么多字,算了,懒得看了,客官,别走啊,有图的(坏笑)

什么是神经网络?

点成线,线成面(网)

生物神经网络的基本工作原理:

一个神经元的输入端有多个树突,主要是用来接收输入信息的。输入信息经过突触处理,将输入的信息累加,当处理后的输入信息大于某一个特定的阈值,就会把信息通过轴突传输出去,这时称神经元 被激活 。相反,当处理后的输入信息小于阈值时,神经元就处于抑制状态,它不会像其他神经元传递信息。或者传递很小的信息。
举个例子,你被蚊子叮的时候,可能压根就感觉不到,但是要是别人给你一个大逼兜,那你要不就是捂着脸嘤嘤嘤,要不就是直接跳起来跟他干了。

 与下图食用更加:

(人工)神经网络:

模拟生物神经网络的一种人工实现。

人工神经网络分为两个阶段:
1 :接收来自其他n个神经元传递过来的信号,这些输入信号通过与相应的权重进行加权求和传递给下个阶段。(预激活阶段)
2:把预激活的加权结果传递给激活函数

 a1~an:输入值

w1~wn:权重

SUM:加权求和

f:激活函数

t:输出

类比之后是不是就很好理解了 

我们把上述的步骤简化一下:

看不懂?那就看这个:

x1 ……xn:输入值, 是特征向量。特征向量代表的是变化的方向。或者说,是最能代表这个事物的特征的方向。
Wk1……Wkn:权重值, 就是特征值。有正有负,加强或抑制,同特征值一样。权重的绝对值大小,代表了输入信号对神经元的影响的大小。
bk:偏差
f :激活函数
Yk:输出 Yk = f U
U = Σ Wxi * Xi + bk
嗯?这仨有啥区别吗?貌似没有,确实没啥区别,凑字数的。
再凑个字数:
神经网络由相互联系的神经元形成,这些神经元具有权重和在网络训练期间根据错误来进行更新的偏差,目标是找到一个未知函数的近似值 。其原理是受我们大脑的生理结构 ——互相交叉相连的神经元启发。但与大脑中一个神经元可以连接一定距离内的任意神经元不同,人工神经网络具有离散的层、连接和数据传播的方向。
看个例子:一刀切

把猫咪和狗子分开,从图中很容易就发现,直接中间切一刀,两边就分开了。函数也很简单y=kx+b,一条直线呗。

问题来了!

如果我掏出这样的模型,那么阁下应该如何应对。

那就多层神经网络(多切几刀,手动狗头)

诶!!!它来了

多层神经网络
神经网络是由多个神经元组合而成,前一个神经元的结果作为后一个神经元的输入,依次组合而成。神经网络一般分为三层,第一层作为输入层,最后一层作为输出层,中间的全部是隐含层。
理论证明,任何多层网络可以用三层网络近似地表示。
一般凭经验来确定隐藏层到底应该有多少个节点,在测试的过程中也可以不断调整节点数以取得最佳效果。

前馈神经网络
人工神经网络模型主要考虑网络链接的拓扑结构、神经元特征、学习规则等。
其中,前馈神经网络也称为 多层感知机

激活函数
激活函数是神经网络设计的一个核心单元。
在神经网络中,把处于在活跃状态的神经元称为激活态,处于非活跃状态的神经元称为抑制态。激活函数赋予了神经元自我学习和适应的能力。
插个嘴:激活函数处于加权函数之后,输出之前
激活函数的作用是为了在神经网络中引入非线性的学习和处理能力。
常用的激活函数(满足 1 非线性 2 可微性 3 单调性)

所以怎么理解呢,改变他们的线性关系,这个与另一个特征结合起来就很好理解,归一化。

先看下几个激活函数的曲线图

sigmoid:

tanh:

 RELU:

可以看出,除了RELU之外,其他两个都被某种神秘力量掰弯了,嗯?掰弯了,哲学♂大扳手!!!

但其实RELU也被折了一下,他们都失去了一些宝贵的东西(我指的是线性),除了RELU,其他两种在归一化的特性显示也特别明显。

后面还会介绍其他激活函数,后期单独出一期各个激活函数的优缺点及比较。一键三连走起好吧。

张量tensor

什么是张量?张亮麻辣烫,哇,脆皮豆腐贼好吃(口水)

任何算法得以运行,都必须依靠特定的数据结构,而用于将各种数据统一封装并输入网络模型的数据结构叫tensor,也就是张量。张量在不同的情况下存有不同的形式。
张量一大特征是维度,一个0维张量就是一个常量。在Python中,一个张量的维度可以通过读取它的ndim属性来获取。(我们常用的数组就等价与一维张量,一个二维数组就是一个二维张量)
所谓n维张量,其实就是一维数组,数组中的每个元素都是n-1维张量。由此可见,3维张量其实就是一个一维数组,数组中的每个元素就是2维数组。
说直白点就是一种数据结构!!!
[
  [
    [1,2],
    [3,4]
  ],
  [
    [5,6],
    [7,8]
  ],
  [
    [9,10],
    [11,12]
  ]
]

 

看个例子,这个张量如何表示呢?(3,2,2),外层3个数组(三维),每个数组(维度)里有2个子数组(子维度),每个子数组(子维度)中有2个数据
[
  [
    [1,2],
    [3,4],
    [13,14]
  ],
  [
    [5,6],
    [7,8],
    [15,16]
  ],
  [
    [9,10],
    [11,12],
    [17,18]
  ]
]
这样就是(3,3,2)

如何设计神经网络

1、使用神经网络训练数据之前,必须确定神经网络的层数,以及每层单元的个数
2、特征向量在被传入输入层时通常要先标准化到0-1之间(为了加速学习过程)
3、离散型变量可以被编码成每一个输入单元对应一个特征值可能赋的值比如:特征值A可能取三个值(a0, a1, a2), 可以使用3个输入单元来代表A。
如果A=a0, 那么代表a0的单元值就取1, 其他取0;1,0,0
如果A=a1, 那么代表a1的单元值就取1,其他取0,以此类推 0,1,0
4、神经网络既可以用来做分类(classification)问题,也可以解决回归(regression)问题
(1)对于分类问题,如果是2类,可以用一个输出单元表示(0和1分别代表2类);如果多于2类,则每一个类别用一个输出单元表示 1 0 0 0 1 0
(2)没有明确的规则来设计最好有多少个隐藏层,可以根据实验测试和误差以及精准度来实验并改进。

对隐含层的感性认识

举个栗子:你喜不喜欢我?你只需要回答喜欢还是不喜欢,而不是扯其他乱七八糟的东西。

那么所有的节点都应该是这样的,我希望的是得到一个肯定的回答,而不是模棱两可的回答。

我希望所有的节点都是钢铁直男。

什么是深度学习(Deep Learning)?

The biggest title in this blog!!!

给你点color see see

 

深度神经网络 & 深度学习
传统的神经网络发展到了多隐藏层的情况,
具有多个隐藏层的神经网络被称为深度神经网络,基于深度神经网络的机器学习研究称之为深度学习。
如果需要细化和区分区别,那么,深度神经网络可以理解为对传统多层网络进行了结构、方法等方面的优化。

 

写在最后的:
即便我的世界失去了你
可是生活仍在继续
期待在下一个路口遇见下一个你

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

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

相关文章

WAIC2023:图像内容安全黑科技助力可信AI发展

目录 0 写在前面1 AI图像篡改检测2 生成式图像鉴别2.1 主干特征提取通道2.2 注意力模块2.3 纹理增强模块 3 OCR对抗攻击4 助力可信AI向善发展总结 0 写在前面 2023世界人工智能大会(WAIC)已圆满结束,恰逢全球大模型和生成式人工智能蓬勃兴起之时,今年参…

使用事件侦听器和 MATLAB GUI 查看 Simulink 信号研究

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

【JavaEE】博客系统前后端交互

目录 一、准备工作 二、数据库的表设计 三、封装JDBC数据库操作 1、创建数据表对应的实体类 2、封装增删改查操作 四、前后端交互逻辑的实现 1、博客列表页 1.1、展示博客列表 1.2、博客详情页 1.3、登录页面 1.4、强制要求用户登录,检查用户的登录状态 …

RabbitMQ:概念和安装,简单模式,工作,发布确认,交换机,死信队列,延迟队列,发布确认高级,其它知识,集群

1. 消息队列 1.0 课程介绍 1.1.MQ 的相关概念 1.1.1.什么是MQ MQ(message queue:消息队列),从字面意思上看,本质是个队列,FIFO 先入先出,只不过队列中存放的内容是message 而已,还是一种跨进程的通信机制…

【云原生】K8S二进制搭建一

目录 一、环境部署1.1操作系统初始化 二、部署etcd集群2.1 准备签发证书环境在 master01 节点上操作在 node01与02 节点上操作 三、部署docker引擎四、部署 Master 组件4.1在 master01 节点上操 五、部署Worker Node组件 一、环境部署 集群IP组件k8s集群master01192.168.243.1…

牛客网Verilog刷题——VL53

牛客网Verilog刷题——VL53 题目答案 题目 设计一个单端口RAM,它有: 写接口,读接口,地址接口,时钟接口和复位;存储宽度是4位,深度128。注意rst为低电平复位。模块的接口示意图如下。 输入输出描…

基于深度学习的高精度课堂人脸检测系统(PyTorch+Pyside6+YOLOv5模型)

摘要:基于深度学习的高精度课堂人脸检测系统可用于日常生活中或野外来检测与定位课堂人脸目标,利用深度学习算法可实现图片、视频、摄像头等方式的课堂人脸目标检测识别,另外支持结果可视化与图片或视频检测结果的导出。本系统采用YOLOv5目标…

如何保证接口测试的覆盖率?

写在前面_一定要先谈下接口在测试领域的地位: 在当前企业实际测试技能应用中,功能测试和接口测试应用最广泛。但相比功能测试,接口测试缺口却非常大。 且接口测试在测试领域地位非常高,是软件测试工程师初级和中级分界线。所以测…

生成对抗网络DCGAN学习

在AI内容生成领域,有三种常见的AI模型技术:GAN、VAE、Diffusion。其中,Diffusion是较新的技术,相关资料较为稀缺。VAE通常更多用于压缩任务,而GAN由于其问世较早,相关的开源项目和科普文章也更加全面&#…

海康摄像头开发笔记(一):连接防爆摄像头、配置摄像头网段、设置rtsp码流、播放rtsp流、获取rtsp流、调优rtsp流播放延迟以及录像存储

文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/131679108 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结…

C++如何用OpenCV中实现图像的边缘检测和轮廓提取?

最近有个项目需要做细孔定位和孔距测量,需要做边缘检测和轮廓提取,先看初步效果图: 主要实现代码: int MainWindow::Test() {// 2.9 单个像素长度um 5倍double dbUnit 2.9/(1000*5);// 定义显示窗口namedWindow("src"…

【使用机器学习和深度学习对城市声音进行分类】基于两种技术(ML和DL)对音频数据(城市声音)进行分类(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

【ASP.NET MVC】生成页面(6)

本应该继续数据库访问的问题进行探讨,前文确实比较LOW。但本人认为:初学者需要解决的是快速了解知识路线的问题,所谓“生存问题”,所以,干脆把流程先走完。 一、页面生成 下面这张图在前面已经介绍过: 前…

网工内推 | 云计算工程师专场,CCNP/HCIP认证优先

01 弧聚科技 招聘岗位:网络工程师(云计算方向) 职责描述: 1、作为H3C初级云计算交付工程资源培养对象,需配合完成相关华三产品及服务规范培训。 2、培训赋能后,安排到H3C云项目交付中进行项目交付及驻场支…

【从零开始学习JAVA | 第三十七篇】初识多线程

目录 前言: ​编辑 引入: 多线程: 什么是多线程: 多线程的意义: 多线程的应用场景: 总结: 前言: 本章节我们将开始学习多线程,多线程是一个很重要的知识点&#xff…

【Spring Boot】请求参数传json数组,后端采用(pojo)新增案例(103)

请求参数传json数组,后端采用(pojo)接收的前提条件: 1.pom.xml文件加入坐标依赖:jackson-databind 2.Spring Boot 的启动类加注解:EnableWebMvc 3.Spring Boot 的Controller接受参数采用:Reque…

openCV C++环境配置

文章目录 一、openCV 安装二、新建项目三、配置环境变量四、测试使用 编译器:vs2017 OpenCV:4.5.4 一、openCV 安装 将openCV安装到一个路径下,我安装到了D盘根目录下 二、新建项目 在vs2017新建控制台空项目,打开项目属性 在VC目录 -> 包含目录下…

【Spring Boot】请求参数传json对象,后端采用(map)CRUD案例(101)

请求参数传json对象,后端采用(map)接收的前提条件: 1.Spring Boot 的Controller接受参数采用:RequestBody 2.需要一个Json工具类,将json数据转成Map; 工具类:Json转Map import com…

面试热题(接雨水问题)

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 我们看到题的第一步,永远是对入参进行判断 public int trap(int[] height) {if (height null) {return 0;}...} 但是我们想想看,接…

Springboot -- 按照模板生成docx、pdf文件,docx转pdf格式

使用 poi-tl 根据模板生成 word 文件。 使用 xdocreport 将 docx 文件转换为 pdf 文件。 xdocreport 也支持根据模板导出 word ,但是 poi-tl 的功能更齐全,操作更简单,文档清晰。 poi-tl 、xdocreport 内部均依赖了 poi ,要注意两…