书籍地址
简要总结一下个人理解
文章目录
- 1.1 NLP
- 1.2 发展历程
- 1.3 NLP任务
- 1.3.1 中文分词
- 1.3.2 子词切分
- 1.3.3 词性标注
- 1.3.4 文本分类
- 1.3.5 实体识别
- 1.3.6 关系抽取
- 1.3.7 文本摘要
- 1.3.8 机器翻译
- 1.3.9 自动问答
- 1.4 文本表示的发展
- 1.4.1 词向量
- 1.4.2 语言模型
- 1.4.3 Word2Vec
- 1.4.4 ELMo
1.1 NLP
英文:Natural Language Processing
全程:自然语言处理
含义:通过计算机模拟人类认知和使用语言
1.2 发展历程
- 早期探索:1940 - 1960年代
- 符号注意与统计方法:1970 - 1990年代
- 机器学习与深度学习: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.3.8 机器翻译
Machine Translation, MT
1.3.9 自动问答
Automatic Question Answering, QA
过程:
- 理解问题
- 提供答案
分类:
- 检索式问答(Retrieval-based QA):从搜索引擎找答案
- 知识库问答(Knowledge-based QA):根据构建的知识库给答案
- 社区问答(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年提出
架构:
- 续词袋模型CBOW(Continuous Bag of Words):根据目标词上下文中的词对应的词向量, 计算并输出目标词的向量表示(适用于小型数据集)-根据上下文猜目标词
- Skip-Gram模型:利用目标词的向量表示计算上下文中的词向量(在大型语料中表现更好)-根据目标词猜上下文
优点:密集向量
缺点:基于局部上下文的,无法捕捉到长距离的依赖关系,缺乏整体的词与词之间的关系
1.4.4 ELMo
Embeddings from Language Models
过程:
- 预训练
- 使用双向LSTM结构
优点:
- 捕捉到词汇的多义性和上下文信息
- 生成的词向量更加丰富和准确
问题:
- 模型复杂度高、训练时间长、计算资源消耗大等。