Что такое задача: нейросеть почти всегда делает одно из четырёх
Что такое задача нейросети: классификация, регрессия, кластеризация и генерация на бытовых примерах. Таблица из LibraChat и почему это помогает понимать ошибки.
Денис
Продакт LibraChat
7 мин чтения
Спам-фильтр в почте, навигатор с прогнозом времени в пути, рекомендации в магазине и чат, который пишет поздравление бабушке. Всё это нейросети, но работу они делают разную. Если спросить, что такое задача нейросети, ответ укладывается в четыре слова: назвать, угадать, сгруппировать, создать. Я продакт, и этот вопрос мне задают и коллеги из других отделов, и родственники за столом. Недавно я попросил LibraChat объяснить четыре типа задач таблицей, без формул. Ответ получился таким понятным, что я теперь просто показываю его. Ниже таблица, разбор каждого типа и зачем это знать человеку, который нейросети не строит, а просто ими пользуется.
Что такое задача, которую решает нейросеть
Если искать «что такое задача нейросеть» в учебнике, найдёшь определения с формулами. Мне нужно было объяснение для людей без технического образования. Задача нейросети — это не тема вроде «медицина» или «маркетинг». Это тип работы: что получаем на входе и что хотим на выходе. Одна и та же нейросеть в банке может решать одну задачу, а в магазине — другую, хотя тема у них похожая.
Начал я с такого запроса. Скопируй этот промпт, если хочешь получить такую же шпаргалку:
Объясни, какие задачи решают нейросети: классификация, регрессия, кластеризация, генерация. Для каждой — что на входе, что на выходе и пример из обычной жизни. Оформи таблицей, без формул, понятно человеку без технического образования.
Ответ начался с фразы, которую я теперь повторяю всем:
Нейросеть в обычной жизни почти всегда делает одно из четырёх: называет категорию, угадывает число, сама раскладывает похожее по группам или создаёт то, чего раньше не было.
Дальше была таблица. Свёл её здесь коротко, своими словами:
Тип задачи · На входе · На выходе · Где встречаешь
Классификация — Фото, письмо, заявка — Ярлык из готового списка — Спам или не спам в почте
Регрессия — Сведения о ситуации — Число — Сколько минут ехать с учётом пробок
Кластеризация — Много объектов без подписей — Группы похожих — Магазин делит покупателей на типы
Генерация — Запрос или описание — Новый текст или картинка — Поздравление бабушке по просьбе
Классификация: выбрать ярлык из готового списка
Самая понятная задача. У нейросети есть заранее известный список ответов, и она выбирает один. Спам или не спам. Кошка, собака или птица. Одобрить заявку или отказать.
В ответе был пример про банк: нейросеть смотрит заявку и ставит метку «одобрить» или «отказать». И про почту, которая решает, спам это или обычное письмо.
Важная деталь, которую я понял не сразу: классификатор не может ответить чем-то, чего нет в списке. Если в почте только два ярлыка, письмо будет либо спамом, либо нет. Третьего не дано. Поэтому важное письмо иногда оказывается в спаме: нейросеть выбрала из двух, и выбрала не то.
Регрессия: угадать число
Здесь на выходе не ярлык, а число. Сколько минут ехать. Сколько стоит квартира по площади, этажу и району. Какая будет температура завтра.
Слово «регрессия» пугает, но смысл простой: нейросеть видела много примеров «ситуация → число» и научилась прикидывать число для новой ситуации. Навигатор видел тысячи поездок в пробках и прикидывает, сколько займёт твоя.
Ошибка регрессии — это не «не то слово», а «не то число». Поэтому у хорошей регрессии ответ часто идёт с разбросом: «от 25 до 35 минут». Когда навигатор показывает одно число, разброс никуда не делся, он просто не нарисован. Я с тех пор выезжаю с запасом в треть от обещанного времени, и опаздывать стал заметно реже. Навигатор обещал 25 минут, а ехал я 40. Это та же самая природа ошибки, просто на выходе цифра.
Кластеризация: разложить по кучкам без подсказки
Самый неочевидный тип. Здесь у нейросети нет готовых ответов. Ей дают много объектов и просят найти, какие похожи друг на друга. Группы она находит сама, а называют их потом люди.
Пример из ответа мне понравился, потому что его легко представить:
Магазин замечает, что одни покупатели берут детские товары, другие — спорт, третьи почти ничего, хотя никто заранее не разложил клиентов по типам.
Кластеризацию часто путают с классификацией, и я сам путал первое время. Разница в одном: есть ли заранее список ответов. У классификации он есть, у кластеризации нет, группы появляются по ходу. Никто не говорил нейросети «найди мам». Она просто заметила, что у части покупателей корзины похожи. А «мамы с детьми» — это ярлык, который придумали маркетологи, когда посмотрели на группу.
Генерация: собрать новое
Вот это и есть чат. Ты пишешь запрос, и на выходе появляется то, чего на входе не было: текст, картинка, ответ. Не выбор из списка и не число, а новое.
В ответе было объяснение разницы, которое я считаю самым важным во всей таблице:
Классификация и регрессия учатся на примерах, где правильный ответ уже известен: ярлык или число. Кластеризация ищет сходство сама, без таких ответов. Генерация не выбирает из готового списка, а собирает новое.
LibraChat в этих терминах — генерация. Ты просишь письмо, перевод, план, картинку, и он собирает новое под твой запрос.
Зачем это знать обычному человеку
Казалось бы, зачем мне типы задач, если я просто пользуюсь чатом? А вот зачем: тип задачи объясняет, какие ошибки ждать.
Классификатор ошибается выбором: положил письмо не в ту папку. Проверять стоит то, что попало «не туда».
Регрессия ошибается числом: обещала 25 минут, вышло 40. Стоит держать запас.
Кластеризация может найти группы, которые на деле ничего не значат. Проверять стоит, есть ли в группе смысл.
Генерация может собрать правдоподобное, но неточное: дату, имя, цифру. Факты в ответе чата стоит сверять.
Последний пункт — главная причина, по которой я советую всем проверять цифры и даты в ответах любого чата. Не потому что он «врёт», а потому что генерация собирает новое, а не достаёт готовое из списка. Обычно получается то, что нужно. Но важное — проверь.
Раньше я объяснял это коллегам минут двадцать, с рисунками на доске. Однажды я попробовал объяснить то же маме, и после слова «регрессия» она вежливо перевела разговор на дачу. Теперь показываю таблицу и задаю один вопрос: «Это выбор, число, группы или новое?» Обычно этого хватает, чтобы человек сам понял, чего ждать от конкретной нейросети.
Как тип работы связан с запросом
Есть и практическая польза для тех, кто пишет запросы в чат. Если понимать, что чат генерирует, понятно, почему так помогают уточнения. Каждое из них сужает пространство, в котором он собирает новое:
формат: «таблицей», «списком из пяти пунктов», «в Word» — задаёт форму ответа;
длина: «до 400 знаков», «три предложения» — не даёт растекаться;
За годы работы с чатами у меня сложилось простое наблюдение. Запрос из одной строки даёт ответ «в среднем по больнице». Тот же запрос с двумя-тремя уточнениями даёт то, что можно отправлять без правок.
Иногда полезно даже превратить генерацию в классификацию. Вместо «напиши что-нибудь про отпуск» попросить «выбери из трёх вариантов отпуска самый подходящий под мой бюджет и объясни почему». Теперь чат не придумывает с нуля, а выбирает и обосновывает, а это проверить проще. Попробуй на своём следующем вопросе к чату.
Вспомни три нейросети, которыми ты пользуешься каждый день: в телефоне, в почте, в магазине, в навигаторе. Для каждой ответь, что она делает: выбирает ярлык, угадывает число, группирует или создаёт новое. А потом открой чат LibraChat и попроси объяснить то, в чём не уверен. Начать можно бесплатно, а если захочется разобраться в нейросетях глубже и держать свои вопросы в одном проекте, посмотри, что дают тарифы.
что такое задача нейросетьклассификациярегрессиягенерацияосновы нейросетейLibraChat