To let the FoG classifier and the subject discriminator work together, the adversarial training, which was originally proposed for generation tasks [1]}, was introduced so that the training was not limited to the two independent loss functions proposed as \(J_{C}\)  and \(J_{D}\) . During the adversarial training, the classifier continuously attempts to generate better FoG representations for improving the FoG classification performance related to the training data, whilst the subject discriminator was trained to become a better detective for correctly judging whether two representations are uniquely distributed or not.
The equilibrium of this game is achieved when the classifier is able to detect FoG patterns accurately, and the subject discriminator is left to always randomly guess at 50% confidence for the representations.
In detail, the adversarial training optimizes the loss function \(J_{A}\)  in Eq. (REF ), which combines Eq. (REF ) and Eq. (REF ) to play a minimax game.
\(\max _{G} J_{A}= - \sum _{m^{\prime } \ne m^{\prime \prime }} log(1 - D(G(\mathbf {X}_{t, p}^{m^{\prime }, n^{\prime }}), G(\mathbf {X}_{t, p}^{m^{\prime \prime }, n^{\prime \prime }})).\) 
