来源:AINLPer微信公众号
编辑: ShuYini
校稿: ShuYini
时间: 2020-01-08
本次主要内容:
1、深度学习(DL)与机器学习(ML)之间的联系。
2、利用深度学习(DL)做自然语言处理(NLP)的优势。
深度学习(DL)是机器学习(ML)的关系?
深度学习(DL)是机器学习(ML)的一个分支,但是他们之间的不同是哪些呢?
机器学习是基于数据的。大多数机器学习依赖于人类来识别和描述数据集的特定特征。例如,数据科学家构建一个机器学习解决方案来识别文本中的地名,可以使用代码来描述要查找的特定特征,比如:
1、目标单词的大小写
2、目标单词的左边和右边的单词
3、目标单词中的特定子字符串,通常表示公司或人员
4、目标单词中的连字符
等等。
一个典型的机器学习解决方案最终会有成千上万甚至上百万的手工设计的特性。那么,一旦人类手工完成了所有这些特征识别工作,机器还能做什么呢?在这种类型的解决方案中,机器的工作主要是使用一个学习算法来调整每个特征的权重,以优化预测精度。计算机非常擅长这种数值优化,但这些解决方案仍然严重依赖于人类对问题的思考和学习。
那么,我们怎样才能在不需要太多人工干预的情况下,帮助机器自己学习呢?我们可以使用表征学习。在表示学习中,计算机自己识别数据中的特征,而不需要人工描述要查找的内容。
表示学习的简单形式包括你可能在介绍性机器学习材料中看到的东西。集群算法,像k-means和期望最大化,是一种表示学习,它获取未标记的数据并寻找模式将其分组到集群中。维数约简是一种将具有大量维数的数据“扁平化”为更少维数的算法,也是表示学习的一个好例子。
深度学习是建立在这个理念上的,通过使用多层的学习表征来创建一个人类大脑式的系统,这个系统的表现优于其他学习方法。通过深度学习,您将一个大型数据集输入到一个模型中,该模型将生成一个可学习的表示。然后,模型将学习到的表示输入到另一个算法层,该算法层使用输入数据生成新的学习到的表示。根据模型的“深度”,对于给定的层数,模型会一遍又一遍地重复这种模式。每个后续层使用前一层的输出作为其数据,然后从该输入生成自己的学习表示。在图表中,它看起来是这样的。
为什么要使用深度学习?
深度学习是一种令人兴奋的自然语言处理技术。以前使用手工设计的特性进行自然语言处理的尝试常常过于详细和不完整。他们也花了很长时间来验证和改进。深度学习相对来说是快速和灵活的,足以快速适应新的数据。这种方法避免了手工设计特性的漫长设计和验证周期。
由于深度学习允许计算机自己构建数据特性,因此它是学习各种信息的一个几乎通用的框架。这包括关于世界的语言信息、视觉信息和上下文信息。
但探索自然语言处理的深度学习的最佳理由是,它是有效的,而且比研究人员尝试过的其他技术有效得多。自从2010年左右自然语言处理首次取得成功以来,深度学习已经取得了巨大的进步。然而,深度学习的基本技术最早出现在20世纪80年代和90年代。那么,为什么我们只是在过去10年才开始探索它们呢?
首先,可能也是最重要的,我们现在拥有的数据比80年代和90年代多得多。互联网的普及和普及意味着我们已经收集了关于几乎所有事情的空前数量的数据,从我们购买的产品到我们如何社交。互联网是由大量的语言数据样本组成的,包括来自Twitter和博客等来源的随意讲话。当涉及到机器学习,尤其是深度学习时,拥有大量的数据集是关键。
与此同时,出现了更快的机器和多核cpu和gpu,这有助于支持深度学习所需的计算能力。特别是,深度学习非常适合并行处理,它现在特别便宜和高效。
最后,新的模型、算法和思想使深度学习更加有效和灵活。这包括更好、更灵活的中间表示学习,更有效的使用上下文和任务间转移的学习方法,以及更有效的端到端联合系统学习。
ACED
Attention
更多自然语言处理相关知识,还请关注AINLPer公众号,极品干货即刻送达。