Giter Site home page Giter Site logo

learndrake's Introduction

Travis build status Codecov test coverage

Machine learning workflow management with drake

Machine learning workflows can be difficult to manage. A single round of computation can take several hours to complete, and routine updates to the code and data tend to invalidate hard-earned results. You can enhance the maintainability, hygiene, speed, scale, and reproducibility of such projects with the drake R package. drake resolves the dependency structure of your analysis pipeline, skips tasks that are already up to date, executes the rest with optional distributed computing, and organizes the output so you rarely have to think about data files. This workshop will teach you how to create and maintain machine learning projects with drake-powered automation.

Installation

To obtain the workshop materials, simply install the learndrake package.

install.packages("remotes")
library(remotes)
install_github("wlandau/learndrake")

Usage

The functions in learndrake help navigate and deploy the workshop materials.

Function Purpose
view_slides() Open the introductory slides in a web browser.
save_notebooks() Save the tutorials to your computer: R notebooks and supporting files.
launch_app() Launch a Shiny app that accompanies a tutorial.
save_app() Save the app files so you can deploy to shinyapps.io or Shiny Server.

Introductory slides

The workshop begins with an introductory presentation on drake. View the slides at https://wlandau.github.io/learndrake/index.html or open them yourself in a browser with view_slides().

Tutorials

After the introductory presentation, students work through a sequence of R notebooks in order. Use save_notebooks() to save the notebooks and supporting files to your computer.

Notebook Topic
1-churn.Rmd Deep learning case study
2-setup.Rmd Convert the case study to a new drake project.
3-flow.Rmd Develop, work, and iterate on the project.
4-plans A deep dive into drake plans.
5-files Custom input and output data files.
6-reports Special considerations of knitr and R Markdown reports.
7-hpc High-performance computing

Apps

Notebooks 3-flow.Rmd and 4-plans.Rmd come with supporting Shiny apps to conduct the learning exercises.

App Notebook Deploy locally Public URL
Iterate on a drake workflow 3-flow.Rmd launch_app("flow") http://wlandau.shinyapps.io/learndrakeflow
Exercises on drake plans 4-plans.Rmd launch_app("plans") http://wlandau.shinyapps.io/learndrakeplans
Visualize drake projects 4-plans.Rmd launch_app("drakeplanner") http://wlandau.shinyapps.io/drakeplanner

Thanks

Thanks to For
Edgar Ruiz Uniting drake and keras at https://github.com/sol-eng/tensorflow-w-r and providing valuable advice on the construction of the workshop.
Matt Dancho Publishing the original blog post with the workshop’s underlying case study.
Eric Nantz Reviewing and providing feedback on this workshop.

learndrake's People

Contributors

wlandau-lilly avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.