mirror of
https://github.com/clearml/clearml-docs
synced 2025-06-25 17:46:27 +00:00
parent
69fac20824
commit
c0b01c760b
@ -25,7 +25,7 @@ create customized, step-specific callbacks.
|
|||||||

|

|
||||||
|
|
||||||
|
|
||||||
## Simple DAG Pipelines
|
## Simple DAG pipelines
|
||||||
|
|
||||||
For a simple, DAG based logic, use the off-the-shelf [`PipelineController`](../references/sdk/automation_controller_pipelinecontroller.md) class to define the DAG (see an example
|
For a simple, DAG based logic, use the off-the-shelf [`PipelineController`](../references/sdk/automation_controller_pipelinecontroller.md) class to define the DAG (see an example
|
||||||
[here](../guides/pipeline/pipeline_controller)). Once the `PipelineController` object is populated and configured,
|
[here](../guides/pipeline/pipeline_controller)). Once the `PipelineController` object is populated and configured,
|
||||||
@ -56,7 +56,7 @@ It could also be useful to run a pipeline that runs tasks concurrently, training
|
|||||||
values simultaneously. See the [Tabular training pipeline](../guides/frameworks/pytorch/notebooks/table/tabular_training_pipeline.md)
|
values simultaneously. See the [Tabular training pipeline](../guides/frameworks/pytorch/notebooks/table/tabular_training_pipeline.md)
|
||||||
example of a pipeline with concurrent steps.
|
example of a pipeline with concurrent steps.
|
||||||
|
|
||||||
## Custom Pipelines
|
## Custom pipelines
|
||||||
|
|
||||||
In cases where a DAG is insufficient (for example, when needing to launch one pipeline, then, if performance is inadequate,
|
In cases where a DAG is insufficient (for example, when needing to launch one pipeline, then, if performance is inadequate,
|
||||||
rerun pipeline again), users can apply custom logic, using generic methods to enqueue tasks, implemented in python code.
|
rerun pipeline again), users can apply custom logic, using generic methods to enqueue tasks, implemented in python code.
|
||||||
|
@ -268,7 +268,7 @@ cloned = Task.clone(
|
|||||||
)
|
)
|
||||||
```
|
```
|
||||||
|
|
||||||
A cloned Task starts in [draft](#task-states-and-state-transitions) mode, so its Task configurations can be edited (see
|
A cloned Task starts in [draft](#task-states) mode, so its Task configurations can be edited (see
|
||||||
[Task.set_parameters](../references/sdk/task.md#set_parameters)).
|
[Task.set_parameters](../references/sdk/task.md#set_parameters)).
|
||||||
Once a Task is modified, launch it by pushing it into an execution queue, then a [ClearML Agent](../clearml_agent) will pull
|
Once a Task is modified, launch it by pushing it into an execution queue, then a [ClearML Agent](../clearml_agent) will pull
|
||||||
it from the queue and execute the Task.
|
it from the queue and execute the Task.
|
||||||
|
@ -8,7 +8,7 @@ two types of annotations: **Frame objects** and **Frame labels**.
|
|||||||
Annotation Tasks can be used to efficiently organize the annotation of frames in Dataset versions (see
|
Annotation Tasks can be used to efficiently organize the annotation of frames in Dataset versions (see
|
||||||
[Annotations Task Page](webapp/webapp_annotator.md)).
|
[Annotations Task Page](webapp/webapp_annotator.md)).
|
||||||
|
|
||||||
For information about how to view, create, and manage annotations using the WebApp, see [Annotating Images and Videos](#annotating-images-and-video).
|
For information about how to view, create, and manage annotations using the WebApp, see [Annotating Images and Videos](webapp/webapp_annotator.md#annotating-images-and-video).
|
||||||
|
|
||||||
## Frame objects
|
## Frame objects
|
||||||
|
|
||||||
@ -27,7 +27,7 @@ Frame labels are applied to an entire frame, not a region in a frame.
|
|||||||
|
|
||||||
### Adding a frame object
|
### Adding a frame object
|
||||||
|
|
||||||
To add a frame object annotation to a SingleFrame, use the [`SingleFrame.add_annotation`](google.com) method.
|
To add a frame object annotation to a SingleFrame, use the `SingleFrame.add_annotation` method.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
# a bounding box labeled "test" at x=10,y=10 with width of 30px and height of 20px
|
# a bounding box labeled "test" at x=10,y=10 with width of 30px and height of 20px
|
||||||
@ -41,14 +41,14 @@ When adding an annotation there are a few options for entering the annotation's
|
|||||||
* `poly2d_xy` - A list of floating points (x,y) to create for single polygon, or a list of Floating points lists for a
|
* `poly2d_xy` - A list of floating points (x,y) to create for single polygon, or a list of Floating points lists for a
|
||||||
complex polygon
|
complex polygon
|
||||||
* `ellipse2d_xyrrt` - A List consisting of cx, cy, rx, ry, and theta for an ellipse
|
* `ellipse2d_xyrrt` - A List consisting of cx, cy, rx, ry, and theta for an ellipse
|
||||||
* And more! See [`SingleFrame.add_annotation`](google.com) for further options.
|
* And more! See `SingleFrame.add_annotation` for further options.
|
||||||
|
|
||||||
### Adding a Frame label
|
### Adding a Frame label
|
||||||
|
|
||||||
Adding a frame label is similar to creating a frame objects, except that coordinates don't need to be specified, since
|
Adding a frame label is similar to creating a frame objects, except that coordinates don't need to be specified, since
|
||||||
the whole frame is being referenced.
|
the whole frame is being referenced.
|
||||||
|
|
||||||
Use the [`SingleFrame.add_annotation`](google.com) method, but use only the `labels` parameter.
|
Use the `SingleFrame.add_annotation` method, but use only the `labels` parameter.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
# labels for the whole frame
|
# labels for the whole frame
|
||||||
|
@ -30,7 +30,7 @@ frame.metadata['dangerous'] = 'no'
|
|||||||
|
|
||||||
### Adding ROI metadata
|
### Adding ROI metadata
|
||||||
|
|
||||||
Metadata can be added to individual ROIs when adding an annotation to a `frame`, using the [`add_annotation`](google.com)
|
Metadata can be added to individual ROIs when adding an annotation to a `frame`, using the `add_annotation`
|
||||||
method.
|
method.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
|
@ -37,7 +37,7 @@ with an "Example" banner in the WebApp (UI).
|
|||||||
|
|
||||||
### Creating Datasets
|
### Creating Datasets
|
||||||
|
|
||||||
Use the [Dataset.create](google.com) method to create a Dataset. It will contain an empty version named `Current`.
|
Use the `Dataset.create` method to create a Dataset. It will contain an empty version named `Current`.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
from allegroai import Dataset
|
from allegroai import Dataset
|
||||||
@ -45,7 +45,7 @@ from allegroai import Dataset
|
|||||||
myDataset = Dataset.create(dataset_name='myDataset')
|
myDataset = Dataset.create(dataset_name='myDataset')
|
||||||
```
|
```
|
||||||
|
|
||||||
Or, use the [DatasetVersion.create_new_dataset](google.com) method.
|
Or, use the `DatasetVersion.create_new_dataset` method.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
from allegroai import DatasetVersion
|
from allegroai import DatasetVersion
|
||||||
@ -132,7 +132,7 @@ a Dataset version that yields a parent with two children, or when publishing the
|
|||||||
|
|
||||||
## Versioning Usage
|
## Versioning Usage
|
||||||
|
|
||||||
Manage Dataset versioning using the [DatasetVersion](google.com) class in the ClearML Enterprise SDK.
|
Manage Dataset versioning using the DatasetVersion class in the ClearML Enterprise SDK.
|
||||||
|
|
||||||
### Creating snapshots
|
### Creating snapshots
|
||||||
|
|
||||||
@ -140,7 +140,7 @@ If the Dataset contains only one version whose status is *Draft*, snapshots of t
|
|||||||
When creating a snapshot, the current version becomes the snapshot (it keeps the same version ID),
|
When creating a snapshot, the current version becomes the snapshot (it keeps the same version ID),
|
||||||
and the newly created version (with its new version ID) becomes the current version.
|
and the newly created version (with its new version ID) becomes the current version.
|
||||||
|
|
||||||
To create a snapshot, use the [DatasetVersion.create_snapshot](google.com) method.
|
To create a snapshot, use the `DatasetVersion.create_snapshot` method.
|
||||||
|
|
||||||
|
|
||||||
#### Snapshot naming
|
#### Snapshot naming
|
||||||
@ -205,7 +205,7 @@ myDataset = DatasetVersion.create_snapshot(dataset_name='MyDataset',
|
|||||||
|
|
||||||
Create a new version from any version whose status is *Published*.
|
Create a new version from any version whose status is *Published*.
|
||||||
|
|
||||||
To create a new version, call the [DatasetVersion.create_version](google.com) method, and
|
To create a new version, call the `DatasetVersion.create_version` method, and
|
||||||
provide:
|
provide:
|
||||||
* Either the Dataset name or ID
|
* Either the Dataset name or ID
|
||||||
* The parent version name or ID from which the child inherits frames
|
* The parent version name or ID from which the child inherits frames
|
||||||
@ -241,7 +241,7 @@ myDataset = DatasetVersion.create_version(dataset_name='MyDataset',
|
|||||||
|
|
||||||
### Getting versions
|
### Getting versions
|
||||||
|
|
||||||
To get a version or versions, use the [DatasetVersion.get_version](google.com) and [DatasetVersion.get_versions](google.com)
|
To get a version or versions, use the `DatasetVersion.get_version` and `DatasetVersion.get_versions`
|
||||||
methods, respectively.
|
methods, respectively.
|
||||||
|
|
||||||
**Getting a list of all versions**
|
**Getting a list of all versions**
|
||||||
@ -281,7 +281,7 @@ myDatasetversion = DatasetVersion.get_version(dataset_name='MyDataset',
|
|||||||
|
|
||||||
### Deleting versions
|
### Deleting versions
|
||||||
|
|
||||||
Delete versions which are status *Draft* using the [Dataset.delete_version](google.com) method.
|
Delete versions which are status *Draft* using the `Dataset.delete_version` method.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
from allegroai import Dataset
|
from allegroai import Dataset
|
||||||
@ -293,7 +293,7 @@ myDataset.delete_version(version_name='VersionToDelete')
|
|||||||
|
|
||||||
### Publishing versions
|
### Publishing versions
|
||||||
|
|
||||||
Publish (make read-only) versions which are status *Draft* using the [Dataset.publish_version](google.com) method. This includes the current version, if the Dataset is in
|
Publish (make read-only) versions which are status *Draft* using the `Dataset.publish_version` method. This includes the current version, if the Dataset is in
|
||||||
the simple version structure.
|
the simple version structure.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
|
@ -132,7 +132,7 @@ may repeat. The settings include the following:
|
|||||||
|
|
||||||
### Creating Dataviews
|
### Creating Dataviews
|
||||||
|
|
||||||
Use the [`allegroai.DataView`](google.com) class to create a DataView object. Instantiate DataView objects, specifying
|
Use the `allegroai.DataView` class to create a DataView object. Instantiate DataView objects, specifying
|
||||||
iteration settings and additional iteration parameters that control query iterations.
|
iteration settings and additional iteration parameters that control query iterations.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
@ -143,7 +143,7 @@ myDataView = DataView(iteration_order=IterationOrder.random, iteration_infinite=
|
|||||||
|
|
||||||
### Adding queries
|
### Adding queries
|
||||||
|
|
||||||
To add a query to a DataView, use the [`DataView.add_query`](google.com) method and specify Dataset versions,
|
To add a query to a DataView, use the `DataView.add_query` method and specify Dataset versions,
|
||||||
ROI and / or frame queries, and other criteria.
|
ROI and / or frame queries, and other criteria.
|
||||||
|
|
||||||
The `dataset_name` and `version_name` arguments specify the Dataset Version. The `roi_query` and `frame_query` arguments
|
The `dataset_name` and `version_name` arguments specify the Dataset Version. The `roi_query` and `frame_query` arguments
|
||||||
@ -254,7 +254,7 @@ myDataView.add_query(dataset_name='myDataset',
|
|||||||
|
|
||||||
### Controlling query iteration
|
### Controlling query iteration
|
||||||
|
|
||||||
Use [`DataView.set_iteration_parameters`](google.com) to manage the order, number, timing, and reproducibility of frames
|
Use `DataView.set_iteration_parameters` to manage the order, number, timing, and reproducibility of frames
|
||||||
for training.
|
for training.
|
||||||
|
|
||||||
|
|
||||||
@ -303,8 +303,8 @@ myDataView.set_iteration_parameters(
|
|||||||
|
|
||||||
### Debiasing input data
|
### Debiasing input data
|
||||||
|
|
||||||
Debias input data using the [DataView.add_query](google.com) method's [weight](google.com) argument to add weights. This
|
Debias input data using the `DataView.add_query` method's `weight` argument to add weights. This
|
||||||
is the same [DataView.add_query](google.com) that can be used to specify Dataset versions, and ROI queries and frame queries.
|
is the same `DataView.add_query` that can be used to specify Dataset versions, and ROI queries and frame queries.
|
||||||
|
|
||||||
This example adjusts an imbalance in the input data to improve training for `Car` ROIs that are also `largely occluded`
|
This example adjusts an imbalance in the input data to improve training for `Car` ROIs that are also `largely occluded`
|
||||||
(obstructed). For every frame containing at least one ROI labeled `Car`, approximately five frames containing at least
|
(obstructed). For every frame containing at least one ROI labeled `Car`, approximately five frames containing at least
|
||||||
@ -357,7 +357,7 @@ Set label enumeration values to maintain data conformity across multiple codebas
|
|||||||
It is important to set enumeration values for all labels of importance.
|
It is important to set enumeration values for all labels of importance.
|
||||||
The default value for labels that are not assigned values is `-1`.
|
The default value for labels that are not assigned values is `-1`.
|
||||||
|
|
||||||
To assign enumeration values for labels use the [`DataView.set_labels`](google.com) method, set a mapping of a label
|
To assign enumeration values for labels use the `DataView.set_labels` method, set a mapping of a label
|
||||||
(string) to an integer for ROI labels in a Dataview object.
|
(string) to an integer for ROI labels in a Dataview object.
|
||||||
|
|
||||||
If certain ROI labels are [mapped](#mapping-roi-labels) from certain labels **to** other labels,
|
If certain ROI labels are [mapped](#mapping-roi-labels) from certain labels **to** other labels,
|
||||||
|
@ -69,7 +69,7 @@ myVersion.add_frames(frames)
|
|||||||
|
|
||||||
### Accessing a FrameGroup
|
### Accessing a FrameGroup
|
||||||
|
|
||||||
To access a FrameGroup, use the [DatasetVersion.get_single_frame](google.com) method, just like when
|
To access a FrameGroup, use the `DatasetVersion.get_single_frame` method, just like when
|
||||||
[accessing a SingleFrame](single_frames.md#accessing-singleframes).
|
[accessing a SingleFrame](single_frames.md#accessing-singleframes).
|
||||||
|
|
||||||
```python
|
```python
|
||||||
@ -102,7 +102,7 @@ myVersion.update_frames(frames)
|
|||||||
|
|
||||||
### Deleting frames
|
### Deleting frames
|
||||||
|
|
||||||
To delete a FrameGroup, use the [DatasetVersion.delete_frames](google.com) method, just like when deleting a
|
To delete a FrameGroup, use the `DatasetVersion.delete_frames` method, just like when deleting a
|
||||||
SingleFrame, except that a FrameGroup is being referenced.
|
SingleFrame, except that a FrameGroup is being referenced.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
|
@ -218,11 +218,11 @@ There are also options to populate the instance with:
|
|||||||
* A dictionary of annotation objects - `annotations`
|
* A dictionary of annotation objects - `annotations`
|
||||||
* A URI link to a mask file for the frame - `mask_source`
|
* A URI link to a mask file for the frame - `mask_source`
|
||||||
|
|
||||||
For more information, see [SingleFrame](google.com).
|
For more information, see the `SingleFrame` class description.
|
||||||
|
|
||||||
### Adding SingleFrames to a Dataset Version
|
### Adding SingleFrames to a Dataset Version
|
||||||
|
|
||||||
Use the [`DatasetVersion.add_frames`](google.com) method to add SingleFrames to a [Dataset version](dataset.md#dataset-versioning)
|
Use the `DatasetVersion.add_frames` method to add SingleFrames to a [Dataset version](dataset.md#dataset-versioning)
|
||||||
(see [Creating snapshots](dataset.md#creating-snapshots) or [Creating child versions](dataset.md#creating-child-versions)).
|
(see [Creating snapshots](dataset.md#creating-snapshots) or [Creating child versions](dataset.md#creating-child-versions)).
|
||||||
|
|
||||||
```python
|
```python
|
||||||
@ -248,7 +248,7 @@ myDatasetversion.add_frames(frames)
|
|||||||
|
|
||||||
|
|
||||||
### Accessing SingleFrames
|
### Accessing SingleFrames
|
||||||
To access a SingleFrame, use the [DatasetVersion.get_single_frame](google.com) method.
|
To access a SingleFrame, use the `DatasetVersion.get_single_frame` method.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
from allegroai import DatasetVersion
|
from allegroai import DatasetVersion
|
||||||
@ -266,9 +266,9 @@ To access a SingleFrame, the following must be specified:
|
|||||||
### Updating SingleFrames
|
### Updating SingleFrames
|
||||||
|
|
||||||
To update a SingleFrame:
|
To update a SingleFrame:
|
||||||
* Access the SingleFrame by calling the [DatasetVersion.get_single_frame](google.com) method,
|
* Access the SingleFrame by calling the `DatasetVersion.get_single_frame` method,
|
||||||
* Make changes to the frame
|
* Make changes to the frame
|
||||||
* Update the frame in a DatasetVersion using the [DatasetVersion.update_frames](google.com) method.
|
* Update the frame in a DatasetVersion using the `DatasetVersion.update_frames` method.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
frames = []
|
frames = []
|
||||||
@ -296,7 +296,7 @@ myDatasetVersion.update_frames(frames)
|
|||||||
|
|
||||||
### Deleting frames
|
### Deleting frames
|
||||||
|
|
||||||
To delete a SingleFrame, use the [DatasetVersion.delete_frames](google.com) method.
|
To delete a SingleFrame, use the `DatasetVersion.delete_frames` method.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
frames = []
|
frames = []
|
||||||
|
@ -21,7 +21,7 @@ task.connect(dataview)
|
|||||||
|
|
||||||
### Accessing a Task's Dataviews
|
### Accessing a Task's Dataviews
|
||||||
|
|
||||||
Use the [Task.get_dataviews](google.com) method to access the Dataviews that are connected to a Task.
|
Use the `Task.get_dataviews` method to access the Dataviews that are connected to a Task.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
task.get_dataviews():
|
task.get_dataviews():
|
||||||
|
Loading…
Reference in New Issue
Block a user