以下是该章节内容的总结:
1. 什么是NLP?
自然语言处理(NLP)是一门让计算机能够理解、解释和生成人类语言的技术。它是人工智能领域一个非常活跃和重要的研究方向,其核心目标是通过计算机程序来模拟人类对语言的理解和运用能力。
2. NLP的发展历程
NLP的发展可以大致分为三个阶段:
基于规则的时期 (1950s - 1980s): 早期研究主要依赖于语言学家手动编写大量的规则来处理语言。这种方法在特定领域和任务上可以取得不错的效果,但通用性和鲁棒性较差。
基于统计的时期 (1990s - 2010s): 随着计算机算力的提升和大规模语料库的出现,统计机器学习方法逐渐成为主流。这类方法通过从数据中学习语言的统计规律来进行预测和决策。
基于深度学习的时期 (2010s - 至今): 深度学习,特别是神经网络模型的兴起,为NLP带来了革命性的突破。词向量(Word Embedding)等技术的出现,使得计算机能够更好地捕捉词语的语义信息。
3. NLP的任务分类
NLP涵盖了众多任务,可以大致分为以下几类:
自然语言理解 (NLU):
文本分类: 将文本划分到预定义的类别中,例如情感分析、新闻分类。
信息抽取: 从非结构化文本中提取结构化信息,包括命名实体识别(识别人名、地名、机构名等)和关系抽取。
阅读理解: 让机器阅读一篇文章并回答相关问题。
语义匹配: 判断两段文本在语义上的相似度。
自然语言生成 (NLG):
机器翻译: 将一种语言的文本自动翻译成另一种语言。
文本摘要: 自动生成文本的简短摘要。
对话系统: 能够与人进行自然语言交互的系统,例如聊天机器人。
4. 文本表示的演进
为了让计算机能够处理文本,需要将文本转换为数值形式,这个过程称为文本表示。其演进过程如下:
离散表示:
One-hot 编码: 将每个词表示为一个高维向量,其中只有一个维度为1,其余为0。这种方法简单但存在维度灾难和语义鸿沟的问题。
词袋模型 (Bag-of-Words): 只考虑词频,不考虑词序,同样会丢失语义信息。
TF-IDF: 考虑了词频和逆文档频率,能够更好地评估一个词在文档中的重要性。
分布式表示(词嵌入):
Word2Vec: 通过神经网络模型学习词语的分布式表示,即词向量。这种表示能够捕捉词语之间的语义关系。
ELMo: 结合了全局统计信息和局部上下文窗口的优势来学习词向量。
5. 总结
这一章为读者构建了NLP的基础知识体系,从宏观上介绍了NLP的定义、发展脉络、主要任务以及核心技术之一的文本表示方法的演变。
ps: 本号也建了一个AI交流群,欢迎感兴趣的朋友后台私信"AI交流群"加入。一起学习交流。