深度学习入门教程(一)

本文内容基于吴恩达(Andrew Ng)教授和李沐大神的深度学习课程内容进行整理、总结与个人理解,旨在分享学习心得与知识梳理,并非对原课程的替代或官方解读。​
文中涉及的核心概念、理论框架、案例分析等内容均源自该课程的公开教学资料,相关知识产权归原课程版权方及吴恩达教授和李沐大神所有。本文仅为学习交流用途,不代表原课程的官方观点,也不构成任何形式的教学指导建议。​
因个人理解偏差可能导致的内容疏漏或解读不完整,敬请读者以原课程内容为准。如需系统学习相关知识,建议参考吴恩达教授的官方课程及配套资料。

目录

  1. 什么是神经网络
  2. 监督式学习
  3. 深度学习发展
  4. 总结

深度学习(Deep Learning)是机器学习的一个分支,核心是用深度神经网络自动从数据里 “学” 规律、做预测,模拟人脑处理复杂信息的方式,现在已经渗透到图像识别、语音对话、内容推荐等各种场景,所以理解深度学习的核心就是理解神经网络。

1. 什么是神经网络

1.1 神经网络基础概念

神经网络,全称为人工神经网络(Artificial Neural Network,缩写 ANN) ,是一种受生物神经系统启发,用于处理信息的计算模型,旨在模拟人类大脑中神经元之间的信息传递和处理方式。先不要解释的太深,大家有一个概念即可。

1.2 单神经元模型:房价预测

假设我们要建立房价的预测模型,已知八个房子的数据:

  • 输入x:每个房子的面积(多少尺或者多少平方米)
  • 输出y:每个房子的价格

在这里插入图片描述

我们的目标是建立一个函数模型来预测房价:y = f(x)

将已知的八个房子的价格和面积的关系绘制在二维平面上后,一般会用一条直线来拟合这些离散点,建立房价与面积的线性模型。
在这里插入图片描述
但从实际考虑,价格永远不会是负数。所以我们对直线做修正,让它变成折线的形状:当面积小于某个值时,价格始终为零。

这个蓝色折线就是我们建立的房价预测模型。该神经网络的输入x是房屋面积,输出y是房屋价格,中间包含了一个神经元(neuron),即房价预测函数。

1.3 ReLU函数

上述神经元的预测函数(蓝色折线)在神经网络应用中比较常见,称为ReLU函数,即修正线性单元(Rectified Linear Unit)。ReLU函数的特点是:

  • 当x > 0时,函数值为x
  • 当x ≤ 0时,函数值为0

1.4 多神经元网络

实际应用中,一个大型神经网络往往由许多神经元组成,就像通过乐高积木搭建复杂物体一样。

让我们把房价预测的例子变得复杂一些,不仅仅使用房屋面积一个判断因素:

输入特征:

  • 房屋面积(size)
  • 卧室数目(#bedrooms)
  • 邮政编码(zip code/postal code)
  • 地区财富水平(wealth)

中间层神经元:

  • 家庭成员数量(family size):由房屋面积和卧室数目决定
  • 可步行性(walkability):由邮政编码决定,代表交通便利性
  • 学校质量(school quality):由邮政编码和地区财富水平共同决定

输出:

  • 房屋价格预测

在这里插入图片描述
这样就形成了一个类似于神经网络的结构。

1.5 神经网络结构

在真正的神经网络模型中:

  • 输入层:包含四个输入特征(size, #bedrooms, postal code, wealth)
  • 隐藏层:包含三个神经元(family size, walkability, school quality)
  • 输出层:房屋预测价格

每个神经元都包含一个ReLU函数(或其他非线性函数),每个神经元与所有的输入都有关联。

在训练过程中,只要有足够的输入x和输出y,就能训练出较好的神经网络模型,该模型能够得到比较准确的预测结果。

2. 监督式学习

2.1 监督式学习概念

目前为止,由神经网络模型创造的价值基本上都是基于监督式学习(Supervised Learning)的。

监督式学习与非监督式学习的本质区别:

  • 监督式学习:已知训练样本的输出y
  • 非监督式学习:未知训练样本的输出y

在实际应用中,机器学习解决的大部分问题都属于监督式学习,神经网络模型也大都属于监督式学习。

2.2 监督式学习应用案例

以下是监督式学习在神经网络中的典型应用:

1. 房屋价格预测

  • 输入:房屋特征信息
  • 输出:房屋价格
  • 应用:房地产估值

2. 线上广告(最广泛、最赚钱的应用之一)

  • 输入:广告和用户个人信息
  • 输出:用户是否点击广告
  • 应用:精准广告投放

3. 机器视觉(Computer Vision)

  • 输入:图片像素值
  • 输出:图片类别
  • 应用:图像分类、物体识别

4. 语音识别(Speech Recognition)

  • 输入:语音信号
  • 输出:对应的文字信息
  • 应用:语音转文本

5. 智能翻译

  • 输入:源语言文本(如英文)
  • 输出:目标语言文本(如中文)
  • 应用:多语言翻译

6. 自动驾驶

  • 输入:图片或汽车雷达信息
  • 输出:路况信息和决策
  • 应用:智能驾驶系统

2.3 不同类型的神经网络

根据不同的问题和应用场合,需要使用不同类型的神经网络模型:
在这里插入图片描述

标准神经网络(Standard NN)

  • 适用于:一般的监督式学习问题
  • 应用:房价预测、线上广告

卷积神经网络(CNN - Convolutional Neural Network)

  • 适用于:图像识别处理问题
  • 应用:计算机视觉、图像分类

循环神经网络(RNN - Recurrent Neural Network)

  • 适用于:序列信号处理
  • 应用:语音识别、自然语言处理

混合神经网络

  • 适用于:复杂问题
  • 应用:自动驾驶等综合性任务

2.4 数据类型

数据类型一般分为两种:

结构化数据(Structured Data)

  • 定义:具有实际物理意义的数据
  • 特点:容易理解,有明确的含义
  • 例子:房价预测中的面积、卧室数、价格;广告中的用户年龄、广告ID
    在这里插入图片描述

非结构化数据(Unstructured Data)

  • 定义:比较抽象的数据
  • 特点:传统上计算机难以处理,但人类处理较好
  • 例子:音频(Audio)、图像(Image)、文本(Text)
    在这里插入图片描述

2.5 深度学习的突破

以前,计算机对于非结构化数据比较难以处理,而人类对非结构化数据却能够处理得比较好。例如,我们能够很容易识别出一张图片里是否有猫,但对于计算机来说并不简单。

现在,由于深度学习和神经网络的发展,计算机在处理非结构化数据方面效果越来越好,甚至在某些方面优于人类。

3. 深度学习发展

3.1 发展背景

深度学习和神经网络背后的技术思想已经出现数十年了,那么为什么直到现在才开始发挥巨大作用呢?

3.2 性能比较分析

通过性能对比图可以看出不同算法在不同数据量下的表现:
在这里插入图片描述

传统机器学习算法(如SVM、Logistic Regression、Decision Tree)

  • 数据量小时:表现较好
  • 数据量大时:性能一般,基本趋于水平

小规模神经网络(Small NN)

  • 在数据量较大时候的性能优于传统机器学习算法

中等规模神经网络(Medium NN)

  • 在数据量更大的时候表现比小规模神经网络更好

大规模神经网络(Large NN)- 深度学习模型

  • 在数据量很大的时候表现最好
  • 基本保持较快上升的趋势

3.3 深度学习强大的三大原因

深度学习如此强大的原因可以归结为三个因素:

1. 数据(Data)

  • 大数据时代的到来
  • 互联网上海量的数据
  • 数据量的几何级数增加

2. 计算能力(Computation)

  • GPU的出现
  • 计算机运算能力大大提升
  • 使得深度学习能够应用得更加广泛

3. 算法创新(Algorithms)

  • 算法上的创新和改进
  • 深度学习的性能和速度大大提升

3.4 算法改进的例子

激活函数的改进:

  • 过去:使用Sigmoid函数

    • 问题:在远离零点的位置,函数曲线非常平缓,梯度趋于0
    • 结果:造成神经网络模型学习速度变得很慢
  • 现在:使用ReLU函数

    • 优势:在x大于零的区域,梯度始终为1
    • 结果:虽然在x小于零的区域梯度为0,但实际应用中比Sigmoid函数快很多

3.5 深度学习开发流程

构建深度学习模型的流程是一个循环过程:

  1. 产生想法(Idea)
  2. 转化为代码(Code)
  3. 进行实验(Experiment)
  4. 根据结果修改想法
  5. 重复上述循环

如果计算速度越快,每一步骤耗时越少,那么上述循环就能更高效地进行。

4. 总结

4.1 主要内容回顾

本教程主要对深度学习进行了全面概述:

  1. 神经网络基础:使用房价预测的例子建立了从单个神经元到复杂神经网络的理解
  2. 网络结构:介绍了标准神经网络模型的输入层、隐藏层和输出层结构
  3. 监督式学习:从监督式学习角度介绍了不同类型的神经网络(Standard NN、CNN、RNN)
  4. 数据类型:区分了结构化数据和非结构化数据的特点和应用
  5. 发展原因:解释了深度学习现在强大的三个关键因素

4.2 深度学习的优势

近些年来,深度学习在处理非结构化数据方面能力大大提高,特别是在以下领域:

  • 图像处理
  • 语音识别
  • 语言翻译
  • 计算机视觉

4.3 深度学习成功的关键因素

深度学习飞速发展和功能强大的原因包含三个核心要素:

  • 数据(Data):大数据时代提供了海量训练数据
  • 计算能力(Computation):GPU等硬件的发展提供了强大的计算支持
  • 算法创新(Algorithms):不断的算法改进和优化提升了模型性能

4.4 实际应用价值

神经网络与深度学习无论对结构化数据还是非结构化数据都能处理得越来越好,并逐渐创造出巨大的实用价值。这为我们解决现实世界中的复杂问题提供了强大的工具。


本教程为深度学习的入门概述,后续将深入学习各种神经网络结构的具体实现和应用。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐