Как стать автором
Обновить
14
0

Пользователь

Отправить сообщение

Склеить несколько видеофайлов, что может быть проще…

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров3.6K

Если их пара. А если их пара десятков? А если несколько сотен? А если они еще и в разных форматах? Идея загонять все в видеоредактор отпала почти сразу. Но в начале — небольшая предыстория.

За каждым великим мужчиной стоит женщина, стоит и ворчит. (народная мудрость, отцензурировано)

Читать далее
Всего голосов 14: ↑14 и ↓0+17
Комментарии18

Матричные фильтры обработки изображений

Время на прочтение3 мин
Количество просмотров216K
Данная статья рассказывает не только о наиболее распространённых фильтрах обработки изображений, но в понятной форме описывает алгоритмы их работы. Статья ориентирована, прежде всего, на программистов, занимающихся обработкой изображений.

Читать дальше →
Всего голосов 40: ↑33 и ↓7+26
Комментарии26

Запускаем Yolo на пятирублёвой монете или Luckfox Pico Mini

Уровень сложностиСредний
Время на прочтение29 мин
Количество просмотров13K

В данной статье речь пойдет про использование очень маленькой Luckfox Pico Mini. Я расскажу про особенности платы, её настройку, а также о том как запускать на ней нейронные сети для детекции объектов с камеры.

Мне удалось добиться скорости детекции в 15 FPS (или даже 50!), результат, который по силам далеко не каждому одноплатнику.

Читать далее
Всего голосов 117: ↑117 и ↓0+150
Комментарии58

Фильтр Калмана — это легко

Время на прочтение18 мин
Количество просмотров84K


Много людей, в первый раз сталкивающихся в работе с датчиками, склонны считать, что получаемые показания — это точные значения. Некоторые вспоминают, что в показаниях всегда есть погрешности и ошибки. Чтобы ошибки в измерениях не приводили к ошибкам в функционировании системы в целом, данные датчиков необходимо обрабатывать. На ум сразу приходит словосочетание “фильтр Калмана”. Но слава этого “страшного” алгоритма, малопонятные формулы и разнообразие используемых обозначений отпугивают разработчиков. Постараемся разобраться с ним на практическом примере.
Читать дальше →
Всего голосов 50: ↑48 и ↓2+69
Комментарии34

Выбираю Open Source БД для себя

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров6.8K

Задача такая: искал Open Source БД для своего пет-проекта. Решил посмотреть в интернете новые решения в рамках БД. После чтения статей и отбора из 6-7 БД остались три (3), которые понравились лично мне. Больше ничего путного не нашел. 

Почему именно эти? Во-первых, они Open Source, а во-вторых, у них есть ответы на два главных моих вопроса «Для чего это нужно?» и «Работает ли из коробки?».

Давайте покажу на примерах.

Читать далее
Всего голосов 34: ↑30 и ↓4+30
Комментарии15

Искусство аугментации: как улучшить модели компьютерного зрения без сбора новых данных

Уровень сложностиСредний
Время на прочтение22 мин
Количество просмотров3K

Представьте, что вы разрабатываете модель компьютерного зрения для распознавания кошек на фотографиях. Чем больше разных фото кошек вы покажете модели, тем лучше она будет справляться с задачей. Но что делать, если у вас не хватает фотографий? Вы же не пойдете делать 10000 фотографий вашего питомца? На такой случай существует решение — метод аугментации данных.

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

Читать далее
Всего голосов 16: ↑16 и ↓0+20
Комментарии1

Построим GPT: с нуля и шаг за шагом

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров21K

В этой статье я построил GPT архитектуру на данных из произведений Шекспира и получил достаточно впечатляющие результаты.

Читать далее
Всего голосов 35: ↑34 и ↓1+41
Комментарии18

Как мы обучили Mistral 7B русскому языку и адаптировали для объявлений Авито

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров6.8K

Привет! Я Настя Рысьмятова, руковожу командой LLM в Авито. Эта статья — про то, какие задачи мы решаем с помощью языковых моделей и как адаптируем их под себя. Мой опыт будет интересен прежде всего тем, кто тоже занимается большими языковыми моделями в крупных продуктовых компаниях. А всем остальным любопытно будет узнать, как модели учатся и решают конкретные задачи Авито — например, помогают пользователям писать тексты объявлений.

Читать далее
Всего голосов 27: ↑26 и ↓1+29
Комментарии14

LLM-CodeSlim: Автоматическое сжатие и очистка кода для эффективного использования с LLM

Время на прочтение5 мин
Количество просмотров627

Как известно, у больших языковых моделей (LLM) существуют ограничения по размеру контекстного окна. При постановке вопроса часто невозможно вставить весь исходный текст, что требует объединения кода из разных файлов в одном месте.

В связи с этим я разработал скрипт, который минимизирует исходный код проекта путем удаления пробелов, табуляций, комментариев и тестовых функций. Скрипт позволяет собрать все или выбранные файлы проекта в одном месте.

Для использования просто запустите скрипт в директории вашего проекта, чтобы сгенерировать минимизированный файл out.txt, содержащий оптимизированный код, готовый для использования с крупными языковыми моделями.

Перед запуском скрипта отредактируйте следующие массивы в соответствии с потребностями вашего проекта: folders_to_ignore, extensions_to_search, filenames_to_search, comment_chars и stop_words.

Пример конфигурации для проекта на Rust (включение всех файлов *.rs в out.txt):

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

Простая защита скрипта на Python

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров12K

Стек: Python 3.11.7, ntplib, subprocess, getpass для времени, системы, пароля,

PyArmor 8+ для обфускации.

Сценарий: Разработано приложение, которое дает преимущество перед конкурентами, или ваш код содержит конфиденциальные данные. Приложение предстоит установить нескольким сотрудникам (можно увеличить количество немного изменив подход), при этом вы не планируете переносить часть логики на сервер.

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

В данной статье я расскажу несколько способов, которые не дадут запустить приложение, где не следует, и скорее всего отобьют желание лишний раз лезть в ваш код.

Читать далее
Всего голосов 19: ↑15 и ↓4+14
Комментарии21

Как работает Mesh R-CNN

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров1.2K

Ну для начала всем привет, в этой статье постараюсь рассказать вам про структуру Mesh R-CNN как он работает, что вообще из себя представляет, также будут сделаны сноски с описанием концепции по генерации 3D объектов. Буду опираться как и уже на существующие статьи, так буду и от себя писать. Возможно будут где то ошибки, потому если заметите, постараюсь исправить.

Вообще для чего нужен Mesh R-CNN, нужен он для того чтобы генерировать 3D объекты на основе изображения. Этот метод построен на фундаменте Mask R-CNN, но с добавлением ветви для предсказания сеток. Это создает начальное представление, которое преобразуется в сетку и уточняется с помощью графовой сверточной сети.

Читать далее
Всего голосов 5: ↑4 и ↓1+5
Комментарии0

DETR: Бесконечная история

Уровень сложностиСложный
Время на прочтение13 мин
Количество просмотров2.6K

Всем привет, с вами команда Layer!
Мы рады сообщить, что совсем скоро выйдет наша новая исследовательская работа, посвященная поиску моментов в видео, релевантных пользовательскому запросу. Мы хотим сделать эту работу как можно более доступной для каждого, кто хочет глубже разобраться в теме. Поэтому мы решили написать этот небольшой туториал, посвященный семейству моделей DETR, так как они используются не только для детекции котиков на картинках, но и в таких необычных доменах, как детекция моментов в видео. Мы уверены, что среди читателей многие знакомы с основами DETR, однако подозреваем, что не все могли следить за её развитием. Всё‑таки по сравнению с YOLO, DETRу пиара явно не достает. В этой статье мы предлагаем краткий обзор эволюции модели, чтобы помочь вам лучше ориентироваться в новых исследованиях. Если же вы впервые слышите о DETR или хотите освежить свои знания, то бегом читать — тык, если после прочтения остались вопросы, то можно ознакомиться с этими видео — тык, тык.

Давайте детальнее разберёмся, что ждёт вас в этом туториале. Сначала мы рассмотрим недостатки оригинальной версии DETR, а затем перейдём к архитектурным улучшениям, которые либо устранили эти проблемы, либо заметно их сгладили. Начнём с Deformable DETR — модели, которая оптимизировала вычисления. Затем обратим внимание на Conditional DETR и DAB DETR — архитектуры, которые существенно переосмыслили роль queries в модели. Далее мы погрузимся в особенности DN‑DETR, который стабилизирует one‑to‑one matching. После этого детально разберём DINO DETR — модель, которая объединяет и улучшает идеи DN‑DETR и DAB‑DETR, а также переизобретает RPN для детекционных трансформеров. И в завершение нашего путешествия мы познакомимся с CO‑DETR, который объединил классические детекторы, такие как ATSS, Faster RCNN, и модели типа DETR, установив новые SOTA метрики на COCO.

Читать далее
Всего голосов 24: ↑20 и ↓4+22
Комментарии0

Раскрываем секреты роя: оптимизация на Python с помощью PSO

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров7.3K

Начну с небольшой шутки:

"Знаете ли вы, что до изобретения часов людям приходилось активно ходить повсюду и спрашивать время?"

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

Рассмотрим самоорганизующиеся системы в природе, например, стаи птиц или рыб. Представим такую систему как совокупность частиц, где каждая особь – это отдельная частица. Можно предположить, что движение каждой частицы в пространстве определяется двумя основными факторами:

Индивидуально оптимальная позиция: то, что особь считает наилучшим для себя.

И глобально оптимальная позиция: определяемая коллективным взаимодействием частиц, своего рода "инструкция", получаемая особью от "лидера группы".

В связи с этим возникает естественный вопрос: что считать "оптимальным" в природе? Что является наилучшим для отдельной особи и для всей группы? Не будучи биологом, я не могу дать ответы на эти вопросы. Однако, наблюдая за подобным поведением в природе, мы можем разработать эффективный алгоритм оптимизации. Другими словами, определив критерии "оптимальности", мы можем применить этот эволюционный подход для оптимизации заданной функции.

Данный алгоритм известен как оптимизация роем частиц (Particle Swarm Optimization, PSO). Возможно, это звучит несколько сложно. Что подразумевается под "оптимизацией"? Какова роль математики в этом процессе? Что именно оптимизируется? В статье я постараюсь подробно разъяснить все эти моменты. Более того, мы применим ООП на Python для создания собственного класса ParticleSwarmOptimizer(). И таким образом, мы пройдем путь от теоретических основ PSO до их практической реализации.

Итак, приступим! Желаю приятного чтения.

Читать далее
Всего голосов 21: ↑20 и ↓1+21
Комментарии12

Анализ производительности моделей YOLOv8

Уровень сложностиСложный
Время на прочтение21 мин
Количество просмотров3.8K

В данной статье речь пойдёт о замерах производительности и точности работы моделей YOLOv8 на разных устройствах с различными оптимизациями и без них. Большое внимание будет уделено работе Yolo на “слабых устройствах”, таких как Raspberry PI, Orange PI, Jetson Nano, мини ПК. 

Современные задачи робототехники требуют вычислений "на борту", что особенно актуально для автономных систем. Важность данного исследования заключается в том, что оно направлено на решение задачи детекции в режиме реального времени на маломощных устройствах, что открывает новые возможности для использования компьютерного зрения в мобильных и автономных роботах. Будем считать, что FPS обработки изображений  >= 10 пригоден для некоторых задач детекции в реальном времени, но далеко не для всех.

Читать подробнее
Всего голосов 5: ↑5 и ↓0+5
Комментарии7

AIOgram3 18. Подключаем оплату Telegram Stars

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров13K

6 июня Павел Дуров сообщил, что в Telegram вводится новая валюта — Stars. Stars позволят производить покупку цифровых товаров и услуг, проще говоря, оплачивать покупки внутри Telegram, например, в ботах или в MiniApps. Однако не всё так радужно. Введение нового способа оплаты влечёт за собой отключение всех остальных платёжных средств. Если ваш бот принимал оплату через ЮКассу, то теперь только "Звёзды". Причины таких изменений оставим за скобками и сосредоточимся на более важных вещах, а именно на том, как внедрить в Telegram-бота новый способ оплаты — Telegram Stars.

Приобрести звёзды можно, открыв настройки Telegram и найдя пункт "Звёзды Telegram".

Читать далее
Всего голосов 4: ↑4 и ↓0+7
Комментарии13

Эй, компьютер, создай-ка мне шрифт

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров7.1K

Это история о том, как я с нуля осваивал создание генеративных моделей МО, попутно обучая компьютер создавать шрифты. Да, настоящие типографские шрифты, состоящие из набора заглавных глифов. Созданная мной модель получает на входе описание шрифта и создаёт на выходе файл с их готовым набором. Назвал я свой проект FontoGen.

Выше вы видите несколько примеров шрифтов, сгенерированных моделью FontoGen.

Ну а дальше я подробно опишу всю историю.
Читать дальше →
Всего голосов 41: ↑41 и ↓0+66
Комментарии12

Математика прекрасного. Как создать красивую картинку, если ты дилетант, художник или нейросеть?

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров5.4K

Привет, Хабр, я Павел Бузин, работаю аналитиком в компании Cloud.ru и занимаюсь решением задач, требующих применения различных математических методов, в том числе используемых для машинного обучения. 

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

В этой статье обсудим общие закономерности, так что если вы дизайнер, промпт-инженер или просто неравнодушны к прекрасному, вас ждет путешествие от Древней Греции до современных компьютеров с CAD и генеративными моделями. Математики и технари, добро пожаловать под кат, здесь вы будете чувствовать себя как дома. Гуманитарии, не пугайтесь, всё будет страшно только на первый взгляд.

Читать дальше
Всего голосов 2: ↑2 и ↓0+4
Комментарии6

Решаем судоку на pytorch

Время на прочтение7 мин
Количество просмотров3K

Решаем судоку на pytorch. Можно ли делать нейросети без обучения? Без кучи тестовых примеров? Попробую ответить на этот вопрос.

Читать далее
Всего голосов 8: ↑8 и ↓0+15
Комментарии3

Топ 5 продвинутых инструментов Data Science. Изучи за выходные и будешь выделяться

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров15K

Привет, чемпионы! Сегодня рассмотрим, как облегчить себе жизнь, применяя 5 инструментов в своих проектах. Эти инструменты улучшат ваш код, сделают ваш pipeline более стабильным и позволят не писать один код по 10 раз. Круто? Погнали!

Изучать новое!
Всего голосов 13: ↑11 и ↓2+13
Комментарии14

Работа с API YandexART на Python

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров3.3K

Всем привет!

Вчера делал интеграцию YandexART в своего юзербота, не нашел инструкций на Хабре, слава богу решил проблему сам, но я подумал что всё-таки надо поделиться способом интеграции.

Читать далее
Всего голосов 9: ↑7 и ↓2+8
Комментарии6
1
23 ...

Информация

В рейтинге
6 316-й
Зарегистрирован
Активность