查看全课大纲(第 2 / 69 节)
  1. 1.NLP 的研究领域、应用与学习路径
  2. 2.自然语言的基本术语
  3. 3.信息论基础:信息熵与交叉熵
  4. 4.语言的进化与语义变迁
  5. 5.主观概率、客观概率与条件概率
  6. 6.贝叶斯原理与推理
  7. 7.随机变量:二项式、期望方差与联合概率
  8. 8.常见概率分布
  9. 9.辛普森悖论与贝叶斯解题实例
  10. 10.语言模型:语言概率与词袋模型
  11. 11.n-gram 语言模型(二元 / 三元 / N-Gram)
  12. 12.语言模型评价:交叉熵、困惑度与插值
  13. 13.朴素贝叶斯文本分类:垃圾邮件
  14. 14.拼写检查
  15. 15.中文分词:构词法、最大匹配、最优路径与 Jieba
  16. 16.词表示问题与语义相似度
  17. 17.TF-IDF 权重处理
  18. 18.One-Hot 表达与词表示的局限
  19. 19.Word2Vec 核心思想
  20. 20.Word2Vec 训练过程
  21. 21.Skip-gram 模型详解
  22. 22.词性标注任务与标注方法(规则 + N-Gram)
  23. 23.EM 算法与混合模型
  24. 24.高斯混合模型 GMM
  25. 25.从混合模型到隐马尔可夫模型
  26. 26.隐马尔可夫模型(HMM)推导与维特比解码
  27. 27.线性链条件随机场 CRF
  28. 28.贝叶斯网络与图模型
  29. 29.隐马尔可夫链与 HMM 推导
  30. 30.PLSA 主题模型
  31. 31.LSI 与 SVD 向量表达
  32. 32.LDA 与狄利克雷分布
  33. 33.主题模型实验复现(困惑度 / 分类 / 相似度 / 延展)
  34. 34.上下文无关文法(CFG)与句法分析
  35. 35.概率上下文无关文法 PCFG
  36. 36.统计机器翻译:词对齐与翻译模型
  37. 37.统计机器翻译中的对齐模型与参数估计
  38. 38.从统计机器翻译到神经机器翻译
  39. 39.神经元与反向传播速览(指向深度学习课)
  40. 40.CNN 原理及其在 NLP 中的应用
  41. 41.循环神经网络的基本原理与 Elman / Jordan 网络
  42. 42.LSTM:长短期记忆网络的核心思想与分步实现
  43. 43.Encoder-Decoder 框架
  44. 44.Seq2Seq 与早期注意力机制
  45. 45.注意力机制的背景与动机
  46. 46.注意力模型实现原理与匹配函数
  47. 47.记忆网络:组成与计算
  48. 48.注意力机制的应用与历史延展
  49. 49.Transformer 结构:Encoder-Decoder 栈与 Self-Attention
  50. 50.Multi-Head Attention、FFNN 与位置编码
  51. 51.层归一化、损失函数与 Universal Transformer 延展
  52. 52.预训练范式:从 ELMo 到 BERT
  53. 53.BERT 与掩码语言模型
  54. 54.BERT 下游任务微调与 GLUE 口径
  55. 55.GPT 与自回归语言建模
  56. 56.GPT-1 到 GPT-4 的演进
  57. 57.指令微调与 RLHF
  58. 58.分词器:BPE、WordPiece 与中文词表
  59. 59.上下文窗口与长文本处理
  60. 60.能力边界、成本与适用场景
  61. 61.文本分类实战:从朴素贝叶斯到逻辑回归
  62. 62.命名实体识别实战
  63. 63.文本生成与摘要实战
  64. 64.语义检索与向量库实战
  65. 65.RAG 知识库问答
  66. 66.NLP 评估指标:BLEU / ROUGE / BERTScore 与人工评估
  67. 67.幻觉与事实性问题
  68. 68.文本与知识结合(知识图谱压缩)
  69. 69.跨媒体信息检索与未来展望

自然语言的基本术语

小象实战讲义 · 自然语言处理

在开始系统学习自然语言处理(NLP)之前,我们需要建立一套共同的语言。自然语言本身具有复杂的结构,从最基础的词到完整的句子,再到其背后的含义,每个层面都有其特定的术语和研究问题。本节将系统梳理这些核心术语,如词、形态学、词性标注、句法、语义等,帮助你理解当我们处理一段文本时,我们究竟在分析什么。这是后续所有模型和算法的基础。

💡 核心导读

  • 词与分词:理解什么是“词”以及为何中文等语言需要分词。
  • 形态学:学习词的内部结构及其语法变化,如时态、单复数等。
  • 词性标注:掌握如何为每个词赋予其语法类别(如名词、动词)。
  • 句法分析:了解如何将句子解析为树状结构,揭示其语法构成。
  • 语义分析:初步探索语言背后的含义,这是NLP的终极挑战之一。

从词到句子:语言的基本单元

我们从一个简单的英文句子开始:“This is a simple sentence.”。在计算机看来,这首先是一串连续的字符。为了处理它,我们需要将其分解为更小的、有意义的单元。

词与分词

对于英文,一个直观的分解方式是利用空格将句子切分成一个个词(Words):

  • This, is, a, simple, sentence.

这个过程对于以空格分隔单词的英文来说相对简单,但并非所有语言都如此。例如,中文句子“这是一句中文”在书写时词与词之间没有空格。为了处理它,我们需要进行分词(Word Segmentation),即识别出词与词之间的边界:

  • 这, 是, 一句, 中文.

因此,分词是许多语言(尤其是中文、日文、泰文等)NLP任务的首要步骤。即便是英文,在处理手写体或某些特殊格式时,也可能面临类似的分词问题。

形态学

观察英文单词“is”,我们知道它是动词“be”的第三人称单数现在时形式。同样,“worked”是“work”的过去式,“he likes”中的“likes”是“like”的第三人称单数形式。这些变化体现了词的形态学(Morphology)。

形态学研究词的内部结构和构词规则,包括:

  • 屈折变化:不改变词的基本意义,只改变其语法属性,如时态(work/worked)、数(cat/cats)、人称(am/is/are)。
  • 派生变化:通过添加前缀或后缀构造新词,可改变词义,也可改变词性,二者不必同时发生,如happy(形容词)→ unhappy(形容词,反义)→ happiness(名词)。

理解形态学对于词形还原(如将“running”还原为“run”)、词干提取以及处理未登录词(Out-Of-Vocabulary words)都至关重要。

词性标注与句法分析

将句子分解为词之后,我们可以进一步分析这些词的语法功能和它们之间的关系。

词性标注

为句子中的每个词分配一个语法类别标签,这个过程称为词性标注(Part-of-Speech Tagging,简称 POS Tagging)。

例如,对于句子“This is a simple sentence.”:

  • This: 指示限定词(Determiner, DT)
  • is: 动词,第三人称单数现在时(Verb, 3rd person singular present, VBZ)
  • a: 不定冠词(Determiner, DT)
  • simple: 形容词(Adjective, JJ)
  • sentence: 名词(Noun, NN)

词性标注是许多高级NLP任务(如句法分析、命名实体识别)的基础预处理步骤。它帮助我们理解每个词在句子中的语法角色。

句法分析

词性标注描述了单个词的属性,而句法分析(Syntactic Parsing)则关注词如何组合成更大的结构(如短语、子句),并最终形成完整的句子。其输出通常是一棵句法分析树(Parse Tree)。

以“This is a simple sentence.”为例,其句法结构可以用树状图表示:

          Sentence (S)
         /            \
    Noun Phrase (NP)   Verb Phrase (VP)
        |              /               \
      Determiner (DT)    Verb (VBZ)        Noun Phrase (NP)
        |              /               \
       This            is     Determiner Adjective    Noun
                                      |         |        |
                                       a      simple  sentence

这棵树告诉我们:

  • 整个句子(S)由一个名词短语(NP:“This”)和一个动词短语(VP:“is a simple sentence”)组成。
  • 动词短语(VP)由一个动词(VBZ:“is”)和另一个名词短语(NP:“a simple sentence”)组成。
  • 第二个名词短语(NP)又由一个限定词(DT:“a”)、一个形容词(JJ:“simple”)和一个名词(NN:“sentence”)组成。

这种基于规则的、形式化的句法描述(如上下文无关文法,CFG)是早期句法分析的核心。句法分析有助于理解句子成分之间的关系,例如识别主语和谓语,这对于信息提取和机器翻译等任务非常重要。

语义:从形式到含义

到目前为止,我们处理的都是语言的“形式”:词的形态、词性、句法结构。然而,NLP的终极目标之一是理解语言的语义(Semantics),即语言所表达的真实含义。

“This is a simple sentence.” 的语义是什么?它陈述了一个事实:存在一个实体“this”,这个实体具有“是一个简单句子”的属性。

在传统人工智能和计算语义学中,人们尝试用形式逻辑(如一阶谓词逻辑)来表示句子的语义。例如,可以将上述句子表示为:

  • 存在一个实体 x(指代“this”)和一个实体 y(指代“a simple sentence”),并且 x 是 y。
  • 同时,y 具有“简单”的属性。

用逻辑公式可以粗略表示为: ∃y(Sentence(y)∧Simple(y)∧Is(this,y))\exists y (Sentence(y) \land Simple(y) \land Is(this, y))

当然,这只是一个高度简化的示例。真实的语义表示要复杂得多,涉及词义消歧(如“apple”指水果还是公司)、指代消解(如“it”指代什么)、语义角色标注(如谁对谁做了什么)等一系列难题。

语义理解是NLP中最困难的部分,也是推动从基于规则的方法到统计方法,再到如今基于深度学习和大型语言模型方法的核心动力。现代方法不再试图显式地编写逻辑规则,而是让模型从海量数据中自动学习语义的分布式表示。

📝 动手练一练

  1. 概念辨析:请简要说明“形态学”和“句法”在自然语言处理中分别关注什么层面的问题,并各举一个例子。
👉 点击查看参考答案
  • 形态学关注词的内部结构和形态变化。例如,它研究动词“work”如何通过添加“-ed”变成过去式“worked”,或者名词“cat”如何通过添加“-s”变成复数“cats”。
  • 句法关注词与词如何组合成更大的结构(如短语、句子),以及这些组合所遵循的规则。例如,它分析句子“The cat sat on the mat”中,“The cat”是名词短语作主语,“sat on the mat”是动词短语作谓语,并明确“on the mat”是修饰“sat”的介词短语。
  1. 手动分词与词性标注:请对以下中文句子进行分词,并为每个分词结果尝试标注你认为可能的词性(如名词、动词等)。

    “自然语言处理技术正在快速发展。”

    👉 点击查看参考答案分词结果(一种可能): - `自然语言` (名词) - `处理` (动词) - `技术` (名词) - `正在` (副词) - `快速` (形容词) - `发展` (动词) - `。` (标点)

    说明:中文分词可能存在多种合理结果,例如“自然语言处理”也可以作为一个整体名词。词性标注也依赖于上下文和具体任务。这体现了NLP中“歧义性”的挑战。

本章小结

本节我们建立了自然语言处理的基础术语体系,从表层的词到深层的语义,逐层剖析了语言的结构:

  • 词是语言处理的基本单元,分词是处理连续书写语言的关键第一步。
  • 形态学揭示了词的内部语法变化规律。
  • 词性标注为每个词赋予语法角色,是句法分析的基石。
  • 句法分析通过树状结构展示词如何组合成合法的句子。
  • 语义分析致力于理解语言背后的含义,是NLP的核心挑战。

理解这些术语和它们所代表的问题,是学习后续所有具体模型和技术(如n-gram语言模型、隐马尔可夫模型、句法解析器、神经网络等)的前提。每一种技术都是为了更好地解决这些层面中的一个或多个问题而诞生的。

📋 行动清单

  • 能够清晰解释“分词”、“词性标注”、“句法分析”、“语义分析”各自的目标和区别。
  • 对给定的中英文句子,能进行基本的分词和词性标注思考。
  • 理解句法分析树如何直观地表示句子的语法结构。

—— 小象教研组