Pull to refresh
150
0
Vladimir Iglovikov @ternaus

CEO

Send message

Albumentations: XYMasking

Level of difficultyEasy
Reading time7 min
Views858

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

После длинного вступления, будет туториал по применению аугментации XYMasking к спектрограммам от ЭЭГ. Кто экономит время - код с примерами можно найти по ссылке в документации библиотеки.

Длинная версия

Albumentations - это Open Source библиотека для аугментации изображений.

Аугментация - это умное слово, которое в переводе с русского на русский означает "преобразование".

Q: Зачем это надо?

A: Основное применение - тренировка нейронных сетей на картиночных данных, например ImageNet.

Чем больше разнообразных данных сеть видит при тренировке, тем выше шансы, что она выучит закономерности, а не просто запомнит их.

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

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

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

Ternaus: Telegram Bot

Reading time4 min
Views6.3K

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

Сделал Telegram бота - https://t.me/ternausbot

Вводишь текст или загружаешь картинку - получаешь 10 похожих.

Картинки из базы данных с Ternaus.com - 8.5 миллионов картинок, сгенерированных Stable Diffusion.

Код бота на python под катом.

Читать далее
Total votes 14: ↑10 and ↓4+6
Comments24

Ternaus: сводим поиск по картинкам и по тексту

Reading time3 min
Views2.1K

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

Сказано - сделано. Добавил 8.5M картинок, под лицензией CC0, то есть "Free of copyright". Используйте как душе угодно.

Более того, я убрал те, что не позволяют коммерческое использование, то есть все 18 миллионов, что у меня были, а именно ImageNet21k, Open Images и Places365.

При этом движении, целевая аудитория сместилась с тех, кто тренирует модели машинного обучения на тех, кто использует картинки как reference при создании 3D моделей для фильмов или игр.

Пообщался с творцами прекрасного, ребята рассказали, много интересного. Один из запросов - можно ли скомбинировать в одном запросе поиск по картинке и по тексту?

Да, можно, и технически это не сложно.

Для тех, кто не знает, что происходит под капотом в сервисах, вроде моего ternaus.com напомню.

Читать далее
Total votes 7: ↑6 and ↓1+5
Comments4

Ternaus: YOLO V7 bounding boxes

Reading time4 min
Views2.7K


Месяц назад я написал пост про то, как запили API + сайт демо на сайте Ternaus.com, где можно потыкать мышкой, чтобы оценить качество поиска.

Сейчас, в дополнение к картинкам добавлены bounding boxes и пост об этом.

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

Albumentations: Пожертвования

Reading time4 min
Views1.8K

В прошлом посте я писал про то, какая ситуация сложилась с open source библиотекой Albumentations на лето 2022.

Проект разрабатывается в свободное время на энтузиазме Core Team (трое) и вкладе сторонних разработчиков (более сотни).

Библиотеку активно используют:

20-30 тысяч скачиваний в день. (20 октября по неизвестной причине, выстрелило до 121k)

7 миллионов скачиваний в сумме

11 тысяч звезд на GitHub (если вы свою не поставили - то самое время)

Читать далее
Total votes 13: ↑10 and ↓3+7
Comments10

Similar images: API

Reading time4 min
Views4.3K

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

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

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

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

API: LINK

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

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

Рождение Albumentations

Reading time15 min
Views7.5K

В этом посте я расскажу историю появления Open Source библиотеки Albumentations как я ее запомнил. Я не буду углубляться в технические детали. Основная задача текста - логирование, то есть надо написать историю, которую мне будет интересно прочитать через 20 лет.

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

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

Из физиков в Data Science (Из двигателей науки в офисный планктон). Третья часть

Reading time12 min
Views33K


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


Первая часть.
Вторая часть.


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


Шел январь 2017 года. На тот момент у меня было чуть больше года трудового стажа и работал я в Сан-Франциско в компании TrueAccord как Sr. Data Scientist.


TrueAccord — это стартап, который занимается сбором долгов. По-простому — коллекторское агентство. Обычно коллекторы много звонят. Мы же посылали много email'ов, а звонили мало. Каждый email вел на сайт компании, где должнику предлагалось сделать скидку на долг, да еще и позволить платить в рассрочку. Такой подход приводил к лучшей собираемости, позволял масштабироваться и меньше встревать на судебные иски.

Читать дальше →
Total votes 78: ↑76 and ↓2+74
Comments23

Британские спутниковые снимки 2: как все было на самом деле

Reading time21 min
Views34K
image

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

Краткое содержание первой части:

1. DSTL (научно-техническая лаборатория при министерстве обороны Великобритании) провела открытое соревнование на Kaggle.
2. Соревнование закончилось 7 марта, результаты объявлены 14 марта.
3. Пять из десяти лучших команд — русскоговорящие, причем все они являются членами сообщества Open Data Science.
4. Призовой фонд в $100,000 разделили брутальный малазиец Kyle, команда Романа Соловьева и Артура Кузина, а также я и Сергей Мушинский.
5. По итогам были написаны блог-посты (мой пост на хабре, пост Артура на хабре, наш с Серегой пост на Kaggle), проведены выступления на митапах (мое выступление в Adroll, мое выстпление в H20.ai, выступление Артура в Yandex, выступление Евгения Некрасова в Mail.Ru Group), написан tech report на arxiv.

Организаторам понравилось качество предложенных решений, но не понравилось, сколько они отстегнули за это соревнование. В Каggle ушло $500k, в то время как призовые всего $100k.
Читать дальше →
Total votes 110: ↑109 and ↓1+108
Comments28

Kaggle: Британские спутниковые снимки. Как мы взяли третье место

Reading time22 min
Views41K

Сразу оговорюсь, что данный текст — это не сухая выжимка основных идей с красивыми графиками и обилием технических терминов (такой текст называется научной статьей и я его обязательно напишу, но потом, когда нам заплатят призовые $20000, а то, не дай бог, начнутся разговоры про лицензию, авторские права и прочее.) (UPD: https://arxiv.org/abs/1706.06169). К моему сожалению, пока устаканиваются все детали, мы не можем поделиться кодом, который написали под эту задачу, так как хотим получить деньги. Как всё утрясётся — обязательно займемся этим вопросом. (UPD: https://github.com/ternaus/kaggle_dstl_submission)

Так вот, данный текст — это скорее байки по мотивам, в которых, с одной стороны, всё — правда, а с другой, обилие лирических отступлений и прочей отсебятины не позволяет рассматривать его как что-то наукоемкое, а скорее просто как полезное и увлекательное чтиво, цель которого показать, как может происходить процесс работы над задачами в дисциплине соревновательного машинного обучения. Кроме того, в тексте достаточно много лексикона, который специфичен для Kaggle и что-то я буду по ходу объяснять, а что-то оставлю так, например, вопрос про гусей раскрыт не будет.
Total votes 74: ↑74 and ↓0+74
Comments42

Kaggle: Allstate Claims Severity

Reading time10 min
Views16K

Хотелось бы описать решение к недавнему соревнованию по машинному обучению Allstate Claims Severity. (Мой результат 40 из 3055). Так как это это соревнование типа «ансамблевое рубилово», как правило, обсуждение решений вызывает нездоровые священные войны между теми, кто пробовал участвовать и теми кто нет, так что для начала я сделаю небольшое лирическое отступление.
Читать дальше →
Total votes 22: ↑22 and ↓0+22
Comments18

Из физиков в Data Science (Из двигателей науки в офисный планктон). Вторая часть

Reading time22 min
Views46K


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


(Заранее извиняюсь за обилие английских слов, какие-то из них я не знаю как перевести, а какие-то мне переводить не хочется.)


Total votes 63: ↑61 and ↓2+59
Comments29

Сколько нужно нейронов, чтобы узнать, разведён ли мост Александра Невского?

Reading time6 min
Views24K

image


Введение.


На той неделе darkk описал свой подход к проблеме распознавания состояния моста(сведён/разведён).


Алгоритм, описанный в статье, использовал методы компьютерного зрения для извлечения признаков из картинок и скармливал их логистической регрессии для получения оценки вероятности того, что мост сведён.


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


В последние несколько лет сильную популярность обрели нейронные сети, как алгоритм, который умудряется в автоматическом режиме извлекать признаки из данных и обрабатывать их, причём делается это настолько просто с точки зрения того, кто пишет код и достигается такая высокая точность, что во многих задачах (~5% от всех задач в машинном обучении) они рвут конкурентов на британский флаг с таким отрывом, что другие алгоритмы уже даже и не рассматриваются. Одно из этих успешных для нейронных сетей направлений — работа с изображениями. После убедительной победы свёрточных нейронных сетей на соревновании ImageNet в 2012 году публика в академических и не очень кругах возбудилась настолько, что научные результаты, а также програмные продукты в этом направлении появляются чуть ли не каждый день. И, как результат, использовать нейронные сети во многих случаях стало очень просто и они превратились из "модно и молодёжно" в обыкновенный инструмент, которым пользуются специалисты по машинному обучению, да и просто все желающие.


Читать дальше →
Total votes 59: ↑59 and ↓0+59
Comments30

Из физиков в Data Science (Из двигателей науки в офисный планктон)

Reading time14 min
Views67K

Вступление


Не так давно, а именно двенадцать месяцев назад, начался мой последний год аспирантуры на физическом факультете ВУЗа под названием University of California, Davis. Вставал законный вопрос — что делать дальше? За преподаванием, движением науки и прочими развлечениями год пройдёт очень быстро. Решать надо было заранее. Основной план был найти позицию постдока, причем где-нибудь в Токио, Рио де Жанейро или Сингапуре, так что вроде как и путешествуешь, а вроде как и работаешь. И по идее под это дело у меня всё было подготовлено: и статьи, и знакомые, и знаний в определённых областях физики конденсированных сред — на троих. Я начал активно гуглить сайты разных вузов, в интересующих меня географически частях мира, написал научно ориентированный CV, подписался на рассылки где публикуются вакансии постдоков, намекнул всем знакомым, что если что — то мне надо сказать в первую очередь. Я даже по скайпу с какими то профессорами общался на тему работы в их научных группах. В общем всё куда-то катилось.

Примерно в то же время к нам в городок заехал один мой знакомый, который в свое время тоже выпустился с нашего доблестного факультета, но на пару лет раньше. Последние пару лет он мыкался и тыкался в разные конторы и вот наконец нашёл работу на позицию под названием Data Scientist. Посидели в баре, потрепались — то, чем он занимается, особенно не зацепило (когда каждый день пытаешься разобраться что и куда квантовать, чтобы описать свойства наноматериалов, рассказы о том, как в некой базе данных что-то куда-то аггрегируется и почему это важно для каких-то продаж офисных принадлежностей, вообще не цепляет), но зацепила зарплата. Для справки, в США грязными, то есть до вычета налогов:

  1. Аспирант — $27k
  2. Постдок — $45k
  3. Профессор — $117k

Читать дальше →
Total votes 23: ↑21 and ↓2+19
Comments16

Kaggle. Предсказание продаж, в зависимости от погодных условий

Reading time16 min
Views23K


Не далее, как в прошлую пятницу у меня было интервью в одной компании в Palo Alto на позицию Data Scientist и этот многочасовой марафон из технических и не очень вопросов должен был начаться с моей презентации о каком-нибудь проекте, в котором я занимался анализом данных. Продолжительность — 20-30 минут.

Data Science — это необъятная область, которая включает в себя много всего. Поэтому, с одной стороны, есть из чего выбрать, но, с другой стороны, надо было подобрать проект, который будет правильно воcпринят публикой, то есть так, чтобы слушатели поняли поставленную задачу, поняли логику решения и при этом могли проникнуться тем, как подход, который я использовал может быть связан с тем, чем они каждый день занимаются на работе.

За несколько месяцев до этого в эту же компанию пытался устроиться мой знакомый индус. Он им рассказывал про одну из своих задач, над которой работал в аспирантуре. И, навскидку, это выглядело хорошо: с одной стороны, это связано с тем, чем он занимается последние несколько лет в университете, то есть он может объяснять детали и нюансы на глубоком уровне, а с другой стороны, результаты его работы были опубликованы в рецензируемом журнале, то есть это вклад в мировую копилку знаний. Но на практике это сработало совсем по-другому. Во-первых, чтобы объяснить, что ты хочешь сделать и почему, надо кучу времени, а у него на всё про всё 20 минут. А во-вторых, его рассказ про то, как какой-то граф при каких-то параметрах разделяется на кластеры, и как это всё похоже на фазовый переход в физике, вызвал законный вопрос: «А зачем это надо нам?». Я не хотел такого же результата, так что я не стал рассказывать про: «Non linear regression as a way to get insight into the region affected by a sign problem in Quantum Monte Carlo simulations in fermionic Hubbard model.»

Я решил рассказать про одно из соревнований на kaggle.com, в котором я участвовал.
Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments20

Information

Rating
Does not participate
Location
San Francisco, California, США
Registered
Activity