想咨询下机器学习PAI 您在MIND里面关于squash的做法,有些地方不是很理解。
scale_factor = tf.pow(input_norm_eps / (1 + input_norm_eps), self._squash_pow) * \
self._scale_ratio / tf.sqrt(input_norm_eps)
为什么用_squash_pow和_scale_ratio来共同控制?
下面的调参建议 squash_pow[0.1 - 1.0]这样会缩小的scale_factor,
但是上面对squash_pow的注视是squash加的power, 防止squash之后的向量值变得太小
这样加完向量模长还能控制到0-1吗?
另外item侧为什么不能用bn啊?
item侧用bn当时实验效果不好,分析可能和batch样本太相关了,和在线预测时的分布不一致了。squash_pow主要用来控制兴趣向量之间的相似度,防止兴趣向量过于相似,这个实验发现用这个方式比加loss控制兴趣向量的相似度,hitrate更好一些。 ,此回答整理自钉群“【EasyRec】推荐算法交流群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
人工智能平台 PAI(Platform for AI,原机器学习平台PAI)是面向开发者和企业的机器学习/深度学习工程平台,提供包含数据标注、模型构建、模型训练、模型部署、推理优化在内的AI开发全链路服务,内置140+种优化算法,具备丰富的行业场景插件,为用户提供低门槛、高性能的云原生AI工程化能力。