李欣宜 扩展Python的语法和语义Python的语法扩展系统 Moshmosh Thautwarm&李欣宜 The awareness of low-level implementation details brings the appreciation of an abstraction and the intuitive explanation for it. — Oleg Kiselyov 表达式和语句区分,表达式内部不能包含语句 4. 没有语法宏,代码操作不够自动 5. 没有variant类型(只能靠一大堆抽象类和继承去workaround) 6. 对数据类型的方法不能扩展, 或者进行扩展是初级的,没有基于 类型的多态 那么告辞? 搭嘎!阔托瓦鲁! 摆 脱 编 程 语 言 给 你 的 限 制 Python有一堆好东西: 1. Python有良好的启动速度(看向Julia) 我预期的语法(及语义) 扩展系统: 1. 首行用moshmosh? 标志模块 2. +extension名 (extension参数)开 启扩展 3. -extension名 (extension参数)关 闭扩展 4. 可以自定义扩展并 注册 5. 在这套系统下,有 很多简单的自定义 扩展可供练手 任何在不使用该系统时拥有的功能(PYC二进制文 件发布,C扩展等等),在使用该系统后得以保持,拥0 码力 | 39 页 | 3.69 MB | 1 年前3
1.2 基于 Golang 构建高可扩展的云原生 PaaS 平台基于 Golang 构建⾼可扩展的云原⽣ PaaS 平台 刘浩杨 端点 技术专家 个⼈简介 - 18年加⼊端点,现任微服务和监控团队负责⼈ - 端点开源 PaaS Erda 的核⼼架构师 - 开源爱好者, Apache SkyWalking PMC 成员 ⽬ 录 ⾯向云原⽣的软件交付 01 端点⼀站式 PaaS - Erda 02 Erda 架构的思考 03 模块化开发框架 release_id: ${release:id} pipeline.yml 定义 - 屏蔽掉流⽔线定义的复杂度 - 丰富的通⽤Action,开箱即⽤ - Action 扩展规范,任意扩展 Workload 管理 - Create - Update - Delete - Describe - Scale - Restart services: trade-server: 接⼝设计、以及拦截器 • 提供快速构建模块的代码⽣成⼯具 Erda Infra 如何设计 Erda Infra 有什么不同 - 不是重复造轮⼦ - 不仅是web框架 - 不仅是微服务框架 - 为扩展⽽⽣ - 以模块化的开发为核⼼ VS 模块化开发原则 - ⾯向接⼝进⾏开发,⽽不是⾯向实现 - 模块拆分的粒度尽可能⼩ - 模块内聚,模块间松耦合 - 模块间的引⽤使⽤DI⽽不是直接依赖实现包0 码力 | 40 页 | 8.60 MB | 1 年前3
4 Python语法扩展框架Moshmosh和其上的CPython compatible JIT实现 thautwarm0 码力 | 30 页 | 8.04 MB | 1 年前3
4_杨柳_基于Python构建高稳定可扩展的自动化测试集群0 码力 | 62 页 | 25.29 MB | 1 年前3
3 Thautwarm 解放python的表达力 性能和安全性 语法和语义扩展 JIT 静态检查解放Python的 表达力,性能和安全性 Thautwarm 目录 CONTENTS 语法和语义扩展 JIT 静态类型 语法和语义扩展 表达力的扩展, 可用性的保留,白来的午餐? 演示一小部分: 模式匹配, Quick Lambda, Pipe运算 语言决定思维模型 GNU-APL C++ Haskell 说 到 质 数 � 人 们 想 到 什 么 � 语言决定思维模型 但它们不够“万金油”的问题 来源,不一定是不能解决的。 扩展语言,开阔思维 我预期的语法(及语义) 扩展系统: 1. 首行用moshmosh? 标志模块 2. +extension名 (extension参数)开 启扩展 3. -extension名 (extension参数)关 闭扩展 4. 可以自定义扩展并 注册 5. 在这套系统下,有 很多简单的自定义 扩展可供练手 任何在不使用该系统时拥有的功能(PYC二进制文件 任何在不使用该系统时拥有的功能(PYC二进制文件 发布,C扩展等等),在使用该系统后得以保持,拥有 工业级的可靠性和稳定性 6 如何工作? Python Import 忽略Cache Loader, 只对源代码Loader 重写get_data方法 调用父get_data方法, 拿到源代码 moshmosh.extension. perform_extension 源码变换 扩展的语法和语义 并非naïve的,不卫生的0 码力 | 43 页 | 10.71 MB | 1 年前3
2020美团技术年货 算法篇型,更多的模型处理层级,以及更多的业务。在这样的需求背景下,老框架开始出现 了一些局限性,主要包括以下三个层面: 6 > 美团 2020 技术年货 ● 性能瓶颈:核心层的模型预估的 Size 扩展到数千级别文档的时候,单机已经 难以承载;近百万个特征值的传输开销已经难以承受。 ● 复用困难:模型预估能力已经成为一个通用的需求,单搜索就有几十个场景都 需要该能力;而老逻辑的业务耦合性让复用变得更加困难。 型 和特征的管理,包括但不限于配置、上线、灰度、验证等等。 3.2 新框架的边界 跟所有新系统的诞生故事一样,老系统一定会出现问题。原有架构在少特征以及小模 型下虽有优势,但业务耦合,无法横向扩展,也难以复用。针对需求和老框架的种种 问题,我们开始构建了新的高性能分布式模型预估框架 Augur,该框架指导思路是: ● 业务解耦,设定框架边界:只做特征抽取和模型预估,对预估结果的处理等业 特征表达式测试接口、模型单独测试接口、特征模型刷新接口、特征依赖检等 等一系列接口,这样才可以保证整个系统的可用性,并为后面管理平台的建设 打下基础。 Augur 在完成了以上多种能力的建设之后,就可以当做一个功能相对完善且易扩展的在 算法 < 15 线预估系统。由于我们在构建 Augur 的时候,设立了明确的边界,故以上能力是独立 于业务的,可以方便地进行复用。当然,Augur 的功能管理,更多的业务接入,都需要 管理平台的承载。于是,我们就构建了0 码力 | 317 页 | 16.57 MB | 1 年前3
PaddleDTX 1.0.0 中文文档存储问题,并且实现多方数据的安全交换,助其突破数据孤岛,共同建模,联合发挥数据的最大价值。 1.1 主要特征 PaddleDTX 的主要特征如下: • 支持多个学习过程并行运行的多方安全计算框架,集成多种横向联邦学习和纵向联邦学习算法 • 安全存储高敏感数据,防止隐私泄漏,支持故障容错,抵御存储作弊 • 去中心化管理存储节点,支持无上限数据纳管 • 保证多方数据联合建模的全链路可信 1.2 架构概览 SMPC(多方安全计算)网络。计算需求节点将任务发布到区块链网络,任务执行节点确 认后执行任务。数据持有节点对任务执行节点的计算数据做信任背书。 SMPC 是一个支持多个学习过程并行运行的框架,会陆续集成更多纵向联邦学习、横向联邦学习算法。 1.2.2 1.2 去中心化存储网络 数据持有节点将自己的隐私数据进行加密、切分、副本复制后分发到存储节点,存储节点通过应答数据持有 节点的挑战证明自己持有数据分片。通过这些机 得到最终结果。 4 Chapter 2. 基本概念 CHAPTER3 正在进行中 我们即将支持的主要功能如下: 1. 支持更多的机器学习算法和对应的分布式改造,主要包括神经网络、决策树等; 2. 支持横向联邦学习算法,计划先对多元线性回归和多元逻辑回归进行改造; 3. 提供联邦学习训练参数的评估能力,通过交叉验证等方式评估训练参数的优劣; 4. 优化目前使用的加法同态算法 Paillier 的性能;0 码力 | 57 页 | 624.94 KB | 1 年前3
PaddleDTX 1.1.0 中文文档存储问题,并且实现多方数据的安全交换,助其突破数据孤岛,共同建模,联合发挥数据的最大价值。 1.1 主要特征 PaddleDTX 的主要特征如下: • 支持多个学习过程并行运行的多方安全计算框架,集成多种横向联邦学习和纵向联邦学习算法 • 安全存储高敏感数据,防止隐私泄漏,支持故障容错,抵御存储作弊 • 去中心化管理存储节点,支持无上限数据纳管 • 保证多方数据联合建模的全链路可信 1.2 架构概览 SMPC(多方安全计算)网络。计算需求节点将任务发布到区块链网络,任务执行节点确 认后执行任务。数据持有节点对任务执行节点的计算数据做信任背书。 SMPC 是一个支持多个学习过程并行运行的框架,会陆续集成更多纵向联邦学习、横向联邦学习算法。 1.2.2 1.2 去中心化存储网络 数据持有节点将自己的隐私数据进行加密、切分、副本复制后分发到存储节点,存储节点通过应答数据持有 节点的挑战证明自己持有数据分片。通过这些机 Documentation 6 Chapter 2. 基本概念 CHAPTER3 正在进行中 我们即将支持的主要功能如下: 1. 支持更多的机器学习算法和对应的分布式改造,主要包括神经网络、决策树等; 2. 支持横向联邦学习算法,计划先对多元线性回归和多元逻辑回归进行改造; 3. 优化目前使用的加法同态算法 Paillier 的性能; 4. 去中心化存储服务支持负载均衡策略,根据存储节点剩余资源和以往表现情况,在文件分发时找到最0 码力 | 65 页 | 687.09 KB | 1 年前3
PaddleDTX 1.0.0 中文文档案,攻克海量隐私数据的安全存储问题,并且实现多方数据的安全交换,助其 突破数据孤岛,共同建模,联合发挥数据的最大价值。 主要特征 PaddleDTX的主要特征如下: 支持多个学习过程并行运行的多方安全计算框架,集成多种横向联邦学习 和纵向联邦学习算法 安全存储高敏感数据,防止隐私泄漏,支持故障容错,抵御存储作弊 去中心化管理存储节点,支持无上限数据纳管 保证多方数据联合建模的全链路可信 架构概览 PaddleDT 络。计算需求节点将任务发布到区块链网络,任务执行节点确认后执行任务。 数据持有节点对任务执行节点的计算数据做信任背书。 SMPC是一个支持多个学习过程并行运行的框架,会陆续集成更多纵向联邦学 习、横向联邦学习算法。 1.2 去中心化存储网络 数据持有节点将自己的隐私数据进行加密、切分、副本复制后分发到存储节 点,存储节点通过应答数据持有节点的挑战证明自己持有数据分片。通过这些 机制,实现了在 地,在预测时,任务执行节点使用各自的模型进行计算,再汇总得到最终结 果。 正在进行中 我们即将支持的主要功能如下: 1. 支持更多的机器学习算法和对应的分布式改造,主要包括神经网络、决策 树等; 2. 支持横向联邦学习算法,计划先对多元线性回归和多元逻辑回归进行改 造; 3. 提供联邦学习训练参数的评估能力,通过交叉验证等方式评估训练参数的 优劣; 4. 优化目前使用的加法同态算法Paillier的性能;0 码力 | 53 页 | 1.36 MB | 1 年前3
美团点评2018技术年货数据JSON化 数据JSON化 随着业务的不断迭代,无论采用怎样的数据字段组成,都无法满足业务变化的字段(这里是指像标题、副 标题、图片、跳转链接等)要求。对底层数据进行JSON化,其对应的数据字段完全可动态扩展,从而满 足业务不断迭代的需求。JSON化随之也会带来运营位字段管理的问题,我们通过字段管理的工具来解决 这个问题。 运营流程化 运营流程化 设计一套整体的流程管理机制,解决运营的投放、审核 方案,都无法彻底解决服务中心化 和服务抖动的问题。通过接入的SDK化,可以做到数据的本地缓存更新机制,解除对中心化服务的依赖, 大大提升服务的稳定性和性能。同时整个APPKIT服务变成可水平扩展,在扩展过程中也不会影响中心服 务的稳定性。 四、APPKIT架构 四、APPKIT架构 APPKIT运营配置系统整体框架如下(数据流向如箭头所示)。从功能角度,大体上分为四层:数据层、 服务层、接入层和监控层。 务变化的大部分需求。注意,这里我们只是对业务需求的宏观表现形式进行建模,对于具体Node和 Content里的有哪些字段(标题、副标题、图片、跳转链接),这些都是JSON化的存储格式,可以满足 任意字段的扩展。 5.4 模型的应用与小结 5.4 模型的应用与小结 通过以上经典实例,我们可以很容易通过我们的数据模型解决这个问题。我们再回到文章最开头的背景章 节的运营场景,Banner位,如下: A0 码力 | 229 页 | 61.61 MB | 1 年前3
共 375 条
- 1
- 2
- 3
- 4
- 5
- 6
- 38













