WSS推荐系统学习笔记5:排序
1 多目标排序模型
接下来主要研究粗排和精排,粗排和精排的原理差不多,在学习的过程中先不区分粗排和精排。
对于每篇笔记,系统记录:
曝光次数(number of impressions)
点击次数(number of clicks),点击率 = 点击次数 / 曝光次数
点赞次数(number of likes),点赞次数 = 点赞次数 / 点击次数
收藏次数(number of collects),收藏率 = 收藏次数 / 点击次数
转发次数(number of shares),转发率 = 转发次数 / 点击次数
排序模型预估点击率、点赞率、收藏率和转发率等多种分数,之后融合这些预估分数(比如加权和),根据融合的分数做排序、截断。
1.1 多目标排序1.1.1 工作过程
把用户特征、物品特征、统计特征和场景特征都输入神经网络,这些神经网络可以是很简单的神经网络,也可以是复杂的神经网络。
这个神经网络输出一个向量,之后把这个向量送入四个神经网络,这四个小神经网络各有 2~3 个全连接层,再通过 Sigmo ...
WSS推荐系统学习笔记4:召回3
1 Deep Retrieval经典的双塔模型把用户、物品表示为向量,线上做最近邻查找。Deep Retrieval 把物品表征为路径(path),线上查找用户最匹配的路径。Deep Retrieval 类似于阿⾥的 TDM。
1.1 索引索引是把物品表征为路径,如下图所示:
深度:$\text{depth} =3$
宽度:$\text{width} = K$
把一个物品表示为一条路径(path),比如 $[2, 4, 1]$。一个物品可以表示为多条路径,比如 $[2,4,1]$、$[4,1,1]$。
之后建立两个索引,分别是物品到路径的索引和路径到物品的索引。其中一个物品可以对应多条路径,一条路径也可以对应多个物品。
1.2 预估模型之后需要预估用户对路径的兴趣,用 3 个节点表示一条路径:$path =[a, b, c]$:
给定用户特征 $x$,预估用户对结点 $a$ 的兴趣 $p_{1}(a \mid {x})$
给定用户特征 $x$ 和 $a$,预估用户对结点 $a$ 的兴趣 $p_{2}(b \mid a; {x})$
给定用户特征 $ ...
WSS推荐系统学习笔记3:召回2
1 双塔模型1.1 模型结构双塔模型可以看作是矩阵补充模型的升级版。可以对用户 ID、用户离散特征和用户连续特征做处理,处理之后得到很多向量,并把这些向量拼起来。
之后输入深度神经网络,神经网络可以是很复杂的结构,神经网络输出一个向量,这个向量就是对用户的表征。
对物品的处理也是类似,如下:
双塔模型的不同之处在于使用了除了 ID 之外的更多的信息来进行处理,如下图所示,可以看到整体结构就像两个塔一样:
两个塔的输出都是一个向量,之后再计算这两个向量的余弦相似度,余弦相似度的大小介于 $[-1, 1]$。
1.2 模型训练双塔模型的训练可以有以下 3 种方法:
Pointwise:独⽴看待每个正样本、负样本,做简单的二元分类
Pairwise:每次取一个正样本、一个负样本
Listwise:每次取一个正样本、多个负样本
如何选择正负样本?
正样本:用户点击的物品
负样本:可以有多种定义,比如没有被召回的、召回但是被粗排、精排淘汰的、曝光但是未点击的
1.2.1 Pointwise 训练把召回看作二元分类任务:
对于正样本,⿎励 $\cos(a,b)$ 接近 $+1$
对 ...
WSS推荐系统学习笔记2:召回1
1 基于物品的协同过滤ItemCF1.1 ItemCF的原理
推荐系统如何知道《笑傲江湖》与《鹿鼎记》相似?
看过《笑傲江湖》的用户也看过《⿅⿍记》
给《笑傲江湖》好评的用户也给《⿅⿍记》好评
1.2 ItemCF的实现
预估用户对候选物品的兴趣:
$$\sum_{j} \operatorname{like}\left(\right. user, item \left._{j}\right) \times \operatorname{sim}\left(\right. item _{j}, item )$$
左边是用户对物品的兴趣,右边是两个物品之间的相似度
根据上面的公式进行计算即可得到:
$$2 \times 0.1+1 \times 0.4+4 \times 0.2+3 \times 0.6=3.2$$
表示用户对候选物品的兴趣,比如有多个候选物品,则可以计算用户对每一个物品的候选分数,然后选出分数较高的几个物品。
1.3 物品的相似度两个物品的受众重合度越⾼,两个物品越相似。例如,喜欢《射雕英雄传》和《神雕侠侣》的读者重合度很⾼,则可以认为《射雕英雄传》和《神 ...
WSS推荐系统学习笔记1:概要
1 评价推荐系统的指标1.1 消费指标
点击率 = 点击次数 / 曝光次数
点赞率 = 点赞次数 / 点击次数
收藏率 = 收藏次数 / 点击次数
转发率 = 转发次数 / 点击次数
阅读完成率 = 滑动到底次数 / 点击次数 × f(笔记长度)
上面只是短期消费指标,不是最重要的指标。衡量推荐系统的好坏最重要的指标是北极星指标。
1.2 北极星指标北极星指标是衡量推荐系统好坏的根本指标。
用户规模:日活用户数(DAU)、月活用户数(MAU)
消费:人均使用推荐的时长、人均阅读笔记的数量
发布:发布渗透率、人均发布量
2 实验流程
离线实验: 收集历史数据,在历史数据上做训练、测试。算法没有部署到产品中,没有跟用户交互。
小流量AB测试:把算法部署到实际产品中,用户实际跟算法做交互。
3 推荐系统的链路
推荐系统的目标是从几亿个物品中选出几十个物品展示给用户。
3.1 召回有很多召回通道,快速从上亿篇笔记中取出几千篇笔记,作为候选集。
召回通道:协同过滤、双塔模型、关注的作者 ...
隐式(不可见)数字水印生成和攻击技术综述
1 摘要随着数字内容的广泛传播,数字水印技术作为保护版权的重要手段得到了广泛关注。隐式数字水印(Invisible Watermarking)技术通过在媒体文件中嵌入信息而不影响其可视质量,成为一种有效的版权保护方案。这种水印不仅可以传递版权信息,还可以用于内容追踪和身份验证,极大地增强了数字内容的安全性。本文综述了针对图像、音频和视频的隐式数字水印常见生成技术和攻击技术,探讨了水印的鲁棒性及其在各种应用场景中的重要性。未来,随着人工智能和区块链技术的发展,隐式数字水印的应用前景将更加广阔。因此,深入研究其生成和攻击技术的改进将是一个重要的研究方向。
2 引言过去几年,以网络视频为代表的泛网络视听领域的崛起,是互联网经济飞速发展最为夺目的大事件之一。泛网络视听领域不仅是21世纪以来互联网领域的重要基础应用、大众文化生活的主要载体,而且在推动中国经济新旧动能转化方面也发挥了重要作用。据中国网络视听节目服务协会发布的《2021年中国网络视听发展研究报告》显示,截至2020年12月,我国网络视听用户规模达9.44亿,2020年泛网络视听产业规模破6000亿元。然而,自泛网络视听诞生之初,盗 ...
我的保研之路
2024年9月25日,我收到了北大的拟录取通知,当时感觉一切都释然了,仿佛做梦一般,怎么也想不到会是这个结果。接下来就看看这一路走来的颠沛流离吧,以此送给我过去付出的点点滴滴。
1 大一机械转专业1.1 报志愿刚上大一的时候还是机械专业,我高考分数是597分,从下面可以看到东秦在我们省机械类专业的最低分数线是596,可以说几乎是压线进来的。当时报考东秦的时候完全是从我报了一个报考辅导机构,然后机构中有一个系统,你输入选课、高考分数和位次之后会自动筛选出一些学校,东秦也就是筛选出来的。我自己在报考之前完全不知道有这个学校。
就是这样,我就在96个志愿中的好像是第11个志愿填上了东北大学秦皇岛分校—机械类专业。记得当时出录取结果的时候,我和父亲在超市里买东西,知道结果后,好像挺开心的当时,一方面是有大学上了,其次是个985(虽然是末9)。
1.2 大一上学期的懵懂在上大学之前,我就和母亲了解过东秦可以转专业,但是当时也仅仅是了解,而且知道转专业都是学习好的转,不是随便转的。
开学之后,对我的大学生活和大学规划一无所知,其实也不知道自己以后要干什么,要不要转专业,要不要考研。现在想来这也是 ...
论文精读4:GAN
1 Abstract我们提出了一种通过对抗过程估计生成模型的新框架,在该框架中,我们同时训练两个模型:一个生成模型$G$,它捕捉数据分布;以及一个判别模型$D$,它估计样本来自训练数据而非$G$的概率。$G$的训练过程是最大化$D$犯错误的概率。此框架对应于一个极小极大两人博弈。在任意函数$G$和$D$的空间中,存在一个唯一解,即$G$复现训练数据分布,而$D$在各处等于$\frac{1}{2}$。若模型$G$和$D$由MLP定义,整个系统可通过反向传播进行训练。在训练或样本生成过程中,无需任何马尔可夫链或展开的近似推断网络。实验通过定性和定量评估生成的样本来展示该框架的潜力。
2 Introduction深度学习的潜力在于发现丰富的、层次化的模型[2],这些模型能够表示人工智能应用中遇到的各种数据的概率分布,例如自然图像、包含语音的音频波形以及自然语言语料库中的符号。迄今为止,深度学习中最显著的成功涉及判别模型,通常是将高维、丰富的感官输入映射到类标记[14, 20]。这些显著的成功主要基于反向传播和暂退法算法,使用分段线性单元[17, 8, 9],这些单元具有特别良好的梯度特性。 ...
计算机组成原理第10章:控制单元的设计
1 组合逻辑设计1.1 组合逻辑控制单元框图如果将指令译码和节拍发生器从CU中分离出来,可得到简化的控制单元框图如下:
1.2 组合逻辑设计步骤1.2.1 列出操作时间表
1.2.2 写出微操作命令的最简表达式根据上述操作时间表可以列出每一个微操作命令的初始逻辑表达式,经化简、整理便可获得能用现成电路实现的微操作命令逻辑表达式。例如:
$$\begin{array}{l}\\mathrm{M}(\mathrm{MAR}) \longrightarrow \mathrm{MDR} \\=\mathrm{FE} \cdot T_{1}+\mathrm{IND} \cdot T_{1}(\mathrm{ADD}+\mathrm{STA}+\mathrm{LDA}+\mathrm{JMP}+\mathrm{BAN}) \\+\mathrm{EX} \cdot T_{1}(\mathrm{ADD}+\mathrm{LDA}) \\=T_{1}{\mathrm{FE}+\mathrm{IND}(\mathrm{ADD}+\mathrm{STA}+\mathrm{LDA}+ ...
计算机组成原理第9章:控制单元的功能
1 微操作命令的分析控制单元具有发出各种微操作命令(即控制信号)序列的功能。
1.1 取值周期假设CPU内含有4个寄存器:
MAR与地址总线相连,存放欲访问的存储单元地址
MDR与数据总线相连,存放欲写入存储器的信息或最新从存储器中读出的信息
PC存放现行指令的地址,有计数功能
IR存放现行指令
取值周期的过程归纳如下:
1.2 间址周期
1.3 执行周期不同指令的指令周期的微操作是不同的,下面分别讨论非访存指令、访存指令和转移类指令的微操作。
1.3.1 非访存指令
清除累加器指令CLA:$0 \rightarrow \mathrm{ACC}$
累加器取反指令COM:$\overline{\mathrm{ACC}} \rightarrow \mathrm{ACC}$
算术右移一位指令SHR:$\mathrm{L}(\mathrm{ACC}) \rightarrow \mathrm{R}(\mathrm{ACC}), \mathrm{ACC}{0} \rightarrow \mathrm{ACC}{0}$
循环左移一位指令CSL:$\mathrm{R}(\mathrm{ACC}) ...