Skip to content

Latest commit

 

History

History
159 lines (91 loc) · 8.98 KB

resources.md

File metadata and controls

159 lines (91 loc) · 8.98 KB
title menu_title menu_icon
Hackathon resources
Resources
journal-code
  • Getting Started

    Slack - Join the hackathon's Slack channel to connect, ask questions, and form teams

    Project proposals - team leaders should submit their project proposals using the instructions here

    Gather - Add the Gather Town event to your calendar

    Accelerated discovery forum - create an account to join the discussion forums

    Bayesian optimization - Watch the Accelerate '23 training workshop on Bayesian optimization below

    {% include youtube.html video="IVaWl2tL06c" title="A Gentle Introduction to Bayesian Optimization" %}

  • Orientation Modules

    Please complete the following orientation assignments in preparation for the hackathon to familiarize the tools and concepts you'll need. You will need to create a GitHub account to access these resources. If you are already familiar with git and GitHub, you may skip directly to "Intro to GitHub Classroom". When prompted, please select an identifier from the list that's given. In addition to these orientation modules, we also recommend that you familiarize yourself with Markdown syntax if this is new to you.

    📝 Intro to Git and GitHub 📝 Intro to GitHub Classroom

    For those looking for a refresher on Python programming or to implement a simple BO example, see the following GitHub Classroom assignments:

    📝 Python Refresher 📝 Simple Bayesian optimization script

    {% include youtube.html video="w3jLJU7DT5E" title="What is GitHub?" %}

  • Bayesian optimization

    Bayes Rule by 3Blue1Brown -- explanation of the fundamental concept behind Bayesian methods

    {% include youtube.html video="HZGCoVF3YvM" title="" %}

    A Visual Exploration of Gaussian Processes - An explanation of a commonly used predictive model in Bayesian optimization with visualizations and mathematical rigor

    Exploring Bayesian Optimization - An overview of active learning and Bayesian optimization with visualizations and mathematical rigor

    Bayesian Optimization Book - For those that REALLY want to understand BO, this is a self-contained, comprehensive deep dive that builds up basic principles from "scratch" and delves into advanced topics. The book is free and open-source.

  • Python

    Programming expertise is not required, but at least beginner Python programming experience is recommended for participation in code-focused projects of the hackathon. For those looking for a brief, interactive refresher on Python programming, see the GitHub Classroom assignment from the first section on this page. For those without prior Python experience, we recommend you complete an introductory Python course in preparation for the hackathon. Some resources are listed below:

    Python for Everybody by University of Michigan Learn Python 3 by CodeAcademy
    Intro to Python Programming for Materials Engineers Python Beginners Guide for Programmers by Python Software Foundation

    If you have no prior programming experience, you may wish to start with the Python Beginners Guide for Non-programmers by Python Software Foundation.

    {% include youtube.html video="x7X9w_GIm1s" title="What is Python?" %}

  • BO Tools

    Use of the tools listed on this page is not a requirement. A diverse set of packages and implementations is encouraged. Likewise, multiple teams using the same package is not a problem, in part because implementations can remain private during the course of the hackathon.[(?)][faq]{:title="Does my GitHub repository need to be public?"} If you'd like to see a specific tool listed here, please navigate to the "Improve this page" link at the bottom of the page and open a pull request. See also the Acceleration Consortium's curated list of optimization tools.

  • baybe

    This hackathon is co-organized by Merck KGaA. You may consider using an internal Merck tool that was recently open-sourced, called the Bayesian optimization BackEnd (BayBE). This tool focuses on real-world experimental campaigns in the physical sciences with support for integrating domain knowledge through custom parameter encodings and built-in chemical encodings. In addition, it allows for custom surrogate models, mixed variable types, and transfer learning.

  • ax

    The Ax Platform is a tool developed by Meta's Adaptive Experimentation team. It is a user-friendly, modular, and actively developed general-purpose Bayesian optimization platform with support for simple and advanced optimization tasks. It is a high-level wrapper to the widely used BoTorch library, also developed by Meta, which is built on PyTorch.

  • honegumi

    Honegumi (pronounced "ho neh goo mee", also referred to as "honey gummy"), deriving from the Japanese word for skeletal framework, is a package for interactively creating API tutorials with a focus on optimization packages. You use an interactive grid to select Bayesian optimization characteristics specific to your task and watch the corresponding template dynamically appear. "Open in Colab" and "Open in GitHub" links are also dynamically generated for each template. Honegumi pairs particularly well with LLMs to adapt the templates to real-world tasks.

  • The pre-packaged benchmark functions will be available on Hugging Face Spaces, which makes it easy to deploy and use our benchmark tasks through a web GUI, or more relevant to the hackathon - programmatically via a straightforward API. For those who are planning to develop their own benchmark as a hackathon project (Topic #2), we recommend hosting the final benchmark through this same interface. Start by watching the Hugging Face Spaces overview below, which shows how you can get one running in just a few minutes.

    {% include youtube.html video="3bSVKNKb_PY" title="Hugging Face Spaces Overview" %}

    To make this more concrete, see our implementation of the Branin function being run via the Hugging Face Spaces interface, which can be set up in just a few minutes. To see how to use it programmatically, click on the "Use with API" button at the bottom of the page (button marked in red in the image below).

    use with API

  • Guidelines

    Submission - The hackathon's workflow for submissions, including project topics and proposal instructions

[faq]: {{ site.baseurl }}{% link faq.md %}