搜索推荐相关

article/2025/9/18 12:40:03

搜索算法

Learning to Rank方法:

1、单文档方法:根据query判断每个item的相似度
2、文档对方法:确定文档对的前后顺序
3、文档列表法:确定所有文档的先后顺序
Item:垂域、意图、语义相似性、item的热度、用户的搜索日志。

排序算法的评估标准

  • AUC:

  • 准确率:描述模型的推荐列表(分母)中有多少是正例item;

  • 召回率:描述有多少正例item(分母)包含在模型的推荐列表中

  • AP average precision(平均精度):在不同recall情况下 precision的平均。通过划分不同的阈值绘制横坐标为recall 纵坐标为 precision 的曲线 下方的面积

  • mAP(Mean average precision):对于每一类的AP再求平均:评价一个rank方法性能的一个指标,现在有很多query,首先看rank方法对各个query来说性能分别是怎么样的(也就是AP),再平均起来,
    在这里插入图片描述

  • NDCG:需要计算Gain,这个gain即是每条结果的质量的定义,NDCG把所有结果相加最终相加保证,整体质量越高的列表NDCG值越大。同时,Discounted的设计使得越靠前的结果权重越大,这保证了第一条,更相关的排在靠前的结果会有更大的NDCG值。从这两点看,以NDCG为优化目标,保证了搜索引擎在返回结果总体质量好的情况下,把更高质量结果排在更前面。

  • CG(cumulative gain),累积获得,指的是网页gain的累加
    gain可以使自己定义的一种获得,用来衡量网页的相关性程度
  • DCG(Discounted Cumulative Gain),Discounted的factor为:
    在每一个CG的结果上除以一个折损值,让排名越靠前的结果越能影响最后的结果
    IDCG理想情况下最大的DCG值
    |REL| 表示,结果按照相关性从大到小的顺序排序,取前p个结果组成的集合。
    NDCG就是被IDEA DCG规格化的值,即DCG/IDCG

召回时使用的方法:es(BM25)

倒排索引进行直达词匹配:

文件ID对应到关键词的映射转换为关键词到文件ID的映射,每个关键词都对应着一系列的文件,这些文件中都出现这个关键词。

推荐算法:

推荐系统就相当与在一个异构网络进行相似性度量,用异构网络表示学习实现协同过滤
找到相似的用户就对应基于用户的推荐
找到相似的的物品对应基于物品的推荐

基本原理

  • 基于内容:用户喜欢a a和b相似则推荐b
  • 基于关联规则:很多人同时购买a b 若用户买了a则推荐b
    协同过滤:
  • 基于用户:根据用户对物品的评分发现当前用户的邻居用户 基于邻居用户的喜好推荐
  • 基于物品:根据所有用户对物品的评分发现物品之间的相似度 推荐相似的物品

相似性度量:

  • 基于特征:
    余弦相似性;
    欧几里德距离
    曼哈顿距离;
    切比雪夫距离;
    信息熵(非相似性度量):样本集X的信息熵信息熵越大表明样本集S分类越分散、

  • 基于链接:
    个性化PageRank。通过点击链接随机访问图中结点的行为 (随机行走模型)计算稳定状态下各结点得到的随机访问概率。保证随机行走中各结点的访问概率能够反映出用户的偏好


http://chatgpt.dhexx.cn/article/Hl5AIbPo.shtml

相关文章

推荐一个搜索引擎

yandex是一个俄罗斯搜索引擎。 https://yandex.com/ 最近很忙,月更。 水下文章。

ES-搜索推荐

1. 概述 搜索一般都会要求具有“搜索推荐”或者叫“搜索补全”的功能,即在用户输入搜索的过程中,进行自动补全或者纠错。以此来提高搜索文档的匹配精准度,进而提升用户的搜索体验,这就是Suggest。 ##四种Suggester 2. term sugge…

ul, li, a怎么用

<style type"text/css"> *{margin:0; padding:0;font-size:14px} body{padding-top:20px} ul,li{list-style: none} ul{background: yellow;} li{float:left; width:60px; height:50px;}//width:60px后加,不然ie li会比a宽 a{display:inline-block;padding:0 3…

html用ul li制作导航条

制作的导航条如图所示&#xff1a; 当鼠标滑过每个导航的时候&#xff0c;背景会变换颜色。技术点&#xff1a;将超链接a标签&#xff0c;转换成block标签&#xff0c;从而设置鼠标滑过时的背景色。代码如下所示&#xff1a; <html ><head><meta charset"…

HTML中的列表ol ul

<!DOCTYPE html> <html lang"en"> <head><title>列表</title> </head> <body><h3 style"background-color: rgb(102, 165, 165);">畅销图书榜</h3><hr/><!-- 有序列表 ol --><ol>…

ul及ol标签list-style-type介绍

ul及ol标签list-style-type介绍 1.ul/ol标签样式介绍 a.不设置ul中标签类型&#xff08;默认&#xff09;&#xff1a; 不设置ol中标签类型&#xff08;默认&#xff09;&#xff1a; b.设置方法代码&#xff1a; 在html中设置或者在CSS样式中设置 <style>#kl{list-s…

ul li 实例

之前使用过很多次的 ul li&#xff0c;不过都怎么规范&#xff0c;今天学习到一个整合“p、span、a”等标签的ul li实例&#xff0c;防止忘记&#xff0c;记录一下。 html代码 <span style"white-space:pre"> </span><li><h2>发明专利</h…

html中列表标签ul、ol、 dl的使用和介绍

一、UL列表介绍 ul 是无需列表&#xff0c;li列表里面的一条值&#xff0c;例如 <ul><li>中国</li><li>四川</li><li>成都</li></ul> 效果如下&#xff1a; 可以改变前面li的样式&#xff0c;通过给ul添加样式&#xff0c;其…

ul好看的li列表样式

以下是实际效果截图&#xff1a; 示例代码如下&#xff1a; <!DOCTYPE html> <html> <head> <style> .other-item-title{margin:10px 20px;padding:5px;line-height:30px;font-weight:400;border-bottom:1px solid #e8e9e7;color:#383937;position:re…

ul和ol的区别以及经验总结

一.ul是无序列表 网页中最为常见的列表&#xff0c;各个列表项之间为并列关系&#xff0c;没有顺序级别之分&#xff0c;如导航栏&#xff0c;新闻话题展示区等。 默认示例表现为&#xff08;默认带有实心圆&#xff09;&#xff1a; <ul><li>无序列表项1</li&g…

ul元素的使用

为了使网页更易读、排序有序、条理清晰&#xff0c;所以我们要学会ul元素——无序列表 效果图&#xff1a; 代码如下&#xff1a; <!DOCTYPE html> <html> <head><meta charset"UTF-8"><title>元素的使用</title> </head&g…

为什么我们需要带上类型后缀?U/UL/ULL/L/LL

类型后缀 给变量赋值的时候分两个阶段。 第一步&#xff0c;如果没有指定字面量的类型&#xff0c;C99会找到一个能容纳字面量值的最小的带符号类型&#xff08;int / long int / long long int&#xff09;。 第二步&#xff0c;转换成左边变量类型并赋值。 long i 0xffff;…

IMX6ULL与IMX6UL异同(主要是优化了其成本:安全功能减低,优化功耗EMC SIM模块删除等与但和I.MX6UltraLite芯片是PIN-2-PIN兼容的)

I.MX6ULL相对于I.MX6UltraLite来说&#xff0c;主要是优化了其成本。与I.MX6UltraLite芯片是PIN-2-PIN兼容的&#xff0c;使的I.MX6ULL很容易在IMX6UL上重用&#xff0c;主要更改如下。 1. 增加了EPD显示支持与EPDC/PXP的低端电子阅读器&#xff0c;相对于6sl7d系列也是一个低…

论文阅读笔记(1)——《Ultra-Low Latency (ULL) Networks: The IEEE TSN and IETF DetNet Standards and Related 5G》

《超低延迟 (ULL) 网络&#xff1a;IEEE TSN 和 IETF DetNet 标准及相关 5G ULL 研究》 DOI&#xff1a;10.1109/COMST.2018.2869350 前言 IEEE 802.1 时间敏感网络 (TSN) 标准和相关研究旨在为 ULL 网络提供链路层支持&#xff0c;而新兴的 IETF 确定性网络 (DetNet) 标准则…

机器学习十大算法简介

本文对机器学习的常用算法进行常识性的认识&#xff0c;介绍这些算法是什么以及如何应用&#xff08;主要是针对分类问题&#xff09;以及对单个算法的理解的简介。本文要介绍的十大算法如下&#xff1a;①决策树&#xff1b;②随机森林&#xff1b;③逻辑回归&#xff1b;④SV…

常见的机器学习算法与人工神经网络

目录 1. 邻近算法K-NearesNeighbor (KNN) 1.1 KNN算法核心思想 1.2 KNN算法步骤 1.3 KNN预测分类 2. 图神经网络Graph Neural Networks (GNN) 2.1图的基本定义 2.2 图神经网络模型 3. 卷积神经网络Convolutional Neural Network (CNN) 3.1 CNN的结构 3.2 卷积 3.3 卷…

【KELM预测】基于粒子群算法改进核极限学习机(KELM)分类算法 matlab源码

一、核极限学习机 本文将介绍一种新的SLFN的算法&#xff0c;极限学习机&#xff0c;该算法将随机产生输入层和隐含层间的连接权值和隐含层神经元的阈值&#xff0c;且在训练过程中无需调整&#xff0c;只需要设置隐含层的神经元的个数&#xff0c;便可以获得唯一最优解&#x…

机器学习算法[9]--集成方法之XGBoost原理详解及XGBoost库实现

机器学习 1. XGBoost1.1 原理1.1.1 算法解析1.1.2 算法流程 1.2 XGBoost库实现 1. XGBoost 1.1 原理 XGBoost(Extreme Gradient Boosting)通过串行的方式迭代训练多个相互依赖的决策树回归模型&#xff0c;最后综合多个简单模型共同作用产生输出&#xff0c;在GBDT作出全面优…

基于PSO优化的SVM数据预测算法matlab仿真

目录 1.算法仿真效果 2.算法涉及理论知识概要 3.MATLAB核心程序 4.完整MATLAB 1.算法仿真效果 matlab2022a仿真结果如下&#xff1a; 2.算法涉及理论知识概要 支持向量机&#xff08;support vector machines, SVM&#xff09;是二分类算法&#xff0c;所谓二分类即把具有…

基于改进大洪水算法求解TSP问题

from function import get_distances, get_value, result_plot, get_neighbors from random import randintdef r_opt(route):"""利用2-opt算法对route进行改进,对当前路径所有不相邻的两点进行边边交换"""new_route route[:]value get_value(…