Как люди и животные оставляют разные следы допплеровского импульса и последний приз MAFAT в области науки о данных за создание модели, которая может различать их.

Брейден Риггс и Джордж Уильямс ([email protected])

В мире науки о данных промышленный, академический и государственный секторы часто сталкиваются, когда энтузиасты и эксперты вместе работают над решением проблем, с которыми мы сталкиваемся изо дня в день. Ярким примером такого сотрудничества являются проблемы MAFAT Министерства обороны Израиля (DDR&D). Серия задач, связанных с наукой о данных, с реальными приложениями и прибыльными призовыми фондами. По словам программы:

Цель задачи - изучить потенциал передовых методов науки о данных для улучшения и улучшения текущих продуктов данных IMOD. Победивший метод в конечном итоге может быть применен к реальным данным, и победители могут быть приглашены для дальнейшего сотрудничества с IMOD над будущими проектами.
- Координаторы конкурса MAFAT

Учитывая недавнее начало программы, проблем еще не было, однако ожидается, что возникнет множество проблем, начиная от сложных головоломок обработки естественного языка и заканчивая попытками, связанными с компьютерным зрением.

Мое внимание привлекла одна такая задача, вторая из которых была сделана до сих пор. Он включает в себя создание модели для классификации живых нежестких объектов, обнаруженных с помощью доплеровско-импульсных радиолокационных систем. Задача MAFAT Radar Challenge - Можете ли вы различать людей и животных по радиолокационным траекториям? призывает участников разработать модель, которая может точно отличать людей от животных на основе спектра радиосигналов, записанных с разных пункты доплеровско-импульсной РЛС в разные дни. Если вы заинтересованы в участии, я рекомендую посетить сайт испытаний, прежде чем читать дальше.

Итак, с какими данными мы работаем и что нам нужно о них знать?

Ключ к разработке точной и конкурентоспособной модели - это сначала понять данные, как они были получены и чего не хватает. В конкурс включены 5 файлов CSV, содержащие метаданные, и 5 файлов рассола (формат сериализации структуры объекта Python), содержащие доплеровские показания, которые отслеживают центр масс объекта и медленные / быстрые показания времени в виде стандартизированной матрицы I / Q.

Прежде чем мы пойдем дальше, стоит разбить несколько ключевых понятий, касающихся сигналов и конкретных типов собираемых данных. Показания сигнала, составляющие набор данных, делятся на два уровня качества: высокое отношение сигнал / шум и низкое отношение сигнал / шум. Это показание, High SNR и Low SNR делит набор на два уровня качества: один с высокой четкостью, который не был сильно испорчен процессом генерации шума, и один с низкой четкостью, которая имела такие аспекты, как погода, влияющая на качество чтение.

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

Еще одна серия концепций, заслуживающих понимания, - это понятие I / Q-матрицы и то, что влечет за собой доплеровское считывание. Матрица I / Q состоит из матрицы N x M, в нашем случае матрицы 32 x 128, которая хранит показания медленного и быстрого сигнала в виде декартовых элементов, где I представляет действительную часть, а M - мнимую часть. Вы можете изобразить каждую строку этой матрицы как представляющую импульс сигнала от источника, а каждый столбец этой матрицы - показание возвращаемых радиоволн, которые отразились от объектов или целей в интересующем направлении. Время между импульсами - это медленное время, а время между считыванием упомянутых импульсов считается быстрым временем, если вы все еще смущены или еще больше заинтересованы, я настоятельно рекомендую вам перейти по этой ссылке для получения дополнительной информации.

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

Отлично, теперь, когда у нас есть немного терминологии, пришло время обсудить пять пар файлов, предоставленных для конкурса. Эти пары файлов, хотя и находятся в одном формате, сильно отличаются друг от друга и образуют пять различных наборов:

  • Обучающий набор: Как следует из названия, обучающий набор состоит из комбинации человека и животного с высокими и низкими показаниями SNR, созданными на основе подлинных записей доплеровского радара.
    6656 записей
  • Тестовый набор. В рамках конкурса включен тестовый набор для оценки качества модели и ранжирования конкурентов. Набор не помечен, но включает сбалансированное сочетание высокого и низкого отношения сигнал / шум.
    106 записей
  • Синтетический набор с низким SNR: с использованием показаний обучающей выборки был искусственно создан набор данных с низким SNR путем выборки примеров с высоким SNR и искусственного заполнения выборок шумом. Этот набор можно использовать для лучшего обучения модели на примерах с низким SNR.
    50883 Entries
  • Фоновый набор: набор фоновых данных включает показания, полученные с доплеровских радаров без конкретных целей. Этот набор можно использовать, чтобы помочь модели лучше различать шум в помеченных наборах данных и помочь модели отличить релевантную информацию от беспорядочных данных.
    31128 записей
  • Экспериментальный набор: последний набор и, возможно, самый интересный, набор экспериментов включает людей, зарегистрированных доплеровским радаром в контролируемой среде. Хотя это и неестественно, это может быть полезно для балансировки предоставленного набора для дрессировки животных.
    49071 Запись

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

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

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

|

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

|

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

|

Базовая модель и первые впечатления:

Интересно, что наряду с предоставленными данными для конкурентов была включена базовая модель. Эта модель служит примером того, как должна быть оформлена окончательная заявка, а также обеспечивает относительную отправную точку для участников. Так что же такое базовая модель?

Организаторы конкурса MAFAT решили начать с сверточной нейронной сети (CNN), формы искусственного интеллекта, разработанной для задач компьютерного зрения. Модель принимает входное изображение и взвешивает параметры в зависимости от их важности для определения конечного результата, которым в нашем случае будет животное или человек. Эта конкретная CNN имеет два сверточных слоя, за которыми следуют два слоя максимального объединения, за которыми снова следуют два плотных слоя, прежде чем, наконец, активируется функцией ReLU и регуляризуется сигмоидной функцией. Это лучше визуализировать с помощью диаграммы:

Как вы можете видеть на приведенной выше диаграмме, мы начинаем с I / Q-матрицы 126x32. Эта матрица вместе с 15 другими матрицами выравнивается, и происходит первая свертка обучения, результат которой изменяется и масштабируется до другой размерности. В конце концов, модель завершается одним значением, числом где-то между 0 и 1, где чем ближе к 0, тем более вероятно, что сигнал - это животное, а чем ближе к 1, тем более вероятно, что сигнал - человеческий. Ничего страшного, если вы не понимаете логику или терминологию, лежащую в основе этой базовой модели, эти методы довольно сложны, и если бы я вдавался в подробности, этот блог был бы вдвое длиннее. Если вам интересно, эта ссылка более подробно.

В дополнение к модели, попытка базовой линии включает несколько других заслуживающих внимания стратегий повышения точности прогнозов. Как обсуждалось ранее, обучающий набор сильно несбалансирован, чтобы помочь исправить это несоответствие, обучающий набор дополняется дополнительными данными из набора экспериментов. Это должно помочь CNN понять и распознать человеческие закономерности в данных и в идеале приведет к более высокому уровню точности. В нашей собственной попытке мы обучили модель без изменения базовой структуры и проверили (оценили точность модели) на выборке обучающих данных, не включенных в модель. Результаты представлены ниже:

Как вы можете видеть из результатов, модель отлично справилась с обучающими данными и почти идеально с проверочным набором. Для базовой модели это впечатляет, правда? Как оказалось, по признанию самих MAFAT, базовая модель не работает на тестовом наборе, средняя точность составляет всего 75%. Учитывая масштаб проекта и технологию, которую они пытаются производить, 75% просто не сократят его. Следовательно, мы должны вернуться к чертежной доске, чтобы выяснить, как мы можем создать более точную модель.

Что не работает и можем ли мы увидеть закономерность?

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

Из-за стохастической природы алгоритма TSNE выглядят по-разному каждый раз при вычислении, однако они полезны для выделения заслуживающих внимания кластеров схожих данных. Вычисление TSNE для нашей модели дает следующий график, где:

Зеленый = животное
Синий = человек
Красный = неверный прогноз в проверочном наборе
Бирюзовый = расположение значения тестового набора

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

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

Куда дальше:

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

Сейчас, когда я пишу это, некоторые конкуренты уже достигли точности более 95%. таблицу лидеров конкурентов и их результаты можно найти здесь. Это серия, состоящая из нескольких частей, и по мере прохождения конкурса будут добавлены новые обновления.

Источники и дополнительная литература:

IQ модуляция. (нет данных). Получено 13 августа 2020 г. с сайта https://www.keysight.com/upload/cmc_upload/All/IQ_Modulation.htm?cmpid=zzfindnw_iqmod.

Саха, С. (17 декабря 2018 г.). Всеобъемлющее руководство по сверточным нейронным сетям - путь ELI5. Получено 13 августа 2020 г. с сайта https://towardsdatascience.com/a-comprehensive-guide-to-convolutional-neural-networks-the-eli5-way-3bd2b1164a53.

Понимание I / Q-сигналов и квадратурной модуляции: радиочастотная демодуляция: Учебник по электронике. (нет данных). Получено 13 августа 2020 г. с сайта https://www.allaboutcircuits.com/textbook/radio-frequency-analysis-design/radio-frequency-demodulation/understanding-i-q-signals-and-quadrature-modulation/.

Что такое I / Q Data? (нет данных). Получено 13 августа 2020 г. с сайта http://www.ni.com/tutorial/4805/en/.

Все используемые изображения либо созданы мной, либо используются с явного разрешения авторов. Ссылки на материалы автора включены под каждым изображением.