Для чего применяют сверточные сети в ответной системе
Что проверяют
Понимаете ли вы, что свёрточные сети работают не только с картинками. В вопросно-ответной системе основной вход это текст, и интервьюер ждёт объяснения одномерной свёртки по последовательности токенов. Следом обычно спрашивают, почему бы не взять трансформер.
Как отвечать
Сначала уточните, что за система: поиск ответа по базе знаний, классификация обращений или бот, которому присылают фото. Затем механика: текст превращается в матрицу эмбеддингов, свёртка шириной в несколько токенов работает как детектор n-грамм, а max pooling по времени даёт вектор фиксированной длины для фразы любой длины (TextCNN, Kim, 2014).
Где применяют:
- классификация вопроса: интент или тематика для маршрутизации к нужному источнику. Модель маленькая, учится на небольшой разметке и работает на CPU за миллисекунды;
- ранжирование ответов: две свёрточные башни кодируют вопрос и кандидата, косинус или полносвязный слой оценивают соответствие, из сотни кандидатов выбирается лучший;
- символьные свёртки: вектор слова собирается из символов, это спасает от опечаток и незнакомых слов. Так устроены входные слои BiDAF и ELMo, а QANet строил энкодер на свёртках и self-attention;
- мультимодальные вопросы: если спрашивают по фото или скану, картинку кодирует свёрточный бэкбон вроде ResNet.
В PyTorch это nn.Conv1d, он ждёт тензор (batch, channels, length), поэтому выход nn.Embedding формы (batch, length, emb) нужно транспонировать.
Скажите и про текущее положение: по качеству на тексте свёртки уступают трансформерам, BERT-подобным би- и кросс-энкодерам. Свёртки остаются там, где важны задержка и дешёвый инференс, или как быстрый первый этап перед тяжёлой моделью.
Где спотыкаются
Рассказывают про распознавание кошек и собак и не переносят идею на текст, хотя вопрос прямо про ответную систему.
Утверждают, что свёртка улавливает дальние зависимости. Рецептивное поле ограничено шириной ядра и числом слоёв, для длинного контекста нужны дилатации или внимание.
Не сравнивают с базовой линией: предлагают свёрточную сеть, не проверив TF-IDF с логистической регрессией и готовый энкодер предложений, которые часто оказываются не хуже.