zoukankan      html  css  js  c++  java
  • 词向量

    词向量

    几个概念

    • 词嵌入(word embedding):把文本转换成数值形式,或者说——嵌入到一个数学空间里,而

    • 词向量:一个单词所对应的向量,向量之间的数学关系可以表示单词之间的语义关系

    词的离散式表示

    • ***one-hot ***
    • Bag of Words(词袋模型)
      • 没有表达单词在原来句子中出现的次序
    • TF-IDF
      • 为了表示出一个单词在整个文档中的重要性,字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降
      • TF-IDF的计算公式如下:tfidf = tf*idf.
        • tf为词频,即一个词语在文档中的出现频率,假设一个词语在整个文档中出现了i次,而整个文档有N个词语,则tf的值为i/N.
        • idf为逆向文件频率,假设整个文档有n篇文章,而一个词语在k篇文章中出现,则idf值为idf=log2(n/k).
    • Bi-gram和N-gram

    缺点

    • 无法衡量词向量之间的关系
    • 词表维度随着语料库增长膨胀
    • n-gram词序列随语料库膨胀更快
    • 数据稀疏问题

    词的分布式表示

    Word2vec

    - 分类

    ​ - CBOW是利用词的上下文预测当前的单词,cbow对较小的数据集是有用 的。CBOW速度更快

    ​ - Skip-Gram则是利用当前词来预测上下文,skim-gram速度更慢,但是对于不常用,不常见的单词,skim-gram它的效果更好。

    - 作用

    ​ - 可计算词向量加减 例如:['woman', 'king'] + ['man'] = queen

    ​ - 可计算指定词语最相似的词语

    ​ -计算词语的相似度

    LSA

    Glove


    词嵌入(word embedding)与Word2vec的关系

    • Word2vec 是代码项目的名字,只是计算词嵌入(word embedding)的一个工具

    • Word2Vec中从输入到隐层的过程就是Embedding的过程。 Embedding的过程就是把多维的onehot进行降维的过程,是个深度学习的过程

    Glove与LSA、word2vec的比较

    • 是一种比较早的count-based的词向量表征工具,它也是基于co-occurance matrix的,只不过采用了基于奇异值分解(SVD)的矩阵分解技术对大矩阵进行降维,而我们知道SVD的复杂度是很高的,所以它的计算代价比较大。还有一点是它对所有单词的统计权重都是一致的。而这些缺点在GloVe中被一一克服了。而word2vec最大的缺点则是没有充分利用所有的语料,所以GloVe其实是把两者的优点结合了起来。
    记录学习的点点滴滴
  • 相关阅读:
    震旦199打印机扫描A4文件
    震旦199打印机使用“多组多张文件”复印功能
    局域网电脑快速添加共享的打印机
    打印机连续打印,速度变慢,打印队列一直自动闪烁
    用IntelliJ IDEA编译,编译之后提示 无效的标记: -release
    hao360恶意篡改IE首页——修复方法
    联想一体机怎么设置u盘启动|联想一体机bios改U盘启动方法(转)
    解决局域网IP冲突
    Cisco Packet Tracer 交换机 2950-24 配置
    静态路由作用和添加删除命令
  • 原文地址:https://www.cnblogs.com/yangzilaing/p/14656255.html
Copyright © 2011-2022 走看看