任务类型 / Task Type
请选择任务类型 / Please select the task type:
任务描述 / Task Description
背景 / Background
当前torch-rechub中的不同模型支持的采样方式不统一,有些模型只支持point-wise,有些只支持pair-wise或list-wise。为了提供更好的用户体验和更灵活的训练选择,需要为所有模型统一添加三种采样方式的支持。
目标 / Objectives
- 整合所有现有模型,统一采样接口
- 为每个模型添加point-wise、pair-wise、list-wise三种采样方式支持
- 保持向后兼容性,不破坏现有API
- 提供统一的配置接口和文档
详细要求 / Detailed Requirements
- 分析现有模型的采样支持情况
- 设计统一的采样接口和抽象基类
- 为每个模型实现三种采样方式的支持
- 修改训练器以支持统一的采样配置
- 确保所有模型在三种采样方式下都能正常训练
- 添加采样方式切换的配置选项
技能要求 / Required Skills
必需技能 / Required Skills
加分技能 / Preferred Skills
预期产出 / Expected Deliverables
参考资料 / References
相关论文 / Related Papers
代码参考 / Code References
- 现有模型实现:
torch_rechub/models/
- 训练器实现:
torch_rechub/trainers/
- 采样工具:
torch_rechub/utils/match.py
文档资源 / Documentation Resources
难度评估 / Difficulty Level
预估工作量 / Estimated Effort
贡献指南 / Contribution Guidelines
开始之前 / Before You Start
- 请在评论中表明您的兴趣,避免重复工作 / Please comment to express your interest to avoid duplicate work
- 阅读 CONTRIBUTING.md 了解开发流程 / Read CONTRIBUTING.md to understand the development process
- 设置开发环境并熟悉项目结构 / Set up the development environment and familiarize yourself with the project structure
- 分析现有模型的采样支持情况
开发流程 / Development Process
- Fork 项目并创建新分支
feature/unified-sampling-support
- 调研现有模型的采样方式实现
- 设计统一的采样接口抽象
- 逐个模型实现三种采样方式支持
- 修改训练器以支持统一配置
- 编写全面的测试用例
- 运行代码格式化:
python config/format_code.py
- 提交 Pull Request
代码规范 / Code Standards
- 遵循项目的代码风格 / Follow the project's code style
- 添加适当的注释和文档字符串 / Add appropriate comments and docstrings
- 确保所有测试通过 / Ensure all tests pass
- 更新相关文档 / Update relevant documentation
- 保持向后兼容性 / Maintain backward compatibility
联系方式 / Contact Information
获取帮助 / Getting Help
社区支持 / Community Support
- 📖 查看项目文档和示例 / Check project documentation and examples
- 🤝 与其他贡献者交流 / Communicate with other contributors
- ⭐ 关注项目更新 / Follow project updates
额外信息 / Additional Information
模型清单 / Model Checklist:
需要支持的模型包括但不限于:
- Matching模型: DSSM, YouTubeDNN, MIND, etc.
- Ranking模型: DeepFM, Wide&Deep, DCN, etc.
- Multi-task模型: MMOE, PLE, etc.
实现建议 / Implementation Suggestions:
- 可以按模型类型分组进行实现
- 建议先实现一个模型作为模板,然后推广到其他模型
- 注意不同采样方式对损失函数的影响
测试要求 / Testing Requirements:
- 确保每个模型在三种采样方式下都能收敛
- 验证采样方式切换不会影响模型性能
- 提供性能对比和使用建议
感谢您对 torch-rechub 项目的贡献兴趣!我们期待与您合作。
Thank you for your interest in contributing to torch-rechub! We look forward to working with you.
任务类型 / Task Type
请选择任务类型 / Please select the task type:
任务描述 / Task Description
背景 / Background
当前torch-rechub中的不同模型支持的采样方式不统一,有些模型只支持point-wise,有些只支持pair-wise或list-wise。为了提供更好的用户体验和更灵活的训练选择,需要为所有模型统一添加三种采样方式的支持。
目标 / Objectives
详细要求 / Detailed Requirements
技能要求 / Required Skills
必需技能 / Required Skills
加分技能 / Preferred Skills
预期产出 / Expected Deliverables
参考资料 / References
相关论文 / Related Papers
代码参考 / Code References
torch_rechub/models/torch_rechub/trainers/torch_rechub/utils/match.py文档资源 / Documentation Resources
难度评估 / Difficulty Level
预估工作量 / Estimated Effort
贡献指南 / Contribution Guidelines
开始之前 / Before You Start
开发流程 / Development Process
feature/unified-sampling-supportpython config/format_code.py代码规范 / Code Standards
联系方式 / Contact Information
获取帮助 / Getting Help
社区支持 / Community Support
额外信息 / Additional Information
模型清单 / Model Checklist:
需要支持的模型包括但不限于:
实现建议 / Implementation Suggestions:
测试要求 / Testing Requirements:
感谢您对 torch-rechub 项目的贡献兴趣!我们期待与您合作。
Thank you for your interest in contributing to torch-rechub! We look forward to working with you.