Как стать автором
Поиск
Написать публикацию
Обновить
82.08

Big Data *

Большие данные и всё о них

Сначала показывать
Период
Уровень сложности

Fashion is ML profession! Материалы митапа

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

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

В Lamoda Tech мы создаем продукты, которые решают самые разные задачи пользователей и бизнеса. На митапе 28 марта мы рассказали, какие ML-модели работают у нас в проде и как мы строили эту работу. 

Делимся с вами видео выступлений и презентациями.

Читать далее

3 способа запуска Spark в Kubernetes из Airflow

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

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

Читать далее

Как провести unit-тестирование Flink-операторов: TestHarness

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

Привет всем, на связи снова Александр Бобряков, техлид в команде МТС Аналитики. Продолжаем цикл статей про фреймворк Apache Flink.

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

Начиная с этой статьи начнём разбирать, как тестировать всё наше приложение Flink + Spring. Многие описанные подходы вполне применимы и в любом другом обычном Spring-приложении, поэтому, надеюсь, вы найдёте для себя что-то новое.

В данной статье мы рассмотрим, как протестировать stateless- и stateful-операторы Flink с помощью абстракций TestHarness.

Читать далее

Как делить пользователей на группы в АБ-тестах: ошибки и рекомендации

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

В предыдущих статьях статья 1, статья 2, статья 3 мы рассмотрели основные подводные камни автоматизации и анализу АБ тестов, привели подробный обзор статей по этой теме, а так же рассмотрели типичные задачи аналитика данных. В контексте АБ-тестов одним из ключевых аспектов является механизм разделения на группы, который в терминологии специалистов часто называется сплитовалкой.

Может показаться, что задача элементарная - сгенерировать случайное целое число каждому пользователю с вероятностью 1/n, где n - число групп в АБ тесте. Но на практике, особенно для высоконагруженных сервисов, таких как Ozon, возникает множество архитектурных и платформенных сложностей. В данной статье мы сконцентрируемся на основных принципах деления на группы, принятых в индустрии.

Читать далее

Элегантный стек данных для встроенной аналитики

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

Контекст


По работе мне доводилось иметь дело с аналитическими стеками любых конфигураций и размеров. Мы на собственном опыте изучили, что цена стека для встроенной аналитики данных, расположенного за фронтендом, может моментально вырасти настолько, что об окупаемости инвестиций и речи не будет. Такой риск существует, если тщательно не просчитать 1) модели ценообразования для разных технологий и затраты на единицу продукции, 2) реализованную стоимость 3) производительность труда разработчика.

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

В этой статье будут исследованы соотношения затрат/ценности и преимущества нескольких стеков, ориентированных на работу с данными, а именно MotherDuck / Cube / React (MDCuRe)
Читать дальше →

Табуляционные машины Германа Холлерита — вольная реконструкция

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

Перфокартные табуляционные автоматы Германа Холлерита решали задачи обработки больших объемов данных (десятки миллионов записей) в 19-м веке, сэкономили несколько лет труда при подсчете результатов переписи США 1890-го года, быстро проникли во всевозможные организации от стальных фабрик до страховых контор, обеспечили их автору (Герману Холлериту) инженерное признание и коммерческий успех, послужили фундаментом для появления и развития компании IBM.


Здесь остановимся подробнее на технической стороне вопроса. Каким образом устройство в конце 19-го века могло решать задачи, которые принято ассоциировать с 21-м веком. Ведь в те времена люди не имели в распоряжении библиотеки Pandas и платформы Python, не было реляционных субд с языком SQL, и даже электронных компьютеров, которые могли запускать такое программное обеспечение, еще не придумали (не то, что транзисторы, электронные лампы еще не изобрели, а реле хотя уже были в ходу, никто еще не говорил о том, чтобы строить из них универсальные вычислители).


Отдельный повод сделать это именно сегодня: Герман Холлерит родился в 1860-м году 29 февраля.

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

Уродливая математика в машинном обучении или чему нам стоит поучиться у деривативов?

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

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

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

Да при чем здесь вообще деривативы? А просто у деривативов, дженги и машинного обучения — много общего, давайте разбираться.

Читать далее

Успешный опыт участия в Data Science хакатонах

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

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

На личном опыте я убедился, что не всегда для победы требуются сложные алгоритмы, мощное железо или большой опыт в индустрии. Иногда 5-6 строчек кода и немного смекалки достаточно, чтобы получить топ-1 решение. Я расскажу вам про не очевидные, на первый взгляд, но довольно простые решения, а также раскрою некоторые интересные моменты хакатонской кухни, которые, надеюсь, вдохновят вас на участие.

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

Читать далее

fsspec и вообще зачем оно нам нужно

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

Привет! Сегодня я расскажу вам про fsspec, его киллер фичи и почему он является незаменимым инструментом любого python разработчика.

Читать далее

Лексикографический симплекс-метод

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

Лексикографический симлекс-метод.

Решение задачи линейного программирование симлекс-методом и лексикографическим симлекс-методом на Python!

Читать далее

Как автоматизировать проверки данных в Airflow с Great Expectations

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

Привет, меня зовут Дима Курганский, и я - MLOps инженер в команде машинного обучения в Банки.ру. Эта статья будет интересна, тем кто понимает принципы работы с Great Expectations и его составляющие компоненты и хочет вывести его на прод с использованием Apache Airflow.

Читать далее

Когда одной ARIMA мало. Прогнозирование временных рядов нейросетями

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

Привет, Хабр! Меня зовут Никита, я работаю в Мегафоне аналитиком больших данных. В этой статье я хочу поговорить про временные ряды, а если конкретнее, про использование нейросетей для их прогнозирования. 

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

Читать далее

«Большие вызовы» в «Сириусе», или как мы обычно проводим лето

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

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

В этой статье мы расскажем, как устроено менторство в «Сириусе» и чем это полезно взрослым компаниям. Так, однажды мы нашли на конкурсе талантливого разработчика себе в команду. Но обо всём по порядку. Добро пожаловать под кат.

Читать далее

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

Рынок BI (Business intelligence) систем в России. Как рисуют рейтинги платформам?

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

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

Во времена царствия на рынке РФ большой тройки аналитических платформ ( Qlik, Tableau, Power BI) всем было достаточно ежегодного мнения авторитетного Гартнера. В крайнем случае еще смотрели BARC, Aberdeen Group, G2 или IDC. Везде кстати картина довольно четко определяла лидеров отрасли и подсвечивала сильные и слабые стороны платформ. При этом попадание в Гартнер было задачей престижной, сложной и затратной. Из всех Российских платформ там был только Прогноз, который в 2017 году обанкротился. Но успел возбудить западных вендоров на написание батл карт. Если вернутся к Гартнеру, то это целая машина по изучению технологий на рынке, со своей системой оценки вендоров. Четкие критерии и веса на каждый элемент платформы, определение вектора развития технологий на несколько лет вперед, глубокий анализ рынка и конечно же магический квадрант, где каждый хочет быть в правом верхнем углу. Более того, вся эта оценка подкреплялась отзывами заказчиков, которую Гартнер собирал отдельно. Конечно все старались дать контакты наиболее лояльных клиентов и повлиять на итоговый рейтинг, но контрольную закупку никто не отменял. Шанс получить более высокую оценку значительно возрастал после покупки пакетов услуг самого Гартнера. Будем считать все же эту модель эталонной и справедливой к рынку. И так озвучим проблематику: есть рынок отечественного BI софта, но не понятно каким рейтингам можно доверять, а в каких рейтингах слишком велика ошибка?

Читать далее

Переходим на Greenplum быстро

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

В условиях отсутствия возможности лицензирования и поддержки иностранных вендорских решений по хранилищам данных, встал вопрос о замене этих решений на отечественное программное обеспечение, с вендорской поддержкой, находящееся в реестре российского ПО и которое не уступает по производительности и объемам хранения зарубежным аналогам, таким как Teradata, Oracle, SAP HANA. Как показал анализ, таким требованиям отвечает лишь решения, основанные на MPP СУБД на базе Greenplum, в частности Arenadata DB (ADB). Но как быстро и безболезненно начать миграцию с привычных хранилищ на open-source? Постараюсь в статье рассказать и показать, что удалось придумать в этом направлении

Читать далее

Форматы ORC и Parquet на базе HDFS

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

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

У нас получилось! Мы снизили количество данных на диске в 3 раза, при этом ускорив их обработку. И сейчас расскажу как. Меня зовут Александр Маркачев, я Data Engineer команды Голосовой Антифрод в beeline. В статье затронем тему форматов ORC и Parquet, как их правильно использовать и хранить, чтобы всем было хорошо.

Читать далее

Искусство ETL. Пишем собственный движок SQL на Spark [часть 3 из 5]

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

04_assets_residents.tdl


В данной серии статей я подробно рассказываю о том, как написать на Java собственный интерпретатор объектно-ориентированного диалекта SQL с использованием Spark RDD API, заточенный на задачи подготовки и трансформации наборов данных.

Краткое содержание предыдущей серии, последней, посвящённой проектированию спецификации языка:
Операторы жизненного цикла наборов данных (продолжение)
Операторы контроля потока выполнения
Операторы управления контекстом исполнения
Операторы выражений


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


Предупреждение о рейтинге «M for Mature»

Уровень сложности данной серии статей — высокий. Базовые понятия по ходу текста вообще не объясняются, да и продвинутые далеко не все. Поэтому, если вы не разработчик, уже знакомый с терминологией из области бигдаты и жаргоном из дата инжиниринга, данные статьи будут сложно читаться, и ещё хуже пониматься. Я предупредил.

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

Reinforcement Learning from Human Feedback: когда одной математики мало

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

Сотни людей собрались на конференции ICML на туториале про обучение с подкреплением на основе отзывов (reinforcement learning from human feedback, RLHF). Докладчик спросил, кто хочет размечать данные. Пять, быть может, десять человек подняло руки. И это никого не удивило.

Что было дальше?

Работа с хребтами (ridge plot) в Seaborn

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

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

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

Читать далее

Теория вероятностей в разработке: где применяется и что можно изучить для более глубокого понимания темы

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

Часто приходится слышать, что математика, включая статистику и теорию вероятностей с комбинаторикой, не слишком нужна разработчику. Что ж, в некоторых случаях это действительно так. Но для представителей ряда направлений всё это нужно. Кому именно требуется теория вероятностей с сопутствующими дисциплинами и зачем? Об этом поговорим под катом. И сразу хочу пояснить, что статья предназначена для начинающих специалистов. 

Читать далее

Вклад авторов