2018-05-14 11:35:15 MemoryD 阅读数 520

Brief Introduction of Deep Learning - 深度学习简介

1. 前言

  • deep learning 在近些年非常热门,从2012年开始,深度学习的应用数目几乎是呈指数增长的。
  • 深度学习的发展史如下图:
    深度学习发展史

2. 深度学习的步骤

1526262040728

2.1 第一步: 定义一个神经网络

Neural

  • 神经网络由神经元组成,每个神经元如上图所示,每个神经元都有一个 bias 和一个 function ,每条输入的边都有一个 weight

  • 假设这个神经元的输入是 (a1,a2,a3),则最后的输出是

    sigma(a1w1+a1w2+a3w3+bias)
    ,输入和输出都是一个 向量(vector)1526263126157

  • 神经网络有许多神经元组合而成,神经元之间的连接一般为全连接(fully connect),第一层是输入层(input layer),最后一层是输出层(output layer),中间的叫做隐层(hidden layers)前一层的输出作为后一层的输入。

    1526263459082

  • 深度学习中的所谓深度就是指神经网络有很多 hidden layers
    1526263658862

  • 神经网络的计算可以转换成矩阵计算,这么做的好处就是可以用 GPU 进行加速,可以大幅度提高计算效率。
    1526264304894

1526264321724

  • 例子: 手写数字辨识

    • 输入: 一张 16*16 的图片,即 256 维的向量

    • 输出: 一个 10 维的向量

    1526265120042

    • 如何决定神经网络的结构? 一般只能通过经验加尝试,还有你的直觉。真是玄学~

    还有一些方法能让机器自己去学习出神经网络的结构,但是还不成熟。也有一些其他的除全连接之外的结构,比如 卷积神经网络(Convolutional Neural Network)

2.2 定义一个函数的好坏(Loss Function)

  • 可以有很多种方法,其中有一种方法是计算 Cross Entropy,公式如下:

    1526266634744

    Total Loss:1526266704856

2.3 找出最好的函数

  • 没有其他的,就是用 梯度下降法(Gradient Descent),但是因为深度学习的函数太复杂,要直接计算微分的话,计算量实在太大了,所以一般会用一个叫做 反向传播(Backpropagation) 的算法来做,这个算法会在之后详细介绍。

3 一些废话

  • 再说一句,虽然我们是用 Backpropagation 来帮我们算微分,但是其实就连这个我们都不会自己去算,基本都是用一些工具来帮我们,比如 TensorFlow。到此结束了吗?没有的,人这么懒的生物,觉得 TensorFlow 也太复杂了,所以又写了一堆 API 去直接调用 TensorFlow ,这就是之后会讲到的 Keras,果然懒才能推动人类不断进步。
  • 由于上述原因,大部分搞机器学习就是调调包,跟叠积木一样,不知道这是好还是不好。我也只是个初学者,希望能在这条路上走得远一些。
2018-03-31 21:50:45 opengel 阅读数 6301

李老师的视频教程相对比较系统的介绍了深度学习相关的理论。该视频教程共分成5个部分:

李宏毅机器学习(2017)

https://www.bilibili.com/video/av10590361?from=search&seid=456509998694502607

李宏毅深度学习(2017)

https://www.bilibili.com/video/av9770302?from=search&seid=456509998694502607

李宏毅2017 深度学习GAN课程

https://www.bilibili.com/video/av18603573?from=search&seid=456509998694502607

李宏毅深度学习合辑 】Advanced Topics in Deep Learning

https://www.bilibili.com/video/av19145699?from=search&seid=456509998694502607

深度学习 李宏毅 】深度学习理论 Deep Learning Theory

https://www.bilibili.com/video/av20961661?from=search&seid=4753772315676173168


2017-07-27 17:30:04 lqfarmer 阅读数 10322


前一期给大家分享了李宏毅老师17年深度学习课程的前半部分,今天继续与大家分享李老师的在2017年初陆续发放出来的关于深度学习/机器学习的视频课程后半部分。

整套视频的目录:


整套教程的视频及配套PPT下载地址:

链接: pan.baidu.com/s/1mh8Sto

密码: 微信公众号回复“ma2”

往期精彩内容推荐:

模型汇总19 强化学习(Reinforcement Learning)算法基础及分类

模型汇总-14 多任务学习-Multitask Learning概述

纯干货7 Domain Adaptation视频教程(附PPT)及经典论文分享

2017年最新中文版《深度学习》教材下载

<模型汇总-10> Variational AutoEncoder_变分自动编码器原理解析

更多深度学习NLP方面应用的经典论文、实践经验和最新消息,欢迎关注微信公众号“深度学习NLPDeepLearning_NLP”或扫描二维码添加关注。


2017-08-04 21:44:31 soulmeetliang 阅读数 2583

[机器学习入门] 李宏毅机器学习笔记-37(Deep Reinforcement Learning;深度增强学习入门)

PDF VIDEO

Deep Reinforcement Learning

深度增强学习是一套很复杂的方法,在这里只了解皮毛。

Scenario of Reinforcement Learning

有个傻傻的机器人小白(Agent)去闯荡世界(Environment),世界是非常开放的,将自己的状态(State)毫不吝啬地给小白呈现 ,而小白也会做出一些懵懵懂懂的探索动作(Action),这时候世界就会告诉小白你的所作所为是好的还是不好的(Reward)。

这里写图片描述

小白看到一杯水(State),懵懂的小白一下子将它打翻了(Action),则他会收到负面反馈(Reword)。由于环境是连续的,紧接着小白面前的就是一杯被打翻的水(State),于是试着把水擦干净(Action),得到了正面反馈(Reward)。

这里写图片描述

于是,小白要做的就是,根据前面收获的正面和负面反馈,去学习哪些能时正面反馈最大化的行为。


Learning to paly Go

这里写图片描述

这里写图片描述

可见,只有在少数的action下才有reword,这是一个难点。
下面来比较一下:Learning to paly Go - Supervised v.s. Reinforcement

这里写图片描述

在下棋这个任务里,监督学习就想从老师那里学习,看到A,落子到某处,看到B,落子到……
AlphaGo 采取的策略是先用监督学习learn的不错后,再用增强学习狂下棋。


Learning a chat-bot

原来我们的方法是:

这里写图片描述

再比较一下 Supervised v.s. Reinforcement

这里写图片描述

在增强学习中,机器人小白跟人讲话,看人脸色好,就知道自己讲对了,脸色差,就反省自己做错了。

这里写图片描述

当然不断跟人讲话会把人逼疯的,所以两个小白一直对话就好,但这样也有一个问题,下棋可以判断输赢,但是对话的脸色却是不好判断的,这是该任务的尚待解决的问题。

这里写图片描述

有一个方法是,Use some pre-defined rules to evaluate the goodness of a dialogue

这里写图片描述


More applications

在一些人也不知道对错的情况下,缺少labeled data ,这时候增强学习就比较适用。

这里写图片描述

这里写图片描述


Example: Playing Video Game

这里写图片描述

Space invader

Play yourself: http://www.2600online.com/spaceinvaders.htm l • How
about machine: https://gym.openai.com/evaluations/eval_Eduozx4HRyqgTCVk9ltw

这里写图片描述

这里写图片描述

Difficulties of Reinforcement Learning

这里写图片描述


Outline

增强学习有两大类,Policy-based是在learn一个做事的actor,而Value-based会learn不做事,只会评论的Critic。

这里写图片描述

增强学习的方法很多,在这里讲的是当时的最强方法:Asynchronous Advantage Actor-Critic (A3C)
Alpha Go 用的方法是:policy-based + value-based + model-based

Policy-based Approach

Learning an Actor

这里写图片描述

function是Pi,input是environment,output是Action。

回顾Deep learning 的是那个步骤:

这里写图片描述

Step 1: Neural Network of function

这里写图片描述

这里写图片描述

NN的好处就是比较generalized,即使没见过的场景,也可能给出合理的结果。

Step 2:goodness of function

这里写图片描述

Review: Supervised learning

这里写图片描述

在增强学习中一个Actor的好坏定义是非常类似的。

这里写图片描述

期望值衡量了actor 的好坏,那么这个期望值如何计算呢?

这里写图片描述

Step 3: pick the best function

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

Add a Baseline:

这里写图片描述

The probability of the actions not sampled will decrease.

Value-based Approach

Learning a Critic

这里写图片描述

Three kinds of Critics

这里写图片描述

这里写图片描述

How to estimate

这里写图片描述

这里写图片描述

这里写图片描述


Actor-Critic

这里写图片描述

这里写图片描述

这里写图片描述

Demo of A3C:

走迷宫:https://www.youtube.com/watch?v=nMR5mjCFZCw

这里写图片描述

开赛车: https://www.youtube.com/watch?v=0xo1Ldx3L5Q

这里写图片描述

end!

深度学习经典教材

阅读数 243

没有更多推荐了,返回首页