Blog
1. Music Recommendations
- Spotify and Anghami 为例。
- 软件中每个月有超过700 million首歌曲被听,其中每个用户为语料库中的单个单词,其歌单就如一个句子,通过该Context-Word信息,训练出每首歌单独的嵌入。
- 通过平均用户所有喜欢歌单中的歌曲嵌入生成用户的"Music Taste" Vector,该向量可以用于相似度查询找到其他"Music Taste" Vector相似的用户的歌单。
2. Listing Recommendations at Airbnb
-
用户的活动提供"click data"列表,特别是"user viewed" listings,Airbnb用Word2vec去学习这些列表以获得向量表示房间(listing vectors),"user viewed" listings是一个句子,而每个房间是单独的嵌入。
Important piece of the word2vec training algorithm: 在每个单词训练的时候,随机选取少量与其上下午去无关的词作为nagative samples,这样可以学习到与Pair内部区分的嵌入向量。
** cold start problem**:how to learn vectors for new listings for which there isn’t user activity data,利用地理位置最近的三个列表来初始化新的嵌入。
这些listing vectors可以用于搜索具有相同查询列表的房间。
3. Product Recommendations in Yahoo Mail
- 通过每个用户的"purchase receipts"学习每件商品的嵌入,并且用于推荐类似的产品。
word2vec的学习基于假设:用户经常在序列(购物清单)中买类似的东西,可能是一套钓鱼的用具。这一序列也许代表用户的购物品味。
也许以上假设对于个人来说时常不符,但是基于大数据来说是一个可靠地统计规律。
Yahoo的创新。
4.1 利用聚类去促进推荐的多样性。在学习到数据库中每个商品的嵌入后,用聚类进行分簇。
4.2 在用户刚购买一个簇内推荐产品时,不会再去推荐该簇的产品,而倾向于推荐其他簇的产品。
4.3 当用户购买一个簇的产品后,会推荐最有可能购买的下个簇里的产品。
- 利用"bagging"技术给出现在同一张购物清单上的物品增加权重。
4. Matching Ads to Search Queries
通过学习搜索的嵌入和广告的嵌入在同一个搜索空间,并且进行相似度计算,得到最相关的广告推荐。
-
如何解决每天都有新的搜索,新的广告的嵌入学些问题:训练数据由用户搜索会话生成,包括输入的搜索查询,点击的广告和点击的数目,来学习查询的嵌入。