Обновить

Топ вопросов с NLP собеседований: трансформеры и внимание до малейших деталей

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели8.9K
Всего голосов 8: ↑8 и ↓0+10
Комментарии4

Комментарии 4

Спасибо за статью, ловите плюсик: полезно иметь всё в одном месте. Однако хочу уточнить, что хотя аналогия q, k, v матриц с базами данных (мой самый любимый вопрос) и используется во многих объяснениях и ответах на собеседованиях, это ошибочное утверждение. На самом деле эти матрицы решают 2 проблемы:
- 1) Помогают отделять смысл слова в зависимости от контекста в пространстве признаков т.к. эмбеддинги из-за своей статичной природы не умеют делать это напрямую.

2) Это помогает определять направление зависимости в словах, то есть выделять объекты и субъекты. Проще говоря, делать матрицу оценок внимания ассиметричной.

Если вдруг вам или читателям будет эта тема интересна, то я как раз вчера делал статью про FlashAttention на Triton, где про это рассказывается более подробно и не только.

Кто в теме, какого рода специалистов и под какие задачи можно собеседовать такими вопросами?

Допустим компании нужен специалист который будет обучать своего трансформера чтобы он был лучше открытых моделей. Но такой специалист это уникум и вопросы должны быть намного глубже.

Или компании нужен просто дата и ML инженер чтобы что-то внедрять или дообучать, тогда что ему дают эти знания? Просто как доказательство что он прочитал про архитектуру трансформеров а значит достаточно любопытен и знает матрицы?

Или и правда есть работа для которой подобные знания могут быть полезны?

Звучит как вопрос "что такое угол атаки" на собеседовании в авиацию. Если вам нужен пилот или авиаконструктор, то такой вопрос как-то не серьезно, учитывая что вы намерены дать ему в руки нечто на ярд долларов. А если нужна стюардесса, то какая разница знает ли она это.

Хороший вопрос. Здесь может быть 2 варианта:

  • 1) Просто понты, когда спрашивают теорию, которую не обязательно знать глубоко, чтобы пользоваться готовыми решениями с hugging face или langchain.

  • 2) Знать нужно реально глубоко, чтобы создавать с нуля что-то своё или проводить низкоуровневые оптимизации. Такое гораздо сложнее и встречается редко.

Дело в том, что в ML есть 3 разных вектора развития специалиста: research (придумывают на бумаге новые концепции, проводят по ним тесты и пишут статьи), ml-разработчики (пользуются готовыми решениями на основе того, что придумали исследователи) и research-инженеры (те, кто с нуля могут превратить концепции исследователей в готовый продакшен-код или полноценный продукт - именно их продуктами пользуются ml-разработчики (pytorch, hugging face и т.д.).

Последний тип самый редкий и сильно зависит от локации, компании, её возможностей и т.д. Если вам интересно посмотреть пример работы таких специалистов (я как раз этим занимаюсь), то рекомендую ознакомиться со статьёй, которую я указывал в комментарии выше.

Благодарю, познавательно. Все происходит так быстро что вообще непонятно что происходит.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации