面向机器学习的自然语言标注1.1 语言标注的重要性

简介:

基础知识

人们几乎每天都会教计算机去解决一些新的激动人心的问题,这些问题包括如何在国际象棋比赛或“危险边缘”节目译注1中取胜,以及驾驶车辆时的最短路径选择。但仍有大量的问题是计算机不能完成的,特别是在理解人类语言方面。已经证明统计方法是解决这一问题的有效途径,但当可以为机器学习(Machine Learning, ML)算法提供关于数据集所包含信息的数据线索提示而不仅仅是数量巨大的数据时,ML通常可以产生更好的效果。讨论自然语言时,这些提示通常以标注的形式呈现——提供关于文本额外信息的元数据。但是,为了有效地指导计算机,让它从正确和足够的数据中学习是非常重要的。本书的目的是为你提供创建良好数据的工具以便服务于你自己的机器学习任务。本章主要内容包括:

为什么标注对语言学家和计算机科学家而言是同样重要的工具。

语料库语言学(corpus linguistics)是怎么样发展成今天这样的。

语言学的不同领域以及它们与标注和机器学习任务之间的关系。

什么是语料库,如何使之具有平衡性。

如何用标注表示一些经典的机器学习问题。

标注开发循环(annotation development cycle)的基础知识。

1.1 语言标注的重要性


众所周知,因特网是一个信息宝库,它可以教你做任何事情:玩杂技、编程序、弹奏乐器等。然而,因特网上还有另一层信息:所有这些课程(以及博客、论坛、推特等)中是如何交流的。网络上的信息以多种媒体的形式存在(文本、图片、视频和声音),语言是让人们理解这些内容的沟通媒介,它把内容和其他媒体连接起来。但是,尽管计算机善于把这些信息传递给感兴趣的用户,但它却非常不擅长理解语言本身。

理论和计算语言学(Computational Linguistics, CL)集中研究语言更深层次的本质并获取语言结构的可计算特性。人类语言技术(Human Language Technology, HLT)试图使用这些原理和算法并将之实现为可用的高性能程序来影响我们使用语言和计算机的交互方式。随着使用因特网的人数的日益增加,可供研究使用的语言数据也急剧增长,这样可以将语言学建模问题看作机器学习任务,而不是局限于相对小规模的个人手工处理的数据。

但是,仅仅给计算机输入大量的数据就期望它能够学会说话是不够的——这些数据应该以计算机更易于发现模式和推理的方式准备好。通常通过给数据集增加相关元数据来实现这一目标。用于标记数据集元素的元数据标签(tag)称为在输入上的标注。然而,为了使算法更有效地学习,数据上的标注必须准确并与要执行的任务相关。所以,语言标注是开发智能人类语言技术的关键环节。

注意: 给机器学习算法过多的信息会拖慢它且导致不准确的结果,或导致算法和训练数据过于一致而产生“过拟合”(overfit),在新的数据上可能产生更不准确的结果。认真思考什么是你要完成的东西,什么信息与你的目标最相关,这一点非常重要。本书的后续章节将介绍如何找到这些信息,以及如何确定你的算法在完成你所设定的任务上的表现。

自然语言形成的数据集称为语料库(corpus),基于同一个标注规格说明标注的数据集合称为标注语料库(annotated corpus)。标注的语料库可用于训练ML算法。本章将讨论什么是语料库,解释标注的含义,并且描述用标注来充实面向机器学习的语言数据集合的方法。

1.1.1 语言学描述的层次

我们将列举许多类型的标注任务的例子,虽然创建一个标注语料库不要求必须经受过正规的语言学培训,但如果你对标注涉及的语言学方面有基本的了解,本书对你的帮助会更大一些。一般来说,语法是语言中负责产生良好结构的机制。大多数语言学家认为语法本身是由多个通过认知设计或者用于描述性便利的模块或系统构成的。它们通常包括句法、语义、形态学、音系学(和语音学)以及词汇。除了语法外,关于如何将语言嵌入人类活动的领域包括话语、语用学和篇章结构分析。详解如下:

句法学

研究单词如何组成句子。它包括对词性的研究以及它们是如何组合成更大结构的。

语义学

研究语言中的意义。包括单词间的相互关系以及它们所表达的内容。

形态学

研究语言中有意义的单元。语素是具有意义或功能的最小单元,包括单词、前缀、后缀和其他能够表示意义的单词结构。

音系学

研究某种语言的发音模式。它包括哪些音素是重要且有意义的(即音位);音节是如何构成的;需要哪些特征来描写语言中的离散单元(音段)以及如何解释它们。

语音学

研究人说话的声音以及它们是如何产生和被感知的。音位是个人声音的术语,本质上是人类语音中的最小单位。

词汇

研究语言中所使用的单词和短语,即一种语言的词汇。

话语分析

研究那些通常以对话方式出现的信息交换,特指跨句的信息流。

语用学

研究语境对语言表达的影响,以及哪些方式有助于理解隐含的或预设的含义。

篇章结构分析

研究叙述文或其他文本体裁如何形成更大的篇章结构。

本书通篇将给出多个标注项目的实例,它们将涉及上述列表中不同概念的各种组合。

1.1.2 什么是自然语言处理

自然语言处理(Nature Language Processing,NLP)是计算机科学和工程的一个领域,源自人工智能领域中的语言和计算语言学研究。自然语言处理的目标是设计和创建各种应用系统,这些应用系统使得人和计算机可以直接通过自然语言完成各种交互。自然语言处理的主要应用领域包括:

问答系统

设想,假如你能直接问你的计算机或者手机:在纽约你最喜欢的那家餐厅在周五的晚上何时打烊。提问不是通过键盘笨拙地将文字输入搜索框中,而是用你自己平常的自然语言,无论是英语、汉语或西班牙语,进行提问。(iPhone中的Siri就是此类系统的一个好的尝试,但Siri并不能完全地理解自然语言,它只能理解某些关键短语的子集。)

文档摘要

这个领域包括收集文档或电子邮件并根据其内容生成一个连贯的摘要。也可以用于对较长的文本给出系列快照,甚至直接做成幻灯片。

机器翻译

这是NLP应用的圣杯!它也是该领域中最重要的研究和工程领域。尽管谷歌翻译变得越来越好,但真正有杀伤力的应用软件是一个叫作BabelFish的手机应用软件。当你查找一趟合适的发往北京的火车时,它可以进行实时翻译。

语音识别

这是NLP中最难的问题之一。不断涌现出新的改进模型,可以在智能手机或者计算机上识别口语提问或指令。尽管这些自动语音识别(Automatic Speech Recognition, ASR)系统是通用的,但它们只是在特定领域中工作得很好,并且不允许说话人偏离设定的内容(“请现在说出或输入你的卡号”)。

文档分类

这是NLP最成功的应用之一,该任务的目的是把文档归入合适的类别。在垃圾邮件过滤、新闻分类以及电影评论分类等方面的应用都很成功,原因之一是学习一个用于分类的训练算法的模型相对容易。

如前言所述,在O扲eilly公司出版的另一本书《Natural Language Processing with Python》中描述的自然语言工具包(NLTK)是一个不错的软件包,它提供了上述应用中的许多系统的具体实现。本书的目的之一是提供构建具体语料库(即训练和测试数据)所需要的知识,这些语料库对于开发上述应用系统是必不可少的。

相关文章
|
2月前
|
机器学习/深度学习 自然语言处理 并行计算
【机器学习】Transformer:自然语言处理的巅峰之作
【机器学习】Transformer:自然语言处理的巅峰之作
107 0
|
2月前
|
机器学习/深度学习 自然语言处理 算法
探索机器学习中的自然语言处理技术
【2月更文挑战第16天】 在数字化和智能化的浪潮中,自然语言处理(NLP)技术已成为连接人类与机器沟通的重要桥梁。本文深入探讨了机器学习在自然语言处理中的应用,包括最新的模型架构、算法优化技巧及实际场景中的挑战和解决方案。通过逻辑严密的分析,我们将揭示如何有效利用机器学习提升NLP系统的性能,同时对未来发展趋势进行预测。
23 0
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
探索机器学习中的自然语言处理技术
【2月更文挑战第31天】 随着人工智能的飞速发展,自然语言处理(NLP)技术在机器学习领域扮演着越来越重要的角色。本文旨在深入探讨NLP的关键技术,包括语言模型、词嵌入和深度学习方法,并分析这些技术如何相互协作,以实现更高效的文本分析和理解。通过案例研究和最新研究成果的介绍,我们展示了NLP在实际应用中的强大潜力,以及它如何推动人机交互和信息检索系统的革新。
22 0
|
27天前
|
人工智能 自然语言处理
自然语言处理:电脑如何理解我们的语言?
自然语言处理:电脑如何理解我们的语言?
23 1
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习在图像识别中的应用与挑战探索机器学习中的自然语言处理技术
【4月更文挑战第30天】 随着人工智能技术的飞速发展,深度学习已经成为计算机视觉领域的核心动力。本文将探讨深度学习在图像识别任务中的关键技术、应用实例以及面临的主要挑战。我们将重点讨论卷积神经网络(CNN)的架构优化、数据增强技术以及迁移学习的策略,并通过具体案例分析其在医疗影像、自动驾驶和面部识别等领域的应用成效。同时,我们也将指出当前模型泛化能力不足、对抗性攻击以及算力资源需求等挑战,并提出潜在的解决方向。 【4月更文挑战第30天】 在人工智能领域,自然语言处理(NLP)是赋予机器理解和响应人类语言能力的关键技术。本文将深入探讨NLP的发展历程、核心技术及其在不同领域的应用案例。我们将从
|
4天前
|
机器学习/深度学习 自然语言处理 PyTorch
【Python 机器学习专栏】自然语言处理中的深度学习应用
【4月更文挑战第30天】本文探讨了深度学习在自然语言处理(NLP)中的应用,包括文本分类、情感分析和机器翻译等任务。深度学习的优势在于自动特征学习、强大的表达能力和处理大规模数据的能力。常见模型如RNN、LSTM、GRU、CNN和注意力机制在NLP中发挥作用。Python的TensorFlow、PyTorch、NLTK和SpaCy等工具支持NLP研究。然而,数据稀缺、模型解释性和计算资源需求高等挑战仍待解决。随着技术进步,未来深度学习将进一步推动NLP发展,实现更智能的语言交互。
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
探索机器学习中的自然语言处理技术
【4月更文挑战第29天】本文将深入探讨自然语言处理(NLP)在机器学习领域中的应用和挑战。我们将介绍NLP的基本原理,包括文本预处理、特征提取、模型训练等步骤。然后,我们将讨论一些最新的NLP技术,如深度学习、预训练模型等,并分析其在实际问题中的应用效果。最后,我们将展望NLP的未来发展趋势,以及其在人工智能中的潜在影响。
|
11天前
|
机器学习/深度学习 人工智能 自然语言处理
探索机器学习中的自然语言处理技术
【4月更文挑战第24天】本文深入探讨了自然语言处理(NLP)在机器学习领域中的应用与进展。通过分析最新的技术动态,阐释了深度学习如何增强NLP的能力,并讨论了当前面临的挑战及未来的发展趋势。文中不仅总结了NLP的核心概念和关键技术,还通过案例研究展示了其在实际应用中的潜力。
|
2月前
|
机器学习/深度学习 自然语言处理 并行计算
【机器学习】“注目未来:自注意力机制的巧妙设计引领自然语言处理新潮流“
【机器学习】“注目未来:自注意力机制的巧妙设计引领自然语言处理新潮流“
47 0
|
2月前
|
机器学习/深度学习 自然语言处理 算法
在NLP中,什么是词性标注?
【2月更文挑战第13天】【2月更文挑战第37篇】在NLP中,什么是词性标注?