- 博客(67)
- 收藏
- 关注
原创 2021-07-26
元素去重import itertoolslabel = [k for k,g in itertools.groupby(list('AAAABBBCCDAABBB'))]print(label)
2021-07-26 15:29:06
127
原创 报错总结1
import numpy as npindices = "hongnngn"target = np.zeros(shape=(5,),dtype=np.long)target[:6]= indicesprint(target)ValueError: invalid literal for int() with base 10: 'hongnngn'indices = [1,2,4,5,7]target = np.zeros(shape=(10,),dtype=np.long)tar.
2021-07-24 12:58:33
145
原创 2021-07-20
问题可视化网络时,出现下面错误RuntimeError: Input type (torch.cuda.FloatTensor) and weight type (torch.FloatTensor) should be the same解决方法原因:可视化网络使用的时cpu将网络转成cudanet = CRNN(num_classes=1000)修改后net = CRNN(num_classes=1000) net.cuda()...
2021-07-20 15:39:53
138
原创 2021-07-16
分割文件名问题name = "3.建设工程规划许可证_100.png"print(name.split(".")[0]) # 结果 ->3print('.'.join(name.split('.')[:-1]))# 结果 ->3.建设工程规划许可证_100name = "H5 二期规证_20170929114102_100.txt"print('.'.join(name.split('.')[:-1]))...
2021-07-16 16:21:27
112
原创 装饰器
from functools import wrapsdef fun1(name1= "N1",name2="N2",name3="N3"): return name1+"_"+name2+"_"+name3@wraps(fun1)def fun2(*args,**kwargs): # 修改参数的默认值 fun1_kwargs = {"name3":"N3_new"} # 根据一个参数的值,修改其他参数的值 fun1_kwargs['name1'] = 'N
2020-11-17 20:22:13
87
原创 输入输出
单行输入x = input()x = [int(i)for i in x.split()]print(x)多行输入输出a = []while 1: s = input() if s!="": for x in s.split(): a.append(int(x)) else: break
2020-11-13 11:01:23
133
原创 python相关基础知识
python是一门动态的、强类型语言类型检车是验证类型约束的过程,编译器或解释器通常在编译阶段或运行阶段做类型检查python类型检查发生在程序运行阶段强类型语言:不管在编译阶段还是运行阶段,一旦某种类型绑定到变量后,此变量会持有此类型,并且不能同其他类型在计算表达式时,混合使用。Python中缩进的层级结构代表代码的逻辑层次乘法表for i in range(1,10): for j in range(1,i+1): print("%d*%d=%d"%(j,i,j*i)
2020-10-29 16:33:00
236
原创 H指数 -275
给定一位研究者论文被引用次数的数组(被引用次数是非负整数),数组已经按照 升序排列 。编写一个方法,计算出研究者的 h 指数。h 指数的定义: “h 代表“高引用次数”(high citations),一名科研人员的 h 指数是指他(她)的 (N 篇论文中)总共有 h 篇论文分别被引用了至少 h 次。(其余的 N - h 篇论文每篇被引用次数不多于 h 次。)"class Solution: def hIndex(self, citations: List[int]) -> int:
2020-10-26 17:47:51
245
1
原创 k-means算法
1、聚类出所有目标的bounding box,提取目标的bounding box2、获得bounding box的宽高信息(将左上角坐标,右下角坐标装换成宽高)3、初始化k个anchor box,通过在所有的bounding boxes中随机选取k个值作为k个anchor boxes的初始值4、计算每个bounding box与每个anchor box的iou值5、分类操作。计算每个anchor box与bounding box的误差值,将误差最小的bounding box分类到anchor box
2020-10-22 09:35:32
182
原创 逻辑回归
import numpy as npdef loadDataSet(): dataMat = []; labelMat = [] fr = open('testSet.txt') for line in fr.readlines(): lineArr = line.strip().split() dataMat.append([1.0, float(lineArr[0]), float(lineArr[1])]) labelMat.a
2020-10-21 23:15:56
107
原创 VGG16模型
import tensorflow as tfclass Vgg16(): def __init__(self,imgs): self.parameters = [] self.imgs = [] self.convlayers() self.fc_layers() def conv(self,name,input_data,out_channel,trainable=False): in_channel = input_data.get_shape()[-1] with
2020-10-21 22:05:16
200
原创 矩阵中的路径
def exist(self, board: List[List[str]], word: str) -> bool: def dfs(i,j,visited,k,board,word): if not 0<=i <len(board)or not(0<=j <len(board[0])) or board[i][j] != word[k] or visited[i][j]: return Fals...
2020-10-18 22:45:59
140
原创 旋转数组,二分查找
def find_min(num): left = 0 right = len(num)-1 while left < right: mid = (left+right)//2 if num[mid]>num[left]: left = mid +1 elif num[mid] < num[right]: right = mid else: right-=1 return num[left]num = [3,4,5,1,2]print(find
2020-10-18 20:23:16
136
原创 对成千上万数据进行排序,数据在某一个范围
if __name__ == '__main__': ages = input().split(" ") ageslist = [int(age) for age in ages] count = [0 for num in range(100)] for i in range(100): count[i] = ageslist.count(i) print(count) index = 0 for i in range(100):
2020-10-17 16:17:49
256
原创 蘑菇街
输入第一行一个字符串,如:“1234567890”输入第二行一个数字是n,如5def func(s,step): for i in range(len(s)-step+1): print(s[i:i+step],end=" ")if __name__ == '__main__': s = input("") step = int(input("")) if step<0 or step>len(s): print(-1) else: func(s, step..
2020-10-17 10:05:07
252
原创 合并两个有序的列表
list1 = [1,2,4,9,10]list2 = [2,5,8,10,11]def merge(list1,list2): res = [] # while list1 and list2: while list1 and list2: if list1[0]<list2[0]: res.append(list1[0]) del list1[0] else: res.append(list2[0]) del list2[0] if list1 :
2020-10-16 21:54:42
413
原创 排序
num = [45,34,78,12,34,32,29,64]def insertsort(num): for i in range(1,len(num)): temp = num[i] j = i-1 while j>=0 and num[j]>temp: num[j+1] = num[j] num[j] = temp j-=1 return numpr
2020-10-16 09:23:31
143
原创 重叠次数
解决思路:1.求两个列表的交集2.遍历交集列表中的每一个元素,min(元素在列表1中的次数,元素在列表2次数),就是此元素的重叠次数3.返回元素,最大重叠次数def max_overlap(list1,list2): overlap = set(list1).intersection(list2) ox = [(x,min(list1.count(x),list2.count(x))) for x in overlap] return max(ox,key=lambda x
2020-10-15 10:40:04
264
原创 二叉树下一个节点
分4种情况:当该节点存在右子树时,那么下一个节点一定在右子树中产生这种情况下又分成两种情况:(1)右子树不存在左分支,那么要找的下一个节点就是右子树的根节点。(2)右子树中存在左分支,那么不停的寻找左分支的左分支就可以了。2.当该节点不存在右子树时,那么下一个节点一定在该节点的父节点中产生,这种情况下又分两种情况:(1)该节点是他的父节点的左孩子,那么下一个节点就是该节点的父节点(2) 该节点是他父节点的右孩子,那么就需要继续往该节点的父节点的父节点去寻找了。然后重复前面的分析。class
2020-10-14 10:51:36
202
原创 yolov3
@wraps(Conv2D)def DarknetConv2D(*args,**kwargs): "带正则化,当步长为2时进行下采样" darknet_conv_kwargs = {"kernel_regularizer":l2(5e-4)} #kernel_regularizer将核权重参数进行正则化 darknet_conv_kwargs["padding"] = "valid" if kwargs.get("strides")==(2,2) else "same" darknet_conv_
2020-10-13 16:06:16
83
原创 二叉搜索树
二叉搜索树,又称二叉排序树、二叉查找树或是空树,或是非空二叉树class BstNode():# 二叉排序树的结点结构 def __init__(self,data,rchild= None,lchild =None ): self.data = data self.rchild = rchild self.lchild = lchildclass DicBinTree():# 创建一个二叉排序树类 def __init__(self
2020-10-11 17:36:22
106
原创 vgg16
vgg16网络结构import osimport numpy as npimport tensorflow as tfclass vgg16(): def __init__(self,imgs): # 在类里边想要复用已经训练权重参数的时候,在模型中作为参数作为输入,类里边输入的参数,将参数在整个类中共享 self.paramerters = [] #在类的初始化时加入全局列表,将所需共享的参数加载进来 self.imgs =
2020-10-10 22:44:36
468
原创 2020-10-8
resnet的好处残差网络与普通网络不同的地方就是引入了跳跃连接,这可以使上一个残差块的信息没有阻碍的流入到下一个残差块,提高了信息流通,并且也避免了由与网络过深所引起的消失梯度问题和退化问题。...
2020-10-08 09:47:04
127
原创 经典网路分类结构Inception
上图为Inception v1 块 用稀疏的inception模块来有力地表达多维度信息inception使用大卷积核替换成多个小的卷积核将对称的conv计算分解为非对称的conv计算约(1x3 + 3x1) / (3x3) = 67%的计算开销更高效的下采样方案...
2020-10-07 14:56:01
575
原创 损失函数
损失函数交叉熵损失函数均方误差过拟合要怎么解决Dropout(随机失活)、Weight Decay(权重衰减)、减少模型参数、Early Stop、Regularization(正则化,包括L1,L2正则化等)、Augmentation(数据增强)、合成数据、Batch Normalization(批次标准化)、Bagging 和 Boosting(模型融合)...
2020-10-07 11:16:18
182
原创 2020-10-7卷积的计算量参数量
计算量一次计算量为k×k次的乘法,(k×k-1)次的加法,输入特征为(B,W,H,C),卷积参数(K,S,C,O)特征图大小 ((H-S+2P)/S)+1 * ((H-S+2P)/S)+1 )执行这么多次的卷积当不是整数的时候向下取整乘加的次数kk+k+k-1 = 2kk-1输出一个特征图的加法 C-1输出所有特征图的加法 O * (C-1)乘加次数C * O * (C-1) * ((H-S+2P)/S)+1 * ((H-S+2P)/S)+1) * (2k*k-1)
2020-10-07 10:40:05
206
原创 旋转出最小的数字
class Solution: def minArray(self, numbers: List[int]) -> int: temp = numbers[0] for i in range(len(numbers)): if temp > numbers[i]: temp = numbers[i] return temp
2020-09-30 15:50:54
63
原创 求1-n的和
1、递归2、迭代3、逻辑递归法class Solution: def sumNums(self, n: int) -> int: if n < 1: return 0 return n + self.sumNums(n - 1)s = Solution()print(s.sumNums(5))def sumNums(n): if n == 1: return 1 n += sumNums(n - 1
2020-09-30 13:19:28
332
原创 从尾到头打印链表
class Node(): def __init__(self,data): self.data = data self.next = Noneclass stack(): def __init__(self): self.slist = [] def add(self,data): self.slist.append(data) def popdata(self): return self.
2020-09-30 09:22:29
98
原创 链表中倒数第k个结点
#思路:遍历整个链表,把链表中的元素放在列表中,索引第n-k个元素class Node(): def __init__(self,data): self.data = data self.next = Noneclass singleList(): def __init__(self): self._head = None # 尾插法建立列表 def append(self,data): if self._
2020-09-29 09:40:18
72
原创 二维元素中元素的查找
# 从右上角开始查找def func(target,matrix): rows = len(matrix) cols = len(matrix[0]) x = 0 y = cols - 1 while x < rows and y >= 0: if target == matrix[x][y]: return True elif target < matrix[x][y]: .
2020-09-28 22:54:16
175
原创 查找k个最小的数
使用冒泡排序def find_num(nums,k): for i in range(len(nums)): for j in range(len(nums)-1): if nums[j] >nums[j+1]: nums[j],nums[j+1]=nums[j+1],nums[j] return nums[:k]nums = [2,6,3,1]print(find_num(nums, 2))...
2020-09-28 22:14:44
154
原创 查找重复的数字
from typing import Listclass Solution: def findRepeatNumber1(self, nums: List[int]) -> int: """ """ dic = set() for val in nums: if val in dic: print(val) dic.add(val) # retur
2020-09-28 22:02:26
159
原创 和为s的正整数序列
from typing import Listdef findContinuousSequence(target: int) -> List[List[int]]: i = 1 # 滑动窗口的左边界 j = 1 # 滑动窗口的右边界 sum = 0 # 滑动窗口中数字的和 res = [] while i <= target // 2: if sum < target: # 右边界向右移动
2020-09-28 21:37:21
143
原创 DFS
graph = { "A":["B","C"], "B":["A","C","D"], "C":["A","B","D","E"], "D":["B","C","E","F"], "E":["C","D"], "F":["D"],}def DFS(graph,s): stack = [] stack.append(s) seen = set() # 集合 seen.add(s) while (len(stack)&g
2020-09-26 10:42:05
66
原创 BFS算法
BFSgraph = { "A":["B","C"], "B":["A","C","D"], "C":["A","B","D","E"], "D":["B","C","E","F"], "E":["C","D"], "F":["D"],}def BFS(graph,s): queue = [] queue.append(s) seen = set() # 集合 seen.add(s) while (len(queu
2020-09-26 10:41:18
268
原创 四边形面积
n = int(input("请输入一个整数"))a = input().split(" ")length = [int(a[i]) for i in range(n)]dict1 = {}for i in range(n): dict1[length[i]] = length .count(length[i])a=sorted(dict1.items(),key=lambda item:item[0],reverse= True)print(a)tem=[]for j in
2020-09-26 10:39:20
266
原创 无重复字符子串
无重复字符子串def substring(s): # 哈希集合,记录每个字符是否出现过 occ = set() n = len(s) # 右指针,初始值为-1,相当于字符串的左边界的左侧,还没开始移动 rk ,ans = -1,0 for i in range(n): if i !=0: # 左指针向右移动一格,移除前一个字符 occ.remove(s[i-1]) while r
2020-09-26 10:36:37
373
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人