AI For Trading: text processing 2 (80)

Named Entity Recognition

命名实体识别通常用于对新闻文章建立索引和进行搜索。例如,与你感兴趣的公司相关文章。

命名实体一般是名词短语,指某些特定对象人或地点,可以使用 ne_chunk 函数标注文本中的命名实体,请注意必须先进行令牌化并标注词性,但是请注意,它还识别出不同的实体类型,人,组织,和 GPE(地缘政治实体)

file

Stemming and Lemmatization(词干与词性还原)

为了进一步简化文本数据,我们将学习几种方法,将词的不同变化和变形标准化。

词干提取

词干提取:是将词还原成词干或词根的过程,例如 branching,branched, branches 等,都可以还原成branch,总而言之,它们都表达了分成多个路线或分支的含义,这有助于降低复杂度,同时保留词所含的意义本质。

词干提取是利用非常简单的搜索和替换样式规则进行的,快速初步的运算,例如后缀 'ing' e和 'ed' 可以丢弃,‘ies’ 可以用 y 替换,这样可能变成不是完整词的词干,但是只要这个词的所有形式都还原成同一个词干即可,因此,它们都含有共同的根本含义。

NLTK 有几个不同的词干提取器供我们使用,包括我们例子中使用的 PorterStemmer , SnowballStemmer 和专用于其它语言的词干提取器。

file

我们可以看到,过滤效果非常好, started 变为 start, 但是 people 丢失了 e 变为 peopl,是因为规则过于简单。

词性还原

词性还原是将词还原成标准化形式的另一种技术,但在这种情况下,转换过程实际上是利用字典,将一个词的不同词根映射到它的词根,通过这种方法,我们能将较大的词形变化,如 is, was, were 还原成词根 be, NLTK 中的默认词形还原器使用 Wordnet 数据库将词还原成词根,我们试一下

file

词形还原器需要知道或者假设它将要转换的每个词的词性,在这个例子中 WordNetLemmatizer 默认词性是名词,但是我们可以通过指定 PoS 参数,修改这个默认设置。我们传入 v 代表动词,现在两个动词 boringstarted 都被转换了。

file

小结

file

在前面的示例中,可以看出,词干提取有时会生成不是完整英语词的词干,词形还原与词干提取类似,差别在于最终形式也是有含义的词,这就是说,词形还原需要字典,而词干提取不需要字典,因此根据你约束条件不同,词干提取是对内存要求较低的方案。

为者常成,行者常至