Массив глубокого обучения для пользовательских циклов обучения
Массив глубокого обучения хранит данные с необязательными метками формата данных для пользовательских циклов обучения и позволяет функциям вычислять и использовать производные с помощью автоматического дифференцирования.
Совет
Для выполнения большинства задач глубокого обучения можно использовать предварительно подготовленную сеть и адаптировать ее к собственным данным. Пример, показывающий, как использовать transfer learning для переподготовки сверточной нейронной сети для классификации нового набора изображений, см. в разделе Train Deep Learning Network to Classify New Images. Кроме того, можно создавать и обучать сети с нуля с помощью layerGraph
объекты с trainNetwork
и trainingOptions
функции.
Если trainingOptions
функция не предоставляет возможности обучения, необходимые для выполнения задачи, после чего можно создать индивидуальный цикл обучения с помощью автоматического дифференцирования. Дополнительные сведения см. в разделе Определение сети глубокого обучения для пользовательских циклов обучения.
маркирует данные в dlX
= dlarray(X
,fmt
)dlX
в соответствии с форматом данных в fmt
. Метки помогают передавать данные глубокого обучения между функциями. См. раздел Использование. Если X
является помеченным dlarray
, то fmt
заменяет существующие метки.
dlarray
метки позволяют использовать функции в этой таблице для выполнения с гарантией того, что данные имеют соответствующий формат.
Функция | Операция | Проверка входного измерения | Влияет на размер входного размера |
---|---|---|---|
avgpool | Вычислите среднее значение входных данных по перемещающемуся прямоугольному (или кубоидальному) пространственному ('S' ) области, определенные параметром размера пула. | 'S' | 'S' |
batchnorm | Нормализовать значения, содержащиеся в каждом канале ('C' ) входных данных. | 'C' | |
crossentropy | Вычислите перекрестную энтропию между оценками и целевыми значениями, усредненную по размеру партии ('B' ) размерность. | 'S' , 'C' , 'B' , 'T' , 'U' (Оценки и целевые массивы должны иметь одинаковые размеры.) | 'S' , 'C' , 'B' , 'T' , 'U' (Выходные данные являются немеченым скаляром.) |
dlconv | Вычислите свертку глубокого обучения входных данных с помощью массива фильтров, соответствующего количеству пространственных ('S' ) и (функция канала) ('C' ) размеры входного сигнала и добавление постоянного смещения. | 'S' , 'C' | 'S' , 'C' |
dltranspconv | Вычислите глубинную обучающую транспонированную свертку входных данных с помощью массива фильтров, соответствующего количеству пространственных ('S' ) и (функция канала) ('C' ) размеры входного сигнала и добавление постоянного смещения. | 'S' , 'C' | 'S' , 'C' |
fullyconnect | Вычислите взвешенную сумму входных данных и примените смещение для каждого пакета ('B' ) и времени ('T' ) размерность. | 'S' , 'C' , 'U' | 'S' , 'C' , 'B' , 'T' , 'U' (Выходные данные всегда имеют метки 'CB' , 'CT' , или 'CTB' .) |
gru | Примените расчет стробированной повторяющейся единицы к входным данным. | 'S' , 'C' , 'T' | 'C' |
lstm | Примените расчет долговременной памяти к входным данным. | 'S' , 'C' , 'T' | 'C' |
maxpool | Вычислите максимум входных данных по движущейся прямоугольной пространственной ('S' ) области, определенные параметром размера пула. | 'S' | 'S' |
maxunpool | Вычислите операцию разблокировки по пространству ('S' ) размеры. | 'S' | 'S' |
mse | Вычислите половину средней квадратичной ошибки между оценками и целевыми значениями, усредненную по размеру партии ('B' ) размерность. | 'S' , 'C' , 'B' , 'T' , 'U' (Оценки и целевые массивы должны иметь одинаковые размеры.) | 'S' , 'C' , 'B' , 'T' , 'U' (Выходные данные являются немеченым скаляром.) |
softmax | Примените активацию softmax к каждому каналу ('C' ) входных данных. | 'C' |
Эти функции требуют, чтобы каждый размер имел метку, заданную либо как метки их первого dlarray
входные данные или в качестве 'DataFormat'
аргумент пары имя-значение, содержащий метки измерения.
dlarray
обеспечивает порядок размещения этикеток 'SCBTU'
. Такое применение устраняет неоднозначную семантику в операциях, которая неявно соответствует меткам между входами. dlarray
также обеспечивает, чтобы метки 'C'
, 'B'
, и 'T'
каждый может появиться максимум один раз. Функции, использующие эти метки, принимают не более одного размера для каждой метки.
dlarray
обеспечивает функции для удаления меток (stripdims
), получение размеров, связанных с метками (finddim
) и перечисление меток, связанных с dlarray
(dims
).
Дополнительные сведения о том, как dlarray
ведет себя с метками, см. Заметное поведение dlarray.
avgpool | Объединение данных в средние значения по пространственным измерениям |
batchnorm | Нормализовать все наблюдения для каждого канала независимо |
crossentropy | Потери перекрестной энтропии для задач классификации |
dims | Метки размеров dlarray |
dlconv | Глубокий учебный сверток |
dlgradient | Вычисление градиентов для пользовательских циклов обучения с помощью автоматического дифференцирования |
dltranspconv | Свертка с транспонированным глубоким обучением |
extractdata | Извлечь данные из dlarray |
finddim | Поиск размеров с указанной меткой |
fullyconnect | Суммирование всех взвешенных входных данных и применение смещения |
gru | Стробированная рекуррентная установка |
leakyrelu | Включить выпрямленный линейный блок с утечкой |
lstm | Долговременная кратковременная память |
maxpool | Максимальное значение данных пула |
maxunpool | Распаковка выходных данных операции максимального объединения |
mse | Половина среднеквадратичной ошибки |
relu | Включить выпрямленный линейный блок |
sigmoid | Применить сигмоидальную активацию |
softmax | Применить активацию softmax к размеру канала |
stripdims | Удалить dlarray этикетки |
A dlarray
также позволяет выполнять числовые, матричные и другие операции. Полный список см. в разделе Список функций с поддержкой dlarray.
A dlgradient
вызов должен находиться внутри функции. Чтобы получить числовое значение градиента, необходимо вычислить функцию с помощью dlfeval
, и аргумент функции должен быть dlarray
. См. раздел Использование автоматической дифференциации в инструментарии глубокого обучения.
Для корректной оценки градиентов dlfeval
должны вызывать функции, использующие только поддерживаемые функции для dlarray
. См. Список функций с поддержкой dlarray.
dims
| dlfeval
| dlgradient
| dlnetwork
| finddim
| stripdims