机器学习模型/算法—— 阶段性总结(1)模型框架:假设函数、目标函数和优化算法

数学建模竞赛解题思路构建:从问题分析到模型落地的完整框架 数学建模是将现实世界复杂问题抽象为数学模型,并通过数学工具与算法求解的核心方法。其基本原理在于通过定义变量、目标函数和约束条件,将定性问题转化为可量化、可计算的数学形式。这一过程的技术价值在于为决策提供科学依据,优化资源配置,并预测未来趋势。在工程实践与学术研究中,数学建模广泛应用于物流调度、金融预测、资源分配等场景。本文以MathorCup数学建模挑战赛为例,深入剖析如何从赛题描述中抽丝剥茧,构建清晰的建模主线。文章重点探讨了问题重述、边界界定、关键词拆解等关键步骤,并强调了团队协作与时间管理的重要性。通 阅读详情

机器学习算法/模型分类:

  • 监督学习
    分类、回归
  • 无监督学习
    聚类、降维
  • 强化学习

在这里插入图片描述

0. 相关概念(记录)

  • 损失函数、经验风险、结构风险
    目标函数 = 结构风险函数 = 经验风险函数 + 正则项
  • Hessian矩阵正定
    一阶导数信息:梯度
    二阶导数信息:Hessian矩阵
    正定(positive definite)的直观理解:正定矩阵A使得向量经过 Ax 变换后与变换之前的夹角恒定小于 π 2 {π}\over{2} 2π​。

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

…

1. 从假设函数到目标函数

对于几乎所有机器学习算法,无论是有监督学习、无监督学习,还是强化学习, 最后一般都归结为求一个目标函数的极值,即最优化问题。

首先,要明白下面几个点:

  1. 什么是假设函数?
  2. 什么是目标函数?
  3. 目标函数和损失函数的关系?
  • 假设函数是一个近似目标函数的候选模型,用于表示输入样本到输出样本之间的映射关系。 (参考
    )
  • 目标函数是最终需要优化的函数,其中包括经验损失和结构损失,即目标函数 = 经验损失 + 结构损失(obj=loss+Ω)

说白了,在没有正则项的情况下,我们所说的损失函数也就是我们的目标函数,即目标函数 = 损失函数;当包含正则项时,目标函数 = 损失函数 + 正则项。

借用知乎上乎友的回答(看图):
在这里插入图片描述

1.1 有监督模型

对于有监督学习,有两类情况:

(1)我们要找到一个最佳的映射函数f(x),假设映射函数为:
在这里插入图片描述
(其中θ是模型的参数,如何确定它的值,是训练算法的核心)

目标是使得对训练样本的损失函数最小化(最小化经验风险或结构风险):

在这里插入图片描述

在这里,N为训练样本数,L是对单个样本的损失函数,w是要求解的模型参数,是映射函数的参数, xi 为样本的特征向量,yi 为样本的标签值。

(2)或者是找到一个最优的概率密度函数p(x),

使得对训练样本的对数似然函数极大化(最大似然估计):
在这里插入图片描述
在这里,θ 是要求解的模型参数,是概率密度函数的参数。

(本来是似然函数的最大化问题,但是连乘求导不方便,因此对似然函数取对数,得到对数似然函数)

1.2 无监督学习

(1)对于无监督学习的聚类问题,机器学习算法要寻找一个集合的划分,将样本集D划分成多个不相交的子集:

在这里插入图片描述
目标函数:
以聚类算法为例,算法要是的每个类的样本离类中心的距离之和最小化:
在这里插入图片描述
在这里k为类型数,x为样本向量, μi 为类中心向量, Si 为第 i 个类的样本集合。

(2)对于数据降维问题,机器学习算法要寻找一个映射函数,将一个高维向量映射成一个低维向量:
在这里插入图片描述

但要尽可能的保留之前向量的一些重要信息。

1.3 强化学习

对于强化学习,机器学习算法要为每种状态s下确定一个动作a来执行,即确定策略函数,使得执行这些动作之后得到我们预期的结果:
在这里插入图片描述
目标函数:
我们要找到一个最优的策略,即状态s到动作a的映射函数(确定性策略,对于非确定性策略,是执行每个动作的概率
使得任意给定一个状态,执行这个策略函数所确定的动作a之后,得到的累计回报最大化:
在这里插入图片描述
这里使用的是状态价值函数。

总体来看,机器学习的核心目标是给出一个模型(一般是映射函数),然后定义对这个模型好坏的评价函数(目标函数),求解目标函数的极大值或者极小值,以确定模型的参数,从而得到我们想要的模型。
这也是机器学习概念部分讲的机器学习三步。

附:常用的一些损失函数以及它们的导数:

在这里插入图片描述
需要说明的是,对前面介绍的很多损失函数,我们都可以加上正则化项,得到新的损失函数,以减轻过拟合。

2. 最优化算法

最优化算法:

公式法
|
近似法(数值优化)
|
随机搜索法


除了极少数问题可以用暴力搜索来得到最优解之外,我们将机器学习中使用的优化算法分成两种类型(不考虑随机优化算法如模拟退火、遗传算法):

  • 公式法:梯度为 0 的方程组直接求解
  • 数值优化(近似求解):利用一阶、二阶导数,如迭代法

前者给出一个最优化问题精确的公式解,也称为解析解,一般是理论结果。
对绝大多数函数来说,梯度等于0的方程组是没法直接解出来的,如方程里面含有指数函数、对数函数之类的超越函数。对于这种无法直接求解的方程组,我们只能采用近似的算法来求解,即数值优化算法。

除此之外,还有其他一些求解思想,如分治法,动态规划等。

一个好的优化算法需要满足:

  • 能正确的找到各种情况下的极值点
  • 速度快

关系总结如下:
在这里插入图片描述

2.1 公式法

  • 费马定理
  • 拉格朗日乘数法
  • KKT条件
    KKT条件是拉格朗日乘数法的推广,用于求解既带有等式约束,又带有不等式约束的函数极值。

2.2 数值优化算法(近似求解)

  • 梯度下降
    梯度下降法沿着梯度的反方向进行搜索,利用了函数的一阶导数信息。

梯度下降法的迭代公式为:
在这里插入图片描述

  • 动量法
    为了加快梯度下降法的收敛速度,减少震荡,引入了动量项。
    动量项累积了之前迭代时的梯度值,加上此项之后的参数更新公式为:
    在这里插入图片描述
    其中 Vt+1 是动量项,它取代了之前的梯度项。动量项的计算公式为:
    在这里插入图片描述
    它是上一时刻的动量项与本次梯度值的加权平均值,其中 α \alpha α 是学习率,μ 是动量项系数。
  • AdaGrad算法
    AdaGrad算法是梯度下降法最直接的改进。梯度下降法依赖于人工设定的学习率,如果设置过小,收敛太慢,而如果设置太大,可能导致算法那不收敛,为这个学习率设置一个合适的值非常困难。

AdaGrad算法根据前几轮迭代时的历史梯度值动态调整学习率,且优化变量向量x的每一个分量 xi 都有自己的学习率。参数更新公式为:
在这里插入图片描述

  • Adam算法

Adam算法整合了自适应学习率与动量项。算法用梯度构造了两个向量m和v,前者为动量项,后者累积了梯度的平方和,用于构造自适应学习率。它们的初始值为0,更新公式为:
在这里插入图片描述
其中 β1 , β2 是人工指定的参数,i 为向量的分量下标。依靠这两个值构造参数的更新值,参数的更新公式为:
在这里插入图片描述
在这里,m类似于动量项,用v来构造学习率。

  • 随机梯度下降法

批量随机梯度下降法在每次迭代中使用上面目标函数的随机逼近值,即只使用M [公式] N个随机选择的样本来近似计算损失函数。

  • 牛顿法
    牛顿法是二阶优化技术,利用了函数的一阶和二阶导数信息,直接寻找梯度为0的点。牛顿法的迭代公式为:
    在这里插入图片描述
    其中H为Hessian矩阵,g为梯度向量。牛顿法不能保证每次迭代时函数值下降,也不能保证收敛到极小值点。

  • 拟牛顿法

2.3 分治法

分治法是一种算法设计思想,它将一个大的问题分解成子问题进行求解。根据子问题解构造出整个问题的解。在最优化方法中,具体做法是每次迭代时只调整优化向量x的一部分分量,其他的分量固定住不动。

  • 坐标下降法
  • SMO算法

2.4 动态规划算法

  • 隐马尔可夫模型的解码算法(维特比算法)
  • 强化学习中的动态规划算法

3. 模型总结

一句话总结

多种角度看各种模型

信息论角度

决策边界可视化的思路

  • 回归问题:直接画出决策边界(线)——将实际的预测值——y_pred当做 y ,直接画出回归线。
    (参考 线性回归)
  • 分类问题:侧面显示——使用范围类的所有数据,当做新数据,去拟合模型,用得到的结果——y_pred 去上色。
    (参考 逻辑回归、SVM等)

参考

  1. “假设”家族大起底!如何正确区分科学假设、统计假设和机器学习假设?

  2. 机器学习中的最优化算法总结

  3. 机器学习–>期望风险、经验风险与结构风险之间的关系

  4. 浅谈「正定矩阵」和「半正定矩阵」

  5. 机器学习算法地图

  6. 逻辑回归(Logistic Regression)

网络流优化与最优分配算法:从理论到实践 随着信息技术的迅猛发展,网络流优化与最优分配问题已成为计算机科学、通信工程以及运筹学中的核心课题。其在多个领域中的应用,尤其是在互联网、供应链管理、运输物流、以及云计算资源分配等方面,扮演着至关重要的角色。本文将探讨网络流优化的基本理论、最优分配算法的实现,展望未来发展趋势,并结合实际案例、前沿技术及安全实践,全面分析这一领域的技术演进。 阅读详情

相关推荐

粒子群算法MATLAB实战:从原理到代码实现

对于最小化问题 $ \min f(\mathbf{x}) $,适应度值直接取为目标函数值;若为最大化问题,则常用转换:\quad \text{或} \quad其中 $ M $ 为足够大的常数。例如,Sphere函数定义为:其全局最小值在原点处 $ f(0)=0 $,适合测试算法收敛精度。end该函数连续、凸且可微,虽可用梯度法轻松求解,但作为基准测试能有效验证PSO的基本功能。代码解释:- 输入x为一行向量,表示某粒子的位置;x.^2。

weixin_31569663的博客 1062

假设函数 损失函数 代价函数 目标函数 与线性回归

加粗样式@TOC 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 新的改变 我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客: 全新的界面设计 ,将...

vicky_white的博客 2815

常用的优化算法测试目标函数,10例

常用的优化算法测试目标函数,10例包括 Sphere函数 Schwefel2.22函数 Schwefel1.2函数 Schewfel2.21函数 Rosenbrock函数 Step函数 Rastrigin函数 Ackley函数 Griewank函数 Zakharov Function函数

机器学习术语(假设函数、损失函数、过拟合、欠拟合)

机器学习是一门专业性很强的技术,它大量地应用了数学、统计学上的知识,因此总会有一些蹩脚的词汇,这些词汇就像“拦路虎”一样阻碍着我们前进,甚至把我们吓跑。因此认识,并理解这些词汇是首当其冲的任务。本节将介绍机器学习中常用的基本概念,为后续的知识学习打下坚实的基础。

Java开发,人工智能,边缘计算,致力于掌握前沿技术 1408

详细介绍:国产操作系统银行麒麟V10的下载和安装

银河麒麟是由。银河麒麟已经发展为银河麒麟服务器操作系统、桌面操作系统、嵌入式操作系统、麒麟云、操作系统增值产品为代表的产品线。为攻克中国软件核心技术“卡脖子”的短板,银河麒麟建设自主的开源供应链,发起中国首个开源桌面操作系统根社区openKylin,银河麒麟操作系统以openKylin等自主根社区为依托,发布最新版本。

lz17267861157的博客 1万+

卡门涡街可视化实战:从网格加密策略到动画后处理技巧

本文详细介绍了利用ANSYS Fluent进行卡门涡街可视化模拟的全流程,包括网格加密策略、求解器设置、涡街捕捉及动画后处理技巧。通过计算流体力学(CFD)方法,帮助工程师和研究人员高效模拟圆柱绕流现象,优化工程设计。

weixin_29309785的博客 414

优化问题-目标函数确定

最小时间代价函数: 二次代价函数: 需要注意的是,控制输入是有限制的, 如果输入没有限制,那么最优的控制策略将会采用无限大的控制输入,瞬间让砖块达到目标,这在实际中显然是不可能的。 除了输入约束外,还有一种方法能限制控制输入过大,即对控制量采用一个二次惩罚函数: 这个惩罚项可以加到上面任意一个代价函数中。 对于优化问题的求解而言,某些形式的代价函数会更容易处理。例如,当目标函数被写作加性代价(additive cost)的形式时,问题的求解就会变得更加简单,因为这种代价函数通常可以产生递归解(rec

星梦的博客 3502

CVAT自动标注避坑指南:从nuctl安装到YOLOv5模型部署的完整流程

本文详细介绍了在CVAT中部署YOLOv5自动标注功能的完整流程与避坑指南。重点解决了从nuctl工具安装、项目创建时因网络问题导致的镜像拉取失败,到最终模型函数部署与CVAT集成的关键步骤。针对国内网络环境,提供了实用的镜像替换方案,帮助用户顺利完成基于CPU的自动化标注环境搭建。

pytorch8learner的博客 229

贝叶斯优化方法和应用综述

贝叶斯优化方法和应用综述 1.摘要 设计类问题在科学研究和工业领域无处不在.作为一种十分有效的全局优化算法,近年来,贝叶斯优化方法在设计类问题上被广泛应用.通过设计恰当的概率代理模型和采集函数,贝叶斯优化框架只需经过少数次目标函数评估即可获得理想解,非常适用于求解目标函数表达式未知、非凸、多峰和评估代价高昂的复杂优化问题.本文从方法论和应用领域两方面深入分析、讨论和展望了贝叶斯优化的研究现状、面临的问题和应用领域,期望为相关领域的研究者提供有益的借鉴和参考. 2.介绍 未完待续 ...

大模型天花板 1万+

机器学习系列(1)_逻辑回归初步

1、总述 逻辑回归是应用非常广泛的一个分类机器学习算法,它将数据拟合到一个logit函数(或者叫做logistic函数)中,从而能够完成对事件发生的概率进行预测。 2、由来     要说逻辑回归,我们得追溯到线性回归,想必大家对线性回归都有一定的了解,即对于多维空间中存在的样本点,我们用特征的线性组合去拟合空间中点的分布和轨迹。如下图所示:     线性回归能对连续值结果进行预测,

寒小阳 13万+

Aspen Plus下载教程Aspen Plus V14 保姆级安装步骤(附安装包)

26、在WlmAdmin界面中,依次点击【Subnet Servers】、【admin】、【Add Feature】、【From a File】、【To Server and its File】。35、在产品选择页面,勾选需要安装的所有产品(重要:不要勾选【Aspen Online(Plant Data)】),然后点击【File Location】。回到桌面,点击任务栏的【开始菜单】,在【所有应用】中找到【Aspen Plus V14】软件图标,将其拖到桌面上创建快捷方式。9、这里可以更改软件的安装位置。

ps_xiaowang的博客 1万+

神经网络模型和动态计算图、梯度计算与自动微分

神经网络模型通常使用计算图来表示其内部结构和计算过程。在深度学习框架如PyTorch中,动态计算图是实现这一机制的一种方式。在神经网络模型中,梯度是一个关键概念,它反映了模型参数对于损失函数(即预测误差)的敏感度。梯度是一个向量,其每个元素代表了对应参数在损失函数上的偏导数,表示当该参数发生微小变化时,损失函数值的变化趋势。自动微分(Automatic Differentiation)是一种用于计算函数或程序的梯度的技术,特别适用于深度学习中的复杂神经网络模型。

xw555666的博客 2408

关于42步进电机驱动——基于STM32 HAL库实现

我找了好多资料,好多关于42步进电机的都是文档,这么文档都需要积分,需要积分就算了内容还非常差,浪费时间和电脑的内存。关于大部分是基于Arduino和51去驱动的 42步进电机驱动硬件如下: 首先你要了解步进电机的驱动原理,我也不啰嗦了,请看这边博客: 二相四线,四相五线,四相六线步进电机接线及驱动方法 , 看完这篇你就知道驱动和接线的原理了。 起初我也为如何接线烦恼,因为有些博客在讲述这些问题的时候没有讲的很透彻。 方法如下: ①用万用表调到欧姆档,用其中一个表笔搭在一个引脚上,依次测其它.

Jodan132的博客 1万+

机器学习算法/模型——总章

目录1. 机器学习介绍2. 机器学习模型介绍线性回归 1. 机器学习介绍 机器学习介绍 2. 机器学习模型介绍 线性回归

Robin_Pi的博客 791

手把手教你学simulink(8.39)--基于Simulink的步进电机(Stepper Motor)仿真实例

通过这个仿真实例,你可以学习如何使用Simulink构建和仿真步进电机(Stepper Motor)系统。你可以根据实际需求调整模型和参数,进行更复杂的仿真和分析。希望这个例子对你有所帮助,祝你学习愉快!

MHD0815的博客 1052

新手强化学习—深入解析 YOLOv13 项目包中的文件结构和各文件作用

YOLOv13是YOLO系列最新发布的计算机视觉模型。在这篇博客中,我将深入分析YOLOv13中各个文件的作用,对整个项目的文件结构有更清晰的认识。

Limiiiing的博客 482

数学建模入门:从问题界定到模型构建的完整指南

数学建模是将现实世界问题转化为数学问题的核心过程,其关键在于对问题的理解、界定与简化。建模的本质并非直接套用现成算法,而是一个系统的“翻译”过程,涉及从模糊的现实诉求中提炼出清晰的决策变量、目标函数与约束条件。这一过程的技术价值在于为复杂系统提供可量化分析与求解的框架,广泛应用于设施选址、资源优化、需求预测等工程与商业场景。在构建模型时,需在模型假设的合理性与可解性之间取得平衡,避免线性化陷阱与确定性陷阱,并合理运用优化模型、预测模型等数学工具。本文以快递网点选址为例,具体阐述了如何将自然语言描述转化为混合

weixin_34248487的博客 465

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

用于化学动力学模型估计的正则化和凹损失函数研究附Mtlab代码

化学动力学模型是描述化学反应速率与反应物浓度、温度、催化剂等变量关系的核心工具,其参数估计(如反应速率常数、活化能)是从实验数据中反向推导模型的关键步骤。然而,实验数据往往受测量噪声、采样误差影响,且模型可能存在过参数化(如复杂反应网络的多步反应参数),导致传统估计方法(如最小二乘法)出现参数漂移、过拟合或对异常值敏感等问题。正则化技术通过引入参数约束控制模型复杂度,凹损失函数则通过对大误差的稳健处理提升抗噪能力,两者结合为化学动力学模型的高精度估计提供了新途径。一、化学动力学模型估计的核心挑战。

qq_59747472的博客 914

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

数学建模竞赛Python实战:从优化算法到蒙特卡洛模拟的完整指南

数学建模是将现实问题抽象为数学问题,并通过计算求解的核心方法。其基本原理在于通过建立变量、方程或算法来描述系统行为,进而预测或优化结果。这一过程的技术价值在于将复杂问题量化,为决策提供科学依据,广泛应用于资源分配、路径规划、市场预测等场景。Python凭借其强大的科学计算库(如NumPy、SciPy)和简洁语法,成为实现数学建模的理想工具。例如,针对优化类问题,可利用线性规划算法寻找最优解;对于涉及随机性的场景,蒙特卡洛模拟则通过大量抽样逼近真实分布。本文聚焦于数学建模竞赛,详细解析如何运用Python实现

weixin_34133829的博客 278

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

数学建模竞赛十类核心算法:从原理到实战应用全解析

算法是解决复杂问题的核心工具,其本质是将问题抽象为可计算步骤的方法论。从原理上看,算法基于数学和逻辑规则,通过特定的计算流程将输入转化为期望的输出,其技术价值在于为各类工程与科学问题提供高效、自动化的解决方案。在应用场景上,算法广泛应用于数据分析、优化决策、预测建模和系统仿真等领域。本文聚焦数学建模竞赛,深入解析蒙特卡罗方法、线性规划、动态规划等十类核心算法,并结合资源分配、路径规划等典型赛题场景,探讨其组合应用策略与实战要点,旨在为参赛者构建系统化的算法工具箱。

weixin_34224941的博客 684

数学建模实战:从问题抽象到算法求解的完整思维流程解析

数学建模是将现实世界复杂问题转化为可计算数学模型的核心方法,其原理在于通过定义决策变量、目标函数和约束条件,构建一个能够反映问题本质的数学框架。这一过程的技术价值在于,它不仅是解决优化、预测和评估问题的通用工具,更是培养系统性分析与量化决策能力的关键。在工程实践与科研中,数学建模广泛应用于资源调度、路径规划、风险预测等场景,例如物流中心的包裹分拣优化或新能源发电功率预测。本文以资源调度优化问题为例,深入剖析了如何将多目标(如最小化总成本与均衡负载)转化为可求解的数学模型,并详细演示了使用Python的PuL

weixin_42526087的博客 297
上一篇: 机器学习算法/模型——有监督到无监督(降维):主成分分析(PCA)
下一篇: 机器学习算法/模型——有监督到无监督(聚类):由 KNN 到 K-menas
Robin_Pi
博客等级 码龄9年 2万+粉丝 632原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值