g
y
7
7
7
7

10 2020 档案

摘要:先说一个小知识,助于理解代码中各个层之间维度是怎么变换的。 卷积函数:一般只用来改变输入数据的维度,例如3维到16维。 Conv2d() Conv2d(in_channels:int,out_channels:int,kernel_size:Union[int,tuple],stride=1,pad 阅读全文
posted @ 2020-10-18 21:12 gy77 阅读(1340) 评论(0) 推荐(0) 编辑
摘要:先说一个小知识,助于理解代码中各个层之间维度是怎么变换的。 卷积函数:一般只用来改变输入数据的维度,例如3维到16维。 Conv2d() Conv2d(in_channels:int,out_channels:int,kernel_size:Union[int,tuple],stride=1,pad 阅读全文
posted @ 2020-10-16 20:30 gy77 阅读(1035) 评论(0) 推荐(1) 编辑
摘要:C~K的难题:费马小定理+快速幂 Problem Description 众所周知 C~K 喜欢数学,但是他最近被一个题给难住了,题目是这样的。 要求 (A/B)%10007,但由于 A 很大,我们只给出 n (n = A%10007)(我们给定的A必能被B整除,且 gcd(B,10007) = 1 阅读全文
posted @ 2020-10-15 20:43 gy77 阅读(125) 评论(0) 推荐(0) 编辑
摘要:均方差损失函数mse_loss()与交叉熵损失函数cross_entropy() 1.均方差损失函数mse_loss() 均方差损失函数是预测数据和原始数据对应点误差的平方和的均值。 \[ MSE=\frac{1}{N}( y^`−y)^2 \] N为样本个数,y'为预测数值,y为正确数值。 代码实 阅读全文
posted @ 2020-10-10 17:19 gy77 阅读(1394) 评论(0) 推荐(0) 编辑
摘要:1.Himmelblau函数 Himmelblau函数: F(x,y)=(x²+y-11)²+(x+y²-7)²:具体优化的是,寻找一个最合适的坐标(x,y)使得F(x,y)的值最小。 函数的具体图像,如下图所示: 实现代码 import numpy as np from matplotlib im 阅读全文
posted @ 2020-10-09 17:11 gy77 阅读(325) 评论(0) 推荐(0) 编辑
摘要:1.单层感知机 单层感知机的主要步骤: 1.对数据进行一个权重的累加求和,求得∑ 2.将∑经过一个激活函数Sigmoid,得出值O 3.再将O,经过一个损失函数mse_loss,得出值loss 4.根据loss,以及前边所求得的值,求得loss对各个w的偏导数 5.更新w值 # 单层感知机梯度的推导 阅读全文
posted @ 2020-10-08 21:59 gy77 阅读(168) 评论(0) 推荐(0) 编辑
摘要:1.激活函数 激活函数的作用是能够给神经网络加入一些非线性因素,使得神经网络可以更好地解决较为复杂的问题。因为很多问题都不是线性的,你只有给它加入一些非线性因素,就能够让问题更好的解决。 函数1:RELU(): 优点: 1.相比起Sigmoid和tanh,在SGD中能够快速收敛。 2.有效缓解了梯度 阅读全文
posted @ 2020-10-08 16:33 gy77 阅读(533) 评论(0) 推荐(0) 编辑
摘要:1.矩阵的分割 方法:split(分割长度,所分割的维度),split([分割所占的百分比],所分割的维度) a=torch.rand(32,8) aa,bb=a.split(16,dim=0) print(aa.shape) print(bb.shape) cc,dd=a.split([20,12 阅读全文
posted @ 2020-10-07 21:48 gy77 阅读(1020) 评论(0) 推荐(0) 编辑
摘要:1.矩阵的转置 方法:t() a=torch.randint(1,10,[2,3]) print(a,'\n') print(a.t()) 输出结果 tensor([[2, 8, 2], [9, 2, 4]]) tensor([[2, 9], [8, 2], [2, 4]]) transpose(维 阅读全文
posted @ 2020-10-05 21:39 gy77 阅读(4968) 评论(0) 推荐(0) 编辑
摘要:数据本身不发生改变,数据的访问方式发生了改变 1.维度的扩展 函数:unsqueeze() # a是一个4维的 a = torch.randn(4, 3, 28, 28) print('a.shape\n', a.shape) print('\n维度扩展(变成5维的):') print('第0维前加 阅读全文
posted @ 2020-10-05 19:56 gy77 阅读(2854) 评论(0) 推荐(0) 编辑
摘要:1.基本概念 标量:就是一个数,是0维的,只有大小,没有方向 向量:是1*n的一列数,是1维的,有大小,也有方向 张量:是n*n的一堆数,是2维的,n个向量合并而成 2.a.size(),a.shape(),a.numel(),a.dim()的区别 a.size():输出a的某一维度中元素的个数,若 阅读全文
posted @ 2020-10-04 15:13 gy77 阅读(872) 评论(0) 推荐(0) 编辑