Pull to refresh
0
0
Кожанов Никита Юрьевич @nikkymen

Computer Vision, Machine Learning

Send message

Как полюбить задачи регрессии

Reading time5 min
Views7.2K

У задач классификации, в отличии от задач регрессии, есть одно очень приятное свойство:
большинство ML алгоритмов решения задач классификации выдают не просто ответ, а некоторую оценку уверенности модели в ответе. То есть помимо метрик самой модели мы обладаем оценкой вероятности для конкретного ответа на конкретном примере. Это здорово помогает в принятии решений.
Неправда ли хотелось бы иметь что-то такое и для задач регресии?

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments5

Как создать переводчик, который переводит лучше, чем Google Translate

Reading time8 min
Views30K

Помню, как еще в школе на Basic я писал программу-переводчик. И это было то время, когда ты сам составлял словарь, зашивал перевод каждого слова, а затем разбивал строки на слова и переводил каждое слово в отдельности. В то время я, конечно же, не мог и представить, как сильно продвинутся технологии, и программы-переводчики станут в основе использовать механизмы глубокого обучения с архитектурой трансформера и блоками внимания.

В этот раз я решил окунуться немного в прошлое и сделать то, что хорошо сделать тогда у меня не получилось.

Читать далее
Total votes 61: ↑61 and ↓0+61
Comments48

Similar images: API

Reading time4 min
Views4.5K

Кортокая версия.

Я набил API, который позволяеи искать картинки похожие на искомую.

API бесплатный, на один запрос выдает до 50 похожих картинок.

В базе данных 18 миллионов изображений. Надеюсь, в ближайшее время, добавлю еще 50M.

API: LINK

Web Demo: LINK. Можно загрузить свою картинку или воспользоваться текстовым поиском. Можно кликать на картинки в результате поиска и смотреть что найдет по ней. Хороший вопрос за сколько шагов можно дойти от чего-то невинного до порнухи или хотя бы обнаженки.

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments4

Самообучающийся трекер объектов: как отслеживать цель в изменчивых условиях сцены

Reading time16 min
Views13K

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

Есть один подход к трекингу, широко известный на западе, но о котором мало пишут по-русски: Incremental Visual Tracker (IVT). Это трекер объектов на основе модифицированного метода главных компонент: он самообучается на ходу и адаптируется к изменчивым условиям.

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

Читать далее
Total votes 13: ↑13 and ↓0+13
Comments0

Упрощаем код с помощью if constexpr и концептов C++17/C++20

Reading time14 min
Views17K

До C++17 у нас было несколько довольно неэлегантных способов написать static if (if, который работает во время компиляции). Например, мы можем использовать статическую диспетчеризацию или SFINAE. К счастью, ситуация изменилась к лучшему, ведь теперь мы можем воспользоваться для этого if constexpr  и концептами C++20!

Ну что ж, давайте разберемся, как мы можем использовать это в качестве замены std::enable_if кода!

Читать далее
Total votes 12: ↑10 and ↓2+9
Comments34

Создаем личное файловое облако легко и просто (и дешево)

Reading time13 min
Views135K

А сегодня мы с вами быстро и решительно легко и просто поднимем свое личное файловое облако типа Google Drive или Яндекс.Диск, а если повезет, то еще и очень дешево.

Зачем? Ну, например, потому что не хотим зависеть от корпораций с их кабальными лицензионными соглашениями и сменой условий задним числом. Или потому что нам хочется приватности. Или просто потому что можем. А бонусом на нашем сервере вы потом сможете еще установить VPN или прокси для доступа к запрещенным сайтам, или поднять простенький веб-сайтик.

Я специально будут рассказывать все максимально подробно и пошагово, чтобы даже люди без большого опыта системного администрирования смогли все повторить. В наше время, благодаря развитому инструментарию, такому как docker и snap, установить и настроить все что нужно можно очень быстро всего лишь несколькими командами.

Читать далее
Total votes 79: ↑71 and ↓8+84
Comments233

Руководство по Human Pose Estimation

Reading time12 min
Views12K

Обычно эту задачу решают при помощи глубокого обучения.

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

В этой статье приведён исчерпывающий обзор определения положения тела человека (Human Pose Estimation, HPE) и того, как оно работает. Также в ней рассматриваются различные подходы к решению задачи HPE — классические методы и методы на основе глубокого обучения, метрики и способы оценки, а также многое другое.
Читать дальше →
Total votes 15: ↑13 and ↓2+19
Comments6

Шерудим под капотом Stable Diffusion

Reading time10 min
Views34K

Вероятно вы уже слышали про успехи нейросетей в генерации картинок по текстовому описанию.

Я решил разобраться, и заодно сделать небольшой туториал, по архитектуре модели Stable Diffusion. Сегодня мы не будем глубоко погружаться в математику и процесс тренировки. Вместо этого сфокусируемся на применении и устройстве основных компонент: UNet, VAE, CLIP.

Читать далее
Total votes 81: ↑81 and ↓0+81
Comments11

Пользовательские типы и std::format в C++20

Reading time8 min
Views17K

std::format — очень полезное (и серьезное) нововведение C++20, позволяющее нам форматировать текст в строки удобным и эффективным образом. Оно привносит в язык форматирование в стиле Python в сочетании с безопасностью и простотой использования.

В этой статье я расскажу, как реализовать пользовательские средства форматирования (форматтеры) в соответствии с новой std::format архитектурой.

Читать далее
Total votes 13: ↑11 and ↓2+12
Comments11

В IT в 30. Как я стал solo Kaggle Grandmaster, устроился на работу, но так и не стал программистом

Reading time10 min
Views73K

Всем привет, меня зовут Крамаренко Владислав. В этом году мне исполнилось 30 лет, а также случилось много событий, в том числе и позитивных. Во первых, я устроился на вторую в жизни работу(и первую в айти), а во вторых, стал грандмастером. Это сложный путь, на котором было несколько ключевых решений, которые привели меня к себе нынешнему. Им я и поделюсь далее, начав с детства.

Читать далее
Total votes 87: ↑80 and ↓7+87
Comments74

5 отличных мини-ПК для дома и офиса: новые устройства августа 2022 года

Reading time4 min
Views22K

Производители миниатюрных десктопов, несмотря на все проблемы электронной отрасли, продолжают выпускать интересные новые устройства. Среди них есть как относительно мощные, так и те, что позволяют лишь работать с документами и серфить. Но что те, что другие могут оказаться полезными для многих из нас. Понятно, что в подборку попали не все новинки, но если у вас есть собственный претендент для этого материала — пишите в комментариях, обсудим!
Читать дальше →
Total votes 30: ↑28 and ↓2+33
Comments51

Дроны на «Северстали» или как мы цифровизовали маркшейдинг

Reading time8 min
Views7.6K

Когда любишь свою работу, идея по ее улучшению может прийти в голову в любой момент. Так и произошло в 2016 году, когда я увидел обычный бытовой дрон, который соседи по даче купили своему ребенку. Я попробовал поуправлять квадрокоптером на участке, а он в какой-то момент улетел за сарай, где в узком проходе между забором лежали доски. С той точки, где я находился, их было не видно, но дрон их снял на камеру с отличным качеством. И вдруг я понял: коптеры можно использовать для осмотра и съемки труднодоступных конструкций на территории предприятия! 

Меня зовут Горбунов Михаил, я — главный инженер центра «Домнаремонт», который входит в дивизион «Северсталь». Сегодня я расскажу о применении беспилотников для сбора информации и контроля некоторых видов работ на комбинате.

Полетели!
Total votes 22: ↑22 and ↓0+22
Comments13

Использование Redis для работы с геоданными

Reading time6 min
Views7.9K

Работа с геопространственными данными заведомо сложная задача, хотя бы потому что широта и долгота это числа с плавающей запятой и они должны быть очень высокоточными. К тому же, казалось бы, широта и долгота могут быть представлены в виде сетки, но на самом деле нет, не могут, просто потому что Земля не плоская, а математика - сложная наука.

Читать далее
Total votes 15: ↑14 and ↓1+17
Comments2

Временная релокация в Турцию для российского айтишника — основные вопросы, подводные камни, лайфхаки (обновляемая)

Reading time35 min
Views25K

Сколько же статей на эту тему написано и вот опять!

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

Читать далее
Total votes 24: ↑16 and ↓8+14
Comments21

Получил доступ к Dalle-2. Вы не поверите, что может нарисовать машина… Дизайнеры больше не нужны

Reading time4 min
Views149K
Текст генерации: furry monster with green eyes looking at us, the word «habrahabr» in the background, digital art, blue background, 3d

Привет, чемпион!

Недавно мне посчастливилось стать обладателем доступа к API Dalle-2. Если ты ещё не слышал про Dalle, то это такая CLIP-архитектура, обученная на огромном корпусе пар текст-изображение. Иначе говоря — она умеет генерировать очень качественные изображения из текста. Отличить результаты генерации от рисунков человека иногда просто невозможно! Это одновременно впечатляет и в то же время — немного шокирует.

По сравнению с предыдущей версией — DALL-E 2 умеет генерировать изображения в более высоком разрешении (1024×1024 пикселей, что в 16 раз превышает разрешение в предыдущей версии модели) да ещё и намного быстрее. Более того, DALL-E 2 позволяет редактировать уже существующие изображения.

Нет больше терпения ждать, давайте же опробуем её!
Читать дальше →
Total votes 181: ↑174 and ↓7+220
Comments817

Обхода блокировок много не бывает на роутерах Keenetic

Reading time23 min
Views170K

С помощью действий, описанных в этой статье, Вы сможете подключить все устройства домашней сети (телефоны, смарт-тв, компьютеры и ноутбуки и другие "домашние" устройства) к данному обходу блокировок, а также подключаться к Вашему роутеру не из дома и пользоваться его обходом блокировок для доступа к любимым сайтам и приложениям. Кроме того, из обеих этих сетей (домашней и через подключение к роутеру), из любого браузера можно будет пользоваться onion-сайтами.

В данной статье будет описана работа телеграм-бота, написанного на python. С его помощью будет возможна установка данного обхода с небольшими предварительными настройками, а также работа со списками блокировок.

Читать далее
Total votes 31: ↑27 and ↓4+33
Comments85

Бэкдор в ML-моделях. Врага надо знать «в лицо»

Reading time4 min
Views3.7K

Основная опасность бэкдоров заключается в том, что их очень сложно вычислить — это не вложенный кусок вредоносного кода, а зашитый при обучении модели паттерн поведения. Open Source модели или даже модели, которые были разработаны для заказчика «вовне», могут быть опасны тем, что они содержат подобные уязвимости. Зачем они нужны и что из себя представляют, рассказывают дата-сайнтисты «Инфосистемы Джет».

Узнать все
Total votes 20: ↑20 and ↓0+20
Comments1

Воспроизводимость ML экспериментов с помощью MLflow project

Reading time12 min
Views5.6K

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

И все шло хорошо, результаты проверки гипотез (параметры обучения, метрики, артефакты и модели) сохранялись, их было удобно наглядно сравнивать, и все были довольны. Так продолжалось достаточно долгое время, пока не возникла необходимость вернуться к эксперименту, который выполнялся какое-то время назад и был приостановлен.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments0

Отрисовка в браузере большой анимации или как я ушел с mp4 к своему формату видео

Reading time17 min
Views54K

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

Читать далее
Total votes 286: ↑286 and ↓0+286
Comments134

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Software Developer, Application Developer
Lead
From 400,000 ₽
C++
Qt
OpenCV
Cuda
Computer vision
Neural networks