Skip to main content
. 2025 Jul 23;25(15):4553. doi: 10.3390/s25154553
Algorithm 1 DualBranch-AMR
Require: Labeled data xft, Unlabeled data xpt, Initial model f
  1: for each xi in xpt do
  2:    xweakWeakAugment(xi) {Equation (7)}
  3:    xstrongStrongAugment(xi) {Equation (8)}
  4: end for
  5: f1,f2InitializeDualModels(f) {Equations (9) and (10)}
  6: for each epoch in all epoch do
  7:    for each batch (xft,xweak,xstrong) do
  8:        (yft1,yweak-1,ystrong-1)f1(xft,xweak,xstrong) {Equation (11)}
  9:        (yft2,yweak-2,ystrong-2)f2(xft,xweak,xstrong) {Equation (12)}
10:    end for
11:    for each unlabeled sample x in xpt do
12:        for each model m in {f1,f2} do
13:            Determine if x is stable for m {Equations (13) and (14)}
14:        end for
15:        if both f1 and f2 find x stable then
16:            Calculate loss L {Equations (15)–(18)}
17:        end if
18:    end for
19:    Update f1 and f2 using total loss L
20: end for