[Re] Generative causal explanations of black-box classiﬁers
Anonymous Author(s)
AfﬁliationAddress email
Reproducibility Summary
Explainability of black-box classiﬁers is an important aspect of neural models that often is non-existent.
Classiﬁersmade for tasks such as object recognition and decision making often lack transparency which causes vulnerabilitybeing overlooked [1].
Without insight into the reasons behind a decision made by a neural model, potential securityrisks or classiﬁcation mistakes can be missed [1].
Multiple solutions have been posed to solve this problem.
Anexample is the method designed by O’Shaugnessy et al.
The authors design a learning framework that leverages agenerative model and information-theoretic measures of causal inﬂuence.
The objective function encourages both thegenerative model to faithfully represent the data distribution and the latent factors to have a large causal inﬂuence onthe classiﬁer output.
In this study, the reproducibility of the method developed by O’Shaugnessy et al. is tested.
Severalclaims are challenged to ensure the validity of the method.
Furthermore, the method is extended to test generalizability.
It was found that the claims are not as strong as the authors suggested and the method is not as easily generalizableas expected.
However, for the task described in the original study, the method is completely reproducible, and thus avalid contribution to machine learning innovation.
Submitted to ML Reproducibility Challenge 2020.
Do not distribute.
Scope of reproducibility
In "Generative causal explanations of black-box classiﬁers" the authors propose an explanatory model that can explainany black-box classiﬁer post-hoc based on a learned low-dimensional representation of the data [2].
They call thisexplanatory model a generative causal explainer (GCE).
The authors have designed a framework that leverages agenerative model combined with an information-theoretic measure of causal inﬂuence.
They use these by creatingan objective function that encourages latent factors in the generative model to represent the data distribution and tohave a large causal inﬂuence on the classiﬁer output.
The main claim of the paper is that their method can generateexplanations for any classiﬁer that admits class probabilities and a gradient.
To review this paper and its central claim we will attempt to reproduce parts of the paper, and go beyond the originalresults by carrying out extra experiments.
Reproducing the ﬁgures presented in the original paper was quite easily doneusing the authors provided code.
Because of this the main focus of our research will be based on extra experimentswhere we more thorougly investigated the method that is proposed in the paper.
The reproduction of the ﬁgures canbe found in Appendix D.2.
The extra experiments are grouped in three main parts.
The central claim will be tested by assessing the methodwith different classiﬁers with architectures based on competitors of the ImageNet challenge [3].
(2) We investigatemore thoroughly the parameter selection of the paper.
In the paper the authors propose 3 parameters that dictatethe number of causal and non-causal variables, and their inﬂuence on the objective function.
These parameters aredenoted by K, L and λ .
In the original method the authors provide and use a heuristic algorithm to determine theoptimal conﬁguration of these model parameters.
Although this heuristic algorithm is described, the authors do notstate these results, and therefore do not show the sensitivity of the model to parameter choice.
Therefore, varying theparameters will shed light on this sensitivity.
The generalizability of the model will be investigated by testing themethod with more complex datasets than the one used in the original paper.
In summary, the following will be tested.
• The claim that the method works with any gradient-based black-box classiﬁer.•
The inﬂuence of the parameters K, L and λ on the explanation performance.•
The generalizability of the method to a more complex dataset.
Methodology2.1 Causal Model Description
In the paper the authors attempt to causally explain black-box classiﬁers.
Explanations, in this case, take the form ofa low-dimensional and independent set of "causal factors" α ∈ R K .
Therefore, manually changing these parametervalues should produce a corresponding change in the classiﬁer output statistics.
The method also allows for additionalindependent non-causal factors β ∈ R L .
These factors do not change the corresponding output of the model.
Together,these factors ( α, β ) form a low-dimensional representation of the real data distribution of a given dataset X .
In thepaper it is described that a key feature of these latent factors ( α, β ) is their independence.
This independence allowedfor their chosen metric for causal inﬂuence to simplify to the mutual information metric.
The generative model that is used to form the low-dimensional explanatory factors is mainly a variational auto-encoder(VAE).
But the authors also propose analysis using a linear-Gaussian generative map, this map is mainly used to showcase geometric intuition that illuminates the function of their proposed training objective (described in Section 2.1.2).
2.1.1 Causal Inﬂuence Metric
The authors decide on a causal inﬂuence metric called information ﬂow.
Information ﬂow quantiﬁes the causal inﬂuence of observational distributions in the standard deﬁnition of conditional mutual information with interventionaldistributions.
Due to the independence of α and β the information ﬂow from α to Y coincides with the mutualinformation between α and Y .
[Equation]
2.1.2 Optimization Objective
To learn the generative mapping that explains a given black-box classiﬁer the authors construct an objective functionthat enables the mapping to reconstruct the original data distribution, ensures independence between α and β , anddictates a large causal inﬂuence of α on Y .
The objective function is deﬁned as:
[Equation]
where g is a generative function (in our case a VAE), C ( α, Y ) is the metric for causal inﬂuence from Eq.
1, and D isa measure of similarity between the generative function and the actual dataset.
The λ parameter controls how stronglythe model should represent the actual underlying dataset.
Careful selection of this parameter is required to ensure thatthe distribution p ( X | α, β ) lies in the data distribution p ( X ) , but this similarity term ( λ · D ( p ( g ( α, β ))) ) should notoverwhelm the causal inﬂuence term.
2.1.3 Training Procedure
The objective described in Eq.
2 is maximized using Adam.
The causal inﬂuence term is computed using a samplebased estimate.
The generative model uses a latent vector of length K + L to generate new images that lie in theoriginal data distribution.
To estimate the causal inﬂuence term the ﬁrst K terms are sampled N α times and the last
L terms are sampled N β times.
An intuition behind this sample-based approach can be found in the original paper in
Appendix D.
To train the causal explanatory model the parameters K, L , and λ must be selected.
Respectively they denote thenumber of causal terms, the number of noncausal terms, and the trade-off between causal inﬂuence and data ﬁdelityin our objective.
In the paper these parameters are tuned using a heuristic method shown in Figure 1.
The authors donot expand on this selection method, nor do they investigate the effect of different selections of these parameters.
Implementation
All implementation was done in Python 3.8 using Pytorch 1.7.1, and the models were trained on local machines [4].
The original code provided by the authors was written in pytorch 1 .
All our code is avaliable from GitHub 2 .
Furtherinstructions on how to run our provided code can be found on the repository.
3.1 Datasets
The original datasets used were the well known MNIST and fashion MNIST (fMNIST) datasets [5, 6].
These datasetswere supplied alongside the rest of the code provided by the authors.
MNIST is a collection of written digits andfMNIST is a collection of clothing articles traditionally used for benchmarking machine learning algorithms.
Both
MNIST and fMNIST consist of 70.000 grayscale images with a resolution of 28 x 28 pixels.
The paper did not applyany transforms on the dataset.
For part of our experiments we used the CIFAR-10 dataset.
CIFAR-10 consists of60.000 labeled images that are subdivided into 10 classes, much like the MNIST dataset.
The images have a resolutionof 32 x 32 pixels, which is slightly larger than the images in the MNIST dataset.
However, considering the complexityof the objects in the CIFAR-10 images, the resolution is relatively low.
A resolution of 28 x 28 is sufﬁcient for clearlydisplaying a written number, but displaying a truck with a resolution of 32 x 32 means that quite some detail is lost.
Furthermore, the images are coloured.
Resulting in two more channels that convey extra information about the object.
CIFAR-10 is used without applying any transforms, with 50,000 training images and 10,000 testing images.
For training the classiﬁer, the training set is split up in 40,000 training images and 10,000 validation images, allowing usto closely monitor the model performance.
3.2 Models
To reproduce the ﬁgures as shown in the original paper we retrained all models with the provided code and recreatedthe ﬁgures using the provided scripts.
As described in Section 1 we wanted to test the method more extensively by testing the method with more classiﬁersthan the one provided in the authors’ code.
Furthermore we also wanted to test how the K and L scale with thecomplexity of the dataset and evaluate how the method performs on relatively more complex datasets.
To test thesepoints we created more classiﬁer models described below and we needed more complex generative models that areable to represent the underlying data distribution.
3.2.1 Classiﬁers
To test the generalisability of the method we tested the method using different classiﬁers.
The authors used a relatively simple shallow network to work with.
For our own experiments we created and tested three architecturesbased on ResNet, DenseNet and InceptionNet [7, 8, 9].
All these models were state-of-the-art when proposed.
Allimplementation details about these classiﬁers can be found on our code repository and the models are described in
Appendix A.1.
3.2.2 Generative Models
CVAE
The authors provided two architecures in their code handed in alongside their work.
They deﬁned a Convolutional Variational Autoencoder (CVAE), a VAE consists of an encoder and a decoder.
The encoder maps input toa lower-dimensional latent space, the decoder then takes this mapping and reproduces the output.
The latent spacefollows properties that allow us to generate new samples [10].
Both the encoder and the decoder consist of threeconvolutional layers followed by three ReLU activation layers in the encoder and two ReLU activations and a ﬁnalsigmoid layer in the decoder.
The encoder ends with two separate linear layers for the mean and log-variance, theparameters of the latent distribution.
Using CIFAR-10 increases dimensionality compared to MNIST/fMNIST.
CIFAR-10 consists of RGB images witheach color channel having a range of 0-255.
While MNIST is grayscale and uses one binary channel.
Using such adense dataset suggests the need of models with higher complexity.
Hence we introduce the following variant of the CVAE:
CVAEImageNet
The CVAEImageNet is almost entirely the same as the original CVAE described above.
The
CVAEImageNet architecture was also deﬁned by the authors in their provided code.
The only difference is that eachconvolutional layer is followed by a batch normalisation layer.
A batch normalisation layer standardises the inputs toits consecutive layer, which stabilises the learning process along with reducing the amount of epochs needed to obtainconvergence.
Batch normalisation is an approach to eliminate the phenomenon called internal covariate shift.
Theinternal covariate shift is the effect of the input distribution shifting while the input is fed through each layer whichcauses the algorithm to chase a moving target.
This is a common problem for advanced deep neural networks.
3.3 Hyperparameter Selection
To reproduce the ﬁgures in the original paper we used the same hyperparameters as provided in the authors’ code andpaper.
In general the authors used a batch size of 64 and a learning rate of 0.0005.
All models were trained using the
Adam optimizer.
Furthermore the optimal values of K, L and λ depend on what dataset the experiment was run.
For the MNIST datasetthe authors used values of respectively 1, 7 and 0.05.
For the fMNIST dataset respectively 2, 4 and 0.05 were givenas optimal hyperparameters.
As described in Section 2.1.3, the authors used a sample-based method to estimate thecausal inﬂuence metric.
For all models trained to create the ﬁgures in the original report they used 25 samples for αand 100 samples for β ( N α = 25 , N β = 100 ).
The α and β vakyes were found by the authors using the heuristicmethod described in Figure 1.
The N α and N β values were not elaborated on in the paper.
However, the parameters used in this heuristic method and the results leading to the optimal parameter conﬁgurationare not discussed by the authors.
Therefore, for reproduction purposes, we attempt to implement Algorithm 1 (asshown in Figure 1) in Python.
First, step 1 optimises only the data similarity part, denoted by D , of the objective function (2), while increasing L on every iteration.
Note that this term D measures the similarity between the learneddata distribution and the real dataset.
We use 3000 training steps to train the explainer in each iteration.
The optimal
L is found when D plateaus.
Intuitively, this ﬁnds the total number of latent factors needed to adequately representp ( X ) .
We deﬁned the plateau criteria as met when the relative improvement of D in successive runs is smaller than1%.
However, measuring this relative improvement turned out to be difﬁcult because of high variance in the results of
D (detailed results can be found in ﬁgure 14 in appendix B).
To accommodate to this situation, we measure the relativeimprovement of the last 500 training steps.
Second, step 2 optimises the causal inﬂuence term C of objective 2 whilekeeping D as optimal as possible.
In each iteration L is decremented by 1 and K is incremented by 1, keeping thetotal number of latent factors equal.
Per conﬁguration of K and L, the optimal λ term is determined, which functionsas a trade-off term between causal inﬂuence and data ﬁdelity.
The optimal value is derived by step-wise incrementingλ by 0.1 until D ’approaches’ the optimal value from step 1, as described in ﬁgure 1.
These two steps are repeateduntil C plateaus.
In the implementation, the criteria for C plateauing is set to a relative improvement smaller than 1%.
However, the criteria for D ’approaching’ the optimal value from step 1 was more difﬁcult as it has a large inﬂuenceon the optimal λ parameter will be chosen.
Results of varying this criteria are discussed in the results section 4.2.
Results
4.1 Classiﬁers
The ﬁgures as they were originally presented in the paper can be found in Appendix 5.3.
Furthermore we reproducedthese ﬁgures by retraining the models, these ﬁgures can also be found in Appendix 5.3 in Figure 10.
The loss andaccuracy curves for all classiﬁers during training can be found in Appendix A.2.
4.1.1 Inception-Net
As can be seen from the results presented in Figure 2 the created sweeps do not seem to indicate that only α inﬂuencesthe classiﬁer output, in the β sweeps we also see that changes in the classiﬁer output are introduced.
Furthermore itseems that the classiﬁer is "tricking" itself and seems to not be able to classify correctly anymore.
Before trainingthe generative causal explainer, the classiﬁer achieved a 99% accuracy as indicated in Appendix A.2.
In the Figure 2however, the classiﬁer does not seem to be able to classify correctly.
The sweeps range from [ α − 3 , α +3] and [ β i − 3 , β i +3] with the middle column being examples drawn from MNIST.
This holds for all ﬁgures that denote explanations of a certain classiﬁer.
[Figure]
The generated examples, when visually examined, do not truly look like they are drawn from the underlying MNISTdataset.
On the right hand side of the left plot of Figure 2 some of the generated images look more like random noisethan actual digits.
4.1.2 Res-Net
The results from the generative causal explainer using the Res-Net classiﬁer seem more inline with the results obtainedby the authors from the original paper.
These results are presented in Figure 3.
Visually we notice that the left plot, which indicates the causal factor being changed, does indeed induce a change in classiﬁcations.
Furthermore the rightplot, which indicates noncausal factors, does not induce a change in classiﬁer output.
It does have one misclassiﬁcationhowever in the 3rd row.
[Figure]
4.2 Hyperparameters
In this section we go over results that show the difﬁculties of the hyperparameter selection procedure described insection 3.3.
The main three hyperparameters of the explanation model are K, L and λ , determining respectively thenumber of causal factors, the number of non-causal factors and the trade-off between causal inﬂuence and data ﬁdelityterms of the objective function (2).
All tests are performed on the fMNIST dataset, using the t-shirt, dress, and coatimages.
Classiﬁcation is done with the pre-trained base network, as used by the authors.
In the original paper, theauthors give the optimal set of parameters with K=2, L=4 and λ =0.05.
In our tests, training the explainer in eachiteration of the parameter selection procedure is done with 3000 training steps.
As explained in section 3.3 the biggest difﬁculty of reproducing the parameter selection procedure is setting the correctcriteria for selecting the optimal λ value in step 2.
Table 1 shows the results of selecting the optimal λ when K=2 and
L=4, the same latent parameters as the optimal set given by the authors.
From this table it becomes clear that settingthe criteria on a relative difference of 6% results in the optimal set K=2, L=4, λ =0.04, while setting the criteria on5% result in the set K=2, L=5 and λ =0.07.
Both these parameter sets are different than the optimal set given by theauthors.
Figure 4 and 5 show the visualised latent factors of both our obtained sets.
For both sets we see the samephenomenon.
The α sweep is correct, as it should change the output of the classiﬁer.
However, the β sweeps in bothﬁgures seem to also change the output of the classiﬁer, which is incorrect.
This shows us two things, (1) the parameterselection procedure is difﬁcult to operate.
(2) the explanations by the latent factors are very sensitive to the selectedhyperparameters.
[Figure]
Conﬁguration
Relative distance {K,L, λ } to optimal D {2, 4, 0.01} 17.60% {2, 4, 0.02} 10.18% {2, 4, 0.03} 6.71% {2, 4, 0.04} 5.93% {2, 4, 0.05} 5.54% {2, 4, 0.06} 5.12% {2, 4, 0.07} 4.88% the λ term for K=2 and L=4 in step 2 of the parameter selection procedure on the fMNIST dataset. [Figure]
[Figure]
3 CIFAR-10 Dataset
[Figure]
Three sets of classes were used in order to test the generalizability of the authors GCE.
First we started with the twoclasses birds and planes.
The model provided by the author was not functioning correctly prior to adjustments.
This is a result of the CIFAR-10dataset introducing two additional color channels.
Likewise we see that the plotting mechanism provided by the authorwas not able to process the three added color channels.
This is why the visualisations (Fig. 15) were showing as binaryimages.
Nevertheless, the classiﬁer seems to work and the VAE is producing shapes but they are not really humaninterpretable yet.
[Figure]
After redesigning the VAE and plotting mechanism to assure it accepts coloured (and grayscale) images the modelwas trained using the two classes horses and trucks.
The results show (Fig. 6) that both the VAE and classiﬁer tookadvantage of the extra information hidden in the colour channels.
Zooming into a single row of the α sweep (Fig. 7) shows that the VAE generates more human interpretable samples.
Especially for the rows that contain horses.
From left to right we see the change from a truck to a horse. Neverthelesswe still notice that the classiﬁer is not functioning perfectly. Adjusting the β parameter should not inﬂuence thedecisions made by the classiﬁer. Still we see (Fig. 6b) that the classiﬁcations change when actually doing so.
Subsequently we wanted to challenge the classiﬁer and VAE a bit further.
Using the classes cats and dogs we proposeimages of animals with relatively similar structure.
The results show (Figure 16, in Appendix C) decreased performance for both the classiﬁer and VAE.
The reproducedsamples do not show any human interpretable images.
The classiﬁer does function, but its accuracy is lower comparedto using the horse and truck classes.
Discussion
The results of the reproducibility study show several things.
Most importantly, with the original code written by theauthors, it was possible to reproduce all results that the authors got during their research as shown in Appendix D.2.
However, while challenging their claims, a number of problems arised.
Firstly, the claim that the method works withall black-box classiﬁers that are gradient-based and allow probabilities was not possible to validate with this research.
Testing with more complex convolutional classiﬁers showed a deterioration of the explanations generated by the GCE.
The more complex the classiﬁer, the more the explanations of the GCE worsened.
The most probable explanation forthis decline in result quality is that with the growing complexity of the models, the decision boundary for the classesalso grows more complex.
The base generative model is not complex enough to approach this decision boundary andgenerate valid explanations.
Secondly, during testing of the hyperparameter selection method, it was found that the GCE is heavily inﬂuenced byother factors, e.g. classiﬁer choice or different datasets, showing that the method is not robust and needs extensiveparameter tuning to be usable.
Finally, the generalizability of the explanation method was tested and shown to be lacking.
The complexity of the
CIFAR-10 dataset resulted in poor loss values and an inadequate representation of the latent space.
The explanationsthat were generated were supposedly correct but not human-interpretable, as the classiﬁer often changed its outputeven though no changes in sweep could be detected by the human eye.
Putting this all together we can conclude that the authors work is reproducible to some extent.
The ﬁgures providedin the original paper are able to be reproduced.
The difﬁculty in applying the method however may indicate that thework is not easily generalizable or usable in real-world scenarios.
Time constraints during the research for this papermay also have had an effect on our results, as we were not able to extensively test more complex VAE architectures touse as a generative causal explainer.
5.1 What was difﬁcult
The initial code provided by the author was of chaotic structure and did not function as intended.
When followingthe included instructions the code did not reproduce the results as listed in the original paper.
Reorganising the codeand ﬁxing the underlying bugs took more time than anticipated.
Subsequently to the author responding to our changesthese complications were less problematic.
5.2 What was easy
After a rigorous update of the base code provided to us by the authors, reproducing the original authors’ results wastrouble-free.
We only needed to specify what result we wanted to show and the code worked as intended.
5.3 Communication with original authors
The authors established contact with our group after seeing our fork of their code.
The authors cleaned up their codefor us to work with and kept in contact with us during the entire project.
For instance, when problems arised duringtesting with other classiﬁers, one of the authors helped us ﬁgure out one of the possible reason for these problems.
Moreover, every question we had could be posed to the authors without issues.
AppendixA ClassiﬁersA.1 Classiﬁer DescriptionsA.1.1 Base network
This network, created by the authors of the original paper, used two convolutional layers which scaled the input imageup to 64 channels, both of these layers were followed by a rectiﬁed linear unit (ReLU) activation layer.
After thescaling up of the image a maximum pooling layer using a kernel of 2x2 was used.
Following the pooling layer adropout layer with a dropout percentage of 0.25 was applied, followed by 2 fully connected layers which downscalesthe input down to the amount of classes the data contains.
In between the two fully connected linear layers anotherdropout layer with a dropout percentage of 0.5 was used.
After the ﬁrst linear layer a ReLU activation layer was used,after the second linear layer a softmax activation layer was used to transform the data to a probability distribution forinference.
A.1.2 ResNet
ResNet is a deep neural network based on the idea of residual connections.
Residual connections allow for stablegradient propagation through a network.
Residual connections model x l +1 = x l + F ( x l ) instead of the more traditionalx l +
=
Fx l .
The addition of x l -term guarantees stabler gradient propagations [7].
The ResNet architecture contains multiple residual blocks (visually indicated in Figure 8a) stacked on top of eachother to create deep networks.
This block is visually shown in Figure 8a.
We used a smaller version of the original ResNet proposed in [7].
For our model we stacked 3 of these residual blocks.
Our residual blocks used convolutional layers with a kernel of 3x3 and a padding of 1.
Before feeding the input imagesinto these blocks ﬁrst the images were scaled up to have 16 colour channels using a convolutional layer and a batchnormalization layer followed by an activation function layer.
The output of these blocks are then fed into an outputnetwork which uses an average pooling layer and a linear layer to convert the output to the correct number of possibleclassiﬁcations.
We used the ReLU activation function as our non-linearity, and used a softmax function on our outputto convert it to a probability distribution.
A.1.3 DenseNet
DenseNet is an architecture that enables very deep neural networks by using residual connection.
But instead ofmodeling the difference between layers using the residual connections the model considers residual connections asa way to reuse features across layers.
This allows the model to remove redundant features.
A general DenseNetarchitecture is shown in Figure 8c.
In our case we implemented the DenseNet by deﬁning three modules, a DenseLayer, a DenseBlock, and a TransitionLayer.
A DenseLayer is one of the smaller squares in the ﬁgure, while a DenseBlock is multiple DenseLayer stackedon top of each other.
A TransitionLayer is the last layer and transforms the dimensionality of the features as they ﬂowthrough the model.
In our implementation one DenseLayer contains a 1x1 convolution followed by a subsequential3x3 convolution.
The output channels of these convolutions are concatenate to the original input.
Furthermore weapply a batch normalizations throughout the layer to stabilize training.
The non-linearity we use is the ReLU activation function.
A DenseBlock in our implementation consists of 3 DenseLayers followed by a TransitionLayer.
Inour model we stacked one of these DenseBlocks due to the relative simplicity of the task.
After the data was pulledthrough the block the output was transformed using an average pooling layer and a linear layer [8].
A.1.4 Inception
The GoogleNet, code named Inception, stacked multiple so-called convolutional blocks on top of each other.
Theseblocks are called Inception blocks.
An Inception block applies four convolution layers on the same input: a 1x1, 3x3,5x5, and a max pool layer.
The outputs of these layers are then concatenated and passed on to the next block.
In
Figure 8b an overview of a general Inception block is shown [9].
Since the original network was proposed to work with images of size 224x224, and the MNIST dataset only containsimages of size 28x28, we use a smaller down-scaled version of the network.
First the input image was scaled up to 64channels using a convolutional layer followed by a batch normalization layer for stability.
After the transformation,our network used only one Inception block, followed by a maximum pooling layer, an average pooling layer, and a linear layer to transform the output to the number of classes needed for classiﬁcation.
The non-linear activationfunction we used after each convolutional layer was the ReLU activation layer.
Only the output layer used a softmaxlayer to transform the output into a probability distribution.
[Figure]
A.2 Loss/accuracy curves during training
Curves gathered during training of the classiﬁers, the x-axis denotes the epoch and the y-axis the loss or accuracyduring training.
All models reach 100% accuracy fairly quickly, this has to do with the fact that the data fed to themodels are only consisting of 2 classes.
The 2 classes being 3 and 8 from the MNIST dataset.
Our 3 classiﬁers,
DenseNet, ResNet, and InceptionNet all achieve a very high performance of 100% while the base network achieved arelatively lower accuracy of 96%.
[Figure]
A.3 Explanations
[Figure] [Figure]
[Figure]
A.3.3 ResNet
[Figure] [Figure]
B Hyperparameter selection
[Figure]
B.1 High volatility of data similarity score
In this section we show the complementary results of implementing the hyperparameter selection procedure.
Asmentioned in section 3.3, step 1 of the procedure optimises data similarity between the learned data distribution andthe original data distribution measure by D ( p ( α, β ) , p ( X )) in the objective function.
As described by the authors, step1 is ﬁnished when the data similarity plateaus.
However, we found that the data similarity that is measured was toovolatile to easily compare across runs.
This is shown in ﬁgure 14 in which the value for D is plotted per training step.
[Figure] [Figure]
D Reproductions
We reproduced the ﬁgures presented in the original paper by using the author’s provided code.
We used the instructionsprovided on their repository to generate these images.
We re-trained all the networks that we could when generatingthese images, and found the ﬁgures generated by the scripts to be identical to the ones provided in the paper.
[Figure] [Figure]
[Figure] [Figure]
[Figure] [Figure]