Я имею дело со звездными кривыми блеска (.fits-файлы, содержащие 4000 точек данных зависимости времени от звездной яркости, см. график для нескольких примеров с разной периодичностью). Мне нужно представить/сопоставить эти кривые блеска таким образом, чтобы я мог выполнять на них неконтролируемую кластеризацию с помощью машинного обучения. Мне предложили использовать либо полиномиальное представление с высокой степенью (p=30...до нескольких сотен), либо использовать преобразование Фурье на кривых блеска. Я обнаружил, что полиномиальные подгонки numpy.polyfit с высокой степенью p не обеспечивают хороших подгонок, и я получаю предупреждение «RankWarning: Polyfit может быть плохо обусловлен». Может быть, мне стоит попробовать преобразование Фурье, но я не знаком, и это звучит сложно.
Как я могу/должен представлять/подгонять такие данные для кластеризации машинного обучения? Могу ли я добиться хорошего результата с np.polyfit при p>30?