глоссарий

NMS

NMS

NMS расшифровывается как Non-Maximum Suppression — подавление немаксимумов. Это алгоритм, который компьютерное зрение использует, чтобы из множества похожих предсказаний выбрать одно самое лучшее. Когда нейросеть находит объект на картинке, она обычно создаёт десятки перекрывающихся прямоугольных рамок вокруг него, и NMS оставляет лишь ту, что имеет наибольшую уверенность.

Без NMS любой алгоритм распознавания превращался бы в хаос: вместо «один кот» мы видели бы десяток рамок, наложенных друг на друга. Важность термина в том, что он — обязательный финальный шаг в детекции объектов, от автономных машин до медицинских снимков. Он экономит вычислительные ресурсы и делает вывод модели понятным для человека.

Как это работает интуитивно? Представьте, что десять человек одновременно кричат, указывая на один и тот же мяч. Их руки дрожат, каждый показывает чуть по-разному. NMS — это арбитр, который слушает, кто кричит громче всех (то есть у кого выше оценка уверенности), и оставляет только его жест, а всех остальных просит замолчать. При этом, если один из «кричащих» указывает на другой предмет в другом углу, его не трогают — арбитр смотрит, перекрываются ли рамки друг с другом достаточно сильно. Если перекрытие небольшое, значит, это разные объекты.

Прикладной пример: система видеонаблюдения на парковке. Камера с помощью нейросети обнаруживает автомобили. Для каждой машины модель выдает сотню кандидатных рамок. NMS оставляет по одной рамке на каждую машину, отбрасывая остальные. Благодаря этому охранник видит четкие прямоугольники, а система может точно подсчитать количество мест и не срабатывает на «призраков» из-за шума.

Итог: NMS — это фильтр аккуратности, превращающий сырое, избыточное предсказание нейросети в чистое и однозначное. Он не учит модель видеть, но учит её выражать то, что она увидела, внятно и без дублирования.