Что такое голосовая биометрия
Как работает голосовая биометрия
Какая бывает биометрия, сколько это стоит и почему у этой технологии большое будущее.
Технический директор системного интегратора «Мерион Нетворкс»
«Ты у меня не такой как все» — не просто приятные слова, которые говорят нам родители и любимые. Это абсолютная правда!
На этой правде основана технология, которая помогает предотвращать финансовые преступления и упрощает нам жизнь при общении с крупными компаниями. Давайте поговорим про голосовую биометрию.
Что это такое
Отпечатки пальцев, рисунок вен на руках, сетчатка или радужная оболочка глаза и голос — всё это у нас уникально. Даже походка уникальна. Ни у кого нет точно такой же.
Именно эти параметры используются в биометрии.
Биометрию делят на физиологическую и поведенческую. Вопрос: к какому типу отнести вены на руках? Правильно, к физиологической. А сетчатку? Тут тоже всё просто. А что вы скажете про голос? Тут я советую не торопиться с ответом про физиологический фактор и подумать вот о чём.
Знаете выражение «голос дрожит»? Бывало такое у вас? Первое публичное выступление, робкое свидание… Личный телефонный разговор в переполненном общественном транспорте… Думаю, да. Наш голос сильно зависит не только от физиологических особенностей, но и от эмоций.
Чтобы снизить зависимость оценки от эмоционального состояния, в алгоритмах голосовой биометрии анализируется около 80 разных параметров нашего голоса!
Как используется
У биометрии есть две базовых задачи: идентификация и аутентификация.
Идентификация отвечает на вопрос «Кто это?». Например, в контакт-центр поступает звонок от неизвестного абонента — и голосовая биометрия должна определить, кто звонит. Для этого голос звонящего сравнивается со всем массивом биометрических данных, который имеется в нашем распоряжении.
Вторая задача — аутентификация. Это немного иная ситуация, подтверждение личности. Мы предполагаем, кто звонит, но надо в этом убедиться. То есть в этом случае мы узнаём: «А точно ли нам звонит Петров Иван Геральдович с датой рождения 24 февраля 1963 года?»
Тут уже есть гипотеза о личности — следовательно, нам достаточно сравнить голос звонящего с образцом биометрии, которая хранится на нашей стороне.
Что это за образец? Это шаблон или, другими словами, слепок, который оставляет вам клиент (разумеется, вы должны получить на это согласие).
Слепки собирать сложно. Но сейчас государственные органы работают над созданием Единой биометрической системы (ЕБС). Биометрическим слепком, оставленным в одном банке, смогут пользоваться другие банки, таким образом защищая ваши деньги от мошенничества и скорее открывая вам доступ.
Сколько стоит внедрение биометрии
Рассчитать приблизительную окупаемость внедрения голосовой биометрической системы не так уж и сложно. Если для примера усреднить все требования заказчиков и пробежаться по решениям, предлагаемым вендорами, получим затраты на внедрение порядка 10 млн рублей. Разумеется, это некая «средняя по больнице», а конкретная сумма зависит от глубины интеграции в ИТ-систему покупателя.
Теперь представляем себе некий банк «РосЕвроБетонСвязьКапитал», в котором оператор в среднем за 1 минуту идентифицирует и аутентифицирует клиента, а затем примерно за 4 минуты разбирается с его вопросом.
Предположим, менеджмент «РосЕвроБетонСвязьКапитала» держит заработную плату агентов контакт-центра на рыночном уровне и платит 50 000 рублей в месяц за 160 трудочасов ( 9 600 минут) оператора.
Разделив 50 000 рублей на 9 600 минут, мы получим 5 (пять) — именно столько рублей стоит минута работы вашего оператора.
При внедрении в «РосЕвроБетонСвязьКапитал» голосовой биометрии мы можем смело вычеркнуть 1 минуту на идентификацию и аутентификацию. Тем самым, даже при небольшом количестве обращений в сутки (пусть это будет 5 000 обращений), будет сэкономлено 5 000 минут.
Итого: для типовой инсталляции, при затратах в 10 000 000 рублей на внедрение системы голосовой биометрии, мы имеем среднюю окупаемость через 13 месяцев. Неплохо, согласитесь?
Кто уже в биометрическом клубе?
Несложно догадаться, что технология интересна государству. Например, в Индии существует система UIDAI, используемая для идентификации граждан и резидентов. Представьте, в ней собрано примерно 1,15 млрд слепков. Это 85% населения!
В 2016 году в России активно заговорили о создании ФИСБУ (Федеральной информационной системы биометрических учётов), которая помогает искать преступников по биометрическим признакам: радужка, татуировки на теле и, возможно, в ближайшее время появится возможность искать по походке. Ориентировочно реализация этой фичи запланирована на 2021 год.
В бизнесе интерес не меньше. В 2017 году Сбербанк потратил 260 млн рублей на проект голосовой биометрии. По заверению руководства банка, проект имел плановую точку окупаемости через 2 года с момента внедрения.
«Почта-банку» голосовая биометрическая система помогла отбить мошеннические атаки примерно на 10 млн рублей.
Также в биометрическом клубе находятся Альфа-банк, «Хоум Кредит» и «Тинькофф» — все они уже внедрили технологию на участках обслуживания клиентов.
Итоги
Поскольку технология новая, запустить её на полную мощность пока не даёт имеющаяся законодательная база. Так, например, Правительство РФ пока не разрешает масштабировать биометрию на все типы банковских операций.
В то же время есть и другие проблемы. Это недоверие людей и отсутствие масштабной централизованной базы биометрических слепков.
Однако вектор развития технологии уже понятен — государство и бизнес будут стремиться автоматизировать авторизационные и идентификационные операции. Профиты от повышения их точности и скорости и одновременного уменьшения стоимости уже очевидны.
Речевые технологии. Голосовая биометрия для чайников на примере работы в контактном центре
Всем привет.
Недавно я написал вот такую статью про распознавание слитной речи, а сейчас хотел бы написать про голосовую биометрию, т.е. подтверждение личности человека по голосу и узнавание человека по голосу.
Опять же, т.к. моя работа связана с контактными центрами (КЦ), то говорить я буду о них. Это еще связано с тем, что сейчас именно они активно интересуются голосовой биометрией, что не удивительно, т.к. телефонный канал – это идеальное ее применение.
— вы не видите абонента на другом конце провода;
— вы не можете использовать другие модальности для подтверждения личности: по лицу, по сетчатке глаза, по отпечатку пальца.
— не нужны дополнительные сканирующие устройства, типа тех, куда надо приложить свой палец или кому показать свой глаз.
— это самый дешевый способ биометрии, хоть и слегка уступает по надежности другим способам. Но так как другие модальности технически не применимы по телефону в массовом использовании, то выбора по факту нет.
Вы, конечно, можете возразить про вариант подтверждения личности абонента «основанном на знаниях» — это пароли, секретные слова, TPIN коды (банки), паспортные данные и т.д. – но все это не надежно с точки зрения безопасности и требует запоминания информации у абонента или всегда держать информацию под рукой, что не очень удобно для абонента и не эффективно (затратно) для КЦ.
Для начала определимся с понятиями, что входит в понятие голосовой биометрии:
— Это идентификация, т.е. установление личности человека по голосу. Это когда вам звонит старый приятель по телефону с неизвестного номера и говорит: «Угадай кто это?» и вы пытаетесь в голове среди всех известных (знакомых) голосов найти наилучшее совпадение. Когда сканирование памяти закончилось и вы нашли более менее подходящее совпадение, то вы можете уже сказать: «Ага, это мой одноклассник Серега с которым я не говорил 10 лет». Но гарантии в том, что это именно он, у вас нет, и тут приходит время верификации.
— Верификация – это подтверждение личности по голосу, т.е. однозначное удостоверение личности. Для этого мы можем попросить доказать, что Серега именно тот, за кого себя выдает. Мы можем спросить у него: «Скажи, где мы были в 6 утра на выпускном» — эта информация позволит нам подтвердить личность Сереги, т.к. только он может являться носителем этой информации (аналогично паролю о котором я писал выше).
Если хотите более умное определение, то:
Идентификация — Проверяет совпадение одного образца голоса со многими из базы голосов. В качестве результата идентификации система показывает список личностей с похожими голосами в процентном отношении. 100% совпадение означает, что образец голоса полностью совпадает с голосом из базы данных и личность установлена достоверно.
Верификация — Производит сличение двух образцов голоса: голос человека, чью личность необходимо подтвердить, с голосом, который храниться в базе данных системы и чья личность уже достоверно установлена. В качестве результата верификации система показывает степень совпадения одного голоса с другим в процентном отношении.
Есть еще такое понятие как аутентификация. Однозначно сказать, чем она отличается от верификации сказать трудно. У некоторых наших сотрудников есть мнение, что это некий процесс подтверждения биологической (!) личности, когда трудно отделить процесс идентификации от верификации, т.е. это обобщенный процесс.
Голосовая верификация.
Я вам расскажу про верификацию, т.к. она больше интересна для реального применения в контактном центре, чем идентификация.
Какая бывает верификация?
— Текстонезависимая
Когда подтверждение личности происходит по спонтанной речи абонента, т.е. нам не важно, что говорит человек. Это самый долгий метод подтверждения – чистой речи абонента должно накопиться минимум 6-8 сек. Обычно этот способ применяется непосредственно во время общения абонента с оператором КЦ, когда последнему нужно однозначно удостовериться, что абонент именно тот, за кого себя выдает. Самое интересное, что данный способ верификации можно применять скрытно от самого абонента. На рабочем месте оператора КЦ виден вот такой рабочий инструмент.
Рис 1. Часть интерфейса рабочего места оператора КЦ для проведения верификации клиента.
— Текстозависимая по статической парольной фразе
Когда подтверждение личности происходит по парольной фразе, которую на момент регистрации придумал абонент. Длительность парольной фразы должна быть не менее 3 сек. Обычно мы предлагаем говорить свое ФИО и название компании. Парольная фраза всегда одинаковая.
— Текстозависимая по динамической парольной фразе
Когда подтверждение личности происходит по парольной фразе, которую предлагает сама система в момент звонка для верификации, т.е. каждый раз парольная фраза разная! Обычно мы предлагаем динамическую парольную фразу из последовательности цифр. Абонент повторяет за системой числа до тех пор, пока она не примет однозначного решения «свой/чужой». Это может быть и одно число типа «32» или целый набор «32 58 64 25». Интересно то, то произнесение разных цифр дает разный объем информации для сличения: самая «полезная» цифра «восемь» – она больше всего содержит полезной речевой информации, самая бесполезная «два».
Как работает верификация по голосу?
Шаг 1.
Что бы мы могли провести верификацию по голосу, нам нужно в своей базе уже иметь образец голоса (слепок голоса), хозяин которого достоверно известен. Поэтому первый шаг – это накопление базы слепками голосов, для этого мы просим абонентов (клиентов) пройти процесс регистрации в системе.
Регистрация в системе абонента означает, что он добровольно оставляет свой слепок голоса, который потом мы будем использовать для верификации. Обычно мы просим оставить подряд 3 слепка голоса, что бы была вариативность – три раза произнести свой пароль. Затем, когда верификация будет успешно пройдена, мы заменим наиболее старый слепок голоса новым, таким образом, происходит постоянное обновление слепков, если абонент часто пользуется системой. Так мы решаем проблему старения голоса.
Если мы применяем верификацию по динамической парольной фразе, то мы просим произнести абонента цифры от 0 до 9 три раза. В результате у нас будет 30 образцов голоса.
Желательно, что бы клиент оставлял свой слепок голоса (регистрировался) по тому каналу связи, по которому потом будет верифицироваться, иначе вероятность ошибок возрастает. Бывают случаи, когда проходят регистрацию с гарнитуры в скайпе, а потом верифицируются по домашнему телефону – здесь фактор канала связи будет играть большую роль в надежности сервиса. При построении сервиса можно учитывать, что каналы связи могут быть разные — это отрабатывается и тестируется отдельно под конкретный случай и нивелировать влияния канала связи можно практически полностью. Но не подумав об этом сразу и с наскока внедрить — будут сложности.
Когда стоит предложить клиенту пройти регистрацию? Тогда, когда мы уже подтвердили его личность другими способами, например, при посещении офиса компании или когда оператор КЦ задал 100500 разных вопросов про девичью фамилию матери.
У нас есть реально работающий сервис (стенд) на телефоне, как реализован механизм регистрации для клиентов банка на практике, можно узнать из этого документа.
Важно, что бы клиент самостоятельно и осознано прошел регистрацию (знал зачем это нужно и как это ему потом поможет), т.к. пройти потом верификацию может только лояльный абонент, которому нужен результат и который принимает «правила игры».
Если клиента вынуждать проходить верификацию к месту и не к месту, то он может подсознательно изменять голос, дурачиться (быть не дружелюбным к сервису) — это будет приводить к ошибкам и лояльность клиента будет падать, хотя он сам в этом косвенно будет виноват.
Как проходит регистрация абонента в системе? (статическая парольная фраза)
Рис 2. Схема регистрации человека в биометрической системе.
1.Абонент звонит в биометрическую систему, которая предлагает ему придумать и произнести парольную фразу. Произнести 3 раза.
2.Голос обрабатывается сервером биометрии и на выход мы получаем 3 модели голоса. По одной на каждый произнесенный пароль.
3.На сервере мы заводим карточку клиента (Юрий Гагарин) к которой прицепляем полученные 3 модели голоса.
Что такое модель голоса?
— это уникальные характеристики голоса человека отраженные в матрице цифр, т.е. это файл размером 18Кбайт (для статической п.ф.). Это как отпечаток пальца. Именно эти модели голоса мы потом и сравниваем. В общей сложности модель голоса фиксирует 74 (!) разных параметра голоса.
Как получают модели голоса?
Мы используем 4 независимых метода:
— анализ статистики основного тона;
— метод смеси гауссовых распределений и SVM;
— спектрально-формантный;
— метод полной изменчивости.
Описывать их подробно я здесь не возьмусь – это сложно даже для меня и в курс «для чайников» точно не входит. Этому всему мы учим на нашей кафедре РИС в ИТМО (Санкт-Петербург).
Шаг 2.
Это непосредственно сама верификация. То есть у нас есть абонент на том конце провода, который утверждает, что он Юрий Гагарин. А у нас в базе, соответственно, есть карточка клиента Юрия Гагарина, где хранятся слепки его голоса, поэтому, все, что нам нужно сделать – это сравнить голос человека, который утверждает, что он Юрий Гагарин с голосом настоящего Юрия Гагарина.
Как проходит верификация абонента в системе? (статическая парольная фраза)
Рис 3. Схема верификации человека в биометрической системе.
1.Сначала мы поступаем как при регистрации, т.е. у нас есть произнесенный клиентом пароль, который мы отправляем в сервер биометрии и строим модель голоса «якобы» Юрия Гагарина.
2.Затем мы берем 3 модели голоса настоящего Юрия Гагарина, делаем хитрым способом усредненную модель и тоже отправляем ее в сервер биометрии.
3.Просто сравниваем 2 разные модели. На выходе мы получаем процент соответствия одной модели к другой.
4.Дальше нам нужно что-то делать с этим числом (на рисунке 92%). Много это или мало, можем мы однозначно сказать, что это Юрий Гагарин или это обманщик?
Рис 4. Порог доверия «свой/чужой».
В системе у нас есть такой параметр как «порог доверия» — это некий процент соответствия. Допустим, мы его сами задали в 60%. Таким образом, если процент соответствия модели голоса «якобы» Юрия Гагарина не доходит до «порога доверия», то нам позвонил обманщик. Если больше «порога доверия», то нам позвонил настоящий Юрий Гагарин. «Порог доверия» мы можем задавать сами, обычно это от 50 до 70% в зависимости от задачи верификации.
Здесь мне нужно было бы вам рассказать про ошибки первого (FR) и второго рода (FA), а также обобщенной ошибки (EER), но я это делать не буду – это сильно усложнит и увеличит текст. Если интересно, то я попробую уговорить, кого ни будь из научного отдела это популярно описать и размещу здесь отдельно.
Скажу просто, что в зависимости от задачи верификации, нам бывает полезней с большей долей вероятности пропустить «своего», чем не пропустить «чужого». И наоборот, иногда бывает важнее не пропустить «чужого», чем пропустить «своего».
Уверен, что с первого раза эти 2 предложения из вас никто не понял, и вам пришлось еще раз вдумчиво их прочитать, что бы осознать смысл.
Интеграция сервера биометрии в контактный центр.
Рис 5. Блок-схема продукта VoiceKey.
Честно говоря, здесь все очень просто: на вход мы подаем голос в формате wave или PCM по http, на выходе получаем результат сравнения. Больше подробнее на этом останавливаться не хочу.
Процесс верификации занимает в среднем 0.8 сек. Есть возможность работать одновременно со многими потоками.
У нас на сайте все подробно описано, а главное есть проработанные сценарии использования для контактных центров. За последние годы я достаточно много общался с различными крупными КЦ в России, в первую очередь это финансовый сектор и понимание целей и задач у меня сформировалось.
Теперь затронем такой вопрос: насколько вообще технология голосовой биометрии пригодна к массовому использованию? Надежна ли она?
Если кратко, то ДА, она реально круто работает. У нас в компании есть телефонные демонстрационные стенды. Если интересно, то каждый из вас может позвонить и лично попробовать, как и что работает. Телефонный номер и инструкцию по тестированию даю по запросу с этой страницы. Просто для статистики интереса к этой теме и оценки нагрузки на сервер.
Для справки: разработки Российских ученых в области голосовой биометрии занимают если не первое место в мире, то точно делят его с другими. Это подтверждено независимыми исследованиями, например NIST (Национальный Институт Стандартов и Технологий, США), где наша компания попала в тройку лучших по всем пяти тестам среди коммерческих компаний. Или то, что наш продукт «VoiceKey» победил в номинации «Лучший продукт года для КЦ» в 2013 году в международном конкурсе «Хрустальная гарнитура».
Также можно отметить, что нашей компании принадлежит реализация самого крупного в мире на сегодняшний день проекта по голосовой биометрии в телефонном канале.
Вкратце, вот такой ликбез. Готов отвечать на вопросы в комментах.
Голосовые отпечатки: скорее всего, вы уже успели «наследить»
Если в колл-центрах, куда вы иногда звоните, есть система создания голосовых отпечатков, вас могут легко опознать. Если такой системы ещё нет, ваши отпечатки можно создать в один клик по ранее сделанным записям.
Работает это так: каждый раз, когда вы звоните, например, в банк, где есть система определения клиента по голосу, ваш разговор записывается. Скажем, 1-2 минут вашей беседы с оператором достаточно для того, чтобы создать достаточно точный профиль вашего голоса. В дальнейшем вас будут определять по первой фразе.
Процесс создания голосового отпечатка и его проверки несимметричный. Для создания используется больше данных (больше времени разговора), для проверки – меньше примерно на порядок. Максимум, который я видел в условиях сильно зашумлённой линии – 15 секунд на проверку.
Что такое голосовой отпечаток?
Голосовой отпечаток – это некая уникальная для человека запись, что-то вроде отпечатка пальца. Она не привязывается к самой речи человека (конкретным словам или определённой фразе), а характеризует голос в целом. Технологии создания голосовых отпечатков закрыты, но если совсем коротко – речь может идти об анализе опорных точек в речи, например, характерных для переходов между звуками.
Система реагирует на различные физические характеристики: помимо высоты, скорости разговора конкретного человека, к сведению принимаются даже физиологические особенности его звукового тракта, горла, глотки, даже носа. Всего учитывается около 50 показателей вроде акцентированных звуков, особенностей произношения, темпа речи, типа произношения слов и звуков, физических характеристик голоса.
Как используется такой отпечаток?
Итак, вы наговорили на целую минуту или даже больше (считается только время вашей речи). Этого достаточно, чтобы получить ваши голосовые «отпечатки пальцев».
Теперь представим, что компания, куда вы звоните, имеет голосовые отпечатки потенциальных мошенников (или ещё какой-то список людей под особым контролем). За примерно 10 секунд вашей речи происходит сравнение с базой до 1000 записей, и если вы уже успели засветиться в такой базе – оператор получает алерт. Плюс срабатывают любые другие нотификации, например, для отдела безопасности.
Второй случай — это когда мы делаем валидацию, что клиент, который нам сейчас позвонил, действительно является тем самым клиентом, который хочет получить доступ к своему счету. То есть когда вы обращаетесь в банк и хотите сделать какую-то операцию или получить важную информацию, они у вас спрашивают помимо номера вашего счета спрашивают пароль, имя вашей собачки, в какой деревне ваша бабушка отмечала первую свадьбу, и так далее.
Здесь проблема состоит в том, что у нас очень много доступной информации в соцсетях. Cоответственно, если мошенники хотят подобрать доступ к вашему счету, они будут тратить достаточно много усилий, и иногда успешно, на то, чтобы эту информацию собрать. Возможно, они просто прочитают вашу страницу «Вконтакте», и всю необходимую информацию соберут за раз. Иногда они будут отзваниваться 99 раз в контактный центр и пытаться «брутфорсить». Если использовать эту атаку довольно медленно, то через несколько месяцев возможен успех. И здесь помогает отпечаток настоящего клиента (составленный в разговорах, где клиент правильно верифицировался).
В итоге, когда клиент звонит и говорит: «Здравствуйте, вот я такой-то, я хочу по своему счету сделать, например, перевод, номер счета у меня такой-то», система проводит верификацию.
Как тестировалось?
Учитывая, что создание голосовых отпечатков – закрытые алгоритмы, возникает вполне логичный вопрос о точности. Могу рассказать про тесты. Для начала мы просто кричали в трубку «Не верьте ему» и другую чушь параллельно с разговором человека с контактным центром. В этом случае время проверки незначительно вырастает – отпечаток создаётся на пару секунд дольше. При сильном ветре на улице система также берёт больше времени.
Также мы переключались с телефонной трубки на общую связь в комнате, в которой одновременно говорит несколько человек, просто при этом человек, который реально разговаривает с оператором, он сидит ближе всех к трубе. И даже в этом случае система определяла его.
Для каждого клиента или ситуации может выставляться разный уровень порога верификации. Например, если система «уверена на 80%» — это подходящий вариант для запроса баланса у сотового оператора, а «уверена на 100%» — это хороший вариант для банка перед тем, как задавать вопросы о секретных словах.
Техническая среда контактного центра оказывает влияние на систему голосовой верификации, приходится калибровать порог ложных срабатываний на каждой отдельной инсталляции. Да, ещё иногда под одного клиента нужно несколько отпечатков. Например, клиент звонит с сотового телефона из-за границы, и все время у него там качество записи плохое, качество канала само по себе плохое. К учётной записи клиента привязано несколько профилей: система будет проверять, подходит ли каждый из них под ситуацию.
На создание голосового отпечатка в некоторой степени влияют шумы в линии. Если окружение максимально приближено к тому, откуда делался первый звонок со снятием отпечатка, то система даёт точность около 100%. Грубо говоря, звонок по шумной линии даст только 80% точности.
Привет, параноики!
Да, вы правильно поняли. Можно создать ваш голосовой отпечаток и найти ваши переговоры, прямо как в «Бетмэне». Правда, пока это не очень реально – на большой выборке будет много ложных срабатываний. Поэтому пока что основной профиль использования отпечатков – именно сравнение с базой мошенников или аутентификация клиента для доступа к некритичным данным. Разумеется, голосовая идентификация, не сработавшая на 100% (то есть выполненная не в тех же условиях технической среды, что делался исходный звонок) не может использоваться как единственный порог безопасности, но она создаёт огромное удобство для многих случаях в контактных центрах.