Здравствуйте, меня зовут Александра и я астрофизик. В прошлом году я закончила курс «Аналитик данных» в Нетологии. На диплом решила не брать никаких бизнесовых кейсов, только наука. Так родилась работа, посвящённая классификации галактик с помощью одного из методов машинного обучения — random forest. О том, как выглядел мой диплом и какие физические принципы заложены в его работу, я расскажу под катом.
Использование машинного обучения в анализе данных актуально не только для индустрии и бизнеса, но и для науки. Ежедневно выходят десятки статей с упоминанием machine learning в абстракте. Количество статей с использованием машинного обучения в астрономии резко выросло за последние 10 лет.
Однако с машинным обучением в науке есть множество нюансов, которые нужно учитывать, чтобы данные на выходе были адекватны окружающей нас Вселенной. Поэтому нельзя просто так взять и обучить нейросетку в астрономии, нужно понимать, какая физика за этим будет стоять, иначе наоткрывать можно на целую Нобелевку, правда, коллеги почему-то будут смеяться.
Фотометрия
Фотометрия — это наука об измерении света. Фотометрия в астрономии — об измерении света от небесных объектов — планет, астероидов, звёзд, галактик и так далее.
Когда мы занимаемся фотометрией, мы снимаем прямое изображение объектов, как если бы просто делали это на камеру смартфона. Но обязательно в фильтрах, которые отрежут нам большую часть спектра. И со множеством калибровок, с помощью которых мы сможем превратить фотографию в научные данные. Из калибровок нам нужны байсы, которые учтут нулевой фон считывания камеры, флэты, которые исправлят кривизну поля, и дарки — для учёта горячих пикселей и тепловых шумов камеры.
Фильтры бывают широкополосные, среднеполосные и узкополосные. Делятся они условно. Мы использовали в работе данные среднеполосных фильтров, которые у нас шириной 250 ангстрем, и один широкополосный — 338 ангстрем.
Получив на телескопе весь необходимый набор снимков, сначала мы проводим предварительную редукцию, то есть подготовку и вычитание среднего уровня электронного ноля, вычитание среднего уровня темнового тока, коррекцию за плоское поле, учёт вклада фринговой составляющей в красных диапазонах, чистку космических частиц, оценку качества изображений и так далее.
После предварительной редукции данных все снимки для каждого фильтра приводятся к единой системе координат, делаются оценки качества изображений. Снимки с плохим качеством изображений отбрасываются, после чего производится сложение снимков с приведением к экспозиции 1 секунда. Суммарные снимки поля в разных фильтрах приводятся к единой системе координат. Далее следует непосредственная фотометрия. Находим в кадре объекты и считаем пришедшие фотоны. На самом деле на кадре мы, конечно, считаем электроны, но они легко переводятся в фотоны.
Почти спектры
После этапа фотометрии у нас есть для каждого объекта в поле набор из значений его излучения в каждом фильтре. Из этих данных мы можем получить для каждого объекта SED — spectral energy distribution, спектральное распределение энергии. Это спектр объектов, но с очень низким разрешением, которое соответствует ширине фильтров — 250 ангстрем в нашем случае.
Удивительно, но даже на SED весьма хорошо видны спектральные особенности объектов, такие как линии излучения и поглощения, а также скачки. Поэтому мы можем классифицировать галактики, оценивать их физические параметры.
Красная и синяя таблетка галактика
Уже первые наблюдения галактик позволили Э. Хабблу в 1926 году создать их морфологическую классификацию. Хаббловская классификация носит имя камертона или вилки и включает следующие типы галактик:
-
эллиптические от Е0 (практически сферические) до Е7 (эллипсоидальные с наибольшей степенью сжатия)
-
линзовидные галактики S0 (ядра, окружённые дискообразной структурой без рукавов)
-
спиральные галактики, которые начинаются типом Sa (рукава плотно закручены вокруг ядра) до Sc (рукава широко раскинуты)
-
для обозначения наличия бара у галактики используется буква B — barred, неправильные (Ir)
Дальнейшее изучение физических свойств галактик привело к более точной бимодальной классификации. Популяция галактик бимодальна как по цвету, так и по морфологии, и эти два показателя сильно коррелируют: большинство голубых галактик относятся к поздним типам, дисковым галактикам со звездообразованием (спирали), а большинство ранних типов, обычно эллиптических, являются красными.
Фотометрическая классификация галактик
Классифицировать галактики по внешним признакам — это, конечно, хорошо, но больше похоже на зоологию, чем на физику. И не совсем понятно, что же делать с галактиками, расстояние до которых не позволяет увидеть их структуру?
История фотометрической классификации галактик берет начало в 1962 году, когда Баум разработал метод для измерения красных смещений по фотометрическим данным. Он использовал данные в 9 спектральных полосах оптической части спектра, захватывая ИК. Объектами его первых наблюдений стали 6 ярких эллиптических галактик из скопления Девы, для которых он построил SEDы. Затем он изучил ещё 3 эллиптические галактики в скоплении Abell 0801. По полученным данным Бауму удалось измерить красное смещение скопления галактик Abell 0801 z = 0.19. Это значение оказалось очень близко к спектральной оценке z = 0.192. Успех эксперимента позволил расширить метод на более далёкие скопления галактик, наиболее удалённое из которых оказалось на z = 0.46. Однако метод имел существенное ограничение, которое позволяло применять его только к галактикам ранних типов, поскольку при определении красного смещения использовалась только одна спектральная особенность — скачок в спектре галактике на длине волны 4000 ангстрем в системе покоя.
В 1985 году появилась работа, в которой астрономы определяли не только красное смещение, но и тип галактики. Причём в этой работе были использованы фотопластиноки вместо фотометра, который использовал ранее Баум — он мог наблюдать только один объект за один раз. Это позволило измерить красные смещения сразу для всех объектов, попавших в поле зрения.
В 90-е годы произошёл новый всплеск интереса к фотометрическим методам классификации, в частности методам нахождения кандидатов в далёкие объекты. Стали активно развиваться методы, позволяющие наиболее достоверно проводить классификацию.
В конце 90-х годов стартовал очень крупный обзорный проект Sloan Digital Sky Survey (SDSS), который продолжается до сих пор. В ходе работы проекта было проведено картографирование более 35 % небесной сферы с фотометрическими наблюдениями порядка 500 миллионов объектов в 5 фильтрах и получением спектров более чем для 3 миллионов объектов.
Потом в 90-е было нескольких работ разных учёных (Lanzetta et al., 1996; Connoly et al., 1997; Fernandes-Soto et al,1999), после которых многополосная фотометрия получила всеобщее признание как метод, позволяющий исследовать все объекты, видимые в поле зрения телескопа, и с приемлемой точностью определять их тип, фотометрические красные смещения, делать оценки их физических параметров. Такая методика наблюдений является промежуточной между многоцветной фотометрией и многощелевыми наблюдениями.
Как мы галактики деревьями различали
А теперь перейдём непосредственно к диплому. У нас имелся размеченный набор данных, в который состоял из фотометрических данных для 19,875 галактик и квазаров. Квазары — это самые яркие объекты во Вселенной, по сути, это тоже галактики. Зачем мы их добавили? Затем, что это уникальные объекты, которые интересно находить и изучать. Поэтому целью машинного обучения мы выбрали не только определение типа объектов, но и получение списка уникальных объектов, не поддающихся классификации, которые могли бы быть изучены в дальнейшем более детально.
Таблица с данными включала в себя звёздные величины во всех среднеполосных фильтрах и фильтре u sdss, а также класс «объекты», который был получен с помощью SED-fitting. Этот алгоритм оценивает тип галактик с помощью шаблонов спектров и критерия хи-квадрат, то есть находит самое похожее из имеющегося набора.
Для некоторых объектов не было значений в колонках с фильтрами из-за того, что от объекта может идти слишком слабый поток излучения. Поэтому мы попробовали заполнять отсутствующие значения как среднее значение в фильтре для соответствующего класса объектов, а также сделали вариант работы алгоритма без заполнения отсутствующих значений.
Вряд ли я могу придумать какие-то новые слова, посвящённые Random forest. Поэтому кратко — этот алгоритм удачно подходит к задачам классификации больших объёмов плохо структурированных данных, как у нас, а состоит он из множества решающих деревьев, которые классифицируют путём большинства голосов. Ну и, конечно, ссылка на классическую статью.
В своей работе мы делили галактики на эллиптические, линзовидные, спиральные двух типов, галактики со вспышкой звездообразования трёх видов и квазары. В ходе исследования для простоты представления результатов объединяли на графиках эллиптические и линзовидные, и отдельно все типы галактик со звездообразованием. Естественно, что галактик было неравное количество, и это приходилось учитывать в работе алгоритмов. Красных галактик вообще не то чтобы много — примерно 20% от общего числа.
Начальная оценка точности определения типа объектов составила около 69%, для первой итерации были использованы только данные без пропущенных значений. Для этого пришлось удалить почти половину объектов 8,000 из 19,000.
После этого мы добавили данные с пропущенными значениями, жить стало веселее, а точность возросла до 74%.
Далее оценили важность вклада каждого из фильтров. Это было интересно ещё и потому, что если вклад фильтра ничтожен, то его можно не снимать и экономить телескопное время.
Далее стандартно поработали с Random Hyperparameter Grid и Grid Search with Cross Validation. На шаге с Random Hyperparameter Grid на широкой сетке параметров нашли наиболее удачные, а потом конкретизировали их на частой сетке. Варьировали все параметры: число деревьев, число признаков для выбора расщепления; минимальное число объектов, при котором выполняется расщепление; ограничение на число объектов в листьях; максимальная глубина деревьев; критерий расщепления. Ну а как, если ты учишься, интереснее всего дёргать за ниточки и смотреть, что получается.
В итоге получили точность предсказания типа около 82%, что в целом, учитывая сложность данных, не так уж и плохо. Остались проблемы с определением квазаров. Как видно на рисунке ниже, многие из них скатываются в звёздобразующие галактики. Оно и понятно — и там и там возникают яркие эмиссионные линии, которые сложно различить, если использовать только среднеполосную фотометрию.
Вот так выглядел мой дипломный проект к курсу «Аналитик данных». В планах — добрать в данные ещё фотометрии в различных фильтрах и посмотреть, что будет, поскольку есть соображения, что фильтры за пределами оптического диапазона должны давать неплохой вклад в точность. А может, вы крутой специалист в машинном обучении и сможете дать пару советов в комментариях?
Хочу поблагодарить куратора своего диплома — Олега Булыгина, который не только прекрасно вёл свой курс по Python в анализе данных, но и вникал в астрономические нюансы, чтобы диплом получился максимально жизнеспособным. Я всё ещё надеюсь, что когда-нибудь у меня хватит времени, и я оформлю код диплома в статью.