Open
Description
- Sample SQLFlow custom model: https://github.com/sql-machine-learning/models/blob/develop/sqlflow_models/dnnclassifier.py
- Sample ElasticDL custom model: https://github.com/sql-machine-learning/elasticdl/blob/develop/model_zoo/cifar10_subclass/cifar10_subclass.py
Related design: sql-machine-learning/sqlflow#949
We should implement the model zoo using the same scheme in SQLFlow and ElasticDL so that all models can be applied to SQLFlow and ElasticDL. Below are things to do:
- Unify the name to define loss/optimizer/metrics, e.g. SQLFlow use
default_optimizer
, ElasticDL useoptimizer
- Whether to support custom train loop in ElasticDL, for SQLFlow, can support: https://github.com/sql-machine-learning/models/blob/develop/sqlflow_models/deep_embedding_cluster.py#L194
- Whether to support Keras functional API in SQLFlow, ElasticDL can support this kind of model now: https://github.com/sql-machine-learning/elasticdl/blob/develop/model_zoo/cifar10_functional_api/cifar10_functional_api.py
- SQLFlow use
codegen
for generate adataset_fn
function, how to use thedataset_fun
defined in model zoo: https://github.com/sql-machine-learning/elasticdl/blob/develop/model_zoo/cifar10_functional_api/cifar10_functional_api.py#L117 - Unify
PredictionOutputsProcessor
: https://github.com/sql-machine-learning/elasticdl/blob/develop/model_zoo/cifar10_functional_api/cifar10_functional_api.py#L153, https://github.com/sql-machine-learning/models/blob/develop/sqlflow_models/dnnclassifier.py#L40 - support custom metrics in SQLFlow (
eval_metrics_fn
function in the model definition).
Metadata
Metadata
Assignees
Labels
No labels