第5章 深度大数据分析
第4章建立了人工神经网络的基本理论,介绍了它们如何模拟人脑结构,在相互连接的节点帮助下基于一组输入产生输出。节点分布在3种类型的层:输入层、隐藏层和输出层。该章介绍了输入信号如何传递到输出层的基本概念和数学原理,以及ANN对神经元连接权重进行训练的迭代方法。具有一个或两个隐藏层的简单神经网络可以解决非常基本的问题。然而,为了利用ANN来解决有意义的实际问题——这些问题涉及成百上千的输入变量,涉及更复杂的模型,并且要求模型存储更多的信息,我们需要使用大量隐藏层来实现更复杂的结构。这类网络称为深度神经网络,利用这些深度神经网络对真实数据进行建模的过程称为深度学习。通过添加节点并将它们互连,深度神经网络可以对音频、视频和图像等非结构化输入进行建模。
本章将探讨如何利用深度学习来解决大数据分析中的一些重要问题,包括从海量数据中提取复杂模式、语义索引、数据标注、快速信息检索以及简化判别任务(如分类)。本章主要包括以下内容:深度学习的基石——梯度下降法、反向传播、非线性和剔除,结构化数据的专用神经网络架构,构建数据准备管道,超参数调优,以及利用分布式计算进行深度学习。
示例将使用deeplearning4j(DL4J)Java框架实现。
5.1 深度学习基础知识和构建模块
在前几章中,我们建立了这样一个事实,即机器学习算法将输入数据泛化为一个与数据相符的假设,模型以此预测新值的输出。模型的精度是输入数据量以及自变量值变化的函数。数据和种类越多,生成和执行模型所需的计算能力就越强。分布式计算框架(Hadoop、Spark等)可以很好地处理各种各样的大量数据。同样的原则也适用于ANN。
不同的输入数据越多,生成的模型就越精确,这就需要更多的存储和计算能力。大数据分析平台(无论是在本地还是在云端)的发展提供了可用的计算能力和存储能力,因此,我们可以在含有成百上千个节点的输入层和隐藏层的大型神经网络中进行实验。这些类型的ANN被称为深度神经网络。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access