- 博客(29)
- 收藏
- 关注
转载 python is和 == 的区别
一:变量、内存理解变量:用来标识(identify)一块内存区域。为了方便表示内存,我们操作变量实质上是在操作变量指向的那块内存单元。编译器负责分配。我们可以使用Python内建函数id()来获取变量的地址变量名:是一个标识符(dientify),用来代之一块内存空间,使用这个变量名,我们可以很方便的操作这块内存区域。内存:内存是我们电脑硬件,用来存放数据,形象的理解就是内存有一个一个的小格子组成,每个格子的大小是一个字节,每个格子可以存放一个字节大小的数据。我们如何才能知道,数据存放在哪些格子中,那
2021-12-20 09:09:57
110
转载 《PyTorch深度学习实践》完结合集 第五讲(pytorch实现线性回归)
PyTorch Fashion(风格)1、prepare dataset2、design model using Class # 目的是为了前向传播forward,即计算y hat(预测值)3、Construct loss and optimizer (using PyTorch API) 其中,计算loss是为了进行反向传播,optimizer是为了更新梯度。4、Training cycle (forward,backward,update)代码说明:1、Module实现了魔法函数__cal
2021-11-17 10:54:20
120
原创 《PyTorch深度学习实践》完结合集 第四讲(反向传播)
误差反向传播(Back-propagation, BP)算法的出现是神经网络发展的重大突破,也是现在众多深度学习训练方法的基础。该方法会计算神经网络中损失函数对各参数的梯度,配合优化方法更新参数,降低损失函数。BP本来只指损失函数对参数的梯度通过网络反向流动的过程,但现在也常被理解成神经网络整个的训练方法,由误差传播、参数更新两个环节循环迭代组成。简而言之,神经网络的训练过程中,前向传播和反向传播交替进行,如下图所示:前向传播通过训练数据和权重参数计算输出结果;反向传播通过导数链式法则计算损失函数对各参数
2021-11-17 10:42:20
219
原创 《PyTorch深度学习实践》完结合集 第三讲(梯度下降算法)
梯度下降容易陷入局部最优点,但是实际上,深度学习算法中并没有过多局部最优点。任务:模拟梯度下降算法,计算在x_data、y_data数据集下,y=w*x模型找到合适的w的值。代码实现:import matplotlib.pyplot as plt # prepare the training setx_data = [1.0, 2.0, 3.0]y_data = [2.0, 4.0, 6.0] # initial guess of weight w = 1.0 # define th
2021-11-16 16:57:31
138
原创 《PyTorch深度学习实践》完结合集 第二讲(线性模型)
《PyTorch深度学习实践》完结合集 第二讲线性模型(1)用穷举法实现线性模型的参数确定。import numpy as npimport matplotlib.pyplot as pltx_data = [1.0, 2.0, 3.0]y_data = [2.0, 4.0, 6.0] def forward(x): return x*w def loss(x, y): y_pred = forward(x) return (y_pred - y)**2
2021-11-16 16:33:05
78
原创 reduce() 函数
描述reduce() 函数会对参数序列中元素进行累积。函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。注意:Python3.x reduce() 已经被移到 functools 模块里,如果我们要使用,需要引入 functools 模块来调用 reduce() 函数:from functools import re
2021-08-16 20:37:56
278
原创 数组赋值问题
nums = [1,2,3,4,5,6,7]为什么num = nums和nums = [1,2,3,4,5,6,7]求出来的结果不一样?nums = [1,2,3,4,5,6,7]k = 3a = numsprint(a)num = numsfor i in range(len(nums)): num[(i + k) % (len(nums))] = nums[i]for i in range(len(nums)): nums[i] = num[i]print(nums)
2021-08-16 15:05:12
85
原创 指针和函数的关系
指针和函数的关系1、函数指针(指向函数的指针)2、指针函数(返回值为指针的函数)3、两者混用(不常用)4、函数指针数组5、函数与指针的复杂声明(不做要求,一般用 typedef 代替它)1、函数指针(指向函数的指针)一个函数在编译之后,会占据一部分内存,而它的函数名,就是这段函数的首地址。可以把一个指针声明成为一个指向函数的指针。C 语言规定函数名会被转换为指向这个函数的指针,除非这个函数名作为 & 操作符或 sizeof 操作符的操作数(注意:函数名用于 sizeof 的操作数是非法的)。
2021-08-10 10:53:09
245
原创 算法图解---狄杰斯特拉算法(原理+代码)
要编写解决这个问题的代码,需要三个散列表。随着算法的进行,你将不断更新散列表costs和parents。首先,需要实现这个图,为此可像第6章那样使用一个散列表,样将节点的所有邻居都存储在散列表中。但这里需要同时存储邻居和前往邻居的开销。例如,起点有两个邻居——A和B。如何表示这些边的权重呢?为何不使用另一个散列表呢?因此graph[“start”]是一个散列表。有一条从起点到A的边,还有一条从起点到B的边。要获悉这些边的权重,该如何办呢?表示整个图的散列表类似于下面这样。接下来,需要用一个散列表来存
2021-07-29 16:17:16
765
转载 详解sorted与sort用法
排序问题是所有程序员一定会遇到的问题,Python内置的排序工具sort()和sorted()功能强大,可以实现自定义的复杂式排序。平时我们使用两个函数可能没有仔细研究过它们的区别,随想随用了。但实际上二者还是有很大的区别的,在一些场景中不同互换使用。本文将会介绍如何对不同数据结构中的各种类型的数据进行排序,自定义顺序,以及使用两种不同的Python排序方法。最后还会介绍如何区分sorted和sort,如何根据个性要求在代码中自定义复杂的排序顺序。使用sorted()排序值开始使用Python排序,首
2021-06-17 11:01:30
2412
转载 耐人寻味的 for...else...语句
在 Python 中 else 不仅可以和 if 搭配使用,还有另一种特有的句法是 for…else …,除此之外,它还可以和 while、try…except 组合使用,例如:for i in range(3): print(i)else: print("end")>>>012end但是,你会发现 for…else… 与 if…else… 表现得不一样,按照以往经验来说,执行了 for 语句块中的代码就不执行 else 里面的,反之亦然。然而,我们看
2021-06-15 10:55:57
98
原创 三进制递增计数,从000~222,循环到111退出
三进制递增计数,从000~222,循环到111退出用flag法用循环的else分支打包进函数抛出异常用flag法flag = Truefor i in range(3): for j in range(3): for k in range(3): if i == j == k == 1: flag = False print('break') break
2021-06-15 10:41:36
139
转载 Python 双向队列Deque
首先 python的队列有很多种。Python标准库中包含了四种队列,分别是queue.Queue / asyncio.Queue /multiprocessing.Queue / collections.deque。可见deque是标准库collections中的,这其中最好用的是deque ,以下是deque的基本操作:它的操作很像list。同时 相比于list实现的队列,deque实现拥有更低的时间和空间复杂度。list实现在出队(pop)和插入(insert)时的空间复杂度大约为O(n),deq
2021-06-08 21:05:25
102
原创 一个在win10上安装geopandas很简便的方式
一个在win10上安装geopandas很简便的方式(来源:Stack Overflow - Where Developers Learn, Share, & Build Careers)在Anaconda Prompt的环境下,运行如下命令:pip install wheelpip install pipwinpipwin install numpypipwin install pandaspipwin install shapelypipwin install gdalpip
2021-04-07 15:12:24
270
原创 数据结构中的队列在python中的理解,环形队列的实现
(remove的参数是元素,pop的参数是下标。)(1)b中如果让a出队,后面的bcde都需要往前挪,时间复杂度为O(n)(2)c中如果让front指向+1的位置,不管a,也可以做到a出队列的操作。但是如果到了最后只剩e再想入队的话,前后都没有位置了。如果用python的列表append的话,虽然可以扩充,但是很可能一系列的入队出队操作之后占了大量的内存,有用的很少。用环形队列的方式解决问题。(1)rear=front,空队列。(2)入队一圈之后,怎样让11变回0?取余。(rear【或者f..
2021-04-06 22:45:39
169
原创 数据结构中(列表+栈)在python中的理解以及用栈实现括号匹配问题
列表元素在列表中是顺序存储的。区分一下python和C语言储存列表(数组)的不同:C语言中①数组元素类型要相同,②数组长度固定。而在python中,地址的大小是固定的。把地址存储在列表中指向该列表中的数字。python的列表取数比在数组中取数字要多一步。插入和删除在使用的过程中是O(n)的复杂度。栈栈在python中的实现写成了一个类。class Stack: def __init__(self): self.stack = [] def pus
2021-04-06 21:54:39
93
原创 有效的字母异位词(题目+原理+python代码实现)
查找排序习题有效的字母异位词有效的字母异位词class Solution(object): def isAnagram(self, s, t): """ :type s: str :type t: str :rtype: bool """ ss = list(s) #字符串不可排序,转化成列表,一个字母是一个元素。 tt = list(t) ss.sort()
2021-04-05 15:00:11
89
原创 搜索二维矩阵题目(题目+原理+python代码实现)
搜索二维矩阵class Solution(object): def searchMatrix(self, matrix, target): """ :type matrix: List[List[int]] :type target: int :rtype: bool """ # 循环寻找,假设是m行n列的列表,时间复杂度为O(n*m)。 for line in matrix: #
2021-04-05 14:59:09
391
1
原创 希尔排序+计数排序+桶排序+基数排序(排序原理+python代码实现)
希尔排序然后进行一次插入排序。虽然不会直接排好序,但是每一步都使整体数据接近于有序。# 希尔排序是在插入排序的基础上添加gap参数的一种排序。其实就是把插入排序里面的1改成gap就可以了。def insert_sort_gap(li, gap): for i in range(gap, len(li)): # i表示摸到的牌的下标,可以从1的位置可以摸牌。 tmp = li[i] # 手里的牌存起来 j = i - gap # j指的是手
2021-04-04 15:53:04
209
原创 堆排序+归并排序(原理+python代码实现)
堆排序堆是一个特殊的完全二叉树。挨个出数得过程要清晰。下面得问题是怎么建立一个堆?看最后一个非叶子节点,对这个子树做一个调整,大的调整到上面,然后依次往前推。详看视频23,农村包围城市。建立好堆之后,就可以用挨个出数来。...
2021-03-30 21:07:00
134
原创 Python 字典(Dictionary) items()方法+enumerate() 函数
描述Python 字典(Dictionary) items() 函数以列表返回可遍历的(键, 值) 元组数组
2021-03-29 12:10:15
2468
原创 日月光华深度学习(六){6}--tf.keras高阶API实例
{6}--tf.keras高阶API实例[6.1]--tf.keras序列问题-电影评论数据分类(一)[6.2]--tf.keras序列问题-电影评论数据分类(二)[6.3]--tf.keras训练过程可视化及解决过拟合问题[6.4]--tf.keras图像识别-猫狗数据集实例(一)[6.1]–tf.keras序列问题-电影评论数据分类(一)tf.keras处理序列问题import tensorflow as tfimport kerasfrom keras import layersimpor
2021-03-28 18:11:42
389
原创 有n个人围成一圈,顺序排号报数问题
# 题目:# 有n个人围成一圈,顺序排号。# 从第一个人开始报数(从1到3报数),# 凡报到3的人退出圈子,# 问最后留下的是原来第几号的那位n = int(input("请输入总人数:"))n_list = []a = -1flag = Truefor i in range(1, n + 1): n_list.append(i)while flag: for j in range(3): if len(n_list) == 1:
2021-03-24 11:04:46
665
原创 日月光华深度学习(一、二)深度学习基础和tf.keras
日月光华深度学习(一)深度学习基础和tf.keras[2.2]--tf.keras实现线性回归[2.5]--多层感知器(神经网络)的代码实现[2.6]--逻辑回归与交叉熵[2.7]--逻辑回归实现[2.8]--softmax多分类(一)[2.9]--softmax多分类代码实现-fashion mnist数据分类实[2.10]--独热编码与交叉熵损失函数[2.11]--优化函数、学习速率、反向传播算法[2.12]--网络优化与超参数选择[2.13]--Dropout抑制过拟合与网络参数选择总原则[2.14]
2021-03-23 21:31:34
1224
原创 日月光华深度学习(五)--卫星图像识别tf.data、卷积综合实例
卫星图像识别tf.data、卷积综合实例[5.1]--卫星图像识别卷积综合实例:图片数据读取[5.2]--卫星图像识别卷积综合实例:读取和解码图片[5.3]--卫星图像识别卷积综合实例:tf.data构造输入[5.4]--卫星图像识别卷积综合实例tf.data构建图片输入管道[5.5]--卫星图像识别卷积综合实例分类模型训练[5.6]--批标准化[5.1]–卫星图像识别卷积综合实例:图片数据读取import tensorflow as tffrom tensorflow import kerasi
2021-03-23 08:12:30
929
15
转载 JUST技术:从GPS数据中挖掘用户行为习惯
智能设备(如智能手机、互联可穿戴设备)的使用呈指数级的增长。据统计,80%的互联网用户拥有智能手机[1],而移动应用程序的使用每年以6%的速度增长,这创造了大量的信息,并带来了大量的研究和商业机会,如智能城市建设、个性化推荐系统等。根据MIT 的技术研究[2],从手机中收集的GPS位置信息可以洞察出用户的行为习惯,那么我们如何利用这些GPS位置信息去挖掘出用户个体和群体的行为和习惯呢?本文将介绍在IEEE ASONAM 2018上发表的论文《Extracting user habits from Goog
2021-03-22 10:29:59
267
原创 日月光华深度学习(四)-计算机视觉-卷积神经网络
日月光华深度学习计算机视觉-卷积神经网络[4.1]--认识卷积神经网络(一)[4.2]--认识卷积神经网络-卷积层和池化层[4.3]--卷积神经网络整体架构[4.4]--卷积神经网络识别Fashion mnist数据集[4.6]--卷积神经网络的优化计算机视觉-卷积神经网络这是日月光华深度学习的第四章卷积神经网络部分。前三章没有做笔记觉得效果不好,以后慢慢补上。 4.1-4.3原理部分还是主要看李宏毅的机器学习部分比较好。[4.1]–认识卷积神经网络(一)CNN可以解决像素较大图像flatten()
2021-03-21 15:34:44
499
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人