斯坦福NLP课程来了

生成式AI,尤其是以ChatGPT为首的大语言模型正在改变人们的生活方式,我想一定有小伙伴想加入NLP这个行列。

微软重磅发布4个适合初学者的机器学习资料

我在前一篇文章中分享了微软人工智能初学者课程,其中的【生成式AI】非常适合初学者,今天我将分享NLP的进阶课程。

https://web.stanford.edu/class/cs224n/
关注v公众号:人工智能大讲堂,后台回复snlp获取全部资料。

资料分为三种:课堂讲义,课后笔记,相关论文。

第一周课程:

第一讲:词嵌入

计算机只能处理数字,在将文本输入到模型之前,需要将其数字化,而词嵌入就是一种将文本数字化的方法。

在讲词嵌入之前,有必要先讲一下Tokenizer,Tokenizer是将文本分割成Token,常见的Token有字符,单词,或者子词(sub word)。

在这里插入图片描述

Tokenizer后,就可以将Token转换成数字了。

最简单的方式是直接使用字符编码(ASCII,Unicode),但这种方式无法保留单词的语义信息,且不同编码方式之间无法进行转换。

另一种方法是,因为常用的字符和词的个数是有限的,可以构造字典或者词典,然后将字符或者单词替换成在字典或者词典中的位置,或者是one-hot编码。但这种方式仍然无法保留语义信息。

什么是语义信息?可以这么理解,“男人”和“皇帝”语义相近,所以在向量空间中距离应该接近,也就是向量余弦相似度大。

在这里插入图片描述

上面这三种方法是一种硬编码方法,而词嵌入是一种软编码方法。

因为单词与字符相比具有更丰富的语义信息,所以NLP中通常将文本分割成词或者子词(sub word)。

Tokenizer后就可以进行词嵌入了,将词转换成具有语义信息向量的方法就是词嵌入方法,word2vec就是其中一种。其主要思想是通过神经网络模型对大规模语料进行训练,训练完成后得到词向量矩阵。

在这里插入图片描述

在这里插入图片描述

例如,如果一个词表有4096个单词,每个单词用512维向量表示,那么word2vec训练完成后就得到一个4096*512大小的矩阵,或者将矩阵构造成查找表,通过Tokenizer后的one-hot编码与词向量矩阵相乘或者根据位置索引查表就能得到词嵌入向量了。

第二讲:语言模型

将文本数字化后,接下来讲语言模型,语言模型(Language Model)是自然语言处理中的一个核心问题,是用来计算一个序列词语或字符出现的概率的模型。它也是后续GPT,Bert等大语言模型的理论基础。

在这里插入图片描述

在这里插入图片描述

常用的语言模型主要有以下几类:

n-gram语言模型

基于n-gram统计的传统语言模型,通过统计语料中序列出现的次数来估计概率。

如果n=2,也就是计算一个词跟在另一个词后面出现的概率。比如对句子“我爱北京天安门”,可以计算概率:

P(天安门|北京) = C(北京天安门)/C(北京)

这里:

  • C(北京天安门) 是“北京天安门”这个2-gram的出现次数

  • C(北京) 是“北京”这个1-gram的出现次数

n太小会导致语言模型太弱,n太大会导致概率无法估计。

深度学习模型

所以,更常用的方式是通过神经网络去构建语言模型,通过词向量和神经网络映射,获得词语的分布式表示。如RNN、LSTM、GRU,Transformer等语言模型。学习能力强,但是需要大量数据和计算资源。

其中,transformer模型效果最好。

第二周课程:

第一讲:神经网络和反向传播

既然已经明确了用神经网络去构建语言模型,那么有必要了解NLP中常用的模型架构以及如何训练模型。

NLP处理的是时序数据,擅长处理时序数据的是循环神经网络,按照NLP的发展历程来看,其模型经历了RNN->LSTM->GRU->Transformer的迭代。

在这里插入图片描述

Transformer已经成为主流模型,除了其自身的注意力机制外,还有一个优点,在CV中,当模型越来越大后,虽然可以通过残差连接加快模型收敛,但模型的效果提升有限,而Transformer在数据量和计算资源充足的情况下,模型越大效果越好,这也是为什么大公司都在搞军备竞赛一样,动不动就搞出个1000多亿个参数的模型。

但循环神经网络的训练过程也要比CV更复杂,RNN训练过程就容易出现梯度消失和爆炸问题。

在这里插入图片描述

虽然训练复杂,但本质上也是基于链式法则的反向传播过程对参数进行更新。

在这里插入图片描述

第三周课程:

第一讲:RNN和语言模型

第三周主要讲解具体的模型,第一个是RNN,因为RNN是NLP的鼻祖。

在这里插入图片描述

同CV中的模型一样,RNN也有输入层,隐藏层,和输出层,不同的是,它有时间的概念,不同时间步参数是共享的。

如果是类似机器翻译的任务,也就是seq in,seq out,那么每一个输入后,都会有一个输出。

如果是类似情感分析的人类任务,则使用最后一个时间步的隐藏状态,因为它考虑了前面所有时间的隐藏状态。

在这里插入图片描述

在这里插入图片描述

第二讲:Seq2Seq模型

对于seq in,seq out的任务,如果使用RNN模型,也就是每一个输入后都有一个输出,那么输出只会考虑当前时间点以前的输入和隐藏状态,并没有捕获整个输入的信息。

为了捕获整个输入的信息,就有了Seq2Seq模型,本质上是一个编码器和解码器模型,编码器对输入进行编码,保存到隐藏状态中,然后在解码器中使用编码器中的隐藏状态。

在这里插入图片描述

第四周课程:

第一讲:Tranformer

Tranformer太重要了,所以整个一周都在讲Tranformer。

Tranformer也是一种编码器-解码器结构,编码器和解码器中都通过多头注意力机制捕获不同位置单词的关系。

在这里插入图片描述

GPT就是一种transformer Decoder模型,Bert则是transformer Encoder模型,本质上都可以看作是概率模型。

在这里插入图片描述

第五周课程:

第一讲:预训练模型

大模型可以分为基础模型或者通用模型,以及在基础模型上进行微调而来的专用模型。

在这里插入图片描述

基础模型也被成为预训练模型,是在大量预料库中进行无监督训练而来的。

以Bert为例,如果直接使用Bert的预训练模型,因为Bert是一种Encoder模型,只能完形填空。

如果要使用Bert进行聊天怎么办?这就需要在预训练模型基础上进行有监督的微调,例如,使用成对的问答预料,加上人类反馈的强化学习。

在这里插入图片描述

我们目前所使用的ChatGPT也是在GPT 3.5-turbo预训练模型的基础上微调而来的。

第六周课程:

第一讲:提示微调

前面我们提到了需要在预训练模型的基础上进行微调才能得到能够聊天,问答,总结的专用模型,那有哪几种微调方法呢?

在这里插入图片描述

一种是全量微调,也就是用有监督的方式,在训练数据上对模型的全部参数进行调整,如果要想得到效果好的模型,就需要大量的有监督数据和计算资源。

另一种是只调整部分参数,例如LoRA,通过训练两个低秩矩阵来模拟参数的更新,而两个低秩矩阵的参数远小于原始参数的量。

在这里插入图片描述

最后一种是原始模型的参数冻结,在提示词上下功夫,通过学习在提示词前面加上一个前缀,或者将提示词映射成模型更能理解的提示词。这样做的好处是如果要训练多个专用模型,内存中只需要存储一个原始模型即可。

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

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

相关文章

利用 Gem5 模拟器创建一个简单的配置脚本——翻译自官网

文章目录 创建简单的配置脚本gem5 配置脚本关于模拟对象的插话 创建配置文件全系统与系统调用模拟 运行Gem5 创建简单的配置脚本 本章教程将指导你如何为 gem5 设置一个简单的模拟脚本,并首次运行 gem5。我们假定你已完成本教程第一章的学习,并已成功创…

重生奇迹mu格斗怎么加点

1.力量加点 力量是格斗家的主要属性之一,它可以增加你的攻击力和物理伤害。因此,对于格斗家来说,力量加点是非常重要的。建议在前期将大部分的加点放在力量上,这样可以让你更快地杀死怪物,提高升级速度。 2.敏捷加点…

Java 环境其他下载2

1 Eclipse Temurin Latest Releases | Adoptium Eclipse Temurin 是由基于 OpenJDK 的开源 Java SE 产生的构建版本。Temurin 适用于 广泛的平台 以及诸多 Java SE 版本。以下列出了推荐用于生产的最新版本,并且定期由 Adoptium 社区发布更新和支持。迁移帮助、容器…

不是说人工智能是风口吗,那为什么工作还那么难找?

最近确实有很多媒体、机构渲染人工智能可以拿高薪,这在行业内也是事实,但前提是你有足够的竞争力,真的懂人工智能。 首先,人工智能岗位技能要求高,人工智能是一个涵盖了多个学科领域的综合性学科,包括数学、…

虹科分享 | 平衡速度与优先级:为多样化的实时需求打造嵌入式网络(3)——CAN与CANopen的实时能力与局限性

在回顾了选择具有实时能力的嵌入式通信系统的基本要求之后,我们现在将更详细地探讨CAN和CANopen的实时能力和局限性。 控制器局域网(CAN)协议是各个行业众多应用的基础,每个应用都有其独特的实时需求。CANopen和J1939等著名示例强调了该协议的多种适应性…

「浙江科聪新品发布」新品发布潜伏顶升式移动机器人专用控制器

聚焦专用车型 最小专用控制器 控制器只占整机5%,纵向出线方式,占比更小 更易插拔 整体解决方案 更具价格优势 提供整体解决方案,配套各类型产品设备及车体厂家 打造持久稳定使用 坚持工业级品质 采用车规级接口,不用其它类不可…

蓄势・前行 | 博格华纳的新能源+战略布局

10月11日-13日,AWC 2023深圳国际新能源及智能网汽车全产业博览会在深圳国际会展中心盛大开幕,此次展会现场共计接待专业观众3W余名,同期举办20场次主题论坛峰会,不仅汇聚众多中外汽车产业巨擘,更是一场涵盖智能驾驶、新…

(内部资料)收下这几个人工智能学习秘籍!

秘籍一:练好基本功 学习基础知识:人工智能涉及多个学科领域,包括数学、计算机科学、统计学等。因此,学习基础知识是非常重要的。您可以通过学习线性代数、概率论和微积分等数学基础知识,以及掌握Python编程语言和常用…

String类常用方法总结

目录 一.简单认识String 二.String对象的比较 1.equals 内部实现原理: 2.compareTo 3.compareToIgnoreCase 三.字符串查找 示例: 四.字符串与其他类型转化 1.数值和字符串相互转换 2.大小写相互转化 3.字符串转数组 4.格式化转化 五.字符串…

振南技术干货集:制冷设备大型IoT监测项目研发纪实(1)

注解目录 1.制冷设备的监测迫在眉睫 1.1 冷食的利润贡献 1.2 冷设监测系统的困难 (制冷设备对于便利店为何如何重要?了解一下你所不知道的便利店和新零售行业。关于电力线载波通信的论战。) 2、电路设计 2.1 防护电路 2.1.1 强电防护 …

企业该怎么选择IP证书

IP证书是一种数字证书,它由权威的数字证书颁发机构(CA)颁发,部署在只有公网IP地址的站点上,用于在网络中验证身份和保护信息安全。IP证书可以在各种场景下保护网站的信息安全,比如网站vip登录,线…

创作一款表情包生成微信小程序:功能详解与用户体验优化

一、引言 在当今社交媒体充斥着各种趣味表情包的时代,表情包生成工具成为许多用户创作和分享创意的热门选择。为了迎合这一趋势,我设计并开发了一款功能丰富、用户友好的微信小程序,旨在让用户能够轻松而有趣地创作个性化的表情包。这篇博客将…

【Spring总结】注解开发

本篇讲的内容主要是基于Spring v2.5的注解来完成bean的定义 之前都是使用纯配置的方式来定义的bean 文章目录 前言1. Spring v2.5 注解开发定义bean第一步:在需要定义的类上写上注解Component第二步:在Spring Config中定义扫描包第三步:主方法…

C# Onnx 百度PaddleSeg发布的实时人像抠图PP-MattingV2

目录 效果 模型信息 项目 代码 下载 效果 图片源自网络侵删 模型信息 Inputs ------------------------- name:img tensor:Float[1, 3, 480, 640] --------------------------------------------------------------- Outputs -----------------…

5.3 Windows驱动开发:内核取应用层模块基址

在上一篇文章《内核取ntoskrnl模块基地址》中我们通过调用内核API函数获取到了内核进程ntoskrnl.exe的基址,当在某些场景中,我们不仅需要得到内核的基地址,也需要得到特定进程内某个模块的基地址,显然上篇文章中的方法是做不到的&…

C语言矩阵乘积(ZZULIOJ1127:矩阵乘积)

题目描述 计算两个矩阵A和B的乘积。 输入第一行三个正整数m、p和n&#xff0c;0<m,n,p<10&#xff0c;表示矩阵A是m行p列&#xff0c;矩阵B是p行n列&#xff1b;接下来的m行是矩阵A的内容&#xff0c;每行p个整数&#xff0c;用空格隔开&#xff1b;最后的p行是矩阵B的内…

深兰科技多款大模型技术产品登上新闻联播!

11月20日晚&#xff0c;新闻联播报道了2023中国5G工业互联网大会&#xff0c;深兰科技metamind、汉境大型城市智能体空间等大模型技术和产品在众多参展产品中脱颖而出&#xff0c;被重点播报。 2023中国5G工业互联网大会 本届大会由工信部和湖北省人民政府联合主办&#xff0c;…

Haproxy搭建 Web 群集

一、常见的web集群调度器 1.目前常见的web集群调度器分为软件和硬件 2.软件通常使用开源的LVS、Haproxy、Nginx 3.硬件一般使用比较多的是F5&#xff0c;也有很多人使用国内的一些产品&#xff0c;如梭子鱼、绿盟等 二、Haproxy应用分析 1.LVS在企业应用中抗负载能力很强&am…

【shell】shell指令学习

仅供本人自学&#xff0c;完全从自己可以理解的角度写的&#xff0c;知识点都是copy网上已有的学习资料&#xff0c;侵权请联系本人删除&#xff0c;谢谢。 1. 文本资料学习 学习Linux&#xff0c;从掌握grep、sed、awk开始吧。 Linux文本三剑客超详细教程—grep、sed、awk …

【LeetCode刷题笔记】DFSBFS(一)

51. N 皇后 解题思路: DFS + 回溯 :由于 NxN 个格子放 N 个皇后, 同一行不能放置 2 个皇后,所以皇后必然放置在不同行 。 因此,可以从第 0 行开始,逐行地尝试,在每一个 i