NLP · 9 у порівнянні
NLP tasks
Дев’ять задач, упорядкованих за єдиним, що їх розділяє, — розміром простору прийнятних відповідей. Спершу прочитайте стовпець «Чим оцінюється».
Порівняння
| Назва Що це за задача | Приймає | Повертає | Чим оцінюється | Ламається, коли |
|---|---|---|---|---|
| Text classification Один текст на вході, одна мітка на виході. Тональність, тема, спам, намір. Найстаріша й досі найпоширеніша форма в NLP, і єдина, про метрику якої ніхто не сперечається. Повна сторінка → | один текст | мітку | точність, F1 | класи рідкісні чи зсуваються |
| Natural language inference Два тексти на вході, одна мітка на виході: чи випливає другий з першого, суперечить йому чи ні те, ні те. Стандартна перевірка, чи модель працює з відношеннями між реченнями, а не з темами. Повна сторінка → | пару текстів | мітку | точність | гіпотеза сама все прогнозує |
| Sequence tagging Мітка на кожен токен — іменовані сутності, частини мови, межі груп. Вихід усе ще дискретний, але вже структурований, тож один хибний токен може зіпсувати цілий фрагмент. Повна сторінка → | один текст | мітку на токен | F1 на рівні фрагментів | токенізатор розбиває сутність |
| Extractive question answering Запитання й уривок на вході, фрагмент цього уривка на виході. Відповідь обмежена вже наявним текстом, і саме це робить задачу оцінюваною і саме це її обмежує. Повна сторінка → | запитання + уривок | фрагмент | точний збіг, F1 за токенами | відповіді немає в уривку |
| Semantic search Запит на вході, ранжований список на виході. Обчисліть вектор для кожного документа наперед, порівнюйте косинусом, і колекція може бути як завгодно великою, бо нічого квадратичного немає. Повна сторінка → | запит | ранжування | recall@k, MRR, nDCG | релевантність не розмічено |
| Clustering and deduplication Жодного запиту — лише геометрія. Групування чи дедуплікація колекції за відстанню між ембедингами. Задача, якої крос-енкодер структурно не може виконати. Повна сторінка → | колекцію | розбиття | проти розмітки або ніяк | кількість груп невідома |
| Machine translation Послідовність на вході, послідовність іншою мовою на виході, без вирівнювання між ними. Задача, що породила енкодер–декодер, увагу і перші чесні суперечки про оцінювання згенерованого тексту. Повна сторінка → | один текст | новий текст | BLEU, chrF, людина | одного еталона замало |
| Summarisation Довгий текст на вході, короткий на виході. Екстрактивне реферування обирає речення й лишається оцінюваним; абстрактивне пише нові й таким не лишається. Повна сторінка → | один довгий текст | новий текст | ROUGE, людина | реферат правильний, але не схожий на еталон |
| Open-ended generation Промпт на вході, що завгодно далі на виході. Еталона немає, множина добрих відповідей необмежена, і правило декодування важить не менше за модель. Повна сторінка → | промпт | новий текст | людина або модель, яку попросили судити | ви оптимізуєте автоматичний замінник |
Спершу прочитайте стовпець Чим оцінюється. Усе інше на цій сторінці — яка архітектура, яка попередньо навчена модель, скільки даних — залежить від того, чи можете ви відрізнити добрий вихід від поганого, а це повністю визначається тим, скільки різних відповідей були б прийнятними.
Задачі різняться розміром простору відповідей, і ніщо інше не важить так само
Записані таблицею, дев’ять рядків виглядають як дев’ять тем. Нанесені на графік за тим, що вони повертають і з чим їх можна порівняти, вони лягають на діагональ, і найцікавіше — два порожні кути.
Немає клітинки для вільного тексту з оцінкою за точним збігом, бо не існує єдиного правильного абзацу. Немає клітинки для мітки з оцінкою судженням, бо мітка його не потребує. Кожна задача живе десь на лінії між ними, і рух праворуч уздовж неї — мітка, фрагмент, ранжування, речення, абзац — коштує вам метрики.
d2l ділить ту саму територію інакше: «дві популярні й репрезентативні задачі обробки природної мови нижнього рівня: аналіз тональності та логічне виведення в природній мові, які аналізують відповідно окремий текст і відношення пар текстів» [3, ch. 16, introduction]. Цей поділ — один текст чи два — друга вісь, яку варто тримати в голові, і саме вона вирішує, чи можна щось обчислити наперед.
Один текст чи два змінює те, що дозволено обчислити наперед
Якщо задача оцінює пару, наївна реалізація читає обидва тексти разом, і тоді наперед не можна обчислити нічого. Reimers і Gurevych називають ціну: пошук найсхожішої пари серед 10,000 речень «вимагає близько 50 мільйонів обчислень висновування (~65 годин) з BERT» [2, Abstract], а та сама конструкція «робить його непридатним як для пошуку за семантичною подібністю, так і для задач без учителя, як-от кластеризація» [2, Abstract].
Тож два рядки цієї таблиці, що працюють на цілих колекціях, — семантичний пошук і кластеризація, — не є «парними задачами, виконаними багато разів». Це інша форма, і вона потребує представлення, яке існує незалежно від того, з чим його порівнюватимуть. Саме для цього існують ембединги речень.
Що змінило попереднє навчання, а що ні
Попереднє навчання зробило взаємозамінною вхідну сторону кожного рядка. Одне попередньо навчене представлення можна «подавати різним моделям для різних задач обробки природної мови нижнього рівня» [3, ch. 16, introduction], і тому стовпця архітектури, який домінував би в цій таблиці 2015 року, в ній немає зовсім.
Промптинг пішов далі й зробив взаємозамінною ще й модель. GPT-3 оцінювали на всьому цьому діапазоні — «переклад, відповіді на запитання, задачі-заповнення пропусків, а також кілька задач, що вимагають міркування на льоту чи адаптації до домену», — і для кожної з них «без оновлень градієнта чи донавчання параметрів» [1, Abstract]. Один набір ваг, дев’ять рядків.
Що не змінилося, то це права сторона таблиці. Простір відповідей реферування рівно такий самий великий, як був, а метрика рівно така сама ненадійна.
Пастка, яку ця таблиця існує, щоб назвати
Розв’язувати кожну задачу генерацією тексту зручно, і це мовчки зсуває рядки праворуч по сітці. Задачу класифікації, на яку відповідає згенероване слово, вже оцінюють не точністю на фіксованому наборі міток, а тим, чи збігається рядок, — а це гірше поведене вимірювання під тією самою назвою. Зручність справжня; ціна в тому, що ви проміняли метрику, яка працює, на ту, що потребує обережності.
Найбільше це важить у нижньому рядку, і там є конкретний режим збою, який варто назвати: оптимізація автоматичного замінника. На відкритій генерації замінник і мета розходяться в напрямку, якого ніхто не чекає, — див. декодування, де текст, який модель вважає найімовірнішим, надійно виявляється її найгіршим. Кожен рядок, який ви перенесете в нижню праву клітинку, успадковує цю проблему.
Практичне прочитання таблиці. Тримайте задачу якомога лівіше, наскільки дозволяє ваш продукт. Якщо досить мітки — класифікуйте. Якщо досить фрагмента — видобувайте. Генеруйте, коли задача справді має відкриту відповідь, — і тоді вирішіть, як ви дізнаєтеся, чи це спрацювало, до того, як будувати, бо саме цю частину модель за вас не розв’яже.
Джерела
- Language Models are Few-Shot Learners (2020)paperhttps://ar5iv.labs.arxiv.org/html/2005.14165
- Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks (2019)paperhttps://ar5iv.labs.arxiv.org/html/1908.10084
- Dive into Deep Learning — Natural Language Processing: Applicationsbook · звірено 2026-09-13https://d2l.ai/chapter_natural-language-processing-applications/index.html