神经网络:激活函数的介绍

神经网络的激活函数是一种非线性函数,它被应用于每个神经元的输出,以引入非线性性质到网络中。

激活函数的目的是将输入转换为输出,并且将输出限制在特定的范围内。它们非常重要,因为线性变换(例如加法和乘法)的组合只会产生与输入相同的线性关系。通过使用非线性的激活函数,神经网络能够学习和表示更复杂的函数关系。

常用的激活函数包括:

1. Sigmoid函数:它将输入映射到0到1之间的连续输出。它在二分类问题中常用作输出层的激活函数,在隐藏层中使用会导致梯度消失的问题。

2. tanh函数:也被称为双曲正切函数,将输入映射到-1到1之间的连续输出。与Sigmoid函数相比,它的输出范围更大,但依然存在梯度消失的问题。

3. ReLU函数:也被称为修正线性单元函数,它将负输入映射为0,并保持正输入不变。它在隐藏层中非常常用,因为它能够处理梯度消失问题,并加速网络的训练速度。

4. Leaky ReLU函数:是ReLU函数的一种改进形式,解决了ReLU函数在负数部分出现的“死神经元”问题。它在负输入时引入一个小的负斜率,以便保持负数部分的信息流动。

5. Softmax函数:通常用于多分类问题的输出层。它将输入向量归一化为概率分布,使得所有输出值的总和为1。

这些是神经网络中常见的激活函数,选择合适的激活函数取决于问题的特点和网络的架构。

以下是使用Python绘制这几种函数的曲线的示例代码:

import numpy as np
import matplotlib.pyplot as plt

# Sigmoid函数
def sigmoid(x):
    return 1 / (1 + np.exp(-x))

# tanh函数
def tanh(x):
    return (np.exp(x) - np.exp(-x)) / (np.exp(x) + np.exp(-x))

# ReLU函数
def relu(x):
    return np.maximum(0, x)

# Leaky ReLU函数
def leaky_relu(x, alpha=0.01):
    return np.maximum(alpha * x, x)

# Softmax函数
def softmax(x):
    exps = np.exp(x)
    return exps / np.sum(exps)

x = np.linspace(-10, 10, 100)

# 绘制Sigmoid函数曲线
plt.plot(x, sigmoid(x), label='Sigmoid')

# 绘制tanh函数曲线
plt.plot(x, tanh(x), label='tanh')

# 绘制ReLU函数曲线
plt.plot(x, relu(x), label='ReLU')

# 绘制Leaky ReLU函数曲线
plt.plot(x, leaky_relu(x), label='Leaky ReLU')

# 绘制Softmax函数曲线
plt.plot(x, softmax(x), label='Softmax')

plt.legend()
plt.xlabel('x')
plt.ylabel('y')
plt.title('Activation Functions')
plt.grid()
plt.show()

  1. Sigmoid函数的曲线特点是在输入接近正无穷大和负无穷小的时候,输出接近于1和0。它的输出范围是0到1之间,且曲线在中心点处斜率最大。

  2. tanh函数的曲线特点是在输入接近正无穷大和负无穷小的时候,输出接近于1和-1。与Sigmoid函数相比,它的输出范围更大,且曲线在中心点处斜率最大。

  3. ReLU函数的曲线特点是在输入小于零时输出为0,大于零时输出等于输入。它的图像为一条直线段,没有平滑的转折点,且在中心点处斜率始终为1。

  4. Leaky ReLU函数的曲线特点与ReLU函数类似,但在负输入时引入了一个小的负斜率。这个负斜率可以防止负数部分的输出完全消失,增加了模型的稳定性。

  5. Softmax函数的曲线特点是将输入向量归一化为概率分布。它的输出是一个概率分布,且所有输出值的总和为1。该函数适用于多分类问题,并且在输出层使用时可以将每个类别的输出解释为概率。

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

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

相关文章

听GPT 讲Rust源代码--compiler(4)

File: rust/compiler/rustc_codegen_gcc/src/back/mod.rs rust/compiler/rustc_codegen_gcc/src/back/mod.rs 文件是 Rust 编译器的源代码中的一个模块,主要负责与 GCC(GNU 编译器集合)相关的后端代码生成。 在 Rust 编译器的架构中&#xff…

从“五力”看百亿西凤的必然性

执笔 | 文 清 编辑 | 萧 萧 2023年末,西凤成功突破市场阻碍、跑赢行业周期,正式跻身中国百亿白酒品牌阵容。这是一份全行业及全体西凤人“预期之内”的成绩单。 当下,中国白酒已经进入“存量竞争”时代,马太效应使得强者恒强…

Minitab 各版本安装指南

Minitab下载链接 https://pan.baidu.com/s/1PLqocknkoRGGI9lbV3e45A?pwd0531 1.鼠标右击【Minitab 21(64bit)】压缩包(win11及以上系统需先点击“显示更多选项”)选择【解压到 Minitab 21(64bit)】。 2.打开解压后的文件夹,鼠标右击【setu…

集群容器频繁OOMKilled的排查经历

背景 我司采用的是k8s治理编排容器服务 出现的问题:线上某个应用pod频繁重启,13天内每个pod重启约8~9次 排查步骤 1.查看pod重启原因和重启时间点 kubectl describe pods okr-indicator-deploy-84bc5779c-55xsn -n rishiqing-v2 State: …

【Proteus仿真】【51单片机】超声波测距系统

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真51单片机控制器,使用动态数码管、按键、HCSR04超声波、蜂鸣器模块等。 主要功能: 系统运行后,数码管显示超声波检测距离,当检测距离…

报告解读:中国新一代终端安全市场洞察,2023

报告解读 中国新一代终端安全市场洞察 2023 安全防御的“最前线” 01 混沌的企业安全 以下来自CSO们最关注的安全热点问题: Q1我们如何看待当下泛化的终端安全,混合的IT环境企业面临的安全变化? IDC:伴随着全球数字化转型的快…

【番外】【Airsim in Windows ROS in WSL2-Ubuntu20.04】环境配置大全

【番外】【Airsim in Windows &ROS in WSL2-Ubuntu20.04】环境配置大全 【前言(可省略不看)】1.在windows上面部署好UE4AirSim联合仿真环境2.在windows上面部署wsl2系统以及在wsl2上面部署ubuntu系统3.安装好ubuntu系统之后,目前只能在命…

Multipath多路径管理基础介绍与安装配置使用

0x00 前言简述 Q:什么是Multipath多路径? 答:Multipath I/O 电脑储存技术,指利用两个以上的路径同时在CPU与储存设备之间传送讯号,以达到侦错与强化效能的目的。 简单的说当服务器到某一存储设备有多条路径时,每条路径都会识别为一个单独的…

清风数学建模-数学规划模型

内容:数学规划模型(cab aeqbeq lbub) 一.题型类型 1.线性规划linprog 2.非线性规划 fmincon 3.整数规划 intlinprog 4.(0-1规划)(特殊的线性整数规划)intlinprog 5.多目标规划 linprog 标…

[DevOps-05] Jenkins实现CI/CD操作

一、简要说明 基于Jenkins拉取GitLab的SpringBoot代码进行构建发布到测试环境实现持续集成 基于Jenkins拉取GitLab指定发行版本的SpringBoot代码进行构建发布到生产环境实现CD实现持续部署 二、准备Springboot工程 1、IDEA新建工程 2、填写项目工程信息 3、选择Springboot版本…

【数据结构】数组实现队列(详细版)

目录 队列的定义 普通顺序队列的劣势——与链队列相比 顺序队列实现方法: 一、动态增长队列 1、初始化队列 2、元素入队 3、判断队列是否为空 4、元素出队 5、获取队首元素 6、获取队尾元素 7、获取队列元素个数 8、销毁队列 总结: 动态增长队列…

配网故障定位技术的研究与实现:提高配网运行效率的必要手段

随着电力系统的不断发展,配电网作为电力系统的重要组成部分,其安全性和稳定性对于整个电力系统的运行具有重要意义。然而,配电网在运行过程中,由于各种原因导致的故障事件时有发生,严重影响了配网的运行效率和供电质量…

【单片机 TB作品】节拍器,电子音乐节拍器,51单片机,Proteus仿真

节拍器的使用可以使练琴者正确掌握乐曲的速度,从而使音 乐练习达到事半功倍的效果。本课题基于单片机设计具有声光晋 示的电子乐器节拍器,充分利用单片机的定时和中断系统,通过 C语言程序设计,控制外部相关硬件电路,实现对音乐速,度 40~120次/分钟范围内连续可调,节拍114、 2/4…

解决sublime中文符号乱码问题

效果图 原来 后来 问题不是出自encode文件编码,而是win10的字体问题。 解决方法 配置: { "font_face":"Microsoft Yahei", "dpi_scale": 1.0 } 参考自 Sublime 输入中文显示方框问号乱码_sublime中文问号-CSDN博…

学习调整echarts中toolbox位置toolBox工具栏属性

学习调整echarts中toolbox位置toolBox工具栏属性 toolbox工具栏属性介绍示例代码代码参数说明 toolbox工具栏属性介绍 参考网址:https://echarts.apache.org/zh/option.html#tooltip 属性类型说明toolbox.showbooleanboolean 默认值为true,是否显示工具…

Matlab进阶绘图第37期—多色悬浮柱状图

多色悬浮柱状图是一种特殊的柱状图。 与常规柱状图相比,多色悬浮柱状图可以通过悬浮的矩形展示最小值到最大值的范围(或其他范围表达),并通过颜色进行美化/区分/附加信息。 本文使用自己制作的Floatingbar小工具进行多色悬浮柱状…

Oracle database 12cRAC异地恢复至单机

环境 rac 环境 byoradbrac Oracle12.1.0.2 系统版本:Red Hat Enterprise Linux Server release 6.5 软件版本:Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit byoradb1:172.17.38.44 byoradb2:172.17.38.4…

Kotlin采集美团商家信息 同行竞争价格监控

“南方小土豆”挤爆哈尔滨旅游市场,一个冬天让哈尔滨火出了圈,让全国观众看见了不一样的逆向旅游热,虽说我心驰神往,但是无奈加班敲代码,连休息的时间都没有。前段时间我通过用java写了一个美团爬虫程序,今…

智慧工厂:科技与制造融合创新之路

随着科技的迅猛发展,智慧工厂成为制造业领域的热门话题。智慧工厂利用先进的技术和智能化系统,以提高生产效率、降低成本、增强产品质量和灵活性为目标,正在引领着未来制造业的发展。 智慧工厂的核心是数字化和自动化生产,相较于传…

Spark基础解析(一)

1、 Spark概述 1.1 什么是Spark 1.2Spark内置模块 Spark Core:实现了Spark的基本功能,包含任务调度、内存管理、错误恢复、与存储系统交互等模块。Spark Core中还包含了对弹性分布式数据集(Resilient Distributed DataSet,简称RDD)的API定义…