rec_now

所属分类:Leetcode/题库
开发工具:Python
文件大小:83KB
下载次数:0
上传日期:2023-06-03 07:01:13
上 传 者sh-1993
说明:  recommend now (rec_now) 是一个推荐算法的基础库,目的在于简化推荐模型的开发。 本项目基于tensorflow2和python3实现,兼容使用tensorflow1.x API的[无量训练框架]([https: ...](https: git.woa.com deep_learning_framework NumerousTensorFlow\)%EF%BC%8C%E5%B9%B6%E5%9C%A8%E7%94%9F%E4%BA%A7%E7%8E%AF%E5%A2%83%E4%B8%AD%E5%BE%97%E5%88%B0%E4%BA%86%E5%85%85%E5%88%86%E9%AA%8C%E8%AF%81%E3%80%82)
(Recommendation now (rec_now) is a basic library of recommendation algorithms aimed at simplifying the development of recommendation models. This project is implemented based on TensorFlow2 and Python 3, and is compatible with the TensorFlow1. x API s [Infinite Training Framework] ([https:...] (https: git.woa. com deep_learning_framework NumerousTensorFlow )% EF% BC% 8C% E5% B9% B6% E5% 9C% A8% E7% 94% 9F% E4% BA% A7% E7% 8E% AF% E5% A2% 83% E4% B8% AD% E5% BE% 97% E5% 88% B0% E4% BA% 86% E5% 85% 85% E5% 88% 86% E9% AA% 8C% E8% AF% 81% E3% 80% 82))

文件列表:
.editorconfig (322, 2023-06-03)
.pylintrc (1445, 2023-06-03)
rec_now (0, 2023-06-03)
rec_now\__init__.py (0, 2023-06-03)
rec_now\layers (0, 2023-06-03)
rec_now\layers\__init__.py (0, 2023-06-03)
rec_now\layers\can_layer.py (11364, 2023-06-03)
rec_now\layers\cartesian_product_layer.py (6569, 2023-06-03)
rec_now\layers\cin_layer.py (5266, 2023-06-03)
rec_now\layers\dcn_layer.py (3260, 2023-06-03)
rec_now\layers\dcn_mix_layer.py (6397, 2023-06-03)
rec_now\layers\fix_length_layer.py (3875, 2023-06-03)
rec_now\layers\fm_layer.py (1334, 2023-06-03)
rec_now\layers\inner_pnn_layer.py (1658, 2023-06-03)
rec_now\layers\mmoe_layer.py (4644, 2023-06-03)
rec_now\layers\multi_dense_layer.py (3250, 2023-06-03)
rec_now\layers\multi_hash_layer.py (9882, 2023-06-03)
rec_now\layers\ple_layer.py (13646, 2023-06-03)
rec_now\layers\pooling_layer.py (2264, 2023-06-03)
rec_now\layers\senet_layer.py (4614, 2023-06-03)
rec_now\layers\sparse_gnn_layer.py (11676, 2023-06-03)
rec_now\layers\stacked_dense_layer.py (7944, 2023-06-03)
rec_now\layers\star_dense_layer.py (11614, 2023-06-03)
rec_now\rec_block (0, 2023-06-03)
rec_now\rec_block\__init__.py (0, 2023-06-03)
rec_now\rec_block\attention.py (3120, 2023-06-03)
rec_now\rec_block\embedding_util.py (23788, 2023-06-03)
rec_now\rec_block\embedding_wise_weight.py (1643, 2023-06-03)
rec_now\rec_block\focal_loss.py (2348, 2023-06-03)
rec_now\rec_block\listwise_loss_from_batch.py (6073, 2023-06-03)
rec_now\rec_block\pairwise_loss_from_batch.py (11648, 2023-06-03)
rec_now\util (0, 2023-06-03)
rec_now\util\__init__.py (0, 2023-06-03)
rec_now\util\numpy_tools.py (1112, 2023-06-03)
rec_now\util\param_normalizer.py (526, 2023-06-03)
rec_now\util\tfprint.py (4269, 2023-06-03)
tests (0, 2023-06-03)
... ...

# 项目简介 recommend now (rec_now) 是一个推荐算法的基础库,目的在于简化推荐模型的开发。 本项目基于tensorflow2和python3实现,兼容使用tensorflow1.x API的[无量训练框架](https://git.woa.com/deep_learning_framework/NumerousTensorFlow),并在生产环境中得到了充分验证。 其中,基于in-batch方式计算pairwise的方式,已经在QQ浏览器信息流的精排、粗排、召回排序等环节得到了广泛应用,并使得在线GAUC指标提升1%以上。 ## 功能概览 * pairwise loss和listwise loss: 根据分组ID(如用户ID),提取一个batch内的pair(或list),计算pairwise loss(或listwise loss),从而提升GAUC指标。 * 经典推荐算法:如[FM](https://www.csie.ntu.edu.tw/~b97053/paper/Rendle2010FM.pdf),[DCN](https://arxiv.org/abs/1708.05123),[DCN_mix](https://arxiv.org/abs/2008.13535v2),[CIN](https://arxiv.org/abs/1803.05170),[CAN](https://arxiv.org/abs/2011.05625),[SENET](https://arxiv.org/abs/1905.09433),[STAR](https://arxiv.org/abs/2101.11427),[MMoE](https://dl.acm.org/doi/10.1145/321***19.3220007),[PLE](https://dl.acm.org/doi/abs/10.1145/3383313.3412236)等。 * 原创网络结构:如StackedDenseLayer。 ## 项目结构 ``` rec_now ├─README.md 说明文件 ├─rec_now │ ├─layers 基于keras.layers.Layer的派生层,用于实现常见的推荐算法 | | ├─ can_layer.py 实现co-action network | | ├─ cin_layer.py 实现Compressed Interaction Network,并进行了加速 | | ├─ dcn_layer.py 实现Deep & Cross Network | | ├─ dcn_mix_layer.py 实现Deep & Cross Network V2 | | ├─ fm_layer.py 实现Factorization Machines | | ├─ inner_pnn_layer.py 实现Inner Product-based Neural Networks | | ├─ mmoe_layer.py 实现Multi-gate Mixture-of-Experts,并进行了加速 | | ├─ multi_dense_layer.py 加速计算多个参数量相同的Dense层 | | ├─ ple_layer.py 实现Progressive Layered Extraction,并进行了加速 | | ├─ pooling_layer.py 对常用pooling函数的封装,如mean,sum,min,max等 | | ├─ senet_layer.py 实现Squeeze-Excitation network,并新增支持不等长的embeddings | | ├─ stacked_dense_layer.py 个性化Dense层 | | └─ star_dense_layer.py 实现STAR Topology Fully-Connected Network | | │ ├─rec_block 推荐系统的基础函数,如attention机制, pairwise loss,listwise loss等 | | ├─ attention.py 基于点积、DNN的注意力模型 | | ├─ embedding_wise_weight.py 不等长向量级别的权重映射 | | ├─ listwise_loss_from_batch.py 基于in-batch的方式生成pairwise loss | | └─ pairwise_loss_from_batch.py 基于in-batch的方式生成listwise loss | | │ └─util 辅助函数 | ├─ numpy_tools.py numpy的辅助函数 | └─ tfprint.py 对tf.Print的封装,方便打印tensor的形状,最大最小值等信息 | └─tests 测试代码,组织结构和rec_now文件夹相同 ``` ## 约定 * 对于运算过程中的张量,通过行末的注释给出张量的形状,格式为 `# (dim1, dim2, dim3, ...)` * 注释中张量的形状一般采用简写(比如用B表示batch_size),并在class或函数头部进行说明 ## 相关文章 * [AI与推荐技术在腾讯QQ浏览器的应用(排序模块部分), AICon 全球人工智能与机器学习技术大会(2021)](https://mp.weixin.qq.com/s/EnMT4xVY3LRCyVqqNqr5WQ) ## 谁在使用 * QQ浏览器信息流 - 精排pointwise, pairwise联合模型 - 粗排distrill精排模型

近期下载者

相关文件


收藏者