【研0深度学习】李宏毅2024春《生成式人工智能导论》持续更新...

news2024/11/18 13:59:48

文章目录

  • 第1讲 什么是生成式人工智慧?
  • 第2讲 今日的生成式人工智慧厉害在哪里?
  • 第3-5讲 训练不了人工智慧,你可以训练你自己(在不训练模型的情况下强化语言模型的方法)
  • 第6讲 大模型修炼史——第一阶段 自我学习 累计实力

第1讲 什么是生成式人工智慧?

  • 生成式人工智慧的目的不是进行做有结果的分类,而是使机器生成复杂有结构的物件。今天的生成式人工智慧多以深度学习构成。
  • 以现如今流通最广泛的ChatGPT为例,GPT可以看作一个函数,输入图片、语音或者文字等,“创造性”地输出结果。这里的“创造性”的实现是将问题拆解成一连串的文字进行接龙,转化为分类问题。对于每个结果都有概率,在这个概率的基础上掷骰子,进行输出。
  • 如下图所示有百分之五十的概率输出“学”字。那么问题来了,如果每次输出概率最大的不行吗?回答是不行的,因为如果每次输出概率最大的token的话,可能会导致输出重复混乱,所以采用掷骰子的方法。

第2讲 今日的生成式人工智慧厉害在哪里?

如今的GPT能够通过人类下的指示prompt,灵活地完成任务,而不是只有某些特定的功能。
现在人工智慧已经从「工具」进化成「工具人」,那么我还能做什么呢?

  • 思路一:我改不了模型,那我改变我自己——给更清楚的指令、提供额外资讯(Prompt Engineering)
  • 思路二:我要自己训练模型

第3-5讲 训练不了人工智慧,你可以训练你自己(在不训练模型的情况下强化语言模型的方法)

按照今天语言模型的能力,只需要把要完成的任务描述清楚即可。
有些在不训练模型的情况下可以训练语言模型的方法:

  1. 神奇咒语:叫模型一步一步思考
  2. 提供额外资讯:把前提讲清楚
  3. 提供生成式AI不清楚的咨询/范例:如文本等信息。In-context Learning
  4. 拆解任务:把一个大任务,拆解成小任务让GPT逐步完成
  5. 让语言模型检查自己的错误
  6. 使用工具:
  1. 使用搜索引擎:在网络或资料库中搜索额外的信息给语言模型最后输出结果,这个方法又称为Retrieval Augmented Generation(RAG)
  2. 写代码:解决部分问题时,使用代码进行解决,而不是可能出现错误的文字接龙,这个方法叫做Program of Thought(PoT)
  3. 文生图AI(DALL-E)
  4. 除了上述三种工具之外,还有很多GPT插件待探索和发现。
  1. 语言模型彼此合作:
  1. 未来不需要打造全能的模型,语言模型可以彼此分工,不同团队可以专注打造专业领域的模型。
  2. 另外,为了降低模型的成本,可以训练一个模型,选择不同的模型做合适的事情。比如,简单的问题并不需要使用高昂的GPT4进行回答,当训练一个模型可以选择回答模型的时候,简单问题就可以选择GPT3.5进行回答,根据不同问题难度选择不同把成本的模型。
  3. 让模型彼此讨论得到的结果,对结果进行修正,这样比模型自己反省得到的结果优秀。多模型讨论的方法称做Exchange of Thought。但是现在模型讨论面临的问题时,讨论结束太快,所有在加prompt的时候最好加上:不一定要同意其他人的观点,自己思考如何得到正确的观点。
  4. 引入不同的角色:根据不同任务引入不同的角色,每个角色给除自己以外的打分,分数太低的就不参与工作。

第6讲 大模型修炼史——第一阶段 自我学习 累计实力

大模型训练的第一阶段:Pre-tain。大模型在第一阶段中从网络中搜寻大量的文字资料进行Self-supervised learing 自监督式学习。
那么需要多少个文字资料才能够让机器学习到足够的知识呢?对于语言知识,大概1亿个资料就足够,但是对于世界知识,1亿个资料是远远不够的,因为世界知识过于庞杂,层次过多,即使到30亿的训练资料也不够学习。(如下图所示)

在网络上搜寻资料时也不是随便搜寻,也是要进行资料清理的:(以GPT-3/The Pile/PaLM使用的资料品质分类器所示)

过滤有害内容
去除HTML等符号-只保留项目符号
去除低品质资料
去除重复资料
测试集过滤

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

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

相关文章

ROS2入门21讲__第08讲__话题:节点间传递数据的桥梁

目录 前言 通信模型 发布/订阅模型 多对多通信 异步通信 消息接口 案例一:Hello World话题通信 运行效果 发布者代码解析 程序实现 流程总结 订阅者代码解析 程序实现 流程总结 案例二:机器视觉识别 运行效果 发布者代码解析 订阅者代…

WebGL学习(一)渲染关系

学习webgl 开发理解渲染关系是必须的,也非常重要,很多人忽视了这个过程。 我这里先简单写一下,后面尽量用通俗易懂的方式,举例讲解。 WebGL,全称Web Graphics Library,是一种在网页上渲染3D图形的技术。它…

FPGA时钟:驱动数字逻辑的核心

一、引言 在FPGA(现场可编程门阵列)设计中,时钟信号是不可或缺的关键要素。时钟信号作为时序逻辑的心跳,推动着FPGA内部各个存储单元的数据流转。无论是实现复杂的逻辑运算还是处理高速数据流,都需要精确的时钟信号来保…

CASS11自定义宗地图框

1、找到CASS11的安装路径,找到如下文件夹: 2、打开【report】文件夹,如下: 3、打开其中一个压缩包,如【标准宗地图】压缩包,结果如下: 4、打开后,将其另存为到桌面,随后关…

Leetcode621. 任务调度器

Every day a Leetcode 题目来源:621. 任务调度器 类似题目:1953. 你可以工作的最大周数 解法1:贪心 本质上来说,我们需要构造一个尽量短的,相同元素间隔 > (n1) 的序列。 用一个数组 cnt 统计每个任务的次数。…

Oracle创建用户时提示ORA-65096:公用用户名或角色名无效

Oracle创建用户时提示“ORA-65096:公用用户名或角色名无效” 如下图所示: 解决方法:在新增用户名前面加上C##或者c##就可以解决无效问题,具体什么原因还不清楚,需要再研究一下。

Discourse 安装后安全配置考虑

防火墙 防火墙是肯定要装机器上的,并且端口只开放了 443 和 22。 22 的端口还只限制了部分 IP 段的访问,通常只允许给内部网络的 SSH。 Web 服务应该只走 443,80 端口的做好自动重定向到 443。 CloudFlare 可以用一个 CloudFlare 的负载…

行为设计模式之状态模式

文章目录 概述定义结构图 2.代码示例小结 概述 定义 状态模式(state pattern)的定义: 允许一个对象在其内部状态改变时改变它的行为。 对象看起来似乎修改了它的类。 状态模式就是用于解决系统中复杂对象的状态转换以及不同状态下行为的封装问题.。状态模式将一个对象的状态…

QtCreator调试运行工程报错,无法找到相关库的的解决方案

最新在使用国产化平台做qt应用开发时,总是遇到qtcreator内调试运行 找不到动态库的问题,为什么会出现这种问题呢?明明编译的时候能够正常通过,运行或者调试的时候找不到相关的库呢?先说结论,排除库本身的问…

基于tensorflow的咖啡豆识别

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 一、前期工作 1. 设置GPU import tensorflow as tfgpus tf.config.list_physical_devices("GPU")if gpus:tf.config.experimental.set_memory_gr…

远程桌面连接--“发生身份验证错误。要求的函数不受支持”

出现身份验证错误 要求的函数不受支持的问题,可以通过以下几种方法尝试解决:12 对于Windows 10家庭版用户,需要修改注册表信息。具体步骤如下: 按下WIN R,输入regedit,点击确定,打开注册表编辑…

openresty(Nginx) 隐藏 软包名称及版本号 升级版本

1 访问错误或者异常的URL 2 修改配置,重新编译,升级 #修改版本等 vim ./bundle/nginx-1.13.6/src/core/nginx.h #define nginx_version 1013006 #define NGINX_VERSION "1.13.6" #define NGINX_VER "openresty/&q…

python中的-1是什么意思

python中的-1是什么意思? -1指的是索引,即列表的最后一个元素。 比如你输入一个列表: a = [1,2,3,4,5,6,7] a[-1]就代表索引该列表最后一个值,你可以 b a[-1] print(b) 结果如下: 7 索引从左往右是…

5.28学习总结

java复习总结 hashcode()和equals() hashcode():在Object里这个方法是通过返回地址的整数值来生成哈希值。 equals():在Object里这个方法是通过比较他们的内存地址来确定两个对象是否相同。 运行效率:hashcode的时间复杂度为O(1)(因为只要计算一次哈…

SpringCloud之SSO单点登录-基于Gateway和OAuth2的跨系统统一认证和鉴权详解

单点登录(SSO)是一种身份验证过程,允许用户通过一次登录访问多个系统。本文将深入解析单点登录的原理,并详细介绍如何在Spring Cloud环境中实现单点登录。通过具体的架构图和代码示例,我们将展示SSO的工作机制和优势&a…

mysql 8 [HY000][1114] The table ‘/tmp/#sql4c3_3e5a0_2‘ is full

分组有个比较大的表,出现了临时表空间满了的情况; 试用该sql 语句: SHOW GLOBAL VARIABLES LIKE internal_tmp_mem_storage_engine; 可以看到 默认临时结果是用临时表存的,在mysql的my.cnt可以改临时空间的大小 但是磁盘哪有内…

2、python环境的安装-mac系统下

打开官网,downloads下边有macOS,点击: 选择最新版本,点击,进入下边的页面,一直往下滑,看到files中有个macOS的版本,点击下载 点击下载后是pkg的安装包,点击安装。 一步步…

浙江大学数据结构MOOC-课后习题-第九讲-排序3 Insertion or Heap Sort

题目汇总 浙江大学数据结构MOOC-课后习题-拼题A-代码分享-2024 题目描述 测试点 思路分析 和上一题的思路一样&#xff0c;每进行一次迭代&#xff0c;来验证当前序列是否和给定的序列相同 代码展示 #include <cstdlib> #include <iostream> #define MAXSIZE 10…

代码随想录算法训练营第七天| 454.四数相加II 、383. 赎金信、 15. 三数之和、18. 四数之和

454.四数相加II 题目链接&#xff1a; 454.四数相加II 文档讲解&#xff1a;代码随想录 状态&#xff1a;没做出来&#xff0c;没想到考虑重复的情况&#xff01; 题解&#xff1a; public int fourSumCount(int[] nums1, int[] nums2, int[] nums3, int[] nums4) {// 结果计数…

100个 Unity小游戏系列三 -Unity 抽奖游戏专题一 转盘抽奖游戏

一 、效果展示 二、知识点 2.1 布局需要实现功能 1、转动的根目录为itemSpinRoot 2、创建对应的item 3、每个item转动的角度 2.2 代码 public class WheelDialog : UIBase{[SerializeField] Button btnClick;[SerializeField] Button btnClose;[SerializeField] Sprite[] ite…