- 博客(55)
- 收藏
- 关注
原创 Cuda编程——使用share memory优化矩阵乘法
仔细看看,会发现我们使用的是global memory,而share memory的访问速度要远远大于global memory,所以我们将使用share memory优化矩阵乘法,让程序更快!,我们设计了一种并行的矩阵乘法程序,效果和使用CPU计算的一样,但时间有了很大的降低,然而,这只是最基本的一种方法,事实上我们完全可以让程序变得更快!也许到了这里,这两个程序你并没有完全了解,但,不要担心,先把这些代码运行一下,体会使用GPU计算的魅力,为以后的学习打下基础。
2024-01-14 17:13:45 453
原创 关于编程的一些小小记录
如果你不想安装Anaconda,或是仅仅就安装了python的普通IDE,那么只要确保pip命令能用,就可通过pip 工具安装jupyter notebook。命令行打开下载后文件所在位置,pip install .whl文件即可,这种方法基本不会出现问题。安装成功后,命令行中输入jupyter notebook即可启动,方便快捷,极其轻便。2,python pip 安装包时几乎试了所有方法后,安装仍然失败。其实很简单,单击你不想让之运行的文件,点击最下面的属性。搜索要安装的包,下载相应的.whl文件。
2024-01-14 17:02:51 424
原创 PyTorch|PyTorch张量解释
神经网络中的输入、输出和转换都使用张量表示,因此,神经网络编程大量使用张量,张量是我们在 PyTorch 中编程神经网络时将使用的数据结构。
2024-01-04 17:16:16 541
原创 PyTorch|在张量运算中使用GPU
例如,假设我们写的代码到处使用cuda()方法,然后,我们把代码交给一个没有GPU的用户,这样做是行不通的。pytorch在张量运算时允许我们在GPU上进行计算,我们可以采用这些方法将数据无缝的移入或移出GPU。总结起来,在我们编写的代码中,尽量使用这种形式:。对此,我们可以这样处理:。,当我们进入CPU时,我们可以使用。当我们进入GPU时,我们可以使用。方法,去GPU的时候,我们写到。,去CPU的时候,我们写到。同时,我们还可以使用。数据必须移到GPU上。
2024-01-04 16:46:12 728
原创 Python技巧
其实,断言是为了告诉开发人员程序中发生了不可恢复的错误,对于一些可以预料的错误,用户可以予以纠正和重试,断言并不是为此而生。很明显,加入断言后,程序在结果不合常理的状况下报错了,从而避免了卖家损失。这个例子很简单,但要说明的是这在测试程序时非常有用,尤其是一些大型复杂的程序。这样,我们完成了打开文件并写入内容的功能,同时,with语句确保了打开的文件描述符在程序执行离开with语句的上下文后自动关闭。下一个就是with语句,with语句非常有用,有助于编写更加清晰易读的Python代码。
2024-01-04 16:44:35 873
原创 python编程题——如何求一组数的全排列
此时,我们该把2加入,显然可以有两种方式,一种是插入到1之前,另一种是插入到1之后,也就是插空,得到。所以在下面的求解方法中,忽略上面的方法,以一种全新的方法来实现这个求解程序,一看便懂。如果输入内容就是列表,则不会有内容形式的变化。当然,为了更好理解python的程序机制,下面给出一种上述程序的另一种代码,只有。,也有三个空,把3分别插入,也得到三种。全排列:[1,2,3],[1,3,2],[2,1,3],有三个空,把3分别插入,也就得到三种,对于。请问问题到底出在哪?,同理,下面插入3,显然,对于。
2022-11-19 19:17:54 2151 1
原创 App常用图标素材网站
1 https://iconpark.bytedance.com2 https://remixicon.com3 https://www.iconfont.cn4 https://icons.bootcss.com/5 https://www.iconfinder.com/
2022-11-19 19:14:53 625
原创 如何安装与配置Node.js
引擎的JavaScript运行环境,使用了一个事件驱动、非阻塞式I/O模型, 让JavaScript 运行在服务端的开发平台,它让JavaScript成为与PHP、Python、Perl、Ruby等服务端语言平起平坐的脚本语言。对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好,V8引擎执行Javascript的速度非常快,性能非常好,基于。是本人安装时的路径 ,此处要更改为自己的解压文件目录,下同。注:在系统变量中,打开path,如果没有。要加上,当然,一般是有的!
2022-11-19 19:13:05 906
原创 Fibonacci数列那些事!
那么很显然,这就是Fibonacci数列,准确来说应该是一部分。首先,我们设F(n)表示上n级台阶的楼梯的不同方法数,显然易得F(1)=1,F(2)=2,,在这之下可以得到一个数列,这个数列就叫做Fibonacci数列。一个特点就是这个数列从第3项开始,每一项都等于前两项之和。从第3项开始,每一项都等于前两项之和,这样的数列就叫做。但是,看了过程之后,你就会突然明白原来这如此简单。数,相信我们都不陌生,在初学编程时,算。数列是以递推的方法定义的,也就是这样。第一项不是0,但在数学上,
2022-11-19 19:09:55 176
原创 Fibonacci数列那些事!
那么很显然,这就是Fibonacci数列,准确来说应该是一部分。首先,我们设F(n)表示上n级台阶的楼梯的不同方法数,显然易得F(1)=1,F(2)=2,,在这之下可以得到一个数列,这个数列就叫做Fibonacci数列。一个特点就是这个数列从第3项开始,每一项都等于前两项之和。从第3项开始,每一项都等于前两项之和,这样的数列就叫做。但是,看了过程之后,你就会突然明白原来这如此简单。数,相信我们都不陌生,在初学编程时,算。数列是以递推的方法定义的,也就是这样。第一项不是0,但在数学上,
2022-11-11 17:55:49 283
原创 数据插值——对不同量级的数据进行归一化
如果各自变量具有相同的单位,则在归一化数据时应小心,即使各变量的规模不同也是如此。对于相同单位的数据,归一化会因添加方向偏差而影响基本三角剖分并最终降低插值的准确度,从而使解失真。是否使用归一化需要根据插值数据的性质做出判断。这说明了在数据量级相差较大的情况下,直接进行插值不是一个十分明智的选择,而要尽量对数据进行处理,这是个重要技巧。由于x和y具有不同单位,对它们进行归一化使其具有类似的量级,应该有助于产生更好的结果。使用以上样本数据构建一个网格数据,基于网格上的样本数据进行插值并绘制结果。...
2022-07-28 18:05:22 1698
原创 网格数据生成函数meshgrid
想要画三维图,得到网格坐标非常重要,matlab提供了一个叫做meshgrid的函数,很容易就可根据参数生成网格化坐标,当然,这些网格化坐标是以一种特定的计算方法生成的。这样一个三维图形就已经画好了,本质上也就是将二维坐标与第三维坐标结合形成三维坐标,然后连线,填充生成曲面。说明在这里第一种方式,x,y都是向量,而生成的X,Y则是矩阵。得到网格数据之后,那么便可进行三维图形绘制了。第二种方式本质上是x与y相等情况下的一种简写。可以看出,生成的X,Y维数相同,,这样就构成了一个网格。...
2022-07-28 18:03:58 1092
原创 分别使用matlab,c,python,写程序,判断并输出m到n之间的所有素数!
分别使用matlab,c,python,写程序,判断并输出m到n之间的所有素数!
2022-07-21 12:08:52 3121
原创 字符串(python)
字符串是python中非常重要的数据类型,熟练使用这种数据类型对编程开发非常重要。下文将从以下4个方面来阐述字符串的详细使用方法
2022-07-13 22:12:54 259
原创 一定要看的matlab常用函数系列一
matlab本身就自带有许多函数,这意味着对于有些功能,我们不需要重新编写,只需调用相应函数便可实现我们的需求,这是相当方便的!1det(M)计算行列式>> M=[1,2,3;5,6,7;5,7,8];>> det(M)ans = 42rank(M)计算矩阵的秩>> M=[1,2,3;5,6,7;5,7,8];>> rank(M)ans =33 trace(M)计算矩阵的迹(等于对角线元素之和..
2022-05-01 12:07:34 1831
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人