Благодаря своему потенциалу улучшить нашу жизнь с помощью множества возможностей, искусственный интеллект становится неотъемлемой частью каждой отрасли. Хотя использование искусственного интеллекта может показаться привлекательным для компании; это сочетание а) великих мыслей, б) открытий, в) терпения и г) способности «делать дерьмо», что делает это реальностью.

В Squad мы революционизируем модерацию контента в онлайн-объявлениях и на торговых площадках. Мы помогаем обеспечить баланс между быстрым утверждением недавно загруженных пользовательских списков на сайт и поддержанием высокого стандарта качества листинга. В настоящее время наши клиенты ощущают чрезвычайно высокую эффективность без ущерба для качества с экономией до 70% затрат.

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

Проблемы модерации контента обычно связаны с очень субъективными суждениями, требующими мыслительного процесса, для которого наша человеческая рабочая сила хорошо обучена, тогда как машины могут не давать уверенных суждений. Как цитирует наш генеральный директор Apurv Agarwal: Мы, по сути, не решаем те проблемы, которые могут быть решены напрямую с помощью машинного обучения.

Достаточно сказать, что для решения сложных задач автоматизации нам нужны постоянные люди, которые могут помочь в надежном обучении алгоритмов машинного обучения.

Первый большой вызов

Когда мы получили самый первый вызов по автоматизации задач модерации контента для одного из наших клиентов, который, как оказалось, входит в пятерку ведущих рынков C2C в США, как и любая другая команда машинного обучения, мы начали с исследовательского анализа данных, понимания перекрывающихся классов и определение уникальных классов, визуализация отдельных кластеров и изучение доступных инструментов и подходов, которые можно использовать для решения такой сложной проблемы, которая включает в себя классификацию как текста, так и изображений.

Мы провели первоначальные эксперименты с использованием предварительно обученных моделей на современных архитектурах глубокого обучения и трансферном обучении, полагая, что большинство классов, которые мы хотим автоматизировать для нашего клиента C2C, уже присутствуют в классах объектов imagenet и К нашему удивлению, все модели работали с точностью более 95%. Такой успех в первых экспериментах порадовал нас, и мы почувствовали, что справились с задачей, но, что интересно, потребовалось 6 месяцев, чтобы действительно решить проблему от начала до конца.

В конце концов, мы узнали разницу между этапом разведки и производственной средой (где каждая модель должна быть точной на 99%). Для такой очень молодой команды, как мы, работающей в среде стартапов, где все должно быть построено на уровне Ферми, нас ждал ряд ударов.

Марафон автоматизации

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

Мы обучили многочисленные хорошо работающие модели на основе изображений и текста, построили достойную структуру обучения и тестирования и постоянно работали над изучением других подходов для улучшений, таких как метод пропуска грамматики, встраивание слов, обучение одним классом, GMM и т. Д.

Мы также пошли глубже, чтобы понять проблему искаженного распределения наборов данных, перекрытия классов и требований к ансамблю моделей и рабочих процессов. Когда ожидаемая точность и отзывчивость составляют 99,5%, другой задачей было подобрать качественные обучающие данные, чтобы получить высокую автоматизацию из реальных списков, которые сильно перекрывались по отношению к целевым меткам.

После того, как мы собрали требуемый набор данных, мы добились непрерывного успеха в получении результатов экспериментов и приближались к цифрам SLA, согласованным с клиентом.

Мы все были в восторге от принятой нами практики машинного обучения и наслаждались свежестью работы с множеством алгоритмов машинного обучения для решения сложных задач. В течение нескольких месяцев целенаправленных экспериментов у нас было много моделей, которые можно было развернуть в производственной среде и использовать для проверки качества в реальном времени. Но наша команда не ожидала очень важного моста, который необходимо было построить, прежде чем мы перейдем к этапу создания высококачественных прогнозов в реальном времени для модерации контента списков клиентов.

Эволюция ядра

После изучения различных подходов к кластеризации, методов очистки данных, увеличения данных, контролируемых и неконтролируемых алгоритмов, таких как SMOTE, KM-SVM, мы поняли, что всегда можем улучшить наши модели и что критериев остановки нет. Но чтобы приносить реальную пользу бизнесу, нам также нужна стабильная и надежная инфраструктура.

Именно тогда мы начали углубляться в доступную инфраструктуру. Мы начали изучать доступные инструменты для управления версиями моделей и системы прогнозирования, такие как Pachyderm, Spark, Data Version Control, HDFS и другие. Все эти системы были довольно сложными и требовали серьезных изменений для интеграции с нашей существующей структурой человек в цикле. Мы поняли, что создание нашей собственной системы Kernel для обработки прогнозов в реальном времени будет быстрее и проще. Именно тогда мы почувствовали потребность в большей пропускной способности инженеров внутри команды. Мы пригласили на борт Кетана Бхатта, чтобы он применил его энергию и опыт для создания надежной инфраструктуры для SquadAI.

В Squad мы следуем концепции Solver Teams.

В рамках нашей новой инфраструктуры группы решателей некоторые из нас начали сосредотачиваться на машинном обучении для изучения высокоточных моделей, в то время как другие изучали требуемый дизайн и архитектуру базы данных для магистрали инфраструктуры, ядра. Мы планировали и решали каждую проблему шаг за шагом, применяя целенаправленный подход и необходимый объем сотрудничества, чтобы начать с 1% автоматизации с точностью 99%. Найдите ниже график, показывающий неуклонный рост автоматизации для сложного сценария использования C2C.

Мы постоянно совершенствуемся с помощью последних современных подходов, моделей точной настройки, оптимизации глубокого обучения, CNN в классификации текста, определенных масштабируемых процессов и инфраструктуры для достижения целевой 50% автоматизации рабочего процесса AI + HI без ставя под угрозу точность суждений.

Чтобы глубже понять техническую сторону нашей платформы автоматизации, SquadAI вместе с его основой Ядро, пожалуйста, обратитесь в наш блог - SquadAI: платформа, управляемая краудсорсингом, для создания, управления и оценки рабочих процессов машинного обучения

Большое спасибо всем инженерам ML, которые участвовали в создании ядра: Aniket Bhatnagar, Medha Katehar a, Pragya Jaiswal и Priyank Jain.