自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李宏宗的博客

发篇论文比登天还难呜呜

  • 博客(78)
  • 收藏
  • 关注

原创 Latex常用数学公式

[LaTeX数学公式大全]感谢大佬

2020-08-30 09:33:17 965

原创 常用Git命令总结

【代码】常用Git命令总结。

2023-07-25 22:14:45 172

原创 硬聚类,软聚类,及之间的关系

硬聚类和软聚类是在无监督学习中使用的两种方法,特别是在聚类分析中,将相似的数据点组合在一起。这两种方法都有各自的优势和劣势,它们在数据分析中的作用也不同。让我们来讨论一下这两种聚类技术之间的关系。

2023-03-30 17:37:16 1814 1

原创 MATLAB在图中的画一条箭头方向的线

使用:annotation函数。

2023-03-21 21:06:39 1601

原创 在mathtype中打latex代码编辑公式

在mathtype中打latex代码编辑公式

2023-03-01 21:21:56 3083

原创 MATLAB使用注意事项

总结一些有用的matlab知识

2022-11-15 21:32:35 456

原创 CUDA报错:HEAP CORRUPTION DETECTED:after Normal block

问题先说现象,这个问题的表现现象主要是:在malloc(new(new[]))之后,内存使用正常,但是在free(delete(delete[]))时,就会出错了。结论:出现这个问题的主要原因是:分配的内存少于实际使用的内测。比如:char* data = malloc(sizeof(char)*3)data[4];解决点击重试然后debug会退出错误会停留在某个free(***)语句上检查free的这个变量内存分配和内存使用的情况...

2022-03-07 18:40:48 599

原创 CUDA实现inter-block间同步——基于锁的块间同步

#include "cuda_runtime.h"#include "device_launch_parameters.h"#include <stdio.h>#define BLOCK_NUM 5#define THREAD_NUM 32__device__ volatile int g_mutex;__global__ void gpu_sync(int goalVal){ int tid = blockIdx.x *blockDim.x + threadIdx.x;

2022-03-06 22:24:34 814

原创 常用矩阵求导公式,逆矩阵求导

∂βx∂x=β\frac{\partial \beta \mathbf{x}}{\partial \mathbf{x}}=\beta∂x∂βx​=β∂xTx∂x=2x\frac{\partial \mathbf{x}^T\mathbf{x}}{\partial \mathbf{x}}=2\mathbf{x}∂x∂xTx​=2x∂xTAx∂x=(A+AT)x\frac{\partial \mathbf{x}^TA\mathbf{x}}{\partial \mathbf{x}}=(A+A^T)\mathbf

2022-02-24 12:23:18 1837

原创 C++ malloc和free

介绍free释放内存的和delete可以说是两套代码用new申请的就要用delete释放,用malloc申请的就要用free释放。但是 malloc 和 free 是函数,而new 和 delete 是运算符。除此之外,new 在申请内存的同时,还会调用对象的构造函数,而 malloc 只会申请内存;同样,delete 在释放内存之前,会调用对象的析构函数,而 free 只会释放内存。这里主要讲讲malloc和free内存申请和初始化需要注意的是,malloc函数分配得到的内存空间是未初始化的。因

2021-12-18 12:18:57 1602

原创 CUDA如何选取Blocks和Threads

Blocks早期的卡,最多支持65535个blocks, 后面的卡最多可以支持231−1=21474836472^{31}-1=2147483647231−1=2147483647可以理解为blocks可以随便造,主要是要把threads的大小选好Threads一般来讲每一个block不能超过512(Compute Capability 1.x)/ 1024(2.x和之后版本)个线程你电脑不旧的话,一般都是不超过1024每个块的线程数应该是warp size大小的整数倍,在所有

2021-11-11 22:46:41 1174

原创 几种概率分布(伯努利分布、二项分布、泊松分布、均匀分布、正态分布、指数分布、伽马分布)

伯努利分布(Bernoulli Distribution)又名两点分布或者0-1分布,是一个离散型概率分布,为纪念瑞士科学家雅各布·伯努利而命名。若伯努利试验成功,则伯努利随机变量取值为1。若伯努利试验失败,则伯努利随机变量取值为0。记其成功概率为p(0≤p≤1)p (0\le p \le 1)p(0≤p≤1),失败概率为q=1−pq=1-pq=1−p。均匀分布(Uniform Distribution)又分为离散型均匀分布和连续型均匀分布离散型均匀分布在统计学及概率理论中,离散型均匀分布是离散型

2021-11-06 14:51:07 12409

原创 latex让图片和表按顺序放

只用[h]是没有用的,一般使用 [ht], [htbp], [htb]这样的组合,这样组合的意思就是latex会尽量满足排在前面的浮动格式,就是h-t-b这个顺序,让排版的效果尽量好。

2021-11-03 22:39:56 5683

原创 Cuda生成随机数的一点浅薄的理解

一个函数内,相同种子的多次生成#include "cuda_runtime.h"#include "device_launch_parameters.h"#include "curand_kernel.h"#include <stdio.h>#define N 100#define BLOCKS 2#define THREAD_NUM 2__global__ void setup_kernel(curandState *state, unsigned long seed)

2021-11-02 20:27:58 301

原创 cuda随机数生成

前言host端当然可以用cstdlib中的rand()函数生成随机数,但设备端如何使用这些随机数?每调用一次rand(),就通过cudaMemcpy传递给显存吗?显然不是,这会消耗太多I/O时间;先调用n次,一次性传到device中吗?虽然可行,但并不是最优解。能否用一种方法,让主机仅仅传给设备一个信号,使得多个随机数在device端被生成,这样就能避免过多的I/O带来的耗时问题;或者调用一个设备端函数,使得设备端可以根据需要动态生成随机数。于是curand库和curand_kernel库进入了我们的视野

2021-11-01 20:36:03 2816

原创 VRP问题总结——直观理解

ACVRP: Asymmetric capacitated vehicle routing problemBWTSP: Black and white traveling salesman problemCCVRP: Cumulative capacitated vehicle routing problemCTSP: Colored traveling salesman problemCVRP: Capacitated vehicle routing problemCVRPTW: Capacit

2021-10-03 20:53:38 2187

原创 Latex插入图片设置参数

图片位置命令作用h此处(heret页顶(top)b页底(bottom)p独立一页(page)

2021-10-03 20:50:56 704

原创 High Performance Computing (HPC) 使用指南(香港城市大学为例)

致谢:特别感谢王际潮的耐心指导配置环境变量vim ~/.bashrc i export PATH=/home/yupeng/anaconda3/bin:$PATH :wqsource ~/.bashrc配置环境空间conda create -n spacename python=3.8启动环境空间source activate bad装包pip install scipy1.代码要使用相对路径编写2.链接HPCssh [email protected].

2021-06-28 21:53:26 2020 10

原创 亲测有效的latex表格模板

\begin{table*} \centering \fontsize{9}{12}\selectfont \caption{This is a visual sample.} \label{tab:distortion_type} \begin{tabular}{|c|c|c|c|c|c|c|c|c|c|} \hline \multirow{2}{*}{Components}& \multirow{2}{*}{Features}& \multicolumn{2}{c|

2021-04-19 22:39:31 6151

原创 C++ eigen,Matlab CPU,Matlab CPU多核,Matlab GPU谁更快?

本文测试了C++ eigen,Matlab CPU,Matlab CPU多核,Matlab GPU计算矩阵的效率,废话不多说,直接上测试代码。模拟了400维的problem,300个DHN网络,一共经行十次测试的的情况(本来选择的是4000维的problem,3000个DHN,计算100次的情况,因为C++ eigen算的实在是太慢了)C++的代码:#include <iostream> #include <Eigen/Dense> #include <wi

2021-04-01 21:09:42 1030 5

原创 Latex小写字母花体方法

在两种花体字母的Latex表达中,一般不可以用于小写字母:code符号\mathcal{ABC}ABC\mathcal{ABC}ABC\mathscr{ABC}ABC\mathscr{ABC}ABC要使用小写的\mathcal,\mathscr,需要使用包\usepackage{boondox-cal}或 \usepackage{boondox-calo}或 \usepackage{dutchcal}...

2021-02-06 12:49:49 14302 6

原创 拉普拉斯矩阵(Laplacian matrix)及其变体

拉普拉斯矩阵(Laplacian matrix) 也叫做导纳矩阵、基尔霍夫矩阵或离散拉普拉斯算子,是图论中用于表示图的一种重要矩阵。定义给定一个具有 n 个顶点的简单图 G=(V,E)G=( V , E )G=(V,E),V 为顶点集合,E 为边集合,其拉普拉斯矩阵可定义为:L=D−AL = D − AL=D−A其中 A∈RA \in RA∈R 为邻接矩阵(adjacency matrix),D∈Rn×nD \in \mathbb{R}^{n \times n}D∈Rn×n 为度矩阵(degree

2021-01-23 22:32:31 4395

原创 Matlab并行计算parpool使用方法+代码

parfor 是并行循环计算多重循环的嵌套,只能在其中一层循环使用parfor并行计算,因为parfor就是让几个worker同时干活,比如一个循环中,i=1:30,那么一个worker做i=1:5,一个做i=6:10····不同的循环变量之间完全独立,所以当然可以一起干活,在里面在嵌套parfor,相当于把里面的工作还要分给6个人,很容易混乱不清,出现问题,如果再继续嵌套就更没法独立地界限清晰地并行工作了。在命令行中输入ver查看是否有“并行计算工具包”,里面有Parallel Computin

2021-01-19 23:55:34 24808 3

原创 多项式时间 (Polynomial time)

什么是时间复杂度?时间复杂度并不是表示一个程序解决问题需要花多少时间,而是当程序所处理的问题规模扩大后,程序需要的时间长度对应增长得有多快。也就是说,对于某一个程序,其处理某一个特定数据的效率不能衡量该程序的好坏,而应该看当这个数据的规模变大到数百倍后,程序运行时间是否还是一样,或者也跟着慢了数百倍,或者变慢了数万倍。不管数据有多大,程序处理所花的时间始终是那么多的,我们就说这个程序很好,具有 O(1)O(1)O(1) 的时间复杂度,也称常数级复杂度;数据规模变得有多大,花的时间也跟着变得有多长,比如找

2020-12-05 22:58:15 13860 3

原创 李雅普诺夫第二方法

背景和思路**系统稳定:**系统储存的总能量持续地减小,直至耗尽,系统状态就会趋于平衡态**稳定性考察:**考察一个正值的能量函数 V(x)V(x)V(x) 和它的变化率 V˙(x)\dot{V}(x)V˙(x) 来判断。若 V˙(x)\dot{V}(x)V˙(x) 始终为负,则系统稳定。**困难:**对于一般的动态系统,并不是总能明确地定义一个能量函数**解决方案:**用一个正定的标量函数作为系统的广义能量函数...

2020-11-07 17:11:29 12420 1

原创 正定函数、半正定函数、负定函数和半负定函数

正定函数定义:若对域 Ω\OmegaΩ 中所有的非零向量 x\boldsymbol{x}x,恒有 V(x)>0V(\boldsymbol{x})>0V(x)>0,且在 x=0\boldsymbol{x}=0x=0 处有 V(0)=0V(0)=0V(0)=0,则称标量函数 V(x)V(\boldsymbol{x})V(x) 在域 Ω\OmegaΩ 内是正定的,V(x)V(\boldsymbol{x})V(x) 是正定的简记为 V(x)>0V(\boldsymbol{x})>0V

2020-11-06 16:50:54 14119 3

原创 否定、合取、析取、条件、双条件定义及LaTex公式

1 否定定义:设P为一命题,P的否定是一个新的命题,记作¬\neg¬P。若P为T,¬\neg¬P为F;若P为F,¬\neg¬P为T。P¬\neg¬PTFFTLaTex公式:$\neg$2 合取定义:两个命题P和Q的合取是一个复合命题,记作P∧\wedge∧Q,当且仅当P、Q同时为T时,P∧\wedge∧Q为T,在其他情况下,P∧\wedge∧Q的真值都是FPQP∧\wedge∧QTTTTFFFTFFFF

2020-10-28 12:02:23 16365

原创 严格证明Hopfield神经网络的稳定性

研究如下的Hopfield神经网络Cidxi(t)dt=−1Rxi(t)+∑j=1nTijgj(xj(t))+Ii,  (i=1,2,⋯ ,n)(1)C_{i} \frac{\mathrm{d} x_{i}(t)}{\mathrm{d} t}=-\frac{1}{R} x_{i}(t)+\sum_{j=1}^{n} T_{i j} g_{j}\left(x_{j}(t)\right)+I_{i},\;(i=1,2, \cdots, n)\tag{1}Ci​dtdxi​(t)​=−R1​xi​(t)+

2020-10-14 18:04:56 1419

原创 连续型Hopfield神经网络(SHNN)结构和特点及其能量函数

1 连续型Hopfield神经网络连续型Hopfield网络结构如右图所示,它是单层反馈非线性网络,每一个节点的输出均反馈至节点的输入。Hopfield网络用模拟电路实现的神经元节点如下图。 图中电阻 Ri0R_{i0}Ri0​ 和电容 CiC_iCi​ 并联, 模拟生物神经元的延时特性, 电阻 Rij(j=1,2,...,n)R_{ij}(j=1, 2, ... , n)Rij​(j=1,2,...,n) 模拟突触特征 ,偏置电流 IiI_iIi​ 相当于阈值, 运算放大器模拟神经元的非线性饱和特性

2020-10-13 15:59:42 7114 2

原创 Hopfield神经网络概述

Hopfield

2020-10-12 22:56:20 1518

原创 迈向第三代人工智能——论文欣赏

人工智能(artificial intelligence, AI) 自1956 年诞生以来, 在60 多年的发展历史中, 一直存在两个相互竞争的范式, 即符号主义与连接主义(或称亚符号主义). 二者虽然同时起步, 但符号主义到20 世纪80 年代之前一直主导着AI 的发展, 而连接主义从20 世纪90 年代才逐步发展起来, 到21 世纪初进入高潮, 大有替代符号主义之势.1 第一代人工智能——符号主义2 第二代人工智能——连接主义感官信息(视觉、听觉和触觉等) 是如何存储在记忆中并影响人类行为的? 有

2020-10-12 22:17:54 969

原创 马尔科夫决策过程(Markov decision process, MDP)和马尔科夫奖励过程(Markov Reward Process)

在强化学习中,马尔科夫决策过程(Markov decision process, MDP)是对完全可观测的环境进行描述的,也就是说观测到的状态内容完整地决定了决策的需要的特征。几乎所有的强化学习问题都可以转化为MDP。本讲是理解强化学习问题的理论基础。马尔科夫过程 Markov Process1 马尔科夫性(Markov Property)某一状态信息包含了所有相关的历史,只要当前状态可知,所有的历史信息都不再需要,当前状态就可以决定未来,则认为该状态具有马尔科夫性。可以用下面的状态转移概率公式

2020-10-12 15:51:02 2248

原创 CSDN的Markdown中设置字体、颜色和字号

1 字体<font face="宋体">宋体</font><font face="仿宋">仿宋</font><font face="楷体">楷体</font><font face="隶书">隶书</font><font face="黑体">黑体字</font><font face="微软雅黑">微软雅黑</font><font face="STC

2020-10-11 10:48:32 667

原创 离散型Hopfield神经网络(DHNN)、直接训练法,Hebb规则及稳定性分析

1 Hopfield神经网络原理Hopfield网络相当于一个具有多个吸引子的系统。(对于吸引子的大致定义:落入吸引子附近的状态都会被吸引到该吸引子所在的状态。)我们把每个吸引子所在的状态作为一个记忆原型,被毁坏的输入假定在记忆原型的附近,通过Hopfield网络,最终能够通过毁坏的输入回忆起它所对应的完整原型。2 Hopfield网络结构一个具有三个神经元的Hopfield网络结构如下图所示。网络中的每个神经元 iii 与所有其他神经元 j≠ij \ne ij​=i之间都存在连接,权值为 ωij\

2020-10-10 12:15:59 4204

原创 Two Projection Neural Networks With Reduced Model Complexity——论文欣赏

Consider the following NP:min⁡f(x)s.t.c(x)≤0,  Bx=b(1)\begin{aligned}&\min\quad f(x)\\&s.t.\quad c(x)\le 0,\;Bx=b\end{aligned}\tag{1}​minf(x)s.t.c(x)≤0,Bx=b​(1)where x∈ℜn,f:ℜn→ℜ,c(x)=[c1(x),...,cm(x)]Tx\in \Re^n,f:\Re^n\rightarrow \Re,c(x)=

2020-10-08 12:05:50 107

原创 Two-Timescale Multilayer Recurrent Neural Networks for Nonlinear Programming —— 论文欣赏

Consider the following nonlinear programming:min⁡xf(x) s.t. g(x)≤0h(x)=0(1)\begin{array}{c}\min _{x} f(x) \\\text { s.t. } g(x) \leq 0 \\h(x)=0\end{array}\tag{1}minx​f(x) s.t. g(x)≤0h(x)=0​(1)Two-timescale model:ϵxdxdt=yϵydydt

2020-10-07 17:49:44 176

原创 开集(Open Set)、闭集(Closed Set)和紧集(Compact Set)

开集假设X是一个集合, 如果存在一系列X的子集合满足下面的条件,那么每个这样的子集就称为X的一个开集,X称为拓扑空间。空集和X为开集;有限多个开集之交为开集(无穷多个开集的交集未必是开集);任意多个开集之并为开集。...

2020-10-07 11:34:48 23418 2

原创 利普希茨连续(Lipschitz continuity)和利普希茨常数(Lipschitz constant)

定义给出两个 metric spaces (X,dX)(X,d_X)(X,dX​) 和 (Y,dY)(Y,d_Y)(Y,dY​),其中 dXd_XdX​代表 XXX 的 metric,dYd_YdY​ 代表 YYY 的 metric,如果存在一个实数 K≥0K\ge0K≥0,对于 XXX 所有的 x1x_1x1​ 和 x2x_2x2​dY(f(x1),f(x2))≤KdX(x1,x2)d_Y(f(x_1),f(x_2))\le Kd_X(x_1,x_2)dY​(f(x1​),f(x2​))≤KdX

2020-10-06 11:25:51 11318

原创 仿射函数与线性变换的区别

为了方便起见,以下叙述均采用平面直角坐标系。一个矢量(1,2)可以表示为从原点指向该点的箭头。你可以对这个矢量进行缩放,比如放大两倍就变成了(2,4)这个操作可以表示为2 x(1,2)。也就是说放大k倍就是k(x,y)上面的例子写成矩阵的话就是,这里用到了矩阵乘法。(12)(2002)\begin{pmatrix}1&2\end{pmatrix}\begin{pmatrix}2&0\\0&2\end{pmatrix}(1​2​)(20​02​)这个很简单。你也可以把矩阵中

2020-10-04 18:29:30 2857

原创 旋转——绕原点二维旋转,绕任意点的二维旋转,三维基本旋转,绕任意轴的三维旋转

1 简介计算机图形学中的应用非常广泛的变换是一种称为仿射变换的特殊变换,在仿射变换中的基本变换包括平移、旋转、缩放、剪切这几种。本文以及接下来的几篇文章重点介绍一下关于旋转的变换,包括二维旋转变换、三维旋转变换以及它的一些表达方式(旋转矩阵、四元数、欧拉角等)。2 绕原点二维旋转首先要明确旋转在二维中是绕着某一个点进行旋转,三维中是绕着某一个轴进行旋转。二维旋转中最简单的场景是绕着坐标原点进行的旋转,如下图所示:如图所示点v 绕 原点旋转θ 角,得到点v’,假设 v点的坐标是(x, y) ,那么可

2020-09-28 18:26:26 11866

空空如也

空空如也

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

TA关注的人

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