本系列是《Text Analytics with Python》的读后理解,分享给感兴趣的朋友【不定期更新】。
0 引言
数据是“新时代的石油”,尤其是文本、图像,和视频数据,蕴含着异常丰富的信息,可以说是座潜在的金矿。但是,由于处理和分析该类数据固有的复杂性,所以,处理这种非结构化数据所要花费的时间和精力,让习惯处理结构化数据的人常常望而却步。自然语言处理(NLP,Natural Language Processing)就是利用相关的工具、技术和算法处理和和理解基于自然语言的数据,这些数据通常包括文本、语音等非结构化的数据。在本书中,我们会探讨一些经过实践检验的策略(技术和工作流),读者或数据科学家可借此从文本数据中提取有用的信息。
在当今快节奏的世界里,专攻计算机视觉和自然语言处理等领域不再是一种奢侈体验,而是任何数据科学家的必备技能!《Python文本处理》这本书就是教给您学习和应用NLP技术,从嘈杂的非结构文本数据里提取切实有用的信息。本书旨在帮助读者理解NLP相关的基本概念,同时辅以大量的研究案例和操作实例,帮助读者掌握和应用NLP解决现实问题的最新工具、技术和框架。本书代码使用Python3和最新的框架来实现这些案例,这些框架包括NLTK、Genism、spaCy、Scikit-Learn、TextBlob、Keras,及TensorFlow等。你可以在GitHub https://github.com/dipanjanS/text-analytics-with-python找到本书所有的例程。
这么些年,我在这个领域摸爬滚打,曾经碰到了各种各样的问题,遇到了多种多样挑战,也学到了各种各样的教训。本书是我在文本分析和自然语言处理领域习得的大量知识积累,需要说明一点,在这个领域,仅仅从一堆文本文档构建一个外表华丽的词云是远远不够的。也许,学习文本分析最大的问题不是信息匮乏,而是信息太多,通常也称之为信息过载。市面上,有太多的资源、文档、论文、书籍和期刊涉及这个领域,以至于常常会让新手不知所措。或许,你可能会有这样或者那样的问题:“什么才是解决问题的最正确方法?”,“文本摘要是如何工作的?”,“那个框架最合适解决多类型文本分组的问题?”,举不胜举。本书尝试将数学和理论概念与使用Python编写的真实案例实践相结合,帮助读者避免重走我曾经走过的弯路。
本书遵循全面和结构化的讲述方法,在前面章节,首先会介绍自然语言理解的基础知识和利用Python处理文本数据的相关内容。在掌握这些基础知识之后,会接着介绍文本处理、解析、和理解(text processing,parsing, and understanding)。再然后,我们会再后续每个章节介绍文本分析相关的议题,包括文本分类、聚类和相似性分析(similarity analysis),文本摘要、主题模型、语义分析和命名实体识别(named entity recognition)、情感分析,和模型解释(model interpretation)。最后一个章节介绍了深度学习和迁移学习(transfer learning)对NLP的最新发展,并介绍了使用通用句嵌入(universal sentence embeddings)方法的文本分类样例。
本书的目的是让您领略文本分析和NLP的广阔前景,帮助您利用必要的工具、技术和知识来解决您自己的问题。我希望这本书能对您有所帮助,并祝您在文本分析和NLP世界的旅途中一切顺利!