项目地址:https://github.com/Microsoft/Recommenders
(注:本文的链接需要点击文末【阅读原文】方可访问)
本仓库提供了构建推荐系统项目的实例和最佳实践,用Jupyter Notebook的形式提供。这些例子将会详细地向我们介绍四个关键任务的学习。
准备数据:为每一个推荐算法准备和加载数据
模型:用多种推荐算法构建模型,例如交替最小二乘法(ALS)
评估:使用离线指标评估算法
实施:在Azure上的生产环境中操作模型
reco_utils中提供了几个实用程序来支持常见任务,例如以不同算法预期的格式加载数据集,评估模型输出以及拆分列车/测试数据,为你自己的应用程序中的自学习和自定义提供了几种最先进算法的实现。
有关在本地、Spark或Azure Databricks设置你的机器的信息,请参阅设置指南了解更多详情。
在本地计算机上进行安装的步骤如下:
1.在Python 3.6或更高版本环境下安装Anaconda,用Miniconda可以快速安装
2.克隆本仓库
git clone https://github.com/Microsoft/Recommenders
3.运行generate conda文件脚本并创建一个conda环境:
cd Recommenders
./scripts/generate_conda_file.sh
conda env create -n reco -f conda_bare.yaml
4.激活conda环境并注册到Jupyter中
conda activate reco
python -m ipykernel install --user --name reco --display-name "Python (reco)"
5.运行Jupyter notebook服务
cd notebooks
jupyter notebook
6.在00_quick_start文件夹下运行SAR Python CPU Movielens这篇笔记。 确保将内核更改为“Python(reco)”。
我们提供了几个笔记,以展示如何设计、评估和操作推荐算法。
快速入门笔记(Quick-Start Notebooks)详细介绍了如何使用最先进的算法(如智能自适应推荐(SAR)算法和ALS算法)快速启动和运行。
数据准备笔记(Data Preparation Notebook)展示如何为推荐系统正确准备和拆分数据。
建模笔记(Modeling Notebooks)深入探讨了不同推荐算法的实现。
评估笔记(Evaluation Notebooks)展示如何评估不同排名和评级指标的推荐算法。
部署笔记(Operationalizion Notebook)演示了如何在生产系统中部署模型。
此外,我们还提供了一篇比较笔记(comparison notebook),以说明如何评估和比较不同的算法。在这篇笔记中,数据(搜索引擎数据 1M)以75/25的比例随机分成训练/测试集。使用下面的每一种协同过滤算法训练推荐模型。我们会利用文献报道的经验参数值。对于排名指标,我们使用k = 10(前10个结果)。 我们在标准NC6s_v2 Azure DSVM(6个vCPU,112 GB内存和1个K80 GPU)上进行比较。 Spark ALS以本地独立模式运行。
欢迎给本项目提供意见和建议。当然,在提供之前,请参阅我们的贡献指南。
注:测试每晚都会执行,我们使用 pytest 测试 reco_utils 和 notebooks中的python实用程序。
项目地址:https://github.com/Microsoft/Recommenders
【AI求职百题斩 - 每日一题】
2019年的每日挑战开始更新啦!
去年圣诞节之前的挑战题目,
需要到 AI求职百题斩 才能再见到它们了哦!
想知道正确答案?
回公众号聊天界面并发送“0102挑战”即可获取!
点击 阅读原文 查看本文更多内容↙