How to Use W&B Teams For Your University Machine Learning Projects For Free

How you can use W&B teams for collaborating on machine learning projects. Made by Ivan Goncharov using Weights & Biases
Ivan Goncharov

MLOps tools for students

Weights & Biases helps power machine learning research and production for some of the most prominent companies and institutions in ML, places like OpenAI or NVIDIA.
But did you also know that W&B can help you ace your university machine learning assignments? And do it for free?

What is Weights & Biases?

If you don't know, now you know: Weights & Biases is an MLOps tools platform designed to be used by machine learning practitioners and help with tracking experiments, versioning datasets & models, finding the best hyperparameters, and a whole lot more.
Weights & Biases project dashboard
W&B summarizes all of the aspects of your machine learning projects right in your dashboard (think of it like a customizable place where you can compare all of your ML experiments side-by-side).
And guess what? W&B is free for personal and academic use. (The latter is especially important for students and academics and something we've championed since we started the company).

W&B Teams

Now, picture this: say, you have a group assignment to train a PyTorch neural network and you would like to effectively collaborate with your fellow students on the assignment. That's where W&B Teams comes into play.
Instead of screenshots, clunky spreadsheets, or bespoke, hacky tools, W&B Teams is a feature that allows you and your team to collaborate together in a private dashboard. That means you can analyze datasets, track experiments and explore models together all in one dashboard.
Runs logged by different users
For example: with W&B Teams you're now able to log runs (training sessions of your models), compare them in a single, centralized place, and see which runs and types of models were logged by which teammate. You can see each other's work, build off your teammate's successes, get inspired, and really dig into every run, using everyone's unique skills and viewpoints to arrive at better solutions more quickly.
You can log different training sessions of different models and then see whose model got the best accuracy of all your team members (a friendly competition always makes things more fun, right? 😉)

Creating a W&B Team (it takes 5 minutes)

So how do you create a team on W&B? It's easy!
  1. First, you'll need log into your Weights & Biases account.
If you don't have a Weights & Biases account yet, you can quickly create one here. 🙂
  1. Next, click "Invite Team" on your profile page. It's in the upper righthand corner.
3. On the next screen, select "Academic."
4. Then fill out these details:
5. Next: invite your team! People with whose emails you specify will be invited to join your team (they can also create create a W&B account, if they don't have one already).
6. Click create team.
Now you can see your team account page with guides for how to log training metrics (and other data) to this team from different machine learning frameworks.

Logging runs to your team

Now that you have a team account on Weights & Biases team (with a wandb.ai url), you can create projects (and log stuff to them) almost exactly as you would for your personal account.
The only thing that I'd like to point out is that now, along with specifying your project name, you also now can specify entity , under which you pass the team name. In this case, the project is called ml-class-project and the team name is the-Geoffrey-Hinton-fanclub.
import wandb# start a new experiment and log to your teamwandb.init(project="ml-class-project", entity='the-geoffrey-hinton-fan-club')# capture a dictionary of hyperparameters with configwandb.config = {"learning_rate": 0.001, "epochs": 100, "batch_size": 128}# set up model and datamodel, dataloader = get_model(), get_data()for batch in dataloader: metrics = model.training_step() # log metrics inside your training loop to visualize model performance wandb.log(metrics)
Here's a hot tip: You can specify the default destination for all your W&B projects (even if you don't specify entity) in your personal account settings. This may be useful when you want to log some runs without specifying entity to the team and then switch back and log some runs to your personal projects.

Let's see what W&B Teams can do

Here's a beautiful example W&B Teams project dashboard. (you can click on this link and open this public project yourself).

Share your ML experiments with the world (or just your professor)

Did you know that what you're reading right now is no ordinary text editor but, actually, a really powerful tool for sharing machine learning insights?
W&B Reports is a powerful collaborative feature which combines a nice text editor with the ability to embed the very interactive charts that you get when you log data to Weights & Biases.
Here are a few examples below! Feel free to click on charts and play around with them.
You can keep your reports private and only accessible to your team members while you're crafting them.
Then, once everything looks nice and polished, you can make the your project public and present your findings by sharing a link to your report, or exporting it as PDF or LaTeX. 🔥
Here's a great video about reports if you'd like to learn more.

Here are a few tips on how to collaborate on ML projects and use W&B Teams to their full power:

# Flexible integration for any Python scriptimport wandb# 1. Start a W&B runwandb.init(project='gpt3', entity='the-geoffrey-hinton-fan-club')# 2. Save model inputs and hyperparametersconfig = wandb.configconfig.learning_rate = 0.01# Model training here# 3. Log metrics over time to visualize performancewandb.log({"loss": loss})
You can learn more about wandb.log in the docs.

Conclusion

Thank you for reading and please visit https://wandb.ai/create-team to create your team, and if you'd like to learn more feel free to visit W&B Teams documentation.
And if you haven't used Weights & Biases before but want to try, here's how you can get started.