Datawhlale_快乐学习大模型_task02_NLP 基础概念

书籍地址

简要总结一下个人理解

文章目录

    • [1.1 NLP](#1.1 NLP)
    • [1.2 发展历程](#1.2 发展历程)
    • [1.3 NLP任务](#1.3 NLP任务)
      • [1.3.1 中文分词](#1.3.1 中文分词)
      • [1.3.2 子词切分](#1.3.2 子词切分)
      • [1.3.3 词性标注](#1.3.3 词性标注)
      • [1.3.4 文本分类](#1.3.4 文本分类)
      • [1.3.5 实体识别](#1.3.5 实体识别)
      • [1.3.6 关系抽取](#1.3.6 关系抽取)
      • [1.3.7 文本摘要](#1.3.7 文本摘要)
      • [1.3.8 机器翻译](#1.3.8 机器翻译)
      • [1.3.9 自动问答](#1.3.9 自动问答)
    • [1.4 文本表示的发展](#1.4 文本表示的发展)
      • [1.4.1 词向量](#1.4.1 词向量)
      • [1.4.2 语言模型](#1.4.2 语言模型)
      • [1.4.3 Word2Vec](#1.4.3 Word2Vec)
      • [1.4.4 ELMo](#1.4.4 ELMo)

1.1 NLP

英文:Natural Language Processing

全程:自然语言处理

含义:通过计算机模拟人类认知和使用语言

1.2 发展历程

  1. 早期探索:1940 - 1960年代
  2. 符号注意与统计方法:1970 - 1990年代
  3. 机器学习与深度学习:2000年代至今

1.3 NLP任务

1.3.1 中文分词

把句子分解成字和词

复制代码
英文输入:The cat sits on the mat.
英文切割输出:[The | cat | sits | on | the | mat]

中文输入:今天天气真好,适合出去游玩.
中文切割输出:["今天", "天气", "真", "好", ",", "适合", "出去", "游玩", "。"]

1.3.2 子词切分

对词语进一步切分,对于英文unhappiness分别成un前缀、happi词根、ness后缀

1.3.3 词性标注

标注为名词、动词、形容词

1.3.4 文本分类

对于给定文本,将其进行分类

复制代码
文本:"NBA季后赛将于下周开始,湖人和勇士将在首轮对决。"
类别:"体育"

文本:"美国总统宣布将提高关税,引发国际贸易争端。"
类别:"政治"

文本:"苹果公司发布了新款 Macbook,配备了最新的m3芯片。"
类别:"科技"

1.3.5 实体识别

从文本中抽取人名、地名还是时间等

复制代码
输入:李雷和韩梅梅是北京市海淀区的居民,他们计划在2024年4月7日去上海旅行。

输出:[("李雷", "人名"), ("韩梅梅", "人名"), ("北京市海淀区", "地名"), ("2024年4月7日", "日期"), ("上海", "地名")]

1.3.6 关系抽取

抽取实体以及它们的联系,是构建知识图谱的基础

复制代码
输入:比尔·盖茨是微软公司的创始人。

输出:[("比尔·盖茨", "创始人", "微软公司")]

1.3.7 文本摘要

对给定的文本做个总结

  1. 抽取式摘要

    从原文摘取,简单但不够通顺

  2. 生成式摘要

    自己生成,需要复杂的模型

1.3.8 机器翻译

Machine Translation, MT

1.3.9 自动问答

Automatic Question Answering, QA

过程:

  1. 理解问题
  2. 提供答案

分类:

  1. 检索式问答(Retrieval-based QA):从搜索引擎找答案
  2. 知识库问答(Knowledge-based QA):根据构建的知识库给答案
  3. 社区问答(Community-based QA):根据用户社区论坛给答案

1.4 文本表示的发展

在计算机中如何表示文本是一个难题

1.4.1 词向量

类似于onehot,词汇表存在所有可能出现的词语,每个词语就是词汇表一个的01向量,问题是数据稀疏维数灾难

复制代码
# "雍和宫的荷花很美"
# 词汇表大小:16384,句子包含词汇:["雍和宫", "的", "荷花", "很", "美"] = 5个词

vector = [0, 0, ..., 1, 0, ..., 1, 0, ..., 1, 0, ..., 1, 0, ..., 1, 0, ...]
#                    ↑          ↑          ↑          ↑          ↑
#      16384维中只有5个位置为1,其余16379个位置为0
# 实际有效维度:仅5维(非零维度)
# 稀疏率:(16384-5)/16384 ≈ 99.97%

1.4.2 语言模型

N-gram 模型:基于马尔可夫假设,一个词的出现概率仅依赖于它前面的N-1个词

优点:简单、易于理解

问题:N较大,数据稀疏、参数大;忽略词之间的依赖关系,无法捕捉句子结构和语义

1.4.3 Word2Vec

是一种词嵌入(Word Embedding)技术,由Tomas Mikolov等人在2013年提出

架构:

  1. 续词袋模型CBOW(Continuous Bag of Words):根据目标词上下文中的词对应的词向量, 计算并输出目标词的向量表示(适用于小型数据集)-根据上下文猜目标词
  2. Skip-Gram模型:利用目标词的向量表示计算上下文中的词向量(在大型语料中表现更好)-根据目标词猜上下文

优点:密集向量

缺点:基于局部上下文的,无法捕捉到长距离的依赖关系,缺乏整体的词与词之间的关系

1.4.4 ELMo

Embeddings from Language Models

过程:

  1. 预训练
  2. 使用双向LSTM结构

优点:

  1. 捕捉到词汇的多义性和上下文信息
  2. 生成的词向量更加丰富和准确

问题:

  • 模型复杂度高、训练时间长、计算资源消耗大等。
相关推荐
快手技术几秒前
效果&成本双突破!快手提出端到端生成式推荐系统OneRec!
人工智能·深度学习·大模型·推荐算法
Apipost的同学们9 分钟前
高效调试 AI 大模型 API:用 Apipost 实现 SSE 流式解析与可视化
ai·大模型·apipost功能介绍·apipost sse·api开发最佳实践
dundunmm10 小时前
【一天一个知识点】RAG构架的第四步:设计问答链路与响应控制(Response Chain & Output Control)
大模型·rag·检索
羊小猪~~10 小时前
【NLP入门系列三】NLP文本嵌入(以Embedding和EmbeddingBag为例)
人工智能·深度学习·神经网络·自然语言处理·大模型·nlp·embedding
我想说一句11 小时前
在Colab玩转大模型:一天速成NLP魔法师!
前端·nlp·trae
程序员阿超的博客1 天前
Java大模型开发入门 (13/15):拥抱官方标准 - Spring AI框架入门与实践
人工智能·langchain·大模型·spring ai·langchain4j
小白狮ww1 天前
VASP 教程:VASP 机器学习力场计算硅的声子谱
人工智能·深度学习·机器学习·大模型·vasp··声子谱
R.X. NLOS1 天前
论文阅读笔记 | Qwen-VL:一个视觉语言大模型,通晓理解、定位、文本阅读等多种能力
论文阅读·笔记·大模型·多模态大模型·qwen-vl
大模型铲屎官2 天前
【深度学习-Day 29】PyTorch模型持久化指南:从保存到部署的第一步
人工智能·pytorch·python·深度学习·机器学习·大模型·llm