Nlp 自然语言处理在这段代码中到底做了什么?

Nlp 自然语言处理在这段代码中到底做了什么?,nlp,Nlp,我不熟悉自然语言处理,我想用它来编写一个新闻聚合器(在我的例子中是Node.js)。我不只是使用一个预包装框架,而是想学习具体细节,我将从NLP部分开始。我发现这是迄今为止最有帮助的一个教程: 在其中,作者获取RSS提要并在其中循环查找元素(或字段)title和description。我了解Python并理解代码。但我不明白的是,NLP在这里用title和description做什么(除了抓取和标记化,这很明显……这些任务不需要NLP) (更仔细地阅读你的问题也许这对你来说已经很明显了,但看起

我不熟悉自然语言处理,我想用它来编写一个新闻聚合器(在我的例子中是Node.js)。我不只是使用一个预包装框架,而是想学习具体细节,我将从NLP部分开始。我发现这是迄今为止最有帮助的一个教程:

在其中,作者获取RSS提要并在其中循环查找元素(或字段)
title
description
。我了解Python并理解代码。但我不明白的是,NLP在这里用
title
description
做什么(除了抓取和标记化,这很明显……这些任务不需要NLP)

(更仔细地阅读你的问题也许这对你来说已经很明显了,但看起来没有什么更深刻或更有趣的事情发生了)

wordpunct\u tokenize
在此处(最后一行)设置为

根据本守则:

class WordPunctTokenizer(RegexpTokenizer):
    def __init__(self):
        RegexpTokenizer.__init__(self, r'\w+|[^\w\s]+')
其核心就是正则表达式
r'\w+|[^\w\s]+'
,它定义了哪些字符串被这个标记器视为标记。有两个选项,由
|
分隔:

  • \w+
    ,即多个“单词”字符(字母或数字)
  • [^\w\s]+
    ,多个不是“单词”字符或空格的字符,因此这与任何标点符号字符串匹配
  • 用于Python正则表达式


    我还没有深入研究RegexpTokenizer,但是我假设它的设置是这样的:
    tokenize
    函数返回一个迭代器,它搜索字符串中正则表达式的第一个匹配项,然后搜索下一个匹配项,等等。

    这不是我要找的。.我已经知道解析、标记化、regexp。我想知道NLP在代码中是如何工作的,以及它是如何被应用的……意思是单词、标签(例如in/for)等等。这个问题很不清楚。NLP不是做事情的东西。我认为你应该重新措辞你的问题。
    wordpunct_tokenize = WordPunctTokenizer().tokenize
    
    class WordPunctTokenizer(RegexpTokenizer):
        def __init__(self):
            RegexpTokenizer.__init__(self, r'\w+|[^\w\s]+')