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/18 19:08:00 UTC

[jira] [Closed] (MADLIB-1445) DL: Hyperband phase 1 - print run schedule

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

Frank McQuillan closed MADLIB-1445.
-----------------------------------
    Resolution: Fixed

https://github.com/apache/madlib/pull/512

> DL:  Hyperband phase 1 - print run schedule
> -------------------------------------------
>
>                 Key: MADLIB-1445
>                 URL: https://issues.apache.org/jira/browse/MADLIB-1445
>             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 `Section 6.  Print run schedule` so you can use that as a starting point
> **Story***
> Helper function to print hyperband schedule.
> {code}
> SELECT hyperband_schedule (schedule_table, 
>                                  R,
> 						   eta,
> 						   skip_last)
> schedule_table
> VARCHAR. Name of output table for all hyperband rounds.
> R
> INTEGER. Maximum number of resources (iterations) that can be allocated to a single configuration.
> * error check >= eta
> eta (optional)
> INTEGER, default 3. Controls the proportion of configurations discarded in each round of successive halving.
> For example, for eta=3 will keep the best 1/3 the configurations for the next round.
> * error check > 1
> skip_last (optional)
> INTEGER, default 0. The number of last rounds to skip. For example, for skip_last=1 will skip the 
> last round (i.e., last entry in each bracket), which is standard randomized search and can 
> be expensive when run for the total R iterations. 
> * error check >= 0 and < s_max+1
> {code}
> Output 
> The Hyperband schedule output has the following columns:
> {code}
> s				INTEGER. Bracket number
> i    			        INTEGER. Round (depth) in bracket
> n_i				INTEGER. Number of configurations in this round
> r_i				INTEGER. Resources (iterations) in this round
> {code}
> **Acceptance**
> 1) For `R=81, eta=3` check that it prints out the same schedule as in the paper https://arxiv.org/pdf/1603.06560.pdf on page 9.
> 2) Set `skip_last =1` and check last row (rounds) in each bracket is dropped
> 3) Set `skip_last =2` and check last rows (rounds) in each bracket is dropped
> 4) Try multiple other values to see if produces the correct schedule
> 5) Try out of range values for R and eta and show it gives an error message



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