FM算法介绍

简介: 概述FM (Factorization Machine) 算法可进行回归和二分类预测,它的特点是考虑了特征之间的相互作用,是一种非线性模型,目前FM算法是推荐领域被验证的效果较好的推荐方案之一,在诸多电商、广告、直播厂商的推荐领域有广泛应用。

概述

FM (Factorization Machine) 算法可进行回归和二分类预测,它的特点是考虑了特征之间的相互作用,是一种非线性模型,目前FM算法是推荐领域被验证的效果较好的推荐方案之一,在诸多电商、广告、直播厂商的推荐领域有广泛应用。

PAI平台的FM算法基于阿里内部大数据的锤炼,具备性能优越、效果突出的特点。具体使用方式可以参见首页模板:

使用FM算法整体流程需要包含FM训练和FM预测组件,可以搭配评估组件使用。

输入数据要求

目前PAI的FM算法只支持libsvm格式的数据,数据需要包含两列,分别是特征列和目标列。

  • 目标列:Double类型
  • 特征列:String类型,特征要以k:v格式输入,特征直接以逗号分隔

如图:

组件说明

1.FM训练

在“参数设置”中可以设置回归或者分类两种模式:

PAI命令

参数 解释 取值
tensorColName 训练的特征列名 (kv格式的字符串,例如"1:1.0,3:1.0",特征的id必须是非负整数,取值范围是[0,Long.MAX_VALUE),可以不连续) 必选
labelColName label列名 (要求是数值类型,如果任务类型是binary_classification,那么label值必须是0或1) 必选
task 任务类型 必选,"regression" or "binary_classification"
numEpochs 迭代数 可选,默认值10
dim 因子数,字符串,用逗号分隔的三个整数,表示0次项、线性项、二次项的长度 可选,默认值 "1,1,10"
learnRate 学习率 可选, 默认值 0.01
lambda 正则化系数,字符串,用逗号分隔的三个浮点数,表示0次项、线性项、二次项的正则化系数 可选, 默认值 "0.01,0.01,0.01"
initStdev 参数初始化标准差 可选, 默认值0.05

备注1:

  • 如遇到训练发散,可适当降低学习率的值

2.FM预测

PAI命令

参数 解释 取值
predResultColName 预测结果列名 可选,默认"prediction_result"
predScoreColName 预测得分列名 可选,默认"prediction_score"
predDetailColName 详细预测信息列名 可选,默认"prediction_detail"
keepColNames 保持到输出结果表的列 可选,默认全选

评估结果

在首页模板案例的数据情况下,使用PAI FM生成的模型可以达到接近0.97的AUC

相关实践学习
使用PAI+LLaMA Factory微调Qwen2-VL模型,搭建文旅领域知识问答机器人
使用PAI和LLaMA Factory框架,基于全参方法微调 Qwen2-VL模型,使其能够进行文旅领域知识问答,同时通过人工测试验证了微调的效果。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
目录
相关文章
|
Ubuntu 开发工具
Ubuntu更换阿里云软件源
Ubuntu更换阿里云软件源
146224 0
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
Cosmos on PAI系列一:PAI-Model Gallery云上一键部署NVIDIA Cosmos Reason-1
本篇文章介绍 Cosmos 最新世界基础模型 Cosmos Reason-1 如何在阿里云人工智能平台 PAI 上进行快速部署使用。
|
11月前
|
人工智能 JSON 算法
【解决方案】DistilQwen2.5-DS3-0324蒸馏小模型在PAI-ModelGallery的训练、评测、压缩及部署实践
DistilQwen 系列是阿里云人工智能平台 PAI 推出的蒸馏语言模型系列,包括 DistilQwen2、DistilQwen2.5、DistilQwen2.5-R1 等。本文详细介绍DistilQwen2.5-DS3-0324蒸馏小模型在PAI-ModelGallery的训练、评测、压缩及部署实践。
|
5月前
|
人工智能 移动开发 数据可视化
阿里云百炼 UI 设计器:让 AI 对话秒变可交互界面
阿里云百炼 UI 设计器的使命,是以低门槛、高效率的方式,让开发者与非技术人员也能在极短时间内,完成专业级 AI 应用的构建、发布与运行,从而加速 AI 技术的业务落地与价值兑现。未来,UI 设计器将持续围绕能搭、搭好、好搭三大方向打磨能力。
1589 0
|
11月前
|
存储 JSON PyTorch
Multimodal LLM训练-模型文件\训练数据加载逻辑源码分析
Multimodal LLM训练-模型文件\训练数据加载逻辑源码分析
533 17
|
12月前
|
人工智能 自然语言处理 API
理工科 MCP Server 神器,补足人工智能幻觉短板
本文介绍了为何需要WolframAlpha及其在解决大语言模型“幻觉”问题上的优势。大型语言模型如GPT-4虽在自然语言处理方面表现出色,但在科学与数学问题上常出错。WolframAlpha凭借其强大的计算能力和广泛的知识库,能准确处理复杂问题。Higress MCP市场已上线WolframAlpha LLM API,支持多种调用方式,并提供每月10次免费试用。配置流程包括获取API工具、安装Lobechat及配置Higress MCP插件。测试案例显示,WolframAlpha在数学推理、日常计算和图像绘制等方面表现优异,未来结合更多服务将推动AI技术发展。
967 62
|
11月前
|
人工智能 自然语言处理 算法
DistilQwen-ThoughtX:变长思维链推理模型,能力超越DeepSeek蒸馏模型
阿里云PAI团队开发的 OmniThought 数据集,其中包含200万思维链,并标注了推理冗余度(RV)和认知难度(CD)分数。基于此数据集,我们还推出了 DistilQwen-ThoughtX 系列模型,可以通过RV和CD分数对思维链进行筛选,训练得到的模型获得根据问题和本身的认知能力,生成变长思维链的能力。同时在 EasyDistill 框架中开源了 OmniThought 数据集和 DistilQwen-ThoughtX 模型的全部权重。这些模型在性能上超过了 DeepSeek-R1-Distill 系列。
|
JavaScript Docker Python
下个时代的开发工具-Nix:声明式的运行环境构建器、简单场景下的docker替身
Nix 是一个独特的包管理工具和构建系统,采用声明式方法管理软件包和运行环境。它通过精确控制依赖关系和环境配置,确保软件的可重复性、隔离性和可追溯性。Nix 支持多语言开发环境,提供声明式配置、环境隔离、回滚与版本控制等核心功能,适用于复杂开发场景,有效解决依赖冲突和环境不一致问题。
2080 4
|
人工智能 自然语言处理 机器人
如何从0部署一个大模型RAG应用
本文介绍了如何从零开始部署一套RAG应用,并将其集成到移动端,如钉钉群聊中。应用场景包括客服系统、智能助手、教育辅导和医疗咨询等。通过阿里云PAI和AppFlow,您可以轻松部署大模型RAG应用,并实现智能化的问答服务。具体步骤包括准备向量检索库、训练私有模型、部署RAG对话应用、创建钉钉应用及配置机器人等。
2349 2
|
存储 NoSQL API
使用Py2neo进行Neo4j图数据库的增删改查操作
使用Py2neo进行Neo4j图数据库的增删改查操作
737 5