We live in an amazing time where even beginners can take on project that were the sole domains of expert researchers a decade ago or were straight up science fiction.
Here’s a great write up on the differences between PyTorch and TensorFlow when it come to object detection.
As I already was an experienced data scientist and had developed a few productive machine learning software components in the past years, I thought it should be a fairly easy job to get online, find a pre-trained CNN and train it further on an unseen data set to enable it to detect some previously unknown objects. Up until about a a year ago I had mostly worked with tree-based models, a lot of scikit-learn as well xgboost and of course tons and tons of pandas. As with many AI tasks, my first approach with this one turned out to be a classic version of a: “Not so fast!“ There are a few stepping stones on the way that you have to know of, that however not many articles and blogs seem to mention. After having spent many hours on this topic and having read a lot of TensorFlow source code I know the answers to questions like: