1.本发明属于自然语言处理领域,具体涉及一种字母向量学习方法、系统、存储介质及电子设备。
背景技术:
2.wordembedding最初由英文研究开始,在汉语中的应用只是把算法模型的输入换做了中文语料,将原有模型中的英文单词替换为汉字或词语进行训练。这种方式并未考虑汉语特色,比如汉字在构造过程中会充分考虑读音,也就是汉字的拼音,拼音相同的汉字(即同音字)可能会存在一定的语义关联性,如“他”和“她”都是第三人称,但又分别指代了男“他”和女“她”。
技术实现要素:
3.本技术实施例提供了一种字母向量学习方法、系统、存储介质及电子设备,以至少解决现有的字母向量学习方法未考虑汉语特色的问题。
4.本发明提供了一种字母向量学习方法,其中,包括:
5.获取字典步骤:整理预训练中文字向量模型中的汉字并形成字典;
6.获取二元组步骤:遍历所述字典中的汉字,获取所述汉字的拼音,并将所述汉字的拼音拆分构成字母串,根据所述汉字和所述字母串构建二元组;
7.计算步骤:根据公式计算所述字母串中每个汉语拼音字母的在所述汉字中所分得的向量;
8.获取字母向量步骤:根据汉字拼音字符串中每个汉语拼音字母在所述汉字中所分得的所述向量,计算获取汉字拼音字母向量。
9.上述字母向量学习方法,其中,所述获取字典步骤包括:
10.模型获取步骤:获取所述预训练中文字向量模型;
11.整理步骤:整理所述预训练中文字向量模型中的汉字并形成所述字典。
12.上述字母向量学习方法,其中,所述计算步骤包括:
13.倒排步骤:根据所述汉字与所述汉字对应的汉语拼音字母构成的所述字母串,对所述汉语拼音和所述汉字进行倒排;
14.向量计算步骤:根据倒排结果以及向量计算公式计算所述字母串中每个汉语拼音字母的在所述汉字中所分得的向量。
15.上述字母向量学习方法,其中,所述获取二元组步骤包括:
16.如果所述汉字是多音字则所述汉字可以拆分为多个由汉语拼音字母构成的所述字母串。
17.本发明还提供了一种字母向量学习系统,其中,包括:
18.获取字典模块,所述获取字典模块整理预训练中文字向量模型中的汉字并形成字典;
19.获取二元组模块,所述获取二元组模块遍历所述字典中的汉字,获取所述汉字的拼音,并将所述汉字的拼音拆分构成字母串,根据所述汉字和所述字母串构建二元组;
20.计算模块,所述计算模块根据公式计算所述字母串中每个汉语拼音字母的在所述汉字中所分得的向量;
21.获取字母向量模块,所述获取字母向量模块根据汉字拼音字符串中每个汉语拼音字母在所述汉字中所分得的所述向量,计算获取汉字拼音字母向量。
22.上述字母向量学习系统,其中,所述获取字典模块包括:
23.模型获取单元,所述模型获取单元获取所述预训练中文字向量模型;
24.整理单元,所述整理单元整理所述预训练中文字向量模型中的汉字并形成所述字典。
25.上述字母向量学习系统,其中,所述计算模块包括:
26.倒排单元,所述倒排单元根据所述汉字与所述汉字对应的汉语拼音字母构成的所述字母串,对所述汉语拼音和所述汉字进行倒排;
27.向量计算单元,所述向量计算单元根据倒排结果以及向量计算公式计算所述字母串中每个汉语拼音字母的在所述汉字中所分得的向量。
28.上述字母向量学习系统,其中,所述获取二元组模块包括:
29.如果所述汉字是多音字则所述汉字可以拆分为多个由汉语拼音字母构成的所述字母串。
30.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上述任一所述的字母向量学习方法。
31.一种存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如上述任一所述的字母向量学习方法。
32.本发明的有益效果在于:
33.本发明属于深度学习技术中的自然语言处理领域。本公开提供了一种基于字拼音的汉语拼音字母向量学习方法与装置,主要考虑了汉字在发音方面的语义关系,丰富了只基于字或词粒度的向量表示。
附图说明
34.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。
35.在附图中:
36.图1是本发明的字母向量学习方法的流程图;
37.图2是本发明的分步骤s1的流程图;
38.图3是本发明的分步骤s3的流程图;
39.图4是本发明的字母向量学习系统的结构示意图;
40.图5是根据本发明实施例的电子设备的框架图。
具体实施方式
41.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。基于本技术提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
42.显而易见地,下面描述中的附图仅仅是本技术的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本技术应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本技术公开的内容相关的本领域的普通技术人员而言,在本技术揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本技术公开的内容不充分。
43.在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本技术所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
44.除非另作定义,本技术所涉及的技术术语或者科学术语应当为本技术所属技术领域内具有一般技能的人士所理解的通常意义。本技术所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本技术所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
45.下面结合附图所示的各实施方式对本发明进行详细说明,但应当说明的是,这些实施方式并非对本发明的限制,本领域普通技术人员根据这些实施方式所作的功能、方法、或者结构上的等效变换或替代,均属于本发明的保护范围之内。
46.在详细阐述本发明各个实施例之前,对本发明的核心发明思想予以概述,并通过下述若干实施例予以详细阐述。
47.实施例一:
48.请参照图1,图1是字母向量学习方法的流程图。如图1所示,本发明的字母向量学习方法包括:
49.获取字典步骤s1:整理预训练中文字向量模型中的汉字并形成字典;
50.获取二元组步骤s2:遍历所述字典中的汉字,获取所述汉字的拼音,并将所述汉字的拼音拆分构成字母串,根据所述汉字和所述字母串构建二元组;
51.计算步骤s3:根据公式计算所述字母串中每个汉语拼音字母的在所述汉字中所分得的向量;
52.获取字母向量步骤s4:根据汉字拼音字符串中每个汉语拼音字母在所述汉字中所分得的所述向量,计算获取汉字拼音字母向量。
53.请参照图2,图2是获取字典步骤s1的流程图。如图2所示,所述获取字典步骤s1包括:
54.模型获取步骤s11:获取所述预训练中文字向量模型;
55.整理步骤s12:整理所述预训练中文字向量模型中的汉字并形成所述字典。
56.请参照图3,图3是计算步骤s3的流程图。如图3所示,所述计算步骤s3包括:
57.倒排步骤s31:根据所述汉字与所述汉字对应的汉语拼音字母构成的所述字母串,对所述汉语拼音和所述汉字进行倒排;
58.向量计算步骤s32:根据倒排结果以及向量计算公式计算所述字母串中每个汉语拼音字母的在所述汉字中所分得的向量。
59.其中,所述获取二元组步骤包括:
60.如果所述汉字是多音字则所述汉字可以拆分为多个由汉语拼音字母构成的所述字母串。
61.具体地说,本发明的具体步骤如下:
62.s1:获取预训练中文字向量模型。字向量模型以<汉字,字向量>的形式进行存储。
63.s2:整理字向量模型中的汉字并形成字典。
64.s3:遍历所述步骤s2中得到的字典中的汉字,获取汉字的拼音,并将汉字的拼音拆分为由汉语拼音字母构成的字母串,并构成二元组<汉字,{汉语拼音字母构成的字母串}>。
65.进一步地,为方便描述,以汉字“明”为例进行示范性表述。“明”的汉语拼音为“ming”,因此,“明”的汉语拼音可拆分为汉语拼音字母构成的字母串{m,i,n,g}。进一步地,得到二元组<明,{{m,i,n,g}}>。
66.进一步地,在所述步骤s3中,如果汉字是多音字,则采用一对多的策略。一个汉字可以对应多个拼音,即一个多音字可以拆分为多个由汉语拼音字母构成的字母串。
67.进一步地,为方便描述,以汉字“说”为例进行示范性描述。“说”为多音字,有三个读音,分别为“shuo”(一声)、“shui”(四声)和“yue”(四声)。
68.进一步地,汉字“说”的汉语拼音可拆分为汉语拼音字母构成的字符串{{s,h,u,o},{s,h,u,i},{y,u,e}}。进一步地,得到二元组<说,{{s,h,u,o},{s,h,u,i},{y,u,e}}>。
69.s4:根据所述步骤s3中得到的汉字与其对应的汉语拼音字母构成的字母串,对汉语拼音和汉字进行倒排,即构建<汉语拼音字母,{汉语拼音字母所构成的汉字1,汉语拼音字母所构成的汉字,...}>。
70.进一步地,为方便描述,现假设s1中的预训练中文字向量模型中只有四个汉字,分别为“明”、“说”、“你”和“天”。
71.进一步地,根据所述步骤s2和所述步骤s3可得到<明,{{m,i,n,g}}>、<说,{{s,h,u,o},{s,h,u,i},{y,u,e}}>,<你,{n,i}>和<天,{{t,i,a,n}}>。、
72.进一步地,根据所述步骤s4可得到汉语拼音字母与汉字的倒排如下:
73.<a,{天}>
74.<e,{说}>
75.<g,{明}>
76.<h,{说(音shuo),说(音shui)}>
77.<i,{明,说(音shui)},你>
78.<m,{明}>
79.<n,{你,天}>
80.<o,{说(音shuo)}>
81.<s,{说(音shuo),说(音shui)}>
82.<t,{天}>
83.<u,{说(音shuo),说(音shui),说(音yue)}>
84.<y,{说(音yue)}>
85.s5:根据所述步骤s3得到的汉字与其对应的汉语拼音字符串,计算汉语拼音字符串中每个汉语拼音字母的在该汉字中所分得的向量,计算方法为字向量除以汉字所对应的汉语拼音字母的个数,计算公式如下:
[0086][0087]
其中,wj为汉字,ci为汉字wj所对应的汉语拼音中的汉语拼音字母,vwj表示汉字wj的字向量。
[0088]
进一步地,根据所述步骤s5中计算汉语拼音字符串中每个汉语拼音字母的在该汉字中所分得的向量的方法,可以得到汉语拼音字母’u’在汉字“说”中所分得的向量,以及汉语拼音字母’i’在汉字“说”(音shui)、汉字“天”(音tian)和汉字“你”(音ni)中所分得的向量如下所示:
[0089][0090][0091][0092][0093]
进一步地,可得到汉语拼音字母’e’,’g’,’h’,’i’,
‘
m’,
‘
n’,
‘
o’,
‘
s’,
‘
t’,
‘
u’,
‘
y’等在汉字“明”(音ming)、“天”(音tian)、“你”(音ni)和“说”(音shuo、shui、yue)中所分得的向量。
[0094]
s6:根据所述步骤s5计算得到的汉语拼音字符串中每个汉语拼音字母的在该汉字中所分得的向量,计算汉语拼音字母的向量,计算方法如下所示:
[0095]
[0096]
其中,f(ci)指的是汉语拼音包含汉语拼音字母ci的汉字。
[0097]
进一步地,汉语拼音字母’u’的向量计算方法如下所示:
[0098][0099]
实施例二:
[0100]
请参照图4,图4是本发明的字母向量学习系统的结构示意图。如图4所示本发明的一种字母向量学习系统,其中,包括:
[0101]
获取字典模块11,所述获取字典模块整理预训练中文字向量模型中的汉字并形成字典;
[0102]
获取二元组模块12,所述获取二元组模块遍历所述字典中的汉字,获取所述汉字的拼音,并将所述汉字的拼音拆分构成字母串,根据所述汉字和所述字母串构建二元组;
[0103]
计算模块13,所述计算模块根据公式计算所述字母串中每个汉语拼音字母的在所述汉字中所分得的向量;
[0104]
获取字母向量模块14,所述获取字母向量模块根据汉字拼音字符串中每个汉语拼音字母在所述汉字中所分得的所述向量,计算获取汉字拼音字母向量。
[0105]
其中,所述获取字典模块11包括:
[0106]
模型获取单元111,所述模型获取单元获取所述预训练中文字向量模型;
[0107]
整理单元112,所述整理单元整理所述预训练中文字向量模型中的汉字并形成所述字典。
[0108]
其中,所述计算模块13包括:
[0109]
倒排单元131,所述倒排单元根据所述汉字与所述汉字对应的汉语拼音字母构成的所述字母串,对所述汉语拼音和所述汉字进行倒排;
[0110]
向量计算单元132,所述向量计算单元根据倒排结果以及向量计算公式计算所述字母串中每个汉语拼音字母的在所述汉字中所分得的向量。
[0111]
其中,所述获取二元组模块12包括:
[0112]
如果所述汉字是多音字则所述汉字可以拆分为多个由汉语拼音字母构成的所述字母串。
[0113]
实施例三:
[0114]
结合图5所示,本实施例揭示了一种电子设备的一种具体实施方式。电子设备可以包括处理器81以及存储有计算机程序指令的存储器82。
[0115]
具体地,上述处理器81可以包括中央处理器(cpu),或者特定集成电路(application specific integrated circuit,简称为asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
[0116]
其中,存储器82可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器82可包括硬盘驱动器(hard disk drive,简称为hdd)、软盘驱动器、固态驱动器(solid state drive,简称为ssd)、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,简称为usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器82可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器82可在数据处理装置的
内部或外部。在特定实施例中,存储器82是非易失性(non
‑
volatile)存储器。在特定实施例中,存储器82包括只读存储器(read
‑
only memory,简称为rom)和随机存取存储器(random access memory,简称为ram)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(programmable read
‑
only memory,简称为prom)、可擦除prom(erasable programmable read
‑
only memory,简称为eprom)、电可擦除prom(electrically erasable programmable read
‑
only memory,简称为eeprom)、电可改写rom(electrically alterable read
‑
only memory,简称为earom)或闪存(flash)或者两个或更多个以上这些的组合。在合适的情况下,该ram可以是静态随机存取存储器(static random
‑
access memory,简称为sram)或动态随机存取存储器(dynamic random access memory,简称为dram),其中,dram可以是快速页模式动态随机存取存储器(fast page mode dynamic random access memory,简称为fpmdram)、扩展数据输出动态随机存取存储器(extended date out dynamic random access memory,简称为edodram)、同步动态随机存取内存(synchronous dynamic random
‑
access memory,简称sdram)等。
[0117]
存储器82可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器81所执行的可能的计算机程序指令。
[0118]
处理器81通过读取并执行存储器82中存储的计算机程序指令,以实现上述实施例中的任意一种字母向量学习方法。
[0119]
在其中一些实施例中,电子设备还可包括通信接口83和总线80。其中,如图5所示,处理器81、存储器82、通信接口83通过总线80连接并完成相互间的通信。
[0120]
通信接口83用于实现本技术实施例中各模块、装置、单元和/或设备之间的通信。通信端口83还可以实现与其他部件例如:外接设备、图像/数据采集设备、数据库、外部存储以及图像/数据处理工作站等之间进行数据通信。
[0121]
总线80包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。总线80包括但不限于以下至少之一:数据总线(data bus)、地址总线(address bus)、控制总线(control bus)、扩展总线(expansion bus)、局部总线(local bus)。举例来说而非限制,总线80可包括图形加速接口(accelerated graphics port,简称为agp)或其他图形总线、增强工业标准架构(extended industry standard architecture,简称为eisa)总线、前端总线(front side bus,简称为fsb)、超传输(hyper transport,简称为ht)互连、工业标准架构(industry standard architecture,简称为isa)总线、无线带宽(infini band)互连、低引脚数(low pin count,简称为lpc)总线、存储器总线、微信道架构(micro channel architecture,简称为mca)总线、外围组件互连(peripheral component interconnect,简称为pci)总线、pci
‑
express(pci
‑
x)总线、串行高级技术附件(serial advanced technology attachment,简称为sata)总线、视频电子标准协会局部(video electronics standards association local bus,简称为vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线80可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
[0122]
该电子设备可以基于字母向量学习,从而实现结合图1
‑
图3描述的方法。
[0123]
另外,结合上述实施例中字母向量学习方法,本技术实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令
被处理器执行时实现上述实施例中的任意一种字母向量学习方法。
[0124]
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0125]
综上所述,基于本发明的有益效果在于,本公开提供了一种基于字拼音的汉语拼音字母向量学习方法与装置,主要考虑了汉字在发音方面的语义关系,丰富了只基于字或词粒度的向量表示。
[0126]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本发明的保护范围应以所附权利要求的保护范围为准。
再多了解一些
本文用于企业家、创业者技术爱好者查询,结果仅供参考。