Курс Python → Тестирование модели в PyTorch
Для того чтобы эффективно оценивать работу нашей модели машинного обучения, необходимо определить метод тестирования. Этот метод позволит нам проверить качество работы модели на тестовом наборе данных и вывести точность предсказаний. Основное отличие метода тестирования от обучения заключается в том, что в процессе тестирования мы используем функцию model.eval(), чтобы перевести модель в режим тестирования. Также важно использовать torch.no_grad(), чтобы отключить вычисление градиента, поскольку во время тестирования обратное распространение не требуется.
Для начала необходимо перевести модель в режим тестирования с помощью функции model.eval(). Это гарантирует, что все слои модели будут работать в режиме тестирования, что может влиять на поведение некоторых слоев, таких как Dropout или BatchNorm. Затем мы используем torch.no_grad(), чтобы временно отключить автоматическое дифференцирование и вычисление градиента. Это позволяет ускорить процесс тестирования, поскольку не нужно хранить градиенты для обновления весов модели.
model.eval()
with torch.no_grad():
for inputs, labels in test_loader:
outputs = model(inputs)
loss = criterion(outputs, labels)
test_loss += loss.item()
_, predicted = torch.max(outputs, 1)
total += labels.size(0)
correct += (predicted == labels).sum().item()
test_accuracy = correct / total
Наконец, после прохождения всех тестовых данных, мы вычисляем средние потери для всего тестового набора и общую точность предсказаний. Это позволяет оценить, насколько хорошо модель обучилась и способна предсказывать значения на новых данных. Результаты тестирования помогут нам понять, какие улучшения можно внести в модель для повышения ее эффективности и точности предсказаний.
Другие уроки курса "Python"
- Декоратор total_ordering для сравнения объектов
- Генерация случайных чисел в Python
- Генерация случайных чисел Python
- f-строки в формате строк
- Оператор распаковки в Python
- Преобразование строки в число
- Определение основы слова с showballstemmer
- Работа с часовыми поясами в Python
- Вывод переменной и строки в Python
- Область видимости переменных
- Наследование в программировании
- Функции в одну строку
- Скачать видео с YouTube
- Получение обратного списка чисел
- Поиск с библиотекой Google
- Сортировка HTML-элементов
- Библиотека wikipedia для Python
- Установка и использование Python-dateutil
- Получение идентификатора объекта в памяти
- Цикл for в Python
- Инициализация переменных
- Открытие, чтение и закрытие файла
- Атрибуты класса и экземпляра
- Вычисление натуральных логарифмов в NumPy
- Вложенные генераторы в Python
- Генераторные выражения и islice.
- Библиотека funcy: удобные утилиты
- Python: Фильтрация списков с помощью filter()
- Контекстный менеджер в Python
- Функция __init__ в Python
- Принципы Zen Python
- Работа с getopt
- Изменение переменной в Python: nonlocal
- Работа с файлами в Python
- Работа с процессами в Python
- Многоточие в Python
- Структуры данных в Python
- Документирование функций в Python
- Добавление вложенных списков
- Работа с модулем glob в Python
- Обработка исключений в Python 3
- Pillow: работа с изображениями
- Оптимизация интернирования строк
- Просмотр файла в Jupyter Noteboo
- Работа с срезами в Python
- CLI-инструмент howdoi















