Как стать автором
Обновить
20
0
Игорь Моисеев @Eth_Moses

Experimentation Analysis Team Lead, Ozon Tech

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

Бутстрап временных рядов

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

Всем привет! Как и во многих других компаниях, в X5 существует огромное количество данных, зависящих от времени. Такие данные принято называть временными рядами (time-series). Это могут быть данные о продажах в магазинах, об остатках на складах или об удовлетворенности клиентов. Используя эти данные, мы хотим искать инсайты и приносить пользу бизнесу.

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

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

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

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

Выживание самых богатых: пузырь ядерных убежищ времён Холодной войны

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

Угроза ядерного нападения во времена Холодной войны заставила американцев делать потребительский выбор, доведённый до крайней степени: покупай или умри. Сегодня ситуация не сильно изменилась.

Брошюры и полностраничные газетные объявления Лео Хоега распространялись по США осенью 1961 года, разя всех с силой ударной волны ядерного взрыва. «ПРОТИВОРАДИАЦИОННЫЕ УБЕЖИЩА МОГУТ СПАСТИ ЖИЗНИ 70 МИЛЛИОНОВ АМЕРИКАНЦЕВ».

За пару месяцев до этого, 25 июля, президент Джон Ф. Кеннеди ввёл американцев в курс Берлинского кризиса. Он предупредил о возможности ядерных ударов по территории США и впервые указал на важность противорадиационных убежищ (fallout shelter). Но он не донёс в подробностях, каким образом они появятся в стране, поэтому бизнесмены наподобие Хоега сами начали заполнять пробелы.

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

В качестве решения проблемы предлагалось убежище работодателя Хоега, Wonder Building Corporation. Он рекомендовал американцам немедленно купить его для установки в подвале или на заднем дворе: «мистер Хрущёв… может совершить ошибку уже завтра», поэтому не стоит рисковать, пока правительство США предложит налоговые льготы или финансирование программы производства убежищ.

Семейное убежище было мудрым вложением средств. «Страховкой для выживания», как говорил Хоег.
Читать дальше →
Всего голосов 56: ↑50 и ↓6+66
Комментарии56

Хабру — 18

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

Хабру — 18 лет. Выросли в читателей и авторов те, кто родился с ним в один день и даже позже. Выросли сотрудники, которые работают 18, 15, 10, 5 лет. Да, многие в Хабре работают долго, потому что он не отпускает. Изменился интерфейс, редактор публикаций, пережили ужесточения и послабления правил, неоднократно менялась структура контента. Да что там говорить: Хабр успел разделиться на три сайта и собраться обратно в единый журнал об IT и около IT. 

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

Мы собрали несколько историй авторов и коллег (мы не просили, они сами) о том, что Хабр изменил в их жизни. Много хорошего, есть и критика — всё как всегда. Главное, что лампово и уютно.

Читать далее
Всего голосов 58: ↑55 и ↓3+90
Комментарии59

Подбираем параметры сессии в Apache Spark, чтобы не стоять в очереди

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

Бывало у вас так, что некоторые аналитики запрашивают побольше вычислительных ядер и оперативной памяти для своих Jupyter-ноутбуков, а у вас в это время ничего не работает? У меня бывало, ведь недостаточно уметь разрабатывать код на Spark — еще нужно уметь его настраивать, правильно инициализировать сеансы работы и эффективно управлять доступом к вычислительным ресурсам. Если отдать настройку на волю случая, Spark может (и будет) потреблять ресурсы всего кластера, а другие приложения будут стоять в очереди.

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

Читать далее
Всего голосов 23: ↑21 и ↓2+19
Комментарии9

Остаться в живых (keepalive) feat. HTTP/2, Go & gRPC-Go

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

Привет, Хабр!) Меня зовут Ильяс. В этой статье мы разберём известную идею — keepalive в межсервисном взаимодействии, которая спасла уже не одну компанию в трудное время :). Но чтобы добавить интереса, мы разберём, какие проблемы в keepalive принесли современные технологии (ведь что может пойти не так с этой простой идеей?). Поэтому в статье мы рассмотрим механизмы, которые позволяют проверять стабильность соединения между клиентом и сервером в случае, когда обычные TCP keepalive из-за сложности архитектуры не могут определить состояние сервера.

Остаться в живых
Всего голосов 131: ↑127 и ↓4+128
Комментарии0

Люди с золотой клавиатурой: победители конкурса «Технотекст 2023»

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

Ян Флеминг, автор романов о Джеймсе Бонде, отпраздновал завершение книги «Казино Рояль» покупкой позолоченной печатной машинки — именно такая могла быть у супергероя, чтобы после спасения мира набивать мемуары. Ум, ирония и крутой нрав — в одном знаковом поступке.

В этом году мы получили 1022 заявки на конкурс «Технотекст 2023» и, как ни удивительно, кроме дикой усталости и суток с протоколами напролёт, они принесли нам огромное удовольствие от творчества и полёта мысли людей с очевидно золотыми клавиатурами. Многих авторов мы знаем, кого‑то когда‑то сами выпустили из песочницы и самое удивительное вот что: почти все авторы — не профессиональные писатели, а люди, которые сели и написали крутой, полезный, нужный и востребованный материал. Люди, которые поделились знаниями, умениями или просто скрасили трудовые будни сотен тысяч хабровчан классным текстом. Такой вот скрытый удивительный талант, который нашёл свою реализацию. В общем, вам бы книги писать, да IT не отпускает.

Читать далее
Всего голосов 81: ↑79 и ↓2+141
Комментарии40

Памятка наемного айтишника

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

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

В этой заметке перечислим, о чём важно помнить, работая по найму.

Читать далее
Всего голосов 217: ↑186 и ↓31+200
Комментарии492

Шорт-листы «Технотекста 2023»: достойные из достойных

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

Мы получили 1022 заявки, приняли из них 918, в шорт‑листы попало более 300 статей. Точной цифры по шорт‑листам нет неслучайно: поскольку наш естественный интеллект это вам не ChatGPT склонен уставать и ошибаться, несколько статей могут попасть в шорты, но, скорее всего, выпадут из них — так, во время подготовки этой статьи выяснилось, что из финала выбыли двое участников, скрывшие свои публикации в черновики.

Вообще, такого «Технотекста», как в этот раз, ещё не было: обычно мы сравнительно легко отсеивали участников и выбирали финалистов, разница в уровне материалов была очевидной. В этот раз номинанты сильные — и многие статьи не вышли в финал не потому, что они какие-то не такие, а потому что они объективно слабее лучших из лучших — но очевидно, что сильнее большей части статей на Хабре. Хотя участники «Технотекста» из года в год находят отличные способы добить нервную систему модераторов конкурса 😃

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

Как мы оркестрируем процессы обработки данных с помощью Apache Airflow

Время на прочтение19 мин
Количество просмотров29K
Всем привет! Меня зовут Никита Василюк, я инженер по работе с данными в департаменте данных и аналитики компании Lamoda. В нашем департаменте Airflow играет роль оркестратора процессов обработки больших данных, с его помощью мы загружаем в Hadoop данные из внешних систем, обучаем ML модели, а также запускаем проверки качества данных, расчеты рекомендательных систем, различных метрик, А/Б-тестов и многое другое.

image

В этой статье я расскажу:

  • что за зверь этот Airflow, из каких компонентов состоит и как они между собой взаимодействуют
  • про основные сущности Airflow: пайплайны, которые называются DAG, Operator и еще про несколько вещей
  • как преуспеть в разработке на Airflow
  • как мы внедрили генерацию пайплайнов и так называемое «декларативное писание пайплайнов»
  • про плюсы и минусы использования Airflow
Читать дальше →
Всего голосов 20: ↑19 и ↓1+23
Комментарии8

Рулим запуском Spark-приложений в Airflow с помощью самописного оператора

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

Airflow в Lamoda Tech играет роль оркестратора процессов обработки данных. Ежедневно с его помощью мы запускаем 1 800+ тасок на проде, примерно половина из которых являются Spark-приложениями.

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

Меня зовут Андрей Булгаков, я лид команды разработчиков Big Data в Lamoda Tech. Вместе с разработчиком Иваном Васенковым в этой статье мы поделимся историей создания Airflow-оператора для запуска Spark-приложений.

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

Apache Spark: оптимизация производительности на реальных примерах

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

Apache Spark – фреймворк для обработки больших данных, который давно уже стал одним из самых популярных и часто встречаемых во всевозможных проектах, связанных с Big Data. Он удачно сочетает в себе скорость работы и простоту выражения своих мыслей разработчиком.

Разработчик работает с данными на достаточно высоком уровне и, кажется, что нет ничего сложного в том, чтобы, например, соединить два набора данных, написав всего одну строку кода. Но только задумайтесь: что происходит в кластере при соединении двух наборов данных, которые могут и не находится целиком на каком-либо из узлов кластера? Обычно Spark со всем справляется быстро, но иногда, а особенно, если данных действительно много, необходимо все-таки понимать – что происходит уровнем ниже и использовать это знание, чтобы помочь Spark работать в полную силу.

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

Спиливаем spill-ы

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

Привет! 

Меня зовут Александр Маркачев, я 3,5 года работаю на позиции Data Engineer в билайне и люблю открывать для себя что-то новое и интересное в работе. Так случилось и с темой, которой я сегодня хочу с вами поделиться — со spill-ами.

Под катом мы поговорим о том, что такое Spill-ы в контексте Spark, и почему именно для Spark это не такая уж сильно плохая штука. Рассмотрим, из-за чего Spill-ы в принципе возникают, разберем несколько видов Spill-ов (и даже вызовем их намеренно), а затем будем решать эту проблему.

Что такое spill-ы в Spark

Вообще, Spill — это термин для обозначения процесса перемещения данных из памяти на диск, а затем снова обратно в память. По крайней мере, именно так гласит официальная трактовка. Если проще, то дело вот в чем — когда у Spark не хватает ресурсов для обработки, он перемещает данные на диск.

В процессе обработки существуют разные участки — есть Executor Memory, есть Storage Memory, и когда эти участки оба целиком заполнены, то они начинают переполняться и вызывать утечку данных. Причем в отличие от утечки в C, Java или еще где-то, в Spark это преднамеренное действие для того, чтобы ваша задача не падала. Собственно, именно поэтому при нехватке ресурсов данные и «проливаются».

Можно ещё сильнее упростить аналогию.

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

Quantization Deep Dive, или Введение в современную квантизацию

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

Привет! Меня зовут Василий Землянов, я занимаюсь разработкой ML-инфраструктуры. Несколько лет я проработал в команде, которая делает споттер — специальную маленькую нейросетевую модельку, которая живёт в умных колонках Яндекса и ждёт от пользователя слова «Алиса». Одной из моих задач в этой команде была квантизация моделей. На пользовательских устройствах мало ресурсов, и мы решили, что за счёт квантизации сможем их сэкономить — так в итоге и вышло.

Потом я перешёл в команду YandexGPT. Вместо маленьких моделей я стал работать с очень крупными. Мне стало интересно, как устроена квантизация больших языковых моделей (LLM). Ещё меня очень впечатляли истории, где люди берут гигантские нейросети, квантизируют в 4 бита и умудряются запускать их на ноутбуках. Я решил разобраться, как это делается, и собрал материал на доклад для коллег и друзей. А потом пришла мысль поделиться знаниями с более широкой аудиторией, оформив их в статью. Так я и оказался на Хабре :)

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

Читать далее
Всего голосов 66: ↑65 и ↓1+81
Комментарии13

Как перезапускать PySpark-приложение и зачем это может понадобиться

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

Сегодня все крупные компании сохраняют и обрабатывают большие объёмы информации, причём стремятся делать это максимально эффективным для бизнеса способом. Меня зовут Мазаев Роман и я работаю в проекте загрузки данных на платформу SberData. Мы используем PySpark, который позволяет очень быстро распределённо обрабатывать данные в оперативной памяти узлов нашего кластера на базе Hadoop. Я поделюсь способом, с помощью которого можно снизить потребление ресурсов кластера за счёт перезапуска PySpark-приложений между выполняемыми Spark-задачами, и расскажу, как это делать правильно.

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

Мониторинг Apache Airflow. Оценка «прожорливости» тасок

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

Всем привет! Случались ли у вас ситуации, когда количество DAG’ов в вашем Airflow переваливает за 800 и увеличивается на 10-20 DAG’ов в неделю? Согласен, звучит страшно, чувствуешь себя тем героем из Subway Surfers… А теперь представьте, что эта платформа является единой точкой входа для всех аналитиков из различных команд и DAG’и пишут более 50 различных специалистов. Подкосились ноги, холодный пот и желание уйти из IT?

Не спешите паниковать, под катом я расскажу о том, как контролировать потребление ресурсов DAG’ов Airflow для предупреждения неоптимально написанных DAG’ов и борьбы с ними.

Меня зовут Давид Хоперия, я Data Engineer в департаменте данных Ozon.Fintech и моим основным инструментом является Apache Airflow, поэтому настало время углубиться в детали его работы.

Поехали
Всего голосов 16: ↑16 и ↓0+16
Комментарии10

«Робокоп» — рыцарь нашего времени

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


Порой, когда смотришь на путь создания того или иного художественного произведения, просто дух захватывает от понимания того, сколько звёзд должно было сойтись, чтобы оно смогло увидеть свет в том виде, в каком мы его знаем и ценим. А если речь идёт о большом и претендующем на культовый статус боевике, то там целый парад планет должен выстроиться, не иначе. Поэтому меня не перестают удивлять истории создания кинолент, на которых мы с вами выросли. Об одной из них, а именно о «Робокопе» 1987-го года за авторством Пола Верховена, мы сегодня и поговорим.
Читать дальше →
Всего голосов 56: ↑54 и ↓2+71
Комментарии24

«Подземные камни» А/Б-тестирования в e-commerce

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

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

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

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

Самое понятное объяснение Специальной теории относительности

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

Специальная теория относительности - удивительная теория, которая опровергла многие представления о мире, в которых человечество не сомневалось всю историю своего существования.

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

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

Для иллюстраций я написал интерактивный визуализатор СТО, работающий в браузере. Ссылка на него и исходники проекта в конце статьи.

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

Смысл жизни с точки зрения программиста-буддиста

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

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

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

Читать далее
Всего голосов 62: ↑53 и ↓9+51
Комментарии130

Как выжать максимум из Confluence. Глава первая

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

Привет, Хабр! Я Ульяна, старший аналитик в направлении продуктового и системного анализа в отделе Tinkoff Mobile Core. Наш отдел разрабатывает общие технические решения — библиотеки, которые используются в мобильных приложениях экосистемы Тинькофф.

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

Документацию мы ведем в Confluence — и обычно, когда я рассказываю про Confluence, у многих он вызывает, мягко говоря, неприятные ассоциации. Миллион разделов, неудобная навигация, портянки бесконечного текста и многое другое, что отбивает желание даже открывать любую wiki. Но я спешу вас обрадовать — все может быть совсем иначе!

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

Читать далее
Всего голосов 19: ↑17 и ↓2+17
Комментарии11
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Россия
Работает в
Дата рождения
Зарегистрирован
Активность