MoonBit月兔编程语言 现代编程思想 第十二课 案例:自动微分现代编程思想 案例:⾃动微分 Hongbo Zhang 1 微分 微分被应⽤于机器学习领域 利⽤梯度下降求局部极值 ⽜顿迭代法求函数解: 我们今天研究简单的函数组合 例: 2 ⽜顿迭代法 3 ⽜顿迭代法 4 ⽜顿迭代法 5 ⽜顿迭代法 6 ⽜顿迭代法 7 ⽜顿迭代法 8 ⽜顿迭代法 9 ⽜顿迭代法 10 ⽜顿迭代法 11 微分 微分被应⽤于机器学习领域 Forward::var(100.0, true) |> debug 23 案例:⽜顿迭代法求零点 1. fn example_newton[N : Number](x : N) -> N { 2. x * x * x + N::constant(-10.0) * x * x + x + N::constant(1.0) 3. } 24 案例:⽜顿迭代法求零点 通过循环进⾏迭代 1. fn init0 码力 | 30 页 | 3.24 MB | 1 年前3
MoonBit月兔编程语言 现代编程思想 第十三课 案例:神经网络现代编程思想 案例:基于梯度下降的神经⽹络 Hongbo Zhang 1 案例:鸢尾花 鸢尾花数据集是机器学习中的"Hello World" 1936年发布 包含对3种鸢尾花的测量,各有50个样本 每个样本包含4项特征:花萼与花瓣的⻓度和宽度 ⽬标 通过特征,判断属于哪⼀类鸢尾花 构建并训练神经⽹络,正确率95%以上 2 神经⽹络 神经⽹络是机器学习的⼀种 模拟⼈的⼤脑神经结构0 码力 | 17 页 | 521.66 KB | 1 年前3
MoonBit月兔编程语言 现代编程思想 第十四课 案例:堆栈虚拟机现代编程思想 案例:栈式虚拟机 Hongbo Zhang 1 编译与解释 编译 源程序 x 编译器 -> ⽬标程序 ⽬标程序 x 输⼊数据 -> 输出数据 解释 源程序 x 输⼊数据 x 解释器 -> 输出数据 CPU可以被视为⼴义上的解释器 拓展阅读:⼆村映射/部分计算 部分计算:程序优化,根据已知信息,运算进⾏特化 已知源程序与解释器,进⾏部分运算,获得⽬标程序 ⽬标程序0 码力 | 31 页 | 594.38 KB | 1 年前3
MoonBit月兔编程语言 现代编程思想 第十一课 案例:语法解析器与Tagless Final现代编程思想 案例:语法解析器 Hongbo Zhang 1 语法解析器 案例⽬标 解析基于⾃然数的数学表达式: "(1+ 5) * 7 / 2" 转化为单词列表 LParen Value(1) Plus Value(5) Multiply Value(7) Divide Value(2) 转化为抽象语法树 Division(Multiply(Add(Value(1), Value(5))0 码力 | 25 页 | 400.29 KB | 1 年前3
Golang 入门笔记关系运算符的结果都是 bool 类型,要么是 true , 要么是 false 2. 关系表达式,经常在 if 结构的条件中或者循环结构的条件中 关系运算法(比较运算符) 关系运算符表格 案例代码 细节说明 1. 关系运算符的结果都是 bool 类型, 也就是要么是 true, 要么是 false 2. 关系运算符组成的表达式,我们称为关系表达式: a > b 3.比较运算符 “==” 字符串 符号 分隔符 Go 语言一行代表一个语句的结束,不像 C 家族语言一样以分号结束 如果一个语句写多行就需要加一个分号,不推荐 字符串连接 Go 语言字符串连接通过 `+` 实现 案例 : fmt.Println("Google " + "Runoob") 关键字 关键字或保留字 预定义标识符 Go 语言的空格 1. 变量声明必须用空格隔开。例如: var age int 类型数据只允许取值 ture 和 flase 2. bool 类型占 1个字节 3. bool 类型适用与逻辑运算,一般用于程序流程控制 运用场景 if 条件控制语句 for 循环控制语句 测试案例 2. 数字类型 int , float32, float64 , Go 语言支持整型和浮点数字,并且支持复数,其中位运算采用补码 数字类型 uint8 无符号 8 位整性 0 - 2560 码力 | 2 页 | 511.29 KB | 1 年前3
PaddleDTX 1.0.0 中文文档2022 年 01 月 25 日 整体介绍 1 系统介绍 1 2 基本概念 3 3 正在进行中 5 4 快速安装 7 5 编译和安装 9 6 客户端工具 21 7 案例应用-线性回归算法测试 27 8 案例应用-逻辑回归算法测试 33 9 部署架构 37 10 Distributed AI 39 11 XuperDB 41 12 Crypto 45 13 我们的团队 49 PaddleDTX/scripts $ sh network_up.sh start 使用脚本也可以快速销毁网络: $ sh network_up.sh stop 关于 PaddleDTX 的使用可以参考命令行工具及相关案例。 7 PaddleDTX Documentation 8 Chapter 4. 快速安装 CHAPTER5 编译和安装 5.1 源码编译和安装 5.1.1 环境准备 PaddleDTX -o: 预测结果的导出文件 26 Chapter 6. 客户端工具 CHAPTER7 案例应用-线性回归算法测试 在本节中,我们使用 PaddleDTX 解决波士顿房价预测问题,帮助您更好的理解 PaddleDTX。 您可以参考 快速安装 来准备 PaddleDTX 的环境。 7.1 案例简介 本案例中我们使用了来自 UCI 机器学习数据库中的波士顿房屋信息数据。该数据集统计了波士顿郊区不动产0 码力 | 57 页 | 624.94 KB | 1 年前3
PaddleDTX 1.1.0 中文文档2022 年 03 月 29 日 整体介绍 1 系统介绍 1 2 基本概念 3 3 正在进行中 7 4 快速安装 9 5 编译和安装 11 6 客户端工具 23 7 案例应用-线性回归算法测试 29 8 案例应用-逻辑回归算法测试 35 9 部署架构 39 10 Distributed AI 41 11 XuperDB 49 12 Crypto 53 13 我们的团队 57 PaddleDTX/scripts $ sh network_up.sh start 使用脚本也可以快速销毁网络: $ sh network_up.sh stop 关于 PaddleDTX 的使用可以参考命令行工具及相关案例。 9 PaddleDTX Documentation 10 Chapter 4. 快速安装 CHAPTER5 编译和安装 5.1 源码编译和安装 5.1.1 环境准备 PaddleDTX -o: 预测结果的导出文件 28 Chapter 6. 客户端工具 CHAPTER7 案例应用-线性回归算法测试 在本节中,我们使用 PaddleDTX 解决波士顿房价预测问题,帮助您更好的理解 PaddleDTX。 您可以参考 快速安装 来准备 PaddleDTX 的环境。 7.1 案例简介 本案例中我们使用了来自 UCI 机器学习数据库中的波士顿房屋信息数据。该数据集统计了波士顿郊区不动产0 码力 | 65 页 | 687.09 KB | 1 年前3
PaddleDTX 1.0.0 中文文档快速安装 编译和安装 源码编译和安装 通过 docker 安装 客户端工具 操作XuperDB 操作Distributed AI 案例应用-线性回归算法测试 案例简介 测试脚本说明 上传样本文件 训练任务 预测任务 模型评估 案例应用-逻辑回归算法测试 案例简介 测试脚本说明 上传样本文件 训练任务 预测任务 模型评估 系统详解 部署架构 计算需求方(Requester) 任务执行节点(Executor PaddleDTX/scripts $ sh network_up.sh start 使用脚本也可以快速销毁网络: $ sh network_up.sh stop 关于PaddleDTX的使用可以参考命令行工具及相关案例。 编译和安装 源码编译和安装 环境准备 PaddleDTX 使用 golang 进行开发,当您使用源码进行编译和安装时,首先需 要准备源码以及编译的环境: 系统环境, 推荐使用Linux或MacOS操作系统 可以用-k 参数直接指定私钥 –conf: 指定使用的配置文件 -o: 预测结果的导出文件 案例应用-线性回归算法测试 在本节中,我们使用 PaddleDTX 解决波士顿房价预测问题,帮助您更好的理 解 PaddleDTX。 您可以参考 快速安装 来准备 PaddleDTX 的环境。 案例简介 本案例中我们使用了来自 UCI 机器学习数据库中的波士顿房屋信息数据。该 数据集统计了波士顿郊区不0 码力 | 53 页 | 1.36 MB | 1 年前3
PaddleDTX 1.1.0 中文文档快速安装 编译和安装 源码编译和安装 通过 docker 安装 客户端工具 操作XuperDB 操作Distributed AI 案例应用-线性回归算法测试 案例简介 测试脚本说明 上传样本文件 训练任务 预测任务 模型评估 案例应用-逻辑回归算法测试 案例简介 测试脚本说明 上传样本文件 训练任务 预测任务 模型评估 系统详解 部署架构 计算需求方(Requester) 任务执行节点(Executor PaddleDTX/scripts $ sh network_up.sh start 使用脚本也可以快速销毁网络: $ sh network_up.sh stop 关于PaddleDTX的使用可以参考命令行工具及相关案例。 编译和安装 源码编译和安装 环境准备 PaddleDTX 使用 golang 进行开发,当您使用源码进行编译和安装时,首先需 要准备源码以及编译的环境: 系统环境, 推荐使用Linux或MacOS操作系统 可以用-k 参数直接指定私钥 –conf: 指定使用的配置文件 -o: 预测结果的导出文件 案例应用-线性回归算法测试 在本节中,我们使用 PaddleDTX 解决波士顿房价预测问题,帮助您更好的理 解 PaddleDTX。 您可以参考 快速安装 来准备 PaddleDTX 的环境。 案例简介 本案例中我们使用了来自 UCI 机器学习数据库中的波士顿房屋信息数据。该 数据集统计了波士顿郊区不0 码力 | 57 页 | 1.38 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 08 CUDA 开启的 GPU 编程。意思是我们访问了非法的地 址,和 CPU 上的 Segmentation Fault 差不多。 封装好了: helper_cuda.h • 其实 CUDA toolkit 安装时,会默认附带一系列案例代码, 这些案例中提供了一些非常有用的头文件和工具类,比如这 个文件: • /opt/cuda/samples/common/inc/helper_cuda.h • 把他和 helper_string 样和之前作为核函数参数是一样的,不过 是作为 Func 结构体统一传入了。 如何捕获外部变量? • 或者在 [] 里这样直接写自定义捕获的表达 式也是可以的,这样就可以用同一变量名 。 第 5 章:数学运算 经典案例,并行地求 sin 值 • 就让我们在 GPU 上并行地计算从 sin(0) 到 sin(65535) 的值,并填入到数组 arr 中。 • 这里为什么用 sinf 而不是 sin ? • 章:原子操作 经典案例:数组求和 • 如何并行地对数组进行求和操作? • 首先让我们试着用串行的思路来解题。 • 因为 __global__ 函数不能返回值,只能 通过指针。因此我们先分配一个大小为 1 的 sum 数组,其中 sum[0] 用来返回数 组的和。这样我们同步之后就可以通过 sum[0] 看到求和的结果了。 • 可是算出来的结果却明显不对,为什么? 经典案例:数组求和0 码力 | 142 页 | 13.52 MB | 1 年前3
共 217 条
- 1
- 2
- 3
- 4
- 5
- 6
- 22













