HypEx(假设和实验)是一个综合库,旨在简化数据分析中的因果推理和 AB 测试流程。 HypEx 专为提高效率和效果而开发,采用鲁宾因果模型 (RCM) 来匹配密切相关的对,确保在估计治疗效果时进行公平的群体比较。
HypEx 拥有完全自动化的流程,能够熟练地计算平均治疗效果 (ATE)、治疗组的平均治疗效果 (ATT) 和对照组的平均治疗效果 (ATC)。它提供了用于执行这些估计的标准化界面,从而深入了解干预措施对不同人群亚组的影响。
除了因果推理之外,HypEx 还配备了强大的 AB 测试工具,包括双重差分 (Diff-in-Diff) 和 CUPED 方法,以严格测试假设并验证实验结果。
HypEx 中的某些功能可以帮助解决特定的辅助任务,但无法自动化实验设计决策。下面,我们将讨论 HypEx 中实现但不自动化实验设计的功能。
注意:对于匹配,建议不要使用超过 7 个特征,因为这可能会导致维数灾难,使结果不具有代表性。
特征选择模拟了特征对于目标逼近准确性的重要性。但不排除特征被忽视的可能性,特征对目标描述的复杂影响,或者特征从业务逻辑角度的意义。如果存在数据泄漏,算法将无法正常运行。
选择功能时要考虑的要点:
链接到 ReadTheDocs
随机治疗算法随机打乱实际治疗。预计治疗对目标的效果将接近于0。
这些方法不足以准确地标记实验是否成功。
链接到 ReadTheDocs
pip install -U hypex
在这里探索使用示例和教程。
from hypex import Matcher
from hypex . utils . tutorial_data_creation import create_test_data
# Define your data and parameters
df = create_test_data ( rs = 42 , na_step = 45 , nan_cols = [ 'age' , 'gender' ])
info_col = [ 'user_id' ]
outcome = 'post_spends'
treatment = 'treat'
model = Matcher ( input_data = df , outcome = outcome , treatment = treatment , info_col = info_col )
results , quality_results , df_matched = model . estimate ()
from hypex import AATest
from hypex . utils . tutorial_data_creation import create_test_data
data = create_test_data ( rs = 52 , na_step = 10 , nan_cols = [ 'age' , 'gender' ])
info_cols = [ 'user_id' , 'signup_month' ]
target = [ 'post_spends' , 'pre_spends' ]
experiment = AATest ( info_cols = info_cols , target_fields = target )
results = experiment . process ( data , iterations = 1000 )
results . keys ()
from hypex import ABTest
from hypex . utils . tutorial_data_creation import create_test_data
data = create_test_data ( rs = 52 , na_step = 10 , nan_cols = [ 'age' , 'gender' ])
model = ABTest ()
results = model . execute (
data = data ,
target_field = 'post_spends' ,
target_field_before = 'pre_spends' ,
group_field = 'group'
)
model . show_beautiful_result ()
有关该库及其功能的更多详细信息,请访问我们的 ReadTheDocs 文档。
您将找到帮助您开始使用 HypEx 的全面指南和教程,以及高级用例的详细 API 文档。
加入我们充满活力的社区!有关贡献、报告问题或寻求支持的指南,请参阅我们的贡献指南。
Habr (ru) - 了解 HypEx 如何彻底改变各个领域的因果推理。
A/B 测试研讨会 - NoML 中有关匹配和 A/B 测试的研讨会
与 HypEx 匹配:简单指南 - 带解释的简单匹配指南
与 HypEx 匹配:分组 - 使用分组指南进行匹配
HypEx 与因果推理和 DoWhy - 了解为什么 HypEx 是因果推理的最佳解决方案
HypEx 与因果推理和 DoWhy:第 2 部分 - 了解为什么 HypEx 是因果推理的最佳解决方案
访问 Kaggle 中的笔记本并自行估计结果。
团体规模 | 32768 | 65536 | 131 072 | 262 144 | 524288 | 1 048 576 | 2 097 152 | 4 194 304 |
---|---|---|---|---|---|---|---|---|
因果推理 | 46秒 | 169秒 | 没有任何 | 没有任何 | 没有任何 | 没有任何 | 没有任何 | 没有任何 |
做为什么 | 9秒 | 19秒 | 40多岁 | 77s | 159秒 | 312s | 615s | 1235秒 |
HypEx 与分组 | 2秒 | 6秒 | 16秒 | 42秒 | 167秒 | 509s | 1932秒 | 7 248秒 |
没有分组的 HypEx | 2秒 | 7秒 | 21秒 | 101秒 | 273秒 | 982s | 3 750秒 | 14 720秒 |
有疑问或想讨论 HypEx?加入我们的 Telegram 聊天并与社区和开发人员联系。
HypEx 是数据分析师和研究人员深入研究因果推理和 AB 测试不可或缺的资源。凭借其自动化功能、复杂的匹配技术和彻底的验证程序,HypEx 准备以前所未有的速度和精度揭示复杂数据集中的因果关系。