优化算法 - intro
优化问题
- 一般形式
- minimize f ( x ) f(\mathbf{x}) f(x) subject to x ∈ C \mathbf{x} \in C x∈C
- 目标函数 f : R n → R f: \mathbb{R}^n \rightarrow \mathbb{R} f:Rn→R
- 限制集合例子
- C = { x ∣ h 1 ( x ) = 0 , . . . , h m ( x ) = 0 , g 1 ( x ) ≤ 0 , . . . , g r ( x ) ≤ 0 } C = \{\mathbf{x} | h_1(\mathbf{x}) = 0, ..., h_m(\mathbf{x}) = 0, g_1(\mathbf{x}) \leq 0, ..., g_r(\mathbf{x}) \leq 0\} C={x∣h1(x)=0,...,hm(x)=0,g1(x)≤0,...,gr(x)≤0}
- 如果 C = R n C = \mathbb{R}^n C=Rn 那就是不受限
局部最小 vs 全局最小
- 全局最小 x ∗ \mathbf{x}^* x∗: f ( x ∗ ) ≤ f ( x ) f(\mathbf{x}^*) \leq f(\mathbf{x}) f(x∗)≤f(x) ∀ x ∈ C \mathbf{x} \in C x∈C
- 局部最小 x ∗ \mathbf{x}^* x∗: 存在 ε \varepsilon ε, 使得 f ( x ∗ ) ≤ f ( x ) f(\mathbf{x}^*) \leq f(\mathbf{x}) f(x∗)≤f(x) ∀ x : ∥ x − x ∗ ∥ ≤ ε \mathbf{x}: \|\mathbf{x} - \mathbf{x}^*\| \leq \varepsilon x:∥x−x∗∥≤ε
- 使用迭代优化算法来求解,一般只能保证找到局部最小值
凸集
-
一个 R n \mathbb{R}^n Rn 的子集 C C C 是凸当且仅当
α x + ( 1 − α ) y ∈ C \alpha \mathbf{x} + (1 - \alpha) \mathbf{y} \in C αx+(1−α)y∈C
∀ α ∈ [ 0 , 1 ] ∀ x , y ∈ C \forall \alpha \in [0,1] \; \forall \mathbf{x}, \mathbf{y} \in C ∀α∈[0,1]∀x,y∈C
凸函数
-
函数 f : C → R f: C \rightarrow \mathbb{R} f:C→R 是凸当且仅当
f ( α x + ( 1 − α ) y ) f(\alpha \mathbf{x} + (1 - \alpha) \mathbf{y}) f(αx+(1−α)y)
≤ α f ( x ) + ( 1 − α ) f ( y ) \leq \alpha f(\mathbf{x}) + (1 - \alpha) f(\mathbf{y}) ≤αf(x)+(1−α)f(y)
∀ α ∈ [ 0 , 1 ] ∀ x , y ∈ C \forall \alpha \in [0,1] \; \forall \mathbf{x}, \mathbf{y} \in C ∀α∈[0,1]∀x,y∈C
-
如果 x ≠ y , α ∈ ( 0 , 1 ) \mathbf{x} \neq \mathbf{y}, \alpha \in (0,1) x=y,α∈(0,1) 时不等式严格成立,那么叫严格凸函数
凸函数优化
- 如果代价函数 f f f 是凸的,且限制集合 C C C 是凸的,那么就是凸优化问题,那么局部最小一定是全局最小
- 严格凸优化问题有唯一的全局最小
凸和非凸例子
- 凸
- 线性回归 f ( x ) = ∥ W x − b ∥ 2 2 f(\mathbf{x}) = \|\mathbf{Wx} - \mathbf{b}\|_2^2 f(x)=∥Wx−b∥22
- Softmax 回归
- 非凸:其他
- MLP, CNN, RNN, attention, …
梯度下降
- 最简单的迭代求解算法
- 选取开始点 x 0 \mathbf{x}_0 x0
- 对 t = 1 , … , T t = 1, \ldots, T t=1,…,T
- x t = x t − 1 − η ∇ f ( x t − 1 ) \mathbf{x}_t = \mathbf{x}_{t-1} - \eta \nabla f(\mathbf{x}_{t-1}) xt=xt−1−η∇f(xt−1)
- η \eta η 叫做学习率
随机梯度下降
-
有 n n n 个样本时,计算
f ( x ) = 1 n ∑ i = 0 n ℓ i ( x ) f(\mathbf{x}) = \frac{1}{n} \sum_{i=0}^{n} \ell_i(\mathbf{x}) f(x)=n1∑i=0nℓi(x) 的导数太贵
-
随机梯度下降在时间 t t t 随机选项样本 t i t_i ti 来近似 f ( x ) f(x) f(x)(求导是线性可加的 )
x t = x t − 1 − η t ∇ ℓ t i ( x t − 1 ) \mathbf{x}_t = \mathbf{x}_{t-1} - \eta_t \nabla \ell_{t_i}(\mathbf{x}_{t-1}) xt=xt−1−ηt∇ℓti(xt−1)
E [ ∇ ℓ t i ( x ) ] = E [ ∇ f ( x ) ] \mathbb{E}\left[\nabla \ell_{t_i}(\mathbf{x})\right] = \mathbb{E}[\nabla f(\mathbf{x})] E[∇ℓti(x)]=E[∇f(x)]
小批量随机梯度下降
-
计算单样本的梯度难完全利用硬件资源
-
小批量随机梯度下降在时间 t t t 采样一个随机子集 I t ⊂ { 1 , . . . , n } I_t \subset \{1, ..., n\} It⊂{1,...,n} 使得 ∣ I t ∣ = b |I_t| = b ∣It∣=b
x t = x t − 1 − η t b ∑ i ∈ I t ∇ ℓ i ( x t − 1 ) \mathbf{x}_t = \mathbf{x}_{t-1} - \frac{\eta_t}{b} \sum_{i \in I_t} \nabla \ell_i(\mathbf{x}_{t-1}) xt=xt−1−bηt∑i∈It∇ℓi(xt−1)
-
同样,这是一个无偏的近似,但降低了方差
E [ 1 b ∑ i ∈ I t ∇ ℓ i ( x ) ] = ∇ f ( x ) \mathbb{E}\left[\frac{1}{b} \sum_{i \in I_t} \nabla \ell_i(\mathbf{x})\right] = \nabla f(\mathbf{x}) E[b1∑i∈It∇ℓi(x)]=∇f(x)
冲量法
-
冲量法使用平滑过的梯度对权重更新
g t = 1 b ∑ i ∈ I t ∇ ℓ i ( x t − 1 ) \mathbf{g}_t = \frac{1}{b} \sum_{i \in I_t} \nabla \ell_i(\mathbf{x}_{t-1}) gt=b1∑i∈It∇ℓi(xt−1)
v t = β v t − 1 + g t w t = w t − 1 − η v t \mathbf{v}_t = \beta \mathbf{v}_{t-1} + \mathbf{g}_t \quad \mathbf{w}_t = \mathbf{w}_{t-1} - \eta \mathbf{v}_t vt=βvt−1+gtwt=wt−1−ηvt
梯度平滑: v t = g t + β g t − 1 + β 2 g t − 2 + β 3 g t − 3 + . . . \mathbf{v}_t = \mathbf{g}_t + \beta \mathbf{g}_{t-1} + \beta^2 \mathbf{g}_{t-2} + \beta^3 \mathbf{g}_{t-3} + ... vt=gt+βgt−1+β2gt−2+β3gt−3+...
-
β \beta β 常见取值 [0.5, 0.9, 0.95, 0.99]
Adam
-
记录 v t = β 1 v t − 1 + ( 1 − β 1 ) g t \mathbf{v}_t = \beta_1 \mathbf{v}_{t-1} + (1 - \beta_1) \mathbf{g}_t vt=β1vt−1+(1−β1)gt 通常 β 1 = 0.9 \beta_1 = 0.9 β1=0.9
-
展开 v t = ( 1 − β 1 ) ( g t + β 1 g t − 1 + β 1 2 g t − 2 + β 1 3 g t − 3 + . . . ) \mathbf{v}_t = (1 - \beta_1)(\mathbf{g}_t + \beta_1 \mathbf{g}_{t-1} + \beta_1^2 \mathbf{g}_{t-2} + \beta_1^3 \mathbf{g}_{t-3} + ...) vt=(1−β1)(gt+β1gt−1+β12gt−2+β13gt−3+...)
-
因为 ∑ i = 0 ∞ β 1 i = 1 1 − β 1 \sum_{i=0}^{\infty} \beta_1^i = \frac{1}{1 - \beta_1} ∑i=0∞β1i=1−β11,所以权重和为1
-
由于 v 0 = 0 \mathbf{v}_0 = 0 v0=0,且 ∑ i = 0 t β 1 i = 1 − β 1 t 1 − β 1 \sum_{i=0}^{t} \beta_1^i = \frac{1 - \beta_1^t}{1 - \beta_1} ∑i=0tβ1i=1−β11−β1t,
修正 v ^ t = v t 1 − β 1 t \hat{\mathbf{v}}_t = \frac{\mathbf{v}_t}{1 - \beta_1^t} v^t=1−β1tvt -
类似记录 s t = β 2 s t − 1 + ( 1 − β 2 ) g t 2 \mathbf{s}_t = \beta_2 \mathbf{s}_{t-1} + (1 - \beta_2) \mathbf{g}_t^2 st=β2st−1+(1−β2)gt2,通常 β 2 = 0.999 \beta_2 = 0.999 β2=0.999,且修正
s ^ t = s t 1 − β 2 t \hat{\mathbf{s}}_t = \frac{\mathbf{s}_t}{1 - \beta_2^t} s^t=1−β2tst
-
计算重新调整后的梯度 g t ′ = v ^ t s ^ t + ϵ \mathbf{g}'_t = \frac{\hat{\mathbf{v}}_t}{\sqrt{\hat{\mathbf{s}}_t} + \epsilon} gt′=s^t+ϵv^t
-
最后更新 w t = w t − 1 − η g t ′ \mathbf{w}_t = \mathbf{w}_{t-1} - \eta \mathbf{g}'_t wt=wt−1−ηgt′
总结
- 深度学习模型大多是非凸
- 小批量随机梯度下降是最常用的优化算法
- 冲量对梯度做平滑
- Adam对梯度做平滑,且对梯度各个维度值做重新调整
相关文章:
优化算法 - intro
优化问题 一般形式 minimize f ( x ) f(\mathbf{x}) f(x) subject to x ∈ C \mathbf{x} \in C x∈C 目标函数 f : R n → R f: \mathbb{R}^n \rightarrow \mathbb{R} f:Rn→R限制集合例子 C { x ∣ h 1 ( x ) 0 , . . . , h m ( x ) 0 , g 1 ( x ) ≤ 0 , . . . , g r …...
从PotPlayer到专业播放器—基于 RTSP|RTMP播放器功能、架构、工程能力的全面对比分析
从PotPlayer到专业播放器SDK:工程项目怎么选择合适的播放方案? ——基于 RTSP、RTMP 播放器功能、架构、工程能力的全面对比分析 在许多音视频项目早期,我们都听过这句话: “本地测试就用 PotPlayer 播吧,能播就行了…...
EasyRTC嵌入式音视频通信SDK技术,助力工业制造多场景实时监控与音视频通信
一、背景 在数字化时代,实时监控广泛应用于安防、工业、交通等领域。但传统监控系统实时性、交互性欠佳,难以满足需求。EasyRTC作为先进实时通信技术,具有低延迟、高可靠、跨平台特性,能有效升级监控系统。融入EasyRTC后…...
MPay码支付系统第四方聚合收款码多款支付插件个人免签支付源码TP8框架全开源
一、源码描述 这是一套码支付源码(MPay),基于TP8框架,前端layui2.9后端PearAdmin,专注于个人免签收款,通过个人的普通收款码,即可实现收款通知自动回调,支持绝大多数商城系统&#…...
wrod生成pdf。[特殊字符]改背景
import subprocess import os,time from rembg import remove, new_session from PIL import Image import io from docxtpl import DocxTemplate, InlineImage from docx.shared import Inches input_folder ‘tupian’ # 输入文件夹 kouchu_folder ‘kouchu’ # 去背景图像…...
动手学深度学习12.1. 编译器和解释器-笔记练习(PyTorch)
以下内容为结合李沐老师的课程和教材补充的学习笔记,以及对课后练习的一些思考,自留回顾,也供同学之人交流参考。 本节课程地址:无 本节教材地址:12.1. 编译器和解释器 — 动手学深度学习 2.0.0 documentation 本节…...
数字文明时代开源技术驱动的商业范式重构:基于开源AI大模型、AI智能名片与S2B2C商城小程序源码的协同创新研究
摘要:数字文明时代,数字技术正以指数级速度重构全球经济与社会结构。本文聚焦开源AI大模型、AI智能名片与S2B2C商城小程序源码的协同创新机制,从技术架构、商业逻辑、实践案例三个维度展开系统研究。基于多行业实证数据,揭示开源技…...
【Bootstrap V4系列】学习入门教程之 组件-轮播(Carousel)
Bootstrap V4系列 学习入门教程之 组件-轮播(Carousel) 轮播(Carousel)一、How it works二、Example2.1 Slides only 仅幻灯片2.2 With controls 带控制装置2.3 With indicators 带指示器2.4 With captions 带字幕 轮播࿰…...
嵌入式openharmony标准鸿蒙系统驱动开发基本原理与流程
第一:鸿蒙概述 OpenHarmony采用多内核(Linux内核或者LiteOS)设计,支持系统在不同资源容量的设备部署。当相同的硬件部署不同内核时,如何能够让设备驱动程序在不同内核间平滑迁移,消除驱动代码移植适配和维护的负担,是OpenHarmony驱动子系统需要解决的重要问题。 …...
Leetcode 刷题记录 08 —— 链表第二弹
本系列为笔者的 Leetcode 刷题记录,顺序为 Hot 100 题官方顺序,根据标签命名,记录笔者总结的做题思路,附部分代码解释和疑问解答,01~07为C语言,08及以后为Java语言。 01 合并两个有序链表 /*** Definition…...
PaddlePaddle 和PyTorch选择与对比互斥
你遇到的错误信息如下: RuntimeError: (PreconditionNotMet) Tensors dimension is out of bound.Tensors dimension must be equal or less than the size of its memory.But received Tensors dimension is 8, memorys size is 0.[Hint: Expected numel() * Size…...
极新月报·2025.4人工智能投融资观察
“ AI投资从‘量’向‘质’过渡 ” 4月重点关注: 1、四月人工智能领域投融资事件105起,披露金额78.63亿人民币。 2、亿级人民币以上金额的投资事件共20起 。 3、四月人工智能领域出现1起IPO事件。 4、在所有融资事件里,除去股权投资&…...
C++ vector 介绍与使用
目录 1.vector是什么? 2.vector的使用 2.1vector的构造函数 2.2vector iterator 的使用 2.3vector 空间增长问题 2.4vector的增删查改 1.vector是什么? 1. vector是表示可变大小数组的序列容器。 2. 就像数组一样,vector也 采用连续的存储…...
可以下载blender/fbx格式模型网站
glbxz.com glbxz.com可以下载blender/fbx格式模型。当然里面有免费的...
Vi/Vim 编辑器详细指南
Vi/Vim 编辑器详细指南 简介一、模式详解1. 命令模式(Normal Mode)2. 插入模式(Insert Mode)3. 可视模式(Visual Mode)4. 命令行模式(Ex Mode)二、核心操作1. 保存与退出2. 导航与移动3. 编辑与文本操作4. 搜索与替换三、高级技巧1. 多文件与窗口操作2. 宏录制3. 寄存器…...
LeetCode 热题 100 22. 括号生成
LeetCode 热题 100 | 22. 括号生成 大家好,今天我们来解决一道经典的算法题——括号生成。这道题在 LeetCode 上被标记为中等难度,要求生成所有可能的并且有效的括号组合。这是一道非常经典的回溯法题目,非常适合用来练习递归和回溯的技巧。…...
UE5 MetaHuman眼睛变黑
第5个材质MI_EyeOcclusion_Inst修改成透明即可...
【C语言】--指针超详解(一)
目录 一.内存和地址 1.1--内存 1.2--如何理解编址 二.指针变量和地址 2.1--取地址操作符(&) 2.2--指针变量和解引用操作符(*) 2.2.1--指针变量 2.2.2--如何理解指针类型 2.2.3--解引用操作符 2.3--指针变量的大小 三.指针变量类型的意义 3.1--从指针的解引用方…...
高频工业RFID读写器-三格电子
高频工业RFID读写器 型号:SG-HF40-485、SG-HF40-TCP 产品功能 高频工业读写器(RFID)产品用在自动化生产线,自动化分拣系统,零部件组装产线等情境下,在自动化节点的工位上部署RFID读写设备,通过与制品的交互…...
驱动开发系列57 - Linux Graphics QXL显卡驱动代码分析(四)显示区域绘制
一:概述 前面在介绍了显示模式设置(分辨率,刷新率)之后,本文继续分析下,显示区域的绘制,详细看看虚拟机的画面是如何由QXL显卡绘制出来的。 二:相关数据结构介绍 struct qxl_moni…...
6.5 行业特定应用:金融、医疗、制造等行业的定制化解决方案
金融、医疗和制造行业作为全球经济支柱,面临数据复杂性、实时性需求和严格合规性的共同挑战,同时各行业因业务特性衍生出独特需求。金融行业需应对市场波动、欺诈风险和多国法规,医疗行业聚焦精准诊断和患者数据隐私,制造业则强调…...
【Linux我做主】深入探讨从冯诺依曼体系到进程
从冯诺依曼体系到进程 从冯诺依曼体系到进程github地址1. 前言2. 计算机硬件2.1 冯诺依曼体系结构2.2 冯诺依曼模型的三大要点2.3 从QQ聊天认识:冯诺依曼体系下数据是如何流动的?发送方数据流动接收方数据流动 3. 计算机软件的根基——操作系统3.1 操作系…...
idea更换jdk版本操作
有时候我们有更换jdk版本的问题,自己电脑可能有多个版本,下面来介绍修改jdk版本修改修改什么地方 1 2 3 4 5 6 再修改pom即可,还有环境变量即可,希望有帮到大家!...
npm install下载插件无法更新package.json和package-lock.json文件的解决办法
经过多番查证,使用npm config ls查看相关配置等方式,最后发现全局的.npmrc文件的配置多写了globaltrue,去掉就好了 如果参数很多,不知道是哪个参数引起的,先只保留registryhttp://xxx/,试试下载࿰…...
机器学习实操 第二部分 神经网路和深度学习 第13章 使用TensorFlow加载和预处理数据
机器学习实操 第二部分 神经网路和深度学习 第13章 使用TensorFlow加载和预处理数据 内容概要 第13章深入探讨了如何使用TensorFlow加载和预处理数据。本章首先介绍了tf.data API,它能够高效地加载和预处理大规模数据集,支持并行文件读取、数据打乱、批…...
WebSoket的简单使用
一、WebSocket简介 1.1、双向通信/全双工 客户端和服务器之间同时双向传输,全双工通信允许客户端和服务器随时互相发送消息,不需等一方发送请求后另一方才进行响应。 适用要低延迟/实时交互的场景,如在线游戏、即时通讯、股票行情等。 1.2…...
01_线性表
一、线性表的顺序存储 逻辑上相邻的数据元素,物理次序也相邻。占用连续存储空间,用“数组”实现,知道初始位置就可推出其他位置。 00_宏定义 // 函数结果状态代码 #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #defin…...
STL详解 - map和set
目录 一、关联式容器概述 二、键值对 三、树形结构的关联式容器 (一)set 1. set的介绍 2. set的使用 (1)模板参数列表 (2)构造函数 (3)迭代器函数 (4ÿ…...
SpringBoot 集成滑块验证码AJ-Captcha行为验证码 Redis分布式 接口限流 防爬虫
介绍 滑块验证码比传统的字符验证码更加直观和用户友好,能够很好防止爬虫获取数据。 AJ-Captcha行为验证码,包含滑动拼图、文字点选两种方式,UI支持弹出和嵌入两种方式。后端提供Java实现,前端提供了php、angular、html、vue、u…...
高并发PHP部署演进:从虚拟机到K8S的DevOps实践优化
一、虚拟机环境下的部署演进 1. 低并发场景(QPS<10)的简单模式 # 典型部署脚本示例 ssh userproduction "cd /var/www && git pull origin master" 技术痛点: 文件替换期间导致Nginx返回502错误(统计显示…...
vue引入物理引擎matter.js
vue引入物理引擎matter.js 在 Vue 项目中集成 Matter.js 物理引擎的步骤如下: 1. 安装 Matter.js npm install matter-js # 或 yarn add matter-js2. 创建 Vue 组件 <template><div ref="physicsContainer" class="physics-container"><…...
【实战项目】简易版的 QQ 音乐:一
> 作者:დ旧言~ > 座右铭:松树千年终是朽,槿花一日自为荣。 > 目标:能自我实现简易版的 QQ 音乐。 > 毒鸡汤:有些事情,总是不明白,所以我不会坚持。早安! > 专栏选自:…...
部署Superset BI(三)连接HANA数据库
metabase和redash都不支持HANA数据库,选择superset就是看重这一点,开始尝试连接HANA数据库。 按Superset的技术文档:pip install hdbcli sqlalchemy-hana or pip install apache-superset[hana] --进入容器 rootNocobase:/usr/superset/supe…...
快速学会Linux的WEB服务
一.用户常用关于WEB的信息 什么是WWW www是world wide web的缩写,及万维网,也就是全球信息广播的意思 通常说的上网就是使用www来查询用户所需要的信息。 www可以结合文字、图形、影像以及声音等多媒体,超链接的方式将信息以Internet传递到世…...
如何搭建spark yarn模式集群的集群
以下是搭建 Spark YARN 模式集群的一般步骤: 准备工作 确保集群中各节点已安装并配置好 Java 环境,且版本符合 Spark 要求。规划好集群中节点的角色,如 Master 节点、Worker 节点等,并确保各节点之间网络畅通,能相互…...
端口安全基本配置
1.top图 2.交换机配置 交换机swa <SWA> system-view [SWA] vlan batch 10 20[SWA] interface GigabitEthernet0/0/1 [SWA-GigabitEthernet0/0/1] port link-type trunk [SWA-GigabitEthernet0/0/1] port trunk allow-pass vlan 10[SWA] interface GigabitEthernet0/0/2 …...
【JsonCpp、Muduo、C++11】JsonCpp库、Muduo库、C++11异步操作
JsonCpp库、Muduo库、C11异步操作 1. JsonCpp库1.1 Json数据格式1.2 JsonCpp介绍1.3 JsonCpp使用 2. Muduo库2.1 Muduo库常见接口介绍2.1.1 TcpServer类基础介绍2.1.2 EventLoop类基础介绍2.1.3 TcpConnection类基础介绍2.1.4 Buffer类基础介绍2.1.5 TcpClient类基础介绍 2.2 M…...
【自然语言处理与大模型】LlamaIndex的词嵌入模型和向量数据库
(1)嵌入模型的定义和作用 嵌入模型(Embedding Model)的本质在于将高维的、稀疏的数据转换为低维的、密集的向量表示,使得这些向量能够在数学空间中表达原始数据的语义信息。作用如下: 降维表示:…...
SLAM算法工程师面经大全:2025年面试真题解析与实战指南
SLAM算法工程师面经大全:2025年面试真题解析与实战指南 一、SLAM技术概述与核心原理 1.SLAM基础理论框架 SLAM算法的核心在于同步定位与建图,这一过程涉及传感器数据融合、运动建模与优化方法。在传感器数据融合方面,不同类型的…...
虚拟现实视频播放器 2.6.1 | 支持多种VR格式,提供沉浸式观看体验的媒体播放器
虚拟现实媒体播放器是一款专为在智能手机上播放VR(虚拟现实)照片和视频而设计的应用程序。它支持多种格式的影像内容,包括360和180等距矩形柱面、标准镜头和鱼眼镜头拍摄的照片和视频,并且兼容3D立体并排、上/下以及收缩媒体格式。…...
从黔西游船侧翻事件看极端天气预警的科技防线——疾风气象大模型如何实现精准防御?
近日,贵州省黔西市一起载人游船侧翻事故令人痛心。调查显示,事发时当地突遇强风暴雨,水面突发巨浪导致船只失控。这一事件再次凸显:在极端天气频发的时代,传统“经验式防灾”已不足够,唯有依靠智能化的气象预警技术,才能筑牢安全底线。 极端天气预警的痛点:为什么传统方…...
颠覆监测体验!WM102无线温湿度记录仪开启智能物联新时代
当温湿度失控成为企业隐形成本杀手,您是否还在用传统设备疲于应对?一款集智能、精准、全能于一身的神器横空出世——WM102无线温湿度记录仪,用硬核科技重新定义环境监测! ▌5大场景痛点 一招破解 无论是医药冷库里的疫苗守护战&am…...
Linux云服务器配置git开发环境
文章目录 1. 安装 git2. git clone3. git add .4. git commit -m 提交记录5. git push🍑 异常原因🍑 解决办法 6. git pull7. git log8. git rm9. git mv10. git status 1. 安装 git sudo yum install git -y2. git clone 此命令的作用是从远程仓库把代…...
山东大学软件学院项目实训-基于大模型的模拟面试系统-个人主页头像上传
采用图床的方案,存储用户头像。 实现步骤 引入OSS依赖 在我们的SpringBoot项目中引入OSS依赖 <dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.10.2</version> &l…...
AI智能体|扣子(Coze)实战【天气查询插件开发教程】
大家好,我是偶然,AI洞察,AI智能体,AI实战案例分享 今天教大家用 Coze 开发一个天气插件,本来我是想教大家怎么用 AI 写代码节点实现节点功能的,但是我感觉太复杂了。 起码来说,我还没做到用特别…...
VBA ListBox/ComboBox 响应鼠标滚轮操作
一般情况下,在Excel的vba窗口中,我们是无法使用鼠标滚轮控制例如 ListBox 和 ComboBox 控件的。我们只能通过鼠标点击的方式来逐个选择选项。 我们都知道,通过鼠标滚轮快速的上下滚动候选项,以快速的定位选择选项,这是…...
Linux 更改内存交换 swap 为 zram 压缩,减小磁盘写入
1、查看当前 swap 的方式 swapon --show 我这里是默认的 swap 文件,大小为 2G。 2、安装 zram Ubuntu 下: sudo apt install zram-tools安装后默认会启动: 3、关闭默认的 swap 文件 sudo swapoff /swapfile 其次是关闭 /etc/fstab 中的 …...
TypeScript简介
🌟 TypeScript入门 TypeScript 是 JavaScript 的超集,由微软开发并维护,通过静态类型检查和现代语言特性,让大型应用开发变得更加可靠和高效。 // 一个简单的 TypeScript 示例 interface User {name: string;age: number;greet():…...
Facebook如何运用AI实现元宇宙的无限可能?
引言 元宇宙(Metaverse)是一个虚拟的、由多个 3D 虚拟世界组成的网络,用户可以在其中进行互动、游戏、工作和社交。Facebook 作为全球最大的社交媒体平台之一,对元宇宙的构建和实现有着深远的影响。通过运用人工智能(…...
【大语言模型ChatGPT+Python】近红外光谱数据分析及机器学习与深度学习建模(近红外光谱数据分析、定性/定量分析模型代码自动生成等)
近红外光谱数据分析是一种重要的分析技术,广泛应用于化学、食品、制药、农业、环境科学等领域。以下是关于近红外光谱数据分析的详细介绍: 一、基本原理 近红外光谱的范围 近红外光谱是指波长范围在780 - 2500纳米的电磁辐射。在这个波段,分子…...