【教程】5分钟在PAI算法市场发布自定义算法

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: 概述在人工智能领域存在这样的现象,很多用户有人工智能的需求,但是没有相关的技术能力。另外有一些人工智能专家空有一身武艺,但是找不到需求方。这意味着在需求和技术之间需要一种连接作为纽带。今天PAI正式对外发布了“AI市场”以及“PAI自定义算法”两大功能,可以帮助用户5分钟将线下的spark算法或是pyspark算法发布成算法组件,并且支持组件发布到AI市场供更多用户使用。

概述

在人工智能领域存在这样的现象,很多用户有人工智能的需求,但是没有相关的技术能力。另外有一些人工智能专家空有一身武艺,但是找不到需求方。这意味着在需求和技术之间需要一种连接作为纽带。

今天PAI正式对外发布了“AI市场”以及“PAI自定义算法”两大功能,可以帮助用户5分钟将线下的spark算法或是pyspark算法发布成算法组件,并且支持组件发布到AI市场供更多用户使用。有了以上功能,算法开发者和算法需求双方可以基于PAI的开放框架和平台实现算法交易,实现生态和PAI的共融。

详细使用说明

价格说明

使用SQL、SPARK2.0、PYSPARK2.0 3种算法框架自行开发出的算法上传到PAI-STUDIO中,运行产生的费用按照PAI资源成本价收取,费用为1元/计算时。

功能详解

1.控制台说明

首先进入PAI控制台,找到Studio-可视化建模下的“算法发布”功能。

2.开发算法代码

基于本地调试文档https://help.aliyun.com/document_detail/126887.html,开发算法包。本文使用官方提供的pyspark案例介绍,请前往https://help.aliyun.com/document_detail/126889.html下载。

3.点击“创建自定义算法”

  • 算法名称:算法组件的名字
  • 算法唯一标示:算法的后台唯一标识,可以用来查询日志等信息
  • 算法框架:sql、spark、pyspark
  • 算法包:如果是sql算法,需要上传sql脚本。spark算法提交的是打包好的jar包。pyspark提交的是工程打包好的zip文件
  • 算法种类:算法包发布到PAI-STUDIO后所在的文件夹
  • 入口参数:sql组件不需要、spark需要写jar包的入口类(例:com.aliyun.odps.spark.examples.simhash.SimHashSpark)、pyspark需要写入口的py文件和入口函数(中间用.分隔)

本文使用官方提供的pyspark算法包,上传pyspark.zip文件,输入入口文件和入口函数

read_example.mainFunc

如图:

4.编辑版本

提交算法包后,在控制台可以看到算法包实例,这时候需要为算法包配置UI展示相关内容。

这里的版本指的是组件的UI展示形式,只有配置了版本的才可以发布。

点击添加版本:

点击前往配置进入组件配置界面,所有算法组件的配置可以通过拖拽的形式可视化操作。

5.组件UI编辑

组件的输入和输出桩可以在下图部分自由控制,本案例实现的是读一个表然后把其中两个字段写到另一个表里,对应代码中的inputTable1和outputTable1,如果多个输入输出桩可以在代码中定义inputTable2、inputTable3等,组件桩会自动映射。

    #定义输入节点
    INPUT_TABLE = arg_dict["inputTable1"]
    OUTPUT_TABLE = arg_dict["outputTable1"]
    ID_COL = arg_dict["idCol"]
    CONTENT_COL = arg_dict["contentCol"]

本案例只使用了一个输入和一个输出,这部分不需要修改。

接下来编辑配置信息,在上述代码中除了inputTable和outputTable这两个参数,剩下的所有参数都要对应到组件的基础控件。本案例中idCol和contentCol两个参数对应的是输入表中选择的两个字段,都是单选。在左侧基础控件中找到“单字段填写控件”,因为是两个参数,所以拖两个出来。

单击第一个控件,在右侧基础信息中进行配置。

  • Name(必选项):算法代码中参数的映射项,本案例应该写idCol。设置好后,说明算法代码中拿到的idCol信息就是该组件的输入
  • 标签:该控件的展示名
  • converter:一般不用填写
  • 绑定输入/输出:组件输入输出桩的绑定,本案例选择输入#1
  • 支持的数据类型:默认全部支持

分别配置两个控件的信息对应到idCol和contentCol。

6.发布组件

编辑好UI版本,记得点击下方的保存按钮。

回到控制台,刷新页面,点击“使用此版本”

这时候组件就可以发布了,

发布分两种:

  • 发布到PAI-STUDIO:发布到PAI-STUDIO需要选择区域和项目,发布过去的组件只能在当前项目下使用,并且主子账号共享
  • 发布到数加智能市场:生成的组件会发布到AI市场,供所有PAI用户下载使用

7.组件调用

进入组件发布的PAI-STUDIO项目,在左侧“组件”tab下找到“自定义算法”文件夹,可以找到发布的算法并使用

相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
目录
相关文章
|
1天前
|
机器学习/深度学习 分布式计算 并行计算
【机器学习】怎样在非常大的数据集上执行K-means算法?
【5月更文挑战第13天】【机器学习】怎样在非常大的数据集上执行K-means算法?
|
1天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】列举几种情况,在这些情况下K-means算法难以取得较好效果
【5月更文挑战第13天】【机器学习】列举几种情况,在这些情况下K-means算法难以取得较好效果
|
1天前
|
机器学习/深度学习 传感器 算法
【机器学习】在聚类算法中,使用曼哈顿距离和使用欧式距离有什么区别?
【5月更文挑战第12天】【机器学习】在聚类算法中,使用曼哈顿距离和使用欧式距离有什么区别?
|
1天前
|
数据采集 机器学习/深度学习 人工智能
【机器学习】在使用K-means算法之前,如何预处理数据?
【5月更文挑战第12天】【机器学习】在使用K-means算法之前,如何预处理数据?
|
1天前
|
机器学习/深度学习 算法 数据可视化
【机器学习】比较分层聚类(Hierarchical Clustering)和K-means聚类算法
【5月更文挑战第12天】【机器学习】比较分层聚类(Hierarchical Clustering)和K-means聚类算法
|
1天前
|
机器学习/深度学习 数据采集 算法
深入理解并应用机器学习算法:支持向量机(SVM)
【5月更文挑战第13天】支持向量机(SVM)是监督学习中的强分类算法,用于文本分类、图像识别等领域。它寻找超平面最大化间隔,支持向量是离超平面最近的样本点。SVM通过核函数处理非线性数据,软间隔和正则化避免过拟合。应用步骤包括数据预处理、选择核函数、训练模型、评估性能及应用预测。优点是高效、鲁棒和泛化能力强,但对参数敏感、不适合大规模数据集且对缺失数据敏感。理解SVM原理有助于优化实际问题的解决方案。
|
1天前
|
机器学习/深度学习 算法
理解并应用机器学习算法:决策树
【5月更文挑战第12天】决策树是直观的分类与回归机器学习算法,通过树状结构模拟决策过程。每个内部节点代表特征属性,分支代表属性取值,叶子节点代表类别。构建过程包括特征选择(如信息增益、基尼指数等)、决策树生成和剪枝(预剪枝和后剪枝)以防止过拟合。广泛应用在信贷风险评估、医疗诊断等领域。理解并掌握决策树有助于解决实际问题。
|
1天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】在使用K-means聚类算法时,如何选择K的值?
【5月更文挑战第11天】【机器学习】在使用K-means聚类算法时,如何选择K的值?
|
1天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】为什么K-means算法使用欧式距离度量?
【5月更文挑战第11天】【机器学习】为什么K-means算法使用欧式距离度量?
|
1天前
|
机器学习/深度学习 算法 数据可视化
【机器学习】描述K-means算法的步骤
【5月更文挑战第11天】【机器学习】描述K-means算法的步骤

热门文章

最新文章

相关产品

  • 人工智能平台 PAI
  • http://www.vxiaotou.com