【论文阅读】LLMOPT:一种提升优化泛化能力的统一学习框架
文章目录
- 第一遍
- 一、摘要
- 二、关键词
- 三、预知识
- 1. 什么是优化泛化问题
- 2. 什么是消融研究
- 3. model alignment(模型对齐)
- 第二遍:了解论文论点
- 一、研究背景与目的
- 二、相关工作
- 三、LLMOPT框架
- 四、METHODOLOGY(方法论)
- 1. 数据处理
- 2. 学习过程
- 3. 自动测试
- 四、实验评估
- 五、讨论
论文地址:LLMOPT: LEARNING TO DEFINE AND SOLVE GENERAL OPTIMIZATION PROBLEMS FROM SCRATCH
第一遍
一、摘要
优化问题在多场景普遍存在,利用大语言模型(LLMs)实现自然语言描述的优化问题自动化虽有潜力,但存在优化泛化问题,当前LLM相关方法在建模优化问题类型的通用性和准确性上有限。
本文提出LLMOPT统一学习框架,从自然语言描述和预训练LLM出发,构建五元素公式,经多指令微调、模型对齐等,在约20个领域的6个真实数据集上实验,相比最先进方法,平均求解精度提高11.08%。
二、关键词
大语言模型;优化泛化;LLMOPT;五元素公式;模型对齐
提出LLMOPT框架来,统一学习框架来提升优化泛化能力。它从优化问题的自然语言描述和预训练 LLM 出发,构建五元素公式作为学习定义不同优化问题类型的通用模型;
- 采用多指令微调,提高问题形式化和求解器代码生成的准确性与通用性;
- 引入模型对齐和自校正机制,防止 LLMs 出现牺牲求解精度避免执行错误等 “幻觉” 问题。
三、预知识
1. 什么是优化泛化问题
优化泛化问题是指在利用大语言模型(LLMs)处理优化问题时,模型在求解优化问题的准确性以及能够处理的优化问题类型的通用性方面存在限制的情况。具体来说,就是模型可能无法准确地解决各种不同类型的优化问题,或者在面对新的、未曾见过的优化问题场景时,表现出较差的适应性和求解能力。
以下是一些优化泛化问题的简略示例:
- 生产调度:LLM - 基于的系统在常规生产场景表现好,但面对设备故障、紧急订单等特殊情况时,因训练数据覆盖不足,难以准确调整调度方案,导致生产问题。
- 物流配送:基于LLM的规划模型依据常规路况数据训练,遇到交通管制、道路施工等特殊情况,无法合理调整路线,致使配送效率降低。
- 投资组合:LLM - 驱动的模型在平稳市场能提供合理投资建议,但在市场波动、政策调整或有新产品时,难以准确调整策略,影响投资收益。
在nl2sql(自然语言到SQL的转换)中,优化泛化问题也较为突出,以下是一些实际例子:
- 复杂查询场景:当用户输入“找出过去一年中销售额最高的产品类别,且该类别产品在每个季度的销售增长率都超过10%”这样复杂的自然语言查询时,nl2sql系统可能在训练数据中较少遇到这种同时涉及时间范围、聚合计算以及条件筛选的复杂组合情况。因此,可能无法准确生成对应的SQL语句,导致查询结果不准确或无法查询出结果,体现了模型在处理复杂查询场景下的优化泛化能力不足。
- 数据库结构变化:如果数据库中新增了一些表或字段,例如在原有的销售数据库中新增了“产品退货率”字段,而nl2sql模型在训练时并未接触到这些新结构。当用户询问“找出退货率最低的产品及其销售额”时,模型可能无法正确将自然语言转换为包含新字段的SQL语句,因为它难以适应数据库结构的变化,这显示了模型在面对数据库结构动态变化时的泛化能力有限。
- 语义模糊问题:自然语言中存在语义模糊性,如“查找最近畅销的商品”,“最近”可以有多种理解,可能是近一周、近一个月或其他时间范围。nl2sql模型如果在训练过程中没有充分学习到如何处理这种模糊语义,就可能无法准确确定用户意图,生成的SQL语句可能会按照默认的时间范围进行查询,导致结果与用户期望不符,这反映了模型在处理语义模糊的自然语言查询时优化泛化能力有待提高。
2. 什么是消融研究
Ablation studies即消融研究,是一种在机器学习、深度学习等领域广泛应用的研究方法,用于评估模型中不同组件或操作对模型整体性能的贡献。
具体来说,消融研究通过逐步移除或修改模型的某些部分,然后观察模型性能的变化,以此来确定这些部分对模型性能的影响。例如,在研究一个图像识别模型时,可能会进行以下消融研究:
- 移除某个卷积层:观察模型对图像特征提取能力的变化,以及对最终识别准确率的影响,从而判断该卷积层在模型中的重要性。
- 改变损失函数的某个部分:看模型的收敛速度、稳定性以及最终的性能指标如何变化,以分析该部分损失函数对模型训练的作用。 在上述论文中,通过消融研究来验证问题定义(五元素公式)和模型对齐对提高模型准确性的贡献,即分别去掉这两个部分或改变相关设置,观察模型在解决优化问题时的准确性变化,从而明确它们在LLMOPT框架中的重要性。
3. model alignment(模型对齐)
model alignment(模型对齐)是指为了进一步提升模型的准确性并降低幻觉风险而采取的一系列措施。
模型对齐旨在让模型的输出更符合实际问题的要求,使模型在处理和解决问题时能够遵循特定的规则和目标,减少产生不合理或错误输出的可能性。例如,在处理优化问题时,通过模型对齐可以让模型更好地理解问题的约束条件和目标函数,从而给出更准确、更符合实际情况的解决方案,避免出现与实际问题不相符的“幻觉”结果。
更广泛地说,在人工智能领域,模型对齐通常涉及到使模型的行为、输出或内部表示与某种外部标准或期望的行为保持一致。这可能包括将模型的预测与人类专家的判断对齐,或者使模型在不同的任务或数据集上表现出一致且合理的行为。通过模型对齐,可以提高模型的可靠性、可解释性和实用性,使其更好地适应各种实际应用场景。
第二遍:了解论文论点
一、研究背景与目的
- 优化问题现状与挑战:优化问题广泛存在,如作业调度、路径规划等,但从自然语言描述中定义和解决需专业知识、专家参与和大量时间,阻碍了基于优化的决策广泛应用。利用LLMs实现自动化存在优化泛化问题,即模型在求解准确性和处理问题类型的通用性方面受限。
- 研究目的:提出LLMOPT框架,提升优化泛化能力,解决准确性和通用性问题,使模型更好适用于实际场景。
二、相关工作
- LLMs用于构建和解决优化问题:
- 背景:NL4Opt竞赛推动相关研究,工作分为基于提示和基于学习的方法。
- 基于提示的方法:如Chain-of-Expert引入基于智能体工作流程,OptiMUS采用定制提示解决线性和混合整数线性规划问题。
- 基于学习的方法:相对研究不足,如LLaMoCo引入指令微调框架,ORLM提出半自动化生成合成训练数据方法,Mamo提供数学建模基准及生成求解器代码的标准化流程。
- LLMs作为优化器组件:
- 杨等人受贝叶斯优化启发,提出用LLMs作优化器,一个LLM迭代优化提示词,引导另一个LLM执行特定优化任务。
- LLMs可充当优化器组件,如用于遗传算法的交叉和变异算子、生成轨迹优化解决方案、用于多目标优化任务、在贝叶斯优化中模拟采集函数和代理模型等。
三、LLMOPT框架
- 数据:
- 五元素公式:提出五元素公式(集合、参数、变量、目标和约束)定义优化问题,能准确表述问题,增强泛化能力,如捕捉隐含的正整数约束,可定义多种类型优化问题。
- 数据收集与划分:收集多个现有优化问题数据集,划分测试集与训练集,确保数据分离。
- 数据增强与标注:利用LLMs通过提示工程扩充数据,专家审查确保质量,进行数据标注,产生适合多指令监督微调(SFT)和模型对齐的数据。
- 学习:
- 多指令SFT:采用多指令监督微调,通过专家标注的多指令数据集提升LLMs定义和解决问题的准确性,目标是最大化条件概率。
- 模型对齐:引入模型对齐,采用卡尼曼-特沃斯基优化(KTO)算法,依据指令、补全内容和可取性数据对齐模型,减少幻觉,提升性能。
- 自动测试:依据五元素框架构建问题、生成并执行求解器代码、分析运行日志判断是否自校正,自校正机制提升优化泛化能力。
四、METHODOLOGY(方法论)
LLMOPT框架的方法论,旨在通过基于学习的方法实现优化问题定义和求解的更好优化泛化能力。
LLMOPT框架包含数据、学习和自动测试三个关键部分。通过引入五元素公式定义优化问题、进行多指令监督微调(SFT)和模型对齐提高求解准确性,以及带有自校正功能的自动测试过程,实现优化泛化。
1. 数据处理
- 定义问题:提出五元素公式(集合、参数、变量、目标和约束)定义一般优化问题。它基于优化问题的数学表达式,能保留关键信息,更准确表述问题,且易于大语言模型理解,可定义多种类型优化问题,增强优化泛化能力。
- 数据增强与标注:收集现有优化问题数据集,划分测试集与训练集。利用大语言模型通过提示工程对种子问题应用多种指令进行数据扩充,专家审查确保数据质量和多样性。专家使用五元素公式和求解器代码标注优化问题,GPT-4也生成标注,经专家验证产生完全准确和有潜在错误但经专家验证的两种标注数据,适用于多指令监督微调与模型对齐。
2. 学习过程
- 多指令SFT:采用多指令监督微调,多指令数据集由专家标注,包括问题构建数据集和求解数据集,分别提升大语言模型定义问题和生成求解器代码的能力。微调目标是最大化条件概率,通过最小化负对数似然实现。
- 模型对齐:引入模型对齐减轻大语言模型面对新问题时的幻觉,采用卡尼曼-特沃斯基优化(KTO)算法作为对齐方法,避免奖励模型偏差且减少数据需求。KTO依据(指令、补全内容、可取性)数据对齐模型,其使用的数据集包含GPT-4生成的补全内容及专家赋予的可取性标签,专家通过赋予可取性标签达成模型对齐。通过相关公式推导得出KTO损失函数,促使KTO模型生成与专家标注数据更相符的补全内容,提升优化泛化能力。
3. 自动测试
- 过程步骤:依据自然语言描述,利用五元素框架构建优化问题,针对五元素公式生成并执行求解器代码,分析求解器运行日志判断是否需自校正,实现问题定义和代码生成流程自动化并集成自校正机制。
- 自校正功能:受启发实现自校正,自动分析输出结果、识别代码执行错误。指令按问题、五元素公式、代码及执行结果组织,遵循特定模板。自校正大语言模型判断是否需进一步处理或已得最优解,若需处理则生成带建议分析并决定返回问题构建或代码生成步骤,提升优化泛化能力,特别是问题构建和最终解的准确性。
四、实验评估
- 实验设置:基于Qwen1.5-14B进行SFT和模型对齐,在六个真实数据集上与多种方法比较,用执行率(ER)、求解准确率(SA)和平均求解次数(AST)评估性能。
- 优化泛化分析:
- 将LLMOPT与基于提示、基于学习的方法以及GPT-4进行比较,展示其优化泛化能力。
- 在Qwen1.5-14B上进行SFT的LLM性能可与GPT-4o相当,完整的LLMOPT在六个数据集上优于GPT-4o和GPT-4-Turbo。
- LLMOPT在六个数据集的求解准确率(SA)达SOTA,相比基于学习的方法,五元素公式定义和自校正使四个数据集准确率平均提升14.83%;相比基于提示的方法,SFT和模型对齐让三个数据集平均提升10.67%,六个数据集上平均提升当前最优性能11.08%。
- 在六个涵盖多种优化类型和20多个领域的数据集上测试,LLMOPT取得SOTA结果,展示了高准确性和通用性。
- 消融研究:
- 进行全面消融实验,包括无五元素公式、无KTO对齐、无自校正的LLMOPT实验。
- 五元素公式作问题定义提高六个数据集的SA,但有时会降低ER,以略降ER为代价确保正确代码生成,提高SA。
- KTO对齐显著提高六个数据集的SA并减少AST,五元素和KTO对齐结合在复杂数据集上提升SA和AST方面的性能。
五、讨论
- 在更大模型上的尝试:在Qwen2-72B上部署LLMOPT性能提升,但考虑性能与成本权衡,Qwen1.5-14B已达最优性能,未选更大模型。
- 与OpenAI o1模型的比较:OpenAI o1模型推理能力强但有使用限制,LLMOPT微调开源模型在实际工业场景更具成本效益。
- 大语言模型的跷跷板问题:在10个通用任务上比较模型微调前后性能,微调后6个任务性能提升,4个下降,平均提升0.3%,未观察到明显跷跷板效应。
- 高质量数据的重要性:高质量数据对LLMs微调关键,现有优化问题数据稀缺且标注质量低,数据扩充和标注存在挑战。
- 未来研究问题:需高效收集、合成并生成更多样化且标注良好的高质量数据,探索大规模问题数据结构。
相关文章:
【论文阅读】LLMOPT:一种提升优化泛化能力的统一学习框架
文章目录 第一遍一、摘要二、关键词三、预知识1. 什么是优化泛化问题2. 什么是消融研究3. model alignment(模型对齐) 第二遍:了解论文论点一、研究背景与目的二、相关工作三、LLMOPT框架四、METHODOLOGY(方法论)1. 数据处理2. 学习过程3. 自…...
Prompt多版本测试指南:如何科学评估不同提示词的效果
对于现代AI开发来说,同一个需求,不同的提示表达方式往往会产生截然不同的结果。因此,如何设计、测试和优化提示词成为了一项关键技能。 本文将深入探讨Prompt多版本测试的技术方法,帮助你系统性地评估不同提示词的效果࿰…...
每日c/c++题 备战蓝桥杯(洛谷P1015 [NOIP 1999 普及组] 回文数)
洛谷P1015 [NOIP 1999 普及组] 回文数 题解 题目描述 P1015 回文数 是NOIP 1999普及组的经典模拟题。题目要求如下: 给定一个数N(十进制)和进制K(2≤K≤16),将N转换为K进制表示后,通过以下操…...
最小单调子序列的长度+联通最小乘积
因为题目ICPC是英文版,基于大家都不怎么看的懂的情况下直接给大家进行题目讲解 题目1: 题目分析: 构造一个长度为n的排列 p(里面的数是1-n),不能重复得 max(lis(p),lds(p)) 最小。 其中,lis(p)是 p 的最长递增子序…...
OpenHarmony平台驱动开发(一),ADC
OpenHarmony平台驱动开发(一) ADC 概述 功能简介 ADC(Analog to Digital Converter),即模拟-数字转换器,可将模拟信号转换成对应的数字信号,便于存储与计算等操作。除电源线和地线之外&#…...
数据结构与算法:回溯
回溯 先给出一些leetcode算法题,以后遇见了相关题目再往上增加 主要参考代码随想录 2.1、组合问题 关于去重:两种写法的性能分析 需要注意的是:使用set去重的版本相对于used数组的版本效率都要低很多,大家在leetcode上提交&#x…...
KaiwuDB X 遨博智能 | 构建智能产线监测管理新系统
01 项目背景 遨博智能作为国内协作机器人行业领军企业,深度布局制造、农业、医疗、教育、民生等场景,出货量连续四年蝉联国内第一、世界第二。随着工业自动化的蓬勃发展,遨博智能生产规模不断扩大,先后在常州、淄博等地建设完成…...
高等数学第三章---微分中值定理与导数的应用(§3.6 函数图像的描绘§3.7 曲率)
3.6 函数图像的描绘 一、曲线的渐近线 对于某些函数,其图形向无穷远处延伸时,会越来越趋近于某一条直线,这条直线被称为曲线的渐近线 (Asymptote)。 1. 定义 若曲线 y f ( x ) yf(x) yf(x) 上一点 P ( x , y ) P(x, y) P(x,y) 沿曲线趋…...
【PostgreSQL数据分析实战:从数据清洗到可视化全流程】4.2 数据类型转换(CAST函数/自定义函数)
👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 PostgreSQL数据分析实战:数据清洗之数据类型转换(CAST函数/自定义函数)4.2 数据类型转换:让数据「格式正确,类型对…...
docker:制作镜像+上传镜像+拉取镜像
1.dockerfile制作镜像 示例内容: 1.创建一个index.js的文件 console.log("hello world")2.在相同目录下创建名为dockerfile的文件 FROM node:alpine COPY index.js /index.js CMD node /index.js3.构建镜像 docker build -t minterra/hello-docker . …...
信息系统监理师第二版教材模拟题第三组(含解析)
信息系统监理师模拟题第三组(30题) 监理基础理论 信息系统工程监理的性质是( ) A. 服务性、独立性、公正性、科学性 B. 强制性、营利性、行政性、技术性 C. 临时性、从属性、随意性、主观性 D. 单一性、封闭性、被动性、保守性答案:A 解析:监理具有服务性、独立性、公正…...
潮乎盲盒商城系统全开源多级分销推广海报奖品兑换试玩概率OSS云存储多端源码
一、源码描述 这是一套潮乎盲盒商城源码,仿小叮当盲盒商城,后端Laravel框架前端uniappvue,前后端数据库分离,支持四端同步数据(H5小程序等),测试环境: php7.4,mysql5.6,…...
文章记单词 | 第64篇(六级)
一,单词释义 residence [ˈrezɪdəns] n. 住宅;居住;住所;居住期fling [flɪŋ] v. (用力地)扔,掷,抛;猛动(身体或身体部位);急冲&a…...
数据同步实战篇
文章目录 数据同步实战篇1. mysql数据同步1.1 mysql集群部署1.2 数据同步1.2.1 同步复制1.2.2 异步复制1.2.3 半同步复制 2. redis数据同步2.1 redis集群部署2.2 数据同步 3. mq数据同步3.1 mq集群部署3.2 数据同步 4. es数据同步4.1 es集群部署4.2 数据同步 数据同步实战篇 数…...
具身系列——Double DQN算法实现CartPole游戏(强化学习)
完整代码参考: rl/ddqn_cartpole.py 陈先生/ailib - Gitee.com 部分训练得分: Model saved to ./output/best_model.pth New best model saved with average reward: 9.6 Episode: 0 | Train Reward: 25.0 | Epsilon: 0.995 | Best Eval Avg: 9.6…...
以下是在 Ubuntu 上的几款PDF 阅读器,涵盖轻量级、功能丰富和特色工具:
默认工具:Evince(GNOME 文档查看器) 特点:Ubuntu 预装,轻量快速,支持基本标注和书签。 安装:已预装,或手动安装: sudo apt install evince功能全面:Okular&…...
有关水下图像增强的论文
4.21 TEBCF:Real-World Underwater Image Texture Enhancement Model Based on Blurriness and Color Fusion 基于模糊和颜色融合的现实水下图像纹理增强模型 2022年的一篇文章,基于传统方法,基于不同的色彩方法构建了两个新的融合输入。一…...
Raycaster光线投射
Raycaster光线投射 3D虚拟工厂在线体验 描述 光线投射Raycaster,用于进行raycasting(光线投射)。 光线投射用于进行鼠标拾取(在三维空间中计算出鼠标移过了什么物体)。 构造器 Raycaster( origin : Vector3, dire…...
javaEE——单例模式
目录 前言1.概念2. 实现3. 比较和改进总结 前言 本篇文章来介绍单例模式,并讲述在保证线程安全的前提下,单例模式的写法。 1.概念 单例模式是一种设计模式,可以说是写代码的一种模板,如果在一些固定的场景下按照设计模式进行写…...
WSL在D盘安装Ubuntu
目录 前提条件步骤一:查看可用的Linux发行版步骤二:安装Ubuntu 22.04步骤三:导出已安装的Ubuntu到D盘步骤四:注销当前Ubuntu安装步骤五:在D盘导入Ubuntu启动Ubuntu 前提条件 Windows 10或Windows 11系统已启用WSL功能…...
Java并发编程-多线程基础(三)
文章目录 线程间通信线程间通信的核心问题volatile 关键字1. 核心特性2. 使用限制3. 示例 synchronized 关键字1. 核心特性2. 示例 volatile 与 synchronized 的对比Volatile 和 Synchronized 最佳实践 线程间通信 线程间通信的核心问题 多个线程通过共享内存实现信息交换&am…...
React--》掌握react构建拖拽交互的技巧
在这篇文章中将深入探讨如何使用react-dnd,从基础的拖拽操作到更复杂的自定义功能带你一步步走向实现流畅、可控且用户友好的拖拽体验,无论你是刚接触拖拽功能的初学者还是想要精细化拖拽交互的经验开发者,都能从中找到适合自己的灵感和解决方案。 目录 …...
【Qt】常用的类与数据类型
目录 一、Qt常见基本数据类型 二、Qt 字符串类应用 2.1 操作字符串 2.2 查询字符串 三、QMap 类&QHash 类&QVector 类 3.1 QMap 类 3.2 QHash 类 3.3 QVector 类 四、QList 类&QLinkedList 类 4.1 QList 类 4.2 QLinkedList 类 4.3 STL 风格迭代器遍历…...
React实现B站评论Demo
该Demo涉及的技术点 useState函数(数据驱动视图)子组件的封装条件判断回调函数的封装 1、评论数据 {"list": [{"rpid": 3,"user": {"uid": "13258165","avatar": "http://toutiao.…...
从实列中学习linux shell12 通过Shell脚本来优化MySQL数据库性能,特别是慢SQL跟踪和索引优化
在Shell脚本中优化MySQL数据库性能,特别是慢SQL跟踪和索引优化 可以通过以下步骤实现。以下是一个结构化的解决方案,包含示例代码和详细说明: 1. 启用慢查询日志 目标:动态启用慢查询日志并配置参数,收集慢SQL数据。…...
ES6入门---第三单元 模块一:类、继承
补充: prototype 属性使您有能力向对象添加属性和方法。 object.prototype.namevalue <script>function Person(name, age){this.name name;this.age age;}/* Person.prototype.showName function(){return 名字为: ${this.name};};Person.prototype.showA…...
CSS 变量与原生动态主题实现
CSS 变量与原生动态主题实现 CSS 变量基础 CSS 变量(自定义属性)是 CSS 语言的一项强大功能,允许我们在样式表中定义和重用值。与 SCSS 或 LESS 等预处理器中的变量不同,CSS 变量在运行时计算,这意味着它们可以动态更…...
Ubuntu 安装 Docker
安装 Docker 1. 卸载旧版本(如果有) sudo apt-get remove docker docker-engine docker.io containerd runc 2. 更新 APT 包的索引 sudo apt-get update 3. 安装依赖包 sudo apt-get install -y \ca-certificates \curl \gnupg \lsb-release4. 添加…...
SpringMVC——第三章:获取请求数据
假设有这样一个请求:http://localhost:8080/springmvc/register?namezhangsan&password123&emailzhangsanpowernode.com 在SpringMVC中应该如何获取请求提交的数据呢? 在SpringMVC中又应该如何获取请求头信息呢? 在SpringMVC中又应…...
动静态库【Linux操作系统】
文章目录 动静态库制作静态库如何把第三方库安装在Linux系统中,如何使用第3方库方案一:为什么我们之前使用gcc/g编译C/C标准库的时候不用加选项-l xxx呢?方案二:方案三: 为什么不同平台的库不一样呢?动态库…...
Day 4:牛客周赛Round 91
好久没写了,问题还蛮多的。听说这次是苯环哥哥出题 F题 小苯的因子查询 思路 考虑求因子个数,用质因数分解;奇数因子只需要去掉质数为2的情况,用除法。 这里有个比较妙的细节是,提前处理出数字x的最小质因数࿰…...
drawDB:打造高效数据库设计流程
drawDB:打造高效数据库设计流程 drawDB 简介资源链接 核心功能详解1. 直观的实体关系图设计2. SQL 脚本生成3. SQL 导入功能4. 本地化存储与分享功能5. 自定义主题与外观 安装和使用教程本地开发环境搭建构建生产版本Docker 部署基本使用方法 应用场景和实际价值适用…...
【心海资源】子比主题新增注册与会员用户展示功能模块及实现方法
内容改写: 本次分享的是子比主题顶部展示注册用户与会员信息的功能模块及其实现方式。 你可以通过两种方式启用该功能: 直接在后台进入“外观 → 小工具”启用该展示模块,操作简便;也可将提供的代码覆盖至子比主题目录中&#…...
gitblit安装教程,搭建一个属于自己的Git版本仓库
本章教程,主要记录如何在Windows服务器上利用gitblit搭建GIT私有化仓库。 一、gitblit简介 官网地址:https://www.gitblit.com/ Gitblit 是一个开源的纯 Java 技术栈,用于管理、查看和服务Git仓库。 它主要设计为一款面向希望托管集中式仓库的小型工作组的工具。 二、基础环…...
2023年第十四届蓝桥杯省赛B组Java题解【简洁易懂】
2023年第十四届蓝桥杯省赛B组Java题解 题型概览与整体分析 题目编号题目名称题型难度核心知识点通过率(预估)A阶乘求和结果填空★☆☆模运算、数学规律95%B幸运数字结果填空★★☆进制转换、数位和计算80%C数组分割编程题★★☆组合数学、奇偶性分析65…...
Javase 基础加强 —— 01 异常
本系列为笔者学习Javase的课堂笔记,视频资源为B站黑马程序员出品的《黑马程序员JavaAI智能辅助编程全套视频教程,java零基础入门到大牛一套通关》,章节分布参考视频教程,为同样学习Javase系列课程的同学们提供参考。 01 课程安排…...
iview 表单验证问题 Select 已经选择 还是弹验证提示
问题:iview 的 Select 下拉框的时候,数据验证必填,明明选择了数据,却一直提示验证不能通过 html代码: <Form ref"FormData" :model"FormData" :rules"ruleValidate" :label-width&qu…...
OrCAD中离图连接器、端口及网络标签的作用范围与选择指南
一、OrCAD主要连接元素概述 在OrCAD Capture原理图设计环境中,有三种主要的网络连接元素:离图连接器(Off-Page Connector)、端口(Port)和网络标签(Net Alias)。理解它们的作用范围和使用场景对设计清晰、可维护的原理图至关重要。 PS: 电源和…...
dpm_sysfs_add
这段代码是 Linux 内核中**设备电源管理(PM)子系统**与 **sysfs 文件系统**交互的核心实现,主要功能是为设备创建电源管理相关的 sysfs 属性文件。以下从五个关键维度进行深度解析: --- ### 一、功能架构全景 mermaid graph TD …...
【AI论文】Phi-4-reasoning技术报告
摘要:我们引入了Phi-4-reasoning,这是一种拥有140亿参数的推理模型,在复杂的推理任务中表现出了强大的性能。 通过监督式微调Phi-4,在精心策划的“可教”提示集上进行训练,这些提示集是根据复杂性和多样性的适当水平选…...
Android ART运行时无缝替换Dalvik虚拟机的过程分析
目录 一,概述 二,dex文件优化 一,概述 Android 4.4发布了一个ART运行时,准备用来替换掉之前一直使用的Dalvik虚拟机,希望籍此解决饱受诟病的性能问题。老罗不打算分析ART的实现原理,只是很有兴趣知道ART是如何无缝替换掉原来的Dalvik虚拟机…...
node.js为什么产生?
从官网得知介绍如下 https://nodejs.org/zh-cn/learn/getting-started/introduction-to-nodejs Node.js是一个开源和跨平台的JavaScript运行时环境。 Node.js在浏览器之外运行V8 JavaScript引擎,这是Google Chrome的核心。这使得Node.js具有很高的性能。 Node.js应…...
智能工厂边缘计算:从数据采集到实时决策
智能工厂边缘计算:从数据采集到实时决策 引言 在智能制造场景中,传统云计算架构面临三大核心挑战:平均200ms的网络延迟无法满足实时控制需求,90%的工业数据未被有效利用,以及每月高达15TB的数据传输成本。边缘计算技术通过将计算能力下沉到数据源头,正在构建"端-边…...
个人健康中枢的多元化AI网络革新与精准健康路径探析
引言 随着数字化转型的深入推进,个人健康中枢作为集成化健康管理系统,正在从传统的单一功能向多元化的AI驱动方向快速发展。在这一背景下,新兴网络硬件技术,特别是DPU(数据处理单元)和全光网络的出现,为个人健康中枢的革新提供了前所未有的机遇。本研究将深入探讨这些技…...
前端面试宝典---性能优化
一、加载优化 1. 第三方模块放在CDN 例如 leaflet通过cdn引入,这样就不会占用打包体积了 2. prefetch 预加载 例如,之后马上有个场景需要一个图片,我们就可以通过link 的 prefetch 对资源进行预先加载 再例如,我们公司是无网络开…...
【Springboot进阶】springboot+mybatis+jsqlparser实现数据权限控制
文章目录 SpringBoot JSqlParser MyBatis 数据权限实现方案一、环境准备1. 添加依赖 二、用户上下文管理1. 用户上下文持有类 三、数据权限拦截器实现1. MyBatis拦截器核心类 四、Spring Security集成1. 用户信息注入 五、配置项示例application.yml 六、使用示例1. 业务查询…...
【PostgreSQL数据分析实战:从数据清洗到可视化全流程】2.3 窗口函数与高级聚合(ROW_NUMBER()/RANK()/SUM() OVER())
👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 PostgreSQL窗口函数与高级聚合:从排序到动态分析的全场景应用1. 窗口函数核心概念解析1.1 窗口函数语法结构1.2 核心组成要素2. 排名窗口函数深度解析2.1 ROW_NUMBER():唯一顺序排名示例演示2.2 `RANK…...
python全自动爬取m3u8网页视频(各类网站都通用)
当前人工智能,大语言模型的火热,使得python这门编程语言的使用越来越广泛。最近也开始学习了python,发现它在自动化方面的确有得天独厚的优势。python的简单易用,丰富的开源库,完善的生态,使得它有可能成为…...
C++负载均衡远程调用学习之上报功能与存储线程池
目录 1. Lars-reportV0.1 report模块介绍 2.Lars-reporterV0.1 reporter项目目录构建 3.Lars-ReporterV0.1 数据表和proto协议环境搭建 4.Lars-ReporterV0.1上报请求业务处理 5.Lars-ReporterV0.1上报请求模块的测试 6.Lars-ReporterV0.2开辟存储线程池-网络存储分离 1. L…...
今天python练习题
目录 一、每日一言 二、练习题 三、效果展示 四、下次题目 五、总结 一、每日一言 不要害怕失败,失败可能成为我们前进的动力! 二、练习题 有列表lst [[1,2,3],[4,5,6],[7,8,9]],取出其中的元素1/5/9组成新的列表 # 有列表lst [[1,2,3],[4,5,6],[…...