1.8 NLP自然语言处理

NLP自然语言处理

更多内容,请关注:

github:https://github.com/gotonote/Autopilot-Notes.git

一、简介

seq2seq(Sequence to Sequence)是一种输入不定长序列,产生不定长序列的模型,典型的处理任务是机器翻译,输入一段不定长的源语言文字(如中文),而产生一段不定长的目标语言文字(如英文)。

seq2seq模型通常会选用编码器解码器(Encoder-Decoder)架构,编码器接受不定长输入并产生一定大小的上下文(Context),再将上下文投喂给解码器,产生不定长的输出。

在机器翻译的情况下,上下文是一个向量(通常是一个数字数组)。编码器和解码器往往都是递归神经网络RNN。如下图,上下文是浮点数的向量,将具有较高值的单元格分配更亮的颜色来可视化颜色的矢量。可以在设置模型时设置上下文向量的大小。通常为编码器RNN中隐藏单元的数量,此处可视化显示大小为 4 的向量,但在实际应用中,上下文向量的大小可能为 256、512 或 1024。

根据设计,RNN 在每个时间步长接受两个输入:一个输入(在编码器的情况下,输入句子中的一个单词)和一个隐藏状态。词向量通常是在一个大型语料库上学习得到的,这样的技术称为词嵌入(Word Embedding)。这些将单词转换为向量空间,以捕获单词的许多含义/语义信息(例如 国王 - 男人 + 女人 = 女王)。

我们需要在处理输入词之前将其转换为向量。该转换是使用词嵌入算法完成的。我们可以使用预先训练的嵌入,也可以在数据集上训练我们自己的嵌入。嵌入大小为 200 或 300 的向量是典型的,为了简单起见,我们展示了大小为 4 的向量。

二、BERT

BERT是Bidirectional Encoder Representations from Transformers的简称,该模型用Transformer模块堆叠而成,提出一种用大量未标注数据对模型进行预训练(词预测任务MLM和连续语句判断任务NSP),然后用预训练模型在目标训练集上进行微调。

(一)输入/输出表示形式

BERT采用WordPiece1的表示形式

WP = TE + SE + PE

  • 两个特殊标记

    • CLS:起始标记,同时对应的输出向量表示分类结果(Classification)
    • SEP:分隔标记(Separate),分隔两个不同的句子
  • TE:词编码(词嵌入)

  • SE:段编码,指示该单词从属与那个分段(句子)

  • PE:位置编码

(二)预训练任务

用大量未标注的数据集(如维基百科等语料)来构造一系列简单的预训练任务。

(三)词预测MLM

Masked Language Model(LML),训练模型token-level的能力,使其能够关注token之间的联系。随机在语料

中挑选15%的单词进行处理,

  • 以80%的概率将这些单词替换为MASK特殊标记
  • 以10%的概率用词表中的随机单词替换这些单词
  • 以10%的概率保持不变

(四)连续语句判断NSP

Next Sentence Prediction(NSP),训练模型sentence-level的能力,使其能够关注两个语句之间的联系。随机在语料中抽选连续的两个语句,并以50%的概率用随机语句来替代第二个语句,让模型学习判断两个语句是不是

连续的(通常在该任务中能达到97%-98%的准确率)。

(五)迁移学习

BERT复用预训练模型权重之后,在目标数据集和任务上对所有权重进行微调。常见NLP任务的输入输出形式如

下图所示:

参考文献

1 Google's Neural Machine Translation System: Bridging the Gap between Human and Machine Translation

相关推荐
leoZ2311 小时前
实战复盘:用 Claude Code 从零搭一个 GitHub PR 统计工具
java·人工智能·python·深度学习·自然语言处理·github·llama
IT小康4 小时前
协调 codegraph 与 codebase-memory-mcp 两个 MCP 服务器在同一项目中的协作
自然语言处理
额恩666 小时前
自然语言处理 NLP 入门与语言学基础
人工智能·自然语言处理
Zzj_tju6 小时前
Instruction Tuning 论文精读路线:从 Supervised Fine-Tuning 到 Instruction Following
人工智能·笔记·学习·语言模型·自然语言处理
circuitsosk7 小时前
知识问答领域大语言模型设计:对标豆包与DeepSeek的工程实践
人工智能·python·语言模型·自然语言处理·llm·豆包·deepseek
佛祖让我来巡山1 天前
共鸣的灵魂:一个故事讲透AI是如何“理解”人类的
自然语言处理·llm·ai原理·自回归机制
云和数据.ChenGuang1 天前
深度学习完整技术路线图
人工智能·深度学习·机器学习·语言模型·自然语言处理
uncle_ll1 天前
服务器选型、微调范式、训练优化与环境搭建
服务器·python·gpt·llm·nlp
m沐沐2 天前
【自然语言处理】词向量转换与中文文本情感分类——从CountVectorizer到朴素贝叶斯
人工智能·算法·机器学习·自然语言处理·分类·中文分词·词向量转换
zzm6282 天前
多智能体对话中自然语言的涌现条件 —— EMNLP 2017最佳短论文解读
自然语言处理