
算法
文章平均质量分 85
goTsHgo
这个作者很懒,什么都没留下…
展开
-
FAISS进行高效的向量检索 原理详解
FAISS(Facebook AI Similarity Search)是由Facebook研发的一个用于高效相似性搜索和密集向量聚类的库。它特别适用于处理大规模向量数据库和提供快速的近邻搜索。FAISS高效的原因在于其专门的索引结构和优化的搜索算法。以下将详细解释FAISS的底层原理和源代码层面的内容。原创 2024-12-24 15:34:56 · 829 阅读 · 0 评论 -
非线性“压缩”函数(squash函数)详解
非线性“压缩”函数()是指将输入 x压缩到某个有限范围 [a,b] 内的一类函数。输入值 x 可以是任意实数,而输出值 f(x) 总是在某个有界范围内。对于一个输入向量,Softmax 定义为:。原创 2024-12-18 10:13:11 · 1004 阅读 · 0 评论 -
矩阵分解(MF召回法) 求解
用户-物品交互矩阵构建完成后,MF召回方法通过矩阵分解将用户和物品的隐含关系建模,得到用户向量和物品向量。矩阵分解使用随机梯度下降进行训练,优化损失函数,得到用户矩阵和物品矩阵。生成推荐结果使用用户-物品隐向量的内积作为预测评分,从而得到每个用户的推荐结果。部署到生产环境,使用 Flask 框架将推荐模型部署为 REST API。通过以上步骤,可以实现一个简单的 MF 召回方法,并部署到生产环境中,为用户实时提供个性化推荐。原创 2024-11-08 17:33:13 · 873 阅读 · 0 评论 -
基于用户画像的召回方法
基于用户画像的召回方法能够帮助推荐系统更精确地定位到用户的需求和偏好,提高推荐的个性化程度和用户满意度。在实现过程中,需要不断优化用户画像的构建过程和召回算法,以适应不同的业务需求和数据环境。通过将模型部署为API,可以实现实时的推荐服务,更好地服务于线上用户。原创 2024-11-07 17:03:12 · 381 阅读 · 0 评论 -
标签权重的计算方法之时间衰减
通过时间衰减技术,我们可以使标签权重更关注近期的行为数据。这种方法对时间敏感的应用场景非常有效。原创 2024-11-07 16:46:58 · 1264 阅读 · 0 评论 -
标签权重的计算方法之贝叶斯平滑
我们需要计算对数似然函数的一阶导数和二阶导数,用于牛顿法迭代更新参数。# 计算一阶导数# 计算二阶导数贝叶斯平滑通过 Beta 分布进行平滑估计,是处理稀疏标签数据的一种有效方法。我们通过定义对数似然函数、使用牛顿法迭代优化参数 α 和 β,最终得到平滑后的标签权重,从而提高模型的稳定性。原创 2024-11-07 16:20:17 · 1218 阅读 · 0 评论 -
机器学习——排序特征(Ranking Features)原理详解
通过以上步骤,我们了解了排序特征的原理及实现过程。排序特征通过特征工程和点对、列表排序算法学习样本之间的相对顺序。RankNet 模型实现了点对比较,通过神经网络生成特征的排序分数。代码实现展示了如何构建排序特征并进行训练与推理,帮助理解排序特征的应用。这种方法适用于推荐系统、信息检索等需要排序的场景,可以显著提升模型效果。原创 2024-11-07 15:44:02 · 1257 阅读 · 0 评论 -
生产环境中使用:带有核函数的 SVM 处理非线性问题
通过以上步骤,即使是初学者也可以成功地将核方法应用于 SVM 中,处理非线性分类问题,并将训练好的模型部署到生产环境中。核 SVM 是一个强大的非线性分类工具,尤其适用于小到中等规模的数据集。通过合理的标准化、模型保存、加载和 API 部署,可以将这一流程轻松地迁移到实际生产环境中。原创 2024-11-07 14:57:42 · 969 阅读 · 0 评论 -
生产环境中添加多项式特征实现:将逻辑回归应用于非线性关系
通过上述步骤,即使是初学者也能够将逻辑回归应用于非线性关系,并将模型部署到生产环境中。通过多项式特征转换,逻辑回归能够有效处理非线性数据集,提供可靠的分类结果。原创 2024-11-07 14:50:42 · 376 阅读 · 0 评论 -
逻辑回归处理非线性关系与支持向量机的性能对比
逻辑回归:通过特征变换,可以让逻辑回归在一定程度上适应非线性关系。但由于需要显式地进行特征扩展,维度较高时会增加计算复杂度。支持向量机(SVM):核 SVM 是更直接处理非线性问题的选择,核技巧允许模型在隐空间中进行分类,性能更佳。SVM 在复杂非线性数据上通常表现更好,但在数据量较大时会受到计算瓶颈的限制。总体而言,如果面对复杂的非线性关系,且数据集不大,可以优先选择 SVM;若数据规模较大或需要模型的解释性,则可以考虑使用特征变换后的逻辑回归模型。原创 2024-11-07 13:46:22 · 1111 阅读 · 0 评论 -
自然语言处理——Hugging Face 详解
Hugging Face 通过提供易用的 API、预训练模型和社区支持,极大地降低了 NLP 和深度学习的使用门槛。它的库让研究人员和开发者能够快速上手并在各种任务上获得很好的效果。通过微调、模型共享和高效的训练工具,Hugging Face 为 NLU(自然语言理解)任务和 NLP 研究提供了强大的支持,帮助推动了该领域的进步。原创 2024-11-05 17:09:48 · 3115 阅读 · 0 评论 -
HyperLogLog 的原理 详解
HyperLogLog 是一个基于哈希的概率算法,具有非常高的内存效率,尤其适用于需要快速估算基数的大数据场景。它通过哈希映射和前导零统计来估计基数,在保证低空间复杂度的同时,仍然提供较为准确的结果。尽管它是一个近似算法,但在很多实际应用中,估算误差足够小,能够满足需求。原创 2024-11-05 16:40:06 · 1706 阅读 · 0 评论 -
布隆过滤器的原理和使用示例
位数组大小 m:大约 96,079,179 位(约 12 MB)。哈希函数数量 k:推荐选择 7。这些参数的选择能有效地将假阳性率控制在 1% 左右,适用于 1000W 个独特元素的场景。原创 2024-11-04 17:40:20 · 776 阅读 · 0 评论