概述

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

今天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下找到“自定义算法”文件夹,可以找到发布的算法并使用

本文作者:傲海

原文链接

本文为云栖社区原创内容,未经允许不得转载。

【教程】5分钟在PAI算法市场发布自定义算法的更多相关文章

  1. GC算法精解(五分钟教你终极算法---分代搜集算法)

    GC算法精解(五分钟教你终极算法---分代搜集算法) 引言 何为终极算法? 其实就是现在的JVM采用的算法,并非真正的终极.说不定若干年以后,还会有新的终极算法,而且几乎是一定会有,因为LZ相信高人们 ...

  2. GC算法精解(五分钟让你彻底明白标记/清除算法)

    GC算法精解(五分钟让你彻底明白标记/清除算法) 相信不少猿友看到标题就认为LZ是标题党了,不过既然您已经被LZ忽悠进来了,那就好好的享受一顿算法大餐吧.不过LZ丑话说前面哦,这篇文章应该能让各位彻底 ...

  3. 柔弱的APP如何自我保护,浅谈APP防御手段,使用360加固助手加固/签名/多渠道打包/应用市场发布

    柔弱的APP如何自我保护,浅谈APP防御手段,使用360加固助手加固/签名/多渠道打包/应用市场发布 由于JAVA和Android的平台型,所以APP很容易被反编译,这对于我们开发者来说,是一个不想要 ...

  4. Azure 镜像市场发布商指南

    Azure 镜像市场发布商指南 本指南提供独立软件供应商产品上架到 Azure 镜像市场(以下简称 Azure 镜像市场)需要遵循的全流程. 文档适用范围 本指南适用于希望通过由世纪互联运营的Micr ...

  5. 算法市场 Algorithmia

    算法市场 官网:(需要***,fan qiang,不然可能访问不了或登录不了) https://algorithmia.com/ 官方的例子: 我不用 curl 发请求,把 curl 命令粘贴给你们用 ...

  6. 市场清仓价格算法 python求矩阵不同行不同列元素和的最大值

    问题描述 求矩阵不同行不同列元素和的最大值(最小值) 问题求解 1.通过scipy库求解 scipy.optimize库中的linear_sum_assignment方法可以求解 输入一个矩阵,参数m ...

  7. 数据挖掘十大算法--K-均值聚类算法

    一.相异度计算  在正式讨论聚类前,我们要先弄清楚一个问题:怎样定量计算两个可比較元素间的相异度.用通俗的话说.相异度就是两个东西区别有多大.比如人类与章鱼的相异度明显大于人类与黑猩猩的相异度,这是能 ...

  8. PHP-密码学算法及其应用-对称密码算法

    转自:http://www.smatrix.org/bbs/simple/index.php?t5662.html ////////////////////////////////////////// ...

  9. (转载)微软数据挖掘算法:Microsoft 神经网络分析算法原理篇(9)

    前言 本篇文章继续我们的微软挖掘系列算法总结,前几篇文章已经将相关的主要算法做了详细的介绍,我为了展示方便,特地的整理了一个目录提纲篇:大数据时代:深入浅出微软数据挖掘算法总结连载,有兴趣的童鞋可以点 ...

随机推荐

  1. Myeclipse 10使用hibernate生成注解(annotation)实体类

    以MySQL数据库为例,请在数据库里面建好对应的表. 1.配置数据库链接 打开Myelipse Database Explorer视图 Window-->Open Perspective--&g ...

  2. Hibernate调用Oracle的存储过程

    众所周知,当过多的使用存储过程,触发器等 数据库方言相关的应用时,应用程序的移植性会变差,特别是在Hibernate中使用这些,简直是讽刺,但是当今中国又有哪家公司做项目会关心应用程序的移植性呢? 现 ...

  3. springboot思维导图

  4. Solr+HBase

  5. poj2406

    求循环节之类的问题 #include<iostream> #include<cstdio> #include<queue> #include<algorith ...

  6. vue 编写插件

    1.    将插件逻辑封装成一个对象  最后在install编写业务代码暴露给Vue对象 好处: 可以添加任意参数在这个对象上 方便将install函数封装的更加精简 可拓展性也比较高 2.  将所有 ...

  7. Java虚拟机系列(四)---查看GC日志

    这一节穿插一点如何在eclipse中配置并查看某个Java应用GC日志的知识点,我也是通过调研知道的,因为书中写的不是很详细,主要是为下一节做准备. 一.eclipse中配置GC 在eclipse中如 ...

  8. Cesium打包命令总结

    引言 Cesium实验室QQ群里有人在问Cesium的打包问题.我想干脆总结一下Cesium的打包命令特点,写篇文章,顺带庆祝一下1024程序员节.. Cesium的npm脚本有好多,其中几个和打包相 ...

  9. DSP日志打印 LOG_printf

    LOG_printf 依托BIOS环境,需要引用下列头文件: #include <std.h> #include <log.h>     并且,要在.tcf环境中添加一个LOG ...

  10. 装饰者模式(Decorator、Compoment)(早餐销售装饰,动态添加职责)

    适用于以下情况: (1)需要扩展一个类的功能,或给一个类添加附加职责. (2)需要动态的给·一个对象添加功能,这些功能可以再动态的撤销. (3)需要增加由一些基本功能的排列组合而产生的非常大量的功能, ...