【深度学习】(1)--神经网络

文章目录

  • 深度学习
  • 神经网络
    • 1. 感知器
    • 2. 多层感知器
      • 偏置
    • 3. 神经网络的构造
    • 4. 模型训练
      • 损失函数
  • 总结

深度学习

深度学习(DL, Deep Learning)是机器学习(ML, Machine Learning)领域中一个新的研究方向。

在这里插入图片描述

从上方的内容包含结果,我们可以知道,在学习深度学习之前,我们还需要了解一下什么是神经网络。

神经网络

神经网络,我们可以将它类比为人类的神经元,由外界传递信息,产生神经冲动,传递电信号,做出行为的过程。

在这里插入图片描述

这是生物学上的体现,那么,在神经网络中是如何体现的呢?
在这里插入图片描述

由外界传入数据,然后通过“路径”抵达神经元,在每一条的“路径”上会有不同的w参数,与传入的数据进行计算。从而影响接收值:

在这里插入图片描述

在推导式中,每条“路径”上的信息传入神经元,然后对他们进行累加求和,接着经过特定的输出函数sigmoid函数输入,对结果进行分类。

神经网络的本质:通过参数与激活函数来拟合特征与目标之间的真实函数关系。但在一个神经网络的程序中,不需要神经元和线,本质上是矩阵的运算,实现一个神经网络最需要的是线性代数库。

1. 感知器

由两层神经元组成的神经网络–“感知器”(Perceptron),感知器只能线性划分数据。

在这里插入图片描述

对于这样简单的感知器,只能线性划分数据,因为对于神经元的结果,只有y =kx+b一层计算,只可以在二维空间画一条直线划分,这样的话,对于一些区域型的数据无法具体分类,比如:

在这里插入图片描述

对于这组数据的分类,是无法通过一条直线就让它们分开的,那该如何分类N呢?

我们得让分类的线弯曲,比如:

在这里插入图片描述

这样就将类别划分开了。可是,我们该怎样使这条“线”弯曲呢?通过多层感知器。

2. 多层感知器

多层感知器其实就是增加了一个中间层,即隐含层。而这,也就是神经网络可以做非线性分类的关键。

在这里插入图片描述

多层感知器同简单感知器的区别就是多加了1层运算,那这样我们的计算就变成了y=w1x1+w2x2+b,在一个二维图片中,这样的函数计算可以使“线”弯曲,从而实现了非线性分类。

偏置

在神经网络中需要默认增加偏置神经元(节点),这些节点是默认存在的。它本质上是一个只含有存储功能,且存储值永远为1的单元。在神经网络的每个层次中,除了输出层以外,都会含有这样一个偏置单元。

在这里插入图片描述

偏置节点没有输入(前一层中没有箭头指向它)。一般情况下,我们都不会明确画出偏置节点。

3. 神经网络的构造

在这里插入图片描述

神经网络从左到右分为输入层、隐含层、输出层。

需要记忆

  1. 设计一个神经网络时,输入层与输出层的节点数往往是固定的,中间层则可以自由指定
    1. 输入层的节点数:与特征的维度匹配(特征数量)。
    2. 输出层的节点数:与目标的维度匹配(类别结果数量)。
    3. 中间层的节点数:目前业界没有完善的理论来指导这个决策。一般是根据经验来设置。
  2. 神经网络结构图中的拓扑与箭头代表着预测过程时数据的流向,跟训练时的数据流有一定的区别;
  3. 结构图里的关键不是圆圈(代表“神经元”),而是连接线(代表“神经元”之间的连接)。每个连接线对应一个不同的权重(其值称为权值),这是需要训练得到的。

4. 模型训练

模型训练的目的:使得参数尽可能的与真实的模型逼近。

具体做法:

  1. 首先给所有参数赋上随机值。我们使用这些随机生成的参数值,来预测训练数据中的样本。
  2. 计算预测值为yp,真实值为y。那么,定义一个损失值loss,损失值用于判断预测的结果和真实值的误差,误差越小越好。

损失函数

  1. 均方差损失函数

对真实值与预测值作差然后做平方,计算每一条数据的差值平方加起来,然后再除以数据的条数即可得到损失值。

在这里插入图片描述

  1. 多分类的情况下,交叉熵损失函数

运算过程,将一组数据传入:

在这里插入图片描述

公式:

在这里插入图片描述

总结

本篇介绍了:

  1. 神经网络的构造
  2. 神经网络的运行过程
  3. 感知器

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

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

相关文章

Android 开发高频面试题之——Flutter

Android开发高频面试题之——Java基础篇 flutter高频面试题记录 Flutter1. dart中的作用域与了解吗2. dart中. .. ...分别是什么意思?3. Dart 是不是单线程模型?如何运行的?4. Dart既然是单线程模型支持多线程吗?5. Future是什么6. Stream是什么7. Flutter 如何和原生交互…

身份安全风险不断上升:企业为何必须立即采取行动

在推动安全AI 模型的过程中,许多组织已转向差异隐私。但这种旨在保护用户数据的工具是否阻碍了创新? 开发人员面临一个艰难的选择:平衡数据隐私或优先考虑精确结果。差分隐私可以保护数据,但通常以牺牲准确性为代价——对于医疗保…

基于51单片机的手环设计仿真

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 基于STC89C52单片机,DHT11温湿度采集温湿度,滑动变阻器连接ADC0832数模转换器模拟水位传感器检测水位,通过LCD1602显示信息,然后在程序里设置好是否…

C++/CLI编程知识点小记

1.前言 本篇博文并非详细的C/CLI教程,仅是博主就学习和实践总结的部分知识点记录。 第一次接触C/CLI是2017年了,用C编写底层库,C/CLI编写wrapper层,在C#项目中进行调用,开发应用。 2.内容 C/CLI是一种混合编程&…

哈希简单介绍

1.直接定址法(值的分布范围集中) 比如统计字符串中字符出现的字数,字符范围是集中 2.除留余数法(值的分布范围分散) hashkey%n 哈希冲突:不同的值映射到相同的位置 解决哈希冲突的方案: 闭散…

Kafka集群扩容(新增一台kafka节点)

kafka集群扩容、kafka topic迁移 现有环境 IP组件角色192.168.17.51kafka01broker1192.168.17.52kafka02broker2192.168.17.53kafka03broker3 扩容之后环境 IP组件角色192.168.17.51kafka01broker1192.168.17.52kafka02broker2192.168.17.53kafka03broker3192.168.17.54ka…

三端全隔离压接端子485中继器磁耦隔离数据双向透传工业级2口信号放大器抗干扰防雷

美思联压接端子485中继器磁耦隔离工业级2口信号放大器抗干扰防雷https://item.taobao.com/item.htm?ftt&id736247434823 MS-H312S是一款专为工业自动化通信而生解决RS-485总线星型结构组网,解决复杂电磁场环境下RS-485大系统要求而设计的RS-485总线分割集线器(…

【设计模式】万字详解:深入掌握五大基础行为模式

作者:后端小肥肠 🍇 我写过的文章中的相关代码放到了gitee,地址:xfc-fdw-cloud: 公共解决方案 🍊 有疑问可私信或评论区联系我。 🥑 创作不易未经允许严禁转载。 姊妹篇: 【设计模式】&#xf…

Linux中使用cp命令的 -f 选项,但还是提醒覆盖的问题

问题: linux 在执行cp的命令的时候,就算是执行 cp -f 也还是会提醒是否要进行替换。 问题原因: 查看别名,alias命令,看到cp的别名为cp -i,那就是说cp本身就是自带覆盖提醒,就算我们加上-f 的…

JavaEE初阶——初识EE(Java诞生背景,CPU详解)

阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能帮到你! 目录 零:Java的发展背景介绍 一:EE的概念 二:计算机的构成 1:CU…

五、CAN总线

目录 一、基础知识 1、can介绍 2、CAN硬件电路 3、CAN电平标准 4、CAN收发器芯片介绍 5、CAN帧格式 ① CAN帧种类 ② CAN数据帧 ③ CAN遥控帧​编辑 ④ 位填充 ⑤ 波形实例 6、接收方数据采样 ① 接收方数据采样遇到的问题 ② 位时序 ③ 硬同步 ④ 再同步 ⑤ 波…

Java的IO流(二)

目录 Java的IO流(二) 字节缓冲流 基本使用 使用缓冲流复制文件 字符缓冲流 缓冲流读取数据原理 字符编码 字符集 转换流 序列化流与反序列化流 基本使用 禁止成员被序列化 序列号不匹配异常 打印流 基本使用 系统打印流与改变流向 Prop…

【网络安全】依赖混淆漏洞实现RCE

未经许可,不得转载。 文章目录 正文 依赖混淆是一种供应链攻击漏洞,发生在企业的内部依赖包错误地从公共库(如npm)下载,而不是从其私有注册表下载。攻击者可以在公共注册表中上传一个与公司内部包同名的恶意包&#xf…

【深入理解SpringCloud微服务】了解微服务的熔断、限流、降级,手写实现一个微服务熔断限流器

【深入理解SpringCloud微服务】了解微服务的熔断、限流、降级,手写实现一个微服务熔断限流器 服务雪崩熔断、限流、降级熔断降级限流 手写实现一个微服务熔断限流器架构设计代码实现整体逻辑ProtectorAspect#aroundMethod(ProceedingJoinPoint)具体实现1、获取接口对…

低级编程语言和高级编程语言

一.区分低级编程语言和高级编程语言的方法 1.低级编程语言 低级编程语言,并不是简单的编程语言,而是写起来很费事的编程语言,如所有编程语言的"祖宗":汇编语言,写起来极其麻烦,说不定一个 int a1; 它就得写好几行,甚至十几行 这样麻烦的编程语言为什么还没消失那,因…

P9235 [蓝桥杯 2023 省 A] 网络稳定性

*原题链接* 最小瓶颈生成树题,和货车运输完全一样。 先简化题意, 次询问,每次给出 ,问 到 的所有路径集合中,最小边权的最大值。 对于这种题可以用kruskal生成树来做,也可以用倍增来写,但不…

react:组件通信

组件通信 父组件向子组件通信 function App() {return (<div><div>这是父组件</div><Child name"这是子组件" /></div>); }// 子组件 function Child(props) {return <div>{props.name}</div>; }props说明 props可以传…

[Python学习日记-26] Python 中的文件操作

[Python学习日记-26] Python 中的文件操作 简介 操作模式 循环文件 其他功能 混合模式 修改文件 简介 在 Python 中的文件操作其实和我们平时使用的 Word 的操作是比较类似的&#xff0c;我们先说一下 Word 的操作流程&#xff0c;流程如下&#xff1a; 找到文件&#x…

re题(39)BUUCTF-[FlareOn3]Challenge1

BUUCTF在线评测 (buuoj.cn) 查壳是32位&#xff0c;ida打开&#xff0c;进入main函数&#xff0c;进入sub_401260看看 查看byte_413000存的字符串 _BYTE *__cdecl sub_401260(int a1, unsigned int a2) {int v3; // [espCh] [ebp-24h]int v4; // [esp10h] [ebp-20h]int v5; //…

python selenium网页操作

一、安装依赖 pip install -U seleniumselenium1.py&#xff1a; from selenium import webdriver from selenium.webdriver.common.by import Bydriver webdriver.Chrome() driver.get("https://www.selenium.dev/selenium/web/web-form.html") title driver.ti…