View in Telegram
Около 6 лет назад я участвовал в создании прикольного сервиса на основе ML. Мы делали облако для матчинга фотографий с мероприятий и участников этих мероприятий. Работало это так: компания загружала пачку фотографий с мероприятий (например, корпоративов или конференций), а участникам на основании их аватарок подгружались только те фотографии, на которых они присутствуют. Прикольно, что сейчас такой функционал есть практически в любом хранилище фото, но тогда это было диковинкой. Давайте рассмотрим, как это работало под капотом: 1/ Компания загружала фотографии, которые с помощью opencv и numpy превращались в матрицы и тензоры с числами. 2/ Далее на каждой фотографии мы искали лица с помощью dlib или аналогичных библиотек. 3/ После этого каждое найденное лицо подавалось на вход сверточной нейронной сети (как сейчас помню - я использовал SphereFace CNN) и на выходе получался уникальный вектор-эмбеддинг из 512 чисел. 4/ Далее мы снижали размерность получившегося вектора с помощью метода главных компонент PCA, чтобы с ним было проще работать. 5/ Шаги 1-4 мы проделывали и с аватарками пользователей. 6/ Далее мы решали задачу многоклассовой классификации. 1 пользователь = 1 аватарка = 1 класс. Нам нужно каждое найденное лицо отнести к конкретному классу. Это будет эквивалентно «о, этот чувак нашелся на этой фотографии!». Алгоритм классификации мы придумали свой, модифицировали классический KNN. Метрики качества были стандартные - ROC/AUC, F1, precision и прочее. В итоге такая цепочка «фотографии → обработка CNN → снижение размерности PCA → многоклассовая классификация» позволяла участникам мероприятий заходить в кабинет и сразу после регистрации видеть свои фотографии. Причем мы добились очень высокого качества! Это живая иллюстрация применения ML в обычной жизни. Поэтому, когда в следующий раз в ВК увидите уведомление «кажется, мы нашли вас на этой фотографии» - знайте, под капотом там работает примерно такая же штука. И, пользуясь случаем, делаюсь радостной новостью - мы запустили новый курс «Инженер машинного обучения». Если вы хотите освоить профессию ML-щика или освоить новые скиллы - обязательно записывайтесь, вам точно понравится! 🤘 А для подписчиков моего канала братский подгон - дополнительная скидка 5% (помимо early birds цен на первый поток). Скидка по промокоду andron5 действует до пятницы, 20 дек. P.S. Пока писал пост, решил, что я точно проведу для студентов мастер-класс, где мы прям разберем решение этого кейса. Открыл свой код, захотелось снова в нем поковыряться) P.P.S. Мы не только курс новый запустили, но и дизайн лендинга обновили, зацените!
Please open Telegram to view this post
VIEW IN TELEGRAM
Love Center - Dating, Friends & Matches, NY, LA, Dubai, Global
Love Center - Dating, Friends & Matches, NY, LA, Dubai, Global
Find friends or serious relationships easily