首页 二次元 正文

词权重算法 TermWeight (大词权重)

二次元 2024-09-10 16

本文目录导航:

TermWeight 词权重算法

在用户的搜查Query中,有些词在用户的外围语义诉求中占据主导位置,在召回排序时须要重点关注,而有些词则关键性较低,即使丢掉也不影响用户的外围语义表白。

TermWeight是智能计算用户查问query中各term之间相对关键性相关的模块。

经过辨别用户查问query中不同term的关键水平并赋予相应的得分,从而召回与用户用意最为相关的结果,继而提高搜查的用户体验。

方法:应用query和doc的文档汇算计算tf-idf并归一化,作为term的词权重 长处:便捷,易成功 劣势:每个term的词权重是静态的,不可依据高低文变动,成果差

term weight训练,方法关键分为两种:(1) 基于点击词共现和 (2) 基于偏序相关 。

基于点击词共现法将term weight看做是回归义务来解,标注数据计算时驳回term recall得分来示意query中各term的关键性相关。 词共现 :基于uclog的query-title点击数据构建训练集,即经过计算 目的 term recall 作为词权重。 term recall 计算公式如下:

假设是冷启动阶段或词共现计算的 term recall 准确率低,可经过火层回归得分做人工数据标注,示例如下:

注: 分层数和得分可依据详细业务场景来调整

基于偏序相关的方法将term weight看做是排序义务来解,标注数据时驳回偏序相关来示意query中各term的关键性相关,如:

该方法实用于 用户query短,少数点击doc都会蕴含query中一切term ,从而使得 词共现方法失效。

运行场景的不同,会对应不同的模型选型打算: (1) DeepCT/DeepRT 基于深度高低文语义的词权重。

(a) 经过深度模型生成高低文明的词embedding + (b) 线性回归预测词权重。

长处:应用高低文语义,成果好。

劣势:模型略复杂,须要管理模型复杂水平,满足实时推理。

(2) Feature+ML 基于特色设计+机器学习回归模型预测词权重得分。

长处:计算高效,满足实时推理。

劣势:须要人工精细化设计特色。

上方就两类模型选型详细倒退引见。

DeepCT/DeepRT框架中全体经常使用的是:(a) 经过深度模型生成高低文明的词embedding + (b) 线性回归预测词权重。

假设数据集是基于词共现的得分,则可间接用MSE等损失函数,假设是基于偏序相关构建的训练集,则可以经常使用Pairwise Hinge Loss。

论文中经常使用的是BERT做高低文语义提取,我自己的通常中用的是BiLSTM+Attention,无论哪种方法,其外围实质是宿愿应用NMT联合高低文语义来灵活判别term在以后语境的关键水平。

国内惯例,一图以蔽之

词权重算法 TermWeight (大词权重)

假设系统RT要求较高,则介绍经常使用BiLSTM,假设谋求成果,预训练言语模型的更有长处,须要联合自己的业务场景做选型。

Feature+ML的全体思绪是:经过人工设计有效特色,再应用机器学习中的GBDT/LR等模型来做回归预测或排序。

罕用的模型有Xgboost,LightGBM等。

很显著,该类方法的成果取决于特色设计的好坏,不同业务场景详细特色会有差异,上方总结一些罕用特色。

term静态特色 :idf值、词频、term长度、term词性、词位置、能否停用词、能否语气词、能否专有名词(人名/地名)等等。

term交互特色 :term长度占query长度比值、text-rank值、term在query中相对位置、term对query的ppl奉献度等等。

ngram特色 :蕴含该term的ngram统计特色、以该term开局的ngram统计特色、以该term开头的ngram统计特色等等(通罕用bigram和trigram)。

特色设计后,再用ML模型做回归预测或排序即可,比拟便捷,不再赘述。

语义失误是什么?

语义失误是指在言语了解和表白环节中,由于词汇、语法或语境经常使用不当而造成的意义曲解或歧义。

这类失误通常出当初言语交换、写作或编程等畛域,对消息的准确传递和有效沟通形成阻碍。

在言语交换方面,语义失误经常体现为词汇选用不当。

例如,在描画一个场景时,经常使用了一个与实践状况不符的词汇,造成听者发生曲解。

比如,将“大雨滂沱”描画为“细雨绵绵”,只管都是描画雨,但表白的含意却天壤之别。

此外,语法失误也或许造成语义失误。

例如,在句子中经常使用了失误的时态、语态或结构,使得句子的意思变得含糊不清。

在写作畛域,语义失误雷同不容漠视。

作者在写作环节中,或许会由于对某个词汇或短语了解不准确,而经常使用了失误的表白方式。

例如,将“独立自主”误写为“专断专行”,两者只管字面上相似,但意义却截然雷同。

此外,文章的结构和逻辑也容易出现语义失误。

假设作者没有明晰地表白观念或论据,或许段落之间的逻辑相关凌乱,都会造成读者难以了解文章的实在用意。

在编程畛域,语义失误通常指的是代码逻辑或算法成功上的失误。

这类失误往往是由于程序员对编程言语或算法了解不深化,或许在设计程序时未能充沛思考各种状况而造成的。

例如,在编写一个排序算法时,假设未能正确解决相等元素的顺序,就会造成排序结果不合乎预期。

语义失误在编程中往往难以发现,由于它们通常不会造成程序解体或显著的失误揭示,而是会在特定条件下体现出意外行为或失误结果。

综上所述,语义失误是一种由于词汇、语法或语境经常使用不当而造成的意义曲解或歧义现象。

在言语交换、写作和编程等畛域都或许出现语义失误,对消息的准确传递和有效沟通形成阻碍。

因此,在启动言语交换和写作时,咱们应当留意选用适合的词汇和语法结构,确保消息的准确表白;在编程环节中,程序员应当深化了解编程言语和算法原理,确保代码逻辑和算法成功的正确性。

语法的结构剖析和语义剖析有何不同呀???

从系统设计角度,语义剖析和后两者没有毛相关。

后两者有很严密的相关。

语义剖析关键思维是依据高低文环境,经过对比“引申含意”的概率,来给出大略率下的表述映射。

便捷说是个环境识别+统计+指引的复合操作。

假设谁的语义剖析系统,没有统计算法在外面,没有语境剖析在外面,基本就是扯淡。

这似乎“你+妈喊你回家吃饭”。

在网站的屏蔽中,前面两个字被有情的卡擦一样,当然网站的敏感词汇屏蔽,没标榜自己是带语义剖析的。

语法剖析和词法剖析不同。

语法剖析,多了规定实例化的环节。

其余和词法剖析一样,关键是用方式文法和待剖析数据,启动婚配。

正则表白式,只是方式文法的一种。

大家的编译器的前端,都蕴含方式文法的解决。

词法剖析,关键是用于,合乎方式文法的数据被提取进去,而语法剖析的实例化,须要对提取出的数据,启动详细的可识别的规定启动实例化。

比如,进入的单词流,终究是个赋值语句,还是的调用行为。

否则前面的触发器不可对应,触发器是用于依据不同的详细描画的内容,启动不同的解决上班,当然编译器的提升局部和这个有关。

当然语义剖析和语法剖析有关联,连语法都提取不进去的系统,语义剖析就更扯淡了。

这和你用什么聚类、分类,神经网络、或许什么一堆堆新名词没有相关,后者都是基础面向数据的算法,和排序算法一样,不落到工程里,只能做作通常钻研,p用没有。

别认为在几个数据表里,加个sql语句,凑凑,就可以语义了,数据库在语义剖析系统里,只能做基础词法提取的举措。

包括大数据,也是,数据库即使是oracle的数据库,表演的角色,基本可以类比数据库系统中,磁盘文件表演的角色。

十分十分小的小角色。

短语检索名词解释 (短语检索用法)
« 上一篇 2024-09-10
语义桌面搜查技术目录 (语义搜索)
下一篇 » 2024-09-10

文章评论