Information Technology Reference
In-Depth Information
monitoring the change of the mixing model-related components
L
M
(
q
)ofthe
variational bound
L
M
(
q
)
between two successive iterations is lower than the system parameter
Δ
s
L
M
(
q
),
then the algorithm assumes convergence and returns.
The parameters are initialised in Lines 2 to 4 of
TrainMixing
.The
D
V
L
(
q
), as given by (7.95). If the magnitude of change of
K
mixing matrix
V
holds the vector
v
k
that corresponds to classifier
k
in its
k
th column. As by (7.13) the prior on each element of
v
k
is given by a zero-
mean Gaussian with variance
β
−
k
, each element of
V
is initialised by sampling
from
N
(0
,b
β
/a
β
) where the value of the random variable
β
k
is approximated by
its prior expectation. The distribution parameters for
q
β
(
β
k
) are initialised by
setting them to the prior parameters.
An iteration starts by calling
TrainMixWeights
in Line 8 to get the parame-
ters of the variational posterior
q
V
(
V
). These are subsequently used in Line 9 to
update the parameters of
q
β
(
β
k
)foreach
k
by calling
TrainMixPriors
.Lines10
to 14 determine the magnitude of change of
×
L
M
(
q
) when compared to the last
iteration. This is achieved by computing the
N
K
mixing matrix
G
=(
g
k
(
x
n
))
by calling
Mixing
. Based on
G
, the responsibility matrix
R
=(
r
nk
)isevalua-
ted by calling
Responsibilities
in Line 11. This allows for the evaluation of
L
M
(
q
) in Line 13 by calling
VarMixBound
, and determines the magnitude of
change
Δ
×
L
M
(
q
) in the next Line, which is subsequently used to determine if
the parameter updates converged. In the performed experiments, the function
usually converged after 5-6 iterations.
Next, the Functions
TrainMixWeights
,
TrainMixPriors
,
Mixing
and
Responsibilities
will be introduced, as they are all used by
TrainMixing
to train the mixing model.
VarMixBound
is described in the later Sect. 8.1.4.
Function.
Mixing(
M
,
Φ
,
V
)
Input
: matching matrix
M
, mixing feature matrix
Φ
, mixing weight matrix
V
Output
:
N × K
mixing matrix
G
get
K
from shape of
V
1
G
←
ΦV
2
limit all elements of
G
such that exp
min
≤ g
nk
≤
ln
max
−
ln
K
3
G
←
exp(
G
)
⊗
M
4
G
←
G
RowSum(
G
)
5
FixNaN(
G
,
1
/K
)
6
return G
7
Starting with
Mixing
, this function is used to compute the mixing matrix
G
that contains the values for
g
k
(
x
n
) for each classifier/input combination. It takes
the matching matrix
M
, the mixing features
Φ
, and the mixing weight matrix
V
as arguments, and returns
G
.
The mixing matrix
G
is evaluated by computing (7.10) in several steps: firstly,
in Line 2,
v
k
φ
(
x
n
) is computed for each combination of
n
and
k
.Beforethe
exponential of these values is taken, it needs to be ensured that this does not
cause any overflow/underflow. This is done by limiting the values in
G
in Line 3
Search WWH ::
Custom Search