TGStat
TGStat
Type to search
Advanced channel search
  • flag English
    Site language
    flag Russian flag English flag Uzbek
  • Sign In
  • Catalog
    Channels and groups catalog Regional compilations Thematic compilations Платные каналы Search for channels
    Add a channel/group
  • Ratings
    Rating of channels Rating of groups Posts rating
    Ratings of brands and people
  • Analytics
  • Search by posts
  • Telegram monitoring
  • Promotion
    Advertising through Yandex Business Advertising in channels through TGStat Agency Advertising on TGStat.ru website
Dmatryusофрения

9 Oct, 10:27

Open in Telegram Share Report

Forward from: HypEx
Мы долго к этому шли… 👀

🚀 Hypex 2.0.0a1 — первая альфа второй мажорной версии!
Главное событие релиза: Hypex научился работать на Apache Spark. A/A, A/B, тесты однородности и Matching теперь можно запускать не только в pandas, но и на данных, которые давно не помещаются в память одной машины. И всё это заметно быстрее, чем в 1.0.x.

💡 Что нового:

⚡️ Spark-бэкенд. Dataset работает поверх pandas или Spark с одним и тем же API для AATest, ABTest, HomogeneityTest и Matching. Достаточно передать SparkSession и выбрать BackendsEnum.spark, а код эксперимента остаётся прежним.

🏎 Всё стало быстрее. Добавили векторизованное хэширование при сплитах и батчевый расчёт статтестов. Инварианты вынесены из циклов A/A, а на Spark работает checkpointing, поэтому DAG не разрастается от итерации к итерации. Сильнее всего ускорение видно на больших данных, в A/A-циклах и в Matching.

🤝 Распределённый Matching. У FAISS появился режим shuffle с кластерным партиционированием и co-partitioned поиск соседей. Индексы больше не стягиваются на драйвер, поэтому Matching справляется с объёмами, на которых раньше падал по памяти. Ещё добавили BiasExtension для линейной коррекции смещения и MatchingMetricsExtension для оценки эффектов. Оба корректно переживают пустые группы и NaN.

📐 U-тест Манна–Уитни. Новый StatsUTest считается по гистограммам, поэтому работает и на Spark. Он уже встроен в A/A, A/B и отчёты о качестве Matching.

📏 Доверительные интервалы в A/B. Для разницы между группами теперь сразу считается 95% ДИ, в результатах это колонки ci lower / ci upper.

🧪 Dry-test для A/A. С AATest(dry_test=True) можно проверить свою A/A-схему на данных без эффекта: распределение p-value должно быть равномерным, а FPR соответствовать alpha. Результат приходит с наглядным графиком.

🧹 Новые блоки пайплайна. NaDropper фильтрует строки с пропусками, а Float32Caster экономит память за счёт приведения к float32. Оба уже включены в стандартные A/A и A/B.

📚 Документация. В каждом модуле появился свой README, туториалы обновлены, и в каждом есть раздел про работу на Spark.

🐞 И, конечно, пачка багфиксов: детерминированный порядок групп на Spark, корректные id соседей FAISS при k=1, извлечение индексов в Matching, строки с _ в энкодерах, дублирование индекса в Chi2. Кроме того, ExperimentShell больше не мутирует пользовательские данные.

📦 Как установить:
pip install --pre -U hypex
Без --pre pip поставит последнюю стабильную 1.0.7.

⚠️ Важно для тех, кто переходит с 1.0.7:
- Python 3.13 пока не поддерживается (нужен >=3.8,

15 0 0 2
Catalog
Channels and groups catalog Channels compilations Search for channels Add a channel/group
Ratings
Rating of Telegram channels Rating of Telegram groups Posts rating Ratings of brands and people
API
API statistics Search API of posts API Callback
Our channels
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Read
Академия TGStat Telegram Research 2019 Telegram Research 2021 Telegram Research 2023
Contacts
Справочный центр Support Email Jobs
Miscellaneous
Terms and conditions Privacy policy Public offer
Our bots
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot