CN108124477A - 基于伪数据改进分词器以处理自然语言 - Google Patents
基于伪数据改进分词器以处理自然语言 Download PDFInfo
- Publication number
- CN108124477A CN108124477A CN201680008451.7A CN201680008451A CN108124477A CN 108124477 A CN108124477 A CN 108124477A CN 201680008451 A CN201680008451 A CN 201680008451A CN 108124477 A CN108124477 A CN 108124477A
- Authority
- CN
- China
- Prior art keywords
- segmenter
- sentence
- language model
- mark
- word
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000005520 cutting process Methods 0.000 claims abstract description 7
- 238000000034 method Methods 0.000 claims description 44
- 238000003860 storage Methods 0.000 claims description 25
- 238000012549 training Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 2
- 230000006855 networking Effects 0.000 claims 1
- 230000011218 segmentation Effects 0.000 abstract description 20
- 230000014509 gene expression Effects 0.000 abstract description 16
- 238000005516 engineering process Methods 0.000 abstract description 12
- 238000004891 communication Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 7
- 230000015654 memory Effects 0.000 description 7
- 238000003058 natural language processing Methods 0.000 description 6
- 230000000875 corresponding effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000013519 translation Methods 0.000 description 5
- 230000007613 environmental effect Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000002596 correlated effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000002203 pretreatment Methods 0.000 description 1
- 230000007115 recruitment Effects 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/53—Processing of non-Latin text
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Machine Translation (AREA)
Abstract
提供了用于训练分词器(词语分割器)的技术。在一种技术中,分词器切分标记串以识别单独标记或词语。语言模型基于识别的标记或词语而生成。关于诸如个人或公司的实体的词汇表被识别。词汇表可以是涉及实体的在线数据,例如新闻文章或社交网络的成员的简档页面。词汇表中的一些标记可以具有高于其它标记的权重。语言模型接受加权的词汇表作为输入并生成伪句子。替代地,正规表达式被用来生成伪句子。伪句子被用来训练分词器。
Description
技术区域
本发明涉及词语分割,尤其涉及使用自动生成的句子训练词语分割器。
背景技术
自然语言处理(NLP)属于计算机科学、人工智能、和与计算机和人类(自然)语言之间的互动有关的语言学的领域。NLP覆盖搜索、词性(POS)标注、机器翻译和语音识别的方面。用于这些方面中的每一个的基础预处理步骤之一涉及词切分。
词切分涉及将一连串书面语言划分成其构成词语的问题。采用英语或使用某种形式的拉丁字母表的很多其它语言,间隔是标记(或词语)定界符的很好的近似。其中间隔符号单独可能不足够的一些示例包括缩写,像用于“can not”的“can’t”。然而,间隔符号的等效物在所有书面文本中都未发现,并且如果没有间隔符号(或诸如此类的等效物),词切分是困难的问题。具有重要的词切分过程的语言包括:(1)汉语和日语,其中句子而不是词语被定界;(2)泰语和老挝语,其中短语和句子而不是词语被定界;以及(3)越南语,其中音节而不是词语被定界。如果没有词分器,整个汉语句子例如将作为单个词语处理并且相应的NLP流水线将损坏。
对于诸如汉语和日语的语言,人们必须通过首先理解句子语义来消除句子歧义。下面是汉语句子:
我的小孩在桥庄幼儿园
并且相应的英语翻译是“My child is at Qiao Zhuang kindergarten.”
上面的汉语句子的正确分割如下:
我(my)的小孩(child)在(is at)桥庄(Qiao Zhuang)幼儿园(kindergarten)
词语“桥庄”是公司名称。一个分词器(或用于基于字符语言的“词语分割器”)可能将汉语句子分割成“桥”和“庄”,其意思是“bridge”和“village”。这样的分割将使得搜索困难,因为搜索范围增加至大得多的索引范围,由此使得搜索过程减慢并且降低准确性。此外,这样的分割还将使得统计机器翻译生成更加糟糕的翻译,不仅对于多语言搜索,也对于任何下游应用。
本节描述的方法是可能实行的方法,但是不必然是之前已经想到或实行的方法。因此,除非另有说明,否则不应假设仅仅由于它们被包含在本节中就将本节描述的任何方法视为现有技术。
附图说明
图1是描述一个实施例中的用于训练分词器的过程的流程图;
图2是描述一个实施例中的用于训练分词器的过程的框图;
图3是示出可以实施本发明的实施例的计算机系统的框图。
具体实施方式
在下面的描述中,出于解释目的,阐述了许多具体细节,以便提供对本发明的透彻理解。然而,显而易见地,本发明可以在没有这些具体细节的情况下施行。在其它实例中,公知的结构和设备示出为框图形式,以便避免不必要的模糊本发明。
总体概述
本文描述的系统和方法用于训练分词器,以增加它在识别正确名称(例如人名和公司名称)方面的准确性。语言模型用于基于正确名称自动生成多个短语或句子。这类短语和句子包括用于正确名称的环境。生成的短语/句子然后用于训练分词器,从而使得正确名称可以被正确地识别并且作为NLP过程的部分被切分。
虽然下面的描述涉及切分基于字符的语言(例如汉语)的字符,但是实施例不限于此。实施例包括切分采用基于非字符语言(例如,英语、法语和德语)的词语。
过程概述
图1是描述一个实施例的用于训练分词器的过程100的流程图。过程100可以在软件、硬件、或硬件和软件的结合中实施。过程100可以在单个计算设备上或跨多个计算设备执行。例如,过程100的一些框可以通过第一计算设备执行,而过程100的其它框可以通过第二计算设备执行,第二计算设备通信地耦接到第一计算设备。
在框110处,生成一个或多个词汇表。词汇表是词语和其相关频率的列表。词汇表可以来自一个或多个源,例如一个或多个社交网络的成员的简档页面和概述。因此,词汇表中的词语可以是对概要数据的直接观察,并且词语频率可以从概要数据得到。
词汇表可以基于每个实体生成,无论实体是个人或公司。换句话说,不同词汇表可以针对每个人的名字和/或针对每个公司名称生成。采用这种方式,用于某些正确名称的词汇表可以包括用于正确名称的相关语义环境。
在框120处,权重被分配给生成的词汇表中的一个或多个标记。标记的权重表明标记有多重要或标记应该被语言模型多频繁的选择(在下面更详细描述)。权重越高,语言模型将使用标记来生成句子的概率越高。
在框130处,语言模型基于通过分词器识别的标记而生成。语言模型借助于概率分布指定m个词语序列P(w1,……,wm)的概率。
在框140处,语言模型基于被输入到语言模型的一个或多个生成的词汇表生成“伪”句子。“伪”句子是自动生成的句子,可以是或不是语法上完整的句子。
在框150处,分词器基于生成的句子被训练。
虽然过程100被描述和描绘成按特定次序执行,但是过程100可以按不同次序执行。例如,框130可以在框110和120之前执行。
系统概述
图2是描绘一个实施例中的用于训练分词器210的系统和过程的框图。分词器210可以在硬件、软件、或硬件和软件的结合中实现。分词器210实施多个分词技术中的一个,词切分技术为例如隐马尔可夫模型(hidden Markov model:HMM)和条件随机场(conditionalrandom field:CRF)。HMM分词器用于从左到右然后从右到左扫描字符串,以消除标记选项的歧义。HMM分词器可以依赖高准确性的词典和分词前数据来训练一个或多个HMM模型。CRF分词器也依赖多个词典和分词前训练数据。
分词器210的初始训练可以涉及手动分割字符句子,然后用标签标注字符。下面是手动分割的包含九个字符(C1-C9)的句子,并且其中间隔被用作词语边界:C1C2C3C4C5C6C7C8C9。分节中的每个字符然后被指定三个标签(B、I、S)中的一个,其中“B”表示以A词语的开头,“I”表示词语的内部字符(即,不是开始字符),并且“S”表示单独字符(其中字符本身是词语)。用于上面手动分割的句子的带标签的数据如下:BIBIIBIIS。
指定标签可以手动或自动执行。基于分割句子中的每个字符的位置,可以推定适当的标签。例如,本身是词语的字符被标注为“S”,开始词语的字符被标注为“B”,并且既不是词语也不是词语的开始字符的字符被指定为“I”。
然后构建特征集,例如采用字符N-gram形式。使用字符uni-grams和bi-grams,用于上面的句子的特征集如下:
字符 | 标签 | 特征 |
C1 | B | C1C2、C1 |
C2 | I | C1C2、C2、C3、C2 |
C3 | B | C2C3、C3C4、C3 |
C4 | I | C3C4、C4C5、C4 |
C5 | I | C4C5、C5C6、C5 |
C6 | B | C5C6、C6C7、C6 |
C7 | I | C6C7、C7C8、C7 |
C8 | I | C7C8、C8C9、C8 |
C9 | S | C8C9、C9 |
标签在它们出现的次序方面有约束。例如,标签“I”绝不会出现在“S”之后,如“SI”。
在将每个手动分割的句子转换成上面的格式之后,分词器210可以使用特征集训练。
在分词器210已经用手动分割的数据训练之后,分词器210接受源数据220作为输入。源数据220的示例包括由在线社交网络(例如领英、脸书和谷歌)、在线新闻文章(例如,财政、商业、运动和/或政治文章)、和在线百科全书的用户提供的简档或概要数据。
成员的社交网络简档可包括他的/她的名、姓和/或公司名称。社交网络简档还可以包括个人爱好和兴趣、访问目的地和住宅信息。另外,成员可以输入详细的个人概要。在专业社交网络中,这样的概要可以是对成员之前的工作和/或技能的详细概要。个人的个人概要数据与个人高度相关。如果实施图2的过程的一方是拥有或管理社交网络的一方,那么获得这样的概要数据是相对直接的,以便在初始分词步骤中使用。
当源数据220输入到分词器210时,分词器210可以执行向前-向后搜索次序以推定用于每个字符的词语分割BIS标签,并且之后分割的句子从确定的顺序标签读取。此后,分词器210能够基于源数据220生成标记,每个标记与分词器210识别的词语(或系列的字符)相对应。例如,分词器210识别的一个词语可以包括四个汉语字符。
在分词过程期间,分词器210生成“可能”标记和“最终”标记。可能标记是(1)分词器210在输入字符串中识别的标记,而不是(2)最终标记。分词器20可以识别可能标记,因为可能标记与词典中的词语匹配。分词器210可以将一个或多个词语/字符增加到可能标记或将一个或多个词语/字符从可能标记移除。
另一方面,“最终”标记是分词器210(1)在输入字符串中识别的并且(2)不再修改的标记。因此,最终标记可以首先是可能标记。在将可能标记作为最终标记之前,分词器210可以分析可能标记的环境。可能标记的“环境”指的是在输入字符串中的可能标记之前的一个或多个字符和/或在输入字符串中的可能标记之后的一个或多个字符。基于可能标记的环境,分词器210确定是否将可能标记作为最终标记或以某种方式修改可能标记。例如,可能标记可以分类为开始词语(或通常开始句子的词语)、中间词语、结束词语、动词或名词。在可能标记的分类和可能标记之前的标记和可能标记之后的标记的分类的基础上,分词器210确定可能标记是否应该为最终标记或应该以某种方式修改。
基于一组最终标记,生成语言模型230。如果源数据220包括在线社交网络的成员的概要数据,那么语言模型230将相关语义简档环境做成模型。随后,如在下面更详细描述的,被建成语言模型230的语义线索可以用来生成短语或句子,其随后可以被用作训练数据来训练(或再训练)分词器210。
在一个实施例中,源数据220被过滤以便排除正确名称,例如公司名称和/或人名。例如,如果源数据220包括社交网络的成员的概要数据,并且概要数据包括在成员的简档中列出的公司名称,那么公司名称在简档中识别并用于将公司名称的任何实例从概要数据移除。另外,如果正确名称被包括在源数据220中,那么“噪音”数据(即,非正确的最终标记)可以被引入语言模型230。另一方面,许多社交网络的成员提供的概要数据通常不包括成员的名称。
语言模型
语言模型230借助于概率分布指定m个词语序列P(w1,……,wm)的概率。有估计不同短语的相对可能性的方式在很多自然语言处理应用中是有用的,例如语音识别、机器翻译、词性标注、解析、手书识别、信息检索和其它应用。
建立语言模型中的一个问题是数据稀少。特别地,很多可能词语序列将无法在建立语言模型时观察到。一个解决方案是做出假设:词语的概率取决于前n个词语。当n=1时,这被称为n-gram模型或unigram模型,当n=2时,这被称为bigram模型,或当n=3时,这被称为trigram模型。
在n-gram模型中,观察句子w1,……,wm的概率被表示为P(w1,……,wm),并且近似为:
这里,假设在之前的i-1个词语的环境历史中观察第i个词语(wi)的概率可以通过在之前的n-1个词语的缩短的环境历史中观察wi的概率近似。
条件概率可以从n-gram频率计数中计算:
例如,在bigram(n=2)语言模型中,句子“我看见这个红房子”(“I saw the redhouse”)的概率近似为:
P(我,看见,这个,红,房子)≈P(我|<s>)P(看见|我)P(这个|看见)P(红|这个)P(房子|红)P(</s>|房子)
而在trigram(n=3)语言模型中,句子“我看见这个红房子”的概率近似为:
P(我,看见,这个,红,房子)≈P(我<s>,<s>)P(看见|<s>,我)P(这个|我,看见)P(红|看见,这个)P(房子|这个,红)P(</s>|红,房子)
前n-1个n-gram的环境填充有句子标记开始标记,表示为<s>。在没有句子结束标记的情况下,不符合语法的序列“我看见这个”的概率将通常高于较长的句子“我看见这个红房子”的概率。
在实施例中,多语言模式被生成。例如,一个语言模型可以针对人名而生成,而另一语言模型可以针对公司名字生成。在这个示例中,不同源数据220将用于每个语言模型。换句话说,用于分词器210的一组源数据将包括关于人的信息而用于分词器210的另一组源数据将包括关于公司的信息。在相关实施例中,不同分词器被用来切分不同组的源数据。
在相关实施例中,多语言模型可以针对人名生成和/或多语言模型可以针对公司名称生成。例如,一个语言模型针对公司高管生成而另一语言模型针对软件工程师生成。作为另一示例,一个语言模型针对软件公司生成而另一语言模型针对制造公司生成。
在一个实施例中,语言模型230可以基于来自多语言的词语或标记,语言为例如汉语和英语、德语和英语、或汉语、日语、朝鲜语、英语、西班牙语、和法语。这在其中不同语言的字符在相同的句子或词语库中发现的情形下是有用的。另外,如果分词器遇到包括来自多语言词语和/或字符的标记串(被称为“混合”编码),那么分词器更可能不正确地识别句子中的标记。
另外地或替代地,一个语言模型可以针对一种语言生成而另一语言模型可以针对另一语言生成。在这种情形下,可以假定存在很少(如果有的话)混合编码。
词汇表生成
在一个实施例中,在语言模型230生成之前或之后,词汇表240被生成。词汇表240是词语及其相关频率的列表。词汇表240可以来自一个或多个源,例如一个或多个社交网络的成员的简档页面和概要。换句话说,词汇表240可以是源数据220的子集。因此,词汇表240中的词语可以是概要数据的直接观察,并且词语频率可以从概要数据得到。
词汇表240可以基于每个实体生成,无论实体是个人或公司。换句话说,不同词汇表可以针对每个人的名字和/或针对每个公司名称生成。采用这种方式,用于某个正确名称的词汇表包括用于正确名称的相关语义环境。因此,词汇表240可以包括多个不同词汇表,针对多个人中的每一个的词汇表和/或针对多个公司中的每一个的词汇表。
可以使用针对正确名称(除了社交用户的简档)的词汇表240的源。例如,针对在线百科全书(例如,维基百科)中的公司的文章可以用作用于公司的词汇表。作为另一示例,公司名称的搜索询问被(自动)提供到搜索引擎,搜索引擎生成可以包括文本和/或到包括公司名称的web资源(例如,HTML文档)的链接的搜索结果。web资源可以被自动检索并用作用于公司名称的词汇表。
作为另一示例,由特定的人发起的和/或提及特定的人的社交(例如,推特)消息可以是用于特定的人的词汇表的源。作为另一示例,从社交网络的成员的社交更新可以用作用于与该成员相关的词汇表的一个源。在其中概要/简档数据被用作用于词汇表的源的相关示例中,成员的社交更新可以在不同与其中概要/简档数据起源的社交网络的一个或多个社交网络(例如,脸书)中。
权重生成
在一个实施例中,权重应用器250指定词汇表240中的一个或多个标记中的每一个的权重。权重应用器250可以在软件、硬件、或软件和硬件的结合中实现。标记的权重表明标记有多重要或标记应被语言模型230选择的频率。权重越高,语言模型230将使用标记来生成句子的可能性越高。
权重应用器250使用多个技术中的一个将权重应用到标记。一个生成标记权重的示例技术是确定标记在文档或文档库中的频率,并且指定对应于频率的权重。因此,频率越高,权重越高。
另一示例权重技术是td-idf或“词频—逆向文档频率”。td-idf是反映标记对于文档集合(语料库)中的文档的重要性的数值统计。在本文描述的技术的背景中,文档可以是单个概要,并且语料库可以是多个(例如,全部)概要。标记的tf-idf值按比例增加至标记在文档中出现的次数,但是通过标记在语料库中的频率偏移。偏移帮助控制一些标记通常比其他标记更常见的事实。例如,虽然词语“的”可以在文档中出现多次,但是词语“的”也在包括该文档的集合中的多个文档中出现多次。因此,词语“的”的td-idf相对低。相反地,即使词语“C++”可能仅在文档中出现一次或两次,但是词语“C++”在包括该文档的文档集合中可能仅出现少数次数。因此,“C++”的td-idf相对高。
除了或替代加权词汇表240的标记以生成加权的词汇表260,权重应用器250(或另外的组件)可以过滤词汇表240(或加权的词汇表260)以移除某些标记。过滤的示例词语包括“停顿(stop)”词语,例如“的”、“该(the)”、“它”和“在……上”。如果加权的词汇表260被过滤,那么一些相对高权重的标记被移除。
加权的词汇表260包括一个或多个正确名称和与该一个或多个正确名称相关的环境。例如,用于公司名称“领英”的加权的词汇表260可以包括高权重的标记,例如“专业”、“社交网络”、“动态公司”、“招聘源”、“理想工作”和“职工乐园”。
生成伪句子
在其中生成语言模型230的实施例中,语言模型230接受加权的词汇表260作为输入。语言模型230生成作为输出的句子或短语,此处被称为“伪句子”。这类短语/句子在人不组成短语/句子的意义上被视为“伪”。
加权的词汇表260可以将一个或多个正确名称识别为正确名称(例如,“公司名称=Xcalibrator”)和包括最初与句子中的一个或多个正确名称同时出现的加权词语的环境数据。环境数据被词汇表240约束并且直接从句子级别的环境观察。采用这种方式,语言模型230将生成(或更可能生成)一个或多个包括正确名称和至少一环境数据的伪句子。
另外,不要求伪句子在语法上是正确的。反而伪句子可以只是足够长以呈现足够长度的环境,从而使得分词器210(在用伪句子训练之后)能够对标记边界做出更好的决定。例如,伪句子可以被约束成七个标记长。
正规表达式
在替代实施例中,替代生成语言模型230(无论一个或多个),伪句子基于一组正规表达式而生成。正确名称的类型可以指示要使用的正规表达式。例如,如果正确名称是人名,那么正规表达式可以是“X指出…….”,其中X表示人名,名、姓、或两者。其它示例正规表达式如下:(1)“X从CMU毕业,并且后来加入新兴公司Uber”;(2)“X拥有ACL-2014最佳论文奖”;(3)“IBM授予X研究生奖学金”;(4)“X是华盛顿大学的亚马逊教授”;(5)“纽约时报引用了X对该问题的评论”;(6)“X和Tina有两个孩子”;(7)“X,因特尔公司的架构师,说……”。
用于生成针对公司名称的伪句子的正规表达式的示例包括“Y是杰出的公司”,“我为Y工作”,“Y具有很多员工”和“Y的股票跌/升……”,其中Y表示公司名称。
正规表达式可以手动或自动组成的。例如,正规表达式可以是基于带标签的训练数据自动“学习”的。给定带标签的数据,实体名称可以自动用变量“例如,X”替代,并且带有变量“X”的句子或短语可以是新的正规表达式。
另外,不同正规表达式可以基于实体类型而生成。实体类型可以通过地理、语言、专业、商业办公区、提供的产品/服务、或个人兴趣指示。例如,一组正规表达式可以用来生成针对软件公司的伪句子,而另一组正规表达式可以用于生成针对金融公司的伪句子。作为另一示例,一组正规表达式可以用来生成针对法律职业者的伪句子,而另一组正规表达式可以用于公司高管。
在一个实施例中,在使用伪句子训练分词器210之前,伪句子的子集被修改或过滤。一个目的是生成的伪句子重点在于分词器的弱决策边界。在这些决策边界附近存在潜在的很多低频率字符ngram,。因此,重要的是,伪句子含有很多低频率字符ngram。一个方法是过滤掉大于特定长度的伪句子。另一方法是过滤掉仅含有高频率词语或填充词的伪句子。这类句子不会将新的信息带至分词器210以产生更好的数据点。反而这类句子可能只会向分词器210增加“噪音”。
训练分词器
伪句子(无论通过语言模型230生成或使用正规表达式生成)被用来训练分词器210。在实施例中,训练分词器210涉及将正确名称增加到分词器210用来切分字符串的一个或多个词典。在社交网络中带有这样标签的人名和公司名称的拼写正确性几乎得到保证。因此,如果控制分词器210的实体也可访问大社交网络的成员的简档数据,那么实体可以具有很大的一组标记,从该组标记训练分词器210。
将正确名称加入词典可以涉及在词典中插入正确名称和表示正确名称是否是人的名、姓,或正确名称是否是公司名称的类型数据。因此,当分词器210随后切分字符串并识别与字符串中的正确名称匹配的可能标记,分词器210可以使用类型数据(与词典中的正确名称相关联),以及可选地,确定可能标记是否应该是最终标记的可能标记的环境。
除了或替代将正确名称增加至词典,训练分词器210可以涉及多个技术中的一个。因为生成的伪句子被自动分割,因此手动分割不是必要(如在初始训练情形下)。另外,伪句子可以使用例如BIS标签(如之前描述的)自动标注。
在一个实施例中,在分词器210被训练之后,分词器210被用来识别标记串中的标记,这些标记被用来生成另一(和更准确的)语言模型(图1中未示出)。标记串可以是源数据220(或其部分),其之前用作对分词器210的输入。。
硬件概述
根据一个实施例,本文描述的技术由一个或多个专用计算设备实施。专用计算设备可以被硬连线以执行该技术,或者可包括数字电子设备,例如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA),其被持续地编程以执行技术,或者可包括一个或多个通用硬件处理器,其被编程成根据固件、内存、其它存储器或组合中的程序指令执行该技术。这种专用计算设备还可将定制程序与定制硬连线逻辑、ASIC或FPGA结合来实现该技术。专用计算设备可以是台式计算机系统、便携式计算机系统、手持设备、联网设备或者任意其它结合硬连线和/或程序逻辑以实施该技术的设备。
例如,图3是示出了计算机系统300的框图,本发明的实施例可在其上实施。计算机系统300包括总线302或用于信息通信的其它通信机构,以及与总线302耦接以处理信息的硬件处理器304。硬件处理器304可以是例如通用微处理器。
计算机系统300还包括主存储器306,例如随机存取存储器(RAM)或其它动态存储设备,其耦合到总线302用于存储将被处理器304执行的信息和指令。主存储器306也可用于在由处理器304执行的指令执行期间存储临时变量或其它中间信息。当存储在可由处理器304访问的非暂时性储介质中时,这类指令使得计算机系统300成为被定制成执行指令中指定操作的专用机。
计算机系统300还包括只读存储器(ROM)308或其它静态存储设备,其耦合到总线302以为处理器304存储静态信息和指令。存储设备310,例如磁盘或光盘,被提供并且耦合到总线302用于存储信息和指令。
计算机系统300可以经由总线302耦合到显示器312,例如阴极射线管(CRT),用于向计算机用户显示信息。输入设备314包括字母数字和其它键,耦合至总线302用于将信息和命令选择传送至处理器304。另一种类型的用户输入设备是光标控制器316,例如鼠标、跟踪球、或光标方向键,用于将方向信息和命令选择传送至处理器304和用于控制显示器312上的光标移动。这个输入设备通常具有在两个轴线(第一轴线(例如,x)和第二轴线(例如,y))上的两个自由度,允许设备指定平面中位置。
计算机系统300可以利用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑来实施这里描述的技术,其结合计算机系统使计算机系统300成为专用机或将计算机系统300编程为专用机。根据一个实施例,计算机系统300响应于处理器304实行包含在主存储器306中的一个或多个指令的一个或多个序列而执行这里的技术。这些指令可从诸如存储设备310的另一存储介质中读入主存储器306。实行包含在主存储器306中的指令序列导致处理器304执行这里所描述的处理步骤。在替代实施例中,硬连线电路可替换或者结合软件指令来使用。
如这里所使用的术语“存储介质”指的是存储使机器按照特定方式操作的数据和/或指令的任何非暂时性介质。这些存储介质可包括非易失性介质和/或易失性介质。非易失性介质包括,例如光盘或者磁盘,诸如存储设备310。易失性介质包括诸如主存储器306的动态内存。通常形式的存储介质包括,例如软盘、柔性磁盘、硬盘、固态驱动器、磁带、或者任何其它磁数据存储介质、CD-ROM、任何其它光学数据存储介质、任何具有孔图案的物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其它内存芯片或胶卷盒。
存储介质与传输介质不同但可以结合使用。传输介质参与在存储介质之间的信息传送。例如,传输介质包括同轴电缆、铜线和光纤,包括包含总线302的电线。传输介质亦可以采取声波或光波的形式,例如在无线电波和红外数据通信中产生的那些声波或光波。
可以利用各种形式的介质将一个或多个指令的一个或多个序列携带至处理器304以供执行。例如,指令最初可在远程计算机的磁盘或者固态驱动器上携带。远程计算机可将指令载入其动态存储器中并利用调制解调器经电话线发送指令。计算机系统300本地的调制解调器可在电话线上接收数据并使用红外传输机来将数据转换成红外信号。红外检测器可接收红外信号中携带的数据并且适宜的电路可将数据放置在总线302上。总线302将数据携带至主存储器306,处理器304可从中检索并执行指令。由主存储器306接收的指令可选地在被处理器304执行之前或者之后保存在存储设备310上。
计算机系统300还包括耦合至总线302的通信接口318。通信接口318耦合至与本地网络322相连接的网络链路320,提供双向数据通信。例如,通信接口318可以是综合服务数字网络(ISDN)卡、电缆调制解调器、卫星调制解调器、或者提供与对应类型的电话线的数据通信连接的调制解调器。作为另一示例,通信接口318可以是局域网(LAN)卡,以提供与兼容LAN的数据通信连接。也可实施无线链接。在任何这些实施中,通信接口318发送及接收电信号、电磁信号或光信号,其携带表示各种类型信息的数字数据流。
网络链路320典型地通过一个或多个网络向其它数据设备提供数据通信。例如,网络链路320可通过本地网络322向主机324或者由因特网服务提供商(ISP)326操作的数据设备提供连接。ISP 326转而通过现在通称为“因特网”328的全球分组数据通信网络提供数据通信服务。本地网络322和因特网328均使用携带了数字数据流的电信号、电磁信号或光信号。通过各种网络的信号和在网络链路320上且通过通信接口318的信号(这些信号将数字数据向和自计算机系统300传送)是传输介质的示例形式。
计算机系统300可通过(多个)网络、网络链路320和通信接口318发送消息和接收数据,包括程序代码。在因特网示例中,服务器330能够通过因特网328、ISP 326、本地网络322和通信接口318发送请求的应用程序代码。
接收的代码可在被接收时由处理器304执行,和/或存储在存储设备310或其它非易失性存储器,用于之后执行。
在上述说明书中,已经参照根据实施方式而有所不同的许多具体细节描述了本发明的实施例。相应地说明书和附图被视为说明性的而非限制性的。关于本发明的范围,以及申请人意欲本发明的范围是什么的唯一专有指示是从本申请发布的权利要求组的字面和等效范围,权利要求组采用这类权利要求发布所采用的具体形式,包括任何后续修改。
Claims (12)
1.一种方法,所述方法包括:
从由在线社交网络服务维持的简档识别多个正确名称;
将所述多个正确名称输入到语言模型中;
通过所述语言模型基于所述多个正确名称生成多个句子;
基于所述多个句子,对被配置成识别标记串内的标记的分词器进行训练;
其中所述方法通过一个或多个计算设备执行。
2.根据权利要求1所述的方法,其中所述语言模型是第一语言模型,所述方法还包括:
在训练所述分词器之后,使用所述分词器生成不同于所述第一语言模型的第二语言模型。
3.根据权利要求1所述的方法,还包括在生成所述多个句子之前生成所述语言模型。
4.根据权利要求1所述的方法,还包括在训练所述分词器之前:
使用所述分词器来切分第一数据以生成多个标记;
其中生成所述语言模型包括基于所述多个标记生成所述语言模型。
5.根据权利要求4所述的方法,其中所述第一数据是组成社交网络的多个成员的概要数据。
6.根据权利要求5所述的方法,其中:
所述概要数据包括所述多个成员中的特定成员的特定概要;
所述方法还包括在基于所述多个标记生成所述语言模型之前:
在所述特定成员的特定简档中识别正确名称;
确定所述正确名称是否包含在所述特定概要中;
响应于确定所述正确名称被包含在所述特定概要中,将所述正确名称从所述多个标记排除。
7.根据权利要求1所述的方法,还包括在生成所述多个句子之前:
基于社交网络的成员的社交简档生成词汇表。
8.根据权利要求7的方法,还包括:
针对所述词汇表中的多个词语或字符中的每一个,将权重应用到所述每个词语或字符。
9.根据权利要求8所述的方法,其中生成所述多个句子包括基于用于所述多个词语或字符中的每一个的权重生成所述多个句子。
10.根据权利要求8所述的方法,其中所述权重指示词语或字符相对于其它词语或字符应该被所述语言模型选择的频率。
11.根据权利要求1所述的方法,其中所述多个正确名称包括公司名称或人名。
12.一种系统,所述系统包括:
一个或多个处理器;
一个或多个非暂时性存储介质,所述一个或多个非暂时性存储介质存储指令,当被所述一个或多个处理器执行时,所述指令引起根据权利要求1-10中任一项所述的方法的执行。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/611,816 | 2015-02-02 | ||
US14/611,816 US9348809B1 (en) | 2015-02-02 | 2015-02-02 | Modifying a tokenizer based on pseudo data for natural language processing |
PCT/IB2016/000622 WO2016125031A1 (en) | 2015-02-02 | 2016-02-01 | Modifying a tokenizer based on pseudo data for natural language processing |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108124477A true CN108124477A (zh) | 2018-06-05 |
CN108124477B CN108124477B (zh) | 2021-06-15 |
Family
ID=55398450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680008451.7A Active CN108124477B (zh) | 2015-02-02 | 2016-02-01 | 基于伪数据改进分词器以处理自然语言 |
Country Status (3)
Country | Link |
---|---|
US (2) | US9348809B1 (zh) |
CN (1) | CN108124477B (zh) |
WO (1) | WO2016125031A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112214994A (zh) * | 2020-10-10 | 2021-01-12 | 苏州大学 | 基于多级词典的分词方法、装置、设备及可读存储介质 |
CN112368703A (zh) * | 2018-06-27 | 2021-02-12 | 比特梵德知识产权管理有限公司 | 用于将自然语言句子转译成数据库查询的系统及方法 |
CN112580310A (zh) * | 2020-12-28 | 2021-03-30 | 河北省讯飞人工智能研究院 | 一种缺失字/词的补全方法及电子设备 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10042923B2 (en) * | 2015-04-24 | 2018-08-07 | Microsoft Technology Licensing, Llc | Topic extraction using clause segmentation and high-frequency words |
US11010768B2 (en) * | 2015-04-30 | 2021-05-18 | Oracle International Corporation | Character-based attribute value extraction system |
US10410136B2 (en) | 2015-09-16 | 2019-09-10 | Microsoft Technology Licensing, Llc | Model-based classification of content items |
US10241998B1 (en) * | 2016-06-29 | 2019-03-26 | EMC IP Holding Company LLC | Method and system for tokenizing documents |
US10460032B2 (en) * | 2017-03-17 | 2019-10-29 | International Business Machines Corporation | Cognitive lexicon learning and predictive text replacement |
US20200167525A1 (en) * | 2017-06-08 | 2020-05-28 | 3M Innovative Properties Company | Systems and methods for word filtering in language models |
CN107967253A (zh) * | 2017-10-27 | 2018-04-27 | 北京大学 | 一种基于迁移学习的低资源领域分词器训练方法及分词方法 |
US10607604B2 (en) | 2017-10-27 | 2020-03-31 | International Business Machines Corporation | Method for re-aligning corpus and improving the consistency |
US10832657B2 (en) * | 2018-03-01 | 2020-11-10 | International Business Machines Corporation | Use of small unit language model for training large unit language models |
CN109657235B (zh) * | 2018-12-05 | 2022-11-25 | 云孚科技(北京)有限公司 | 一种混合分词方法 |
CN109635303B (zh) * | 2018-12-19 | 2020-08-25 | 中国科学技术大学 | 特定领域意义改变词的识别方法 |
CN110110327B (zh) * | 2019-04-26 | 2021-06-22 | 网宿科技股份有限公司 | 一种基于对抗学习的文本标注方法和设备 |
CN110717341B (zh) * | 2019-09-11 | 2022-06-14 | 昆明理工大学 | 一种以泰语为枢轴的老-汉双语语料库构建方法及装置 |
US11625535B1 (en) * | 2019-12-05 | 2023-04-11 | American Express Travel Related Services Company, Inc. | Computer-based systems having data structures configured to execute SIC4/SIC8 machine learning embedded classification of entities and methods of use thereof |
US20220229985A1 (en) * | 2021-01-21 | 2022-07-21 | Apple Inc. | Adversarial discriminative neural language model adaptation |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1352774A (zh) * | 1999-04-08 | 2002-06-05 | 肯特里奇数字实验公司 | 用于中文的标记和命名实体识别的系统 |
US20040148170A1 (en) * | 2003-01-23 | 2004-07-29 | Alejandro Acero | Statistical classifiers for spoken language understanding and command/control scenarios |
US20100241418A1 (en) * | 2009-03-23 | 2010-09-23 | Sony Corporation | Voice recognition device and voice recognition method, language model generating device and language model generating method, and computer program |
JP2011118496A (ja) * | 2009-12-01 | 2011-06-16 | National Institute Of Information & Communication Technology | 統計的機械翻訳のための言語独立な単語セグメント化 |
CN102929870A (zh) * | 2011-08-05 | 2013-02-13 | 北京百度网讯科技有限公司 | 一种建立分词模型的方法、分词的方法及其装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6694055B2 (en) * | 1998-07-15 | 2004-02-17 | Microsoft Corporation | Proper name identification in chinese |
EP2605150A1 (en) * | 2011-12-16 | 2013-06-19 | Presans | Method for identifying the named entity that corresponds to an owner of a web page |
US20140195255A1 (en) * | 2013-01-08 | 2014-07-10 | Robert Bosch Gmbh | System And Method For Assessment Of Patient Health Using Patient Generated Data |
US9110889B2 (en) * | 2013-04-23 | 2015-08-18 | Facebook, Inc. | Methods and systems for generation of flexible sentences in a social networking system |
-
2015
- 2015-02-02 US US14/611,816 patent/US9348809B1/en active Active
-
2016
- 2016-02-01 WO PCT/IB2016/000622 patent/WO2016125031A1/en active Application Filing
- 2016-02-01 CN CN201680008451.7A patent/CN108124477B/zh active Active
- 2016-04-29 US US15/142,288 patent/US9460080B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1352774A (zh) * | 1999-04-08 | 2002-06-05 | 肯特里奇数字实验公司 | 用于中文的标记和命名实体识别的系统 |
US20040148170A1 (en) * | 2003-01-23 | 2004-07-29 | Alejandro Acero | Statistical classifiers for spoken language understanding and command/control scenarios |
US20100241418A1 (en) * | 2009-03-23 | 2010-09-23 | Sony Corporation | Voice recognition device and voice recognition method, language model generating device and language model generating method, and computer program |
JP2011118496A (ja) * | 2009-12-01 | 2011-06-16 | National Institute Of Information & Communication Technology | 統計的機械翻訳のための言語独立な単語セグメント化 |
CN102929870A (zh) * | 2011-08-05 | 2013-02-13 | 北京百度网讯科技有限公司 | 一种建立分词模型的方法、分词的方法及其装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112368703A (zh) * | 2018-06-27 | 2021-02-12 | 比特梵德知识产权管理有限公司 | 用于将自然语言句子转译成数据库查询的系统及方法 |
CN112214994A (zh) * | 2020-10-10 | 2021-01-12 | 苏州大学 | 基于多级词典的分词方法、装置、设备及可读存储介质 |
CN112580310A (zh) * | 2020-12-28 | 2021-03-30 | 河北省讯飞人工智能研究院 | 一种缺失字/词的补全方法及电子设备 |
CN112580310B (zh) * | 2020-12-28 | 2023-04-18 | 河北省讯飞人工智能研究院 | 一种缺失字/词的补全方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US20160246776A1 (en) | 2016-08-25 |
US9460080B2 (en) | 2016-10-04 |
WO2016125031A1 (en) | 2016-08-11 |
US9348809B1 (en) | 2016-05-24 |
CN108124477B (zh) | 2021-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108124477A (zh) | 基于伪数据改进分词器以处理自然语言 | |
US10176804B2 (en) | Analyzing textual data | |
JP6675463B2 (ja) | 自然言語の双方向確率的な書換えおよび選択 | |
US8386240B2 (en) | Domain dictionary creation by detection of new topic words using divergence value comparison | |
US6983239B1 (en) | Method and apparatus for embedding grammars in a natural language understanding (NLU) statistical parser | |
EP1016074B1 (en) | Text normalization using a context-free grammar | |
US7035789B2 (en) | Supervised automatic text generation based on word classes for language modeling | |
US6963831B1 (en) | Including statistical NLU models within a statistical parser | |
US20020128821A1 (en) | Phrase-based dialogue modeling with particular application to creating recognition grammars for voice-controlled user interfaces | |
CN103678684A (zh) | 一种基于导航信息检索的中文分词方法 | |
CN107967250B (zh) | 一种信息处理方法及装置 | |
KR20080021064A (ko) | 중국어 2행연구의 생성 | |
JP2013120534A (ja) | 関連語分類装置及びコンピュータプログラム及び関連語分類方法 | |
CN113268576B (zh) | 一种基于深度学习的部门语义信息抽取的方法及装置 | |
TW201826145A (zh) | 從中文語料庫提取知識的方法和系統 | |
EP3598321A1 (en) | Method for parsing natural language text with constituent construction links | |
Bangalore et al. | Robust understanding in multimodal interfaces | |
Palmer et al. | Robust information extraction from automatically generated speech transcriptions | |
CN115831117A (zh) | 实体识别方法、装置、计算机设备和存储介质 | |
Shrawankar et al. | Construction of news headline from detailed news article | |
CN111428475A (zh) | 分词词库的构建方法、分词方法、装置及存储介质 | |
Dinarelli et al. | Concept segmentation and labeling for conversational speech | |
Blanchard et al. | Improving word segmentation by simultaneously learning phonotactics | |
Fushing et al. | Lewis Carroll's Doublets net of English words: network heterogeneity in a complex system | |
US8478584B1 (en) | Method and system for domain-optimized semantic tagging and task execution using task classification encoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington, USA Applicant before: Microsoft technical authorization limited liability company |
|
GR01 | Patent grant | ||
GR01 | Patent grant |