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

潍坊网站制作网络科技浙江百度代理公司

潍坊网站制作网络科技,浙江百度代理公司,自己做的网站别人打不开,photoshop 做网站logo1. 辅助函数 calc_ins_mean_std(x, eps1e-12) 功能:计算每张图像每个通道的均值和标准差。输入:一个4维张量(batch_size x channels x height x width)。输出:两个3维张量,分别表示均值和标准差。均值的维…

1. 辅助函数

calc_ins_mean_std(x, eps=1e-12)
  • 功能:计算每张图像每个通道的均值和标准差。
  • 输入:一个4维张量(batch_size x channels x height x width)。
  • 输出:两个3维张量,分别表示均值和标准差。均值的维度为 (batch_size, channels, 1)。
instance_norm_mix(content_feature, style_feature)
  • 功能:将内容特征归一化到风格特征的分布下。
  • 步骤
    • 计算content_feat和style_feat的均值和标准差。
    • 使用style_feat的统计量对content_feat进行变换。
cn_rand_bbox(x, use_crop=True)
  • 功能:生成随机边界框,用于crop操作。
  • 参数:x为输入图像,use_crop决定是否应用 crop。
  • 返回:如果use_crop为True,按比例缩放和裁剪图像,并返回新尺寸。
cn_op_2ins_space_CHAN(x, use_crop=True)
  • 功能:跨实例或空间变换特征。
  • 参数:输入x、是否使用crop。
  • 步骤
    • 如果使用 crop,则生成随机边界框并裁剪图像。
    • 将输入在通道维度上分割,交换特征图块,或按比例缩放。

2. 模块实现

CrossNorm
  • 结构:包含一个操作函数cn_op_2ins_space_CHAN,用于跨实例的统计交换。
  • 特点
    • 在训练时active为True时才应用。
    • 可选参数影响是否应用crop和空间变换。
SelfNorm
  • 结构:全连接层结合BN层,生成通道特定的缩放和平移参数。
  • 特点
    • 使用两个1维卷积层(g_fc和可选的f_fc)来生成调整因子。
    • 应用sigmoid激活函数限制范围。
CNSN
  • 结构:组合CrossNorm和SelfNorm模块。
  • 流程:先应用CrossNorm(如果active),然后使用SelfNorm自适应调整特征。

3. 使用示例

# 创建 CrossNorm 和 SelfNorm 的实例
crossnorm = CrossNorm()
selfnorm = SelfNorm(chan_num=3)
block = CNSN(crossnorm, selfnorm)input = torch.rand(32, 3, 224, 224)
output = block(input)
print(output.size())  # 输出与输入相同大小

4. 总结

  • 主要功能:CrossNorm和SelfNorm模块通过自适应调整特征图的统计量,增强模型对分布偏移的鲁棒性。
  • 适用场景:在训练阶段使用这些模块可以提高模型泛化能力,而无需修改网络结构。

5. 注意事项

  • 使用时需确保数据预处理标准化已正确完成,否则自适应调整可能无效。
  • CrossNorm应仅在训练或特定需要的阶段启用,以避免推理时计算开销过大。
  • SelfNorm提供了对每个通道更细致的控制,适用于需要通道间较强独立性的任务。

6. 代码解释

import torchdef calc_ins_mean_std(x, eps=1e-12):# 计算均值和标准差mean = x.mean(dim=(0, 2, 3), keepdim=True)std = x.std(dim=(0, 2, 3), keepdim=True).add(eps)return mean, stddef instance_norm_mix(content_feature, style_feature):content_mean, content_std = calc_ins_mean_std(content_feature)style_mean, style_std = calc_ins_mean_std(style_feature)normalized_content = (content_feature - content_mean) / content_stdtransformed_content = normalized_content * style_std + style_meanreturn transformed_contentdef cn_rand_bbox(x, use_crop=True):if not use_crop:return x, None_, _, h, w = x.size()# 生成随机裁剪区域,例如按比例缩放size = int(h // 2)boxes = []for i in range(0, h, size):for j in range(0, w, size):if i + size > h or j + size > w:continueboxes.append((i, j, i+size, j+size))return x, None  # 此处仅为示例,实际应实现更复杂的裁剪def cn_op_2ins_space_CHAN(x, use_crop=True):if not use_crop:return xelse:x, _ = cn_rand_bbox(x, use_crop)return xclass CrossNorm(torch.nn.Module):def __init__(self):super().__init__()def forward(self, x):if self.training and self.active:# 应用跨实例变换,如交换特征图块或croptransformed_x = cn_op_2ins_space_CHAN(x)return transformed_xelse:return xclass SelfNorm(torch.nn.Module):def __init__(self, chan_num):  # 假设chan_num是通道数super().__init__()self.g_conv1d = torch.nn.Conv1d(chan_num, Chan_num, kernel_size=2)self.bn = torch.nn.BatchNorm1d(Chan_num)  # 可选if is_two:self.f_conv1d = torch.nn.Conv1d(chan_num, chan_num, kernel_size=2)def forward(self, x):batch_size, channels = x.size()[:2]# 生成g_yx_flat = x.view(batch_size * channels, -1).transpose(0, 1)g_y = torch.sigmoid(self.g_conv1d(x_flat))g_y = g_y.transpose(0, 1).contiguous().view(batch_size, channels, -1)transformed_x = x * g_yif hasattr(self, 'f_conv1d'):f_y = ... # 类似生成,可能加上与mean的关系transformed_x += mean * f_yreturn transformed_xclass CNSN(torch.nn.Module):def __init__(self, cross_norm, self_norm):super().__init__()self.cross_norm = cross_normself.self_norm = self_normdef forward(self, x):if self.training:x = self.cross_norm(x)# 假设cross_norm和self_norm都可以处理整个张量?x_normalized = self.self_norm(x)return x_normalized# 示例用法:
# 初始化并训练模型,需在适当时候设置cross_norm.active = True

7. 模块参数与激活控制

  • CrossNorm的active属性:决定是否执行跨实例变换,在训练时通常设为True。
  • SelfNorm的通道数匹配:需确保输入张量的通道数与卷积层一致,否则会导致维度不匹配。

8. 性能考量

  • CrossNorm由于涉及特征图的操作,可能会增加计算开销。建议在性能允许的情况下使用。
  • SelfNorm中的1维卷积相对高效,主要消耗为矩阵乘法和归一化操作。

http://www.dtcms.com/wzjs/295233.html

相关文章:

  • 做景区网站建设的公司专业做网站建设的公司
  • 四川省查询建设人员注册证书网站最新腾讯新闻
  • 网站收录更新新站整站优化
  • 静态网站模版关键词排名优化工具
  • 赚钱项目天津seo顾问
  • 网站信管局备案全国免费信息发布平台
  • 电脑做网站服务器教程seo按天计费系统
  • 台山政府网站集约化建设域名查询大全
  • 做网站用什么云服务器西seo优化排名
  • 东平县住房和建设局网站新闻媒体发布平台
  • 做网站流量友情网
  • 网站建设的感想与建议南京网络优化培训
  • 山东网站建设维护广告推广平台
  • 丹东市房屋建设委员会网站百度提问登陆入口
  • 动感十足的网站网络优化工程师前景
  • 南漳县建设局网站市场调研报告范文模板word
  • 哪家做网站的公司关键词文案生成器
  • 郑州专业的网站建设百度热点榜单
  • 网页制作的公司网站seo优化案例
  • table表格 做的网站江苏搜索引擎优化公司
  • 制作公司网站需要几个数据表百度搜索引擎优化方案
  • 手机网站 php亚马逊排名seo
  • cn域名做犯法网站seo站
  • 金融网站建设案例搜索引擎优化与关键词的关系
  • 长沙专业外贸网站建设企业管理培训视频免费
  • 做网站领券收佣金全球热搜榜排名今日
  • 保定网站优化公司网站名称查询
  • 外贸营销型网站建设平台重庆百度
  • wordpress 小工具使用最新seo教程
  • 衡水网站制作公司哪家专业指数基金是什么意思