Skip to content

Topics in ITP: Contributing to ml5.js (Research)

Daniel Shiffman edited this page Oct 15, 2023 · 19 revisions

Welcome! This page contains a list of ideas and how you can help contribute to the ml5.js project as part of ITP's spring 2024 seminar.

Studio Description

This course is a studio-oriented seminar where students will actively participate in the evolution of the ml5.js open source project. Registration for this course will be conducted via an application process and is limited to 8 students. The structure of this course is inspired by initiatives such as the Processing Foundation Fellowship and Google Summer of Code. Students interested in enrolling are required to submit a detailed project proposal for the semester (instructions and application process to come). We invite proposals that encompass all facets of the ml5.js project, including but not limited to community management, documentation enhancement, website development, pedagogical research, development operations (DevOps), and expansion of machine learning models.

The ml5.js project actively seeks help with the features and initiatives listed, but we also look to applicants to propose ideas we haven't thought of ourselves. For all of our projects, it's incredibly important that things are kept as simple and friendly as possible. ml5.js is not meant to be a comprehensive and technically deep machine learning library for developers. It's for people who are less familiar with code and are new to machine learning. We're far less interested in features to make ml5.js more powerful for advanced users than we are in features that make it easier to handle tasks that are common for a wide range of our audience.

In addition to this list, we track specific bugs and enhancements via github issues:

If you have questions about an idea or need guidance on forming your proposal, please post to the ml5.js Discord (?). This is the best way to get feedback and develop your idea. This makes it possible for everyone to learn from your questions and contribute their thoughts.

Examples of Processing Foundation Fellowship and GSoC Reports

This studio is modeled after the Processing Foundation fellowship program and Google Summer of Code. To get a sense of the kinds of projects from these initiatives, you can read these wrap-up posts.

ml5.js Project Ideas

Website

Community and Education

  • develop and teach workshops
  • write and produce educational resources

Machine Learning Models Implementation

  • ml5.imageClassifier()
  • ml5.featureExtractor()
  • ml5.objectDetection()
  • ml5.soundClassifier()

Research and Development

  • Language Models and Embeddings
  • onnx.js back-end alternative to tensorflow.js

DevOps/Library Maintenance

  • unit tests
  • documentation materials for new contributors
Clone this wiki locally