2017-11-02 19:40:06 hhsh49 阅读数 3172

转自:http://blog.csdn.net/soulmeetliang/article/details/73251790


[机器学习入门] 李宏毅机器学习笔记-13 (Semi-supervised Learning ;半监督学习)

PDF VIDEO

Introduction

这里写图片描述


Why semi-supervised learning helps?

这里写图片描述

Semi-supervised Learning for Generative Model

Supervised Generative Model VS Semi-supervised Generative Model

这里写图片描述

这里写图片描述

Step

这里写图片描述

Why?

这里写图片描述


Low-density Separation

这里写图片描述

Self-training

这里写图片描述

这里写图片描述


Entropy-based Regularization

这里写图片描述


Outlook: Semi-supervised SVM

这里写图片描述


Smoothness Assumption

核心思想:近朱者赤,近墨者黑

这里写图片描述

这里写图片描述

Classify astronomy vs. travel articles

这里写图片描述

这里写图片描述

更多的数据连在一起,很难分类,那么如何做呢?

Cluster(群集 ) and then Label

这里写图片描述

这种方法不一定made sense ,需要class很强。 
But,How to know x1 and x2 are close in a high density region (connected by a high density path) 
还有另一种方法:

Graph-based Approach

这里写图片描述

Graph Construction

这里写图片描述

这里写图片描述

怎样在Graph 中定量地表示平滑度

这里写图片描述

将该式子整理一下,换个形式

这里写图片描述

如此,让smoothness 影响Loss,as a regularization term

这里写图片描述

smoothness不一定要放在output上,放到任何一层都可以。


Better Representation

去蕪存菁,化繁為簡 
Looking for Better Representation

这里写图片描述

2017-05-22 00:54:45 soulmeetliang 阅读数 9854

[机器学习入门] 李宏毅机器学习笔记-2 (Regression:Case Study ;回归:案例研究)

PDF VIDEO

Regression-pokemons

正如我们在笔记一中提到的,Regression可以做很多事情。比如 Stock Market Forecast、Self-driving
Car、Recommendation等等,但是李老师用有趣的案例——预测宝可梦(
pokemons)进化后过的CP值(战斗力),来讲解什么是Regression。

这里写图片描述

如上面图中所示,我们的目标是在函数‘f’中,input一只宝可梦,output他进化后的cp值。 那么寻找这个函数 f 就成了问题的关键。


Step1 Model

建立模型,比如我们就在这里建立一个Linear model:

y = b + w * x
它是infinite的……
可能为f1: y = 10.0 + 9.0 ∙ x
可能为f2: y = 9.8 + 9.2 ∙ x
可能为f3: y = - 0.8 - 1.2 ∙ x
……

可见,不同的b、w,得到的 f 不尽相同,而下面,我们就要找到最能契合要求的一个 f 。


Step2 Goodness of function

可以看到,当我们将准备好的training data(已知10个宝可梦的进化情况),建立一个二维坐标轴。

这里写图片描述

通过上图可以看出,似乎有一个函数能够拟合这些坐标点,而这就是我们想要的,为了选出最契合的 f ,我们要建立一个Loss function L ,也就是函数的函数。

Loss function L
input a function
output how bad it is

如果我们将 f 的 w 和 b 作为两轴,则在下图中每一点都代表一个 function f ,而颜色代表output的大小,也就代表该function f 参数的好坏。易理解,smallest点做对应的函数 f 就是我们想要的。

这里写图片描述


Step 3 Best Function

我们刚刚提到最拟合的 f ,他可能是 y = 0.6x +0.8,这个就叫做best function,那么我们该用什么方法在Loss Function下找到它呢?这个L(w,b)smallest该如何计算呢?

首先容易想到的,在本案例中,我们可以用线性代数的基本公式来直接计算出最佳w和b。

这里写图片描述

除了这种方法,当特征值非常多时,我们就要用到梯度下降法来进行计算。

这里写图片描述

当我们在L(w)的二维平面中时,我们必须要找到函数的最低点

首先随机选取一个点w0,计算微分也就是斜率,如果为正,则减小w,如果为负,则增大w。

而这有另一个问题,每次要增加或减少多少w值呢,有两个因素影响。第一,即微分值,如果微分值很大或很小,表示此处非常陡峭,那么证明距离最低点还有很远的距离,所以移动的距离就很大。第二个因素是我们事先自主定义的常数项 η 值,即步长

这里写图片描述

按照这个模式,不断重复,经过非常多的参数更新后,能达到一个最低点。

当我们有多个feature时,即不仅有 w 还有 b ,同样不会影响梯度下降过程,展示出来就是这样的:

这里写图片描述

说到这里大家可能会担心,会不会产生下图左半部分的哪种情况,即不同的起始位置,找到的最低点是不一样的,那么这里的解释是,在我们案例的Linear regression中,不会出现这种可能性,而全都是右图哪种形式,即只有一个大坑,放心往里走就好。

这里写图片描述

通过这种方式,我们就能得到想要的 function f ,来解决我们的需求。


How’s the results?

通过上面的计算,我们成功得到了一个如图函数 f,接下来就会发现,并不是所有的点都能拟合函数,这就会造成很大的预测不准的情况,通过Loss Function也能看出,最优解的值依然很大,测试数据的表现也不好,所以我们就要想办法优化。

这里写图片描述

很容易想到,刚刚我们用了一次方程作为model,二次方程会不会更好一些呢,三次方程、四次方程呢?

于是我们做了以下实验,用同样的方法,放到多次方程中。

这里写图片描述

这里写图片描述

overfitting

通过上面四幅图可以看出,虽然当我们增加函数次数时,可以使training data的Average Error越来越小,但是Test data的表现却不尽如人意,甚至在五次方程时,大大超出了我们的预估,那么这种现象就叫做overfitting

这里写图片描述

所以,function不是越复杂越好,所以我们要选择一个最合适的,由上图可以看出,在三次方程中表现最好。


有一个万能的提高准确率的好方法,收集更多的数据。 Les’s collect more data。

2017-06-06 23:00:49 soulmeetliang 阅读数 5537

[机器学习入门] 李宏毅机器学习笔记-10 (Tips for Deep Learning;深度学习小贴士)

PDF VIDEO

Recipe of Deep Learning

这里写图片描述
这里写图片描述


在 training data上的performance不好

这里写图片描述


Deeper usually does not imply better

这里写图片描述


Vanishing Gradient Problem

这里写图片描述
这里写图片描述
这里写图片描述


ReLU(Rectified Linear Unit)

这里写图片描述
这里写图片描述
这里写图片描述

ReLU - variant

这里写图片描述

**那么除了ReLU有没有别的activation function了呢?
所以我们用 Maxout来根据training data自动生成activation function**
ReLU is a special cases of Maxout


Maxout

这里写图片描述


ReLU is a special cases of Maxout

这里写图片描述


More than ReLU

这里写图片描述
这里写图片描述


Maxout - Training

这里写图片描述
这里写图片描述


Adaptive Learning Rate

这里写图片描述
这里写图片描述


RMSProp

这里写图片描述


Hard to find optimal network parameters

这里写图片描述


Momentum(gradient descent 融入惯性作用)

这里写图片描述
这里写图片描述
这里写图片描述

所以,加了momentum后:

这里写图片描述


Adam

这里写图片描述


在testing data上performance不好

这里写图片描述


Early Stopping

这里写图片描述


Regularization

这里写图片描述
这里写图片描述
这里写图片描述


Regularization - Weight Decay

这里写图片描述


Dropout

这里写图片描述
这里写图片描述
这里写图片描述


Dropout- Intuitive Reason

这里写图片描述
这里写图片描述


Dropout is a kind of ensemble

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

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!

2019-03-20 00:28:23 m0_37757740 阅读数 80

Grandient Desent

learning rate

1. smaller learning rate: 更新速度太慢
2. bigger learning rate: 太早收敛,得不到较好的解
3. adaptive learning rate: 根据参数和迭代次数来调整learning rates
Adaptive Learning Rates

在这里插入图片描述

  • 对每个不同的参数,都有不同的learning rate

在这里插入图片描述

  • 直觉解释是造成反差的大小,理论上解释有点复杂,主要是一阶微分和二阶微分的比值,而随机sample多一些一阶微分值,预估出大概多二阶微分值,一般而言,二阶微分值较大的情况下,大多数一阶微分值也较大
    在这里插入图片描述
    在这里插入图片描述

Stochastic Gradient Desent

在这里插入图片描述

Feature Scaling
  • Feature Scaling的原因是让整个loss的等高线趋向于圆形,使得每次的负梯度方向都是趋近于一致的;否则将呈现一种椭圆形,负梯度方向一直在变化,降低效率。
    在这里插入图片描述
  • Gradient Descent 数学原理
    Gradient Descent基于泰勒展开,只考虑一阶导数,要每次调整参数至邻域范围内最小loss值处。loss值最小,即朝一阶微分的反方向调整。在这里插入图片描述
    其中learning rate和红色圆圈的直径d成正比,泰勒展开忽略其他项的要求是d要足够小
    在这里插入图片描述
  • Grandient Descent问题
    现实中主要的问题是在一阶微分较小的情况下,难以进行参数调整
    在这里插入图片描述
没有更多推荐了,返回首页