- 博客(52)
- 收藏
- 关注
原创 C++ the ranged based for loop (基于范围的for遍历)
C++11 之后引入了类似python的for循环遍历。pass。
2024-02-01 14:14:56 446
原创 C++ 值传递、引用传递、指针传递
程序在编译时分别将指针和引用添加到符号表上,符号表上记录的是变量名及变量所对应地址。指针变量在符号表上对应的地址值为指针变量的地址值,而引用在符号表上对应的地址值为引用对象的地址值。符号表生成后就不会再改,因此指针可以改变其指向的对象(指针变量中的值可以改),而引用对象则不能修改。指针传递本质上是值传递,将地址值传递给形参,形参开辟局部变量来处理地址。也就是说,实参的地址本身不会被修改。三种传递方式有着不同的用法。
2023-12-27 16:47:32 525
原创 C++ 分离式编程
对于大型项目,不能将所有代码都写到一个文件中。不同文件写不同的代码,可以修改和编译执行。(因为如果都写到一个文件中,每次修改一点点,就要所有代码重新编译)。一个pencil类,一个Book类,还有一个SchoolBag类包含了Pencil类和Book类。
2023-12-27 01:56:18 560
原创 Libra R-CNN: Towards Balanced Learning for Object Detection论文阅读
首先,按照学习难度来区分,训练集可以分为困难样本(hard sample) 和容易样本(easy sample)。首先,在backbone中,深度且高层的特征(high-level features)具有更多的语义信息。特别地,hard sample更有价值,能更有效的提高网络的性能,但是随机采样的方式,使得采取的sample,大多是easy sample。如果是不平衡的, easy sample的小梯度就会占据主导,淹没hard sample的大梯度,从而限制了进一步调优。(2)特征水平的不平衡。
2023-11-11 18:44:31 204
原创 深度学习中的概念
其中最著名的例子是 OpenAI 的 GPT 系列模型(例如 GPT-3 和 GPT-4),以及谷歌的 BERT 模型。比如你要研究一个新的模型,你是在前人的模型基础上新增加了一些组件,别人也基本都是在这个模型上进行修改,那这个模型就叫做baseline model——基准模型。听名字就能听出来,就是你自己模型的一个基准,一个基本的框架,模型再复杂,最根本的框架是差不多的。baseline一词应该指的是对照组,基准线,就是你这个实验有提升,那么你的提升是对比于什么的提升,被对比的就是baseline。
2023-11-11 18:43:48 271
原创 yolo模型
在Backbone网络中,有许多创新结构,如YOLOv3中的Darknet-53、YOLOv4中的Modified CSP、YOLOv5和YOLOX中的Modified CSP v5,以及YOLOv7中的Elan、VoVNet、CSPVoVNet。尽管解耦Head可以有效地解决回归和分类任务之间的冲突,但作者通过研究发现,解耦Head的结构应该与损失函数的计算逻辑一致,才能获得最佳性能。Neck网络充当Backbone网络和Head网络之间的桥梁,聚合和细化Backbone网络提取的特征。
2023-10-10 19:58:05 166
原创 Squeeze-and-Excitation Network(SENets)
Squeeze-and-Excitation Network introduces a building block for CNNs to improve channel interdependencies at almost no computational cost.
2023-10-01 10:46:46 62
原创 depth-wise convolution and depth-wise separable convolution
channelinputchanneloutputfiltersizeInput−channel10Output−channel20Filter−size7可以得到Parameters7×7×101×209820。
2023-10-01 01:48:18 60
原创 深度学习中样本、标签、正负样本、难易分样本、二元平衡交叉熵损失函数、backbone、neck、head概念解释
使用于正负样本失衡,如果负样本占比过大,100个样本中99个是负样本,那么模型预测全部都是负样本也会有99%得正确率,但是显然模型并没有学习到合适得参数。适用于 难/易分样本失衡,如果易分样本的数量远远多于难分样本,则所有样本的损失可能会被大量易分样本的损失主导,导致难分样本无法得到充分学习。学习的负担被分散到了多个层级的特征图上,到底一个特征图负责哪些尺度的目标物,这是一个需要研究的问题。对于数据集X中的每一个x称为一个样本sample。输出是在0,1之间的一个实数,表示了输入样本是类别1 的概率。
2023-09-15 12:00:16 1103
原创 对于without bells and whistles的理解
深度学习的模型,一般是用别人的网络作为主干特征提取网络backbone,来提取特征,然后再加入自己的改进的小部件component,一个小创新点novel idea。只有对于公司而言,做的产品才需要证明比市场上的所有其他产品更好。而有些论文中使用without bells and whistles(没有花里胡哨的东西)这样的论述,是表明,他所提出的这个改进方法,即使你不使用神经网络的调参技巧(tricks),也可以提升性能,也就是说,他的改进是对本质的东西进行改进,并不是偶然。
2023-09-15 00:38:42 256
原创 字符,字符串(C语言)
C语言的字符串是以字符数组的形态存在的不能用运算符对字符串做运算通过数组的方式可以遍历字符串唯一特殊:字符串字面量可以用来初始化字符数组标准库提供了一系列字符串函数。
2023-08-09 23:41:44 573
原创 线性搜索算法和二分法以及排序的初步(C语言描述)
搜索就是在一个已知数组中找到某个数的位置(或者确认是否存在)。本文用C语言描述了线性搜索,二分搜索,和选择排序。举了一些小例子。
2023-08-03 12:07:50 88
原创 C语言学习笔记(7)函数
从函数的定义讲起,讲解函数的调用,再讲解一些函数的细节,例如:返回值、参数、变量等等。大家如果有不清楚的地方,欢迎评论区留言讨论。提示:以下是本篇文章正文内容,下面案例可供参考函数是一块代码,接受0个或者多个参数,返回0个或者1个值。函数结构voidvoid是返回类型sumsum是函数名这里是参数表这一行是函数头花括号内的是函数体int a,b;int res=0;a = begin;b = end;for(a;a
2023-07-30 22:31:08 165
原创 C语言学习笔记(6)数组
数据可以存放在变量里,每一个变量有一个名字,有一个类型,还有它的生存空间。如果我们需要保存一些相同类型、相似含义、相同生存空间的数据,我们可以用数组来保存这些数据,而不是用很多个独立的变量。数组是长度固定的数据结构,用来存放指定的类型的数据。一个数组里可以有很多个数据,所有的数据的类型都是相同的。语法格式: 变量名称 [元素数量]// 3行 5 列。
2023-07-30 22:27:46 139
原创 C语言学习笔记(5) 嵌套和分支
讲述了 if 语句的嵌套,其中,else 的关联原则是和最近的 if 关联。还有另外一种分支语句 switch …case 语句,用来进行分支选择。但是switch…case 也有一些要求,控制表达式的结果必须是整数型。
2023-07-28 13:23:06 343
原创 C语言学习笔记(4)逻辑运算
条件语句和循环语句中需要经常用到逻辑判断来简化程序,本文先介绍逻辑类型,然后介绍逻辑运算,最后补充介绍条件运算和逗号运算符。
2023-07-28 00:29:11 229
原创 C语言学习笔记(3)循环
do-while循环和while循环很像,唯一的区别是我们在循环体执行结束的时候才来判断条件。与while循环相同的是,条件满足时执行循环,条件不满足时结束循环。它会首先判断一个条件是否满足,如果条件满足,则执行后面紧跟着的语句或语句括号,然后再次判断条件是否满足,如果条件满足则再次执行,直到条件不满足为止。错误原因:输入num=100后,会逐个通过if判断,最终在通过最后一个if判断后,i=1被输出。while循环和if循环一样,只要条件满足,就执行后面的语句。当型循环:当条件满足时,执行循环。
2023-07-27 21:24:42 202
原创 C语言学习笔记(2)条件判断 if语句
如果没有使用花括号,if和else语句只能控制其后的单个语句。如果在单个语句后紧接着编写另一条语句,那么这条语句将始终会被执行,而不管if或else语句的条件是否为真或假。一个基本的if语句由一个关键字if开头,跟上在括号里的一个表示条件的逻辑表达式,然后是一对大括号“{}”之间的若干条语句。如果表示条件的逻辑表达式的结果为true,那么就执行后面跟着的这对大括号中的语句,否则就跳过这些语句不执行,而继续下面的其他语句。”来表示语句的结束,因此,if后面{ }的语句体也是if语句的一部分;
2023-07-26 19:24:17 337
原创 C语言学习笔记(1)常量和变量
双引号里的内容是需要输入的部分。出现在scanf里的东西是需要输入的,不是程序让你看的。(和python不同)如果修饰的变量 AMOUNT 需要根据输入的值来定义,则需要将AMOUNT定义一个变量。,表示AMOUNT变量的属性是一旦被初始化就不能再修改了。直接量:(literal) 程序中直接出现的数字。程序赋值,可以一行赋值,也可以多行赋值。以下代码是 main函数中的代码。const是一个属性,用来修饰。2. a,b都初始化。
2023-07-24 21:16:54 183
原创 matlab的常用函数
本文主要介绍在使用matlab过程中遇到的一些常用函数,其中和数值有关的函数、和矩阵有关的函数、和画图有关的函数、和运算有关的函数
2023-05-04 21:43:50 685
原创 mathtype的自动公式编号问题
mathtype在科技类文章中十分常用,但是对于新手来说,如何在word中给公式正确编号也是一个大问题,本文结合我的经历,梳理一些避坑指南。
2023-05-02 00:53:45 1502
原创 anaconda 中如何下载opencv
用Navigator下载;用镜像源下载安装包,再在cmd中用pip install [package]的语句进行下载直接在cmd中用pip install [package]的语句进行下载。结果:前两种方法都失败了。第三种方法没有下载到anaconda我的虚拟环境里,而是下载到了我安装的python3.11里面,这样的话,我在anaconda虚拟环境里还是不能使用。今天在anaconda的网站上发现竟然有下载的方法。程序很简单。
2023-03-15 11:57:30 2075
原创 anaconda一些操作记录
链接:默认的conda channel是defaults,但这个channel的代码包不全。我的建议使用conda-forge channel,并设置严格优先使用conda-forge,因为这不同channel的包不完全兼容。我之前通过conda-forge channel安装geopandas时候,由于没有设置严格优先使用conda-forge,conda使用了defaults channel安装了libgdal(这是geopandas的依赖包之一),导致geopandas的安装一直不成功。
2023-03-15 11:54:57 214
原创 学习和科研过程中的一些常用网站总结
本文分类整理一些在科研和日常学习过程中会使用到的一些网站,分为国内国外两大类,细分为计算机和日常学习以及科研的一些网站。点击标题即可进入对应网站。如果有发现新网站,随时更新。欢迎大家评论区分享学习网站。
2023-02-16 21:19:46 171
原创 VS中scanf_s()函数
注: scanf_s最后一个参数n是接收缓冲区的大小(即buf的容量),表示最多读取n-1个字符.因为要存放字符串中的 ‘\0’VS中使用scanf_s函数,必须申明字符串长度;但对于其他类型,如float,int…如果不是%s字符串类型,可以不用指定读取的字符串长度n。
2022-12-17 10:24:34 340
原创 spyder操作页面
这个窗口展示了现在使用的函数的帮助文档。显示产生的图象,可以浏览,复制,保存。在这个窗口,可以看到和编辑产生的变量。运行python代码的地方。
2022-10-24 16:12:36 1811
原创 C盘各个文件的简单介绍
C盘是指电脑硬盘主分区之一,一般用于储存或安装系统使用。针对安装在本地硬盘的单操作系统来说,是默认的本地系统启动硬盘。C盘对于本地硬盘的单操作系统来说,是极其重要的,所以平时存放数据尽量不要放C盘。默认在C盘需要移动出来的个人目录是:C:\Documents and Settings\你的登录帐号\ Documents。
2022-09-09 14:51:59 12350 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人