Operator Reference

load_dl_model_weightsT_load_dl_model_weightsLoadDlModelWeightsLoadDlModelWeightsload_dl_model_weights (Operator)

load_dl_model_weightsT_load_dl_model_weightsLoadDlModelWeightsLoadDlModelWeightsload_dl_model_weights — Load the weights of a source model into a target model.

Signature

load_dl_model_weights( : : DLModelHandleSource, DLModelHandleTarget : ChangesByLayer)

Herror T_load_dl_model_weights(const Htuple DLModelHandleSource, const Htuple DLModelHandleTarget, Htuple* ChangesByLayer)

void LoadDlModelWeights(const HTuple& DLModelHandleSource, const HTuple& DLModelHandleTarget, HTuple* ChangesByLayer)

HTuple HDlModel::LoadDlModelWeights(const HDlModel& DLModelHandleTarget) const

def load_dl_model_weights(dlmodel_handle_source: HHandle, dlmodel_handle_target: HHandle) -> Sequence[int]

def load_dl_model_weights_s(dlmodel_handle_source: HHandle, dlmodel_handle_target: HHandle) -> int

Description

The operator load_dl_model_weightsload_dl_model_weightsLoadDlModelWeightsLoadDlModelWeightsload_dl_model_weights loads weights of a source model DLModelHandleSourceDLModelHandleSourceDLModelHandleSourceDLModelHandleSourcedlmodel_handle_source into a target model DLModelHandleTargetDLModelHandleTargetDLModelHandleTargetDLModelHandleTargetdlmodel_handle_target. Thereby applies for every layer in the target model: Its weights are only changed if there is a layer in the source model having the same name and the same weight-shape. Note that DLModelHandleSourceDLModelHandleSourceDLModelHandleSourceDLModelHandleSourcedlmodel_handle_source must be different from DLModelHandleTargetDLModelHandleTargetDLModelHandleTargetDLModelHandleTargetdlmodel_handle_target, i.e., you cannot use the same model handle as source and target.

ChangesByLayerChangesByLayerChangesByLayerchangesByLayerchanges_by_layer is a tuple indicating for every target layer how many weights changed. Its entries are sorted by ascending layer IDs. The layer IDs can be queried via the operator get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamget_dl_model_param with the parameter 'summary'"summary""summary""summary""summary".

Note, that 'weights' means all weights and biases for all layers which can have such values (e.g., convolutional layer, batch normalization layer, etc.).

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Processed without parallelization.

Parameters

DLModelHandleSourceDLModelHandleSourceDLModelHandleSourceDLModelHandleSourcedlmodel_handle_source (input_control)  dl_model HDlModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle of the source deep learning model.

DLModelHandleTargetDLModelHandleTargetDLModelHandleTargetDLModelHandleTargetdlmodel_handle_target (input_control)  dl_model HDlModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle of the target deep learning model.

ChangesByLayerChangesByLayerChangesByLayerchangesByLayerchanges_by_layer (output_control)  integer(-array) HTupleSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Indicates for every target layer how many weights changed.

Result

If the parameters are valid, the operator load_dl_model_weightsload_dl_model_weightsLoadDlModelWeightsLoadDlModelWeightsload_dl_model_weights returns the value 2 ( H_MSG_TRUE) . If necessary, an exception is raised.

Module

Deep Learning Professional