-
Notifications
You must be signed in to change notification settings - Fork 192
added roboflow example #855
Conversation
|
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
|
|
||
| Download the dataset. Your $DATASET_URL should look something like `neural-magic/soccer-player-detection-gjrbw/2`. | ||
| ```bash | ||
| !roboflow download $DATASET_URL --format yolov5pytorch |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| !roboflow download $DATASET_URL --format yolov5pytorch | |
| roboflow download $DATASET_URL --format yolov5pytorch |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm (from the logging code side, I did not dive deep into the technicalities of RoboFlow API). I would clean up the jupyter notebook though (a lot of ugly prints there)
| 5. Re-deploy the newly trained YOLOv5-s model with DeepSparse | ||
|
|
||
| Run the following to install the packages needed for the Tutorial. We recommend you | ||
| use a virtual enviornment with Python. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| use a virtual enviornment with Python. | |
| use a virtual environment with Python. |
This should be an em dash without spaces.
Beth-Kosis
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Line 64: Is ORT commonly known? If not, the acronym should be spelled out.
Lines 209-210: Something seems to be missing in the second part of this sentence. But, I can't figure it out. Is it really saying, "...passing the arguments to the constructor" the local path part as a qualifier?
In the loggers section, we declare the RoboflowLogger, passing a local path its definition in roboflow-logger.py the arguments to the constructor (dataset_name and api_key).
|
|
||
| ## **What Is Continual Learning?** | ||
|
|
||
| The distribution of the incoming data to your production model will vary over time as the enviornment evolves. For example input images to a YOLOv5 model will look very different on a sunny day versus on a rainy day. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| The distribution of the incoming data to your production model will vary over time as the enviornment evolves. For example input images to a YOLOv5 model will look very different on a sunny day versus on a rainy day. | |
| The distribution of the incoming data to your production model will vary over time as the environment evolves. For example, input images to a YOLOv5 model will look very different on a sunny day versus on a rainy day. |
|
|
||
| ## **Tutorial Overview** | ||
|
|
||
| This example will demonstrate how to setup a Continual Learning system with Neural Magic and Roboflow |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| This example will demonstrate how to setup a Continual Learning system with Neural Magic and Roboflow | |
| This example will demonstrate how to set up a Continual Learning system with Neural Magic and Roboflow |
| to train YOLOv5-s to detect soccer players in video clips. | ||
|
|
||
| There are 5 steps: | ||
| 1. Deploy a YOLOv5-s model trained on COCO with DeepSparse |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 1. Deploy a YOLOv5-s model trained on COCO with DeepSparse | |
| 1. Deploy a YOLOv5-s model trained on COCO with DeepSparse. |
|
|
||
| There are 5 steps: | ||
| 1. Deploy a YOLOv5-s model trained on COCO with DeepSparse | ||
| 2. Log raw images from production to Roboflow |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 2. Log raw images from production to Roboflow | |
| 2. Log raw images from production to Roboflow. |
| There are 5 steps: | ||
| 1. Deploy a YOLOv5-s model trained on COCO with DeepSparse | ||
| 2. Log raw images from production to Roboflow | ||
| 3. Label images with Roboflow |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 3. Label images with Roboflow | |
| 3. Label images with Roboflow. |
|
|
||
| ## **Step 5: Redeploy the New Model** | ||
|
|
||
| We will create a new configuration file for the server which contains two endpoints - one with the sparse YOLOv5s |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| We will create a new configuration file for the server which contains two endpoints - one with the sparse YOLOv5s | |
| We will create a new configuration file for the Server which contains two endpoints—one with the sparse YOLOv5s |
| trained on COCO and the sparse YOLOv5s fine-tuned on the production data. | ||
|
|
||
| Note that we provided a `last.onnx` file (which we trained in the manner described above) in the `server` directory. | ||
| You can swap a path to your ONNX file if desired. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| You can swap a path to your ONNX file if desired. | |
| You can swap a path to your ONNX file, if desired. |
|
|
||
| You have successfully created a data flywheel for continual learning with DeepSparse and Roboflow! | ||
|
|
||
| **Interested In Deploying DeepSparse To Production? [Start your 90 day free trial!](https://neuralmagic.com/deepsparse-free-trial/)** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| **Interested In Deploying DeepSparse To Production? [Start your 90 day free trial!](https://neuralmagic.com/deepsparse-free-trial/)** | |
| **Interested in deploying DeepSparse to production? [Start your 90 day free trial!](https://neuralmagic.com/deepsparse-free-trial/)** |
|
|
||
| #### **Send Request to the Server** | ||
|
|
||
| Now that the model endpoint is running, we can send raw images over HTTP and recieve back |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| Now that the model endpoint is running, we can send raw images over HTTP and recieve back | |
| Now that the model endpoint is running, we can send raw images over HTTP and receive back |
| ### **Train a Sparse YOLOv5 with SparseML** | ||
|
|
||
| SparseML is an open-source optimization library which allows you to create sparse models trained on your dataset. One of the workflows enabled by | ||
| SparseML is called Sparse Transfer Learning, which is similiar to typical transfer learning, except |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| SparseML is called Sparse Transfer Learning, which is similiar to typical transfer learning, except | |
| SparseML is called Sparse Transfer Learning, which is similar to typical transfer learning, except |
|
Per the main README announcement, DeepSparse is being deprecated by June 2, 2025. Closing the PR as work has been suspended; thank you for the inputs and support! |
No description provided.