I'm trying to work with Calcium-K line profiles from the Sun.
Image for reference. Please ignore the labels on the image and note that my profiles are not in image format (more info below).
I have over 1500 profiles like these for various latitudes and dates. The profiles are saved as 2D numpy arrays, where each array has two rows: the first row contains the wavelength values, and the second row contains the intensity values. So, plotting against each other, we get the profiles as shown above.
I would like to use an ML model to train latitude and time with line profiles. So, given future date and latitude, the model generates a possible line profile.
I'm stuck with how I can map latitude and time with the line profiles. If I flatten each numpy array and make a list of 1D numpy arrays, ANN, LSTM, and CNN models totally fail and show garbage. Random Forest, XGBoost, and KNN don't fare well either.
What algorithm can I use to solve this? And more importantly, how do I retain line profile info (that is lost if flattened) while training?
Any pointers would help.
