- 博客(100)
- 收藏
- 关注
原创 cuda与pytorch版本兼容问题
查看CUDA版本的几个命令及区别:nvidia-smi、nvcc -V、print(torch.version.cuda)、print(torch.utils.cpp_extension.CUDA_HOME)。如何配置版本兼容的cuda和pytorch
2025-03-09 21:03:51
1406
原创 Visual Studio下载及安装教程(for C++)
Visual Studio下载及安装 -> 创建新项目 -> 创建文件 -> 编写代码并运行
2025-03-04 02:17:28
481
原创 df.explode() 及等价写法
df.explode() 可以按某列的值将一行拆分为多行,需要pandas版本 ≥ 0.25.0。可以使用 print(pd.__version__) 查看pandas版本。
2025-02-15 15:46:58
338
原创 对比category_encoders库和sklearn库中的OrdinalEncoder
OrdinalEncoder 是用来对数据中的分类特征进行编码、转换为整数标签的函数。本文旨在对比 from category_encoders import OrdinalEncoder 和 from sklearn.preprocessing import OrdinalEncoder 的用法。
2025-01-31 17:36:09
318
原创 pd.read_csv() 遇到的3个报错及解决方法
三个报错的解决方法:(1)ParserError: Error tokenizing data. C error: Buffer overflow caught - possible malformed input file.(2)ParserError: field larger than field limit (131072)(3)ParserError: ' ' expected after '"'
2025-01-22 12:41:43
449
原创 【下】王树森《小红书推荐系统公开课》- 课程笔记(特征交叉、行为序列、重排/推荐系统多样性、物品冷启动、涨指标的方法)
特征交叉(因子分解机FM、深度交叉网络DCN、LHUC/PPNet、SENet&Bilinear Cross&FiBiNet);行为序列(用户lastN序列特征、DIN&注意力机制、长序列建模SIM);重排(多样性、物品相似性的度量、MMR多样性算法、滑动窗口&业务规则约束、DPP多样性算法&Hulu的快速求解算法);物品冷启动(优化目标&评价指标、简单的召回通道、聚类召回、Look-Alike人群扩散召回、流量调控、冷启AB测试);涨指标的方法(评价指标、召回、粗精排、多样性、特殊人群、交互行为)
2024-12-15 22:00:17
2278
1
原创 dict.setdefault() 用法
setdefault 是Python中字典的一个方法,用于在字典中查找指定键,如果键存在,则返回对应值(而不是指定的默认值);如果键不存在,则在字典中添加该键,并将其值设置为指定的默认值
2024-09-22 23:46:11
1828
原创 【上】王树森《搜索引擎技术》- 课程笔记(概要、相关性)
1、概要:搜索引擎的基本概念、决定搜索满意度的因素(相关性、内容质量、时效性、个性化)、搜索引擎的评价指标、搜索引擎的链路(查询词处理、召回、排序);2、相关性:定义与分档(4档)、评价指标(离线为AUC和PNR,线上为DCG,它们分别属于pointwise、pairwise、listwise)、文本匹配(词匹配分数包括TF-IDF、BM25,都属于词袋模型;词距分数如OkaTP)、BERT模型结构及线上推理(交叉BERT、双塔BERT)、BERT模型的离线训练(预训练->后预训练->微调->蒸馏)
2024-08-25 13:48:21
2042
原创 训练五步走:前向传播、计算损失、清零梯度optimizer.zero_grad()、反向传播loss.backward()、更新参数optimizer.step()
outputs = model(inputs)前向传播,model为实例化后的模型;loss = criterion(outputs, targets)计算损失,criterion为定义的损失函数;Pytorch自动求导机制会将梯度值累加,故要optimizer.zero_grad()清零,去掉以前的梯度值;loss.backward()反向传播,通过自动微分计算损失函数相对于模型参数的梯度;optimizer.step()根据计算出的梯度更新模型的参数。
2024-06-29 23:08:01
1966
原创 Pytorch中的 .detach().cpu().numpy()
detach() 用于从计算图中分离出一个张量,即返回一个新的张量,与原张量共享相同的数据,但不会再计算梯度;cpu() 将张量移动到CPU内存中,因为numpy仅能处理CPU内存中的数据,不能直接处理GPU上的数据;numpy() 将Pytorch张量转换为numpy数组,共享内存,不会复制数据;总结:.detach().cpu().numpy() 是一个常见的链式方法调用,用于将一个在计算图中(即由autograd跟踪的)张量转换为numpy数组
2024-06-24 23:28:57
1399
原创 Pytorch中的数据与优化器:Dataset、TensorDataset、DataLoader、optimizer.param_groups
torch.utils.data.Dataset、torch.utils.data.TensorDataset、torch.utils.data.DataLoader、optimizer.param_groups
2024-06-22 17:19:56
1857
原创 【上】王树森《小红书推荐系统公开课》- 课程笔记(推荐系统基础、召回、排序)
推荐系统基础(基本概念、链路、AB测试);召回(ItemCF、Swing、UserCF、离散特征处理、矩阵补充、双塔模型、双塔模型+自监督学习、Deep Retrieval召回、其他召回通道、曝光过滤+Bloom Filter);排序(多目标排序模型、MMoE、预估分数融合公式、视频播放时长和完播率建模、特征及处理、粗排三塔模型)
2024-05-22 23:15:44
7983
14
原创 TensorFlow常用乘法函数总结:tf.multiply()、*、tf.matmul()、@、tf.scalar_mul()、tf.tensordot()、tf.einsum()
tf.multiply() 或 * 为元素对位相乘,即哈达玛积,要求两个矩阵shape一致,或其中一个维度为1。tf.matmul() 或 @ 为矩阵乘法,参与运算的是最后两维形成的矩阵,不支持矩阵-向量乘法或两个向量的点积。tf.scalar_mul() 为标量和张量相乘,即参数之一为标量。外积 tf.tensordot(a, b, axes=0),点积 tf.tensordot(a, b, axes=1),a和b都是一维向量。tf.einsum() 是通用函数模板,numpy和Pytorch有类似的用法
2024-04-28 18:05:44
3117
原创 Pytorch常用乘法函数总结:torch.mul()、*、torch.mm()、torch.bmm()、torch.mv()、torch.dot()、@、torch.matmul()
torch.mul() 和 * 等价,为element-wise乘,可广播;torch.mm() 二维矩阵乘法,torch.bmm() 三维批量矩阵乘法,均不可广播;torch.mv(mat, vec) 为矩阵向量乘法,不可广播;torch.dot() 仅支持两个一维向量点积,返回一个标量数字;@ 矩阵乘法,等价于 torch.dot() + torch.mv() + torch.mm();torch.matmul() 矩阵乘法,与 @ 类似,但它不止一维二维,可扩高维,可广播
2024-04-26 16:19:48
2396
1
原创 numpy常用乘法函数总结:np.dot()、np.multiply()、*、np.matmul()、@、np.prod()、np.outer()
np.dot() 向量点积+矩阵乘法;np.multiply() 或者 * 在array下均为元素对位乘,但在mat/matrix下后者变为矩阵乘法;np.matmul() 或者 @ 完全等价,为矩阵乘法;np.prod() 返回数组中元素的乘积,可指定axis;np.outer() 外积,拿第一个向量的元素分别与第二个向量所有元素相乘得到的结果的一行,以此类推
2024-04-25 03:03:49
11860
2
原创 numpy里的随机数、axis、广播机制
感觉【随机数】、【axis】、【广播机制】这三种操作在numpy里比较常用,且容易导致shape报错,故本文放在一起总结下
2024-04-20 00:06:37
713
原创 【8章】Spark编程基础(Python版)
Spark MLlib(机器学习流水线、转换器、评估器)、逻辑斯蒂回归、特征抽取(TF-IDF)、特征转换(标签和索引的转换)、iris案例(逻辑斯蒂回归分类器、决策树分类器)
2023-09-03 23:21:41
996
原创 【chap6-字符串】用Python3刷《代码随想录》
双指针法(反转字符串);使用整体反转+局部反转就可以实现反转单词顺序的目的;KMP算法(解决两类问题:匹配问题&重复子串问题)
2023-07-31 14:15:57
184
原创 数据透视表 - 学习笔记
若希望上述修改的布局被保持成默认:文件 - 更多 - 选项 - 数据 - 编辑默认布局 - 导入(若想恢复,点击重置为Excel默认布局)(1)若把 “项” 改为 “求和”,如显示最小-10-求和,即返回求和项:数量(累加值)一直到第一个≥10的为止。假设每个姓名下面的日期都是连续的,如1月1日,1月2日... 计算日环比 = (今天-昨天) / 昨天。光标在字母上时,行标签后的筛选是筛选A-E;右键 - 值显示方式 - 差异 或 右键 - 值字段设置 - 值显示方式 - 差异。以上为环比的分子部分。
2023-06-22 20:33:29
4417
1
原创 DataFrame/字典/列表之间的相互转换
pandas提供了函数,将DataFrame类型转化为字典类型对于写入的orient不同,字典的构造方式也不同。
2023-06-01 10:18:55
974
原创 sklearn计算余弦相似度:sklearn.metrics.pairwise.cosine_similarity()
输入是 n个长度相同的 list或array,计算这 n个list 两两之间的余弦相似性。最后生成的是一个 n*n 的相似性矩阵s,s[i][j] 表示输入中第i个和第j个元素的余弦相似性。显然,该相似性矩阵对角线上的元素全为1,且是对称矩阵,即 s[i][j] = s[j][i]
2023-05-30 20:59:48
103
原创 pandas过滤保留含两个以上商品的品牌
有一个DataFrame有两列:第一列是商品的id,第二列是商品的品牌。完成以下3个请求:(1)统计一共有多少个品牌,输出为列表pinpai_list;(2)每个品牌可能包含的商品数量是不同的,只保留含两个以上商品的品牌;(3)筛选出 pinpai_list 里品牌的行,并将 id 列设置为索引。
2023-05-30 18:56:33
21
原创 df[‘某列‘] & df[[‘某列‘]] 的区别
df['某列'] 取某列的值,传入的是列标签名称,返回的结果是Series。df[['某列']] 取某整列,传入的是列标签列表,返回的结果是DataFrame。.apply() 方法是对DataFrame用的,而不是Series(会返回NaN)。
2023-05-30 17:42:03
45
原创 pd.read_csv() 中的两个参数 error_bad_lines & low_memory
提示输入数据列有混合类型,而pandas默认要找到可以使所占用空间最小的类型来储存你的数据。low_memory设置为false之后,pandas就不进行寻找,直接采用较大的数据类型来储存。header只有两个字段名,但数据的第407行却出现了3个字段(可能是该行数据包含了逗号,或者确实有三个部分),导致pandas不知道该如何处理。把第407行多出的字段删除;将low_memory设置为false。
2023-05-30 16:43:01
5608
1
原创 LeetCode - 168. Excel表列名称
给你一个整数,返回它在 Excel 表中相对应的列名称。例如:A -> 1B -> 2C -> 3...Z -> 26AA -> 27AB -> 28...
2023-04-21 01:27:13
562
2
原创 Python中的arg,*args,**kwargs用法
*args和**kwargs是Python中可变参数的两种形式,且*args必须放在**kwargs的前面,因为位置参数在关键字参数的前面。*args可以将用户指定的任意多个参数打包为一个元组传到函数中进行进一步运算;**kwargs将用户传入的参数打包为字典传入函数中用于进一步的计算
2023-03-16 01:25:00
4622
原创 【力扣-SQL】非会员剩余题 刷题知识点总结
四舍五入:round(value, n);sum()和count()中使用if判断条件:sum(if(条件,列值,0)) 和 count(if(条件,1,null)) ;窗口函数rank()、dense_rank() 和 row_number() ;向上窗口函数lead() 和向下窗口函数lag();窗口函数的两个典型应用问题:分组排名;连续出现N次
2023-03-14 02:24:34
463
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人