码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 李宏毅2022《机器学习/深度学习》——学习笔记(5)


    文章目录

    • 优化方法
    • CNN
      • CNN和全连接神经网络的区别
      • 感受野
      • 共享参数
      • CNN和全连接神经网络的总结
      • Pooling
      • CNN流程
    • 自注意力机制
      • 自注意力机制解决的问题
      • 输入是一组向量的例子
      • 输入是一组向量时输出的可能
      • 自注意力机制核心思想
      • 自注意力机制具体细节
      • Self-attention和CNN的关系
    • 参考资料

    优化方法

    常用的优化方法
    在这里插入图片描述

    CNN

    CNN和全连接神经网络的区别

    全连接神经网络的每个神经元和每一个输入都有连接,这样会使训练参数数目很大。
    在这里插入图片描述
    考虑到图片分类的特性,实际上每一个神经网络只需要和部分输入连接就行。

    由于人在识别图片中某个物体其实只是看图片中某些特征,比如看一只鸟,当看到了鸟喙、鸟的眼睛和鸟爪,就能判断这张图片代表的是一只鸟。因此一个神经元只看输入的某一块区域,当发现一些特征时,就可以判断这个物体的类别了。所以不需要每个神经元都去看一张完整的图片。
    在这里插入图片描述

    感受野

    下面就可以做简化
    在这里插入图片描述

    本来一个神经元会看整个图片,也就是和 3 ∗ 长 ∗ 宽 3*长*宽 3∗长∗宽的输入相连,现在设置一个感受野,让神经元只和这一个感受野中的输入相连。具体来说,如上图所示,把这个感受野中的数据拉直,也就是 3 ∗ 3 ∗ 3 3*3*3 3∗3∗3个输入,让它们和神经元相连,这样就有27个权重,再加上bias,计算结果送给下一个神经元。

    在这里插入图片描述
    感受野的设计完全由自己决定,不过要和实际情况和对问题的理解结合。

    一种经典的设计方式
    在这里插入图片描述

    共享参数

    同样的pattern可能出现在图片的不同区域
    在这里插入图片描述
    这些侦测鸟嘴的神经元所做的事情是一样的,只是它们守备的范围不同,那就没有必要每个侦测鸟嘴的地方都放一个神经元,这样可以减少参数。

    这样就可以共享参数
    在这里插入图片描述
    这两个神经元的权重完全是一样的

    在这里插入图片描述
    一个典型的设计
    每个神经元都只有一组参数

    在这里插入图片描述

    CNN和全连接神经网络的总结

    全连接神经网络加上稀疏连接和权值共享就变成了CNN
    在这里插入图片描述
    在这里插入图片描述

    Pooling

    在这里插入图片描述

    在这里插入图片描述

    CNN流程

    在这里插入图片描述

    自注意力机制

    自注意力机制解决的问题

    目前我们遇到的问题,输入都是一个向量,输出是一个数值或类别。
    但是可能遇到另一种问题,输入是一组长度不确定的向量,这种情况如何处理?
    自注意力机制(Slef-attention)就是要解决这个问题。
    在这里插入图片描述

    输入是一组向量的例子

    假如输入是一个句子,每个单词是一个向量,由于句子的长度不固定,所以这组向量的长度也不确定。
    在这里插入图片描述

    输入是一组向量时输出的可能

    输入是一组N个向量时输出的可能有三种

    1. 输出是N个label
    2. 输出是一个label
    3. 输出是N‘个向量
      在这里插入图片描述

    自注意力机制核心思想

    Self-attention的输入是所有输入向量,输出相同数量的向量,每个向量都考虑了所有输入向量。再经过全连接网络输出。
    这样每个全连接网络就不是只考虑一个小的范围,而是考虑了整个句子的信息。
    在这里插入图片描述
    Self-attention不是只能用一次,而是可以叠加。

    在这里插入图片描述

    自注意力机制具体细节

    b 1 b^1 b1是考虑了 a 1 , a 2 , a 3 , a 4 a^1,a^2,a^3,a^4 a1,a2,a3,a4产生的,同理 b 2 , b 3 , b 4 b^2, b^3, b^4 b2,b3,b4也是。
    在这里插入图片描述

    以 b 1 b^1 b1为例,讨论 b 1 b^1 b1向量是如何产生的。
    在这里插入图片描述
    第一步,计算 a 1 a^1 a1与其他输入向量的相关性在这里插入图片描述
    计算两个向量相关性的具体方式如下
    在这里插入图片描述
    计算 a 1 a^1 a1与其他向量的相关性后,再过一个Soft-max,输出就得到另一排向量。
    在这里插入图片描述
    把 a 1 a^1 a1乘上 W v W^v Wv得到新的向量 v 1 v^1 v1,再根据公式
    b 1 = ∑ i a 1 , i ′ v i b^1=\sum_ia^{'}_{1,i}v^i b1=i∑​a1,i′​vi
    计算得到 b 1 b^1 b1
    在这里插入图片描述

    Self-attention和CNN的关系

    CNN可以看成是简化版的Self-attention
    Self-attention是一个复杂化的CNN
    Self-attention中CNN的感受野是自己学出来的
    在这里插入图片描述

    CNN是Self-attention的特例
    在这里插入图片描述

    参考资料

    (强推)李宏毅2021/2022春机器学习课程
    p26-p39

  • 相关阅读:
    跨链协议支持Sui的资产所有权理念,助力资产在不同链之间流通
    基础知识-网络与服务器
    动态获取填充表格数据时的特定值的赋值
    中国大模型语料数据联盟迎来9家新成员,开源第二批语料数据
    【Python基础:面向对象之魔法方法】
    求求你别在用SpringMVC了,太Low了,Spring又官宣了一个更牛逼的替代框架
    【MySQL篇】事务相关知识点总结(全)
    Mybatis系列之 parameterMap 弃用了
    As Const:一个被低估的 TypeScript 特性
    Go runtime 调度器精讲(十):异步抢占
  • 原文地址:https://blog.csdn.net/m0_46283220/article/details/128137372
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号