刘知远LLM入门到实战——自然语言基础

文章目录

为什么NLP等领域的模型越来越大?
大模型会带来哪些新的范式和挑战?

自然语言处理基础

让计算机理解人类语言,图灵测试就是基于对话的方式。

  • 研究历史:2011年IBM Watson DeepQA在线问答节目战胜所有人类
  • 基本任务:词性标注(动词、名词、形容词)、命名实体的识别(识别出名词是否为实体,如人名、地名、机构名)、共指消解(代词是指代哪个实体)、依赖关系(主语、谓语、修饰关系、中文的自动分词)
  • 应用:
    • 搜索引擎:匹配用户搜索的query和document的关系,以及反馈相应的广告。评估页面的内容质量。知识图谱的构建。
    • 智能音箱。
    • 翻译
    • 情感分析

词表示

  • 词和词之间相似度计算:星星-太阳
  • 词和词之间的关系:中国-北京

怎么表示词义呢?

  • 过去:用相关的词(近义词、反义词)来表示
  • 存在问题:词义存在细微差别难以表达;相关词需要大量人工标注;有的词会出现新的词义,如Apple;近义词等的标注存在主观性问题。
  • 解决:对每个词进行one-hot编码。适用于文档之间的相似度计算。但是在词的层面,one-hot假设词与词之间彼此正交,没有体现上下文的关系。
  • 改进:用上下文表示词。存在问题:词表越来越大时对存储的要求;出现频率低的词上下文就少,会很稀疏,不好表示。
  • 大模型的思路 :word embedding
    建立一个低维的稠密向量空间,尝试把每个词都学到这个空间里,用这个空间所对应的位置表示这个词。从而找出词之间的对应关系
    代表工作:Word2Vec

语言模型

根据前文预测下一个词是什么,接龙。

需要的能力:1. 计算词的序列成为一句话的概率,即联合概率;2. 根据上文预测下一个词是什么

如何完成?

基本的假设:假设一个未来的词只会受前面的词的影响(马尔可夫性)。可以将联合概率拆解为条件概率相乘

N-gram Model

看前面出现了几个词对后面词的频度

4-gram:前面出现了3个词对下一个词的频度。统计学的模型

Bigram:只考虑前面一个词,N=2

Trigram:只考虑前面2个词,N=3

存在问题:基于符号的统计问题:统计结果稀疏,数据量巨大;不能理解词之间的相似度dog-cat

Neural Language Model:

首先把词表示为低维的向量 ;再将前几个词的向量拼接在一起;用向量来预测后面的词。

相似的词,向量也会比较相似

相关推荐
程序员小远3 分钟前
如何编写测试用例?
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
旦莫4 分钟前
AI生成测试用例:一个Prompt模板让AI从Excel模板生成自动化脚本
人工智能·python·测试开发·自动化·prompt·测试用例
东北洗浴王子讲AI6 分钟前
从零搭建AI文学创作助手:基于API聚合站+Flask实现智能写诗、小说生成神器
人工智能·python·flask
2301_7662834411 分钟前
Golang怎么实现防重复提交_Golang如何用Token机制防止表单重复提交【技巧】
jvm·数据库·python
qq_4142565711 分钟前
CSS如何实现元素在容器内居中_利用margin-auto技巧
jvm·数据库·python
2401_8242226912 分钟前
如何用 Transferable 对象零拷贝转移超大数组内存给子线程
jvm·数据库·python
财经资讯数据_灵砚智能12 分钟前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年4月28日
大数据·人工智能·python·信息可视化·自然语言处理
SilentSamsara13 分钟前
Python 并发基础:threading/GIL 与 multiprocessing 的选型逻辑
服务器·开发语言·数据库·vscode·python·pycharm
m0_4954964113 分钟前
如何禁用 Vite 中的热更新(HMR)以避免 React 应用加载中断
jvm·数据库·python
m0_7411733314 分钟前
MySQL中如何使用CAST实现类型转换_MySQL数据类型转换技巧
jvm·数据库·python