第6章 文本分类

上一章谈论了一些最常见的NLP工具和预处理步骤。在本章中,我们将使用前面章节中学到的大部分知识,构建一个最成熟的NLP应用。我们将提供一个文本分类的通用方法,告诉读者如何使用寥寥几行代码,从头开始构建一个文本分类器。在文本分类的背景下,我们将提供一张包含了所有分类算法的备忘单。

本章会讨论一些最常见的文本分类算法,但是只简单介绍这些算法。如果读者希望了解其背后详细的数学思想,有众多可用的在线资源和书籍可供读者参考。我们将尽力提供读者所需知道的知识,让读者可以从一些工作代码片段开始。虽然文本分类是一个非常好的NLP用例,但是在本章中,我们不使用NLTK,而是使用拥有更广泛的分类算法的scikit-learn,它的代码库对于文本挖掘而言,更高效地使用了内存。

本章主要内容如下。

  • 所有文本分类算法。
  • 使用端到端管道构建文本分类器的方法,以及使用scikit-learn和NLTK实现文本分类器的方法。

以下是sciki-learn机器学习的备忘单。

..\18-1279 二校改图传回\1p6-1.tif

现在,当你沿着备忘单中所显示的流程前进时,我们明确指出了何种问题要求使用何种算法,以及根据标注样本的大小,我们应该何时从一个分类器移动到另一个分类器。遵循这张备忘单构建实际应用是一个良好的开端。在大部分情况下,这是行得通的。虽然scikit-learn也适用于其他类型的数据,但是我们主要集中在文本数据。本章将使用示例,探讨文本分类、文本聚类和文本(降维)的主题检测,构建一些比较酷炫的NLP应用。由于网络为你提供了大量的资源,因此本章会更加详细地探讨机器学习、分类和聚类的概念。在文本语料库的上下文中,我们将为读者提供所有这些概念的更多详细信息。当然,下面复习一些概念。 ...

Get Python和NLTK实现自然语言处理 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.