当前位置: 首页 > news >正文

建立一个公司网站网站建设模板案例响应式

建立一个公司网站,网站建设模板案例响应式,睢宁网站建设,北辰正方建设集团有限公司网站#x1f3ac;个人简介#xff1a;一个全栈工程师的升级之路#xff01; #x1f4cb;个人专栏#xff1a;pytorch深度学习 #x1f380;CSDN主页 发狂的小花 #x1f304;人生秘诀#xff1a;学习的本质就是极致重复! 《PyTorch深度学习实践》完结合集_哔哩哔哩_bilibi… 个人简介一个全栈工程师的升级之路 个人专栏pytorch深度学习 CSDN主页 发狂的小花 人生秘诀学习的本质就是极致重复! 《PyTorch深度学习实践》完结合集_哔哩哔哩_bilibili​ 目录 1 卷积神经网络 2 拆解卷积 3 特征提取分类 1 卷积神经网络 CNN用于特征提取但是计算量大卷积算子是一个计算密集型算子工业界优化卷积算子是一个重大的任务。有LeNet、AlexNet、VGG系列、ResNet、很多深度学习框架都提供了丰富的CNN模型实现个训练的接口。 ResNet深度残差网络 Resnet50深度残差网络图像分类网络2015年何凯明提出。残差是在正常的神经网络中加了一个short cut 分支结构也称为高速公路。这样网络就不是单纯卷积的输出F(x)而是卷积的输出和前面输入的叠加F(x)X可以很好的解决训练过程中的梯度消失问题。被证明具有很强的图像特征提取能力一般作为一种特征提取器来使用。常用来作为back bone即骨干网络。也被用来测试AI芯片的性能指标。 为什么重要 1常被用来做back bone例如 YoLo-v3 被用来作为特征提取器特斯拉的占用网络 2性能标杆 ResNet包含的算法 1卷积算法 卷积是CNN网络的核心对图片或者特征图进行进一步的特征提取从而实现在不同尺度下的特征提取或者特征融合。 2激活relu 卷积是乘加运算属于线性运算使用激活函数是为了引入非线性因素提高泛化能力将一部分神经元激活而将另一部分神经元关闭。 3池化 池化层主要是为了降维减少运算量同时可以保证输出特征图中的关键特征 4加法 残差结构解决梯度消失问题 5全连接 全连接层称为Linear层或者FC层将所有学习到的特征进一步融合并映射到样本空间的特征上输出与样本对应。全连接层之后会加一个Softmax完成多分类。 2 拆解卷积 卷积为什么重要 1通过卷积核局部感知图像感受野有点像人眼盯着某一个地方看 2滑动以获取全局特征有点像人眼左看右看物体 3权重矩阵记忆 特征图Feature Map 卷积操作从输入图像提取的特征图即卷积算法的输出结果包含了输入图像的抽象特征。 感受野 卷积核在输入图像上的滑动扫描过程表示一个输出像素“看到”的输入图像中区域的大小注意是从输出来看。如果将卷积比作窗户那么感受野就是一个输出像素透过这个窗户可以看到的输入图片的范围。 感受野影响神经网络对于图像的理解和图像特征的提取。大的感受野可以使得神经网络理解图像的全局信息从而提取全局特征。小的感受野只能捕捉图像的局部特征。 2个3x3卷积替代5x5卷积的意义 首先可以替代是因为从输出元素看2个3x3卷积和1个5x5卷积具有相同的感受野。 优势 12个3x3卷积的卷积核参数量为3x33x318而1个5x525 (2一个卷积变成两个卷积加深了神经网络的层数从而在卷积后面引入更多的非线性层增加了非线性能力。 卷积公式 输出通道就是卷积核的个数 Padding参数 指的是在输入图像的周围添加的额外的像素值用来扩大输入图像的尺寸这些额外填充的像素值通常设置为0卷积在这个填充后的图像上进行。 Padding主要是为了防止边缘信息的损失保持输出大小与输入大小一致。 需要填充的场景 1相同卷积输入和输出尺寸一致 2处理小物体边缘像素卷积运算较少多次卷积容易丢失在边缘的小物体Padding可以提高 3网络设计灵活 Stride 参数 卷积核在活动过程中每次跳过的像素的数量可以减少计算量、控制Feature Map输出的大小一定程度上防止过拟合这是通过降低模型的复杂度来实现的。 Dilation 参数和空洞卷积 dilation指的是卷积核元素之间的间距决定卷积核在输入数据上的覆盖范围。增大dilation增大感受野由此引入了空洞卷积。 空洞卷积扩大了卷积核的感受野但却不增加卷积核的尺寸减少运算量可以解决大尺寸输入图像的问题可以处理遥远像素之间的关系。 卷积长、宽推导 除了以上的三个tensor还有计算卷积的三个参数Padding、stride、dilation这样才构成一个完整的卷积运算。 无参数推导 加padding推导: 加上stride推导 加上dilation推导 3 特征提取分类   输入-卷积-输出 一个简单的神经网络 一些代码说明 代码说明 1、torch.nn.Conv2d(1,10,kernel_size3,stride2,biasFalse) 1是指输入的Channel灰色图像是1维的10是指输出的Channel也可以说第一个卷积层需要10个卷积核kernel_size3,卷积核大小是3x3stride2进行卷积运算时的步长默认为1biasFalse卷积运算是否需要偏置bias默认为False。padding 0卷积操作是否补0。 2、self.fc torch.nn.Linear(320, 10)这个320获取的方式可以通过x x.view(batch_size, -1) # print(x.shape)可得到(64,320),64指的是batch320就是指要进行全连接操作时输入的特征维度。 CPU代码 import torch from torchvision import transforms from torchvision import datasets from torch.utils.data import DataLoader import torch.nn.functional as F import torch.optim as optim# prepare datasetbatch_size 64 transform transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.1307,), (0.3081,))])train_dataset datasets.MNIST(root../dataset/mnist/, trainTrue, downloadTrue, transformtransform) train_loader DataLoader(train_dataset, shuffleTrue, batch_sizebatch_size) test_dataset datasets.MNIST(root../dataset/mnist/, trainFalse, downloadTrue, transformtransform) test_loader DataLoader(test_dataset, shuffleFalse, batch_sizebatch_size)# design model using classclass Net(torch.nn.Module):def __init__(self):super(Net, self).__init__()self.conv1 torch.nn.Conv2d(1, 10, kernel_size5)self.conv2 torch.nn.Conv2d(10, 20, kernel_size5)self.pooling torch.nn.MaxPool2d(2)self.fc torch.nn.Linear(320, 10)def forward(self, x):# flatten data from (n,1,28,28) to (n, 784)batch_size x.size(0)x F.relu(self.pooling(self.conv1(x)))x F.relu(self.pooling(self.conv2(x)))x x.view(batch_size, -1) # -1 此处自动算出的是320x self.fc(x)return xmodel Net()# construct loss and optimizer criterion torch.nn.CrossEntropyLoss() optimizer optim.SGD(model.parameters(), lr0.01, momentum0.5)# training cycle forward, backward, updatedef train(epoch):running_loss 0.0for batch_idx, data in enumerate(train_loader, 0):inputs, target dataoptimizer.zero_grad()outputs model(inputs)loss criterion(outputs, target)loss.backward()optimizer.step()running_loss loss.item()if batch_idx % 300 299:print([%d, %5d] loss: %.3f % (epoch1, batch_idx1, running_loss/300))running_loss 0.0def test():correct 0total 0with torch.no_grad():for data in test_loader:images, labels dataoutputs model(images)_, predicted torch.max(outputs.data, dim1)total labels.size(0)correct (predicted labels).sum().item()print(accuracy on test set: %d %% % (100*correct/total))if __name__ __main__:for epoch in range(10):train(epoch)test() GPU代码 import torch from torchvision import transforms from torchvision import datasets from torch.utils.data import DataLoader import torch.nn.functional as F import torch.optim as optim import matplotlib.pyplot as plt# prepare datasetbatch_size 64 transform transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.1307,), (0.3081,))])train_dataset datasets.MNIST(root./dataset/mnist/, trainTrue, downloadTrue, transformtransform) train_loader DataLoader(train_dataset, shuffleTrue, batch_sizebatch_size) test_dataset datasets.MNIST(root./dataset/mnist/, trainFalse, downloadTrue, transformtransform) test_loader DataLoader(test_dataset, shuffleFalse, batch_sizebatch_size)# design model using classclass Net(torch.nn.Module):def __init__(self):super(Net, self).__init__()self.conv1 torch.nn.Conv2d(1, 10, kernel_size5)self.conv2 torch.nn.Conv2d(10, 20, kernel_size5)self.pooling torch.nn.MaxPool2d(2)self.fc torch.nn.Linear(320, 10)def forward(self, x):# flatten data from (n,1,28,28) to (n, 784)batch_size x.size(0)x F.relu(self.pooling(self.conv1(x)))x F.relu(self.pooling(self.conv2(x)))x x.view(batch_size, -1) # -1 此处自动算出的是320# print(x.shape,x.shape)x self.fc(x)return xmodel Net() device torch.device(cuda if torch.cuda.is_available() else cpu) model.to(device)# construct loss and optimizer criterion torch.nn.CrossEntropyLoss() optimizer optim.SGD(model.parameters(), lr0.01, momentum0.5)# training cycle forward, backward, updatedef train(epoch):running_loss 0.0for batch_idx, data in enumerate(train_loader, 0):inputs, target datainputs, target inputs.to(device), target.to(device)optimizer.zero_grad()outputs model(inputs)loss criterion(outputs, target)loss.backward()optimizer.step()running_loss loss.item()if batch_idx % 300 299:print([%d, %5d] loss: %.3f % (epoch1, batch_idx1, running_loss/300))running_loss 0.0def test():correct 0total 0with torch.no_grad():for data in test_loader:images, labels dataimages, labels images.to(device), labels.to(device)outputs model(images)_, predicted torch.max(outputs.data, dim1)total labels.size(0)correct (predicted labels).sum().item()print(accuracy on test set: %d %% % (100*correct/total))return correct/totalif __name__ __main__:epoch_list []acc_list []for epoch in range(10):train(epoch)acc test()epoch_list.append(epoch)acc_list.append(acc)plt.plot(epoch_list,acc_list)plt.ylabel(accuracy)plt.xlabel(epoch)# plt.show()plt.savefig(./data/pytorch9.png) 我的分享也就到此结束啦 如果我的分享也能对你有帮助那就太好了 若有不足还请大家多多指正我们一起学习交流 未来的富豪们点赞→收藏⭐→关注如果能评论下就太惊喜了 感谢大家的观看和支持最后☺祝愿大家每天有钱赚欢迎关注、关注
http://www.w-s-a.com/news/582855/

相关文章:

  • 网站优化有哪些类型免费制作app的傻瓜软件
  • 如何做网站咨询wordpress get
  • 企业网站建设网站做网站用别人的图片
  • 站长统计代码个人网站源代码
  • 求推荐专门做借条的网站公众号排版编辑器
  • 动态做网站网站开发语言查询 蔡学镛
  • 莆田网站建设创意自助建站英文
  • cms系统创建静态网站龙岗网站建设哪家好
  • 自己做的网站被封了邢台规划局网站建设
  • 网站建设项目合同wordpress主题没法用
  • 个旧市哪里有做网站wordpress内页php页面
  • 程序员接活的平台网站互联网平台建设方案
  • 网站安全建设模板深圳企业管理咨询公司
  • 做网站 还是淘宝店wordpress分类链接后加
  • wordpress腾讯云 COSseo内容优化心得
  • 特价旅游机票网站建设i营销
  • 如何成立网站深圳创业项目
  • 建设商业网站惠州网站建设推荐乐云seo
  • 如何申请免费域名做网站免费推广神器
  • 自媒体人专用网站安岳网站建设
  • 特乐网站建设做网站推广要多少钱
  • 山东省建设安全生产协会网站义乌跨境电商公司前十名
  • 做网站优化就是发文章吗起飞页自助建站平台的特点
  • 做网站还是做app好慈溪机械加工网
  • 上传下载文件网站开发的php源码腾讯企点
  • 给分管领导网站建设情况汇报怎么写网络运营的岗位职责及任职要求
  • 电线电缆技术支持中山网站建设广告设计培训学校有哪些
  • 如何禁止通过ip访问网站wordpress无法调用主题布局和图片
  • 江西建设工程信息网站重庆网站推广大全
  • 南浔区住房城乡建设局网站网页设计基础学什么