本文为您介绍如何通过提交一个使用MaxCompute计算资源的超参数调优实验,来运行K均值聚类和聚类模型评估组件,以获取K均值聚类组件算法的较优超参数组合。
步骤一:准备数据
您可以参考聚类模型评估中的示例来准备测试数据和评估数据。
本方案使用公开数据源pai_online_project.pai_kmeans_test_input
和pai_online_project.pai_cluster_evaluation_test_input
,您可以直接使用。
步骤二:新建实验
进入新建实验页面。具体操作,请参见新建实验。
在新建实验页面,配置以下关键参数,其他参数配置详情,请参见新建实验。
执行配置:
参数
描述
任务类型
选择MaxCompute。
命令
配置以下两个命令,按照顺序依次排列,后续会按顺序执行命令。
cmd1:使用准备好的测试数据,运行K均值聚类组件,构建聚类模型。各个参数的配置说明,请参见方式二:PAI命令方式。
pai -name kmeans -project algo_public -DinputTableName=pai_online_project.pai_kmeans_test_input -DselectedColNames=f0,f1 -DappendColNames=f0,f1 -DcenterCount=${centerCount} -Dloop=10 -Daccuracy=0.01 -DdistanceType=${distanceType} -DinitCenterMethod=random -Dseed=1 -DmodelName=pai_kmeans_test_output_model_${exp_id}_${trial_id} -DidxTableName=pai_kmeans_test_output_idx_${exp_id}_${trial_id} -DclusterCountTableName=pai_kmeans_test_output_couter_${exp_id}_${trial_id} -DcenterTableName=pai_kmeans_test_output_center_${exp_id}_${trial_id};
其中:${centerCount}和${distanceType}为定义的超参数变量。
cmd2:基于cmd1生成的聚类结果,运行聚类模型评估组件,来评估聚类模型的优劣性。各个参数的配置说明,请参见方式二:PAI命令方式。
PAI -name cluster_evaluation -project algo_public -DinputTableName=pai_online_project.pai_cluster_evaluation_test_input -DselectedColNames=f0,f1 -DmodelName=pai_kmeans_test_output_model_${exp_id}_${trial_id} -DoutputTableName=pai_ft_cluster_evaluation_out_${exp_id}_${trial_id};
超参数
每个超参数对应的约束类型和搜索空间配置如下:
centerCount:
约束类型:choice。
搜索空间:单击,增加4个枚举值,分别为2、3、4和5。
distanceType:
约束类型:choice。
搜索空间:单击,增加3个枚举值,分别为euclidean、cosine和cityblock。
使用上述配置可以生成12种超参数组合,后续实验会分别为每种超参数组合创建一个Trial,在每个Trial中使用一组超参数组合来运行K均值聚类组件和聚类模型评估组件。
Trial配置:
参数
描述
指标类型
选择table。
计算方式
选择best。
指标权重
key:vrc。
Value:1。
指标来源
配置为
select GET_JSON_OBJECT(summary, '$.calinhara') as vrc from pai_ft_cluster_evaluation_out_${exp_id}_${trial_id};
。优化方向
选择越大越好。
模型名称
配置为
pai_kmeans_test_output_model_${exp_id}_${trial_id}
。搜索配置:
参数
描述
搜索算法
选择TPE。
最大搜索次数
配置为6。
最大并发量
配置为3。
单击提交。
系统在实验列表页面自动创建一个实验。
步骤三:查看实验详情和运行结果
在实验列表页面,单击实验名称,进入实验详情页面。
在该页面,您可以查看Trial的执行进度和状态统计。
实验根据配置的搜索算法和最大搜索次数自动创建6个Trial。
单击Trial列表,您可以在该页面查看该实验自动生成的所有Trial列表,以及每个Trial的执行状态、最终指标和超参数组合。
根据配置的优化方向(越大越好),从上图可以看出,最终指标为59089对应的超参组合(centerCount:2;distanceType:cityblock)较优。