- 博客(59)
- 资源 (1)
- 收藏
- 关注
原创 我的创作纪念日
这些反馈不仅激励我继续创作,也让我意识到我的内容对他人是有价值的。我将日常学习和工作中的发现和思考转化为文字,这不仅帮助我巩固知识,也让我能够与更广泛的读者群体交流思想。我计划在未来继续深化我的技术专长,并探索新的领域。同时,我也希望能够通过我的创作影响更多的人,无论是通过教学、技术交流还是通过开源项目。这是我过去写得最好的一段代码之一,它展示了快速排序算法的 Python 实现,简洁而高效。
2024-07-25 08:07:37
224
原创 【无标题】12
每个聚类中的问题详细信息。# 生成 HTML 格式的输出。# 使用 KMeans 聚类。# 读取 Excel 文件。# 获取问题描述的嵌入向量。# 输出每个问题所属的类别。# 保存为 HTML 文件。# 调用函数进行聚类和总结。
2024-07-09 15:05:12
419
原创 修改版本1
gr.inputs.Slider(minimum=2, maximum=30, step=1, default=15, label="KMeans 聚类数")gr.inputs.Textbox(lines=10, label="直接输入文本(每行格式:咨询数据类型: 问题描述)"),gr.inputs.File(label="上传Excel文件(包含'咨询数据类型'和'问题描述'列)"),df = pd.DataFrame(data, columns=['咨询数据类型', '问题描述'])
2024-07-09 13:43:48
390
1
原创 聚类方法1
gr.inputs.Slider(minimum=2, maximum=30, step=1, default=15, label="KMeans 聚类数")description="上传一个包含'咨询数据类型'和'问题描述'列的Excel文件,选择聚类方法和相应参数,进行嵌入和聚类。gr.inputs.File(label="上传Excel文件(包含'咨询数据类型'和'问题描述'列)"),outputs=gr.outputs.HTML(label="聚类结果"),title="句子嵌入和聚类",
2024-07-09 13:19:52
436
原创 gradio
gr.inputs.Slider(minimum=2, maximum=30, step=1, default=15, label="KMeans 聚类数")gr.inputs.Textbox(lines=5, placeholder="请输入句子列表,每个句子用逗号分隔", label="句子输入"),description="输入一组用逗号分隔的句子,选择聚类方法和相应参数,进行嵌入和聚类。outputs=gr.outputs.HTML(label="聚类结果"),title="句子嵌入和聚类",
2024-07-09 11:23:39
376
1
原创 gradio
gr.inputs.Slider(minimum=2, maximum=30, step=1, default=15, label="KMeans 聚类数")gr.inputs.Textbox(lines=5, placeholder="请输入句子列表,每个句子用逗号分隔", label="句子输入"),outputs=gr.outputs.HTML(label="聚类结果"),title="句子嵌入和聚类",# 使用 Gradio 构建用户界面。# 构建HTML输出。# 启动 Gradio 应用。
2024-07-09 10:28:46
453
1
原创 Gradio聚类
将Gradio界面中的输出类型改为`gr.outputs.HTML`,并在返回结果时生成HTML格式的聚类结果。- 在`cluster_sentences`函数中,根据聚类结果生成HTML格式的字符串,包含每个类别的标题和句子列表。- 将Gradio界面的输出类型改为`gr.outputs.HTML()`,以支持HTML格式的聚类结果展示。- 在`cluster_sentences`函数中构建HTML格式的输出,以便在界面上直观显示聚类结果。
2024-07-08 23:46:10
409
原创 力扣(LeetCode)容器装水问题
给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai)。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。链接:https://leetcode-cn.com/problems/container-with-most-water。数组给出的是挡板的高度,看看两个板之间能装装的最多水,也就是求那个面积。输入:[1,8,6,2,5,4,8,3,7]
2023-11-06 21:09:48
281
1
原创 推荐算法面试
现在的大模型(如GPT-3、BERT等)在自然语言处理和其他领域取得了巨大成功,但也面临挑战,例如计算资源的需求和模型的可解释性问题。这些大模型的出现增加了算法工程师处理复杂任务的能力,但也要求算法工程师具备更多的领域知识、深入了解模型的结构和原理,以及对实际问题的抽象和建模能力。在分类问题中使用MSE损失函数可能不太合适,因为它对概率的微小差异不够敏感,而且在分类问题中通常需要使用激活函数(如sigmoid或softmax)将输出映射到概率空间,使得MSE的数学性质不再适用。
2023-10-30 19:19:26
670
原创 推荐算法 面试
其中,$g_t$表示当前时间步的梯度,$\theta_t$表示参数,$\alpha$是学习率,$\epsilon$是一个小的常数,用于防止除零错误。总之,注意力机制是一种用于学习序列数据中不同部分之间关系的技术,而Transformer是一种深度学习模型架构,引入了自注意力机制,广泛用于自然语言处理任务中,取得了显著的成功。总之,Adam优化器结合了动量和自适应学习率的特点,能够在深度学习模型的训练中高效地更新参数,加速收敛,并且对不同参数的学习率进行自适应调整,从而在实践中表现出色。
2023-09-23 19:44:20
340
原创 Linux目录下解压分卷压缩.zip文件
.在Linux目录下,如果要解压出来,可以先使用zip -F命令修复分卷,合成正确的一个压缩文件再进行解压
2023-03-06 17:48:50
1795
1
原创 ICLR 2023 | LightGCL: 简单且高效的图对比学习推荐系统
近年来,图神经网络(Graph Neural Networks,或简称 GNN)在基于图的推荐系统上展现了良好的效果,而这得益于其整合相邻结点信息以进行协同过滤(Collaborative Filtering)的能力。总的来说,基于 GNN 的推荐模型在用户-物品交互图上进行多层的信息传递,以此挖掘高阶的(high-order)连接信息。很大一部分基于 GNN 的协同过滤模型采用了监督学习(Supervised Learning)的范式,而这需要大量而准确的带标签信息用以训练。
2023-03-03 17:04:52
1924
5
原创 优化器的选择
在实际的使用过程中,一般会选择Adam和RmsProp两个优化器。另外,选用什么样的算法很大程度上取决于自己的损失函数,所以需要对自己的网络结构和损失函数的特点有一些了解。
2022-11-17 10:23:12
636
原创 常用激活函数的选取
输出层的激活函数的选择要以业务要求进行选择,具体业务要求要进行具体分析。比如二分类问题常常使用sigmoid函数作为输出层的激活函数,多分类问题则常常使用softmax函数作为输出层的激活函数,线性回归问题可以直接使用线性函数作为激活函数。
2022-11-17 10:06:35
604
原创 推荐系统对比学习中的损失函数
最近在基于对比学习做实验,github有许多实现,虽然直接套用即可,但是细看之下,损失函数部分甚是疑惑,故学习并记录于此。关于对比学习的内容网络上已经有很多内容了,因此不再赘述。本文重在对InfoNCE的两种实现方式的记录。
2022-10-06 21:43:54
1375
原创 阅读《特征工程入门和实践》这本书
一、特征理解首先分析得到的数据是结构化数据还是非结构化数据,通常我们分析的是结构化数据,即表格形式的;对于非结构化数据,需要对其进行清洗和组织。得到结构化数据后,分析哪些是定量特征,哪些是定性特征。所谓定量特征,通常也称之为数值型特征,就是可以用数值衡量的,比如身高,体重,温度等;定性特征通常也称之为类别型特征,如性别,职级等。需要注意的是,并不是带有数字的就一定是定量特征,比如性别,可以表示为男:0,女:1,这并不代表他就是定量特征。分析好定量还是定性后,对特征进行简单处理,例如身高对应的数据..
2022-05-07 15:41:44
455
原创 论文阅读 Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for Recommendation
title:Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for Recommendationlink:https://arxiv.org/pdf/2112.08679.pdfcode:https://github.com/Coder-Yu/QRecfrom:SIGIR 20221. 导读本文是针对图对比学习在推荐系统中的应用而提出的相关方法SimGCL。通常做对比学习的时候,需要对数据进行增.
2022-04-18 09:27:45
1057
原创 论文阅读《Multi-view Multi-behavior Contrastive Learning in Recommendation》
多行为推荐(MBR)旨在联合考虑多种行为以提高目标行为的推荐效果。我们认为 MBR 模型应该:(1)对用户不同行为之间的粗粒度共性进行建模,(2)在多行为建模中同时考虑局部的序列视图和全局图视图,以及(3)捕获细粒度的用户的多种行为之间的差异。在这项工作中,我们提出了一种新的多行为多视图对比学习推荐(MMCLR)框架,包括三个新的对比学习任务,分别用于解决上述挑战。多行为对比学习旨在使同一用户在每个视图中的不同用户单行为表示相似。多视图对比学习试图对其用户的序列视图和图形视图表示。行为区分对比学习侧重于
2022-04-14 10:51:46
1181
原创 论文阅读《Self-supervised Graph Learning for Recommendation》
总结文章认为当前的推荐算法往往是基于GCN的结构监督学习,更侧重于网络中度数高(即发生交互多)的节点而忽视了低度数节点,此外还容易受到交互噪声的影响。因此文章将自监督学习Self-supervised Learning引入到图结构数据上,提出了SGL框架,通过利用节点舍弃、边舍弃和随机游走三种方法,为同一个节点生成不同视图,从而达到了在原有数据上的增强,进一步提高了推荐算法的稳健型和效果。下图为传统监督图学习和自监督图学习的区别:1 GCN结构和监督学习现有推荐算法往往都基于GCN结构,即通
2022-04-12 20:31:36
959
原创 Latex- Texlive+Texstudio 安装和使用
论文写作神器:Latex- Texlive+Texstudio 安装和使用一、简介LaTeX的使用需要2个重要东西:1.选择一个TeX发行版进行安装(根据个人系统,本文选择Texlive Win10)。2.选择合适的Latex编辑器(如CTex的Winedt,本文选择Texstudio)二、TeXlive安装本人下载的TeXlive是最新版的(如下图),下载地址:清华Texlive镜像。安装程序为texlive2021-20210325.iso。安装步骤:1. 解压Texlive
2022-04-10 15:32:03
34523
6
原创 Graph Meta Network for Multi-Behavior Recommendation精读
个性化推荐系统(Recommender Systems)作为解决信息过载的有效技术,已经被广泛运用于各类线上应用系统,比如电子商务以及在线视频平台。在当前的推荐系统技术中,协同过滤逐渐演变成为非常重要的模型框架用于通过用户历史的交互行为学习复杂的用户兴趣爱好。其中基于深度学习框架的推荐算法通过有效地学习用户和商品的表征信息,已经为大量的实际推荐平台强劲助力。论文标题:Graph Meta Network for Multi-Behavior Recommendation论文作者:夏良昊 (华
2022-04-05 17:07:10
1283
1
原创 2021-ICDM-Hyper Meta-Path Contrastive Learning for Multi-Behavior Recommendation | 精读
摘要现有的大多数工作都没有考虑用户不同行为之间的复杂依赖关系。他们利用简单固定的方案,如邻域信息聚合或向量的数学计算,融合不同用户行为的嵌入,以获得统一的嵌入来表示用户的行为模式,这些模式将用于下游推荐任务。在本文中,作者首先提出了超元路径的概念来构造超元路径或超元图,以明确说明用户不同行为之间的依赖关系。如何从超元路径为用户获得统一的嵌入,同时避免前面提到的限制是至关重要的。由于最近图对比学习的成功,作者利用它来自适应地学习用户行为模式的嵌入,而不是指定一个固定的方案来理解不同行为之间的依赖关系
2022-04-05 16:50:51
1338
1
原创 2019-TKDE-Learning to Recommend With Multiple Cascading Behaviors | 精读
本文是一篇多任务学习的文章, 里面的设计思路非常值得借鉴,也较为符合我们的直观理解,实践中也确实带来了不错的效果。大多数现有的推荐系统仅利用一种类型的用户行为数据,例如电子商务中与转化率的业务关键绩效指标(KPI)直接相关的购买行为。除了关键的行为数据外,作者认为其他形式的用户行为也提供了有价值的信号,如浏览、点击、向购物车添加产品等。为了向用户提供质量建议,应适当考虑它们。为了充分利用多种行为数据中的信号,作者在多任务学习框架的基础上进行了联合优化,将对一种行为的优化视为一项任务。在两个真实数
2022-04-05 16:34:16
934
1
原创 《LR_GCCF》推荐系统模型解读
《LR_GCCF》1.基于GCN推荐模型的问题:1. 基于GCN的推荐模型带有非线性激活函数,所以在large user-item graphs中的模型训练起来非常困难。2. 由于图卷积运算的过度平滑效应都不能太深,大多数基于GCN的模型无法对更深层次进行建模。2.本文的优化:1. 证明了去除非线性会提高推荐性能,在每一层的特征传播的时候,是使用简单的特征传播而不是非线性变换2. 提出了一种残差网络结构,该结构是专门为CF设计的,具有用户项交互建模功能,可以缓解稀疏用户项交互数据..
2022-04-01 15:38:56
3521
原创 pytorch复现NCF完整代码
import pandas as pdimport numpy as npimport mathfrom collections import defaultdictimport heapqimport scipy.sparse as spimport torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.utils.dataimport torch.backends.cudnn as cudnn..
2022-03-31 21:30:19
1228
2
原创 pytorch复现NCF
然后今天说的是 load_dataset做了什么事情。先上代码:导包import pandas as pdimport numpy as npimport mathfrom collections import defaultdictimport heapqimport scipy.sp
2022-03-27 21:35:04
3096
8
原创 快速了解推荐系统多任务学习
导读:我们在优化推荐效果的时候,很多时候不仅仅需要关注 CTR 指标,同时还需要优化例如 CVR ( 转化率 )、视频播放时长、用户停留时长、用户翻页深度、关注率、点赞率这些指标。那么一种做法是对每个任务单独使用一个模型来优化,但是这样做的缺点显而易见,需要花费很多人力。其实很多任务之间都是存在关联性的,比如 CTR 和 CVR。那么能不能使用一个模型来同时优化两个或多个任务呢?其实这就是 Multi-task 多任务的定义。本文主要总结了近两年工业界关于 Multi-task 模型在推荐场景的一些应用和工
2022-03-24 11:57:53
505
原创 多模态推荐系统的最新进展
一、论文列表1. Recommendation by Users'Multimodal Preferences for Smart City Applicationshttps://ieeexplore.ieee.org/document/9152003这项工作提出了一种基于用户多模态偏好的推荐模型。以往的使用多模态推荐的工作都至少存在以下的一个缺点:1)采用浅层模型,不能很好地捕获高层概念信息;2) 未能捕获用户个性化的视觉偏好。该论文提出了UMPR(deep use...
2022-03-23 14:49:27
1698
原创 Lightgcn代码整体流程详解
本周学习汇报学习内容:复习研究前几周看的GCN相关论文代码 深刻理解学习Light_GCN代码 学习多任务在推荐系统发面的应用一、GCN模型的基本推荐流程:1)训练时,用户和物品的初始特征向量可以是随机生成的,也可以是预训练的属性特征,通过模型参数进行转换和学习后生成最终的特征表达,通过最终的特征表达的内积来表示用户u对项目i的评分预测。每个epoch里,设置一个batchsize,将训练集分为Iteration(n_batch= 训练集中用户个数除以batch_size)个batch,每
2022-03-18 18:31:54
4019
10
原创 NGCF Light_GCN Ultra_GCN等模型编写代码的推荐流程
NGCFLight_GCN Ultra_GCN等模型的推荐流程:1)训练时,用户和物品的初始特征向量可以是随机生成的,也可以是预训练的属性特征,通过模型参数进行转换和学习后生成最终的特征表达,通过最终的特征表达的内积来表示用户u对项目i的评分预测。每个epoch里,设置一个batchsize,将训练集分为Iteration(n_batch= 训练集中用户个数除以batch_size)个batch,每个batch更新一次模型参数,每个epoch里计算一次loss函数,训练10个epoch的时候就是更新了.
2022-03-17 09:55:12
696
原创 Epoch、Iteration、Batchsize三个概念的理解
神经网络中Epoch、Iteration、Batchsize相关理解和说明batchsize:中文翻译为批大小(批尺寸)。简单点说,批量大小将决定我们一次训练的样本数目。batch_size将影响到模型的优化程度和速度。为什么需要有Batch_Size:batchsize的正确选择是为了在内存效率和内存容量之间寻找最佳平衡。Batch_Size的取值:全批次(蓝色)如果数据集比较小,我们就采用全数据集。全数据集确定的方向能够更好的代表样本总体,从而更准确的朝向极.
2022-03-16 10:08:00
596
原创 论文阅读和模型解读 UltraGCN: Ultra Simplification of Graph Convolutional Networks for Recommendation
论文阅读:UltraGCN: Ultra Simplification of Graph Convolutional Networks for Recommendation 核心代码注释解读 个人认为这篇论文的主要贡献点就是用几个constraint loss近似替代了GCN。主要包括一个模型主损失,user-item图带来的损失,item-item的约束损失。UltraGCN模型代码注释解读:class UltraGCN(nn.Module):def __init__(...
2022-03-11 17:25:12
7426
3
原创 pytorch早停法
作为深度学习训练数据的trick,结合交叉验证法,可以防止模型过早拟合。早停法是一种被广泛使用的方法,在很多案例上都比正则化的方法要好。是在训练中计算模型在验证集上的表现,当模型在验证集上的表现开始下降的时候,停止训练,这样就能避免继续训练导致过拟合的问题。其主要步骤如下:1. 将原始的训练数据集划分成训练集和验证集2. 只在训练集上进行训练,并每隔一个周期计算模型在验证集上的误差3. 当模型在验证集上(权重的更新低于某个阈值;预测的错误率低于某个阈值;达到一定的迭代次数),则停止训练4. 使用
2022-03-05 10:19:05
2941
原创 论文阅读:LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation
论文阅读:LightGCN: Simplifying and Powering Graph Convolution Network for Recommendationpaper:https://arxiv.org/abs/2002.02126code:https://github.com/kuandeng/LightGCNNGCF和LightGCN模型展示对比何向南老师组的两大必读论文NGCF和LightGCN,分别发在SIGIR19’和SIGIR20’。LightGCN模型的总体...
2022-03-04 21:36:00
3881
原创 GPU版本Pytorch安装教程
1.首先Nvidia官网下载cudahttps://developer.nvidia.cn/cuda-downloadshttps://developer.nvidia.cn/cuda-downloads根据自己电脑选择 我这里是Windows11 点击下载下载完成之后完成安装即可。然后打开Aonconda 里的Prompt命令窗口使用conda创建虚拟环境使用如下命令 其中xxx是你的环境名自定义 后面是python版本conda create -n xxx py...
2022-03-04 21:27:59
896
原创 推荐系统评价指标 HR MRR NDCG
HR(hit rate) 命中率。用户想要的东西,推荐系统有没有推荐出来,强调预测的"准确性"N:表示用户的访问总量,就是用户真实点击的个数。hit(i) :如果推荐系统推荐商品i,hit(i)就为1,否则为0。MRR(平均倒数排名) 关心找到的这些项目,是否放在用户显眼的位置里,即强调顺序性。N:表示用户的访问总量,就是用户真实点击的个数。pi:表示itemi在推荐结果中出现的位置,如果没有出现,则pi就为+∞。NDCG(Normalized ...
2022-03-04 20:38:35
2777
原创 学习图神经网络相关内容
本周学习情况本周学习任务:学习图神经网络相关内容图基本知识(连通分量、度中心性、特征向量中心性、中介中心性、接近中心性、PageRank、HITS)并使用networkx包简单实践。学习了相关数学知识(谱图理论和图的傅里叶变换),并进行了公式和性质的推导。图卷积的数学推导利用了谱图理论和傅里叶变换。卷积核用的是切比雪夫多项式,通过将谱图卷积中的切比雪夫多项式的K设定为1,该模型复杂性是线性的。并利用了trick处理过拟合和减少操作的数量:1. 限制参数的数量,共享参数 θ= θ0...
2022-03-03 21:33:02
1889
原创 论文阅读:Neural Graph Collaborative Filtering
论文阅读:Neural Graph Collaborative Filtering论文链接:Neural Graph Collaborative Filtering, SIGIR’19原理:在user-item interaction graph 上使用 GNN 来学习 user 向量和item 向量,用户向量和项向量的内积来预测评分。区别:大部分论文使用 GNN 只是学习 user 向量,这篇论文的 item 向量也是使用GNN学习的大部分论文是在知识图谱KG或者社交网络Socia
2022-03-03 21:12:05
533
原创 安装好cuda 和pytorch之后,如何判断 GPU是否是可用的?
验证GPU是否可用:import torch print(torch.cuda.is_available())
2022-03-03 21:07:10
868
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人