什么是机器学习,机器学习分类( 四 )


如我们所见 , spaCy的默认停用词列表包括312个条目 , 每个条目都是一个单词 。我们还可以看到为什么其中许多单词对数据分析没有用处 。例如 , 尽管如此 , 过渡词对于理解句子的基本含义并不是必需的 。而诸如“ 某人”之类的词太含糊 , 以至于无法用于NLP任务 。如果需要 , 我们还可以创建自己的自定义停用词列表 。
但是出于我们在大数据分析Python中spaCy文本分类使用教程中的目的 , spaCy提供的默认列表会很好 。从我们的数据中删除停用词现在我们有了停用词列表 , 让我们使用它从上一部分中正在研究的文本字符串中删除停用词 。我们的文本已经存储在变量中text , 因此我们不需要再次定义它 。相反 , 我们将创建一个名为的空列表filtered_sent , 然后遍历doc变量以查看源文本中每个标记化的单词 。
spaCy包括一堆有用的标记属性 , 我们将使用其中的一个is_stop来识别不在停用词列表中的单词 , 然后将它们附加到filtered_sent列表中 。不难理解为什么停用词会有所帮助 。删除它们将我们的原始文本简化为仅几个单词 , 这使我们对句子正在讨论的内容有了一个很好的了解:学习数据科学 , 并在此过程中避免挑战和挫折 。
词汇规范化词典标准化是文本数据清除过程中的又一步 。总体而言 , 归一化将高维特征转换为适合任何机器学习模型的低维特征 。出于这里的目的 , 我们只考虑lemmatization , 即一种处理单词以使其根源减少的方法 。合法化合法化是一种处理以下事实的方法:尽管connect , connection , connecting , connected等词并不完全相同 , 但它们都具有相同的基本含义:connect 。
拼写上的差异在口语中具有语法功能 , 但是对于机器处理 , 这些差异可能会造成混淆 , 因此我们需要一种方法来将所有单词形式的单词connect变成单词connect self 。一种执行此操作的方法称为“ 阻止” 。词干涉及简单地去除容易识别的前缀和后缀 , 以产生通常是单词最简单的版本 。例如 , 连接将删除-ion后缀 , 并正确地减小以连接 。
这种简单的词干通常是需要的 , 但是词义化(实际上是查看字典中描述的词及其词根(称为lemma))(只要词存在于字典中)更为精确 。由于spaCy包含了将单词分解为引理的内置方法 , 因此我们可以简单地将其用于引理 。在以下非常简单的示例中 , 我们将使用它.lemma_为要分析的每个单词产生引理 。词性(POS)标记单词的词性定义了它在句子中的功能 。
例如 , 名词标识一个对象 。形容词描述一个对象 。动词描述动作 。在句子的上下文中识别和标记每个单词的语音部分称为词性标记或POS标记 。让我们尝试使用POS标记spaCy!我们需要导入其en_core_web_sm模型 , 因为其中包含进行此分析所需的字典和语法信息 。然后 , 我们需要做的就是将这个模型加载.load()并遍历我们的新docs变量 , 使用确定每个单词的词性.pos_ 。
(注意?中u"All is well that ends well."表示该字符串是Unicode字符串 。)spaCy已正确识别出该句子中每个单词的词性 。能够识别词性在各种与NLP相关的上下文中很有用 , 因为它有助于更准确地理解输入句子并更准确地构建输出响应 。实体检测实体检测 , 也称为实体识别 , 是语言处理的一种更高级形式 , 它可以识别文本输入字符串中的重要元素 , 例如位置 , 人物 , 组织和语言 。