暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBase UP API参考及相关接口规范

三金先生 2023-04-21
159

API 参考

一、基本概念

➢ algo:算法,GBase UP 提供的机器学习算法。

➢ dataSource:数据源,可以来自于数据库表或 HDFS 文件。

➢ dataset:数据集。数据源经过预处理过程生成的数据,直接用于模型训练。

➢ model:模型。经过训练后生成,用于模型的评估和预测,是机器学习算法的核心。

GBase UP 机器学习算法简介

二、接口规范

1. ADD_ALGORITHM(alg_name,train_class,evaluate_class,evaluate_type,predict_class)

功能:在 GBase UP 中注册算法族。 参数说明:

 alg_name:算法族的名称;

 train_class:训练算法的类名;

 evaluate_class:评估算法的类名;

 evaluate_type:评估算法的类型,如果直接使用训练好的模型进行评估则取值为 0,如 果根据评估参数重新计算模型进行评估则取值为 1;

 predict_class:预测算法的类名。 示例:将“kmeans”算法族注册到 GBase UP。 gccli> call UPEXTDB.ADD_ALGORITHM( ‘kmeans ', ‘com.gbase.ml.core.kmeans.KMeansTrain’, ‘com.gbase.ml.core.kmeans.KMeansEvaluate’, 1, ‘com.gbase.ml.core.kmeans. KMeansPredict_tb’);

2. DELETE_ALGORITHM(alg_name)

功能:在 GBase UP 中注销算法族。 参数说明:

 alg_name:算法族的名称; 示例:注销“kmeans”算法族。 gccli> call UPEXTDB.DELETE_ALGORITHM( 'kmeans' );

3. SHOW_ALGORITHMS()

功能:显示所有已注册的算法族。 示例:显示算法族。 gccli> call UPEXTDB.SHOW_ALGORITHMS();

+----------------+--------------------+-----------------------+-------------------------+-----------------+ | algorithm_name | train_class_name | evaluate_class_name | predict_class_name | evaluate_type | +-----------------+-------------------+-----------------------+--------------------------+----------------+

GBase UP 机器学习算法简介

| kmeans | kmeans.KMeansTrain | kmeans.KMeansEvaluate | kmeans.KMeansPredict_tb | 1 | +--------------+---------------------+-----------------------+-------------------------+----------------+

4. CREATE_MODEL(model_name, alg_name, train_set, test_set)

功能:创建模型。 参数说明:

 model_name:自定义模型的名称;

 alg_name:模型所使用的算法族的名称;

 train_set:训练数据集,用于训练模型,可以是表、视图或 HDFS 文件;

 test_set:测试数据集,用于评估模型,可以是表、视图或 HDFS 文件。 示例 1:创建模型,模型名为 kmeans_cust_model,使用算法族为 kmeansForCust,训练集和测试 集分别是 spark_ml 库中的 t_cust_train_data 表和 t_cust_enva_data 表。 gccli>call UPEXTDB.CREATE_MODEL ( 'kmeans_cust_model', 'kmeansForCust', 'spark_ml.t_cust_train_data', 'spark_ml.t_cust_enva_data'); 示例 2:创建模型,训练集和测试集都是 HDFS 文件,/up/sparkml/data/features_train 为训练 集目录,/up/sparkml/data/features_test 为测试集目录。 gccli>call UPEXTDB.CREATE_MODEL( 'naiveBayes_model', 'naiveBayes', '/up/sparkml/data/features_train', '/up/sparkml/data/features_test');

5. DROP_MODEL(model_name)

功能:删除模型。 参数说明:

 model_name:待删除模型的名称. 示例:删除名为 kmeans_cust_model 的模型。 gccli>call UPEXTDB. DROP_MODEL('kmeans_cust_model');

6. SHOW_MODELS()

功能:显示所有已存在的模型。 示例:显示模型。

GBase UP 机器学习算法简介

gccli>call UPEXTDB. SHOW_MODELS(); +--------------------+ | model_name | +--------------------+ | naiveBayes_model | | gbt_model | | randomForest_model | | kmeans_cust_model | +--------------------+

7. SHOW_MODEL(model_name)

功能:显示模型的详细信息。 参数说明:

 model_name:模型的名称。 示例:显示 kmeans_cust_model 模型的信息。 gccli>call UPEXTDB.SHOW_MODEL('kmeans_cust_model');

8. TRAIN_MODEL(model_name)

功能:训练模型。 参数说明:

 model_name:模型的名称。 示例:训练名为 kmeans_cust_model 的模型。 gccli>call UPEXTDB.TRAIN_MODEL('kmeans_cust_model');

9. EVALUATE_MODEL(model_name)

功能:评估模型。 参数说明:

 model_name:模型的名称。 示例:评估名为 kmeans_cust_model 的模型。 gccli>call UPEXTDB. EVALUATE_MODEL('kmeans_cust_model');

10. PREDICT(model_name, predict_set, predict_result)

功能:使用模型进行预测。 参数说明:

GBase UP 机器学习算法简介

 model_name:模型的名称

 predict_set:要预测的数据集,可以是表、视图或 HDFS 文件

 predict_result:预测的结果,可以是表或 HDFS 文件,如果表不存在会自动创建,如果 表已存在内容会被覆盖,如果 HDFS 文件不存在会自动创建,如果 HDFS 文件已存在会报 错。 示例 1:使用 kmeans_cust_model 模型进行聚类预测。 gccli>call UPEXTDB.PREDICT( 'kmeans_cust_model', 'spark_ml.t_cust_predict_data', 'spark_ml.t_cust_predict_result'); 示例 2:使用 naiveBayes_model 模型进行分类预测, /up/sparkml/data/features_predict 为预 测数据集的 HDFS 目录,spark_ml.text_classification_result 为分类结果表。 gccli>call UPEXTDB.PREDICT( 'naiveBayes_model', '/up/sparkml/data/features_predict', 'spark_ml.text_classification_result'); 11. ADD_TRAIN_SETTING(model_name , setting_key, setting_value )

功能:以键值对的形式设置模型的训练参数。 参数说明:

 model_name:模型的名称;

 setting_key:参数的名称;

 setting_value:参数的取值; 示例:向 kmeans_cust_model 模型中设置聚类训练参数。

gccli>call UPEXTDB.ADD_TRAIN_SETTING('kmeans_cust_model','numClusters','8' ); gccli>call UPEXTDB.ADD_TRAIN_SETTING('kmeans_cust_model','numIterations','10' ); gccli>call UPEXTDB.ADD_TRAIN_SETTING('kmeans_cust_model','runTimes','1' ); gccli>call UPEXTDB.ADD_TRAIN_SETTING('kmeans_cust_model','initializationMode','Kmeans||' );

12. SHOW_TRAIN_SETTINGS(model_name)

功能:显示模型的所有训练参数。 参数说明:

 model_name:模型的名称。

GBase UP 机器学习算法简介

示例:显示 kmeans_cust_model 模型的训练参数。 gccli>call UPEXTDB.SHOW_TRAIN_SETTINGS('kmeans_cust_model'); +-----------------------------------------------------------------------+ | settings | +-----------------------------------------------------------------------+ | numClusters=8;numIterations=10;runTimes=1;initializationMode=Kmeans|| | +-----------------------------------------------------------------------+

13. DELETE_TRAIN_SETTING(model_name, setting_key)

功能:删除某一项训练参数。如果要修改某一项参数的值,需要先删除该参数后再重新设置。 参数说明:

 model_name:模型的名称;

 setting_key:参数的名称。 示例:删除 kmeans_cust_model 模型的 numClusters 参数。 gccli>call UPEXTDB.DELETE_TRAIN_SETTING('kmeans_cust_model', 'numClusters');

14. DELETE_TRAIN_SETTINGS(model_name)

功能:删除所有训练参数。 参数说明:

 model_name:模型的名称。 示例:删除 kmeans_cust_model 模型所有训练参数。 gccli>call UPEXTDB.DELETE_TRAIN_SETTINGS('kmeans_cust_model');

15. ADD_EVALUATE_SETTING(model_name , setting_key, setting_value )

功能:以键值对的形式设置模型的评估参数。 参数说明:

 model_name:模型的名称;

 setting_key:参数的名称;

 setting_value:参数的取值。 示例:向 kmeans_cust_model 模型中设置聚类评估参数。

gccli>call UPEXTDB.ADD_EVALUATE_SETTING('kmeans_cust_model','EvaluateClusters','7,8,9' ); gccli>call UPEXTDB.ADD_EVALUATE_SETTING('kmeans_cust_model','numIterations','3' ); gccli>call UPEXTDB.ADD_EVALUATE_SETTING('kmeans_cust_model','runTimes','1' );

GBase UP 机器学习算法简介

gccli>call UPEXTDB.ADD_EVALUATE_SETTING('kmeans_cust_model','initializationMode','Kmeans||' );

16. SHOW_EVALUATE_SETTINGS(model_name)

功能:显示模型的所有评估参数。 参数说明:

 model_name:模型的名称。 示例:显示 kmeans_cust_model 模型的训练参数。 gccli>call UPEXTDB.SHOW_EVALUATE_SETTINGS('kmeans_cust_model'); +-------------------------------------------------------------------------------+ | settings | +-------------------------------------------------------------------------------+ | EvaluateClusters=7,8,9;numIterations=3;runTimes=1;initializationMode=Kmeans|| | +-------------------------------------------------------------------------------+

17. DELETE_EVALUATE_SETTING(model_name, setting_key)

功能:删除某一项评估参数。如果要修改某一项参数的值,需要先删除该参数后再重新设置。 参数说明:

 model_name:模型的名称;

 setting_key:参数的名称。 示例:删除 kmeans_cust_model 模型的 EvaluateClusters 参数。 gccli>call UPEXTDB.DELETE_EVALUATE_SETTING('kmeans_cust_model', 'EvaluateClusters');

18. DELETE_EVALUATE_SETTINGS(model_name)

功能:删除所有评估参数。 参数说明:

 model_name:模型的名称。 示例:删除 kmeans_cust_model 模型所有评估参数。 gccli>call UPEXTDB.DELETE_EVALUATE_SETTINGS('kmeans_cust_model'); 

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论