word2vec在工业界的应用场景

2018 年 1 月 7 日 全球人工智能


-欢迎加入AI技术专家社群>>

- 日薪5K-10K招兼职AI讲师>>

这篇文章主要讲应用,不讲原理。通俗的说,word2vec是一种将『词』变成向量的工具,在nlp的场景中『词』是显而易见的,但是在有些时候,什么可以看做『词』和『文档』就不那么容易了。

在社交网络中的推荐

前东家工作的时候,有一个个性化推荐的场景,给当前用户推荐他可能关注的『大V』。对一个新用户,此题基本无解,如果在已知用户关注了几个『大V』之后,相当于知道了当前用户的一些关注偏好,根据此偏好给他推荐和他关注过大V相似的大V,就是一个很不错的推荐策略。所以,如果可以求出来任何两个V用户的相似度,上面问题就可以基本得到解决。

我们知道word2vec中两个词的相似度可以直接通过余弦来衡量,接下来就是如何将每个V用户变为一个词向量的问题了。巧妙的地方就是如何定义doc和word,针对上面问题,可以将doc和word定义为:

1

2

word ->   每一个大V就是一个词

doc  ->   根据每一个用户关注大V的顺序,生成一篇文章

由于用户量很大(大约4亿),可以将关注word个数少的doc删掉,因为本身大V的种类是十万级别(如果我没记错的话), 选择可以覆盖绝大多数大V的文章数量就足够了。

计算商品的相似度

在商品推荐的场景中,竞品推荐和搭配推荐的时候都有可能需要计算任何两个商品的相似度,根据浏览/收藏/下单/App下载等行为,可以将商品看做词,将每一个用户的一类行为序看做一个文档,通过word2vec将其训练为一个向量。

同样的,在计算广告中,根据用户的点击广告的点击序列,将每一个广告变为一个向量。变为向量后,用此向量可以生成特征融入到rank模型中。

作为另一个模型的输入

在nlp的任务中,可以通过将词聚类后,生成一维新的特征来使用。在CRF实体识别的任务中,聚类结果类似词性,可以作为特征来使用。

在依存句法分析的任务中,哈工大ltp的nndepparser则是将词向量直接作为输入。

具体论文『A Fast and Accurate Dependency Parser using Neural Networks』

向量快速检索

当我们将一个文档变成一个向量之后,如何根据余弦/欧氏距离快速得到其最相似的topk个文章,是工程实现上不得不考虑的问题。例如线上可以允许的时间是5ms以内,如果文章数量往往上万或者更多,O(n)的方式计算明显不可接受了。

如果文章更新的速度很慢,可以通过离线的方式一天或者几天计算一次,导入redis(或者别的)提供线上快速查询。 但是如果文章实时新增,并且大量流量来自新文章,这个问题就要好好考虑一下。

一般可以通过PQ, kd-tree、simhash、聚类等方式解决,选择不同的方式和具体的推荐场景、数据分布有关。

↓ 点击阅读原文,进入学院

登录查看更多
5

相关内容

分散式表示即将语言表示为稠密、低维、连续的向量。 研究者最早发现学习得到词嵌入之间存在类比关系。比如apple−apples ≈ car−cars, man−woman ≈ king – queen 等。这些方法都可以直接在大规模无标注语料上进行训练。词嵌入的质量也非常依赖于上下文窗口大小的选择。通常大的上下文窗口学到的词嵌入更反映主题信息,而小的上下文窗口学到的词嵌入更反映词的功能和上下文语义信息。
【斯坦福CS520】向量空间中嵌入的知识图谱推理,48页ppt
专知会员服务
96+阅读 · 2020年6月11日
【经典书】贝叶斯编程,378页pdf,Bayesian Programming
专知会员服务
243+阅读 · 2020年5月18日
【论文推荐】文本分析应用的NLP特征推荐
专知会员服务
33+阅读 · 2019年12月8日
知识图谱更新技术研究及其应用,复旦大学硕士论文
专知会员服务
101+阅读 · 2019年11月4日
[综述]基于深度学习的开放领域对话系统研究综述
专知会员服务
77+阅读 · 2019年10月12日
数据挖掘的前沿论文,看我们推荐的这7篇
人工智能前沿讲习班
7+阅读 · 2019年3月11日
DNN在搜索场景中的应用
机器学习算法与Python学习
8+阅读 · 2018年6月7日
干货|自然语言处理中的词向量 — word2vec!
全球人工智能
7+阅读 · 2018年1月25日
机器学习(36)之协同过滤典型算法概述【精华】
机器学习算法与Python学习
4+阅读 · 2018年1月20日
基础|Word2vec的原理介绍
全球人工智能
10+阅读 · 2018年1月4日
迁移学习在深度学习中的应用
专知
23+阅读 · 2017年12月24日
干货 | 自然语言处理(1)之聊一聊分词原理
机器学习算法与Python学习
5+阅读 · 2017年12月7日
基于 word2vec 和 CNN 的文本分类 :综述 & 实践
爱奇艺视频场景下的自然语言处理应用
AI前线
8+阅读 · 2017年10月3日
自然语言处理技术(NLP)在推荐系统中的应用
人工智能头条
7+阅读 · 2017年6月29日
Arxiv
3+阅读 · 2018年8月27日
Paraphrase Generation with Deep Reinforcement Learning
Arxiv
12+阅读 · 2018年1月20日
VIP会员
相关资讯
数据挖掘的前沿论文,看我们推荐的这7篇
人工智能前沿讲习班
7+阅读 · 2019年3月11日
DNN在搜索场景中的应用
机器学习算法与Python学习
8+阅读 · 2018年6月7日
干货|自然语言处理中的词向量 — word2vec!
全球人工智能
7+阅读 · 2018年1月25日
机器学习(36)之协同过滤典型算法概述【精华】
机器学习算法与Python学习
4+阅读 · 2018年1月20日
基础|Word2vec的原理介绍
全球人工智能
10+阅读 · 2018年1月4日
迁移学习在深度学习中的应用
专知
23+阅读 · 2017年12月24日
干货 | 自然语言处理(1)之聊一聊分词原理
机器学习算法与Python学习
5+阅读 · 2017年12月7日
基于 word2vec 和 CNN 的文本分类 :综述 & 实践
爱奇艺视频场景下的自然语言处理应用
AI前线
8+阅读 · 2017年10月3日
自然语言处理技术(NLP)在推荐系统中的应用
人工智能头条
7+阅读 · 2017年6月29日
Top
微信扫码咨询专知VIP会员