# Абхишек Тхакур: «В будущем инженеры машинного обучения будут писать гораздо меньше кода»

Источник: https://www.youtube.com/watch?v=qH_Sre7b4AE
Канал: The TWIML AI Podcast
Опубликовано: 16.04.2021

---

В мире машинного обучения имя Абхишека Тхакура ассоциируется с исключительной практической экспертизой: он стал первым в мире четырехкратным грандмастером Kaggle. В интервью Сэму Чаррингтону на подкасте TWIML AI Абхишек, ныне инженер в Hugging Face, рассказывает о своем пути от обработки медицинских изображений до автоматизации сложнейших задач NLP и объясняет, почему будущее индустрии принадлежит инструментам, которые пишут код за человека.

## 🏆 Путь четырехкратного грандмастера: от Matlab к вершинам Kaggle
[[JUMP:00:29]]

Карьера Абхишека Тхакура началась в 2010–2011 годах с интернатуры в Университете Уорика, где он работал над анализом патологических изображений [01:10]. На тот момент он был студентом факультета электроники и использовал Matlab, а о машинном обучении знал лишь понаслышке, впервые столкнувшись с упоминанием алгоритма Random Forest [01:24]. Позже, во время магистратуры в Боннском университете, интерес коллег к Data Science подтолкнул его к регистрации на платформе Kaggle [01:48].

Первым соревнованием Тхакура стала задача по распознаванию эмоций на лицах в 2013 году [02:16]. По воспоминаниям гостя, тогда в состязании участвовало всего 50–60 человек, так как глубокое обучение (Deep Learning) только зарождалось, а видеокарты были крайне дорогими [02:55]. Победители использовали нейросети, в то время как Абхишек пытался решить задачу методами классической обработки изображений в Matlab. Этот опыт стал переломным: осознав преимущество Python и доступность бесплатных библиотек, он полностью переключился на этот язык [03:37].

За свою карьеру Тхакур принял участие более чем в 200 соревнованиях [05:05]. Он выделяет несколько ключевых уроков, которые дала ему платформа:

*   **Работа с категориальными переменными:** Соревнование *Amazon Employee Access Challenge* стало для него учебником по обработке сложных признаков [08:49].
*   **Оптимизация под ограничения:** Соревнования по написанию кода научили его создавать надежные модели с низкой задержкой (latency), способные работать в жестких временных рамках [09:42].
*   **Портфолио вместо диплома:** Тхакур подчеркивает, что в начале 2010-х сильный профиль на Kaggle был критически важен для получения работы в Data Science, так как эта сфера еще не имела устоявшихся образовательных стандартов [05:32].

Несмотря на критику Kaggle за «стерильность» данных, Абхишек считает, что навыки моделирования, полученные там, полностью применимы в индустрии, хотя в реальных проектах 70–80% времени уходит не на обучение, а на сбор и очистку данных [07:17].

## 🤖 Auto NLP: Автоматизация «высшего пилотажа» в обработке текста
[[JUMP:11:37]]

Перейдя в компанию Hugging Face, Абхишек Тхакур инициировал проект Auto NLP, целью которого стало упрощение работы с современными языковыми моделями [11:23]. Идея родилась из его опыта участия в воркшопах по AutoML (Automatic Machine Learning) на конференциях вроде ICML, где он выигрывал свои первые GPU [12:15].

Главная концепция Auto NLP заключается в том, чтобы избавить пользователя от необходимости вручную настраивать архитектуру [14:29]. Процесс максимально упрощен:

1.  Пользователь загружает CSV-файл с текстом и метками классов [14:42].
2.  Система автоматически перебирает state-of-the-art модели (BERT, RoBERTa и др.) [14:54].
3.  Auto NLP берет на себя токенизацию, подбор размера батча, скорости обучения (learning rate) и длины последовательности [15:07].
4.  На выходе пользователь получает лидерборд моделей, ранжированных по метрикам (точность, F1, precision, recall, AUC) и скорости предсказания [24:35].

Тхакур подчеркивает важное отличие продукта Hugging Face от конкурентов: в то время как многие вендоры предоставляют лишь API-эндпоинт, Auto NLP отдает пользователю полные веса модели и токенизатор [25:43]. Это позволяет инженерам использовать автоматизированный результат как базовую линию (baseline) для дальнейшей тонкой ручной настройки [26:10].

На момент интервью проект поддерживает бинарную и многоклассовую классификацию, регрессию, распознавание именованных сущностей (NER) и суммаризацию [16:11]. В ближайших планах команды — добавление функционала для перевода и ответов на вопросы (QA) [16:21].

## 🛠 Технический стек и «фишки» оптимизации
[[JUMP:18:23]]

Команда проекта удивительно мала: над основной логикой работают всего два человека — сам Абхишек и Саймон, а также точечную помощь оказывают специалисты по инфраструктуре и фронтенду [18:36]. Вся система развернута на Kubernetes, что позволяет параллельно обучать десятки моделей и проводить масштабный поиск гиперпараметров [19:18].

Говоря о методах оптимизации, Тхакур признается, что использует комбинацию сеточного (grid search) и байесовского подходов [26:37]. Он делится важным эвристическим правилом: опытный инженер знает взаимосвязи параметров. Например, если увеличивается глубина дерева (в градиентном бустинге), часто стоит снизить скорость обучения [28:00]. В Auto NLP эти знания о «пространстве поиска» зашиты в алгоритмы, что позволяет находить оптимальные конфигурации быстрее, чем при случайном переборе [28:37].

Абхишек также дает советы тем, кто работает с NLP вручную:

*   **Не начинайте с гигантов:** Для датасетов в пару сотен примеров не нужны огромные модели; часто лучше сработают компактные архитектуры [19:35].
*   **Изучайте код, а не только формулы:** Тхакур рекомендует держать реализацию на GitHub открытой во время чтения научной статьи [30:12]. В качестве примера идеального ресурса он приводит *Annotated Transformer* от Harvard NLP, где статья «Attention Is All You Need» разобрана построчно на Python [30:40].

## 🔮 Будущее без кода: Мнение о перспективах профессии
[[JUMP:36:41]]

Абхишек Тхакур придерживается смелого и для многих спорного мнения: в ближайшем будущем прикладным специалистам по данным придется писать гораздо меньше кода [37:11]. По его словам, машинное обучение достигло стадии, когда автоматизация может закрыть большинство стандартных задач индустрии.

Ведущий Сэм Чаррингтон выразил опасение, что такой подход может привести к «локальному оптимуму», когда алгоритм AutoML упустит нетривиальное решение, которое мог бы найти человек [38:57]. Тхакур частично согласен с этим риском: «Компьютеры ошибаются постоянно» [39:23]. Однако он возражает, что современные инженеры часто совершают другую ошибку — сразу бросаются применять трансформеры даже там, где сработал бы логистический регресс [39:52]. Инструменты автоматизации, по мнению гостя, как раз позволяют быстро протестировать множество подходов, включая упрощенные, которые человек мог проигнорировать из-за «хайпа».

Главный совет Абхишека начинающим — не зацикливаться на теории, а практиковаться. Свой подход он резюмирует в предисловии к собственной книге «Approaching (Almost) Any Machine Learning Problem»: «Если ты не писал код — ты не учился» [33:34].