РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pytoPmLyDr 74 of 95 menu
◀ ▶

Выключение ячеек в PyTorch

При обучении часть ячеек намеренно обнуляют через класс Dropout. Модуль случайно выбирает, какие значения обнулить. Оставшиеся значения масштабируют, чтобы суммарный масштаб сигнала не просел. Долю выключаемых ячеек задают при создании модуля.

Перед примером зафиксируем зерно генератора, переведём модуль в режим обучения через метод train и подадим ряд из четырёх чисел:

import torch import torch.nn as nn torch.manual_seed(0) drop = nn.Dropout(0.5) drop.train() x = torch.tensor([1.0, 2.0, 3.0, 4.0]) y = drop(x) print(y) # выведет tensor([0., 0., 6., 0.])

Задайте зерно 0, соберите модуль, который при обучении обнуляет половину ячеек, и переведите его в режим обучения. Подайте ряд [1.0, 2.0, 3.0] и выведите тензор после преобразования.

Задайте зерно 0, соберите модуль с обнулением каждой второй ячейки в среднем и включите режим обучения. Подайте таблицу из двух строк [1.0, 1.0, 1.0, 1.0] и выведите результат.

Задайте зерно 0, соберите модуль, выключающий половину ячеек при обучении, вызовите метод перевода в режим обучения и подайте ряд [2.0, 4.0, 6.0, 8.0]. Выведите получившийся тензор.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить