 消息中间件RocketMQ原理解析 - 斩秋2.2.4 事物回查 定时回查线程会定时扫描(默认每分钟)每个存储事务状态的表格文件, 遍历存储事 务状态的表格记录 如果是已经提交或者回滚的消息调过过, 如果是 prepared 状态的如果消息小于事务回查至少间隔时间(默认是一分钟)跳出终 止遍历 调 transactionCheckExecuter.gotocheck 方法向 producer 回查事物状态, producer 注 册 的 回 调 接 口 , 处 理 回 调 , 在 调 endTransactionOneway 向 broker 发送请求更新事物消息的最终状态 无 Prepared 消息,且遍历完,则终止扫描这个文件的定时任务 2.2.5 事物消息的 load&recover TransactionStateService.load ()事物状态服务加载, 加载只是建立文件映射 二:消费端负载均衡 消费端会通过 RebalanceService 线程,10 秒钟做一次基于 topic 下的所有队列负载 消费端遍历自己的所有 topic,依次调 rebalanceByTopic 根据 topic 获取此 topic 下的所有 queue 选择一台 broker 获取基于 group 的所有消费端(有心跳向所有0 码力 | 57 页 | 2.39 MB | 1 年前3 消息中间件RocketMQ原理解析 - 斩秋2.2.4 事物回查 定时回查线程会定时扫描(默认每分钟)每个存储事务状态的表格文件, 遍历存储事 务状态的表格记录 如果是已经提交或者回滚的消息调过过, 如果是 prepared 状态的如果消息小于事务回查至少间隔时间(默认是一分钟)跳出终 止遍历 调 transactionCheckExecuter.gotocheck 方法向 producer 回查事物状态, producer 注 册 的 回 调 接 口 , 处 理 回 调 , 在 调 endTransactionOneway 向 broker 发送请求更新事物消息的最终状态 无 Prepared 消息,且遍历完,则终止扫描这个文件的定时任务 2.2.5 事物消息的 load&recover TransactionStateService.load ()事物状态服务加载, 加载只是建立文件映射 二:消费端负载均衡 消费端会通过 RebalanceService 线程,10 秒钟做一次基于 topic 下的所有队列负载 消费端遍历自己的所有 topic,依次调 rebalanceByTopic 根据 topic 获取此 topic 下的所有 queue 选择一台 broker 获取基于 group 的所有消费端(有心跳向所有0 码力 | 57 页 | 2.39 MB | 1 年前3
 机器学习课程-温州大学-08机器学习-集成学习XGBoost 使用贪心方法,选增益( ???? )最大的分裂方式 贪心方法,众多????中找到最大值做为最优分割节点(split point),因此模型会 将所有样本按照(一阶梯度)从小到大排序,通过遍历,查看每个节点是否需要 分割,计算复杂度是:决策树叶子节点数 – 1。 XGBoost的分裂方式 35 4.LightGBM 01 集成学习方法概述 02 Adaboost和GBDT算法 4.LightGBM 直方图算法 直方图算法的基本思想是将连续的特征离散化为?个离散特征,同时构造 一个宽度为?的直方图用于统计信息(含有 ? 个 bin)。利用直方图算法 我们无需遍历数据,只需要遍历 ? 个 bin 即可找到最佳分裂点。 44 4.直方图算法 ? 1 2 3 4 5 6 7 8 ?? 0.1 2.1 2.5 3.0 3.0 4.0 4.5 5.0 ?? 0.010 码力 | 50 页 | 2.03 MB | 1 年前3 机器学习课程-温州大学-08机器学习-集成学习XGBoost 使用贪心方法,选增益( ???? )最大的分裂方式 贪心方法,众多????中找到最大值做为最优分割节点(split point),因此模型会 将所有样本按照(一阶梯度)从小到大排序,通过遍历,查看每个节点是否需要 分割,计算复杂度是:决策树叶子节点数 – 1。 XGBoost的分裂方式 35 4.LightGBM 01 集成学习方法概述 02 Adaboost和GBDT算法 4.LightGBM 直方图算法 直方图算法的基本思想是将连续的特征离散化为?个离散特征,同时构造 一个宽度为?的直方图用于统计信息(含有 ? 个 bin)。利用直方图算法 我们无需遍历数据,只需要遍历 ? 个 bin 即可找到最佳分裂点。 44 4.直方图算法 ? 1 2 3 4 5 6 7 8 ?? 0.1 2.1 2.5 3.0 3.0 4.0 4.5 5.0 ?? 0.010 码力 | 50 页 | 2.03 MB | 1 年前3
 机器学习课程-温州大学-07机器学习-决策树个离散值。 分类标准是:每一次将其中一个特征 分为一类,其他非该特征分为另一类 。依照这个标准遍历所有分类情况, 计算每个分类下的基尼指数,最后选 择最小的作为最终的特征划分。 比如第1次取{?1}为类别1,那么剩下的特征{?2 , ?3,……, ??−1, ??}为类别2,由此 遍历,第?次取{ ??}为类别1,那么剩下的特征{?1,?2 , ?3,……, ??−1}为类别2。 这种方法需要使用一个单独的测试数据集来评估所有的树,根据它们在测试数据 集熵的分类性能选出最佳的树。 36 CART算法 CART剪枝 具体流程: (1)计算每一个结点的条件熵 (2)递归的从叶子节点开始往上遍历, 减掉叶子节点,然后判断损失函数的 值是否减少,如果减少,则将父节点 作为新的叶子节点 (3)重复(2),直到完全不能剪枝. 平坦 纹理 色泽 好瓜 坏瓜 根蒂 色泽 脐部 坏瓜0 码力 | 39 页 | 1.84 MB | 1 年前3 机器学习课程-温州大学-07机器学习-决策树个离散值。 分类标准是:每一次将其中一个特征 分为一类,其他非该特征分为另一类 。依照这个标准遍历所有分类情况, 计算每个分类下的基尼指数,最后选 择最小的作为最终的特征划分。 比如第1次取{?1}为类别1,那么剩下的特征{?2 , ?3,……, ??−1, ??}为类别2,由此 遍历,第?次取{ ??}为类别1,那么剩下的特征{?1,?2 , ?3,……, ??−1}为类别2。 这种方法需要使用一个单独的测试数据集来评估所有的树,根据它们在测试数据 集熵的分类性能选出最佳的树。 36 CART算法 CART剪枝 具体流程: (1)计算每一个结点的条件熵 (2)递归的从叶子节点开始往上遍历, 减掉叶子节点,然后判断损失函数的 值是否减少,如果减少,则将父节点 作为新的叶子节点 (3)重复(2),直到完全不能剪枝. 平坦 纹理 色泽 好瓜 坏瓜 根蒂 色泽 脐部 坏瓜0 码力 | 39 页 | 1.84 MB | 1 年前3
 Hadoop 迁移到阿里云MaxCompute 技术方案UDTF SQL 了,用法如下: Alibaba Cloud MaxCompute 解决方案 34 5. ODPS DDL 创建好以后,odps_ddl_runner.py 将会遍历 meta-processor 生成的目录,调 用 odpscmd 自动创建 ODPS 表与分区。 Alibaba Cloud MaxCompute 解决方案 35 【注意】:odps_ddl_runner spm=a2c4g.11186623.2.16.2fbaa9 5emqdrea#concept-qbk-1kv-tdb 6. 表和分区创建完成以后,hive_udtf_sql_runner.py 将会遍历 meta-processor 生成的目 录,调用 hive client 运行 hive udtf sql,从而将数据从 hive 上传至 MaxCompute。 Alibaba Cloud Cloud MaxCompute 解决方案 55 在 input_all 模式下,我们给一个 meta-processor 生成的目录,之后 odps_hive_udtf_runner 会自动遍历该目录下的文件,并串行执行里面的 hive sql, 例如: python3 odps-data-carrier/bin/hive_udtf_sql_runner.py --input_all0 码力 | 59 页 | 4.33 MB | 1 年前3 Hadoop 迁移到阿里云MaxCompute 技术方案UDTF SQL 了,用法如下: Alibaba Cloud MaxCompute 解决方案 34 5. ODPS DDL 创建好以后,odps_ddl_runner.py 将会遍历 meta-processor 生成的目录,调 用 odpscmd 自动创建 ODPS 表与分区。 Alibaba Cloud MaxCompute 解决方案 35 【注意】:odps_ddl_runner spm=a2c4g.11186623.2.16.2fbaa9 5emqdrea#concept-qbk-1kv-tdb 6. 表和分区创建完成以后,hive_udtf_sql_runner.py 将会遍历 meta-processor 生成的目 录,调用 hive client 运行 hive udtf sql,从而将数据从 hive 上传至 MaxCompute。 Alibaba Cloud Cloud MaxCompute 解决方案 55 在 input_all 模式下,我们给一个 meta-processor 生成的目录,之后 odps_hive_udtf_runner 会自动遍历该目录下的文件,并串行执行里面的 hive sql, 例如: python3 odps-data-carrier/bin/hive_udtf_sql_runner.py --input_all0 码力 | 59 页 | 4.33 MB | 1 年前3
 动手学深度学习 v2.0很熟悉。因此,尽管单个向量的默认方向是列向量,但在表示表格数据集的矩阵中,将每个数据样本作为矩 阵中的行向量更为常见。后面的章节将讲到这点,这种约定将支持常见的深度学习实践。例如,沿着张量的 最外轴,我们可以访问或遍历小批量的数据样本。 2.3.4 张量 就像向量是标量的推广,矩阵是向量的推广一样,我们可以构建具有更多轴的数据结构。张量(本小节中的 “张量”指代数对象)是描述具有任意数量轴的n维数组的通用方法。例如,向量是一阶张量,矩阵是二阶张 它通过不断地在损失函数递减的方向上更新参数来降低误差。 梯度下降最简单的用法是计算损失函数(数据集中所有样本的损失均值)关于模型参数的导数(在这里也可 以称为梯度)。但实际中的执行可能会非常慢:因为在每一次更新参数之前,我们必须遍历整个数据集。因此, 我们通常会在每次需要计算更新的时候随机抽取一小批样本,这种变体叫做小批量随机梯度下降(minibatch stochastic gradient descent)。 在每次 d2l import torch as d2l 为了说明矢量化为什么如此重要,我们考虑对向量相加的两种方法。我们实例化两个全为1的10000维向量。 在一种方法中,我们将使用Python的for循环遍历向量;在另一种方法中,我们将依赖对+的调用。 n = 10000 a = torch.ones([n]) b = torch.ones([n]) 由于在本书中我们将频繁地进行运行时间的基准测试,所以我们定义一个计时器:0 码力 | 797 页 | 29.45 MB | 1 年前3 动手学深度学习 v2.0很熟悉。因此,尽管单个向量的默认方向是列向量,但在表示表格数据集的矩阵中,将每个数据样本作为矩 阵中的行向量更为常见。后面的章节将讲到这点,这种约定将支持常见的深度学习实践。例如,沿着张量的 最外轴,我们可以访问或遍历小批量的数据样本。 2.3.4 张量 就像向量是标量的推广,矩阵是向量的推广一样,我们可以构建具有更多轴的数据结构。张量(本小节中的 “张量”指代数对象)是描述具有任意数量轴的n维数组的通用方法。例如,向量是一阶张量,矩阵是二阶张 它通过不断地在损失函数递减的方向上更新参数来降低误差。 梯度下降最简单的用法是计算损失函数(数据集中所有样本的损失均值)关于模型参数的导数(在这里也可 以称为梯度)。但实际中的执行可能会非常慢:因为在每一次更新参数之前,我们必须遍历整个数据集。因此, 我们通常会在每次需要计算更新的时候随机抽取一小批样本,这种变体叫做小批量随机梯度下降(minibatch stochastic gradient descent)。 在每次 d2l import torch as d2l 为了说明矢量化为什么如此重要,我们考虑对向量相加的两种方法。我们实例化两个全为1的10000维向量。 在一种方法中,我们将使用Python的for循环遍历向量;在另一种方法中,我们将依赖对+的调用。 n = 10000 a = torch.ones([n]) b = torch.ones([n]) 由于在本书中我们将频繁地进行运行时间的基准测试,所以我们定义一个计时器:0 码力 | 797 页 | 29.45 MB | 1 年前3
 【PyTorch深度学习-龙龙老师】-测试版202112数 预览版202112 5.8 MNIST 测试实战 31 # training... 此外,也可以通过设置 Dataset 对象,使得数据集对象内部遍历多次才会退出,实现如下: train_db = train_db.repeat(20) # 数据集迭代 20 遍才终止 上述代码使得 for x,y in train_db 循环迭代 20 个 step, (x, y) in enumerate(zip(normed_train_data.chunk(10), train_labels.chunk(10))): # 遍历一次训练集 out = model(x) # 通过网络获得输出 loss = F.mse_loss(out, y) # 计算 MSE mae_loss load('model-savedmodel') # 准确率计量器 acc_meter = metrics.CategoricalAccuracy() for x,y in ds_val: # 遍历测试集 pred = network(x) # 前向计算 acc_meter.update_state(y_true=y, y_pred=pred) # 更新准确率统计 #0 码力 | 439 页 | 29.91 MB | 1 年前3 【PyTorch深度学习-龙龙老师】-测试版202112数 预览版202112 5.8 MNIST 测试实战 31 # training... 此外,也可以通过设置 Dataset 对象,使得数据集对象内部遍历多次才会退出,实现如下: train_db = train_db.repeat(20) # 数据集迭代 20 遍才终止 上述代码使得 for x,y in train_db 循环迭代 20 个 step, (x, y) in enumerate(zip(normed_train_data.chunk(10), train_labels.chunk(10))): # 遍历一次训练集 out = model(x) # 通过网络获得输出 loss = F.mse_loss(out, y) # 计算 MSE mae_loss load('model-savedmodel') # 准确率计量器 acc_meter = metrics.CategoricalAccuracy() for x,y in ds_val: # 遍历测试集 pred = network(x) # 前向计算 acc_meter.update_state(y_true=y, y_pred=pred) # 更新准确率统计 #0 码力 | 439 页 | 29.91 MB | 1 年前3
 机器学习课程-温州大学-06机器学习-KNN算法圆心,目标点到叶子节点的距离为半径,建立一个超 球体,我们要找寻的最近邻点一定是在该球体内部。 搜索(4,4)的最近邻时。首先从根节点(6,4)出发 ,将当前最近邻设为(6,4),对该KD树作深度优先 遍历。以(4,4)为圆心,其到(6,4)的距离为半径 画圆(多维空间为超球面),可以看出(7,2)右侧 的区域与该圆不相交,所以(7,2)的右子树全部忽 略。 23 KD树搜索 2.返回叶子结点的父节点,检查另一个子结点包含的 4)的整个右子树被标记为已忽 略。 24 KD树搜索 3.如果不相交直接返回父节点,在另一个子 树继续搜索最近邻。 4.当回溯到根节点时,算法结束,此时保存 的最近邻节点就是最终的最近邻。 遍历完(4,5)的左右叶子节点,发现与当 前最优距离相等,不更新最近邻。 所以(4,4)的最近邻为(4,5)。 25 参考文献 [1] Andrew Ng. Machine Learning[EB/OL]0 码力 | 26 页 | 1.60 MB | 1 年前3 机器学习课程-温州大学-06机器学习-KNN算法圆心,目标点到叶子节点的距离为半径,建立一个超 球体,我们要找寻的最近邻点一定是在该球体内部。 搜索(4,4)的最近邻时。首先从根节点(6,4)出发 ,将当前最近邻设为(6,4),对该KD树作深度优先 遍历。以(4,4)为圆心,其到(6,4)的距离为半径 画圆(多维空间为超球面),可以看出(7,2)右侧 的区域与该圆不相交,所以(7,2)的右子树全部忽 略。 23 KD树搜索 2.返回叶子结点的父节点,检查另一个子结点包含的 4)的整个右子树被标记为已忽 略。 24 KD树搜索 3.如果不相交直接返回父节点,在另一个子 树继续搜索最近邻。 4.当回溯到根节点时,算法结束,此时保存 的最近邻节点就是最终的最近邻。 遍历完(4,5)的左右叶子节点,发现与当 前最优距离相等,不更新最近邻。 所以(4,4)的最近邻为(4,5)。 25 参考文献 [1] Andrew Ng. Machine Learning[EB/OL]0 码力 | 26 页 | 1.60 MB | 1 年前3
 张海宁:使用Kubernetes部署超级账本Fabric配置文件 目录结构 cryptogen SACC2017 • 每个节点需要相应的配置文件。 • 通过模板自动生成各个节点的配置文件。 • 遍历目录结构修改模板,并把修改后的文件放置到相应的目录下, • 例如org1目录 40 部署 – 生成Pod、namespace配置 |--- org1 |--- msp 根据定义namespace的yaml文件创建namespace. • 根据定义ca的yaml文件,创建CA pod 和 service. • 根据定义cli的yaml文件,创建CLI pod 和 service. • 遍历org1/peers的子目录找出定义peer的yaml文件,创建peer pod和service. 41 启动集群 SACC2017 • 以org1为例,查看namespace为0 码力 | 45 页 | 2.70 MB | 1 年前3 张海宁:使用Kubernetes部署超级账本Fabric配置文件 目录结构 cryptogen SACC2017 • 每个节点需要相应的配置文件。 • 通过模板自动生成各个节点的配置文件。 • 遍历目录结构修改模板,并把修改后的文件放置到相应的目录下, • 例如org1目录 40 部署 – 生成Pod、namespace配置 |--- org1 |--- msp 根据定义namespace的yaml文件创建namespace. • 根据定义ca的yaml文件,创建CA pod 和 service. • 根据定义cli的yaml文件,创建CLI pod 和 service. • 遍历org1/peers的子目录找出定义peer的yaml文件,创建peer pod和service. 41 启动集群 SACC2017 • 以org1为例,查看namespace为0 码力 | 45 页 | 2.70 MB | 1 年前3
 尚硅谷大数据技术之Hadoop(入门)–前端 –python 人工智能资料下载,可百度访问:尚硅谷官网 #2. 遍历集群所有机器 for host in hadoop102 hadoop103 hadoop104 do echo ==================== $host ==================== #3. 遍历所有目录,挨个发送 for file in $@ do0 码力 | 35 页 | 1.70 MB | 1 年前3 尚硅谷大数据技术之Hadoop(入门)–前端 –python 人工智能资料下载,可百度访问:尚硅谷官网 #2. 遍历集群所有机器 for host in hadoop102 hadoop103 hadoop104 do echo ==================== $host ==================== #3. 遍历所有目录,挨个发送 for file in $@ do0 码力 | 35 页 | 1.70 MB | 1 年前3
 Apache RocketMQ 从入门到实战"broker-b"] } } 代码@2:遍历集群中的 brokerAddrTable 数据结构,即存储了 broker 的地址信 息的 Map 。 代码@3:分别向集群中的主节点(brokerData.selectBrokerAddr()) 获取所有的订 阅关系(即消费组的订阅信息)。然后将所有的消费者组名称存入 consumerGroupSet。 代码@4:遍历代码@3 收集到的消费组,调用 queryGroup ,未授权任何商业行为。 57 > 1.5 踩坑记:rocketmq-console 消费 TPS 为 0,但消息积压数却在降低是个什么“鬼” 该方法比较长,重点关注如下关键点:  代码@1:遍历该消费组订阅的所有主题。消费 TPS 将是所有主题消费 TPS 的总和, 其他的信息按主题、队列信息单独存放。  代码@2:如果 topic 的元信息不存在,则跳过该主题。  代码@3:如0 码力 | 165 页 | 12.53 MB | 1 年前3 Apache RocketMQ 从入门到实战"broker-b"] } } 代码@2:遍历集群中的 brokerAddrTable 数据结构,即存储了 broker 的地址信 息的 Map 。 代码@3:分别向集群中的主节点(brokerData.selectBrokerAddr()) 获取所有的订 阅关系(即消费组的订阅信息)。然后将所有的消费者组名称存入 consumerGroupSet。 代码@4:遍历代码@3 收集到的消费组,调用 queryGroup ,未授权任何商业行为。 57 > 1.5 踩坑记:rocketmq-console 消费 TPS 为 0,但消息积压数却在降低是个什么“鬼” 该方法比较长,重点关注如下关键点:  代码@1:遍历该消费组订阅的所有主题。消费 TPS 将是所有主题消费 TPS 的总和, 其他的信息按主题、队列信息单独存放。  代码@2:如果 topic 的元信息不存在,则跳过该主题。  代码@3:如0 码力 | 165 页 | 12.53 MB | 1 年前3
共 22 条
- 1
- 2
- 3













