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

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

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

Получение данных

Чтобы исследовать правомерность использования биометрических данных походки для идентификации и аутентификации пользователей смартфонов, сначала необходимо собрать данные, касающиеся пользовательских данных. Набор данных был создан за несколько дней в разных местах для моделирования реальных условий. Среда для прогулок, в которой происходил сбор данных, включала плоский коридор, выложенный плиткой коридор с лестницей и комнату с ковровым покрытием. Набор данных состоял из 20 субъектов в возрасте от 18 до 69 лет. Устройство, используемое для сбора данных, - это Nokia 3, работающая под управлением операционной системы (ОС) Android. Все Android-устройства Nokia оснащены Bosch BMI160, небольшим инерциальным измерительным блоком с низким энергопотреблением, в котором находятся гироскоп и акселерометр. Акселерометры - это электромагнитные устройства, которые измеряют негравитационное линейное ускорение. Смартфон помещается в карман испытуемого во время сбора данных, и испытуемых просят естественным образом ходить по окружающей среде. Период сбора данных рассчитан таким образом, чтобы была собрана выборка данных продолжительностью примерно 30 секунд. От каждого испытуемого было взято по две пробы.

Подготовка данных

Расчет величины

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

Кубическая интерполяция сплайна

Поскольку приложение для сбора данных с датчиков работает поверх ОС Android, сбор данных не будет происходить с фиксированной частотой дискретизации. Нерегулярная частота дискретизации возникает из-за того, что ОС должна дать другим процессам время для работы на ЦП телефона. Данные сигнала должны быть повторно дискретизированы и интерполированы, чтобы можно было использовать фиксированную частоту дискретизации. Важно установить достаточно высокую частоту повторной выборки, чтобы можно было зафиксировать динамику цикла походки с достаточной детализацией для обеспечения точного выделения признаков. Величина данных сигнала была интерполирована с использованием кубического сплайна и повторно дискретизирована с частотой 50 Гц (200 выборок в секунду).

Фильтр нижних частот Баттерворта

Распространенной проблемой при сборе данных сигнала инерционного датчика является то, что датчики чувствительны и собирают «зашумленные» данные. Зашумленные данные проявляются в виде аномально высоких и острых пиков. Чтобы удалить зашумленные данные, был применен фильтр нижних частот Баттерворта с порогом отсечки 3 Гц.

Расчет оптимального порога и сегментация цикла походки

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

Среднее значение цикла походки

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

Извлечение функций

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

Классификация

Машины опорных векторов (SVM) - это управляемая двоичная модель машинного обучения, которую можно использовать для классификации. Первоначально формируется пространство признаков, которое представляет собой n -мерное векторное пространство, созданное n указанными функциями данных, которые должны быть классифицированы. SVM выполняет свою задачу классификации, создавая гиперплоскость или набор гиперплоскостей, чтобы попытаться разделить классы на как можно большем расстоянии. Ошибка обобщения классификатора уменьшается, когда запас между гиперплоскостью и ближайшей точкой обучающих данных максимально велик. SVM используют опорные векторы, точку данных, которая находится ближе всего к гиперплоскости, чтобы найти оптимальную поверхность принятия решения и указать функцию принятия решения. Классификаторы SVM обычно хорошо работают в многомерных пространствах и, как правило, дают хорошие результаты для небольших наборов данных, что делает их идеальным классификатором для набора данных модели. Классификатор SVM модели использовал ядро ​​радиальной базисной функции и значение C, равное 1. SVM не инвариантны для масштабирования, поэтому все данные, составляющие векторы признаков, были масштабированы для получения значимых результатов.

Оценка модели

Аутентификацию можно охарактеризовать как проблему двоичной классификации, и типичный способ визуализации работы системы аутентификации - это построение кривой рабочих характеристик приемника (ROC) для классификатора. Кривая ROC - это графическое представление выходных данных двоичного классификатора при изменении его порогового значения. В идеале кривая ROC будет проходить через точку (0, 1) в верхнем левом углу графика, поскольку это точка, в которой частота истинных положительных результатов полностью максимизирована, а частота ложных положительных результатов полностью минимизирована. Эта точка, ближайшая к (0, 1), определяет коэффициент равных ошибок системы (EER), который является важным показателем для оценки системы двоичной классификации. EER означает точку, в которой коэффициент ложного принятия (FAR), процент выборок данных самозванцев, которые, вероятно, будут неправильно аутентифицированы системой, равен коэффициенту ложного отклонения (FRR) - это процент, в котором верный образец данных будет ошибочно отклонен. аутентификация системой. Чем меньше EER, тем лучше производительность системы. Другие показатели, которые будут использоваться для оценки производительности модели, - это точность, точность и отзывчивость. Оценка точности системы, содержащей n образцов, может быть рассчитана следующим образом:

Зная количество истинных положительных результатов (TP), истинных отрицательных результатов (TN), ложных положительных результатов (FP) и ложных отрицательных результатов (FN), мы можем вычислить оценки точности, отзыва и показателя f1:

Дополнительным механизмом визуализации работы классификатора, особенно контролируемого, является матрица неточностей. Матрица неточностей определяется матрицей C, где C_i, j устанавливается равным количеству точек данных, которые принадлежат классу i, но имеют предположительно входит в группу j. Матрица путаницы позволяет легко идентифицировать неправильно маркированные классы. Дополнительные показатели, представленные здесь, - это оценка F1, средневзвешенное значение точности и отзыва, а также поддержка, количество вхождений класса в целевые значения. Все показатели были рассчитаны с использованием стратегии классификации «один против остальных», которая соответствует одному классификатору на класс. Для валидации использовался разделение на тестирование и обучение 50–50 человек. Акселерометр достиг удовлетворительной точности 78,49% и EER 7,04%. Оценка точности 80,44% подтверждает, что модель имеет хорошую точность, и сводит к минимуму количество ложных срабатываний. Отзыв акселерометра, однако, не улучшился с показателем 74,48%, что также отражается в достигнутом балле f1, 75,58%.

Заключение

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

Если у вас есть какие-либо вопросы, напишите в комментариях ниже.