# Deep Fake Image Detection Based on Pairwise Learning
## 4 Experimental Results  
### Fake Face Image Detection  
#### 4.1.1 Data Collection  
The dataset used in the experiments was extracted from CelebA [24]. The images from the CelebA covered large pose variations and background clutter, including 10,177 of identities and 202,599 aligned face images. In the experiment, five state-of-the-art GANs were used to produce the training set of fake images based on the CelebA dataset, and they were as follows:  
* DCGAN (Deep convolutional GAN) [15]
* WGAP (Wasserstein GAN) [16]
* WGAN-GP (WGAN with Gradient Penalty) [17]
* LSGAN (Least Squares GAN) [18]
* PGGAN [1]  
By using the selected GANs, it was hard to synthesize realistic images with high-resolution, except for the PGGAN. In [15; 16; 17; 18], the default size of the generated face images in the released source code was only \(64\times 64\) pixels. Specifically, if the size of the fake image was set to \(128\times 128\) pixels, many artifacts would be significant in the generated images, so the artifacts to recognize the fake image would be easily observed. In such a case, the fake image detector would not be needed. The most GANs could generate realistic fake images only of the smaller resolution, such as \(64\times 64\) pixels. To achieve a fair comparison of the performance of different image detectors in recognizing fake images generated by different GANs, the size of the input image was consistent, and it was set to \(64\times 64\) pixel. In the PGGAN, the best model released by the authors of the corresponding GAN was used. However, the PGGAN [1] can be used to generate the high-resolution fake face images, in which the size of the generated face image is different from the one used in our experiments. Therefore, in the experiments, we downsampled the fake face image generated by the PGGAN to \(64\times 64\). Note, the generated images are downloaded from the official website provided by the authors in PGGAN [1].  
Each GAN randomly generated 40,000 fake images with the size of \(64\times 64\), which were recorded into the fake image pool. Since the fake image is generated by giving a random vector to GANs, the generated content will vary each time unless we set the random vector as a constant vector. To have a fair experiment result, we save the generated face images to a fake image pool to ensure the fake contents of the generated face images are consistent in each experiment. There were 200,000 fake images in total in the pool. We also randomly selected 200,000 real images from CelebA. Therefore, the total number of images, including real and fake images, was 400,000. To evaluate the performance of the proposed method, we split the image dataset into the training, validation, and test sets consisting  
\begin{table}
\begin{tabular}{c l l} \hline \hline
**Layer Number** & **Feature Learning** & **Classification** \\ \hline
1 & conv. layer, kernel = 7 \(\times\) 7, stride = 4, \#channels = 48 & Conv. layer, kernel = 3 \(\times\) 3, \#channels = 2 \\
2 & Dense block \(\times\) 3, \#channels = 60 & Global average pooling \\
3 & Dense block \(\times\) 4, \#channels = 78 & Fully connected layer, neurons = 2 \\
4 & Dense block \(\times\) 5, \#channels = 99 & \\
5 & Dense block \(\times\) 3, \#channels = 171 & \\ \hline
6 & Fully connected layer, neurons = 128 & SoftMax layer \\ \hline \hline \end{tabular}
\end{table}
Table 2: Structure Parameters of the Proposed Common Fake Feature Network for Fake General Image Detection.  
of 380,000, 10,000, and 10,000 images, respectively. In each set, the number of fake images was equal to the number of real images.