<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>NLP on CrazyBread&#39; Blog</title>
    <link>https://crazyjassbread.github.io/tags/nlp/</link>
    <description>Recent content in NLP on CrazyBread&#39; Blog</description>
    <generator>Hugo -- 0.147.3</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 23 Jun 2026 22:52:43 +0800</lastBuildDate>
    <atom:link href="https://crazyjassbread.github.io/tags/nlp/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>文本分类</title>
      <link>https://crazyjassbread.github.io/posts/final-exam-review/nlp/02/</link>
      <pubDate>Tue, 23 Jun 2026 22:52:43 +0800</pubDate>
      <guid>https://crazyjassbread.github.io/posts/final-exam-review/nlp/02/</guid>
      <description>&lt;h1 id=&#34;文本分类&#34;&gt;文本分类&lt;/h1&gt;
&lt;p&gt;文本分类的部分主要分成三个内容：文本表示、特征选择、分类算法&lt;/p&gt;
&lt;h2 id=&#34;1-文本表示&#34;&gt;1. 文本表示&lt;/h2&gt;
&lt;p&gt;首先介绍 &lt;strong&gt;向量空间模型（Vector Space Model, VSM）&lt;/strong&gt;，它将文本表示为向量的形式，通常使用 &lt;strong&gt;词袋模型（Bag of Words, BOW）&lt;/strong&gt; 来表示文本&lt;/p&gt;
&lt;p&gt;文本表示的一个重要问题就是如何计算特征项权重，即每个词袋元素的权重是多少&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;布尔变量&lt;/strong&gt; 是一个简单的方法&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;词频率 TF&lt;/strong&gt;
&lt;/p&gt;
$$
w_i = \log(tf_i + 1)
$$&lt;p&gt;&lt;strong&gt;逆文档频率 IDF&lt;/strong&gt;：一个词的 df 越小，说明它越能区分不同的文档，权重就应该越大
&lt;/p&gt;
$$
idf_i = \log \frac{N}{df_i} \quad  N \text{ 是文档总数，} df_i \text{ 是包含词 } i \text{ 的文档数}
$$&lt;p&gt;&lt;strong&gt;TF-IDF&lt;/strong&gt;
&lt;/p&gt;
$$
w_i = tf_i \cdot idf_i
$$&lt;h2 id=&#34;2-特征选择&#34;&gt;2. 特征选择&lt;/h2&gt;
&lt;p&gt;用于文本分类的特征选取准则有很多，一个常用的指标是 DF 文档频率
&lt;/p&gt;
$$
P(c_j|t_i) \approx \frac{A_{ij}}{\sum_{j=1}^{k} A_{ij} + C} \quad C \text{ 是类别数}
$$&lt;p&gt;而更常用的指标是 &lt;strong&gt;信息增益（Information Gain, IG）&lt;/strong&gt;，它衡量了一个特征对分类结果的不确定性减少的程度&lt;/p&gt;</description>
    </item>
    <item>
      <title>基于规则方法的自然语言处理</title>
      <link>https://crazyjassbread.github.io/posts/final-exam-review/nlp/01/</link>
      <pubDate>Tue, 23 Jun 2026 22:14:06 +0800</pubDate>
      <guid>https://crazyjassbread.github.io/posts/final-exam-review/nlp/01/</guid>
      <description>&lt;h1 id=&#34;基于规则方法的自然语言处理&#34;&gt;基于规则方法的自然语言处理&lt;/h1&gt;
&lt;p&gt;本章主要介绍基于规则的方法在 NLP 中的应用方式，包括：形态还原、分词、词性标注、命名实体识别、机器翻译&lt;/p&gt;
&lt;h2 id=&#34;1形态还原&#34;&gt;1.形态还原&lt;/h2&gt;
&lt;p&gt;将词还原成原形，比如把 went 还原成 go，把 better 还原成 good 等&lt;/p&gt;
&lt;p&gt;构词特点：曲折变化、派生变化、复合变化&lt;/p&gt;
&lt;p&gt;还原规则：通用规则、个性规则（比如不规则变化）&lt;/p&gt;
&lt;h2 id=&#34;2分词&#34;&gt;2.分词&lt;/h2&gt;
&lt;p&gt;主要介绍了中文分词，也就是如何把一个紧密的字串划分成词的组合&lt;/p&gt;
&lt;p&gt;中文分词方法存在三种歧义&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;交集型&lt;/strong&gt;：$ABC$ 可以划分成 $A|BC$ 或 $AB|C$&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;组合型&lt;/strong&gt;：$ABC$ 可以划分成 $A|B|C$ 或 $AB|C$ 或 $A|BC$&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;混合型&lt;/strong&gt;：上述两种歧义都存在的时候&lt;/p&gt;
&lt;h3 id=&#34;分词方法&#34;&gt;分词方法&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;最大正向匹配 FMM&lt;/strong&gt; 当然也包括逆向 RMM&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;双向最大匹配 Bi-MM&lt;/strong&gt;：同时使用 FMM 和 RMM，可以发现&lt;font color=&#34;blue&#34;&gt;交集型&lt;/font&gt;歧义&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;FMM + 逆向最短词&lt;/strong&gt;：可以发现&lt;font color=&#34;blue&#34;&gt;组合型&lt;/font&gt;歧义&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;逐词遍历&lt;/strong&gt;：每次选择最长的候选词并将其删除，重复上述过程&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;划分标记&lt;/strong&gt;：&lt;/p&gt;
&lt;details&gt;
&lt;summary&gt;这个可以详细展开描述&lt;/summary&gt;
对于一个由 N 个字组成的句子，它有 N - 1 个划分点，怎么选择这些划分点是一个很有趣的课题
&lt;p&gt;一个常用的划分指标是&lt;font color=&#34;blue&#34;&gt;互信息 PMI（Pointwise Mutual Information）&lt;/font&gt;，它可以衡量两个字之间的关联程度，PMI 越大，说明这两个字越可能组成一个词
&lt;/p&gt;
$$\text{PMI}(x,y) = \log \frac{P(x,y)}{P(x)P(y)}$$&lt;p&gt;
其中 $P(x,y)$ 是字 $x$ 和字 $y$ 同时出现的概率，$P(x)$ 和 $P(y)$ 分别是字 $x$ 和字 $y$ 出现的概率&lt;/p&gt;</description>
    </item>
    <item>
      <title>NLP 期末复习概览</title>
      <link>https://crazyjassbread.github.io/posts/final-exam-review/nlp/</link>
      <pubDate>Tue, 23 Jun 2026 11:24:40 +0800</pubDate>
      <guid>https://crazyjassbread.github.io/posts/final-exam-review/nlp/</guid>
      <description>&lt;h1 id=&#34;复习笔记概览&#34;&gt;复习笔记概览&lt;/h1&gt;
&lt;p&gt;包含 NLP 的基本概念介绍以及其他笔记的目录索引&lt;/p&gt;
&lt;h2 id=&#34;笔记目录&#34;&gt;笔记目录&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;./01/&#34;&gt;基于规则方法的自然语言处理&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;./02/&#34;&gt;文本分类&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;基本概念&#34;&gt;基本概念&lt;/h2&gt;
$$
\text{NLP} \rightarrow \text{CL} \rightarrow \text{NLU}
$$&lt;p&gt;三种不同的语系：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;屈折语：通过词形变化来表达语法关系，如英语、德语等&lt;/li&gt;
&lt;li&gt;黏着语：通过词缀来表达语法关系，如日语、韩语等&lt;/li&gt;
&lt;li&gt;孤立语：词形不变，语法关系通过词序和虚词来表达，如汉语、越南语等&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;MT&lt;/strong&gt; 发展历程&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;1950s前: 基于模版的 MT&lt;/li&gt;
&lt;li&gt;1960s-1990s: 基于规则的 MT （规则、词典、算法）&lt;/li&gt;
&lt;li&gt;1990s-2013s: 基于统计的 MT （语料、特征、模型）&lt;/li&gt;
&lt;li&gt;2013s-现在: 基于神经网络的 MT （语料、模型）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;NLP 研究内容&lt;/strong&gt; 可以划分成四种类别&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;分类：文本分类、情感分类、文本匹配、文本蕴含&lt;/li&gt;
&lt;li&gt;序列标注：中文分词、词性标注、信息抽取、槽位填充&lt;/li&gt;
&lt;li&gt;生成：机器翻译、文本摘要、风格迁移、自动问答、对话系统&lt;/li&gt;
&lt;li&gt;结构预测：序列分割、句子分割、段落分割、句法分析&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;NLP 研究基本问题&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;问题一：形态学 Morphology，研究词如何由词素组成&lt;/li&gt;
&lt;li&gt;问题二：句法学 Syntax，研究词如何组合成句子&lt;/li&gt;
&lt;li&gt;问题三：语义学 Semantics，研究句子如何表达意义&lt;/li&gt;
&lt;li&gt;问题四：语用学 Pragmatics，研究句子如何在上下文中使用&lt;/li&gt;
&lt;li&gt;问题五：语音学 Phonetics，研究语言的声音系统&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;NLP 研究困难&lt;/strong&gt;：歧义 ambiguity&lt;/p&gt;
&lt;p&gt;存在词法歧义、词性歧义、结构歧义、语义歧义、语音歧义&lt;/p&gt;
&lt;p&gt;Catalan Number：$C_n = \frac{1}{n+1}\binom{2n}{n} = \frac{(2n)!}{(n+1)!n!}$&lt;/p&gt;
&lt;p&gt;一个包含 N 个成分的句子（N-1 个介词短语），它可能的组合数为 $C_{N-1}$&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;统计机器翻译&lt;/strong&gt;
&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
