【简博士统计学习方法】第1章:4. 模型的评估与选择

news2025/1/8 13:45:29

4. 模型的评估与选择

4.1 训练误差与测试误差


假如存在样本容量为 N N N的训练集,将训练集送入学习系统可以训练学习得到一个模型,我们将这么模型用决策函数的形式表达,也就是 y = f ^ ( x ) y=\hat{f}(x) y=f^(x),关于模型的拟合是否好坏,可以通过训练集计算训练误差进行衡量。而关于模型的预测效果也就是对未知数据预测效果的好坏,可以通过测试集来衡量,我们将测试集里所有的输入都放到预测系统里面,通过训练所得到的模型,就可以计算出一些列的预测值 y ^ i = f ^ ( x i ) \hat{y}_i=\hat{f}(x_i) y^i=f^(xi),这些预测值与真实值的差异就是测试误差,测试误差可以衡量模型它的预测效果。
根据上节课,损失函数符号形式为 L ( Y , f ( X ) ) L(Y,f(X)) L(Y,f(X)).

4.1.1 训练误差

  • 学习到的模型 Y = f ^ ( X ) Y=\hat{f}(X) Y=f^(X)
  • 训练集(Training Set):
    T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) ⋯   , ( x N , y N ) } T=\left\{\left(x_{1}, y_{1}\right),\left(x_{2}, y_{2}\right) \cdots,\left(x_{N}, y_{N}\right)\right\} T={(x1,y1),(x2,y2),(xN,yN)}
    (即有 N N N个样本)
  • 训练误差(Training Error):
    R e m p ( f ^ ) = 1 N ∑ i = 1 N L ( y i , f ^ ( x i ) ) R_{e m p}(\hat{f})=\frac{1}{N} \sum\limits_{i=1}^{N} L\left(y_{i}, \hat{f}\left(x_{i}\right)\right) Remp(f^)=N1i=1NL(yi,f^(xi))
    计算了每个样本的损失取平均值(经验损失)

4.1.2 测试误差

  • 学习到的模型 Y = f ^ ( X ) Y=\hat{f}(X) Y=f^(X)
  • 测试集(Test Set):
    T ′ = { ( x 1 ′ , y 1 ′ ) , ( x 2 ′ , y 2 ′ ) ⋯   , ( x N ′ , y N ′ ) } T^{\prime}=\left\{\left(x_{1^{\prime}}, y_{1^{\prime}}\right),\left(x_{2^{\prime}}, y_{2^{\prime}}\right) \cdots,\left(x_{N^{\prime}}, y_{N^{\prime}}\right)\right\} T={(x1,y1),(x2,y2),(xN,yN)}
  • 测试误差(Test Error):
    e test  = 1 N ′ ∑ i ′ = 1 N ′ L ( y i ′ , f ^ ( x i ′ ) ) e_{\text {test }}=\frac{1}{N^{\prime}} \sum\limits_{i^{\prime}=1}^{N^{\prime}} L\left(y_{i^{\prime}}, \hat{f}\left(x_{i^{\prime}}\right)\right) etest =N1i=1NL(yi,f^(xi))
    测试误差就是对每个样本点计算损失,然后计算损失的平均值。

测试误差的每个样本点都来自于测试集,训练误差的每个样本点都来自于训练集。

4.1.3 误差率与准确率

误差率与准确率是测试误差的两个特例,

  • 误差率(Error Rate):
    e test  = 1 N ′ ∑ i ′ = 1 N ′ I ( y i ′ ≠ f ^ ( x i ′ ) ) e_{\text {test }}=\frac{1}{N^{\prime}} \sum\limits_{i^{\prime}=1}^{N^{\prime}} I\left(y_{i^{\prime}} \neq \hat{f}\left(x_{i^{\prime}}\right)\right) etest =N1i=1NI(yi=f^(xi))
    误差率所采用的损失函数是示性函数,也就是 y i ′ ≠ y_{i^{\prime}}\ne yi=预测值 f ^ ( x i ′ ) \hat{f}\left(x_{i^{\prime}}\right) f^(xi)的时候即为1, y i ′ = y_{i^{\prime}}= yi=预测值 f ^ ( x i ′ ) \hat{f}\left(x_{i^{\prime}}\right) f^(xi)的时候即为0. 误差率实际上体现的是预测值和真实值不相等的样本点的个数占测试集里样本总个数的比例。
  • 准确率(Accuracy):
    r test  = 1 N ′ ∑ i ′ = 1 N ′ I ( y i ′ = f ^ ( x i ′ ) ) r_{\text {test }}=\frac{1}{N^{\prime}} \sum\limits_{i^{\prime}=1}^{N^{\prime}} I\left(y_{i^{\prime}}=\hat{f}\left(x_{i^{\prime}}\right)\right) rtest =N1i=1NI(yi=f^(xi))
    准确率是真实值与预测值完全相等的样本点占测试集中所有样本点的比例。
    【注】 r test  + e test  = 1 r_{\text {test }}+e_{\text {test }}=1 rtest +etest =1

4.2 过拟合与模型选择

训练误差主要是衡量模型对已知数据的预测能力,而测试误差主要是衡量模型对未知数据的预测能力,在模型选择的时候我们都希望训练误差和测试误差都很小,有的时候训练误差很小,测试误差并不是很小(这也就是过拟合),这里就需要一个平衡。

多项式拟合案例

生成样本的时候在真实函数的基础上加了一个噪声 ε i \varepsilon_i εi,样本为 y i = sin ⁡ ( 2 π x i ) + ε i y_i=\sin (2\pi x_i)+\varepsilon_i yi=sin(2πxi)+εi,假设 ε i \varepsilon_i εi是来自于一个正态分布的。将 x i x_i xi取来自 ( 0 , 1 ) (0,1) (0,1)上的10个均匀的点,然后加上噪声 ε i \varepsilon_i εi得到输出 y i y_i yi,图中黑色曲线是真实函数,蓝色的点是10个样本点用来做训练集的。

【注】正态分布
正态分布(Normal Distribution),也叫高斯分布(Gaussian Distribution),是最常见的一种概率分布,它在自然界和社会现象中广泛存在。正态分布的数学形式非常重要,它不仅在统计学、机器学习中起到基础性作用,还在很多其他领域,如物理学、经济学、工程学等都有广泛应用。

  1. 正态分布的定义
    正态分布是指一种连续型概率分布,其概率密度函数(PDF)具有钟形曲线的形状。它的数学公式为:
    f ( x ∣ μ , σ ) = 1 σ 2 π exp ⁡ ( − ( x − μ ) 2 2 σ 2 ) f(x \mid \mu, \sigma)=\frac{1}{\sigma \sqrt{2 \pi}} \exp \left(-\frac{(x-\mu)^{2}}{2 \sigma^{2}}\right) f(xμ,σ)=σ2π 1exp(2σ2(xμ)2)
    其中:
  • μ \mu μ是正态分布的均值(Mean),表示数据的中心位置。
  • σ \sigma σ是正态分布的标准差(Standard Deviation),表示数据的分散程度(或波动范围)。
  • σ 2 \sigma ^2 σ2是正态分布的方差(Variance),表示数据的变异度。
  • x x x是变量,它遵循正态分布。
  1. 正态分布的特征
  • 对称性:正态分布是完全对称的,左右两边的形状和概率完全相同,均值 μ \mu μ就是对称中心。
  • 钟形曲线:它的概率密度函数呈现出钟形曲线的形状,数据集中在均值附近,随着远离均值,概率密度逐渐减小。
  • 均值、中位数、众数相等:在正态分布中,均值、众数和中位数都重合在同一个位置上。
  • 68-95-99.7法则:对于一个正态分布:
    约68%的数据落在均值 ± 1 个标准差的范围内。
    约95%的数据落在均值 ± 2 个标准差的范围内。
    约99.7%的数据落在均值 ± 3 个标准差的范围内。
  1. 正态分布的参数
  • 均值 μ \mu μ:均值是正态分布的中心位置,表示数据的集中趋势。它是分布的对称点。
  • 标准差 σ \sigma σ:标准差衡量数据的离散程度,也就是说,数据的分布范围。标准差越大,表示数据的分布越广,波动越大;标准差越小,数据越集中。
  • 方差 σ 2 \sigma ^2 σ2:方差是标准差的平方,也是衡量数据离散程度的度量,但通常我们更关注标准差。
  1. 标准正态分布
    当均值 μ = 0 \mu=0 μ=0且标准差 σ = 1 \sigma = 1 σ=1时,正态分布被称为标准正态分布。其概率密度函数简化为:
    f ( x ) = 1 2 π exp ⁡ ( − x 2 2 ) f(x)=\frac{1}{\sqrt{2 \pi}} \exp \left(-\frac{x^{2}}{2}\right) f(x)=2π 1exp(2x2)
    标准正态分布的特点:
  • 均值为0,标准差为1。
  • 其形状与普通正态分布一样,但标准差较小,分布更集中。
  1. 正态分布的应用
    正态分布在实际中有着广泛的应用,以下是几个重要的领域:
  • 自然界现象:许多自然现象,比如人的身高、体重、考试成绩等,往往都接近于正态分布。换句话说,在这些现象中,大多数数据点都集中在均值附近,极端的高或低值较少。
    统计学:正态分布是许多统计推断方法(如假设检验、置信区间估计等)的基础。根据大数定律,很多随机变量的样本均值会逐渐趋近于正态分布。
    中心极限定理:中心极限定理指出,很多独立同分布(i.i.d.)的随机变量的和(或平均值)将趋近于正态分布,无论原始数据的分布是什么。这使得正态分布在统计学中具有非常重要的地位。
  1. 正态分布的性质
  • 线性组合:如果 X 1 , X 2 , ⋯   , X n X_1,X_2,\cdots,X_n X1,X2,,Xn是互相独立的正态分布随机变量,那么它们的线性组合 a 1 X 1 + a 2 X 2 + … + a n X n a_{1} X_{1}+a_{2} X_{2}+\ldots+a_{n} X_{n} a1X1+a2X2++anXn也服从正态分布。
    最小方差性质:在所有具有相同均值和方差的分布中,正态分布具有最小的方差,也就是说,它的分布最紧密。
  1. 正态分布的图形表示

    正态分布的概率密度函数图形通常呈现一个钟形曲线,具有以下特点:
  • 曲线在均值 μ \mu μ处达到最高点,表示概率密度最大。
  • 曲线的两端渐近于 x x x轴,表示概率逐渐减小,但始终不为零。
  • 曲线的形状由标准差 σ \sigma σ决定,标准差越大,曲线越平坦;标准差越小,曲线越尖锐。

下面,我们通过 M M M次多项式对之前的数据进行拟合:

  • 假设给定的数据是由 m m m次多项式生成的:
    f M ( x , w ) = w 0 + w 1 x + w 2 x 2 + ⋯ + w M x M = ∑ j = 0 M w j x j f_{M}(x, w)=w_{0}+w_{1} x+w_{2} x^{2}+\cdots+w_{M} x^{M}=\sum\limits_{j=0}^{M} w_{j} x^{j} fM(x,w)=w0+w1x+w2x2++wMxM=j=0Mwjxj
    其中 M M M是最高次数, x x x是输入, w w w是参数向量。
  • 经验风险:
    L ( w ) = 1 2 ∑ i = 1 N ( f M ( x i , w ) − y i ) 2 L(w)=\frac{1}{2} \sum\limits_{i=1}^{N}\left(f_{M}\left(x_{i}, w\right)-y_{i}\right)^{2} L(w)=21i=1N(fM(xi,w)yi)2
    我们在拟合的时候采取使经验风险最小化的策略,这里经验风险中的损失函数用的是平方损失,也就是预测值与真实值差的平方,那么经验风险就可以写成每个样本点的平方损失的和,多了一个系数 1 2 \frac{1}{2} 21下面会解释。
  • 代入多项式:
    L ( w ) = 1 2 ∑ i = 1 N ( ∑ j = 0 M w j x i j − y i ) 2 L(w)=\frac{1}{2} \sum\limits_{i=1}^{N}\left(\sum\limits_{j=0}^{M} w_{j} x_{i}^{j}-y_{i}\right)^{2} L(w)=21i=1N(j=0Mwjxijyi)2
    通过最小二乘法求解参数,求解参数的时候,可以通过对经验风险中的参数 w w w求导,然后使导数等于0得到参数的表达式,求导的时候,平方损失函数会多出一个系数2,这样就能和前面的系数 1 2 \frac{1}{2} 21把系数约掉,所以系数变成 1 2 \frac{1}{2} 21只是为了计算方便,加不加这个系数 1 2 \frac{1}{2} 21都不会影响最终结果。

【注】最小二乘法
最小二乘法(Least Squares Method)是一种数学优化方法,主要用于回归分析中,目的是通过最小化误差的平方和来找到最优的拟合模型。最小二乘法的核心思想是,寻找一个函数模型,使得实际观察值与该模型预测值之间的差异(误差)的平方和最小化。

  1. 最小二乘法的基本原理
    在数据分析或回归分析中,我们通常希望找到一个数学函数(如直线、曲线等),使得它能够尽可能地接近数据点。假设我们有一组数据点 ( x 1 , y 1 ) , ( x 2 , y 2 ) , … , ( x n , y n ) \left(x_{1}, y_{1}\right),\left(x_{2}, y_{2}\right), \ldots,\left(x_{n}, y_{n}\right) (x1,y1),(x2,y2),,(xn,yn),目标是找到一个函数 f ( x ) f(x) f(x)来拟合这些数据点。
    最小二乘法的基本步骤如下:
  • 拟合函数与数据点之间的误差:对于每个数据点 ( x i , y i ) (x_i,y_i) (xi,yi),拟合函数的预测值为 f ( x i ) f(x_i) f(xi),误差为 y i − f ( x i ) y_i-f(x_i) yif(xi).
  • 计算误差的平方和
    为了避免误差的正负相抵消,我们对每个误差进行平方,得到每个数据点的误差平方值 ( y i − f ( x i ) ) 2 (y_i-f(x_i))^2 (yif(xi))2,然后将所有数据点的误差平方值加和,得到总的误差平方和:
    S = ∑ i = 1 n ( y i − f ( x i ) ) 2 S=\sum\limits_{i=1}^{n}\left(y_{i}-f\left(x_{i}\right)\right)^{2} S=i=1n(yif(xi))2
  • 最小化误差平方和
    最小二乘法的目标就是找到使得误差平方和 S S S最小的函数模型 f ( x ) f(x) f(x).
  1. 线性回归中的最小二乘法
    对于线性回归模型 y = β 0 + β 1 x y=\beta_0+\beta_1x y=β0+β1x,我们需要通过最小化误差平方和 S S S来得到最优参数。首先,误差平方和可以表示为:
    S ( β 0 , β 1 ) = ∑ i = 1 n ( y i − ( β 0 + β 1 x i ) ) 2 S\left(\beta_{0}, \beta_{1}\right)=\sum\limits_{i=1}^{n}\left(y_{i}-\left(\beta_{0}+\beta_{1} x_{i}\right)\right)^{2} S(β0,β1)=i=1n(yi(β0+β1xi))2
    为求得最小值,我们对 β 0 \beta_0 β0 β 1 \beta_1 β1求偏导数,并令其为零,得到以下正态方程:
  • β 0 \beta_0 β0求偏导:
    ∂ S ∂ β 0 = − 2 ∑ i = 1 n ( y i − β 0 − β 1 x i ) = 0 \frac{\partial S}{\partial \beta_{0}}=-2 \sum\limits_{i=1}^{n}\left(y_{i}-\beta_{0}-\beta_{1} x_{i}\right)=0 β0S=2i=1n(yiβ0β1xi)=0
  • β 1 \beta_1 β1求偏导:
    ∂ S ∂ β 1 = − 2 ∑ i = 1 n ( y i − β 0 − β 1 x i ) x i = 0 \frac{\partial S}{\partial \beta_{1}}=-2 \sum\limits_{i=1}^{n}\left(y_{i}-\beta_{0}-\beta_{1} x_{i}\right) x_{i}=0 β1S=2i=1n(yiβ0β1xi)xi=0
    通过求解这两个方程,可以得到 β 0 \beta_0 β0 β 1 \beta_1 β1的最优解。最终,最小二乘法得到的回归直线方程为:
    β ^ 1 = n ∑ x i y i − ∑ x i ∑ y i n ∑ x i 2 − ( ∑ x i ) 2 β ^ 0 = ∑ y i − β 1 ^ ∑ x i n \begin{array}{l} \hat{\beta}_{1}=\frac{n \sum x_{i} y_{i}-\sum x_{i} \sum y_{i}}{n \sum x_{i}^{2}-\left(\sum x_{i}\right)^{2}}\\ \hat{\beta}_{0}=\frac{\sum y_{i}-\hat{\beta_{1}} \sum x_{i}}{n} \end{array} β^1=nxi2(xi)2nxiyixiyiβ^0=nyiβ1^xi
    其中 β ^ 0 \hat{\beta}_0 β^0最优截距, β ^ 1 \hat{\beta}_1 β^1是最优斜率。
  1. 最小二乘法的应用
    最小二乘法被广泛应用于各种统计建模和数据分析任务中,特别是在回归分析中。以下是一些常见的应用场景:
  • 线性回归分析:最小二乘法是线性回归的核心方法,用于估计数据中自变量与因变量之间的关系。
  • 多项式回归:通过对数据进行多项式拟合,可以使用最小二乘法来找到最佳的多项式系数。
  • 曲线拟合:不仅可以用于直线拟合,最小二乘法还可以用于任意曲线(例如指数曲线、对数曲线等)的拟合。
    图像处理与信号处理:在图像处理、图像压缩、信号处理等领域,最小二乘法用于数据拟合、去噪声等任务。
    机器学习:在机器学习中,尤其是在回归模型中,最小二乘法用于训练模型(如线性回归)。
  1. 最小二乘法的优缺点
    优点
  • 简单有效:最小二乘法计算简单,易于理解和实现,尤其适用于线性模型。
  • 计算效率高:对于大多数问题,最小二乘法的计算可以通过解析解得到,效率较高。
  • 良好的统计性质:在一些条件下,最小二乘法估计是无偏的、有效的。
    缺点
  • 对异常值敏感:最小二乘法对离群点(异常值)非常敏感,少数的异常值可能会严重影响模型的拟合效果。
  • 假设数据线性:最小二乘法通常假设数据之间存在线性关系,如果数据呈现非线性特征,最小二乘法可能效果不好。
  • 计算复杂度:对于大量数据和高维度问题,最小二乘法的计算可能会变得比较复杂,尤其是当数据不满足某些条件时,可能需要迭代求解。

刚才的多项式拟合结果:

M = 0 M=0 M=0拟合曲线就是平行于 x x x轴的直线,此时与真实曲线差距较大, M = 1 M=1 M=1是一条直线,稍微接近真实曲线, M = 3 M=3 M=3的时候,拟合曲线和真实曲线非常接近, M = 9 M=9 M=9的时候,拟合曲线通过了所有的样本点, M = 9 M=9 M=9的时候,参数有10个,样本点也有10个,所以这时候的拟合曲线恰好穿过所有样本点,训练误差几乎为0,但是 M = 9 M=9 M=9是一个过拟合的现象。

4.2.1 过拟合

过拟合(Over-Fitting):学习所得模型包含参数过多,出现对已知数据预测很好,但对未知数据预测很差的现象。

这是 M M M的值与误差值的关系图,没有给出 M = 9 M=9 M=9的情况,因为当 M = 9 M=9 M=9的时候,训练误差几乎为0,但是测试误差会非常大,远远超出了这个图,用横轴 M M M代表了模型的复杂度, M M M越大模型越复杂,而橙色的折线代表的是测试误差,也就是模型对未知数据的训练能力,而蓝色的线代表的是训练误差,也就是模型对已知数据的预测能力。当 M = 3 M=3 M=3的时候,训练误差和测试误差都达到了最小点。


上图中,横轴代表模型复杂度,纵轴代表预测误差,随着模型复杂度的增加,训练误差会越来越小,但是测试误差会先减小达到一个最小值再增大,所以选择模型的时候一定要注意防止过拟合的现象出现,

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

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

相关文章

Unity自定义编辑器:基于枚举类型动态显示属性

1.参考链接 2.应用 target并设置多选编辑 添加[CanEditMultipleObjects] using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor;[CustomEditor(typeof(LightsState))] [CanEditMultipleObjects] public class TestInspector :…

cesium小知识:3D tiles 概述、特点、示例

Cesium 的 3D Tiles 是一种高效的、流式传输的三维地理空间数据格式,专为在Web浏览器中快速渲染大规模三维场景而设计。3D Tiles 支持多种几何类型,包括点云、多边形、模型等,并且可以包含丰富的属性信息和层次细节(LOD, Level of Detail)结构,以确保不同设备和网络条件下…

【微服务】7、分布式事务

在分布系统中,一个业务由多个服务合作完成,每个服务有自己的事务,多个事务需同时成功或失败,这样的事务称为分布式事务。 其中每个服务的事务叫分支事务,整个业务的统一事务叫全局事务。 分布式事务相关知识讲解 课程引…

基于 Boost.Asio 和 Boost.Beast 的异步 HTTP 服务器(学习记录)

已完成功能: 支持 GET 和 POST 请求的路由与回调处理。 解析URL请求。 单例模式 管理核心业务逻辑。 异步 I/O 技术和 定时器 控制超时。 通过回调函数注册机制,可以灵活地为不同的 URL 路由注册处理函数。 1. 项目背景 1.1 项目简介 本项目是一个基于…

Linux标准IOday1

1:思维导图 2:将 student.c这个练习题&#xff0c;改成链表后实现 头文件link.h #ifndef __STRUCT_H__ #define __STRUCT_H__ #include <stdio.h> #include <stdlib.h> typedef struct Student{char name[20];double math;double chinese;double english;double…

全局变量(PHP)(小迪网络安全笔记~

免责声明&#xff1a;本文章仅用于交流学习&#xff0c;因文章内容而产生的任何违法&未授权行为&#xff0c;与文章作者无关&#xff01;&#xff01;&#xff01; 附&#xff1a;完整笔记目录~ ps&#xff1a;本人小白&#xff0c;笔记均在个人理解基础上整理&#xff0c;…

gateway的路径匹配介绍

gateway是一个单独服务。通过网关端口和predicates进行匹配服务 1先看配置。看我注解你就明白了。其实就是/order/**配置机制直接匹配到orderservice服务。 2我试着请求一个路径&#xff0c;请求成功。下面第三步是请求的接口。 3接口。

RabbitMQ-基本使用

RabbitMQ: One broker to queue them all | RabbitMQ 官方 安装到Docker中 docker run \-e RABBITMQ_DEFAULT_USERrabbit \-e RABBITMQ_DEFAULT_PASSrabbit \-v mq-plugins:/plugins \--name mq \--hostname mq \-p 15672:15672 \-p 5672:5672 \--network mynet\-d \rabbitmq:3…

模式识别-Ch2-分类错误率

分类错误率 最小错误率贝叶斯决策 样本 x x x的错误率&#xff1a; 任一决策都可能会有错误。 P ( error ∣ x ) { P ( w 2 ∣ x ) , if we decide x as w 1 P ( w 1 ∣ x ) , if we decide x as w 2 P(\text{error}|\mathbf{x})\begin{cases} P(w_2|\mathbf{x}), &…

CAD批量打印可检索的PDF文件

本文虽介绍CAD使用方法&#xff0c;但还是劝告大家尽早放弃使用CAD软件。。。。太TM难用了 当你打开CAD时发现如下一堆图纸&#xff0c;但是不想一个一个打印时。你可以按照下面操作实现自动识别图框实现批量打印。 1.安装批量打印插件 2.安装后打开CAD&#xff0c;输入命令Bp…

BERT:深度双向Transformer的预训练用于语言理解

摘要 我们介绍了一种新的语言表示模型&#xff0c;名为BERT&#xff0c;全称为来自Transformer的双向编码器表示。与最近的语言表示模型&#xff08;Peters等&#xff0c;2018a&#xff1b;Radford等&#xff0c;2018&#xff09;不同&#xff0c;BERT旨在通过在所有层中联合调…

搭建企业AI助理的创新应用与案例分析

在大健康零售行业&#xff0c;企业面临着日益增长的市场需求和复杂的供应链管理挑战。AI助理的应用不仅能够提升客户服务效率&#xff0c;还能优化供应链管理&#xff0c;降低运营成本。 一、AI助理在大健康零售行业的创新应用 个性化健康咨询 AI助理可以通过分析客户的健康…

apex安装

安装过程复杂曲折&#xff0c;网上说的很多办法&#xff0c;貌似成功了&#xff0c;实际还是没起作用。 先说成功过程&#xff0c;执行下面命令&#xff0c;安装成功&#xff08;当然&#xff0c;前提是你要先配置好编译环境&#xff09;&#xff1a; &#xff08;我的环境&a…

select下拉框,首次进入页面没有显示value的情况

bug场景&#xff1a; 类似这种bug情况排查如下&#xff1a; 首先 理解含义 options就是存放键值对的&#xff0c;id就是key&#xff0c;对上了它就自动把label显示 而且如果你用来当作key和label的字段&#xff0c;与后端返回的不一致&#xff0c;还可以进行更改 其次 排查接…

krpano 实现文字热点中的三角形和竖杆

krpano 实现文字热点中的三角形和竖杆 实现文字热点中的三角形和竖杆 一个后端写前端真的是脑阔疼 一个后端写前端真的是脑阔疼 一个后端写前端真的是脑阔疼 实现文字热点中的三角形和竖杆 上图看效果 v&#xff1a;2549789059

playwright 录制

一、新建项目TestProject3 二、准备swagger 三、开始录制 打开PowerShell 7 (x64) cd D:\xxx\xxx\VS2022Projects\TestProject3\TestProject3\bin\Debug\net8.0 pwsh playwright.ps1 codegen --targetcsharp -b chromium localhost:5252/swagger/index.html #支持的语言 java…

uni-app 资源引用(绝对路径和相对路径)方法汇总

文章目录 一、前言&#x1f343;二、绝对路径和相对路径2.1 绝对路径2.2 相对路径 三、引用组件四、引用js4.1 js 文件引入4.2 NPM支持 五、引用css六、引用json6.1 json文件引入 七、引用静态资源7.1 模板内引入静态资源7.2 css 引入静态资源7.3 js/uts 引入静态资源7.4 静态资…

go如何从入门进阶到高级

针对Go语言的学习&#xff0c;不同阶段应采取不同的学习方式&#xff0c;以达到最佳效果.本文将Go的学习分为入门、实战、进阶三个阶段&#xff0c;下面分别详细介绍 一、社区 Go语言中文网 作为专注于Go语言学习与推广的平台&#xff0c;Go语言中文网为开发者提供了丰富的中…

现代密码学期末重点(备考ing)

现代密码学期末重点&#xff0c;个人备考笔记哦 密码学概念四种密码学攻击方法什么是公钥密码&#xff1f;什么是对称密码&#xff1f;什么是无条件密码&#xff1f; 中国剩余定理&#xff08;必考&#xff09;什么是原根什么是阶 经典密码学密码体制什么是列置换&#xff1f; …

基于SMT32U575RIT单片机-中断练习

任务 查看手册对所有的拓展板上和相对应的底板的引脚对应的端口找到以下结论 通过STM32MX软件对各个引脚进行相应的配置 1.第一种切换模式电脑发送 #include "main.h" #include "icache.h" #include "usart.h" #include "gpio.h"/*…