机器学习与深度学习
机器学习与深度学习
fksfdh
这个作者很懒,什么都没留下…
展开
-
nn.CrossEntropyLoss
【代码】nn.CrossEntropyLoss。原创 2023-01-16 03:21:21 · 209 阅读 · 1 评论 -
学习记录1
【代码】学习记录1。原创 2023-01-13 22:25:41 · 125 阅读 · 0 评论 -
pytorch双线性插值
通过floor函数找到下限,floor+1找到上限,但是要防止超过图像的像素坐标值。通过最邻近找到P点,然后需要找到出四个相邻像素点。原公式是右偏移的,新公式中心对其了。使用下面公式,寻找最近一个像素值。将y视为像素值的函数;...原创 2022-07-30 12:40:50 · 4937 阅读 · 2 评论 -
opencv鼠标键盘事件
opencv原创 2022-06-12 03:26:26 · 487 阅读 · 0 评论 -
opencv
opencv原创 2022-06-12 02:49:25 · 120 阅读 · 0 评论 -
pytorch练习小项目
config.pyclass Hyperparameter: # ################################################ # data # ################################################ device = 'cpu' trainset_path = './data/train.txt' testset_path = './dat原创 2022-05-30 00:12:14 · 480 阅读 · 0 评论 -
softmax
import torchimport numpy as npimport matplotlib.pyplot as pltimport matplotlibmatplotlib.rcParams['font.family'] = 'SimHei'#softmaxdef softmax(input): # input = torch.tensor([1,2,3],dtype=torch.float32) sum = np.sum([torch.exp(i) for i in in原创 2022-05-13 20:37:49 · 137 阅读 · 0 评论 -
softmax与交叉熵损失
交叉熵损失函数:softmax:import torchfrom torch import nnmodel_out = torch.tensor([[1,2,3], [4,5,6]],requires_grad=True,dtype=torch.float32)#类别y = torch.tensor( [0,2])ce_mean = nn.CrossEntropyLoss(reduction='mean')loss =原创 2022-05-13 19:20:54 · 328 阅读 · 0 评论 -
pytorch归一化
数据维度为[N,C,H,W]1、BatchNorm归一化维度:[N,H,W] 计算C次均值方差import torchfrom torch import nn#BatchNorm2dinput = torch.randn((8,32,32,3))input_ = input.permute(0,3,1,2)print(input_.shape)BN = nn.BatchNorm2d(3)output = BN(input_)print(output[:,0,:,:])#t原创 2022-05-13 15:37:28 · 5284 阅读 · 0 评论 -
pytorch学习记录
1、shape与size()print('*' * 100)print('查看数据形状')data1 = torch.randn((7,3,32,32))print("shape:",data1.shape)print("size:",data1.size())查看数据形状shape: torch.Size([7, 3, 32, 32])size: torch.Size([7, 3, 32, 32])2、squeeze与unsqueeze#压缩print('*' * 100)p原创 2022-05-06 20:36:48 · 432 阅读 · 0 评论 -
sigmoid函数
公式:代码:import mathimport numpy as npimport matplotlib.pyplot as pltdef sigmoid(x): e1 = 1 + pow(math.e,-(x)) e2 = pow(e1,-1) return e2 #导数def d_sigmoid(x): e = sigmoid(x) * (1 - sigmoid(x)) return ex_ = np.arange(-10.原创 2022-05-05 07:58:53 · 433 阅读 · 0 评论 -
Retinaface中match函数的理解
1、网络整体架构在之前首先要知道三个概念:先验框,真实框和预测框在a图中:蓝色和红色框就是真实框,是人为标注的标签。在b图和c图中,因为通过网络进行了下采样后,下采样不同的倍数,得到的每个feature map中每个格子(点)叫做anchor,然后在anchor的基础上,人为定义一些宽高比,图中定义了三种宽高比,然后每个格子都对应了三个先验框。而预测框是在有了先验框之后,通过网络前向计算得到宽高和中心的调整值,然后作用在先验框后,最后得到了预测框。前向预测的解码:在R原创 2022-02-18 20:57:50 · 425 阅读 · 1 评论 -
混淆矩阵与miou代码
一、混淆矩阵# 计算混淆矩阵def generate_matrix(num_class,gt_image, pre_image): #正确的gt_mask mask = (gt_image >= 0) & (gt_image < num_class) # ground truth中所有正确(值在[0, classe_num])的像素label的mask #gt_image[mask] 和 pre_image[mask]是一维数据 .原创 2022-02-15 20:20:14 · 3663 阅读 · 0 评论 -
FCN中onehot
1、 将一维变为三维张量import torcha = torch.Tensor([0,1,0,1,0,1,0,0,1,0,1,1,0,0,1,0,1,1])res1 = a.view((3,3,2))print("res1:",res1)res1 = res1[:,:,1]print("res1_",res1)输出:res1: tensor([[[0., 1.], [0., 1.], [0., 1.]], [[0., .原创 2022-02-14 19:17:35 · 746 阅读 · 0 评论 -
RNN LSTM GRU
import torchfrom torch import nnimport time#rnnmodel_rnn = nn.RNN( input_size= 4, hidden_size= 128, bias=True, num_layers= 1, bidirectional= False,)x = torch.randn(size=(31,8,4))output , hn = model_rnn(x)print("output:",out原创 2022-01-28 03:37:11 · 803 阅读 · 0 评论 -
pytorch数据读取
1、数据集信息抽取目录结构:import osfrom PIL import Imagefrom random import shuffle#1、收集数据集所有分类下的图像file_name =r'D:\python\new_test\data'imagelist = []def get_img_file(file_name): for parent, dirnames, filenames in os.walk(file_name): for dirna原创 2021-12-21 01:27:27 · 577 阅读 · 0 评论 -
pytorch中卷积网络的几种卷积和池化
from PIL import Imagefrom torch import nnfrom torchvision import transforms#数据处理transform = transforms.Compose( [transforms.ToTensor()], #0-1 tensor)image = Image.open("111.jpeg")print("imagesize:",image.size)x = transform(image)print(x.原创 2021-12-21 00:26:49 · 541 阅读 · 0 评论 -
DCGAN生成动漫头像
from __future__ import print_function#%matplotlib inlineimport argparseimport osimport randomimport torchimport torch.nn as nnimport torch.nn.parallelimport torch.backends.cudnn as cudnnimport torch.optim as optimimport torch.utils.dataimport to原创 2021-10-16 16:24:43 · 5959 阅读 · 1 评论 -
GAN目标函数理解
GAN目标函数:分两段理解:第一段:D判别器当真实图像标签为1,生成图像标签为0时,我们期望真实图像越来越接近于1,也就是说使得D(x)为1,而生成的图像越来越接近于0,D(G(z)=0,所以目标函数会增大。第二段:G生成器因为,是对生成图像的期望,所以只有后面部分,我们期望D(G(z))趋向于1,因为真实标签为1,所以使得目标函数减小。生成器在训练时,判别器是需要固定的。分别进行训练,交替进行。这时候,就会出现博弈,因为判别器希望能够判别出生成图像,而生成器又在不断地优化网络,使得图原创 2021-02-22 00:09:02 · 3955 阅读 · 0 评论 -
NCHW转化为NHWC
NCHW转化为NHWC:NHWC:[batch,height,width,channels]NCHW:[batch,channels,height,width]Tensorflow中使用的格式为NHWC:API:tf.transpose(a,perm)a:需要转置的张量。perm:按照哪种排列组合进行转置。实例:import tensorflow as tf#定义一个常量 是一个三阶张量,[channels,height,width] [0,1,2]nchw = tf.con原创 2021-01-09 23:22:35 · 2622 阅读 · 0 评论