Farid Profile picture
πŸš€ Mentor | IceVision Creator ✨I help companies leverage AI and develop innovative products 🧩I assist mentees in becoming the top 1% of AI practitioners
Nov 14, 2022 β€’ 5 tweets β€’ 3 min read
I recently started using both @CohereAI and @pinecone: 2 powerful libraries

I recommended them to my mentees and the rewards were both impactful and instantaneous

@gunaratne_rahel won first place in a hackaton, and @alexbakr shared his POC and it generated 80K+ impressions

🧡 Rahel won first place at the LabLab Transformers AI Hackathon.

He used Cohere and Annoy to cluster @arxiv papers for semantic search

Nov 7, 2022 β€’ 4 tweets β€’ 3 min read
eDiffi: Text-to-Image Diffusion Models with Ensemble of Expert Denoisers

It uses:
β€’ An ensemble of expert denoising networks
β€’ CLIP Text , T5 Text embeddings, CLIP Image encoders
β€’ CLIP Image: Only used for style transfer

eDiffi has two capabilities: 🧡 1- Style transfer: controls the style of the generated sample using a reference style image

2- "Paint with words": The user can generate images by painting segmentation maps on canvas. Each segment has its description which controls the image layout
Nov 7, 2022 β€’ 4 tweets β€’ 2 min read
πŸ€” Interested in Leveraging Few-Shot Learning in your projects?

πŸ’‘ Here is a library that covers both Image Classification and Object Detection Few-Shot Learning Here is also an awesome survey about Low-Shot Learning I already shared:

Oct 26, 2022 β€’ 4 tweets β€’ 2 min read
Getting familiar with time series forecasting foundation and breakthroughs isn't an easy task

Here is the survey you were looking for βœ”οΈ

It covers time series conventional statistical models and deep learning ones

πŸ“°Time Series Analysis and Modeling to Forecast: a Survey Time Series Analysis and Mo... It covers:

1- Introduction
2- Stationarity
3- Time Series Decomposition
4- Linear Time Series Models
5- Nonlinear Time Series Models
6- Deep Learning
7- Time Series Model Evaluation
8- Available Implementations
9- Future Directions of Research
10- Glossary
Oct 25, 2022 β€’ 4 tweets β€’ 2 min read
πŸ’‘ Do you want to reshape your resume/profile and attract more attention?

πŸ”₯ πŸš€ Here is an anwesome resource written by the people who do the resume screening: engineering managers and recruiters working at tech companies. @GergelyOrosz

🎁 Free for developers out of a job! What's Included

β€’ 215 pages
β€’ PDF, EPUB and MOBI formats
β€’ 17 contributing tech industry experts
β€’ 3 resume templates crafted for the book
β€’ 5 resume improvement case studies
β€’ 10 popular resume templates analyzed
β€’ Bonus chapter on COVID-19
Oct 24, 2022 β€’ 7 tweets β€’ 3 min read
Drawing thousands of bounding boxes (bboxes) to annotate your dataset is a pain πŸ™ˆ

Automagically creating bboxes was a dream until ... πŸ€–

Zero-Shot Object Detection models appeared: They can annotate most of your dataset for free and in a few minutes 😍

Let's dive in🧡 Image πŸ€” Context

First, let's anwer this burning question:

Why would you train a dataset if a Zero Shot (ZD) model can already predict your bounding boxes?

β€’ Very often, the ZD model is unable to detect all the objects (see image: only few bboxes)

β€’ ZD models are genealist ones Image
Oct 22, 2022 β€’ 8 tweets β€’ 2 min read
Data imbalance can crash your model performance any day of the week 😨

πŸ’‘ Here is a brief description of each one of them and some potential solutions

β€’ Scale imbalance
β€’ Objective imbalance
β€’ Class imbalance
β€’ Spatial imbalance
🧡 πŸ”Έ Scale imbalance
It happens when the objects have different sizes with different numbers of objects: e.g. small objects vs. big objects.

βœ… Potential Solution
β€’ Oversample small objects using the Copy&Paste data augmentation

β€’ Use higher resolution images
Oct 21, 2022 β€’ 4 tweets β€’ 2 min read
πŸ€” You probably never heard of MMRotate

Here are some reasons why you should be familiar with:

β€’ MMRotate is an open-source toolbox for rotated object detection based on PyTorch

β€’ Like the awesome MMDetection library, It is part of the @OpenMMLab project (18 libraries 🀯) β€’ it provides strong baselines and SOTA methods in rotated object detection

β€’ It makes it easy enough to build a new model by combining existing modules Image
Oct 20, 2022 β€’ 11 tweets β€’ 3 min read
😨 Training an Object Detection Model is a very challenging task and involves tweaking so many knobs

Here is an exhaustive 🎁 tips & tricks list 🎁 that you could use to boost your model performance

🧡 πŸ‘‰ Data Labeling

β€’ Use representative data for each class

β€’ Avoid adding low-quality data

β€’ Small dataset size for pre-trained models

β€’ Bigger dataset size when training from scratch

β€’ Identify and fix incorrect classes
Aug 19, 2022 β€’ 4 tweets β€’ 3 min read
If you are preparing for a Data Science Interview 😰 then this resource is a real gem πŸ’Ž

A repo with 5.7K ⭐ created by @Al_Grigor and has 72 contributors!

It's divided in 2 parts: Theoretical and Technical Questions

github.com/alexeygrigorev… @Al_Grigor β€’ Part 1: Theoretical Questions

github.com/alexeygrigorev…
Feb 25, 2022 β€’ 4 tweets β€’ 2 min read
Video Panoptic Segmentation: VPSNet

VPSNet is built on MMDetection.

Video Panoptic Segmentation =

Video Instance Segmentation
[things: countable objects, e.g., person, car]
+
Video Semantic Segmentation
[stuff: amorphous regions, e.g., the sky, road] Paper: arxiv.org/abs/2006.11339
Repo: github.com/mcahny/vps
Feb 24, 2022 β€’ 6 tweets β€’ 2 min read
Someone asked me if classification would be good for detecting small objects.

The answer is yes, but not what you might think. Let's see why:

A pure classification model won't probably be the best option for that task. Let's suppose your objects are 32 x 32 px: πŸ‘‡ - Your feature map for those objects will be 4 x 4 px at C3 layer (subsampling = 2^3. So, 32px / 8. 8 = 4px)

- At the C5 layer (last one), your feature map for those objects will be 1 x 1 px (subsampling = 2^5 = 32)

Those features are too tiny to capture those small objects.
Feb 9, 2022 β€’ 7 tweets β€’ 3 min read
Here is a summary of summaries about:

β€’ Creating a Deep Learning Pipeline
β€’ Deploying Models on AWS Lambda
β€’ Deploying Models on Edge Devices
β€’ Showcasing Models Hugging Face Spaces
πŸ‘‡ 1- Creating a Deep Learning Pipeline

Feb 8, 2022 β€’ 4 tweets β€’ 2 min read
πŸŽ‰ Celebrating 100 days of sharing Visual Summaries in Computer Vision

I plan to continue sharing:
β€’ More content
β€’ Summaries of summaries by topic

Follow me for more threads on advanced computer vision techniques used in industry-level applications β†’ @ai_fast_track - 12 visual summaries on OD Modeling:

Feb 2, 2022 β€’ 7 tweets β€’ 2 min read
🌟 VFNet: IMHO, is the best anchor-free single-stage model, and it's not under the radar.

VariFocalNet: An IoU-aware Dense Object Detector

🧊 Background:
πŸ“Œ Accurately ranking candidate detections is crucial for dense object detectors to achieve high performance.
... πŸ“Œ Prior work uses the classification score or a combination of classification and predicted localization scores (centerness) to rank candidates.

πŸ“Œ Those 2 scores are still not optimal.

🧊 Novelty:
πŸ“Œ VFNet proposes to learn an IoU-Aware Classification Score (IACS)
Feb 1, 2022 β€’ 8 tweets β€’ 2 min read
4 types of imbalance issues in object detection that you should know:

Here is a brief description of each one of them and some potential solutions.

β€’ Scale imbalance
β€’ Objective imbalance
β€’ Class imbalance
β€’ Spatial imbalance πŸ”Έ Scale imbalance
It happens when the objects have different sizes with different numbers of objects: e.g. small objects vs. big objects.

βœ… Potential Solution
β€’ Oversample small objects using the Copy&Paste data augmentation
β€’ Use higher resolution images
Jan 9, 2022 β€’ 5 tweets β€’ 4 min read
How do you use transfer learning with images with 3+ (or 1) channel(s)?

Timm library, developed by @wightmanr, has an elegant way to handle that:

You can specify any input channel number (e.g. in_chans=1 or in_chans=8) using timm.create_model() function like this: @wightmanr m = timm.create_model('resnet34', pretrained=True, in_chans=8)

How does it work?

β€’ Case 1: number of input channels is 1
timm simply sums the 3 channel weights into one single channel
Jan 5, 2022 β€’ 8 tweets β€’ 3 min read
Here is a mega-summary of my YOLO-Series Visual Summaries:

1- YOLO Family Real-Time Performance
2- IA-YOLO improves object detection in adverse weather conditions using a hybrid task.

Image improvement combined with object detection.
Jan 3, 2022 β€’ 5 tweets β€’ 2 min read
πŸ”₯ ZSD-YOLO: Zero-Shot YOLO Detection using Vision-Language Knowledge Distillation

Heads up: I’m preparing a visual summary on ZSD-YOLO.

So, what is Zero-Shot Detection? β€’ Zero-shot detection allows a model to detect something in an image even if the model has never seen that thing before

β€’ So, if you have an image of a Chimpanzee and the model has never seen a Chimpanzee before, you can use your zero-shot detector to locate it in the image
Dec 23, 2021 β€’ 8 tweets β€’ 2 min read
Many open-world applications require the detection of novel objects.

but state-of-the-art object detection and instance segmentation models are unable to do so.

β€’ It’s because models learn to suppress any unannotated objects by treating them as background β€’ To address that issue, the authors propose a simple yet surprisingly powerful data augmentation and training scheme they call Learning to Detect Every Thing (LDET)
Dec 20, 2021 β€’ 5 tweets β€’ 2 min read
❓ What is Multi-Scale Training (MST)?

πŸ’‘ MTS helps your model to be robust to image sizes, an get better performance

β€’ Training on small images is faster

β€’ Training on large images increases your model performance

How is MST done? Every N (e.g., 10) epochs, we randomly chooses a new image dimension from a range of sizes [640, 768, 800], and train our model

This means the same network becomes better at predicting at different resolutions.