自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 问答 (1)
  • 收藏
  • 关注

原创 线性方程组的迭代解法(Jacobi、Gauss-Seidel)

【代码】线性方程组的迭代解法(Jacobi、Gauss-Seidel)

2022-10-05 18:10:06 606 1

原创 python求解线性方程组(高斯、列主元高斯、直接三角)

python求解线性方程组(高斯、列主元高斯、直接三角)

2022-09-23 22:52:20 772

原创 卷积神经网络——稠密连接网络(DenseNet)

ResNet可以训练出更深的CNN模型,从而实现更高的准确度。 ResNet模型的核心是通过建立前面层与后面层之间的“短路连接”,这有助于训练过程中梯度的反向传播,从而能训练出更深的CNN网络。然而当CNN的层数变深时,输出到输入的路径就会变得更长,这就会出现一个问题: 梯度经过这么长的路径反向传播回输入的时候很可能就会消失,那有没有一种方法可以让网络又深梯度又不会消失?答案就是稠密连接网络(DenseNet)它的基本思路与ResNet一致,但是它建立的是前面所有层与后面层的密集连接,它的名称也是由

2022-05-21 21:14:44 2034

原创 卷积神经网络——残差网络(ResNet)

在实际的试验中发现,随着卷积层和池化层的叠加,不但没有出现学习效果越来越好的情况,反而两种问题:梯度消失和梯度爆炸梯度消失:若每一层的误差梯度小于1,反向传播时,网络越深,梯度越趋近于0梯度爆炸:若每一层的误差梯度大于1,反向传播时,网络越深,梯度越来越大退化问题随着层数的增加,预测效果反而越来越差。为了解决梯度消失或梯度爆炸问题,ResNet论文提出通过数据的预处理以及在网络中使用 BN层来解决。 为了解决深层网络中的退化问题,可以人为地让神经网络某些层跳过下一层神经元的连接,隔层

2022-05-21 20:52:43 8894

原创 批量规范化(批量归一化)——BN

训练深层神经网络是十分困难的,特别是在较短的时间内使他们收敛更加棘手。 在本节中,我们将介绍批量规范化(batch normalization),这是一种流行且有效的技术,可持续加速深层网络的收敛速度,但一般不改变模型精度。为什么需要使用批量归一化呢?总结来说:使用浅层模型时,随着模型训练的进行,当每层中参数更新时,靠近输出层的输出较难出现剧烈变化。而对深层神经网络来说,随着网络训练的进行,前一层参数的调整使得后一层输入数据的分布发生变化,各层在训练的过程中就需要不断的改变以适应学习这种新的数据分布。所

2022-05-21 20:34:47 3115 1

原创 卷积神经网络5——GoogLeNet(含并行连结的网络)

GoogLeNet网络特点引入了 Inception 结构(融合不同尺度的特征信息)使用 1X1 的卷积核进行降维以及映射处理丢弃全连接层,而使用平均池化层(这大大的减少了模型参数)

2022-05-21 19:42:59 1084

原创 卷积神经网络4——NiN

LeNet、AlexNet和VGG都有一个共同的设计模式:通过一系列的卷积层与汇聚层来提取空间结构特征;然后通过全连接层对特征的表征进行处理。 AlexNet和VGG对LeNet的改进主要在于如何扩大和加深这两个模块。然而这种形式的网络也存在一个问题:全连接层的参数太多,一条样本有多个分量(特征)进入全连接层。这极大地占用了内存与计算带宽,我们在训练中也可以感受到,除此以外还容易导致过拟合。网络中的网络(NiN)提供了一个非常简单的解决方案:在每个像素的通道上分别使用多层感知机, 不再使用全连接层,使用

2022-05-21 19:18:14 518

原创 卷积神经网络3——VGG(使用块的网络)(ImageNet-2014 NO.2)

虽然AlexNet证明深层神经网络卓有成效,但它没有提供一个通用的模板来指导后续的研究人员设计新的网络。于是出现了使用块的思想,通过使用循环和子程序,可以很容易地在任何现代深度学习框架的代码中实现这些重复的架构。VGGNet网络结构简洁,迁移到其他图片数据上的泛化性能非常好。VGGNet现在依然经常被用来提取图像特征,该网络训练后的模型参数在其官网上开源了,可以用来在图像分类任务上进行在训练,即:提供了非常好的初始化权重,使用较为广泛。一个VGG块与经典卷积神经网络的基本组成部分类似,由一系列卷积层组

2022-05-21 18:47:11 1231

原创 卷积神经网络2——AlexNet(ImageNet-2012 NO.1)

AlexNet是从浅层网络到深层网络的关键一步,标志着DNN深度学习革命的开始。局部响应归一化

2022-05-21 18:36:23 432

原创 卷积神经网络1——LeNet(LeNet-5)

LeNet是最早的卷积神经网络。LeNet具有一个输入层,两个卷积层,两个池化层,三个全连接层。每个卷积快的基本单元是一个卷积层,一个sigmoid函数和平均汇聚层。输入层:需要对28X28的图像加上paddings(即周围填充0),变为32X32。这样的目的是为了防止原图像信息丢失。C1层:该层是一个卷积层。使用6个大小为5X5的卷积核,步长为1,对输入层进行卷积运算,特征图尺寸为32-5+1=28,因此产生6个大小为28X28的特征图。这么做够防止原图像输入的信息掉到卷积核边界之外。S2层:该层

2022-05-21 17:49:50 2345 2

原创 1×1卷积层的作用

因为使用了最小窗口,1×1卷积失去了卷积层的特有能力——在高度和宽度维度上,识别相邻元素间相互作用的能力。其实1×1卷积的作用在于:它不识别空间模式,只是融合通道。下图展示了使用1×1卷积核与3个输入通道和2个输出通道的互相关计算。我们可以简单的认为,这样的目的更多的是为了实现通道的线性变换,重新排列组合为更好的特征基底输出通道数是卷积层的超参数。每个输入通道有一个独立的二维卷积核,所有通道结果相加得到一个输出通道结果。每个输出通道有独立的三维卷积核。当以每像素为基础应用时,1×1卷积层相当

2022-05-21 17:45:56 1394

原创 B树的创建、插入和删除

m阶B树:是满足下列特性的树:(1) 所有叶子结点(终端结点)都在同一层上。(2)所有外部结点(查找失败的)在同一层,并且不带信息,有时不画出。外部结点的双亲是叶子结点。外部结点个数比关键码多1。(3)树中每个非终端结点至多有m棵子树;(4)若根结点不是终端结点,则至少有两棵子树;(5)除根结点外,其他非终端结点至少有m/2棵子树;在 m 阶B-树中,失败结点位于第 h +1层,h层至少有2「m / 2|h-2个结点,N≥2「m / 2|h-1-1插入操作—新记录将插入到相应的叶子结点中.

2022-05-21 14:49:23 340

原创 蓝桥杯-猜年龄-2013省赛填空题C++

美国数学家维纳智力早熟,11岁就上了大学。他曾在 1935 ~ 1936年应邀来中国清华大学讲学。一次,他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄,他回答说:“我年龄的立方是个 4位数。我年龄的 4次方是个 6位数。这 10 个数字正好包含了从 0 到 9 这 10 个数字,每个都恰好出现 1次。”请你推算一下,他当时到底有多年轻。运行限制最大运行时间:1s最大运行内存: 128M用集合很方便~是参考了一个题解,头文件不太好记就改了一下#include <iostre

2022-03-12 20:43:37 754

原创 排序算法总结

排序算法总结折半插入、简单选择、二路归并、基数排序关键字比较次数与序列初始状态(是否有序)无关插入类、简单选择、二路归并、基数排序趟数与序列初始状态无关当待排序的记录个数n较小时,可以选用简单的排序方法;当关键字基本有序时,直接插入最好,其次是冒泡排序当n较大时,应选用改进的排序方法;就平均时间而言,快速排序是目前被认为是最好的一种内部排序方法。...

2021-12-28 20:35:35 365

原创 归并排序:二路归并&&基数排序

将一个具有n个待排序记录的序列看成是n个长度为1的有序序列,然后进行两两归并,得到n/2个长度为2的有序序列,再进行两两归并,得到n/4个长度为4的有序序列,……,直至得到一个长度为n的有序序列为止。...

2021-12-28 20:26:59 542

原创 选择类排序:简单选择排序,堆排序

简单选择排序 :每趟排序在当前待排序序列中选出关键码最小的记录,添加到有序序列中。给定8个关键字{23, 40, 30, 60, 10,96, 39, 23}, 请详细地写出应用小根堆排序的过程。建初堆后,每次将堆顶元素与最后一个元素互换位置,然后从堆顶进行调整,使之重新成为堆...

2021-12-28 20:24:18 137

原创 交换类排序:起泡法、快速排序

冒泡法比较基础,不再赘述,下面是快排首先选一个轴值(即比较的基准),通过一趟排序将待排序记录分割成独立的两部分,前一部分记录的关键码均小于或等于轴值,后一部分记录的关键码均大于或等于轴值,然后分别对这两部分重复上述方法,直到整个序列有序。假设有8个记录,关键字的初始序列为{49,38,65,97,76,13,27,49},用快速排序法进行排序一趟快速排序过程如图所示:选择第一个关键字49为基准先从high往low查找第一个小于轴值的数,进行第1次交换再从low往high查找第一个大于轴值

2021-12-28 20:14:43 213

原创 插入类排序:直接插入排序,希尔排序

直接插入排序:每次将一个待排序的记录按其关键码的大小插入到一个已经排好序的有序序列中,直到全部记录排好序为止。在插入第 i(i>1)个记录时,前面的 i-1个记录已经排好序。直接插入排序采用顺序查找当前记录在已排好序的序列中的插入位置,折半插入排序的查找操作利用“折半查找”实现折半插入排序和直接插入排序可能的不同之处是元素之间的比较次数,折半插入排序的比较次数与序列初始顺序是否有序无关设有一个待排序的序列有10个记录,它们的关键字分别为58,46, 72,95,84,25,37,58, 6.

2021-12-28 20:07:00 490

原创 平衡二叉树的建立和调整

插入结点时,首先按二叉排序树处理(即左子树小于根结点,右子树大于根结点),若插入结点后破坏了平衡,则进行调整,方法:找到离插入点最近且平衡因子绝对值超过1的结点,以该结点为根的子树称为最小不平衡子树,可将重新平衡的范围局限于该子树,即在这个范围内确定类型(1)LL型(在左子树的左子树上插入结点导致不平衡)进行一次顺时针旋转(2)RR型 (在右子树的右子树上插入结点导致不平衡)进行一次逆时针旋转(同理于(1))(3)LR型 (在左子树的右子树上插入结点导致不平衡)先进行一次逆时针旋.

2021-12-28 19:57:11 241

原创 哈希表:线性探查法和平方探查法

己知哈希表地址区间为0~10,给定关键字序列(20,41,37,26,8,12,18, 63,30)。哈希函数为H(k)=k%11,采用平方探测法处理冲突,将以上关键字依次存储到哈希表中。平均查找长度ASL计算成功:ASL = 所有关键字查找成功的比较次数之和/关键字个数失败:ASL = 所有关键字查找失败的比较次数之和/散列函数取值个数(本题即13)(查找失败:按位置查找,H[i]为空结束查找,例:关键字位置为8时,H[8]不空,继续,H[9]不空,继续,H[10]空,确定查找失.

2021-12-28 16:55:36 3713 5

原创 AOE-网 关键路径

关键路径:在AOE-网中,从始点到终点具有最大路径长度(该路径上的各个活动所持续的时间之和)的路径称为关键路径。关键活动:关键路径上的活动称为关键活动。关键路径可能不只一条,重要的是找到关键活动事件Vi 的最早可能开始时间Ve(i)是从源点V0 到顶点Vi 的最长路径长度。Ve(i) =Max{Ve(k)+wk,i}(k是i的前驱事件)wk,i是弧<Vk,Vi>的权值,即活动持续时间事件Vi 的最迟允许开始时间Vl(i)Vl(i)不得迟于其后继事件Vj的最迟发生时间减去活动.

2021-12-28 16:43:40 5472

原创 最短路径:迪杰斯特拉算法和弗洛伊德算法

Dijkstra算法Floyd算法生成dist(i)时对角线、i所在的行列都不变,i=-1为初始化然后检索其他路径中间加上第i个节点路径长度是否变短,是则更新

2021-12-28 15:49:16 189

原创 AOV—拓扑排序

基本思想: ⑴ 从AOV-网中选择一个没有前驱的顶点并且输出; ⑵ 从AOV-网中删去该顶点,并且删去所有以该顶点为尾的弧; ⑶ 重复上述两步,直到全部顶点都被输出,或AOV网中不存在没有前驱的顶点。则拓扑排序结果为:C4C0C3C2C1C5...

2021-12-28 15:01:15 154

原创 最小生成树:普里姆算法和克鲁斯卡尔算法

避免形成回路的选择克鲁斯卡尔算法(加边法)普里姆算法(加点法)

2021-12-27 16:48:23 395

原创 哈夫曼树及哈夫曼编码

一组字符{A,B,C,D,E,F,G}出现的频率分别是{9,11,5,7,8,2,3},设计最经济的编码方案所以编码为A-00,B-10,C-010,D-110,E-111,F-0110,G-0111

2021-12-27 16:41:11 1944

原创 串—模式匹配KMP算法

先根据模式串T写出next[j],next[0] = 0,next[1] = 1,从next[3]开始算next[3] = next[2+1] next[2] = 1 t2 != t1 属于其他情况 next[3] = 1next[4] = next[3+1] next[3] = 1 t3 != t1 属于其他情况 next[4] = 1next[5] = next[4+1] next[4] = 1 t4 == t1 next[5] = next[4] + 1 = 2(如果有T6.

2021-12-27 16:35:14 137

原创 从CSV文件中读取数据

从CSV文件中读取数据,去掉内容中的逗号,打印到屏幕。生成ls的方法不同,效果有所差别import jsonf = open("学生信息表.csv","r",encoding = 'gbk')ls = []for line in f : line = line.replace("\n","") ls = line.split(",") print(ls)f.close()运行结果为:[‘学号’, ‘姓名’, ‘性别’, ‘班级’][‘17010001’, ‘张三

2021-11-21 18:51:39 3843

原创 石头剪刀布游戏

利用列表实现石头剪刀布游戏import randomallList = ['石头','剪刀','布']winList = [['石头','剪刀'],['剪刀','布'],['布','石头']]chnum = -1prompt = '''===欢迎参加石头剪刀布游戏===请选择:0 石头1 剪刀2 布3 我不想玩了============================请选择对应的数字:'''while True : chnum = input(prompt)

2021-11-20 21:43:47 1920

原创 个人信息查询

利用字典实现*侠个人信息查询程序,请补全程序并提交。people = { '乔峰':{ '绝技':'降龙十八掌', '门派':'丐帮' }, '张无忌':{ '绝技':'乾坤大挪移', '门派':'明教' }, '令狐冲':{ '绝技':'独孤九剑', '门派':'华山派' }}labels = { '绝技':'行走江湖的绝技',

2021-11-20 21:42:51 418

原创 统计《红楼梦》中前20位出场最多的人物

《红楼梦》人物统计。参考课本中《三国演义》人物出场统计的程序,编写程序统计《红楼梦》中前20位出场最多的人物,并提交。这里给出参考答案。 (贾宝玉,3908)、(王熙凤,1611)、(贾母,1429)、(林黛玉,1291)、(王夫人,1061)、(薛宝钗,929)、(袭人,745)、(贾琏,688)、(平儿,602)、(贾政,523)、(薛姨妈,455)、(探春,437)、(鸳鸯,423)、(史湘云,412)、(晴雯,336)、(贾珍,299)、(刘姥姥,288)、(紫鹃,288)、(邢夫人,287)、(香

2021-11-20 21:39:43 18974 1

原创 制作文本进度条

制作一个模拟windows启动界面的文本进度条import times = """ -------------------- | | | | | | -------------------- | | | | |

2021-11-13 14:56:15 585

原创 绘制奥运五环图

import turtleturtle.width(10) #设置笔的粗细turtle.penup() #抬笔turtle.fd(-120) #前进-120即后退120,数字可调整以显示最好效果turtle.pendown() #落笔turtle.color("blue")turtle.circle(50) #半径50,角度不写默认360turtle.color("black")turtle.penup()turtle.goto(0, 0) #笔移动到(0,

2021-11-13 14:47:07 1132 1

原创 合数分解输出素数集(去重)

【问题描述】由数学基本定理可知:任何一个大于1的非素数整数(即合数)都可以唯一分解成若干个素数的乘积。编写程序,从控制台读入一个合数(合数的大小不会超过int数据类型表示的范围),求该合数分解成素数的最小集。该最小素数集由合数分解成的素数组成,并且重复的素数只保留一个。按从小到大的顺序输出求得的最小素数集。【输入形式】从控制台输入一个合数。【输出形式】在标准输出上按从小到大顺序输出求得的最小素数集,各素数之间以一个空格分隔,最后一个素数后空格可有可无。【输入样例】12308760【输出样

2021-11-09 22:27:28 1856

原创 小数形式与科学计数法转换(简)

【问题描述】编写一个程序,将用小数表示的浮点数,转换成科学计数法的形式输出。输入的数据没有符号,小数点前后必有数字,且全为有效数据,即小数点后的末尾数字不为0;小数点前若只有一位数字,可以为0,否则小数点前的最高位数字不为0。提示:以字符串形式保存相关数据。【输入形式】从控制台输入一小数,最后有回车换行符,所有输入的字符数不会超过100。【输出形式】以科学计数法形式输出数据。输出的数据由以下几部分构成:1.底数部分是一个小数或整数,若为小数,则小数点前后必有数字,而且都为有效数字。即:小数点前

2021-11-08 21:36:56 3641

原创 计算公式b

【问题描述】输入整数n(1<=n<=10000),计算公式1+1/(1+2)+…1/(1+2+…+n)的值。【输入形式】从控制台输入整数n(1<=n<=10000)。【输出形式】控制台输出公式结果:小数点后保留4位。【样例输入】4【样例输出】1.6000【样例说明】输入n为4,求得公式1 + 1/(1+2) + 1/(1+2+3)+ 1/(1+2+3+4)的值为1.6000,小数点后保留4位。注意:为保证数据的准确性和一致性,请使用double数据类型保存计算

2021-11-08 21:36:01 1686

原创 公式计算π

【问题描述】已知可以用下列公式计算π的近似值。给定一个π的近似值e,编程利用下列公式求得最接近e的近似值π,以及迭代次数n(大于等于1)。π/2 = (2/1 x 2/3) x (4/3 x 4/5) x (6/5 x 6/7) x … x [2n/(2n-1)x2n/(2n+1)]【输入形式】从控制台输入e( e大于2.6666667,小于3.14159)的值。【输出形式】输出最接近e的近似值π,以及迭代次数n(以一个空格分隔,并且输出π时要求小数点后保留9位有效数字)。【样例输入1】3.

2021-11-08 21:34:43 2402

原创 阶乘和数(正序)

【问题描述】一个正整数如果等于组成它的各位数字的阶乘之和,则该正整数称为阶乘和数。例如正整数145,1!+4!+5!等于145,因此145就是一个阶乘和数。输入一个正整数,计算它的各位数字的阶乘之和,并判断它是否是一个阶乘和数。注意:输入的正整数,以及组成它的各位数字的阶乘之和都不会超过int类型的表示范围,并且输入的正整数的最高位不为0。【输入形式】从控制台输入一个正整数。【输出形式】先输出输入的正整数和一个逗号“,”,并从最高位开始输出组成该正整数的各位数字的阶乘相加形式,然后输出等号“=”和

2021-11-08 21:33:42 1596

原创 逆序乘积式

【问题描述】若两个正整数的乘积,等于两正整数各自逆序后的乘积,则称其为逆序乘积式。编写程序读入两个正整数,然后判断这两个正整数能否构成逆序乘积式。假设两个正整数的乘积不会超过int数据类型的表示范围。【输入形式】从控制台输入以一个空格分隔的两个正整数。【输出形式】若两个正整数能够构成逆序乘积式,则输出两个正整数及其逆序的乘积形式,并且中间用一个等号相连;若不能构成逆序乘积式,则输出两个正整数及其逆序的乘积形式,并且中间用一个不等号相连。注意:输出的字符之间没有空格分隔。若逆序后最高位为0,则为0

2021-11-08 21:30:16 579

原创 Python蟒蛇绘制

使用import引用函数库有两种方式,但对函数的使用方式略有不同。第一种方法:import <库名>此时,程序可以调用库名中的所有函数,使用库中函数的格式如下:<库名>.<函数名>(<函数参数>)优点:可读性好#e2.1DrawPython.pyimport turtle # 引用函数库turtle#from turtle import setup, penup, pendown, fd, pensize, pencolor, seth,

2021-11-08 21:09:53 1487

原创 队列&栈问题

星期天小哼和小哈约在一起玩桌游,他们正在玩一个非常古怪的扑克游戏——“小猫钓鱼”。游戏的规则是这样的:将一副扑克牌平均分成两份,每人拿一份。小哼先拿出手中的第一张扑克牌放在桌上,然后小哈也拿出手中的第一张扑克牌,并放在小哼刚打出的扑克牌的上面,就像这样两人交替出牌。出牌时,如果某人打出的牌与桌上某张牌的牌面相同,即可将两张相同的牌及其中间所夹的牌全部取走,并依次放到自己手中牌的末尾。当任意一人手中的牌全部出完时,游戏结束,对手获胜假如游戏开始时,小哼手中有6张牌,顺序为241256,小哈手中也有6张牌,顺

2021-08-21 20:57:43 64

空空如也

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

TA关注的人

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