## 3 Research Methodology
a loss function, which evaluates how well the synthetic samples align with the statistical properties and patterns of the real data. By iteratively minimizing this loss throughout training, CTGAN strives to generate synthetic data that accurately captures the distribution and characteristics of the original dataset. As indicated in Table 2, achieving lower loss values, including negative values, signifies effective performance by the neural networks. To monitor training progress, we visualize the loss values across epochs, with the results presented in the accompanying graph. Additionally, Table 3 outlines the hyperparameter values used for the CTGAN. As shown in Figure 1, we configured four different training parameters to train our CTGAN model for data synthesis. Our experiments with different settings yielded the following results: As shown in Figure 1a, the model was trained for 100 epochs, but the generator loss did not achieve negativity, indicating instability. Additionally, generator loss fluctuated, and the discriminator failed to converge to zero, leading to poor-quality synthetic data. The discriminator exhibited erratic behavior, struggling to differentiate between real and synthetic data, often making arbitrary guesses. This instability in both components resulted in suboptimal performance in data generation. Figure 1a-d are shown the impact of epoch 100, 200, 800 and 500 respectively. As shown in Figure 1b, the model was trained for 200 epochs, leading to slight improvements in both generator and discriminator loss values compared to (a). The extended training period contributed to more stable losses, though the generator loss still did not reach negativity. The discriminator showed better stability around zero, but challenges persisted. While this extended training duration demonstrated some progress, it did not fully resolve the issues observed in (a), emphasizing the need for further optimization. In the cases of curves c and d, their discriminator losses converge to zero, signifying that the discriminator becomes highly efficient in distinguishing between real and synthetic data. Moreover, both generator losses converge to stabilized negative values, indicating the successful optimization of the generator's ability to produce realistic synthetic data. However, a notable distinction arises when examining curve c. After 500 epochs, the generator loss in curve c experiences a shift, changing its value and becoming positive. \begin{table}
\begin{tabular}{c c c} \hline \hline
**Neural Network** & **Score** & **Interpretation** \\ \hline \multirow{3}{*}{Generator} & \multirow{3}{*}{Zero (or positive)} & The discriminator is not good at distinguishing real vs. synthetic data \\ \cline{3-3}  & & Negative & The discriminator can easily distinguish real vs. synthetic data. \\ \hline \multirow{3}{*}{Discriminator} & \multirow{3}{*}{Zero (or positive)} & The discriminator can identify that the synthetic data are synthetic. The generator cannot fool it. \\ \cline{3-3}  & & Negative & The discriminator cannot identify that the synthetic data are synthetic. The generator can fool it. \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Loss function interpretation of the CTGAN. Despite the initial stabilization, this alteration implies a potential fluctuation in the generator's performance, introducing uncertainty in the quality of the generated synthetic data. On the other hand, curve d, trained for 500 epochs, maintains a stabilized negative value for its generator loss. Simultaneously, the discriminator loss remains at zero, displaying a scenario where the generator has undergone optimal training. The synthetic data produced by the generator closely resembles the real data to the extent that the discriminator cannot effectively differentiate between the two. This achievement implies a high level of realism in the generated data, suggesting the model underwent successful and advanced training.