深度学习(一)-感知机+神经网络+激活函数

深度学习概述

深度学习的特点

  • 优点
  1. 性能更好
  2. 不需要特征工程
  3. 在大数据样本下有更好的性能
  4. 能解决某些传统机器学习无法解决的问题
  • 缺点
  1. 小数据样本下性能不如机器学习
  2. 模型复杂
  3. 可解释性弱

深度学习与传统机器学习相同点

深度学习、机器学习是同一问题不同的解决方法
  • 目的相同:都是利用机器自我学习能力,解决软件系统的难题
  • 基本问题相同:回归问题、分类问题、聚类问题
  • 基本流程相同:数据准备 → 模型选择 → 模型构建/训练 → 评估优化 → 预测
  • 问题领域相同:监督学习、非监督学习、半监督学习
  • 应用领域相同:推荐、计算机视觉、自然语言处理、语音处理、强化学习
  • 评价标准相同
  1. 回归问题:均方误差;R2
  2. 分类问题:交叉熵;查准率、召回率、F1综合系数
  3. 模型泛化能力:过拟合、欠拟合

感知机

生物神经元

感知机(Perceptron),又称人工神经元(Artificial neuron),它是生物神经元在计算机中的模拟。下图是一个生物神经元示意图:

感知机

感知机(Perceptron),又称神经元(Neuron,对生物神经元进行了模仿)是神经网络(深度学习)的起源算法,1958年由康奈尔大学心理学教授弗兰克·罗森布拉 特(Frank Rosenblatt)提出,它可以接收多个输入信号,产生一个输出信号。

感知机功能

神经元作为回归器 / 分类器

逻辑和(线性分类)

逻辑或(线性分类)

感知机局限

感知机的局限在于无法处理“异或”问题(非线性问题)

多层感知机

1975年,感知机的“异或”难题才被理论界彻底解决,即通过多个感知机组合来解决该问题,这种模型也叫多层感知机(Multi-Layer Perceptron,MLP)。如下图所示,神经元节点阈值均设置为0.5

神经网络

感知机由于结构简单,完成的功能十分有限。可以将若干个感知机连在一起,形成 一个级联网络结构,这个结构称为“多层前馈神经网络”(Multi-layer Feedforward Neural Networks)。所谓“前馈”是指将前一层的输出作为后一 层的输入的逻辑结构。每一层神经元仅与下一层的神经元全连接。但在同一层之内, 神经元彼此不连接,而且跨层之间的神经元,彼此也不相连。
1989年,奥地利学者库尔特·霍尼克(Kurt Hornik)等人发表论文证明,对于任意复杂度的连续波莱尔可测函数(Borel Measurable Function)f,仅仅需要一个隐含层,只要这个隐含层包括足够多的神经元,前馈神经网络使 用挤压函数(Squashing Function)作为激活函数,就可以以任意精度来近似模拟f。如果想增加f的近似精度,单纯依靠增加神经元的数目即可实现。
这个定理也被称为通用近似定理(Universal Approximation Theorem),该定理表明,前馈神经网在理论上可近似解决任何问题。

神经网络要足够深

多层神经网络计算公式

激活函数

定义

在神经网络中,将输入信号的总和转换为输出信号的函数被称为激活
函数(activation function)

为什么使用激活函数

激活函数将多层感知机输出转换为非线性,使得神经网络可以任意 逼近任何非线性函数,这样神经网络就可以应用到众多的非线性模型中。
如果一个多层网络,使用连续函数作为激活函数的多层网络,称之 为“神经网络”,否则称为“多层感知机”。所以,激活函数是区 、别多层感知机和神经网络的依据。

常见激活函数

阶跃函数
阶跃函数(Step Function)是一种特殊的连续时间函数,是一个从0跳变到1的 过程,函数形式与图像:

sigmoid函数
sigmoid函数也叫Logistic函数,用于隐层神经元输出,取值范围为(0,1),它可以将一个实
数映射到(0,1)的区间,可以用来做二分类,表达式:σ(x) = 1 / (1 + e -x )
  • 优点:平滑、易于求导
  • 缺点:激活函数计算量大,反向传播求误差梯度时,求导涉及除法;反向传播时,很容易就 会出现梯度消失的情况,从而无法完成深层网络的训练

右侧是导数,x越来越大或者越来越小,导数逐渐为0,梯度逐步转换为0 

tanh双曲正切函数
  • 优点:平滑、易于求导;输出均值为0,收敛速度要比sigmoid快,从而可以减少迭代次数
  • 缺点:梯度消失
  • 用途:常用于NLP中

 

ReLU(Rectified Linear Units,修正线性单元)

  • 优点:
(1)更加有效率的梯度下降以及反向传播,避免了梯度爆炸和梯度消失问题
(2)计算过程简单
  • 缺点:小于等于0的部分梯度为0
  • 用途:常用于图像

一般这里x<=0的时候都是给一个特别小的值,不至于让该神经元消失

Softmax
Softmax函数定义如下,其中Vi 是分类器前级输出单元的输出。i 表示类别索引,总的类别个数为 C。
Si 表示的是当前元素的指数与所有元素指数和的比值。通过 Softmax函数就可以将多分类的输出数值 转化为相对概率,而这些值的累和为1,常用于神经网络输出层。 表达式:

将预测结果转换为相对概率

在分类模型中,有几个类别,输出层就有几个神经元

分类模型的输出层激活函数一般都是softmax

总结

  • 感知机:接收多个输入信号,产生一个输出信号,无法解决异或问题
  • 多层感知机:将多个感知机组合
  • 多层前馈网络:若干个感知机组合成若干层的网络,上一层输出作为下一层输入
  • 激活函数:将计算结果转换为输出的值,包括阶跃函数、sigmoid、tanh、ReLU

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

11.5.软件系统分析与设计-面向对象的程序设计与实现

面向对象的程序设计与实现 设计模式 Java代码 C代码

SQL进阶技巧:每年在校人数统计 | 区间重叠问题

目录 0 问题分析 1 数据准备 2 问题分析 3 小结 区间重叠问题 0 问题分析 有一个录取学生人数表 in_school_stu,记录的是每年录取学生的人数及录取学生的学制,计算每年在校学生人数。 1 数据准备 create table in_school_stu as ( select stack(5,1,2001,2,1200,2,2000…

UML的图及其他图补充

一、UML图 1.类图 ‌类图‌是统一建模语言&#xff08;UML&#xff09;中的一种静态结构图&#xff0c;主要用于描述软件系统的静态结构。它显示了模型中的类、类的内部结构以及它们与其他类的关系。类图是面向对象建模的主要组成部分&#xff0c;用于对系统的词汇进行建模、对…

SigLIP——采用sigmoid损失的图文预训练方式

SigLIP——采用sigmoid损失的图文预训练方式 FesianXu 20240825 at Wechat Search Team 前言 CLIP中的infoNCE损失是一种对比性损失&#xff0c;在SigLIP这个工作中&#xff0c;作者提出采用非对比性的sigmoid损失&#xff0c;能够更高效地进行图文预训练&#xff0c;本文进行…

93. UE5 GAS RPG 应用负面效果表现

在上一篇文章里&#xff0c;我们实现了添加负面效果GE&#xff0c;并且在添加GE时&#xff0c;也会给角色应用一个负面效果标签作为标识。在这一篇里&#xff0c;我们将通过负面效果标签标识&#xff0c;应用角色身上展现对应的负面效果的表现。 我们将在这篇文章里添加一个自定…

【c++进阶[五]】list相关接口介绍及list和vector的对比

&#x1f493;博主CSDN主页::Am心若依旧&#x1f493; ⏩专栏分类c从入门到精通⏪ &#x1f69a;代码仓库:青酒余成&#x1f69a; &#x1f339;关注我&#x1faf5;带你学习更多c   &#x1f51d;&#x1f51d; 1.前言 本章重点 本章重点讲解list的接口函数的熟悉&#xf…

Linux-RPM与YUM

目录 前言&#xff1a; rpm包的管理 rpm包的简单查询指令 ​编辑 rpm包名的基本格式 rpm包名基本格式 ​编辑 卸载rpm包 细节问题 安装rpm包 yum yum的基本指令 安装指定的yum包 yum报错 问题描述&#xff1a; 解决方法&#xff1a; 前言&#xff1a; Linux操…

电脑硬盘数据丢失了怎么恢复?简单实用的硬盘数据找回的方法

我们的电脑使用硬盘作为存储设备来保存数据&#xff0c;硬盘里的数据是存储在扇区上&#xff0c;这些存储数据的单元则位于表面有磁性材料的旋转的盘片上。硬盘内部的磁头悬浮于高速旋转的盘片上&#xff0c;用于读写和检索数据。 假如我们使用电脑时不小心删除了某个文件&…

Vue3使用Uni-ui的popup弹出层组件

由于uni-ui中有些组件文档的基于vue2编写的&#xff0c;比如popup组件 下面是vue3的写法 除了文档中要求的aleterDialog外&#xff0c;还得利用v-if设置一个isDialog判断 // template // script 解决

Linux基础2-权限2(操作权限,粘滞位,umask,目录文件的rwx权限)

上篇内容&#xff1a;Linux基础2-权限1(用户&#xff0c;权限是什么&#xff1f;)-CSDN博客 目录 一. 权限的操作&#xff08;命令&#xff09; 1.1 chmod 1.2 chown 1.3 chgrp 二. 粘滞位 三. umask&#xff08;遮掩码&#xff09; 四. 目录文件的 r w x 权限 一. 权限…

Ubuntu22.04版本左右,开机自动启动脚本

Ubuntu22.04版本左右&#xff0c;开机自动启动脚本 1. 新增/lib/systemd/system/rc-local.service中[Install]内容 vim /lib/systemd/system/rc-local.service 按 i 进入插入模式后&#xff0c;新增内容如下&#xff1a; [Install] WantedBymulti-user.target Aliasrc-local.…

如何读.Net Framework 的源码?

.Net Framework的源码可以从这里下载 Download 也可以在线直接浏览 https://referencesource.microsoft.com 这里我们以System.IO.Directory.CreateDirectory函数为例&#xff0c;来说明如何去读.Net Framework的源码。 在ReferenceSource在线界面的搜索框里输入Directory.Cr…

分享基于PDF.JS的移动端PDF阅读器代码

一、前言 在之前的文章《分享基于PDF.js的pdf阅读器代码》里提到了PC端基于PDF.js的阅读器&#xff0c;本文将提供针对移动端的版本。 二、pdfViewer 为了能够直接使用&#xff0c;这里分享一下经过简单修改后能直接使用的pdfViewer代码&#xff1a; pdfViewer代码目录&…

CAN总线的位同步详细讲解

接收方数据采样 &#xff08;1&#xff09;CAN总线没有时钟线&#xff0c;总线上的所有设备通过约定波特率的方式确定每一个数据位的时长 &#xff08;2&#xff09;发送方以约定的位时长每隔固定时间输出一个数据位 &#xff08;3&#xff09;接收方以约定的位时长每隔固定…

Kafka 分布式消息系统详细介绍

Kafka 分布式消息系统 一、Kafka 概述1.1 Kafka 定义1.2 Kafka 设计目标1.3 Kafka 特点 二、Kafka 架构设计2.1 基本架构2.2 Topic 和 Partition2.3 消费者和消费者组2.4 Replica 副本 三、Kafka 分布式集群搭建3.1 下载解压3.1.1 上传解压 3.2 修改 Kafka 配置文件3.2.1 修改z…

[网络原理]关于网络的基本概念 及 协议

文章目录 一. 关于网络的概念介绍1. 局域⽹LAN2. ⼴域⽹WAN3. 主机4. 路由器5. 交换机IP地址端口号 二. 协议协议分层TCP/IP五层模型(或四层)OSI七层模型封装分用 一. 关于网络的概念介绍 1. 局域⽹LAN 局域⽹&#xff0c;即 Local Area Network&#xff0c;简称LAN。 Local …

NGINX开启HTTP3,给web应用提个速

环境说明 linuxdockernginx版本:1.27 HTTP3/QUIC介绍 HTTP3是由IETF于2022年发布的一个标准&#xff0c;文档地址为&#xff1a;https://datatracker.ietf.org/doc/html/rfc9114 如rfc9114所述&#xff0c;http3主要基于QUIC协议实现&#xff0c;在具备高性能的同时又兼备了…

TCP远程命令执行

目录 一. 命令集 二. 命令执行模块实现 三. 服务端模块实现 四. 服务端调用模块实现 五. 客户端模块实现 六. 效果展示 此篇教大家如何利用TCP进行远程命令执行。 一. 命令集 将值得信任的命令放进一个txt文件中&#xff0c;执行命令时&#xff0c;就去这…

elementUI根据列表id进行列合并@莫成尘

本文章提供了elementUI根据列表id进行列合并的demo&#xff0c;效果如图&#xff08;可直接复制代码粘贴&#xff09; <template><div id"app"><el-table border :data"tableList" style"width: 100%" :span-method"objectS…

【STM32】SPI通信-软件与硬件读写SPI

SPI通信-软件与硬件读写SPI 软件SPI一、SPI通信协议1、SPI通信2、硬件电路3、移位示意图4、SPI时序基本单元(1)开始通信和结束通信(2)模式0---用的最多(3)模式1(4)模式2(5)模式3 5、SPI时序(1)写使能(2)指定地址写(3)指定地址读 二、W25Q64模块介绍&#xff11;、W25Q64简介&am…