自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于转置卷积的一点理解

转置卷积也称为反卷积。对普通卷积,假设特征图是x\mathbf{x}x,在给定kernel_sizekernel\_sizekernel_size,paddingpaddingpadding,stridestridestride后卷积得到特征图y\mathbf{y}y,那么转置卷积就是希望从y\mathbf{y}y得到x\mathbf{x}x,也就是找到一个x\mathbf{x}x使它在给定的卷积参数设置下卷积后得到y\mathbf{y}y,当然这里只要求形状上的相等。转置卷积具体是这样实现的,首先将y\

2021-11-03 22:25:11 239

原创 GAN与WGAN

文章目录GAN和WGANGAN判别网络生成网络训练GAN存在的问题训练稳定性模型坍塌改进方法:WGANWasserstein\text{Wasserstein}Wasserstein距离评价网络生成网络开源代码GAN和WGANGAN生成对抗网络(GAN, Generative Adversarial Networks)是2014年由Goodfellow提出的模型。在GAN中,有两个网络进行对抗训练,一个是判别网络,目标是判断一个样本是真实数据还是由生成网络生成的数据,一个是生成网络,目标是生成判别网络

2021-11-03 11:02:20 1078

原创 AdaBoost二分类

AdaBoost二分类AdaBoost算法是一个加性模型F(x)=∑m=1Mαmfm(x)(1)F(x)=\sum_{m=1}^{M}\alpha_mf_m(x)\tag{1}F(x)=m=1∑M​αm​fm​(x)(1)其中fm(x)f_m(x)fm​(x)称为弱分类器或基分类器,αm\alpha_mαm​为弱分类器的集成权重,F(x)F(x)F(x)称为强分类器。AdaBoost采用迭代式的训练方法。假设已经训练了mmm个弱分类器,在训练第m+1m+1m+1个弱分类器时,增加已有弱分类器分错

2021-10-24 17:50:01 2539

原创 时空图神经网络阅读笔记

文章目录STGCN摘要方法DCRNN摘要方法Graph WaveNet摘要方法ASTGCNSTGCN摘要传统方法无法实现精确的中长期预测,忽视时空相关性。我们提出了一种新颖的时空图卷积网络,采用了全卷积结构。方法图卷积:GCN时间卷积:卷积核在时间维度上滑动,对于长度为MMM的序列和宽度为KtK_tKt​的卷积核,输出长度为M−Kt+1M-K_t+1M−Kt​+1,最后使用了门控机制GLUT∗τY=P⊙σ(Q)T *_{\tau}Y=P\odot\sigma(Q)T∗τ​Y=P⊙σ(Q)

2021-08-24 22:51:48 1907

原创 深度学习优化算法

深度学习优化算法梯度下降想必没有人不知道,深度学习的优化算法都是基于梯度下降,这里对一些算法做一个总结。Momentum又称动量法,将目标函数梯度的指数加权平均作为更新的方向。vt=γvt−1+ηtgtxt=xt−1−vt\boldsymbol{v}_t = \gamma \boldsymbol{v}_{t-1}+\eta_t\boldsymbol{g}_t\\\boldsymbol{x}_t = \boldsymbol{x}_{t-1}-\boldsymbol{v}_tvt​=γvt−1​+

2021-06-09 17:24:46 113

原创 深度学习笔记

假设一个函数的输入为$k$为向量,那么它的Hessian矩阵有k特特征值,该函数在梯度为0的位置上可能是局部最小值、局部最大值或者鞍点。

2021-06-01 15:39:46 79

原创 为什么对数几率回归可以零初始化

神经网络之所以不能零初始化,是因为这样会使同一层的多个神经元退化为一个结点,参考为什么神经网络不能全零初始化。而对数几率回归本身相当于只有输出层一个结点的神经网络,自然不用考虑神经元个数的退化问题。...

2021-05-14 00:09:56 76

原创 为什么神经网络不能全零初始化

为什么神经网络不能全零初始化相信所有学习过神经网络的人都知道神经网络的权重和偏置不能0初始化,但并不是所有人都知道为什么,在这里我们通过举例子+数学推导的方式解释原因。假设要学习的神经网络结构如下所示:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D44zSsfI-1618852646746)(C:\Users\liule\AppData\Roaming\Typora\typora-user-images\image-20210419235405721.png)]初始

2021-04-20 01:25:28 998

原创 Ubuntu16.04下安装Win10(UEFI启动)

Ubuntu16.04下安装Win10前两天更新win10系统莫名奇妙系统崩了,手头也没有其他电脑,但是电脑上装过双系统Ubuntu16.04,于是想通过Ubuntu来重装Windows,看了这篇博客Make a bootable Windows USB from Linux装成功了,我把主要步骤写一下。我的电脑是UEFI启动的,所以这里只涉及UEFI启动时的重装方法,如果是MBR启动的看Ubuntu下制作windows U盘启动盘(本文中的一些图片是从这个博客里面拷贝的)。此外,我下载的win10镜

2021-01-10 02:12:55 1656 1

原创 进程同步:读者写者问题

信号量类的定义与实现#ifndef __SEMAPHORE_H__#define __SEMAPHORE_H__#include <mutex>#include <condition_variable>#include <chrono>class Semaphore{public: explicit Semaphore(int _...

2019-11-04 23:56:46 230

原创 softmax函数的反向传播求导

吴恩达老师在深度学习视频中讲解softmax\mathrm{softmax}softmax函数时,直接给出了损失函数对z[l]z^{[l]}z[l]的导数,这里推导一下计算过程。假设输出层有nnn个神经元,使用softmax\mathrm{softmax}softmax函数后神经网络的输出为y^j=exp⁡(zj[l])∑i=1nexp⁡(zi[l])j=1,2,...,n\hat{y}_j...

2019-10-28 23:58:34 827

原创 反向传播算法求导公式的推导

这里是对吴恩达深度学习视频中后向传播求导公式的推导,需要对视频有一定了解。符号说明:n[l]n^{[l]}n[l]:第lll层神经元的数目;W[l]W^{[l]}W[l]:第lll层的权值;b[l]b^{[l]}b[l]:第lll层的阈值;z[l]z^{[l]}z[l]:第lll层的输入;a[l]a^{[l]}a[l]:第lll层的输出;g[l]g^{[l]}g[l]:第lll层的激...

2019-10-18 14:49:26 1423 1

原创 隐马尔科夫模型

文章目录隐马尔科夫模型1 隐马尔科夫模型概述1.1 隐马尔科夫模型的定义1.2 观测序列的生成过程1.3 隐马尔科夫模型的三个基本问题2 概率计算2.1 直接计算法2.2 前向算法2.3 后向算法2.4 一些概率与期望值的计算3 参数估计3.1 监督学习3.2 非监督学习4 状态预测4.1 近似算法4.2 维特比算法隐马尔科夫模型1 隐马尔科夫模型概述1.1 隐马尔科夫模型的定义...

2019-10-17 18:49:06 171

原创 编译原理实验(四):无符号数的有穷自动机的实现

需要注意的点:指数e前面必须有数字,后面只能为有符号或无符号整数;浮点数小数点不能超过一个,小数点后面必须为e或数字。#include <stdio.h>#include <ctype.h>#include <string.h>int main(void){ char number[50]; scanf("%s", numbe...

2019-10-15 11:01:39 3335

原创 编译原理实验(三):实现词法分析

只考虑了7种类型,分别是关键字、标识符、常量、单目运算符、双目运算符、界符和错误。总之写的很挫。#include <stdio.h>#include <stdlib.h>#include <string.h>#include <math.h>#include <ctype.h>#define KEYWORD_NUM 32#...

2019-10-14 21:16:09 439

原创 机器学习中的熵

1 信息熵熵是热力学中的一个参量,反映了体系的混乱程度。1948年,克劳德·爱尔伍德·香农将热力学中的熵引入信息论,所以也被称为香农熵 ,信息熵 。为引出信息熵,首先考虑信息量。当我们观测一个随机变量的具体值的时候会从中获得一定信息,而获得了多少信息则有信息量来度量。一般来说,一件越小概率的事情发生了,产生的信息量就越大;而越大概率的事情发生了产生的信息量越小,比如太阳从西边落下,这件事情肯定...

2019-10-10 19:53:14 203

原创 操作系统实验(二):进程的创建

与操作系统实验(一):进程控制块的作用相比考虑了优先级,创建的越晚优先级越高。源码PCB的定义#ifndef __PCB_H__#define __PCB_H__#define BLOCK -1#define READY 0#define RUNNING 1#define TIME_SLICE 3#define SYNTHESIZE(varType, varName...

2019-10-09 21:17:32 552

原创 超定方程组和欠定方程组

超定方程组:最小二乘法最小二乘法是一种求线性方程组近似解的方法,基本思想是最小化残差平方和∑i=1n(yi^−yi)2\sum_{i=1}^{n}(\hat{\mathbf{y}_i}-\mathbf{y}_i)^2∑i=1n​(yi​^​−yi​)2,接下来从线性代数的角度来对最小二乘法进行完整的推导。对于线性方程组Ax=y\mathbf{Ax}=\mathbf{y}Ax=y,其有解的充要条...

2019-10-02 16:19:54 8562 5

原创 EM算法详解

EM算法EM算法是含有隐变量的概率模型参数的极大似然估计法。用YYY表示观测变量的数据,ZZZ表示隐变量的数据,θ\thetaθ表示要估计的参数,YYY和ZZZ连在一起称为完全数据,观测数据YYY称为不完全数据,假设YYY的概率分布是P(Y∣θ)P(Y\mid\theta)P(Y∣θ),那么不完全数据YYY的对数似然函数是log⁡P(Y∣θ)\log P(Y\mid\theta)logP(Y∣...

2019-10-01 20:48:17 271

原创 编译原理实验(一):读取源文件并输出

#include <stdio.h>#include <stdlib.h>int readBuffer(FILE *fp, char *buf, int length){ int i = 0; char ch; while (i < length) { ch = fgetc(fp); if (ch...

2019-09-30 12:45:52 1089

原创 操作系统实验(一):进程控制块的作用

实验要求:定义多个进程实体(2个以上);初始化进程实体;标识进程状态;依次输出每个执行进程的开始时间和周转时间;采用随机函数模拟进程的到达时间;采用随机函数产生每个进程实体的执行时间。源码PCB的定义#ifndef __PCB_H__#define __PCB_H__#define BLOCK -1#define READY 0#...

2019-09-30 12:34:49 1898

原创 编译原理实验(二):去掉c语言源程序中的注释

直接上代码#include <stdio.h>#include <stdlib.h>//如果前面有偶数个\,说明字符串结束int checkStrEnd(char *buf, int i){ int n = 0; while (i >= 0) { if (buf[i--] != '\\') { ...

2019-09-23 21:26:03 3252

原创 修改jupyter notebook默认打开路径

如果使用的是Anaconda自带的jupyter notebook,最简单的方式是在开始菜单里找到Anaconda文件夹,右击jupyter notebook选择打开文件位置,查看它的属性,如下图所示在上图中划横线的部分就是默认打开路径,我这里是"D:\code\jupyter notebook",将它修改为你想要的路径即可。细心的人可能已经发现默打开路径实际上是jupyter-noteboo...

2019-09-11 19:26:21 548 1

原创 牛顿迭代法及其应用

牛顿迭代法及其应用考虑无约束优化问题min⁡xf(x)\min\limits_{\boldsymbol{x}}f(\boldsymbol{x})xmin​f(x)假设f(x)f(\boldsymbol{x})f(x)二阶可微,在第kkk次的迭代值为xk\boldsymbol{x}^kxk,可将f(x)f(\boldsymbol{x})f(x)在xk\boldsymbol{x}^kxk处泰...

2019-09-08 00:56:05 1024

原创 奇异值分解

奇异值分解奇异值分解是一种应用广泛的矩阵分解方式,对矩阵A∈Rm×n\mathbf{A} \in R^{m \times n}A∈Rm×n,其奇异值分解的形式为A=UΣVT\mathbf{A}=\mathbf{U \Sigma V}^TA=UΣVT其中U\mathbf{U}U是m×mm \times mm×m正交矩阵,V\mathbf{V}V是n×nn \times nn×n正交矩阵,Σ...

2019-09-03 20:23:59 212

原创 决策树总结

ID3决策树使用信息增益确定最优划分属性。Gain(D,a)=Ent(D)−∑v=1V∣Dv∣∣D∣Ent(Dv)Gain(D,a)=Ent(D)-\sum_{v=1}^{V}\frac{\mid D^v\mid}{\mid D\mid}Ent(D^v)Gain(D,a)=Ent(D)−v=1∑V​∣D∣∣Dv∣​Ent(Dv)其中Gain(D,a)Gain(D, a)Gain(D,a)...

2019-08-26 00:13:37 93

原创 拉格朗日乘子法

拉格朗日乘子法拉格朗日乘子法是常用的一阶优化方法,本文首先介绍基本的拉格朗日乘子法,接着介绍具有不等式约束情形的拉格朗日对偶问题,最后使用拉格朗日对偶方法解决硬间隔支持向量机问题。拉格朗日函数对函数f(x)f(\boldsymbol{x})f(x),Rd↦RR^d\mapsto RRd↦R,考虑优化问题min⁡xf(x)s.t.h(x)=0\begin{aligned}&amp...

2019-08-23 01:14:39 293

原创 CMA-ES算法流程

CMA-ES算法流程根据多元高斯分布生成下一代,使用其中较好的后代更新高斯分布的参数,最大熵原理。1 产生新解(1)xk(g+1)∼m(g)+σ(g)N(0,C(g))for k=1,...,λx^{(g+1)}_k \sim m^{(g)}+\sigma^{(g)} N(0,C^{(g)}) \quad for\ k = 1,...,\lambda \tag{1}xk(g+1...

2019-08-20 20:50:35 10428 9

原创 QR分解

QR分解QR分解基于施密特正交化,对向量a1,a2,...,an\mathbf{a}_1,\mathbf{a}_2,...,\mathbf{a}_na1​,a2​,...,an​,其施密特正交化为bi=ai−∑k=1i−1qkqkTai\mathbf{b}_i = \mathbf{a}_i-\sum_{k=1}^{i-1}\mathbf{q}_k\mathbf{q}_k^T\mathbf{a...

2019-08-13 23:57:30 743

原创 线性方程组的解个数与秩的关系

线性方程组的解个数与秩的关系对线性方程组Ax=b\mathbf{Ax}=\mathbf{b}Ax=b,其解的数量可以根据A\mathbf{A}A的秩来讨论。A∈Rm×n\mathbf{A} \in \mathbb{R}^{m \times n}A∈Rm×n。r=m&lt;nr=m&lt;nr=m<n,即矩阵A\mathbf{A}A行满秩,此时A\mathbf{A}A有...

2019-08-02 00:15:36 37115 10

原创 对数几率回归详细推导及python实现

对数几率回归菜鸟一枚,有错误欢迎指证,但不要喷。在线性回归中,要求解的模型是(1)y=wTx+by=\pmb{w^Tx}+b \tag{1}y=wTxwTxwTx+b(1)实际上线性回归模型在稍加修改后也可以求解其他问题,例如考虑模型(2)y=ewTx+by=e^{\pmb{w^Tx}+b} \tag{2}y=ewTxwTxwTx+b(2)两边同时取对数后有(3)lny=wT...

2019-07-27 17:07:46 2716

原创 梯度下降

梯度下降梯度下降法是最常用的一阶优化方法,用于求解无约束优化问题。考虑无约束优化问题minxf(x)min_{\pmb{x}}f(\pmb{x})minxxx​f(xxx),其中f(x)f(\pmb{x})f(xxx)为连续可微函数,若能构造一个序列x0,x1,x2\pmb{x}_0,\pmb{x}_1,\pmb{x}_2xxx0​,xxx1​,xxx2​…满足f(xt+1)&lt;...

2019-07-25 16:08:22 117

原创 左逆矩阵与右逆矩阵

左逆矩阵与右逆矩阵满足LA=ILA=ILA=I,但不满足AL=IAL=IAL=I的矩阵称为矩阵A的左逆矩阵,类似的,满足AR=IAR=IAR=I,但不满足RA=IRA=IRA=I的矩阵称为右逆矩阵。定理1:仅当m≥nm \geq nm≥n时,矩阵A∈Cm×nA \in \mathbb{C}^{m \times n}A∈Cm×n才可能有左逆矩阵。证明:当m≥nm \geq nm≥n时,矩阵AA...

2019-07-24 23:37:36 10724 1

原创 [题解]AOJ58 09年3月选拔赛第3题

由于长期缺乏运动,小黑发现自己的身材臃肿了许多,于是他想健身,更准确地说是减肥。小黑买来一块圆形的毯子,把它们分成三等分,分别标上A,B,C,称之为“跳舞毯”,他的运动方式是每次都从A开始跳,每次都可以任意跳到其他块,但最后必须跳回A,且不能原地跳.为达到减肥效果,小黑每天都会坚持跳n次,有天他突然想知道当他跳n次时共几种跳法,结果想了好几天没想出来-_-现在就请你帮帮他,算出总共有多少跳法。...

2019-04-26 12:55:14 261

原创 用Easy_X绘制带箭头的线段

箭头张角60度,臂宽为12void lineArrow(int x1, int y1, int x2, int y2){ line(x1, y1, x2, y2); double distance = sqrt((y1 - y2) * (y1 - y2) + (x1 - x2) * (x1 - x2)); double tmpx = double(x1 + (x2 - x1) * (...

2018-12-20 15:55:41 1778 2

空空如也

空空如也

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

TA关注的人

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