NLP入门+实战必读:一文教会你最常见的10种自然语言处理技术(附代码)
大数据文摘作品
编译:糖竹子、吴双、钱天培
自然语言处理(NLP)是一种艺术与科学的结合,旨在从文本数据中提取信息。在它的帮助下,我们从文本中提炼出适用于计算机算法的信息。从自动翻译、文本分类到情绪分析,自然语言处理成为所有数据科学家的必备技能之一。
在这篇文章中,你将学习到最常见的10个NLP任务,以及相关资源和代码。
为什么要写这篇文章?
对于处理NLP问题,我也研究了一段时日。这期间我需要翻阅大量资料,通过研究报告,博客和同类NLP问题的赛事内容学习该领域的最新发展成果,并应对NLP处理时遇到的各类状况。
因此,我决定将这些资源集中起来,打造一个对NLP常见任务提供最新相关资源的一站式解决方案。下方是文章中提到的任务列表及相关资源。那就一起开始吧。
目录:
1. 词干提取
2. 词形还原
3. 词向量化
4. 词性标注
5. 命名实体消岐
6. 命名实体识别
7. 情感分析
8. 文本语义相似分析
9. 语种辨识
10. 文本总结
1. 词干提取
什么是词干提取?词干提取是将词语去除变化或衍生形式,转换为词干或原型形式的过程。词干提取的目标是将相关词语还原为同样的词干,哪怕词干并非词典的词目。例如,英文中:
1.beautiful和beautifully的词干同为beauti
2.Good,better和best 的词干分别为good,better和best。
相关论文:Martin Porter的波特词干算法原文
相关算法:在Python上可以使用Porter2词干算法(https://tartarus.org/martin/PorterStemmer/def.txt)
程序实现:这里给出了在python的stemming库中使用(https://bitbucket.org/mchaput/stemming/src/5c242aa592a6d4f0e9a0b2e1afdca4fd757b8e8a/stemming/porter2.py?at=default&fileviewer=file-view-default)
Porter2算法做词干提取的代码:
#!pip install stemmingfrom stemming.porter2 import stemstem("casually")
2. 词形还原
什么是词形还原? 词形还原是将一组词语还原为词源或词典的词目形式的过程。还原过程考虑到了POS问题,即词语在句中的语义,词语对相邻语句的语义等。例如,英语中:
1.beautiful和beautifully