写点什么

蚂蚁金服公开最新基于笔画的中文词向量算法

  • 2019-09-09
  • 本文字数:2375 字

    阅读完需:约 8 分钟

蚂蚁金服公开最新基于笔画的中文词向量算法

AAAI 2018 论文 | 蚂蚁金服公开最新基于笔画的中文词向量算法


导读:词向量算法是自然语言处理领域的基础算法,在序列标注、问答系统和机器翻译等诸多任务中都发挥了重要作用。词向量算法最早由谷歌在 2013 年提出的 word2vec,在接下来的几年里,该算法也经历不断的改进,但大多是仅适用于拉丁字符构成的单词(比如英文),结合中文语言特性的词向量研究相对较少。本文介绍了蚂蚁金服人工智能部与新加坡科技大学一项最新的合作成果:cw2vec——基于汉字笔画信息的中文词向量算法研究,用科学的方法揭示隐藏在一笔一划之间的秘密。


AAAI 大会(Association for the Advancement of Artificial Intelligence),是一年一度在人工智能方向的顶级会议之一,旨在汇集世界各地的人工智能理论和领域应用的最新成果。该会议固定在每年的 2 月份举行,由 AAAI 协会主办。


第 32 届 AAAI 大会-AAAI 2018 将于 2 月 2 号-7 号在美国新奥尔良召开,其中蚂蚁金服人工智能部和新加坡科技大学合作的一篇基于汉字笔画信息的中文词向量算法研究的论文“cw2vec: Learning Chinese Word Embeddings with Stroke n-grams”被高分录用(其中一位审稿人给出了满分,剩下两位也给出了接近满分的评价)。我们将在 2 月 7 日在大会上做口头报告(Oral),欢迎大家一起讨论交流。


单个英文字符(character)是不具备语义的,而中文汉字往往具有很强的语义信息。不同于前人的工作,我们提出了“n 元笔画”的概念。所谓“n 元笔画”,即就是中文词语(或汉字)连续的 n 个笔画构成的语义结构。



图 1 n 元笔画生成的例子


如上图,n 元笔画的生成共有四个步骤。比如说,“大人”这个词语,可以拆开为两个汉字“大”和“人”,然后将这两个汉字拆分成笔画,再将笔画映射到数字编号,进而利用窗口滑动产生 n 元笔画。其中,n 是一个范围,在上述例子中,我们将 n 取值为 3, 4 和 5。


在论文中我们提出了一种基于 n 元笔画的新型的损失函数,如下:



其中,W 和 C 分别为当前词语和上下文词语,σ是 sigmoid 函数,T(w)是当前词语划窗内的所有词语集合,D 是训练语料的全部文本。为了避免传统 softmax 带来的巨大计算量,这篇论文也采用了负采样的方式。C’为随机选取的词语,称为“负样例”,λ是负样例的个数,而则表示负样例 C’按照词频分布进行的采样,其中语料中出现次数越多的词语越容易被采样到。相似性 sim(·,·)函数被按照如下构造:



其中,为当前词语对应的一个 n 元笔画向量,而是其对应的上下文词语的词向量。这项技术将当前词语拆解为其对应的 n 元笔画,但保留每一个上下文词语不进行拆解。S(w)为词语 w 所对应的 n 元笔画的集合。在算法执行前,这项研究先扫描每一个词语,生成 n 元笔画集合,针对每一个 n 元笔画,都有对应的一个 n 元笔画向量,在算法开始之前做随机初始化,其向量维度和词向量的维度相同。



图 2 算法过程的举例


如上图所示,对于“治理 雾霾 刻不容缓”这句话,假设此刻当前词语恰好是“雾霾”,上下文词语是“治理”和“刻不容缓”。首先将当前词语“雾霾”拆解成 n 元笔画并映射成数字编码,然后划窗得到所有的 n 元笔画,根据设计的损失函数,计算每一个 n 元笔画和上下文词语的相似度,进而根据损失函数求梯度并对上下文词向量和 n 元笔画向量进行更新。


为了验证这项研究提出的 cw2vec 算法的效果,在公开数据集上,与业界最优的几个词向量算法做了对比:



图 3 实验结果


上图中包括 2013 年谷歌提出的 word2vec 的两个模型 skipgram 和 cbow,2014 年斯坦福提出的 GloVe 算法,2015 年清华大学提出的基于汉字的 CWE 模型,以及 2017 年最新发表的基于像素和偏旁的中文词向量算法,可以看出 cw2vec 在 word similarity,word analogy,以及文本分类和命名实体识别的任务中均取得了一致性的提升。同时,这篇文章也展示了不同词向量维度下的实验效果:



图 4 不同词向量维度下的实验结果


上图为不同维度下在 word analogy 测试集上的实验结果,左侧为 3cosadd,右侧为 3cosmul 的测试方法。可以看出这项算法在不同维度的设置下均取得了不错的效果。此外,也在小规模语料上进行了测试:



图 5 小训练数据下的实验结果


上图是仅选取 20%中文维基百科训练语料,在 word similarity 下测试的结果,skipgram, cbow 和 GloVe 算法由于没有利用中文的特性信息进行加强,所以在小语料上表现较差,而其余四个算法取得了不错的效果,其中 cw2vec 的算法在两个数据集上均取得的了最优效果。



图 6 案例分析结果


为了更好的探究不同算法的实际效果,这项研究专门选取了两个词语做案例分析。第一个是环境相关的“水污染”,然后根据词向量利用向量夹角余弦找到与其语义最接近的词语。GWE 找到了一些和“污”字相关的词语,比如“污泥”,“污渍”和“污垢”,而 JWE 则更加强调后两个字“污染”GloVe 找到了一些奇怪的相近词语,比如“循环系统”,“神经系统”。CWE 找到的相近词语均包含“水”和“污”这两个字,猜测是由于其利用汉字信息直接进行词向量加强的原因。此外,只有 cw2vec 找到了“水质”这个相关词语,分析认为是由于 n 元笔画和上下文信息对词向量共同作用的结果。第二个例子,特别选择了“孙悟空”这个词语,该角色出现在中国的名著《西游记》和知名日本动漫《七龙珠》中,cw2vec 找到的均为相关的角色或著作名称。


作为一项基础研究成果,cw2vec 在蚂蚁和阿里的诸多场景上也有落地。在智能客服、文本风控和推荐等实际场景中均发挥了作用。此外,不单单是中文词向量,对于日文、韩文等其他语言也进行类似的尝试,相关的发明技术专利已经申请近二十项。


我们希望能够在基础研究上追赶学术界、有所建树,更重要的是,在具体的实际场景之中,能够把人工智能技术真正的赋能到产品里,为用户提供更好的服务。


本文转载自公众号蚂蚁金服科技(ID:Ant-Techfin)。


原文链接:


https://mp.weixin.qq.com/s/cu0vUuY1meRyTy9wtKMmnw


2019-09-09 09:251705
用户头像

发布了 150 篇内容, 共 34.3 次阅读, 收获喜欢 38 次。

关注

评论

发布
暂无评论
发现更多内容

流式数据质量监控的技术调研及选型思考

字节跳动数据平台

sql 字节跳动 数据质量 流式数据 flik

常见的跨域场景

郑州埃文科技

数据库 IP 跨域

音视频开发:FFmpeg时间戳详解

赖猫

音视频 ffmpeg

如何使用JDBC API操作数据库

编程江湖

JDBC

静态代理模式——时间都去哪儿了

蝉沐风

设计模式 代理模式

金融云原生漫谈(一)|银行业如何快速提升应用研发效能和交付效率?

York

资讯|WebRTC M96 更新

网易云信

大数据 WebRTC 开发

vscode中Tasks及Emmet的应用

编程江湖

vscode

青藤:一招制敌!微隔离,让勒索软件不再横行

青藤云安全

后端老司机的跨域之旅

勇哥java实战分享

后端 CORS

纯 MongoDB 实现中文全文搜索

MongoDB中文社区

mongodb

防火墙是什么?怎么理解?

行云管家

运维 网络安全 防火墙 堡垒机

金融云原生漫谈(二)|中小银行破局之道:云原生架构转型全攻略

York

为什么要避免在 Go 中使用 ioutil.ReadAll?

AlwaysBeta

Go 源码 io Go 语言

2021年度优质创作者评选名单公布!

InfoQ写作社区官方

热门活动

Rainbond 对接 Istio 原理讲解和代码实现分析

北京好雨科技有限公司

Kubernetes istio PaaS rainbond

java学习中cookie原理

编程江湖

java 编程

推荐一款少见开源的支付类项目(Spring Boot+Shiro+MyBatis+Redis)

北游学Java

Java redis spring mybatis

堡垒机和防火墙的区别是什么?能防删库跑路吗?

行云管家

运维 网络安全 防火墙 堡垒机

金融云原生漫谈(四)|如何构建高可用、高并发、高性能的云原生容器网络?

York

云原生 金融科技 高性能网络

肝了三个月Linux内核,面试薪资直接翻番,我才明白TA的重要性!

Yt

c++ Linux服务器开发 Linux内核 驱动开发

【MongoDB白皮书】DIRT和复杂性的高成本

MongoDB中文社区

mongodb

定了!皮皮APP助力电子竞技游戏师职业技能标准发布!

联营汇聚

Flutter VS React Native,跨端方案大 PK

融云 RongCloud

flutter React Native Discord

金融云原生漫谈(三)|银行云原生基础设施构建:裸金属VS虚拟机

York

云原生 金融科技 新基建

「死磕」传统工业软件路径不通 他们给自己造了把梯子

ToB行业头条

Git fork的学习笔记

Changing Lin

1月月更

直播系统聊天技术(六):百万人在线的直播间实时聊天消息分发技术实践

JackJiang

消息推送 即时通讯 IM 直播技术 直播聊天室

2022开篇之作,Docker与微服务实战教程

编程江湖

创业公司COO:用宜搭落地管理思想,打破数据壁垒|《102个开发者故事》第五期

一只大光圈

低代码 数字化转型 企业管理 钉钉宜搭

Swift 在手淘商品评价的技术重构与实践

阿里巴巴终端技术

ios swift 移动开发 客户端

蚂蚁金服公开最新基于笔画的中文词向量算法_文化 & 方法_Geek_cb7643_InfoQ精选文章