Триггеры в аналитике данных на Большом адронном коллайдере

МЕНЮ


Искусственный интеллект
Поиск
Регистрация на сайте
Помощь проекту

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


Для того чтобы принять решение, сохранять нам фотографию события, происходящего на коллайдере, или нет, нам необходима система триггеров. Дело в том, что события происходят очень часто. Пересечение двух встречных сгустков протонов происходит с частотой порядка нескольких десятков миллионов раз в секунду. К сожалению, каждая фотография события занимает несколько мегабайтов и у нас нет возможности сохранять все события. Да и, кроме того, большинство событий не являются интересными с точки зрения физического анализа. Мы должны построить систему таким образом, чтобы она принимала очень быстрые решения о том, насколько это событие содержит физическую информацию и насколько это событие нужно сохранять или не сохранять на диск.

Для того чтобы решение происходило быстрее, используется каскад триггеров. То есть сначала идет самый низкоуровневый триггер, и он принимает решение на основе базовых характеристик детектора. То есть, например, есть ли засветка в колориметре или существует ли какой-то кластер в мюонных камерах. После чего эта информация анализируется, так как ее можно быстро посмотреть и быстро принять решение. И таким образом отсеивается примерно 90% событий. Но нам необходимо снизить частоту гораздо больше.

Во время принятия решения низкоуровневого триггера начинается работа алгоритмов, которые быстро пытаются обработать информацию, поступившую на детектор. И дальше решение низкоуровневого триггера и работы самых быстрых алгоритмов поступают в высокоуровневый триггер. Люди, которые занимаются обработкой фотографий, знают про фильтр Калмана. И, в частности, этот фильтр используется для быстрого анализа первичной информации на фотографии. Как я уже говорил, у нас сначала идет часть детектора, которая отвечает за построение траекторий, и собственно фильтр Калмана применяется именно там.

Для трекера пролет частицы выглядит как набор нескольких точек. Что делаем мы, когда используем фильтр Калмана? Мы берем последние точки и пытаемся понять, насколько эти последние точки могли прийти из набора точек до этого. И для этого как раз используется фильтр Калмана. То есть фильтр Калмана фактически предсказывает прошлое системы и смотрит, насколько текущее, то есть последнее, состояние системы совместимо с его прошлым. Таким образом, у нас появляется набор траекторий частиц, который является уже первичным результатом обработки фотографии. И именно этот результат мы отдаем на высокоуровневый триггер. Дело в том, что фильтр Калмана — это очень быстрый алгоритм, поэтому именно его мы используем и именно он может поступить на вход высокоуровневого триггера, так как времени на анализ изображений у нас очень мало.

Есть два типа высокоуровневых триггеров. Они отличаются количеством информации, которое они получают. Первый уровень высокоуровневых триггеров получает информацию от фильтра Калмана и от низкоуровневого триггера. Дальше эта информация комбинируется, принимается решение продолжать или не продолжать обработку этой информации. Высокоуровневый триггер принимает решение о продолжении обработки информации на основании выхода фильтра Калмана и низкоуровневого триггера.

Что делает высокоуровневый триггер первого уровня? Он пытается свести траектории в единый центр, и, если эти траектории всех частиц сходятся к одному центру, это означает, что действительно произошло какое-то столкновение и эти частицы вылетели из одного и того же места. Это является хорошим показателем того, что произошло какое-то интересное событие. Замечу, что на этом уровне мы все еще не имеем никакого представления о физических моделях, которые мы хотим обрабатывать. То есть нам интересно только наличие частиц, которые выходят из одного центра. Плюс еще какие-то дополнительные характеристики. Именно в этом месте начинается первое использование методов машинного обучения. Здесь применяется очень быстрая нейронная сеть. Например, в эксперименте LHCb применяется очень быстрая нейронная сеть, которая говорит, является ли эта траектория честной траекторией — той, которая была оставлена пролетающей частицей, — или это ошибка предыдущего метода, то есть ошибка фильтра Калмана. И уже в этом месте мы можем отсеять очень много фальшивых событий просто за счет того, что нейронная сеть пытается отделить настоящие треки от фальшивых.

Высокоуровневый триггер второго уровня уже гораздо более сложная система. Именно в этом месте происходит отбор событий под анализ какой-то конкретной физической модели. Если мы ищем очень редкий распад B-мезона, то мы говорим, что нам необходим набор правил в высокоуровневом триггере второго уровня, который будет искать именно этот редкий распад или именно этот класс распадов. В частности, в эксперименте LHCb многие анализы идут по более простому пути, то есть ищут события в общем триггере второго уровня, которые реагируют просто на наличие распада B- или D-мезона в данных. Этот триггер настроен следующим образом. Выбираются все возможные пересечения двух треков. На этом уровне у нас уже произошел достаточно серьезный отсев событий, и мы можем позволить себе запустить более сложные алгоритмы, которые могут более точно анализировать картинку. И уже туда мы можем вкладывать те физические модели, которые хотим исследовать.

Например, одним из самых производительных триггеров в эксперименте LHCb является топологический триггер, который реагирует на вероятный распад B- или D-мезона. Как это делается? Мы берем два или три трека и пытаемся понять, приходят ли они из одной вершины или из разных вершин. Алгоритм выбирает наилучших кандидатов, после чего говорит, является ли этот кандидат B-мезоном или D-мезоном или нет. На основании этого принимается решение, записывать событие или не записывать.

Безусловно, после того как уже наши триггеры сработали, нам необходимо понять, насколько эти данные пригодны для физического анализа. Проблема заключается в том, что, даже несмотря на то, что у нас используются очень точные алгоритмы, очень сильный отбор, мы не можем до конца гарантировать, что триггеры отбирают правильные данные, а не данные, каким-то образом ущербные. Например, что-то случилось с одной половиной детектора, левая половина детектора работает идеально, а правая просто выключена. С точки зрения триггера ничего плохого не произошло. То есть с левой стороны действительно есть события, причем, возможно, даже интересные физически. Однако с точки зрения физического анализа это на самом деле неинтересно по причине того, что мы можем открыть какую-то асимметрию между левой и правой частями детектора, которая на самом деле не является физической асимметрией, а просто какой-то артефакт на установке.

Поэтому происходит анализ качества данных. Обычно анализом качества данных занимается оператор — таким образом мы можем сэкономить время ученого для непосредственного физического анализа, а не для просмотра тысяч картинок, которые приходят с детектора.

После того как качество данных было сертифицировано экспертом, данные распределяются по дата-центрам по всему миру. И происходит более точная обработка тех же самых фотографий. Дело в том, что, как я сказал, на уровне триггера мы пытаемся сэкономить время. Поэтому иногда некоторые алгоритмы выдают не совсем точный ответ. Это нормально для принятия решения, но ненормально для физического анализа. В дальнейшем на суперкомпьютерах ученые уже обрабатывают информацию, которая поступает для анализа.


Источник: postnauka.ru

Комментарии: