Keras 中实现的目标 dropout
项目描述
Keras 有针对性的辍学
带有 tensorflow 后端的Targeted Dropout的非官方实现。请注意,此实现中没有模型压缩。
安装
pip install keras-targeted-dropout
用法
import keras
from keras_targeted_dropout import TargetedDropout
model = keras.models.Sequential()
model.add(TargetedDropout(
layer=keras.layers.Dense(units=2, activation='softmax'),
drop_rate=0.8,
target_rate=0.2,
drop_patterns=['kernel'],
mode=TargetedDropout.MODE_UNIT,
input_shape=(5,),
))
model.compile(optimizer='adam', loss='mse')
model.summary()
drop_rate
:每个像素的丢失率。target_rate
:被选为候选的底部权重的比例drop_patterns
:要删除的权重名称列表。mode
:TargetedDropout.MODE_UNIT
或TargetedDropout.MODE_WEIGHT
.
最终的辍学率将是drop_rate
次target_rate
。