|
#! /usr/bin/env bash |
|
|
|
function fashion_mnist() { |
|
abcli_fashion_mnist $@ |
|
} |
|
|
|
function abcli_fashion_mnist() { |
|
local task=$(abcli_unpack_keyword $1 help) |
|
|
|
if [ $task == "help" ] ; then |
|
abcli_help_line "$abcli_cli_name fashion_mnist ingest" \ |
|
"ingest fashion_mnist data." |
|
abcli_help_line "$abcli_cli_name fashion_mnist predict data_1 [name_1] [data=filename/*object/url,model=object/*saved]" \ |
|
"run fashion_mnist saved/object model name_1 predict on filename/object/url data_1." |
|
abcli_help_line "$abcli_cli_name fashion_mnist save [name_1] [object_1] [force]" \ |
|
"[force] save fashion_mnist [in object_1] [as name_1]." |
|
abcli_help_line "$abcli_cli_name fashion_mnist train [validate]" \ |
|
"train fashion_mnist [for validation]." |
|
|
|
if [ "$(abcli_keyword_is $2 verbose)" == true ] ; then |
|
python3 -m image_classifier.fashion_mnist --help |
|
fi |
|
|
|
return |
|
fi |
|
|
|
if [ "$task" == "ingest" ] ; then |
|
python3 -m image_classifier.fashion_mnist \ |
|
ingest \ |
|
--output_path $abcli_object_path \ |
|
${@:2} |
|
|
|
abcli_tag set . fashion_mnist |
|
return |
|
fi |
|
|
|
if [ "$task" == "predict" ] ; then |
|
local data_object=$(abcli_clarify_object "$2" $abcli_object_name) |
|
|
|
local model_name=$(abcli_clarify_arg "$3" fashion-mnist) |
|
|
|
local options=$4 |
|
local data_source=$(abcli_option "$options" "data" object) |
|
|
|
if [ "$(abcli_keyword_is $data_object validate)" == true ] && [ "$data_source" == "object" ] ; then |
|
local output_object=$abcli_object_name |
|
|
|
abcli_select - ~trail |
|
abcli_fashion_mnist ingest |
|
local data_object=$abcli_object_name |
|
|
|
abcli_select $output_object ~trail |
|
fi |
|
|
|
abcli_log "fashion_mnist($model_name).predict($data_object): $options" |
|
|
|
abcli_image_classifier predict \ |
|
$data_object \ |
|
$model_name \ |
|
$options \ |
|
${@:5} |
|
|
|
abcli_tag set . fashion_mnist |
|
|
|
return |
|
fi |
|
|
|
if [ "$task" == "save" ] ; then |
|
abcli_huggingface save \ |
|
image-classifier \ |
|
$(abcli_clarify_arg "$2" fashion-mnist) \ |
|
${@:3} |
|
return |
|
fi |
|
|
|
if [ "$task" == "train" ] ; then |
|
local model_object=$abcli_object_name |
|
|
|
local options=$2 |
|
local do_validate=$(abcli_option_get_unpacked "$options" "validate" 0) |
|
|
|
abcli_select - ~trail |
|
abcli_fashion_mnist ingest |
|
local data_object=$abcli_object_name |
|
|
|
abcli_log "fashion_mnist.train($data_object): $options" |
|
|
|
abcli_select $model_object ~trail |
|
abcli_image_classifier_train \ |
|
$data_object \ |
|
~color,~convnet,validate=$do_validate \ |
|
${@:3} |
|
|
|
abcli_tag set . fashion_mnist |
|
return |
|
fi |
|
|
|
abcli_log_error "-fashion_mnist: $task: command not found." |
|
} |