当前位置: 首页 > news >正文

Unsupervised Learning-Word Embedding

传统的1 of N 的encoding无法让意义相近的词汇产生联系,word class可以将相近的词汇放到一起

但是word class不能表示class间的关系,所以引入了word embedding(词嵌入)

我们生成词向量是一种无监督的过程(没有label

自编码器是一种人工神经网络,主要用于无监督学习,它的目标是学习一种“压缩”数据的方式,然后再“还原”数据。
简单来说,自编码器可以把高维数据压缩成低维的“编码”,再从这个编码还原出原始数据。

通过这个过程,网络学会了如何用更少的信息表达原始数据的主要特征

count based

  • 如果两个词(比如 (w_i) 和 (w_j))经常一起出现在同一个上下文中(比如同一句话、同一段落),那么它们的词向量 (V(w_i)) 和 (V(w_j)) 应该在向量空间中距离较近。
  • 这种方法的核心是共现矩阵(co-occurrence matrix):统计每对词在同一上下文中出现的次数 (N_{i,j})。

  • 不是直接统计词与词的共现次数,而是通过神经网络模型,用一个词去预测它的上下文,或者用上下文去预测中心词
  • 通过训练神经网络,让词向量在预测任务中不断优化,最终得到能表达语义的词向量。

我们想要将input的后一个词是一样的,我们就要将input的两个词放置在同一空间的相邻位置,我们就要通过w来调整,第一个隐藏层的权重矩阵就是我们要的词向量(word embedding)

我们input可以不止一个词,因为都是one hot,所以可以连在一起丢进去就行

  • 假设你有一个词表,每个词都有一个词向量(比如300维)。
  • 不管这个词出现在输入的哪个位置(比如上下文的第一个词、第二个词),它的词向量都是同一组参数,不会因为位置不同而变成不同的向量。
  • 这就是参数共享(parameter sharing),如图中不同输入(w_{i-2}、w_{i-1})连到隐藏层的线条有相同颜色,表示用的是同一组权重。
  • 对于同一个词,比如“蔡英文”,它的词向量(比如第1维、第2维……第300维)在所有输入位置都是一样的。
  • 也就是说,不管“蔡英文”出现在w_{i-2}还是w_{i-1},它的第1维、第2维……第300维的值都一样。

  • w 在这里就是词向量(word embedding),也是embedding层的权重。
  • 每个词都有自己的词向量,不是所有词共享一个向量。
  • 词向量矩阵的每一行对应一个词,内容不同,结构相同。

z 不是预测的词本身,也不是预测词的词向量,而是“上下文的综合表示”,也就是用来预测下一个词的“隐藏层输出”或“上下文向量”。

  • 每个 one-hot 向量(比如 (x_{i-2}))
    乘以权重矩阵 (W_1) 后,实际上就是“选中”了 (W_1) 的某一行,这一行就是 (x_{i-2}) 这个词的词向量(在 (W_1) 这个矩阵里的表示)。

  • 同理,(x_{i-1}) 乘以 (W_2)
    就是选中 (W_2) 的某一行,这一行就是 (x_{i-1}) 这个词的词向量(在 (W_2) 这个矩阵里的表示)。

  • z = W1 * x_{i-2} + W2 * x_{i-1}
    就是把这两个词的词向量加起来,作为上下文的综合表示。

  • 实际应用中,通常所有上下文词共享同一个权重矩阵(embedding table)。

那我们怎么让wi和wj一样呢

  • 每个词都需要有自己独立的词向量,不能只用一个w。(除非是usa和美国这种实际上是一样的词
  • 参数共享的是结构,不是内容。
  • 分别更新每个词的向量,才能让模型学到丰富的语义信息。

例子

还有其他的prediction based

其实这些network不是deep的,只有一个network

word embedding处理相关联的词

但是如果project的是中文context,我们是无法知道对应英文的,只有将中文和英文分别project到空间中的同一点才行

相关文章:

  • Java-Set集合遍历的全面指南
  • Flink Table API 编程入门实践
  • LVS负载均衡群集
  • 深入剖析Java CompletableFuture:原理、陷阱与高并发场景优化指南
  • IT编程学习资料大全​​​​​​​​
  • 分布式光伏接入引起农村电压越限,如何处理?
  • 人工智能100问☞第34问:什么是语音识别与合成?
  • 网络拓扑如何跨网段访问
  • 基于深度学习的语音识别系统设计与实现
  • 【ASR】基于分块非自回归模型的流式端到端语音识别
  • 二十九、面向对象底层逻辑-SpringMVC九大组件之MultipartResolver接口设计
  • JSON全面解析
  • 体绘制学习
  • P2 C++基础(2.2)
  • Matlab快速上手五十六:详解符号运算里假设的用法,通过假设可以设置符号变量的取值范围,也可以通过假设设置变量属于集合:整数、正数和实数等
  • 让 Deepseek 写一个尺码计算器
  • 鸿蒙OSUniApp 实现自定义的侧边栏菜单组件#三方框架 #Uniapp
  • 鸿蒙OSUniApp 制作简洁的用户个人中心页面#三方框架 #Uniapp
  • 【慧游鲁博】【10】全端优化用户信息存储+网页端user模块与后端对接
  • PHPStudy 一键式网站搭建工具的下载使用
  • 广州官方网站建设/怎样制作网页设计
  • zblog搭建网站/郑州seo培训班
  • 嘉兴网站建设seo/酒泉网站seo
  • 中华人民住房和城乡建设部网站/百度推广查询
  • 湖南人文科技学院2021分数线/好口碑的关键词优化
  • 球类网站如何做宣传/seo网站制作优化