Hard negatives
Зачем это нужно? Любая модель обучается на парах «правильный ответ» и «неправильный ответ». Если в качестве неправильных брать только явно непохожие примеры, модель быстро выучит грубые различия, но так и не научится отличать хорошее от почти хорошего. Именно в этой серой зоне кроются реальные ошибки: пользователь ищет «яблоко», а система предлагает грушу — они похожи, но это не то. Hard negatives закрывают этот пробел, делая модель точнее в практических сценариях.
Как это работает? Представьте, что вы учите ребёнка различать грибы. Если показывать ему только подберёзовик и мухомор, он легко их различит. Но если показать ложный опёнок рядом с настоящим, ребёнок сначала ошибётся — и именно на этой ошибке запомнит тонкие признаки. Так и модель: когда она путает похожие объекты, алгоритм корректирует веса, чтобы в следующий раз учесть едва заметные детали. Чем больше таких сложных примеров, тем тоньше граница между «да» и «нет».
Прикладной пример: в поиске товаров интернет-магазина модель должна отличать «кроссовки для бега» от «кроссовок для баскетбола». Если в обучении дать только явно разные пары, система выдаст баскетбольные кроссовки на запрос о беговых — они же обувь. Но добавив hard negatives — модели с похожим дизайном, но другим назначением, — мы заставим её обращать внимание на подошву, вес и амортизацию. В результате выдача становится точной и полезной.
Короткий итог: hard negatives — это не ошибки, а осознанный инструмент. Они учат модель не поверхностному сходству, а глубокому пониманию сути. Без них ИИ оставался бы наивным классификатором, который видит только очевидное, но не чувствует нюансов.
Поделиться