☄️ Ray - это унифицированный фреймворк для масштабирования приложений ИИ и Python.
Ray состоит из ядра распределенной среды выполнения и набора библиотек ИИ.
На картинке пример кода, для динамического запуска очереди из 𝗡 заданий на 𝗞 GPU.
▪Github
▪Ray
@data_analysis_ml
🖥 Skrub
Часто записи в одной таблице могут не соттветсвовать запясям в другой таблице. Например, в одной таблице может быть "Yemen
", а в другой - "Yemen, Rep"
.
Функция 𝐟𝐮𝐳𝐳𝐲_𝐣𝐨𝐢𝐧() в skrub позволяет объединить эти таблицы с учетом различных вариаций полей.pip install git+https://github.com/skrub-data/skrub.git
▪Github
@data_analysis_ml
Хотите выйти на новый уровень в анализе данных?
Уже используете А/В-тесты, но боитесь, что делаете это неправильно?
karpovꓸcourses сделали Симулятор A/B-тестов, где вы сможете освоить весь пайплайн проведения экспериментов, научитесь не допускать типичных ошибок и сможете избежать потери денег из-за неправильных выводов. Вы также узнаете, как определять, нужно ли вам вообще проводить A/B-тесты в вашем конкретном случае.
Если вы только знакомитесь с тестами, вы сможете работать с Google Sheets на уже готовой инфраструктуре, а если хотите узнать все технические детали А/В-тестирования и готовы писать код на питоне — у karpovꓸcourses есть продвинутая версия.
Привнесите культуру правильных А/B-тестов в ваши проекты
[Начать учиться]
P.S. По промокоду DAMLOCTOBER на курс действует скидка 5% до 31 октября
Реклама. ООО "Карпов Курсы". Erid: LjN8KaL7o
💥Прокачайтесь в машинном обучении на бесплатных Тренировках по ML от Яндекса
ML — новое направление Тренировок от Яндекса, которое посвящено классическому машинному обучению. Курс разработан совместно со Школой анализа данных и подойдёт для выпускников технических вузов и начинающих ML-специалистов.
Тренировки пройдут с 30 октября по 29 ноября.
Тренировки по ML — это отличная возможность прокачаться в теме, закрепить знания и подготовиться к отбору в IT-компанию. Здесь вас ждут лекции от экспертов Яндекса, домашние задания и еженедельные онлайн-разборы.
🏆 Участники, которые проявят себя лучше других, получат фаст-трек в Яндекс, а те, кто пройдёт больше половины курса — сертификат о прохождении, который украсит портфолио.
Как проходят Тренировки по ML
1️⃣ Регистрируетесь: участвовать могут все желающие бесплатно и без конкурсного отбора. Старт Тренировок 30 октября.
2️⃣ Смотрите лекции и самостоятельно решаете задачи, которые определяют ваше место в рейтинге участников
3️⃣ Проверяете себя на еженедельных онлайн-разборах
4️⃣ Получаете награды от Яндекса
Я в деле!
Если вы уже чувствуете себя уверенно в направлении ML, то скорее подавайте заявку на оплачиваемую стажировку.
🔥 Бесплатный вебинар: “Решаем тестовое задание на junior-аналитика в Банк Открытие”
Интересуетесь аналитикой данных? Хотите больше практиковаться на реальных задачах и кейсах?
Приходите на наш бесплатный вебинар, где мы в прямом эфире будем вместе решать настоящее тестовое задание на junior-аналитика в Банк Открытие.
📅 Дата: 25 октября
⏰ Время: 19:00 по Мск
Что предстоит сделать на вебинаре:
* Решить 4 задания по SQL: посчитаем метрику MoM
* Проанализировать ОТП-коды в разрезе категорий и времени
* Проанализировать активность клиентов с помощью Pandas
* Предложить 3 метрики первого уровня для интернет-банка
Мы подробно будем разбирать каждый шаг и будем много говорить о SQL, Python, продуктовых метриках 😉
А также каждого участника вебинара будут ждать несколько подарков, подборка лайфхаков и разбор самых частых ошибок 🤩
🔗 Регистрация на вебинар
Реклама. ООО "Айти Резюме". Erid: LjN8KSEf7
📑 𝐦𝐥𝐟𝐥𝐨𝐰.𝐚𝐮𝐭𝐨𝐥𝐨𝐠()
Сохранение параметров, метрик во время обучения позволяет воспроизводить эксперименты и выбирать наиболее эффективную модель. Однако написание множества записей в логах может быть обременительным.
Для автоматического логирования добавьте 𝐦𝐥𝐟𝐥𝐨𝐰.𝐚𝐮𝐭𝐨𝐥𝐨𝐠() перед вашим кодом обучения модели.
▪ Github
@data_analysis_ml
🔥 Дайджест полезных материалов из мира Машинного обучения за неделю
Почитать:
— Исследование рыночной корзины на основе данных розничной торговли в Стамбуле
— Классификация текстов в spaCy: пошаговая инструкция
— Как мы запустили автобиддер для управления рекламными кампаниями в Ozon?
— Приглашаем на Ozon Tech Community ML&DS Meetup
— Правда ли то, что национальный корпус русского языка «приватизирован» Яндексом?
— Первое слово из нераспечатанного Геркуланумского папируса обнаружено 21-летним студентом факультета информатики
— Построение ML модели для оценки текста языкового экзамена
— Разметка данных при помощи GPT-4
— Антон Мальцев про удобные NPU, Computer Vision для коботов и восстание неуклюжих машин
— От A/B-тестирования к Causal Inference в оффлайн ритейле
— What was that commit? Searching GitHub with OpenAI embeddings
— Simplifying the Fundamentals of Machine Learning
— Data Cleaning with Pandas
— Using machine learning to predict the selling price of a property
— Engineering Practice for Real-time Feature Store in Decision-Making Machine Learning
— What are biases in Machine Learning?
— Hacktoberfest Machine Learning Projects for JS/TS Developers 🎃
— Build a Text Summarization app using Reflex (Pure Python)
— Diving Deep into AI with open-appsec: A Personal Journey of Discovery and Growth
— AI-Powered Cybersecurity: The Future of Protection
Посмотреть:
🌐 Building a Data-Driven Workforce - Dominic Bohan (⏱ 32:52)
🌐 Enabling AI Transformation: MLOps Infrastructure, AI Command Centre & Data Science in Telecom (⏱ 33:08)
🌐 Пишем телеграм бота для скачивания #yotube видео (⏱ 20:41)
Хорошего дня!
@data_analysis_ml
🌳Деревья решений в pySpark: от семечка до параметрической оптимизации случайного леса
Деревья решений представляют собой семейство алгоритмов, которые естественным образом могут обрабатывать как категориальные, так и числовые функции.
Главные преимущества алгоритма: устойчивость к выбросам в данных, возможность использования данных разных типов и в разных масштабах без предварительной обработки или нормализации, и главное — ДОСТУПНОСТЬ ДЛЯ ПОНИМАНИЯ.
На самом деле используются одни и те же рассуждения, воплощенные в деревьях решений, неявно в повседневной жизни. Например, серия решений «да/нет», которые приводят к прогнозу будет ли тренировка на улице или нет.
Модель дерева решений сама “придумывает” эти развилки. Чем больше развилок, тем точнее модель будет работать на тренировочных данных, но на тестовых значениях она начнет чаще ошибаться. Необходим некоторый баланс, чтобы избежать этого явления, известного как переобучение.
## Случайные леса решений
Деревья решений обобщаются в более мощный алгоритм, называемый случайные леса. Случайные леса объединяют множество деревьев решений, чтобы снизить риск
переоснащения и обучения деревьев решений отдельно. Объединение прогнозов уменьшает дисперсию прогнозов, делает результирующую модель более обобщенной и повышает производительность на тестовых данных.
Подготовка данных
📌 Читать
@data_analysis_ml
🖥 Шпаргалка по различным базам данных в облачных сервисах и соответствующим им вариантам с открытым исходным кодом .
Выбор подходящей базы данных для своего проекта - сложная задача. Существует множество видов баз данных, каждая из которых подходит для разных случаев использования.
Данная шпаргалка поможет определить, какой сервис соответствует потребностям вашего проекта, и избежать возможных "подводных камней
".
@data_analysis_ml
Графовые сверточные сети: введение в GNN
Графовые нейронные сети (GNN) представляют собой одну из наиболее интересных и быстро развивающихся архитектур в области глубокого обучения.
Будучи моделями глубокого обучения, предназначенными для обработки данных, структурированных в виде графов, GNN обладают универсальностью и огромными обучающими возможностями.
Среди различных типов GNN наиболее распространенной и широко применяемой моделью стали графовые сверточные сети (GCN).
Инновационность GCN обусловлена их способностью использовать для прогнозирования как особенности узла, так и его локальность, что обеспечивает эффективный способ обработки данных, структурированных в виде графов.
В этой статье будет подробно описан механизм работы слоя GCN с объяснением его внутреннего устройства.
Кроме того, вы узнаете, как практически применять этот слой для решения задач классификации узлов с использованием в качестве инструмента PyTorch Geometric.
PyTorch Geometric (PyG) — это специализированное расширение PyTorch, созданное для разработки и реализации GNN. Эта продвинутая и в то же время удобная в использовании библиотека предоставляет полный набор инструментов для машинного обучения на основе графов.
📌 Читать дальше
📌 PyTorch Geometric
@data_analysis_ml
🖥 Если вы работаете с блокнотами jupyter для работы с Python и Data Science, попробуйте эти волшебные команды, которые сэкономят вам массу времени:🧵
1. Jupyter AI: выберите любую модель и пообщайтесь с ней прямо из блокнота Jupyter.
Используйте волшебную команду "%%ai", чтобы указать модель и пообщаться с ней, используя промыт на естественном языке: https://github.com/jupyterlab/jupyter-ai
2. %%latex:
Это позволяет отображать LaTeX-код в Jupyter Notebook. Картинка 2.
3. %%sql
С помощью команд %sql(line magic) и %%sql(cell magic)
можно выполнить любой SQL-запрос. Картинка 3.
4. %run
Запуск Python-файла в блокноте становится простым.
Если у вас есть python-файл, например, "demo .py", и вы хотите запустить его в блокноте, то это можно сделать с помощью следующей команды%run demo .py
5. %%writefile
Пример:%%writefile app .py
В результате будет создан новый файл "app .py" со всем содержимым, присутствующим в ячейке.
6. %history -n
Все мы случайно удаляем команды и их результаты в блокноте.
Для отображения всех предыдущих команд можно воспользоваться этой волшебной командой-n
поможет получить последние n команд
@data_analysis_ml
Чтобы ограничить внешний доступ и модификацию переменной за пределами класса, сделайте ее приватной, используя двойное подчеркивание.
Это позволяет свести к минимуму вероятность непреднамеренных изменений.
#Python
@data_analysis_ml
🖥 Feature engineering и кластерный анализ клиентов на PySpark.
BigData плотно входит в нашу жизнь. Датасеты растут и постоянно изменяются, что усложняет задачу кластеризации клиентов. Обычно для задач кластеризации используется библиотека Sklearn
, но с большим объёмом данных её использовать не получиться. Spark позволяет реализовать параллельные вычисления на кластерах и имеет в составе своего фреймворка библиотеку машинного обучения MLlib. В случае больших данных, когда привычные инструменты отказываются работать с такими объёмами, PySpark приходит на выручку.
При этом, прежде чем запустить алгоритмы машинного обучения на вашем датасете, необходимо подготовить данные и провести feature engineering, а это достаточно трудозатратная задача, но в то же время необходимая, так как от этого этапа во многом зависит качество конечного результата. Данный этап также необходимо делать на PySpark, опять-таки из-за объёма данных.
Перед нами стояла задача анализа массива данных заёмщиков физических лиц – злостных неплательщиков кредитов, дела по которым уже направлены в суд. Этот массив необходимо было разбить на блоки (кластеры). Цель кластерного анализа – понять, какие группы по общим признакам можно выделить, и в дальнейшем разработать для каждой группы индивидуальную тактику взыскания, и, возможно, найти пути улучшения методологии скоринга.
1. Подготовка данных
1.1. Идеи
Подготовка данных – этап, предшествующий анализу и требующий хорошего понимания предметной области. Предобработка осуществляется если не руками самого эксперта в этой области, то в очень тесном с ним сотрудничестве. Останавливаться на предварительной подготовке данных долго не будем, поскольку общих рекомендаций здесь не выработать, только кратко отметим основные моменты, которые мы произвели с нашим датасетом и которые отличаются от классической борьбы с отсутствующими значениями.
Выбирали признаки, которые:
• непосредственно характеризуют именно самого заёмщика, а не кредитный продукт, не договор и прочее;
• имеют значение до выхода на просрочку (то есть, например, данные по процедурам взыскания в анализ не берём, так как хотим разобраться в причинах, которые к этому привели).
Убрали признаки:
• дублирующие друг друга по существу (например, остаток основного долга (ОД) в валюте и остаток ОД в рублях – достаточно оставить только один показатель);
• по которым слишком много вариантов (например, 100-200 значений для признака «должность на месте работы»).
В результате предобработки датасета количество исходных данных существенно сократилось. В исходном датасете количество признаков достигало 191, после чистки на основе описанных выше идей их осталось 43. Среди них:
• признаки, связанные с первым кредитным договором: вид кредитования, срок кредита, признак реструктуризации, дата выдачи кредита, ставка, валюта и т.д.;
• числовые признаки (итого по всем договорам): сумма обеспечения, сумма общей задолженности в рублях, сумма погашений по основному долгу;
• признаки — индивидуальные характеристики заёмщика: пол, возраст, резидентство, признак vip, наличие заграничного паспорта, категория надёжности, данные, связанные с рабочей деятельности, данные, связанные с собственностью и т.д.
1.2 Реализация на PySpark
После импорта необходимых библиотеки и создания сессии Spark, входной точки каждого PySpark приложения, загружаем исходные данные и подготовленный совместно с экспертом список признаков в объекты Spark DataFrame. DataFrame – одна из двух абстракций массива данных в Spark (вторая абстракция — RDD), которая предоставляет более высокоуровневое API (по сравнению с RDD). Метод загрузки данных зависит от формата файла (в рассматриваемом примере CSV, но может быть JSON, ORC, Parquet и др.).
Далее на основе списка признаков из исходного датасета отбираем нужные колонки. Затем группируем полученный массив данных по идентификатору заёмщика, при этом для колонок с числовыми значениями данные суммируем, а для колонок с категориальными значениями оставляем только первое значение.
📌 Читать
@data_analysis_ml
Большие датафреймы могут потреблять значительные объемы памяти. Если обрабатывать #данные небольшими фрагментами, то можно избежать нехватки памяти и получить доступ к данным быстрее.
В приведенном примере кода используется chunksize=100000
, что работает примерно в 5495 раз быстрее, чем без использования chunksize
.
#tips #datascience #junior
@data_analysis_ml
📊 Pmdarima
Для достижения функциональности, аналогичной auto.arima в R, в рамках scikit-learn-подобного интерфейса, используйте Pmdarima.
Pmdarima - это статистическая библиотека, для анализа временных рядов на Python.
#Python #DataScience
• Github
@data_analysis_ml
🏆 Yandex Cup 2023 — открытый чемпионат для настоящих творцов
Разработчики — художники нового мира. Они создают смыслы, правила и законы, манифестируют идеи, творят миры и целые вселенные. И, если их предшественники делали это, используя слова, краски и звуки, то современные творцы создают новую реальность с помощью программного кода.
Искусство писать код
Тема чемпионата в этом году «Решаем искусство». Участников ждут нестандартные задачи на стыке IT и творчества, а лучшие встретятся лицом к лицу в финале, чтобы оживить арт-инсталляцию и разделить между собой 8 500 000 рублей.
Показать своё мастерство можно в 6 направлениях:
🔸 Фронтенд
🔸 Бэкенд
🔸 Мобильная разработка
🔸 Аналитика
🔸 Алгоритмы
🔸 Машинное обучение
Финал и церемония награждения пройдут офлайн в офисе Яндекса в Казахстане. Яндекс предоставит финалистам проезд и проживание в Алматы.
Регистрация открыта до 29 октября включительно:
👉 Участвую!
#Yandex_Cup23
🌐 ИИ с открытым исходным кодом захватывает мир.
Бесплатная книга с кодом, которая поможет вам идти в ногу со всем происходящим в мире AI:
State of Open Source AI Book - 2023 Edition
В книге рассматриваются следующие темы:
- ИИ Модели
- Файнтюниг
- Оценка моделей
- Векторные базы данных
- Инструментальные средства разработки
- Механизмы MLOps
и многое другое
И все это бесплатно.
📚 GitHub
@data_analysis_ml
При просмотре кода на #GitHub навигация по файлам может быть неудобной. Попробуйте редактор GitHub.deb с интерфейсом, похожим на VSCode, для удобного просмотра и работы с проектами.
Этот редактор также отлично подходит для быстрых коммитов.
@data_analysis_ml
🎓 Open Source AI Projects and Tools to Try in 2023
Существует множество инструментов искусственного интеллекта, и многие из них имеют открытый исходный код и бесплатны для использования.
Чтобы помочь вам узнать о некоторых полезных из них, представляем вам это подробное руководство для дата саентистов.
Он рассказывает о таких инструментах, как Tensorflow, Hugging Face Transformers, Fauxpilot
и других.
https://www.freecodecamp.org/news/open-source-ai/
@data_analysis_ml
⚡️ Визуализация стохастической модели пробоя диэлектрика (Ref: Fractal Dimension of Dielectric Breakdown
🖥 Код
#python, #numpy #matplotlib
@data_analysis_ml
💸 Прогнозированию биткоина при помощи VAR (векторной авторегрессии), XGBoost и Facebook Prophet.
В этом ролике разобраны 3 метода прогнозирования: VAR, XGBoost, FB Prophet.
▪ Видео
▪ Код из видео
@data_analysis_ml
PlotAI 🎨🤖
PlotAI - ии инструмент для генерации графиков на Matplotlib.
— пользователь подает на вход датафрейм;
— PlotAI создаёт промт для LLM, который содержит первые пять записей и генерирует код Python;
— возвращенный код Python выполняется, и отображается график.pip install plotai
▪Github
@data_analysis_ml
📒 GigaChat нового поколения.
Разработчики @gigachat_bot изменили подход к обучению модели, а потому практически все умения модели были улучшены. В частности, речь идет о сокращении текстов, ответов на вопросы и генерации идей.
Появился и бот GigaChat в социальной сети «ВКонтакте» — после активации, его можно использовать для самых разных целей: от создания текстов до генерации изображений (за счет интеграции с Kandinsky).
Число уникальных пользователей GigaChat достигло 1 млн.
• Попробовать
@data_analysis_ml
🖥 Build Web Apps in Jupyter Notebook
Если вы хотите создать веб-приложение в вашем #JupyterNotebook, попробуйте Mercury.
🖥 Github
@data_analysis_ml
🖥 GitUp
В командах Git иногда можно запутаться (путаница между "git reset" и "git revert" может привести к непредвиденным последствиям). Кроме того, исправление ошибок в Git может быть сложным.
GitUp представляет удобную модель взаимодействия с #Git, которая позволяет работать с Git быстро и безопасно.
GitUp предоставляет:
🔹 Быстрая отмена/повтор практически всех операций
🔹 Мгновенный поиск по всему репо, включая diff-содержимое
🔹 Интерактивный граф репо для редактирования репозитория.
🔹 Удобный пользовательский интерфейс, который работает быстрее, чем командная строка.
• Github
@data_analysis_ml
🔥 Дайджест полезных материалов из мира Data Science за неделю
Почитать:
— Как «воспитать ламу» и ускорить ML-эксперименты
— Airflow vs NiFi: исследуем оркестратор для формирования витрин данных
— Сравнение методов веб-скрепинга для данных Википедии: Beautiful Soup против WikipediaAPI
— Применение нейросетевых подходов для формирования признаков в моделях
— ipywidgets: создаем графические приложения на базе Jupyter
— Как использовать GPU для ускорения аналитической обработки данных
— Введение в библиотеку Diffusers и диффузионные модели
— 70 % программистов пользуются ИИ-ассистентами. Скоро код будут писать алгоритмы?
— Проблематика Open Source: профиль риска, лицензирование, как выбирать продукт и подход к разработке решений
— LLaMA 2, RWKV, Santacoder и другие LLM на iOS
— MLOps на примере прогноза движений акций с помощью MLRun
— Using ggplot2 for Visualization in R
— ИИ вместо астролога или как я создавала астробота Катю
— Learning to Decode the Surface Code with a Recurrent, Transformer-Based Neural Network
— Milvus Adventures | October 13, 2023
— Data Science Roadmap
— Exploratory Data Analysis with Data Visualization Techniques
— Data Visualization
— Exploratory Data Analysis using Data Visualization Techniques.
— Exploratory Data Analysis using Data Visualization Techniques
— Nobel Laureates’ Countries, or Creating a Word Cloud with JS
— Data Modelling
— Exploratory Data Analysis using Data Visualization Techniques
— Exploratory Data Analysis using Data Visualization Techniques
— Stream Processing Engines and Streaming Databases: Design, Use Cases, and the Future
Посмотреть:
🌐 Chatgpt, Bard , Claude, Theb - используй API лучших нейросетей бесплатно и без ВПН на Python. (⏱ 05:23)
🌐 NLP практика. Определяем тональность текста при помощи NLTK и DL (⏱ 19:37)
🌐 Django шаблонизация и маршрутизация (⏱ 09:11)
🌐 Задача, которая очень часто встречается на собеседованиях #python (⏱ 00:59)
🌐 Решение непростой задачи с Leetcode, часто всплывает на собеседования #pythontutorial (⏱ 00:59)
🌐 Хитрая задача с собеседования #Python (⏱ 00:59)
🌐 Lightning Interview "The Storied History of Video Games and AI" (⏱ 46:35)
🌐 Accelerate your AI/ML Initiatives and Deliver Business Value Quickly (⏱ 33:08)
🌐 Leveraging Generative AI in Education - A M Aditya (⏱ 31:24)
🌐 Google’s New AI Watched 2,500 Videos! But Why? (⏱
Хорошего дня!
@data_analysis_ml
📊 Perspective
Perspective - это инструмент интерактивной аналитики и визуализации данных, который особенно хорошо подходит для работы с большими и/или потоковыми наборами данных. С его помощью можно создавать настраиваемые отчеты, информационные панели, блокноты и приложения, а затем развертывать их отдельно в браузере или совместно с Python и/или Jupyterlab.
• Github
• Проект
@data_analysis_ml
Cleanlab 🚀
Всего за 3 строки кода эта библиотека с открытым исходным кодом может очистить любой датасет!
Вы можете:
- удалять выбросы
- находить ошибки в данных
- выявлять дубликаты
- проводить активное обучение
- строить распределения
- И многое другое ...
Cleanlab разработана специалистами Массачусетского технологического института и работает на основе нового алгоритма под названием Confident Learning!
На картинке 2 приведено упрощенное объяснение этого алгоритма!
Библиотека работает с:
- Любыми данными (текст, изображения, таблицы, аудио и т.д.)
- Любые задачи ML (классификация,, распознавание, работа с LLM и многое другое ...)
• Github
@data_analysis_ml
✅ A/B тестирование: как сделать правильный выбор?
А/В-тестирование – это метод, который используется для сравнения двух версий переменной, например, дизайна сайта при маркетинговом исследовании с целью выявления лучшей версии. Это критически важный метод исследования в Data Science
, который часто используется различными организациями при принятии решений с целью оптимизации существующего продукта и максимизации прибыли.
Представлю, что компания, продающая мебель, хочет увеличить число кликов по баннеру «Мебель на заказ». Они значительно изменили дизайн сайта для этой цели. К сожалению, не существует способов предсказать, как именно изменится поведение людей на обновленном сайте по сравнению со старой версией. А/В-тестирование может помочь, например, измерить разницу в конверсии между двумя версиями сайта и сказать, является ли эта разница статистически значимой.
Нулевая гипотеза в рамках А/В-тестирования – предположение о том, что разницы между версиями сайта А и В в действительности нет, а все наблюдаемые различия обусловлены случайностью. Моя задача в ходе А/В-тестирования – опровергнуть нулевую гипотезу. Альтернативная гипотеза в рамках А/В-тестирования утверждает, что версии сайта А и В различны с точки зрения поведения пользователей.
Уровень значимости – это порог вероятности для определения того, являются ли результаты эксперимента статистически значимыми. Чаще всего уровень значимости устанавливается равным 0,05. Это значит, что моё утверждение о значимости результата будет справедливо на 95%
. Чем ниже выбранный уровень значимости, тем ниже риск того, что будет обнаружена разница, вызванная случайностью.
P—value – это вероятность наблюдения данного результата при условии, что нулевая гипотеза верна. Если p-value меньше, чем уровень значимости (α)
, то отвергается нулевая гипотеза в пользу альтернативной (то есть результаты являются статистически значимыми). Например, при уровне значимости 0,05 p-value
должна быть меньше 0,05
для признания результатов эксперимента статистически значимыми.
Доверительный интервал – интервал значений, в котором, с вероятностью (1- α)
, лежит истинное значение переменной. Доверительный интервал является оценкой возможных значений переменной в зависимости от её стандартного отклонения.
Статистическая мощность – вероятность отклонения нулевой гипотезы в случае, если альтернативная гипотеза верна. Обычно статистическая мощность теста устанавливается равной 0,8.
Это значение используется для вычисления размера выборки, необходимой для подтверждения гипотезы с необходимой силой эффекта.
Организация эксперимента
Для проведения А/В-теста требуется разделить всех пользователей на две группы: одна группа будет видеть старый дизайн сайта, а другая – новый. Пользователи распределяются между группами случайным образом. Как правило, группу, которой показывают новый дизайн сайта (В), называют тестовой, а группу, которой показывают старый дизайн (А) – контрольной.
Целевая метрика – CTR, то есть количество кликов на баннер, делённое на количество показов. Буду сравнивать среднее значение метрики CTR для контрольной и тестовой групп. Предположу, что в контрольной группе среднее значение метрики составляет 12%, а в тестовой – 14%.
Если среднее значение метрики в тестовой группе выше, чем в контрольной, то означает ли это, что дизайн сайта В лучше дизайна сайта А? Ответ: нет. Необходимо показать, что результаты А/В-теста статистически значимы. Это означает, что различие в версиях наблюдается не случайно и не обусловлено какой-либо ошибкой. Проверить это можно с помощью статистических тестов.
Не буду заниматься сбором данных в рамках данной публикации. Буду анализировать данные, взятые из датасета с Kaggle. Скачать его можно здесь.
📌 Читать дальше
@data_analysis_ml
✅ NLP на практике. Определяем тональность текста при помощи NLTK и DL.
https://www.youtube.com/watch?v=w2y01D2tLt4
@data_analysis_ml