create_dl_layer_concatT_create_dl_layer_concatCreateDlLayerConcatCreateDlLayerConcatcreate_dl_layer_concat创建深度学习层连接(算子)

名称

create_dl_layer_concatT_create_dl_layer_concatCreateDlLayerConcatCreateDlLayerConcatcreate_dl_layer_concat — 创建连接层。

签名

create_dl_layer_concat( : : DLLayerInputs, LayerName, Axis, GenParamName, GenParamValue : DLLayerConcat)

Herror T_create_dl_layer_concat(const Htuple DLLayerInputs, const Htuple LayerName, const Htuple Axis, const Htuple GenParamName, const Htuple GenParamValue, Htuple* DLLayerConcat)

void CreateDlLayerConcat(const HTuple& DLLayerInputs, const HTuple& LayerName, const HTuple& Axis, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* DLLayerConcat)

static HDlLayer HDlLayer::CreateDlLayerConcat(const HDlLayerArray& DLLayerInputs, const HString& LayerName, const HString& Axis, const HTuple& GenParamName, const HTuple& GenParamValue)

HDlLayer HDlLayer::CreateDlLayerConcat(const HString& LayerName, const HString& Axis, const HString& GenParamName, const HString& GenParamValue) const

HDlLayer HDlLayer::CreateDlLayerConcat(const char* LayerName, const char* Axis, const char* GenParamName, const char* GenParamValue) const

HDlLayer HDlLayer::CreateDlLayerConcat(const wchar_t* LayerName, const wchar_t* Axis, const wchar_t* GenParamName, const wchar_t* GenParamValue) const   ( Windows only)

static void HOperatorSet.CreateDlLayerConcat(HTuple DLLayerInputs, HTuple layerName, HTuple axis, HTuple genParamName, HTuple genParamValue, out HTuple DLLayerConcat)

static HDlLayer HDlLayer.CreateDlLayerConcat(HDlLayer[] DLLayerInputs, string layerName, string axis, HTuple genParamName, HTuple genParamValue)

HDlLayer HDlLayer.CreateDlLayerConcat(string layerName, string axis, string genParamName, string genParamValue)

def create_dl_layer_concat(dllayer_inputs: MaybeSequence[HHandle], layer_name: str, axis: str, gen_param_name: MaybeSequence[str], gen_param_value: MaybeSequence[Union[int, float, str]]) -> HHandle

描述

算子 create_dl_layer_concatcreate_dl_layer_concatCreateDlLayerConcatCreateDlLayerConcatCreateDlLayerConcatcreate_dl_layer_concat 创建一个连接层,其句柄通过 DLLayerConcatDLLayerConcatDLLayerConcatDLLayerConcatDLLayerConcatdllayer_concat 返回。

参数 DLLayerInputsDLLayerInputsDLLayerInputsDLLayerInputsDLLayerInputsdllayer_inputs 决定输入层的数量。该层期望接收多个层作为输入。

参数 LayerNameLayerNameLayerNameLayerNamelayerNamelayer_name 用于设置单个层的名称。请注意,若使用 create_dl_modelcreate_dl_modelCreateDlModelCreateDlModelCreateDlModelcreate_dl_model 创建模型,则创建网络中的每个层必须具有唯一名称。

连接层将 DLLayerInputsDLLayerInputsDLLayerInputsDLLayerInputsDLLayerInputsdllayer_inputs 中输入层的数据张量进行连接,并返回单个数据张量 DLLayerConcatDLLayerConcatDLLayerConcatDLLayerConcatDLLayerConcatdllayer_concat。参数 AxisAxisAxisAxisaxisaxis 指定输入应沿哪个维度进行连接。AxisAxisAxisAxisaxisaxis 支持的选项包括:

'batch'"batch""batch""batch""batch""batch"

沿 batch 维度进行连接。

示例: 若将两个输入 AB 连接,其形状为 (h, w, d, b) = (1, 1, 1, 2),其中 A = [A0, A1] 和 B = [B0, B1],则可获得输出 [A0, A1, B0, B1],其形状为 (1, 1, 1, 4)。

'batch_interleaved'"batch_interleaved""batch_interleaved""batch_interleaved""batch_interleaved""batch_interleaved"

沿 depth 维度进行连接,但输出将重塑为沿 batch 维度拼接的效果。该维度要求所有输入必须具有完全相同的形状。

需注意当输入 batch_size1 时,'batch'"batch""batch""batch""batch""batch"'batch_interleaved'"batch_interleaved""batch_interleaved""batch_interleaved""batch_interleaved""batch_interleaved" 的连接效果完全一致。

示例: 若将两个输入 AB 连接,其形状为 (h, w, d, b) = (1, 1, 1, 2),其中 A = [A0, A1] 和 B = [B0, B1],则可获得输出 [A0, B0, A1, B1],其形状为 (1, 1, 1, 4)。

'depth'"depth""depth""depth""depth""depth"

沿 depth 维度进行连接。

示例: 若将两个输入 AB 连接,其形状为 (h, w, d, b) = (1, 1, 1, 2),其中 A = [A0, A1] 和 B = [B0, B1],则可获得输出 [A0, A1, B0, B1],其形状为 (1, 1, 2, 2)。

'height'"height""height""height""height""height"

沿 height 维度进行连接。

'width'"width""width""width""width""width"

沿 width 维度进行连接。

注意:所有输入数据张量中,未参与连接的维度必须完全一致。

以下泛型参数 GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name 及其对应值 GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value 受支持:

'is_inference_output'"is_inference_output""is_inference_output""is_inference_output""is_inference_output""is_inference_output"

确定 apply_dl_modelapply_dl_modelApplyDlModelApplyDlModelApplyDlModelapply_dl_model 是否将此层的输出包含在字典 DLResultBatchDLResultBatchDLResultBatchDLResultBatchDLResultBatchdlresult_batch 中,即使未在 OutputsOutputsOutputsOutputsoutputsoutputs 中指定此层('true'"true""true""true""true""true")或不包含('false'"false""false""false""false""false")。

默认值: 'false'"false""false""false""false""false"

使用 create_dl_layer_concatcreate_dl_layer_concatCreateDlLayerConcatCreateDlLayerConcatCreateDlLayerConcatcreate_dl_layer_concat 算子创建的层,其特定参数可通过其他算子进行设置与检索。下表概述了可通过 set_dl_model_layer_paramset_dl_model_layer_paramSetDlModelLayerParamSetDlModelLayerParamSetDlModelLayerParamset_dl_model_layer_param 设置的参数,以及可通过 get_dl_model_layer_paramget_dl_model_layer_paramGetDlModelLayerParamGetDlModelLayerParamGetDlModelLayerParamget_dl_model_layer_paramget_dl_layer_paramget_dl_layer_paramGetDlLayerParamGetDlLayerParamGetDlLayerParamget_dl_layer_param 检索的参数。请注意,算子 set_dl_model_layer_paramset_dl_model_layer_paramSetDlModelLayerParamSetDlModelLayerParamSetDlModelLayerParamset_dl_model_layer_paramget_dl_model_layer_paramget_dl_model_layer_paramGetDlModelLayerParamGetDlModelLayerParamGetDlModelLayerParamget_dl_model_layer_param 需基于 create_dl_modelcreate_dl_modelCreateDlModelCreateDlModelCreateDlModelcreate_dl_model 创建的模型。

层参数 设置 获取
'input_layer'"input_layer""input_layer""input_layer""input_layer""input_layer" (DLLayerInputsDLLayerInputsDLLayerInputsDLLayerInputsDLLayerInputsdllayer_inputs)
'name'"name""name""name""name""name" (LayerNameLayerNameLayerNameLayerNamelayerNamelayer_name)
'output_layer'"output_layer""output_layer""output_layer""output_layer""output_layer" (DLLayerConcatDLLayerConcatDLLayerConcatDLLayerConcatDLLayerConcatdllayer_concat)
'shape'"shape""shape""shape""shape""shape"
'type'"type""type""type""type""type"
泛型层参数 设置 获取
'is_inference_output'"is_inference_output""is_inference_output""is_inference_output""is_inference_output""is_inference_output"
'num_trainable_params'"num_trainable_params""num_trainable_params""num_trainable_params""num_trainable_params""num_trainable_params"

执行信息

参数

DLLayerInputsDLLayerInputsDLLayerInputsDLLayerInputsDLLayerInputsdllayer_inputs (输入控制)  dl_layer(-array) HDlLayer, HTupleMaybeSequence[HHandle]HTupleHtuple (handle) (IntPtr) (HHandle) (handle)

输入层的数量。

LayerNameLayerNameLayerNameLayerNamelayerNamelayer_name (输入控制)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

输出层的名称。

AxisAxisAxisAxisaxisaxis (输入控制)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

沿此维度将输入层进行连接。

默认值: 'depth' "depth" "depth" "depth" "depth" "depth"

值列表: 'batch'"batch""batch""batch""batch""batch", 'batch_interleaved'"batch_interleaved""batch_interleaved""batch_interleaved""batch_interleaved""batch_interleaved", 'depth'"depth""depth""depth""depth""depth", 'height'"height""height""height""height""height", 'width'"width""width""width""width""width"

GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (输入控制)  attribute.name(-array) HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)

泛型输入参数名称。

默认值: []

值列表: 'is_inference_output'"is_inference_output""is_inference_output""is_inference_output""is_inference_output""is_inference_output"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (输入控制)  attribute.value(-array) HTupleMaybeSequence[Union[int, float, str]]HTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

泛型输入参数值。

默认值: []

建议值: 'true'"true""true""true""true""true", 'false'"false""false""false""false""false"

DLLayerConcatDLLayerConcatDLLayerConcatDLLayerConcatDLLayerConcatdllayer_concat (输出控制)  dl_layer HDlLayer, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

连接层。

模块

深度学习训练