Основные характеристики нейросети: как читать цифры
Объясняю основные характеристики нейросети: назначение, слои, параметры, качество и скорость. Показываю, почему высокая общая точность может скрывать ошибки.
М
Марина
Контент-маркетолог LibraChat
6 мин чтения
В описании модели я увидела «точность 95%» и почти решила, что она подойдёт для сортировки обращений в поддержку. Потом задала простой вопрос: какие именно сообщения она распознаёт? Если из ста обращений всего пять срочных, модель может пометить все как обычные и всё равно получить 95% общей точности. Срочные она тогда не найдёт ни разу. Эта учебная арифметика заставила меня смотреть на характеристики нейросети как на описание её поведения в задаче, а не как на красивый набор чисел.
У нейросети есть устройство: слои, связи, обучаемые параметры, функции активации. Есть и практический паспорт: для чего она предназначена, на каких данных её проверяли, как часто ошибается в важных случаях и сколько времени нужен ответ. Одно число из первого набора не заменяет второй. Я собрала четыре распространённых ожидания, которые мешают читать такое описание.
Основные характеристики нейросети — это только размер?
Нет. Число параметров говорит о масштабе обучаемых величин, но не объясняет само по себе, решит ли модель твою задачу. В типичной нейросети вход проходит через слои; веса и смещения участвуют в вычислении, а функции активации меняют выход каждого узла. Во время обучения параметры подстраиваются, чтобы уменьшить ошибку на примерах. Это описание механизма. Оно не говорит, насколько хорошими были данные и верно ли выбрана проверка.
Для рабочего выбора я сделала бы короткую карточку из нескольких полей:
Характеристика · О чём говорит · Что спросить
Назначение и тип входа — Для каких данных создана модель: текст, изображение, числа — Совпадает ли это с моей задачей?
Архитектура и параметры — Как устроены вычисления и что обучается — Есть ли объяснение, почему выбрана такая модель?
Данные обучения и оценки — На каких примерах получены результаты — Похожи ли они на мои случаи?
Метрики качества — Какие ошибки посчитаны и как — Что происходит с важным для меня классом?
Время ответа — Сколько длится получение результата в условиях проверки — Измеряли ли его на похожих запросах?
Ограничения — Где разработчик не советует применять модель — Попадаю ли я в эту область?
Не всегда все поля доступны. Это само по себе полезный сигнал: характеристику без условий оценки нельзя напрямую сравнивать с цифрой другой модели. Карточки моделей, которые рекомендует Hugging Face, как раз включают назначение, ограничения, сведения о данных и результаты проверки. Мне понятнее такой документ, чем рекламное «самая мощная архитектура» без описания задачи.
Миф: высокая точность означает, что важные случаи найдены
Вернусь к учебной поддержке. Есть 100 сообщений: 95 обычных и 5 срочных. Модель называет все обычными. В таблице результатов у неё 95 верных ответов из 100, то есть те самые 95%. Но для поиска срочных обращений она бесполезна: ни одно из них не поднято наверх. Я проверила эту арифметику до того, как стала бы обсуждать язык модели или число слоёв.
Для такой задачи нужно смотреть, сколько срочных сообщений было найдено среди всех срочных. Это полнота, или recall. В нашем условном случае она равна нулю. Ещё важно, сколько помеченных срочными действительно были срочными: это точность положительных ответов, или precision. Если модель ни разу не выдала метку «срочно», показатель precision в обычной формуле не определён; называть его «отличным» нельзя.
Какую ошибку терпеть дороже — пропустить срочное сообщение или лишний раз показать обычное человеку? Ответ зависит от работы команды. Поэтому в описании модели мне нужна не только общая доля правильных ответов, но и разбивка ошибок по важным случаям. В документации Google по классификации эти показатели рассматриваются отдельно именно из-за таких различий между задачами и несбалансированными наборами данных.
Для своего тестового набора я бы выписала:
несколько обычных сообщений с простыми формулировками;
срочные сообщения, которые похожи на обычные по словам;
случаи с пустым или неполным текстом;
правило, кто проверит сомнительный ответ и что делать с ошибкой.
Небольшой набор не докажет качество всей системы. Зато он сразу покажет, какой вид ошибки модель допускает и видим ли мы его вообще.
Миф: скорость ответа можно оценить по одному запросу
Скорость важна, когда результат ждёт человек или когда обращений много. Но один удачный ответ на короткую фразу не даёт характеристики для длинного документа и очереди запросов. Для текстовых моделей отдельно измеряют длительность запроса, длину входа, ожидание в очереди и время между частями ответа. Поэтому я бы попросила условия замера: какой был вход, где работала модель и сколько запросов пришло одновременно.
В нашем примере с поддержкой задержка может быть приемлемой, если сообщения поступают редко и сортировка нужна к утру. Если оператор ждёт подсказку прямо во время разговора, то же время ответа будет ощущаться иначе. Здесь нет универсальной цифры «быстро». Есть рабочий предел, который команда должна назвать до сравнения вариантов.
Я бы также не переносила результаты из чужого обзора на свой проект без проверки. Другая длина текста или оборудование меняют условия. Вопрос «сколько секунд на нашей типичной карточке обращения?» полезнее общей фразы «модель работает мгновенно».
Миф: карточка модели нужна только разработчику
Для человека, который выбирает инструмент, ограничения важны не меньше архитектуры. Модель может хорошо решать одну задачу и плохо другую. Если в карточке сказано, что она обучалась на коротких англоязычных сообщениях, я не стала бы автоматически ожидать такого же результата на длинных русских обращениях. Это вывод о несовпадении условий, а не оценка «плохая модель».
Я проверила бы три места в описании перед пробным использованием:
Для какого ввода и результата модель заявлена.
На каких данных считали метрики и как устроен тест.
Какие применения или типы данных авторы считают неподходящими.
После этого можно выбирать свои примеры для проверки. Важный результат здесь — не победа одной модели в таблице, а понимание, где она ошибается и кто увидит ошибку вовремя. Если описание молчит об этом, я бы задавала вопросы, а не подменяла ответы догадками.
Основные характеристики нейросети становятся полезными, когда рядом с каждой цифрой стоит её задача и способ измерения. Если встретил непонятную карточку, попробуй открыть LibraChat прямо сейчас и попросить объяснить публичные термины на своём учебном примере. Тарифы покажут варианты доступа, а статья об обучении нейросетей поможет разобраться, откуда берутся параметры. Первый вопрос к любому «95%» у меня теперь один: какие ошибки спрятались за этой долей?