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)