自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于前馈神经网络的鸢尾花分类

【代码】基于前馈神经网络的鸢尾花分类。

2024-02-13 15:42:43 328

原创 基于BERT-BiGRU-FFNN情绪分析模型的情绪分析任务

为了写作方便,本文将本次实验采用的基于BERT-BASE-UNCASED预训练模型+双向GRU循环神经网络+前馈神经网络模型称为情绪分析模型。模型概览:由于模型过大,因此只能看到模型的大概信息,详细信息将在后文描述。从模型概览中可以看到首先是模型的输入层,bert-base-uncased预训练模型的输入神经个数为9216,当然这些神经元不会全部用到,由输入序列长度确定。

2024-02-13 15:31:24 1033

原创 Socket通信,支持I/O复用

线程池采用的还是上述内容所介绍的线程池知识,就是在简单线程池以及传统socket通信的基础上加入epoll机制。I/O复用机制有很多成熟的技术,比如说select、poll、epoll,epoll是最近才开发出来的用于实现I/O复用的一种机制,是目前最新的技术。那么epoll和传统socket通信机制到底有什么不同。在传统的I/O模型中,一个线程或进程通常需要阻塞等待某个操作完成,这可能导致资源的浪费,尤其在网络编程中,等待网络数据到达或发送可能会导致线程阻塞,浪费CPU时间。

2024-02-13 15:24:27 823

原创 简单线程池、复杂线程池

线程池主要就是编写线程执行函数,有任务时应该要及时唤醒线程,没有任务时可以让线程睡眠,并记录线程睡眠的时间,如果线程睡眠时间太长,可以唤醒线程之后终止线程。同时,为了缓解程序经常申请和释放内存空间的压力,当有任务时,我们可以多创建几个线程,这样,下一个任务来的时候就不需要再创建线程,可以缓解高并发连接时申请和释放内存空间的压力。如果线程池中有睡眠线程,则唤醒睡眠线程,没有睡眠线程则创建一个新线程,这里,为了提高程序的效率,可以多创建几个,用于应对高并发请求的情况。线程睡眠时需要记录线程是否睡眠超时。

2024-02-13 15:16:50 345

原创 利用TCP协议实现socket客户端服务端通信,可实现大文件传输,可实现自定义协议格式

首先,我们要知道客户端和服务端是怎么建立连接的,这里就不得不学一下server和client的三次握手过程。建立连接之后,客户端和服务端就可以通信了,可以互传文件,传输自定义文件数据等等。

2024-02-13 15:09:57 939

原创 批量修改文件所有者和权限并自动验证

【代码】批量修改文件所有者和权限并自动验证。

2024-02-13 15:01:48 378

原创 ubuntu修改网卡配置信息和防火墙规则

【代码】ubuntu修改网卡配置信息和防火墙规则。

2024-02-13 14:59:58 319

原创 操作系统实验-磁盘调度算法

它作为计算机系统的辅助存储器,担负着繁重的输入输出工作,在现代计算机系统中往往同时会有若干个要求访问磁盘的输入输出要 求。当有进程在 访问某个磁盘时,其它想访问该磁盘的进程必须等待,直到磁盘一次工作结束。模拟电梯调度算法(SCAN)及最短寻道时间优先算法(SSTF),对磁盘进行移臂操作,列出 基于该种算法的磁道访问序列,计算平均寻道长度。3.4“磁盘调度”的功能是扫描“请求 I/O”表并根据用户所选算法重新排序,列出基于该种算法 的磁道访问序列,计算平均寻道长度。相应的,呈现的是先减小后增大的特征。

2024-02-13 14:54:42 744

原创 操作系统实验-银行家算法

Work=Available,依次判断Need是否小于等于Work,如果小于等于,就分配资源,进程运行完成之后,收回分配给进程的所有资源。再次寻找满足Need小于等于Work的进程,重复上述步骤,直至所有进程的Finish=true,或者剩余的所有进程都不满足Need<=Work的条件。指系统能按照某种顺序如(称为序列为安全序列),为每个进程分 配所需的资源,直至最大需求,使得每个进程都能顺利完成。由上图所示,所有进程的Finish=true,所以系统是安全的,测试序列就是安全序列。

2024-02-13 14:51:47 979

原创 操作系统实验-文件系统

打开文件目录(OFD):对于两级文件目录来说,我们需要定义一个打开文件目录结构体:Open_File_Directory,以下简称OFD,用于存储当前用户打开了哪些文件,当然,当执行close指令关闭文件时,将文件从OFD中删除,注意:并没有将文件从MFD中删除。当用户输入上述指令时,系统会判断是否存在该文件,以及文件存在的情况下,文件是否已经处于打开状态,这两种情况都将给出相应提示。当用户输入上述命令时,先判断是否存在该文件,以及当文件存在的前提下,文件是否处于打开状态,这两种情况都将导致删除失败。

2024-02-13 14:48:15 845

原创 操作系统实验-页面置换算法

如果发生缺页,需要遍历内存块中的每一个序列号,如果在算法要求的序列中不存在,那么认为当前序列号就是最久没有被访问的,如果所有序列号在算法要求的序列中都存在,则需要找一个最久没有被访问的序列号作为淘汰序列号。2、取出内存块中的一个值b,将其与未来的访问序列比对,找出其第一次出现的位置pos,将pos与a进行比较,并将最大值赋予a,并记录b在内存块中的位置j;2、取出内存块中的一个值b,将其与过去的访问序列比对,找出其第一次出现的位置pos,将pos与a进行比较,并将最小值赋予a,并记录b在内存块中的位置j;

2024-02-13 14:45:44 808

原创 操作系统实验-进程调度

当一个进程开始运行时,就将时间片的 值置入间隔时钟内,当发生间隔时钟中断时,就表明该进程连续运行的时间已超过一个规定的时间 片。本次实验用到的主要结构体、队列以及函数有:进程控制块(PCB)、进程表(用链表实现,链表头指针为pcb)、就绪队列(ready)、完成队列(finish)、执行队列(execute,由于只有一个处理器,所以并没有真正设置执行队列)、获取进程信息函数(用于获取进程的标识符和cpu时间)、可视化函数、静态优先权执行函数、动态优先权执行函数、时间片轮转法执行函数、人机交互函数。

2024-02-13 14:42:01 1502

原创 JPEG编码输出流

按照ZIG扫描顺序,如果AC系数是0,先记录连续0的个数,但是连续0的个数不能超过16个,每16个连续0应记录一个编码,但是这一切的前提是AC系数为0的后面还有不为0的AC系数。DC系数就是DCT矩阵中(0,0)位置的值,除此之外,其它的所有系数多是AC系数,对AC系数编码时,63个DCT系数的编码顺序有要求,因为DCT矩阵不管是从上到下还是从左到右,DCT系数都在变小,为了能得到更好的压缩比,jpeg采用Z字型编码顺序。)将DC系数转换为二进制数表示,如果系数为负数,用反码表示。

2024-02-13 00:53:16 905

原创 心脏图像去噪

从结果来看,类似于卡方分布或者瑞利分布,这种分布可以对其做一个小波分解,之后对小波系数做一个软阈值去噪。题目提供的心脏图片的ER值为0.7973,因此噪声类型为高斯噪声,可以用均值模板去除心脏图片的噪声。接下来就可以根据公式(2)计算ER的值,论文提出,当ER>0.5时,为高斯噪声;如左下角所示的图片,虽然去除了一部分噪声,但是效果并不好。利用伽马矫正,得到的去噪图像不仅保留了边缘、细节、纹理等高频信息,而且还去除了噪声,效果还可以。高斯噪声的不显著小波系数较多, 而椒盐噪声的不显著小波系数较少。

2024-02-13 00:45:37 374 1

原创 Hough圆变换解决苹果检测问题

从结果来看,只有Cr分量可以将苹果和背景很好的区分开,因此选择Cr分量作为Hough变换的源图片,但是考虑到Cr分量的背景是灰色的,而且为了更好的苹果和背景,可以对Cr分量去噪之后做一个分割,具体选择Otsu作为分割的方法。利用梯度 Hough 圆变换识别图三(a),(b)中的苹果数目,并分析结果,对于误识别的问题,是否能通过对算法进行优化以提高识别的准确率,如果有想法,请详细写出你的改进算法,并对改进前后的结果进行对比。但是识别效果并不好。之后将分割之后的图片做一个Hough变换,可以得到比较好的效果。

2024-02-13 00:25:40 817

原创 等价频率域滤波器

如果空间域模板和频率域模板等价,那么上图中第一象限和第四象限的图片应该是一样的,结果证明,两张图片是一样的,因此,空间域模板和频率域模板等价。接下来对这个模板进行傅里叶变换、中心化并扩展至图像的大小(256,256)该题的思想就是,空间域的卷积等于频率域的乘积。上图中右图就是频率域模板,也就是H(u,v)。接下来验证这个频率域模板的正确性。这篇博文围绕如下问题展开。matlab代码如下所示。

2024-02-11 17:51:49 350

原创 不同拉普拉斯核比较

仔细观察两个拉普拉斯核可以看出,(b)拉普拉斯核相比(a)拉普拉斯核可以提取更多的细节,因为(a)拉普拉斯核忽略了左上角、左下角、右上角、右下角的细节信息。从结果图片来看,(a)模板锐化滤波结果会出现一些白斑,而(b)模板锐化滤波结果则相对细腻一些。因此,(b)锐化滤波模板更好一些。使用如下图中的(a)、(b)拉普拉斯核分别对(c)进行锐化处理,然后展示锐化后的图像,并对比哪个锐化后的图像更清晰,并分析其原因。分别用两个拉普拉斯核对(c)图进行拉普拉斯锐化滤波,并分析结果。这篇博文围绕如下问题展开。

2024-02-11 17:46:41 350

原创 RGB格式图像转HSI图像

色调表示颜色的种类或类别,对应于我们常说的颜色名称,如红色、绿色、蓝色等。H的取值范围通常是0到360度,其中0和360度对应于红色,120度对应于绿色,240度对应于蓝色,以此类推。饱和度的取值范围通常是0到1,其中0表示灰度图像,而1表示全彩饱和图像。考虑右侧一幅500×500的RGB图像,图像中的方块是完全饱和的红色、绿色和蓝色,并且每种颜色都处在最大亮度。色调灰度图像的四个部分灰度值是不一样的,红色的能量最低,绿色分量的能量其次,蓝色分量的能量最高。饱和度分量是完全饱和的,因此s分量的图片为白色。

2024-02-11 17:37:05 374 1

原创 傅里叶变换去除部分高频信息

在进行中心平移后,以直流分流所在中心为原点,分别获取25*25、50*50、100*100的正方形频率子带进行逆傅里叶变换,分析不同大小的正方形频率子带对空域图像恢复有什么影响?从结果来看,随着截取的范围越来越大,逆变换之后的图片会越来越清晰,原因在于,截取的范围越来越大,图片获得的边缘、细节、纹理信息会越来越多,图片自然也就越来越清晰。因此,在图片压缩过程中,可以舍弃一些傅里叶变换的高频系数,提高压缩比,但是不能舍弃全部的高频分量,或者基本不适用高频分量,否则,解压之后得到的图片会很模糊。

2024-02-11 17:30:04 383 1

原创 均值、中值、双边、自适应中值滤波

基于高斯滤波的一种改进的方法,能够更好的保护图像的边缘和细节,具体做法是既考虑了空间信息,也考虑了周围像素与中心像素灰度值的信息,即双边滤波的核函数是空间域核与像素范围域核的综合结果,在图像的平坦区域,像素值变化很小,那么像素差值接近于0,对应的像素范围域权重接近于1,此时空间域权重起主要作用,相当于进行高斯模糊;的一个重要假设就是噪声符合均值为0,方差为任意方差的高斯分布,对模板内部的像素值求平均之后,可以使噪声综合,使中心点的像素值不带有噪声,达到去噪的效果。Zmax:Sxy中最大的灰度值;

2024-02-11 17:20:37 1045 1

原创 均值滤波和锐化滤波的顺序问题

去除噪声时,均值滤波、高斯滤波、双边滤波可以去除高斯噪声;但是均值滤波去除高斯噪声时往往会导致图像丢失一些细节信息,可以用锐化滤波加强图像的细节信息。均值滤波对图像进行平滑,有助于去除噪声,但可能模糊图像的细节。如果交换均值滤波和拉普拉斯锐化滤波的顺序,在提取边缘信息时,拉普拉斯锐化滤波会将噪声也认为是边缘,因此就会出现给图片带来未知噪声的风险或者导致噪声放大。下面的代码分别从均值滤波->拉普拉斯滤波、拉普拉斯滤波->均值滤波两个方面出发,用实验结果证明那种顺序对处理图像的效果会更好一些。

2024-02-11 17:10:17 366 1

原创 傅里叶变换、离散余弦变换、频域滤波

可以看到,低频系数置0,结果图片只保留原图的边缘、细节、纹理等信息。而中频系数和高频系数置0,图片只是丢掉一些边缘、细节、纹理等信息,并不影响图片的可视化质量。可以看到,高频信息保留的是图片的边缘、细节、纹理等信息,且随着半径的增大,高频信息越来越少,能保留的边缘、细节、纹理等信息也越来越少。随着半径逐渐增大,低通滤波图片的清晰度也逐渐变高,这是因为半径越大,就可以保留更多的边缘、细节、纹理等信息,图片也就越来越清晰。对频域信息进行n=1、2、3、4的低通滤波,n越大,越近似于理想低通滤波。

2024-02-11 16:35:47 942 1

原创 sobel、prewitt、Robert、Laplacian锐化滤波

可以看到,prewitt可以增强图片的边缘信息,并且相比于sobel来讲,边缘像素没有像sobel那么亮,效果会更好一些。从运行结果可以看出,相比于前面的sobel和prewitt来说,边缘曝光度得到缓解,并且也增强了边缘信息。可以看出,边缘像素的曝光度过高的问题再一次得到缓解,并且也增强了图像的边缘信息。从结果图片可以看到,结果图片的边缘像素部分的会偏亮。

2024-02-11 15:56:59 395 1

原创 均值、高斯、双边滤波处理随机噪声图像

从运行结果可以看到,相比于均值滤波和高斯滤波,双边滤波的结果应该是比较好的,均值滤波和高斯滤波的结果则差不多,但是均值滤波的结果会有模糊的问题。所加的噪声可以是随机噪声、高斯噪声、椒盐噪声,本次实验只分析随机噪声。

2024-02-11 15:45:22 341 1

原创 均值滤波、高斯滤波处理高斯、椒盐噪声图像

从结果图片可以看到,均值滤波可以一定程度上解决高斯噪声的问题,但是随着模板的不断增大,结果图片也变得越来越模糊。对于高斯滤波来说,其解决高斯噪声问题的效果和均值滤波比起来还是有差距的(如下图所示),但是差距并不明显,所以重点放在模糊方面。随着高斯滤波模板的增大,高斯滤波的结果图片的模糊化并不明显,因为模板中的中心数值会比周围的数值大。我们都知道,均值滤波和高斯滤波是不适合用来处理椒盐噪声图像,结果也是如此,结果如下图所示,显然两种滤波器的在解决椒盐噪声方面显得有些乏力。处理高斯噪声运行结果及分析。

2024-02-11 15:27:16 476 1

原创 不同均值、标准差的高斯滤波模板处理高斯噪声

运行结果可以观察到,不同的σ所对应的高斯模板不同,滤波效果自然也不同。且随着σ的增大,高斯模板的中心值与周围的值的差距越来越小,越来越趋向于均值滤波,滤波图片也越来越模糊。

2024-02-11 15:18:17 400 1

原创 一维高斯函数

可以看出,不同的参数,其所对应的图像也不相同,标准差sigma的值越小,图像就越窄而尖,sigma越大,图像就越矮而宽。均值mu则描述了图像中心区域的位置。用matlab编写一维高斯函数的代码。

2024-02-11 15:00:49 302 1

原创 直方图均衡化和规定化

图像的直方图事实上就是图像的亮度分布的概率密度函数,是一幅图像的所有象素集合的最基本的统计规律。直方图反映了图像的明暗分布规律,可以通过图像变换进行直方图调整,获得较好的视觉效果。直方图均衡化是通过灰度变换将一幅图像转换为另一幅具有均衡直方图的图像,即在每个灰度级上都具有相同的象素点数的过程。处理后的图像直方图分布更均匀了,图像在每个灰度级上都有像素点。从处理前后的图像可以看出,许多在原始图像中看不清楚的细节在直方图均衡化处理后所得到的图像中都变得十分清晰。

2024-02-10 23:44:42 2263 1

原创 softmax函数的计算方法

它是二分类函数sigmoid在多分类上的推广,目的是将多分类的结果以概率的形式展现出来。为了确保各个预测结果的概率之和等于1。方法就是将转化后的结果除以所有转化后结果之和,可以理解为转化后结果占总数的百分比。下图为y=exp(x)的图像,我们可以知道指数函数的值域取值范围是零到正无穷。softmax第一步就是将模型的预测结果转化到指数函数上,这样保证了概率的非负性。首先,我们知道概率有两个性质:1)预测的概率为非负数;softmax就是将在负无穷到正无穷上的预测结果按照这两步转换为概率的。

2023-09-24 22:18:17 175 1

原创 BERT的核心,transformer

transformer是Google在论文中提出的一种将Attention思想发挥到极致的一种全新的模型,提出解决sequence to sequence问题的transformer模型,用全attention的结构代替了LSTM,抛弃了之前传统的encoder-decoder模型必须结合CNN或者RNN的固有模式,只用attention。

2023-09-24 20:24:46 38 1

原创 Word2Vec如何训练生成词向量

word2vec是如何得到词向量的?这个问题比较大。从头开始讲的话,首先有了文本语料库,你需要对语料库进行预处理,这个处理流程与你的语料库种类以及个人目的有关,比如,如果是英文语料库你可能需要大小写转换检查拼写错误等操作,如果是中文日语语料库你需要增加分词处理。这个过程其他的答案已经梳理过了不再赘述。得到你想要的processed corpus之后,将他们的one-hot向量作为word2vec的输入,通过word2vec训练低维词向量(word embedding)就ok了。

2023-09-24 15:05:37 44 1

原创 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding

另外,BERT的语言模型的数据规模要比GPT大。对于CNN结构来说,不同层级的神经元学习到了不同类别的图像特征,由底向上特征形成层级结构,图示1,最底层神经元学习到的是线段等特征,图示2,第二个隐层学到的是人脸五官的轮廓,第三层学到的是人脸的轮廓,通过三步形成了特征的层级结构,越是底层的特征越是所有不论什么领域的图像都会具备的比如边角线弧线等底层基础特征,越往上抽取的特征越与手头的任务相关。但是这些方法的缺陷是只使用了单向的语言模型来学习特征,对于比如问答这样的需要整句理解的任务是非常不好的。

2023-07-22 15:23:10 76

原创 欠拟合与过拟合

过拟合:不同训练模型的训练数据的特征通常是不一样的,因此如果训练模型对它的训练数据过度学习,则训练模型学习到的模型参数就更趋向于体现训练数据的特征,而训练数据之间是存在差异的,所以所有训练模型的输出的方差就会比较大,而所有模型输出的平均值可能和真实模型的输出相差比较小,所以bias比较小。欠拟合:由于模型没有得到足够的训练,训练集训练的模型参数不符合真实模型,即训练模型没有学到真实模型的模型参数,因此所有训练模型输出的平均值与真实值的差距比较大,所以bias比较大。训练出的模型”的输出值。

2023-07-01 12:06:46 34

原创 背包问题+算法实现

有N种物品和一个容量为V的背包,每种物品只能用一次。第i种物品的体积是v[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大。:有N种物品和一个容量为V的背包,每种物品都有无限件可用。第i种物品的体积是v[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大。:有N种物品和一个容量为V的背包。第i种物品最多有n[i]件可用,每件体积是v[i],价值是w[i]。

2023-06-09 21:25:01 59

原创 词向量 文本相似度计算

为把人们所理解的自然语言让计算机也能够认识并且操作,需要将人的语言(即文字)转换成计算机的语言(即数字)

2023-06-08 11:38:41 1416

原创 word2vec

绿色部分为非上下文词,按照之前定义的获取词向量时,只需考虑上下文词,但是优化时,我们不仅要考虑上下文词,而且还要考虑非上下文词,但是当语料库非常大的时候,非上下文词太多了,会导致计算灾难,因此只采样部分负样本,负样本即非上下文词。在词库中,在出现该词的地方标记为1,其它地方标记为0,这样,每一个词就唯一表示为一个向量,但是这种表示方式受限于词库的大小,当词库过于庞大时,每一个one-hot向量的维度也会很大,对于计算机的存储和计算来说是灾难性的。方法一:输出与特定词语的相关度比较高的词语。

2023-05-22 14:52:28 92 1

原创 高斯消元法求解线性方程组

2、求比值、初等变换:1e-10,当abs(aii)<eps时,在计算机中就认为aii==0,当abs(aii)>=eps时,即aii!1、选列主元:对系数矩阵主对角线上的每一个元素aii,找到该元素所在列中对角线以下(包括aii)所有元素中的最大值,将aii所在行与最大元素所对应行交换,完成选列主元。3、经过第二部计算之后,增广矩阵变成一个行阶梯形矩阵,记变换之后的增广矩阵为L,则有Lx=b。假设系数矩阵的维数为A(n,n),常数矩阵的维数为b(n,1),增广矩阵的维数为A_b(n,n+1)

2023-05-19 09:08:14 437 2

空空如也

空空如也

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

TA关注的人

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