自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (18)
  • 收藏
  • 关注

原创 Mxnet(symbol和Gluon)并行测试

我们都知道,在训练过程中,一个batch通常包含多个训练图像,而在测试阶段,通常的做法是每次只测试一幅图像,如果我们想通过图像旋转、翻转等方法对于一幅图像进行多种输入测试时,最常想到的就是变换完之后,分别输入网络中。除此之外,还可以把多张同尺寸的图像拼成一个batch,直接一次性得到多张图像的预测结果。并行预测在某些并发较高的场景中能够显著提高系统的吞吐量。下面分别以分类模型为例,介绍symbol...

2019-10-30 15:07:59 796 1

原创 Mxnet(symbol和Gluon)模型参数复用、固定、设置不同学习率

使用预训练模型进行微调最常见的方法是使用同预训练模型相同的网络结构,只更改最后输出层,在不同的数据上进行微调。除此之外,我们经常需要自己搭建部分网络来适应特殊的任务,下面具体说明如果使用Mxnet的symbol接口实现各种操作,symbol接口实现方式很久之前测试过,不知道现在是否有变动,最近一直使用Gluon。1. 加载预训练模型修改输出层(1)symbol接口实现symbol接口加...

2019-10-30 14:26:44 1482

原创 Yolov3(Mxnet)修改检测层

我们已经介绍了如何使用Mxnet中Gluoncv里model_zoo中的各种分类模型作为特征提取网络,快速修改Yolov3的基础网络,现在我们继续介绍如何修改Yolov3的检测层、特征变换层和输出层。Yolov3实际上已经具有一定的历史,其简洁的网络设计令人赏心悦目,但是简洁的现状也决定了它没有使用过多的深度学习技巧(使用了残差、FPN)。而目前深度学习中,Inception结构、SE block...

2019-10-30 11:29:25 2751 1

原创 Mxnet(Gluon)模型导出和加载

使用Mxnet中的Gluoncv工具包训练模型,默认选项一般都只保存了参数文件,模型文件需要在测试的时候通过单独的程序文件加载,对于部署和测试来说有一定的麻烦。而Gluon中提供API可以将模型和参数一同保存,测试时不需要模型程序。我们以分类网络为例,介绍保存和加载模型的方法。首先使用model_zoo加载模型和参数:import gluoncvfrom gluoncv.model_z...

2019-10-29 12:15:43 3065 2

原创 Yolov3(Mxnet)测试加速:GPU图像预处理

深度学习的数据标准化操作在测试的也要遵守,但是Mxnet中Gluoncv使用CPU的串行数据标准化,对于某些实时性要求较高的任务,在CPU使用率较高时,数据标准化的耗时严重拖累了网络的预测速度。我们以Mxnet中的Yolov3为例,介绍使用GPU进行标准化的方法,减少CPU负担。首先需要下载Gluoncv代码,并将其中的模型增加一步卷积操作用作预处理,这样模型便可以直接在GPU上处理原图。Gl...

2019-10-28 17:26:17 1739 8

原创 Yolov3(Mxnet)FP16训练

在某些硬件下,FP16比FP32在可接受的精度损失下,训练、测试的加速效果明显。我们根据Mxnet中的Gluoncv,得到支持FP16的Yolov3模型。首先需要下载Gluoncv源码并将其修改,然后可以在本地训练中import更改的模型实现训练。Gluoncv代码链接:https://github.com/dmlc/gluon-cv实际上,Mxnet提供FP16和FP32网络模型转换的功...

2019-10-28 15:55:24 1949 8

原创 Yolov3(Mxnet)更改基础网络为mobilenetv3

Mxnet中的Gluoncv提供darknet53和mobilenetv1的Yolov3,由于model_zoo中有很多写好的分类模型,因此可以快速地为Yolov3更换基础网络。首先需要下载Gluoncv源码并将其修改,然后可以在本地训练中import更改的模型。我们以Gluoncv中提供的mobilenetv3_large为示例,增加一个基于mobilenetv3_large的Y...

2019-10-28 14:38:37 6584 2

原创 Yolov3(Mxnet)训练自己的数据集

Mxnet中的Gluoncv提供标准VOC和COCO数据集上的预训练模型、数据读取类和训练程序,如果我们想使用model_zoo里面的预训练模型,并在自己的数据集上微调,则需要调整一些程序,下面介绍在自有的VOC格式的数据集上训练Yolov3的方法。 主干网络仍使用Gluoncv提供的官方Yolov3训练程序,下面链接中的train_yolo3.py: ...

2019-10-28 12:32:24 3875 2

租用游艇问题

问题描述: 长江游艇俱乐部在长江上设置了n 个游艇出租站1,2,…,n。游客可在这些游艇出租站租用游艇,并在下游的任何一个游艇出租站归还游艇。游艇出租站i 到游艇出租站j 之间的租金为r(i,j),1£i<j£n。试设计一个算法,计算出从游艇出租站1 到游艇出租站n 所需的最少租金。 编程任务: 对于给定的游艇出租站i 到游艇出租站j 之间的租金为r(i,j),1£i<j£n,编程计算从游艇出租站1 到游艇出租站n所需的最少租金。 数据输入: 第1 行中有1 个正整数n(n<=200),表示有n个游艇出租站。接下来的n-1 行是r(i,j),1£i<j£n。 结果输出: 程序运行结束时,输出计算出的从游艇出租站1 到游艇出租站n所需的最少租金。

2014-01-10

运动员最佳匹配问题

问题描述: 羽毛球队有男女运动员各n人。给定2 个n×n矩阵P和Q。P[i][j]是男运动员i和女运动员j配对组成混合双打的男运动员竞赛优势;Q[i][j]是女运动员i和男运动员j配合的女运动员竞赛优势。由于技术配合和心理状态等各种因素影响,P[i][j]不一定等于Q[j][i]。男运动员i和女运动员j配对组成混合双打的男女双方竞赛优势为P[i][j]*Q[j][i]。设计一个算法,计算男女运动员最佳配对法,使各组男女双方竞赛优势的总和达到最大。 编程任务: 设计一个优先队列式分支限界法,对于给定的男女运动员竞赛优势,计算男女运动员最佳配对法,使各组男女双方竞赛优势的总和达到最大。 数据输入: 第一行有1 个正整数n (1≤n≤20)。接下来的2n行,每行n个数。前n行是p,后n行是q。 结果输出: 输出计算出的男女双方竞赛优势的总和的最大值。

2014-01-10

石子合并问题

问题描述: 在一个圆形操场的四周摆放着n 堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的2 堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。试设计一个算法,计算出将n堆石子合并成一堆的最小得分和最大得分。 编程任务: 对于给定n堆石子,编程计算合并成一堆的最小得分和最大得分。 数据输入: 第1 行是正整数n,1£n£100,表示有n堆石子。第二行有n个数,分别表示每堆石子的个数。 结果输出: 输出的第1 行中的数是最小得分;第2 行中的数是最大得分。

2014-01-10

汽车加油行驶问题

问题描述: 给定一个N*N 的方形网格,设其左上角为起点◎,坐标为(1,1),X轴向右为正,Y轴向下为正,每个方格边长为1。一辆汽车从起点◎出发驶向右下角终点▲,其坐标为(N,N)。在若干个网格交叉点处,设置了油库,可供汽车在行驶途中加油。汽车在行驶过程中应遵守如下规则: (1)汽车只能沿网格边行驶,装满油后能行驶K 条网格边。出发时汽车已装满油,在 起点与终点处不设油库。 (2)当汽车行驶经过一条网格边时,若其X 坐标或Y 坐标减小,则应付费用B,否则 免付费用。 (3)汽车在行驶过程中遇油库则应加满油并付加油费用A。 (4)在需要时可在网格点处增设油库,并付增设油库费用C(不含加油费用A)。 (5)(1)~(4)中的各数N、K、A、B、C均为正整数。 编程任务: 求汽车从起点出发到达终点的一条所付费用最少的行驶路线。 数据输入: 第一行是N,K,A,B,C的值,2 £ N £ 100,2 £ K £ 10。第二行起是一个N*N 的0-1方阵,每行N 个值,至N+1行结束。方阵的第i行第j 列处的值为1 表示在网格交叉点(i,j)处设置了一个油库,为0 时表示未设油库。各行相邻的2 个数以空格分隔。 结果输出: 程序运行结束时,将找到的最优行驶路线所需的费用,即最小费用输出。

2014-01-10

会场安排问题

问题描述: 假设要在足够多的会场里安排一批活动,并希望使用尽可能少的会场。设计一个有效的贪心算法进行安排。(这个问题实际上是著名的图着色问题。若将每一个活动作为图的一个顶点,不相容活动间用边相连。使相邻顶点着有不同颜色的最小着色数,相应于要找的最小会场数。) 编程任务: 对于给定的k个待安排的活动,编程计算使用最少会场的时间表。 数据输入: 第一行有1 个正整数k,表示有k个待安排的活动。接下来的k行中,每行有2个正整数,分别表示k个待安排的活动开始时间和结束时间。时间以0 点开始的分钟计。 结果输出: 输出编程计算出的最少会场数。

2014-01-10

圆排列问题

问题描述: 给定n个大小不等的圆c , c , , cn 1 2  ,现要将这n个圆排进一个矩形框中,且要求各圆与矩形框的底边相切。圆排列问题要求从n个圆的所有排列中找出有最小长度的圆排列。例如,当n=3,且所给的3 个圆的半径分别为1,1,2时,这3个圆的最小长度的圆排列如图所示。其最小长度为2 + 4 2 。 编程任务: 对于给定的n个圆,设计一个优先队列式分支限界法,计算n个圆的最佳排列方案,使其长度达到最小。 数据输入: 第一行有1个正整数n (1≤n≤20)。接下来的1行有n个数,表示n个圆的半径。 结果输出: 将计算出的最小圆排列的长度输出。

2014-01-10

输油管道问题

问题描述: 某石油公司计划建造一条由东向西的主输油管道。该管道要穿过一个有n 口油井的油田。从每口油井都要有一条输油管道沿最短路经(或南或北)与主管道相连。如果给定n口油井的位置,即它们的x 坐标(东西向)和y 坐标(南北向),应如何确定主管道的最优位置,即使各油井到主管道之间的输油管道长度总和最小的位置?证明可在线性时间内确定主管道的最优位置。 编程任务: 给定n 口油井的位置,编程计算各油井到主管道之间的输油管道最小长度总和。 数据输入: 第1 行是油井数n,1<=n<=10000。接下来n 行是油井的位置,每行2个整数x和y,-10000<=x,y<=10000。 结果输出: 第1 行中的数是油井到主管道之间的输油管道最小长度总和。

2014-01-10

子集和问题

问题描述: 子集和问题的一个实例为〈S,t〉。其中,S={ 1 x , 2 x ,…, n x }是一个正整数的集合,c是一个正整数。子集和问题判定是否存在S的一个子集S1,使得。 试设计一个解子集和问题的回溯法。 编程任务: 对于给定的正整数的集合S={ 1 x , 2 x ,…, n x }和正整数c,编程计算S 的一个子集S1,使得。 数据输入: 第1 行有2 个正整数n 和c,n 表示S 的大小,c是子集和的目标值。接下来的1 行中,有n 个正整数,表示集合S 中的元素。 结果输出: 程序运行结束时,输出子集和问题的解输。当问题无解时,输出“No Solution!”(solution开头是大写)。

2014-01-10

求众数问题

给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数。多重集S中重数最大的元素称为众数。 例如,S={1,2,2,2,3,5}。 多重集S的众数是2,其重数为3。 编程任务: 对于给定的由n 个自然数组成的多重集S,编程计算S 的众数及其重数。 数据输入: 第1行多重集S中元素个数n;接下来的n 行中,每行有一个自然数。 结果输出: 输出有2 行,第1 行给 出众数,第2 行是重数。

2014-01-10

北理工监控组态软件第一次实验

监控组态软件第一次实验工程和实验报告,灌液平衡系统

2014-01-09

数据结构习题集答案

习题集答案,答案中基本题目也有,所以几乎可以只看答案,而不用再去单独下载题目。

2012-12-08

数据结构习题集(不是答案)清华大学严蔚敏

数据结构的经典教程配套的一本习题集,清华大学严蔚敏,只有习题,不是答案。。

2012-12-08

树的建立与基本操作

程序的输入是一个表示树结构的广义表。假设树的根为 root ,其子树森林 F = ( T1 , T2 , … , Tn ),设与该树对应的广义表为 L ,则 L =(原子,子表 1 ,子表 2 , … ,子表 n ),其中原子对应 root ,子表 i ( 1<i<=n )对应 Ti 。广义表 (a,(b,(c),(d)),(f,(g),(h ),(i))) 在输出树的层次结构时,先输出根结点,然后依次输出各个子树,每个子树向里缩进 4 个空格,如:针对上图表示的树,输出的内容应为: a b c d f g h i Degree of tree: 3 Number of nodes of degree 0: 5 Number of nodes of degree 1: 0 Number of nodes of degree 2: 2 Number of nodes of degree 3: 1

2012-12-08

图的广度优先遍历

本实验实现邻接表表示下无向图的广度优先遍历。程序的输入是图的顶点序列和边序列(顶点序列以*为结束标志,边序列以-1,-1为结束标志)。程序的输出为图的邻接表和广度优先遍历序列。 程序输入为: a b c d e f * 0,1 0,4 1,4 1,5 2,3 2,5 3,5 -1,-1 程序的输出为: the ALGraph is a 4 1 b 5 4 0 c 5 3 d 5 2 e 1 0 f 3 2 1 the Breadth-First-Seacrh list:aebfdc

2012-12-08

二叉树遍历序列还原

给出二叉树的中序遍历序列和后序遍历序列,编程还原该二叉树。 输入:   第1行为二叉树的中序遍历序列   第2行为二叉树的后序遍历序列 输出:   二叉树的按层遍历序列

2012-12-08

表达式求值

现在我们将该算法的功能进行扩展,要求可以处理的运算符包括:+、-、*、/、%(整数取余)、^(乘方)、(、)。 输入: 第一行为整数N。表示下面有N个表达式 从第二行起的后面N行为N个由整数构成的表达式 输出: 共N行,每行为相应表达式的计算结果。 如果判断出表达式有错误,则输出:error. 如果在计算过程中出现除数为0的情况,则输出:Divide 0.

2012-12-08

从中缀向后缀转换表达式

中缀表达式就是我们通常所书写的数学表达式,后缀表达式也称为逆波兰表达式,在编译程序对我们书写的程序中的表达式进行语法检查时,往往就可以通过逆波兰表达式进行。我们所要设计并实现的程序就是将中缀表示的算术表达式转换成后缀表示,例如,将中缀表达式 (A 一 (B*C 十 D)*E) / (F 十 G ) 转换为后缀表示为: ABC*D十E*—FG十/

2012-12-08

平衡二叉树

程序输入一个字符串(只包含小写字母),请按照字符的输入顺序建立平衡二叉排序树,并分别输出二叉树的先序序列、中序序列和后序序列,最后输出该二叉树向左旋转 90 度后的结构。

2012-12-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除