Frank McQuillan created MADLIB-1363:
---------------------------------------

             Summary: Reduce verbose output to console with fit()
                 Key: MADLIB-1363
                 URL: https://issues.apache.org/jira/browse/MADLIB-1363
             Project: Apache MADlib
          Issue Type: Improvement
          Components: Deep Learning
            Reporter: Frank McQuillan
             Fix For: v1.16




fit() INFO and CONTEXT messages


(1) no validation_table, metrics_compute_frequency=0

{code}
SELECT madlib.madlib_keras_fit('iris_train_packed',   -- source table
                               'iris_model',          -- model output table
                               'model_arch_library',  -- model arch table
                                1,                    -- model arch id
                                $$ loss='categorical_crossentropy', 
optimizer='adam', metrics=['accuracy'] $$,  -- compile_params
                                $$ batch_size=5, epochs=3 $$,  -- fit_params
                                10                    -- num_iterations
                              );

INFO:  Processed 60 images: Fit took 0.567000865936 sec, Total was 
0.757196903229 sec  (seg0 slice1 10.128.0.41:40000 pid=13317)
CONTEXT:  PL/Python function "fit_transition"
INFO:  Processed 60 images: Fit took 0.55348110199 sec, Total was 
0.741441011429 sec  (seg1 slice1 10.128.0.41:40001 pid=13318)
CONTEXT:  PL/Python function "fit_transition"
INFO:  Time for training in iteration 1: 2.45737695694 sec
CONTEXT:  PL/Python function "madlib_keras_fit"
{code}

change to

{code}
INFO:  Time for training in iteration 1: 2.45737695694 sec
CONTEXT:  PL/Python function "madlib_keras_fit"
{code}


(2) no validation_table, metrics_compute_frequency!=0

{code}
SELECT madlib.madlib_keras_fit('iris_train_packed',   -- source table
                               'iris_model',          -- model output table
                               'model_arch_library',  -- model arch table
                                1,                    -- model arch id
                                $$ loss='categorical_crossentropy', 
optimizer='adam', metrics=['accuracy'] $$,  -- compile_params
                                $$ batch_size=5, epochs=3 $$,  -- fit_params
                                10,                    -- num_iterations
                                0,                     -- gpus per host
                                NULL,                  -- validation table
                                1                      -- metrics compute 
frequency
                              );

INFO:  Processed 60 images: Fit took 0.534310817719 sec, Total was 
0.712550878525 sec  (seg0 slice1 10.128.0.41:40000 pid=14501)
CONTEXT:  PL/Python function "fit_transition"
INFO:  Processed 60 images: Fit took 0.564456939697 sec, Total was 
0.751413106918 sec  (seg1 slice1 10.128.0.41:40001 pid=14502)
CONTEXT:  PL/Python function "fit_transition"
INFO:  Time for training in iteration 1: 2.28858995438 sec
CONTEXT:  PL/Python function "madlib_keras_fit"
INFO:  Time for evaluation in iteration 1: 0.188971996307 sec.
CONTEXT:  PL/Python function "madlib_keras_fit"
INFO:  Training set metric after iteration 1: 0.649999976158.
CONTEXT:  PL/Python function "madlib_keras_fit"
INFO:  Training set loss after iteration 1: 1.1202558279.
CONTEXT:  PL/Python function "madlib_keras_fit"
{code}

change to

{code}
INFO:  Time for training in iteration 1: 2.28858995438 sec
       Time for evaluation in iteration 1: 0.188971996307 sec
       Training set metric after iteration 1: 0.649999976158
       Training set loss after iteration 1: 1.1202558279
CONTEXT:  PL/Python function "madlib_keras_fit"
{code}


(3) yes validation_table, metrics_compute_frequency=0
SELECT madlib.madlib_keras_fit('iris_train_packed',   -- source table
                               'iris_model',          -- model output table
                               'model_arch_library',  -- model arch table
                                1,                    -- model arch id
                                $$ loss='categorical_crossentropy', 
optimizer='adam', metrics=['accuracy'] $$,  -- compile_params
                                $$ batch_size=5, epochs=3 $$,  -- fit_params
                                10,                   -- num_iterations
                                0,                    -- GPUs per host
                                'iris_test_packed'   -- validation dataset
                              );

INFO:  Processed 60 images: Fit took 0.552575826645 sec, Total was 
0.734694004059 sec  (seg0 slice1 10.128.0.41:40000 pid=18431)
CONTEXT:  PL/Python function "fit_transition"
INFO:  Processed 60 images: Fit took 0.549551010132 sec, Total was 
0.734927892685 sec  (seg1 slice1 10.128.0.41:40001 pid=18432)
CONTEXT:  PL/Python function "fit_transition"
INFO:  Time for training in iteration 1: 2.36340904236 sec
CONTEXT:  PL/Python function "madlib_keras_fit"
{code}

change to

{code}
INFO:  Time for training in iteration 1: 2.45737695694 sec
CONTEXT:  PL/Python function "madlib_keras_fit"
{code}


(4) yes validation_table, metrics_compute_frequency=!0

{code}
SELECT madlib.madlib_keras_fit('iris_train_packed',   -- source table
                               'iris_model',          -- model output table
                               'model_arch_library',  -- model arch table
                                1,                    -- model arch id
                                $$ loss='categorical_crossentropy', 
optimizer='adam', metrics=['accuracy'] $$,  -- compile_params
                                $$ batch_size=5, epochs=3 $$,  -- fit_params
                                10,                   -- num_iterations
                                0,                    -- GPUs per host
                                'iris_test_packed',   -- validation dataset
                                1                      -- metrics compute 
frequency
                              );

INFO:  Processed 60 images: Fit took 0.57217502594 sec, Total was 
0.817452907562 sec  (seg0 slice1 10.128.0.41:40000 pid=19573)
CONTEXT:  PL/Python function "fit_transition"
INFO:  Processed 60 images: Fit took 0.554927110672 sec, Total was 
0.800101041794 sec  (seg1 slice1 10.128.0.41:40001 pid=19574)
CONTEXT:  PL/Python function "fit_transition"
INFO:  Time for training in iteration 1: 2.43148899078 sec
CONTEXT:  PL/Python function "madlib_keras_fit"
INFO:  Time for evaluation in iteration 1: 0.217161893845 sec.
CONTEXT:  PL/Python function "madlib_keras_fit"
INFO:  Training set metric after iteration 1: 0.524999976158.
CONTEXT:  PL/Python function "madlib_keras_fit"
INFO:  Training set loss after iteration 1: 0.984773635864.
CONTEXT:  PL/Python function "madlib_keras_fit"
INFO:  Time for evaluation in iteration 1: 0.205282926559 sec.
CONTEXT:  PL/Python function "madlib_keras_fit"
INFO:  Validation set metric after iteration 1: 0.600000023842.
CONTEXT:  PL/Python function "madlib_keras_fit"
INFO:  Validation set loss after iteration 1: 0.940379023552.
CONTEXT:  PL/Python function "madlib_keras_fit"
{code}

change to

{code}
INFO:  Time for training in iteration 1: 2.43148899078 sec
       Time for evaluating training dataset in iteration 1: 0.217161893845 sec
       Training set metric after iteration 1: 0.524999976158
       Training set loss after iteration 1: 0.984773635864
       Time for evaluating validation dataset in iteration 1: 0.205282926559 sec
       Validation set metric after iteration 1: 0.600000023842
       Validation set loss after iteration 1: 0.940379023552
CONTEXT:  PL/Python function "madlib_keras_fit"
{code}

Note change in wording ^^^ because there are 2 evaluation times.





--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to