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)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
目录
相关文章
|
6月前
|
人工智能 并行计算 监控
别再混为一谈!万字拆解内存与显存:决定你模型训练成败的硬件真相
你好,我是AI科普博主狸猫算君!本文深入浅出解析内存(RAM)与显存(VRAM)的本质区别:前者是CPU的通用办公桌,后者是GPU的专属高速实验室。重点破除“大内存=能训大模型”误区,揭示显存带宽、容量为何直接决定AI训练成败,并提供监控、排错与硬件选配实战指南。(239字)
1837 2
别再混为一谈!万字拆解内存与显存:决定你模型训练成败的硬件真相
|
监控 Java 数据处理
【Spring云原生】Spring Batch:海量数据高并发任务处理!数据处理纵享新丝滑!事务管理机制+并行处理+实例应用讲解
【Spring云原生】Spring Batch:海量数据高并发任务处理!数据处理纵享新丝滑!事务管理机制+并行处理+实例应用讲解
|
2月前
|
弹性计算 5G 云计算
2026年阿里云秒杀活动抢购攻略:轻量应用服务器2核4G200M峰值带宽,秒杀价38元/年!
阿里云2026年秒杀活动每日两场(10:00/15:00),主打轻量服务器:2核2G仅38元/年、2核4G低至9.9元/月。新用户实名后可抢,需拼手速。文内含直达入口、抢购技巧及68元起备选方案,助力大家低成本上云!
622 3
|
2月前
|
存储 弹性计算 人工智能
2026年阿里云服务器配置价格表(轻量、ECS、GPU)
2026年阿里云服务器价格体系覆盖轻量应用服务器、ECS云服务器、GPU计算型服务器三大核心品类,针对个人开发者、中小企业、企业级用户推出差异化配置与定价方案,同时提供包年包月、按量付费两种主流计费模式,新老用户均有专属优惠,整体价格透明且适配不同业务场景。以下从三大产品维度,详细梳理2026年阿里云服务器配置与价格明细,覆盖入门到高端全场景需求。
781 0
|
12月前
|
机器学习/深度学习 算法 机器人
基于蚁群优化算法的直流电机模糊PID控制(Matlab实现)
基于蚁群优化算法的直流电机模糊PID控制(Matlab实现)
277 0
|
机器学习/深度学习 人工智能 自然语言处理
1分钟认识:人工智能claude AI _详解CLAUDE在国内怎么使用
Claude AI 是 Anthropic 开发的先进对话式 AI 模型,以信息论之父克劳德·香农命名,体现了其在信息处理和生成方面的卓越能力
|
存储 NoSQL API
使用Py2neo进行Neo4j图数据库的增删改查操作
使用Py2neo进行Neo4j图数据库的增删改查操作
914 5
|
运维 监控 持续交付
构建高效自动化运维体系:Ansible与Docker的协同实践
【7月更文挑战第42天】 在当今快速发展的云计算和微服务架构时代,自动化运维已成为提升效率、确保系统稳定性的关键。本文将探讨如何利用Ansible这一强大的自动化工具与Docker容器技术相结合,搭建一个高效、可靠的自动化运维体系。文章首先简述了自动化运维的必要性和Ansible与Docker的基本概念,随后详细介绍了两者结合的优势,并通过实际案例分析展示了如何实现自动化部署、管理和扩展应用服务。通过阅读本文,读者将获得一套可行的自动化运维解决方案,以应对日益复杂的IT环境挑战。
|
缓存 监控 API
Python Web框架FastAPI——一个比Flask和Tornada更高性能的API框架
Python Web框架FastAPI——一个比Flask和Tornada更高性能的API框架
1490 0
|
JSON API 数据格式
使用Python构建RESTful API:Flask和FastAPI的对比与实践
在现代Web开发中,构建RESTful API是一项常见任务。Python提供了多个框架来简化这个过程,其中Flask和FastAPI是两个备受欢迎的选择。本文将对比Flask和FastAPI,并通过实际示例展示它们的用法和优势。