3.云原生边云协同AI框架实践
云原生边云协同AI框架实践 普杰 华为云边缘云创新Lab 高级工程师 KubeEdge SIG AI Tech Lead 目 录 Edge AI现状与趋势 01 Sedna:边云协同AI框架 02 Sedna-GM:K8S Operator 03 实践案例 04 Edge AI现状与趋势 第一部分 Why Edge AI? • Cloud中心化的AI计算范式不足以应对端上AI AI应用到越来越多的边缘场景 分布式协同AI 概念 将人工智能相关的部分任务部署到边缘设备,基于边缘设备、边缘服务 器、云服务器,利用分布式乃至分布式协同方式实现人工智能的技术 数据在边缘产生 边侧逐步具备AI能力 分布式协同AI 核心驱动力 分布式协同AI核心驱动力 • 随着边侧算力逐步强化,边缘AI持续演变至分布式协同AI 分布式协同AI技术挑战 1. 边缘资源碎片化 2. 边缘数据孤岛 边缘数据孤岛 3. 边缘样本少 4. 边缘数据异构 分布式协同AI 技术挑战 边云协同AI框架 第二部分 首个分布式协同AI开源项目Sedna 基于KubeEdge提供的边云协同能力,支持现有AI类应用无缝下沉到边缘 为分布式协同机器学习服务 ✓ 降低构建与部署成本 ✓ 提升模型性能 ✓ 保护数据隐私 SIG成员近年发表分 布式协同AI顶会论文 10+ SIG成员在AI顶会IJCAI0 码力 | 37 页 | 2.36 MB | 1 年前3大规模高性能区块链架构设计模式与测试框架-李世敬
地 利用区块链的去中心化、数据 不能篡改的特性,解决制约云 计算发展的“可信、可靠、可 控”的问题。 融入大数据采集和共享中,作 为数据源接入大数据分析平台。 强化分布式数据存 储和边缘计算能力, 拓展物联安全边界 和应用范围。 为训练深度学习系统提供可信数据, 优化分析决策的准确性和可信性。 人工智能 区块链 云计算 物联网 大数据 10 趣链科技 版权所有 ©2016-2021 参与者都可在其中写入、读取、 参与交易验证。 仅在机构内使用,读写权,记账 权由组织内自由定制。中心控制 者制定可参与和进行交易验证成 员范围。 联盟链仅限于联盟成员参与,系 统内交易确认节点为事先设定, 并通过共识机制确认。 『非许可链』公有链 私有链『许可链』 联盟链『许可链』 区块链发展的主力军 不同的组织形态分别对应不同的“区块链产品架构” 11 趣链科技 版权所有 ©2016-2021 司法存证 供应链⾦融 智慧政务 物联⽹ 能源电⼒ 跨境贸易 ⼯业物联⽹ 智慧城市 ... 不同于完全开放、任何⼈可以加⼊退出的⾮许可链,许可链架构与其差异性在于节点和⽤户在区块链⽹络中的准 ⼊要求。且⾮许可链⽹络节点⼤都由业务相关的机构组成,造成架构上共识、合约、安全、权限等⽅⾯的不同 13 趣链科技 版权所有 ©2016-2021 13 趣链科技 版权所有 ©2016-2021 130 码力 | 39 页 | 56.58 MB | 1 年前31.2 基于 Golang 构建高可扩展的云原生 PaaS 平台
⾃定义服务 服务市场 Kubernetes Rancher Openshift 私有云 公共 物理机 虚拟机 微服务治理平台 DevOps 平台 边缘监控 边缘站点管理 制品 快速分发部署 边缘⽇志 边缘计算平台 边缘数据收集 边缘算⼒调度 ⽹络⾃动容错 平台产品 核⼼引擎 容器服务 基础设施 数仓设计 数据智能平台 智能预测 智能客服 智能仓储 智能推荐 流程⾃动化0 码力 | 40 页 | 8.60 MB | 1 年前32.2.5 Go 如何助力企业进行微服务转型
• 建微服务迁移核⼼团队,经验、执⾏⼒、⾃驱⼒ 现状分析 • ⼀团乱麻型 • 数据清晰型 • 分布式单体型 改造策略 • 初期挑选精兵,后期可成为⼦项⽬核⼼⼈员 • 由外向内,由边缘到核⼼ • 数据拆分、迁移和验证,可回滚 • fork请求,proxy验证 • 定期复盘过程,总结可复制套路 • 汇报成果,让领导看到收益 数据拆分 • 数据不能乱,规则先确定0 码力 | 25 页 | 4.51 MB | 1 年前3Hello 算法 1.0.0 Golang版
spaceQuadraticRecur(n - 1) } 图 2‑18 递归函数产生的平方阶空间复杂度 4. 指数阶 ?(2?) 指数阶常见于二叉树。观察图 2‑19 ,层数为 ? 的“满二叉树”的节点数量为 2? − 1 ,占用 ?(2?) 空间: 第 2 章 复杂度分析 hello‑algo.com 48 // === File: space_complexity.go === /* 指数阶(建立满二叉树) 逻辑结构:线性与非线性 逻辑结构揭示了数据元素之间的逻辑关系。在数组和链表中,数据按照一定顺序排列,体现了数据之间的线 性关系;而在树中,数据从顶部向下按层次排列,表现出“祖先”与“后代”之间的派生关系;图则由节点 和边构成,反映了复杂的网络关系。 如图 3‑1 所示,逻辑结构可分为“线性”和“非线性”两大类。线性结构比较直观,指数据在逻辑关系上呈 线性排列;非线性结构则相反,呈非线性排列。 ‧ 线性 都是一个节点对象,各个节点通过“引用”相连接。 引用记录了下一个节点的内存地址,通过它可以从当前节点访问到下一个节点。 链表的设计使得各个节点可以分散存储在内存各处,它们的内存地址无须连续。 图 4‑5 链表定义与存储方式 观察图 4‑5 ,链表的组成单位是「节点 node」对象。每个节点都包含两项数据:节点的“值”和指向下一节 点的“引用”。 ‧ 链表的首个节点被称为“头节点”,最后一个节点被称为“尾节点”。0 码力 | 382 页 | 17.60 MB | 1 年前3Hello 算法 1.1.0 Go版
spaceQuadraticRecur(n - 1) } 图 2‑18 递归函数产生的平方阶空间复杂度 4. 指数阶 ?(2?) 指数阶常见于二叉树。观察图 2‑19 ,层数为 ? 的“满二叉树”的节点数量为 2? − 1 ,占用 ?(2?) 空间: 第 2 章 复杂度分析 hello‑algo.com 48 // === File: space_complexity.go === /* 指数阶(建立满二叉树) 逻辑结构:线性与非线性 逻辑结构揭示了数据元素之间的逻辑关系。在数组和链表中,数据按照一定顺序排列,体现了数据之间的线 性关系;而在树中,数据从顶部向下按层次排列,表现出“祖先”与“后代”之间的派生关系;图则由节点 和边构成,反映了复杂的网络关系。 如图 3‑1 所示,逻辑结构可分为“线性”和“非线性”两大类。线性结构比较直观,指数据在逻辑关系上呈 线性排列;非线性结构则相反,呈非线性排列。 ‧ 线性 都是一个节点对象,各个节点通过“引用”相连接。 引用记录了下一个节点的内存地址,通过它可以从当前节点访问到下一个节点。 链表的设计使得各个节点可以分散存储在内存各处,它们的内存地址无须连续。 图 4‑5 链表定义与存储方式 观察图 4‑5 ,链表的组成单位是节点(node)对象。每个节点都包含两项数据:节点的“值”和指向下一节 点的“引用”。 ‧ 链表的首个节点被称为“头节点”,最后一个节点被称为“尾节点”。0 码力 | 383 页 | 18.48 MB | 1 年前3Hello 算法 1.0.0b4 Golang版
return spaceQuadraticRecur(n - 1) } Figure 2‑12. 递归函数产生的平方阶空间复杂度 指数阶 ?(2?) 指数阶常见于二叉树。高度为 ? 的「满二叉树」的节点数量为 2? − 1 ,占用 ?(2?) 空间。 // === File: space_complexity.go === /* 指数阶(建立满二叉树) */ func buildTree(n 逻辑结构:线性与非线性 「逻辑结构」揭示了数据元素之间的逻辑关系。在数组和链表中,数据按照顺序依次排列,体现了数据之间的 线性关系;而在树中,数据从顶部向下按层次排列,表现出祖先与后代之间的派生关系;图则由节点和边构 成,反映了复杂的网络关系。 逻辑结构通常分为“线性”和“非线性”两类。线性结构比较直观,指数据在逻辑关系上呈线性排列;非线 性结构则相反,呈非线性排列。 ‧ 线性数据结构:数组、链表、栈、队列、哈希表。 「链表 Linked List」是一种线性数据结构,其每个元素都是一个节点对象,各个节点之间通过指针连接,从 当前节点通过指针可以访问到下一个节点。由于指针记录了下个节点的内存地址,因此无需保证内存地址的 连续性,从而可以将各个节点分散存储在内存各处。 链表「节点 Node」包含两项数据,一是节点「值 Value」,二是指向下一节点的「指针 Pointer」,或称「引 用 Reference」。0 码力 | 347 页 | 27.40 MB | 1 年前3Hello 算法 1.0.0b5 Golang版
spaceQuadraticRecur(n - 1) } 图 2‑18 递归函数产生的平方阶空间复杂度 4. 指数阶 ?(2?) 指数阶常见于二叉树。观察图 2‑19 ,高度为 ? 的“满二叉树”的节点数量为 2? − 1 ,占用 ?(2?) 空间: 第 2 章 复杂度分析 hello‑algo.com 46 // === File: space_complexity.go === /* 指数阶(建立满二叉树) 逻辑结构:线性与非线性 逻辑结构揭示了数据元素之间的逻辑关系。在数组和链表中,数据按照顺序依次排列,体现了数据之间的线 性关系;而在树中,数据从顶部向下按层次排列,表现出祖先与后代之间的派生关系;图则由节点和边构成, 反映了复杂的网络关系。 如图 3‑1 所示,逻辑结构可被分为“线性”和“非线性”两大类。线性结构比较直观,指数据在逻辑关系上 呈线性排列;非线性结构则相反,呈非线性排列。 ‧ 线 元素都是一个节点对象,各个节点通过“引用”相连接。 引用记录了下一个节点的内存地址,通过它可以从当前节点访问到下一个节点。 链表的设计使得各个节点可以被分散存储在内存各处,它们的内存地址是无须连续的。 图 4‑5 链表定义与存储方式 观察图 4‑5 ,链表的组成单位是「节点 node」对象。每个节点都包含两项数据:节点的“值”和指向下一节 点的“引用”。 ‧ 链表的首个节点被称为“头节点”,最后一个节点被称为“尾节点”。0 码力 | 379 页 | 30.70 MB | 1 年前3Hello 算法 1.2.0 简体中文 Go 版
spaceQuadraticRecur(n - 1) } 图 2‑18 递归函数产生的平方阶空间复杂度 4. 指数阶 ?(2?) 指数阶常见于二叉树。观察图 2‑19 ,层数为 ? 的“满二叉树”的节点数量为 2? − 1 ,占用 ?(2?) 空间: 第 2 章 复杂度分析 www.hello‑algo.com 48 // === File: space_complexity.go === /* 逻辑结构:线性与非线性 逻辑结构揭示了数据元素之间的逻辑关系。在数组和链表中,数据按照一定顺序排列,体现了数据之间的线 性关系;而在树中,数据从顶部向下按层次排列,表现出“祖先”与“后代”之间的派生关系;图则由节点 和边构成,反映了复杂的网络关系。 如图 3‑1 所示,逻辑结构可分为“线性”和“非线性”两大类。线性结构比较直观,指数据在逻辑关系上呈 线性排列;非线性结构则相反,呈非线性排列。 ‧ 线性 都是一个节点对象,各个节点通过“引用”相连接。 引用记录了下一个节点的内存地址,通过它可以从当前节点访问到下一个节点。 链表的设计使得各个节点可以分散存储在内存各处,它们的内存地址无须连续。 图 4‑5 链表定义与存储方式 观察图 4‑5 ,链表的组成单位是节点(node)对象。每个节点都包含两项数据:节点的“值”和指向下一节 点的“引用”。 ‧ 链表的首个节点被称为“头节点”,最后一个节点被称为“尾节点”。0 码力 | 384 页 | 18.49 MB | 9 月前303. Golang 在隐私计算平台建设中的实践 - 刘敬
权、追溯审计以及联盟治理理 • 隐私计算⽹网络 多节点通过p2p组⽹网,并基于安 全多⽅方计算、联邦学习、可信执 ⾏行行环境按照数据隐私密级进⾏行行价 值共享 • 业务应⽤用层 基于SDK接⼊入上层业务系统 趣链科技版权所有©2016 – 2021 10 隐私计算流程 • 通过区块链进⾏行行数据使⽤用权限 的控制以及隐私计算任务的协 作 • 链下节点间基于隐私计算算 法,使⽤用多⽅方数据进⾏行行密态计 算,利利⽤用密码学算法达到“明 ⽂文数据不不出本地,计算结果定 向汇集”的数据计算效果,解 决隐私数据难使⽤用的问题。 区块链节点 隐私计算节点 本地数据库 发起⽅方节点 隐私计算节点 本地数据库 参与⽅方节点A 隐私计算节点 本地数据库 参与⽅方节点B 1.创建任务 2.完善⼦子模型 并分发 3. 权限校验 5. 执⾏行行隐私计 算算法 4.模型审核 6.返回隐私计算结果 16 隐私计算算法通⽤用流程抽象 1 发起⽅方 参与⽅方1 参与⽅方n 3 2 2 本质上是有向图(类似计算图),节点代表计算逻辑(不不同 节点逻辑可能相同,可能不不同),连线代表中间计算数据 (箭头指向被需要的计算逻辑) 4 7 5 6 特点 节点位于不不同机构 隐私计算参与⽅方属于不不同机构,且部 分算法参与⽅方数量量不不限,存在机构间 中间数据交换 计算逻辑异构0 码力 | 37 页 | 6.20 MB | 1 年前3
共 33 条
- 1
- 2
- 3
- 4