最佳实践

如果您刚接触RecIS,那么快速开始部分可以为您讲解如何从0开始构建一个RecIS模型,您可以参阅各个部分的 简单示例 中的代码,快速组织出一个Demo。 跳转快速开始:快速开始

如果您已经有了一个RecIS模型,正在基础模型上迭代,您可以分别参考下面文档中各部分内容,我们已经将常见使用方式通过示例的形式展现出来。

如果您是一个资深用户,下面的文档都无法满足您的需求,那么可以参考API部分的文档,查看更详细的API介绍。 跳转API文档:API Documentation

快速开始

使用RecIS构建一个推荐模型需要在代码中完成 4个定义1个流程

4个定义 分别为:

  1. Dataset定义:数据处理流程

  2. 特征转换定义:特征处理流程

  3. Embedding定义:Embedding嵌入使用

  4. 模型定义:模型定义

RecIS的FG模块可以帮助简化上述 4个定义 流程

1个流程 为:

简单示例

基本使用

# 参考Dataset定义
train_dataset = get_odps_dataset()

# 参考特征转换定义
feature_conf = get_feature_conf()

# 参考Embedding定义
emb_conf = get_emb_conf()

# 参考模型定义
graph = MyModel(feature_conf, emb_conf)
graph = graph.cuda()

# 参考训练流程pipeline创建
dense_opt, sparse_opt = get_optimizer(graph)
trainer = get_trainer(dataset, graph, dense_opt, sparse_opt)
# 开始训练
trainer.train()

使用FG模块

# 参考FG模块
fg = get_fg()
train_dataset = get_odps_dataset_by_fg(fg)

# 参考模型定义
graph = MyModel(fg)
graph = graph.cuda()

# 参考训练流程pipeline创建
dense_opt, sparse_opt = get_optimizer(graph)
trainer = get_trainer(dataset, graph, dense_opt, sparse_opt)
# 开始训练
trainer.train()

分布式相关

  • 提交分布式任务:nebula

  • 分布式完整Demo:demo

  • 常见问题:qa

其他工具

  • 指标监控:metrics

  • Tensorflow迁移Recis:tf2recis

  • XrecV1版本迁移Recis:xrec2recis

  • ODPS数据导出为Recis:odps2recis