Научная статья на тему 'МАТЕМАТИКА В ЗАДАЧАХ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА'

МАТЕМАТИКА В ЗАДАЧАХ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
188
27
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАШИННОЕ ОБУЧЕНИЕ / СВЕРТОЧНАЯ НЕЙРОННАЯ СЕТЬ / ЗАДАЧА КЛАССИФИКАЦИИ / СЛУЧАЙНЫЙ ЛЕС / РАСПОЗНАВАНИЕ / ФУНКЦИЯ ПОТЕРЬ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Васильева Л.И., Радыгин И.К.

В работе рассматривается задача аутентификации пользователей по фотографии лица как одна из базовых задач, решение которых основано на методах искусственного интеллекта. Приведена общая постановка задачи. Разработаны и описаны алгоритмы решения поставленной задачи на основе методов машинного обучения с использованием сверточных нейронных сетей и задач классификации.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MATHEMATICS IN ARTIFICIAL INTELLIGENCE PROBLEMS

The paper considers the problem of authenticating users by face photos as one of the basic problems the solution of which is based on artificial intelligence methods. The general statement of the problem is given. Algorithms for solving the problem have been developed and described. Considered algorithms based on machine learning methods using convolutional neural networks and classification problems.

Текст научной работы на тему «МАТЕМАТИКА В ЗАДАЧАХ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА»

УДК 004.93

1 2

Лидия Ильясовна Васильева , Илья Константинович Радыгин

1 2

' Башкирский государственный педагогический университет имени М.Акмуллы, Уфа,

Россия

1 lidav@mail.ru, https://orcid.org/0000-0002-8 775-3683

2sensys96@gmail.com, https://orcid.org/0000-0002-4843-4583

Автор, ответственный за переписку: Лидия Ильясовна Васильева,

lidav@mail.ru

МАТЕМАТИКА В ЗАДАЧАХ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА

Аннотация. В работе рассматривается задача аутентификации пользователей по фотографии лица как одна из базовых задач, решение которых основано на методах искусственного интеллекта. Приведена общая постановка задачи. Разработаны и описаны алгоритмы решения поставленной задачи на основе методов машинного обучения с использованием сверточных нейронных сетей и задач классификации.

Ключевые слова: машинное обучение, сверточная нейронная сеть, задача классификации, случайный лес, распознавание, функция потерь

1 2

Lidiya I. Vasilyeva , Ilya K.Radygin

1' 2 Bashkir State Pedagogical University named after M.Akmulla, Ufa, Russia

1 lidav@mail.ru, https://orcid.org/0000-0002-8 775-3683

2sensys96@gmail.com, https://orcid.org/0000-0002-4843-4583

MATHEMATICS IN ARTIFICIAL INTELLIGENCE PROBLEMS

Abstract. The paper considers the problem of authenticating users by face photos as one of the basic problems the solution of which is based on artificial intelligence methods. The general statement of the problem is given. Algorithms for solving the problem have been developed and described. Considered algorithms based on machine learning methods using convolutional neural networks and classification problems.

Keywords: machine learning, convolutional neural network, classification problem, random forest, recognition, loss function

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

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

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

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

Содержательная постановка задачи Дано:

1) множество зарегистрированных пользователей

X = {х х , х2,. . ., хп}, где х I — фотография лица /-того пользователя;

2) фотография лица нового пользователя у, который может принадлежать X. Требуется:

1) определить, является ли у настоящим, а не поддельным фото лица пользователя;

2) определить, является ли верным, что у £ X; если да, то найти /, такое, что х^ £ X — у .

Решаемую задачу можно разделить на две основные подзадачи:

1) распознавание пользователя по фотографии лица;

2) обнаружение атак.

Обе эти задачи сводятся к задачам классификации.

Математическая постановка задачи классификации [1] в общем случае выглядит следующим образом. Пусть:

1) X — множество описаний объектов,

2) У — конечное множество номеров (имен, меток) классов.

3) Существует неизвестная целевая зависимость у : X — У, значения которой известны только на объектах обучающей выборки

= { (хх , у! ) , (х2 , у2 ), . ■ ■, (хт< ут) } .

Требуется построить алгоритм А : X — У, способный классифицировать произвольный объект из X.

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

Задача обнаружения атак сводится к задаче бинарной классификации, математическая постановка задачи которой формулируется стандартно: Пусть:

X — множество всех фото, среди которых есть как настоящие, так и поддельные; У = { 0 ; 1} — множество меток классов, где 0 - фото настоящее, 1 - фото поддельное.

Существует неизвестная целевая зависимость - отображение у : X — У, значения которой известны только на объектах обучающей выборки

= { (хх , у! ) , (х2, у2 ) > . ■ ■> (хт< УтгО } . Требуется построить алгоритм а : X — У, способный классифицировать произвольный объект из X.

Описание применяемых алгоритмов решения задачи

В основе применяемых методов для решения поставленной задачи распознавания пользователя по фотографии лица лежат сверточные нейронные сети, относящиеся к искусственным нейронным сетям [2]. От классических они отличаются тем, что позволяют учитывать структуру объекта - изображения, а также выполняют свойство «локальности».

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

Рассмотрим подход, заключающийся в том, что нейронная сеть обучается отображать поступающее на вход фото лица в некоторое подпространство 128-мерной размерности [4]. В этом случае лица пользователей можно представить как точки в некотором ^-мерном пространстве. Сеть специально обучается таким образом, чтобы точки, принадлежащие одному человеку, находились ближе, а точки разных людей - дальше друг от друга. В качестве меры расстояния используется евклидово расстояние.

Итак, сеть учится сжимать фото в некоторое 128-мерное представление (вектор) таким образом, чтобы евклидово расстояние между векторами различных людей было больше, чем между векторами одного и того же человека. Для этого надо, чтобы скалярное произведение двух нормализованных векторов лиц (расстояние между векторами) одного и того же человека было бы как можно ближе к 1, а разных - ближе к (—1). Это достигается с помощью известной функции потерь - Triplet loss [4]:

N

X [И/да -f(xt)\\22 - ll/да -/(xDlli + «]+

i

где:

1) а — anchor - вектор основного фото человека; с ним сравниваются два других вектора п и р;

2) п — negative - вектор фотографии лица другого человека;

3) р — positive - вектор другой фотографии этого же человека;

4) а — некоторая константа, отвечающая за наименьшее расстояние между позитивной и негативной парами.

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

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

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

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

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

В качестве такой модели нами выбран случайный лес [5]. Случайный лес представляет собой ансамбль - группу базовых моделей. Здесь в качестве базовой модели выбирается дерево решений. Каждое дерево решений строится независимо от других, число деревьев выбирается пользователем.

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

Общая схема процесса распознавания пользователя: фотография зарегистрированного пользователя и нового пользователя поочередно подаются на вход сети. Нейронная сеть отображает их в векторные представления. Из векторных представлений генерируется признаковое описание пары пользователей. Бинарный классификатор, представленный моделью случайный лес, принимает на вход признаковое описание и присваивает метку класса 1 в случае, если пользователь на фото один и тот же, и 0, если на фото разные пользователи (рис.1).

Рис. 1. Процесс распознавания пользователя

Проектная часть включает следующие этапы работы:

1) предобработка изображения;

2) обучение нейронной сети;

3) обучение модели бинарной классификации;

4) обучение модели обнаружения атак.

Для улучшения качества работы нейронной сети исходное изображение с камеры устройства подлежит предобработке. Предобработка состоит из следующих этапов: выделение области с лицом пользователя; сжатие области до размера 96 на 96 пикселов. Выделение области лица происходит для упрощения работы нейронной сети: на вход подается только лицо пользователя, без фона и одежды. Сжатие происходит для уменьшения входа сети, что влечет и уменьшение числа весов, которые необходимо обучать; поэтому сеть становится меньше и скорость ее вывода и обучения возрастает. Заметим, что после сжатия часть информации на фото теряется, однако для распознавания оставшейся информации достаточно.

Для обучения нейронной сети можно использовать наборы данных Large-scale CelebFaces Attributes Dataset, содержащие более 200 000 фото и более 10 000 уникальных людей. Однако здесь фотографии хорошего качества, особенно фото знаменитостей, а получаемые фото с веб-камер не обладают таким качеством. Поэтому для обучения нейронной сети сначала взятые их данных наборов фотографии подвергаются изменениям: наложение шумов и артефактов (имитация плохой камеры), отражение (увеличение

разнообразия данных), поворот (увеличение разнообразия данных), наложение градиента в разных направлениях (имитация плохого освещения).

Заключение

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

СПИСОК ИСТОЧНИКОВ

1. В.В. Вьюгин, Математические основы теории машинного обучения и прогнозирования [текст]. М.: 2013. - 387 с.

2. Deshpande A. A., Beginner's Guide To Understanding Convolutional Neural Networks /A. Deshpande// [Электронный ресурс]. Режим доступа: https://adeshpande3.github.io/.

3. Данилов, В. В. Нейронные сети: учебное пособие. Донецк: ДонНУ, 2020. 158 с. - Текст: электронный // Лань: электронно-библиотечная система. - URL: https://elanbook.com/book/179953.

4. Florian Schroff, Dmitry Kalenichenko, James Philbin, FaceNet: A Unified Embedding for Face Recognition and Clustering, 2017.

5. Hastie, T., Tibshirani R., Friedman J. Random Forests. Chapter 15. // The Elements of Statistical Learning: Data Mining, Inference, and Prediction. - 2nd ed. Springer-Verlag, 2009. 746 p. — ISBN 978-0-387-84857-0.

REFERENCE

1. Vyugin V.V., Mathematical foundations of the theory of machine learning and forecasting [text]. Moscow: 2013. - 387 p.

2. Deshpande A. A., Beginner's Guide To Understanding Convolutional Neural Networks /A. Deshpande// [Электронный ресурс]. Режим доступа: https://adeshpande3.github.io/.

3. Danilov, V. V. Neural networks: a textbook. Donetsk: DonNU, 2020. 158 p. - Text: electronic. URL: https://elanbook.com/book/179953.

4. Florian Schroff, Dmitry Kalenichenko, James Philbin, FaceNet: A Unified Embedding for Face Recognition and Clustering, 2017.

5. Hastie, T., Tibshirani R., Friedman J. Random Forests. Chapter 15. // The Elements of Statistical Learning: Data Mining, Inference, and Prediction. - 2nd ed. Springer-Verlag, 2009. 746 p. — ISBN 978-0-387-84857-0.

Информация об авторах

Л.И. Васильева - кандидат технических наук, доцент;

И.К. Радыгин - аспирант.

Information about the authors

L.I. Vasileva - candidate of Technical Science, Associate Professor; I.K. Radygin - graduate student.

i Надоели баннеры? Вы всегда можете отключить рекламу.