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

做网站杭州短视频营销成功案例

做网站杭州,短视频营销成功案例,网站首页psd格式怎么做,公司做网站需要注意什么FreeU: Free Lunch in Diffusion U-Net 摘要 作者研究了 U-Net 架构对去噪过程的关键贡献,并发现其主干部分主要在去噪方面发挥作用,而其跳跃连接主要是向解码器模块引入高频特征,这使得网络忽略了主干部分的语义信息。基于这一发现&#…

FreeU: Free Lunch in Diffusion U-Net

摘要

作者研究了 U-Net 架构对去噪过程的关键贡献,并发现其主干部分主要在去噪方面发挥作用,而其跳跃连接主要是向解码器模块引入高频特征,这使得网络忽略了主干部分的语义信息。基于这一发现,我们提出了一种简单却有效的方法-- “FreeU”,它无需额外训练或微调就能提升生成质量。我们的核心思路是从策略上对源自 U-Net 跳跃连接和主干特征图的贡献进行重新加权,以充分利用 U-Net 架构中这两个组件的优势。在图像和视频生成任务上取得的良好结果表明, FreeU 方法可以很容易地集成到现有的扩散模型中,例如稳定扩散(Stable Diffusion)、DreamBooth、ModelScope、Rerender 和 ReVersion 等,只需几行代码就能提升生成质量。
在这里插入图片描述
试验表明,如果把decoder阶段的全部backbone都放大,会导致oversmoothed texture。为了缓解这种情况,只在decoder的前两个阶段使用,放大backbone,并且缩小skip features。skip features需要进行FFT和IFFT,详见函数 fourier_filter代码。
完整的stable diffusion1.5的UNet结构可参考UNet2DConditionModel

SDXL效果对比

在这里插入图片描述

参数,来自于FreeU

SD1.4: (will be updated soon)
b1: 1.3, b2: 1.4, s1: 0.9, s2: 0.2SD1.5: (will be updated soon)
b1: 1.5, b2: 1.6, s1: 0.9, s2: 0.2SD2.1
b1: 1.1, b2: 1.2, s1: 0.9, s2: 0.2
b1: 1.4, b2: 1.6, s1: 0.9, s2: 0.2SDXL
b1: 1.3, b2: 1.4, s1: 0.9, s2: 0.2 SDXL resultsRange for More Parameters
When trying additional parameters, consider the following ranges:b1: 1 ≤ b1 ≤ 1.2
b2: 1.2 ≤ b2 ≤ 1.6
s1: s1 ≤ 1
s2: s2 ≤ 1

代码

使用方法

import torch
from diffusers import DiffusionPipelinepipeline = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16,
).to("cuda")
pipeline.enable_freeu(s1=0.9, s2=0.2, b1=1.3, b2=1.4)   ##add
generator = torch.Generator(device="cpu").manual_seed(13)
prompt = "A squirrel eating a burger"
image = pipeline(prompt, generator=generator).images[0]
image

FreeU函数(来自于diffusers)

def apply_freeu(resolution_idx: int, hidden_states: "torch.Tensor", res_hidden_states: "torch.Tensor", **freeu_kwargs
) -> Tuple["torch.Tensor", "torch.Tensor"]:"""Applies the FreeU mechanism as introduced in https://arxiv.org/abs/2309.11497. Adapted from the official code repository: https://github.com/ChenyangSi/FreeU.Args:resolution_idx (`int`): Integer denoting the UNet block where FreeU is being applied.hidden_states (`torch.Tensor`): Inputs to the underlying block.res_hidden_states (`torch.Tensor`): Features from the skip block corresponding to the underlying block.s1 (`float`): Scaling factor for stage 1 to attenuate the contributions of the skip features.s2 (`float`): Scaling factor for stage 2 to attenuate the contributions of the skip features.b1 (`float`): Scaling factor for stage 1 to amplify the contributions of backbone features.b2 (`float`): Scaling factor for stage 2 to amplify the contributions of backbone features."""if resolution_idx == 0:num_half_channels = hidden_states.shape[1] // 2hidden_states[:, :num_half_channels] = hidden_states[:, :num_half_channels] * freeu_kwargs["b1"]res_hidden_states = fourier_filter(res_hidden_states, threshold=1, scale=freeu_kwargs["s1"])if resolution_idx == 1:num_half_channels = hidden_states.shape[1] // 2hidden_states[:, :num_half_channels] = hidden_states[:, :num_half_channels] * freeu_kwargs["b2"]res_hidden_states = fourier_filter(res_hidden_states, threshold=1, scale=freeu_kwargs["s2"])return hidden_states, res_hidden_states
def fourier_filter(x_in: "torch.Tensor", threshold: int, scale: int) -> "torch.Tensor":"""Fourier filter as introduced in FreeU (https://arxiv.org/abs/2309.11497).This version of the method comes from here:https://github.com/huggingface/diffusers/pull/5164#issuecomment-1732638706"""x = x_inB, C, H, W = x.shape# Non-power of 2 images must be float32if (W & (W - 1)) != 0 or (H & (H - 1)) != 0:x = x.to(dtype=torch.float32)# fftn does not support bfloat16elif x.dtype == torch.bfloat16:x = x.to(dtype=torch.float32)# FFTx_freq = fftn(x, dim=(-2, -1))x_freq = fftshift(x_freq, dim=(-2, -1))B, C, H, W = x_freq.shapemask = torch.ones((B, C, H, W), device=x.device)crow, ccol = H // 2, W // 2mask[..., crow - threshold : crow + threshold, ccol - threshold : ccol + threshold] = scalex_freq = x_freq * mask# IFFTx_freq = ifftshift(x_freq, dim=(-2, -1))x_filtered = ifftn(x_freq, dim=(-2, -1)).realreturn x_filtered.to(dtype=x_in.dtype)
http://www.zhongyajixie.com/news/1295.html

相关文章:

  • 网站个人博客怎么做台州百度推广优化
  • 做电影网站 广告收入百度云网盘免费资源
  • 做经营性网站怎么办理手续有什么好用的搜索引擎
  • 网站备案负责人照片百度竞价推广的优势
  • 网站登录怎么退出制作网站需要多少费用
  • 莱芜高新区管委会网站重庆seo全网营销
  • 快速搭建个人网站关键词有哪些关联词
  • 做特殊单页的网站网站做外链平台有哪些
  • 广州网站建设加q.479185700九江seo公司
  • 网站顶级导航制作方法seo引擎优化是做什么的
  • 做网站在哪里接活广州seo招聘信息
  • 做传奇私服网站大概多少钱宁国网络推广
  • 网站建设制作后报告临沂seo
  • 深圳做营销网站的公司网络营销推广方式都有哪些
  • 传播文化有限公司网站建设推广软件赚钱
  • 广州哪里有学做网站的济南网络推广网络营销
  • 网站建设要学哪些方面百度指数
  • 能自己做的ppt网站厂房网络推广平台
  • 专门做赌博网站犯法吗外媒头条最新消息
  • 怎么自制网页链接seo词库排行
  • java网站开发架构微信引流的十个方法
  • 做网站收费标准营销推广投放
  • 怎样查网站用什么程序做的济南网站优化公司排名
  • 专业网站制作团队公司网站
  • 文成网站建设在线网站流量查询
  • 阿里云iot网站开发引流推广平台有哪些
  • 服务管理系统宁波百度seo排名优化
  • 重庆做网站开发的公司有哪些公司seo是指什么意思
  • 后端开发工程师seo快速排名软件平台
  • logo免费制作平台深圳seo技术