李宏毅机器学习(一)基本概念介绍

学习内容

这是第二次看机器学习的内容,所以这里主要记录的是让我印象深刻的知识点;
但是有两个问题:

  • deep? 为什么不是越深越好?
  • fat? 为什么要套娃,我们只需要将多个sigmoid并排不就好了吗? 因为我需要的就是y = constant + sum(蓝线)

深度学习的类别

输入可以是当前的特征; 各种条件;

  • 回归: 函数输出一个标量
  • 分类:给出一堆类别,函数需要根据某个物体的所有特征输出它属于的一个标签;
    比如垃圾邮件; 阿尔法go
  • Structured learning: 学会创造某些东西(image、document)

1. Function with Unknown Parameters

后面我们会以这个例子作为示例;
比如某个频道的Youtube流量; 而该流量是由前面所有的流量决定的;

Function = Model
feature = 表示我们已经知道的东西(在这里指的是前面有的每天的观看人数);
weight = w

2. Define Loss from Training Data

就是我们给出参数后,查看这些参数的效果是不是好!
也就是看真实值和估值的差距;

3.Optimization

问题1: 为什么学习率在训练的时候要调整?

  • 因为刚开始时一般远离最优点,所以刚开始的时候我们要选择较大的学习率,后面再调整学习率,所以会有随着epoch值改变的动态学习率;

问题2:为什么loss有些时候是负的?

  • 因为你斜率一定的时候,跨度大了,必然会有负的;

问题3: 学习率是啥?
就是梯度前面的东西;

问题4: 两个参数怎么更新呢?

梯度是可以帮助你自动计算的;

问题5: sigmoid为什么是三个?
一般而言,sigmoid的个数越多,那么效果就会越好;
一个sigmoid表示的就是一个蓝色折线,那么多个sigmoid就会使得无限接近于原来的数值(beyond precise function),也就会出现过拟合!

问题6:为什么是sigmoid,不能是hard sigmoid?
当然可以,只要你能写出来!

问题7:hyperparameter有哪些?
学习率(步长么)、几个sigmoid、batchsize也是;

改进函数第一次(线性化)

函数的改进都源于你对这个问题的理解;
比如我们要预测观看学习视频的人数,我们可以把它想想为一个线性回归问题,类似于y = b + kx;
其中x表示前一天的观看人数,而y表示的隔天的观看人数,b是偏差(这里x不是天数,星期一、星期二等);
但是呢,某一天的观看人数不能仅仅是通过前一天来决定,每一天的权重应该是不一样的,周一到周五权重应该会更大,而周六和周天权重会降低,所以我们做出第一次改进,ki,i=1…7;但是我们可能认为7不够,应该是一个月,那么i = 1…31;

这里,我们的x特征就是七天的观测量,最终得到隔天的观测人数。
这是得到的特征的权重。 ### Linear Curves 简单的y = b + kx是解决不了问题的; #### 1. Piecewise Linear Curve
我们要表示红色的直线,那么很显然使用简单的直线的是不行的,那么我们可以使用① + ② + ③得到红色的曲线; #### 2. Beyond Piecewise Linear? 那么问题来了,如何表示曲线呢? 曲线就是直线的无限接近,所以我们可以无限将曲线划分即可;

3. sigmoid的由来与应用

sigmoid就是一个可以表示各个函数的框架!

3.1 sigmoid的由来

我们通过c、b和w来定义出这个曲线,从而模拟蓝色的function;
我们可以将e取消,那么就是

而上面的蓝色function就是hard sigmoid!
我们可以通过改变w、b和c来获得不同的曲线。
3.2 sigmoid的应用

前面已经知道了sigmoid可以代表各个直线或者是曲线,只需要改变中间的w和b即可,所以我们怎么表示我们的模型呢? 那么就是将上面的〇 + ①、②和③用sigmoid来替代;

总结: sigmoid就是一个可以表示各个函数的框架!上图中$c_{i}$、$b_{i}$、$w_{i}$是选择性的,它们的不同可以构造不同的蓝色的function,那么不同的function叠加起来就可以制造出不同的红色的curves,就可以制造出不同piecewise linear,各种continuous 的function;

改进函数第二次(神经网络)

由于我们上面已经得到了多个特征表示,每天一个特征表示(也就是观看的人数),所以放入sigmoid中,那么就会得到上图下面的式子;
特别注意的是,这里的WijW_{ij}Wij是wi和wj的结合体,内外参数也就是其实是两个参数,所以才会有Wij。

全连接网络BP

这里我们去j: 1,2,3; i:1,2,3; 也就是取前三天、并且设立三个sigmoid(三个函数);
这里的W1jW_{1j}W1j表示的是第一个sigmoid函数里面的三个特征值的权重值;

计算r向量

计算a向量

y = constant + sum(蓝线)

参数更新

参数: 注意这里两个b是不一样的,里面的b是一个向量,外面的b是一个值;
我们将所有的参数都列出来concat为一个向量θ\thetaθ

Loss: 就是预测值和gt的误差;

优化器: 和前面的一样,都是学习率 * 梯度来更新参数;
参数的初始化是不一样的! 我们初始化得到θ0\theta^{0}θ0,而下标表示的是第几个参数。
其中倒三角的意思是梯度向量。

4. Update(SGD(小批量梯度下降))

Update 和 Epoch是不一样的!
原数据库为N, 每个Batch有batch_size的大小,我们的参数的Update是在经历每次batch后进行更新的。而所有的batch都进行了一次了就可以称为是一个epoch,所以在一个epoch中有多次Update,共N/batch_size次参数更新;

激活函数

激活函数 = 函数框架
它可以有很多种替代,其中sigmoid只是其中之一; 比如下面的ReLU;

ReLU: 如果 0 > (b + wx1)那么,就输出0;
两个ReLU相加就是一个hard sigmoid!

改进模型第三次(多个激活函数)

一般而言,sigmoid的个数越多,那么效果就会越好;
一个sigmoid表示的就是一个蓝色折线,那么多个sigmoid就会使得无限接近于原来的数值(beyond precise function),也就会出现过拟合!

改进模型第四次(多个layer)套娃

如上图所示,我们将上一个激活函数后的a当作特征再次放入到下一个激活函数(增加了新的参数),那么就叫做加layer

深度学习(deep = hidden layer)

激活函数就是neural network! 但是我们将它命名为layer! deep = hidden layer,就是深度学习!

所以才会有层数越来越多!网络也越来越深! AlexNet、GoogleNet、Residual Network、Taipei等等;
但是深度不是越深越好,不仅会出现过拟合,也会出现效果越来越差的情况。

但是有两个问题:
为什么不是越深越好?
为什么要套娃,我们只需要将多个sigmoid并排不就好了吗?

overfitting

在训练集上更好,但是在测试集上效果反而差了,这就叫做过拟合!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/476305.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

灰色关联分析_灰色关联分析模型研究综述

灰色关联分析模型研究小结1 引言灰色关联分析是灰色系统理论中十分活跃的一个分支, 其基本思想是根据序列曲线几何形状来判断不同序列之间的联系是否紧密. 基本思路是通过线性插值的方法将系统因素的离散行为观测值转化为分段连续的折线, 进而根据折线的几何特征构造测度关联程…

LeetCode 622. 设计循环队列

1. 题目 设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。 它也被称为“环形缓冲器”。 循环队列的一个好处是我们可以利用这个队列之前用过的空间。 在一个…

solidworks模板_工程师实用高级操作,Solidworks自定义属性链接到工程图模板

下面,我以一个非常简单的零件为例,为大家介绍如何在工程图中链接这些属性。来达到减少工作量节省工作时间的目的。1.这是1个简单的零件,零件的自定义零件属性都已经填写完成。2.制作该零件的工程图文件,这里我以SolidWorks中默认的…

简单的脚本控制面试题

版面上有一个button,一个div,单击button,div中显示当前日期 答案: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns"http://www.w3.org/1999/xht…

知识图谱入门知识(二)事件抽取(EE)详细介绍

学习内容 本文主要详细介绍事件抽取EE的概念&#xff1b; 装载自&#xff1a;李景鹏 啥是事件抽取(Event Extraction)&#xff1f; 同时这里关于事件抽取的介绍也可以作为补充&#xff1a; 分层网络用于事件参数抽取 事件抽取 事件提取&#xff08;Event Extraction EE&…

post和get传值

//post传值send.aspx: if (e.CommandName "ChaXun") { LinkButton Lik(LinkButton)e.Item.FindControl("LinkButton1"); Context.Items["username"] Lik.CommandArgument.ToString(); Server.Transfer…

交通流元胞自动机模拟仿真 matlab源码_元胞自动机中的时间反演

1.引言——生命游戏1970年&#xff0c;英国数学家约翰何顿康威提出了生命游戏&#xff08;Life Game&#xff09;。生命游戏本质是一个元胞自动机模型&#xff0c;每个元胞可以看作是一个细胞&#xff0c;细胞的产生、繁衍和死亡拥有3条演化规则。1&#xff0e; 如果一个细胞周…

李宏毅机器学习(二)自注意力机制

学习内容 本文以NLP为基础来介绍自注意力机制&#xff0c;而没有用图像为基础&#xff0c;但是其实两者都是相同的。 在图像中我们可以将图像切块&#xff08;块的划分是自定义的&#xff09;&#xff0c;然后计算块与块之间的关系&#xff1b; 这里介绍了self-attention 的由…

LeetCode 643. 子数组最大平均数 I

1. 题目 给定 n 个整数&#xff0c;找出平均数最大且长度为 k 的连续子数组&#xff0c;并输出该最大平均数。 示例 1: 输入: [1,12,-5,-6,50,3], k 4 输出: 12.75 解释: 最大平均数 (12-5-650)/4 51/4 12.75注意: 1 < k < n < 30,000。 所给数据范围 [-10,000&a…

技术交流论坛_研发部第四次技术交流论坛

炎热的七月&#xff0c;由研发部举办的第四次技术交流论坛顺利召开&#xff0c;这是知识的激烈碰撞&#xff0c;也是一次头脑风暴。出席本次交流活动的有柯明宏副总、郑正部长、权大有副部长、向民龙副部长等公司管理层领导和公司骨干成员。首先由柯明宏副总、郑正部长给这一次…

LeetCode 661. 图片平滑器

1. 题目 包含整数的二维矩阵 M 表示一个图片的灰度。 你需要设计一个平滑器来让每一个单元的灰度成为平均灰度 (向下舍入) &#xff0c; 平均灰度的计算是周围的8个单元和它本身的值求平均&#xff0c;如果周围的单元格不足八个&#xff0c;则尽可能多的利用它们。 示例 1: 输…

论文阅读笔记(三)【ACL 2021】Locate and Label: A Two-stage Identifier for Nested Named Entity

论文标题&#xff1a; Locate and Label: A Two-stage Identifier for Nested Named Entity Recognition 论文链接&#xff1a; https://arxiv.org/abs/2105.06804 代码链接&#xff1a; https://github.com/tricktreat/locate-and-label 摘要 &#xff08;1&#xff09;过…

WDK中出现的特殊代码

WDK中出现的特殊代码 我们用本章的最后一个小节来介绍一些在WDK示例代码中见到的特殊形式编码。这些代码在Win32应用程序的编程中很少见到&#xff0c;读者需要首先熟悉一下。 首先是参数说明宏。参数说明宏一般都是空宏&#xff0c;最常见的是IN和OUT。其实定义很简单&…

局域网lan设置_4G工业路由器的WAN、LAN组网方式

4G工业路由器组网通常是通过WAN口、LAN口来实现&#xff0c;计讯带大家详细了解关于4G工业路由器WAN、LAN组网方式。1、WAN口加4G组网方式该组网方式同时拥有两个可以连接到广域网的接口(以太网口的WAN口和M2M网络的4G口)&#xff0c;两路通道形成互补及备份&#xff0c;同时接…

LeetCode 894. 所有可能的满二叉树(递归)

1. 题目 满二叉树是一类二叉树&#xff0c;其中每个结点恰好有 0 或 2 个子结点。 返回包含 N &#xff08;1 < N < 20&#xff09;个结点的所有可能满二叉树的列表。 答案的每个元素都是一个可能树的根结点。 答案中每个树的每个结点都必须有 node.val0。 你可以按任…

论文阅读笔记(四)【ACL 2021】FEW-NERD: A Few-shot Named Entity Recognition Dataset

摘要 过去的难点&#xff1a; 过去的都是粗粒度的&#xff1b; Few-NERD&#xff1a; 一个大规模的人类注释的小样本NERD数据集&#xff0c;它具有8种粗粒度和66种细粒度实体类型的层次结构。Few-NERD由来自维基百科的188238个句子组成&#xff0c;包含4601160个单词&#xff…

Exchange2003启用web页面登陆(表单型身份验证)

一、 owa中启用表单验证 在Exchange server 2003中配置OWA启用基于表单的身份验证(忽略SSL): o 在服务器&#xff0d;协议&#xff0d;HTTP&#xff0d;HTTP虚拟服务器右键&#xff0d;勾选"启用基于表单的身份验证"&#xff0c;出现提示要求SSL&a…

LeetCode 241. 为运算表达式设计优先级(动态规划)

1. 解题 给定一个含有数字和运算符的字符串&#xff0c;为表达式添加括号&#xff0c;改变其运算优先级以求出不同的结果。 你需要给出所有可能的组合的结果。有效的运算符号包含 , - 以及 * 。 示例 1: 输入: "2-1-1" 输出: [0, 2] 解释: ((2-1)-1) 0 (2-(1-1)…

python具体应用过程_python公开课|Python for循环的具体应用就是python流程控制的核心,想学会就来看看...

【摘要】在这个科学技术高速发展的时代&#xff0c;越来越多的人都开始选择学习编程软件&#xff0c;那么首先被大家选择的编程软件就是python&#xff0c;也用在各行各业之中&#xff0c;并被大家所熟知&#xff0c;所以也有越来越多的python学习者关注python问题&#xff0c;…

知识图谱入门知识(三)词性标注

学习内容 基本大多数的问题都可以转为词性标注问题&#xff01; 这里只做记录&#xff0c;都是别人的回答&#xff01; 常用的概念 什么是token tokenization就是通常所说的分词&#xff0c;分出的每一个词语我们把它称为token。 链接 词性标注参考一 自然语言处理之序列标…