Стратификация. Как разбиение выборки повышает чувствительность A/B теста

Всем привет! На связи команда ad-hoc аналитики X5 Tech.
Сегодня подробно обсудим применение стратификации для повышения чувствительности оценки AB экспериментов.

Высокоуровневый язык программирования

Всем привет! На связи команда ad-hoc аналитики X5 Tech.
Сегодня подробно обсудим применение стратификации для повышения чувствительности оценки AB экспериментов.

Перед Новым годом мы организовали тайного санту. Для упрощения процесса задумались о боте. Да, мы нашли на просторах гитхаба различные варианты, но решили не лишать себя праздничного веселья от создания бота на коленке. Меня зовут Вильданов Ринат, я python-разработчик в Технократии, и я расскажу, что мы наделали. Возможно, описание нашего пути поможет и вам.

Заметки по языку R - это серия статей, в которых я собираю наиболее интересные публикации канала R4marketing из рубрики "#заметки_по_R".
В прошлый раз мы говорили о нетипичных визуализациях, сегодняшняя подборка состоит из описания приёмов, которые свойственны и горячо любимы пользователям Python, но большинство пользователей R о них не знают.
Для пользователей Python эта статья будет полезна тем, что они найдут реализацию своих любимых приёмов в другом языке, для пользователей R статья будет полезна тем, что они откроют для себя изящные приёмы Python, и смогут перенести их в свои R проекты.

Наше семейство моделей ruGPT-3 уже нашло множество применений у сообщества: кто-то генерирует гороскопы, кто-то — факты о лягушках, статьи нейроуголовного кодекса, нейроновости и прочее. Модели накопили в себе массу знаний о нашем мире и способны подстроиться практически под любую задачу. Тем не менее, в данный момент подобная подгонка (fine-tuning) часто требует значительных вычислительных затрат, что не всегда позволяет использовать достаточно большие модели. В этом посте мы предлагаем сообществу новый инструмент для того, чтобы дообучать ruGPT-3 под свои нужды и делиться своими результатами с другими.

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

Как именно мы находим выход из лабиринта? Как быстрее всего проехать из точки А в ближайшую пиццерию? Можем ли мы провести игрового персонажа к выходу так, чтобы он не уперся в стену?
Поиск пути – типичная задача программирования, решаемая в самых разных ситуациях. Она известна в основном из навигационных задач и разработки игр. Но, изучив ключевые алгоритмы поиска пути, вы узнаете, что они применимы к более абстрактным задачам оптимизации и построения последовательностей.
В этом руководстве рассмотрен простейший алгоритм поиска пути, основанный на алгоритме Дейкстры. Этот алгоритм также известен под названием поиск по первому наилучшему совпадению, ключевая логика у него общая со многими другими алгоритмами, например, A*, заливка методом наводнения и диаграммы Вороного.
Здесь мы рассмотрим практическое применение этого алгоритма. Вам понадобятся базовые знания программирования и языка Python.

Python – один из самых популярных языков для веб-автоматизации с Selenium, поскольку в нем есть упрощенный синтаксис, который позволяет выполнять больше задач за меньшее количество строк кода! Таким образом, Python и Selenium создают идеальную комбинацию для автоматизированного тестирования в вебе.
Начнем с того, что Selenium – это открытый фреймворк, который в основном используется для автоматизации взаимодействия с веб-элементами в AUT (Application Under Test). Наряду с Python, Selenium также поддерживает Java, C#, JavaScript, Ruby и PHP. Однако, по своему опыту скажу, что Python – лучший вариант для веб-автоматизации в комбинации с Selenium.

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

Не секрет, что задача по поиску человека на видео или фото всегда была актуальна. Но что если один инструмент объединяет в себе, помимо просто детектирования человека, еще и поиск полной маски человеческого лица, расположение рук и пальцев, да и вообще полностью позу человека? Именно такой open-source инструмент создала всем известная компания google.
Mediapipe уже довольно активно, а главное, эффективно используется для детектирования многочисленных лиц на фото, для обучения моделей распознавания эмоций, для качественного выполнения упражнений при занятиях спортом, для преобразования языка жестов в письменный язык и много другое!
Я же хочу поделиться с вами своим опытом изучения инструмента mediapipe. И для начала покажу вывод, где вы сможете наблюдать работу трех моделей: нахождения рук, нахождения точек лица, определения позы человека и, в конце концов, все вместе.

С недавнего времени в Starlette прекращена поддержка GraphQL. Так что если вы, как и мы, занимались разработкой сервиса на FastAPI, то обновления до последней версии Starlette вас неприятно удивили.
Причины, по которым это случилось, не столь важны, остается просто принять произошедшее как данность. Но переходить с GraphQL обратно на REST нам не хотелось, стандарт подходил под наши задачи, а поэтому надо было найти альтернативу


Приблизительно через 3 недели истекает срок поддержки Python 3.6. Больше никаких исправлений багов и безопасности. При этом сегодня 15% пакетов, загруженных с PyPI, предназначены для Python 3.6. Подробности под катом.

Контрольная работа №2 Предобработка данных и классификация
По машинному обучению 3ИСиП-19-1
Подробное решение в целях примера.
Цель классификации состоит в том, чтобы предсказать, подпишется ли клиент на срочный депозит (переменная y).
Задание
Выполнить предобработку данных
Выделить наиболее влияющие признаки на подпишется ли клиент на срочный депозит (в том числе показать на диаграмме) и в дальнейшем использовать только их.
Необходимо разделить данные на обучающую и тестовую выборки в соотношении 80%, 20%.
Необходимо выбрать модель классификации по подпишется ли клиент на срочный депозит, обосновать выбор модели. Необходимо обучить модель на обучающей выборке и протестировать. Необходимо предоставить показатели точности работы выбранной модели и всех рассматриваемых.

Reinforcement Learning – одно из самых развивающихся и перспективных направлений машинного обучения. С помощью него можно попробовать разные действия исследуемого агента, сделать вывод об их успешности, накопить полученные знания и использовать их при будущем выборе. Такой подход используется, например, в переговорных ботах, где ведутся переговоры с клиентом, и есть цель – совершить самую выгодную сделку среди всех возможных, а также, например, такой алгоритм заложен в беспилотных автомобилях.
Reinforcement Learning также применяется в играх. Pac-Man это игра, в которой главный герой должен съесть как можно большее количество бриллиантов в лабиринте, при этом не попасться на своем пути монстрам, которые гоняются за ним, или не врезаться в стенку.

Сегодня, пока начинается наш курс по Fullstack-разработке на Python, рассказываем о стартапе Hacker.gifts, который отвечает на вопрос в заголовке. Автор оригинальной статьи приобрёл головоломку для себя, чтобы помочь читателям разобраться, понравиться ли она кому-то ещё. Под катом вы найдёте решение, общие впечатления и ссылку на задачу посложнее.
Сложение как невозможное для взлома шифрование, но одновременно очень лёгкое для понятия. Для представления использовался Python.


За время работы автору довелось использовать многие инструменты анализа, включая Excel, R и Python. Попробовав PostgreSQL и TimescaleDB, автор поняла, насколько простыми могут быть задачи очистки. Делимся подробностями сравнения PostgreSQL и Python из блога TimescaleDB, пока у нас начинается курс по аналитике данных.
