question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Problem logging an experiment to wandb

See original GitHub issue

Describe the bug Logging a training run works fine, however when logging an experiment run (the evaluation part) with the default parameters, there is a OSError 22 relating to “probabilities_<UNK>.csv”

OSError: [Errno 22] Invalid argument: '/results/classification_Distilbert_2/label_probabilities_<UNK>.csv

To Reproduce Steps to reproduce the behavior:

  1. Run an experiment from the CLI with default parameters.
  2. Configure the model for text classification.
  3. Add the wandb flag

Model config

preprocessing:
    text:
        word_tokenizer: hf_tokenizer

input_features:
    -
        name: feature1
        type: text
        level: word
        encoder: distilbert
        pretrained_model_name_or_path: distilbert-base-uncased
    -
        name: feature2
        type: text
        level: word
        encoder: distilbert
        pretrained_model_name_or_path: distilbert-base-uncased
        tied_weights: feature1
    -
        name: feature3
        type: category

output_features:
    -
        name: label
        top_k: 5
        type: category

training:
    epochs: 3
    batch_size: 16
    learning_rate: 0.000005

wandb metadata

{
    "os": "Windows-10-10.0.19041-SP0",
    "python": "3.9.0",
    "heartbeatAt": "2022-03-10T14:21:23.463980",
    "startedAt": "2022-03-10T14:21:17.632459",
    "docker": null,
    "gpu": "NVIDIA GeForce RTX 2070",
    "gpu_count": 1,
    "cpu_count": 6,
    "cuda": null,
    "args": [
        "experiment",
        "--output_directory",
        "results",
        "--experiment_name",
        "classification",
        "--model_name",
        "Distilbert",
        "--training_set",
        "TRAIN_en.arrow",
        "--validation_set",
        "VAL_en.arrow",
        "--test_set",
        "EVAL_en.arrow",
        "--data_format",
        "feather",
        "--config_file",
        "model1.yaml",
        "--wandb"
    ],
    "state": "running",
    "program": "-m __main__",
    "executable": "I:\\Anaconda\\envs\\ludwig\\python.exe"
}

Expected behavior The csv file for the UNK token should be created.

Environment

  • OS: Windows-10-10.0.19041-SP0
  • Python version: 3.9
  • Ludwig version: 0.4.1

Additional context The problem can be avoided with the ludwig API and passing the parameter skip_save_predictions=True (not possible with the CLI).

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:8

github_iconTop GitHub Comments

1reaction
brightsparccommented, Mar 21, 2022

Thanks for this detailed error log @danielduckworth. We have identified the issue as a result of converting from a url which has the Posix file system format, to a local windows path. I have PR #1830 which should resolve this issue.

Please note whilst best effort is made to work on windows, it is not an officially supported platform at the moment.

0reactions
brightsparccommented, Mar 22, 2022

No worries, you can run the filesystem tests on windows using the filesystem marker. Let me know if they catch anything as I’m unable to repo locally.

pytest -m filesystem
Read more comments on GitHub >

github_iconTop Results From Across the Web

Troubleshooting - Documentation - Weights & Biases - Wandb
Calling wandb.log writes a line to a local file; it does not block any network calls. When you call wandb.init we launch a...
Read more >
Log distributed training experiments - Weights & Biases - Wandb
Use W&B to log distributed training experiments with multiple GPUs. ... This method is simple and robust, however, this method does not log...
Read more >
Launch Experiments with wandb.init ... - Weights & Biases
1. You aren't logged in on this machine. Run wandb login on the command line. · 2. You've set an entity that doesn't...
Read more >
wandb.log - Documentation - Weights & Biases
Logs a dictonary of data to the current run's history. log( ... wandb.log is not intended to be called more than a few...
Read more >
Troubleshooting - Documentation - Weights & Biases - WandB
Calling wandb.log writes a line to a local file; it does not block any network calls. When you call wandb.init we launch a...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found