Few-Shot Text Classification with Induction Network
代码地址:
meta learning:
每一个training episode,在training set中选择C个classes,
在每个class下选择training data(样本环境)和testing data(即为query),
这C个classes的所有training data构成 support set,这C个classes的所有testing data构成query set。
meta testing:
这里面的样本,每个class的样本数很少,而且所有的class在之前的learning中没有见过,
我们用同样的方法选择出support set和query set,验证判断情况。
取自FEW-SHOT TEXT CLASSIFICATION WITH Distributional signatures19,
那么每次的query set 一共有C*len(testing data)个,逐一与classes进行比较。
总结:
1.
在training set上,
encoder学会句子(query和classes里面所有句子的共同表示),
dynamic 学会classes表示
relation学会抽取class-query的匹配信息,
2.
testing set,就是class很少而且class样本很少,不用纠结testing 的定义问题,只是问了判断training的性能。不用继续训练,直接看loss,
当新的classes来的时候,dynamic可以直接提取class表示,
3.
当实际应用时,我们已经提取出所有classes的表示,每来一个query,与所有的class表示进行relation计算,得到分数最高的,
复现问题:
1.learning 和test的数据集的划分问题:
5C5K,5C10K,10C10K,
2.
在test阶段,还是有support set和query set,就是说每个query_text都是有候选集的.而我在test之后需要进行准备好所有的classes_vectors。
文章主要解决的问题是,来了样本条数少的新种类,怎么办。
3.重读文章的理论内容,(已做笔记)
4.对于capsule部分,
论文里仅有的参数是 e i j = W s