自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(616)
  • 资源 (1)
  • 问答 (4)
  • 收藏
  • 关注

原创 【Python】正则匹配

正则表达式持续总结

2024-02-07 15:58:19 717

原创 【推荐算法】userid是否需要建模

看到一个din的源码,将userid也构建了emb table。即推荐算法需要建模userid吗?

2024-02-05 01:05:43 767

原创 GradNorm理解

gradnorm在单个batch step的流程总结如下:整体任务是指L=w_aL_a+w_bL_b, W是神经网络的参数值, gradnorm主要在动态学w_a, w_b;

2023-12-13 15:48:06 5309 1

原创 【深度学习】loss与梯度与交叉熵的关系

问的GPT3.5。

2023-12-11 19:27:42 2410

原创 【Python】基于base64对文本进行编码

将Base64编码的字符串解码为原始字符串。将字符串转换为Base64编码。

2023-12-04 16:32:07 2398

原创 【推荐系统】MMOE笔记 20231126

本人mmoe paper阅读,代码分析,链接参考等笔记

2023-11-26 16:21:53 593

原创 【推荐系统】AITM笔记

Expert-Bottom 模式的主要思想是控制 Expert 模块如何在多任务模型底部的所有任务之间共享,而 Tower 模块 顶部分别处理每个任务。为 [0.025%, 0.05%, 0.125%, 0.25%, 0.5%, 1%, 2.5%, 5%],1. 如果受众目前没有申请信用卡,并不意味着他们将来不会申请该卡,所以我们不能使用太多的负样本进行训练。我们对 𝑎𝑐𝑡𝑖𝑣𝑎𝑡𝑖𝑜𝑛 负样本进行下采样,以保持训练集中正样本的比例 𝜆 分别。weight: 用户本身价值,以及用户对业务的价值。

2023-11-10 16:48:06 615

原创 【Leetcode】各结构的时间复杂度

二分法就是把一个数据规模为N的先分为N/2,然后再分为N/4,N/8,N/16…一直等分到N/y =1的时候就不分了,现在我们来考虑下,到底分多少次才能把规模为N的数据分到结果为1,这里假设为x次,这个x就是次数,也是我们用大O表示法表示的时间复杂度,我们只需要把x取到就可以了。二叉树的高度:二叉树的高度是从叶节点开始(其高度为1)自底向上逐层累加的。二叉树的深度:二叉树的深度是从根节点开始(其深度为1)自顶向下逐层累加的。因此二分法的时间复杂度就是O(logN)二叉树时间复杂度:O(n)

2023-11-09 17:39:13 567

原创 【Pandas】常用api(加精)

特征工程制作特征时常用的pandas api

2023-11-07 10:59:26 351

原创 【机器学习】XGB/LGBM

XGBoost的decision tree用的是pre-sorted based的算法,也就是在tree building之前对各维特征先排序,代表性的算法是SLIQ和SPRINT。SLIQ和SPRINT算法的特点决定了树生长的方式是level-wise(breadth-first)的。而LightGBM的decision tree是histogram based的算法,也就是先将特征离散化,代表性的算法是CLOUDS,Mcrank和Machado。即采用leaf-wise的方式。

2023-11-05 23:46:21 391

原创 【Python】多进程线程与CPU核数

多进程数量设置为CPU核数,或者略小于CPU核数;多线程数量,如果是CPU密集任务设为1;如果是IO密集设为合理的值;

2023-11-03 14:37:45 2818 2

原创 【pyspark】expected zero arguments for construction of ClassDict

net.razorvine.pickle.PickleException: expected zero arguments for construction of ClassDict (for json.decoder.JSONDecodeError)

2023-10-31 17:54:12 321

原创 【Spark】配置参数关系-重要

eg:资源配置10个Executor节点,每个节点2个Core,那么同一时间可以并行计算的task数为20,如果RDD有2个分区,那么计算时只使用2个Core,其余18个Core空转,浪费资源,每个Executor中的一个Core(线程,虚拟核数)同时只能执行一个Task,所以Spark调优中会通过增大RDD分区数,增大任务并行度来提高效率。并行度指所有Executor可以同时执行的Task数,如果RDD有100个分区,那么需要5轮计算完毕,

2023-10-27 16:32:02 901

原创 libGL.so.1: cannot open shared object file: No such file or directory

解决ImportError libGL.so.1

2023-10-23 11:54:13 1590

原创 【Interview】拟牛顿求一个数的平方根

初始化选A点,求切线,与x轴交点 A′ ,改点横坐标 对应B点,再求切线,与x轴交点 B′ ,之后一直进行,会迭代到曲线与x轴的交点。,逐渐迭代收敛到一个数的平方根。我们要求m的平方根,构造函数。牛顿迭代法的思路是通过。

2023-10-17 11:50:51 194

原创 【推荐算法】ctr cvr联合建模问题合集

ctr和cvr分开建模相比ctcvr的优势?总结:1、ctr的数据可以试试获取,能实时训练。但是cvr存在延迟现象,样本更新慢。一起训练容易出现跷跷板现象。2、分开建模可以输出2个指标,便于调控。3、CTR肯定是需要单独建模的,因为它影响用户的长期的,也影响未来。CTCVR低,不代表用户不喜欢,也可能是因为其他原因(比如没钱,这个很容易建模,拿用户过去消费的金额,与当前商品的,一比就能知道)

2023-10-16 19:30:51 788

原创 【Interview】想法合集

区别在于是否线上可以无限召回,比如基于统计的召回,需要事先把召回结果存入kv中,在线下召回结果已经确定了;而基于embedding的召回,可以得到item的embedding,然后线上可以通过近邻索引来召回topn,这样只要有item的embedding,基本上都能得到topn的召回,所以可以起到兜底的效果。i2i相比u2i的优点;主要有两大类型,分别是。

2023-10-16 18:36:26 163

原创 【推荐系统】wss课程-重排序

如果 i 与集合 S 中的某个 j 很相似,则启抑制作用,不利于 i 被选中。衡量物品 i 与集合 S 的相似度。- 每轮都从未选中的物品中与已选中的物品计算 MR,把分数最高的 i 从 R 中移出来。每一轮的 S 都会发生变化,所以每轮的 MRi都要重新计算。i已选中,j 未选中。目标:精排分数高且与所有已选中物品都不相似。sim(i,j),j 求最大化,消掉 j。MMR 就是对 MR 就最大化。marginal 边缘的;

2023-10-06 23:35:24 130

原创 【推荐系统】geohash召回

浮点数编码成字符串占用的字节数较多。给定当前位置:东方明珠 -> 坐标&搜索半径。如何利用genhash去搜索附近的邻居?geohash比经纬度好在哪里?1个浮点数占用存储空间4个字节。查询周边的特定商家:餐厅。

2023-09-15 18:51:01 164

原创 【机器学习】XGB如果类别不平衡怎么解决?和深度学习解决办法一样吗?

xgboost-样本类别不平衡 - 知乎分类问题中类别不平衡问题的有效解决方法_多分类问题时 scale_pos_weight-CSDN博客解决样本不平衡问题的奇技淫巧 汇总_数据小样本 同时每天数据都在变_songhk0209的博客-CSDN博客

2023-09-15 16:56:10 176

原创 【Python】A文件夹随机抽取文件放入B文件夹

【代码】【Python】A文件夹随机抽取文件放入B文件夹。

2023-09-15 16:13:55 94

原创 【Hive】drop table需注意外部表

ALTER TABLE tb_nameSET TBLPROPERTIES('EXTERNAL' = 'FALSE');

2023-09-05 19:42:13 475

原创 【知识点】温度超参数

考虑一下出现困难负样本的原因,有可能是因为两张图片确实非常相似,通常是两张图片有着相同的前景,让算法产生了混淆。也就是说,其实网络已经学到了一定的语义特征,这对下游任务是有帮助的,强行将两张非常相似图片提取出的特征相互远离,有可能打破这种语义信息,导致在执行下游任务时,效果不升反降。如果没有引入temperature参数,当有困难负样本过来时,loss相对较小,对参数的惩罚也就较小。因此,必须对所有错误分类的样本都加大惩罚,所以,要加入一个小于1的temperature参数,来放大对于困难负样本的惩罚。

2023-08-28 15:56:57 253

原创 【Pytorch】CUDA error: no kernel image is available for execution on the device

当前的 PyTorch 安装支持 CUDA 功能 sm_37 sm_50 sm_60 sm_70。记录一下pytorch安装的cuda版本和GPU cuda不一致的解决。sm_80对应的cuda是11.1,而我安装的cuda是10.2。一般就是pytorch和cuda安装的不匹配。如果我安装的torch配的cuda信息如下,具有 CUDA 功能 sm_80 的。与当前 PyTorch 安装不兼容。改一下就好了,根据官网。

2023-08-25 16:04:47 461

原创 【推荐系统】wss课程-排序

这节课的内容是推荐系统排序的多目标模型。这节课的内容分两部分。- 第一部分是模型结构。模型把用户特征、物品特征、统计特征、场景特征作为输入,输出对多个指标的预估。- 第二部分内容是降采样和校准。在实际的推荐系统中,正负样本的比例严重不平衡,负样本数量远多于正样本,因此需要对负样本做降采样。以点击率为例,对负样本做降采样会导致模型高估点击率,因此需要用公式做校准。多条召回通道从几亿篇选出几千篇,粗排给召回的笔记逐一打分,保留几百篇。精排再打分,不做截断,带着分数进入重排。

2023-08-13 17:12:13 905 2

原创 【推荐系统】wss课程-行为序列

用户行为序列 = lastN(用户最近交互过的 N 个物品)用户特征中的 last N特征很有效,加入召回和排序中所有指标都会大涨。用户 lastn行为序列可以反应出用户对什么物品感兴趣。

2023-08-07 00:59:41 180

原创 【推荐系统】wss课程-特征交叉

总结:工业界推荐的精排模型全都是pointwise

2023-08-07 00:07:13 238

原创 【】断点位置与使用

step into mycode(只能跳转当前脚本的函数) 和 step into(也可以跳入外部脚本写的函数 ) 差不多,唯一区别: step into mycode遇到当前脚本写的函数,会进入函数内部执行;如果是其他包导入的函数,就不会跳入那个函数。函数执行一遍,想要出来,回到主程序上,点击 step over。resume program 跳过当前断点,直到运行到下一个断点处。step out 从里面的函数,一层一层往外面的函数跳。step into 运行到函数部分,进入函数内部执行。

2023-07-26 23:57:35 197

原创 【Python】矩阵乘法3种实现方案

两个张量对应的元素相乘(element-wise),在PyTorch中可以通过 torch.mul 函数(或者∗ *∗运算符)实现。3、一般来说,@ 比.dot()方法要慢一点点。dot是numpy里的函数,主要用于求向量相乘,矩阵乘法,矩阵与向量乘法。两个张量矩阵相乘(Matrix product),在PyTorch中可以通过 torch.matmul 函数实现。点积 对于元素相乘并相加,也就是说会降维。2、用这个 @ 运算符可以不用再使用。的意思,也是dot()的意思。1、@ 符在numpy里就是。

2023-07-06 22:02:05 1035

原创 【Faiss】余弦相似分数等于L2归一化再内积

Faiss提供了faiss.METRIC_INNER_PRODUCT 和faiss.METRIC_L2。IndexIVFFlat在参数选择时,使用faiss.METRIC_INNER_PRODUCT。normalize_L2 并 向量的内积 -》 余弦相似性。如果从式子上看 就是分母通分,两个式子是相同的。只需要我们代码加上normalize_L2。说明关于余弦相似性的计算。

2023-07-06 21:42:16 907

原创 【Pandas】dataframe互转

不加字典,则list的内容是行内容;加字典,则list的内容是列内容。如果此时转置会变成这样,

2023-07-06 14:09:11 1176

原创 【计算机视觉】对比学习采样器sampler

L=500,n_label=10,batch=500//10=50,需要采50个batch,每个batch里10个商品*n_instance。总共有31w的图片,要想31w/4800=64.5=64,想要全部图片看一次需要设置这里的epoch=64次,想要看多次则64*多次。每个epoch会过完所有的label,也就是会过完所有的商品,但只会过40*10*12张图片=4800张。在该文档里,category表示类别,label表示商品,instance表示商品不同角度的图片。L个商品,C个类目,

2023-07-05 12:07:40 708

原创 【计算机视觉】对比学习综述(自己的一些理解)

具体做法为:对一个 batch 输入的图片,随机用不同的数据增强方法生成两个 view,对他们用相同的网络 结构进行特征提取,得到 y 和 y’,来自同一张图像的两个不同的表示构成一对正样本对,来自不同图像任意表示对为一对负样本对。从 InfoNCE loss 我们可以看出,增加负例的数量可以防止过拟合,与此同时,负例越多,这个任务的难度就越大,因而通过增加负例的方式可作为一个优化方向。-----》以上下划线。其核心是通过计算样本表示间的距离,拉近正样本, 拉远负样本,因而训练得到的模型能够区分正负例。

2023-07-04 17:04:55 1123

原创 【深度学习】小概念

好用小工具:https://lutzroeder.github.io/netron/ 网络架构图可视化工具。

2023-07-01 01:34:11 433

原创 【深度学习】Pytorch训练模型损失Loss为Nan或者无穷大(INF)原因

Pytorch训练模型损失Loss为Nan或者无穷大(INF)原因

2023-06-30 18:04:56 160

原创 【深度学习】contrastive loss与triplet loss

自己总结一下,三元组如果正负样本足够开,距离足够远,loss为0,因为模型已经学的不错了,不需要继续学习。最好的负样本是,model预测负样本的把握不太大的。如果负样本是很难分的,例如d(a,p)>=d(a,n),即负样本和anchor离的更近,loss是最大的,但模型不容易学出来。并且三元组loss每次只对一条样本(a,p,n)进行loss计算,不考虑其他的负样本。CLIP则是batch_size个样本一起做对比loss的,可以看到bs-1个负样本。对比loss都是bs-1个负样本一起计算的吗。

2023-06-29 19:57:17 724

原创 【计算机视觉】DINO

20230627周二目前只把第一部分看完了。

2023-06-27 11:27:10 952

原创 【Python】Flask web生产环境部署gunicorn+nginx

简单理解,这里就是把原来接触的uWSGI这个包换成了Gunicorn。

2023-04-19 17:00:36 278 1

原创 【推荐系统】model 落地(样本/特征/预测服务)

其他章节一天访问量会有百亿级别,单机是无法满足服务,做分布式模型服务分布式模型服务-> 无状态,机器间不会被依赖一些结论用历史上一个训练好的模型做初始化,用过去一个月,或者是三个月的样本做全量训练。但此时,训练量是很大的,比如,今天用前30天的样本进行训练,明天用新增数据做增量训练,极大加快了模型的训练速度。有利于把最新的样本反应到 model 里面去,对用户、商品冷启都有好的效果。为什么在线特征定期同步给离线平台?——节约性能。

2023-04-16 23:38:22 415

原创 【Python】set用法

【代码】【Python】set用法。

2023-04-10 17:01:30 170

IDEA中Scala官方插件

scala version:2020.2.27 IDEA verison: 2020.2-2020.2.2 官网下载,用于网速慢的情况

2020-09-18

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除