Ускоренная функция глубокого обучения
AcceleratedFunction
трассировки хранилищ базовой функции
Многократное использование кэшируемой трассировки зависит от входных параметров функции и выходных параметров:
Для любого dlarray
объект или структура dlarray
возразите входным параметрам, трассировка зависит от размера, формата и базового типа данных dlarray
. Таким образом, ускоренная функция инициировала новую трассировку для dlarray
входные параметры с размером, форматом или базовым типом данных, не содержавшимся в кэше. Любой dlarray
входные параметры, отличающиеся только значением к ранее кэшируемой трассировке, не инициировали новую трассировку.
Для любого dlnetwork
входные параметры, трассировка зависит от размера, формата и базового типа данных dlnetwork
состояние и настраиваемые параметры. Таким образом, ускоренная функция инициировала новую трассировку для dlnetwork
входные параметры с настраиваемыми параметрами или состояние с размером, форматом и базовым типом данных, не содержавшимся в кэше. Любой dlnetwork
входные параметры, отличающиеся только значением состояния и настраиваемых параметров к ранее кэшируемой трассировке, не инициировали новую трассировку.
Для других типов входа трассировка зависит от значений входа. Таким образом, ускоренная функция инициировала новую трассировку для других типов входа со значением, не содержавшимся в кэше. Любые другие входные параметры, которые имеют то же значение как ранее кэшируемая трассировка, не инициировали новую трассировку.
Трассировка зависит от количества функциональных выходных параметров. Таким образом, ускоренная функция инициировала новую трассировку для вызовов функции с ранее невидимыми количествами выходных аргументов. Любые вызовы функции с тем же количеством выходных аргументов как ранее кэшируемая трассировка не инициировали новую трассировку.
Когда необходимо, кэши программного обеспечения любые новые трассировки путем выполнения базовой функции и кэширования получившейся трассировки в AcceleratedFunction
объект.
Возвращенный AcceleratedFunction
объектные кэши трассировки вызовов базовой функции и повторных использований кэшируемый результат, когда тот же входной набор повторяется.
Попытайтесь использовать dlaccelerate
для вызовов функции, что:
продолжительны
имейте dlarray
объекты, структуры dlarray
объекты или dlnetwork
объекты как входные параметры
не имейте побочных эффектов как запись в файлы или отображение вывода
Вызовите ускоренную функцию, как вы вызвали бы базовую функцию. Обратите внимание на то, что ускоренная функция не является указателем на функцию.
Примечание
При использовании dlfeval
функция, программное обеспечение автоматически ускоряется forward
и predict
функции для dlnetwork
входной параметр. Если вы ускоряете функцию глубокого обучения, где большинство расчета происходит в вызовах forward
или predict
функции для dlnetwork
введите, затем вы не можете видеть улучшение в учебное время.
Внимание
AcceleratedFunction
объект не знает об обновлениях базовой функции. Если вы изменяете функцию, сопоставленную с ускоренной функцией, то очистите кэш с помощью clearCache
возразите функции или альтернативно используйте команду clear functions
.
Создать AcceleratedFunction
объект, используйте dlaccelerate
функция.
clearCache | Очистите ускоренный кэш трассировки функции глубокого обучения |
dlaccelerate
| clearCache
| dlarray
| dlgradient
| dlfeval