刘知远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:

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

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

相关推荐
梨落秋霜15 小时前
Python入门篇【文件处理】
android·java·python
Java 码农15 小时前
RabbitMQ集群部署方案及配置指南03
java·python·rabbitmq
张登杰踩16 小时前
VIA标注格式转Labelme标注格式
python
Learner17 小时前
Python数据类型(四):字典
python
odoo中国17 小时前
Odoo 19 模块结构概述
开发语言·python·module·odoo·核心组件·py文件按
Jelena1577958579217 小时前
Java爬虫api接口测试
python
踩坑记录18 小时前
leetcode hot100 3.无重复字符的最长子串 medium 滑动窗口(双指针)
python·leetcode
丝斯201119 小时前
AI学习笔记整理(42)——NLP之大规模预训练模型Transformer
人工智能·笔记·学习
实战项目19 小时前
大语言模型幻觉抑制方法的研究与实现
人工智能·语言模型·自然语言处理
诸神缄默不语20 小时前
Python处理Word文档完全指南:从基础到进阶
python