PE&RS November 2019 Full - page 844

Algorithm 1: ESAL Framework
Input:
Initial training set:
L
= {(
x
i
,
y
i
)
l
i
=1
}
Unlabeled samples:
U
= (
x
j
)
u
j
=1
Initial iteration times:
K
= 0
Query size:
Q
Limit iteration times:
T
While
K
T
:
1. Train Base Classifier using
L
.
2. Use
U
as the test set.
3. Use strategy A to select the unlabeled samples that have
maximum uncertainty and get the sample sorting
L
A
,
use strategy B to select the unlabeled samples that have
maximum uncertainty and get the sample sorting
L
B
.
4. Obtain the
q
1
most uncertain samples from
L
A
, obtain the
q
2
most uncertain samples from
L
B
.
5. If
q
1
q
2
Φ
:
When strategy A and strategy B select the same candi-
date samples, in order to meet the requirements of each
iteration,
R
is the number of samples that needs to be
added.
R
=
Number
(
Q
q
1
q
2
).
R
index
represents
randomly selecting the top unselected
samples in strategy A and strategy B, and to make sure
q
1
+
q
2
=
Q
.
R
index
=
Random
(
L
A
Q
*
w
A
,
L
B
Q
*
w
B
)
Else:
R
= 0
6. Labeling
Q
candidate samples by human experts, where
the sample labeled with strategy A is
L
Q
1
,
the sample
labeled with strategy B is
L
Q
2
.
7. Update the unlabeled data set and labeled data set.
U
=
U
/(
L
Q
1
L
Q
2
)
L
=
L
(
L
Q
1
L
Q
2
)
8. Update iteration times
K
=
K
+ 1.
9.
Until
the number of iterations are reached.
Figure 1. Flowchart of
DSC-CASSL
algorithm.
Algorithm 2: DSC-CASSL Framework
Input:
Initial training set:
L
= {(
x
i
,
y
i
)
l
i
=1
}
Unlabeled samples:
U
= (
x
j
)
u
j
=1
Initial pseudolabeled data set:
S
pseudo
=
ϕ
Initial iteration times:
K
= 0
Q
u
ery size:
Q
Limit iteration times:
T
While
size of
(
U
)
10 and
K
T
:
1. Train Base Classifier using
S
pseudo
L
.
2. Applying Base Classifier to predict the unlabeled data.
Using strategy A to select
q
1
data
U
Q
1
= (
x
s
1
)
q
1
s
1=1
from
U
and using strategy B to select
q
2
data
U
Q
2
= (
x
s
2
)
q
2
s
2=1
from
U
. Make sure that
Q
=
q
1
+
q
2
or
Q
=
q
1
+
q
2
+ R
3. Label
U
Q
=
U
Q
1
U
Q
2
by human experts and update the
following four data sets:
L
Q
1
=
L
U
Q
1
,
L
Q
2
=
L
U
Q
2
,
L
=
L
(
U
Q
1
U
Q
2
),
U
=
U
\(
U
Q
1
U
Q
2
).
4. Using Base Classifier to classify
U
S
pseudo
and the classi-
fication results being
Label
1
.
5. Using
L
Q
1
to train Check Classifier 1 and using
L
Q
2
to
train Check Classifier 2.
6. Classify
U
S
pseudo
by using Check Classifier 1 and the
classification results being
Label
2_
c
1
. Classify
U
S
pseudo
by using Check Classifier 2 and the classification results
being
Label
2_
c
2
.
7. Update:
S
pseudo
{(
x
i
,
Label
1
(
x
i
))|
Label
1
(
x
i
) ==
Label
2_
c
1
(
x
i
) ==
Label
2_
c
2
(
x
i
),
x
i
U
S
pseudo
}.
8. Update:
9.
U
= {
x
i
, (Label
1
(
x
i
))
Label
2_
c
1
(
x
i
)) or (Label
1
(
x
i
)
Label
2_
c
2
(
x
i
)) or (Label
2_
c
1
(
x
i
)
Label
2_
c
2
(
x
i
)),
x
i
U
S
pseudo
}
10.
K
=
K
+1
while
size of
(
U
)
10 and
K
T
:
11. Run:
Algorithm 1 ESAL Framework
Until
the number of iterations are reached.
Return
: Trained Classifier
844
November 2019
PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING
775...,834,835,836,837,838,839,840,841,842,843 845,846,847,848,849,850,851,852,853,...854
Powered by FlippingBook