一部分优化算法

news2024/9/25 21:24:25

一、优化问题

1、优化目标

(1)优化和深度学习的目标是根本不同的。前者主要关注的是最小化目标,后者则关注在给定有限数据量的情况下寻找合适的模型。

(2)优化算法的目标函数通常是基于训练数据集的损失函数,因此优化的目标是减少训练误差;深度学习(或更广义地说,统计推断)的目标是减少泛化误差,因此除了使用优化算法来减少训练误差之外,我们还需要注意过拟合。

(3)f(x)就是我们代码中的loss()函数,我们想要最小化损失。

(4)目标函数,是不管输入时什么矩阵,都处理为一个向量

(5)限制集合:给C的取值设置条件,比如说令权重方差为1均值为0的限制

2、局部最小与全局最小

(1)x处对应的f(x)值小于在x附近任意其他点的f(x)值,那么f(x)可能是局部最小值。如果f(x)在x处的值是整个域中目标函数的最小值,那么f(x)是全局最小值。

(2)数学公式

(3)使用迭代优化算法求解,一般只能得到局部最小值:深度学习模型的目标函数通常有许多局部最优解。当优化问题的数值解接近局部最优值时,随着目标函数解的梯度接近或变为零,通过最终迭代获得的数值解可能仅使目标函数局部最优,而不是全局最优。

(4)只有一定程度的噪声可能会使参数跳出局部最小值(是小批量随机梯度下降的有利特性之一,小批量上梯度的自然变化能够将参数从局部极小值中跳出)。

3、总结

(1)最小化训练误差并不能保证我们找到最佳的参数集来最小化泛化误差。

(2)优化问题可能有许多局部最小值。

二、凸性

1、凸集

(1)数学公式

(2)集合

2、凸函数

(1)数学公式

(2)在x!=f(x)时成立,为严格凸函数

(3)凸优化问题

(4)深度学习中的凸和非凸:学习的模型基本上都是非凸的,因为凸的(比如线性)很简单,那么信息就不多,非凸更接近实际生活中的例子。

二、梯度下降

1、梯度下降

(1)学习率的大小很重要:学习率太大会使模型发散,学习率太小会没有进展。

(2)梯度下降会可能陷入局部极小值,而得不到全局最小值。

(3)在高维模型中,调整学习率是很复杂的。

(4)预处理方法适当有助于调节比例。

2、随机梯度下降

(1)在样本中随机选择一个,虽然没有计算每一个梯度求平均平滑,但是总体趋势是差不多的

(2)对于凸问题,在广泛的学习率选择,随机梯度下降将收敛到最优解。

(3)当训练数据集中有更多样本时,计算梯度下降的每次迭代的代价更高,因此在这些情况下,首选随机梯度下降。

3、小批量随机梯度下降

(1)将计算机并行考虑进去。

(2)但是需要考虑合适的小批量,批量很小的时候,收敛快但计算慢,批量大的时候,计算代价很大。

(3)小批量随机梯度下降比随机梯度下降和梯度下降的速度快,收敛风险较小。

(4)在训练期间降低学习率有助于训练,前期学习率大一些,后期学习率调小。

(5)小批量随机梯度下降兼顾了计算和统计效率。

(6)在小批量随机梯度下降中,我们处理通过训练数据的随机排列获得的批量数据(即每个观测值只处理一次,但按随机顺序)。

三、冲量法

1、动量法用过去梯度的平均值来替换梯度,这大大加快了收敛速度。

2、动量法可以防止在随机梯度下降的优化过程停滞的问题。

3、由于对过去的数据进行了指数降权,有效梯度数为1/1−β。

4、动量法的实现非常简单,但它需要我们存储额外的状态向量(动量v)。

四、Adam

1、t比较大的时候

2、在t小的时候进行修正

3、g_t'

五、总结

1、深度学习模型大多是非凸

2、小批量随机梯度下降是最常用的优化算法

3、冲量对梯度会更加平滑

4、Adam对梯度做平滑,并且对梯度各个维度值都做重新调整

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

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

相关文章

springboot 定义类导入爆红,@Autowried自动注入失败

springboot 定义类导入爆红,Autowried自动注入失败 根据提供的异常信息,分析如下: 异常起因:UnsatisfiedDependencyException 表示在创建名为 ‘a1001Service’ 的 bean 时存在依赖问题,具体是在字段 ‘a1001Mapper’ …

算法日记day 32(贪心之划分字母区间|合并区间|单调递增的数字|监控二叉树)

一、划分字母区间 题目: 给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。 注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s 。 返回一个表示每…

nginx 405错误是什么意思

405错误:方法不被允许 当Web服务器收到一个它不支持的HTTP请求方法时,就会返回405错误。 原因 405错误通常是由于客户端发出了不兼容或不支持的HTTP请求方法。例如,客户端可能请求一个只能通过GET方法访问的资源,但使用了POST方…

C代码做底层及Matlab_SimuLink做应用层设计单片机程序

前言:SimuLink工具极其强大,但是能直接支持单片机自主开发的很少,造成这个问题的原因主要是我们使用的芯片底层多是C代码工程,芯片厂家也只提供C代码库,很少能提供SimuLink的支持库,即使提供也不是很不完善,如NXP的一些芯片提供的SimuLink库不含盖高级应用,再比如意法半…

视创云展:轻松构建出独一无二的元宇宙空间

视创云展作为一款前沿的元宇宙数字营销平台,集成了多项核心技术,旨在为用户提供低门槛、高效能的元宇宙体验与创作工具。其核心技术主要包括: 1、低门槛、模块化,3D场景创作工具 视创云展集成了海量的元宇宙场景模板,…

SpringBoot中如何自定义自己的过滤器Filter(简易版)

本文不再说SpringMVC中的写法,毕竟现在项目都是SpringBoot,我们还是尽量使用SpringBoot的写法,首先了解一下Filter。 说白了,就是在请求到达服务器之前进行拦截,一般使用场景是拦截登录进行权限校验,当然一…

跟李沐学AI:GoogLeNet含并行连结的网络

Inception块 GoogleNet中的基本卷积块,从4个路径从不同层面抽取信息,然后再输出通道维合并。 数据输入后共有四条路径:第一个路径为1x1的卷积层;第二个路径先用1x1的卷积层修改通道数,在输入到3x3的卷积层&#xff0c…

腾讯云AI代码助手助力软件开发体验分享

引言 现在,AI工具在软件开发中变得越来越重要,它们能显著提升效率和代码质量。本文就来分享一下我用腾讯云AI代码助手的经历,看看它是怎么在开发中帮了大忙的。 开发环境介绍 这次的项目用的是JavaScript,开发环境是Windows 10…

用于胰腺癌自动化综述报告和可切除性分类的大型语言模型| 文献速递-基于深度学习的乳房、前列腺疾病诊断系统

Title 题目 Large Language Models for Automated Synoptic Reports and Resectability Categorization in Pancreatic Cancer 用于胰腺癌自动化综述报告和可切除性分类的大型语言模型 Background 背景 Structured radiology reports for pancreatic ductal adenocarcinom…

condition字符串匹配问题

概述 freeswitch是一款简单好用的VOIP开源软交换平台。 fs使用dialplan配置文件执行业务流程,condition条件变量的配置是必然会使用的,这里记录一次配置过程中的错误示范。 环境 CentOS 7.9 freeswitch 1.10.7 问题描述 dialplan配置如下&#xf…

如何做到项目真实性优化?保姆级写简历指南第五弹!

大家好,我是程序员鱼皮。做知识分享这些年来,我看过太多简历、也帮忙修改过很多的简历,发现很多同学是完全不会写简历的、会犯很多常见的问题,不能把自己的优势充分展示出来,导致措施了很多面试机会,实在是…

pdf拆分需要怎么做?6个软件帮助你快速拆分pdf文件

pdf拆分需要怎么做?6个软件帮助你快速拆分pdf文件 拆分PDF文件可以让你更方便地处理和管理文档内容,无论是提取特定页面还是将文件分成更小的部分。以下是六款帮助你快速拆分PDF文件的软件,每款软件都有其独特的功能和优势,供你选…

4章4节:临床数据科学中如何用R来进行缺失值的处理

在临床科研中,由于失访、无应答或记录不清等各种原因,经常会遇到数据缺失的问题。本文将深入探讨医学科研中数据缺失的成因、分类、影响以及应对方法,结合R语言的实际应用,为医学研究人员提供全面的解决方案。 一、认识缺失数据 其实,很多医学的纵向研究因获取数据资料时…

铜山金杏·打响区域公用品牌,助力乡村振兴新征程

为进一步提升徐州市铜山区农业产业发展的重要战略布局,从而更好地助力乡村振兴,徐州市铜山区农业农村局借助“铜山金杏地理标志农产品保护工程项目”联合山东百仕达地标产业有限公司打造铜山农特产品区域公用品牌——“铜山金杏”,充分挖掘铜…

大搜罗2024年数据恢复软件TOP3,互联网人士的年度推荐!

不管是咱们普通人,还是大大小小的公司,都怕数据一去不复返。好在科技给力,现在数据恢复软件越来越牛,帮我们解决了这块心病。今儿个,就给大家聊聊几款2024年超火的数据恢复软件,如转转大师数据恢复软件等&a…

防盗、防泄露、防篡改,我们把 ZooKeeper 的这种认证模式玩明白了

作者:子葵 你的 ZooKeeper 安全吗? 在当下网络安全事件频发的背景下,安全防护的构建成为日常开发与运维工作中的重中之重。ZooKeeper 存储着系统敏感实例信息与配置数据,但传统的使用方式并未为 ZooKeeper 配备强制身份验证机制…

Ubuntu查看IP地址

Ubuntu查看IP地址 文章目录 Ubuntu查看IP地址查看IP地址的命令遇到的问题解决方案 查看IP地址的命令 1.使用ifconfig 2.使用hostname -I(-之前一个空格) 3.使用ip addr show 遇到的问题 1.使用ifconfig只显示一个127.0.0.1地址 2.使用hostname -I …

成功解决LabVIEW中加载 lvanlys.dll动态链接库(DLL)初始化例程失败

‍‍🏡博客主页: virobotics(仪酷智能):LabVIEW深度学习、人工智能博主 🎄所属专栏:『奇怪问题及Bug解决』 📑精选文章:LabVIEW人工智能深度学习指南 🍻本文由virobotics(仪酷智能)原…

事务和索引(面试常问)

面试常问: 一、数据库隔离级别?事务隔离级别解决的问题? 答:1.数据库隔离级别: READ_UNCOMMITTED 读未提交 READ_COMMITTED 读提交(不可重复读) REPEATABLE_READ 可重复读 SERIALIZABLE 串行化…

Spring学习(三)-Bean的作用域和生命周期

Spring学习(三)-Bean的作用域和生命周期 –2020年06月25日 一、bean的作用域 概念: Spring 2.5之前的Bean 的作用域只有两种 Springleton:单例Bean Prototype : 原型Bean Spring 2.5 之后Bean的作用域有一下五种 …