U-Net

Last-modified: 2024-06-11 (火) 20:59:30

U-Netとは何か。

簡単に言うと?

  • U-Netは、画像内の物体やパターンの特徴を自動的に識別し、それらの特徴の境界(物体と背景などさまざま)を詳細に抽出するためのツールです。

なぜ、U-Netと呼ばれるの?

  • U字構造になっているネットワークだからです。

情報元

原文に近い情報はこれ。

diffusers

  • 当機能はdiffusersに実装されている。
    よって、詳細なレイヤー名を知りたいときは、diffusersを検索することになる?

https://huggingface.co/docs/diffusers/index
https://github.com/huggingface/diffusers

U-Netの構造

U-Netの構造は複雑であり、1枚の絵だけでは可視化しきれない。
当wikiに関係する、いろいろな視点で集めてみる。

Stable Diffusion web UIで使われている場所

230719_02_SDにおけるモデルの役割.png

引用:としあき自作

arXiv出典より

U-Net構造 struc_from_arXiv1505.04597.png
引用:https://arxiv.org/abs/1505.04597

 
  • 図左上から中央下にかけて、
    572✕572pxの画像を、最小解像度32✕32pxまでダウンサンプリング。
    結果として、ノイズだらけのぼやけた画像になる。
    この左側の役割を担うのがEncoder(エンコーダ)
  • 図中央下から右にかけて、
    32✕32pxの画像を、388✕388pxまでアップサンプリング。
    この結果が出力したい画像になる。
    この右側の役割を担うのがDecoder(デコーダ)
  • Encoderの過程では、
    • 特徴量を抽出する(フィルタリング)。
    • サイズダウンして、計算コストを削減する

LyCORISより

221555165-7b0a1b96-0cc4-4ec4-bdd7-559a43002c65.png
引用:https://github.com/KohakuBlueleaf/LyCORIS/tree/locon-archive#difference-from-training-lora-on-stable-diffusion

図は、LyCORISで学習できる単位の一例。

関連ページ