使用 SQLFlow 语法完成对鸢尾花模型训练、解释、评估、预测
- 整体训练情况及运行结果如下图:
- 对应 SQLFlow 语法
1.检查训练数据
%%sqlflow
select * from iris.train limit 5;
2.训练模型
模型: DNN分类器
参数: 分类数=3,包含两个隐藏层且每个隐藏层有十个隐藏单元,训练次数
特征列: 花瓣长宽、花萼长宽
标签: 鸢尾花类别
已训练模型保存对应数据库
%%sqlflow
SELECT * FROM iris.train TO TRAIN DNNClassifier WITH
model.n_classes = 3,
model.hidden_units = [10, 10],
train.epoch = 10
COLUMN sepal_length, sepal_width, petal_length, petal_width
LABEL class
INTO sqlflow_models.my_dnn_model;
3.解释模型
%%sqlflow
SELECT * FROM iris.train
TO EXPLAIN sqlflow_models.my_dnn_model;
4.评估模型
%%sqlflow
SELECT * FROM iris.test
TO EVALUATE sqlflow_models.my_dnn_model
WITH validation.metrics="Accuracy"
LABEL class
INTO iris.evaluate_result;
5.查看模型评估结果
%%sqlflow
select * from iris.evaluate_result;
「6.评估结束后,可根据评估效果决定是否优化」
7.模型评估达标后,使用模型对测试数据进行预测
%%sqlflow
SELECT * FROM iris.test TO PREDICT iris.predict.class
USING sqlflow_models.my_dnn_model;
8.查看预测结果
%%sqlflow
SELECT * FROM iris.predict;
over !