A robust self-learning method for fully unsupervised cross-lingual mappings of word embeddings论文笔记

本文主要是介绍A robust self-learning method for fully unsupervised cross-lingual mappings of word embeddings论文笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

回看前几篇笔记发现我剪贴的公式显示很乱,虽然编辑时调整过了,但是不知道为什么显示的和编辑时的不一样,为方便大家的阅读,我开始尝试着采用markdown的形式写笔记,前几篇有时间的话再修改。

这篇论文阅读完,我依然有很多不懂的地方,对其操作不是很清晰,因为我没做过这方面的内容,且近期估计没时间学习其项目,所以记录理解的可能有误,希望大家带着思考阅读。
PS:感觉这篇文章的作者是这个方向的大神呢,引用里好多都是他自己的文章
原文下载链接
项目下载链接

摘要

  • 跨语种嵌入映射(cross-lingual embedding mappings)的核心思想:分别训练单个语种语料,再通过线性变换映射到shared space。
  • 方法整体分为监督的、半监督的和非监督的,监督和半监督都要依赖种子字典(seed dictionary),本文主要研究非监督的方法
  • 非监督方法主要有两种:对抗训练(adversarial training)和自学习(self-learning)
  • 对抗训练的缺点:依赖favorable conditions(如限制在相关的语种,类似维基百科的语料)
  • 自学习的缺点:初始化不好时,易陷入差的(poor)局部最优
  • 本文即使根据自学习的缺点提出了初始化的方法。
  • 提出方法的依据是:观察到不同语种中相同的词有相似的相似度分布,如图1所示:在这里插入图片描述
    Figure 1中的第一幅图是英文单词two的相似度分布,第二幅图是意大利语due(等同于two)的相似度分布,第三幅图是意大利语cane(等同于dog)的相似度分布。

本文算法

设X和Z是两种语言的embedding矩阵,所以他们的第 i t h ith ith X i ∗ X_{i*} Xi Z i ∗ Z_{i*} Zi表示他们语种中的第 i i i个词,我们的目标就是学习变换矩阵 W X {W_{X}} WX W Z {W_{Z}} WZ,所以映射embedding X W X {XW_{X}} XWX Z W Z {ZW_{Z}} ZWZ在相同的跨语种空间,同时,要在两个语种中构建一个字典即稀疏矩阵 D D D,如果目标语言中的第j个单词是源语言中第i个单词的翻译,则Dij = 1。
本文算法主要分四步:1)normalize embedding的预处理;2)完全非监督的初始化方案;3)鲁棒性强的self-learning步骤;4)最后微调通过对称re-weighting进一步improve mapping.

1 embedding normalization

这边具体不知道怎么做的,只能把翻译写下来了(也不知道翻的对不对):长度标准化嵌入,然后平均每个维度的中心,然后长度再次标准化它们。(原文:length normalizes the embeddings, then mean centers each dimension, and then length normalizes them again.)

2 完全非监督初始化

这里我就拷贝公式了,剩下的部分因为我也似懂非懂所以就简单写一下:mapping中的一个难点是X和Z并不对应,此处包含两方面,词不对应(反应到行),维度不对应(反应到列)。
本文的方法是首先通过 M X = X X T M_{X}=XX^{T} MX=XXT M Z = Z Z T M_{Z}=ZZ^{T} MZ=ZZT分别求其相似度矩阵,然后对每一行进行排序,然后在进行第一节的规范化操作;

3 Robust self-learning

这部分没看懂啊,大家还是认真看原文吧

4 Symmetric re-weighting

同上一节(羞愧)

这篇文章没仔细看,很多细节没看懂,所以记得也比较草率,之所以还这样记录下来是为了记录下其核心思想,等回顾时也许能用上。这篇写的很差,大家见谅啊~~~~

这篇关于A robust self-learning method for fully unsupervised cross-lingual mappings of word embeddings论文笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/695591

相关文章

使用Java填充Word模板的操作指南

《使用Java填充Word模板的操作指南》本文介绍了Java填充Word模板的实现方法,包括文本、列表和复选框的填充,首先通过Word域功能设置模板变量,然后使用poi-tl、aspose-words... 目录前言一、设置word模板普通字段列表字段复选框二、代码1. 引入POM2. 模板放入项目3.代码

使用EasyPoi快速导出Word文档功能的实现步骤

《使用EasyPoi快速导出Word文档功能的实现步骤》EasyPoi是一个基于ApachePOI的开源Java工具库,旨在简化Excel和Word文档的操作,本文将详细介绍如何使用EasyPoi快速... 目录一、准备工作1、引入依赖二、准备好一个word模版文件三、编写导出方法的工具类四、在Export

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

C++读写word文档(.docx)DuckX库的使用详解

《C++读写word文档(.docx)DuckX库的使用详解》DuckX是C++库,用于创建/编辑.docx文件,支持读取文档、添加段落/片段、编辑表格,解决中文乱码需更改编码方案,进阶功能含文本替换... 目录一、基本用法1. 读取文档3. 添加段落4. 添加片段3. 编辑表格二、进阶用法1. 文本替换2

Python进行word模板内容替换的实现示例

《Python进行word模板内容替换的实现示例》本文介绍了使用Python自动化处理Word模板文档的常用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友... 目录技术背景与需求场景核心工具库介绍1.获取你的word模板内容2.正常文本内容的替换3.表格内容的

Python实现自动化删除Word文档超链接的实用技巧

《Python实现自动化删除Word文档超链接的实用技巧》在日常工作中,我们经常需要处理各种Word文档,本文将深入探讨如何利用Python,特别是借助一个功能强大的库,高效移除Word文档中的超链接... 目录为什么需要移除Word文档超链接准备工作:环境搭建与库安装核心实现:使用python移除超链接的

springboot集成easypoi导出word换行处理过程

《springboot集成easypoi导出word换行处理过程》SpringBoot集成Easypoi导出Word时,换行符n失效显示为空格,解决方法包括生成段落或替换模板中n为回车,同时需确... 目录项目场景问题描述解决方案第一种:生成段落的方式第二种:替换模板的情况,换行符替换成回车总结项目场景s

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方