自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小小顺利的博客

牛人太多......向别人学,跟自己比!

  • 博客(71)
  • 资源 (3)
  • 收藏
  • 关注

原创 zsh安装与配置

参考网页来自于:https://www.jianshu.com/p/4e601cc266d2https://github.com/Shunli-Wang/OSSetup/blob/master/setup_zsh.sh#L141、安装zshcat /etc/shells # 查看有哪些shellsudo apt-get install -y zsh # 安装zsh2、修改默认为zshsudo chsh -s $(which zsh)3、安装oh.

2021-06-28 21:42:26 675

原创 逻辑卷管理器-LVM-Logical Volume Manager 基本操作

LVM重点在于:可以弹性地调整文件系统的容量,而并不在于性能和数据安全上。LVM功能在于:可以整合多个物理分区,使得这些分区看起来像是一个磁盘,未来可以在LVM管理的磁盘中新增或删除其他物理分区。LVM整体步骤:将几个物理分区或磁盘通过软件组合为一个大硬盘(卷组/VG),之后对这个大磁盘进行划分形成可使用的分区(逻辑卷/LV),进而分别挂载使用。一、基本概念:PV、PE、VG、LV含义1.物理卷(Physical Volume, PV)需要首先将分区/磁盘的系统标识符(System ID

2021-04-26 12:22:31 711

原创 Linux磁盘分区基本操作

注意:本文全部信息均来自于《鸟哥私房菜》第二章·第二节 磁盘分区一、磁盘连接方式和设备名称Linux中所有设备均是以文件的形式存在,存储设备通常以以下两种形式存在:正常物理机器使用的磁盘名称:/dev/sd[a-p]虚拟机环境中为了加速会使用:/dev/vd[a-p]# 备注:SATA、USB、SAS磁盘接口均是使用SCSI模块进行驱动的,因此设备文件名称都是/dev/sd[a-p]格式二、MBR和GPT磁盘分区表磁盘构成:碟片、机械手臂、磁头、主轴马达碟片:碟片上进行信息

2021-04-24 11:51:36 738

原创 Linux系统查看CPU个数&超线程&线程数

小命令:Linux查看CPU详细信息 - 简书 (jianshu.com)【逻辑CPU数量和型号】cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c【物理CPU数量】cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l【物理CPU内核的个数】(1个物理CPU里面有几个物理内核)cat /proc/cpuinfo | grep "cpu cores" | uniq..

2021-04-24 10:41:58 5533

原创 pytorch自动混合精度训练

from torch.cuda.amp import autocast, GradScaler # Init Step 1: Create Model model, device, start_epoch = create_model(opt) if torch.cuda.device_count() > 1: model = nn.DataParallel(model) model.cuda() # Init Step 2: Cre...

2020-11-17 11:24:23 730

原创 VNC快速配置

1.更新源sudo apt update2.安装VNCserversudo apt install vnc4server3.安装图形界面sudo apt install -y xfce4 xfce4-goodies4.运行vncserver,配置密码(建议123456,所有服务器统一)vncserver5.关闭vncserver进程vncserver -kill :16.更改~/.vnc/xstartup,替换为:#!/bin/bash[ -r $H

2020-10-13 08:56:19 4746 1

原创 Keras模型基本流程

文章目录前言一、Keras流程二、Keras中的模型定义1.基于Sequential 类2.基于函数式API前言  目前打算看tensorflow.probability模块,但是发现整个都是适配Keras的,很多的例程也都是基于Keras的。所以借此机会学一下这个框架。一、Keras流程目前keras已经集成在了tf之中,默认的import方式如下所示,一般用到最多的就是layers层。tfk = tf.kerastfkl = tf.keras.layers# 定义模型network

2020-09-22 22:55:01 588

原创 frp内网穿刺/反向代理教程

文章目录前言一、明确基本概念二、frp下载与使用1.云服务器做为Server端2.GPU服务器做为Client端3.远程访问三、云服务器防火墙端口开启前言   frp 是一个高性能的反向代理应用,可以帮助开发者轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。  frp的作用如下:利用处于内网或防火墙后的机器,对外网环境提供 http 或 https 服务。对于 http 服务支持基于域名的虚拟主机,支持自定义域

2020-09-22 11:17:07 4221

原创 tf.variable_scope中的reuse

一、两种scope:variable与nametf.variable_scope()是对变量进行命名管理,而tf.name_scope是对算子(op)进行命名管理,二者相互不影响。见下例:import tensorflow as tffor i in range(10): with tf.name_scope('test'): a = tf.constant([1]) b = tf.constant([1]) c = a + b .

2020-08-26 21:28:35 2481

转载 小白之通俗易懂的贝叶斯定理

原文链接:https://zhuanlan.zhihu.com/p/37768413概率论与数理统计,在生活中实在是太有用了,但由于大学课堂理解不够深入,不能很好地将这些理论具象化并应用到实际生活中,感到实在是太遗憾了,所以重新学习并用小白式的通俗易懂的语言来解释记录,以此来加深理解应用。先思考一下,数学是怎么产生的?当祖先遇到一个问题,最终采用了某种方法,把这个问题解决了,非常开心。动物都是有惰性的,为了在下次遇到此类问题时不费吹灰之力,于是就把这种解决问题的思想和方法提取出来,然后就有了数学

2020-08-09 23:30:46 3067 3

原创 Pytorch 入门

1.加载模型seg_model=torchvision.models.detection.maskrcnn_resnet50_fpn(pretrained=True)seg_model=seg_model.cuda(1)seg_model=seg_model.eval()2.将图像封装为tensor:torchvision.transforms.functional.to_tensor(img_pil).cuda() #cuda之后可以指定ID3.从模型取出结果:cond_per...

2020-07-28 15:59:21 205

原创 ffmpeg使用笔记

#################### 视频压缩 ########################ffmpeg -i <input> -vcodec libx264 -crf 25 <output>#################### 视频截取 ########################截取(t1+t ):ffmpeg -i <input> -ss 00:00:30.0 -c copy -t 00:00:10.0 <output>截取.

2020-07-28 10:59:11 338

原创 Tensorflow笔记4:学习率衰减策略tf.train.cosine_decay_restarts

  TF在learning_rate_decay.py中提供了几种非常骚气的学习率下降方法,今天就来玩一玩。只需要简单的参数设定,就能够产生神奇的lr衰减效果。一、cosine_decay_restarts  在ICLR2016的论文**[Loshchilov & Hutter, ICLR2016], SGDR: Stochastic Gradient Descent with Warm Restarts**中介绍了Warm的学习率设计方法。简而言之就是衰减了但是还会回来,周期性地变化。使用方法

2020-07-24 16:44:30 2650 1

原创 Tensorflow笔记4:Saver

  Saver类位于tf.train中,属于训练过程中要用到的方法,主要作用就是保存和加载save & restore ckpt。  最简单的保存应用举例:saver.save(sess, 'my-model', global_step=0) ==> filename: 'my-model-0'...saver.save(sess, 'my-model', global_step=1000) ==> filename: 'my-model-1000'  正常训练的过程应用:

2020-07-23 23:19:25 468

转载 TensorFlow-Slim API 官方教程

https://blog.csdn.net/u014061630/article/details/80632736TF-Slim 模块是 TensorFlow 中最好用的 API 之一。尤其是里面引入的arg_scope、model_variables、repeat、stack。

2020-07-20 23:25:31 157

原创 Tensorflow笔记3:Variable

  调用Variable类即可向Graph中添加变量。Variable在创建之后需要给定初始值,可以是任意type、shape的Tensor。一旦使用初始值完成了初始化,type和shape都固定,除非使用assign方法改变。一、Variable基本使用方法  给定了init_value并没有真正进行赋值,还需要初始化,初始化方法有两种:单变量手动初始化:每个Variable都有initializer操作,调用方法为:my_tensor = tf.constant([[1.0, 2.0], [

2020-07-20 16:10:44 292

原创 Tensorflow笔记2:Session

参考内容都出自于官方API教程tf.Session一、Session类基本使用方法  这里使用的是1.15版本,TF官方为了能够在2.0+版本中保持兼容,因此调用时使用了tf.compat.v1.Session。  定义:一个Session是对环境的封装,环境中包含执行/executed过的Operation和评估/evaluated过的Tensor。  一个Session会含有很多资源,例如Variable、QueueBase、RenderBase等。当Session运行结束后需要通过**Sess

2020-07-20 10:13:20 1519

原创 Tensorflow笔记1:Graph

参考内容都出自于官方API教程tf.Graph一、Graph类调用  这里使用的是1.15版本,TF官方为了能够在2.0+版本中保持兼容,因此调用时使用了tf.compat.v1.Graph。若安装的就是1.15版本,直接tf.Graph即可。  定义:一个Graph是一系列tf.Operation(表示计算单元)和tf.Tensor(表示operations之间的数据流单元)的组合。  在构建图时,系统已经默认有default Graph被注册,可以直接向默认图中添加操作。这个默认的图通过**tf

2020-07-19 17:34:49 439

原创 Linux下screen的使用

关掉xshell之后网站也随着关闭,我们可以使用screen命令,来让保证退出ssh之后程序继续在后台跑。利用SSH远程连接服务器,运行程序需要保证在此期间窗口不能关闭并且连接不能断开,否则当前窗口所运行的任务就被杀死。安装:sudo apt-get updatesudo apt-get install screen创建一个session,指定名字:screen -S <name>列出当前所有的session:screen -ls回到一个session:screen -

2020-07-13 09:03:10 375

原创 SSH基础操作

这里写自定义目录标题SSH基础操作SSH免密登录客户端-快捷登录服务器端-sshd配置配置完成后重启服务器端sshd服务SSH基础操作ssh [username]@[IP] [-p22]其中ssh默认为22号端口,可以不填。scp [本地文件] [username]@[IP]:[服务端路径]本地文件---->服务器scp [username]@[IP]:[服务端路径] [本地路径]本地文件---->服务器SSH免密登录客户端运行:ssh-keygen之后的passp

2020-07-08 16:32:35 453

原创 [交叉熵损失函数的由来:KL散度] & [softmax+交叉熵损失函数求梯度 推导]

2020-06-16 16:14:48 895

原创 瞎折腾篇:联想笔记本外扩GTX1060——刷BIOS

刷BIOS白名单步骤(针对联想Z480)最近想让自己的联想Z480焕发青春,所以想外扩一块GTX1060来加速深度神经网络的训练过程。买好PCI-E接口后发现自己的联想笔记本有无线网卡白名单,貌似是只能连高通的无线网卡(万恶的LX啊,,,换个网卡你都不让)。所以去贴吧找的无线网卡更换技术贴,最后将GTX1060的硬件ID刷入了BISO,成功兼容。本文适用对象:1.给自己的笔记本换无线网卡但...

2020-04-19 10:37:46 14503 5

原创 KG-知识图谱入门-王昊奋课程详细笔记(附课件、课程链接与详细笔记)

毕设导师给的方向是知识图谱,所以就在B站看了王昊奋老师(小象学院)的课程。整个课程11集,每集将近两个半小时。观看地址:https://www.bilibili.com/video/av25435535?from=search&seid=5479672111819637431讲真一开始看这个视频的时候是很崩溃的,讲的还是偏理论,于是自己硬着头皮1.5倍速看完,记了整整十页的笔记,才...

2020-04-19 10:37:21 20051 103

原创 机器学习基础——彻底搞懂Precision\Recall\F1\P-R\ROC

一直以为自己理解这些概念,但是其实只是听说过而已。这些概念的释义来自于周志华教授的《机器学习》,都属于对机器学习算法的性能度量。一、错误率与精度还是使用书上的定义写的明确,test set中所有样本预测对和预测错所占的比例就是这两个指标,求和为1。但是其实这里表述并不是很好,这里的“精度”更好的表示是“准确度”(Accuracy),这两个指标只是在“对”与“错”层面进行分析,并未涉及出错原...

2020-03-15 20:40:13 2271

原创 神经网络运算量&参数量估计——FLOPS和FLOPs辨析

一、概念明晰首先要明确“运算量”和“参数量”两个概念:参数量:这个比较好理解,例如卷积层中的卷积核c_i*k*k*n_o,其参数量就是相乘的结果。而且,无论输入图像的尺寸怎么变(YOLO实现中的multi scale训练策略),只要模型结构确定,参数量就固定。还需要注意,参数都是FP32(4字节)存放,所以模型大小是参数量*4。运算量:使用FLOPs衡量,代表浮点运算次数,这个可以衡...

2020-02-29 15:41:32 4875 1

原创 Vulkan着色器的GLSL创建、编译、加载、创建流程

Vulkan没有指定官方的着色器编程语言,而是采用SPIR-V二进制中间格式进行表示。开发人员一般需要基于某种着色器编程语言开发着色器,之后再编译为SPIR-V格式。可以选用GLSL着色器编程语言进行开发。 大型游戏场景中,一般预先将着色器编译为SPIR-V格式保存在文件中,程序运行时直接加载SPIR-V数据,提高效率。 着色器的预编译和调用过程如面流程所示:...

2020-02-21 10:43:32 3848

原创 初识Vulkan渲染管线

目前参考《Vulkan规范》和《Vulkan开发实战详解》对渲染管线有了一个初步的认识。现结合中英文的渲染管线图进行笔记整理。中英文的渲染管线图分别如下所示:绘制命令送入设备队列执行后,Vulkan将原始的物体顶点坐标数据、顶点颜色数据最终转化为屏幕中画面。上面中文管线结构图中有两个应用程序入口,左侧为简单示例入口,右侧为使用GPU进行高性能通用计算时的计算管线。1.绘制:命...

2020-02-20 16:37:49 1253

原创 Pytorch训练流程

调试了很久YOLO的标准Pytorch实现,将Train代码进行了重新整理,抽出了标准的Pytorch训练框架。现在整理下来,以备后用。整理后的代码分为三个大部分,每个大部分分为三个小部分:1、初始化(Init):训练之前先分别创建Model、Dataset&Dataloader、Optimizer;2、轮次内部(Epoch):分别进行:Dataloader遍历训练、Save模型...

2020-02-01 18:22:14 1548

原创 Tensorboard在网络训练中的Logger使用方法

做为神经网络训练中最常用的可视化工具,Tensorboard经常在Pytorch和Tensorflow框架中做为可视化工具。但是其使用的确是有点繁琐,所以开设了一个这样的专题,用于总结见过的工程里面的数据Logger设定方法。希望自己能够通过积累慢慢掌握这个工具。一、YOLO-Pytorch版中的Logger在陈老师这里做DAC比赛,让我有机会把YOLO工程整个撸了一遍。此工程中的数据保存...

2020-02-01 17:45:27 3833

原创 argparse模块使用说明

深度学习的工程中,py文件中的main函数一开始总会有大量的参数传入,而通常使用的方法就是使用argparse通过命令行传入,这篇博文旨在记录argparse的常用方法。一、语句简介1.载入argparse模块:import argparse2.创建语法分析器:parser = argparse.ArgumentParser()3.添加选项:parser.add_...

2020-01-30 10:50:11 328

原创 Python中 *args 和 **kwargs 的含义和用法

*args和**kwargs都是用于函数定义时的功能性标识,其主要作用是参数传递。一、*args的用法定义函数时,将*args放在参数列表中,调用时直接放入多个数值,输出结果和类别:def function(*args): print(args, type(args))function(1,2,3,4,5)输出结果为:(1, 2, 3, 4, 5) <class...

2020-01-29 17:09:02 1378

原创 模型量化——基础知识 & LSQ论文阅读

感谢陈老师给的机会,有幸能够参加2020年的DAC比赛。我在其中负责目标检测器的调试和量化。自己第一次接触量化这个任务,很多东西都是一点一点学。一、量化基础对于一个全精度的值vvv,若量化步长为sss(也可理解为量化分辨率),正负量化层级(quantization levels )分别为QPQ_{P}QP​和QNQ_{N}QN​。则量化过程为:vˉ=Int(clip(v/s,−QN,QP))\...

2020-01-28 17:25:11 2511

原创 批量归一化:Batch Normalization层 原理+Pytorch实现

一、BN层概念明晰BN层存在的意义:让较深的神经网络的训练变得更加容易。BN层的工作内容:利用小批量数据样本的均值和标准差,不断调整神经网络中间输出,使整个神经网络在各层的中间输出的数值更加稳定。BN层注意事项:训练模式和预测模式计算结果不同。训练模式下:数据是成批的,可以进行批内求均值、求方差,进而得到归一化结果,最后乘以拉伸参数(scale—)和偏移参数(shift—)得...

2020-01-06 20:13:41 4122

原创 转载篇:优秀博文汇总

1.Pytorch中堆网络语法:《nn.moduleList 和Sequential由来、用法和实例 —— 写网络模型》https://blog.csdn.net/e01528/article/details/843971742.CNN中卷积操作十大改进方向(Depth-wise/ Dilated/ Deformable/ Shuffle/ SENet etc)https://blog...

2020-01-01 17:04:01 270

原创 约束非线性优化:几何意义&对偶形式

借助老师的PPT对约束非线性优化问题的几何意义和对偶形式进行阐述。一、几何意义(1)等式约束考虑只有等式约束h(x)的非线性优化问题,形式为:可视化结果如下图所示,红色曲线为等式约束,环线为目标函数等值面。达到最优解x*时,必定可以在此处借助Lagrange乘子完成梯度合成。(2)不等式约束约束条件换成不等式,此处只考虑一般形式的>=0约束:L...

2019-12-29 15:05:11 958 1

原创 二次规划_3_——直接消去法&广义消去法

  教材里面没有对直接消去法&广义消去法进行任何介绍,所有的内容都在老师的PPT里面,又起了个名字叫降维。公式太多了,老师又说的确要考,所以打算只把大致思路理清楚,真考到了列出处理思想就跑。一、直接消去法  考虑具有等式线性约束的二次规划:min   12xTHx+cTxs.t.   Ax=bmin \ \ \ \frac{1...

2019-12-29 14:03:25 1688 4

原创 二次规划_2_——起作用集方法

  这个算法很反人类,迭代过程相当复杂,最优化导师说:“明确地告诉你要考的。”  起作用集方法适用于消元法和Lagrange方法无法处理的不等式约束二次规化问题。其主要思想是:以已知点为可行点,只考虑将该点的起作用约束,最小化f(x)f(x)f(x),得到新的可行点后重复以上做法。一、起作用集法适用情形  适用于具有不等式约束的二次规划问题min   f(x)=...

2019-12-29 09:55:50 4418 2

原创 二次规划_1_——Lagrange方法

二次规化是非线性规化中的一种特殊情形,其目标函数是二次实函数,约束是线性的。考试中会考到四种方法,分别为:Lagrange方法、起作用集方法、直接消去法和广义消去法。前两种在教材上有详细描述,后面两种出现在PPT上面。本节先介绍最简单的方法:Lagrange方法。一、Lagrange方法适用情形Lagrange方法适用于具有等式线性约束的二次规化问题:min   ...

2019-12-28 20:43:32 3085 1

原创 约束优化方法_2_——Frank-Wolfe方法

Frank-Wolfe方法属于约束优化中可行方向法的一种。上一篇博文对同类型的Zoutendijk可行性方法进行了介绍,这一部分着重关注Frank-Wolfe方法。Frank-Wolfe方法的基本思想是:每次迭代中使用一阶泰勒展开式将目标函数线性化,通过解线性规划得到可行方向,进而沿此方向在可行域内作一维搜索。一、Frank-Wolfe所针对的优化问题首先要明确这个算法的提出是针对哪一种问题。...

2019-12-28 19:40:21 5962 3

原创 约束优化方法_1_——Zoutendijk可行方向法

Zoutendijk可行性方法属于约束极值问题可行方向法中的一种。与之前无约束极值问题中的最速下降法、牛顿法相像,可行方向法的策略是:从可行点出发,沿着下降的可行方向进行搜索,求出使目标函数值下降的可行点。 教材中共介绍了四种方法:Zoutendijk可行性方法、Rosen梯度投影方法、既约梯度法、Frank-Wolfe方法。博文对Zoutendijk可行性方法和Frank-Wolfe方法进行了介...

2019-12-27 22:44:29 14729 7

《模式识别与机器学习(全英文版)2》(超清彩色PDF)

《Pattern Recognition and Machine Learning》原著,全英文,超清彩色PDF,被称为机器学习的圣经。可以用于去复印。

2018-08-10

《模式识别与机器学习(全英文版)1》(超清彩色PDF)

《Pattern Recognition and Machine Learning》原著,全英文,超清彩色PDF,被称为机器学习的圣经。可以用于去复印。

2018-08-10

高光谱成像技术在生物医学中的应用进展

高光谱成像技术在生物医学中的应用进展;高光谱成像技术在生物医学中的应用进展

2018-07-17

空空如也

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

TA关注的人

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