2022清华暑校笔记之L2_1神经网络的基本组成

2024-03-05 22:30

本文主要是介绍2022清华暑校笔记之L2_1神经网络的基本组成,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2022清华大学大模型交叉研讨课

L2 Neural Network basics

1 神经网络的基本组成

1.1 神经元

  • 单个的神经元:

    在这里插入图片描述
    将权重向量(矩阵)和输入向量点乘,得到一个标量值,加上偏置b(标量)后送入非线性的激活函数f,得到输出。

1.2神经网络

  • 多个神经元构成单层神经网络:

    在这里插入图片描述
    多个神经元时,权重由向量变成了矩阵(3*3),偏置b由标量变成了向量(b1,b2,b3)。
  • 堆叠单层神经网络得到多层神经网络:
    在这里插入图片描述
    我们可以从输入开始一次计算每一层的结果,每一层的结果都是上一层的结果经过线性变化和激活函数得到的。

1.3 激活函数

  • why use f?为什么要用非线性函数来激活?
    在这里插入图片描述
    • 如图,假设我们的网络中只存在线性变换的话,两层网络之后,我们发现h2完全可以用初始的输入数据只经过一次变化后得到。
    • 因此,单层的表达能力和多层的表达能力是一致的,为了防止网络的塌陷,增加网络的表达能力,来拟合更复杂的函数,我们引入非线性的网络结构。
  • 常见的非线性激活函数

1.4 输出层

  • 根据不同的输出形式确定输出层:
    • linear output
      • 在隐藏层后增加线性层直接输出。
      • 适用于回归问题。
    • Sigmoid
      • 先用普通的线性层得到一个值,然后运用sigmoid激活函数,将输出压到0-1这个区间内。
      • 适用于二值分类问题。
    • Softmax
      • 先用最后的隐层计算一个线性层,得到一个输出结果z,然后代入函数 y i = softmax ⁡ ( z ) i = exp ⁡ ( z i ) ∑ j exp ⁡ ( z j ) y_{i}=\operatorname{softmax}(z)_{i}=\frac{\exp \left(z_{i}\right)}{\sum_{j} \exp \left(z_{j}\right)} yi=softmax(z)i=jexp(zj)exp(zi)
      • 目的:消除了z为负数时的影响;使得所有的输出类值和为1,得到了不同类别的概率分布。
      • 常解决多分类的问题。

2 训练

2.1 训练目标:

  • 预测的目标:降低均方差(回归问题)
  • 分类的目标:最小化交叉熵
    在这里插入图片描述
    如果正确答案为第一个类别的话,我们可以计算出交叉熵为0.74;如果正确答案为第二个类别的话,可以计算出交叉熵为1.74;如果正确答案为第三个类别的话……

2.2 如何更新

  • 梯度下降的概念: 在这里插入图片描述
    • 我们每一次缩小一点损失函数
    • 每一次先计算损失函数对于参数的梯度,即得到了损失函数对于参数变化最快的地方。由于我们要取最小值,因此我们选择负方向且绝对值最大的方向。
  • 梯度下降的做法:
    • 对于单个输入(可以看作一维参数),求偏导
    • 对于n个输入时,见下图,可以得到结果梯度矩阵。
      在这里插入图片描述
  • 梯度下降的窍门:
    • 连续求导
    • 反向传播算法
      • 前向传播指的是按照边指向的顺序,其中有向边的作用为传递值。
        在这里插入图片描述
      • 为了求得最后的输出对于某个输入值的梯度,我们使用和计算方向相反的方向。
      • 以其中一段为例,介绍单个节点的计算方法:
        在这里插入图片描述
        • 将上游的梯度和本地的梯度相乘,即可计算出下游的梯度,以此类推可以继续求得再下游的梯度。
          在这里插入图片描述

3 词项表示Word2Vec

3.1 Sliding Box:一个固定大小的滑动窗口

当窗口移动到句子的某一端时,只有target

3.2 CBOW:根据context,预测target在这里插入图片描述

将never和late用one-hot向量表示,将这两个向量做一个平均,然后将词向量变成词表大小,最后通过softmax得到概率分布。

3.3 skip-gram:根据target,预测context

  • 由于模型预测出多个结果的难度过大,因此我们将任务分解,一个一个来。

3.4 改进:

3.4.1 弊端: full softmax时,若遇到大的词表,再见过反向传播和梯度下降时,速度会比较慢。
3.4.2 两种提高计算效率的方法:
  • 负采样
    理解参考
    • 只采样一小部分,按照词的频率进行采样。
      P ( w i ) = f ( w i ) 3 / 4 ∑ j = 1 V f ( w j ) 3 / 4 P\left(w_{i}\right)=\frac{f\left(w_{i}\right)^{3 / 4}}{\sum_{j=1}^{\mathbb{V}} f\left(w_{j}\right)^{3 / 4}} P(wi)=j=1Vf(wj)3/4f(wi)3/4
    • 3/4为经验值,为了稍微提高低频词的采样频次。
  • 分层softmax
3.4.3 Other tips:
  • sub-sampling:平衡常见词和罕见词
    • 常见词出现频率高,涵盖的语义不太丰富,罕见词则反之。
      1 − t / f ( w ) 1-\sqrt{t / f(w)} 1t/f(w)
    • 若一个词出现的频率越高,则他被去掉的可能性越大
  • soft sliding window
    • 更远的词应该更少被考虑

这篇关于2022清华暑校笔记之L2_1神经网络的基本组成的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/778016

相关文章

基本知识点

1、c++的输入加上ios::sync_with_stdio(false);  等价于 c的输入,读取速度会加快(但是在字符串的题里面和容易出现问题) 2、lower_bound()和upper_bound() iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。 iterator upper_bou

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个

查看提交历史 —— Git 学习笔记 11

查看提交历史 查看提交历史 不带任何选项的git log-p选项--stat 选项--pretty=oneline选项--pretty=format选项git log常用选项列表参考资料 在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。 完成这个任务最简单而又有效的 工具是 git log 命令。 接下来的例子会用一个用于演示的 simplegit

记录每次更新到仓库 —— Git 学习笔记 10

记录每次更新到仓库 文章目录 文件的状态三个区域检查当前文件状态跟踪新文件取消跟踪(un-tracking)文件重新跟踪(re-tracking)文件暂存已修改文件忽略某些文件查看已暂存和未暂存的修改提交更新跳过暂存区删除文件移动文件参考资料 咱们接着很多天以前的 取得Git仓库 这篇文章继续说。 文件的状态 不管是通过哪种方法,现在我们已经有了一个仓库,并从这个仓