机器学习_捕捉函数的变化趋势(凸函数)

文章目录

  • 连续性是求导的前提条件
  • 通过求导发现 y 如何随 x 而变
  • 凸函数有一个全局最低点


机器学习所关心的问题之一捕捉函数的变化趋势,也就是标签(y)是如何随着特征字段(x)而变化的,这个变化趋势是通过求导和微分来实现的。

连续性是求导的前提条件

具有连续性的函数,y值随x值的变化是连贯不间断的。
并不是所有函数都具有连续性,像上面提到的阶跃函数从-1到1的跃迁明显就不具有连续性。

通过求导发现 y 如何随 x 而变

导数是定义在连续函数的基础之上的。想要对函数求导,函数至少要有一段是连续的。

当A点和B点的距离越来越小,两个点无限接近,逼近极限的时候,在即将重合而又未重合的一刹那,割线就变成切线了,如下图所示:
请添加图片描述

而此时,对切点求导所得的值,就是切线的斜率。

  • 当斜率为正的时候,说明函数目前变化趋势是在上升。
  • 当斜率为负的时候,说明函数目前变化趋势是在下降。
  • 当斜率为0的时候,说明函数正处于全局或者局部的最低点,趋势即将发生改变。

总结:函数变化的趋势至少由两个点体现,即当A趋近于B的时候,求其变换的极限,这就是导数。导数的值和它附近的一小段连续函数有关。如果没有那么一段连续的函数,就无法计算其切线的斜率,函数在该点也就是不可导的。

通过求导,实现了以直代曲,也发现了y值随x值而变化的方向。引申到机器学习领域,通过导数就可以得到标签y随特征x而变化的方向。

导数是针对一个变量而言的变化趋向。而对于多元(即多变量)的函数,他关于其中一个变量的导数为偏导数,此时保持其他变量恒定。如果其中所有变量都允许变化,则成为全导数。

凸函数有一个全局最低点

凸函数的定义比较抽象,这里指通过函数徒刑从直观上去理解。首先,函数形状必须是连续的,而不是断续的。其次,函数平滑,只存在一个最低点,整个函数呈现碗状。而非凸函数,困难呈现各种形状,有很多个底部(机器学习里面叫作局部最低点)。下图所示的函数f1就是一个凸函数,而函数f2就不是一个凸函数。
在这里插入图片描述

图说:凸函数的小球不管初始化位置放在哪里,都可以沿着导数给出的方向滚到最低点;而非凸函数中,小球就可能卡在半路,也就是局部最低点。在机器学习中,无法到达全局最低点是很不理想的。

在连续函数图像上的局部或者全局最低点对函数求导,导数值都为0。

正是因为只有凸函数能够确保降到全局最低点,所以用在机器学习的梯度下降过程中。


学习机器学习的参考资料:
(1)书籍
利用Python进行数据分析
西瓜书
百面机器学习
机器学习实战
阿里云天池大赛赛题解析(机器学习篇)
白话机器学习中的数学
零基础学机器学习
图解机器学习算法

(2)机构
光环大数据
开课吧
极客时间
七月在线
深度之眼
贪心学院
拉勾教育
博学谷

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

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

相关文章

代码随想录day30 回溯算法最终章

51. N皇后 题目 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。 每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 Q 和…

想做好项目,网工必看!

上午好,我是老杨。 做项目,贯穿一个网络工程师职业生涯的始终。不管是大项目还是小项目,做久了项目,都会形成一种自己的方法论。 项目要划分,无非就是新网组建,旧网优化,以及网络排障三大类。…

ISO11898-闭环高速CAN网络 (125K~1Mbps)

ISO11898 标准的物理框图如下图 可理解为一个高速闭环 CAN 总线网络;CAN 闭环总线网络允许总线最大长度为 40m;最高速度为 1Mbps;可以看到总线的两端各有一个 120Ω 的电阻,此电阻作为阻抗匹配功能,以减少回波反射;节点就是不同的设备&#…

Pytorch基础知识点复习

文章目录 并行计算单卡训练多卡训练单机多卡DP多机多卡DDPDP 与 DDP 的优缺点 PyTorch的主要组成模块Pytorch的主要组成模块包括那些呢?Dataset和DataLoader的作用是什么,我们如何构建自己的Dataset和DataLoader?神经网络的一般构造方法&…

k8s的策略

集群调度: Scheduler的调度算法: 预算策略 过滤出合适的节点 优先策略 选择部署的节点 NodeName:硬策略,不走调度策略,node1 nodeSelector:根据节点的标签选择,会走一个调度算法 只要是…

系统性学习vue-vue核心

做了三年前端,但很多系统性的知识没有学习 还是从头系统学习一遍吧 课程是b站的Vue2.0Vue3.0课程 后续还会学习的如下,就重新开一篇了,不然太长,之后放链接 vue组件化编程 vue-cli 脚手架 vue中的ajax vue-router vuex element-ui vue3 老师推荐的vscode针对vue的插件: Vue 3…

机器学习~从入门到精通(二)线性回归算法和多元线性回归

为什么要做数据归一化 一、数据归一化: 1.最值归一化 2.均值方差归一化import numpy as npX np.random.randint(1,100,size100) X X.reshape(-1,2) X.shape X np.array(X,dtypefloat) X[:,0] (X[:,0]-np.min(X[:,0]))/(np.max(X[:,0])-np.min(X[:,0])) X[:,1]…

Postgres 中文周报:Postgres Weekly 537 期

本周报由 Cloudberry Database 社区编译自英文版《Postgres Weekly》,译文较原文有所调整。 推荐博文 🏆 PostgreSQL: The DBMS of the Year 2023 PostgreSQL 荣获 DB-Engines 网站 2023 年度 DBMS 冠军。DB-Engines 收集了 480 款数据库系统信息并跟踪…

机器学习笔记 - 基于OpenCV+稀疏光流的无监督运动检测

一、简述 在各种高级开源库的帮助下,检测固定摄像机拍摄的运动行为是轻而易举可以实现的,但检测移动的摄像机拍摄的移动物体的运动检测依然是一个复杂的问题。在这里,我们将继续基于稀疏光流,并检测移动的无人机相机的运动。 这里…

设计模式-传输对象模式

设计模式专栏 模式介绍模式特点应用场景传输对象模式和序列化的区别代码示例Java实现传输对象模式Python实现传输对象模式 传输对象模式在spring中的应用 模式介绍 传输对象模式(Transfer Object Pattern)是一种设计模式,用于从客户端向服务…

MT8766安卓核心板/开发板_MTK联发科4G安卓手机主板方案定制开发

MT8766采用台积电 12 nm FinFET 制程工艺,4*A53架构,Android 9.0操作系统,搭载2.0GHz 的 Arm NEON 引擎。提供了支持最新 OpenOS 及其要求苛刻的应用程序所需的处理能力,专为具有全球蜂窝连接的高移动性和功能强大的平板设备而设计…

MySQL进阶篇(五) 锁

一、概述 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问…

深入浅出Android dmabuf_dump工具

目录 dmabuf是什么? dmabuf_dump工具介绍(基于Android 14) Android.bp dmabuf_dump.cpp 整体架构结构如下 dmabuf_dump主要包含以下功能 前置背景知识 fdinfo 思考 bufinfo Dump整个手机系统的dmabuf Dump某个进程的dmabuf​​​​​​​ 以Table[buff…

【JVM 基础】类字节码详解

JVM 基础 - 类字节码详解 多语言编译为字节码在JVM运行Java字节码文件Class文件的结构属性从一个例子开始反编译字节码文件字节码文件信息常量池方法表集合类名 再看两个示例分析try-catch-finallykotlin 函数扩展的实现 源代码通过编译器编译为字节码,再通过类加载…

文件指针 FILE结构体

C语言中的文件指针是指向FILE类型结构体的指针。(也就是说 文件指针的类型就是FILE类型) 在C语言中,使用文件指针来操作文件。FILE类型是一个结构体类型,它包含了与文件相关的信息,例如文件位置指示器、文件读写状态等。通过文件指针&#x…

【MySQL】多表查询

文章目录 多表查询是什么?一、笛卡尔积(或交叉连接)二、多表查询分类分类1:等值连接 vs 非等值连接等值连接非等值连接 分类2:自连接 vs 非自连接分类2:内连接 vs 外连接 三、SQL99SQL99 实现 内连接SQL99 …

深度解析Pytest插件pytest-html

在软件开发中,测试报告是开发者获取测试结果和问题定位的关键工具之一。然而,标准的控制台输出有时难以满足我们对测试报告的需求。幸运的是,Pytest插件 pytest-html 提供了一种简单而强大的方式,可以生成漂亮、可视化的HTML格式测…

1992年-2020年ESA_CCI土地覆盖数据介绍、下载与数据分享

数据介绍 ESA CCI Land Cover是欧洲空间局(European Space Agency,ESA)的一个项目,其目标是生成全球土地覆盖的高质量、一致性和长期的时间序列数据,分辨率大约为300米。 该项目是ESA气候变化计划(Climate…

AI大模型学习笔记二

文章目录 一、Prompt Engineering1)环境准备 二、LangChain(一个框架名字)三、Fine-tuning(微调) 一、Prompt Engineering 1)环境准备 ①安装OpenAI库 pip install --upgrade openai附加 安装来源 pyth…

阶段十-分布式锁

5.1 节 为什么要使用分布式锁 锁是多线程代码中的概念,只有当多任务访问同一个互斥的共享资源时才需要。如下图: 在我们进行单机应用开发,涉及并发同步的时候,我们往往采用synchronized或者lock的方式来解决多线程间的代码同步问…