李宏毅机器学习(一)

仔细算算,自己学习深度学习也有一段时间了,陆陆续续做了一些项目,但是从去年开始入门到现在,总感觉底层的很多知识原理非常模糊。
最开始接触AI,是因为项目需要,当时时间紧迫来不及从机器学习一步一步开始,就直接从深度学习开始了。
初次接触的是吴恩达老师的深度学习,当时觉得对神经网络的理解还算可以,现在想想还是略微草率。所以最近重新开始学习机器学习,在看了李宏毅老师的机器学习之后,深感佩服,老师的切入点和突破口总是独树一帜,也因此我在很多地方茅塞顿开,对于底层的很多地方有所见解,所以准备将上课记录的笔记发出来做成一个系列博客,供自己以后回头学习,也供各位同学学习交流。如果我有理解或解释错误的地方,欢迎各位同学指正。
这是我看的视频版本: 李宏毅机器学习.


前言

由于第一小节机器学习基本概念较为浅显易懂,我们在这不再赘述,不过有一些机器学习深度学习共同的概念比如Loss Function之类的概念,在第二小节的笔记中也有描述。所以我们直接从第二小节深度学习基本概念简介开始。

一、深度学习定义概念

引用李开复老师的一个定义:深度学习大致就是这么一个用人类的数学知识与计算机算法构建起整体架构,再结合尽可能多的训练数据与计算机的大规模运算能力去调节内部参数,尽可能逼近问题目标的半理论、半经验的建模方式。

二、课堂笔记

1.深度学习本质

在我的理解,深度学习和机器学习都在寻找一个合适的“函数”去贴合数据,为此我们可能会用到线性函数,非线性函数或更为复杂的函数去贴合数据。当数据易于描述时,我们可能用一个简单的线性函数就可以描绘其变化,但是很多时候,数据都是难以描绘的,这时我们就会叠加一些已知的函数去“创造”出一个新的复杂的函数。

2.参数不同对函式的影响(以Sigmoid Function为例)

以Sigmoid Function为例,当c,b,w数值不同时函式会发生不同的变化,而不同的函式会拟合出不同的效果。请添加图片描述

3.函式的叠加以创造一个复杂函式

当我们通过不断的改变参数获得不同的函式后,我们就可以叠加多个函式来获得一个较为复杂的函式来逼近我们所描述的问题了。首先我们以,前一天的数据来预测,那我们假设需要三个叠加函式,那我们就可以得到一个全新的函式。
在这里插入图片描述
但是由于我们初始时仅考虑前一天的数据去预测的效果是不够准确的,所以我们需要使用前j天的数据来构造函式,首先是简单函式,这个函式里面每一天都有一个独有的参数(我们可以理解为由多个函式叠加为一个函式,这里的叠加函式我们可以理解为有多条子函式)
在这里插入图片描述

然后我们写出叠加函式(此处的叠加函式是多段函式,可以理解为j条不同的函式每一条都是由多段函式叠加而成,是为了更好的去逼近真实情况,这样我们就可以理解为什么会有i和j了)。如果函式看不懂,就看下面(简单的神经网络其中一层)的图解(包括Wij的解释)。
在这里插入图片描述

请添加图片描述

4.简单的神经网络其中一层

i是用于合成一个激活函式的Sigmoid function的段数,比如此处的激活函式是由三段Sigmoid function合成。另外,其中每段Sigmoid function有j个输入,此处也就是旁边的x1,x2,x3(相当于我们的激活函式由i段函式组成,每一段函式内部都有j条不同的子函式,我们便可以理解为什么会有Wij)。
其实我们获得的这个函式就是一个简单的神经网络的其中一层,a既是激活函式也是隐藏层。我们通过不同的参数对输入里面的数据进行不同的改变。
请添加图片描述
在这里插入图片描述

5.损失函数

请添加图片描述

6.参数更新

所谓参数的更新就是为了通过不断的改变参数,获得一个最佳的函式来逼近真实值,来不断降低Loss的值,也就是深度学习的本质·。
gradient是θ对L的微分的原因在于,我们求最佳参数的时候,是求loss最小的时候,Loss function是真实值与预测值的差距,而预测值由θ控制得出,也就是变量θ1,θ2等等,因此是θ对L的微分乘以学习率。
请添加图片描述
但是我们在进行参数更新时,往往需要更新很多次,数据量也比较大,因此我们将其分为很多个batch。

请添加图片描述

7.不同激活函式的选择(以ReLU Function为例)

刚才我们讲过Sigmoid Function又作为激活函式,我们在选择函式时往往不只是局限于Sigmoid Function ,在现在函式的选择上,我们往往还有ReLU Function,Tanh Function等等函式的选择,而我们的Sigmoid Function可以由两个ReLU函式叠加而成。
请添加图片描述

请添加图片描述

8.多层神经网络的构建

我们发现,当我们使用单层函数去拟合这个过程时,我们的效果还是不尽人意的,这时我们可能就需要用多层来实现了,用第一层输出的数据输入到下一层中继续拟合,以获得更加贴近真实值的函式,便出现了多层神经网络,即deep learning。
请添加图片描述

总结

以上就是我整理的李宏毅老师第一大节第一小节课深度学习基本概念简介的内容了。大家共勉。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值