CyMR:自由召回数据的计算建模
项目描述
cyr
用于拟合和模拟自由召回数据的软件包。包括使用 Cython 快速实现上下文维护和检索 (CMR) 模型。
有关完整文档,请参阅网站。
安装
对于最新的稳定版本:
pip install cymr
获取开发版本:
pip install git+https://github.com/mortonne/cymr
要安装以进行开发,请克隆存储库并运行:
python install -e .
这将设置包模块的链接,以便您可以编辑源代码并将更改反映在您的安装中。
快速开始
将上下文维护和检索模型 (CMR) 拟合到样本数据:
from cymr import fit, cmr
# load sample data
data = fit.sample_data('Morton2013_mixed').query('subject <= 3')
# define model weights
n_items = 768
param_def, patterns = cmr.config_loc_cmr(n_items)
param_def.set_fixed(
T=0.1, Lfc=0.15, Lcf=0.15, Afc=0, Acf=0, Dfc=0.85, Dcf=0.85,
P1=0.2, P2=2, B_start=0.3, B_rec=0.9, X1=0.001, X2=0.25
)
param_def.set_free(B_enc=(0, 1))
# fit the model to sample data
model = cmr.CMR()
results = model.fit_indiv(data, param_def, patterns=patterns, tol=0.1)
有关详细信息,请参阅文档。
单元测试
首先,安装测试所需的额外包:
pip install .[test]
运行所有测试(从主存储库目录)
pytest
基准
要运行速度基准测试,首先安装snakeviz ( pip install snakeviz)。要使用示例数据集运行似然计算,然后显示 html 报告:
./benchmark