Python自然语言处理中文版-学习笔记

第 1 章 语言处理与 Python

  1. 频率分布是项目连同它们的频率计数的集合(例如:一个文本中的词与它们出现的频率)。
  2. 自然语言处理研究的一个重要目标一直是使用浅显但强大的技术代替无边无际的知识和推理能力,促进构建“语言理解”技术的艰巨任务的不断取得进展。
  3. 给出一个德文和英文双语的文档或者一个双语词典,我们就可以自动配对组成句子,这个过程叫做文本对齐。
  4. 离散图中每一个竖线代表一个单词,每一行代表整个文本。
  5. 一个词类型是指一个词在一个文本中独一无二的出现形式或拼写。
  6. 程序设计的一个关键特征是让机器能按照我们的意愿决策,遇到特定条件时执行特定命令,或者对文本数据从头到尾不断循环遍历直到条件满足。
  7. 自动消除歧义需要使用上下文,利用相邻词汇有相近含义这样一个简单的事实。

第 2 章 获得文本语料和词汇资源

博客:NLP学习路线总结

自然语言处理怎么最快入门?

  1. 把就职演说语料库当作一个单独的文本对待,实际上是 55 个文本的集合,每个文本都是一个总统的演说。这个集合的一个有趣特性是它的时间维度。
  2. 许多文本语料库都包含语言学标注,有词性标注、命名实体、句法结构、语义角色等。
  3. 条件频率分布是频率分布的集合,每个频率分布有一个不同的“条件”。
  4. 一个词项包括词 目(也叫词条)以及其他附加信息,例如:词性和词意定义。
  5. 同义词集和词的配对叫做词条。
  6. WordNet 是一个面向语义的英语词典,由同义词的集合—或称为同义词集(synsets)—组成,并且组织成一个网络。
  7. 特征提取是指将机器学习算法不能识别的原始数据转化为算法可以识别的特征的过程。
  8. 语言识别指的是将不同语言的文本区分出来。其利用语言的统计和语法属性来执行此任务。语言识别也可以被认为是文本分类的特殊情况。

第 3 章 加工原料文本

第 4 章 编写结构化程序

第 5 章 分类和标注词汇

  1. 记住在正则表达式前加字母“r” ,它告诉 Python 解释器按照字面表示对待字符串而不去处理正则表达式中包含的反斜杠字符。
  2. 如果你想编译一些文本的词汇,或者想要一个有效词条(或中心词)列表,WordNet 词形归并器是一个不错的选择。
  3. 如果你要索引一些文本和使搜索支持不同词汇形式的话,Porter 词干提取器是一个很好的选择。
  4. 函数 re.search(p, s)检查字符串 s 中是否有模式 p。
  5. print 语句结尾加一个逗号,这是为了告诉 Python 不要在行尾输出换行符。
  6. 基于转换的标注学习一系列“改变标记 s 为标记 t 在上下文 c 中”形式的修复规则,每个规则会修复错误,也可能引入(较小的)错误。
  7. N-gram 标注器可以定义较大数值的 n,但是当 n 大于 3 时,我们常常会面临数据稀疏问题;即使使用大量的训练数据,我们看到的也只是可能的上下文的一小部分。
  8. 词性标注是 NLP 中一个重要的早期的序列分类任务:利用局部上下文语境中的词和标记对序列中任意一点的分类决策。
  9. 自动标注是 NLP 流程中重要的一步,在各种情况下都十分有用,包括预测先前未见过的词的行为、分析语料库中词的使用以及文本到语音转换系统。
  10. N-gram 标注器不应考虑跨越句子边界的上下文。因此,NLTK 的标注器被设计用于句子链表,一个句子是一个词链表。在一个句子的开始,tn-1和前面的标记被设置为 None。
  11. 由于我们通常很难获得专业和公正的人的判断, 所以使用黄金标准测试数据来代替。
  12. 动态规划是一种在 NLP 中广泛使用的算法设计技术,它存储以前的计算结果,以避免不必要的重复计算。
  13. 大多数的标记都有后缀修饰符:-NC 表示引用,-HL 表示标题中的词,-TL 表示标题(布朗标记的特征) 。

第 6 章 学习分类文本

第 7 章 从文本提取信息

第 8 章 分析句子结构

  1. 文法的目的是给出一个明确的语言描述。
  2. 成分结构基于对词与其他词结合在一起形成单元的观察。
  3. 按照惯例,第一条生产式的左端是文法的开始符号,通常是 S,所有符合语法规则的树都必须有这个符号作为它们的根标签。
  4. 分析器根据文法产生式处理输入的句子,并建立一个或多个符合文法的组成结构。一种最简单的分析器将一个文法作为如何将一个高层次的目标分解成几个低层次的子目标的规范来解释。将运用动态规划算法设计技术分析问题。
  5. NP-块往往是比较完整的名词短语的小片段。NP-分块信息最有用的来源之一是词性标记。
  6. 组成一个块语法的规则使用标记模式来描述已标注的词的序列。一个标记模式是一个用尖括号分隔的词性标记序列,如
    ?*。标记模式类似于正则表达式模式。
  7. 命名实体识别是一个非常适合用基于分类器类型的方法来处理的任务,这些方法我们在名词短语分块时看到过。特别是我们可以建立一个标注器,为使用 IOB 格式的每个块都加了适当类型标签的句子中的每个词加标签。
  8. 信息提取系统搜索大量非结构化文本,寻找特定类型的实体和关系,并用它们来填充有组织的数据库。这些数据库就可以用来寻找特定问题的答案。
  9. 关系抽取可以使用基于规则的系统,它通常查找文本中的连结实体和相关的词的特定模式;或使用机器学习系统,通常尝试从训练语料自动学习这种模式。
  10. 模式识别是自然语言处理的一个核心部分。
  11. 创建一个分类器的第一步是决定输入的什么样的特征是相关的,以及如何为那些特征编码。
  12. 一旦初始特征集被选定,完善特征集的一个非常有成效的方法是错误分析。首先,我们选择一个开发集,包含用于创建模型的语料数据。然后将这种开发集分为训练集和开发测试集。
  13. 训练一个有监督分类器时,你应该把语料分为三个数据集:用于构造分类器模型的训练集,用于帮助选择和调整模型特性的开发测试集,以及用于评估最终模型性能的测试集。
  14. 一种序列分类器策略,称为连续分类或贪婪序列分类,是为第一个输入找到最有可能的类标签,然后使用这个问题的答案帮助找到下一个输入的最佳的标签。这个过程可以不断重复直到所有的输入都被贴上标签。
  15. 用于评估一个分类最简单的度量是准确度,测量测试集上分类器正确标注的输入的比例。
  16. 为一个输入值选择标签,朴素贝叶斯分类器以计算每个标签的先验概率开始,它由在训练集上检查每个标签的频率来确定。最大熵分类器使用了一个与朴素贝叶斯分类器使用的模型非常相似的模型。最大熵分类器采用迭代优化技术选择模型参数,该技术用随机值初始化模型的参数,然后反复优化这些参数,使它们更接近最优解。

第 9 章 建立基于特征的文法

第 10章 分析句子的意思

  1. 协议是动词的形态属性与主语名词短语的句法属性一起变化。非正式的语言类别具有属性,例如:名词具有复数的属性。
  2. 一个特征结构实际上只是一种字典,所以我们可以平常的方式通过索引访问它的值。特征结构本身并不依赖于语言对象;它们是表示知识的通用目的的结构。
  3. 上下文无关文法的传统分类是原子符号。原子值的一个特定类别是布尔值,按照惯例用[+/- feat]表示。
  4. 通常情况下,我们在词汇层面指定固定的特征值,限制短语中的特征值与它们的孩子中的对应值统一。
  5. 从广义上讲,自然语言语义表示的基于逻辑的方法关注那些指导我们判断自然语言的一致性和不一致性的方面。
  6. 命题逻辑使我们能只表示语言结构的对应与句子的特定连接词的那些部分。命题逻辑的基本表达式是命题符号,通常写作 P、Q、R 等。
  7. 确定模型中公式的真假的一般过程称为模型检查。
  8. 一阶逻辑是一种适合在计算环境中表示自然语言的含义的语言,因为它很灵活,足以表示自然语言含义的很多有用的方面,具有使用一阶逻辑推理的高效的定理证明器。
  9. 一个封闭的表达式是一个没有自由变量的表达式。也就是,变量都被绑定。一个封闭的表达式是真是假取决于所有变量赋值。

第 11 章 语言数据管理

  1. TIMIT 演示了语料库设计中的几个主要特点:语料库包含语音和字形两个标注层;它在多个维度的变化与方言地区和二元音覆盖范围之间取得平衡;将原始语言学事件作为录音来捕捉和作为标注来捕捉之间有明显的区分;语料库的层次结构;虽然 TIMIT 是语音语料库,它的录音文本和相关数据只是文本,可以使用程序处理了,就像任何其他的文本语料库那样。
  2. Kappa 系数 k 测量两个人判断类别和修正预期的期望一致性的一致性。
  3. 可扩展标记语言(XML)为设计特定领域的标记语言提供了一个框架。Python 的 ElementTree 模块提供了一种方便的方式访问存储在 XML 文件中的数据。
  4. 大多数语料库中基本数据类型是已标注的文本和词汇。文本有时间结构,而词汇有记录结构。

你可能感兴趣的:(自然语言处理学习,python,机器学习,自然语言处理)