item2vec的理解
来源:互联网 发布:学设计软件计划 编辑:程序博客网 时间:2024/06/11 04:02
最早提出 item2vec 这个方法是在这篇论文中Item2Vec: Neural Item Embedding for Collaborative Filtering
这里的 item2vec 用到的方法和 word2vec 中的方法基本类似。可以说是把 word2vec 中的方法迁移到了推荐系统中。基本思想是把原来高维稀疏的表示方式(one_hot)映射到低维稠密的向量空间中,这样我们就可以用这个低维向量来表示该项目(电影),进而通过计算两个低维向量之间的相似度来衡量两个项目之间的相似性。
首先列出几个参数:
n 是一个词中上下文中包含的词数,通常不超过5.
m 是词向量长度
h 为隐藏层个数
N 是语料词汇量的大小。
我们取任意一个词的前 n-1 个词和第n个词构成的二元对为训练样本。
通过输入前 n-1 词的词向量表示,即输入大小为 (n-1)m ,通过大小为 h*(n-1)m 的权重矩阵W映射到大小为h的隐藏层中,然后再通过大小为 N*h 的权重矩阵U映射到大小为N的输出层中。对输出做一个softmax归一化,就得到了对下一个词概率的预测。由于N这一语料词汇量通常有数万个,于是就有了Hierarchical Softmax 及Negative Sampling两种方法对最后softmax的优化。
同理 item2vec 也类似。
这里只是谈了下整体的流程,对于细节并没有太多涉及。等我做好关于Movielens中电影的item2vec之后,再做详细介绍。
参考链接:
MovieTaster-使用Item2Vec做电影推荐
word2vec 中的数学原理详解
- item2vec的理解
- item2vec:协作过滤的项目向量化映射
- 【转】MovieTaster-使用Item2Vec做电影
- MovieTaster-使用Item2Vec做电影推荐
- 理解 TranslateAnimation动画的理解
- CopyOnWriteArrayList的理解与理解
- 理解装饰模式的理解
- java数据源的理解---------------自己的理解
- Session的理解Cookie的理解
- 理解Javascript_06_理解对象的创建过程
- 理解select模型的关键在于理解fd_set
- 理解Javascript_06_理解对象的创建过程
- Hibernate理解2:hibernate的运用理解
- 关于自然语言理解的一些理解
- Virtual的理解
- 对博客的理解
- 对动力的理解
- 递归函数的理解
- jQuery实现放大镜效果
- 将一个字符串s 切割成子串都是回文,最小的切割次数
- window10 和 ubuntu
- 167. Two Sum II
- Java 封装
- item2vec的理解
- Java 接口
- 焦点轮播图(2) js箭头切换
- Oracle视图
- shutdown命令 关机与重启
- Navicat for mysql 在WIN10下导入SQL不成功解决办法
- 如何利用pandas进行数据清洗?
- spring扩展容器-ApplicationContext之BeanFactoryPostProcessor
- RMI——Java远程过程调用(RPC)及回调方法