A parser is used to parse .jdx files of individual molecules into arrays. Linear interpolation is then carried out to interpolate missing values of the spectrum. The spectrum intensity is then normalized to be between 0 and 1. Since there are different data sources involved, there are different ranges of available wavenumbers. Therefore, we chose to standardize the spectra to a range of 600 cm -1 to 4000 cm -1 . To find labels for the functional groups present in the molecules, we use the identification method and SMARTS strings definition used by Fine et al. in their work.