当前位置: 首页 > news >正文

CS224W6.2——深度学习基础

在本文中,我们回顾了深度学习的概念和技术,这些概念和技术对理解图神经网络至关重要。从将机器学习表述为优化问题开始,介绍了目标函数梯度下降非线性反向传播的概念。

文章目录

  • 1. 大纲
  • 2. 优化问题
    • 2.1 举例损失函数
  • 3. 如何优化目标函数?
  • 4. 梯度下降
    • 4.1 对于SGD的一些概念
  • 5. 如何获得目标函数?
    • 5.1 反向传播
    • 5.2 非线性变换
    • 5.3 MLP
  • 6. 总结

1. 大纲

在这里插入图片描述

这篇我们主要讲第一部分深度学习的基础。

2. 优化问题

我们将机器学习问题、监督学习问题看作是优化问题:

在这里插入图片描述

我们需要学习这样一个映射函数:将输入 x x x映射为输出的预测标签 y y y

将这样的函数学习表述为一个优化过程

在这里插入图片描述

有两件重要的是:

  • 通过优化参数 Θ \Theta Θ,最小化损失函数 L \mathcal{L} L
  • 损失函数用来测量真实值与预测值之间的差距。

2.1 举例损失函数

交叉熵损失函数:

在这里插入图片描述

讨论多分类问题

比如5分类问题,表示5种颜色,我们用one-hot编码表示。

我们要在某种意义上对它进行建模,使用 f ( x ) f(x) f(x)这是将某个函数 g ( x ) g(x) g(x)经过 S o f t m a x ( ) Softmax() Softmax()函数,得到一个预测5分类的概率,这些概率之和为1。

现在要衡量这个预测的质量。

通过单点的交叉熵损失函数 C E ( y , f ( x ) ) CE(y,f(x)) CE(y,f(x))得到的值越小,就表示预测值与真实的one-hot值越接近。

然后将所有单点的损失相加就得到了总的损失 L = ∑ ( x , y ) ∈ T CE ⁡ ( y , f ( x ) ) \mathcal{L}=\sum_{(x,y)\in\mathcal{T}}\operatorname{CE}(y,f(x)) L=(x,y)TCE(y,f(x)),这是所有训练样本的真实值与预测值之间的总差异。

而我们想要的就是找到一个合适的函数 f ( x ) f(x) f(x)最小化真实值与预测值之间的总差异。

3. 如何优化目标函数?

在这里插入图片描述

经典的优化目标函数是通过梯度下降,所以梯度的概念很重要:

某个定点的梯度是一个方向,该方向是函数的最快增长速率。

现在,我们可以对损失函数进行“询问”,关于我的参数 Θ \Theta Θ,我应该朝着哪个方向?(梯度相反的方向)改变我的参数 Θ \Theta Θ使损失 L \mathcal{L} L减少最多

4. 梯度下降

在这里插入图片描述

上面是最基础的梯度下降版本,重复更新模型参数,直至收敛。

最基础的梯度下降有一些问题,所以后续提出了随机梯度下降(SGD):

在这里插入图片描述

传统的梯度下降每一轮迭代都需要计算所有点的梯度,计算量太大,而SGD只计算一部分。

4.1 对于SGD的一些概念

在这里插入图片描述

  • 首先是batch_size的概念,它是我们评估梯度数据的子集,(不是在整个训练数据集上评估梯度——GD,而是在训练集的一小部分——SGD),batch_size的大小是每一批次数据点的数量,通常我们喜欢更大的batch_size但更大的batch_size会使优化变慢
  • 其次是iteration的概念,SGD的一个迭代(iteration),是SGD的一个步骤,我们在给定的batch_size的数据点上评估梯度。迭代次数是:数据集大小/batch_size。
  • 最后是epoch的概念,它是对数据集的全面遍历

这种小批量训练的思想是深度学习的核心。

5. 如何获得目标函数?

对于简单的模型:

在这里插入图片描述

5.1 反向传播

在这里插入图片描述

反向传播的概念:使用链式法则,来传播中间步骤的梯度,最终获得关于模型参数损失的梯度。

举例:

在这里插入图片描述

在这里插入图片描述

5.2 非线性变换

目前为止只使用了简单的两层神经网络,而 W 2 W 1 W_2W_1 W2W1可以表示为另一个矩阵,它依然可以表示为一层的线性变换。

在这里插入图片描述

这意味着,我们通过两侧的线性变换依然得到的是一个线性模型,没有获得更多的表达能力。

而如果我们引入非线性变换,实际上增加了模型的表示能力。这将我们引向多层感知机的概念(MLP)。

5.3 MLP

在这里插入图片描述

6. 总结

在这里插入图片描述

相关文章:

CS224W6.2——深度学习基础

在本文中,我们回顾了深度学习的概念和技术,这些概念和技术对理解图神经网络至关重要。从将机器学习表述为优化问题开始,介绍了目标函数、梯度下降、非线性和反向传播的概念。 文章目录 1. 大纲2. 优化问题2.1 举例损失函数 3. 如何优化目标函…...

Linux c/c++服务器开发实践

在Linux C开发环境中,通常有两种方式来开发多线程程序,一种是利用POSIX多线程 API函数来开发多线程程序,另外一种是利用C自带线程类来开发程序。 常见的与线程相关的基本API函数: API函数含义pthread_create创建线程pthread_exi…...

2023年11月在线IDE流行度最新排名

点击查看最新在线IDE流行度最新排名(每月更新) 2023年11月在线IDE流行度最新排名 TOP 在线IDE排名是通过分析在线ide名称在谷歌上被搜索的频率而创建的 在线IDE被搜索的次数越多,人们就会认为它越受欢迎。原始数据来自谷歌Trends 如果您相…...

视频批量剪辑:视频嵌套合并实战指南,剪辑高手速成秘籍

随着社交媒体的兴起,视频制作的需求越来越广泛。无论是个人用户还是专业团队,都需要对视频进行剪辑以符合其需求。而在这个过程中,批量剪辑视频的能力就变得至关重要。视频批量剪辑是指在一次操作中处理多个视频文件的剪辑。通过使用专业的视…...

每天一点python——day66

#每天一点Python——66 #字符串的分隔 #如图: #方法①split()从左开始分隔,默认空格为分割字符,返回值是一个列表 shello world jisuanji#首先创建一个字符串 list1s.split() print(list1)#输出结果是:[hello, world, jisuanji]注…...

搭建产品帮助中心其实很简单,方法都在这了!

网站帮助中心是一个为用户提供支持和解答问题的重要资源。它不仅可以提高用户体验,还能减少用户问题反馈的数量。通过提供清晰、易于理解的文档和指南,帮助中心可以帮助用户更好地了解产品或服务,并解决他们在使用过程中遇到的问题。接下来我…...

(离散数学)命题及命题的真值

答案: (5)不是命题,因为真值不止一个 (6)不是命题,因为不是陈述句 (7)不是命题,因为不是陈述句 (8)不是命题,真值不唯一...

计算机组成原理之处理器(流水线)

引言 为什么不采用单周期实现,硬件比较简单? 主要是因为效率太低,处理器中最长的路径(一般是ld指令)决定了时钟周期 流水线概述 流水线是一种能使多条指令重叠执行的技术。 流水线更快的原因是所有的工作都在并行执行,所以单位…...

国际阿里云:云服务器灾备方案!!!

保障企业业务稳定、IT系统功能正常、数据安全十分重要,可以同时保障数据备份与系统、应用容灾的灾备解决方案应势而生,且发展迅速。ECS可使用快照、镜像进行备份。 灾备设计 快照备份 阿里云ECS可使用快照进行系统盘、数据盘的备份。目前,阿…...

计算机msvcp140.dll重新安装的四个解决方法,专门解决dll文件丢失问题的方法

在我多年的电脑使用经历中,曾经遇到过一个非常棘手的问题,那就是电脑提示找不到msvcp140.dll文件。这个问题让我苦恼了很久,但最终还是找到了解决方法。今天,我就来分享一下我解决这个问题的四种方法,希望对大家有所帮…...

提莫的idea的bug是真滴多

问题1:maven reload功能失效 我复制了一段代码到我项目里,这段代码依赖hutool包,于是我用idea快速导入,自动导入的是hutool-all:5.8.4。后来我发现这段还是有个函数报错,需要导入更高版本的hutool包才行,于…...

STM32笔记—EXTI外部中断

一、简介 中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置继续运行; 中断优先级&…...

小程序分享当前页面

小程序分享页面的时候,大部分的资料都是显示的是onShareAppMessage 这个方法 /*** 用户点击右上角分享*/onShareAppMessage(res) {return {title: 您的好友向您分享了一本通讯录: this.data.setting.name,imageUrl: this.data.setting.share_img,path: pages/shar…...

10. GPIO中断

10. GPIO中断 回顾stm32中断系统STM32中断向量表中断向量偏移NVIC中断控制器 Cortex_A7 中断系统中断向量表GIC控制器中断IDGIC逻辑分块CP15协处理器c0寄存器c1寄存器c12寄存器c15寄存器 中断使能中断优先级设置优先级数配置 GICC_PMR抢占优先级和子优先级位数设置 GICC_BPR优先…...

【离散数学必刷题】谓词逻辑(第二章 左孝凌版)刷完包过!

专栏:离散数学必刷题 本章需要掌握的重要知识: 1.利用谓词表达式表示命题 2.变元的约束 3.谓词公式的定义、谓词公式的赋值 4.谓词公式的翻译(注意在全总个体域时使用特性谓词) 5.有限论域上量词的消去 6.谓词公式中关于量词的等价…...

SpringBoot系列-2 自动装配

背景: Spring提供了IOC机制,基于此我们可以通过XML或者注解配置,将三方件注册到IOC中。问题是每个三方件都需要经过手动导入依赖、配置属性、注册IOC,比较繁琐。 基于"约定优于配置"原则的自动装配机制为该问题提供了一…...

vue3+ts 前端实现打印功能

1.安装插件 npm install vue3-print-nb --save 2.全局引用 import { createApp } from ‘vue’ import App from ‘./App.vue’ import print from ‘vue3-print-nb’ const app createApp(App) app.use(print) app.mount(‘#app’) 例子 <template><div><el-…...

egg.js sequelize数据库操作配置

egg.js sequelize数据库操作配置 文章目录 egg.js sequelize数据库操作配置1. 数据库配置2. 迁移配置3.数据表设计和迁移4.模型创建 1. 数据库配置 安装并配置egg-sequelize插件&#xff08;它会辅助我们将定义好的 Model 对象加载到 app 和 ctx 上&#xff09;和mysql2模块&a…...

vagrant安装k8s集群

目录 概述前期准备安装virtualbox安装vagrant安装gitbash 集群架构集群安装集群初始化集群测试 概述 使用vagrant、virtualbox创建。 前期准备 安装virtualbox 访问官网安装&#xff0c;版本7.0.10 安装vagrant 访问官网安装&#xff0c;版本2.3.7 安装gitbash 访问官网…...

ArcGIS进阶:水源涵养功能分级评价操作

首先抛出水源涵养重要性评价的公式&#xff1a;水源涵养量降雨量-蒸散发量-地表径流量&#xff0c;其中地表径流量降雨量*平均地表径流系数 声明&#xff1a;以下数据来源于来自于牛强老师书籍&#xff08;城乡规划GIS技术&#xff09;。 以下给出重要性评价阈值表&#xff1…...

keil5软件安装步骤(附安装包)Keil uVision 5 MDK 超详细下载安装教程

文章目录 前言 Keil5软件摘要 下载Keil5安装包 Keil5安装步骤(保姆级) Keil5入门使用技巧 前言 作为嵌入式开发入门的第一步,keilmdk 下载与安装常常让新手工程师感到困惑。本文将提供完整的keilmdk 安装教程,手把手带你从零开始配置开发环境。无论你是刚接触单片机编程的…...

AI Agent集成实时口罩检测:智能机器人视觉系统设计

AI Agent集成实时口罩检测&#xff1a;智能机器人视觉系统设计 1. 引言 在智能机器人快速发展的今天&#xff0c;视觉感知能力成为机器人智能化水平的关键指标。特别是在公共场所服务、医疗辅助、安防巡检等场景中&#xff0c;机器人需要具备实时识别和响应能力。口罩检测作为…...

Harness与OpenClaw:当企业级DevOps遇见个人AI助手

EXCLUSIVE 深度调查Harness与OpenClaw&#xff1a;当企业级DevOps遇见个人AI助手两种AI Agent范式正在重塑软件交付与个人生产力AI日报2026年4月8日阅读约20分钟【核心提要ベ2026年&#xff0c;AI Agent领域出现了两种截然不同的范式&#xff1a;以Harness为代表的企业级DevOp…...

前端安全最佳实践

前端安全最佳实践&#xff1a;守护用户数据的第一道防线 在数字化时代&#xff0c;前端作为用户与系统交互的入口&#xff0c;其安全性直接影响用户体验和企业声誉。随着网络攻击手段的多样化&#xff0c;前端开发不再仅关注功能实现&#xff0c;更需要将安全视为核心需求。本…...

守护数字隐私:Red Button 网络轨迹清理与数字指纹保护完全指南

在当今数字化时代&#xff0c;隐私保护已经成为每个人都需要关注的重要话题。我们在使用电脑和网络时&#xff0c;会留下大量的活动轨迹和数字痕迹。这些痕迹如果被不法分子获取&#xff0c;可能会导致隐私泄露、身份盗用等严重后果。 Red Button 作为一款功能全面的系统工具&…...

郭老师-如何判断一个人有没有领导力

如何判断一个人有没有领导力 ——从魅力到思想力的四重修炼“真正的领导力&#xff0c; 不在于个人魅力&#xff0c; 而在于—— 带领团队做出成绩&#xff0c; 赢得信任&#xff0c; 并拥有清晰的战略思想。”&#x1f33f; 领导力的核心&#xff0c; 是绩效导向&#xff0c; …...

Windows注册表深度解析:核心结构与关键应用场景

1. Windows注册表的核心结构解析 第一次打开注册表编辑器时&#xff0c;那个树状结构的界面可能会让人望而生畏。但当你理解它的设计逻辑后&#xff0c;会发现这个"系统大管家"其实很有条理。注册表的核心是五大根键&#xff08;Root Key&#xff09;&#xff0c;每个…...

保姆级教程:在RTX 4090上复现TVCG2024顶会论文PGSR(3D高斯表面重建)

在RTX 4090上实战复现PGSR&#xff1a;3D高斯表面重建的完整工程指南 当3D高斯抛雪球&#xff08;3DGS&#xff09;遇上几何约束&#xff0c;会碰撞出怎样的火花&#xff1f;ZJU-3DV团队发表在TVCG2024的PGSR论文&#xff0c;通过平面化高斯表示和几何正则化&#xff0c;在保持…...

UE Viewer终极教程:解锁虚幻引擎资源宝库的完整指南

UE Viewer终极教程&#xff1a;解锁虚幻引擎资源宝库的完整指南 【免费下载链接】UEViewer Viewer and exporter for Unreal Engine 1-4 assets (UE Viewer). 项目地址: https://gitcode.com/gh_mirrors/ue/UEViewer UE Viewer是一款功能强大的虚幻引擎资源查看与导出工…...

sklearn分类报告看不懂?5分钟搞懂micro和macro的F1差异(附代码示例)

sklearn分类报告看不懂&#xff1f;5分钟搞懂micro和macro的F1差异&#xff08;附代码示例&#xff09; 第一次看到sklearn的classification_report输出时&#xff0c;那些密密麻麻的precision、recall、f1-score已经够让人头疼了&#xff0c;更别提最后两行突然冒出的micro和m…...