
python
文章平均质量分 86
wendy_ya
控制类专业在读研究生
展开
-
箱线图详细介绍及绘制箱线图和复现箱线图的步骤详解
箱线图(Box Plot),也称为盒须图、箱形图、盒式图,是一种用于显示数据分布情况的图表。箱线图通常由五条线组成,包括最小值、第一四分位数、中位数、第三四分位数和最大值。其中,箱体表示了数据的四分位数范围,上下各有一个“盒须”表示了数据的范围。箱线图可以用来检测数据的异常值和数据分布的形状,以及数据集的离散程度。如果数据集中存在离群值,箱线图可以帮助识别它们,因为离群值会显示为图表上的单个数据点。通过比较不同数据集的箱线图,可以快速了解它们的分布情况和中位数、四分位数的差异。原创 2023-04-03 15:54:37 · 3226 阅读 · 0 评论 -
FGAN介绍及代码实现——基于生成对抗网络的缺失数据填补
包括GAIN在内的许多现有的方法都认为标签预测是一个数据填充后的问题,也就是说,他们首先填充数据,然后开发一个预测模型,就好像数据是完全观测的。数据填充完后,再使用新的预测器进行标签预测。将数据填充与标签预测两个任务分割开来。然而数据填充与标签预测之间的脱节很可能会损害标签预测的准确性,但我们最关心的任务实际上是标签预测任务的性能。在本节中,我们提出了一个数据填充与标签预测的统一框架,将数据填充和标签预测两个任务结合在一起。原创 2023-02-28 10:50:48 · 1739 阅读 · 3 评论 -
利用python的matplotlib库进行科研绘图方法总结(保存矢量图)
当format未设置,而输入的fname包含文件格式的扩展时,保存的文件格式即为该扩展。故上述的保存矢量图的代码中format参数可不进行设置。设置之后,jupyter notebook中得到的图片将显示为svg形式,,一般折线图的dpi设置为600,而图像的dpi设置为300。实现保存svg矢量图的功能。原创 2023-02-23 11:12:01 · 6680 阅读 · 1 评论 -
利用CNN对时序数据进行分类
数据集利用的是CPSC2020数据集。训练数据包括从心律失常患者收集的10个单导联心电图记录,每个记录持续约24小时。下载完成后的TrainingSet数据集包括两个文件夹,分别是data和ref。data和ref文件夹内分别有10个mat文件。data文件夹存储数据文件,每个文件以mat格式存储,n∗1n*1n∗1数组表示;ref文件夹为标签文件夹,每个文件以mat文件存储,结构体存储,包括S_ref,V_ref两个n*1数组,分别存储对应标签(S,V)的位置;采样率为 400。原创 2023-02-16 11:31:33 · 1015 阅读 · 0 评论 -
基于机器学习的心脏病预测方法(12)——极端梯度提升树(eXtreme Gradient Boosting)
XGBoost是陈天奇提出的一个端对端的梯度提升树系统,该算法在GBDT的基础之上,在算法层面和系统设计层面都做了一些创新性的改进,可以把XGBoost看作是GBDT更好更快的实现。XGBoost在许多机器学习以及数据挖掘的任务中表现惊艳,2015年,kaggle竞赛平台上发布了29个挑战获胜的解决方案,其中17个解决方案用了XGBoost。由于XGBoost在实际任务中的良好表现,因此搞清XGBoost的实现细节对于在实践中应用XGBoost是非常有帮助的。原创 2023-02-15 11:19:28 · 1096 阅读 · 0 评论 -
基于机器学习的心脏病预测方法(13)——人工神经网络(ANN)【本专栏完结】
ANN是指由大量的处理单元(神经元) 互相连接而形成的复杂网络结构,是对人脑组织结构和运行机制的某种抽象、简化和模拟。人工神经网络(Artificial Neural Network,简称ANN ),以数学模型模拟神经元活动,是基于模仿大脑神经网络结构和功能而建立的一种信息处理系统。本文介绍的是最简单的一种神经网络,仅采用全连接层组成。基于机器学习的心脏病预测方法(10)——卷积神经网络(CNN)。原创 2023-02-15 11:13:32 · 2137 阅读 · 3 评论 -
基于机器学习的心脏病预测方法(12)——决策树(Decision Tree)
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一度量是基于信息学理论中熵的概念。原创 2023-02-15 09:23:59 · 2878 阅读 · 1 评论 -
基于机器学习的心脏病预测方法(11)——梯度提升机(GBM)
GBM(Gradient Boosting Machine)算法是Boosting(提升)算法的一种。主要思想是,串行地生成多个弱学习器,每个弱学习器的目标是拟合先前累加模型的损失函数的负梯度, 使加上该弱学习器后的累积模型损失往负梯度的方向减少。且它用不同的权重将基学习器进行线性组合,使表现优秀的学习器得到重用。GBM属于加法模型,也称 MART(muliple additive regression trees)。原创 2023-02-14 18:31:00 · 1155 阅读 · 0 评论 -
PhysioNet2017分类的代码实现
PhysioNet2017数据集介绍可参考文章:https://wendy.blog.youkuaiyun.com/article/details/128686196。本文主要介绍利用PhysioNet2017数据集对其进行分类的代码实现。原创 2023-02-13 08:37:38 · 2744 阅读 · 2 评论 -
python简单案例(1)——实现读取csv文件并按照列的从大到小进行排序
从本文开始,本系列将介绍python简单案例并进行代码展示,本文的案例是利用pandas库实现读取csv文件并按照列的从小到大进行排序。原创 2023-02-09 17:33:50 · 2929 阅读 · 0 评论 -
tensorboard拒绝连接的解决方法总结(如何使用tensorboard查看可视化图像总结)
当使用tensorflow保存了tensorboard的相关信息后(tensorflow如何使用tensorboard可视化工具库可以参考我的上一篇文章:https://blog.youkuaiyun.com/didi_ya/article/details/128932701,如下图所示。此时,如何调用tensorboard查看可视化图像成为关键。原创 2023-02-08 18:27:52 · 4609 阅读 · 0 评论 -
tensorflow可视化工具库tensorboard使用方法详解
对大部分人而言,深度神经网络就像一个黑盒子,其内部的组织、结构、以及其训练过程很难理清楚,这给深度神经网络原理的理解和工程化带来了很大的挑战。为了解决这个问题,tensorboard应运而生。Tensorboard是tensorflow内置的一个可视化工具,它通过将tensorflow程序输出的日志文件的信息可视化使得tensorflow程序的理解、调试和优化更加简单高效。原创 2023-02-08 14:24:52 · 3397 阅读 · 0 评论 -
PhysioNet2017数据集介绍
PhysioNet2017数据集主要用于对记录是否显示正常窦性心律、心房颤动(AF)、替代性心律或过于嘈杂而无法分类的记录进行分类。将单导联心电图记录分类为正常节律、心房颤动(AF)、其他节律或噪声记录心律失常起源:房性心律失常、交界性心律失常或室性心律失常;心率:心动过速(成人>100次/分(bpm))或心动过缓(成人原创 2023-01-14 17:27:28 · 3697 阅读 · 0 评论 -
基于PyTorch的生成对抗网络进阶(2)——利用PyTorch和GAN实现TripleGAN对手写数字生成和分类
在传统的GAN中,G、D双方博弈的过程使得D无法同时兼容两个角色,既判别输入的样本是来自真实数据分布还是生成器,同时预测数据的类标签。这样的做法只能关注到数据的一部分信息,即数据的来源,而无法考虑到数据的类标签信息。为了解决这个问题,在标准的GAN的基础上引入了分类器C,这样它就有了三个部分G、D和C,因为取名TripleGAN。G和C分别对图像和标签之间的条件分布进行特征描述,而D只需要专注于判别输入样本的来源真假。可以实现很好的分类效果。原创 2022-12-26 11:47:42 · 1004 阅读 · 0 评论 -
PyTorch可视化工具库PyTorchViz下载安装详解
本文介绍PyTorch可视化工具库PyTorchViz的下载与安装以及测试代码。原创 2022-12-26 11:05:51 · 2095 阅读 · 2 评论 -
神经网络科研绘图可视化工具
本文介绍10种科研绘图可视化工具。原创 2022-12-15 10:39:30 · 1899 阅读 · 0 评论 -
PyTorch实战案例(五)——利用PyTorch实现循环神经网络RNN算法对mnist数据集分类
本文将介绍利用PyTorch实现循环神经网络RNN算法对mnist手写数字数据集进行分类。原创 2022-12-02 15:54:13 · 2826 阅读 · 0 评论 -
pytorch与keras的相互转换(代码以LeNet-5为例)
本文以LeNet-5为例,简单介绍pytorch与keras的相互转换。原创 2022-07-29 18:33:34 · 5641 阅读 · 1 评论 -
NAOMI代码详解
上文介绍了NAOMI: Non-Autoregressive MultiresolutionSequence Imputation(非自回归多分辨率序列填补)论文详解,链接如下:https://blog.youkuaiyun.com/didi_ya/article/details/125842598,本文介绍其代码实现。原创 2022-07-20 19:42:01 · 822 阅读 · 0 评论 -
基于GAN的时序缺失数据填补前言(1)——RNN介绍及pytorch代码实现
本专栏将主要介绍基于GAN的时序缺失数据填补。提起时序数据,就离不开一个神经网络——循环神经网络(Recurrent Neural Network, RNN)。RNN是一类用于处理序列数据的神经网络。RNN对具有序列特性的数据非常有效,它能挖掘数据中的时序信息。因为在介绍时序缺失数据填补,就离不开RNN的身影。本文将介绍循环神经网络RNN,并再次基础上完成基于pytorch的简单RNN代码实现,帮助更加深入了解RNN。关于循环神经网络RNN的介绍可以参考这篇文章:循环神经网络RNN入门介绍。...原创 2022-07-07 17:04:12 · 4656 阅读 · 10 评论 -
Wasserstein Slim GAIN with Gradient Penalty(WSGAIN-GP)介绍及代码实现——基于生成对抗网络的缺失数据填补
WSGAIN-GP全称Wasserstein Slim GAIN with Gradient Penalty,其目的在于减少影响普通GAN以及影响WGAN的主要警告,即因权重剪裁而产生的不良行为。WSGAIN-GP的架构与WSGAIN-CP几乎相同。WSGAIN-CP的架构可以参考文章:Wasserstein Slim GAIN with Clipping Penalty(WSGAIN-CP)介绍及代码实现——基于生成对抗网络的缺失数据填补。WSGAIN-GP的生成器与WSGAIN-CP的生成器完全相同。.原创 2022-07-06 10:36:06 · 1223 阅读 · 1 评论 -
Wasserstein Slim GAIN with Clipping Penalty(WSGAIN-CP)介绍及代码实现——基于生成对抗网络的缺失数据填补
WSGAIN-CP全称Wasserstein Slim GAIN with Clipping Penalty,其目的在于减少影响Slim GAN的主要问题,如模式崩溃和梯度消失。WSGAIN-CP的架构与SGAIN几乎相同。SGAIN的架构可以参考文章:Slim GAIN(SGAIN)介绍及代码实现——基于生成对抗网络的缺失数据填补。WSGAIN-CP的生成器与SGAIN的生成器相同,它们甚至共享相同的损失函数,可参考前文。...原创 2022-07-01 16:01:59 · 926 阅读 · 0 评论 -
Slim GAIN(SGAIN)介绍及代码实现——基于生成对抗网络的缺失数据填补
SGAIN网络架构如下:与GAIN的架构不同,SGAIN中没有Hint Generator,因此不会产生Hint Matrix(提示矩阵)。SGAIN的架构甚至更薄,因为生成器和判别器神经网络都只有两层,而在GAIN中它们都有三层。SGAIN在生成器和判别器的输出层使用双曲正切激活函数(又名tanh)。使用tanh而不是sigmoid激活函数的理由有两方面:SGAIN的体系结构还调用了两次判别器,一次针对真实数据,一次针对虚假数据。这使得SGAIN的架构更接近于Goodfellow等人在GAN中使用的架.原创 2022-06-27 20:45:53 · 1984 阅读 · 2 评论 -
GAIN的代码实现(4)——基于GAN的Spam数据集缺失数据填补(序)【改进版】
本文在上文基础上,介绍一下基于GAN的Spam数据集缺失数据填补改进版。希望先看完上文,再看本文,且以本文为主。Spam上文已经介绍过了,这里不再赘述。原创 2022-06-27 16:53:34 · 1422 阅读 · 7 评论 -
简单介绍一下tensorflow与pytorch的相互转换(主要是tensorflow转pytorch)
本文以一段代码为例,简单介绍一下tensorflow与pytorch的相互转换(主要是tensorflow转pytorch),可能介绍的没有那么详细,仅供参考。由于本人只熟悉pytorch,而对tensorflow一知半解,而代码经常遇到tensorflow,而我希望使用pytorch,因此简单介绍一下tensorflow转pytorch,可能存在诸多错误,希望轻喷~.........原创 2022-06-27 15:27:04 · 13916 阅读 · 0 评论 -
基于PyTorch的生成对抗网络实战(7)——利用Pytorch搭建SGAN(Semi-Supervised GAN)生成手写数字并分类
通过强制判别器网络输出分类标签,我们将生成对抗网络(GAN)扩展到半监督学习(Semi-Supervised)。我们在输入属于N类之一的数据集上训练生成器G和判别器D。在训练时,使用D来预测输入属于N+1类中的哪一个,其中一个额外的类被添加到G的输出中。我们表明,这种方法可以用来创建一个更有效的数据分类器,它允许生成比常规GAN更高质量的样本。论文可参考《Semi-Supervised Learning with Generative Adversarial Networks》。......原创 2022-06-25 11:28:38 · 1720 阅读 · 0 评论 -
GAN可视化工具——GAN Lab介绍
目录一、GAN Lab介绍二、GAN Lab组成部分三、GAN Lab训练步骤3.1 选择数据分布3.2 模型参数设置3.3 开始训练3.4 模型评价四、演示示例GAN Lab: An Interactive, Visual Experimentation Tool for Generative Adversarial Networks一、GAN Lab介绍GAN Lab是谷歌开发的一款开源的GAN可视化工具,使用GAN Lab不需要安装过程、不需要深度学习库PyTorch或TensorFlow等、也原创 2022-05-19 17:50:27 · 2137 阅读 · 0 评论 -
基于PyTorch的生成对抗网络实战(5)——利用Pytorch搭建WGAN生成手写数字
关于WGAN的详细介绍可以参考文章:GAN生成对抗网络入门介绍及DCGAN、WGAN等介绍。这里只介绍一下WGAN在代码方面与GAN或DCGAN的区别。在论文《Wasserstein GAN》中,作者推了一大堆公式定理,最终给出了改进的算法实现流程,而改进后相比原始GAN的算法实现流程却只改了四点:WGAN既可在DCGAN的基础上进行改进,也可在普通GAN的基础上进行改进。这里为简单起见,在普通GAN的基础上改进。而在DCGAN基础上改进的过程与其基本相似。......原创 2022-06-23 19:51:33 · 851 阅读 · 0 评论 -
基于PyTorch的生成对抗网络实战(4)——利用Pytorch搭建LSGAN生成手写数字
目录一、生成器二、判别器三、迭代训练过程四、结果演示五、完整代码LSGAN的架构与DCGAN基本类似,只是改了损失函数,将损失函数从BCEloss改为MSEloss。一、生成器生成器类与DCGAN基本相同,代码如下:class Generator(nn.Module): def __init__(self): super(Generator, self).__init__() self.init_size=img_size//4 # //表示整数除法原创 2021-10-30 14:39:56 · 1065 阅读 · 0 评论 -
基于PyTorch的生成对抗网络实战(3)——利用Pytorch搭建CGAN生成手写数字并贴上标签
目录一、生成器二、判别器三、迭代训练过程四、结果演示五、完整代码CGAN的详细描述可以参考:https://blog.youkuaiyun.com/didi_ya/article/details/115340980,下面直接进入正题。一、生成器生成器类代码:class Generator(nn.Module): def __init__(self): super(Generator, self).__init__() self.label_emb = nn.Embedd原创 2021-10-27 15:08:55 · 770 阅读 · 0 评论 -
基于PyTorch的生成对抗网络实战(2)——利用Pytorch搭建DCGAN生成手写数字
目录一、生成器二、判别器三、迭代训练过程四、结果演示五、完整代码DCGAN的详细描述可以参考:https://blog.youkuaiyun.com/didi_ya/article/details/115280757,这里直接进入正题。一、生成器生成器类代码:class Generator(nn.Module): def __init__(self): super(Generator, self).__init__() self.init_size=img_size//4原创 2021-10-26 15:47:58 · 577 阅读 · 0 评论 -
基于Keras的生成对抗网络(6)——利用Keras搭建CycleGAN实现风格迁移
目录0、前言一、CycleGAN介绍及其结构二、函数代码2.0 前提准备2.1 生成器Generator2.2 判别器Discriminator2.3 train函数三、结果演示四、完整代码0、前言CycleGAN的英文全称是Cycle GAN,即循环生成对抗网络,论文链接:https://arxiv.org/abs/1703.10593。一、CycleGAN介绍及其结构CycleGAN 是一种无需成对示例便可自动进行图像到图像转换的技术。这些模型是采用一批无需关联的来自源域和目标域的图像,以一种无原创 2021-04-26 20:29:09 · 1246 阅读 · 0 评论 -
基于Keras的生成对抗网络(5)——利用Keras搭建LSGAN生成手写体数字
目录0、前言一、LSGAN介绍及其结构二、函数代码2.1 生成器Generator2.2 判别器Discriminator2.3 train函数三、结果演示四、完整代码五、常用技巧0、前言LSGAN的英文全称是Least Squares GAN,即最小二乘GAN,论文链接:https://arxiv.org/abs/1611.04076,LSGAN针对的是标准GAN生成的图片质量不高以及训练过程不稳定这两个缺陷进行改进。改进方法就是将GAN的目标函数由交叉熵损失换成最小二乘损失,而且这一个改变同时解决了原创 2021-04-24 21:38:10 · 496 阅读 · 0 评论 -
基于Keras的生成对抗网络(4)——利用Keras搭建ACGAN生成手写体数字并贴上标签
0、前言上两篇文章分别介绍了DCGAN 和CGAN的基本原理和代码示例,同时也反映出二者的一些缺点,比如DCGAN无法为图像添加标签进行分类,CGAN生成图像效果不好等。这一篇就来一下DCGAN与CGAN的综合版本——ACGAN。一、ACGAN介绍及其结构1.1 ACGAN介绍ACGAN全称Auxiliary Classifier GAN,是在CGAN基础上的扩展,通过对判别器进行改进实现了图像分类的功能,论文链接:https://arxiv.org/abs/1610.09585原始GAN网络的功原创 2021-04-23 21:58:59 · 910 阅读 · 0 评论 -
基于Keras的生成对抗网络(3)——利用Keras搭建CGAN生成手写体数字并贴上标签
目录0、前言一、CGAN介绍及其结构1.1 CGAN介绍1.2 CGAN结构二、函数代码2.1 生成器Generator2.2 判别器Discriminator2.3 train函数三、结果演示四、完整代码0、前言由于很多时候我们不仅想要数据,更想获取数据的标签,因此CGAN应运而生。一、CGAN介绍及其结构1.1 CGAN介绍CGAN全称Conditional Generative Adversarial Nets,论文链接:https://arxiv.org/abs/1411.1784。CG原创 2021-03-31 08:23:04 · 700 阅读 · 0 评论 -
基于Keras的生成对抗网络(2)——利用Keras搭建DCGAN生成手写体数字
目录0、前言一、DCGAN介绍及其结构1.1 DCGAN介绍1.2 DCGAN结构1.3 DCGAN的优点1.4 详细介绍二、函数代码2.0 训练前的准备2.1 生成器Generator2.2 判别器Discriminator2.3 train函数三、结果演示四、完整代码五、常见问题汇总六、【拓展】利用DCGAN实现三通道彩色图像生成0、前言上一篇介绍了GAN 的基本原理以及相关的概念和代码示例,同时也反映出GAN 的一些缺点,比如说训练不稳定,生成过程不可控,不具备可解释性等。这一篇就来看看GAN 的原创 2021-03-28 18:37:44 · 671 阅读 · 0 评论 -
基于PyTorch的生成对抗网络实战(6)——利用Pytorch搭建WGAN-GP生成手写数字
WGAN-GP (Wasserstein GAN using gradient penalty),即在WGAN的基础上加入gradient penalty梯度惩罚项,可参考论文:《Improved Training of Wasserstein GANs》。原创 2022-06-23 20:52:52 · 1498 阅读 · 0 评论 -
GAIN的代码实现(3)——基于GAN的Spam数据集缺失数据填补(序)
上文(GAIN的代码实现(2)——基于GAN的Spam数据集缺失数据填补)介绍了利用生成对抗网络进行Spam数据集缺失数据填补,本文将在此基础上,介绍利用生成对抗网络进行Spam数据集缺失数据填补的另一种方法。......原创 2022-06-16 19:11:47 · 1671 阅读 · 1 评论 -
缺失数据填补基础方法(3)——Multiple Imputation by Chained Equations (MICE)
MICE(链式方程多重填补)是一种多重填补,由于其易于实施,并且能够保持无偏效应估计和有效推断,被公认为填补缺失流行病学数据的主要策略。因此,MICE进行多重回归填补。MICE是一种多重填补方法,其中缺失值被多次填充以创建完整的数据集。...原创 2022-06-08 11:17:26 · 15873 阅读 · 1 评论 -
缺失数据填补基础方法(2)——Random Forest (MissForest)填补
MissForest以迭代的方式使用随机森林来填补缺失值[1]。默认情况下,填补器开始用最少数量缺失值来填补缺失值的列(它应该是变量)——我们称之为候选列(candidate column)。原创 2022-06-07 16:29:13 · 6243 阅读 · 1 评论