A scatter plot for shopping

Here is another example I created recently using Bokeh, that hopefully is a bit less useless than my previous one. This is a scatter plot for exploring product embeddings obtained via running CNN on product images and then reducing outputs to 2D using TSNE/UMAP. You can select which product attribute is mapped to a color.

It renders 100K+ data points, but thanks to webgl backend, zooming and working with the plot feels quite responsive. I also implemented progressive data loading for a better UX.

It is available live as a kaggle notebook. But, keep in mind that it might some to load. Firstly because for some reason kaggle servers take some time (up to 20-30 sec) to start responding, because the notebook has many files in output (product thumbnails). So if you would think that nothing happens, when you clicked the link - just be a bit patient, it will load eventually. Secondly, I’m loading 40MB of CSV on client with embeddings + product meta information, so it also might take up to 30 sec depending on your internet connection. And if you are using mobile internet, probably it is not a very good idea to open it.


This is terrific, thanks for sharing all these great examples! We will definitely tweet this out if that’s OK! :smiley:


Sure, it is a honor )