Generalized Focal Loss论文个人理解

news2024/12/23 0:52:33

论文地址:Generalized Focal Loss: Towards Efficient Representation Learning for Dense Object Detection

论文解决问题

研究人员最近更加关注边界框的表示(representation)及其定位质量估计(LQE,本论文中指的是IoU score),导致该领域取得了令人鼓舞的进展。具体来说,边界框表示被建模为简单的狄拉克δ分布,该分布在过去几年中被广泛使用。在 FCOS 中,当 LQE 与分类置信度相结合(通常是相乘)作为Non_max_suppression中排序的最终分数时,预测额外的定位质量(例如IoU score或Centerness score)会带来检测精度的持续提高。尽管取得了巨大的成功,但我们在密集检测器的现有实践中观察到这些表示(分类、定位和 LQE)存在以下三个问题:

  • 训练和推理之间 LQE 和分类分数的使用不一致
    在这里插入图片描述
    图 1 图1 1论文中阐述,如图1a所示,在最近的密集检测器中,LQE和分类分数通常是独立训练的,但在推理过程中综合利用(例如乘法)。目前,LQE 的监督仅分配给正样本 [18]、[20]、[42],这是不可靠的(只有正样本计算box_loss),因为负样本可能有机会获得无法控制的更高质量的预测(图 2)。 这两个因素导致训练和测试之间存在差距,并可能降低检测性能,例如,在 NMS 期间,具有随机高质量分数的负实例可能排在具有较低质量预测的正实例之前。
    在这里插入图片描述 图 2 图2 2注意yolov8中的是NMS排序分数是conf,conf是cls中最大的那个,并不是conf * iou。

    conf, j = cls.max(1, keepdim=True)
    x = torch.cat((box, conf, j.float(), mask), 1)[conf.view(-1) > conf_thres]
    
    x = x[x[:, 4].argsort(descending=True)[:max_nms]]  # sort by confidence and remove excess boxes
    
    boxes, scores = x[:, :4] + c, x[:, 4]  # boxes (offset by class), scores
    i = torchvision.ops.nms(boxes, scores, iou_thres)  # NMS
    
  • 边界框的不灵活表示
    广泛使用的边界框表示可以看作目标框坐标的狄拉克δ分布。 然而,它没有考虑数据集中的模糊性和不确定性(见图3中图形边界不清晰)。 尽管最近的一些工作]将框建模为高斯分布,但捕获边界框位置的真实分布过于简单。 事实上,真实分布可以更加任意和灵活,而不需要像高斯函数那样对称。
    在这里插入图片描述 图 3 图3 3

  • 缺乏可靠 LQE 的明确指导
    许多先前的作品探索了LQE。 例如,YOLO家族首先采用Objectness来描述定位质量,其定义为预测框和真实框之间的交并集(IoU)。 此后,IoU在IoU-Net、IoU-aware、PAA、GFL和VFNet中被进一步探索并证明是有效的。 最近,FCOS和ATSS引入了Centerness,即到物体中心的距离程度,以抑制低质量的检测结果。 一般来说,上述方法都有一个共同的特点,即它们都是基于普通的卷积特征,例如点、边界或区域的特征(见图4a、4b、4c、4d、4e、4f和4g)来估计定位质量。 不幸的是,这些抽象的卷积特征无法具有推断 LQE scores的明确含义,而只是由定位质量信号隐式监督,从而使其可靠 LQE 的效率较低。
    在这里插入图片描述
    图 4 图4 4

论文解决方案(因为yolov8中使用了DFL,会结合介绍一下)

Improved Representations

  • For object classification representation,我们建议将其与 LQE 分数合并为单个统一的表示:
    Classification -> Classification-IoU Joint Representation
    下面的 J \mathbf{J} J就是预测框标签的分类分数, y \mathbf{y} y就是真实框标签的分类分数
    为了解决上述训练和测试阶段之间的不一致问题,我们提出了联合表示 J = [ J 1 , J 2 , … , J m ] \mathbf{J}=[J_1,J_2,\ldots,J_m] J=[J1,J2,,Jm](m 表示类别总数)的定位质量(即 IoU 分数)和分类分数(称为“Classification-IoU Joint Representation”),其supervision软化了标准的one-hot类别标签,并且导致可能的浮点向量 y = [ y 1 , y 2 , … , y m ] \mathbf{y}=[y_1,y_2,\ldots,y_m] y=[y1,y2,,ym]。 给定一个对象类别标签 c ∈ { 1 , 2 , … , m } c\in\{1,2,\ldots,m\} c{1,2,,m}, y 满足
    y i = { I o U ( B p r e d , B g t ) , if  i = c ; 0 , otherwise , \left.y_i=\left\{\begin{array}{ll}\mathrm{IoU}(B_{pred},B_{gt}),&\text{if }i=c;\\0,&\text{otherwise},\end{array}\right.\right. yi={IoU(Bpred,Bgt),0,if i=c;otherwise,其中 I o U ( B p r e d , B g t ) \mathrm{IoU}(B_{pred},B_{gt}) IoU(Bpred,Bgt)表示预测边界框 B p r e d B_{pred} Bpred和真实框 B g t B_{gt} Bgt之间的 IoU。 具体来说, y = 0 y=0 y=0表示负样本的质量分数为0, 0 < y ≤ 1 0<y\leq1 0<y1表示正样本的质量分数为IoU分数 y y y。(原先的真实标签的分类分数一般是{0, 1}, 现在将正样本的对应的真实标签的分类分数变为 I o U ( B p r e d , B g t ) \mathrm{IoU}(B_{pred},B_{gt}) IoU(Bpred,Bgt),负样本的对应的真实标签的分类分数变为0。这个yolov8介绍的跟这个差不多,yolov8中的在经过TAA正负样本标签分配后,原始的target_scores正样本的真实标签的分类分数乘以weights,负样本的真实标签的分类分数是0(可以见yolov8下面截取代码)) 。对于多类别,作者采用带有 sigmoid 运算符 σ ( ⋅ ) \sigma(\cdot) σ()的多重二元分类。 为了简单起见,将 sigmoid 的输出标记为 σ \sigma σ。 请注意,如图1b所示,训练时,J 受到质量焦点损失(QFL)的监督,推理时,直接作为NMS 分数,这大大减少了训练和推理之间的 LQE 和对象分类的不一致。

    # Normalize
    # 设定一个动态权重,更加关注那些与真实目标对齐良好且重叠程度较高的预测框
    # 这个动态权重由overlaps和align_metric决定,那些align_metric和overlaps小的预测框,它们对应的target_scores也小
    # 这样求解bce_loss(分类损失)的时候相对来说会变小,这样模型在训练过程中就不会过多关注那些align_metric和overlaps小的预测框了
    # 注意align_metric是跟预测分类分数和ciou都有关,这样模型在预测的时候,分类分数和iou会保持一致性,尽可能的不会存在分类分数低,而iou高的情况。
    align_metric *= mask_pos
    pos_align_metrics = align_metric.amax(axis=-1, keepdim=True)  # b, max_num_obj
    pos_overlaps = (overlaps * mask_pos).amax(axis=-1, keepdim=True)  # b, max_num_obj
    norm_align_metric = (align_metric * pos_overlaps / (pos_align_metrics + self.eps)).amax(-2).unsqueeze(-1)
    target_scores = target_scores * norm_align_metric
    
  • For bounding box representation,我们建议通过直接学习连续空间上的离散概率分布来表示框位置的任意分布(在本文中表示为“一般分布”),而不引入任何其他更强的先验(例如,高斯):学习到的任意分布提供了对真实数据本质的复杂性进行建模的灵活性,不仅可以预测精确的边界框回归,还可以反映信息丰富的潜在不确定性估计
    Dirac delta ! General Distribution Representation
    作者采用该位置(在yolov8中是anchor center)到边界框四个边的相对偏移量(anchor center到bbox的距离)作为回归目标。 边界框回归的传统操作将回归标签 y y y建模为 δ ( x − y ) \delta(x-y) δ(xy)狄拉克分布,其中满足 ∫ − ∞ + ∞ δ ( x − y ) d x = 1 \int_{-\infty}^{+\infty}\delta(x-y)\mathrm{d}x=1 +δ(xy)dx=1,并且通常通过全连接层实现。更正式地说,恢复 y y y 的积分形式如下(不好意思,高数还给老师了,忘记怎么推的):
    y = ∫ − ∞ + ∞ δ ( x − y ) x d x y=\int_{-\infty}^{+\infty}\delta(x-y)x\mathrm{d}x y=+δ(xy)xdx作者提出直接学习没有先验知识的基础一般分布 P ( x ) P(x) P(x)。给定标签 y y y 的范围,其中最小 y 0 y_0 y0 和最大 y n y_n yn ( y 0 ≤ y ≤ y n , n ∈ N + ) (y_0\leq y\leq y_n,n\in\mathbb{N}^+) (y0yyn,nN+),我们可以通过下面的计算公式从模型( y ^ \hat{y} y^也满足 y 0 ≤ y ^ ≤ y n y_0\leq \hat{y}\leq y_n y0y^yn)中获得估计值 y ^ \hat{y} y^。(这个 P ( x ) P(x) P(x)就是 y 0 y_0 y0~ y n y_n yn之间的概率分布)。
    y ^ = ∫ − ∞ + ∞ P ( x ) x d x = ∫ y 0 y n P ( x ) x d x . \hat{y}=\int_{-\infty}^{+\infty}P(x)x\mathrm{d}x=\int_{y_0}^{y_n}P(x)x\mathrm{d}x. y^=+P(x)xdx=y0ynP(x)xdx.为了与卷积神经网络保持一致,作者将连续域上的积分转换为离散表示,通过将范围 [ y 0 , y n ] [y_0,y_n] [y0,yn]离散化为间隔 Δ \Delta Δ的集合 { y 0 , y 1 , … , y i , y i + 1 , … , y n − 1 , y n } \{y_0,y_1,\ldots,y_i,y_{i+1},\ldots,y_{n-1},y_n\} {y0,y1,,yi,yi+1,,yn1,yn} Δ = y i + 1 − y i , ∀ i ∈ [ 0 , n − 1 ] \Delta=y_{i+1}-y_i,\forall i\in[0,n-1] Δ=yi+1yi,i[0,n1](为了简单,作者在后续的实验直接使用 Δ = 1 \Delta=1 Δ=1)。因此,给定离散分布特性 ∑ i = 0 n P ( y i ) = 1 \sum_{i=0}^nP(y_i)=1 i=0nP(yi)=1,估计回归值 y ^ \hat{y} y^可以表示为
    y ^ = ∑ i = 0 n P ( y i ) y i \hat{y}=\sum_{i=0}^nP(y_i)y_i y^=i=0nP(yi)yi P ( y i ) P(y_i) P(yi)可以通过由n + 1个单元组成的 softmax S ( ⋅ ) \mathcal{S}(\cdot) S()层轻松实现。 请注意, y ^ \hat{y} y^可以使用任何传统损失目标(例如 SmoothL1、IoU Loss或 GIoU Loss)以端到端方式进行训练。 为了促进其有效优化,我们进一步引入分布焦点损失(DFL)。
    为了方便理解,现举例yolov8使用的方法
    yolov8中bbox分支回归的是 4 ∗ r e g _ m a x = 4 ∗ 16 = 64 4 * reg\_{max} = 4 * 16=64 4reg_max=416=64(bbox分支最终结果: [bs, num_anchor, 64]),也就是 { y 0 , y 1 , … , y i , y i + 1 , … , y n − 1 , y n } = { 0 , 1 , . . . , 7 , 8 , . . . , 14 , 15 } \{y_0,y_1,\ldots,y_i,y_{i+1},\ldots,y_{n-1},y_n\}=\{0, 1, ...,7,8,...,14, 15\} {y0,y1,,yi,yi+1,,yn1,yn}={0,1,...,7,8,...,14,15},因为有上、下、左、右四条边,所以是 4 ∗ 16 4 * 16 416。这个 { 0 , 1 , . . . , 7 , 8 , . . . , 14 , 15 } \{0, 1, ...,7,8,...,14, 15\} {0,1,...,7,8,...,14,15}的value是softmax输出,因此是一个概率分布,这个anchor center对于边界框四条边偏移量 y ^ \hat{y} y^由下面公式可得出:( ( P ( y 0 ) , P ( y 1 ) , … , P ( y 7 ) , P ( y 8 ) , … , P ( y 15 ) ) ({P(y_0)}, {P(y_1)}, \dots, {P(y_7)}, {P(y_8)}, \dots,{P(y_{15})}) (P(y0),P(y1),,P(y7),P(y8),,P(y15))分别是 ( 0 , 1 , … , 7 , 8 , … , 15 ) 一一对应处的概率 (0, 1, \dots, 7, 8, \dots,15)一一对应处的概率 (0,1,,7,8,,15)一一对应处的概率)
    y ^ = ∑ i = 0 n P ( y i ) y i = ∑ i = 0 15 P ( y i ) y i = 0 × P ( y 0 ) + 1 × P ( y 1 ) + ⋯ + 7 × P ( y 7 ) + 8 × P ( y 8 ) + ⋯ + 15 × P ( y 15 ) \hat{y}=\sum_{i=0}^nP(y_i)y_i=\sum_{i=0}^{15}P(y_i)y_i=0\times{P(y_0)}+1\times{P(y_1)+\dots +7\times{P(y_7)}+8\times{P(y_8)}+\dots+15\times{P(y_{15})}} y^=i=0nP(yi)yi=i=015P(yi)yi=0×P(y0)+1×P(y1)++7×P(y7)+8×P(y8)++15×P(y15)然后yolov8会使用dist2box函数将偏移量(anchor center 到bbox四条边的距离)转化为xywh

  • For localization quality representation
    在这里插入图片描述 图 5 图5 5
    如图5b所示,一般分布的统计量往往与其真实的定位质量有很强的相关性。更具体地来说,图5c和5d所示,边界框分布的形状(平坦度)可以清晰地反映预测结果的定位质量:分布越尖锐,预测的边界框越准确,反之亦然。 最后,由于输入(边界框的分布统计)和输出(LQE 分数)潜在地高度相关,因此通过分布信息的指导可能会更容易且非常有效地进行更好的 LQE。
    Convolution -> Distribution-Guided Quality Predictor.
    受分布统计和 LQE 分数之间可能存在的强相关性的启发,作者提出了一个非常轻量级的子网络,它只有几十个(例如 64 个)隐藏单元,在这些分布统计的基础上产生可靠的 LQE 分数,而不是隐式卷积特征。作者将这种轻量级子网络称为分布引导质量预测器(DGQP)。它将学习到的一般分布 P 的统计数据传送到一个微小的子网络中(见图6中的红色虚线框),从而获得预测的 LQE 分数。
    在这里插入图片描述 图 6 图6 6
    首先会从bbox分支中的分布中选择Top-k个values和它们的mean,图中的k=4,将Top-K和m进行concat,并且bbox有上、下、左、右四条边,这样就由 H × W × 4 n H\times W\times4n H×W×4n变为 H × W × 20 H\times W\times20 H×W×20( 20 = 4 × 5 20 = 4 \times 5 20=4×5)。
    F = C o n c a t ( { T o p k m ( P w ) ∣ w ∈ { l , r , t , b } } ) , \mathbf{F}=\mathrm{Concat}(\{\mathrm{Topkm}(\mathbf{P}^w)\mid w\in\{l,r,t,b\}\}), F=Concat({Topkm(Pw)w{l,r,t,b}}),选择Top-k个values和它们的mean有一下两个好处:
    1、 因为 P w \mathbf{P}^{w} Pw的和是固定值1(softmax的输出,概率和为1),Top-k个values和它们的mean可以基本的反映分布的平坦程度:值越大,分布越尖锐,IoU越大;值越小,分布越扁平,IoU越小。
    2、 Top-k values和mean可以使统计特征对其在分布域中的相对偏移不敏感(见图7),从而产生不受对象尺度影响的稳健表示。(就是不管gt的尺度大小,Top-k values和mean的大小都反映的是1中的平坦程度)在这里插入图片描述 图 7 图7 7
    然后就是下面的公式,因为全连接层就相当于乘上一个矩阵, W 1 ∈ R d × 4 ( k + 1 ) \mathbf{W}_1\in\mathbb{R}^{d\times4(k+1)} W1Rd×4(k+1) W 2 ∈ R 1 × d \mathbf{W}_{2}\in\mathbb{R}^{1\times d} W2R1×d σ \sigma σ δ \delta δ分别是sigmoid和relu。
    I = F ( F ) = σ ( W 2 δ ( W 1 F ) ) , I=\mathcal{F}(\mathbf{F})=\sigma(\mathbf{W}_2\delta(\mathbf{W}_1\mathbf{F})), I=F(F)=σ(W2δ(W1F)),最终的 J \mathbf{J} J通过下面的公式得出
    J = C × I \mathbf{J}=\mathbf{C}\times I J=C×I其中的 C = [ C 1 , C 2 , … , C m ] , C i ∈ [ 0 , 1 ] \mathbf{C}=[C_1,C_2,\ldots,C_m],C_i\in[0,1] C=[C1,C2,,Cm],Ci[0,1]就是分类分支的输出,m个类别的最初的分类表示。

Generalized Focal Loss

  • 原始的Focal Loss (FL)
    F L ( p ) = − ( 1 − p ι ) γ log ⁡ ( p ι ) , p ι = { p , w h e n   y = 1 1 − p , w h e n   y = 0 \left.\mathbf{FL}(p)=-(1-p_{\iota})^{\gamma}{\log{(p_{\iota})},p_{\iota}}=\left\{\begin{array}{cc}p,&\mathrm{when~}y=1\\1-p,&\mathrm{when~}y=0\end{array}\right.\right. FL(p)=(1pι)γlog(pι),pι={p,1p,when y=1when y=0缩放因子 ( 1 − p t ) γ (1-p_{t})^{\gamma} (1pt)γ在训练期间自动降低简单示例的贡献,并快速将模型集中在困难示例上。
  • Quality Focal Loss (QFL)
    然而目前的FL形式仅支持 { 1 , 0 } \{1,0\} {1,0}离散标签,但我们的新标签 y y y 包含小数。 因此,作者扩展 FL 的两个部分,以实现分类-IoU 联合表示情况下的成功训练:
    1、 交叉熵部分 ( 1 − p t ) γ (1-p_{t})^{\gamma} (1pt)γ扩展为其完整版本 − ( ( 1 − y ) l o g ( 1 − σ ) + y l o g ( σ ) ) -((1-y)\mathrm{log}\left(1-\sigma\right)+y\mathrm{log}\left(\sigma\right)) ((1y)log(1σ)+ylog(σ))
    2、 缩放因子部分 ( 1 − p t ) γ (1-p_{t})^{\gamma} (1pt)γ被推广为估计 σ \sigma σ与其连续标签 y y y之间的绝对距离,即 ∣ y − σ ∣ β ( β ≥ 0 ) |y-\sigma|^{\beta}\left(\beta\geq0\right) yσβ(β0),这里 ∣ ⋅ ∣ \left|\cdot\right| 保证非负性。
    Q F L ( σ ) = − ∣ y − σ ∣ β ( ( 1 − y ) l o g ( 1 − σ ) + y l o g ( σ ) ) \mathbf{QFL}(\sigma)=-|y-\sigma|^{\beta}((1-y)\mathrm{log}\left(1-\sigma\right)+y\mathrm{log}\left(\sigma\right)) QFL(σ)=yσβ((1y)log(1σ)+ylog(σ)) σ = y \sigma=y σ=y是 QFL 的全局最小解。图8是当label y = 0.5 y=0.5 y=0.5时,几种 β \beta β值得QFL可视化。可以看到当一个例子的质量估计不准确并且偏离标签 y y y时,调制因子相对较大,因此模型将更关注于学习难学习得样本;随着质量估计变得准确,即 σ → y \sigma\rightarrow y σy,该调制因子趋于0,并且对经过良好估计的示例的损失进行降权变小。实验中 β = 2 \beta=2 β=2的QFL效果最好。
    在这里插入图片描述 图 8 : l a b e l y = 0.5 图8:label y=0.5 8:labely=0.5
  • Distribution Focal Loss (DFL)
    虽然 y ^ = ∑ i = 0 n P ( y i ) y i \hat{y}=\sum_{i=0}^nP(y_i)y_i y^=i=0nP(yi)yi已经可以使用传统损失目标以端到端的方式进行训练,例如 GIoU Loss,但 P ( y i ) P(y_i) P(yi)的值有无限种组合可以得到最终的积分结果 y ^ \hat{y} y^,可能会存在扁平 P ( y i ) P(y_i) P(yi)分布(LQE小),可能会降低学习效率。作者提出了Distribution Focal Loss (DFL)让网络迅速关注标签 y y y附近的值,主要是通过扩大 y i y_i yi y i + 1 y_{i+1} yi+1的概率( y y y附近最近的两个数, y i ≤ y ≤ y i + 1 y_{i}\leq y\leq y_{i+1} yiyyi+1,举个例子, y = 1.2 y=1.2 y=1.2,则 y i = 1 y_{i}=1 yi=1 y i + 1 = 2 y_{i+1}=2 yi+1=2)。
    D F L ( P i , P i + 1 ) = − ( ( y i + 1 − y ) l o g ( P i ) + ( y − y i ) l o g ( P i + 1 ) ) \mathbf{DFL}(P_i,P_{i+1})=-((y_{i+1}-y)\mathrm{log}(P_i)+(y-y_i)\mathrm{log}(P_{i+1})) DFL(Pi,Pi+1)=((yi+1y)log(Pi)+(yyi)log(Pi+1))DFL的全局最小解,即 i . e , P i = y i + 1 − y y i + 1 − y i , P i + 1 = y − y i y i + 1 − y i \mathrm{i.e},P_i=\frac{y_{i+1}-y}{y_{i+1}-y_i},P_{i+1}=\frac{y-y_i}{y_{i+1}-y_i} i.e,Pi=yi+1yiyi+1y,Pi+1=yi+1yiyyi,可以保证估计的回归目标 y ^ \hat{y} y^无限接近对应的标签 y y y,即 y ^ = ∑ j = 0 n P ( y j ) y j = P i y i + P i + 1 y i + 1 = y i + 1 − y y i + 1 − y i y i + y − y i y i + 1 − y i y i + 1 = y \hat{y}=\sum_{j=0}^nP(y_j)y_j=P_iy_i+P_{i+1}y_{i+1}=\frac{y_{i+1}-y}{y_{i+1}-y_i}y_i+\frac{y-y_i}{y_{i+1}-y_i}y_{i+1}=y y^=j=0nP(yj)yj=Piyi+Pi+1yi+1=yi+1yiyi+1yyi+yi+1yiyyiyi+1=y
    yolov8中的DFL loss代码
    '''
    target相当于y=1.2
    tl = 1 = y(i)
    tr = 2 = y(i+1)
    wl = y(i+1) - y = 2 - 1.2 = 0.8
    wr = y - y(i) =1.2 - 1 = 0.2 = 1 - wl = 1 - 0.8
    # F.cross_entropy的详细介绍可参考https://blog.csdn.net/wuliBob/article/details/104119616
    F.cross_entropy(pred_dist, tl.view(-1), reduction='none').view(tl.shape): log(P(i))
    F.cross_entropy(pred_dist, tr.view(-1), reduction='none').view(tl.shape): log(P(i+1))
    '''
    tl = target.long()  # target left
    tr = tl + 1  # target right
    wl = tr - target  # weight left
    wr = 1 - wl  # weight right
    return (F.cross_entropy(pred_dist, tl.view(-1), reduction='none').view(tl.shape) * wl +
            F.cross_entropy(pred_dist, tr.view(-1), reduction='none').view(tl.shape) * wr).mean(-1, keepdim=True)
    
  • Generalized Focal Loss (GFocal)
    注意,QFL和DFL可以统一为通用形式,论文中将其称为Generalized Focal Loss (GFocal)。假设模型将两个变量 y l , y r ( y l ≤ y r ) y_{l},y_{r}\left ( y_l\leq y_r \right ) yl,yr(ylyr)的概率估计为 p y l , p y r ( p y l ≥ 0 , p y r ≥ 0 , p y l + p y r = 1 ) p_{y_l},p_{y_r}\text{(}p_{y_l}\geq0,p_{y_r}\geq0,p_{y_l}+p_{y_r}=1) pyl,pyr(pyl0,pyr0,pyl+pyr=1),其线性组合的最终预测为 y ^ = y l p y l + y r p y r ( y l ≤ y ^ ≤ y r ) \hat{y}=y_lp_{y_l}+y_{r}p_{y_{r}}(y_{l}\leq\hat{y}\leq y_{r}) y^=ylpyl+yrpyr(yly^yr)。 预测 y ^ \hat{y} y^对应的连续标签 y y y也满足 y l ≤ y ≤ y r y_{l}\leq y\leq y_{r} ylyyr。 以绝对距离 ∣ y − y ^ ∣ β ( β ≥ 0 ) |y-\hat{y}|^{\boldsymbol{\beta}}(\beta\geq0) yy^β(β0)作为调制因子,GFocal 的具体公式可写为
    G F o c a l ( p y l , p y r ) = − ∣ y − ( y l p y l + y r p y r ) ∣ β ( ( y r − y ) l o g ( p y l ) ) + ( y − y l ) l o g ( p y r ) ) \begin{gathered} \mathbf{GFocal}(p_{y_{l}},p_{y_{r}}) =-\big|y-(y_{l}p_{y_{l}}+y_{r}p_{y_{r}})\big|^{\beta}\big((y_{r}-y)\mathrm{log}(p_{y_{l}})\big) +(y-y_{l})\mathrm{log}\left(p_{y_{r}}\right)) \end{gathered} GFocal(pyl,pyr)= y(ylpyl+yrpyr) β((yry)log(pyl))+(yyl)log(pyr))

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

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

相关文章

加速你的数据库:公司中SQL优化的八大绝招

前言 SQL优化这个问题也是老生常谈了&#xff0c;很多都还是在八股文中了解到&#xff0c;那么公司里的SQL都是咋优化的呢&#xff1f;和八股文一样吗&#xff1f;下面&#xff0c;我将与大家分享我在公司里学到的SQL优化知识。SQL优化是提高数据库性能和减少资源消耗的重要一环…

金融行业案例分享 | 升级业务保障,HyperBDR助力巴西海通银行容灾上华为云

巴西海通银行通过HyperBDR成功将业务从本地VMware容灾上华为云&#xff0c;实现分钟级RTO&#xff0c;保障业务连续性同时优化容灾TCO。 项目背景 海通银行由海通证券股份有限公司控股&#xff0c;是一家受欧盟监管的银行&#xff0c;在葡萄牙里斯本注册成立&#xff0c;业务遍…

mysql定时备份shell脚本和还原

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言数据库备份分类mysqldump命令备份计划1.每日备份&#xff0c;保留30天备份文件2.每月1号备份&#xff0c;保留12个月备份文件 定时调度还原总结 前言 数据库备…

QT第1天

题目&#xff1a;点击按钮改变文字 需要增加一个count属性&#xff0c;并且只需要定义槽&#xff0c;信号函数已经内置好了 //widget.h#ifndef WIDGET_H #define WIDGET_H#include <QWidget>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Wi…

数据分析讲课笔记01:数据分析概述

文章目录 零、学习目标一、本次课程概述二、数据分析的背景&#xff08;一&#xff09;进入大数据时代&#xff08;二&#xff09;数据分析的作用 三、什么是数据分析&#xff08;一&#xff09;数据分析的概念&#xff08;二&#xff09;数据分析的分类1、描述性数据分析2、探…

抛弃安卓,追赶iOS,鸿蒙能否成为中国第二大系统?

据半导体行业观察机构Techinsights发布报告预测&#xff0c;从2024年起&#xff0c;鸿蒙Harmony OS将取代苹果iOS&#xff0c;成为中国市场上第二大智能手机操作系统。 鸿蒙系统&#xff0c;支棱起来了&#xff01;去年&#xff0c;华为前脚“复活”麒麟芯片&#xff0c;后脚宣…

天津大数据分析培训班 常见的大数据培训课程

大数据现在属于热门职业技能之一&#xff0c;不管是大学毕业生&#xff0c;计算机和数据相关专业青年&#xff0c;已经工作一阵的开发人员&#xff0c;运营小白&#xff0c;还是其他想进入这个行当的&#xff0c;可能还没有编程基础的转行人&#xff0c;都想尝试大数据行业&…

2024年人工智能有哪些证书可以报考呢?

由国家工信部权威认证的人工智能证书是跨入人工智能行业的敲门砖&#xff0c;随着人工智能技术的发展越来越成熟&#xff0c;相关的从业人员也会剧增&#xff0c;证书的考取难度也会变高。如果已经从事或者准备从事人工智能行业的人员&#xff0c;对于考证宜早不宜迟&#xff0…

C语言之扫雷小游戏的实现【含递归展开】

文章目录 前言一、扫雷游戏代码设计思路二、设计扫雷代码1.创建菜单函数2.实现9x9扫雷3.初始化棋盘4.打印棋盘5.随机布置雷的位置6.排查雷的信息7.递归展开 三、源码1.新建一个test.c源文件2.新建一个game.c源文件3.创建一个game.h头文件 前言 扫雷游戏是1992年发行的一款大众类…

银河麒麟v10安装前端环境(Node、vue、Electron+vite)

此帖子所提到的所有依赖包都是基于银河麒麟v10真机的arm架构包&#xff0c;如果是在windows上的虚拟机上 把依赖包换成x64的包即可&#xff0c;方法步骤都是一样 一.node安装 原始方法安装&#xff08;建议用第二种nvm方法&#xff0c;因为更简单&#xff09;&#xff1a; 1…

Salesforce生态系统2024年就业趋势

对于Salesforce专业人士来说&#xff0c;新一年的开始都是激动人心的。但2023年仍存在显著挑战&#xff0c;经济技术低迷导致裁员&#xff0c;以及Salesforce生态系统增长放缓等等&#xff0c;这些挑战将延续到2024年。 回顾2023年 2023年&#xff0c;Salesforce生态系统以及…

Navicat 技术干货 | 为 MySQL 表选择合适的存储引擎

MySQL 是最受欢迎的关系型数据库管理系统之一&#xff0c;提供了不同的存储引擎&#xff0c;每种存储引擎都旨在满足特定的需求和用例。在优化数据库和确保数据完整性方面&#xff0c;选择合适的存储引擎是至关重要的。今天&#xff0c;我们将探讨为 MySQL 表选择合适的存储引擎…

反向传播(Back Propagation)

目录 回归简单模型的梯度计算 反向传播计算图链式求导链式法则定理&#xff1a; Forward 前馈计算反向传播Back Propagation例子线性模型的计算图计算前馈过程反向传播过程&#xff08;逆向求导&#xff09; 练习 Pytorch中的前馈过程和反向传播过程Tensor 回归 简单模型的梯度…

C#基础:通过QQ邮件发送验证码到指定邮箱

一、控制台程序 using System; using System.Net; using System.Net.Mail;public class EmailSender {public void SendEmail(string toAddress, string subject, string body){// 设置发件人邮箱地址以及授权码string fromAddress "xxxxxqq.com";string password …

LORA的基本原理

本文将介绍如下内容&#xff1a; 什么是Lora高效微调的基本原理LORA的实现方式LORA为何有效&#xff1f; 一、什么是LoRA LoRA 通常是指低秩分解&#xff08;Low-Rank Decomposition&#xff09;算法&#xff0c;是一种低资源微调大模型方法&#xff0c;论文如下: LoRA: Low…

【漏洞复现】优卡特脸爱云一脸通智慧管理平台文件上传漏洞

Nx01 产品简介 脸爱云一脸通智慧管理平台是一套功能强大&#xff0c;运行稳定&#xff0c;操作简单方便&#xff0c;用户界面美观&#xff0c;轻松统计数据的一脸通系统。无需安装&#xff0c;只需在后台配置即可在浏览器登录。 功能包括&#xff1a;系统管理中心、人员信息管…

智慧校园实验室安全综合管理平台如何保障实验室安全?

一、建设思路 实验室安全综合管理平台是基于以实验室安全&#xff0c;用现代化管理思想与人工智能、大数据、互联网技术、物联网技术、云计算技术、人体感应技术、语音技术、生物识别技术、手机APP、自动化仪器分析技术有机结合&#xff0c;通过建立以实验室为中心的管理体系&…

局域网的好哥们——广域网

广域网&#xff08;Wide Area Network&#xff0c;WAN&#xff09;是一种覆盖范围广泛的网络&#xff0c;它连接了不同地理位置的计算机和网络设备&#xff0c;并允许它们进行数据通信和资源共享。本文将介绍广域网的基本概念&#xff0c;包括定义、特点、构成要素以及应用场景…

思维导图制作MindNode 2023中文

MindNode 2023是一款思维导图应用程序&#xff0c;专为创意和组织思维而设计。它通过直观的界面和强大的功能&#xff0c;帮助用户创建、编辑和分享思维导图。MindNode 2023支持多种主题和节点&#xff0c;允许用户自定义图标、颜色和形状&#xff0c;使思维导图更加清晰、有条…

策略模式-实践

俗话说&#xff1a;条条大路通罗马。在很多情况下&#xff0c;实现某个目标的途径不止一条&#xff0c;例如我们在外出 旅游时可以选择多种不同的出行方式&#xff0c;如骑自行车、坐汽车、坐火车或者坐飞机&#xff0c;可根据实 际情况&#xff08;目的地、旅游预算、旅游时间…