Обновить

День 2. 115 тыс параметров вместо 2 млн+ у YOLO

Продолжаю дневник разработки «Суперраспознавалки» для демо/пилота. Начало здесь.

Сегодня начали углубляться в сторону самой по себе классификации, а также немного выходить из темы универсальности решения, чтобы решать уже задачу detection, а не только общую сегментацию.

Интересный момент, найденный в экспериментах — благодаря TAPe получается использовать очень дешевые методы с тз ресурсов, при этом используя и методы ML. При этом все равно получаются очень хорошие результаты для этих методов.

Например, конкретно сейчас получается даже на более сложных примерах без проблем находить задний фон, используя при этом минимальные ресурсы и методы, которые на пикселях являлись релевантными 20 лет назад.

Разбиение происходит за 100+ кадров в секунду, без оптимизации, с обработкой каждого кадра отдельно (то есть есть также overhead выгрузки изображения на GPU).

Также пришло понимание, что нужно переходить к этапу дополнительных действий, чтобы отбирать интересные места. В целом по результату вышло, что количество ложных срабатываний в разы уменьшилось, но при этом количество правильных ответов тоже немного снизилось (на пару процентов, но заметно в любом случае, тем более у нас цель получить условные 100% на тестовых данных). Это происходит как раз таки из‑за того, что нет правильной последовательности действий (что, впрочем, нами ожидалось, просто не думали, что это так быстро произойдет).

Перешли к более адаптированной под TAPe логике. Пока очень топорным способом (так легче тренировать и проверять работу), но выходят очень хорошие результаты. По поводу данных немного скажу для контекста:

Разбиение следующее:

Classes: 4; labeled: 1256, train: 879, test: 377, miss images: 559

То есть, 4 класса, общее количество изображений объектов — 1256, из них в тренировку уходит 879, в тестирование — 377. Miss images — это изображения просто заднего фона, а также случайных объектов, не являющихся нужными объектами.

Для YOLO необходимо около 1500 изображений на один класс. Мы же успешно используем около 220 на класс + какие‑то изображения фона (которые есть только для травы и снега, например).

Результаты имеют точность определения того, где находится нужный объект (не её вид — это отдельный шаг) с точностью 98.94% (то есть правильно для 373 из 377 изображений). Ложные срабатывания ещё существуют, но их стремительно меньше.

Интересно, что модель «самостоятельно» находит правильно нужные объекты, даже если в тренировочных данных они не были обозначены (то есть тренировочные данные неправильные). Модели всё равно удаётся определить оба объекта, что показывает, что модель обучилась формам объектов успешно.

Чтобы добавить контекста — размер модели 115 тысяч параметров. Самая маленькая из современных YOLO же имеет 2+ млн параметров, и при этом не справляется с задачей.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Я перестал пользоваться самыми умными ИИ‑моделями. Программировать стало быстрее и дешевле

В отпуске есть время подумать и исследовать. Я натолкнулся на несколько вещей и открытий для себя. Оказалось, что мне как программисту перестали быть нужны самые умные и дорогие ИИ‑модели. Оказывается, есть такой параметр «Cost per Task», и по этому параметру на первое место вырвалась модель GPT-5.6 Luna (max).

При этом, если вы пользуетесь Codex, она самая тупая в списке моделей. Artificial Analysis Intelligence Index у нее всего 38. Для сравнения, у самой умной GPT-6 Astra (max) этот индекс равен 53. В итоге цена выполненной Luna задачи составляет $0.18 против $3.26 у Astra. Разница почти в 20 раз.

Как я понимаю, бенчмарк «Cost per Task» высчитывается так: когда ставится нормальная, грамотно описанная задача, замеряется, сколько токенов было потрачено на ее выполнение. То есть не в формате «из ХЗ сделаю ТЗ», а в формате, когда в хорошо заданном вопросе уже содержится половина ответа.

Я сначала не поверил, что так и есть, и стал работать, используя самую тупую модель Luna в линейке. И знаете, какие меня ожидали результаты?

Я перестал пользоваться самыми умными ИИ‑моделями. Программировать стало быстрее и дешевле

Публикации