自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 资源 (1)
  • 收藏
  • 关注

原创 论文中快速插入公式的方法

公式

2024-04-09 21:45:26 213

原创 python中(n, 1)和(n,)之间的区别

如果提供了 (n, 1) 形状的数组,可能会引起错误或不符合预期的行为。(n, 1) 表示一个二维数组,其中 n 是行数,1 是列数。在 (n, 1) 形状的数组中,你需要使用两个索引来访问元素,例如 array[i, 0]。二维 (n, 1) 数组在进行某些操作时会遵循矩阵的运算规则,例如在矩阵乘法中。一维 (n,) 数组在运算时更加灵活,能够广泛地应用在各种需要一维序列的场合。在 (n,) 形状的数组中,你只需要一个索引,例如 array[i]。(n,) 是一维的,这是最基本的数组形式。

2024-03-09 15:07:17 293

原创 AttributeError: module ‘tensorflow‘ has no attribute ‘__version__‘

force-reinstall:通常,如果已经安装了请求的包的最新版本,pip将不会重新安装包。使用这个参数,pip会忽略包的当前安装状态,强制重新下载并安装指定版本的包,即使它已经是最新版本。这对于解决安装问题或损坏的包文件特别有用。可能的原因是环境中安装了与标准TensorFlow包不同的包,或者可能是TensorFlow没有正确安装。解决方法如下,亲测有效。

2024-02-25 19:25:37 814

原创 简单版 git快速上手使用 clone项目 新建/切换分支 提交修改

Git是一个广泛使用的版本控制系统,允许多个用户跟踪文件的更改,并协作开发项目。首先确定自己电脑已经安装了git,具体安装步骤请查找教程,应该不难。以windows电脑为例,安装完后在搜索栏搜索git会出现先解释一下这些应用区别和功能:Git Bash: 提供了一个Bash环境,在Windows系统中运行Git命令行工具。Bash是一种Unix shell和命令语言,Git Bash是专门为Git命令优化的。

2024-02-25 14:54:55 518

原创 静态方法(static methods)和非静态方法(instance methods,也叫实例方法)

在Python中,实例方法(instance method)需要通过类的实例来调用,因为它们的第一个参数通常是self,代表类的一个实例。这意味着实例方法可以访问和修改实例的状态。而静态方法(static method)则不接收self参数,它们既可以通过类名直接调用,也可以通过类的实例来调用,但它们无法访问或修改类的状态。

2024-02-21 22:29:36 275 1

原创 神经网络中的前向传播(Forward Propagation)和后向传播(Backward Propagation)

有时候会搞混这两个概念。什么是前向传播?不是只有后向传播吗?后向传播好像是用来更新模型参数的,前向传播是什么东西?

2024-02-13 00:32:04 898

原创 神经网络训练中的epoch和batch概念

例如,如果你有1000个训练样本,而你的batch size是100,那么需要10个batch来完成一个epoch的训练。Batch size是一个重要的超参数,因为它直接影响到模型权重更新的次数和每次更新时使用的样本数。通常,在训练神经网络时,会设置一个epoch参数和一个batch size参数,并在每个epoch内遍历多个batch。在一个epoch中,网络会对每一个训练样本学习一次,然后更新权重。总是忘了又忘,再写一遍加强记忆。

2024-02-11 16:40:55 532

原创 python进行独立样本t检验

ttest_ind会返回这两组数据的t检验值和p值。t值表示两个样本均值之差距离零假设(即两组数据的均值没有差异)的标准化距离。负号表示第一个样本的均值小于第二个样本的均值。p值(p-value)表示在零假设为真(即两组数据的均值没有差异)的条件下,观察到的统计量或更极端的值出现的概率。在统计学中,通常使用一个阈值(显著性水平,如0.05)来判断p值是否足够小以拒绝零假设。如果p值大于0.05,没有足够的证据拒绝零假设,即没有足够的证据表明两组数据的均值存在显著性差异。不涉及原理,快速上手运用和理解。

2024-02-06 00:40:46 244

原创 jupyter notebook删除kernel & conda 删除虚拟环境

如果你在 base 环境中运行该命令,它将列出在 base 环境中注册的 Jupyter 实例知道的所有内核。如果你在虚拟环境中运行该命令,它将列出在那个特定虚拟环境中注册的 Jupyter 实例知道的所有内核。不过,通常,Jupyter 内核是全局注册的,所以无论在哪个环境中运行 jupyter kernelspec list,都会看到相同的列表。该命令将列出所有已注册的 Jupyter 内核,包括在 base 环境和所有虚拟环境中安装的内核。如果想完全删除与内核相关的环境,需要单独管理那个环境。

2024-01-22 12:18:05 862

原创 解决 conda新建虚拟环境只有一个conda-meta文件&conda新建虚拟环境不干净

像以前一样通过conda 新建虚拟环境时发现环境一团糟,首先新建虚拟环境这时候activate newenv,通过pip list,会发现有很多很多的包,都是我在其他环境用到的。但诡异的是,来到anaconda下env的目录,却发现newenv下只有一个conda-meta文件。这到底是为啥?

2024-01-20 17:10:10 1331 1

原创 np.concatenate函数

其中axis(读着aeksis,记住这里的x发音ks就可以)为0和1时分别代表不同的拼接方向。总是记不住axis对应的方向,看到官网的examples觉得很容易懂,记录一下。当axis为0时,数组沿着横轴拼接,这就要确保拼接的数组a和b有相同维度的列数。当axis为1时,数组沿着纵轴拼接,这里就要确保a和b有相同维度的行数。concatenate函数沿着某axis轴将a1、a2等数组进行合并。

2024-01-11 15:28:28 458

原创 word文档插入公式自动编号

ps:还有一个常用快捷键,有时候需要检查之前输入的域公式是否正确,除了可以alt+f9进入域模式查看域代码外,还可以按下shift+f9显示光标处的局部域代码。按两次alt+f9就可以看到公式后面是一个编号了,让编号正常的方式是选中含有公式编号的文本,右键更新域,就可以看到自动编号了。也就是先在章节标题的光标末尾按下插入域的快捷键,输入视频指示的公式。然后在每个章节的公式光标后面同样按下插入键,根据视频指示输入{SEQ seq \c}-{SEQ eq}首先是插入域的快捷键:ctrl+f9。

2023-12-30 23:23:17 516

原创 python中的lambda关键字

匿名函数就是没有函数名的函数。平时写一个实现某种功能的小函数,都需要def func_name(**args,**kewargs),有了lambda,就可以省略这个定义的操作啦。map() 函数是Python内置的一个高阶函数,它接收一个函数和一个或多个可迭代的对象作为参数,然后将该函数应用到所有可迭代对象的对应元素上,返回一个新的可迭代对象(通常是一个列表)所以你,这个lamda就是用来创建一个功能比较简单,一个表达式就能写完的函数。也即,lambda是一种关键字,这种关键字的作用是创建匿名函数。

2023-12-07 11:59:48 497

原创 python中的迭代器、生成器和装饰器(一)

首先,最后两句应该能看懂,平时编程的时候也经常在def一个函数之前加上@xxx_decorator,这也就是装饰器的用法啦,通过在自定义的函数函数前面加上@装饰器函数名,就可以实现装饰的效果(装饰装饰,说白了就是一些锦上添花的工作,所以常用的装饰器就是做一些日志记录、性能分析等小工作)。下面看下log_decorator内部,也就是代码的第一部分,先看整体,该函数传入的参数为一个func(函数),返回的是一个wrapper(一个包装了func的函数)。今天正好复习到这里,把我对这几个概念的理解记录一下。

2023-12-06 21:08:59 471

原创 python初始化矩阵相关

第一种初始化方法创建矩阵时使用了相同的子列表对象。在Python中,使用 [0] * n 这样的方式创建子列表时,实际上是对相同的子列表对象的引用。因此,当你修改其中一个子列表的元素时,其他子列表也会受到影响。以前经常混用也没发现什么问题,直到昨天debug的时候发现第一种初始化之后对矩阵进行赋值时混乱的,比如matrix[0][1]=2会导致所有行的第二列都变成2。为了避免这种问题,可以使用列表生成式来创建,也就是第二种方法,确保每个子列表都是独立的对象。下面这张图就非常清晰易懂啦。

2023-12-03 12:39:05 991

原创 result.append(path[:]) 和 result.append(path) 之间的区别

result.append(path[:]): 这样使用切片操作创建了 path 列表的浅拷贝,然后将拷贝后的列表添加到 result 中。这样,result 中存储的是一个新的列表对象,而不是 path 的引用。在许多情况下,特别是在处理树形结构等递归问题时,使用 path[:] 是一个常见的技巧,以确保每个路径的副本都是独立的,不受后续修改的影响。result.append(path[:]) 和 result.append(path) 之间有一个重要的区别,这涉及到对列表的浅拷贝。

2023-11-25 19:29:55 579

原创 关于python中的nonlocal关键字

如果在 inner_function 中不使用 nonlocal,而直接对 x 进行修改,Python 将认为 x 是一个新的局部变量,并在 inner_function 中创建一个新的局部变量 x,而不会修改外部函数 outer_function 中的 x。总的来说,对于可变对象,你可以在函数内部修改它们的值,而不需要 nonlocal 关键字。如果 x是一个不可变对象,例如数字、字符串或元组,你将需要使用 nonlocal 关键字,因为对于不可变对象,重新绑定变量是唯一的方式来修改它们的值。

2023-11-25 17:39:55 424

原创 牛客机考题编程题输入输出

一种是下面这种,需要对输入的每行进行运算。

2023-11-17 16:16:27 144

原创 python中的__name__是个啥?

这样,当你直接运行模块时,这些代码会被执行,但如果你将模块导入到其他地方,这些代码就不会执行。通过这种机制,你可以将模块中的功能区分为两种类型的代码,使代码更具模块化和可重用性。这样一来,当你希望某个模块在被直接运行时执行一些特定的操作,但在被其他模块导入时不执行这些操作。所以可以简单的理解:脚本就是广义的py文件(py文件也就是Python文件),模块是狭义的py文件,它们都是py文件。模块(module):模块也是py文件,只不过这个py文件有概念上的规范和限制,不是所有py文件都可以叫模块,

2023-08-19 16:44:45 761 1

原创 TensorFlow虚拟环境安装/pip install 与 conda install区别/jupyter kernel的添加与删除

当你pip list时,那些包有些是在Anaconda3\envs\tf\Lib\site-packages,有些是在C:\Users\username\AppData\Roaming\Python\Python38\site-packages,所以有时候会看见某个库有两个版本同时存在,这样也会造成很多包的不兼容。突然,我想到了加–user可以把包放在c盘的AppData\Roaming\Python\Python38\site-packages里,并且这个路径下的包虚拟环境也是可以用的。

2023-04-21 15:48:42 905 1

原创 jupyter notebook重装及遇到的问题

安装成功了在终端输入jupyter notebook,报错,显示ModuleNotFoundError: No module named ‘zmq.asyncio’,一开始以为是zmq库没有装上,于是pip install zmq,但是报错AttributeError: ‘WindowsPath’ object has no attribute ‘read_text’。最后终于pip install zmq成功了。所以zmq和pyzmq的关系是什么?(安装的时候不能连vpn,不然容易报错)

2023-04-11 22:13:19 1146

原创 Python如何自制包、如何安装自己的包并导入

首先科普一下包和模块的概念:在Python中,包是一个包含多个模块的目录,而模块则是一个单独的文件。当一个目录下面有一个__init__.py文件时,这个目录就可以被认为是一个包。子包就是一个包中包含的另一个包,可以认为是包的嵌套。例如,一个名为mypackage的包中包含了一个名为subpackage的子包,subpackage中也可以包含多个模块。关于setup文件和requirements文件的编写,自行网络搜索(最主要的就是说明你写的这个sss包用到了哪些Python模块)

2023-03-14 15:57:24 2050 1

原创 面向对象和面向过程的区别(内含实际解释)

开发者需要将程序设计成一系列的步骤,其中每个步骤都是输入一些数据,处理这些数据,然后输出结果。这种方法的优点是程序结构清晰,易于实现,但不够灵活和可维护。通常情况下,面向对象编程比面向过程编程更加复杂,需要更多的设计和开发时间。但是,面向对象编程能够更好地处理大型项目,能够更好地分离程序的不同部分,并且能够更好地应对需求变化。这种方法的优点是易于扩展和修改,能够提高代码的可重用性和可维护性。面向对象编程和面向过程编程都是编程范式,它们描述了编写程序时的不同思考方式和设计方法。

2023-02-14 13:53:55 1911

原创 nvidia control panel下载与安装

通过microsoft应用商店方式获取是最好的(搜nvidia control panel)(其他的方法不太好,后面会出很多问题),但这个应用商店似乎一直刷不出来。尝试各种办法,最后得到了解决。

2023-02-08 22:51:30 1999

原创 keras.layers.Conv1D中卷积核参数kernel_size的理解

我们知道二维卷积中kernel_size就是二维的,对应于感受野的大小,conv1d的kernel_size中只需要填一个数字,而不是二维的数组,是因为一维卷积的kernel_size默认为(kernel_size,你输入数据的列的维度)。举例,输入维度为(xxx,40,7),conv1d(16, 3, input_shape=(40, 7))其实就相当于二维卷积,只不过卷积核(x,y)的y默认就是输入数据(xxx,x,y)的y。那么输入数据进入卷积层后输出的维度为(xxx,40,16)

2023-02-06 12:08:41 2318 1

原创 python安装完虚拟环境后导入tensorflow报错/import keras报错

后面我的还是报错,缺少dll文件,发现自己没安装cuda和cudnn。看c盘的program files文件夹下是否有NVIDA GPU computing toolkit文件夹,如果没有,可以安装下面这个教程一步步安装。最后导入tensorflow成功,但是导入keras还是有问题。降低numpy的版本,好像1.24.0版有很多问题。好像是新版该规则了,换一下写法就行。

2023-02-03 21:36:10 1014

原创 pandas groupby函数

groupby主要是对datafram格式的数据中不同类别的列进行分组。

2023-01-14 15:49:08 156

原创 win10下firefox和chrom都能正常上网,但edge不行,设置方法

但是改了之后edge还是没反应,于是自己在edge的设置那里瞎捣鼓,发现把这一栏勾选去掉就能正常上网了。

2023-01-13 14:16:27 3400 1

原创 matlab支持向量机SVM工具包(Libsvm)的安装

其中编译器的安装,可以直接在报错的时候点击那个链接,安装matlab官方指导进行安装,很简单。

2022-12-13 20:41:34 1226

原创 构建一个能索引出数组的数组

【代码】构建一个能索引出数组的数组。

2022-12-08 14:37:03 135

原创 matlab修改图例/图注/legend中线条的粗细

lengend中的线条粗细无法通过lengend的输入参数来设置,这个粗细是由画图时plot中linewidth的大小决定的。plot时选用不同粗细的宽度,得到的图例线条宽度也是不同的因此,要修改只能修改plot是linewidth的大小。

2022-12-07 15:28:11 9393

原创 谷歌浏览器无法连接到网络的解决办法

电脑可以正常上网,其他浏览器也可以打开网页,甚至谷歌浏览器换成百度搜索引擎也能正常使用,但我以前用Google引擎也是能正常使用的,问题就出现在我使用了一下vpn,然后谷歌浏览器就没法工作了,重启也没用。网上搜了很多方法,清楚浏览器数据?修改dns啥的也没用,下面这个有用,找到网络和Internet设置,点击Internet选项,找到连接那一栏,把代理服务器的勾选取消,确定,浏览器可以正常使用了。

2022-09-11 11:12:18 16267 5

原创 关于df[‘某一列名’][序号]

如图所示,当我选中了某一列,发现索引0是正常的,索引1居然报错,考虑到df[‘latitude’]是series类型,我还去搜了series的索引规则,正当我走投无路的时候,发现df1因为前期处理,索引是乱序的,索引1不存在,所以报错。也就是说,这种通过选取列名再索引的方式是通过索引该列的序号来实现的。...

2022-07-28 17:01:41 362

原创 pandas基础

#df数据结构及其属性df=pd.read_csv(‘某某path’)df.head(n)#可以只显示前面n行df.info()#显示行的信息(总共几行),列的信息,每一列的名称,数据类型(浮点数、整数还是字符串),这一列有多少个数据(可结合总行数判断这一列是否存在缺失值)df.index#显示索引值df.columns#返回列名的数组df.dtypes#显示每一列及其数据类型se=df['某一列名']#取某一列的数据,se为pandas中的series数据结构,series为datafram

2022-04-15 13:01:12 126

原创 numpy基础大全(创建、索引、常用函数)

numpy的数据结构:array。array的属性:shape,ndim,size,dtype。创建array的方式:array支持的函数和操作:

2022-04-13 16:45:18 348

原创 matplotlib绘图

用matplotlib画图总是陷入这样的循环:某段时间需要处理数据画图时,matplotlib的用法忘记了,知乎微信一搜,看几篇博客,似乎又会了。画完图,隔段时间,下次遇到,又忘了。所以这一次想把画图的底层逻辑理一理。首先就是fig、plt、ax的区别和联系了。学习过程中遇到的几篇有启发的文章:matplotlib画图详解matplotlib,先搞清plt/ax再画图matplotlib刨根问底在csdn上,搜matplotlib画图,可以看到这样的示例:看每个人的博客都觉得有道理,但他们之间

2022-04-12 23:37:54 799

原创 奥林巴斯FV31S激光扫描显微镜软件下载地址

官网下载要注册,还要序列号,发现了下面这个。http://10.71.109.23:8008/soft/FV31S-SW_V2.1.rar点击下载

2022-04-08 14:28:26 3660 12

原创 分清frontal plane(额状面)、coronal plane(冠状面)、transverse plane(横断面)、sagittal plane(矢状面)

首先额状面(frontal plane)和冠状面(coronal plane)是同一个截面的不同称呼。其次要分清对象是站立的人还是趴着的小动物。对于站立人来说,是这样的对于趴着的小动物,以小鼠为例两者其实是一样的,以眼睛朝向你横放着的大脑为标准,矢状面就是将大脑分成左右两部分的面。横断面就是将大脑分为前后两部分的面,冠状面或者说额状面就是将大脑分成上下两部分的面。当大脑竖起来以后,前后上下指代的区域变了,所以两幅图看起来有点矛盾,其实都是一样的标准划分。...

2022-04-07 15:43:51 10991

原创 从脑成像技术到麦克斯韦方程(CT成像原理与电磁波概念)

转行生医工,最近做实验要用复杂的光学仪器仪器拍照片。了解了一堆,先从脑成像技术看起。首先是CT扫描技术,全称computed tomography,电子计算机断层扫描,是一种利用X射线围绕人体某一部位一个接一个的断面扫描技术。直白一点,CT通过发射一束X射线穿过人体,根据接收回来的射线重建出人体结构。那什么是X射线呢?X射线是德国物理学家伦琴在1895年做实验时而发现的一种从未见过的射线,因为不清楚不了解这种射线,所以叫X射线,X经常表示未知。ok,上面解释了名字的由来,但就像认识一种植物,光知道

2022-03-25 22:41:07 826

原创 datawhale李宏毅机器学习——task07总结

在任务01中,对机器学习的定义、结构和功能有了大致了解。机器学习是为了让机器能够像人一样拥有智慧而设计的一种算法,这种算法最大的特点在于从一堆数据中根据设定的神经网络学习数据中隐含的知识。机器学习的执行步骤,首先,明确要解决的问题类型,是回归还是分类;然后,根据问题类型选择函数集,有线性的非线性的,非线性的就是指深度学习、SVM、KNN这些;最后,根据数据有无标签的特点,选择训练方法。在任务02中,学习了回归。回归就是找一种函数集,这种函数能够输出想要的值,有预测和判断功能。回归的步骤:选择函数集;选择

2022-01-23 16:53:12 488

Matlab - Signal Processing Toolbox Getting Start Guide.pdf

数字信号处理有关的MATLAB使用指导,英文版

2020-04-10

空空如也

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

TA关注的人

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