You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@madlib.apache.org by "Frank McQuillan (Jira)" <ji...@apache.org> on 2020/08/06 23:44:00 UTC

[jira] [Assigned] (MADLIB-1446) DL: Hyperband phase 2 - generate MST table

     [ https://issues.apache.org/jira/browse/MADLIB-1446?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Frank McQuillan reassigned MADLIB-1446:
---------------------------------------

    Assignee: Advitya Gemawat

> DL:  Hyperband phase 2 - generate MST table
> -------------------------------------------
>
>                 Key: MADLIB-1446
>                 URL: https://issues.apache.org/jira/browse/MADLIB-1446
>             Project: Apache MADlib
>          Issue Type: New Feature
>          Components: Deep Learning
>            Reporter: Frank McQuillan
>            Assignee: Advitya Gemawat
>            Priority: Major
>             Fix For: v1.18.0
>
>
> Python code to do some version of this is in https://github.com/apache/madlib-site/blob/asf-site/community-artifacts/Deep-learning/automl/hyperband-diag-cifar10-v1.ipynb in methods called `setup_full_schedule()` and `create_mst_superset()` + combine with the random search function from https://www.pivotaltracker.com/story/show/173692930
> **Story***
> Generate the MST table and do input validation on input params (to the extent possible without implementing the whole method).  It does not do the whole hyperband method.  The proposed interface:
> {code}
> madlib_keras_automl(
>     source_table,					-- input
>     model_output_table,				-- output
>     model_selection_table,			-- output
>     model_arch_table,				-- input
>     model_id_list,
>    compile_params_grid,
>    fit_params_grid,
>     automl_method,					-- new params vvv
>     automl_params					
>     random_state,					-- optional -- from generate model configs vvv
> 	object_table					-- optional
>     use_gpus,						-- optional -- from fit multiple vvv
>     validation_table,				-- optional
>     metrics_compute_frequency,		-- optional
>     name,							-- optional
>     description						-- optional
>     )
> {code}
> Here are the output tables:
> (1)
> <model_output_table>
> Same as model output table in 
> https://madlib.apache.org/docs/latest/group__grp__keras__run__model__selection.html
> e.g., for R=81 and n=3 will have 81+27+9+6+5 rows
> (2)
> <model_output_table>_summary
> Same as model output table summary in 
> https://madlib.apache.org/docs/latest/group__grp__keras__run__model__selection.html
> will have 1 row + add the following columns at the bottom, i.e., right side of the table:
> {code}
> use_gpus				BOOLEAN					e.g.,  TRUE         		-- this is missing from summary table from before
> automl_method			TEXT					e.g., 'hyperband'
> automl_params_names		TEXT[]					e.g., {'R', 'eta', 'skip_last' }
> automl_params_vals		TEXT[]					e.g., {'81', '3', 'TRUE'} 	-- note this needs to be text array since mixed types of autoML params		
> {code}
> (3)
> <model_output_table>_info
> Same as model output table info in 
> https://madlib.apache.org/docs/latest/group__grp__keras__run__model__selection.html
> e.g., for R=81 and n=3 will have 81+27+9+6+5 rows + add the following columns at the bottom, i.e., right side of the table:
> {code}
> s						INTEGER				"Bracket number"							e.g., 4		
> i						INTEGER				"Depth in bracket model trained to"			e.g., 3
> {code}
> (4)
> <model_selection_table>
> Same as model selection table in 
> https://madlib.apache.org/docs/latest/group__grp__keras__setup__model__selection.html
> e.g., for R=81 and n=3 will have 81+27+9+6+5 rows
> (5)
> <model_selection_table>_summary
> Same as model selection table in 
> https://madlib.apache.org/docs/latest/group__grp__keras__setup__model__selection.html
> **Acceptance**
> 1) For `R=81, eta=3` check that it creates the correct MST tables  <model_selection_table> and <model_selection_table>_summary
> 2) Set `skip_last =1` and check that it creates the correct MST tables
> 3) Try multiple other values to see if produces the correct schedule



--
This message was sent by Atlassian Jira
(v8.3.4#803005)