本发明涉及数据分析技术领域,具体涉及一种生成物品最佳搭配的方法、一种生成物品最佳搭配的装置以及一种计算机可读存储介质。
背景技术:
传统地,在进行家装设计时,往往基于用户或物品的协同过滤技术,也即根据对用户相似度或物品的相似度分析做智能推荐。但是,通过对用户或物品的相似度分析做智能推荐,缺少对用户使用场景上下文的分析,导致推荐命中率低下。此外,还有的基于专家知识进行智能推荐,例如,根据专家的经验形成专家知识库做智能推荐。但是,此种智能推荐方法存在专家知识库更新速度慢,不能实时学习。
技术实现要素:
本发明旨在至少解决现有技术中存在的技术问题之一,提出了一种生成物品最佳搭配的方法、一种生成物品最佳搭配的装置以及一种计算机可读存储介质。
为了实现上述目的,本发明的第一方面,提供了一种生成物品最佳搭配的方法,包括:
步骤s110、获取若干个设计方案,每个所述设计方案均包括若干个物品以及每个所述物品对应的添加时间;
步骤s120、基于每个所述物品对应的添加时间,分别对每个所述设计方案中的若干个物品按照添加时间的顺序进行排序,形成若干个物品序列集合;
步骤s130、将每个所述设计方案所对应的物品序列集合进行整合,形成物品流集合,并对所述物品流集合采用预设的自然语言处理技术对所述物品流集合进行数据分析,以获得与每个所述物品相搭配的类目搭配候选集合;
步骤s140、对每个所述物品的类目搭配候选集合按照相关性进行排序。
可选地,步骤s130具体包括:
对所述物品流集合进行词性标注,将每个所述物品映射到其所属的类目,以获得类目流集合;
对所述类目流集合进行频谱分析,以获得高频类目子集合、中频类目子集合以及低频类目子集合;
基于tri-gram模型分别对所述高频类目子集合、中频类目子集合以及低频类目子集合生成类目搭配候选集合。
可选地,步骤s140具体包括:
采用t检验算法对所述高频子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到高频类目搭配相关性结果;
采用pmi算法和t检验算法对所述中频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到中频类目搭配相关性结果;
采用pmi算法对所述低频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到低频类目搭配相关性结果;
根据所述高频类目搭配相关性结果、中频类目搭配相关性结果和低频类目搭配相关性结果进行排序。
可选地,在步骤s140中,采用降序排列或升序排列。
本发明的第二方面,提供了一种生成物品最佳搭配的装置,包括:
获取模块,用于获取若干个设计方案,每个所述设计方案均包括若干个物品以及每个所述物品对应的添加时间;
第一排序模块,用于基于每个所述物品对应的添加时间,分别对每个所述设计方案中的若干个物品按照添加时间的顺序进行排序,形成若干个物品序列集合;
数据分析模块,用于将每个所述设计方案所对应的物品序列集合进行整合,形成物品流集合,并对所述物品流集合采用预设的自然语言处理技术对所述物品流集合进行数据分析,以获得与每个所述物品相搭配的类目搭配候选集合;
第二排序模块,用于对每个所述物品的类目搭配候选集合按照相关性进行排序。
可选地,所述数据分析模块包括词性标注子模块、频谱分析子模块和处理子模块;
所述词性标注子模块,用于对所述物品流集合进行词性标注,将每个所述物品映射到其所属的类目,以获得类目流集合;
所述频谱分析子模块,用于对所述类目流集合进行频谱分析,以获得高频类目子集合、中频类目子集合以及低频类目子集合;
所述处理子模块,用于基于tri-gram模型分别对所述高频类目子集合、中频类目子集合以及低频类目子集合生成类目搭配候选集合。
可选地,所述第二排序模块包括相关性分析子模块和排序子模块;
所述相关性分析子模块,用于:
采用t检验算法对所述高频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到高频类目搭配相关性结果;
采用pmi算法和t检验算法对所述中频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到中频类目搭配相关性结果;
采用pmi算法对所述低频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到低频类目搭配相关性结果;
所述排序子模块,用于根据所述高频类目搭配相关性结果、中频类目搭配相关性结果和低频类目搭配相关性结果进行排序。
可选地,所述第二排序子模块,采用降序排列或升序排列。
本发明的第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如前文记载的所述的生成物品最佳搭配的方法的步骤。
本发明的生成物品最佳搭配的方法、装置和计算机可读存储介质。首先获取若干个设计方案,该设计方案可以来自一个或者多个用户,之后,对每个设计方案的若干个物品按照添加时间顺序排列,再之后,采用自然语言处理技术进行数据分析,从而获得类目搭配候选集合,最后,对类目搭配候选集合按照相关性进行排列,进而可以获得物品的最佳搭配类目。因此,可以有效提高设计师的工作效率,并且,还能够有效提高推荐命中率,此外,还可以通过不断获取新的设计方案进行学习,进一步提高推荐命中率。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1为本发明第一实施例中生成物品最佳搭配的方法的流程图;
图2为本发明第二实施例中类目流集合中的类目种类数按照原始频率降序排列的示意图;
图3为本发明第三实施例中计算累积频率的示意图;
图4为本发明第四实施例中所有类目划分为高,中,低频的示意图;
图5为本发明第五实施例中基于tri-gram模型对所述类目流集合生成搭配候选集合的频谱的示意图;
图6为本发明第六实施例中生成物品最佳搭配的装置的结构示意图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
如图1所示,本发明的第一方面,涉及一种生成物品最佳搭配的方法,包括:
步骤s110、获取若干个设计方案,每个所述设计方案均包括若干个物品以及每个所述物品对应的添加时间。
具体地,在本步骤中,若干个设计方案可以从一个用户中获取,当然也可以从两个或者多个用户中获取。这样,在本步骤中,可以收集如下信息:
{设计方案,用户名,物品,添加物品的时间}。
需要说明的是,对于设计方案的具体数量并没有作出限定,可以根据实际需要进行确定,下文中将以设计方案的数量为n进行说明,其中n为大于等于1的正整数。
步骤s120、基于每个所述物品对应的添加时间,分别对每个所述设计方案中的若干个物品按照添加时间的顺序进行排序,形成若干个物品序列集合。
具体地,在本步骤中,将步骤s110所收集的信息发送到后台进行数据处理,将每个设计方案中的若干个物品按照添加时间的顺序进行排序,得到下述物品序列集合:
设计方案1:[物品1,物品2,物品3,...]
...
设计方案n:[物品n1,物品n2,物品n3,...]。
步骤s130、将每个所述设计方案所对应的物品序列集合进行整合,形成物品流集合,并对所述物品流集合采用预设的自然语言处理技术对所述物品流集合进行数据分析,以获得与每个所述物品相搭配的类目搭配候选集合。
具体地,在本步骤中,所形成的物品流集合可以如:[物品1,物品2,物品3,...,物品n1,物品n2,物品n3],之后,可以采用自然语言处理中的tri-gram模型,该模型基于这样一种假设,第n个词的出现只与前面n-1个词相关,而与其它任何词都不相关,从而得到类目搭配候选集合,例如,[(马桶,花洒),(马桶,五金及其他),(马桶,浴室柜),...]等等。
步骤s140、对每个所述物品的类目搭配候选集合按照相关性进行排序。
具体地,在本步骤中,可以按照相关性进行降序或者进行升序排列等等。例如,采用下述降序排列方式进行排列:
{类目1,[搭配类目1,搭配类目,...]}
...
{类目n,[搭配类目1,搭配类目,...]}
本实施例中的生成物品最佳搭配的方法s100,首先获取若干个设计方案,该设计方案可以来自一个或者多个用户,之后,对每个设计方案的若干个物品按照添加时间顺序排列,再之后,采用自然语言处理技术进行数据分析,从而获得类目搭配候选集合,最后,对类目搭配候选集合按照相关性进行排列,进而可以获得物品的最佳搭配类目。因此,本实施例中的生成物品最佳搭配的方法,可以有效提高设计师的工作效率,并且,还能够有效提高推荐命中率,此外,还可以通过不断获取新的设计方案进行学习,进一步提高推荐命中率。
可选地,步骤s130具体包括:
对所述物品流集合进行词性标注,将每个所述物品映射到其所属的类目,以获得类目流集合。
具体地,所形成的类目流集合为[类目1,类目2,类目3,...,类目n1,类目n2,类目n3]。例如,可以如下所示:
[地砖,地砖,自定义产品];
[平开门,自定义产品];
[自定义产品,自定义产品,自定义产品,自定义产品];
[自定义产品,地砖,自定义产品,马桶,木皮,木皮,木皮,木皮,木皮,金属,壁纸];
[自定义产品,摆饰,绿植,自定义产品,自定义产品];
[自定义产品,推拉门,衣柜,鞋柜,电视柜,电视,地砖,地砖,地砖,推拉门,飘窗,飘窗];
[自定义产品,双人床,烤漆,烤漆,烤漆,烤漆,烤漆,烤漆,烤漆];
[自定义产品,餐厨用具,餐厨用具,摆饰,摆饰,摆饰,摆饰,餐厨用具];
...
对所述类目流集合进行频谱分析,以获得高频类目子集合、中频类目子集合以及低频类目子集合。
频谱分析的过程如下:
(1)统计类目流集合中出现的类目种类数(我们得到198种类目),并将它们按原始频率降序排列,如图2所示。
(2)计算累积频率,如图3所示。
(3)根据累积频率曲线的斜率(斜率值越小,曲线越平缓,对应的类目评率越低),将所有类目划分为高,中,低频三种,如图4所示,也即生成高频类目子集合、中频类目子集合以及低频类目子集合。
基于tri-gram模型分别对所述高频类目子集合、中频类目子集合以及低频类目子集合生成类目搭配候选集合。
具体地,如图5所示,基于这样一个假设,与高频类目子集合所搭配的类目都是高频类目,中频类目子集合所搭配的类目都是中频类目,低频类目子集合所搭配的类目都是低频类目。
可选地,步骤s140具体包括:
采用t检验算法对所述高频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到高频类目搭配相关性结果;
采用pmi算法和t检验算法对所述中频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到中频类目搭配相关性结果;
采用pmi算法对所述低频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到低频类目搭配相关性结果;
根据所述高频类目搭配相关性结果、中频类目搭配相关性结果和低频类目搭配相关性结果进行排序。
具体地,采用pmi算法,用这个指标来衡量两个事物之间的相关性,其公式如下:
在概率论中,我们知道,如果x跟y不相关,则p(x,y)=p(x)p(y)。二者相关性越大,
则p(x,y)就相比于p(x)p(y)越大。用后面的式子更好理解,在y出现的情况下x出现的条件概率p(x|y)除以x本身出现的概率p(x),自然就表示x跟y的相关程度。对于本实施例中的这个场景,pmi的值域是[0,+∞),单调递增,此算法对低频信息非常灵敏。
采用t检验算法,计算p(x,y)和p(x)p(y)的t值,它反映的是一个搭配强弱的相对差异,其公式如下:
t值越大,说明这观测到的共现概率为p(x,y)与随机共现的偶然概率p(x)p(y)的差异是客观存在而非偶然巧合。从统计学的角度,1.65个均方差表明我们有95%的把握说一个搭配是有意义的搭配,对应的t值为2.132。此算法对高频信息非常灵敏。
因此,本发明从搭配集合中挖掘出有最佳搭配的策略是:
a.高频搭配项采用t检验算法进行过滤,按t值降序排列。
b.中频搭配项采用pmi检验算法和t检验算法进行过滤,对结果进行归并。
c.低频搭配项采用pmi检验算法进行过滤,按pmi值降序排列。
本发明的第二方面,如图6所示,提供了一种生成物品最佳搭配的装置100,包括:
获取模块110,用于获取若干个设计方案,每个所述设计方案均包括若干个物品以及每个所述物品对应的添加时间;
第一排序模块120,用于基于每个所述物品对应的添加时间,分别对每个所述设计方案中的若干个物品按照添加时间的顺序进行排序,形成若干个物品序列集合;
数据分析模块130,用于将每个所述设计方案所对应的物品序列集合进行整合,形成物品流集合,并对所述物品流集合采用预设的自然语言处理技术对所述物品流集合进行数据分析,以获得与每个所述物品相搭配的类目搭配候选集合;
第二排序模块140,用于对每个所述物品的类目搭配候选集合按照相关性进行排序。
本实施例中的生成物品最佳搭配的装置100,首先获取若干个设计方案,该设计方案可以来自一个或者多个用户,之后,对每个设计方案的若干个物品按照添加时间顺序排列,再之后,采用自然语言处理技术进行数据分析,从而获得类目搭配候选集合,最后,对类目搭配候选集合按照相关性进行排列,进而可以获得物品的最佳搭配类目。因此,本实施例中的生成物品最佳搭配的装置,可以有效提高设计师的工作效率,并且,还能够有效提高推荐命中率,此外,还可以通过不断获取新的设计方案进行学习,进一步提高推荐命中率。
可选地,所述数据分析模块130包括词性标注子模块131、频谱分析子模块132和处理子模块133;
所述词性标注子模块131,用于对所述物品流集合进行词性标注,将每个所述物品映射到其所属的类目,以获得类目流集合;
所述频谱分析子模块132,用于对所述类目流集合进行频谱分析,以获得高频类目子集合、中频类目子集合以及低频类目子集合;
所述处理子模块133,用于基于tri-gram模型分别对所述高频类目子集合、中频类目子集合以及低频类目子集合生成类目搭配候选集合。
频谱分析以及其余内容可以参考前文相关记载,在此不作赘述。
可选地,所述第二排序模块140包括相关性分析子模块141和排序子模块142;
所述相关性分析子模块141,用于:
采用t检验算法对所述高频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到高频类目搭配相关性结果;
采用pmi算法和t检验算法对所述中频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到中频类目搭配相关性结果;
采用pmi算法对所述低频类目子集合以及与其所对应的类目搭配候选集合的相关性进行分析,以得到低频类目搭配相关性结果;
所述排序子模块142,用于根据所述高频类目搭配相关性结果、中频类目搭配相关性结果和低频类目搭配相关性结果进行排序。
具体地可以参考前文相关记载,在此不作赘述。
可选地,所述第二排序子模块140,采用降序排列或升序排列。
本发明的第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如前文记载的所述的生成物品最佳搭配的方法的步骤。
本实施例中的计算机可读存储介质,其所存储的计算机程序在被处理器执行时可以实现如前文记载的生成物品最佳搭配的方法s100,其通过首先获取若干个设计方案,该设计方案可以来自一个或者多个用户,之后,对每个设计方案的若干个物品按照添加时间顺序排列,再之后,采用自然语言处理技术进行数据分析,从而获得类目搭配候选集合,最后,对类目搭配候选集合按照相关性进行排列,进而可以获得物品的最佳搭配类目。因此,本实施例中的计算机可读存储介质,可以有效提高设计师的工作效率,并且,还能够有效提高推荐命中率,此外,还可以通过不断获取新的设计方案进行学习,进一步提高推荐命中率。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。