3-D средний уровень объединения
Уровень 3-D среднего объединения выполняет понижающую дискретизацию путем разделения трехмерного ввода на области кубического объединения и вычисления средних значений каждой области.
создает уровень среднего пула и устанавливает layer = averagePooling3dLayer(poolSize)PoolSize собственность.
устанавливает необязательный layer = averagePooling3dLayer(poolSize,Name,Value)Stride и Name с использованием пар имя-значение. Чтобы указать заполнение ввода, используйте 'Padding' аргумент пары имя-значение. Например, averagePooling3dLayer(2,'Stride',2) создает 3-D средний уровень пула с размером пула [2 2 2] и stride [2 2 2]. Можно указать несколько пар имя-значение. Заключите каждое имя свойства в отдельные кавычки.
Используйте аргументы пары имя-значение, разделенные запятыми, чтобы указать размер заполнения нуля для добавления вдоль краев входного слоя или для установки Stride и Name свойства. Заключите имена в одинарные кавычки.
averagePooling3dLayer(2,'Stride',2) создает 3-D средний уровень пула с размером пула [2 2 2] и stride [2 2 2].'Padding' - Заполнение входного края0 (по умолчанию) | массив неотрицательных целых чисел | 'same'Заполнение входного края, указанное как разделенная запятыми пара, состоящая из 'Padding' и одно из этих значений:
'same' - Добавление дополнения размера, рассчитанного программным обеспечением во время обучения или прогнозирования, чтобы выходной сигнал имел тот же размер, что и входной, когда шаг равен 1. Если шаг больше 1, то выходной размер равен ceil(inputSize/stride), где inputSize - высота, ширина или глубина ввода и stride - шаг в соответствующем измерении. Программа добавляет одинаковое количество заполнения сверху и снизу, слева и справа, а также спереди и сзади, если это возможно. Если заполнение в данном измерении имеет нечетное значение, то программное обеспечение добавляет дополнительное дополнение к входу в качестве отложенного. Другими словами, программа добавляет дополнительное вертикальное заполнение снизу, дополнительное горизонтальное заполнение справа и дополнительное заполнение глубины сзади ввода.
Неотрицательное целое число p - Добавить заполнение размера p ко всем краям входа.
Трехэлементный вектор [a b c] неотрицательных целых чисел - Добавить дополнение размера a сверху и снизу, заполнение размера b слева и справа и заполнение размера c спереди и сзади входа.
Матрица 2 на 3 [t l f;b r k] неотрицательных целых чисел - Добавить дополнение размера t наверху, b на дно, l слева, r справа, f спереди, и k к задней части входа. Другими словами, верхняя строка определяет предварительное сложение, а вторая строка определяет последующее сложение в трех измерениях.
Пример:
'Padding',1 добавляет один ряд заполнения сверху и снизу, один столбец заполнения слева и справа и одну плоскость заполнения спереди и сзади ввода.
Пример:
'Padding','same' добавляет заполнение так, чтобы выходной сигнал имел тот же размер, что и входной (если шаг равен 1).
PoolSize - Размеры областей объединенияРазмеры областей объединения, определенные как вектор из трех положительных целых чисел [h w d], где h - высота, w - ширина, и d - глубина. При создании слоя можно указать PoolSize в качестве скаляра для использования одинакового значения для всех трех измерений.
Если проставленные размеры Stride меньше, чем соответствующие измерения объединения, то области объединения перекрываются.
Размеры заполнения PaddingSize должно быть меньше, чем размеры области объединения PoolSize.
Пример:
[2 1 1] задает области объединения высоты 2, ширины 1 и глубины 1.
Stride - Размер шага для проходного ввода[1 1 1] (по умолчанию) | вектор из трех положительных целых чиселРазмер шага для прохождения входного сигнала в трех измерениях, заданный как вектор [a b c] трех положительных целых чисел, где a - вертикальный размер шага, b - размер шага по горизонтали, и c - размер шага вдоль направления глубины. При создании слоя можно указать Stride в качестве скаляра для использования одинакового значения для размеров шагов во всех трех направлениях.
Если проставленные размеры Stride меньше, чем соответствующие измерения объединения, то области объединения перекрываются.
Размеры заполнения PaddingSize должно быть меньше, чем размеры области объединения PoolSize.
Пример:
[2 3 1] задает вертикальный размер шага 2, горизонтальный размер шага 3 и размер шага вдоль глубины 1.
PaddingSize - Размер заполнения[0 0 0;0 0 0] (по умолчанию) | матрица 2 на 3 неотрицательных целых чиселРазмер заполнения, применяемого к границам ввода, задается как матрица 2 на 3 [t l f;b r k] неотрицательных целых чисел, где t и b - заполнение, нанесенное сверху и снизу в вертикальном направлении, l и r являются заполнением, нанесенным слева и справа в горизонтальном направлении, и f и k - это заполнение, нанесенное на переднюю и заднюю стороны вдоль глубины. Другими словами, верхняя строка определяет предварительное сложение, а вторая строка определяет последующее сложение в трех измерениях.
При создании слоя используйте 'Padding' аргумент пары имя-значение для указания размера заполнения.
Пример:
[1 2 4;1 2 4] добавляет один ряд заполнения сверху и снизу, два столбца заполнения слева и справа и четыре плоскости заполнения спереди и сзади ввода.
PaddingMode - Метод определения размера заполнения'manual' (по умолчанию) | 'same'Метод определения размера заполнения, указанный как 'manual' или 'same'.
Программа автоматически устанавливает значение PaddingMode на основе значения «Заполнение», заданного при создании слоя.
Если установить 'Padding' опция скаляра или вектора неотрицательных целых чисел, затем программа автоматически устанавливает PaddingMode кому 'manual'.
Если установить 'Padding' опция для 'same', то программное обеспечение автоматически устанавливает PaddingMode кому 'same' и вычисляет размер заполнения во время тренировки так, чтобы выходной сигнал имел тот же размер, что и входной сигнал, когда шаг равен 1. Если шаг больше 1, то выходной размер равен ceil(inputSize/stride), где inputSize - высота, ширина или глубина ввода и stride - шаг в соответствующем измерении. Программа добавляет одинаковое количество заполнения сверху и снизу, слева и справа, а также спереди и сзади, если это возможно. Если заполнение в данном измерении имеет нечетное значение, то программное обеспечение добавляет дополнительное дополнение к входу в качестве отложенного. Другими словами, программа добавляет дополнительное вертикальное заполнение снизу, дополнительное горизонтальное заполнение справа и дополнительное заполнение глубины сзади ввода.
PaddingValue - Значение, используемое для ввода на площадку0 (по умолчанию) | 'mean'Значение, используемое для ввода на площадку, указанное как 0 или 'mean'.
При использовании 'Padding' для добавления дополнения к входу значение применяемого дополнения может быть одним из следующих:
0 - Вход заполнен нулями в положениях, указанных 'Padding' вариант. Заполненные области включаются в расчет среднего значения областей объединения по краям.
'mean' - Ввод дополняется средним значением области объединения в позициях, указанных в 'Padding' вариант. Заполненные области фактически исключаются из вычисления среднего значения каждой области объединения.
Пример: 'PaddingValue','mean'
Name - Имя слоя'' (по умолчанию) | символьный вектор | строковый скаляр
Имя слоя, указанное как символьный вектор или строковый скаляр. Чтобы включить слой в график слоев, необходимо указать непустое уникальное имя слоя. Если вы обучаете последовательную сеть с уровнем и Name имеет значение ''затем программа автоматически присваивает имя слою во время обучения.
Типы данных: char | string
NumInputs - Количество входовКоличество входов слоя. Этот слой принимает только один вход.
Типы данных: double
InputNames - Входные имена{'in'} (по умолчанию)Входные имена слоя. Этот слой принимает только один вход.
Типы данных: cell
NumOutputs - Количество выходовКоличество выходов уровня. Этот уровень имеет только один выход.
Типы данных: double
OutputNames - Имена выходных данных{'out'} (по умолчанию)Выходные имена слоя. Этот уровень имеет только один выход.
Типы данных: cell
Создайте 3-D средний уровень объединения с неперекрывающимися областями объединения, которые понижают выборку в 2 раза.
layer = averagePooling3dLayer(2,'Stride',2)layer =
AveragePooling3DLayer with properties:
Name: ''
Hyperparameters
PoolSize: [2 2 2]
Stride: [2 2 2]
PaddingMode: 'manual'
PaddingSize: [2x3 double]
PaddingValue: 0
Включение 3-D среднего уровня объединения в Layer массив.
layers = [ ... image3dInputLayer([28 28 28 3]) convolution3dLayer(5,20) reluLayer averagePooling3dLayer(2,'Stride',2) fullyConnectedLayer(10) softmaxLayer classificationLayer]
layers =
7x1 Layer array with layers:
1 '' 3-D Image Input 28x28x28x3 images with 'zerocenter' normalization
2 '' Convolution 20 5x5x5 convolutions with stride [1 1 1] and padding [0 0 0; 0 0 0]
3 '' ReLU ReLU
4 '' Average 3D Pooling 2x2x2 average pooling with stride [2 2 2] and padding [0 0 0; 0 0 0]
5 '' Fully Connected 10 fully connected layer
6 '' Softmax softmax
7 '' Classification Output crossentropyex
Создайте 3-D средний уровень объединения с перекрывающимися областями объединения и заполнением для верхней и нижней частей ввода.
layer = averagePooling3dLayer([3 2 2],'Stride',2,'Padding',[1 0 0])
layer =
AveragePooling3DLayer with properties:
Name: ''
Hyperparameters
PoolSize: [3 2 2]
Stride: [2 2 2]
PaddingMode: 'manual'
PaddingSize: [2x3 double]
PaddingValue: 0
Этот слой создает области объединения размера 3 на 2 на 2 и берет среднее число этих двенадцати элементов в каждом регионе. Шаг равен 2 во всех измерениях. Области объединения перекрываются, поскольку существуют измерения шага Stride которые меньше, чем соответствующие измерения объединения PoolSize.
3-D средний уровень объединения расширяет функциональные возможности среднего уровня объединения до третьего размера, глубины. Средний уровень объединения выполняет понижающую выборку путем разделения входных данных на прямоугольные или кубические области объединения и вычисления среднего значения для каждой области. Для получения дополнительных сведений см. определение среднего уровня объединения в averagePooling2dLayer справочная страница.
averagePooling2dLayer | convolution3dLayer | maxPooling3dLayer
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.