【Python深度学习】Python全栈体系(二十七)

深度学习

第一章 深度学习概述

一、引入

1. 人工智能划时代事件
  • 2016年3月,Google公司研发的AlphaGo以4:1击败世界围棋顶级选手李世石。次年,AlphaGo2.0对战世界最年轻的围棋四冠王柯洁,以3:0击败对方,背后支撑AlphaGo具备如此强大能力的,就是“深度学习”(Deep Learning)。
  • 一时间,“深度学习”这个本专属于计算机学科的术语,成为包括学术界、工业界、风险投资界等众多领域的热词。
2. 深度学习巨大影响
  • 除了博弈,深度学习在计算机视觉(computer vision)、语音识别、自动驾驶等领域,表现与人类一样好,甚至有些地方超过了人类。2013年,深度学习就被麻省理工学院的《MIT科技评论》评为世界10大突破性技术之一
  • 深度学习不仅是一种算法升级,还是一种全新的思维方式,它的颠覆性在于,将人类过去痴迷的算法问题,演变成数据和计算问题,以前“算法为核心竞争力”正在转换为“数据为核心竞争力”

二、深度学习的定义

1. 什么是深度学习?
  • 简单来说,深度学习就是一种包括多个隐含层(越多即为越深)的多层感知机。它通过组合低层特征,形成更为抽象的高层表示,用以描述被识别对象的高级属性类别或特征。能自生成数据的中间表示(虽然这个表示并不能被人类理解),是深度学习区别于其他机器学习算法的独门绝技。
  • 所以,深度学习可以总结成:通过加深网络,提取数据深层次特征
2. 深度神经网络

在这里插入图片描述

3. 深度学习与机器学习的关系
  • 人工智能学科体系
    在这里插入图片描述
  • 人工智能、机器学习、深度学习三者的关系,可以认为深度学习是机器学习的“高级阶段“
    在这里插入图片描述

三、深度学习的特点

1. 深度学习的特点
  • 优点:
    • 性能更优异
    • 不需要特征工程
    • 在大数据样本下有更好的性能
    • 能解决某些传统机器学习无法解决的问题
  • 缺点:
    • 小数据样本下性能不如机器学习
    • 模型复杂
    • 过程不可解释
2. 深度学习的优点
2.1 性能更优异

在这里插入图片描述

2.2 不需要特征工程
  • 传统机器学习需要人进行特征提取(特征工程),机器性能高度依赖于特征工程的质量。在特征很复杂的情况下,人就显得无能为力。而深度学习不需要这样的特征工程,只需将数据直接传递给深度学习网络,由机器完成特征提取
2.3 深度学习在大样本数据下有更好的性能和扩展性

在这里插入图片描述

2.4 深度学习能解决传统机器学习无法解决的问题(如深层次特征提取)

在这里插入图片描述

3. 深度学习的缺点
  • 深度学习在小数据上性能不如传统机器学习
  • 深度学习网络结构复杂、构建成本高
  • 传统机器学习比深度学习具有更好的解释性
4. 深度学习与传统机器学习对比

在这里插入图片描述

5. 为什么要学习深度学习?
  • 深度学习具有更强的解决问题能力(例如图像识别准确率明显超过机器学习,甚至超过了人类)
  • 掌握深度学习具有更强的职业竞争力
  • 深度学习在行业中应用更广泛

四、深度学习的应用

  • 图像分类、人脸识别、图像迁移、语音处理、自动驾驶、机器博弈、机器人、自然语言处理

五、深度学习总结

在这里插入图片描述

第二章 感知机与神经网络

一、感知机概述

1. 什么是感知机?
  • 感知机(Perceptron),又称神经元(Neuron)。是神经网络(深度学习)的起源算法,1958年由康奈尔大学心理学教授弗兰克·罗森布拉特(Frank Rosenblatt)提出,它可以接收多个输入信号,产生一个输出信号。
    在这里插入图片描述
2. 感知机的功能
  • 实现逻辑运算,包括逻辑和(AND)、逻辑或(OR)
  • 实现自我学习
  • 组成神经网络
3. 实现逻辑和

在这里插入图片描述

4. 实现逻辑或

在这里插入图片描述

5. 感知机的缺陷
  • 感知机的局限在于无法处理“异或”问题
    在这里插入图片描述
6. 多层感知机
  • 1975年,感知机的“异或”难题才被理论界彻底解决,即通过多个感知机组合来解决该问题,这种模型也叫多层感知机(Multi-Layer Perceptron,MLP)。如下图所示,神经元节点阈值均设置为0.5
    在这里插入图片描述
    在这里插入图片描述
7. 代码
# 自定义感知机

# 实现逻辑和
def AND(x1, x2):
    w1, w2 = 0.5, 0.5  # 两个权重
    theta = 0.7  # 阈值
    tmp = x1 * w1 + x2 * w2
    if tmp <= theta:
        return 0
    else:
        return 1


print(AND(1, 1))  # 1
print(AND(1, 0))  # 0
print(AND(0, 0))  # 0


# 实现逻辑或
def OR(x1, x2):
    w1, w2 = 0.5, 0.5  # 两个权重
    theta = 0.2  # 阈值
    tmp = x1 * w1 + x2 * w2
    if tmp <= theta:
        return 0
    else:
        return 1


print(OR(1, 1))  # 1
print(OR(1, 0))  # 1
print(OR(0, 0))  # 0


# 实现逻辑异或
def XOR(x1, x2):
    s1 = not AND(x1, x2)  # 对x1,x2做逻辑和计算,再取非
    s2 = OR(x1, x2)  # 直接对x1,x2做逻辑或计算
    y = AND(s1, s2)
    return y


print(XOR(1, 1))  # 0
print(XOR(1, 0))  # 1
print(XOR(0, 0))  # 0

二、神经网络

1. 什么是神经网络?
  • 感知机由于结构简单,完成的功能十分有限。可以将若干个感知机连在一起,形成一个级联网络结构,这个结构称为“多层前馈神经网络”(Multi-layer Feedforward Neural Networks)。所谓“前馈”是指将前一层的输出作为后一层的输入逻辑结构。每一层神经元仅与下一层的神经元全连接。但在同一层之内,神经元彼此不连接,而且跨层之间的神经元,彼此也不相连。
    在这里插入图片描述
2. 神经网络的功能
  • 1989年,奥地利学者库尔特·霍尼克(Kurt Hornik)等人发表论文证明,对于任意复杂度的连续波莱尔可测函数(Borel Measurable Function)f,仅仅需要一个隐含层,只要这个隐含层包括足够多的神经元,前馈神经网络使用挤压函数(Spuashing Function)作为激活函数,就可以以任意精度来近似模拟f。如果想增加f的近似精度,单纯依靠增加神经元的数目即可实现。
  • 这个定理也被称为通用近似定理(Universal Approximation Theorem),该定理表明,前馈神经网络在理论上可近似解决任何问题。
3. 通用近似定理

在这里插入图片描述
在这里插入图片描述

4. 深层网络的优点
  • 其实,神经网络的结构还有另外一个“进化”方向,那就是朝着“纵深”方向发展,也就是说,减少单层的神经元数量,而增加神经网络的层数,也就是“深”而“瘦”的网络模型。
  • 微软研究院的科研人员就以上两类网络性能展开了实验,实验结果表明:增加网络的层数会显著提升神经网络系统的学习性能

三、激活函数

1. 什么是激活函数?
  • 在神经网络中,将输入信号的总和转换为输出信号的函数被称为激活函数(activation function)
    在这里插入图片描述
2. 为什么使用激活函数?
  • 激活函数将多层感知机输出转换为非线性,使得神经网络可以任意逼近任何非线性函数,这样神经网络就可以应用到众多的非线性模型中
  • 如果一个多层网络,使用连续函数作为激活函数的多层网络,称之为“神经网络”,否则称为“多层感知机”。所以,激活函数是区别多层感知机和神经网络的依据。
3. 常用激活函数 - 阶跃函数
  • 阶跃函数(Step Function)是一种特殊的连续时间函数,是一个从0跳变到1的过程,函数形式与图像:
    在这里插入图片描述
4. 常用激活函数 - sigmoid

在这里插入图片描述

5. 常用激活函数 - tanh(双曲正切)

在这里插入图片描述

6. 常用激活函数 - ReLU(修正线性单元)

在这里插入图片描述

7. 常用激活函数 - Softmax

在这里插入图片描述

四、小结

  • 多层前馈网络。若干个感知机组合成若干层的网络,上一层输出作为下一层输入。
  • 激活函数。将计算结果转换为输出的值,包括阶跃函数、sigmoid、tanh、ReLU。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柠檬小帽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值