TGViewer
Data, Stories and Languages Data, Stories and Languages @datastorieslanguages · 3.84K subscribers
Post #259 1.54K
Facial recognition to detect duplicate Captain accounts

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

По ссылке можно почитать официальный вариант. Если стиль или тон текста покажутся странными - не удивляйтесь, оригинальный текст переписывали два-три раза для соответствия корпоративным стандартам, не всегда с моего согласия :)

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

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

Сам подход довольно простой - собираем все фотографии капитанов (лежат у нас на S3), извлекаем эмбеддинги и сравниваем. Фоток было 2-3 миллиона. Для извлечения эмбеддингов я использовал либу face_recognition - можно использовать для коммерческих целей, работает шустро и достаточно хорошо. Эмбеддинги хранил и сравнивал с помощью Faiss-GPU. Индексирование и поиск топ-5 схожих эмбеддингов заняло около часа.

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

В прод для регулярных проверок не выкатывали по вышеописанной причине. И потом, через полгодика проверки при регистрации улучшили.

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

Ссылка

#datascience
GitHub GitHub - ageitgey/face_recognition: The world's simplest facial recognition api for Python and the command line The world's simplest facial recognition api for Python and the command line - ageitgey/face_recognition
  • 👍 9
  • 🔥 4
  • ❤ 1
  • 😁 1
More from @datastorieslanguages
  1. Oct 13, 2026Post #772
  2. Oct 12, 2026​​О пользе LLM для изучения языков Просто хочу поделиться тем, что в наше время можно очен…
  3. Oct 8, 2026Amazon AI создаёт summary о вас. Это работает ужасно Люди заметили новую фичу на Amazon. О…
  4. Oct 7, 2026​​GPT‑6 and Intelligent UI for everyone https://openai.com/index/gpt-6-for-everyone/ OpenA…
  5. Oct 5, 2026ML Roadmap 2026 A machine learning roadmap for beginners in 2026 Те кто застали ODS, возмо…
  6. Sep 30, 2026​​NVIDIA Kumo Tabular https://huggingface.co/blog/nvidia/kumo-tabular NVIDIA выпустила нов…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →