0
votes

I am trying to generate synthetic numeric (float) data using Python for an original 3D numpy array (55, 125, 125). There are several synthetic image generation VAE example out there, but I am not able to find any guide to do this on non-image numeric synthetic data generation using GAN or VAE. Can anyone guide me in this process?

Below, is the only code that I have found but I dont know how to fit it to my problem size and shape of the data, or which variable would be the generated synthetic data.

                from keras.layers import Input,Dense
                from keras.models import Model
                
                # number of neurons in the encoding hidden layer
                encoding_dim = 5
                # input placeholder
                input_data = Input(shape=??,) # 
                # encoder is the encoded representation of the input
                encoded = Dense(??, activation ='relu')(input_data)
                # decoder is the lossy reconstruction of the input
                decoded = Dense(???, activation ='sigmoid')(encoded) 
                
                
                # this model maps an input to its reconstruction
                autoencoder = Model(input_data, decoded)
                
                
                
                
                # this model maps an input to its encoded representation
                encoder = Model(input_data, encoded)
                # model optimizer and loss
                autoencoder = Model(input_data, decoded)
                
                # loss function and optimizer
                autoencoder.compile(optimizer='adam', loss='MAE') #'binary_crossentropy')
                
                # train test split
                from sklearn.model_selection import train_test_split
                x_train, x_test, = train_test_split(df_array_real[0:1015625,7], test_size=0.1, random_state=42)
                # 7 is the column name to be synthetizez
                
                # train the model
                autoencoder.fit(x_train,
                                x_train,
                                epochs=50,
                                batch_size=256,
                                shuffle=True)
                
                autoencoder.summary()
                
                # predict after training
                # note that we take them from the *test* set
                encoded_data = encoder.predict(x_test)
Please provide enough code so others can better understand or reproduce the problem.Community