from_dict
功能说明
Decompose类方法,模型低秩分解各层的分解率配置,以字典的方式指定各层的分解后channel 数,返回自身用于链式调用。
函数原型
from_dict(channel_dict, excludes=None, divisor=64)
参数说明
参数名  | 
输入/返回值  | 
含义  | 
使用限制  | 
|---|---|---|---|
channel_dict  | 
输入  | 
字典方式根据层名称指定具体的分解方式。  | 
必选。 数据类型:字典类型,key 值为层名或者匹配层名的正则表达式,取值 为int值、float值、"vbmf",分别对应参照 from_fixed、from_ratio、from_vbmf。  说明:  
在使用复杂的正则表达式时,用户需保证正则表达式的安全性,规避Redos攻击的风险,否则会引起程序执行缓慢。  | 
excludes  | 
输入  | 
指定不分解的层名称。  | 
可选。 数据类型:None或列表或元组。 默认值为None。  | 
divisor  | 
输入  | 
指定分解后channel的倍率,如指定16,则分解后的channel 数为16的倍数。  | 
可选。 数据类型:整数,且大于0,默认值为64。  说明:  
divisor设置为1时,表示禁用此功能。  | 
调用示例
from modelslim.pytorch import low_rank_decompose
decomposer = low_rank_decompose.Decompose(model)  #调用__init__初始化类
decomposer = decomposer.from_dict({'feature.0': (64, 64), 'inner': 192, 'classifier.0': 128}, divisor=16)  # 按照dict方式计算分解信息
父主题: Decompose