当前位置: 首页 > news >正文

deepseek的CoT优势、两阶段训练的有效性学习笔记

文章目录

  • 1 DeepSeek的CoT思维链的优势
    • 1.2 open-r1的CoT训练数据
    • 1.3 ReAct任务与CoT任务适用场景
  • 2 AI推理方向:deepseek与deepmind的两条路线的差异
    • 2.1 PRM与ORM的两大学派分支的差异
    • 2.2 DeepSeek-R1的两阶段训练概述


1 DeepSeek的CoT思维链的优势

DeepSeek跟之前市面上很多其他的大模型,比如豆包、通义、文心存在一定的差异;
如图,来自清华大学新媒体研究中心的报告《DeepSeek:从入门到精通》举了两种的差异

  • 常规的是概率预测(这里其实有点歧义,后者也是…我感觉可以说是,问答单机版);
  • 后者是链式推理,这里就要强调思维链的过程。
    在这里插入图片描述
    比如一个思维过程就是:
问题:A有3本书,B比A多2本,C比B少1本,C有几本?
思考过程:
- A有3本书 → B有3+2=5本 → C有5-1=4本 → 答案是4。问题:(用户的新问题)
思考过程:

CoT 的优点:

  • CoT 通过将复杂问题分解为多步骤的子问题,相当显著的增强了大模型的推理能力
  • CoT 使得大模型通过向我们展示“做题过程”,使得我们可以更好的判断大模型在求解当前问题上究竟是如何工作的
  • 让大模型一步一步输出步骤,我们通过这些步骤的呈现可以对大模型问题求解的过程施加更大的影响

1.2 open-r1的CoT训练数据

开源22万条DeepSeek R1的高质量数据!你也能复现DeepSeek了

笔者一直好奇该准备怎么样的数据集,才值得做训练,可以看一下这里面的开源数据集:
在这里插入图片描述

挑一个例子出来看看:

<问题>
## Task B-1.3. A ship traveling along a river has covered $24 \mathrm{~km}$ upstream and $28 \mathrm{~km}$ downstream. For this journey, it took half an hour less than for traveling $30 \mathrm{~km}$ upstream and $21 \mathrm{~km}$ downstream, or half an hour more than for traveling $15 \mathrm{~km}$ upstream and $42 \mathrm{~km}$ downstream, assuming that both the ship and the river move uniformly. Determine the speed of the ship in still water and the speed of the river.<解题过程>
## Solution. Let $t$ be the time required for the boat to travel $24 \mathrm{~km}$ upstream and $28 \mathrm{~km}$ downstream, $v_{R}$ the speed of the river, and $v_{B}$ the speed of the boat. When the boat is traveling upstream, its speed is $v_{B}-v_{R}$, and when it is traveling downstream, its speed is $v_{B}+v_{R}$. Since $t=\frac{s}{v}$, from the given data, we obtain the following system of equations: $\left\{\begin{array}{l}t=\frac{24}{v_{B}-v_{R}}+\frac{28}{v_{B}+v_{R}} \\ t+0.5=\frac{30}{v_{B}-v_{R}}+\frac{21}{v_{B}+v_{R}} \\ t-0.5=\frac{15}{v_{B}-v_{R}}+\frac{42}{v_{B}+v_{R}}\end{array}\right.$ By introducing new variables $x=\frac{3}{v_{B}-v_{R}}, y=\frac{7}{v_{B}+v_{R}}$, the system transforms into: $\left\{\begin{array}{l}t=8 x+4 y \\ t+0.5=10 x+3 y \\ t-0.5=5 x+6 y\end{array}\right.$ Substituting $t$ from the first equation into the remaining two, we get: $\left\{\begin{array}{l}8 x+4 y+0.5=10 x+3 y \\ 8 x+4 y-0.5=5 x+6 y\end{array}\right.$ $\left\{\begin{array}{l}2 x-y=0.5 \\ 3 x-2 y=0.5\end{array}\right.$ The solution to the last system is (0.5, 0.5). Then we have: $\frac{3}{v_{B}-v_{R}}=0.5$, hence, $v_{B}-v_{R}=6 \mathrm{~and}$ $\frac{7}{v_{B}+v_{R}}=0.5$, hence, $v_{B}+v_{R}=14$. The speed of the river is $v_{R}=4 \mathrm{~km} / \mathrm{h}$, and the speed of the boat is $v_{B}=10 \mathrm{~km} / \mathrm{h}$. ## Note: By substituting $x=\frac{1}{v_{B}-v_{R}}, y=\frac{1}{v_{B}+v_{R}} \mathrm{~and}$ following the same procedure, the initial system transforms into the system $\left\{\begin{array}{l}6 x-7 y=0.5 \\ 9 x-14 y=0.5\end{array}\right.$ The solution to this system is $\left(\frac{1}{6}, \frac{1}{14}\right)$.<答案>
v_{R}=4\mathrm{~}/\mathrm{},v_{B}=10\mathrm{~}/\mathrm{}

解题过程再贴一下:

##Solution.
Let t t t be the time required for the boat to travel 24 k m 24 \mathrm{~km} 24 km upstream and 28 k m 28 \mathrm{~km} 28 km downstream, v R v_{R} vR the speed of the river, and v B v_{B} vB the speed of the boat. When the boat is traveling upstream, its speed is v B − v R v_{B}-v_{R} vBvR, and when it is traveling downstream, its speed is v B + v R v_{B}+v_{R} vB+vR.
Since t = s v t=\frac{s}{v} t=vs, from the given data, we obtain the following system of equations:
{ t = 24 v B − v R + 28 v B + v R t + 0.5 = 30 v B − v R + 21 v B + v R t − 0.5 = 15 v B − v R + 42 v B + v R \left\{\begin{array}{l}t=\frac{24}{v_{B}-v_{R}}+\frac{28}{v_{B}+v_{R}} \\ t+0.5=\frac{30}{v_{B}-v_{R}}+\frac{21}{v_{B}+v_{R}} \\ t-0.5=\frac{15}{v_{B}-v_{R}}+\frac{42}{v_{B}+v_{R}}\end{array}\right. t=vBvR24+vB+vR28t+0.5=vBvR30+vB+vR21t0.5=vBvR15+vB+vR42
By introducing new variables x = 3 v B − v R , y = 7 v B + v R x=\frac{3}{v_{B}-v_{R}}, y=\frac{7}{v_{B}+v_{R}} x=vBvR3,y=vB+vR7,
the system transforms into:
{ t = 8 x + 4 y t + 0.5 = 10 x + 3 y t − 0.5 = 5 x + 6 y \left\{\begin{array}{l}t=8 x+4 y \\ t+0.5=10 x+3 y \\ t-0.5=5 x+6 y\end{array}\right. t=8x+4yt+0.5=10x+3yt0.5=5x+6y
Substituting t t t from the first equation into the remaining two, we get:
{ 8 x + 4 y + 0.5 = 10 x + 3 y 8 x + 4 y − 0.5 = 5 x + 6 y \left\{\begin{array}{l}8 x+4 y+0.5=10 x+3 y \\ 8 x+4 y-0.5=5 x+6 y\end{array}\right. {8x+4y+0.5=10x+3y8x+4y0.5=5x+6y
{ 2 x − y = 0.5 3 x − 2 y = 0.5 \left\{\begin{array}{l}2 x-y=0.5 \\ 3 x-2 y=0.5\end{array}\right. {2xy=0.53x2y=0.5

The solution to the last system is (0.5, 0.5).
Then we have: 3 v B − v R = 0.5 \frac{3}{v_{B}-v_{R}}=0.5 vBvR3=0.5,
hence, v B − v R = 6 a n d v_{B}-v_{R}=6 \mathrm{~and} vBvR=6 and 7 v B + v R = 0.5 \frac{7}{v_{B}+v_{R}}=0.5 vB+vR7=0.5,
hence, v B + v R = 14 v_{B}+v_{R}=14 vB+vR=14.
The speed of the river is v R = 4 k m / h v_{R}=4 \mathrm{~km} / \mathrm{h} vR=4 km/h,
and the speed of the boat is v B = 10 k m / h v_{B}=10 \mathrm{~km} / \mathrm{h} vB=10 km/h.
##Note:
By substituting x = 1 v B − v R , y = 1 v B + v R a n d x=\frac{1}{v_{B}-v_{R}}, y=\frac{1}{v_{B}+v_{R}} \mathrm{~and} x=vBvR1,y=vB+vR1 and following the same procedure, the initial system transforms into the system { 6 x − 7 y = 0.5 9 x − 14 y = 0.5 \left\{\begin{array}{l}6 x-7 y=0.5 \\ 9 x-14 y=0.5\end{array}\right. {6x7y=0.59x14y=0.5
The solution to this system is ( 1 6 , 1 14 ) \left(\frac{1}{6}, \frac{1}{14}\right) (61,141).

1.3 ReAct任务与CoT任务适用场景

两个任务有相似,有不同,应用场景区分:
CoT(Chain-of-Thought)任务

  • 静态推理链:模型在单次生成中输出完整的中间步骤,无需与外部系统交互。
  • 外部依赖:无需调用外部工具或数据源,完全依赖模型内部知识生成推理链。
  • 模型调用方式:单次调用生成完整推理链。
  • 线性结构:仅包含“推理”环节,例如:
问题:小明有5个苹果,吃掉2个后买了3个,现在有多少?  
推理:5-2=3 → 3+3=6 → 答案是6。  

ReAct(Reasoning + Action)任务

  • 动态交互循环:模型交替执行“推理(Reasoning)”和“行动(Action)”,并与外部环境(如API、数据库、工具)交互。
  • 外部依赖:依赖外部工具(如计算器、搜索引擎、API)执行行动,并基于返回结果调整后续推理
  • 模型调用方式:可能需要多次调用模型(如每次行动后生成新的推理步骤),或通过单次调用生成包含交互指令的文本(由外部系统解析执行)
  • 循环结构:包含“思考→行动→观察”的迭代过程,例如:
问题:上海今日天气如何?适合户外跑步吗?  
思考:需要先获取上海当前天气数据。  
行动:调用天气API查询上海实时温度、湿度、降水概率。  
观察:上海今日晴,温度25℃,湿度60%,降水概率0%。  
推理:天气条件适宜跑步 → 答案是适合。  

选择建议与适用范围

维度CoTReAct
是否需要工具是(依赖API、数据库等)
问题开放性封闭式(答案确定)开放式(需动态数据)
延迟要求低(单次生成)较高(需多次交互)
典型任务数学题、逻辑推理实时咨询、工具调用、复杂决策

2 AI推理方向:deepseek与deepmind的两条路线的差异

2.1 PRM与ORM的两大学派分支的差异

PRM(过程奖励模型)与ORM(结果奖励模型)的核心差异在于奖励信号的密度与反馈时机,这导致了两者在训练效率、适用场景和实现成本上的显著区别。以下是具体对比:

维度PRM(DeepMind路线)ORM(DeepSeek路线)
奖励粒度对推理过程的每一步骤进行细粒度打分(如数学题的每一步计算、代码生成的每一行逻辑)。仅对最终结果整体打分(如答案是否正确、代码是否通过测试)。
信号密度密集反馈,每一步均有奖励信号,帮助模型及时修正错误。稀疏反馈,仅在最终结果处提供信号,模型需自行回溯错误来源。
适用场景复杂推理任务(数学解题、代码生成、逻辑规划),需多步推理且中间步骤对结果影响大。结果明确且可快速验证的任务(文本分类、简单生成任务),或中间步骤难以量化评估的场景。
数据成本需标注中间步骤的正确性(人工或LLM-as-judge),标注成本高且易引入噪音。仅需标注最终结果对错,数据获取成本低。
训练效率初期收敛慢(需协调多步奖励),但长期上限高;适合需高精度推理的场景。初期收敛快,但易陷入局部最优(如“蒙对答案”却过程错误);适合简单任务或资源有限的情况。
技术挑战需设计可靠的中间步骤评估机制(如MATH-SHEPHERD的自动标注),易受后续推理质量干扰(错误传播)。依赖最终结果的明确性,难以处理模糊或多解问题(如开放式创作)。
典型应用OpenAI O1的“长思考”模式、数学解题(每一步验算)、代码生成(逐行逻辑检查)。文本偏好对齐(如安全过滤)、拒绝采样(选择最高分结果)、简单分类任务。

PRM优势

  • 错误定位:能精准识别推理链中的错误步骤,避免“结果正确但过程错误”的隐患(如数学题蒙对答案)。
  • 泛化性:通过密集反馈提升模型对复杂任务的分解能力,增强多步推理的鲁棒性。
  • 上限提升:在Let’s Verify Step by Step等研究中,PRM相比ORM可将准确率提升10-20%。

PRM劣势

  • 标注成本高:人工标注中间步骤昂贵,自动标注(如MC补全)依赖高质量生成模型,易引入噪音。
  • 训练复杂度:需协调多步奖励信号,易出现“局部最优陷阱”(如模型为追求单步高分而偏离整体目标)。
  • 推理延迟:结合搜索算法(如MCTS)时,计算开销大幅增加。

ORM优势

  • 低成本:仅需结果标注,适合数据匮乏场景(如小规模人工标注或用户隐式反馈)。
  • 易扩展:可直接复用传统RL的稀疏奖励框架(如AlphaGo的胜负奖励)。
  • 稳定性:对中间过程不敏感,适合结果驱动型任务(如文本生成的整体流畅度评估)。

ORM劣势

  • 过拟合风险:模型可能学会“作弊”以优化最终指标(如代码生成通过测试但逻辑混乱)。
  • 反馈延迟:错误需到最终步骤才能被惩罚,导致训练效率低下(尤其对长推理任务)。
  • 可解释性差:无法诊断错误来源,难以迭代优化模型能力。

2.2 DeepSeek-R1的两阶段训练概述

DeepSeek采用多阶段强化学习策略,通过奖励机制激励模型生成更严谨的推理路径

  • 第一阶段RL训练侧重逻辑准确性,Rule-based reward,模型会因跳过关键步骤而受到惩罚
  • 第二阶段RL引入人类偏好反馈,引入一些SFT数据,做监督学习,促使模型主动检查潜在错误并修正

Rule-based reward指基于预设规则自动计算的奖励,无需人工标注,常见类型包括:

  • 答案正确性:数学题数值匹配、代码执行结果正确(如LeetCode单元测试通过)。
  • 格式规范性:输出是否遵循指定模板(如与分段、Markdown语法)。
  • 语言一致性:是否混用中英文、逻辑连接词使用合理性(参考R1-Zero阶段的语言混杂惩罚)。
  • 过程完整性:推理步骤长度、是否包含验证环节(如“Double-check: 重新计算后答案应为0.5”)。

DeepSeek的step1和step2并非简单的时间分割,而是能力解耦与渐进增强的过程:

阶段Step1(推理优先)Step2(综合优化)
核心目标专注提升推理能力,通过强化学习最大化rule-based reward(如数学正确率)。在保持推理能力基础上,优化可读性、格式、多任务泛化,融合多种reward信号。
数据使用完全依赖程序合成或规则生成的数据(如自动构造数学题),无需人工标注。引入数千条人工筛选的冷启动数据(含长思维链),结合拒绝采样产生的优质样本。
奖励组合单一rule-based reward(如答案正确性+步骤长度)。混合rule-based reward(格式检查) + 模型打分(语言流畅度) + 人工偏好对齐。
关键技术纯强化学习(GRPO),允许输出格式混乱以探索更优推理路径。监督微调(SFT)修正格式,拒绝采样筛选高质量答案,局部再强化学习微调。

Step1训练后的模型(如R1-Zero)作为Step2的初始化参数,通过以下方式实现能力迁移:

  • 参数继承:保留已习得的推理能力(神经网络权重),仅新增可读性相关的embedding层微调。
  • 课程学习:在Step2初期使用高温度采样(鼓励探索),逐步降低温度以稳定格式。
  • 奖励重塑:在原有正确性奖励基础上,逐步增加格式奖励的权重(参考技术报告中语言一致性奖励从0.1到0.3的渐变)。

相关文章:

deepseek的CoT优势、两阶段训练的有效性学习笔记

文章目录 1 DeepSeek的CoT思维链的优势1.2 open-r1的CoT训练数据1.3 ReAct任务与CoT任务适用场景 2 AI推理方向&#xff1a;deepseek与deepmind的两条路线的差异2.1 PRM与ORM的两大学派分支的差异2.2 DeepSeek-R1的两阶段训练概述 1 DeepSeek的CoT思维链的优势 DeepSeek跟之前…...

分享在职同时准备系统分析师和教资考试的时间安排

&#xff08;在职、时间有限、同时备考系统分析师考试和小学信息技术教资面试&#xff09;&#xff0c;以下是详细的备考计划&#xff0c;确保计划的可行性和通过性。 一、总体安排 时间分配&#xff1a; 每周周末&#xff08;2天&#xff09;用于系统分析师考试备考。工作日晚…...

浅谈Java Spring Boot 框架分析和理解

Spring Boot是一个简化Spring开发的框架&#xff0c;它遵循“约定优于配置”的原则&#xff0c;通过内嵌的Tomcat、Jetty或Undertow等容器&#xff0c;使得开发者能够快速构建独立运行的、生产级别的基于Spring框架的应用程序。Spring Boot包含了大量的自动配置功能&#xff0c…...

【开发心得】CentOS7编译Redis7.4.2打包RPM完整方案

概述 由于最近客户需要解决redis版本升级问题&#xff0c;故而全网寻找安全版本&#xff0c;redis7.4.x版本求而为果&#xff0c;只能自己编译了。 截止发文时间2025-02-12 最新稳定版的redis版本号为7.4.2 Security fixes (CVE-2024-46981) Lua script commands may lead t…...

【网络安全】常见网络协议

1. 网络协议概述 网络协议是网络上两个或多个设备使用的一组规则&#xff0c;用于描述传输顺序和数据结构。网络协议充当数据包中信息附带的指令。这些指令告诉接收设备如何处理数据。协议就像一种通用语言&#xff0c;让世界各地的设备能够相互通信和理解。 尽管网络协议在网…...

电路笔记(元器件):AD 5263数字电位计(暂记)

AD5263 是四通道、15 V、256位数字电位计&#xff0c;可通过SPI/I2C配置具体电平值。 配置模式&#xff1a; W引脚作为电位器的抽头&#xff0c;可在A-B之间调整任意位置的电阻值。也可将W与A(或B)引脚短接&#xff0c;A-W间的电阻总是0欧姆&#xff0c;通过数字接口调整电位器…...

MongoDB 的使用场景

一、内容管理系统 1. 博客平台 文章内容、作者信息、标签、评论等数据结构多样&#xff0c;MongoDB 的无模式特性可轻松应对。比如 WordPress 等博客系统&#xff0c;使用 MongoDB 能灵活存储不同格式和长度的文章内容&#xff0c;以及与文章相关的各种元数据。 2. 新闻网站…...

MongoDB 是什么

MongoDB 是一款文档型数据库&#xff0c;属于 NoSQL 数据库范畴。 一、基本概念 MongoDB 以文档的形式存储数据&#xff0c;文档类似于 JSON 对象&#xff0c;由键值对组成&#xff0c;它以 BSON&#xff08;Binary JSON&#xff09;格式存储在磁盘上&#xff0c;这种格式支持…...

Python3操作MongoDB批量upsert

个人博客地址&#xff1a;Python3操作MongoDB批量upsert | 一张假钞的真实世界 代码如下&#xff1a; mongoClient MongoClient(mongodb://172.16.72.213:27017/) opsDb mongoClient.ops azScheduled opsDb.azScheduledFlowbulkOpers [] for flow in scheduledFlows.valu…...

相机模数转换

模拟图像是什么&#xff1f; 模拟图像是指连续变化的图像&#xff0c;它通常来源于现实世界的物理场景&#xff0c;并通过光学系统&#xff08;如相机镜头&#xff09;投射到感光介质上。模拟图像是连续的&#xff0c;这意味着它在空间和颜色值上都有无穷的细节。例如&#xf…...

C++20 新特性解析

1. 概念(Concepts) 概念是 C++20 引入的一项重要特性,它允许程序员定义类型约束,从而在编译时检查模板参数是否符合某些要求。概念提供了模板参数的限制,使得模板代码更加可读和易于维护。 示例代码: #include <iostream> #include <concepts>// 定义一个…...

C# ManualResetEvent 类 使用详解

总目录 前言 ManualResetEvent 是 C# 中用于线程同步的核心类之一&#xff0c;位于 System.Threading 命名空间下。它的核心功能是通过信号机制控制线程的执行顺序&#xff0c;允许一个或多个线程等待某个信号后再继续运行。与 AutoResetEvent 不同&#xff0c;ManualResetEve…...

动态规划——路径问题②

文章目录 931. 下降路径最小和算法原理代码实现 64. 最小路径和算法原理代码实现 174. 地下城游戏算法原理代码实现 931. 下降路径最小和 题目链接&#xff1a;931. 下降路径最小和 算法原理 状态表示&#xff1a; 经验题目要求&#xff1a;dp[i][j]表示到达[i,j]位置时&…...

ChatGPT macOS 桌面应用让你的编程体验更上一层楼

高效开发必备&#xff1a;ChatGPT macOS 桌面应用亮点盘点 ©作者|Ninja Geek 来源|神州问学 通过 macOS 版 ChatGPT 应用&#xff0c;已经能够更好的和你的生产力工具无缝配合工作。 大概在三四周之前&#xff0c;Anthropic 在 Claude 上推出了一项名为 Computer Use 的功…...

Java持久化之--Spring Data JPA

1、简介 Java持久化技术是Java开发中比较重要的部分&#xff0c;主要用于将对象数据持久化到数据库&#xff0c;或者从数据库中查询数据&#xff0c;简化数据库的CRUD操作。 2、JPA简介 JPA&#xff08;Java Persistence API&#xff09;是Java实现ORM&#xff08;Object Re…...

excel里的函数技巧(持续更新中)

行转列 在 Excel 中&#xff0c;行转列&#xff08;将一行数据转换为一列&#xff0c;或者将一列数据转换为一行&#xff09;是一项常见的操作。你可以使用 转置 功能轻松实现这一操作。 TRANSPOSE(数组)...

基于python sanic框架,使用Nacos进行微服务管理

微服务软件系统构建方式,已经很普及了,通过开源的sanic进行微服务管理,便捷,技术也比较成熟,而在项目实际应用过程中,微服务类型不仅有java的,还有nodejs、python等,尤其是结合算法模型构建的python接口,需要在Nacos进行注册管理。本文内容耗时2天踏坑,亲测一切ok。 …...

Day84:数据可视化

数据可视化是数据分析的重要组成部分,它能直观地展现数据规律,使复杂数据变得易懂。Python 提供了多个数据可视化库,其中最常用的是 Matplotlib 和 Seaborn。今天,我们将学习如何使用这些工具绘制折线图、柱状图、散点图等。 1. 安装和导入库 如果你的 Python 没有安装 Ma…...

fetch() 与 XMLHttpRequest 的差异

fetch() 与 XMLHttpRequest 的差异 fetch() 的功能与 XMLHttpRequest 基本相同&#xff0c;都是向服务器发出 HTTP 请求&#xff0c;但有三个主要的差异。 &#xff08;1&#xff09;fetch()使用 Promise&#xff0c;不使用回调函数&#xff0c;因此大大简化了写法&#xff0…...

TDengine 产品由哪些组件构成

目 录 背景产品生态taosdtaosctaosAdaptertaosKeepertaosExplorertaosXtaosX Agent应用程序或第三方工具 背景 了解一个产品&#xff0c;最好从了解产品包括哪些内容开始&#xff0c;我这里整理了一份儿 TDegnine 产品包括有哪些组件&#xff0c;每个组件作用是什么的说明&a…...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 &#xff08;一&#xff09;多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如&#xff0c;当用户上传一张“蓝色连衣裙”的图片时&#xff0c;接口可自动提取图像中的颜色&#xff08;RGB值&…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

Python实现prophet 理论及参数优化

文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候&#xff0c;写过一篇简单实现&#xff0c;后期随着对该模型的深入研究&#xff0c;本次记录涉及到prophet 的公式以及参数调优&#xff0c;从公式可以更直观…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...