深度学习 基础知识

  • 1. sigmoid
  • 2. tanh
  • 3. relu
  • 4. softmax

1. sigmoid

a=11+e−Za = \frac{1}{1 + e^{-Z}}a=1+e−Z1​ ,值域介于0和1之间

import numpy as np
import matplotlib.pyplot as pltZ = np.linspace(-10, 10, 100)
a = 1 / (1 + np.exp(-Z))fig = plt.figure()
plt.plot(Z, a, color="blue", linewidth=1, linestyle="-", label="sigmoid")
plt.legend(loc="upper left")plt.xlabel("Z", x=1)
plt.ylabel("a", y=1)
plt.xticks([-10, 0, 10])
plt.yticks([0.5, 1])ax = plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.spines['left'].set_position(('data', 0))
ax.spines['bottom'].set_position(('data', 0))plt.show()

2. tanh

a=tanh⁡(Z)=sinh⁡Zcosh⁡Z=eZ−e−Zex+e−Za = \tanh(Z)=\frac{\sinh Z}{\cosh Z}=\frac{e^Z-e^{-Z}}{e^x+e^{-Z}}a=tanh(Z)=coshZsinhZ​=ex+e−ZeZ−e−Z​ ,值域介于+1和-1之间,斜率[0, 1),并且使得数据的平均值更接近0而不是0.5

import numpy as np
import matplotlib.pyplot as pltZ = np.linspace(-5, 5, 100)
a = np.tanh(Z)fig = plt.figure()
plt.plot(Z, a, color="blue", linewidth=1, linestyle="-", label="tanh")
plt.legend(loc="upper left")plt.xlabel("Z", x=1)
plt.ylabel("a", y=1)
plt.xticks([-5, 5])
plt.yticks([-1, 1])ax = plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.spines['left'].set_position(('data', 0))
ax.spines['bottom'].set_position(('data', 0))plt.show()

3. relu

修正线性单元的函数(ReLu):a=max(0,Z)a = max(0, Z)a=max(0,Z) ,只要z是正值的情况下,导数恒等于1,当z是负值的时候,导数恒等于0

import numpy as np
import matplotlib.pyplot as pltZ = np.linspace(-5, 5, 11)
a = np.maximum(0, Z)fig = plt.figure()
plt.plot(Z, a, color="blue", linewidth=1, linestyle="-", label="Relu")
plt.legend(loc="upper left")plt.xlabel("Z", x=1)
plt.ylabel("a", y=1)
plt.xticks([-5, 5])
plt.yticks([5])ax = plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.spines['left'].set_position(('data', 0))
ax.spines['bottom'].set_position(('data', 0))plt.show()

4. softmax

softmax(Zi)=eZi∑1CeZcsoftmax(Z_{i}) = \frac{e^{Z_{i}}}{\sum_{1}^{C}e^{Z_{c}}}softmax(Zi​)=∑1C​eZc​eZi​​,又称归一化指数函数

它是二分类函数sigmoid在多分类上的推广,目的是将多分类的结果以概率的形式展现出来

  • 分子:通过指数函数,将实数输出映射到零到正无穷
  • 分母:将所有结果相加,进行归一化

假如模型对一个三分类问题的预测结果为a, b, c
softmax将差距大的数值距离拉的更大
在深度学习中通常使用反向传播求解梯度进而使用梯度下降进行参数更新的过程,而指数函数在求导的时候比较方便

import numpy as np
import matplotlib.pyplot as pltdef hardmax(Z):return Z / sum(Z)def softmax(Z):return np.exp(Z) / sum(np.exp(Z))pred = np.array([0.5, 1.5, 4])
a = np.array([hardmax(pred)[0], softmax(pred)[0]])
b = np.array([hardmax(pred)[1], softmax(pred)[1]])
c = np.array([hardmax(pred)[2], softmax(pred)[2]])x = np.arange(2)
x_labels = ["hardmax", "softmax"]
plt.xticks(x, x_labels)total_width, n = 0.8, 3
width = total_width / n
x = x - (total_width - width) / 2plt.bar(x, a, width=width, label="a")
plt.bar(x + width, b, width=width, label="b")
plt.bar(x + 2*width, c, width=width, label="c")
plt.legend()plt.show()

谢谢

深度学习笔记(51) 公式图形相关推荐

  1. 《繁凡的深度学习笔记》前言、目录大纲 一文让你完全弄懂深度学习所有基础(DL笔记整理系列)

    <繁凡的深度学习笔记>前言.目录大纲 (DL笔记整理系列) 一文弄懂深度学习所有基础 ! 3043331995@qq.com https://fanfansann.blog.csdn.ne ...

  2. 一文弄懂元学习 (Meta Learing)(附代码实战)《繁凡的深度学习笔记》第 15 章 元学习详解 (上)万字中文综述

    <繁凡的深度学习笔记>第 15 章 元学习详解 (上)万字中文综述(DL笔记整理系列) 3043331995@qq.com https://fanfansann.blog.csdn.net ...

  3. 深度学习笔记(44) Triplet 损失

    深度学习笔记(44) Triplet 损失 1. 三元组损失函数 2. 损失函数公式 3. 训练集 1. 三元组损失函数 已经了解了Siamese网络架构,并且知道想要网络输出什么,即什么是好的编码 ...

  4. 深度学习笔记其五:卷积神经网络和PYTORCH

    深度学习笔记其五:卷积神经网络和PYTORCH 1. 从全连接层到卷积 1.1 不变性 1.2 多层感知机的限制 1.2.1 平移不变性 1.2.2 局部性 1.3 卷积 1.4 "沃尔多在 ...

  5. 吴恩达深度学习笔记(四)

    吴恩达深度学习笔记(四) 卷积神经网络CNN-第二版 卷积神经网络 深度卷积网络:实例探究 目标检测 特殊应用:人脸识别和神经风格转换 卷积神经网络编程作业 卷积神经网络CNN-第二版 卷积神经网络 ...

  6. 深度学习笔记其六:现代卷积神经网络和PYTORCH

    深度学习笔记其六:现代卷积神经网络和PYTORCH 1. 深度卷积神经网络(AlexNet) 1.1 学习表征 1.1 缺少的成分:数据 1.2 缺少的成分:硬件 1.2 AlexNet 1.2.1 ...

  7. AI Studio 飞桨 零基础入门深度学习笔记2-基于Python编写完成房价预测任务的神经网络模型

    AI Studio 飞桨 零基础入门深度学习笔记2-基于Python编写完成房价预测任务的神经网络模型 波士顿房价预测任务 线性回归模型 线性回归模型的神经网络结构 构建波士顿房价预测任务的神经网络模 ...

  8. 深度学习笔记:优化方法总结(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam)

    深度学习笔记(一):logistic分类  深度学习笔记(二):简单神经网络,后向传播算法及实现  深度学习笔记(三):激活函数和损失函数  深度学习笔记:优化方法总结  深度学习笔记(四):循环神经 ...

  9. 799页!吴恩达深度学习笔记.PDF

    吴恩达深度学习课程,是公认的最优秀的深度学习课程之一,目前没有教材,只有视频,本文提供完整笔记下载,这本笔记非常适合和深度学习入门. 0.导语 黄海广博士和同学将吴恩达老师深度学习视频课程做了完整的笔 ...

  10. 下载量过百万的吴恩达机器学习和深度学习笔记更新了!(附PDF下载)

    今天,我把吴恩达机器学习和深度学习课程笔记都更新了,并提供下载,这两本笔记非常适合机器学习和深度学习入门.(作者:黄海广) 0.导语 我和同学将吴恩达老师机器学习和深度学习课程笔记做成了打印版,放在g ...

最新文章

  1. 【leetcode】二叉树与经典问题
  2. 【android】夜间模式简单实现
  3. oracle判断修改,【数据库】Oracle实现判断条件批量修改功能
  4. C++ Primer 5th笔记(chap 19 特殊工具与技术)type_info 类
  5. 20150901-Linux磁盘管理及文件系统管理
  6. @ControllerAdvice实现优雅地处理异常
  7. mongodb启动时报错ERROR: child process failed, exited with error number 1
  8. Android热修复升级探索——代码修复冷启动方案 1
  9. S7-200SMART案例分析——运动控制之步进选型(一)
  10. ssr使用mysql数据库_MySQL数据库安装与配置详解
  11. 如何在电脑上用Win11便签备忘录提醒重要工作
  12. Matlab的eval函数
  13. 经典编程书籍大全-python
  14. PDN连接与默认 APN
  15. 测试工程师的未来发展方向在哪里?
  16. 【转】反调试技巧总结-原理和实现
  17. 【办公软件】如何设置任务栏图标的显示与隐藏
  18. 人工智能数学基础--概率与统计3:随机变量与概率分布
  19. LAZADA店铺运营分享:lazada后台有没有数据分析?生意参谋如何使用!
  20. QD入门.symbian手机通用(转)

热门文章

  1. 南京大学计算机信息安全专业,2020信息安全专业排名【大学】
  2. 【schedule】立即手动执行定时器任务
  3. SecureCRT和Xshell设置右键复制粘贴
  4. c++ API 设置桌面图标 自动排列图标 网格对齐 snaptogrid
  5. java解析xml文件的几种方式(DOM解析)
  6. matlab 帮助打开死机,U大侠教你MAC打开帮助文档卡死的解决方法
  7. 《国民教育大考察》百度应用创新大奖赛 游戏类 二等奖
  8. Microsoft Edge v107.0.1418.35 微软Edge浏览器便携版
  9. Uncaught TypeError: Cannot set properties of undefined (setting ‘ innerHTML ) 问题
  10. 易中天先生最搞笑的语录