Вопросы по NLP на собеседовании
NLP-секция проверяет, понимаете ли вы, как текст превращается в числа и почему модель ошибается. Даже в эпоху больших моделей спрашивают базу: токенизацию, эмбеддинги и оценку качества.
Из чего состоит тема
Так тема разложена в тренажёре: движок ведёт прогресс по каждой подтеме отдельно и возвращает те, где вы ошибаетесь.
- Классические задачи NLP11
- Препроцессинг текста10
- Токенизация и эмбеддинги10
- Представление текста9
- Рекуррентные модели9
- Словные эмбеддинги8
Разборы подтем
Конспект по каждой: что это, как отвечать вслух, на чём валятся, плюс вопросы для самопроверки.
- Классические задачи NLP11 вопросов
- NLP: препроцессинг текста10 вопросов
- NLP: рекуррентные модели9 вопросов
- NLP: представление текста9 вопросов
- NLP: токенизация и эмбеддинги10 вопросов
- NLP: словные эмбеддинги8 вопросов
Примеры вопросов с разбором
- Почему наивный байесовский классификатор — классический бейзлайн для классификации текста?A)Прост, быстр и на BoW/TF-IDF даёт неожиданно сильный результат, несмотря на наивную независимость словB)Он в полной мере учитывает грамматический порядок слов и глубокий синтаксис каждого предложения при классификации входного текстового документаC)Он обязательно требует мощных GPU-ускорителей и очень больших объёмов размеченных данныхD)Он точнее современных нейросетей на большинстве текстов
показать ответ и разбор
+A)Прост, быстр и на BoW/TF-IDF даёт неожиданно сильный результат, несмотря на наивную независимость слов// разбор: Naive Bayes оценивает P(класс|документ) ∝ P(класс)·∏P(слово|класс), считая слова независимыми при данном классе — предположение ложное, но классификация работает удивительно хорошо: нужны только частоты, обучение мгновенно, устойчив на малых данных и высоких размерностях. Отсюда роль быстрого бейзлайна (спам, темы). Требует сглаживания (Лапласа) для непросмотренных слов.
- Чем лемматизация отличается от стемминга?A)Лемматизация приводит к словарной форме с учётом морфологии/части речи; стемминг грубо режет окончания по правиламB)Это одно и то же, просто разные названияC)Стемминг работает для английского языка и неприменим к другимD)Лемматизация — это про удаление стоп-слов
показать ответ и разбор
+A)Лемматизация приводит к словарной форме с учётом морфологии/части речи; стемминг грубо режет окончания по правилам// разбор: Стемминг — эвристическое усечение до основы (Porter: «running»→«run», но «argued»→«argu»), быстро и грубо, результат может не быть словом. Лемматизация использует словарь и морфоанализ (часто с частью речи), возвращая настоящую лемму («better»→«good»). Точнее, но дороже и требует ресурсов языка. Обе снижают разреженность, схлопывая словоформы.
- Чем рекуррентная сеть (RNN) подходит для текста лучше, чем полносвязная сеть на BoW?A)Она игнорирует порядок следования слов во входной последовательностиB)Она вообще не требует обучения на данныхC)Она работает с числами, а не со словамиD)Обрабатывает токены последовательно, перенося скрытое состояние — так учитывает порядок и левый контекст
показать ответ и разбор
+D)Обрабатывает токены последовательно, перенося скрытое состояние — так учитывает порядок и левый контекст// разбор: Полносвязная сеть на BoW теряет порядок. RNN читает токены по одному, поддерживая скрытое состояние (память), которое обновляется на каждом шаге и переносит информацию о предыдущих словах — так учитывается последовательность и контекст. Это позволило моделировать зависимости в тексте (LM, теггинг, seq2seq) до трансформеров. Ограничение — последовательность мешает параллелизму и длинным зависимостям.
- Что такое мешок слов (bag-of-words)?A)Упорядоченная последовательность всех слов документа с полным сохранением их исходного порядка следованияB)Плотный вектор фиксированной длины, полученный из нейросетиC)Представление текста вектором частот слов из словаря, порядок игнорируетсяD)Список уникальных символов, встретившихся в тексте
показать ответ и разбор
+C)Представление текста вектором частот слов из словаря, порядок игнорируется// разбор: Bag-of-words представляет документ вектором длины словаря, где координата — число вхождений слова; порядок отбрасывается («собака укусила человека» = «человек укусил собаку»). Просто, интерпретируемо, работает для тематической классификации. Минусы: теряет порядок и семантику (синонимы — разные оси), вектор огромный и разреженный. TF-IDF — взвешенная версия BoW.
- Зачем токенизатору специальные токены вроде UNK и PAD?A)Они хранят метаданные документа: язык, кодировку и длинуB)Они помечают границы предложений для разбиения текстаC)Они обозначают неизвестное слово и добивку последовательности до общей длиныD)Они задают вес токена при подсчёте частот в корпусе
показать ответ и разбор
+C)Они обозначают неизвестное слово и добивку последовательности до общей длины// разбор: Модель работает с батчами одинаковой длины, поэтому короткие последовательности добивают PAD — и в маске внимания эти позиции гасят, чтобы они не влияли на результат. UNK — заглушка для того, чего нет в словаре: у subword-токенизаторов она почти не нужна, слово разложится на куски, а у словарных встречается постоянно.
- Какая идея лежит в основе word2vec?A)Просто подсчитывать сырые частоты вхождений слов в документах, ровно как классический подход TF-IDF без какого-либо предсказательного обучения плотных векторовB)Учить плотный вектор слова, предсказывая его контекст (соседей): близкие по употреблению слова близки в пространствеC)Автоматически переводить слова между разными языкамиD)Сортировать все слова по алфавиту в векторном пространстве
показать ответ и разбор
+B)Учить плотный вектор слова, предсказывая его контекст (соседей): близкие по употреблению слова близки в пространстве// разбор: Word2vec опирается на дистрибутивную гипотезу: слово характеризуется окружением. Модель (skip-gram или CBOW) учит для каждого слова плотный вектор так, чтобы по слову предсказывались соседи (или наоборот). Слова из похожих контекстов получают близкие векторы — семантика проявляется геометрически (синонимы рядом, аналогии как сдвиги). Self-supervised: метки — сам текст.
- Что решает задача NER (named entity recognition)?A)Автоматический машинный перевод всех найденных именованных сущностей текста на другой целевой языкB)Нахождение и классификация в тексте спанов-сущностей (имена, организации, локации, даты)C)Подсчёт общего числа слов в документеD)Определение эмоциональной тональности отзыва
показать ответ и разбор
+B)Нахождение и классификация в тексте спанов-сущностей (имена, организации, локации, даты)// разбор: NER размечает в тексте фрагменты (спаны), являющиеся сущностями, и присваивает тип: персона, организация, локация, дата и т.д. Это последовательная разметка на уровне токенов (часто в схеме BIO: B-ORG, I-ORG, O). Классически — CRF/HMM поверх признаков, современно — нейросетями. Основа для извлечения информации, поиска, QA, связывания сущностей.
- Зачем в классическом NLP удаляют стоп-слова (the, и, в, на)?A)Эти слова несут в себе ключевой смысл и главную информацию предложения, и без них смысл предложения во многом теряетсяB)Они частотны и малоинформативны для BoW/TF-IDF — удаление режет шум и размерностьC)Их сложно токенизировать корректноD)Это обязательное требование алгоритма word2vec
показать ответ и разбор
+B)Они частотны и малоинформативны для BoW/TF-IDF — удаление режет шум и размерность// разбор: Стоп-слова встречаются почти везде и слабо различают документы, поэтому в мешке слов/TF-IDF добавляют шум и раздувают размерность. Стандартный шаг для классификации/поиска. Оговорка: не всегда полезно — где важен порядок/синтаксис (сентимент «not good», фразовый поиск), удаление стоп-слов вредит. В нейронных моделях их обычно не режут.
- Какую проблему ванильных RNN решают LSTM/GRU?A)Затухающие/взрывающиеся градиенты и потерю длинных зависимостей — вентили LSTM хранят информацию много шаговB)Чрезмерно быструю сходимость процесса обучения на обучающих выборкахC)Неспособность RNN обрабатывать числовые данныеD)Избыточное потребление оперативной памяти при инференсе
показать ответ и разбор
+A)Затухающие/взрывающиеся градиенты и потерю длинных зависимостей — вентили LSTM хранят информацию много шагов// разбор: В ванильной RNN градиент, распространяясь на много шагов назад, экспоненциально затухает (или взрывается) — сеть «забывает» далёкое. LSTM вводит ячейку памяти и вентили (вход/забывание/выход), регулирующие, что сохранять и что стирать, давая градиенту почти прямой путь через время — информация держится десятки шагов. GRU — упрощённый вариант. Длинные зависимости и параллелизм остаются слабостью против трансформеров.
это 9 из 57
Ещё 48 вопросов по теме — в тренажёре, с движком повторения
Прочитать разбор и ответить самому — разные навыки. В Сеньорчике вопросы идут сессиями, а движок возвращает подтемы, где вы ошибаетесь, пока они не начнут отскакивать. Бесплатно, лимит по энергии.
Частые вопросы
Нужно ли знать классический NLP, если есть LLM?
Нужно: токенизация, векторные представления и метрики никуда не делись, а часть задач до сих пор дешевле решать компактными моделями. Про это и спрашивают.
Что спрашивают про эмбеддинги?
Чем контекстные представления отличаются от статических, как измерять близость, что делать с редкими словами и как выбирать модель под язык и домен.