语义分析方法及系统技术方案

技术编号:11039892 阅读:123 留言:0更新日期:2015-02-12 02:39
本发明专利技术公开了一种语义分析方法,属于计算机领域。所述方法包括:获取训练语料;按照文档维度和词维度将所述训练语料切分成a*M*M个数据块;对切分出的所述a*M*M个数据块进行迭代采样,输出最终收敛的采样模型;根据所述最终收敛的采样模型进行语义分析。本发明专利技术通过将获取到的训练语料切分成a*M*M个数据块,对切分出的数据块进行迭代采样,输出最终收敛的采样模型,根据输出的最终收敛的采样模型进行分析。由于切分获得的数据块可以分别单独进行采样,从而可以降低单进程的内存需求,解决了现有技术中当要训练的隐含语义较多时对单进程的内存要求较高的问题,达到提高训练效率的目的。

【技术实现步骤摘要】
语义分析方法及系统
本专利技术涉及计算机领域,特别涉及一种语义分析方法及系统。
技术介绍
在目前的网络活动中,用户常常会通过关键字词来搜索自己感兴趣的信息,比如, 用户在搜索引擎中输入关键字词,搜索引擎通过关键字匹配算法来检索诸如图片、视频和 链接之类的信息。然而,从自然语言的角度来说,大部分词具有一词多义的特点,一个词除 了表达本意之外,还可能具有其它的隐含语义,仅通过关键字匹配的搜索方法无法为用户 提供更精确的服务。 为了提高匹配结果的相关性,近年来兴起一种基于隐含语义的索引方式,其检索 结果的实际效果更接近于人的自然语言。而要实现基于隐含语义的索引,首先需要进行隐 含语义分析,以大样本数量的统计分析找出不同的词之间的相关性。 现有的语义分析方法主要包括如下步骤:1)获取训练语料,该训练语料中包括多 个训练文档,每个训练文档中包括至少两个词;2)对训练语料进行迭代采样,输出最终收敛 的采样模型;3)对输出的采样模型进行分析。具体请参见图1,其示出了本专利技术现有技术提 供的语义分析系统的架构图,该语义分析系统包括多个训练进程和多个模型进程。其中,训 练进程用于加载训练文档,从模型进程获取上一轮采样获得的采样模型,并根据获取到的 采样模型对加载的训练文档进行采样,最后向模型进程输出本轮采样获得的采样模型。训 练进程和模型进程之间通过交换词的主题分布向量来进行通信。 在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题: 现有的语义分析方法中,当要分析的隐含语义很多时,对单进程的内存要求较高, 训练效率低。
技术实现思路
为了解决现有技术中当要分析的隐含语义较多时对单进程的内存要求较高,训练 效率低的问题,本专利技术实施例提供了一种语义分析方法及系统。所述技术方案如下: -方面,提供了一种语义分析方法,所述方法包括: 获取训练语料,所述训练语料中包括N个训练文档,每个所述训练文档中包括至 少两个词; 按照文档维度和词维度将所述训练语料切分成a*M*M个数据块,其中,a为大于等 于1的整数,且a*M小于所述训练文档的个数N,N彡2 ; 对切分出的所述a*M*M个数据块进行迭代采样,输出最终收敛的采样模型; 根据所述最终收敛的采样模型进行语义分析。 另一方面,提供了一种语义分析系统,所述系统包括: 训练语料获取模块,用于获取训练语料,所述训练语料中包括N个训练文档,每个 所述训练文档中包括至少两个词; 切分模块,用于按照文档维度和词维度将所述训练语料获取模块获取到的训练语 料切分成a*M*M个数据块,其中,a为大于等于1的整数,且a*M小于所述训练文档的个数 N, N ^ 2 ; 迭代采样模块,用于对所述切分模块切分出的所述a*M*M个数据块进行迭代采 样,输出最终收敛的采样模型; 语义分析模块,用于根据所述迭代采样模块输出的、最终收敛的采样模型进行语 义分析。 本专利技术实施例提供的技术方案带来的有益效果是: 通过将获取到的训练语料切分成a*M*M个数据块,对切分出的该a*M*M个数据块 进行迭代采样,输出最终收敛的采样模型,根据输出的最终收敛的采样模型进行分析。由于 切分获得的a*M*M数据块可以分别单独进行采样,从而可以降低单进程的内存需求,解决 了现有技术中当要训练的隐含语义较多时对单进程的内存要求较高的问题,达到提高训练 效率的目的。 【附图说明】 为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他 的附图。 图1是本专利技术现有技术提供的语义分析系统的架构图; 图2是本专利技术实施例一提供的语义分析方法的方法流程图; 图3是本专利技术实施例二提供的语义分析方法的方法流程图; 图4是本专利技术实施例二提供的语义分析系统进程框架图; 图5是本专利技术实施例三提供的语义分析系统的系统构成图; 图6是本专利技术实施例四提供的语义分析系统的系统构成图。 【具体实施方式】 为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方 式作进一步地详细描述。 实施例一 请参见图2,其示出了本专利技术实施例一提供的语义分析方法的方法流程图。该语义 分析方法可以用于对隐含语义进行训练分析。该语义分析方法可以包括: 步骤102,获取训练语料,该训练语料中包括N个训练文档,每个训练文档中包括 至少两个词; 步骤104,按照文档维度和词维度将该训练语料切分成a*M*M个数据块,其中,a为 大于等于1的整数,且a*M小于训练文档的个数N,N彡2 ; 步骤106,对切分出的a*M*M个数据块进行迭代采样,输出最终收敛的采样模型; 步骤108,根据最终收敛的采样模型进行语义分析。 综上所述,本专利技术实施例一提供的语义分析方法,通过将获取到的训练语料切分 成a*M*M个数据块,对切分出的该a*M*M个数据块进行迭代采样,输出最终收敛的采样模 型,根据输出的最终收敛的采样模型进行分析。由于切分获得的a*M*M数据块可以分别单 独进行采样,从而可以降低单进程的内存需求,解决了现有技术中当要训练的隐含语义较 多时对单进程的内存要求较高的问题,达到提高训练效率的目的。 实施例二 请参见图3,其示出了本专利技术实施例二提供的语义分析方法的方法流程图。该语义 分析方法可以用于对隐含语义,尤其是大规模的隐含语义进行训练分析。该语义分析方法 可以包括: 步骤202,语义分析系统获取训练语料; 其中,该训练语料中包括N个训练文档,每个训练文档中包括至少两个词。 该训练语料可以通过对原始语料进行一系列处理获得,该原始语料可以是用户在 搜索引擎中输入的用户查询串、搜索引擎的会话日志甚至是网络新闻的标题等。以搜索引 擎的用户查询串作为训练语料为例,语义分析系统对搜索引擎记录的用户查询串进行过 滤,过滤掉频率较低的查询串,并将过滤后的每一个查询串作为一个原始文档。训练系统对 原始文档中进行语法分析,包括对原始文档进行切词和词性标注,并对原始文档中的所有 词进行频率统计,获得初始词表。训练系统对初始词表进行过滤,去除停用词、出现频率过 高或者过低的词、没有明显语义的词(比如叹声词、拟声词、语气词或者标点符号等)以及过 长的非汉字串(比如网络地址或者英文长句)。训练系统根据过滤后的词表对原始文档进行 过滤,将过滤后留下的、包含有过滤后的词表中剩余词的文档作为训练语料。 步骤204,语义分析系统按照文档维度和词维度将该训练语料切分成a*M*M个数 据块; 其中,a为大于等于1的整数,且a*M小于训练文档的个数N,且N彡2。 具体的,语义分析系统首先按照文档维度对训练语料进行切分,再按照词维度进 行切分,即首先将训练语料中的所有文档平均分成a*M份,切分成a*M个文档组,在将每一 个文档组中的词分别切分至M个数据块,最终获得a*M*M个数据块,以便后续对该a*M*M个 数据块进行分布式采样,具体的,语义分析本文档来自技高网
...

【技术保护点】
一种语义分析方法,其特征在于,所述方法包括:获取训练语料,所述训练语料中包括N个训练文档,每个所述训练文档中包括至少两个词;按照文档维度和词维度将所述训练语料切分成a*M*M个数据块,其中,a为大于等于1的整数,且a*M小于所述训练文档的个数N,N≥2;对切分出的所述a*M*M个数据块进行迭代采样,输出最终收敛的采样模型;根据所述最终收敛的采样模型进行语义分析。

【技术特征摘要】
1. 一种语义分析方法,其特征在于,所述方法包括: 获取训练语料,所述训练语料中包括N个训练文档,每个所述训练文档中包括至少两 个词; 按照文档维度和词维度将所述训练语料切分成a*M*M个数据块,其中,a为大于等于1 的整数,且a*M小于所述训练文档的个数N,N彡2 ; 对切分出的所述a*M*M个数据块进行迭代采样,输出最终收敛的采样模型; 根据所述最终收敛的采样模型进行语义分析。2. 根据权利要求1所述的方法,其特征在于,所述按照文档维度和词维度将所述训练 语料切分成a*M*M个数据块,包括: 将所述训练语料中的所有文档切分成a*M个文档组; 将每一个所述文档组中的词分别切分至M个数据块。3. 根据权利要求2所述的方法,其特征在于,所述将每一个所述文档组中的词分别切 分至M个数据块,包括: 将每一个所述文档组中的词随机切分至与所述文档组对应的M个数据块中的一个数 据块。4. 根据权利要求2所述的方法,其特征在于,所述将每一个所述文档组中的词分别切 分至M个数据块,包括: 统计所述训练语料中每一个词的出现频次; 将每一个所述文档组中的词按照所述出现频次从高到低的顺序进行排序; 分别将每一个所述文档组中的词按照排序结果依次切分至所述文档组对应的M个数 据块中预定频次最小的数据块中,所述预定频次是当前数据块中已划分有的各个词各自的 出现频次之和。5. 根据权利要求1至4任一所述的方法,其特征在于,所述对切分出的所述a*M*M个数 据块进行迭代采样,包括: 将所述a*M*M个数据块切分成a个M*M数据块阵列,每个所述M*M数据块阵列中包含 有M行XM列的数据块; 在每一次迭代采样时进行a次分组采样,每次分组采样时对所述a个M*M数据块阵列 中的一个进行采样。6. 根据权利要求5所述的方法,其特征在于,所述在每一次迭代采样时进行a次分组采 样,每次分组采样时对所述a个M*M数据块阵列中的一个进行采样,包括: 在第1次迭代采样中,每次分组采样时,通过M个数据进程加载对应的一个M*M数据块 阵列;其中,每个所述数据进程加载所述对应的M*M数据块阵列中的一个数据块行; 每次分组采样时,通过M个采样进程对所述加载的M*M数据块阵列中的数据块按列进 行采样;其中,每个所述采样进程采样所述加载的M*M数据块阵列中的一个数据块列; a次分组采样后,通过控制进程输出所述M个采样进程的第1次采样结果;所述第1次 采样结果中包含有第1次采样模型和第1次更新后的a个M*M数据块阵列。7. 根据权利要求6所述的方法,其特征在于,所述通过M个采样进程对所述加载的数据 块阵列中的数据块按列进行采样,包括: 通过所述M个采样进程为各自采样的数据块中的词随机分配用于采样的主题号; 或者, 通过所述M个采样进程根据已有的、最终收敛的采样模型为各自采样的数据块中的词 分配用于采样的主题号。8. 根据权利要求5所述的方法,其特征在于,所述在每一次迭代采样时进行a次分组采 样,每次分组采样时对所述a个M*M数据块阵列中的一个进行采样,包括: 在第n次迭代采样中,每次分组采样时,通过所述M个数据进程加载对应的、第n-1次 更新后的一个M*M数据块阵列;其中,每个所述数据进程加载所述第n-1次更新后的M*M数 据块阵列中的一个数据块行,n > 2 ; 每次分组采样时,通过所述M个采样进程对所述加载的、第n-1次更新后的M*M数据块 阵列中的数据块按列进行采样;其中,每个所述采样进程采样所述加载的、第n-1次更新后 的M*M数据块阵列中的一个数据块列; a次分组采样后,通过所述控制进程输出所述M个采样进程的第n次采样结果;所述第 n次采样结果中包含有第n次采样模型和第n次更新后的a个M*M数据块阵列。9. 根据权利要求8所述的方法,其特征在于,所述每次分组采样时对所述a个M*M数据 块阵列中的一个进行采样,包括: 每次分组采样时,通过所述M个采样进程对各自对应的数据块列中的数据块进行M轮 并行采样,每轮并行采样中所述M个采样进程各自采集所述M*M数据块阵列中不同行且不 同列的一个数据块。10. 根据权利要求9所述的方法,其特征在于,所述通过所述M个采样进程对各自对应 的M*M数据块列中的数据块进行M轮并行采样,包括: 每次分组采样时,在第i轮并行采样中,通过第j个采样进程采样所述M个数据进程当 前加载的M*M数据块阵列中,坐标为(的数据块; 其中,1彡i彡M,1彡j彡M。11. 根据权利要求9所述的方法,其特征在于,所述每次分组采样时对所述a个M*M数 据块阵列中的一个进行采样,还包括: 在每一次迭代采样中,每次分组采样时,在所述M个采样进程对各自对应的数据块列 中的数据块进行一轮并行采样后,对所述M个采样进程进行采样时间上的同步; 或者, 在每一次迭代采样时中,每次分组采样时,在所述M个采样进程对各自对应的数据块 列中的数据块进行M轮并行采样后,对所述M个采样进程进行采样时间上的同步。12. 根据权利要求6至11任一所述的方法,其特征在于,所述M个数据进程和所述M个 采样进程之间通过传输训练文档包进行通信。13. -种语义...

【专利技术属性】
技术研发人员:王益赵学敏孙振龙严浩王莉峰靳志辉王流斌
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1