• query词权重, 搜索词权重计算


    query词权重(term weighting)是为了计算query分词后,每个term的重要程度。常用的指标是tf*idf(query中term的tf大部分为1),即一个term的出现次数越多,表明信息量越少,相反一个term的次数越少,表明信息量越多。但是term的重要程度并不是和term的出现次数呈严格单调关系,并且idf缺乏上下文语境的考虑(比如“windows”在“windows应用软件”中比较重要,而在“windows xp系统iphone xs导照片”的重要性就比较低)。词权重计算作为一种基础资源在文本相关性,丢词等任务中有着重要作用,其优化方法主要分为下面三类:

    1)基于语料统计

    2)基于点击日志

    3)基于有监督学习

    本文首先介绍一些基于语料统计的计算方法。

    一、imp(importance的缩写)

    idf的一个缺点是仅仅依靠词频比较,imp从在query中的重要性占比基础上,采用迭代的计算方式优化词的静态赋权,其计算过程如下:

    其中BT为term的imp值,初始值可设为1,Tmp_i是query中的第i个term的重要性占比,N指所有包含第i个term的query数目。

    二、DIMP(Dynamic imp)

    idf和imp的一个共同缺点是其都是静态的赋权。DIMP根据query的上下文计算每个term的动态赋权,其主要假设是任意query中的词权重可以由相关query 的词权重来计算,计算过程可分为两部分:

    1) 自顶向下的query树构建

    根据实际场景中采用不同的构建方法,这里介绍一种在搜索中的做法。如下图,给定query作为根节点,首先获取query的相关query作为第二层节点,在第二层的基础上,枚举相关query的子query作为第三层节点,最后一层为分词后的term节点。因此query树种的节点都是不同粒度的文本串,边都是文本串间的相关关系。在拍卖词推荐任务中,用户query都是比较短的关键词,其可以通过拍卖词间的共同购买关系构建对应的query树。

     

  • 相关阅读:
    spring 只读事务 设置异常回滚事务
    Json详解
    【QT教程】QT6物联网应用
    Guava强大的“流畅”风格比较器-Ordering的使用方法
    7、AWS SDK for Go-文件分片上传
    使用Docker+Jenkins+Gitee自动化部署SpringBoot项目
    C多线程编程- 近似求解π
    View绘制流程
    自适应模糊神经网络与bp神经网络的区别
    dubbo是如何实现可扩展的?(二)
  • 原文地址:https://blog.csdn.net/sinat_37574187/article/details/125561377