伴随着梦想前行

分类 机器学习 下的文章

23/8
2019

word embedding

概念

基于神经网络的分布表示又称为词向量、词嵌入,神经网络词向量模型与其它分布表示方法一样,均基于分布假说,核心依然是上下文的表示以及上下文与目标词之间的关系的建模。
前面提到过,为了选择一种模型刻画某个词(下文称“目标词”)与其上下文之间的关系,我们需要在词向量中capture到一个词的上下文信息。同时,上面我们恰巧提到了统计语言模型正好具有捕捉上下文信息的能力。那么构建上下文与目标词之间的关系,最自然的一种思路就是使用语言模型。从历史上看,早期的词向量只是神经网络语言模型的副产品。
2001年, Bengio 等人正式提出神经网络语言模型( Neural Network Language Model ,NNLM),该模型在学习语言模型的同时,也得到了词向量。所以请注意一点:词向量可以认为是神经网络训练语言模型的副产品。

理解

前面提过,one-hot表示法具有维度过大的缺点,那么现在将vector做一些改进:1、将vector每一个元素由整形改为浮点型,变为整个实数范围的表示;2、将原来稀疏的巨大维度压缩嵌入到一个更小维度的空间。
这也是词向量又名词嵌入的缘由了。

+ MORE

23/8
2019

one-hot

NLP 中最直观,也是到目前为止最常用的词表示方法是 One-hot Representation,这种方法把每个词表示为一个很长的向量。这个向量的维度是词表大小,其中绝大多数元素为 0,只有一个维度的值为 1,这个维度就代表了当前的词。关于one-hot编码的资料很多,街货,这里简单举个栗子说明:

“话筒”表示为 [0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 ...]
“麦克”表示为 [0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ...]

每个词都是茫茫 0 海中的一个 1。这种 One-hot Representation 如果采用稀疏方式存储,会是非常的简洁:也就是给每个词分配一个数字 ID。比如刚才的例子中,话筒记为 3,麦克记为 8(假设从 0 开始记)。如果要编程实现的话,用 Hash 表给每个词分配一个编号就可以了。这么简洁的表示方法配合上最大熵、SVM、CRF 等等算法已经很好地完成了 NLP 领域的各种主流任务。

现在我们分析他的不当处。1、向量的维度会随着句子的词的数量类型增大而增大;2、任意两个词之间都是孤立的,根本无法表示出在语义层面上词语词之间的相关信息,而这一点是致命的。

+ MORE

19/11
2017

机器学习英文单词中英对照名词解释科普说明

  • 监督学习Supervised Learning
  • 非监督学习Unsupervised Learning
  • 分类Classification
  • 回归Regression
    线性回归linear regression;

逻辑回归logistic regression;

  • 决策树
  • 生成模型Generative Model
    生成模型包括:Naive Bayes, Latent Dirichlet Allocation 和 Gaussian Mixture Model.
  • 判别模型Discriminative Model
    具体有: Logistic Regression, SVMs 和 Neural Networks.
  • 深度学习Deep Learning
  • 神经网络neural networks
  • 交叉验证cross validation
  • 保真性fidelity
  • 采样sampling
  • 验证集validation set
  • 训练集training set
  • 测试集testing set
  • 测试误差testing error
  • 过拟合overfitting
  • 欠拟合underfitting
  • 精度accuracy
  • 误差error
  • 泛化误差generalization error
  • 经验误差empirical error
  • 留出法hold-out
  • 自助法bootstrapping
  • 调参parameter tuning
  • 性能度量performance measure
  • 混淆矩阵confusion matrix
  • 平衡点Break-Event Point, BEP
  • 误差平方和SSE,Sum of Squared Error
  • 求解模型中的参数。统计学中常用的一种方法是最大似然估计,即找到一组参数,使得在这组参数下,我们的数据的似然度(概率)越大。

+ MORE