- 博客(22)
- 收藏
- 关注
原创 Matplotlib.pyplot绘图
本文介绍了Matplotlib库的基本绘图逻辑和二维图像绘制方法。主要内容包括:1) 创建画布(plt.figure);2) 绘制图像(折线图、散点图、柱状图等);3) 设置图像属性(坐标轴、标题等);4) 显示图像(plt.show)。还讲解了如何使用plt.subplot划分绘图区域,并提供了完整的代码示例。Matplotlib是一个功能强大的Python绘图库,掌握这些基础操作可以帮助用户创建各种高质量的二维可视化图表。
2026-01-06 01:02:13
85
原创 模型训练过程报出nan的错误
摘要:本文分析了深度学习模型训练过程中出现nan值的常见原因及解决方案。直接原因包括除以零、对数负数、开平方负数及梯度爆炸等数值计算问题;本质原因则涉及数据质量、模型结构和优化算法参数等问题。解决方案涵盖数据预处理(缺失值处理、异常值裁剪)、调整模型参数(降低学习率、梯度裁剪)以及优化算法改进(使用自适应优化器如Adam)。这些方法能有效预防和解决训练过程中的数值不稳定问题,提升模型训练效果。
2026-01-05 15:18:37
230
原创 python赋值与复制
本文介绍了Python中赋值与复制的区别及常见错误。赋值操作会共享对象引用,修改新变量会影响原变量;浅复制(copy.copy)创建新对象但共享内部元素引用,修改嵌套元素会影响原对象;深复制(copy.deepcopy)完全创建独立的新对象。文章通过列表示例演示了不同操作的效果,建议根据对象类型和需求选择适当方式,避免因共享引用导致的意外修改。
2025-12-31 18:34:27
213
2
原创 动手学深度学习之第三章第二部分阅读笔记
本文详细讲解了PyTorch中线性回归的简洁实现方法,重点介绍了torch.utils.data模块的关键组件。主要内容包括:1) 线性回归的简洁实现流程分为数据转换、模型定义和训练三部分;2) Dataset抽象基类的继承要求及自定义数据读取实现;3) DataLoader的批处理和多进程功能;4) TensorDataset的便捷数据封装;5) SubsetRandomSampler的数据划分应用。通过具体代码示例展示了如何使用这些工具实现数据预处理、模型训练和验证集划分,为深度学习实践提供了实用的技术
2025-12-28 21:49:12
1068
原创 Python常见的数据结构:从入门到精通
摘要:本文详细介绍了Python中元组和列表两种基础数据结构。元组是不可变对象,适合存储稳定数据,可通过tuple()、切片或拼接创建新元组。列表是可变对象,支持多种数据类型混合存储,提供append/extend/insert等修改方法。文章还对比了两种结构的访问方式(索引/切片)、转换方法(与set/dict转换)、复制机制(浅/深拷贝)以及特殊列表生成技巧(随机分布、等差/等比数列)。此外,还探讨了迭代器、生成器与可迭代对象的关系,解释了enumerate/zip/items等函数的底层实现原理。
2025-12-25 21:12:36
865
原创 Python中的多线程和多进程:从入门到精通
Python多线程与多进程对比分析 摘要:本文探讨了Python中进程与线程的核心区别。进程拥有独立内存资源,适合CPU密集型任务,而线程共享进程内存,适合I/O密集型任务。Python特有的GIL锁限制同一时刻只能执行一个线程,可通过三种方式规避:使用非CPython解释器、调用C语言扩展库或改用多进程。文章详细展示了线程和进程的创建方法,包括手动创建线程、线程池、进程池和Queue收集结果等技术方案。针对数据分析场景,提供了完整的多线程/多进程处理嵌套列表的代码示例,包括数据分割、并行处理和结果合并等关
2025-12-25 21:02:37
503
原创 如何使用`np.where()`和`Counter()`来优化代码
本文探讨了Python编程中处理数据时的效率优化问题。通过分析一段低效的图数据处理代码,指出了其存在的嵌套循环过多、效率低下、逻辑错误和代码冗余等问题。文章重点介绍了两种优化方法:NumPy库中的np.where()函数和collections模块中的Counter()类。np.where()通过向量化操作和减少循环显著提高效率,适用于条件索引和元素替换;Counter()则简化了频率统计过程,避免了多次调用list.count()。优化后的代码减少了循环嵌套,提高了执行效率,使代码更加简洁易读。性能对比显
2025-12-23 15:08:50
898
原创 如何理解偏差、方差、残差?
本文深入解析机器学习中的偏差(Bias)、方差(Variance)和残差(Residual)概念。偏差衡量模型预测期望与真实值的差异,反映拟合能力;方差表示预测值的变化程度,体现模型对数据变化的敏感性;残差则是预测值与真实值的直接差异。三者之间存在权衡关系:低偏差高方差易过拟合,高偏差低方差则欠拟合。文章还讨论了这些概念在交叉验证中的应用,强调理解这些概念对模型选择、参数调整和性能评估的重要性。通过平衡偏差和方差,可以获得泛化能力更好的模型。
2025-12-23 00:58:43
708
原创 动手学深度学习之第三章的第一部分笔记
本文介绍了线性回归模型的实现过程,主要包括三个部分:1)线性回归的基本概念和数学表示,区分了模型与算法的区别;2)从零开始实现线性回归,包括数据生成、读取、参数初始化和模型定义;3)训练过程,涉及损失函数、优化算法和完整训练循环的实现。作者通过PyTorch代码展示了如何构建和训练一个简单的线性回归模型,包括添加噪声的合成数据生成、小批量数据迭代器、随机梯度下降优化等关键步骤。文章最后展示了训练后的参数结果,验证了模型的正确性。
2025-12-23 00:47:49
982
原创 Python中函数与全局对象间的关系
本文探讨了Python中函数与全局对象的交互关系。主要内容包括:1) 函数内部可以调用全局函数和变量,局部同名对象会覆盖全局对象;2) 修改全局变量时,可变对象可直接修改,不可变对象需用global声明;3) 全局访问函数内对象的方法:通过返回值、global声明或存入全局可变对象;4) 函数内创建的嵌套函数可作为一等对象传递。文章通过代码示例详细说明了各种交互场景的实现方式,特别强调了global和nonlocal关键字的使用场景,以及函数作为对象传递时的注意事项。
2025-12-22 19:16:43
279
原创 动手学深度学习之第二章阅读笔记
本文介绍了PyTorch中数据操作、预处理、线性代数和自动微分的基础知识。主要内容包括:1)张量的创建、属性查看和运算方法;2)数据预处理中缺失值处理和格式转换;3)线性代数的基本运算规则和范数计算;4)自动微分的实现流程,包括参数初始化、计算图构建和反向传播。文章提供了PyTorch与NumPy的互操作方法,并详细说明了各种数学运算的PyTorch实现方式,为深度学习实践奠定了技术基础。
2025-12-20 12:45:32
908
原创 Rtools实战指南:从C/C++编译到R语言调用全解析
本文介绍了Rtools工具包在R语言中调用C/C++代码的原理与应用。Rtools由编译器、链接器和控制器组成,能够将C++代码编译为二进制文件,再链接生成R可调用的.dll文件。文章解析了Rtools的编译流程,并对比了与rpy2包的区别:Rtools解决编译型语言嵌入解释型语言的问题,而rpy2是在Python中调用R解释器。最后提供了Rtools的官方下载链接和安装教程资源。
2025-12-11 23:53:06
332
原创 深入理解Unix_Linux中的fork系统调用:原理与实践
操作系统已经为父进程分配了加载code_file和File_file的内存以及cpu(计算资源)。执行代码中的if_else的条件判断,父进程执行pid>0的代码,子进程执行pid=0的代码。(pid是是父进程创建子进程时,返回的一个变量)父进程和子进程的执行过程中会分别在内存中创建存储结果的内存和指向结果的文件名称。(下述仅仅是我的理解:将code_file提取到内存的这个进程,负责编辑code_file,以及将code_file从内存转移到磁盘,并不负责执行code_file。
2025-11-25 22:56:39
465
原创 pandas_read_csv索引参数详解
本文详解pandas.read_csv索引参数使用问题。通过实际案例指出未正确设置index_col参数会导致数据框转置错误,表现为索引变为默认整数序列。给出解决方案:显式指定index_col=0使第一列成为索引列。文章还总结常见应用场景(带表头/无表头/多层索引CSV)、避坑指南(显式参数设置、数据预览)和扩展技巧(结合skiprows/usecols处理复杂数据)。正确设置这些参数是数据清洗的基础,能避免隐式错误。
2025-11-24 23:58:36
305
原创 STAGATE与GraphST工具安装完全指南
本文档详细介绍了STAGATE和GraphST两款空间转录组数据分析工具的安装流程。STAGATE安装需要Python 3.7环境、R基础配置及rmclust包,GraphST则要求Python 3.8、CUDA和PyTorch环境。文档提供了分步安装指南,包括conda环境创建、依赖包安装、主程序配置等关键步骤,并针对常见错误(如rpy2版本冲突、R依赖错误等)给出了具体解决方案。安装过程中需特别注意版本匹配问题,如rpy2需严格指定3.4.5版本,PyTorch需与CUDA版本对应。
2025-11-24 01:47:22
184
1
原创 单细胞转录组数据的模拟与分析
本文探讨了单细胞转录组数据的模拟与分析过程。首先基于细胞类型与标记基因的关系以及负二项分布假设,构建了包含500个细胞和1000个基因的模拟数据集。随后介绍了数据预处理流程,包括表达深度归一化、对数化转换和特征基因选择,其中特征基因通过标准化离散度指标进行筛选。文章以原理介绍为主,同时涉及相关实现方法,旨在构建真实可信的单细胞转录组数据模拟框架。
2025-11-22 16:58:05
32
原创 Linux和Windows对rpy2的安装流程
本文介绍了rpy2包的两种安装方法及其在虚拟环境中的配置问题。第一部分详述了基于Linux和Windows系统的rpy2安装流程,指出Windows环境下需要额外配置R_HOME环境变量以解决路径继承问题。第二部分分析了conda虚拟环境与系统环境变量之间的关系,解释了虚拟环境只继承系统PATH变量而不继承自定义变量的特性。文章通过实例说明了在Windows系统中,当虚拟环境中的R路径不完整时,需要通过Python代码临时设置环境变量来确保rpy2能正确调用R环境。全文重点阐述了环境变量在软件调用中的关键作
2025-11-19 18:29:15
511
1
原创 安装包或复现包常见问题与原因
本文分享了安装Python包的详细流程及常见问题。首先介绍了虚拟环境的创建和管理方法,包括版本更新和环境删除。然后详细说明了依赖包安装、本地化安装以及Jupyter Notebook集成等步骤。特别针对需要额外配置的包(如rpy2和GPU版PyTorch),指出了除pip安装外还需设置环境变量的注意事项。文章总结了作者在复现实验过程中遇到的问题和解决方案,为读者提供了实用的安装指南和技术要点。
2025-11-16 15:28:29
304
原创 一文搞懂空间转录组数据位点的空间信息和形态学图像之间的关系
本文探讨了空间转录组数据分析中多模态信息整合的关键问题。首先分析了空间位置信息的两种表现形式:阵列位置(array_row/array_col)和像素位置(pixel_x/pixel_y)。其次介绍了形态学图像分类(全/高/低分辨率)及其缩放转换方法,详细阐述了如何根据缩放因子计算位点在不同分辨率图像中的位置和大小。文章旨在为整合基因表达、空间位置和形态学图像数据提供方法学指导,帮助研究人员正确处理空间转录组数据的多模态特征。
2025-11-14 01:29:45
437
原创 模拟含有随机噪声,并具有规律性分布特征的二维空间分布数据
当模拟数据中的ϵ彼此相互独立,并且服从相同参数的正态分布,学习过程采用线性模型假设,就能很好的学习数据中变量之间对应关系。这样的数据往往与真实数据差异较大。
2025-11-07 00:56:25
106
原创 思维导图制作:NEO4j安装过程及存在问题的解决方案
打开环境变量后,进入的页面如下,首先在系统变量中新建CLASSPATH变量,该变量对应的值为.;以及另一个变量JAVA_HOME,该变量对应的值为jdk文件夹的位置。最后调出win+r,输入cmd,进入与系统交互的页面之后,输入neo4j.bat console之后便进入自动安装。然而,我的文件是不被电脑所识别的,并且需要选择一个软件才能打开它。下载页面中除了要注意下载Neo4j相匹配版本的java版本编号外,还需指导要下载的文件格式是msi而不是exe。然后,在调出的交互页面中,输入msiexec /
2025-03-16 02:29:35
697
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅