Buckets:
| # UNet1DModel | |
| Модель [UNet](https://huggingface.co/papers/1505.04597) была первоначально представлена Ronneberger et al. для сегментации биомедицинских изображений, однако она также широко используется в 🤗 Diffusers, поскольку на выходе она генерирует изображения того же размера, что и входные. Это один из ключевых компонентов диффузионной системы, так как именно он обеспечивает непосредственный процесс диффузии. В 🤗 Diffusers существует несколько вариантов модели UNet, которые различаются количеством измерений и тем, является ли модель условной. Это одномерная модель UNet. | |
| Аннотация из статьи: | |
| *Существует широкое согласие в том, что успешное обучение глубоких сетей требует тысяч размеченных обучающих примеров. В данной статье мы представляем сеть и стратегию обучения, которые опираются на активное использование аугментации данных для более эффективного использования доступных размеченных примеров. Архитектура состоит из сжимающего пути для захвата контекста и симметричного расширяющего пути, обеспечивающего точную локализацию. Мы показываем, что такая сеть может быть обучена end-to-end по очень малому количеству изображений и превосходит предыдущий лучший метод (сверточная сеть со скользящим окном) на конкурсе ISBI по сегментации нейронных структур в электронных микроскопических стопках. Используя ту же сеть, обученную на изображениях, полученные с помощью световой микроскопии (фазовый контраст и DIC), мы с большим отрывом выиграли конкурс ISBI по отслеживанию клеток 2015 года в этих категориях. Кроме того, сеть работает быстро. Сегментация изображения 512x512 занимает менее секунды на современном GPU. Полная реализация (на основе Caffe) и обученные сети доступны по адресу http://lmb.informatik.uni-freiburg.de/people/ronneber/u-net.* | |
| ## UNet1DModel[[diffusers.UNet1DModel]] | |
| #### diffusers.UNet1DModel[[diffusers.UNet1DModel]] | |
| ```python | |
| diffusers.UNet1DModel(sample_size: int = 65536, sample_rate: int | None = None, in_channels: int = 2, out_channels: int = 2, extra_in_channels: int = 0, time_embedding_type: str = 'fourier', time_embedding_dim: int | None = None, flip_sin_to_cos: bool = True, use_timestep_embedding: bool = False, freq_shift: float = 0.0, down_block_types: tuple[str, ...] = ('DownBlock1DNoSkip', 'DownBlock1D', 'AttnDownBlock1D'), up_block_types: tuple[str, ...] = ('AttnUpBlock1D', 'UpBlock1D', 'UpBlock1DNoSkip'), mid_block_type: str = 'UNetMidBlock1D', out_block_type: str = None, block_out_channels: tuple[int, ...] = (32, 32, 64), act_fn: str = None, norm_num_groups: int = 8, layers_per_block: int = 1, downsample_each_block: bool = False) | |
| ``` | |
| [Источник](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/unet_1d.py#L40) | |
| **Параметры:** | |
| sample_size (`int`, *optional*) : Длина выборки по умолчанию. Должна быть адаптируемой во время выполнения. | |
| in_channels (`int`, *необязательный*, по умолчанию 2) : Количество каналов во входном образце. | |
| out_channels (`int`, *необязательный*, по умолчанию 2) : Количество каналов на выходе. | |
| extra_in_channels (`int`, *optional*, по умолчанию 0) : Количество дополнительных каналов, добавляемых на вход первого down-блока. Полезно в случаях, когда входные данные содержат больше каналов, чем было предусмотрено при первоначальном проектировании модели. | |
| time_embedding_type (`str`, *необязательный*, по умолчанию `"fourier"`) : Тип временного эмбеддинга, который следует использовать. | |
| freq_shift (`float`, *необязательный*, по умолчанию 0.0) : Сдвиг частоты для фуриеровского временного эмбеддинга. | |
| flip_sin_to_cos (`bool`, *необязательный*, по умолчанию `False`) : Нужно ли заменять sin на cos для временного эмбеддинга Фурье. | |
| down_block_types (`tuple[str]`, *необязательный*, по умолчанию `("DownBlock1DNoSkip", "DownBlock1D", "AttnDownBlock1D")`) : кортеж типов блоков понижающего дискретизирования. | |
| up_block_types (`tuple[str]`, *необязательный*, по умолчанию `("AttnUpBlock1D", "UpBlock1D", "UpBlock1DNoSkip")`) : кортеж типов блоков апсемплинга. | |
| block_out_channels (`tuple[int]`, *необязательный*, по умолчанию `(32, 32, 64)`) : кортеж количества выходных каналов блоков. | |
| mid_block_type (`str`, *необязательный*, по умолчанию `"UNetMidBlock1D"`) : Тип блока для средней части UNet. | |
| out_block_type (`str`, *необязательный*, по умолчанию `None`) : Необязательный блок обработки вывода UNet. | |
| act_fn (`str`, *необязательный*, по умолчанию `None`) : Необязательная функция активации в блоках UNet. | |
| norm_num_groups (`int`, *optional*, по умолчанию 8) : Количество групп для нормализации. | |
| layers_per_block (`int`, *необязательный*, по умолчанию 1) : Количество слоёв в каждом блоке. | |
| downsample_each_block (`int`, *необязательный*, по умолчанию `False`) : Экспериментальная функция для использования UNet без апсэмплинга. | |
| Модель 1D UNet, которая принимает зашумленный образец и шаг времени и возвращает вывод той же формы. | |
| Эта модель наследуется от [ModelMixin](/docs/diffusers/main/ru/api/models/overview#diffusers.ModelMixin). См. документацию суперкласса для его универсальных методов, реализованных для всех моделей (например, загрузка или сохранение). | |
| #### forward[[diffusers.UNet1DModel.forward]] | |
| ```python | |
| forward(sample: Tensor, timestep: typing.Union[torch.Tensor, float, int], return_dict: bool = True) | |
| ``` | |
| [Источник](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/unet_1d.py#L205) | |
| **Параметры:** | |
| sample (`torch.Tensor`) : Шумовой входной тензор со следующей формой `(batch_size, num_channels, sample_size)`. | |
| timestep (`torch.Tensor` или `float` или `int`) : Количество шагов для удаления шума из входных данных. | |
| return_dict (`bool`, *необязательный*, по умолчанию `True`) : Возвращать ли [UNet1DOutput](/docs/diffusers/main/ru/api/models/unet#diffusers.models.unets.unet_1d.UNet1DOutput) вместо обычного кортежа. | |
| **Возвращает:** [UNet1DOutput](/docs/diffusers/main/ru/api/models/unet#diffusers.models.unets.unet_1d.UNet1DOutput) или `tuple` | |
| Если `return_dict` равно True, возвращается [UNet1DOutput](/docs/diffusers/main/ru/api/models/unet#diffusers.models.unets.unet_1d.UNet1DOutput), иначе возвращается `tuple`, где первый элемент — это тензор выборки. | |
| Метод forward модели [UNet1DModel](/docs/diffusers/main/ru/api/models/unet#diffusers.UNet1DModel). | |
| ## UNet1DOutput[[diffusers.models.unets.unet_1d.UNet1DOutput]] | |
| #### diffusers.models.unets.unet_1d.UNet1DOutput[[diffusers.models.unets.unet_1d.UNet1DOutput]] | |
| ```python | |
| diffusers.models.unets.unet_1d.UNet1DOutput(sample: Tensor) | |
| ``` | |
| [Источник](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/unet_1d.py#L28) | |
| **Параметры:** | |
| sample (`torch.Tensor` формы `(batch_size, num_channels, sample_size)`) : Скрытые состояния, выведенные из последнего слоя модели. | |
| Вывод [UNet1DModel](/docs/diffusers/main/ru/api/models/unet#diffusers.UNet1DModel). | |
Xet Storage Details
- Size:
- 9.79 kB
- Xet hash:
- 16fbf138424cefc7a3ee19b05665d7176db05db1ec3c883bc39be3c703a5ff66
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.