自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ubuntu20.04.6wifi图标消失问题解决方案

本人电脑惠普战99 2023版 集显版双系统:win11 + ubuntu 20.04.6LTS。

2024-02-17 16:13:05 503

原创 深度学习记录--Batch Norm

与Input Norm对输入层进行归化不同,Batch Norm是对。

2024-01-26 11:16:44 440

原创 整数反转算法(leetcode第7题)

依次取每位数反转,与最大最小值进行比较。

2024-01-25 19:32:24 427

原创 深度学习记录--学习率衰减(learning rate decay)

如下图,蓝色曲线表示mini-batch梯度下降,绿色曲线表示采用学习率衰减的梯度下降。mini-batch梯度下降最终会在最小值附近的区间摆动(噪声很大),不会。随着学习率的衰减,步长会逐渐变小,因此最终。为了更加近似最小值,采用学习率衰减的方法。1 epoch = 遍历数据1次。是学习率衰减的超参数,是衰减常量,一般设置。

2024-01-21 17:18:33 577

原创 深度学习记录--RMSprop均方根

减缓纵轴方向学习速度,加快横轴方向学习速度,从而加速梯度下降。不妨以b为纵轴,w为横轴(横纵轴可能会不同,因为是多维量),即w每次减去一个大数字,所以w梯度下降更快。,即b每次减去一个小数字,所以b梯度下降更慢。为了防止分母趋近于0,则加上一个常量。为了让w梯度下降更快,则要使。为了让b梯度下降更慢,则要使。

2024-01-21 16:59:41 385

原创 深度学习记录--Adam optimization algorithm

需要经过多次调试之后才可得到。

2024-01-21 16:41:29 464

原创 深度学习记录--Momentum gradient descent

因为学习率过大可能导致偏离函数范围,这种上下波动导致学习率无法得到提高,速度因此减慢(下图蓝色曲线)横轴上,所有的微分都指向横轴方向,所有横轴方向上的平均值依然较大。其中dw,db可以看作加速度,v_dw,v_db可以看作速度,纵轴上,平均过程中正负数相互抵消,所以纵轴上的平均值接近于0。把图像比作一个碗,轨迹视为小球的轨迹,从边缘向碗内最低点运动。因此,小球会向着碗中心运动,最终因摩擦力而停下来。因此,纵轴上摆动减小,横轴上运动速度加快。为了减小波动,同时加快速率,可以使用。

2024-01-21 11:27:14 479

原创 深度学习记录--指数加权平均

较大时,初期数据拟合可能偏差较大,为了更好地拟合初期的数据,故采用偏差修正。当t变大,分母逐渐趋于1,所以后阶段偏差修正作用不大。的取值对拟合结果的影响很大,那么有什么规律?较大时,公式值较大,即取的更多数据的平均值。时,近似取10个数据平均值(红色曲线)时,近似取50个数据平均值(绿色曲线)时,近似取2个数据平均值(黄色曲线)变化时,拟合结果也会发生变化。,因为取的是更多数据的平均值。,因为取的是更少数据的平均值。可以被适当放大,更加拟合数据。如何对杂乱的数据进行拟合?表示第t-1个平均数,

2024-01-21 10:30:47 636

原创 深度学习记录--mini-batch gradient descent

与传统的batch梯度下降不同,mini-batch gradient descent将数据分成多个子集,分别进行处理,在。当size=m,mini-batch gradient descent变为batch gradient descent。的曲线,分成许多小段时,每个小段是一条batch gradient descent曲线,总体看这条曲线还是。可能容易计算,也可能很难计算,这就导致cost时高时低,出现摆动,其实主要是。每个样本都是随机的,可能靠近最小值,也可能远离最小值,当size=1,变为。

2024-01-19 21:37:25 1160

原创 链表存数相加算法(leetcode第2题)

使用头尾链表节点指针,用carry来存储进位值。

2024-01-19 20:58:11 543

原创 深度学习记录--梯度检验

对于单边误差和双边误差公式,其中双边误差与真实梯度相差更小,故一般采用双边误差公式。在每次迭代过程中,dropout会随机消除隐层单元的不同子集,J函数难以明确计算。为了对梯度进行检验,需要计算近似误差值来接近梯度。,则误差较大,需要考虑是否错误较多。梯度检验的计算时间较长,且通常在。的导数,计算出双边误差。,则误差很小,效果很好。,则误差一般,效果一般。

2024-01-17 15:37:20 543

原创 深度学习记录--梯度消失和爆炸

很大时,w与1之间的大小关系会产生梯度消失与梯度爆炸的问题。层数n越大,越要使特征值w变小。当神经网络层数很大时,即。

2024-01-17 14:47:08 378

原创 深度学习记录--归—化输入特征

归化输入(normalizing inputs),对特征值进行一定的处理,可以加速神经网络训练速度。归化可以让原本狭长的数据图像变得规整,梯度下降的迭代次数减少,训练速度变快。通过x值更新让均值稳定在零附近,即为零均值化。

2024-01-17 13:10:04 483

原创 深度学习记录--正则化(regularization)

正则化(regularization)是一种实用的减少方差variance)的方法,也即避免过度拟合。

2024-01-17 10:52:44 729

原创 深度学习记录--偏差/方差(bias/variance)

train set error过大,dev set error过大(比train set error还大很多):high bias & high variance。train set error过大,dev set error过大(与train set error差不多):high bias。当方差(variance)过大时,如右图,拟合图像过于特殊,不够集中(即方差过大),称为过拟合(overfitting)train set error较小,dev set error过大:high variance。

2024-01-16 20:34:33 605

原创 深度学习记录--Train/dev/test sets

由于大数据量的存在,dev sets只需要对不同的算法进行验证与取舍即可,故得出几种合适的算法来优化性能即可,而test sets只需要对神经网络进行无偏评估即可,所以数据量不需要很大。对于超百万量级的数据,可以分为99.5% train sets 0.25% dev sets 0.25% test sets。对于百万量级的数据,可以分为98% train sets 1% dev sets 1% test sets。如果不需要进行无偏评估,那么只用保证train/dev sets(会加速神经网络的集成。

2024-01-15 22:23:47 622

原创 C语言程序设计期末例题复习

暂时写这么多,后续复习补充。

2024-01-09 23:17:23 509

原创 合并两个有序链表算法(leetcode第21题)

判断链表节点指向值大小,小的节点指针后移,进行递归,最终合并完成。,创建新链表,逐个存入新链表。

2023-12-21 22:41:57 976

原创 反转链表算法及优化(leetcode第206题)

prev和curr,分别代表前节点和当前节点,同时使用变量next记录curr->next。不断向后移,让curr指向prev。最终返回prev(此时为尾节点)

2023-12-21 21:53:06 579

原创 C语言链表实现

每次操作完,必须更新头节点,因为头节点指向内容虽然改变,但是头节点本身地址并没有改变,,包含了节点值和后节点指针两个数据(双向链表会有两个节点指针)这样就不需要显式地更新头节点。

2023-12-19 21:09:07 397

原创 结构体(共用体)对齐总结

对于32 位字宽的计算机,每次访问内存的地址总是 4 的倍数。如int,char,short,double为基本数据类型。一块内存,内存选取成员中最大占用内存。为了尽量减少指令,提高数据处理性能。通常要求数据按字宽边界对齐,

2023-12-19 17:08:33 457

原创 两数组交集算法(leetcode第349题)

使用hash表,先将nums1记录,再遍历nums2,若有nums2[j]在hash表中被记录过,则说明这是交集,存入返回的数组。先排序,这样如果出现重复,可以筛查出来,保证唯一性。

2023-12-18 21:29:44 595

原创 区域和检索算法(leetcode第303题)

为了减少花费的时间,可以直接使用sums得出区域和,故可以用。

2023-12-18 20:46:07 462

原创 移动零算法(leetcode第283题)

双指针,分别指向0和非0数,然后分成小段的移位算法,将0移到小段末尾,右指针是从右边起第一个非0数。左指针是从右指针向左的第一个0。

2023-12-17 20:20:00 430

原创 丢失的数字算法(leetcode第268题)

标记每个数,之后遍历筛出未被标记的数。,重复的数互相抵消,留下未被抵消的数。

2023-12-17 19:21:13 438

原创 深度学习记录--参数与超参数

深度学习中超参数

2023-12-17 16:35:29 311

原创 深度学习记录--随机初始化

尽管当w1,w2为0时,依然可以有x1,x2不同使dw1,dw2不同,重新改变w1,w2,起到不断迭代的作用。这种方法,在反向传播的过程中所有权重的导数都不相同,所以权重和偏置b都能得到更新。同理,当b为0时,也是可以依照同样的过程使b重新改变,起到不断迭代的作用。总体来说,节点权重的对称性与权重的初始化对于迭代更新有着巨大的作用。,我们的隐层的神经单元输出始终不变,出现隐藏神经元的对称性。,导致每层的节点作用式微,神经网络也就失去其作用了。权重,指的是变量系数w,决定了变量的变化率。

2023-12-17 14:53:10 423

原创 深度学习记录--矩阵维数

本文仅作本人查询参考(摘自吴恩达深度学习笔记)

2023-12-16 22:53:57 464

原创 插入元素算法

预留多一个空间,插入新元素,进行排序。

2023-12-15 17:47:45 449

原创 C语言:指针与数组易错辨析

在学校学习指针和数组的联系时,对指针与数组的结合产生了很大的疑惑,后来不断查找资料,本人对指针与数组的综合有了一定的理解,现进行综合讨论辨析。

2023-12-15 14:59:34 411

原创 字符串排序算法

关键在于比较函数cmp的实现,易错点见下注释。将冒泡排序替换为qsort。

2023-12-14 23:44:58 576

原创 循环报数算法

1与0标记是否移除,更为易懂。

2023-12-14 23:07:13 494

原创 螺旋矩阵算法(leetcode第54题)

边界判断,同时每个for循环要判断是否超范围。

2023-12-13 20:02:06 420

原创 螺旋矩阵算法(leetcode第59题)

就移动边界,直到边界相碰。

2023-12-13 19:42:14 471

原创 螺旋矩阵算法(leetcode第885题)

将while里的两个for循环分为四个for循环,对于上下左右,直观易懂,但是优化不明显。所以我们可以改变步数与增量来实现循环。对于超范围的坐标进行判断即可。

2023-12-13 19:28:17 414

原创 二进制求和算法(leetcode第67题)

【代码】二进制求和算法(leetcode第67题)

2023-12-12 20:44:22 383

原创 杨辉三角算法(leetcode第119题)

动态规划,一维数组,后值覆盖前值,从后遍历。

2023-12-12 17:15:38 391

原创 验证回文串算法(leetcode第125题)

写两个函数,一个用来过滤无关字符与大小写转换,另一个用来判断回文串。

2023-12-12 17:12:24 360

原创 x的平方根算法(leetcode第69题)

后续补充数学方法,读者可先自行思考。二分查找,注意数据大小即可。

2023-12-11 22:12:42 461

原创 汇总区间算法(leetcode第228题)

标记高低位,判断高低位是否相同,来判断是否要加"->"格式化存入字符串所在地址(方便整数转字符串)

2023-12-11 21:14:28 399

ubuntu20.04.6wifi消失和显卡驱动问题解决方案

ubuntu20.04.6wifi消失和显卡驱动问题解决方案

2024-02-17

w4-学生.zip

w4-学生.zip

2023-09-19

数值计算:四元非齐次方程求解

2024-05-09

cpp虚继承中的类的内存占用为多少?

2023-10-24

请问cpp中为什么不能输出重载后的后置递增运算符的值?

2023-10-23

请问cpp中创建访问private的成员函数为什么会报错?

2023-10-15

windows 11进行C盘扩容后,系统无法识别新增磁盘空间,怎么办?

2023-10-11

visual studio2022中输入中文后终端窗口无法显示中文,出现中文乱码如何解决

2023-09-30

C语言中输入字符串并打印,请问以下代码哪里出错了

2023-09-25

C语言:二维数组列数未知作为函数形参进行传递如何解决?

2023-09-19

C语言中二叉搜索树的中序后继节点,以下代码是否可以实现搜索?

2023-09-13

C语言zsh: no matches found:

2023-09-08

C语言:用栈来检查括号的匹配

2023-08-26

C语言使用栈反转链表

2023-08-26

C语言:如何利用数组stack实现字符串的反转

2023-08-23

C语言:head插入新节点程序无法运行,以下情况如何解决

2023-08-17

C语言中CLK_TCK为何在vs code中显示错误?

2023-08-02

C语言:如何清空缓冲区?

2023-07-30

请问对于getchar如何修改,避免空格与Tab的干扰,以下代码如何解释

2023-07-30

C语言:char *a[]与char a[][10]有什么区别?

2023-07-27

最大内存空间分配 C语言

2023-07-25

如何在mac os上创建一个unix 可执行文件?

2023-07-20

C语言中还有哪些交换变量值的方法?

2023-07-18

C语言tic-tac-toe行列简化

2023-07-17

C语言中unsigned int的最大数

2023-07-11

c语言:九九口诀表对齐问题

2023-07-10

C语言:水仙花数问题如何解决

2023-07-10

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

TA关注的人

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