-
Notifications
You must be signed in to change notification settings - Fork 0
/
autolog.txt
58 lines (38 loc) · 3.1 KB
/
autolog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
**`mlflow.autolog()`** is a powerful feature in MLflow that automatically logs parameters, metrics, models, and other relevant information during your machine learning training process. However, it's important to know what can and cannot be logged automatically.
### **Things That Can Be Logged by `mlflow.autolog`:**
1. **Parameters:**
- Hyperparameters used to train the model, such as `max_depth`, `learning_rate`, `n_estimators`, etc.
2. **Metrics:**
- Common evaluation metrics like accuracy, precision, recall, and loss values, depending on the model and framework being used.
3. **Model:**
- The trained model itself is automatically logged.
4. **Artifacts:**
- Certain artifacts like model summary and plots (e.g., learning curves, confusion matrix) are logged if supported by the framework.
5. **Framework-Specific Information:**
- Framework-specific details like early stopping criteria in gradient boosting models or deep learning models (e.g., number of epochs, optimizer configuration).
6. **Environment Information:**
- Details about the environment such as installed libraries and versions.
7. **Training Data and Labels:**
- Information about the dataset size and sometimes feature information, but not the entire dataset itself.
8. **Automatic Model Signature:**
- Autologging can infer the input types (signature) of the model and save them along with the model.
### **Things That Cannot Be Logged by `mlflow.autolog`:**
1. **Custom Metrics:**
- Metrics not included in the default set for the specific framework (e.g., F1 score if it's not the default metric) will not be logged unless manually specified.
2. **Custom Artifacts:**
- Custom plots, charts, or files that are not part of the default model training process (e.g., a custom visualization or report).
3. **Preprocessed Data:**
- The transformed or preprocessed data used during training or testing is not logged unless you manually log it as an artifact.
4. **Intermediate Model States:**
- Models saved at intermediate stages of training (e.g., after every epoch) are not logged unless explicitly done so.
5. **Complex Model Structures:**
- If you're using a non-standard or highly customized model structure, `mlflow.autolog` might miss some logging details.
6. **Non-standard Training Loops:**
- If your training loop is not compatible with the standard loops expected by MLflow (e.g., custom training loops), autologging might not capture everything correctly.
7. **Non-Supported Frameworks:**
- `mlflow.autolog` does not support all frameworks. If your model is built with a framework that MLflow doesn’t support, autologging won’t work.
8. **Custom Hyperparameter Tuning:**
- Hyperparameters or configurations that are outside the scope of the framework’s autologging capabilities (e.g., specific settings in a custom grid search).
### Summary:
- **Use Cases:** `mlflow.autolog` is great for quick and convenient logging, especially for standard workflows in supported frameworks.
- **Limitations:** Custom elements, complex structures, and unsupported frameworks require manual logging to capture all relevant details.