关于神经网络中的激活函数
这篇博客主要介绍一下神经网络中的激活函数以及为什么要存在激活函数。
首先,我先做一个简单的类比:激活函数的作用就像给神经网络里的 “数字信号” 加了一个 “智能阀门”,让机器能学会像人类一样思考复杂问题。
没有激活i函数的神经网络
没有激活i函数的神经网络就像是一台“傻机器”,假设你用纯数学公式搭一个神经网络(没有激活函数),它的计算逻辑是这样的:
输入层 → 隐藏层:h=W1⋅x+b1
隐藏层 → 输出层:y^=W2⋅h+b2
把两层合并后会发现:y^=W2⋅(W1⋅x+b1)+b2=(W2W1)⋅x+(W2b1+b2)
本质还是一个线性公式(形如 y=kx+b),只能拟合直线,连 “判断图片里有没有猫” 这种曲线问题都解决不了(因为猫和非猫的边界通常是复杂曲线)。
就像你让一个只会做加减乘除的计算器去解微积分题 —— 它根本看不懂题目。
激活函数
激活函数的核心作用是让神经网络学会 “非线性变换”,简单说就是:
- 对符合条件的信号 “放行通过”,
- 对不符合条件的信号 “过滤或扭曲”,
- 让不同信号之间产生复杂的逻辑关系。
激活函数的类比
像 “安检门” 一样过滤无效信号(以 ReLU 函数为例)
ReLU 函数:f(z)=max(0,z)
- 作用:如果输入信号 z 是负数(比如−5),直接变成 0(相当于 “拦截”);如果是正数(比如 3),原样输出(相当于 “放行”)。
- 类比:
- 你去机场过安检,包里的水如果超过 100ml(信号为负),直接被扣下(输出 0);
- 小于 100ml 的水(信号为正),可以带进去(输出原值)。
- 效果:让神经网络专注于 “有意义的信号”,过滤掉干扰项,比如识别图片时只关注 “有像素的区域”,忽略全黑的背景。
像 “调光开关” 一样压缩信号范围(以 Sigmoid 函数为例)
Sigmoid 函数:f(z)=1+e−z1,输出永远在 0 到 1 之间。
- 作用:把任意大小的信号(比如−100或+100)“挤压” 到 0~1 的区间,类似把 “强光” 和 “弱光” 都转化为 “手机屏幕能显示的亮度”。
- 类比:
- 你用手机拍夜景,光线太强(信号值大)会过曝,太弱(信号值小)会漆黑,手机算法会自动把光线压缩到适合显示的范围(0~1),让亮处不过曝、暗处能看清。
- 效果:适合处理 “概率问题”,比如判断 “这张图是猫的概率是 90%”(输出 0.9),不是猫的概率是 10%(输出 0.1)。
像 “跷跷板” 一样让信号产生对立关系(以 Tanh 函数为例)
Tanh 函数:f(z)=ez+e−zez−e−z,输出在 - 1 到 1 之间。
- 作用:把信号转化为 “正” 和 “负” 两种对立状态,类似给信号装了一个 “跷跷板”,一头是正向激活,一头是负向激活。
- 类比:
- 你和朋友玩跷跷板,体重差异会让一端升高(输出 + 1),一端降低(输出 - 1),体重相近时会平衡在中间(接近 0)。
- 效果:适合处理 “情感分类” 问题,比如判断一句话是 “积极情绪”(输出 + 0.8)还是 “消极情绪”(输出 - 0.6)。
为什么一定要有激活函数(非线性)--人类思维的本质是 “非线性”
for example
- 你判断 “今天要不要出门”,不是只看单一因素(比如 “温度 > 20℃就出门”),而是综合考虑:
- 温度是否合适(激活 1)、
- 有没有下雨(激活 2)、
- 朋友是否约你(激活 3)、
- 工作是否完成(激活 4)……
这些因素通过 “非线性组合”(比如 “温度合适 且 没下雨 或 朋友强烈约我”)最终决定你的行为。
激活函数就是在模拟这种非线性逻辑:
- 每个隐藏层神经元用激活函数处理信号后,相当于学会了一个 “局部判断规则”(比如 “温度 > 20℃时激活”),
- 多层神经元的激活函数叠加后,就能组合出无穷多复杂规则(比如 “温度> 20℃ 且 下雨概率 < 30% 或 朋友约我吃饭”),
- 最终让神经网络能像人类一样解决复杂问题(如图像识别、语言翻译等)。
总结
无激活函数的网络只能做线性运算(低级计算器)有激活函数的网络能做非线性变换(智能大脑)
一句话:激活函数让数字信号学会 “思考”,让机器从 “机械计算” 进化到 “智能决策”!
相关文章:

关于神经网络中的激活函数
这篇博客主要介绍一下神经网络中的激活函数以及为什么要存在激活函数。 首先,我先做一个简单的类比:激活函数的作用就像给神经网络里的 “数字信号” 加了一个 “智能阀门”,让机器能学会像人类一样思考复杂问题。 没有激活i函数的神经网络…...

CentOS_7.9 2U物理服务器上部署系统简易操作步骤
近期单位网站革新,鉴于安全加固,计划将原有Windows环境更新到Linux-CentOS 7.9,这版本也没的说(绝)了(版)官方停止更新,但无论如何还是被sisi的牵挂着这一大批人,毕竟从接…...
第十三篇:MySQL 运维自动化与可观测性建设实践指南
本篇重点介绍 MySQL 运维自动化的关键工具与流程,深入实践如何构建高效可观测体系,实现数据库系统的持续稳定运行与故障快速响应。 一、为什么需要 MySQL 运维自动化与可观测性? 运维挑战: 手动备份容易遗漏或失败; …...

短视频平台差异视角下开源AI智能名片链动2+1模式S2B2C商城小程序的适配性研究——以抖音与快手为例
摘要 本文以抖音与快手两大短视频平台为研究对象,从用户群体、内容生态、推荐逻辑三维度分析其差异化特征,并探讨开源AI智能名片链动21模式与S2B2C商城小程序在平台适配中的创新价值。研究发现,抖音的流量中心化机制与优质内容导向适合品牌化…...
HTTP 如何升级成 HTTPS
有一个自己的项目需要上线,域名解析完成后,发现只能使用 http 协议,这在浏览器上会限制,提示用户不安全,所以需要把 HTTP 升级成 HTTPS 协议,但又不想花钱。 前提条件: 已经配置好 Nginx 服务器…...

【笔记】Windows 下载并安装 ChromeDriver
以下是 在 Windows 上下载并安装 ChromeDriver 的笔记: ✅ Windows 下载并安装 ChromeDriver 1️⃣ 确认 Chrome 浏览器版本 打开 Chrome 浏览器 点击右上角 ︙ → 帮助 → 关于 Google Chrome 记下版本号,例如:114.0.5735.199 2️⃣ 下载…...

Spark-Core Project
RDD转换算子总结 RDD转换算子分为Value类型、双Value类型和Key - Value类型。 1、Value类型 map:对数据逐条映射转换,可改变数据类型或值。如 dataRDD.map(num > num * 2 运行结果: 2)mapPartitions:以分区为单位处…...
SQL 中的 `CASE WHEN` 如何使用?
✅ SQL 中的 CASE WHEN 如何使用? 一、CASE WHEN 是什么? CASE WHEN 是 SQL 中用于实现 条件判断 的表达式,功能类似于 if-else 或 switch-case,可用于 SELECT、WHERE、ORDER BY 等子句中。 go专栏:https://duoke360.com/tutorial/path/golang 二、语法格式 1. 简单 C…...

Wireshark 使用教程:让抓包不再神秘
一、什么是 tshark? tshark 是 Wireshark 的命令行版本,支持几乎所有 Wireshark 的核心功能。它可以用来: 抓包并保存为 pcap 文件 实时显示数据包信息 提取指定字段进行分析 配合 shell 脚本完成自动化任务 二、安装与验证 Kali Linux…...

JWT安全:接收无签名令牌.【签名算法设置为none绕过验证】
JWT安全:假密钥【签名随便写实现越权绕过.】 JSON Web 令牌 (JWT)是一种在系统之间发送加密签名 JSON 数据的标准化格式。理论上,它们可以包含任何类型的数据,但最常用于在身份验证、会话处理和访问控制机制中发送有关用户的信息(“声明”)。…...
什么算得到?什么又算失去?
目录 **一、什么是“得到”?****二、什么是“失去”?****三、得到与失去的悖论****四、如何超越得失二元论?****五、一个更本质的答案** 关于“得到”与“失去”的界定,本质上是对存在状态和主观认知的辩证思考。这两者并非绝对&a…...

白银价格查询接口如何用Java进行调用?
一、什么是白银价格查询接口? 它聚焦于上海黄金交易所、上海期货交易所等权威市场,精准提供白银价格行情数据,助力用户实时把握市场脉搏,做出明智的投资决策。 二、应用场景 分析软件:金融类平台可以集成本接口&…...

FreeBSD 14.3 候选版本附带 Docker 镜像和关键修复
新的月份已经到来,FreeBSD 14.3 候选发布版 1 现已开放测试,它带来了一些您可能会觉得有用的更新,特别是如果您对Docker容器感兴趣的话。RC1 版本中一个非常受欢迎的改进是,FreeBSD 项目已开始将官方开放容器计划 (OCI) 镜像发布到…...
NodeJS全栈WEB3面试题——P6安全与最佳实践
🔐 6.1 如何防范重放攻击、私钥泄露、钓鱼签名? ✅ 重放攻击(Replay Attack)防范: 引入 nonce:每次登录或交易签名都携带唯一 nonce; 链 ID 检查:在签名中加入特定链 ID࿰…...

「Java教案」算术运算符与表达式
课程目标 1.知识目标 能够区分Java运算符的种类,例如,算术、赋值、关系、逻辑、位运算等。能够区分Java各类运算符的功能和使用场景。能够根据表达式的构成和计算规则,写出正确的表达式。能够根据运算符优先级与结合性ÿ…...
Ubuntu开机黑屏现象的常见解决方案详解
Ubuntu开机黑屏现象的常见解决方案详解 Ubuntu作为一款流行的Linux发行版,因其开源性和灵活性受到广泛欢迎。然而,用户在使用过程中可能会遇到开机黑屏的问题,即系统启动后屏幕完全无显示,仅留下光标闪烁或黑屏界面。这种问题可能…...
黑马程序员C++核心编程笔记--4 类和对象--多态
1.多态的基本概念 多态是C面向对象三大特性之一 多态分为两类 静态多态: 函数重载和运算符重载属于静态多态,复用函数名动态多态: 派生类和虚函数实现运行时多态 静态多态和动态多态区别: -静态多态的函数地址早绑定 - 编译阶段确定函数地址 -动态多…...

论文写作核心要点
不要只读论文里的motivation和method 论文里的图表和统计特征 在论文里找到具有统计意义的东西,那么在语料里也肯定遵循这样的规律,我们就能用机器学习的方法, 我们再用不同方法解决,哪种方法好,就用哪种 实验分析 …...

[java]eclipse中windowbuilder插件在线安装
目录 一、打开eclipse 二、打开插件市场 三、输入windowbuilder,点击install 四、进入安装界面 五、勾选我同意... 重启即可 一、打开eclipse 二、打开插件市场 三、输入windowbuilder,点击install 四、进入安装界面 五、勾选我同意... 重启即可...

Ubuntu20.04服务器开启路由转发让局域网内其他电脑通过该服务器连接外网
要让你的 Ubuntu作为路由器,通过 Wi-Fi 上网,并给连接到 UsbNetwork 的设备提供网络,需要做以下配置: 1. 网络拓扑 [互联网] ← (Wi-Fi, wlo1) → [Ubuntu] ← (USB网络/USB以太网, UsbNetwork) → [设备]Ubuntu: Wi-…...

【Oracle】TCL语言
个人主页:Guiat 归属专栏:Oracle 文章目录 1. TCL概述1.1 什么是TCL?1.2 TCL的核心功能 2. 事务基础概念2.1 事务的ACID特性2.2 事务的生命周期 3. COMMIT语句详解3.1 COMMIT基础语法3.2 自动提交与手动提交3.3 提交性能优化 4. ROLLBACK语句…...

Windows | 总误按Num Lock?修改注册表永久禁用Numlk键使小键盘一直输入数字
先说需修改注册表的位置与键值 路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\ 二进制键:Scancode Map 键值: 00 00 00 00 00 00 00 00 01 00 00 00 00 00 45 00 00 00 00 00 00 00 00 00如下图: …...

2.RV1126-OPENCV Mat理解和AT函数
一.Mat概念 Mat 是整个图像存储的核心也是所有图像处理的最基础的类,Mat 主要存储图像的矩阵类型,包括向量、矩阵、灰度或者彩色图像等等。Mat由两部分组成:矩阵头,矩阵数据。矩阵头是存储图像的长度、宽度、色彩信息等头部信息&a…...
Go 语言 + Word 文档模板:WordZero 引擎如何让企业文档处理效率提升 300%?
前言 在企业级应用开发中,自动化生成Word文档一直是个令人头疼的需求。传统的方案要么依赖于复杂的Office COM组件,要么使用功能有限的第三方库。今天为大家介绍一个纯Go语言实现的Word操作库——WordZero,特别是其强大的模板引擎功能&#…...

unidbg patch 初探 微博deviceId 案例
声明 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! 逆向过程 看了b站迷人瑞信那个由于是…...

循序渐进 Android Binder(一):IPC 基本概念和 AIDL 跨进程通信的简单实例
Binder 给人的第一印象是”捆绑者“,即将两个需要建立关系的事物用某些工具束缚在一起。在 Android 中,Binder 是一种高效的跨进程通信(IPC)机制,它将可以将运行在不同进程中的组件进行绑定,以实现彼此通信…...

网络安全之Web渗透加解密
项目基本使用 准备环境:node.js python chrome npm install chrome-remote-interface pip install playwright playwright install chromium pip install mitmproxy ............... 第一步启动cdp.js。 第二步使用python .\cdp_load.py vue_demo,连…...
Leetcode 3567. Minimum Absolute Difference in Sliding Submatrix
Leetcode 3567. Minimum Absolute Difference in Sliding Submatrix 1. 解题思路2. 代码实现 题目链接:3567. Minimum Absolute Difference in Sliding Submatrix 1. 解题思路 这一题想了一下,没想到啥好的思路,就是暴力直接求解了一下&am…...

【LeetCode 题解】两数之和(C++/Python 双解法):从语法到算法的全面解析
【LeetCode题解】两数之和(C/Python双解法):从语法到算法的全面解析 一、题目描述 题目链接:1. 两数之和 难度:简单 要求:给定一个整数数组 nums 和一个整数目标值 target,在数组中找出两个数…...

【机器学习基础】机器学习入门核心算法:集成学习(Ensemble Learning)
机器学习入门核心算法:集成学习(Ensemble Learning) 1. 算法逻辑核心逻辑: 2. 算法原理与数学推导2.1 Bagging(Bootstrap Aggregating)2.2 Boosting2.3 Stacking 3. 模型评估评估指标基学习器选择策略 4. 应…...