Введение

Искусственный интеллект (ИИ)/Машинное обучение (МО)/Глубокое обучение — термины, которые сегодня используются, возможно, в гораздо большем количестве мест, чем мы даже можем ожидать. Чтобы предлагать удивительные, универсальные и ценные решения с помощью ИИ, программисты должны понимать, как обучаются системы машинного обучения (включая теорию и практику), классы ошибок, которые возникают в таких системах, и находить возможные решения для обеспечения четко определенного поведения. Во-первых, важно понять, в чем разница между обычным алгоритмом и алгоритмом машинного обучения. Все типы алгоритмов можно разделить на две группы — вероятностные и приближенные, а также детерминированные и точные. Алгоритмы ML относятся к первой группе алгоритмов. Вместо того, чтобы получать правила как часть входных данных и возвращать точные результаты для этих данных, они получают обучающие данные в качестве входных и возвращаемых правил, которые можно использовать для прогнозирования необученных входных данных. Как известно, все задачи машинного обучения делятся на две группы: контролируемые (которые, в свою очередь, делятся на классификацию и регрессию) и неконтролируемые (кластеризация, оценка плотности и т. д.). Как и во всех сферах жизни, и в этом случае современное состояние создается путем смешивания неконтролируемого и контролируемого подходов: имея неразмеченные данные, найти шаблон данных с помощью обучения без учителя, после чего использовать обучение с учителем. на размеченных данных. В целом эволюция процесса состоит из шести основных частей: сбор данных, подготовка и анализ входных данных, выбор наиболее подходящего алгоритма машинного обучения, обучение алгоритма, проверка/подтверждение правильности обученного алгоритма и, наконец, использование алгоритма.

Математика и машинное обучение

Все это звучит очень просто, но для четко определенного поведения обученного алгоритма, который будет корректно работать на любых входных данных (разумеется, в рамках задачи), требуется глубокое понимание математической модели используемого алгоритма. . Например, теорема Стоуна – Вейерштрасса играет важную роль в области обучения с учителем, доказывая, что каждая непрерывная функция, определенная на замкнутом интервале действительных значений [a, b], может быть сколь угодно точно аппроксимирована полиномиальной функцией. Затем было доказано, что действительный интервал может быть обобщен для произвольного компактного хаусдорфова пространства (Маршалл Стоун). На данный момент теорема даже имеет формулировку в кватернионной версии (Джон Холладей), что позволяет предоставлять решения в квантовой версии для соответствующих задач машинного обучения. Как и в случае обучения с учителем, у нас есть дискретное пространство (через функции и метки), мы можем использовать его для приближения обучающих данных.

Еще одна важная и удивительная часть математики, которая используется в машинном обучении (в частности, в сверточных нейронных сетях), — это преобразование Фурье. Стандартные сверточные слои работают медленно, так как каждое ядро ​​должно вычислять множество скалярных произведений для одного прямого и обратного распространения, сложность которого равна O((N*n)²) на ядро, где входными данными являются массивы N ×N, а ядрами являются n × n массивов. Свертку, которая является наиболее затратной частью процесса обучения, можно эффективно вычислить с помощью преобразования Фурье. В случае нейронной сети свертки Фурье (FCNN) обучение проводится полностью в области Фурье. Преимуществом такого подхода является значительное ускорение времени обучения без потери эффективности.

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

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

Биология и машинное обучение

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

Следующим удивительным аспектом природы, который можно использовать для обнаружения закономерностей, является мозаичное зрение. У большинства насекомых есть так называемые сложные глаза, которые представляют собой мозаичную структуру из плотно расположенных омматидий. На основании мозаичной теории (Дж. Мюллер) каждый омматидий получает отпечаток светящегося участка, соответствующего его проекции на поле зрения. Именно сопоставление всех этих маленьких светящихся участков, различающихся по интенсивности и качеству составляющего их света, и дает начало общему вертикальному образу, воспринимаемому насекомым.

Вывод

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

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

использованная литература

1) Элементы теории функций и функционального анализа — А. Колмогоров (1954)

2) Моделирование глаза насекомого: от стохастических к детерминированным механизмам — Х. Эбади, М. Перри, К. Шорт, К. Клемм, П. Штальдер (2018)

3) Нейронные сети и физические системы с возникающими коллективными вычислительными способностями. - Хопфилд, Джон Дж. (1982)

4) Человеческий мозг — Р. Крита, С. Олдридж, М. Пейдж (2009)

5) Основы математического анализа — Г. Фихтенгольц (1965)

6) Основы глубокого обучения — Н. Будума (2017)

7) Теория Рамси: вчера, сегодня, завтра — А. Сифер (2010)