深度学习教程:使用深度学习的人工智能

作为机器学习的一个重要子集,对深度学习认证的需求已经出现了巨大的增长,尤其是那些有兴趣释放人工智能无限可能性的人。

深度学习教程

在本文中,将带您了解以下内容,这些内容将作为后续博客的基础知识:

  • 是什么让深度学习应运而生?
  • 什么是深度学习以及它的工作原理?

人工智能与深度学习的应用

现在想想这个场景,你不需要做所有的工作,因为你有一台机器来为你完成它,甚至可以做一些你认为根本不可能的事情。例如:

预测未来: 它可以帮助我们提前预测地震、海啸等,以便采取预防措施,使许多生命免于陷入自然灾害的魔爪。

聊天机器人:大家都听说过 Siri,它是 Apple 的语音控制虚拟助手。相信我,在深度学习的帮助下,这些虚拟助手正变得越来越智能。事实上,Siri 可以根据用户进行自我适配,提供更好的个性化帮助。

自动驾驶汽车: 想象一下,对于身体残疾和难以独自驾驶的老年人来说,这将是多么不可思议。除此之外,它还将挽救每年因人为错误而遭遇交通事故的数百万无辜生命。

谷歌AI眼科医生: 这是谷歌最近采取的一项举措,他们正在与印度眼科护理链合作开发一种人工智能软件,该软件可以检查视网膜扫描并识别一种称为糖尿病性视网膜病变的疾病,这种疾病会导致失明。

AI 音乐作曲家: 很难想象我们可以使用深度学习来创造一位 AI 音乐作曲家。如果听到下一个最好的音乐是由机器提供的,请你不要惊讶,这是AI的基本操作,勿6。

梦境读取器: 这是我个人最爱的场景之一,可以将你的梦以视频或其他形式显示出来。尽管现在看来它如此的不切实际。

到目前为止,我们已经看到了如此多的人工智能和深度学习的不切实际的应用,并且我很确定未来人工智能和深度学习在现实生活中的一些应用会让你起鸡皮疙瘩。

以上为您奠定了基础,现在,我们准备好在本深度学习教程中继续深入,了解什么是人工智能。

什么是人工智能?

人工智能只不过是机器模仿智能人类行为的能力。AI 是通过模仿人脑,理解人脑如何思考、如何学习、决定和工作来解决问题而实现的。

例如:一台下棋的机器,或者一个声控软件,它可以帮助你在你的 iPhone 中处理各种事情,或者一个车牌识别系统,它捕获超速汽车的车牌并对其进行处理以提取注册号并识别车主的车。所有这些在深度学习之前都不是很容易实现。现在,让我们了解人工智能的各个子集。

人工智能的子集

到目前为止,您可能听说过很多关于人工智能、机器学习和深度学习的信息。但是,你知道他们三个之间的关系吗?基本上,深度学习是机器学习的一个子领域,机器学习是人工智能的一个子领域,如下图所示:

AI-vs-ML-vs-DL-What-Is-A-Neural-Network

当我们看像AlphaGo这样的东西时,它通常被描绘成深度学习的巨大成功,但它实际上是人工智能和机器学习几个不同领域的想法的结合。事实上,您会惊讶地发现深度神经网络背后的想法并不新鲜,而是可以追溯到 1950 年代。但是,由于当今可用的高端资源能力,它可以实际实施。

因此,在这个深度学习教程博客中继续前进,让我们探索机器学习及其局限性。

什么是机器学习?

机器学习是人工智能的一个子集,它为计算机提供了无需明确编程即可学习的能力。在机器学习中,我们不必像任何其他编程应用程序那样明确定义所有步骤或条件。相反,机器在训练数据集上接受训练,该数据集足够大以创建模型,帮助机器根据其学习做出决策。

例如: 我们想使用机器学习根据花瓣和萼片长度(花的叶子)来确定花的种类。那么,我们将如何做呢?

Machine-Learning-Deep-Learning-Tutorial

如上图所示,我们会将包含不同花卉及其各自种类的各种特征的花卉数据集输入到我们的机器中。使用此输入数据集,机器将创建和训练一个模型,该模型可用于将花朵分类为不同的类别。

一旦我们的模型经过训练,我们将传递一组特征作为模型的输入。

最后,我们的模型将输出新输入数据集中存在的花的种类。这种训练机器创建模型并将其用于决策制定的过程称为机器学习。然而,这个过程有一些局限性。

机器学习的局限性

机器学习无法处理输入和输出非常大的高维数据。处理和处理此类数据变得非常复杂且耗费资源。这被称为维度诅咒。为了更简单地理解这一点,让我们考虑下图:

Dimensionality-Problem-Deep-Learning-Tutorial-1-528x193

考虑一条 100 码的线,您在这条线上的某处丢了一枚硬币。现在,您只需走在线上就可以很方便地找到硬币。这条线是一个单一维度的实体。

接下来,假设您有一个边长为 100 码的正方形,如上图所示,您又在中间某处丢了一枚硬币。现在,很明显,与之前的场景相比,您将花费更多时间在该方块中找到硬币。这个正方形是一个二维实体。

让我们更进一步,考虑一个边长为 100 码的立方体,您在中间某处丢了一枚硬币。而现在,这一次想要找到那枚硬币,更是难上加难了。这个立方体是一个 3 维实体。

因此,您可以观察到复杂性随着维度的增加而增加。在现实生活中,我们所讨论的高维数据具有数千个维度,这使得处理和处理起来非常复杂。在图像处理、NLP、图像翻译等用例中可以很容易地找到高维数据。

机器学习无法解决这些用例,因此,深度学习来拯救。深度学习能够处理高维数据,并且能够有效地专注于自身的正确特征。这个过程称为特征提取。现在,让我们继续本深度学习教程并了解深度学习的工作原理。

深度学习如何运作?

为了重新设计人脑,深度学习研究了称为脑细胞或神经元的大脑基本单位。受神经元的启发,开发了人工神经元或感知器。现在,让我们了解生物神经元的功能以及我们如何在感知器或人工神经元中模拟此功能:

Perceptron-Neuron-Deep-Learning-Tutorial-1

  • 如果我们关注生物神经元的结构,它具有用于接收输入的树突。这些输入在细胞体中汇总,并使用轴突将其传递到下一个生物神经元,如上图所示。

  • 类似地,感知器接收多个输入,应用各种转换和函数并提供输出。

  • 正如我们所知,我们的大脑由多个连接的神经元组成,称为神经网络,我们也可以有一个称为感知器的人工神经元网络来形成深度神经网络。因此,让我们继续阅读本深度学习教程,了解深度神经网络的外观。

深度学习教程:什么是深度学习?

What-Is-A-Neural-Network
任何深度神经网络都将包含三种类型的层:

  • 输入层
  • 隐藏层
  • 输出层

现在您已经了解了深度神经网络,让我们继续学习本深度学习教程,以更深入地了解深度神经网络如何解决图像识别问题。

深度学习使用 - 案例

我们想使用深度网络执行图像识别:

Deep-Neural-Network-What-is-Deep-Learning-528x271

  • 在这里,我们将高维数据传递到输入层。为了匹配输入数据的维度,输入层将包含多个感知器子层,以便它可以消耗整个输入。
  • 从输入层接收到的输出将包含模式,并且只能根据对比度级别识别图像的边缘。
  • 此输出将被馈送到隐藏层 1,在那里它将能够识别各种面部特征,如眼睛、鼻子、耳朵等。
  • 现在,这将被馈送到隐藏层 2,在那里它将能够形成整个面孔。然后,第 2 层的输出被发送到输出层。
  • 最后,输出层根据前面得到的结果进行分类,预测名字。

我问你一个问题,如果这些层中的任何一层缺失或者神经网络不够深,会发生什么情况?很简单,我们将无法准确识别图像。这就是为什么这些用例在深度学习之前这么多年都没有解决方案的原因。为了更进一步,我们将尝试在 MNIST 数据集上应用深度网络。

Image-Recognition-Deep-Learning-Tutorial-528x212 (1)

  • Mnist 数据集由 60,000 个训练样本和 10,000 个手写数字图像测试样本组成。这里的任务是训练一个可以准确识别图像上数字的模型。

  • 为了解决这个用例,将创建一个具有多个隐藏层的深度网络来逐个像素地处理所有 60,000 张图像,最后我们将收到一个输出层。

  • 输出层将是索引 0 到 9 的数组,其中每个索引对应于相应的数字。索引 0 包含 0 是输入图像上出现的数字的概率。

  • 类似地,值为 0.1 的索引 2 实际上表示 2 是输入图像上出现的数字的概率。所以,如果我们看到这个数组中的最高概率是 0.8,它出现在数组的索引 7 处。因此图像上的数字是 7。

结论

伙计们,简而言之,这就是深度学习。在这个深度学习教程中,我们看到了深度学习的各种应用,并了解了它与人工智能和机器学习的关系。然后,我们了解了如何使用感知器或人工神经元基本构建块来创建可以执行此类复杂任务的深度神经网络。最后,我们介绍了深度学习的一个用例,我们使用深度神经网络执行图像识别,并了解了幕后发生的所有步骤。现在,在本深度学习教程系列的下一篇博客中,我们将学习如何使用 TensorFlow 实现感知器,TensorFlow 是一个基于 Python 的深度学习库。

此文章发布者为:Python技术站作者[metahuber],转载请注明出处:http://pythonjishu.com/deep-learning-tutorial/

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年 12月 6日 下午8:39
下一篇 2022年 12月 16日 下午12:44

相关推荐

  • 深度学习为什么如此受欢迎?都有哪些优点?

    本文将从以下三个方面进行分析: 什么是深度学习? 深度学习的发展历程都有哪些? 深度学习为什么不用支持向量机呢? 什么是支持向量机? 支持向量机(SVM)是一种有监督的机器学习算法,可用于分类或回归问题。它使用一种称为内核技巧的技术来转换数据,然后基于这些转换找到可能输出之间的最佳边界。“核”一词在数学中用来表示加权和或积分的加权函数。支持向量机是一种判别分…

    2022年 11月 10日
    10
  • 什么是人工神经网络?人工神经网络(ANN)简介

    随着机器学习的进步,人工智能已经走上了高速发展的道路。深度学习被认为是为解决使用海量数据集的复杂问题而构建的最先进技术。 本文将向您介绍神经网络的基本概念以及它们如何解决复杂的数据驱动问题。 什么是神经网络 根据人脑建模,构建了神经网络来模仿人脑的功能。人脑是由多个神经元组成的神经网络,类似地,人工神经网络(ANN)是由多个感知器组成的(稍后解释)。 神经网…

    2022年 12月 6日
    00
  • 自然语言处理神经网络模型入门概述

    深度学习对自然语言处理领域产生了巨大影响。 但是,作为初学者,您从哪里开始? 深度学习和自然语言处理都是一个巨大的领域。每个领域需要关注的突出方面是什么,深度学习对NLP的哪些领域影响最大? 在这篇文章中,您将发现有关自然语言处理深度学习相关的入门知识。 阅读这篇文章后,您将知道: 对自然语言处理领域影响最大的神经网络架构。 可以通过深度学习成功解决的自然语…

    2023年 2月 12日
    00
  • 神经网络:多层感知器(附源码)

    在之前的博客中 ,您了解了名为Perceptron的单个人工神经元。在本神经网络教程中,我们将向前迈出一步,讨论称为多层感知器(人工神经网络)的感知器网络。 我们将在本神经网络教程中讨论以下主题: 单层感知器的局限性 什么是多层感知器(人工神经网络)? 人工神经网络如何工作? 用例 这篇关于神经网络教程的博客最后将包含一个用例。我们将使用 TensorFlo…

    2022年 12月 30日
    00
  • 深度学习的8种神经网络

    什么是神经网络? 神经网络是机器学习的一个子集,是深度学习算法的核心。它们也被称为人工神经网络或模拟神经网络。它们的名称和结构源自人脑,它们类似于生物神经元相互交流的方式。 在人工神经网络 (ANN) 中,节点层包含一个输入层、一个或多个隐藏层和一个输出层。每个节点或人工神经元都与其他节点相连,并具有与其相关联的权重和阈值。如果节点的输出超过某个阈值,则该节…

    2023年 2月 5日 深度学习
    10
  • 递归神经网络 (RNN)的类型和应用

    作为最流行的机器学习算法之一,神经网络在准确性和速度方面都优于其他算法。因此,透彻了解神经网络是什么、它是如何构建的以及它的范围和局限性是至关重要的。 循环神经网络 (RNN) 是一种处理时间序列或顺序数据的人工神经网络。这些深度学习算法通常用于语言翻译、自然语言处理 (NLP)、语音识别和图像字幕等顺序或时间问题;它们包含在 Siri、语音搜索和谷歌翻译等…

    2023年 2月 5日
    00
  • 深度学习Python实战:用Python实现第一个深度学习程序!

    深度学习是 2018-22 年度最热门的话题之一。近几年该行业取得了非常大的进步,可以说机器或计算机程序真正取代人类的时代已经到来。 在本文章,将使用 Python 进行深度学习的的实战,希望能帮助您了解深度学习到底是什么,以及它是如何实现的。 我将在本文中介绍以下主题: 理论篇 深度学习的作用 什么是深度学习? 感知器和人工神经网络 深度学习的应用 为什么…

    2022年 12月 6日
    00
  • 什么是深度学习?深度学习入门!

    什么是深度学习? 在本文中,我们将讨论什么是深度学习,这是当前业内非常热门的话题,并且深度学习在人工智能、大数据和大数据分析等领域的众多行业中得到非常广泛的应用。例如,谷歌在语音、图像识别算法中就使用深度学习, Netflix 和亚马逊也使用它来了解客户的行为。 也许你不会相信,但美国麻省理工学院的一些研究人员正在尝试使用深度学习来预测未来。深度学习拥有改变…

    2022年 12月 5日
    00
  • (实战篇)从头开发机器翻译系统!

    在本文中,您将学习如何使用 Keras 从头开发一个深度学习模型,自动从德语翻译成英语。 机器翻译是一项具有挑战性的任务,传统上涉及使用高度复杂的语言知识开发的大型统计模型。 在本教程中,您将了解如何开发用于将德语短语翻译成英语的神经机器翻译系统。 完成本教程后,您将了解: 如何清理和准备数据以训练神经机器翻译系统。 如何为机器翻译开发编码器-解码器模型。 …

    2023年 2月 12日
    00
  • (实战篇)用Python识别手写数字

    我们使用 Scikit-learn 库实现一个简单的深度学习训练示例,训练目标为:识别手写数字。 以下是实现手写数字识别的完整示例代码: from sklearn import datasets from sklearn import svm from sklearn.model_selection import train_test_split from …

    2023年 2月 15日
    00

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注