A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/iterative/dvclive below:

iterative/dvclive: 📈 Log and track ML metrics, parameters, models with Git and/or DVC

DVCLive is a Python library for logging machine learning metrics and other metadata in simple file formats, which is fully compatible with DVC.

Initialize DVC Repository
$ git init
$ dvc init
$ git commit -m "DVC init"

Copy the snippet below into train.py for a basic API usage example:

import time
import random

from dvclive import Live

params = {"learning_rate": 0.002, "optimizer": "Adam", "epochs": 20}

with Live() as live:

    # log a parameters
    for param in params:
        live.log_param(param, params[param])

    # simulate training
    offset = random.uniform(0.2, 0.1)
    for epoch in range(1, params["epochs"]):
        fuzz = random.uniform(0.01, 0.1)
        accuracy = 1 - (2 ** - epoch) - fuzz - offset
        loss = (2 ** - epoch) + fuzz + offset

        # log metrics to studio
        live.log_metric("accuracy", accuracy)
        live.log_metric("loss", loss)
        live.next_step()
        time.sleep(0.2)

See Integrations for examples using DVCLive alongside different ML Frameworks.

Run this a couple of times to simulate multiple experiments:

$ python train.py
$ python train.py
$ python train.py
...

DVCLive outputs can be rendered in different ways:

You can use dvc exp show and dvc plots to compare and visualize metrics, parameters and plots across experiments:

─────────────────────────────────────────────────────────────────────────────────────────────────────────────
Experiment                 Created    train.accuracy   train.loss   val.accuracy   val.loss   step   epochs
─────────────────────────────────────────────────────────────────────────────────────────────────────────────
workspace                  -                  6.0109      0.23311          6.062    0.24321      6   7
master                     08:50 PM                -            -              -          -      -   -
├── 4475845 [aulic-chiv]   08:56 PM           6.0109      0.23311          6.062    0.24321      6   7
├── 7d4cef7 [yarer-tods]   08:56 PM           4.8551      0.82012         4.5555   0.033533      4   5
└── d503f8e [curst-chad]   08:56 PM           4.9768     0.070585         4.0773    0.46639      4   5
─────────────────────────────────────────────────────────────────────────────────────────────────────────────
$ dvc plots diff $(dvc exp list --names-only) --open

DVC Extension for VS Code

Inside the DVC Extension for VS Code, you can compare and visualize results using the Experiments and Plots views:

While experiments are running, live updates will be displayed in both views.

If you push the results to DVC Studio, you can compare experiments against the entire repo history:

You can enable Studio Live Experiments to see live updates while experiments are running.

Comparison to related technologies

DVCLive is an ML Logger, similar to:

The main differences with those ML Loggers are:

You can then use different options to visualize the metrics, parameters, and plots across experiments.

Contributions are very welcome. To learn more, see the Contributor Guide.

Distributed under the terms of the Apache 2.0 license, dvclive is free and open source software.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4