V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wolfsecond
V2EX  ›  编程

(一)搜索推荐技术在电商导购领域的应用——分词

  •  
  •   wolfsecond · 2015-10-16 18:50:07 +08:00 · 3476 次点击
    这是一个创建于 3113 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在电商领域浸淫多年,近期有空对这些年的实践经历做些整理,唠叨唠叨我们遇到的问题和用到的技术解决方案,欢迎同行交流。
    PS :封面图跟本文没有任何卵关系,纯粹个人喜欢……

    导购领域的发展
    只要网上的商品信息保持持续增长,信息过滤、商品挑选的用户痛点也会日益增加,导购需求就会永远存在。
    个性精准导购,对技术要求较高,需要用到搜索,推荐,机器学习等多个领域技术。
    导购离钱近,可很快有现金流,属于“自我造血型”业务,在这个资本寒冬里,是一个不错的选择。
    做好导购,未来可演化成垂直电商平台,发展前景广阔,美丽说、蘑菇街是成功案例。


    说那么多废话,我就是想简单讲一下分词
    为了有效的给用户推荐商品,首先要理解用户需求和商品,这两者的精准刻画都离不开分词。
    我们这里说的分词是指中文分词,指的是将一个汉字序列切分成一个一个单独的词。这是中文特有的问题(英文有空格可以天然分隔),需要进行一些技术处理。
    通用的分词算法可分三大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。这里不展开详述,大家可以自行百度,这三个分词流派我们都用上了。
    在实践过程会发现,无论哪种方法,都保证不了 100%的召回率和准确率,技术同学通常面临这样一个难题:召回率 83%,准确率 91%,想进一步提高准确率,就很难保持召回率不降低,怎么破?!
    这时候,你需要词典了。
    购物分词优化到后期,基本就是词典的优化过程。
    词典是一个扩展集合,用于保存预先分好的词,每一个词要标注词性。词性,就是词的性质,是对一个词的进一步解释,比如“ D100 ”在词性是“系列”,“尼康”的词性是“品牌”。(词条,词性)组合,可以保存对应的领域知识。
    再列举一些我们用到的词性
    核心词:如品牌,型号,系列,商品名等
    修饰词:如颜色,材质,风格等
    Stopword :无意义的词,如包邮,淘宝热卖等

    我们词典的最大特点是基于分类的,也就是说,词典中每一个词的词性并不是唯一性确定的,在不同类目下有不同的词性含义。目前我们维护的电商分类是数千个节点,深度为 4 的树形结构,常见的分类有手机,连衣裙,膨化食品……

    这是我们一个词条的印象,大家感觉一下。
    下面是我们设计的词条数据结构。

    我们词条的词性是基于分类的。

    词条的组织形式是分形的,可递归,父词条结构和词条是一样的。

    这是词性维度的数据结构,也是基于分类的。

    最终,我们通过词条关系的构建,搭建成如上类目属性库,在各种商品文本处理场景中使用。

    那么问题来了,那么多品牌词,类目词,修饰词都是从哪里来的呢?
    答:从大数据里面来。

    通过海量商品文本数据,我们对文本中,相邻的 keyword 建立起概率链模型,如果两个 keyword 经常一起出现,同时词条库里面还没有,那很可能是一个新词。这时候,人工介入标注,更新词条库。日积月累,词条库会越来越强大!

    最后,我们的购物分词系统,就演化成介个酱紫的。

    我们正在打造一款技术驱动的创新导购产品,欢迎技术极客加盟,用技术改变世界。
    脉脉: https://maimai.cn/card?u=anqmfwckez07
    微信: wolfsecond
    邮件: [email protected]

    下一篇会介绍爬虫,敬请期待!
    让我歇会儿喝口水……
    2 条回复    2018-11-15 15:06:39 +08:00
    eary
        1
    eary  
       2015-10-16 18:54:19 +08:00
    良心招人贴!
    le0liu
        2
    le0liu  
       2018-11-15 15:06:39 +08:00
    词性在切词中是怎么使用的呢?具体用在了哪里?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5315 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 08:27 · PVG 16:27 · LAX 01:27 · JFK 04:27
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.