В мире машинного обучения имя Абхишека Тхакура ассоциируется с исключительной практической экспертизой: он стал первым в мире четырехкратным грандмастером Kaggle. В интервью Сэму Чаррингтону на подкасте TWIML AI Абхишек, ныне инженер в Hugging Face, рассказывает о своем пути от обработки медицинских изображений до автоматизации сложнейших задач NLP и объясняет, почему будущее индустрии принадлежит инструментам, которые пишут код за человека.
🏆 Путь четырехкратного грандмастера: от Matlab к вершинам Kaggle 0:29
Карьера Абхишека Тхакура началась в 2010–2011 годах с интернатуры в Университете Уорика, где он работал над анализом патологических изображений . На тот момент он был студентом факультета электроники и использовал Matlab, а о машинном обучении знал лишь понаслышке, впервые столкнувшись с упоминанием алгоритма Random Forest . Позже, во время магистратуры в Боннском университете, интерес коллег к Data Science подтолкнул его к регистрации на платформе Kaggle .
Первым соревнованием Тхакура стала задача по распознаванию эмоций на лицах в 2013 году . По воспоминаниям гостя, тогда в состязании участвовало всего 50–60 человек, так как глубокое обучение (Deep Learning) только зарождалось, а видеокарты были крайне дорогими . Победители использовали нейросети, в то время как Абхишек пытался решить задачу методами классической обработки изображений в Matlab. Этот опыт стал переломным: осознав преимущество Python и доступность бесплатных библиотек, он полностью переключился на этот язык .
За свою карьеру Тхакур принял участие более чем в 200 соревнованиях . Он выделяет несколько ключевых уроков, которые дала ему платформа:
- Работа с категориальными переменными: Соревнование Amazon Employee Access Challenge стало для него учебником по обработке сложных признаков .
- Оптимизация под ограничения: Соревнования по написанию кода научили его создавать надежные модели с низкой задержкой (latency), способные работать в жестких временных рамках .
- Портфолио вместо диплома: Тхакур подчеркивает, что в начале 2010-х сильный профиль на Kaggle был критически важен для получения работы в Data Science, так как эта сфера еще не имела устоявшихся образовательных стандартов .
Несмотря на критику Kaggle за «стерильность» данных, Абхишек считает, что навыки моделирования, полученные там, полностью применимы в индустрии, хотя в реальных проектах 70–80% времени уходит не на обучение, а на сбор и очистку данных .
🤖 Auto NLP: Автоматизация «высшего пилотажа» в обработке текста 11:37
Перейдя в компанию Hugging Face, Абхишек Тхакур инициировал проект Auto NLP, целью которого стало упрощение работы с современными языковыми моделями . Идея родилась из его опыта участия в воркшопах по AutoML (Automatic Machine Learning) на конференциях вроде ICML, где он выигрывал свои первые GPU .
Главная концепция Auto NLP заключается в том, чтобы избавить пользователя от необходимости вручную настраивать архитектуру . Процесс максимально упрощен:
- Пользователь загружает CSV-файл с текстом и метками классов .
- Система автоматически перебирает state-of-the-art модели (BERT, RoBERTa и др.) .
- Auto NLP берет на себя токенизацию, подбор размера батча, скорости обучения (learning rate) и длины последовательности .
- На выходе пользователь получает лидерборд моделей, ранжированных по метрикам (точность, F1, precision, recall, AUC) и скорости предсказания .
Тхакур подчеркивает важное отличие продукта Hugging Face от конкурентов: в то время как многие вендоры предоставляют лишь API-эндпоинт, Auto NLP отдает пользователю полные веса модели и токенизатор . Это позволяет инженерам использовать автоматизированный результат как базовую линию (baseline) для дальнейшей тонкой ручной настройки .
На момент интервью проект поддерживает бинарную и многоклассовую классификацию, регрессию, распознавание именованных сущностей (NER) и суммаризацию . В ближайших планах команды — добавление функционала для перевода и ответов на вопросы (QA) .
🛠 Технический стек и «фишки» оптимизации 18:23
Команда проекта удивительно мала: над основной логикой работают всего два человека — сам Абхишек и Саймон, а также точечную помощь оказывают специалисты по инфраструктуре и фронтенду . Вся система развернута на Kubernetes, что позволяет параллельно обучать десятки моделей и проводить масштабный поиск гиперпараметров .
Говоря о методах оптимизации, Тхакур признается, что использует комбинацию сеточного (grid search) и байесовского подходов . Он делится важным эвристическим правилом: опытный инженер знает взаимосвязи параметров. Например, если увеличивается глубина дерева (в градиентном бустинге), часто стоит снизить скорость обучения . В Auto NLP эти знания о «пространстве поиска» зашиты в алгоритмы, что позволяет находить оптимальные конфигурации быстрее, чем при случайном переборе .
Абхишек также дает советы тем, кто работает с NLP вручную:
- Не начинайте с гигантов: Для датасетов в пару сотен примеров не нужны огромные модели; часто лучше сработают компактные архитектуры .
- Изучайте код, а не только формулы: Тхакур рекомендует держать реализацию на GitHub открытой во время чтения научной статьи . В качестве примера идеального ресурса он приводит Annotated Transformer от Harvard NLP, где статья «Attention Is All You Need» разобрана построчно на Python .
🔮 Будущее без кода: Мнение о перспективах профессии 36:41
Абхишек Тхакур придерживается смелого и для многих спорного мнения: в ближайшем будущем прикладным специалистам по данным придется писать гораздо меньше кода . По его словам, машинное обучение достигло стадии, когда автоматизация может закрыть большинство стандартных задач индустрии.
Ведущий Сэм Чаррингтон выразил опасение, что такой подход может привести к «локальному оптимуму», когда алгоритм AutoML упустит нетривиальное решение, которое мог бы найти человек . Тхакур частично согласен с этим риском: «Компьютеры ошибаются постоянно» . Однако он возражает, что современные инженеры часто совершают другую ошибку — сразу бросаются применять трансформеры даже там, где сработал бы логистический регресс . Инструменты автоматизации, по мнению гостя, как раз позволяют быстро протестировать множество подходов, включая упрощенные, которые человек мог проигнорировать из-за «хайпа».
Главный совет Абхишека начинающим — не зацикливаться на теории, а практиковаться. Свой подход он резюмирует в предисловии к собственной книге «Approaching (Almost) Any Machine Learning Problem»: «Если ты не писал код — ты не учился» .