机器学习概括

文章目录

  • 一、机器学习是什么?
  • 二、模型训练
    • YouTube流量预测
      • 1. 先写一个具有未知参数的函数(Function)
      • 2. 定义损失(从训练数据进行计算)
      • 3.最优化
      • 4.结果分析
    • Back to framework
      • 1.带有未知数的函数:
      • 2.定义损失(从训练数据进行计算)
      • 3. 最优化
      • 4.[激活函数](https://blog.csdn.net/weixin_39910711/article/details/114849349)
      • 5.继续改我们的模型
  • 三、Neural Network


一、机器学习是什么?

机器学习≈找一个函数
在这里插入图片描述

这个函数不是人能容易的找出来,需要借助机器的力量。
在这里插入图片描述
不同的函数:

  • 回归(Regression):函数输出一个标量。eg.对PM2.5的预测:

对PM2.5的预测

  • 分类(Classification):给定选项(类),函数输出正确的选项。eg1二分类.是否为垃圾邮件:
    是否为垃圾邮件
    eg2多分类.下围棋:
    在这里插入图片描述

二、模型训练

训练:

  • 先写一个具有未知参数的函数(Function)
  • 定义损失(从训练数据进行计算)
  • 最优化

YouTube流量预测

有没有可能找一个函数,输入是这个频道后台的数据,输出隔天的总点阅率?
在这里插入图片描述
机器学习找这个函数分为三个过程,以 YouTube流量预测为例。

1. 先写一个具有未知参数的函数(Function)

先猜测函数的类型
在这里插入图片描述

2. 定义损失(从训练数据进行计算)

损失是一个关于参数的函数
在这里插入图片描述
函数输入的值代表:这一组参数设定某一组数值,这个数值是好还是不好。
在这里插入图片描述
在这里插入图片描述
同样的方法,我们可以算出三年来每一天的预测误差。
在这里插入图片描述
接下来我们把三年的误差求平均。
在这里插入图片描述

L越小参数设置越好,越大越不好。

计算误差有很多方式,根据需求选取。
在这里插入图片描述
如果真实值与预测值是概率分布,可能选择交叉熵损失。

误差曲面:
在这里插入图片描述

3.最优化

找一组参数是的L最小
在这里插入图片描述

为此我们使用梯度下降(gradient decent)

简化过程,一个参数的gradient decent:
在这里插入图片描述
在这里插入图片描述

  • 随机选取初始点 w 0 w_0 w0
  • 计算 ∂ L ∂ w ∣ w = w 0 \frac{\partial L}{\partial w}|_{w=w_0} wLw=w0。(就是看左右哪边高,向低的跨步)
    若求出为负值(左高右低的切线),增大w,loss就变小;若求出为正值(左低右高的切线),减小w,loss就变大。
    步子跨多大,取决于:1.斜率(斜率大就跨大一点),2学习率(自己设定的)
  • 更新迭代w
    在这里插入图片描述
    ∂ L ∂ w ∣ w = w 0 \frac{\partial L}{\partial w}|_{w=w_0} wLw=w0计算为0就不在更新了。

有可能梯度下降会陷入局部最优
在这里插入图片描述

局部最小值真的会导致问题吗?(后面会说gradient decent的真正痛点)

两个参数的gradient decent:
在这里插入图片描述

  • 随机选取初始点 w 0 , b 0 w_0,b_0 w0b0
  • 计算 ∂ L ∂ w ∣ w = w 0 , b = b 0 , ∂ L ∂ b ∣ w = w 0 , b = b 0 \frac{\partial L}{\partial w}|_{w=w_0,b=b_0},\frac{\partial L}{\partial b}|_{w=w_0, b=b_0} wLw=w0b=b0bLw=w0,b=b0。(就是看左右哪边高,向低的跨步)
    若求出为负值(左高右低的切线),增大w,loss就变小;若求出为正值(左低右高的切线),减小w,loss就变大。
    步子跨多大,取决于:1.斜率(斜率大就跨大一点),2学习率(自己设定的)
  • 更新迭代w
    在这里插入图片描述
    在深度学习中,微分应该怎么算? ---- 程序会自己算
    在这里插入图片描述
    在这里插入图片描述

4.结果分析

在这里插入图片描述
能否做的更好?
在这里插入图片描述
从图中看出,7天一个循环。我们分别考虑2017-2020的前1、7、18、56天,对2021年的某一天的影响。我们采用的是Linear Model。

在这里插入图片描述
线性模型太简单了… 我们需要更复杂的模式。
在这里插入图片描述
线性模型具有严重的局限性。模型偏差我们需要一个更灵活的模式!

在这里插入图片描述

所有分段的线性曲线可以可以由常数与一系列蓝色Function组成。

在这里插入图片描述
转折越多,越复杂,需要的蓝色Function就越多。

如果不是分段曲线,而是连续曲线,我们可以使用分段线性曲线去逼近。
在这里插入图片描述
如何表示蓝色的Function呢?
在这里插入图片描述
我们可以使用 y = c 1 1 + e − ( b + w 1 x ) y=c\frac{1}{1+e^{-(b+w_1x)}} y=c1+e(b+w1x)1:
在这里插入图片描述
Sigmoid Function(S型曲线):
y = c ∗ s i g m o i d ( b + w 1 x ) = c 1 1 + e − ( b + w 1 x ) y = c*sigmoid(b+w_1x) = c\frac{1}{1+e^{-(b+w_1x)}} y=csigmoid(b+w1x)=c1+e(b+w1x)1

w改变斜率、b曲线左右移动、c改变他的高度:
在这里插入图片描述
在这里插入图片描述

新的模型:有更多的特征
在这里插入图片描述

我们把它画出来,直观
在这里插入图片描述
x 1 , x 2 , x 3 x_1,x_2,x_3 x1,x2,x3 r 1 , r 2 , r 3 r_1,r_2,r_3 r1,r2,r3的关系我们可以用矩阵表示出来:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


Back to framework

1.带有未知数的函数:

在这里插入图片描述
特征与参数:
在这里插入图片描述

2.定义损失(从训练数据进行计算)

Loss是参数的函数 L ( θ ) L(\theta) L(θ)
Loss意味着一套参数值有多好
在这里插入图片描述

3. 最优化

在这里插入图片描述

  • 随机选取初始点 θ 0 \theta_0 θ0
  • 计算微分

(就是看左右哪边高,向低的跨步)
若求出为负值(左高右低的切线),增大w,loss就变小;若求出为正值(左低右高的切线),减小w,loss就变大。

  • 更新迭代w
    步子跨多大,取决于:1.斜率(斜率大就跨大一点),2学习率(自己设定的)
    在这里插入图片描述
    在这里插入图片描述
    直到你不想做了,或计算出的gradient为零向量。

实际做gradient decent:
N的数据分成多个Batch,计算loss,更新参数。
在这里插入图片描述
在这里插入图片描述
为什么Hard Sigmoid 要换成Soft Sigmoid?
Hard Sigmoid 表示:

在这里插入图片描述
ReLU函数:
在这里插入图片描述
从ReLU到Sigmoid:(2个ReLU合成Sigmoid)
在这里插入图片描述

4.激活函数

在这里插入图片描述
在这里插入图片描述

5.继续改我们的模型

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
机器02/14左右高估了,因为除夕。

三、Neural Network

那这个 Sigmoid 或是 ReLU,它们在机器学习里面叫做 Activation Function 激活函数。 这些Sigmoid 或 ReLU ,它们叫做 Neuron 神经元。我们这边有很多的 Neuron,很多的 Neuron 就叫做 Neural Network。
在这里插入图片描述

每一排neourn叫做hidden layer,许多layer就叫做Deep Learning。

在这里插入图片描述

为什么不做的更深呢?
会过拟合,即在训练资料上变好,在没训练的资料上变差

在这里插入图片描述
预测未知资料
在这里插入图片描述

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

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

相关文章

K8S应用流程安全(镜像安全 配置管理 访问安全)

应用流程安全 1 应用流程安全1.1 镜像安全1.1.1 构建原则1.1.2 Dockerfile实践1.1.3 构建进阶1.1.4 镜像检测1.1.5 仓库升级1.1.6 高可用仓库1.1.7 镜像策略 1.2 配置管理1.2.1 配置基础1.2.2 YAML安全1.2.3 kustomize1.2.4 基础实践1.2.5 功能复用1.2.6 配置定制1.2.7 补丁实践…

当你按下键盘A键

CPU 里面的内存接口,直接和系统总线通信,然后系统总线再接入一个 I/O 桥接器,这个 I/O 桥接器,另一边接入了内存总线,使得 CPU 和内存通信。再另一边,又接入了一个 I/O 总线,用来连接 I/O 设备&…

el-table 动态合并不定项多级表头

我们的需求是根据不同的厂配不同的多级表头,每个表头有需要合并的项,并且不确定 如图所示 对表格进行循环操作,此处不赘述,最下方有全部代码 表头是单独写在js方便后期更改,然后引入js文件,然后根据情况去调取 // 获取表头getHeader(nv) {this.factoryCodes nv;this.heade…

【UE4 C++】根据指定路径生成静态网格体

在上一篇博客中(【UE C】蓝图调用C函数),我们用C创建了一个蓝图函数库,本篇文章在这个蓝图函数库基础上增加一个方法,该方法只需输入一个文件目录路径,就可在场景中生成该目录下得所有静态网格体。&#xf…

第6集丨JavaScript 使用原型(prototype)实现继承——最佳实战3

目录 一、原型继承与属性拷贝1.1 功能说明1.2 功能测试 二、多重继承2.1 功能实现2.2 功能测试 三、寄生式继承四、构造器借用4.1 简单实现4.2 进化版4.2.1 功能实现4.2.2 案例测试 五、借用构造器和原型复制六 综合案例6.1 需求说明6.2 代码实现 一、原型继承与属性拷贝 1.1 功…

css之:is()、:where()和:has()伪元素的运用、使用、important

文章目录 简介1、:is()2、:where()3、:has() 简介 :is()、:where()和:has()伪元素是CSS中用于样式化元素的非常强大的工具。它们是在CSS选择器Level4规范中引入的。它们允许我们将样式应用于符合特定条件的任何元素,例如元素的类型、元素的位置和元素的后代。 1、:i…

【高并发】高并发架构实战:从需求分析到系统设计

Yan-英杰的主页 悟已往之不谏 知来者之可追 C程序员,2024届电子信息研究生 很多软件工程师的职业规划是成为架构师,但是要成为架构师很多时候要求先有架构设计经验,而不做架构师又怎么会有架构设计经验呢?那么要如何获得架构设…

前端渲染模式CSR,SSR,SSG,ISR,DPR

目录 一、客户端渲染——CSR(Client Side Rendering) 二、服务器端渲染——SSR(Server Side Rendering) 三、静态站点生成——SSG(Static Site Generation) 四、增量静态生成——ISR(Increm…

【软件测试】在Windows环境安装Docker(详细步骤)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 下载和安装 1、地…

智慧园区4G+蓝牙+GPS/北斗RTK人员定位系统解决方案

智慧园区是指利用现代科技手段进行精细化管理的园区,人员定位技术被广泛应用在智慧园区。智慧园区人员定位技术通过使用传感器设备,能够实时监测园区内人员的位置和活动情况,从而提高园区的人员管理效率和安全性。 通过人员定位,…

云HIS是什么?HIS系统为什么要上云?云HIS有哪些优点?

一、当前医疗行业HIS的现状与发展趋势 1.医院信息系统(HIS)经历了从手工到单机再到局域网的两个阶段,随着云计算、大数据新技术迅猛发展,基于云计算的医院信息系统将逐步取代传统局域网HIS , 以适应人们对医疗卫生服务越来越高的要…

常用分类损失CE Loss、Focal Loss及GHMC Loss理解与总结

一、CE Loss 定义 交叉熵损失(Cross-Entropy Loss,CE Loss)能够衡量同一个随机变量中的两个不同概率分布的差异程度,当两个概率分布越接近时,交叉熵损失越小,表示模型预测结果越准确。 公式 二分类 二…

深入理解预训练(pre-learning)、微调(fine-tuning)、迁移学习(transfer learning)三者的联系与区别

1. 什么是预训练和微调 你需要搭建一个网络模型来完成一个特定的图像分类的任务。首先,你需要随机初始化参数,然后开始训练网络,不断调整参数,直到网络的损失越来越小。在训练的过程中,一开始初始化的参数会不断变化。…

小程序:页面跳转闪屏

自己的笔记,随手记录。扛精走开。 1、问题描述 进入页面,是一个组件,通过路由传参判断是由哪个页面进入,不同的页面拿的已选值不一样,需要回显值,在编辑数据。此时会出现一个问题,A页面中进来…

Serverless和EDA是绝配,亚马逊云科技CTO Werner表示需要用开放心态来重新审视架构

前一段有个很火的博客,讲的是一家全球流媒体企业的监测系统从Serverless微服务改成了单体,成本居然降低了90%!这一下子可在网上炸锅了,特别是一些看不惯微服务的、单体应用的拥趸,更是坐不住了。但这并不像吃瓜群众看到…

【ECharts系列】ECharts 图表渲染问题解决方案

1 问题描述 echats 渲染,第一次的时候只出现Y轴数值,不出现X轴数值,切换下页面,X轴数值就能出现。 2 原因分析 如果在使用ECharts渲染时,X轴数值只在切换页面后才出现,可能是因为ECharts在初始化时没有正确…

光速吟唱,Clibor ,批量多次复制依次粘贴工具 快捷输入软件教程

批量多次复制依次粘贴工具 批量复制粘贴工具0.81.exe https://www.aliyundrive.com/s/3sbBaGmHkb8 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。 青县solidworks钣金设计培训 …

Redis进阶 - Redis哨兵

原文首更地址,阅读效果更佳! Redis进阶 - Redis哨兵 | CoderMast编程桅杆https://www.codermast.com/database/redis/redis-advance-sentinel.html 思考 slave 节点宕机恢复以后可以找 master 节点同步数据,那么 master 节点宕机怎么办&am…

[Docker] Docker镜像管理和操作实践(二) 文末送书

前言: Docker镜像是容器化应用程序的打包和分发单元,包含了应用程序及其所有依赖项,实现了应用程序的可移植性和一致性。 文章目录 使用Dockerfile创建自定义镜像实践练手1. 创建基于ubuntu的自定义镜像,并安装nginx2. 配置Redis容…

MySQL数据库高级查询语句

MySQL数据库高级查询语句 一、语句SELECT ----显示表格中一个或数个字段的所有数据记录DISTINCT ----不显示重复的数据记录WHERE ----有条件查询AND OR ----且 或IN ----显示已知的值的数据记录BETWEEN ----显示两个值范围内的数据记录通配符 ----通常通配符都是跟 LIKE 一起使…