自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用Pytorch的一些小细节(一)

前言。

2023-11-10 19:45:49 543

原创 LeetCode刷题总结(一)

本文把刷题过程中的总结记下来,方便未来回顾的时候继续拓展。

2023-11-10 19:45:02 160

原创 使用ubuntu并安装常用软件

因为用zotero管理文献时,官方云空间只有300Mb,放几本书就塞满了,所以很不方便,碰巧我有一台云服务器,所以想把云服务器设置为webdav服务器这样就可以存放文件了。下面是安装docker desktop的过程通过第三方源来安装,docker desktop不好用,推荐安装docker engine。腾讯会议官网提供了deb安装包,所以采用deb包通用的安装方式:dpkg进行安装。推荐使用zotero官方推荐的community maintain的版本,一键式安装,快捷方便。安装时间确实相当漫长。

2023-10-07 10:28:28 830

原创 卷积神经网络(一)

从外行者角度看卷积神经网络会说无非就是卷积层后面跟着一个池化层,但是深入代码实际编写卷积神经网络总是有些困难的。其中包括各种细节比如数据格式、尺寸变化、运算规定等。

2023-09-13 23:13:11 189

原创 概率有向图模型(一)

本文对概率有向图模型进行了一定程度上的分析。

2023-09-07 22:59:23 308 1

原创 条件随机场与概率无向图因子分解参数化形式(一)

学习条件随机场时,对于条件随机场的参数化形式很难理解,从联合概率分布的分解角度出发也很难证明出来,回顾一下前提条件,发现问题的关键在于定理,所以从相关内容出发证明。后面证明我还是理解错了,问题的关键不在于Hammersley Clifford定理,而在于条件概率的计算。CSDN:Hammersley-Clifford定理证明编程学习网:【机器学习】 概率无向图模型CSDN:深度学习笔记之受限玻尔兹曼机(一)玻尔兹曼分布介绍CSDN:Hammersley-Clifford定理证明。

2023-09-06 23:58:43 153

原创 EM算法总结(一)

EM算法广泛用于含有隐藏变量的模型的极大似然估计。文曲经典:统计学习方法-李航。

2023-09-03 21:14:15 86 1

原创 使用conda包管理器通过命令行创建环境

新建环境# 安装编译器# python中安装jupyter-fortran内核# 为了使用jupyter kernelspec,安装jupyter kernelspec# 使用jupyter kernelspec创建fortran环境# 启动jupyterlabpy 1.10 .0。

2023-09-03 13:33:45 252

原创 使用Docker配置深度学习的运行环境

在进行科研工作时,很多时候都需要对代码进行复现。复现很简单,问题的难点在于环境的配置,环境配置好了,实验自然就能够复现,环境配置错误,往往会不停报错。因此为了省去配置环境的麻烦,我们选择把环境连同系统一起打包,即采用docker,实现快速可迁移的代码复现。

2023-09-03 13:29:59 1771 1

原创 GIT相关内容总结

Git是版本控制工具。版本控制就是记录你对文件做的所有改动的一个系统,包括改动的内容,改动的时间,改动的备注等,便于你恢复特定的版本。版本控制系统分为本地版本控制系统,中心版本控制系统和分布式版本控制系统。Git就是分布式版本控制系统。

2023-09-03 13:17:06 723

原创 支持向量机(二)

文章目录前言具体内容前言总算要对稍微有点难度的地方动手了,前面介绍的线性可分或者线性不可分的情况,都是使用平面作为分割面的,现在我们采用另一种分割面的设计方法,也就是核方法。核方法涉及的分割面不再是wx+b=0wx+b=0wx+b=0,而是f(x)=0f(x)=0f(x)=0了。具体内容核方法其实就是坐标映射方法,类似于我们进行回归的时候对于反函数曲线采用y=wx+by=\frac{w}{x}+by=xw​+b的形式来对数据进行拟合。我们常用的标准做法都是先将原始数据xxx映射为1x\frac

2023-09-03 10:07:51 982

原创 支持向量机(一)

在支持向量机中,理论逻辑很简单:最大化最小的几何间隔。但是实际编写代码过程中有一个小点需要注意。总是把二分类的类别分为0和1,这样就导致我的目标函数跟算法描述的就不一样,所以求解结果就不正确。同时还有第二个要注意的就是凸优化包cvxpy中各种运算的表示方法,比如凸优化中常见的二次方程的表示,变量的默认形状等,要查看官方文档才能熟悉。变量的默认形状为列向量。李航:统计学习方法CVXPY。

2023-08-31 21:13:35 526

原创 logistic回归与最大熵模型(二)

上一篇文章对Logistic回归和最大熵模型有了初步的理解,但是其中还有些一知半解的地方,经过代码实现,自己对相关内容有了充分的理解,所以写出本总结(二)。

2023-08-20 19:14:08 37

原创 Logistic回归与最大熵模型(一)

深度学习开发环境配置好以后,想要重温一下基础统计机器学习的知识,所以借助李航老师的《统计机器学习》,看到Logistic回归与最大熵模型的时候有些问题,模型的输入是特征xxx,模型的输出是类别yyy,模型的损失函数是什么不是很理解。在基本的分类问题中,当模型的函数是ysignwxbysignwxb时,输出与真实类别标签的误差所对应的损失函数就是错误分类的个数,但是不便于求导;所以我们修改模型为ywxby=wx+bywxb。

2023-08-20 13:59:01 61

原创 Pytorch使用(二)

在用Pytorch包编写人工智能代码时最常用的操作就是用梯度去更新参数,也就是ww−lr∗wgradww−lr∗wgrad这个赋值操作很有可能会导致变量的id发生变化,进而给Pytorch中的loss函数的计算带来困惑。还好在Pytorch(一)中我们已经了解到了tensor变量的绝缘与不绝缘,所以接下来用代码来演示变量id发生变化时的处理办法以及如何保持参数id不变。

2023-08-15 14:20:40 46

原创 Pytorch使用(一)

id都不一样,比如torch.tensor创建的,variable创建的,clone(),detach()等等。提取出来的是张量的数据地址,当把它赋值给别的变量时,相当于把同一个地址赋值给这个新位置处的变量。当这个位置的变量的数值发生变化时,原位置处的变量的数值也会发生变化。提到张量不得不提跟他很相似的变量,variable,在PyTorch中,Variable是一个重要的概念,它是对tensor的封装,可以用于自动求导和梯度下降算法等。可以粗略的认为除了这种情况,其他的都是绝缘的。

2023-08-15 11:05:09 94

原创 Ubuntu系统操作指令

对于软件需要考虑管理器,安装,更新,与卸载命令。对于环境需要考虑编辑,运行命令。即编辑环境、运行环境。

2023-08-15 09:22:04 94

原创 Ubuntu安装中文输入法

Ubuntu自带的输入法框架是IBUS,它支持智能拼音,五笔等中文输入法。刚开始用着还挺舒服,但是很遗憾,最近它经常崩溃,所以我需要安装另一款中文输入法,因为fcitx输入法框架支持的中文输入法比较多,所以我们改为fcitx框架。WPS for linux 下载以后使用存在字体缺失问题,因此要把字体安装。

2023-08-11 09:42:47 98

原创 Ubuntu中安装Docker desktop

Docker desktop与Docker engine之间的区别我总是分不清楚。通过更换软件源来安装docker。

2023-08-09 19:15:06 627

原创 序列数据处理问题

序列数据处理问题背景问题分析拟合模型用RNN模型解决这个问题2 Prediction Network2.1 Long Short-Term MemoryTransformer模型MLP模型CNN模型涉及问题长程依赖(long-range dependency)问题定义原理解释未完成的证明回顾背景常见的机器学习问题都是有给定的输入输出样本数据:(xi,yi)(x_i,y_i)(xi​,yi​)的,然后找的是:y=f(x)y=f(x)y=f(x)。然而还存在一类问题,这类问题研究对象是序列数据:x1,x2,

2023-06-28 23:04:05 93

原创 注意力机制学习(全公式)

原始数据点连成的线段如图中所示,使用Nadaraya-Watson插值拟合的和采用拉格朗日拟合曲线比较接近,在图中为连续光滑的曲线。==以后可能经常性的会求出随机变量的均值与方差进行比较以说明理论背后的逻辑。往往找到一种更好的逼近函数的形式,估计效果就会更好。所以用拉格朗日插值基函数对已有数据的拟合效果较好,并且不会受到人为设计的超参数影响。,当然通过不同物理意义上的距离函数,可以修改这个展开,实现不同的拟合效果。当然也有其他的函数形式,正如前面所说,函数形式越精巧,估计效果越准确。

2023-06-26 22:47:05 2371

原创 Transformer论文分析

语言建模(language model)就是估计一个序列所对应的概率分布。翻译模型(machine translation)就是估计在给定序列的基础上目标语言的序列对应的概率分布。

2023-06-20 14:03:17 53

原创 ByteNet模型分析

在学习transformer时,文中出现的各种特殊结构的行业黑话使我大受打击,所以从头开始学习,势必要弄懂行业黑话,打不过就加入他们。为了了解Encoder-Decoder结构,所以选择这篇文章ByteNet进行分析。

2023-06-19 23:22:21 305

原创 Zotero使用

由于PDF文件比较大,在稍后进行文件同步时,同步空间可能不太够用,所以需要把PDF文件的保存位置做个更改,需要使用一个插件:Zotfile。在网页中找到对应的论文,然后Zotero插件会自动识别论文,点击导入按钮即可导入Zotero,不过注意要求Zotero是运行状态。但是需要注意,为了方便导入文献及对应的pdf进Zotero中,我们需要在浏览器中安装插件,也就是下方“设置完成后还需要修改Zotero的设置,刚刚设置的是Zotfile插件的设置,别糊涂了。然后点击图中设置按钮,点击“选择为上面设置的路径。

2023-06-06 15:42:04 1087

原创 Alist+RaiDrive实现挂载云盘到本地

桌面新建后缀名为.VBS的文件,我命名为alistmyrun.VBS,然后输入如下内容。然后右键单击这个脚本文件,选择创建快捷方式。然后登陆成功以后点击下方管理,更改为自己熟悉的密码。如果实在看不懂,建议看底下的youtube视频链接,很详细。获取完令牌以后,此时回到alist的网页管理界面中,点击。然后注意命令行中给出的提示信息,最好保存一下。,然后地址文本框中输入alist后台地址。,然后选择对应的驱动为待添加的网盘。然后去自己想添加的网盘,获取令牌。,再输入账户名和密码。,密码即刚才保存的密码。

2023-06-06 15:24:04 1622 7

原创 用CUDA进行N个物体的系统的演化仿真

对于一个多体系统,往往是在给定初始条件的情况下,在每一步计算出系统中每个物体所受到的力进而确定该物体的加速度,从而确定多体系统中每个物体的运动轨迹,进而确定这个多体系统的演化。其中计算量比较大的就是每个物体所受到的力的计算。当一个系统由好多物体构成并且物体之间存在持续的相互作用时,这个系统就叫做多体系统。也就是说乘加指令会在一步中完成乘法和加法,这样的话原本要两步浮点运算完成的任务,现在可以一步完成,所以提速了。所以大部分演化算法优化的目标都是:如何用最短的时间计算出所有物体各自的受力情况?

2023-05-28 22:30:55 43

原创 人工智能基础知识总结

人工智能基础知识总结分析术语术语总结待测试随机变量均值与方差回归问题分类问题softmax函数分析术语与**同时出现:说明两者概率相同术语总结回归:就是找一个函数,去拟合给定的输入输出。分类:也是找一个函数,使得对于给出的训练数据的输入输出是正确的。马尔可夫决策过程:就是用状态动作奖励序列来描述问题就是马尔可夫决策过程。马尔可夫过程:就是用状态序列去描述问题就是马尔可夫过程。随机过程:就是随机现象的变化序列。随机现象:用概率分布去描述的问题就是随机现象。马尔科夫奖励过程:用状态奖励

2023-05-19 14:25:03 69

原创 价值学习总结

价值学习总结概述动作价值函数的递推性Q学习SARSA算法多步TD算法问题因果分析总结概述价值学习就是学习动作价值函数和状态价值函数,除了用线性函数来作为价值函数的逼近函数外,还可以使用阶跃函数来作为近似,当然也可以使用神经网络来近似价值函数。而且由于价值函数本身自带的特殊的递推属性,可以导出用于递推计算价值函数的TD算法。当我们采用神经网络来近似动作价值函数并使用TD算法求这个神经网络的参数时得到的就是Q学习算法。此时这个神经网络就叫做DQN(Deep Q Network)。换句话说DQN之所以叫DQ

2023-05-16 23:00:09 65

原创 贝尔曼方程推导[2]

贝尔曼方程参考内容贝尔曼方程总结参考内容贝尔曼方程推导[1]深度强化学习(张志华,王树森)贝尔曼方程所有的数学工具都在上面了。接下来就是分析四个表达式之间的关系。首先把上述四个表达式拓展一下,也就是拓展到下一步进行分析。t+1t+1t+1步的动作价值函数:V(at+1∣fa,fr,ft,st+1)=∑st+2⋯∑st+n∑at+2⋯∑at+n[rt+1(st+1,at+1)+γrt+2(st+2,at+2)+⋯+γn−1rt+n(st+n,at+n)]∗[P(st+2∣st+1,at+1)

2023-05-15 13:56:47 72

原创 深度强化学习总结[2]

或者我们可以假设有更多的初始路径可以选择,但是各个路径的回报肯定不同,也有对应的概率,我们最后得到的是期望回报,也就是加权平均,我们希望的是找到最优的策略函数,它的作用就是使得期望回报最大。要想让最大化,必定不能平均,只能走最大回报的那条路。

2023-05-14 23:15:28 81

原创 贝尔曼方程推导[1]

贝尔曼方程推导前言动作、状态、奖励序列动作价值函数最优策略函数下的最大动作价值函数状态价值函数最优策略函数下的最大状态价值函数贝尔曼方程总结前言由于公式太长,写在一个文章里面看得云里雾里,所以分开写,本文中将直接使用推导好的动作价值函数与状态价值函数,关于如何推出来的表达式,请参考:深度强化学习总结动作、状态、奖励序列st,at,rt(st,at),st+1,at+1,rt+1(st+1,at+1),⋯ ,st+n,at+n,tt+n(st+n,at+n)s_t,a_t,r_{t}(s_t,a_t)

2023-05-14 19:18:47 93

原创 深度强化学习总结[1]

根据前面分析的对于一个函数可以用连续和非连续的函数来对其进行逼近,而上述逼近往往是用无限的函数的和来逼近,这在编程中不可实现,所以我们需要进行截断。策略函数是随机策略函数,因为基于当前状态采取何种动作是具有随机性的。同时状态转移函数也是随机的,基于同样的状态和动作,也会有不同的状态转移函数。马尔可夫决策过程中的动作价值函数就是在当前状态和采取的动作都已经确定的情况下收到的回报。也就是条件概率中的条件只能是已知的内容,然后求出对应的均值。也就是对应的是对应状态和动作的函数。的情况下,下一时刻的奖励。

2023-05-12 23:16:36 72

原创 数值优化算法总结

因此我们可以用平均采样求出的函数期望值乘以区间长度来估计定积分的值。其他高维积分也可以这样考虑。利用蒙特卡洛方法其实就是用概率论中的期望理论。因此蒙特卡洛可以用来求积分,也可以用来求期望。同时也可以用来求期望梯度。首先考虑被积函数在积分区间内的平均值的计算表达式。的均值,也可以看成非均匀意义下的采样均值。为采样概率分布进行采样,采到每个函数值的概率为。上进行均匀采样,也就是每个点采到的概率就是。,这恰好就是我们要求的值。,也就是对应的每个函数值。这种看成均匀采样意义下的。

2023-05-12 22:01:07 99

原创 三角函数类总结

三角函数类总结三角函数类三角函数类三角函数类就是由各种三角函数乘以系数求和所得到的。三角函数都是具有特定周期的周期函数。我们注意到只有用相同周期的这些函数来叠加生成目标函数才不会影响函数周期,否则会改变函数周期变为周期的最小公倍数。所以对于一个周期函数来说,要想用其他函数去近似他,首要的就是其他函数必须也是相同周期的。否则无法达到相同周期,也就无法生成这个周期函数。打个比方,我有一个函数周期为TTT,我想用其他函数来近似这个函数,我需要搜集许多周期同样为T的函数。而cos⁡(n(2πT)x)\cos

2023-05-11 11:19:57 207

原创 多项式函数类总结

前面的估计也就无法实施。这时候就需要使用最小二乘估计去估计模型的参数。这与我们学习泰勒展开时所学习的也一致,泰勒级数是局部逼近,并非全局逼近。可以看出,距离越远,偏差越大;包含的导数项阶数越大,偏差越大。就是由多项式所构成的函数。接下来以已知函数表达式为例介绍多项式函数逼近效果,仿真函数区间为。此时我们使用最小化估计误差的方法来求出上述参数。也就可以估计出多项式近似函数的系数。的函数形状,所以也就无法求出。,下方的代码表示以原函数的前。个样本的估计误差为,其中。记前面的参数行向量为。,后面的观测列向量为。

2023-05-11 11:17:38 690

原创 阶跃函数类总结

当然,这个近似函数的系数也可以通过最小二乘误差进行估计。从结论上来说,比如说未知函数原型,也就是不知道待近似的函数是什么样子,只给出了一些样本点对。首先要做的还是划分好区间,划分出区间以后,对应的系数就是位于这个区间内的点对。这就相当于用阶跃函数直接逼近原函数,而之前的相当于是用窗口函数进行逼近。可以看到仿真函数与真实函数还是比较吻合的,这主要是因为粒度比较精细。就是由多个不同位置处的阶跃函数通过乘以系数然后叠加构成的函数。所以可以发现,加入一个变量只是在后面的表达式中加入了一项,所以更多变量也不用担心。

2023-05-11 11:12:21 1581

原创 机器学习总结

结构建模是在分析内部机理的情况下划分出结构进行建模的。而黑箱建模是在不清楚内部机理的情况下对系统进行建模,此时无法分析结构,可以根据输入输出建立系统模型,进行预测,比如估计输入所对应的输出。

2023-05-07 23:06:05 121

原创 解释性结构建模

为了满足准确反映,首先要搜集人口数据,为了满足人口演化分析,需要搜集相关政策数据,相关经济数据,相关社会数据,相关人文数据,相关生态数据,同时需要相关的相关性分析方法,因果分析方法。根据矩阵的乘法可知,对应位置处的元素为对应行和列向量相乘的结果,而在邻接矩阵的分析中,行与列向量的相乘被分解为了逐对元素相乘再相加。就是根据结构关系图,分清楚因素之间的因果或者强弱关系,也就是分析各结构之间的递进关系。当我们定义元素之间的关系为A不比B差的情况下,A与A之间是默认成立这种关系的,这种情况下的可达矩阵是成立的。

2023-05-07 15:40:29 281

原创 CUDA使用介绍

CUDA Toolkit下载链接CUDA Toolkit包含了CUDA驱动和工具,CUDA驱动与NVIDIA驱动并不是一个东西,CUDA驱动接入NVIDIA驱动提供的接口访问GPU,同时接入程序,将运行结果输出。NVIDIA驱动接入GPU,对外提供能够访问GPU的接口。

2023-05-07 14:25:10 2497

原创 使用VSCode借助TEXlive编写Latex文档及常见Latex操作

VSCode是微软开发的一款编辑器,插件很多,功能强大,不仅可以用来编写程序也可以用来写文档。LaTeX是一种基于TeX的标记语言和编程语言,所以类似于其他编程语言Python等,Latex的文档也需要一个专门的编译器进行编译。此部分内容还没想明白怎么介绍,看别人写的也是云里雾里,不知道为什么要这样设置,等我想明白了再回来补充吧。选择想要安装的版本,建议直接下载iso文件,这样可以离线安装。文件中进行编写,然后保存就可以在侧边PDF中实时预览效果。个性化修改安装位置,不修改也可以,看个人。

2023-05-05 22:30:32 3229

空空如也

空空如也

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

TA关注的人

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