word2vec中的negative sampling有什么用?

  统计/机器学习 抽样方法 自然语言处理 人工神经网络    浏览次数:1588        分享
0

word2vec中的negative sampling有什么用?是对谁进行sampling的?

 

thatdeep   2019-07-12 01:06



   1个回答 
3

word2vec的输入变量和目标变量都是one-hot的,而且维度很大,这样就有了计算量的问题。

negative sampling是针对目标变量的,比如one-hot之后的目标变量是9999个0,1个1。这1万点对应的参数每次迭代时都会更新,假设隐藏层有100个点,那就有100万个参数,所以非常低效。对这9999个0随机取20个,这就是negative sampling。这样的话目标变量里是20个0,1个1,剩下的没有数值,没有数值所对应的那些参数也不会被更新,只更新21个数值对应的参数。这样计算量大大降低,而且实验显示,negative sampling之后模型也更好。

SofaSofa数据科学社区DS面试题库 DS面经

LiShanfei   2019-09-01 01:11



  相关主题

自助法(bootstrap)的0.632是怎么来的?   1回答

蓄水池抽样算法的问题   1回答

bootstrap 一般用在哪些方面   1回答

Jackknife vs Bootstrap   1回答

两阶段抽样和分层抽样是一回事吗?   1回答

滚雪球抽样算法的实现   1回答

parametric bootstrap和nonparametric bootstrap的区别是什么?   1回答

python产生一个随机置换?   1回答

python对给定的集合进行有放回抽样?   2回答

把训练集分成n份,用同种算法在每个子训练集上训练再把预测平均,效果如何?   1回答

SMOTE对于categorical feature如何处理?   2回答

什么是SMOTE sampling方法?   3回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!