搜索推荐技术在电商导购领域的应用(三):自动分类

<a href=/tech/biz/ target=_blank class=infotextkey>电商</a>搜索引擎 电商搜索优化 搜索推荐技术 搜索技术

有一个问题需要解决:自动分类。做好个性化商品推荐,商品整理是第一站。类目,是最为基础的整理。我们需要将每一个商品分到一个具体的类目上去,商品数量庞大,这个过程要自动化,这就是商品自动分类问题。

我们来热热身吧,做几道分类题:

“AppleiPhone6(A1586)16GB金色移动联通电信4G手机

【第一滴血】so easy,是一个“手机”

“snidel * S家新款王小俊日系蓬蓬裙双层松紧高腰短裙裙裤现货实拍”

【主宰分类】嗯……应该是“半身裙”,这个要分对就需要动一动脑子

华为 HUAWEI 电源适配器+数据线 5V/2A快充 USB带线充电头”

【分类如麻】这个是“充电器”,来个有点难度的

“福建特产 正宗金冠黑糖话梅糖200g 含上等梅肉 酸甜好滋味”

【无人能挡】这个……是糖果,有没有更变态的

“美利达勇士公爵500 550 600 650 700挑战者350可载人行李架后货架”

【变态分类】 靠关键词联想已经不够了,查资料后知这是一个“自行车配件”,哈哈,还有谁?!

“比iphone还好用的诺基亚手机的手机套”

【已经超神】这……

你看,解决这个问题并没有看上去那么简单,每个商品标题中不会100%包含类目相关信息,怎么破?

分类1.0

我们研发的一代分类技术是比较朴素的,通过对应表+特征库来解决。

对应表是一个简单的配置文件,保存(关键词,分类)的对应关系:

“手机” ——> 手机

“牛仔裤” ——> 牛仔裤

…….

特征词库是对应表的升级版(对应表plus?),维护的是(关键词组合,分类)的对应关系:

“AppleiPhone6” ——> 手机

“棉麻 小脚 长裤 收腰 铅笔裤” ——> 休闲长裤

“美利达 勇士 公爵 行李架 货架” ——> 自行车配件

…….

这一整套样本数据完全由人工整理,分类1.0的程序也很简单,运行起来嘛……,“看上去”很可靠。首先,分类1.0一切的一切都建立在人工数据基础上,只要样本整理的好,分的结果就好,整理的不好就……。其次,人的精力是有限的,如果要大规模标注,就需要维持大规模的运营团队。最后,人没有整理过的商品特征,就没办法分好,bug数量处于失控状态。

随着数据指标的要求提升,数据集的增长,这套系统已经不堪重负。

分类2.0

因此,我们研发了新系统——分类2.0。分类2.0结合商品信息的特征,避免了由于特征库对分类带来的干扰,同时可以保证以较高的效率完成在线分类任务。(分类2.0由我司一枚殿堂级工程师所创作,哎呀,现在回想起来,那一段时光真是令人怀念……)

分类2.0的技术要点

1.使用分词技术对商品标题信息分词处理,使用分词结果作为商品的特征tag,用tag来描述该商品

2.过滤没有意义的tag,保留能够有效描述该商品的tag

3.利用互信息计算训练集数据中,各个分类和该分类中商品所有tag的相关度

4.预测一个新商品的类别时,计算该商品中的所有tag在每个分类中相关度值,使用分类中所有tag相关度值的和作为商品在该分类中的得分

5.得分最高的类别即为该商品的分类

以一个具体的商品处理来说清楚这个流程,:

1.基于商品库对商品进行分词处理&过滤无意义词

如:黑色iphone苹果手机新上市,分词&过滤结果为:iphone,手机,黑色

2.利用互信息计算各分类与其中tag的相关度:

互信息计算公式:

I(x,y) = log(p(x|y))-log(p(x))

其中:

p(x) 代表 x在所有商品中出现的概率

p(x|y)代表x在类别y中出现的条件概率

下表为10个商品的类别及分词结果

电商搜索引擎 电商搜索优化 搜索推荐技术 搜索技术

计算示例商品在上面的商品集中,手机类的互信息

a)概率计算

p(iphone) = 0.1

p(黑色) = 0.4

p(手机) = 0.2

p(iphone |手机) = 0.25

p(手机|手机) = 0.5

p(黑色|手机) = 0.25

b)互信息计算

I(iphone,手机) = log(p(iphone |手机))-log(p(iphone)) = -1.3863 + 2.3026 = 0.9163

I(手机,手机) = log(p(手机|手机))-log(p(手机)) = -0.6931 + 1.6094 = 0.9163

I(黑色,手机) = log(p(黑色|手机))-log(p(黑色)) = -1.3863 + 0.9163 = -0.47

c) 以此类推,可以算出iphone,手机,黑色三个关键词在3个类别中分别的条件概率以及互信息

下表为关键词在各个类别中的互信息

电商搜索引擎 电商搜索优化 搜索推荐技术 搜索技术

3.计算1中示例商品在各个分类中的相关度

Class(手机)= 0.9163+0.9163-0.6932=1.1394

Class(电脑)=0.0+0.0+0.2231=0.2231

Class(服装)= 0.0+0.0+0.2231=0.2231

4.由3可以看出示例商品分类为“手机”类别

我们用这套分类2.0系统,重新处理所有商品,随着训练集的不断扩展,准确率和召回率都在90%以上;同时也解放了运营团队,他们不需要再每天标记什么对应表了。

这,就是算法的力量!一个好的算法可以极大的提高生产力。通过算法提升产品流程,需要很强的功力,否则就像篇头漫画所表达的,不好的算法上线后,效果还可能退步。总之,算法研究就像基础科学,需长期投入,一旦开花,提升是极大的。

    无相关信息