shaws34 / Audio-Undistortion

0 stars 0 forks source link

Database module #3

Open shaws34 opened 6 months ago

shaws34 commented 6 months ago

Setup and create the database files. This will include the connection to a SQL Server, the validating/creation of the database, the creation of all the tables planned to be used, and a DAO class for the objects that may be used in the web service.

Some tables that will be required:

DataSet - Parent entity to track a group of data files as a training set

id created_timestamp last_updated_timestamp name

DataFile - a file used in the training or validation

id file_location - relative path the system file containing the data file_extenstion - extension of the file dataset_id - fk to DataSet parent_data_file - fk to another DataFile. Intended for when an original data file is processed for training. e.g. distorted, or standardized to specific length and/or format created_timestamp last_updated_timestamp training_flag - boolean for whether the file will be used in training validation_flag - boolean/tinyint, if true, then it will be used in the validation process

NeuralNetwork - Table to track the creation of a neural network

id - primary identifier created_timestamp last_updated_timestamp name - name of the neural network file_location - relative path to the system .pt file containing save information of the neural network model optimizer ... other information regarding the NN that may be useful/interesting to track

NeuralNetworkTraining - Table to track a neural network's progress over time

id neural_network_id - foreign key to a specific neural network created_timestamp last_updated_timestamp dataset_id - fk to a dataset execution_time - cpu or real time for training to finish architecture - information regarding the machine that processed the training loss_info - not sure what all the fields would be, but we want to track the score of the neural network after training minimum_loss - average_loss - maximum_loss -