深度学习导论

具有非常详尽的数学推导过程

概述

定位

在这里插入图片描述

比较传统机器学习深度学习
特征人工定义机器生成
模型决策树、SVM、贝叶斯等(具有不同数学原理)神经网络

概率论

联合概率 P ( X , Y ) = P ( X ∣ Y ) P ( Y ) = P ( Y ∣ X ) P ( X ) P(X,Y)=P(X|Y)P(Y)=P(Y|X)P(X) P(X,Y)=P(XY)P(Y)=P(YX)P(X)
=>贝叶斯法则 P ( X ∣ Y ) = P ( Y ∣ X ) P ( X ) P ( Y ) P(X|Y)=\frac{P(Y|X)P(X)}{P(Y)} P(XY)=P(Y)P(YX)P(X)
均匀分布 p ( x ) = 1 U − L p(x)=\frac{1}{U-L} p(x)=UL1
正态分布(概率密度函数) p ( x ) = 1 2 π σ 2 e x p ( − ( x − μ ) 2 2 σ 2 ) p(x)=\frac{1}{\sqrt{2\pi \sigma^2}}exp(-\frac{(x-\mu)^2}{2\sigma^2}) p(x)=2πσ2 1exp(2σ2(xμ)2)

向量

范数 ∣ ∣ a ∣ ∣ 2 = ∑ i = 1 m a i 2 ≥ 0 ||a||_2=\sqrt{\sum_{i=1}^ma_i^2}\ge0 ∣∣a2=i=1mai2 0 for all a

矩阵

如果可能,此处应当补充关于矩阵的更多知识(超出线性代数课程),如pca主成分分析。详见线性代数、矩阵论。
矩阵特征值和特征向量 A x = λ x Ax=\lambda x Ax=λx
对称性
正定型(特征值均为非负数)
正交矩阵

函数求导

详见微积分

标量、向量、矩阵间的求导运算

在这里插入图片描述
标量对标量求导=1

x = ( x 1 x 2 . . . x m ) , ∂ y ∂ x = ( ∂ y ∂ x 1 , ∂ y ∂ x 2 , . . . , ∂ y ∂ x m ) x=\begin{pmatrix} x_1\\ x_2\\ ...\\ x_m \end{pmatrix},\frac{\partial y}{\partial x} =\begin{pmatrix} \frac{\partial y}{\partial x_1}, \frac{\partial y}{\partial x_2}, ..., \frac{\partial y}{\partial x_m} \end{pmatrix} x= x1x2...xm ,xy=(x1y,x2y,...,xmy)称为分母布局

y = ( y 1 y 2 . . . y m ) , ∂ y ∂ x = ( ∂ y 1 ∂ x ∂ y 2 ∂ x . . . ∂ y m ∂ x ) y=\begin{pmatrix} y_1\\ y_2\\ ...\\ y_m \end{pmatrix},\frac{\partial y}{\partial x} =\begin{pmatrix} \frac{\partial y_1}{\partial x}\\ \frac{\partial y_2}{\partial x}\\ ...\\ \frac{\partial y_m}{\partial x} \end{pmatrix} y= y1y2...ym ,xy= xy1xy2...xym 称为分子布局
此处有些不清楚,详见矩阵求导的本质与分子布局、分母布局的本质(矩阵求导——本质篇)

机器学习基本流程

分为:有监督学习(占大头)、无监督学习、半监督学习、强化学习
k折交叉验证,用于评估算法的准确度:
在这里插入图片描述

欠拟合和过拟合:
在这里插入图片描述

克服过拟合的方法:权重衰减,平方正则化作为硬/软约束

深度学习框架

在这里插入图片描述
学生多用pytorch,企业多用tensorflow,还有百度的paddlepaddle,此外,c++的框架是caffe

DNN 前向(深度)神经网络(感知机)

感知机

给予输入x,权重w,偏置(bias)b,感知机输出:
o = σ ( w ⋅ x + b ) o=\sigma(w·x+b) o=σ(wx+b),其中wx是向量点积, σ ( x ) \sigma (x) σ(x)是激活函数。
最早的感知器非常简单,由Rosenblatt在1957年提出,只有两层神经元,只能对线性数据进行分辨。这还曾经导致人们对神经网络的计算能力产生了严重的怀疑,很大程度上阻碍了神经网络研究的发展。
在这里插入图片描述

在这里插入图片描述
损失函数(loss): l ( y , x , w ) = m a x ( 0 , − y w ⋅ x ) l(y,x,w)=max(0,-yw·x) l(y,x,w)=max(0,ywx)其中y是真实label,为使损失函数最小,使用梯度下降算法(柯西,1860)
伪代码:
在这里插入图片描述
多层感知机MLP构成前向神经网络(全连接):

单隐含层二分类
在这里插入图片描述
单隐含层多分类
在这里插入图片描述
多隐含层多分类
在这里插入图片描述
多层感知器具有对线性不可分数据进行辨识的能力

激活函数

作用
1.完成数据的非线性变换,解决线性模型的表达、分类能力不足的问题,而且如果网络中全是线性变换,那么可以通过数学推导转化为一层,失去了深度的含义;
2.执行数据的归一化,将输入数据映射到某个范围内,再往下传递,这样做的好处是可以限制数据的扩张,防止数据过大导致的溢出风险

激活函数的性质:
1.计算简单(频繁)
2.输出范围有限,如 ∈ [ 0 , 1 ] 或 [ − 1 , 1 ] \in [0,1]或[-1,1] [0,1][1,1]
3.非线性
4.单调性(保持梯度方向的稳定)
5.几乎处处可微(用于梯度下降算法的求导)

举例:
1.sigmoid函数
s i g m o i d ( x ) = 1 1 + e − x sigmoid(x)=\frac{1}{1+e^{-x}} sigmoid(x)=1+ex1
s i g m o i d ′ ( x ) = s i g m o i d ( x ) ( 1 − s i g m o i d ( x ) ) sigmoid'(x)=sigmoid(x)(1-sigmoid(x)) sigmoid(x)=sigmoid(x)(1sigmoid(x))
在这里插入图片描述
缺点:幂运算相对耗时;函数具有饱和性。在反向传播时容易出现梯度消失的情况,从而无法完成深层网络的训练;收敛缓慢
2.双曲正切函数
t a n h ( x ) = 1 − e − 2 x 1 + e − 2 x tanh(x)=\frac{1-e^{-2x}}{1+e^{-2x}} tanh(x)=1+e2x1e2x
t a n h ′ ( x ) = 1 − t a n h 2 ( x ) tanh'(x)=1-tanh^2(x) tanh(x)=1tanh2(x)
在这里插入图片描述
特点:和 Sigmoid 函数的曲线相近;在输入很大或是很小的时候,输出都几乎平滑;整个函数以 0 为中心;计算量大
3.线性修正函数(ReLU)
R e L U ( x ) = m a x ( x , 0 ) ReLU(x)=max(x,0) ReLU(x)=max(x,0)
f ′ ( x ) = 1 , x > 0 f'(x)=1,x>0 f(x)=1,x>0
在这里插入图片描述
特点:仿生物学;解决梯度消失问题;计算比较简单
4.阶跃函数
s t e p ( x ) = { 1 , x > 0 0 , x < 0 step(x)=\left\{\begin{matrix} 1,x>0 \\ 0,x<0 \end{matrix}\right. step(x)={1,x>00,x<0
在这里插入图片描述
5.带泄露线性整流函数 (Leaky ReLU)
是 ReLU 函数的变体,输入值为负时梯度为一个常数
在这里插入图片描述
6.ELU 函数
E L U ( x ) = { x , x > 0 α ( e x − 1 ) , x < = 0 ELU(x)=\left\{\begin{matrix} x,x>0 \\ \alpha(e^x-1),x<=0 \end{matrix}\right. ELU(x)={x,x>0α(ex1),x<=0
E L U ′ ( x ) = { 1 , x > 0 E L U ( x ) + α , x < = 0 ELU'(x)=\left\{\begin{matrix} 1,x>0 \\ ELU(x)+\alpha,x<=0 \end{matrix}\right. ELU(x)={1,x>0ELU(x)+α,x<=0
在这里插入图片描述

7.SoftPlus 函数
ReLU 函数的平滑版,,值域为 (0, +∞)。运算量比较大,收敛速度比 ReLU 要慢很多
f ( x ) = l n ( e x + 1 ) f(x)=ln(e^x+1) f(x)=ln(ex+1)
f ′ ( x ) = 1 e x + 1 f'(x)=\frac{1}{e^x+1} f(x)=ex+11

梯度下降算法

用于求函数的局部最小值

误差反向传播 (BP) 算法

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

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

相关文章

flutter 自定义弹窗封装弹窗----在弹窗内实现部分窗体生命周期

小部件组件 可以在里面加装其他事件如HTTP接口访问 import package:flutter/material.dart;///执行弹窗动画封装 class ExecutionDialog extends StatefulWidget {// final String? title;// final String? message;// final Function? onExecute;//// const ExecutionDial…

暴力枚举--选数

题目描述 已知 n 个整数 x1​,x2​,⋯,xn​&#xff0c;以及 1 个整数 k&#xff08;k<n&#xff09;。从 n 个整数中任选 k 个整数相加&#xff0c;可分别得到一系列的和。例如当 n4&#xff0c;k3&#xff0c;4 个整数分别为 3,7,12,19 时&#xff0c;可得全部的组合与它…

关于Docker守护程序未运行导致的错误

01 在启动Docker之前&#xff0c;确保你已经安装了Docker并且Docker服务是运行的。以下是一些步骤可以帮助你解决这个问题&#xff1a; 首先&#xff0c;确保Docker已经正确安装在你的系统上。你可以通过运行以下命令来检查Docker是否已安装&#xff1a; docker --version如果…

【免费获取】【下片神器】IDM非主流网站视频免费下载神器IDM+m3u8并解决idm下载失败问题 idm下载器超长免费试用

当你浏览一个网站&#xff0c;看到一个喜欢的视频&#xff0c;不知道如何下载的时候&#xff0c;本教程或许可以帮你点小忙。大部分的主流网站都有专门的下载工具&#xff0c;本篇教程主要针对的是一些非主流的小网站。 我们的下载方法就是利用IDM&#xff08;Internet Downlo…

web练习仿小米页面

效果图&#xff1a; HTML代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document…

江苏开放大学2024年春《液压与气压传动060246》第2形考作业占形考成绩的25%参考答案

​答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 电大搜题 多的用不完的题库&#xff0c;支持文字、图片搜题&…

python--冒泡排序和main函数

1.判断是不是回文数&#xff1a; x int(input("请输入一个正整数&#xff1a;")) x str(x) if x x[::-1]:print("是回文数。") else:print("不是回文数。") 2.冒泡排序 # 冒泡排序: # [30&#xff0c;8&#xff0c;-10&#xff0c; 50&am…

[OAuth2]authorization_request_not_found

最近在写一套OAuth2s授权认证&#xff0c;当在oauth2-client调用oauth2-server&#xff0c;并且在点击授权以后&#xff0c;oauth2-client却显示【authorization_request_not_found】&#xff0c;并跳到了登陆页面。 经过调试发现&#xff0c;【authorization_request_not_fou…

Java希尔排序知识点(含面试大厂题和源码)

希尔排序&#xff08;Shell Sort&#xff09;是插入排序的一种改进版本&#xff0c;也被称为“缩小增量排序”。它是由IBM的研究员Donald Shell于1959年提出的。希尔排序的核心思想是将原始数据集分割成若干个子序列&#xff0c;每个子序列由相隔一定增量的元素组成&#xff0c…

[LeetCode][400]第 N 位数字

题目 400. 第 N 位数字 给你一个整数 n &#xff0c;请你在无限的整数序列 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, …] 中找出并返回第 n 位上的数字。 示例 1&#xff1a; 输入&#xff1a;n 3 输出&#xff1a;3 示例 2&#xff1a; 输入&#xff1a;n 11 输出&#xff1a;…

java算法汇总(蓝桥常用-->自总版)(更新中...)

这里写目录标题 1.递归求n的阶乘2.互质3.例题:奇妙的数字两个数字拼接String.toCharArray()方法String.valueOf()方法 4.例题:美丽的2String.contains()方法 5.ASCII码---a,A,0的转换6.String[] a---->求sum(a[p].charAt(q))-0;7.复数BigInteger 大整数类型本题用到的方法--…

Sora是否能颠覆视频制作行业?一文带你了解

一个月前OpenAI宣布了一款名为Sora的新生成式人工智能系统&#xff0c;该系统可以根据文本提示生成短视频。虽然Sora尚未向公众开放&#xff0c;但迄今为止发布的高质量样本已经引起了兴奋和担忧的反应。 OpenAI发布的样本视频&#xff08;该公司称这些视频是由Sora直接制作&am…

Python学习笔记-简单案例实现多进程与多线程

Python 的多进程与多线程是并发编程的两种重要方式&#xff0c;用于提高程序的执行效率。它们各自有不同的特点和适用场景。 多进程&#xff08;Multiprocessing&#xff09; 概念&#xff1a; 多进程是指操作系统中同时运行多个程序实例&#xff0c;每个实例称为一个进程。…

表单元素使用

表单元素使用 要完成的效果:代码实现: 要完成的效果: 代码实现: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0">…

完整部署一套k8s-v.1.28.0版本的集群

一、系统情况 虚拟机版本&#xff1a;esxi 6.7 系统版本&#xff1a;centos7.9_2009_x86 配置&#xff1a;4核8G&#xff08;官网最低要求2核2G&#xff09; 192.168.0.137 master节点 192.168.0.139 node2节点 192.168.0.138 node1节点&#xff08;节点扩容练习&#xf…

Spring Cloud_Spring Cloud Alibaba_00000

版本选择 Spring Boot版本选择 Spring Boot github源码地址&#xff1a;https://github.com/spring-projects/spring-boot/releases/ Spring Boot github地址&#xff1a;https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-3.0-Release-Notes Spring Cloud g…

DataX 源码改造支持Mysql 8.X

文章目录 DataX 源码改造支持Mysql 8.X问题背景克隆源代码并修改重新打包生产环境发布DataX 源码改造支持Mysql 8.X 问题背景 今天在使用DataX同步数据的时候遇到一个问题,报错如下 错误信息为:java.sql.SQLException: No suitable driver found for ["jdbc:mysql://…

Java-常见面试题收集(七)

十四 MySQL 1 MySQL 支持的存储引擎 MySQL 支持多种存储引擎&#xff0c;常见的有2种&#xff0c;你可以通过 show engines 命令来查看 MySQL 支持的所有存储引擎。MySQL 当前默认的存储引擎是 InnoDB。并且&#xff0c;所有的存储引擎中只有 InnoDB 是事务性存储引擎&#xf…

==和equals的区别【大白话Java面试题】

和equals的区别 大白话回答 的作用&#xff1a;   基本类型&#xff1a;比较的就是值是否相同   引用类型&#xff1a;比较的就是地址值是否相同 equals 的作用:   引用类型&#xff1a;默认情况下&#xff0c;比较的是地址值。 注&#xff1a;不过&#xff0c;我们可以…

在axios中设置方法防止http重复请求

可以在封装的 Axios 中设置方法来防止 HTTP 的重复请求。一种常见的方法是通过设置一个标识符&#xff0c;在发送请求前检查该标识符&#xff0c;如果之前已经有相同的请求正在进行&#xff0c;则取消当前请求或者等待上一个请求完成后再发送新请求。这种方式可以有效地避免重复…