- 博客(59)
- 资源 (18)
- 收藏
- 关注

原创 Matlab画柱状图 (在图例legend和轴标签xlabel里加入latex公式)
关于折线图的画法,请参考:https://blog.youkuaiyun.com/u014261408/article/details/90084025如何画柱状图?直接上代码:y = [197.9 163.8;220.45 166.95;319 265.7]; % y轴数据(柱状图高度),两个分号之间为一组数据bar(y); % 画柱状图Cell = {'10', '20', '40'};s...
2019-10-11 23:10:37
9691
1

原创 MATLAB中画折线图:plot函数的简单用法
使用plot绘制二维图像MATLAB中plot函数常常被用于绘制各种二维图像,其用法也是多种多样,本文仅介绍plot函数的基本用法——使用plot函数绘制二维点图和线图。plot函数的一般调用形式如下:plot(X, Y, LineSpec)其中X由所有输入点坐标的x值组成,Y是由与X中包含的x对应的y所组成的向量。LineSpec是用户指定的绘图样式,主要选项如下:Specif...
2019-05-10 21:13:47
41471
4

原创 LaTeX常用语法
1. 设置字体居中、颜色及粗体,斜体\begin{center}{ \color{blue} \textbf{balabala\hspace{1cm} balabala} \emph{balabala}}\end{center}设置字体大小:2. 空格的表示\, 表示空格\hspace{ 长度 } , 例如 \hspace{1cm}在数学环境中($........$ ...
2019-05-08 23:37:56
8913
原创 Pytorch查看,输出,打印模型各个网络层的名字和参数
很简单,以下代码即可:for name, param in mymodel.named_parameters(): print(name) print(param.data) print("requires_grad:", param.requires_grad) print("-----------------------------------")输出示例:clientA.0.weighttensor([[ 1.2868, 1.2431, 2.0032,
2021-10-27 17:02:40
10399
原创 有用的数学公式推导
Cn1+Cn2+⋯+Cnn=2nC_n^1+C_n^2+\cdots+C_n^n=2^nCn1+Cn2+⋯+Cnn=2n(x+y)n=Cn0xny0+Cn1xn−1y1+⋯+Cnnx0yn(x+y)^n=C_n^0x^ny^0+C_n^1x^{n-1}y^1+\cdots+C_n^nx^0y^n(x+y)n=Cn0xny0+Cn1xn−1y1+⋯+Cnnx0yn,取x=y=1x=y=1x=y=1.
2021-09-23 17:16:34
713
原创 Softmax求导
softmax的方程为:p=softmax(z) where pi=ezi∑j=1kezjfor i=1,⋯ ,k.\boldsymbol{p}=\text{softmax}(\boldsymbol{z})\, \text{where}\, p_i=\frac{e^{z_i}}{\sum^k_{j=1}e^{z_j}} \text{for}\, i=1,\cdots,k .p=softmax(z)wherepi=∑j=1kezjezifori=1,⋯,k.上式中p\boldsymbol{
2021-04-22 17:49:35
767
原创 逻辑回归(logistic regression)损失函数(loss function)推导
逻辑回归(logistic regression)逻辑回归(LR)可以看做线性回归(linear regression)的拓展,二者的区别是:逻辑回归的结果为0或1,即分类;线性回归的结果是连续值,即回归1。Binary LR本文重点在二分类逻辑回归,其一般形式为:y^=σ(z)=σ(xTw) .\hat{y}=\sigma(z)=\sigma(\boldsymbol{x^T}\boldsymbol{w})\,.y^=σ(z)=σ(xTw).注意,这里σ(z)\sigma(z)σ(z)是Si
2021-04-09 13:03:35
11215
2
原创 Linux/Ubuntu 监视,实时查看GPU,CPU和内存使用情况
注意本文方案仅适用于NVIDIA显卡,对于Intel显卡和AMD显卡本文暂不做讨论。毕竟NVIDIA的显卡才是训练神经网络的大众之选。方案1使用nvidia-smi命令,输出为:如果想要不间断持续刷新GPU的状态,使用:nvidia-smi -l secondsnvidia-smi --loop=seconds上述命令任选其一,注意把seconds换成你想刷新的时间间隔(秒)。命令运行的效果就是持续输出上图中的内容(注意不是在原有输出上进行刷新,而是持续输出新的信息)。按Ctrl+C停止刷
2020-11-20 16:59:24
9136
原创 PyTorch如何保存模型和读取模型
方案1 (推荐方案)保存模型torch.save(the_model.state_dict(), PATH)加载模型the_model = TheModelClass(*args, **kwargs) # 定义模型the_model.load_state_dict(torch.load(PATH)) # 读取参数注:本方案只保留和读取模型参数。方案2保存模型torch.save(the_model, PATH)加载模型the_model = torch.load(P
2020-08-26 17:19:27
3666
1
原创 如何可视化PyTorch的网络模型计算图和后传路径图(可视化PyTorch网络结构)
PyTorchViz包(https://github.com/szagoruyko/pytorchviz)可以用来方便地绘制PyTorch正向网络计算图和后传计算路径,本文讲解如何使用PyTorchViz包,主要参考网站包括:https://towardsdatascience.com/understanding-pytorch-with-an-example-a-step-by-step-tutorial-81fc5f8c4e8ehttps://stackoverflow.com/questions
2020-07-15 19:37:17
9364
6
原创 希腊字母发音对照表
注:本文转自[维基百科]。(https://zh.wikipedia.org/wiki/%E5%B8%8C%E8%87%98%E5%AD%97%E6%AF%8D%E7%9A%84%E8%8B%B1%E8%AA%9E%E7%99%BC%E9%9F%B3)
2020-07-02 22:38:06
2710
原创 Sigmoid函数(logsig)求导
通常情况下,我们所说的Sigmoid函数定义如下:σ(x)=11+e−x=exex+1.\sigma(x)=\frac{1}{1+e^{-x}}=\frac{e^x}{e^x+1}.σ(x)=1+e−x1=ex+1ex.它的形状如下:导数如下:dσ(x)dx=σ(x)⋅(1−σ(x)).\frac{d\sigma(x)}{dx}=\sigma(x)\cdot (1-\sigma(x)).dxdσ(x)=σ(x)⋅(1−σ(x)).本篇博文讲σ(x)\sigma(x)σ(x)导数的推
2020-05-15 22:33:17
11558
原创 从零开始手工实现卷积神经网络CNN以及img2col和col2img的实现方法
本文主要实现卷积神经网络(Convolutional Neural Network, CNN)中卷积操作的forward和backward函数。CNN主要包括卷积(Convolution),池化(pooling),全连接(Fully Connected)操作。相信点进来的同学对这些操作的细节已经很熟悉了,不熟悉的同学可以参考这一篇博文(本人看过讲CNN最简单易懂、最好的博文,没有之一):An In...
2020-03-31 18:08:35
8001
4
原创 机器学习绘图库Python Matplotlib.pyplot全网最全面新手教程
最近看到一个讲Matplotlib的英文教程写的很高明,兼收并蓄,简单易懂,特意翻译过来,与君共享。原网址在:http://cs231n.github.io/python-numpy-tutorial/#matplotlib 。Matplotlib(https://matplotlib.org/)是一个用来绘图的python库,它的matplotlib.pyplot模块提供了一个与MATLAB...
2020-02-19 21:14:40
2600
1
原创 全网最简单易懂且最综合的Python Numpy新手教程
Numpy是Python中涉及科学计算的核心代码库,使用频次颇高,尤其是在机器学习领域。但是对于初学者(我)而言,找不到一个简单且综合的教程一直使我痛心疾首。最近看到一个英文网页写的颇有大家风范,特意翻译下来与大家共赏,也做自己以后的参考之用,原网页在:http://cs231n.github.io/python-numpy-tutorial/#numpy 。如果你对MATLAB很熟悉,这个教程或...
2020-02-18 14:20:47
432
原创 Ubuntu下Maven运行Java报错:java.lang.NoClassDefFoundError
问题项目用到Cassandra,而它的Java驱动datastax发布在Maven里。由于之前没接触过Maven,就用官方教程Maven in 5 Minutes(https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html)一步一步走下来。从创建工程到添加datastax依赖到编译都没问题,问题就出在运行那...
2019-10-18 23:35:31
681
1
原创 对数(log)的换算公式
对数公式的换算,对于算法复杂度的推导非常重要。但是我总忘,这次特地总结一下常用的对数公式,以备后用。名称公式和差logαMN=logαM+logαN\log_\alpha MN=\log_\alpha M+log_\alpha NlogαMN=logαM+logαN换底公式logαx=logβxlogβα\log_\alpha x=\frac{\lo...
2019-10-15 12:29:59
89735
1
原创 浅显易懂的并查集简介 - 合并不相交的集合
前言最近想了解一下并查集的概念,网上搜了很多资料都不满意,无意中看到一篇英文博客,写的非常浅显易懂,于是我花时间把它翻译成了中文,希望对想了解并查集的朋友有所帮助。想查看英文原版的朋友,可以直接移步:https://www.hackerearth.com/zh/practice/notes/disjoint-set-union-union-find/ 。简介算法的效率有时会依赖于所使用的数...
2019-09-26 13:10:19
879
2
原创 java中的Observable与Observer,观察者模式
观察者模式是一种设计模式,java对其进行封装来帮助开发者快速实现需要观察者模式的应用。具体来讲,在java中实现观察者模式需要java.util.Observer与java.util.Observable,要点如下:Observable是一个类,Observer是一个接口;Observable是被观察的对象,Observer是观察者,负责观察Observable;Observable中需...
2019-05-16 22:01:45
1300
2
原创 OpenGL中的坐标系
最近在学习OpenGL,但是书中的各种坐标系搞得我颇为痛苦,既不知道各种坐标系是做什么用的,也不知道各自是如何转换的,往往是看书看到吐。一番纠结之后,还是得自己去找资料解决,下面就把我个人学到的各种坐标系的知识分享出来,省的后来人跟我一样痛苦了。首先声明一点,对于三维物体,openGL使用右手坐标,从左到右,x递增,从下到上,y递增,从远到近,z递增。但是对于二维问题,在OpenGL中x轴与y...
2019-05-12 13:59:08
1028
原创 C/C++里格式化输入输出printf操作
C语言1. 格式化输出函数printf:printf("格式化控制字符串",arg1,arg2,…,argN);格式化控制字符串包括两部分:格式字符串与非格式字符串(普通字符)。对于格式字符串:以 %号开头,用于定义每个数据的输出格式:符号描述d以十进制形式输出 带 符号整数(正数不输出符号)ld输出长整型数o以八进制形式输出 无 符号整数(不输出...
2019-05-12 13:49:09
4318
1
原创 MFC中为控件添加变量时,control和value的区别
control型变量是这个控件所属类的一个实例(对象),可以通过这个变量来对该控件进行一些设置。而value只是用来传递数据,不能对控件进行其它的操作。control型变量可以获得控件的实例,通过这个变量,你可以操纵控件;value型变量仅仅该控件关联的public型变量。如果你添加了一个m_CtrlEdit的control型变量你可以调用控件支持的所有函数,如:m_CtrlEdit...
2019-05-12 13:35:43
3023
原创 MFC中GetCurrentDirectory()和GetModuleFileName()的区别
在开发过程中经常需要获得程序当前的运行目录,这时就可以使用GetCurrentDirectory()和GetModuleFileName()函数。GetCurrentDirectory只是返回当前进程的当前目录,而并不是进程的镜像文件(.exe)所在的目录,GetCurrentDirectory()适用于XP等系统,在WinCE上不能使用;GetModuleFileName()适用于WinCE2...
2019-05-12 13:30:51
803
1
原创 Windows下手动安装MySQL(服务器)
前言我在第一次使用MySQL的时候,花了好大功夫。从官网下载了适用于windows的整个安装包进行安装,可惜装了数次老是出错,最后就算装好了,服务器进程也开不了,多亏我契而不舍的精神~折腾了一天勉勉强强算是能用了。当时安装的是Community版本的,名字貌似是mysql-installer-community-5.6.XX.msi,Mysql貌似有企业版(Enterprise)和普通版(C...
2019-05-12 13:22:04
10162
1
原创 MFC编程中UpdateData(true)和UpdateData(false)的区别
在用ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对话框中到底输入了什么,就应该在访问变量前调用UpdateData(TRUE)。UpdateData(true); 用窗体上控件中的内容来更新和控件相关连的变量的值(只能更新value类型的变量)例如:你在你的窗...
2019-05-12 12:54:04
1583
原创 STL中的queue,stack和priority_queue的基本操作
STL = Standard Template Library,标准模板库,惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。这可能是一个历史上最令人兴奋的工具的最无聊的术语。STL实际上是一个非常有用的工具,它使你避免了许多重复的编码工作,大大提高了编码效率。比如,当你需要使用一个队列时,...
2019-05-12 12:53:55
397
原创 Windows目录下SysWow64文件夹与System32文件夹
首先说一句,被坑不浅……1. System32Windows 操作系统的系统文件夹。是操作系统的神经中枢.文件夹中包含了大量的用于Windows操作系统的文件.这里主要用于存储 DLL 文件,控制面板小程序(.CPL), 设备驱动 (.drv), 帮助文件 (.hlp 和 .cnt), MS-DOS 工具 (.com), 语言支持文件 (.nls), 屏幕保护 (.scr), 安装信息文件 (...
2019-05-11 15:27:19
12770
1
原创 MFC中模态对话框和非模态对话框的区别
MFC中对话框有两种形式,一个是模态对话框(model dialog box),一个是非模态对话框(modeless dialog box)。二者的区别在于当对话框打开时,是否允许用户进行其他对象的操作。一、模态对话框(model dialog box)在程序运行的过程中,若出现了模态对话框,那么主窗口将无法发送消息,直到模态对话框退出才可以发送。点击模态对话框中的OK按钮,模态对话框会被销毁...
2019-05-11 15:22:58
4406
1
原创 windows位图结构
位图文件应该具有.bmp扩展名。位图文件格式:BITMAPFILEHEADER(位图文件头)结构,后接BITMAPINFOHEADER、BITMAPV4HEADER或 BITMAPV5HEADER(位图信息头)结构,后接RGBQUAD(颜色表)结构数组,后接Color-index(颜色索引)数组——即实际的位图数据。位图格式如下表所示:BITMAPFILEHEADERBIT...
2019-05-11 15:14:23
902
2
原创 在MFC的图片控件中完整显示位图
注:res\\123.bmp为位图的相对路径(也可写成绝对路径,不过硬编码移植性不好,不推荐);IDC_STATIC_PIC是对话框程序中图片控件(Picture Control)的ID;如果对位图结构不理解,请参考我的另一篇博文——windows位图结构。C++代码如下:BITMAPFILEHEADER bmpFileHeader;BITMAPINFOHEADER bmpInfo...
2019-05-11 15:05:43
1395
1
原创 MySQL Workbench连接数据库时出现Malformed packed
为什么使用MySQL Workbench连接公司数据库老是出现Malformed packet的提示?百思不得其解。试过WorkBench的32位和64位版本,就是不行。网上查找半天,无效。但是Navicat for MySQL等其他MySQL客户端都能连的上数据库,偏偏这个WorkBench……郁闷的不行,硬是折腾了一天……这种错误堵在心里是让我很不爽的!MySQL Workbench最坑的地方...
2019-05-11 15:00:46
3299
1
原创 C/C++,往MySQL数据库里插入中文显示乱码
1. 先上图一张,看看什么是乱码2. 理解一下VC++中的字符串编码在以前VC++6.0中默认的字符集是多字节字符集(MBCS:Multi-Byte Character Set),而VS2005及以后默认的字符集是Unicode,这样导致以前在VC6.0中非常简单实用的各类字符操作和函数在VS2010环境下运行时会报各种各样的错误。注:不理解“字符集”请移步我的另一篇博文——字符集。字符...
2019-05-11 14:55:45
2466
2
原创 Unicode与UTF-8,UTF16,ASCII等字符集的区别
在最初的时候,Internet上只有一种字符集——ANSI的ASCII字符集,它使用7 bits来表示一个字符,总共表示128个字符,其中包括了英文字母、数字、标点符号等常用字符。后来,由于各国语言的加入,ASCII已经不能满足信息交流的需要,因此,为了能够表示其它国家的文字,各国在ASCII的基础上制定了自己的字符集,这些从ANSI标准派生的字符集被习惯的统称为ANSI字符集,它们正式的名称应...
2019-05-11 14:46:18
379
原创 Windows命令行窗口内容显示不完全的问题
说明:DOS下的cmd命令界面本身是没有向上翻页的功能。今天在测试一个软件的时候,用console控制台启动,查看输出内容时,由于内容行数过大,虽然已经翻页了,但仍然看不到最前面的内容。解决方法单击命令行窗口上边框->属性->布局,然后适当增大屏幕缓冲区高度大小即可。或者,直接把数据输出到文件里,这样就不用担心缓冲区问题了。...
2019-05-11 14:36:09
11915
原创 根据URL下载文件,C++实现,MFC框架
需要头文件afxinet.h//返回值解析:// 0:成功下载保存//- 1:URL不正确//- 2:建立网络连接失败//- 3:向服务器发起GET请求失败//- 4:服务器不接受请求//- 5:参数一不能为空//- 6:参数二不能为空//- 7:保存文件时创建或写入文件失败INT GetInternetFile(const CString fileUrl,const CSt...
2019-05-11 14:32:57
762
1
原创 匈牙利命名法
匈牙利命名法是电脑程序设计中的一种变量命名规则,此命名法又可细分为:系统匈牙利命名法和匈牙利应用命名法。匈牙利命名法具备语言独立的特性,并且首次在BCPL语言中被大量使用。由于BCPL只有机器字这一种数据类型,因此这种语言本身无法帮助程序员来记住变量的类型。匈牙利命名法通过明确每个变量的数据类型来解决这个问题。在匈牙利命名法中,一个变量名由一个或多个小写字母开始,这些字母有助于记忆变数的类型和...
2019-05-11 14:28:33
1864
原创 MFC对话框程序中列表控件(CListCtrl)的响应消息
缩写注解HDNHeader NotifyLVNListView control NotifyNMNotify MessageTVNTreeView control Notify响应消息解析HDN_BEGINTRACK开始拖动控件顶部的分割线HDN_BEGINDRAG开始拖动控件顶部的分栏(item)HDN_BE...
2019-05-10 22:50:01
3114
1
原创 【已解决】Python: 'gbk' codec can't encode character u'\xxx'
问题用Python抓取网页,保存为myWeb然后将网页解码为Unicode:myUnWeb=myWeb.decode(‘utf-8’)然后用正则表达式处理: 处理过程略,得到myUnWebItems然后print:print myUnWebItems;出现如下错误:exception raised: ‘gbk’ codec can’t encode character u’...
2019-05-10 22:44:50
11071
3
原创 在函数中定义大数组出现栈溢出的问题
首先说一下栈(也叫堆栈)和堆的区别:数据结构上栈:在Windows下,栈是向低地址扩展的数据结构,是一块连续的内存的区域。这句话的意思是栈顶的地址和栈的最大容量是系统预先规定好的,在 WINDOWS下,栈的大小是1M(也有的说是2M,总之是一个编译时就确定的常数),如果申请的空间超过栈的剩余空间时,将提示overflow。因此,能从栈获得的空间较小。堆:堆是向高地址扩展的数据结构,是不连续...
2019-05-10 22:37:32
2854
2
原创 【MFC】List Control中LVIS_FOCUSED和LVIS_SELECTED的区别
在MFC中有个列表控件,列表中的item(条目)状态对程序员来说是个很重要的因素。其中LVIS_FOCUSED和LVIS_SELECTED的状态区别如下:同一个Item可以同时具有LVIS_FOCUSED状态和LVIS_SELECTED状态(只有当鼠标单击选中某个item且悬浮在item上时才会出现这种情况)。数个item可以同时被selected,但是每次只能有一个item被focuse...
2019-05-10 22:26:51
2046
图形推理规律(应届生面试+公务员考试)
2020-06-21
The Art of Computer Programming(计算机程序设计艺术,第三卷,排序和搜索)
2017-09-13
ICO图标制作工具
2016-06-06
WinHex14.1SR-3H
2016-01-25
查壳工具PEiD 0.94优化版
2016-01-25
understand用户使用指南v2.5
2015-12-08
Understand-3.1.753-Windows-64位破解版注册机
2015-12-08
Understand-4.0.797-Windows-32位+破解版注册机
2015-12-08
一个使用VS2013开发的对话框程序简易计算器
2015-10-21
一个自动更新程序(拿走不谢)
2015-10-16
ICP算法源代码(拿走不谢)
2014-03-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人