create_dl_pruningT_create_dl_pruningCreateDlPruningCreateDlPruningcreate_dl_pruning创建深度学习剪枝(算子)
名称
create_dl_pruningT_create_dl_pruningCreateDlPruningCreateDlPruningcreate_dl_pruning — 创建剪枝数据句柄。
签名
void CreateDlPruning(const HTuple& DLModelHandle, const HTuple& Mode, const HTuple& GenParam, HTuple* DLPruningHandle)
HDlPrune HDlModel::CreateDlPruning(const HString& Mode, const HDict& GenParam) const
HDlPrune HDlModel::CreateDlPruning(const char* Mode, const HDict& GenParam) const
HDlPrune HDlModel::CreateDlPruning(const wchar_t* Mode, const HDict& GenParam) const
(
Windows only)
void HDlPrune::HDlPrune(const HDlModel& DLModelHandle, const HString& Mode, const HDict& GenParam)
void HDlPrune::HDlPrune(const HDlModel& DLModelHandle, const char* Mode, const HDict& GenParam)
void HDlPrune::HDlPrune(const HDlModel& DLModelHandle, const wchar_t* Mode, const HDict& GenParam)
(
Windows only)
void HDlPrune::CreateDlPruning(const HDlModel& DLModelHandle, const HString& Mode, const HDict& GenParam)
void HDlPrune::CreateDlPruning(const HDlModel& DLModelHandle, const char* Mode, const HDict& GenParam)
void HDlPrune::CreateDlPruning(const HDlModel& DLModelHandle, const wchar_t* Mode, const HDict& GenParam)
(
Windows only)
描述
算子 create_dl_pruningcreate_dl_pruningCreateDlPruningCreateDlPruningCreateDlPruningcreate_dl_pruning 创建一个句柄
DLPruningHandleDLPruningHandleDLPruningHandleDLPruningHandleDLPruningHandledlpruning_handle。该句柄用于在剪枝深度学习模型时传递信息。
ModeModeModeModemodemode 参数指定剪枝方法。该模式决定了将被移除的内容以及所需的评分。目前仅实现以下 'mode'"mode""mode""mode""mode""mode":
- 'oracle'"oracle""oracle""oracle""oracle""oracle":
移除卷积层的核。为此,需为每个(可移除的)核计算分数,该分数反映其在给定网络中处理特定图像的重要性。详情参见相关文献。
GenParamGenParamGenParamGenParamgenParamgen_param 是用于设置泛型参数的字典。当前不支持任何通用参数。
有关深度学习概念的说明,请参阅 深度学习 一章的引言。
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 未采用并行化处理。
此算子返回一个句柄。请注意,即使该句柄被用作特定算子的输入参数,这些算子仍可能改变此句柄类型的实例状态。
参数
DLModelHandleDLModelHandleDLModelHandleDLModelHandleDLModelHandledlmodel_handle (输入控制) dl_model → HDlModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
深度学习模型的句柄。
ModeModeModeModemodemode (输入控制) string → HTuplestrHTupleHtuple (string) (string) (HString) (char*)
剪枝方法。
默认值:
'oracle'
"oracle"
"oracle"
"oracle"
"oracle"
"oracle"
值列表:
'oracle'"oracle""oracle""oracle""oracle""oracle"
GenParamGenParamGenParamGenParamgenParamgen_param (输入控制) dict → HDict, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
带泛型参数的字典。
默认值:
[]
DLPruningHandleDLPruningHandleDLPruningHandleDLPruningHandleDLPruningHandledlpruning_handle (输出控制) dl_pruning → HDlPrune, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
剪枝数据句柄。
可能的前趋
read_dl_modelread_dl_modelReadDlModelReadDlModelReadDlModelread_dl_model
可能的后继
get_dl_pruning_paramget_dl_pruning_paramGetDlPruningParamGetDlPruningParamGetDlPruningParamget_dl_pruning_param,
set_dl_model_paramset_dl_model_paramSetDlModelParamSetDlModelParamSetDlModelParamset_dl_model_param
参考文献
Pavlo Molchanov, Stephen Tyree, Tero Karras, Timo Aila, Jan Kautz
"Pruning Convolutional Neural Networks for Resource Efficient Inference",
ICLR 2017, 5th International Conference on Learning Representations, Toulon,
France.
模块
深度学习训练