- 博客(17)
- 收藏
- 关注
原创 详解C++的编译过程
1.C++的编译流程源文件->预编译器->后缀名.i文件->编译器->汇编文件->编译器->目标文件(后缀名.obj或.o)->链接器2.编译流程测试(1)编写一下代码,命名为Indexx.cpp文件#include<iostream>using namespace std;#define MAX 1024int main() { std::cout << MAX << std::endl; retur
2021-05-09 12:24:02 2758
原创 详解C++中的const关键字
1.const修饰指针const修饰指针有三种情况 const修饰指针 — 常量指针 const修饰常量 — 指针常量 const即修饰指针,又修饰常量int main() { int a = 10; int b = 10; //const修饰的是指针,指针指向可以改,指针指向的值不可以更改 const int * p1 = &a; p1 = &b; //正确 //*p1 = 100; 报错 //const修饰的...
2021-04-04 14:58:06 278
转载 C++ static关键字详解
static当与不同类型一起使用时,其具有不同的含义。我们可以使用static关键字:静态变量:函数中的变量,类中的变量静态函数:函数静态类的成员:类对象和类中的函数现在让我们详细看一下静态的这些用法:静态变量函数中的静态变量当变量声明为static时,空间将在程序的生命周期内分配。即使多次调用该函数,静态变量的空间也只分配一次,前一次调用中的变量值通过下一次函数调用传递。这对于在C / C ++或需要存储先前函数状态的任何其他应用程序非常有用。#include <..
2021-03-18 20:45:55 263
原创 Ubuntu16.04/18.04下源码编译opencv
目录1.配置基本C++环境2.配置opencv依赖项3.编译opencv4.添加到系统 路径1.配置基本C++环境sudo apt-get updatesudo apt-get install gccsudo apt-get install g++查看g++版本:在终端输入g++ --version,若出现版本号,则说明安装成功2.配置opencv依赖项sudo apt-get updatesudo apt-get install vimsudo apt-ge
2021-03-09 22:34:42 245
原创 轻量型神经网络 shufflenet V1和shufflenet V2
1.shufflenet V1ShuffleNet是旷视科技(Face++)提出的一种计算高效的CNN模型,其和MobileNet和SqueezeNet等一样主要是想应用在移动端 所以,ShuffleNet的设计目标也是如何利用有限的计算资源来达到最好的模型精度,这需要很好地在速度和精度之间做平衡。 在mobilenet v1中的核心操作是引入了深度可分离卷积,即通过对feature map的每个channel维度进行分组,分组数等于通道数, 然后通过1*1的卷积快进行通道之间信息的融合,防止通道信息无
2020-12-08 22:07:34 1555 1
原创 详解torch.topk
torch.tok()torch.topk(input,k,dim=None,largest=True,sorted=True,*,out=None) -> (Tensor,LongTensor)参数: input(Tensor) – 输入张量(必须是torch的张量类型) k(int) – 需要返回的topk的个数 dim(int,optional) – the dimension to sort along,默认为...
2020-11-25 10:53:48 1267
原创 白话对抗生成网络
白话对抗生成网络判别模型和分类模型常见的判别模型有线性回归,逻辑回归,支持向量机,DNN等。 常见的生成模型有隐马尔科夫模型、朴素贝叶斯模型、高斯混合模型、 LDA、 Restricted Boltzmann Machine 判别模型即从数据中学得一个决策函数,通过此决策函数来对物体进行判别,如将一张猫的图片输入已经训练好的逻辑回归模型中, 该模型事先从数据中学得的决策函数来对这张图片进行判别。生成模型即从数据概率分布中学习采样的一个过程,该采样是对原数据分布的一个均匀采样。对抗生成网络(GAN
2020-11-18 15:46:37 167
转载 torch.optim.lr_scheduler:pytorch必须掌握的的4种学习率衰减策略
梯度下降算法需要我们指定一个学习率作为权重更新步幅的控制因子,常用的学习率有0.01、0.001以及0.0001等,学习率越大则权重更新。一般来说,我们希望在训练初期学习率大一些,使得网络收敛迅速,在训练后期学习率小一些,使得网络更好的收敛到最优解。下图展示了随着四种常用的学习率衰减策略曲线:1、指数衰减学习率按照指数的形式衰减是比较常用的策略,我们首先需要确定需要针对哪个优化器执行学习率动态调整策略,也就是首先定义一个优化器:optimizer_ExpLR = torch.opti.
2020-11-14 17:41:10 3870 1
原创 batch size,学习率(learning rate),and training time
batch size,学习率(learning rate),and training time1.batch size和leaning rate的关系现在深度学习中的绝大多数算法采用梯度下降法来进行训练,并且通过选择学习率来控制下降的步长,在梯度下降法中学习率和batch size的选择直接影响了下降的步长,即步长与batch size成反比,与学习率成正比,因此这两个参数直接影响了模型的参数更新,他们是影响模型性能收敛的最佳参数。(1)大的batch size可提高模型的稳定性,并且可以减少训
2020-11-13 21:02:43 2999
原创 如何训练GAN?能够让GAN work的方法和技巧
如何训练GAN?能够让GAN work的方法和技巧尽管在生成对抗网络(GAN)中的研究继续改善了这些模型的基本稳定性,但我们使用了许多技巧来训练它们并使它们日复一日地稳定。(翻译自:https://github.com/soumith/ganhacks)注:这是笔者的不完全翻译如下是关于这些tricks的一个总结。1.归一化输入(1)将图片归一化到-1到1之间(2)在生成器的最后一层中使用tanh2.微调的损失函数在原始GAN的论文中,损失函数是min (log 1-D),但
2020-11-11 11:04:14 841 2
原创 GAN训练中遇到的mode collapse(模式崩塌)
1.梯度/loss爆炸(NaN,Inf)这两天一直在训练自己的GAN模型,训练过程中鉴别器极其不稳定,训练的几个epoch之后经常出现NAN,在加入WGAN中的梯度惩罚和鉴别器的参数裁剪之后,模型似乎变得可以训练了。解决方案:1.使用WGAN中的loss代替原始GAN中的损失函数,去掉原始GAN损失函数中的log2.适当地进行梯度惩罚3.使用hinge loss2.mode collapse在模型变得可以训练之后,生成器和鉴别器的loss如图所示: ...
2020-11-04 11:50:20 10206
原创 Ubuntu/linux服务器创建用户
1.首先sudo -i 切换至root超级用户目录下(前提是你登录的该账户具有root权限,否则无法获得root权限)2. 创建用户 sudo useradd -m -s /bin/bash/ 用户名3. 设置密码: sudo passwd 用户名,然后即可输入密码4.如何修改用户密码: 进入超级用户下,输入passwd 用户名,然后按照提示即可修改密码5.切换至普通用户: 用户创建完成之后输入exit命令然后回车即可切换至普通用户6.登录新账户:...
2020-11-04 11:33:05 989
原创 pytorch使用tensorboard进行模型可视化
1.配置好tensorboardx和tensorflowpip install tensorflowpip install tensorboardx2.调用tensorboardxfrom tensorboardX import SummaryWriterwriter = SummaryWriter(log_dir='logs',flush_secs=25)若pytorch>=1.6则可直接from torch.utils.tensorboard import Su.
2020-10-29 11:34:25 1239
原创 pytorch的踩坑记录(随时更新)
1.RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: balabala...今天在尝试复现别人论文的过程中出现了以上错误,花了很长时间才解决,看到这篇文章(PyTorch 的 Autograd 链接:https://zhuanlan.zhihu.com/p/69294347)才解答了我的疑问2.RuntimeError: CUDA
2020-10-28 17:01:11 1053
原创 (超简单)Ubuntu/linux上搭建pytorch-gpu环境
(超简单)Ubuntu/linux上搭建pytorch-gpu环境1.下载miniconda/conda1.下载miniconda/condaconda和miniconda可选择在清华镜像源中下载,这样下载速度可大大加快。清华镜像源网址为:https://pypi.tuna.tsinghua.edu.cn/下载完成之后,在Ubuntu终端(terminal)中使用CD命令进入conda文件存放位置,然后输入命令:bash ‘你的安装包名称’,然后就可以按照提示即可成功安conda/miniconda
2020-10-28 16:42:12 806 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人