嵌入式系统程序开发过程(嵌入方法在推荐系统中的应用)
嵌入式系统程序开发过程(嵌入方法在推荐系统中的应用)是给定一个顶点v,通过随机游走获得v的一个邻域顶点的概率。这里N(v)是顶点v的邻域,可以定义为通过顶点v通过一步或者两步可达的所有其他顶点的集合。基于Word2Vec和参考文献23的思路,我们可以先通过随机游走(random walk)生成图顶点的序列,再利用Word2Vec的Skip-Gram算法学习每个顶点的向量表示。为了保留图的拓扑结构,我们需要求解如下的目标函数:
中的向量表示。利用数学的术语就是学习一个映射:
,将图中每个顶点v映射为d维空间中的一个向量
。
基于Word2Vec和参考文献23的思路,我们可以先通过随机游走(random walk)生成图顶点的序列,再利用Word2Vec的Skip-Gram算法学习每个顶点的向量表示。为了保留图的拓扑结构,我们需要求解如下的目标函数:
这里N(v)是顶点v的邻域,可以定义为通过顶点v通过一步或者两步可达的所有其他顶点的集合。
是给定一个顶点v,通过随机游走获得v的一个邻域顶点的概率。
有了上面的定义和说明,剩下的处理流程和思路跟Word2Vec是一样的了,这里不再赘述。
参考文献6、19分别提供了基于图嵌入进行个性化推荐的解决方案,其中6我们会在第四节4中详细介绍。19提供了一个在异构信息网络(Heterogeneous Information Network,简写为HIN)中通过随机游走生成节点序列,再将节点序列嵌入低维空间,通过一组fusion函数变换后整合到矩阵分解模型中进行联合训练,通过求解联合模型最终进行推荐的方法,该方法也可以有效地解决冷启动问题,具体架构图如下,感兴趣的读者可以参考原文。随着互联网的深入发展,异构信息网络是一类非常重要的网络,在当前的互联网产品中(社交网络产品、生活服务产品等)大量存在,基于HIN的个性化推荐也是未来一个比较火的方向之一。