学习率乘数
keras-lr-multiplier的Python项目详细描述
keras lr乘数
优化器的学习率倍增包装器。
安装
pip install keras-lr-multiplier
用法
基本
LRMultiplier
是优化器为特定层(或权重)分配不同学习速率的包装器。第一个参数是原始优化器,它可以是标识符(例如'Adam'
)或初始化对象(例如Adam(lr=1e-2)
)。第二个参数是将前缀映射到学习速率乘数的dict。权重的乘数是从给定dict中最长匹配前缀映射的值,如果没有匹配的前缀,则使用默认乘数1.0
。
fromkeras.modelsimportSequentialfromkeras.layersimportDensefromkeras_lr_multiplierimportLRMultipliermodel=Sequential()model.add(Dense(units=5,input_shape=(5,),activation='tanh',name='Dense',))model.add(Dense(units=2,activation='softmax',name='Output',))model.compile(optimizer=LRMultiplier('adam',{'Dense':0.5,'Output':1.5}),loss='sparse_categorical_crossentropy',)
lambda
乘数可以是可调用的对象。输入参数是从0开始的步数。
fromkerasimportbackendasKfromkeras_lr_multiplierimportLRMultiplierLRMultiplier('adam',{'Dense':lambdat:2.0-K.minimum(1.9,t*1e-4)})