Week 3
Apr 04/21/23
- Finish up the presentation
Meeting with SD1
- Major objective is to reduce False Negatives
- Try reducing the threshold in the Stage 1 model for binary classification to see if we can reduce the FNs.
Apr 04/20/23
New models to train with fewer ND images for DNV
Dataset to use A50 X: 0.8 (A + B) VB
For the 2-stage model prediction pipeline (VB)
- Stage 1
- Create the split for training and validation
- Drop
NDframes so that the total number ofNDframes is equal to total number of defect frames in training and validation
- Stage 2
- Nothing is required to be done
For the single stage model prediction pipeline (VB)
- After creating the t&v and test split, take the t&v split
- Drop as many
NDframes so that the number ofNDframes is equal to the defect having the most number of frames
Apr 04/19/23
- OH
- Discussion on the particle filter and Focal loss
- SD1 presentation
- get stats about the 114 videos
- Remove title from the 2 defect distribution screenshot
- Point about Tee-connection
Apr 04/18/23
- Try CTGNN in Colab in a simple.
- Could not find where to post issues in the Cross-task repository.
- Will need to send Joakim an email.
Stuff for presentation
- 4-5 slides about the stats for 114 videos
- GitHub issues and links from Pavan
- Remove title from the 2 screenshots
- We need more data to improve metrics
Quick discussion with Pavan
- We have not used the latest method (extract distance region snips → stitch → send to Azure OCR → get distance → then label) for any of the three utilities
Questions
- Do we have the results for Pipe breaks for SD1? → No, data is not available for them
- LightGBM → not done for any utility
- XGBoost → only done DNV, COV, Everett, additional utility (not shared because of confidentiality)
- XGBSE → only done DNV, COV, Everett, additional utility (not shared because of confidentiality)
- Is the
materialavailable in the Access DB for SD1?- For Water distribution network → no info available for SD1
- Sewer CCTV → we have info in the Access DB
- Why does Utility Y have 79573 total frames, but only 34844 as labelled?
- If the spatial correlation within the buffer is not over a desired value the frame is discarded.
Apr 04/17/23
- CCTV - SD1
- Prediction on the newer models trained with lower threshold
- Look at the previous presentation and start adding results
- Clean up the prediction notebook, and refactor some code
- gqc-utility-notebooks
- With Pavan's help start migrating 1-2 notebooks daily
- Discuss API design with Jake and keep it rolling.
-
cctvwill not be a submodule ofvision. It will be a separate module.
-
- AI3-hackathon
- [ ]
Questions for Bard
Prompt: I have a multi-label image classification model. When I use it to predict on un-seen images, it does predict any label. Why is that ?
There are a few possible reasons why your multi-label image classification model might not be predicting any labels on unseen images.
- The model is not trained on enough data. Multi-label image classification models require a large amount of data to train on in order to generalize well to unseen data. If your model is not trained on enough data, it may not be able to learn the underlying patterns in the data and will therefore not be able to make accurate predictions on unseen data.
- The model is not trained on the right kind of data. The data that you use to train your model should be representative of the data that you want the model to be able to predict on. If the data that you use to train your model is not representative of the unseen data, the model will not be able to make accurate predictions on the unseen data.
- The model is not tuned properly. Once you have trained your model, you need to tune the hyperparameters of the model in order to improve its performance. If the hyperparameters are not tuned properly, the model may not be able to make accurate predictions on unseen data.
If you are not sure why your multi-label image classification model is not predicting any labels on unseen images, you can try the following:
- Collect more data. If you have a small dataset, you can try collecting more data. The more data you have, the better your model will be able to learn the underlying patterns in the data and make accurate predictions on unseen data.
- Make sure the data is representative. Make sure that the data that you use to train your model is representative of the data that you want the model to be able to predict on. If the data is not representative, the model will not be able to make accurate predictions on the unseen data.
- Tune the hyperparameters of the model. Once you have trained your model, you need to tune the hyperparameters of the model in order to improve its performance. If the hyperparameters are not tuned properly, the model may not be able to make accurate predictions on unseen data.
If you have tried all of the above and your model is still not predicting any labels on unseen images, you may need to consult with a machine learning expert to help you troubleshoot the problem.
There are a few possible reasons why your multi-label image classification model might not be predicting any labels on unseen images.
- The model was not trained on enough data. In order to learn to predict labels accurately, a machine learning model needs to be trained on a large and diverse dataset of images. If your model was not trained on enough data, it may not be able to generalize well to unseen images.
- The model is overfitting. Overfitting occurs when a model learns the training data too well, and as a result, it is not able to generalize well to new data. There are a number of techniques that can be used to prevent overfitting, such as regularization and early stopping.
- The model is not robust to noise. Real-world images often contain noise, such as blurriness, occlusion, and lighting variations. If your model is not robust to noise, it may not be able to accurately predict labels on noisy images.
If you are having trouble getting your multi-label image classification model to work, you can try the following:
- Collect more data. The more data you have, the better your model will be able to learn to predict labels accurately.
- Use regularization. Regularization helps to prevent overfitting by penalizing the model for learning patterns that are specific to the training data.
- Use early stopping. Early stopping helps to prevent overfitting by stopping training when the model's performance on the validation set starts to decrease.
- Make your model more robust to noise. There are a number of techniques that can be used to make a model more robust to noise, such as data augmentation and denoising.
If you have tried all of these things and your model is still not working, you may need to consult with a machine learning expert.