自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(95)
  • 收藏
  • 关注

原创 git文章总汇

我只是将本篇博客、廖雪峰的网站的git教程和菜鸟教程的git教程当成字典来使用,需要的时候在来看。如果想要系统从零开始学习git,请直接参考廖雪峰的网站的git教程。:一般使用rebase命令将main分支的内容融合到次级分支,使用merge命令将次级分支的内容融合到main分支。:本篇文章是git的实战篇,介绍了如何将本地的仓库上传到多个git远程库中。:详解了git merge和git merge的参数:“Pull Request 是一种通知机制。

2022-09-25 10:18:34 174

原创 requires_grad,grad_fn,grad的含义及使用

因为pytorch中规定只要某一个输入需要相关梯度值,则输出也需要保存相关梯度信息,这样就保证了这个输入的梯度回传,即我们只需要设置x的requires_grad=True,就可以保证y、z、out的requires_grad=True。还可以看出,要求out对x的偏导,需要知道out对z的偏导、z对y的偏导、y对x的偏导。我觉得requires_grad设为True的作用就是保存这些偏导信息(也称为梯度信息),比如y的requires_grad设为True,则会保存“y对x的偏导”这个信息。......

2022-07-18 15:50:10 816

原创 4. git merge简介,以及git merge的参数–ff、–no-ff和–squash的区别?

在master分支中使用git merge topic,只会将C和H中的文件进行比较,如果没有冲突就会生成H。A、B、C都不会放进master分支中。但是通过git log --oneline查看提交日志时,会发现A、B、C好像放进master中了,但是其实没有。为了证明这一点,我们可以在H处使用 git reset --hard HEAD^回到上一个版本,此时我们发现我们回到了F,而不是C。虽然A、B、C都不会放进master分支中,但是分支的信息是保存的,即使topic指针被删除。git merge

2022-07-14 10:13:00 231

原创 6. git与vscode的使用

直接看https://blog.csdn.net/sinat_16643223/article/details/111713296.gitignore文件中写入需要忽视的不提交的文件。在vscode中安装插件gitlens1.进入welcome进行快速设置通过以下选项可以进行快速地设置:进入welcome之后, 就可以选择需要的功能。【英文看不懂,用xtranslator不就行了】2.比较两个commit之间修改了什么分别点击两个commit中的select for compare,就可以比较两个c

2022-07-13 15:28:43 316

原创 3. git一份代码提交多个git远程库中

通过git remote add可以添加远程库,如下:上面命令创建了名为Mars和Ceres的远程库,并通过push命令将一份已经写好的代码提交到两个git远端。git remote -v # 可以看到已存在的远程库说明:将一份已经写好的代码提交到两个git远端....................................

2022-06-23 21:14:11 537

原创 5.git pull request

“Pull Request 是一种通知机制。你修改了他人的代码,将你的修改通知原来的作者,希望他合并你的修改,这就是 Pull Request。”假设要pull request的库为https://github.com/usernameA/repository1.fork原仓库首先你需要对库repository进行fork。假设fork以后,仓库repository在你的github中的地址为https://github.com/mynameA/repository2.修改代码,并上传到远程仓库执

2022-06-23 21:07:54 132

原创 解决VMware虚拟机桥接模式无法上网的解决方法 ubuntu

由于我的主机使用拨号上网的,我进行了如下操作:1.首先我按照链接1敲了一遍2.然后我安装链接2配置了拨号上网我不知道第一步有没用,反正我就弄好了

2022-06-23 16:48:06 427

原创 2. git rebase的基本使用

git rebase:改变基底。下面举例说明git rebase的作用:如上图,首先通过git pull同步远程的master分支。然后我新建了一个feature分支用于开发相关的功能,如下图:我在feature上实现功能时,有人在远程上传了新的提交,如下:此时如果我需要合并feature到master,我需要回到master分支去做git pull操作,从而同步远程的master,如下:然后我回到feature上,使用git rebase master改变feature的基底,结果如下:将分支

2022-06-23 09:29:55 180

转载 python提取COCO数据集中特定的类

import osfrom shutil import copyfile,movesrc_path = './labels/train2017/' # 标签img_path = './images/train2017/' # 图像dst_label_path = './traffic_train_coco/labels/'dst_img_path = './traffic_train_coco/images/'cls_id = ['79'] # 牙刷labels = os.listd

2022-05-17 21:11:06 102

原创 telnet与防火墙

Telnet 命令通常用来远程登录,是TCP/IP协议族中的一员。Telnet 命令还可以作为别的用途,比如确定远程服务的状态,比如确定远程服务器的某个端口是否能访问。默认情况下,Telnet 在端口 23 上运行。如果您的系统上正在运行任何防火墙,请确保启用必要的端口:sudo ufw allow 23sudo ufw reloadsudo ufw enabletelnet 命令的一般格式如下:telnet [hostname/ipaddress] [port number]下面的示例

2022-03-11 10:19:25 4117

原创 C++ signal() 函数

先看下面一段代码:#include <iostream>#include <csignal>#include <unistd.h> using namespace std; void signalHandler( int signum ){ cout << "Interrupt signal (" << signum << ") received.\n"; // 清理并关闭 // 终止程序

2022-03-10 19:33:12 2032

原创 c++ #define 宏的简单使用

1.#define 宏的使用:#define PI 3.1415926 // 把程序中出现的PI全部换成3.1415926#define S(a,b) a*b // area=S(3,2);第一步被换为area=a*b; ,第二步被换为area=3*2;// 实参如果是表达式容易出问题#define S(r) r*rarea=S(a+b); // 第一步换为area=r*r;,第二步被换为area=a+b*a+b;//正确的宏定义是 #define S(r) ((r)*(r))更具体

2022-03-10 14:40:38 692

原创 Visual Studio 2017 C++使用

1.安装只选下面这个就可以安装详情,自行百度2 项目建立流程2.1 新建项目我们将项目名称设为Test,解决方案名称设为Code。一个解决方案中可以建立多个项目。每一个项目都可以转化成一个exe或dll文件。点击确定以后出现下图窗口:点击确定以后就成功建立了项目。在视图菜单下可以找到解决方案资源管理器,通过解决方案资源管理器可以看到解决方案下的项目文件,如下图所示:右击“源文件”可添加cpp文件。2.2 安全开发生命周期(SDL)检查为了项目开发更加的安全,用VS开发C++程序默

2022-03-06 22:01:34 2418 1

原创 C++ using namespace std

1.namespace和usingC++标准程序库中的所有标识符都被定义于一个名为std的namespace中。由于namespace的概念,使用C++标准程序库的任何标识符时,可以有三种选择:1、直接指定标识符。例如std::ostream而不是ostream。完整语句如下:std::cout << std::hex<< 3.4<< std::endl;2、使用using关键字。using std::cout;using std::endl;以上程序可以

2022-02-28 19:49:45 60

原创 C++中的头文件(.h):预编译阶段,头文件被替换、如何写头文件

参考:链接1定义头文件是扩展名为 .h 的文件,头文件也是C++的源代码,头文件中包含了 C++中函数、类、对象等的声明和宏定义,它可以被多个源文件通过#include引用共享。使用头文件原因C++中有“单一定义”规则,即一个对象只能被定义一次,如果在一个源文件中定义了一个函数,其他的源文件想要使用这个函数就需要在使用前声明一下这个函数,在编译结束之后,编译器链接的时候再去查找这些函数的定义。故要使用其他文件中定义的函数、类、对象(变量)时,需要对函数、类、对象进行声明。这些声明文件一般放在一个头

2022-02-27 21:34:41 5145 1

原创 无线网卡驱动的知识

插入无线网卡后,需要安装相应的驱动。可以直接咨询厂家驱动如何安装。我手里的无线网卡在插入进windows电脑的时候,会出现一个弹窗,在弹窗中选择setup就可以安装好相应的驱动。驱动安装完成后,就可以看到WIFI列表。...

2022-02-21 14:38:20 136

原创 拨号上网与以太网

拨号上网与以太网是两种不同的网络。以太网实现了区域接入的电子设备进行数据传输,然后通过路由器接入互联网。而宽带拨号则实现了计算机接入互联网。宽带拨号实现的数据涉及范围比以太网的更广更多。中国国内拨号上网的用户基本都是使用基于PPPoE协议的 ADSL 。 PPPoE全称为Point to Point Protocol over Ethernet ( 以太网 上的 点对点协议 ),是将以太网和PPP协议结合后的协议,通过PPPoE技术和 宽带调制解调器 (比如ADSL Modem)就可以实现高速宽带网的

2022-02-20 10:31:04 3475

原创 linux常见错误

有些东西设置以后,需要重启才能生效

2022-02-10 22:49:41 464

原创 有了mac为什么要有ip?有了ip为什么要有mac?

MAC,全称media access,是每一块网络接口卡的地址,与硬件接口有关,地址唯一;IP地址,英文名Internet Protocol address,指明计算机到网络的某条链接,主机可以有多个IP地址;有了mac为什么要有ip?我的理解是:IP地址将世界分为了一块一块,每一网段为一块。这样,就只需要维护到每一个块的路径。如果不使用IP地址,就需要维护到每一个主机的路径。而主机可能会发生频繁地移动,只要有一个主机发生移动就需要更新全网的信息。还有一个问题:假设主机都不移动,此时要将世界分为了

2022-01-29 21:53:40 2125 1

原创 默认网关是啥

默认网关就是一个IP地址。当主机发现目的IP和主机IP不在同一网段的时候,会默认将数据发送到默认网关上。

2022-01-29 21:52:20 3577

原创 桥接和net

桥接:虚拟机上的系统被分配一个与所在主机同一个网段的ip,可以直接与局域网内的主机进行通信net:虚拟机上的系统通过与所在主机间的通信,从而访问其他主机

2022-01-29 19:57:06 311

原创 void指针(void*):void*存放任意对象的地址、通过(int*)a转换指针类型

void*是一种特殊的指针类型,可用于存放任意对象的地址。void *pv =&obj; // obj 可以是任意类型的对象1.作为函数形参#include <stdio.h>int void_test(void* data){ int num = 0; num = *(int*)data; // (int*)的作用是将data当成一个int指针(强制类型转换) printf("num = %d\n", num);}int main()

2022-01-27 10:04:35 1220

原创 linux中输入ctrl-z

ctrl-z: 挂起在命令行窗口运行的进程,而并非结束进程,用户可以在命令行窗口中输入fg/bg来让进程继续执行。输入fg:在前台执行(在当前命令行窗口执行),此时可以使用ctrl-z再次挂起该进程输入bg:在后台执行(在当前命令行窗口看不到执行过程),一个比较常用的功能:正在使用vi编辑一个文件时,需要执行shell命令查询一些需要的信息,可以使用ctrl-z挂起vi,等执行 完shell命令后再使用fg恢复vi继续编辑你的文件(当然,也可以在vi中使用!comm

2022-01-14 19:44:06 298

转载 C++ main函数参数:argc为是参数个数、argv[0]是程序名称

C++的main函数可以没有输入参数,也可以有输入参数,而且只能有两个参数,习惯上coding如下: int main(int argc, char* argv[]) 或者 int main(int argc, char** argv)其中,argc = argument count :表示传入main函数的数组元素个数,为int类型,而 argv = argument vector :表示传入main函数的指针数组,为char**类型。第一个数组元素argv[0]是程序名称,并且包含程序所在的完整路

2022-01-14 14:25:35 220

原创 C++用字符数组存储字符串

使用char类型的数组保存字符串。每个字符串都需要以’\0’结尾,所以字符串数组的长度最小等于字符个数+1三种等价的初始化方式:char str[12]={'H','e','l','l','o',',','W','o','r','l','d','\0'}; // 初始化列表char str1[12]="Hello,World"; // 指定字符数组长度,字符串末尾隐含设为'\0'char str2[]="Hello,World"; // 未指定字符数组长度,字符串末尾隐含设为'\0'当然还可

2022-01-14 14:09:28 2088 1

原创 1×1的卷积核

卷积核都有增加非线性。1×1的卷积核只在通道上进行处理,其他的卷积核是在通道和面上进行处理。

2022-01-13 21:26:24 1360

原创 CUDA error: CUBLAS_STATUS_NOT_INITIALIZED when calling `cublasCreate(handle)`

torch.utils.data.DataLoader(train_dataset, batch_size=batch_size, shuffle=True, batch num_workers=nw)中的nw在windows中需设为零

2022-01-13 16:06:39 1221

原创 我的研究想法

1.读论文的时候,需要将论文中好的做法用自己语言提炼出来。2.看到论文可能存在的不足,或者你认为可以用的方法时,记得记下来

2022-01-11 15:43:32 84

原创 1. git学习

1.githubRepositories:存放项目Star:收藏watch:有更新时会提醒fork:在你的账号中创建此仓库的副本,Pull Request 把你的提交贡献回原仓库。(具体还得实战演练演练)2.githttps://note.youdao.com/s/PaPkixpchttp://rogerdudler.github.io/git-guide/index.zh.html......................................................

2022-01-11 13:34:45 113

原创 设置环境变量——bashrc与profile

bashrc与profile都用于保存用户的环境信息,bashrc用于交互式non-loginshell,而profile用于交互式login shell。(这句我没看懂)/etc/profile,/etc/bashrc 是系统全局环境变量设定~/.profile,~/.bashrc用户目录下的私有环境变量设定当登入系统获得一个shell进程时,其读取环境设置脚本分为三步:1.首先读入的是全局环境变量设置文件/etc/profile,然后根据其内容读取额外的文档,如/etc/profile.d和/e

2022-01-10 19:45:38 666

原创 linux基础入门

1.文件和目录管理创建:mkdir删除:rm删除非空目录:rm -rf file目录删除日志 rm *log (等价: $find ./ -name “*log” -exec rm {} ;)移动:mv复制:cp source_dir dest_dir (复制目录:cp -r source_dir dest_dir)显示当前路径: pwd2.性能监控$ps -ef # 查询正在运行的进程信息,常与grep结合使用,如:$ps -ef | grep colin115 # 查询归属

2022-01-10 19:19:48 255

原创 正则表达式

正则表达式就是用来匹配字符串的,如你需要在一个文件中查找以“奥特曼”为开头的字符串,此时就需要正则表达式。1.元字符^:匹配字符串的开始,如^abc就是匹配以abc开头的字符串2. 重复限定符*:重复前面那个字符零次或多次,如^(ab)*:重复ab零次或多次3.区间1.限定0到9 可以写成[0-9]2.限定A-Z 写成[A-Z]如:^((13[0-2])|(15[5-6])|(18[5-6])|145|176)\d{8}$于匹配联通的号码4.贪婪与非贪婪(懒惰)贪婪:尽可能多地匹

2022-01-10 14:26:42 166

原创 linux的grep

grep:查找哪个文件中有字符串A,并将A对应文件和A所在行打印出来。如:# 查找满足条件的文件grep include *cpp # 查找以cpp结尾的文件中有哪些文件是包含字符串include,以及打印include所在行输出如下:test2.cpp:#include<iostream>test.cpp:#include<iostream># 查找目录下所有文件grep -r include ./ # 查找当前目录下所有包含字符串include的文件以及

2022-01-09 21:24:54 462

原创 杂乱的经验

1.看书之前,去搜一搜这本书在豆瓣的评分2.看论文和学英语一样,需要连续持久,做不到一口吃成一个胖子3.将问题清晰地写出来。一般只要问题能够足够清晰地写出来,解决方法也就很容易出来了4.经典的书或知识点,网上总是有大量的笔记和资料,可供你参考5.经典的其他:1.硕士论文创新点:(1)神经网络创新 (2)旧网络用到新领域也是一种创新...

2022-01-09 16:30:03 15

原创 SAP安装

2022-01-08 19:15:26 260

原创 size_t:记录数据大小无符号整型

1.不同系统定义不同size_t 的全称应该是size type,就是说size_t是用来记录数据大小无符号整型。size_t的真实类型与操作系统有关。在32位架构中被普遍定义为:typedef unsigned int size_t;而在64位架构中被定义为:typedef unsigned long size_t;size_t在32位架构上是4字节,在64位架构上是8字节,在不同架构上进行编译时需要注意这个问题。而int在不同架构下都是4字节,与size_t不同;且int为带符号数

2022-01-08 10:39:34 467

转载 ubuntu开机卡在/dev/nvme0n1p2: clean 进入不了图形界面

一般是驱动问题。需要重新安装驱动。可以参考这篇文章

2022-01-06 20:56:14 2156

原创 gcc编译和gdb调试的学习

gcc与g++基本用法GCC编译流程分为四个步骤: 编译预处理、编译、汇编和链接gcc最基本的用法是∶gcc [options] [filenames]使用gcc可以让源文件编译停在上述四个编译步骤的某一步,具体如下:预编译(Pre-Processing)预编译是在程序被编译之前为编译器所做的一些准备工作,主要是 拷贝包含的头文件到源程序文件、把宏替换成具体的数和处理条件编译。我们使用-E选项来使得GCC编译器在完成预处理后停止执行。g++ -E test.cpp-o test.i编译(C

2022-01-06 20:52:08 805

原创 矩阵论总结

1.线性空间:加法具有封闭性和唯一性——结合律、交换律、零元、任意元素都存在负元。唯一性代表相加起来,不会既等于a,又等于b。零元指的是和x相加还等于x的元素,而不是指普通的数零。数乘具有封闭性和唯一性——结合律、两个分配率(将常数或向量分配)、恒等率(1指的是普通的数一)ps:理解线性空间的时候,可以假设线性空间中的每个元素都是一个向量线性空间性质:零元和负元都是唯一的2.基:极大线性无关组的个数称为线性空间的维数,dimV。极大线性无关组就是基。证明是基:1)证明线性无关 2)证明任意元素都可

2021-12-30 22:07:07 621

转载 C++堆和栈详解(转)

一、预备知识—程序的内存分配一个由C/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 如使用new分配的空间,最后需要delete释放空间。3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初

2021-12-16 14:41:56 484

空空如也

空空如也

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

TA关注的人

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