本教程中,会首先介绍 GitHub 存储库:推荐系统。 它使用 Jupyter Notebook 提供了构建推荐系统的一些示例和实践技巧。 其中大量的模型被广泛的应用于推荐系统中。 为了提供完整的体验,每个示例都通过以下五个关键任务中展示:
- 准备数据: 为每个算法准备并读取数据。
- 模型:使用各种经典的以及深度学习推荐算法,如交替最小二乘法(ALS)或极限深度分解机(xDeepFM)。
- 评估:使用离线指标来评估算法。
- 模型选择和优化:为推荐算法模型调优超参。
- 运营:在 Azure 的生产环境上运行模型。
在第四项调优模型超参的任务上,NNI 可以发挥作用。 在 NNI 上调优推荐模型的具体示例,采用了 SVD算法,以及数据集 Movielens100k。 此模型有超过 10 个超参需要调优。
由 Recommenders 提供的 示例 中有非常详细的一步步的教程。 其中使用了不同的调优函数,包括 Annealing
, SMAC
, Random Search
, TPE
, Hyperband
, Metis
和 Evolution
。 最后比较了不同调优算法的结果。 请参考此 Notebook,来学习如何使用 NNI 调优 SVD 模型,并可以继续使用 NNI 来调优 Recommenders 中的其它模型。