具体实施方式
下面将详细描述本公开的具体实施例。应当注意,这里描述的实施例只用于举例说明,并不用于限制本公开。
以下实施例用于说明本公开,但不用来限制本公开的范围。
图1为根据本公开一实施例的用于确定商家品类的方法流程图,如图所示,本实施例的方法包括以下步骤S101-S103。
在步骤S101中,对已标注品类的商家数据进行层次聚类确定多个主类。
如背景技术所述,大规模平台的商家品类众多、且分布不均衡,由此存在的数据稀疏问题难免会导致判定效率较低甚至结果不准的问题。对此,本公开的解决思路在于先对已入驻(也即已经过品类标注)的商家品类进行聚类分析,生成多个数据分布较为均衡的主类,在判定当前待入驻商家的品类时,先判定其所属的主类,再在确定的主类中判定其所属的具体品类。
在一个实施例中,这里根据用于生成主类的层次聚类处理可按图3所示的流程来进行,包括以下步骤S301-S306。
在步骤S301中,基于已标注品类的商家数据构造品类集合{T1,T2,…,Tk},其中T1-Tk分别对应一个品类;
为便于清楚说明,下面的实施例中均以k=4为例进行说明。换言之,假设现有已知的商家分为四个品类T1、T2、T3、T4,每个商家属于其中的一个或多个品类,具体数据如下表1所示。
商家ID |
商家品类列表 |
M01 |
T1,T4 |
M02 |
T2,T3 |
M03 |
T1,T4,T2 |
M04 |
T2,T3 |
表1
在步骤S302中,基于所述品类集合的元素两两结合构造品类对<T1,T2>,<T2,Tk>…;
以T1-T4为例,构造的品类对即包括<T1,T2>、<T1,T3>、<T1,T4>、<T2,T3>、<T2,T4>、<T3,T4>。
在步骤S303中,基于所述已标注品类的商家数据统计每个所述品类对的出现次数;
根据步骤S302构造的品类对在表1中统计可得,<T1,T2>仅在商家M03出现1次,<T1,T3>在表1中没有出现,<T1,T4>在商家M01和M03均有出现因此为2次,依此类推。
在步骤S304中,基于所述出现次数的统计结果构造品类矩阵,该矩阵的每一行和每一列都分别对应于T1-Tk中的一个品类,且该矩阵的每个元素为该元素所在行和所在列所对应的品类对的出现次数;
根据步骤S303的统计结果可构造品类矩阵如下表2所示。其中,矩阵对角线处的数值即为当前品类T1-T4各自在商家数据中的出现次数。
|
T1 |
T2 |
T3 |
T4 |
T1 |
2 |
1 |
0 |
2 |
T2 |
1 |
3 |
2 |
1 |
T3 |
0 |
2 |
2 |
0 |
T4 |
2 |
1 |
0 |
2 |
表2
在步骤S305中,基于所述品类矩阵的每一行构造该行所对应品类的特征向量;
在一个实施例中,步骤S305的特征向量可基于以下归一化算法来构造。假设原向量为T=(v1,v2,…vn),和值S=v1+v2+…+vn,归一化后的向量为T’=(v1/s,v2/s,…vn/s)。由此基于表2得到各品类的特征向量如下表3所示。
品类 |
特征向量 |
T1 |
(0.4,0.2,0,0.4) |
T2 |
(0.14,0.43,0.29,0.14) |
T3 |
(0,0.5,0.5,0) |
T4 |
(0.4,0.2,0,0.4) |
表3
在步骤S306中,基于所述特征向量通过层次聚类法生成所述多个主类。
层次聚类法的基本思想在于,计算任意两类之间的相似度,取相似度最高的两个类进行合并,生成新类,然后迭代计算,直到只剩下一个类。为与已有品类T1-T4区分,以下在对层次聚类法具体举例说明时,以数字顺序编号对应各类,即编号1-4分别对应T1-T4(参见表4),基于层次聚类法生成的新类则依次递增编号。接续以表3的特征向量为例,在一个实施例中,步骤S306使用层次聚类法生成主类具体可包括以下步骤S3061-S3065。
类 |
品类列表 |
特征向量 |
1 |
T1 |
(0.4,0.2,0,0.4) |
2 |
T2 |
(0.14,0.43,0.29,0.14) |
3 |
T3 |
(0,0.5,0.5,0) |
4 |
T4 |
(0.4,0.2,0,0.4) |
表4
在步骤S3061中,按照以下公式(i)计算各类之间的相似度。
其中,表示T1与T2之间的相似度,也即类1和类2之间的相似度;T1i和T2i分别表示各自特征向量中的各分量;n表示特征向量中的分量总数,在本例中n取值为4。以此类推可求得各类彼此之间的相似度得分如下:S<1,2>=0.602,S<1,3>=0.236,S<1,4>=1,S<2,3>=0.913,S<2,4>=0.602,S<3,4>=0.236。
在步骤S3062中,取相似度最高的两类合并为新类,基于合并前两类的特征向量构造新类的特征向量。
由上述步骤S3061中的计算结果可知类1与类4之间的相似度最高,因此基于类1和类4生成新的类5,并构造类5的特征向量。在一个实施例中,可使用中值函数对类1和类4特征向量中的对应分量进行求值,来得到类5特征向量的各分量。这里,中值(又称中位数)是指将统计总体当中的各个变量值按大小顺序排列形成一个数列,处于变量数列中间位置的变量值就称为中值;当变量值的项数为奇数时,处于中间位置的变量值即为中位数;当变量值的项数为偶数时,中位数则为处于中间位置的2个变量值的平均数。例如,类1和类4特征向量中的第一分量分别为0.4和0.4,则使用中值函数求得类5特征向量的第一分量即为0.4和0.4的平均数,即也为0.4,以此类推可得到类5的特征向量为(0.4,0.2,0,0.4)。
在步骤S3063中,基于合并生成的新类和未合并的其他类,继续按照以下公式(i)计算各类之间的相似度。
新生成的类5与未进行合并的类2和类3的特征向量如下表5所示。
类 |
品类列表 |
特征向量 |
2 |
T2 |
(0.14,0.43,0.29,0.14) |
3 |
T3 |
(0,0.5,0.5,0) |
5 |
T1,T4 |
(0.4,0.2,0,0.4) |
表5
继续按照公式(i)求得各类之间的相似度得分如下:S<2,3>=0.913,S<2,5>=0.602,S<1,4>=1,S<3,5>=0.236。
在步骤S3064中,重复步骤S3062至S3063直至得到一个最终类。
参照步骤S3062,由上述步骤S3063中的计算结果可知类2与类3之间的相似度最高,因此基于类2和类3生成新的类6,并使用中值函数构造类5的特征向量,得到新生成的类6与未进行合并的类5的特征向量如下表6所示。
类 |
品类列表 |
特征向量 |
5 |
T1,T4 |
(0.4,0.2,0,0.4) |
6 |
T2,T3 |
(0.07,0.465,0.395,0.07) |
表6
参照步骤S3063,继续按照公式(i)求得类5和类6之间的相似度得分为:S<5,6>=0.402。由于仅有类5和类6的一个相似度的得分,因此基于类5和类6生成新的类7,并使用中值函数构造类7的特征向量为(0.27,0.315,0.145,0.27)。
在步骤S3065中,对生成的最终类进行剪枝处理,得到合并最终类之前的类作为层次聚类结果。
基于上述步骤S3061-S3064得到最终类的过程如图9所示,对最终类7进行剪枝处理,从而使用直接合并得到类7的类5和类6作为层次聚类结果的主类。
需要说明的是,这里的聚类分析虽然在步骤S101中加以说明,但其执行顺序并不以此为限。本领域技术人员容易理解,聚类分析生成主类的步骤可在步骤S102的预处理之后,只要保证执行步骤S103时已经得到生成的主类即可。
在步骤S102中,对待标注品类的商家的商家数据进行分词;
在一个实施例中,本公开的方法可由平台运营商设于后台的服务器实施,该服务器可用于维护入驻平台的商家的数据并将经过整理、标注等处理后的数据提供给平台的访问用户。消费者例如可通过平台运营商提供的网页和app(application,程序)访问,从而获取符合需求的商家信息。这里,与商家有关的数据或信息包括但不限于商家名称和所有商品的商品名称等。为了给消费者提供有针对性的服务,在通过服务器提供商家数据信息之前需要对各商家的主营品类进行标注,从而方便消费者更加方便、快速地定位到目标商家。
与现有技术中必须通过商家或BD部门的工作人员手动录入品类信息不同,在本公开的实施例中,服务器在获取到商家名称和商品名称等信息时可通过实施本实施例的方法来自动、准确地确定商家的主营品类信息。
在一个实施例中,服务器所获取的商家的商家名称和商品名称包括但不限于以下一种或多种来源:所述商家入驻当前平台时的手动输入;所述当前平台以外的其他平台(例如有合作关系的平台)的数据注入;对其他平台(例如当前平台的竞争对手平台)的数据抓取。
在基于上述来源获取到商家名称和商品名称信息之后,还需要对这些数据进行一定的预处理,以便后续展开进一步的分析细化处理。在一个实施例中,这里的预处理可按图2所示的流程来进行,包括以下步骤S201-S202。
在步骤S201中,根据预设规则删除所述商家名称和商品名称中的无关字符;
无论是商家或BD部门录入的信息还是从其他平台注入或抓取的信息,其中都不可避免存在一些与要进行的品类确定无关的内容。因此,在预处理中,有必要先删除商家名称和商品名称中的无关字符,具体的删除操作可以包括但不限于以下手段:
基于预设的非法字符集合删除所述商家名称和商品名称中的非法字符,这里的非法字符例如包括图形、符号等等;
基于预设的合法字符集删除所述商家名称和商品名称中不属于该合法字符集的字符;
基于预设的商圈信息规则删除所述商家名称和商品名称中的商圈信息,以商家名称“鸿毛饺子(望京店)”为例,删除商圈信息后变为“鸿毛饺子”;
基于预设的数量信息规则删除所述商家名称和商品名称中的数量和单位信息,以商品名称“猪肉白菜锅贴(10个)”为例,删除数量和单位信息后变为“猪肉白菜锅贴”。
需要说明的是,以上无关字符的删除手段执行并无顺序要求,具体实施中可根据场景需要以任意顺序执行其中的一种或多种。
在步骤S202中,使用分词算法对删除无关字符后的所述商家名称和商品名称进行分词。
为了便于后续对商家名称和商品名称的自动分析处理,在如步骤S201所述删除其中的无关字符后,进而可利用现有的分词算法对得到的商家名称和商品名称进行分词处理。这里的分词算法可以根据需要自行开发,也可以直接利用开源工具或IKAnalyzer、Paoding、中科院的ICTCLAS等商用工具来进行。以商家名称“嘉和一品粥”为例,使用分词算法后可被拆分为“嘉和|一品|粥”。
在步骤S103中,根据所述分词结果,确定所述待标注品类的商家所属的主类。
在根据以上步骤S301-S306得到多个主类的情况下,即可通过类别判定方法基于步骤S102所得到的分词结果来得到对应商家名称和商品名称所属的主类。
在步骤S104中,确定所述待标注品类的商家所属的品类。
在经过步骤S103确定当前待入驻的商家所属的主类后,可进一步通过类别判定方法来确定其对应的具体品类。需要说明的是,无论是本步骤S104确定商家的品类,还是上述步骤S103确定商家所属的主类,都属于分类问题,因此可以使用相同或不同的一种类别判定方法或多种类别判定方法组合来完成。换言之,在一个实施例中,所述确定商家所属的主类基于第一分类模型来进行,所述确定商家所属的品类基于第二分类模型来进行,所述第一分类模型与所述第二分类模型相同或不同,并且可选自后缀词模型、地址词模型和概率统计模型中的任意一种或多种。
以下对类别判定方法实施例的详细说明虽然均以得到具体品类的确定结果为例,但本领域技术人员显而易见可将其类似应用于步骤S103中对商家所属主类的确定过程,此处仅出于简便说明的目的不另行加以赘述。
在一个实施例中,类别判定方法可通过选自以下(1)至(3)中的任意一种或多种模型来进行:
(1)使用后缀词模型进行判定
根据基于上述分词结果得到的后缀词,使用后缀词模型确定所述商家所属的品类。
在一个实施例中,上述的后缀词模型具体可实现为预先生成的后缀规则映射表,该映射表例如可按照图4所示的流程来生成,包括以下步骤S401-S405。
在步骤S401中,基于已标注品类的商家数据得到现有商家名称和品类的对应关系;
下面以三个已标注品类的商家为例对本实施例生成后缀词模型的具体步骤进行说明,但本领域技术人员理解本公开的范围并不以此为限。
假设三个已标注品类的商家名称分别为ABCD、EFGCD和EFBCD,且分别对应的品类为T1、T2和T1,由此得到以下对应关系表7。
商家名称 |
品类 |
ABCD |
T1 |
EFGCD |
T2 |
EFBCD |
T1 |
表7
在步骤S402中,使用分词算法对现有商家名称进行分词,得到第二分词结果;
上述步骤S102的预处理中所得到的分词结果是以当前待入驻的商家名称和商品名称作为分词对象,而此处是对已标注品类的商家名称进行分词,为便于区别,步骤S402所得到的结果被称为第二分词结果。
延续上述三个已标注品类的商家名称为例,得到的第二分词结果例如分别为:A|B|C|D、E|F|G|C|D和E|F|B|C|D。
在步骤S403中,基于第二分词结果抽取与各现有商家名称对应的若干个第二后缀词;
这里,同样为了与上述步骤(1)中对分词结果抽取的后缀词加以区分,将基于第二分词结果抽取的对象成为第二后缀词。根据实际场景的需要,可在第二分词结果中抽取任意数量的后缀词。以在每个第二分词结果中抽取四个后缀词为例,基于上述三个第二分词结果得到的第二后缀词集合分别为:{D,CD,BCD,ABCD}、{D,CD,GCD,FGCD}和{D,CD,BCD,FBCD},其各自所属的商家名称对应的品类分别为T1、T2和T1。
在步骤S404中,针对各第二后缀词分别统计该第二后缀词所属商家名称对应的品类在上述对应关系中出现的次数;
由上述步骤S403抽取第二后缀词的结果可见,本示例中的第二后缀词包括D,CD,BCD,GCD,ABCD,FGCD和FBCD。在本步骤中,针对各第二后缀词分别统计其所来自的商家名称对应的品类在步骤S401所得到的对应关系表中出现的次数,如下表8所示。
表8
在步骤S405中,将出现次数最多的品类作为与该第二后缀词对应的品类,从而生成各第二后缀词与对应品类的后缀规则映射表。
由上述步骤S403得到的表格可见,第二后缀词所来自的商家名称可能会对应于不同的品类,在本步骤中则将其中出现次数最多的品类作为与该第二后缀词对应的品类,以此来生成包括各第二后缀词与对应品类的后缀规则映射表,如下表9所示。
后缀词 |
D |
CD |
BCD |
GCD |
ABCD |
FGCD |
FBCD |
品类 |
T1 |
T1 |
T1 |
T2 |
T1 |
T2 |
T1 |
表9
需要说明的是,上述后缀规则映射表的生成虽然在步骤S104中加以说明,但实际执行顺序并不以此为限,其可以在步骤S104甚至步骤S103之前执行,只需保证在使用后缀词模型进行判定的步骤之前生成有后缀规则映射表即可。
在根据上述步骤S401-S405得到后缀规则映射表的情况下,即可基于步骤S102所得到的分词结果抽取后缀词来进行具体主营类别的确定,其一个实施例如图5所示,包括以下步骤S501-S503。
在步骤S501中,提取分词结果中的商家名称分词:A1|A2|…|An|,其中A1-An分别对应一商家名称的n个分词;
前述步骤S101中得到的分词结果包括商家名称分词和商品名称分词,此处由于后缀规则映射表主要是基于商家名称来生成的,因此在利用后缀规则映射表确定品类时,对于待入住商家的商家名称和商品名称,也仅提取其中的商家名称分词使用。然而,本领域技术人员容易理解,本公开的范围并不仅限于此。例如,如果基于步骤S401-S405的思路针对已标注品类的商家的所有商品名称生成了后缀规则映射表,则此处步骤S501中也可提取步骤S101所得到分词结果中的商品名称分词进行比对。出于简便的目的,步骤S501-S503也延续以商家名称的分词为例加以说明,但本领域技术人员容易据此得到使用商品名称分词的方法,此处不再赘述。
在步骤S502中,基于所述n个分词抽取m个后缀词,并按照字符串长度组成后缀词集合{An-m+1…An-1An,…,An-2An-1An,An-1An,An};
在一个实施例中,本步骤从n个分词中抽取的后缀词个数可与上述步骤S403中抽取的后缀词个数相同,例如也为四个,即m=4。以当前待标注品类的商家名称“HIJCD”为例,其分词结果假设为“H|I|J|C|D”,即n=5,则从其中抽取m=4个后缀词所得到的集合即为{IJCD,JCD,CD,D}。为了便于后续的比对,在一个实施例中,后缀词集合中的元素可按字符串的长度从大到小排列,但本公开的范围并不仅限于此。
在步骤S503中,针对所述后缀词集合中各后缀词,按字符串从长至短依次使用后缀规则映射表进行查询,直至查询到匹配的第二后缀词,使用该第二后缀词对应的品类作为与相应后缀词集合来自的商家名称对应的品类。
由于后缀词越长,其所包含的信息越多,因此所反映出的品类也会更为准确。因此,本步骤中在使用上述后缀规则映射表查找对应品类时,可按照后缀词集合中的各后缀词从长到短进行比对。在步骤S502中后缀词集合的元素是按字符串的长度从大到小排列时,此处即可针对后缀词集合的元素从前往后依次使用后缀规则映射表进行查询,直至找到匹配的后缀词为止。
以上述步骤S403中示例所得到的后缀规则映射表为例,基于步骤S502中示例所得到的后缀词集合{IJCD,JCD,CD,D}查表可得到匹配后缀词为“CD”,且对应的品类为“T1”,从而使用该品类“T1”作为商家“HIJCD”的对应品类。
(2)使用基于地理词的模型进行判定
根据基于前述分词结果得到的地址词,使用预设的地址库确定所述商家所属的品类。
在一个实施例中,使用基于地理词的模型确定商家品类可按照图6所示的流程来进行,包括以下步骤S601-S603。
在步骤S601中,提取分词结果中的商家名称分词,使用地址词汇表识别商家名称分词中的地址词;
以商家名称“沙县小吃”为例,假设其分词结果为“沙县|小吃”,则使用地址词汇表可识别出其中的地址词“沙县”。
在步骤S602中,基于地址库查找地址词所属的地理区域;
例如,在地址库中可查得上述地址词“沙县”属于“福建”。
在步骤S603中,根据查找到的地理区域来确定商家名称所对应的品类。
例如,根据地理区域“福建”可确定商家名称“沙县小吃”对应的品类为“闽菜”。
(3)使用概率统计模型进行判定
根据基于上述分词结果得到的特征词,使用预设的概率统计模型确定所述商家所属的品类。
在一个实施例中,使用概率统计模型确定商家品类可按照图7所示的流程来进行,包括以下步骤S701-S704。
在步骤S701中,提取分词结果中的商家名称分词和商品名称分词;
在步骤S702中,抽取商家名称分词和商品名称分词中的N个特征词构造特征词集合;
在步骤S703中,使用概率统计模型来计算特征词集合对应各品类的概率;以及
在步骤S704中,选择概率最大的品类作为所属商家对应的品类。
在一个实施例中,这里的概率统计模型可选自贝叶斯模型、最大熵模型、支持向量机模型、神经网络模型中的任意一种。下面仅以简单贝叶斯模型的使用步骤S711-S714为例加以说明,至于其他概率统计模型此处不再赘述。
在步骤S711中,使用现有商家的品类集合和特征词集合训练得到模型参数。
假设现有品类集合为{T1,T2},特征词集合为{W1,W2,W3,W4},现有商家的数据列表如下表10所示。
现有商家 |
品类 |
特征词集合 |
M01 |
T1 |
W1,W2 |
M02 |
T2 |
W2,W3 |
M03 |
T1 |
W1,W2,W4 |
M04 |
T2 |
W3,W4 |
M05 |
T1 |
W2,W4 |
表10
基于以上现有数据训练得到的模型参数如下表11所示。
表11
其中,P表示概率,Count表示计数,具体而言,Count(T1)和Count(T2)分别表示品类T1和T2各自出现的次数,Count(*)表示类T1和T2出现的总次数,Count(W1,T1)表示特征词W1在品类T1中出现的次数,Count(*,T1)表示所有特征词在品类T1中出现的总次数,依此类推。
在步骤S712中,基于待确定品类的商家的特征词集合,使用模型参数来计算对应各品类的概率。
在一个实施例中,步骤S712可使用以下公式(ii)来判定在线商家所述的品类。
T*=argmaxTP(T)×P(Wx|T)×...×P(Wy|T) (ii)
其中,T*表示判定品类的结果,argmaxT表示以T作为自变量的函数中使该函数得到最大值的T的取值,P表示概率,Wx,…Wy表示当前特征词集合中的所有特征词。
假设当前待确定品类的商家通过特征词抽取后得到的特征词集合为{W1,W3},基于以上公式(ii)并结合表11得到的计算结果如下表12所示。
P(T1)×P(W1|T1)×P(W3|T1)=0.571×0.273×0.091=0.014 |
P(T2)×P(W1|T2)×P(W3|T2)=0.429×0.125×0.375=0.02 |
表12
由于0.02>0.014,因此基于公式(ii)得到的判定结果为品类T2,也即判定当前在线商家所属的品类为T2。
如上文所述,类别判定方法可通过以上(1)至(3)中的任意一种或多种手段来进行,例如可仅选择其中的一种手段来进行商家品类的确定,也可同时选择(1)至(3)中的两种或三种手段来进行商家品类的确定。在同时选择了其中的两种或三种手段时,还可按照图8所示的流程来进行品类的最终确定,包括以下步骤S801-S803。
在步骤S801中,基于多个确定结果中出现次数最多的品类来确定商家所属的品类;
本实施例中首先基于投票法来进行品类的最后确定。具体而言,假设利用上述手段(1)至(3)所分别得到的品类确定结果为第一确定结果(T1)、第二确定结果(T2)和第三确定结果(T1),则基于其中出现次数最多的品类T1来确定作为当前待标注商家的品类。
在步骤S802中,判断步骤S801是否已确定出品类,是则结束流程,否则继续步骤S803。
如果手段(1)至(3)所分别得到的第一至第三确定结果各不相同,则仍需要进行后续步骤来进行品类的确定。
在步骤S803中,按照预设的优先级基于多个确定结果中的一个品类来确定商家所属的品类。
例如,假设预设的优先级为“后缀词模型结果>地理词结果>统计模型结果”,即第一确定结果优先于第二确定结果,第二确定结果优先于第三确定结果,在第一至第三确定结果各不相同从而无法基于投票法确定最终品类的情况下,则可按照该预设优先级直接使用基于后缀规则映射表所得到的第一确定结果作为最终确定的商家品类。
需要说明的是,本实施例虽以步骤S801-S803为例进行说明,但本公开的范围并不以此为限。例如,具体实施中可直接选择步骤S801或S803来从第一至第三确定结果中选择最终确定的品类,本领域技术人员基于以上详细说明即可参照实施,此处不再赘述。
与前述用于确定商家品类的方法实施例相对应,本公开还提供了用于确定商家品类的系统的实施例。
如图10所示,图10为根据本公开一实施例的用于确定商家品类的系统示意图,该系统例如可应用于平台运营商设于后台的服务器上,并用于执行图1所示的确定商家品类的方法。该系统可包括:层次聚类装置110、预处理装置120、主类确定装置130和品类确定装置140。
其中,层次聚类装置110被配置为对已标注品类的商家数据进行层次聚类确定多个主类;
预处理装置110被配置为对待标注品类的商家的商家数据进行分词;
主类确定装置130被配置为根据分词结果,确定所述待标注品类的商家所属的主类;
品类确定装置140被配置为确定所述待标注品类的商家所属的品类。
如图11所示,图11为根据本公开另一实施例的用于确定商家品类的系统示意图,该实施例在前述图10所示实施例的基础上,层次聚类装置110可包括:品类集合模块111、品类对模块112、次数统计模块113、品类矩阵模块114、特征向量模块115和主类生成模块116。
其中,品类集合模块111被配置为基于所述已标注品类的商家数据构造品类集合;
品类对模块112被配置为基于所述品类集合中的各品类两两结合构造品类对;
次数统计模块113被配置为基于所述已标注品类的商家数据统计每个所述品类对的出现次数;
品类矩阵模块114被配置为基于所述出现次数的统计结果构造品类矩阵,该矩阵的每一行和每一列都分别对应于所述品类集合中的一个品类,且该矩阵的每个元素为该元素所在行和所在列所对应的品类对的出现次数;
特征向量模块115被配置为基于所述品类矩阵的每一行构造该行所对应品类的特征向量;
主类生成模块116被配置为基于所述特征向量通过层次聚类法生成所述多个主类。
如图12所示,图12为根据本公开又一实施例的用于确定商家品类的系统示意图,该实施例在前述图11所示实施例的基础上,主类生成模块116可包括:计算单元1161、合并单元1162、条件判定单元1163和主类确定单元1164。
其中,计算单元1161被配置为按照前述公式(i)来计算各品类之间的相似度;
合并单元1162被配置为取相似度最高的多个品类生成新类,基于合并前该多个品类的特征向量构造所述新类的特征向量;所述计算单元1161还被配置为基于所述新类和未合并的剩余品类,按照所述公式计算各类之间的相似度;
条件判定单元1163被配置为重复所述计算单元和所述合并单元的处理直至得到一个最终类;
主类确定单元1164被配置为使用直接合并得到所述最终类的多个类作为所述多个主类。
上述系统中各个装置、模块和单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于系统实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
根据本公开的再一个方面,提供一种用于确定商家品类的装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:对已标注品类的商家数据进行层次聚类确定多个主类;对待标注品类的商家的商家数据进行分词;根据分词结果,确定所述待标注品类的商家所属的主类;以及确定所述待标注品类的商家所属的品类。
根据本公开的又一个方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由一服务器的处理器执行时,使得所述服务器执行如上所述的用于确定商家品类的方法。
根据上述本公开的方法、系统和装置实施例,通过先在基于层次聚类生成的主类中确定主类,再确定在线商家所属的具体品类,至少可以实现以下有益效果。首先,由于具体品类的数量较多,可用训练样本的数量较少,直接训练分类器准确率比较差,而通过层次聚类生成主类可克服样本少的缺陷,提高初始分类器的准确率;其次,实际业务中品类定义的界限比较模糊,将相似度较高的品类聚成主类更容易与其他主类的边界分割开,方便模型处理;最后,主类确定后具体品类的分类方法可以针对性地优化,由于每个主类下的具体品类都有自己的特点,从而可以针对性地选择不同的特征使用不同的类别判定方法处理,使得处理上更加灵活。
虽然已参照几个典型实施例描述了本公开,但应当理解,所用的术语是说明和示例性、而非限制性的术语。由于本公开能够以多种形式具体实施而不脱离申请的精神或实质,所以应当理解,上述实施例不限于任何前述的细节,而应在随附权利要求所限定的精神和范围内广泛地解释,因此落入权利要求或其等效范围内的全部变化和改型都应为随附权利要求所涵盖。