深度学习-李宏毅学习笔记(LECTURE1 Introduction)

最近要做关于深度学习的调研报告,看了李宏毅的300页PPT,学习笔记如下:

LECTURE 1 Introduction

深度学习的介绍

 深度学习实质上就是寻找一个函数模型,这个寻找的过程分为三个步骤: 定义模型(神经网络), 模型性能, 挑选最佳模型。

神经网络

深度学习的模型实质上就是一个神经网络,其中有许多神经元组成

神经元
神经网络的最小单位是神经元
这里写图片描述
图中所示的符号含义为:
w——权值
b——偏离值
σ( )——激活函数

全连接前馈网络
全连接前馈网络是最简单的人工神经网络,是最常用的模型之一。
全连接: 输出是上一层所有输出的加权和处理的结果
前馈:各层之间没有反馈
这里写图片描述

输出层
由于不同属性对应的值大小差异会很悬殊,直接处理可能会导致结果偏离真实方向。因此我们需要将 softmax 层作为输出层,来对数据进行归一化。
这里写图片描述

模型性能

训练集
为了使初始模型经过训练后成为一个能够满足我们要求的模型,我们需要准备一个训练集,这个训练集中包括输入的数据啊、图片啊、音频啊什么的,还包括一个与之分别相对应的我们所期待的输出结果。
这里写图片描述
学习目标
我们训练模型的目的就是为了在输入数据后,所期待输出的对应的y值最大。例如,在识别手写数字时,我们输入一个手写数字“1”的图片,那么输出为“1”所对应的y值是所有y值中最大的。
这里写图片描述
误差
当然,如果手写数字太潦草了,别说模型了,就连我们自己也很难识别出来,因此我们对真实值和测量值之间的差距进行量度。
这里写图片描述
总体误差
把所有输入经过模型后输出的误差相加,就得到了总体误差。总体误差应该越小越好,我们需要找的最优模型应该具有最小的误差,而这个模型之间误差的不同的原因在于模型中的参数不同。
这里写图片描述

挑选最优模型

如何寻找最优模型
找最优模型等效于得出一系列模型参数(weights & b)使得总体误差最小化。
梯度下降
为了找到使得总体误差最小化的模型,我们可以利用梯度下降算法进行此操作。以下是梯度下降算法操作的步骤。
step1:
首先假设一个模型,具有模型参数{w1, w2, …, b1, b2, …},这个模型的总体误差为L,梯度下降算法将对单个参数w进行处理。
step2:
给w定义一个初始值,这个初始值可以是个随机值,也可以是一个RBM值。但要注意梯度下降不保证全局最小值,不同的起点值会到达不同的最小值点
这里写图片描述
step3:
对总体误差L求w的偏导,如果偏导值为正数,则减小w,如果偏导值为复数,则增大w,因此我们定义一个公式,以便求解下一个w值。
这里写图片描述
其中η为学习率,是一个正数。重复此操作,直到偏导值足够小。
step4:
对所有的模型参数进行梯度下降的处理后可以得到一个最终坐标(w1, w2, …, b1, b3,…),如下图所示,就能得到一个最佳模型。
这里写图片描述

WHY DEEP?

参数越多,模型性能越好

“Hello World”for Deep Learning

本节简单教大家如何使用Keras进行深度学习,使训练的模型具有识别手写数字的能力。

"""
Keras:是一个基于Python的深度学习库
"""
import Keras.
#step1:define a set of function
model = Sequential()
model.add(Dense( input_dim = 28 * 28,
                 output_dim = 500))
model.add( Activation('sigmoid'))
model.add( Dense( output_dim = 500))
model.add( Activation('sigmoid'))
model.add( Dense(output_dim = 10))
model.add( Activation('softmax'))

#step2 goodness of function
#step3.1 configuration
model.compile(loss='mse',
              optimizer=SGD(lr=0.1),
              metrics=['accuracy'])
#step3.2 find the optimal network parameters
model.fit(x_train, y_train, batch_size=100, nb_epoch=20)

关于Keras的文档:https://keras.io/

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值