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

网站建设的开源平台wordpress htnl短代码

网站建设的开源平台,wordpress htnl短代码,网站开发细节,在什么网站可以做外贸出口劳保鞋文章目录DETR1. 亮点工作1.1 E to E1.2 self-attention1.3 引入位置嵌入向量1.4 消除了候选框生成阶段2. Set Prediction2.1 N个对象2.2 Hungarian algorithm3. 实例剖析4. 代码4.1 配置文件4.1.1 数据集的类别数4.1.2 训练集和验证集的路径4.1.3 图片的大小4.1.4 训练时的批量… 文章目录DETR1. 亮点工作1.1 E to E1.2 self-attention1.3 引入位置嵌入向量1.4 消除了候选框生成阶段2. Set Prediction2.1 N个对象2.2 Hungarian algorithm3. 实例剖析4. 代码4.1 配置文件4.1.1 数据集的类别数4.1.2 训练集和验证集的路径4.1.3 图片的大小4.1.4 训练时的批量大小、学习率等参数4.2 模型部分4.2.1 backbone4.2.2 neck4.2.3 head4.3 train/engine.py4.3.1 train.py4.3.2 engine.pytrain_one_epoch()evaluate()DETR 链接https://github.com/facebookresearch/detr 论文地址https://arxiv.org/pdf/2005.12872.pdf, CNN生成的特征图将被送入Transformer然后经过一系列的自注意力层和前馈神经网络层最终得到一组对象的表示。每个对象的表示由一个类别分数和四个坐标值组成。这些类别分数和坐标值是预测得出的它们表示对象在图像中的位置和类别信息。 解码器将这些对象解码为一组检测结果。在解码过程中匹配函数将预测类别和预测坐标与这些对象进行匹配从而找到与预测类别和预测坐标最匹配的对象并将其作为最终的检测结果输出。 1. 亮点工作 1.1 E to E DETR是第一个使用Transformer实现端到端目标检测的方法。这种方法不需要预定义的候选框或先验知识并且可以同时执行分类和定位任务。 1.2 self-attention DETR使用自注意力机制替代传统的卷积神经网络结构。自注意力机制能够有效地捕获全局上下文信息从而在目标检测任务中获得更好的性能。 1.3 引入位置嵌入向量 DETR引入了一组位置嵌入向量来帮助解码器在生成目标检测结果时理解对象之间的相对位置关系 1.4 消除了候选框生成阶段 传统目标检测方法需要先生成一组候选框然后对这些候选框进行分类和定位。DETR通过消除这个阶段可以更好地利用计算资源和提高检测效率。 2. Set Prediction 实现了对 一组对象 的分类。 2.1 N个对象 在解码器中每个位置都生成了一组对象这些对象由类别分数和坐标表示。N就是指每个位置生成的对象的数量。一般情况下N的值越大DETR的检测性能就越好但同时会带来更高的计算成本和内存占用。因此需要在性能和效率之间进行权衡并选择合适的N值。 在实际应用中根据具体的任务和资源限制N的值可能需要进行调整。 2.2 Hungarian algorithm 一种用于解决二分图匹配问题的经典算法它的时间复杂度为O(n2)其中n为顶点数。 在DETR中每个预测结果都需要与所有的实际目标进行匹配因此可以将预测结果看作左边的顶点实际目标看作右边的顶点然后通过匈牙利算法计算出每个左边的顶点最匹配的右边的顶点是谁。这样可以快速地得到每个预测结果对应的实际目标从而得到最终的检测结果。 解码器生成的一组对象 对比于 预测类别和预测坐标 在解码过程中DETR模型会将编码器得到的一组对象表示解码为一组检测结果其中每个对象的表示由一个类别分数和四个坐标值组成。这些类别分数和坐标值就是预测的类别和坐标。 3. 实例剖析 假设我们有一个图像其中包含三个对象一个狗、一个猫和一个椅子。 狗坐标(5, 15, 55, 65) 猫坐标(35, 45, 75, 85) 椅子坐标(95, 95, 145, 145)设置N3DETR得到一组检测结果如下所示 对象1类别分数0.9坐标(10, 20, 50, 60) 对象2类别分数0.8坐标(30, 40, 70, 80) 对象3类别分数0.7坐标(100, 100, 150, 150)首先计算IoU(145-100)×(145-100)2025它们之间的并集面积为(50×50)(50×50)-2025 2975。 IoU得分2025/2975 0.6 总得分0.7*0.6 0.42 0.5 输出1狗类别分数0.9坐标(10, 20, 50, 60) 输出2猫类别分数0.8坐标(30, 40, 70, 80) 输出3椅子类别分数0.0坐标(0, 0, 0, 0)由于第三个输出与任何一个真实对象都没有匹配因此其类别分数和坐标值都被设为0。 4. 代码 4.1 配置文件 d2/configs/detr_256_6_6_torchvision.yaml d2/detr/config.py 4.1.1 数据集的类别数 需要根据自己的数据集修改模型的分类器的输出维度使其等于数据集中的类别数。 cfg.MODEL.DETR.NUM_CLASSES 804.1.2 训练集和验证集的路径 需要在训练和验证代码中设置自己数据集的路径。 DATASETS:TRAIN: (coco_2017_train,)TEST: (coco_2017_val,)4.1.3 图片的大小 需要根据自己的数据集图片的大小修改模型的输入大小。 INPUT:MIN_SIZE_TRAIN: (480, 512, 544, 576, 608, 640, 672, 704, 736, 768, 800)CROP:ENABLED: TrueTYPE: absolute_rangeSIZE: (384, 600)FORMAT: RGB4.1.4 训练时的批量大小、学习率等参数 需要根据自己的数据集和硬件环境进行调整。 SOLVER:IMS_PER_BATCH: 64BASE_LR: 0.00014.2 模型部分 4.2.1 backbone DETR的backbone是Dilated ResNet它是一种轻量级的卷积神经网络。 4.2.2 neck DETR使用了Transformer的Encoder作为其neck部分的主要组成部分。 具体来说DETR包含一个Encoder和一个Decoder其中Encoder使用Transformer对输入的图像特征进行编码将其转换为一组上下文向量而Decoder使用Transformer对这些上下文向量和预测的对象查询向量进行解码生成最终的目标预测结果。 4.2.3 head 主要包含Transformer Decoder、Query Embedding。 DETR中的全局嵌入Query Embedding是在Transformer Decoder的输出之上计算的。具体地Transformer Decoder的输出通过多头自注意力Multi-Head Self-Attention进行加权求和得到一个新的表示即为每个对象提取了不同的上下文信息。 接着这个表示会被传递到Feed-Forward NetworkFFN中进行进一步的处理以产生更丰富的特征表示。 最后Query Embedding是在FFN的输出上计算得到的它是一个用于匹配对象嵌入向量。因此可以说在DETR中FFN和Query Embedding是在Transformer Decoder之上进行的。 假设我们有一个包含4个对象的图像并使用DETR模型对其进行目标检测。在DETR模型的输入端我们有图像张量 XXX其尺寸为 C×H×WC\times H\times WC×H×W其中 CCC 是通道数HHH 和 WWW 是高度和宽度。 首先我们使用DETR的backbone网络Diamante将图像张量 XXX 转换为特征张量 FbackboneF_{\text{backbone}}Fbackbone​。这个特征张量的大小是 Cbackbone×Hbackbone×WbackboneC_{\text{backbone}}\times H_{\text{backbone}}\times W_{\text{backbone}}Cbackbone​×Hbackbone​×Wbackbone​。 接下来我们将特征张量 FbackboneF_{\text{backbone}}Fbackbone​ 送入Transformer Decoder网络得到Transformer Decoder的输出 FdecoderF_{\text{decoder}}Fdecoder​。这个输出张量的大小也是 Cdecoder×Hdecoder×WdecoderC_{\text{decoder}}\times H_{\text{decoder}}\times W_{\text{decoder}}Cdecoder​×Hdecoder​×Wdecoder​。 然后我们对 FdecoderF_{\text{decoder}}Fdecoder​ 进行FFN得到FFN的输出张量 FffnF_{\text{ffn}}Fffn​。这个张量的大小和 FdecoderF_{\text{decoder}}Fdecoder​ 相同。 最后我们使用Query Embedding将 FffnF_{\text{ffn}}Fffn​ 映射到特定的目标类别得到每个对象的预测框坐标和类别。 4.3 train/engine.py 4.3.1 train.py DETR的main.py文件是训练和测试DETR模型的主要脚本。在该脚本中首先通过命令行参数解析器解析各种配置和超参数然后通过build_model()函数构建DETR模型和优化器通过build_lr_scheduler()函数构建学习率调度器最后通过DefaultTrainer()类进行训练或测试。 4.3.2 engine.py 定义了一些训练和测试的辅助函数包括计算loss、前向传播、后向传播、评估等。如构建匹配矩阵和计算损失。 train_one_epoch() 模型和损失切换到训练状态。 记录日志信息主要是损失。 最后生成metric_logger的所有信息。 evaluate() torch.no_grad()装饰器在评估过程中不进行梯度计算和参数更新。 设置模型和损失设置为评估状态。 使用for循环遍历数据集中的每个批次并在MetricLogger对象上记录指标。 将输入数据和目标数据移到GPU上然后使用模型进行前向传递。 如果数据集包含分割任务则将分割结果与目标进行比较以获得更准确的结果。 对所有结果进行聚合以获得数据集上的总体评估指标。输出评估指标包括平均指标和COCO指标。
http://www.dnsts.com.cn/news/51381.html

相关文章:

  • 哪个网站做物业贷dedecms网站入侵
  • 做公司企业网站wordpress菜单锚点定位
  • 手机版自网站酒店网站建设策划方案
  • 新媒体网站建设十大的经典成功案例新旧网站对比
  • wordpress中文版下载地址佛山百度seo代理
  • 网站推广哪种方法最企业管理系统软件开发
  • 建设网站平台费设计网站公司哪里好
  • 上海小学网站建设招标电器 东莞网站建设
  • 南乐县住房和城乡建设局网站广东线上营销推广方案
  • 站长推广网四川建设招投标网站
  • 长沙企业网站开发怎样建网站步骤
  • 管理网站用什么系统好大连网站建设开发
  • 给别人做网站多少钱国家级示范职业学校 建设网站
  • 天猫优惠券网站怎么做网站建设所需人力时间
  • 什么网站可免费发布信息自己做的网站如何让百度收录
  • 普陀酒店网站建设深圳软件外包公司都有哪些
  • 电子商务网站规划、电子商务网站建设万网域名注册官网gname
  • 做网站的教程贸易类文章网站
  • html演示网站广州电玩网站开发
  • 大英县住房和城乡建设局网站做网站 网络映射
  • 移动端网站开发最好的环境wordpress怎么采集淘宝客
  • 网站界面排版合肥建设信息网站
  • 西安网站制作首页wordpress升级php7.1
  • 长丰网站建设企业网站开发怎么样
  • 集团网站建设哪家更好wordpress米表插件
  • 推荐电商网站建设移动wap是什么意思
  • 个人网站好备案吗wordpress 网易云音乐
  • 国外前端 网站404页面模板
  • 免费永久个人网站注册网站专题页面文案设计
  • 上海小程序开发公司哪家好?青岛seo推广专员