Getting medical data is hard, because of privacy concerns, and at the beginning of the pandemic, there was just not much data in general.
Many papers were using very small datasets often collected from a single hospital - not enough for real evaluation.
๐
Biased datasets ๐ง๐งโ๐ฆฒ
Some papers used a dataset that contained non-COVID images from children and COVID images from adults. These methods probably learned to distinguish children from adults... ๐คทโโ๏ธ
๐
Training and testing on the same data โ
OK, you just never do that! Never!
๐
Unbalanced datasets โ๏ธ
There are much more non-COVID scans than real COVID cases, but not all papers managed to adequately balance their dataset to account for that.
Check out this thread for more details on how to deal with imbalanced data:
Many papers failed to disclose the amount of data they were tested or important aspects of how their models work leading to poor reproducibility and biased results.
๐
The problem is in the data ๐ฝ
The big problem for most methods was the availability of high-quality data and a deep understanding of the problem - many papers didn't even consult with radiologists.
๐
A high-quality and diverse dataset is more important than your fancy model!
There is certainly pressure to publish in academia
I think many of the papers really wanted to help with getting results out quickly. However, there are some minimum standards that need to be kept. Such results undermine the credibility of ML...
They analyzed papers using both CXR and CT. I would argue that you first need to fix the dataset and then optimize your model. You can usually get much better results addressing things in this order.
Look at this video from a @Tesla Model 3 driving on the highway. The display shows multiple traffic lights coming out of the truck in front towards the car. What's going on? ๐ค
This is a typical case of a ๐๐ฟ๐ฎ๐ฐ๐ธ ๐น๐ผ๐๐!
Thread ๐
The problem ๐ค
The truck in front carries 3 real traffic lights. The problem is that the computer vision system on the Tesla assumes that traffic lights are static (which is a good assumption in general ๐). In this case, though, the traffic lights are moving at 120 km/h...
๐
Object detection ๐ฆ
A typical object detection system takes a single camera frame and detects all kinds of objects in it.
One of the best models for object detection is YOLO. I just ran this image through it and sure enough, it detects 2 of the traffic lights!
The story is about police dogs trained to sniff drugs. The problem is that the dogs often signal drugs even if there are none. Then innocent people land in jail for days.
The cops even joke about the โprobable cause on four legsโ.
Let's see why is that ๐
1. Sampling Bias ๐ค
Drugs were found in 64% of the cars Karma identified, which was praised by the police as very good. In the end, most people don't carry drugs in their cars, so 64% seems solid.
There are different computer vision problems you need to solve in a self-driving car.
โช๏ธ Object detection
โช๏ธ Lane detection
โช๏ธ Drivable space detection
โช๏ธ Semantic segmentation
โช๏ธ Depth estimation
โช๏ธ Visual odometry
Details ๐
Object Detection ๐๐ถโโ๏ธ๐ฆ๐
One of the most fundamental tasks - we need to know where other cars and people are, what signs, traffic lights and road markings need to be considered. Objects are identified by 2D or 3D bounding boxes.
Relevant methods: R-CNN, Fast(er) R-CNN, YOLO
Distance Estimation ๐
After you know what objects are present and where they are in the image, you need to know where they are in the 3D world.
Since the camera is a 2D sensor you need to first estimate the distance to the objects.
Interesting results from the small experiment... ๐
This was actually a study reported in a Nature paper. Most people offer additive solutions (adding bricks) instead of substractive solutions (removing the pillar).
In this example, the most elegant solution is to remove the pillar completely and let the roof lie on the block. It will be simpler, more stable and won't cost anything.
Some people quickly dismiss this option assuming this is not allowed, but it actualy is ๐
This isn't because people don't recognize the value, but because many don't consider the substractive solution at all. Me included ๐โโ๏ธ
The paper shows that this happens a lot in real life, especially in regulation. People tend to add new rules, instead of removing old ones.