Backgroud 年代背景
1. On-Device 终端互联年代
通讯技能 | 1G(1986) | 2G(1995) | 3G(2000) | 4G(2014) | 5G(2020) | 6G(?) | … |
---|---|---|---|---|---|---|---|
年代 | 模拟语音年代 | 数字语音年代 | 移动通讯年代 | 移动互联网 | 万物互联年代 | 卫星互联网 | … |
传输速率 | 2.4kbps | 10~64kbps | 300kbps~2mbps | 100mbps~1Gbps | ~10Gbps | ~1Tbps | … |
代表产品 | 摩托罗拉(大哥大) | 诺基亚 | iPhone 1~5 | iPhone 5s+ | iPhone 12+ / 各种 IoT 产品 | VR/AR? | … |
信息承载办法 | 通话 | 文本 | 图片 | 视频 | 直播 | 元宇宙? | … |
咱们现在处于 5G~6G 的年代,超大规划终端都需求联网,终端(Device)数量迸发增加。
2. AI 人工智能年代
当下,咱们正处于人工智能第三次浪潮中。全面拥抱人工智能,为产业赋能。
参阅:《人工智能史》
为什么第三次人工智能浪潮能爆火?
人工智能年代的开展,离不开 “大数据”、“理论”、“算力” 三个条件。
Data 大数据
首先是数据。一方面,大数据根底设备逐步健全,数据中心遍地开花;另一方面,互联网,尤其是移动互联网的鼓起,带来了连绵不断的数据。全球每年新增数据量现已迅速抵达了ZB等级。
依据IDC 2018年发布的Data Age 2025报告,到2025年时,全球每年新增数据将会抵达175ZB之多。
Research 理论根底
第二是理论根底。依据斯坦福 2021 的 AI Index 核算,2015 年至 2020年,archive 上,AI相关出书文献的数量逐年递增,到2020年时每年AI相关出书文献的数量现已突破了3万。
Power 算力
第三是核算机的算力。左图是 OpenAI 分析的 人工智能练习对算力的需求。它将需求分成了两个纪元,
在2012年之前,练习对算力的需求大约每两年翻一倍,摩尔定律完全能满意这个要求;
但是到了2012年之后,练习对算力的需求大约每三四个月就会翻一倍。这时,支撑起练习算能需求的,是华裔企业家黄仁勋。在Nvidia,功能翻倍的速度进步到了每12个月。
Cloud AI 云端智能
云端智当时的问题:
-
数据问题:
- 隐私安全问题:用户隐私泄露 -> 法律合规问题
- 数据孤岛,各厂都维护自己的数据,难同享难协作-> 数据壁垒问题
-
本钱问题:
- 原始数据传输 -> 带宽本钱高。
- 依据原始数据,进行特征抽取,再练习 -> 流程长,练习本钱高。
- 有必要走云端做推理 -> 推理本钱高。
-
体会问题:
-
云端模型更新周期长,不能短期很快理解用户诉求。 -> 体会不及时
-
单体理解弱:模型简略被高活用户影响,不能更好的理解中长尾用户在设备上的行为特征。
-
那么有没有什么办法,能处理用户隐私安全问题和数据孤岛问题呢?
答:有的,联邦学习。
Federated Learning 联邦学习
联邦学习最早在 2016 年由谷歌提出,本来用于处理安卓手机终端用户在本地更新模型的问题。
联邦学习给隐私安全问题供给了理论根底。
参阅:
-
本质:联邦学习本质上是一种分布式机器学习办法。要求在不交流明文数据的前提下,进行联合建模。
-
方针:联邦学习的方针是在确保数据隐私安全及合法合规的根底上,完成一起建模,提升AI模型的作用。
联邦学习的首要思维:
- 元数据不出域,特征出域。各端同享特征,尽或许维护“用户隐私”与“企业的中心数据”。
- 打破数据孤岛问题,各方同享特征,一起建模,提升模型作用。
Horizontal FL 横向联邦学习
在数据集同享相同特征(Feature)但样本(Sample)不同的情况下,引入了横向联邦学习或依据样本的联邦学习。
划重点:相同特征,不同样本。兼并样本,依据样本调集进行联邦学习。
下面矩阵的每一行代表一个样本,每一列代表一个特征。
Case:Google 输入法(论文)
Google 最早在 2017 年提出了联邦学习的概念,为了处理拼音输入法的猜测问题。
例如:用户输入了 “I love you”,输入法会主张“so much”、“too”。
实践原理:Google 输入法在各个手机终端上核算了梯度(特征),然后将这个梯度发送到 Google 的云端服务器上。
Google 再将终究整合的梯度回传到各个手机终端(分布式机器学习的思维),终端再更新本地模型进行调优。
这种办法在不需求传输用户隐私数据的前提下,经过上报梯度(特征),让模型很好的学习到了用户的行为。
经过多轮迭代,Google 输入法到达了非常好的作用。
Vertical FL 纵向联邦学习
在数据集同享相同样本(Sample)但特征(Feature)不同的情况下,引入了纵向联邦学习或依据特征的联邦学习。
划重点:相同样本(用户),不同特征。兼并特征,依据特征调集进行联邦学习。
Case:微众银行反洗钱建模
Federated Transfer Learning 联邦搬迁学习(FTL)
寻找特征/样本中的相似点,再建模。(理论能行,但个人感觉也比较难,也没找到业界比较好的比方)
OK,上面告知了当时的年代背景和理论根底。
怎样具体将上述技能使用到设备上呢?
那么,下面 咱们来聊一聊端智能(On-device AI)。
On-Device AI 端智能
得益于联邦学习的提出。给 End-to-End AI 链路供给了理论根底。
数据传输链路
端云通讯(旧)
端云通讯(新)
将“埋点上报”转换成“特征上报”。优点如下:
- 响应快:直接在端上完成推理和判别,防止走云端网络。
- 隐私安全:元数据不出域,维护用户隐私,保证安全合规。
- 下降本钱:下降带宽本钱,下降云端推理本钱。
- 个性化:端上也能够进行模型调优,到达千人千模的作用。
背后的原因和支撑
Data 数据
-
移动终端迸发式增加
得益于移动互联网年代的开展,手机发生的数据对比桌面端呈现出迸发式增加的趋势。
-
端设备传感器越来越丰富
手机:
轿车:
Research 理论根底
模型的趋势,一方面是越来越大,另一方面是越来越小。
-
越来越大:参数越来越多,理解能力越来越强。
-
越来越小:小而精的模型,合适植入端上来运转推理。
Power 算力
得益于设备的算力越来越好,越来越的设备开端内置 NPU。
云端智能(Cloud AI) vs 终端智能(On-Device AI)
从终端智能的完成根底中也能看出,它受到诸多来自硬件的限制。终端无法扩容,这是它与云端最显着的差异之一。下面给出一些比较参阅,以量化对限制的认知:
云端 | 终端 | 参阅/备注 | |
---|---|---|---|
数据推迟 | 分钟级,日志上报推迟 + 近线处理推迟 | 毫秒级,日志埋点后可用 | |
存储周期 | TB/PB 级,要害数据终身存储 | MB 级,缓存不宜过大,条数影响查询推迟 | 抖音缓存 ~2GB |
模型规划 | GB/TB 级,流式更新或 T+1 更新 | MB 级,终端练习或重新下载,大小影响抵达率 | 抖音视频 ~10MB |
核算规划 | 只需机器扛得住 | 秒级,核算不宜过长,需防止影响用户体会 |
Pitaya 字节端智能平台
优点:
-
更多的用户信息,不上报隐私,让模型更好做推理。
-
更好的实时性,战略调整更及时。
工作流(端云协同)
常用推理引擎(算法)
-
Decision Trees 决策树
优势:
- 结构简略,方便处理“数值”和“类别”上的特征。
- 可解释,可回溯。
下风:
-
不稳定,因为是不断分裂发生的树。如果上层节点的数据里有噪音,对下层结构影响比较大。
-
数据杂乱时,简略发生杂乱的树。造成过拟合(模型在练习数据上表现得过于优秀,以至于无法很好地泛化到未见过的测试数据或新的场景)。
*Random Forest 随机森林
由很多决策树组成的一种集成学习办法,输出是对问题最佳答案的一致。随机森林可用于分类或回归。
森林很好理解,便是多棵决策树。
生成办法:
那么,“随机” 又是怎样随机的?
- “练习集”随机(类比到 MySQL,便是随机抽行,可重复,每棵树或许抽到同样的行)
- “特征”随机(类比到 MySQL,便是随机抽列,不可重复,每棵树不能一次抽同个特征列)
便是在抽取练习集/特征的时分,随机的抽,让每棵树拿到的练习集&特征调集尽或许都不相同。
导致,每个树的猜测结果也会发生差异。
决策办法:
-
分类场景,随机抽整列特征,练习出多个决策树,进行投票。
-
回归场景,对每个树的结果求和,取平均数。
决策树适用场景:
- 事务特征:小数据量、少特征,硬件要求不高。
- 用户定制模型:决策树组合模型支持增量练习,且练习要求相对较低,合适在客户端上依据「通用模型」增量练习出「用户定制模型」。
- 虽然往往不是最优解,但是能快速到达上线水平。
注:增量练习需求合理的采样逻辑,不然很有或许将模型训“偏”
当然,除了随机森林,还有其他决策树的优化变种(GBDT、XGBoost、LightGBM…),这里就不逐个展开了,感兴趣能够再研究。
-
Neural Networks 神经网络
神经网络是一种模拟人类大脑运作机理的算法。
- 人脑运作机理:经过“视觉、听觉、嗅觉、味觉、触觉”,触发大脑中不同的神经元组合,进行处理和核算,生成终究指令。
人工神经网络也是相似,分为输入层(Input layer)、躲藏层(Hidden layer)、输出层(Output layer)。
由上图可知:
- 输入层神经元是躲藏层神经元的输入,躲藏层神经元的输出是输出层神经元的输入。
- 两个神经元之间的连接会有一个权量w。
- 第 t 层的每个神经元与第 t-1 层的每个神经元相互关联。当然,也能够设置权量w为 0,从而在实质上撤销连接。
在加工输入数据时,将输入数据赋予输入层的每个单元,而躲藏层的每个单元是输入层每个单元的加权求和。
也便是说,输入层的数据会被前向传播到躲藏层的每个单元。
同理,躲藏层的输出作为输入会前向传播到输出层,核算得到最后的输出,即神经网络的输出。
神经网络适用场景
-
事务特征:大数据量,杂乱的特征规划。
-
场景:有一定硬件条件,且对作用有比较高的预期。
决策树(DT) vs 神经网络(NN)
决策树 DT | 神经网络 NN | |
---|---|---|
数据量 | 小数据集上决策树模型有显着的优势 | 往往需求较大的数据量(千万级以上) |
调参难度 | 难度低,周期短,作用中 | 难度高,周期长,作用较好 |
模型解释度 | 强 | 弱 |
硬件要求 | 要求相对低 | 一般需求 GPU 等硬件加速 |
Show Case 端智能实践
视频预加载
- 原始战略:缓存固定大小的视频。
- 端智能优化思路:
- 端智能工作流:
实时特征(因):
- 最近的滑动手速(快 or 慢?)=> 最近播映同类型视频的观看时长?(长 or 短?)
- 最近的交互频率(多 or 少?)=> 同类型视频的点赞、收藏、谈论
- 当时的行为状况(步行/坐着/躺着?)
- ……
推理结果(果):
- 判别:碎片化(短视频+更多缓存数量)or 事务空闲(中长视频+更长缓存时刻)
=> 使用不同的缓存战略
动态超分
超分辨率便是终端智能在视频图画领域经典使用之一。
如上图示,超分辨率是将低分辨率的图片或者视频帧,还原成高分辨率的技能。
自 2014 年 SRCNN 提出后,依据神经网络的超分计划广泛使用于日常日子的各种视频图画场景中,比方视频流媒体、直播、XR、无人机视频流、医疗成像,甚至卫星视频传输。
由于视频超分对实时性要求极高,细微的推迟都会极大影响用户视频体会。因此,一般会在终端上直接部署模型,实时提升图画和视频帧的分辨率,让用户享受到高清画质。
- 优势:省带宽,低推迟。
- 下风:对硬件有一定要求。
信息流本地重排
端:目的辨认模型,高优曝光最近感兴趣的内容(商品)
自动驾驶
自动驾驶其实也是端智能的一个典型实践。
现在干流的智驾计划有:
-
激光雷达计划:
- 硬件本钱高,且依赖高精地图。但对算法要求低,无需太多练习数据。
- 产品代表:华为 ADS (早期)。
-
纯视觉计划:
- 摄像头 + BEV(
bird's-eye-view
)算法 +Transformer
。 - 硬件本钱低。但强依赖视觉算法+大规划练习数据。
- 产品代表:特斯拉
FSD(Full-Self-Driving)
、Xiaomi Pilot Pro
、华为 ADS(新版)。
- 摄像头 + BEV(
-
视觉+激光雷达:
- 产品代表:比亚迪天神之眼、
Xiaomi Pilot Max
。
- 产品代表:比亚迪天神之眼、
不论是“激光雷达计划”仍是“纯视觉计划”,都需求在轿车端内完成运算和推理判别。
Result 收益与作用
- 本钱:带宽下降、服务器压力下降等等。
- 作用:CTR、GMV、UV、PV 提升等等。
参阅与致谢: