Build pipeline with multiple files, each containing examples

Hello. I am walking my first steps in NN and after hitting a few walls in tensorflow I decided to try Pytorch. The idea of the system I want to train is to dereverberate audio files. I have already built the database. It consists in csv files with rows containing input/target-output examples. Each CSV contains information of a particular audio file, so the amount of rows vary with each file. I have a lot of files so I should ideally load them as needed, I can’t save them in RAM. The rows in each csv file shouldn’t be shuffled, otherwise I should keep track of the NN output to reorder them afterwards, since the information in the csv has a temporal aspect. I did the tutorials on the pytorch site and few other from other sources but I haven’t been able to figure out how to deal with multiple rows and multiple files. If anyone can point in the right direction, I would really appreciate it. My python skills are a little basic so I know I should make a custom dataset class, but failed so far in my attempts. Thank you.

If I understand correct, the rows of a csv file is a temporal sequence representing the audio’s information at each time (interval). If that is the case, I recommend you look into recurrent neural networks (RNN). RNNs are specifically designed to handle ordered sequential data.

The PyTorch NLP tutorial covers a lot of knowledge on RNN: http://pytorch.org/tutorials/beginner/deep_learning_nlp_tutorial.html. While it uses language tasks as examples, many techniques apply to audio sequences.