The raw spectra obtained from external sources had variable resolutions ranging from 0.1 cm -1 to 10 cm -1 . AIST spectra were obtained as images and subsequently digitized using pixel mapping to obtain numeric spectra. As such, different graph and axes sizes resulted in variable spectral resolutions due to different numbers of pixels in the x-dimension. After digitization, all spectra were processed using simple linear interpolation to produce arrays of 1,800 elements with a step size of 2 cm -1 , representing spectra ranging from 400 cm -1 to 4,000 cm -1 to ensure homogenous data spacing. For spectra that did not cover this entire range (i.e., termination at 3,800 cm -1 ), the spectra were interpolated to their endpoints and then padded with the "Not a Number" (NaN) value so that they were consistently sized. In all subsequent loss, normalization, or accuracy computations during model training and evaluation, NaN values were excluded using masking operations.