Как стать автором
Обновить
69.81
Open Data Science
Крупнейшее русскоязычное Data Science сообщество
Сначала показывать

DIY. Книги для всех, даром

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

Lingtrain cover


⚡ Градиент обреченный


Upd. 11.06.2022 Многие заинтересовались генерацией изображений нейросетями. Вот Colab (интерактивная среда для запуска кода) для рисования картинок в стиле pixel art по текстовому описанию. Просто запускайте, ближе к концу увидете ячейку для ввода текста. Примеры картинок из Colab'а в комментариях.


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


Сегодня же я расскажу как при помощи него создать полноценную параллельную книгу на разных языках. Книга будет красиво сверстана в PDF, иметь содержание, обложку и две выровненные по смыслу колонки текста. Такие книги служат отличным подспорьем при изучении иностранного языка. Найти их, однако, не так просто, и скорее всего это будут книги для детей или избранная классика. Полный пример готовой книги можно посмотреть здесь. Под капотом у приложения NLP модели, поддерживаемых языков более ста.


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

Сделать книжку

Причинно-следственный анализ в машинном обучении: итоги 2021 г

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

Недавно мы поговорили о том, что такое causal inference или причинно-следственный анализ, и почему он стал так важен для развития машинного обучения. А в этой статье - под катом - хотелось бы рассказать о трендах в развитии Causal Inference в ML в 2021 г.

Читать далее

Система распознавания шрифта Брайля. Читаем написанное белым по белому

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

В 2018 году мы взяли из детдома в семью слепую девочку Анжелу. Тогда я думал, что это чисто семейное обстоятельство, никак не связанное с моей профессией разработчика систем компьютерного зрения. Но благодаря дочери через два года появилась программа и интернет-сервис для распознавания текстов, написанных шрифтом Брайля - Angelina Braille Reader.

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

Ниже расскажу о том, как делалась эта разработка и с какими трудностями пришлось столкнуться. Более развернутое описание приведено в публикациях [1,2].

Возможно, кто-то захочет внести в проект свой вклад.

Читать далее

Интерпретируемость в машинном обучении: итоги 2021 г

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

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

Для интерпретируемости в машинном обучении устоялись термины Interpretable ML и Explainable AI (XAI). Объединяет их одно - стремление сделать модели машинного обучения понятными для конечного пользователя.

Под катом поговорим о том, что интересного произошло в интерпретируемости в 2021 г.

Читать далее

Причинно-следственный анализ в машинном обучении

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

Что появилось первым: курица или яйцо?
Статистики давно уже нашли ответ на этот вопрос.
Причем несколько раз.
И каждый раз ответ был разным.

А если серьезно, то для машинного обучения становятся все более актуальными вопросы причинно-следственного анализа (causal inference) - когда главной целью моделирования является не прогноз и его качество, а то, как мы можем принимать решения на основе нашего алгоритма. И как это повлияет на мир, в котором эта модель будет действовать. Сделает ли модель его лучше, чем он был? Или наоборот.

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

Читать далее

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

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


градиент обреченный


В задачах распознаваниях речи при переводе аудио в текст есть дополнительные этапы, делающие этот текст более человекочитаемым. Например, предложение "привет хабр сегодня мы сделаем двадцать шесть моделей по распознаванию голоса" будет выглядеть лучше в таком виде: "Привет, хабр. Сегодня мы сделаем 26 моделей по распознаванию голоса". Другими словами, сегодня мы поговорим про то, как автоматически восстановить пунктуацию и капитализацию (сделать нужные буквы заглавными). Также упомянем денормализацию текста (при этом числа обретут свою цифровую форму обратно, эту задачу еще называют inverse text normalization).


Пунктуация и капитализация

Читать дальше →

Чистый AutoML для “грязных” данных: как и зачем автоматизировать предобработку таблиц в машинном обучении

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

Обработка табличных данных средствами Python для использования в моделях машинного обучения - что может быть банальнее. Казалось бы. Иногда табличные данные бывают настолько "грязными", что их вычистка занимает гораздо больше времени, чем подготовка самой модели. Так зачем это делать самому, если с этим не хуже справится AutoML...

Ну и насколько они грязные

Проблемы современного машинного обучения

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

Во многих популярных курсах машинного и глубокого обучения вас научат классифицировать собак и кошек, предсказывать цены на недвижимость, покажут еще десятки задач, в которых машинное обучение, вроде как, отлично работает. Но вам расскажут намного меньше (или вообще ничего) о тех случаях, когда ML-модели не работают так, как ожидалось.

Частой проблемой в машинном обучении является неспособность ML-моделей корректно работать на большем разнообразии примеров, чем те, что встречались при обучении. Здесь идет речь не просто о других примерах (например, тестовых), а о других типах примеров. Например, сеть обучалась на изображениях коровы, в которых чаще всего корова был на фоне травы, а при тестировании требуется корректное распознавание коровы на любом фоне. Почему ML-модели часто не справляются с такой задачей и что с этим делать – мы рассмотрим далее. Работа над этой проблемой важна не только для решения практических задач, но и в целом для дальнейшего развития ИИ.

Читать далее

Новый запуск курса Natural Language Processing

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

TL;DR: Этой осенью сообщество Open Data Science и компания Huawei делают новый запуск курса по обработке естественного языка. Страница курса вот. Первая лекция - в среду, 14 сентября.

Читать далее

CatBoost, XGBoost и выразительная способность решающих деревьев

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

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

Данный обзор охватывает сразу несколько тем. Мы начнем с устройства решающего дерева и градиентного бустинга, затем подробно поговорим об XGBoost и CatBoost. Среди основных особенностей алгоритма CatBoost:

• Упорядоченное target-кодирование категориальных признаков
• Использование решающих таблиц
• Разделение ветвей по комбинациям признаков
• Упорядоченный бустинг
• Возможность работы с текстовыми признаками
• Возможность обучения на GPU

В конце обзора поговорим о методах интерпретации решающих деревьев (MDI, SHAP) и о выразительной способности решающих деревьев. Удивительно, но ансамбли деревьев ограниченной глубины, в том числе CatBoost, не являются универсальными аппроксиматорами: в данном обзоре приведено собственное исследование этого вопроса с доказательством (и экспериментальным подтверждением) того, что ансамбль деревьев глубины N не способен сколь угодно точно аппроксимировать функцию y = x_1 x_2 \dots x_{N+1}. Поговорим также о выводах, которые можно из этого сделать.

Читать далее

Интерпретация моделей и диагностика сдвига данных: LIME, SHAP и Shapley Flow

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

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

Также поговорим о проблемах метода SHAP и его дальнейшем развитии в виде метода Shapley Flow, объединяющего интерпретацию модели и многообразия данных.

Читать далее

Выбираем инструмент для разметки текста (и не только!)

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

Рано или поздно перед любой компанией которая хочет внедрить системы машинного обучения в свою инфрастуктуру встает вопрос разметки данных. Чистые данные в достаточно большом количестве - залог хорошей модели, все мы прекрасно знаем правило "Garbage in - garbage out". Такой вопрос недавно встал и передо мной. В этом посте я поделюсь своим опытом поиска инструментов для разметки текста и звука под in-house разметчиков, постараюсь описать их плюсы и минусы, а в конце расскажу на чем мы в итоге остановились и что из этого вышло. Задачи на данном этапе относительно стандартные для NLP: классификация, NER, потенциально также может понадобиться entity-linking и разметка аудио под задачи ASR, но это пока менее приоритетно. Инструмент в идеале нужен open-source, но если будет приемлимый ценник за какие-то нужные фичи - мы готовы заплатить.

Заранее скажу, что этот пост никем не спонсировался, а все написанное ниже является сугубым ИМХО. Также имейте ввиду, что впечатления об использовании различных инструментов были составлены на момент написания статьи - осень-зима 2021-го года. Если вы смотрите на эти инструменты сильно позднее - возможно, информация будет уже не актуальной. Ну а теперь, поехали!

Читать далее

Рождение Albumentations

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

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

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

Читать далее

Обзор архитектуры AlphaFold 2

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

В данном обзоре мы подробно рассмотрим нейронную сеть AlphaFold 2 от компании DeepMind, с помощью которой недавно был совершен прорыв в одной из важных задач биологии и медицины: определении трехмерной структуры белка по его аминокислотной последовательности.

В первых трех разделах обзора описывается задача, формат входных данных и общая архитектура AlphaFold 2. Далее, начиная с раздела «Input feature embeddings», описываются детали архитектуры. В разделе «Резюме» кратко суммируется основная информация из обзора.

Читать далее

Ближайшие события

Новый запуск курса Natural Language Processing

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

TL;DR: Этой осенью сообщество Open Data Science и компания Huawei делают новый запуск курса. Регистрироваться на сайте ODS.ai

посмотреть, что внутри

Анализ вакансий и зарплат в Data Science

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

Привет, Хабр!

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

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

Читать далее

О квантовых компьютерах, биткоине и превосходстве. Лекция открытого курса qmlcourse

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

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

Поехали!

Создание и балансировка инвестиционного портфеля с помощью ML

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

В прошлой статье я писал про свои ML-модели для оценки отдельных компаний, но вопрос формирования итогового портфеля совсем не затрагивал. В этом посте хочу рассказать о том, как я собираю свой личный портфель, а так же поделиться сайтом, на котором реализую весь описанный в статье функционал http://stocks.ml. Дисклеймер: у автора нет экономического образования и все выводы и суждения в статье делаются на основе житейского опыта и здравого смысла.

Читать далее

Учиться, учиться, и ещё раз учиться?

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

TLDR: крохотные модельки обошли модные графовые нейронки в предсказании свойств молекул.
Код: здесь. Берегите Природу.


image
ФОТО: Андерс Хеллберг для Wikimedia Commons, модель — Грета Тунберг


Необученная графовая свёрточная нейронная сеть [1] (uGCN) со случайной инициализацией весов уже пару лет занимает первое место в моём списке алгоритмов для задач машинного обучения на графах из-за копеечной стоимости, простоты реализации, да вполне очевидной элегантности решения. В то же время, насколько мне известно, никто ещё не не проводил соревнований между этой простой моделью и её старшей сестрой — полноценно обученной графовой свёрточной нейронной сетью (GCN) в режиме обучения с учителем. Вот я сделал.


Мотивация: показать, что uGCN выдаёт качественные представления, которые можно использовать в последующих задачах машинного обучения в индуктивном режиме, когда модели обобщаются к не виденным ранее данным (вдохновлено недавним отчётом [2] о производительности простых моделей в трансдуктивном случае).


Полученные результаты — занимательны. В худшем случае простые модели (uGCN + degree kernel + random forest) показали счёт 54:90 против полноценно обученных GCN, в то время как реалистичный сценарий закончился разгромным реваншем 93:51, указывающим на то, что мы можем позволить себе почти бесплатные эмбеддинги, которые превосходят или показывают результаты на уровне полноценно обученных GCN в задаче предсказания свойств графа (например — эффекта медикаментов: яд или лекарство) за долю стоимости. Простые модели обучались ~10 минут в то время как весь эксперимент продлился ~4 часа. Перейдём же к деталям и разберёмся с тем, что произошло!

Читать дальше →

DeepPavlov стал частью Google Summer of Code в 2021 году

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

В этом году открытая платформа для обработки естественного языка DeepPavlov, разрабатываемая лабораторией нейронных систем и глубокого обучения МФТИ,  впервые стала частью ежегодной программы для молодых разработчиков Google Summer of Code.

Google Summer of Code (GSoC) — это ежегодное событие, проводимое компанией Google для привлечения молодых разработчиков к разработке проектов с открытым исходным кодом в их свободное летнее время. К участию допускаются студенты высших учебных заведений (бакалавриат, магистратура, аспирантура) и колледжей. Это отличная возможность не только развить навыки программирования, но и заработать!

Работать можно в любой организации, которая есть в соответствующем списке на странице Google Summer of Code, но мы предлагаем вам участвовать в рамках сообщества DeepPavlov. И сегодня мы расскажем подробнее о приеме и задачах, которые готовы предложить студентам этим летом. Вместе с вами мы выведем сообщество разработчиков ПО с открытым исходным кодом на новый уровень. 

Читать далее

Информация

Сайт
ods.ai
Дата регистрации
Дата основания
Численность
5 001–10 000 человек
Местоположение
Россия