Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Технологии искусственного интеллекта в банковской сфере. Учебное пособие
.pdf
Глава 4
— нос;
— челюстная зона.
В основе реализации данного алгоритма лежит ансамбль
деревьев регрессии, включающий два этапа:
1) алгоритм обучается на размеченном наборе данных с
изображениями лиц людей с лицевыми ориентирами. Эти изображения все помечены вручную;
2) вероятность расстояния между парами входных пикселей.
Учитывая эти данные, модель обучается оценивать поло-
жения лицевого
ориентира непосредственно по самим интенсивностям пикселей. Конечным результатом является детектор
наземных ориентиров, который можно использовать для их
обнаружения в режиме реального времени с высококачественными прогнозами.
На рисунке 19 визуализированы индексы всех 68 опорных
антропометрических точек.
Рис. 19. Индексы лицевых ориентиров
61

Технологии искусственного интеллекта в банковской сфере
Определение дескриптора лица.
На предыдущем этапе итогом было определение лицевых
ориентиров и нормализация лица на изображении. Теперь
необходимо обучить глубокую сверточную нейронную сеть
для генерации 128 измерений каждого лица.
Процесс обучения выглядит следующим образом:
— загрузить тренировочное изображение лица;
— загрузить другую фотографию лица того же человека;
— загрузить фотографию другого человека.
Затем
алгоритм просматривает значения векторов, которые
он генерирует для каждого из этих трех изображений. Затем
следует настройка нейронной сети: алгоритм сравнивает разницу между значениями изображений №
1 и № 2 и № 2 и № 3 и,
удостоверившись, что первое и второе изображение одного и
того же человека, переходит далее. На рисунке 20 представлена схема сравнения трех изображений.
62
Рис. 20. Процесс сравнения изображений лиц

Глава 4
После повторения многократных итераций на большом количестве обучающих данных нейронная сеть научится надежно генерировать 128-мерный вектор для каждого лица. Любые
десять разных изображений одного и того же человека должны давать примерно одинаковые измерения. Данный процесс
называется embedding.
На последнем этапе применяется алгоритм классификации
SVM для верификации лица. Алгоритм получает
на вход значение 128-мерного вектора и находит в базе данных изображение с таким же значением.
Задачи идентификации объекта по изображению естест-
венным образом разбивают на следующие подзадачи:
— загрузка и предобработка изображения;
— поиск объекта на изображении;
— идентификация объекта;
— выгрузка или отображение результата.
Под поиском объекта на изображении стоит
понимать по-
иск координат точек, образующих ограничивающий прямоугольник на исходном изображении, наиболее плотно покрывающий объект. Примеры таких прямоугольников приведены
на рисунке 21.
Рис. 21. Примеры ограничивающих прямоугольников
для различных объектов
63

Технологии искусственного интеллекта в банковской сфере
Под идентификацией объекта стоит понимать определение
принадлежности объекта к одному из заранее заданных классов. Для разных задач классы могут отражать разную специфику. Для задачи идентификации людей по изображению лица
классами будут являться имена или уникальные идентификаторы людей.
Как уже было сказано выше, задача идентификации делится на две
подзадачи: поиск и идентификацию.
Задача поиска лица на изображении в целом не отличается
от задачи поиска любого другого объекта. В эту задачу также
включают этап нормализации: после обнаружения части изображения, содержащей лицо, могут производиться смещения,
повороты, масштабирование, цветовая коррекция, изменение
мимики или другие нормализующие операции в зависимости
от модели.
Многие модели идентификации строятся на обработке
изображения на основе опорных точек. Их количество и расположение зависит от модели, однако есть наиболее часто используемый набор: уголки глаз, рта, кончик носа (см. рис. 19).
Поиск этих точек также необходимо проводить на этапе поиска лица.
Переходя к рассмотрению этапа идентификации, стоит вы
делить основные подходы: нейронные сети или классификаторы, обученные непосредственно на данных или векторах, полученных методами на основе наборов ключевых точек лица
или метода главных компонент.
Одним из наиболее известных и проработанных является
метод главных компонент (principal component analysis, PCA).
Целью метода главных компонент является значительное
уменьшение размерности пространства признаков. Используя
ограниченное количество собственных векторов этого пространства, можно получить сжатую аппроксимацию входного
изображения лица, которую затем можно хранить в базе данных в виде вектора коэффициентов, служащего одновременно
ключом поиска в базе данных лиц.
-
64

Глава 4
Метод главных компонент хорошо зарекомендовал себя в
практических приложениях. Однако в тех случаях, когда на
изображении лица присутствуют значительные изменения в
освещенности или выражении лица, эффективность метода
значительно падает. Все дело в том, что PCA выбирает подпространство с такой целью, чтобы максимально аппроксимировать входной набор данных, а не выполнить дискримина
цию между классами лиц.
Еще до начала разработки системы для набора данных был
сформулирован ряд требований:
— набор должен представлять собой множество изображений;
— на каждом изображении должно быть хотя бы одно лицо человека;
— исключены изображения с множеством лиц;
— лица могут быть представлены в разных ракурсах, с
разными
эмоциями;
— наличие нескольких изображений для каждого человека;
— все изображения должны содержать уникальный идентификатор человека;
— наличие изображений разного качества;
— в наборе данных должны быть представлены как муж-
чины, так и женщины.
Под эти критерии подходит набор под названием LFW-Pe-
ople (Face Recognition) [37].
Этот набор данных состоит из архива с фотографиями людей, рассортированных по папкам с указанием имен. Всего
набор содержит более 13 тысяч изображений, представляющих более чем 5,5 тысячи человек. При этом 1680 людей представлены двумя и более фотографиями. Единственное ограничение на изображения состоит в том, что все лица на них гарантированно могут быть обнаружены при помощи метода
Виолы — Джонса
[38].
Для создания прототипа была выделена часть набора данных: выбраны персоналии, представленные более чем 50 фо-
-
65

Технологии искусственного интеллекта в банковской сфере
тографиями. Таким образом, получен список из 12 персоналий:
Ariel Sharon, Colin Powell, Donald Rumsfeld, George W Bush,
Gerhard Schroeder, Hugo Chavez, Jacques Chirac, Jean Chretien,
John Ashcroft, Junichiro Koizumi, Serena Williams, Tony Blair.
Прототип системы должен включать в себя модель машинного обучения или искусственную нейронную сеть (ИНС) и
демонстрационное приложение.
Интерфейс пользователя был построен в среде QT Designer
[39]. Использовались только стандартные виджеты, а их расположение определялось макетом-сеткой (grid layout). Полученный файл *.ui представляет собой xml-
структуру. Файл
был сконвертирован в код Python при помощи PyQt5 UI code
generator. В результате был получен класс UI_MainWindow,
позволяющий открыть сконструированный интерфейс при запуске приложения [40].
В качестве прототипа модели идентификации был выбран
SVM (support vector machine) классификатор, обученный на
векторах, полученных методом PCA, как простой в реализации
и не требующий таких больших вычислительных мощностей,
как обучение глубоких нейронных
сетей. При этом само распознавание лиц выполнялось предварительно обученной сверточной нейронной сетью.
Процесс подготовки модели делится на следующие этапы:
— загрузка набора данных;
— разделение набора на тренировочную и тестовую части
(75 / 25
%);
— расчет векторов методом PCA для тренировочной вы-
борки;
— подбор значений гиперпараметров модели при помощи
GridSearchCV;
— обучение классификатора;
— сохранение модели.
При запуске приложения пользователю открывается интерфейс с доступными опциями. Для загрузки изображения в
приложение необходимо ввести полный путь до файла в стро-
66

Глава 4
ку сверху либо выбрать необходимый файл, нажав кнопку
«Обзор», а затем нажать кнопку «Открыть». Нажатие кнопки
«Обзор» открывает папку в проводнике, содержащую рассор-
тированные по именам персоналий тестовые изображения.
Для демонстрации было выбрано одно из изображений
(рис. 22). Если загрузка изображения прошла успешно, в окне
приложения будет выведено соответствующее сообщение [41].
Рис. 22. Результаты попытки идентификации
человека по изображению

Технологии искусственного интеллекта в банковской сфере
Глава 5
ТЕХНОЛОГИИ ОБРАБОТКИ ЕСТЕСТВЕННОГО ЯЗЫКА
5.1. Основные определения и термины,
связанные с обработкой естественного языка
Обработка естественного языка (NLP) — ветвь искусственного интеллекта, которая помогает компьютерам понять
человеческий язык, а также интерпретировать и манипулировать им. NLP состоит из многих дисциплин, включая компьютерную науку и вычислительную лингвистику, стремясь заполнить пробел между
пьютерным пониманием.
Уже на сегодняшний день можно утверждать, что подобные системы могут полностью заменить человека, анализируя
огромное количество языковых данных, делая это без усталости и с высокой скоростью.
К классическим задачам NLP можно отнести следующие.
Машинный перевод.
Технология машинного перевода на протяжении последних нескольких
лет достигла огромного прогресса. Ее по праву можно назвать самой первой и исторически важной задачей. Но по-прежнему вопрос FahqMT полностью автоматического перевода высокого качества остается открытым.
Классификация текстов.
Под классификацией документов понимают задачу компьютерной лингвистики, которая заключается в отнесении
текста к одной из нескольких категорий на основании
жания документа [42]. Она является самой популярной практической задачей и применяется для рубрикации (то есть для
человеческой коммуникацией и ком-
содер-
68

Глава 5
разделения веб-страниц и сайтов по тематическим каталогам),
борьбы со спамом, сентиментного анализа, определения языка
текста.
Named-entity recognition (извлечение именованных сущностей).
Идентификация сущности (NER) — это форма обработки
естественного языка (NLP), главная задача которой — выявить
и классифицировать ключевые объекты в тексте. Сущностью
может быть любое слово или серия слов. Как правило, заранее
в тексте
выделяют участки, которые должны соответствовать
выбранному набору сущностей, например, в документе NER
может обнаружить слово «БФУ» и классифицировать его в определенную категорию «университеты».
Извлечения фактов и отношений.
Relation Extraction — это задача извлечения семантических
отношений из текста. Извлеченные отношения обычно происходят между двумя или более сущностями определенного типа
и попадают в ряд
семантических категорий. В качестве примера можно привести отношения купли / продажи (Purchase and
Sale), владения (Ownership), факт рождения с параметрами —
датой, местом проживания и многие другие.
Чат-боты (вопросно-ответные и диалоговые системы).
Chatbots — это специальные AI-системы, предназначенные
для взаимодействия с людьми через текст или речь. Для того
чтобы подобные системы хорошо работали, должно быть
решено немало NLP-задач. Классическим примером диалоговых
систем являются Siri, Alexa, Алиса, а вопросно-ответных —
Wolfram, IBM Watson.
Саммаризация.
Суть данной задачи заключается в том, чтобы на выходе
получить сокращенную версию переданного текста с соответствующей структурой и с правильно изложенной мыслью.
Argumentation mining.
Argumentation mining достаточно популярная задача, которая выражается в том, чтобы найти обоснование в
тексте, ориентируясь на извлечение структурированных аргументов из
неструктурированного или шумного текста.
69

Технологии искусственного интеллекта в банковской сфере
Исходя из определения NLP, принцип его работы заключается в применении алгоритмов для выявления и извлечения
правил естественного языка, причем языковые данные являются неструктурированными и преобразуются в форму, которую могут понять компьютеры.
После загрузки текстовой информации машина будет использовать алгоритмы для извлечения значений, связанных с
каждым предложением и извлекать
основные данные из них.
Но иногда компьютер может не понять смысл контекста, что
приводит к неясным и противоречивым результатам.
Для обработки естественного языка используются два ме-
тода: синтаксический и семантический анализ.
Первый анализирует текст с использованием основных
грамматических правил для идентификации структуры предложений, как организованы слова и как слова
относятся друг к
другу. Второй фокусируется на захвате значения текста, изучая каждое отдельное слово (лексику семантики).
Синтаксический анализ включает в себя несколько основ-
ных подзадач, а именно:
1. Токенизация. Под токенизацией понимается процесс
разбития предложения на отдельные слова или токены. Делается это для сокращения текста. Мы можем находить предложения и вычленять их каждый раз по определенному знаку
пунктуации, будто бы это запятая или точка.
2. Частеречная разметка (POS Tagging). После процесса
токенизации каждый токен анализируется и классифицируется
в разных частях речи на определенные метки (существительное, глагол, прилагательное и так далее).
3. Лемматизация и стемминг. Лемматизацию и стемминг
используют для нормализации текста
, и эти понятия различаются. Лемматизацию можно описать как более тонкий процесс, который применяет словарь и морфологический анализ,
чтобы привести слово к его изначальной форме — лемме. В то
время как стемминг — эвристический процесс, который пытается откинуть «лишнее» от корня слов.
70
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
