月度归档:2017年10月

Word2vec初探

2018年1月13号更新:
1.可以结合阅读本人的另一篇文章:自然语言处理入门来理解本文。
2.Xin Rong童鞋在去年的一场飞机失事中不幸去世,非常可惜。

以下为正文:

这两天比较受挫,因为看了几篇paper都没怎么懂。昨天看了一篇论文里面提到了word2vec,于是就想简单了解下什么是word2vec(感觉好像挺出名的)?再加上自己本身对NLP技术也比较感兴趣,想了解下NLP到底是如何处理文本从而理解文本的。于是就找了几篇论文看起来,word2vec最初是由当时还在Google工作的Tomas Mikolov率先提出的:Efficient Estimation of Word Representations in Vector Space,然而我并没有看懂这篇论文,写的实在是太high-level,看不到细节。感觉侧重点在和之前的几个模型比较性能:模型的计算复杂度和最终的效果,并没有详细解释这两个模型是如何工作的。刚开始以为是自己background太差了,理解不了。后来在网上搜了搜发现有人专门写了一篇论文来解释这篇论文:word2vec Parameter Learni[……]

继续阅读

Factorization Machines

Factorization Machines
要真正理解这个东西,我们得先从线性回归和多项式回归说起。

  • 线性回归
    一个基本的线性回归模型可以表示为:
    $$
    \hat{y(x)} = w_{0} + \sum_{i=1}^{n}w_{i}x_{i}
    $$
  • 多项式回归
    那么多项式回归就是在此基础上增加交叉项(也就是多项式):
    $$
    \hat{y(x)} = w_{0} + \sum_{i=1}^{n}w_{i}x_{i} + \sum_{i=1}^{n}\sum_{j=i+1}^{n}w_{ij}x_{i}x_{j}
    $$
    后面增加的就是多项式交叉项,Factorization Machines的主要目的就是优化多项式交叉项。那么这个多项式交叉项有什么问题呢?为什么需要被优化呢?
  • 第一个明显的问题就是参数太多了,\(n\)个特征,两两交叉,参数个数就是\(n(n-1)/2\).

  • 各个参数\(w_{ij}\)之间是互相独立,并没有什么联系。
  • 在高度稀疏的训练样本中无法准确地学习得到这些参数。为什么?因为最终[……]

    继续阅读