Загрузите dlnetwork
имена объектов и классов из файла MAT dlnetDigits.mat
.
Ускорите функцию градиентов модели modelGradients
приведенный в конце примера.
Очистите все ранее кэшированные трассировки ускоренной функции с помощью clearCache
функция.
Просмотрите свойства ускоренной функции. Поскольку кэш пуст, Occupancy
свойство равно 0.
accfun =
AcceleratedFunction with properties:
Function: @modelGradients
Enabled: 1
CacheSize: 50
HitRate: 0
Occupancy: 0
CheckMode: 'none'
CheckTolerance: 1.0000e-04
Возвращенный AcceleratedFunction
объект хранит следы базовых вызовов функций и повторно использует результат кэширования, когда тот же входной шаблон повторяется. Чтобы использовать ускоренную функцию в пользовательском цикле обучения, замените вызовы функции градиентов модели на вызовы ускоренной функции. Можно вызвать ускоренную функцию, так как вы бы активировали базовую функцию. Обратите внимание, что ускоренная функция не является указателем на функцию.
Оцените ускоренную функцию градиентов модели со случайными данными с помощью dlfeval
функция.
Просмотрите Occupancy
свойство ускоренной функции. Поскольку функция была оценена, кэш не пуст.
Очистить кэш можно используя clearCache
функция.
Просмотрите Occupancy
свойство ускоренной функции. Поскольку кэш очищен, кэш пуст.
Функция градиентов модели
The modelGradients
функция принимает dlnetwork
dlnet объекта
мини-пакет входных данных dlX
с соответствующими целевыми метками dlT
и возвращает градиенты потерь относительно настраиваемых параметров в dlnet
, состояние сети и потери. Чтобы вычислить градиенты, используйте dlgradient
функция.