当前位置:网站首页>哪来的TB级推荐模型
哪来的TB级推荐模型
2022-08-08 11:25:00 【RK】
记忆-归纳模型
推荐系统中常见的深度学习模型由Embedding表和神经网络两部分组成,其中Embedding部分起记忆表征作用,神经网络起到分析和归纳作用。实际上,神经网络在的分析能力是很有限的,更多是表现为归纳。而归纳的效果非常依赖表征的丰富程度,故Embedding部分的参数量往往远大于神经网络部分,当神经网络还在10MB量级时,Embedding表可以达到百GB乃至TB量级。
假定使用64位ID及16维参数表示一项Embedding,则全精度尺寸为72B,半精度尺寸为40B。可以推算1TB左右大小的模型大概有130-250亿项Embedding,而每一项Embedding背后是一个离散特征,换言之TB级模型约等于常说到的百亿特征千亿参数模型。推荐模型如此庞大根源就出在这百亿特征上。
哪来的百亿特征
推荐场景中最为庞大的特征组就是User和Item的ID,哪怕对于头部业务而言两者加起来无非也就10亿的量级,靠原始数据要凑出百亿特征几乎不可能。这个时候,就该登场离散特征交叉技术登场了。
分类语义派生
User或Item自身不同属性之间可以交叉派生出更细的分类,这是最为常见的手法。由于实体ID和实体自身属性间的交叉派生是徒劳的,分类语义派生特征虽然最常见,但是一般不会成为百亿特征的直接来源。
交互语义派生
在User和Item的属性之间做交叉派生也是相当常见的,派生出的特征体现了一种交互语义。可以用Item的ID和User的性别、年龄进行三联交叉派生,特征空间能达到Item量级的百倍,有亿级Item的场景光这一项就能产出百亿特征。
组合语义派生
以拳皇对局为例,可以直接将选角排列用作特征,同时将每个选中角色单独作一项特征然后pooling,还可以对选角排序产生获得结果组合并用作特征。组合虽然是原始排列的子集,不过和排列的语义有差异,不能共享特征空间。此类特征三管齐下往往会比单选一种处理要更为有效。
弱语义派生
细心的你大概已经发现了,上述几种特征派生的语义实际上是建立在共现性的基础上的。然而脱离了共现性,还是可以对特征做交叉派生,例如在游戏商城场景用过去一个月用得最多的英雄的ID和待售的皮肤ID进行交叉。这种派生操作虽然很难给出清晰的语义,不过有些时候可能会有意想不到的效果。
大维度Embedding vs 海量Embedding
如果没有百亿特征又想要TB级模型,是不是可以发扬“土法大炼钢”精神,把Embedding维度统统提到100以上呢?形式上当然是可以的,不过这样做恐怕背离了做大模型的初衷。做大模型不是为了验证系统承载能力,而是为了更好记忆业务场景数据。尽管笔者并没有找到大维度Embedding不如海量Embedding的理论依据,不过据观察在当前的条件下细嚼慢咽依然比囫囵吞枣更有效。
边栏推荐
- 力扣(LeetCode)219. 存在重复元素 II(2022.08.07)
- 分分钟快速定制您的专属个性化软件应用——BizTool自动化工具简介
- One article to understand configuration management (CM)
- 键值数据库是将什么作为标识符的呢?
- 读取SolidWorks文档中的属性,生成PDF(工具开发)
- leetcode-636:函数的独占时间
- 上海控安SmartRocket系列产品推介(二):SmartRocket Modeler可视化建模开发工具
- 分布式系统设计策略
- 使用ApacheBench来对美多商城的秒杀功能进行高并发压力测试
- 搞清楚系统到底怎样支撑高并发以及架构图的绘制(面试向)
猜你喜欢

neural network classification

带你深入理解3.4.2的版本更新,对用户带来了什么?

基于STM32的简易示波器项目(含代码)——HAL库

Pattern Recognition Study Notes: Chapter 6 Other Classification Methods (Continuously updated...)

京东云无线宝产品部负责人张晓东 : 京东云无线宝与开源的亲密关系 | 《大神详解开源 BUFF 增益攻略》讲座回顾...

Postman使用简单演示

小程序使用npm包

目标检测中的Classificition Loss

ets declarative ui development, how to get the current system time
C语言详解系列——指针与结构体
随机推荐
萤石、小米对垒智能摄像头
易周金融分析 | 互联网系小贷平台密集增资;上半年银行理财子公司综合评价指数发布
E121: Unable to open and write file solution when vim /etc/profile is written
Thoroughly understand the differences and application scenarios of session, cookie, sessionStorage, and localStorage (interview orientation)
2G 3G 4G 5G 基站覆盖范围
leetcode 1584. 连接所有点的最小费用
ReentrantReadWriteLock读写锁和票据锁StempedLock
动图图解!既然IP层会分片,为什么TCP层也还要分段?
5S软件就是将软件应用全维度简单化的软件系统
部署spark2.2集群(standalone模式)
力扣(LeetCode)219. 存在重复元素 II(2022.08.07)
d切片示例
二、线性结构
Optional常用方法解析
报错 | RegExp2 is not defined
PG核心篇--物理存储结构
十年架构五年生活-08 第一次背锅
键值数据库中可以对值进行查询嘛?
基于ftp协议的上传与下载
Redis 定长队列的探索和实践