StarSpace是facebook开源的一个新的embedding工具包,卖点就是Embed All The Things,也就是名字里star (指’*’通配符) 的含义。
官网 https://github.com/facebookresearch/StarSpace
word2vec有一些后续优化的变种,比如fasttext、starspace。fasttext最大的优化还是加入了subword,但对于中文其实没啥卵用。fasttext详细介绍我博客有。 starspace主要的贡献还是把supervised引入embedding过程,而且提供一些实际问题的处理思路和一个傻瓜代码方便快速实现prototype验证想法,下面具体介绍。
之前把StarSpace的论文打印出来,粗略看了一眼,貌似就是word2vec,再看了一眼,好像还是word2vec啊,说明没有看懂。
其实StarSpace的思路很简单,原始的w2v模型只管预测上下文(softmax分类问题),而StarSpace直接学出上下文两个item的embedding距离要相近。
核心全在这里
然后给出两个很重要的调参结论
sim函数有cosine similarity和inner product。一般用cosine