Teach_student

一、背景及需求:多模型—>单模型

原始bagging5个模型
Teach_student_第1张图片
每个模型的F1值:
Teach_student_第2张图片

多模型融合效果:
Teach_student_第3张图片
现在是要把5个模型通过T-S生成1个模型。

二、T-S简介

Teach_student_第4张图片

三、实现

  • 首先是从已知的模型中取出loss,这里需要重新run graph,命名空间很重要,feed数据与模型的输入保持一致,
    这里写图片描述

input_node是输入节点的名字,需要获取的loss节点的名字也需要知道。

Teach_student_第5张图片
这样就可以从当前输入数据中run单个模型获得teacher loss。

这里写图片描述

将多个模型的loss相加求平均即为我们所需要的teacher 信息。
然后把他加到当前student模型的loss上进行训练即可,

注意在这里在一个batch里loss是一个数,batch时loss输入为常数。
这里写图片描述
最后的student结果为:
Teach_student_第6张图片

总结:

student结果在teacher和单模型之间。

你可能感兴趣的:(神经网络)