Last month, I was invited to the first day of a week long hackathon for women and gender minorities in tech. The hackathon was organized by Women Who Code DC, a nonprofit organization that encourages women to excel in technology careers. On the first day, we had a workshop on how to build a ‘product recommendation bot’ using python and tensorflow. In this post, I’m going to outline what we learned at the workshop and some cool stuff you can build with python!
What is python?
Python is widely used high-level programming language for general-purpose programming. It is widely used in web development (like: Django and Bottle), scientific and numeric computing (Orange, SymPy, NumPy) to desktop graphical user Interfaces (Pygame, Panda3D).
What is TensorFlow?
TensorFlow is an open source software library for numerical computation using data flow graphs. Nodes in the graph represent mathematical operations, while the graph edges represent the multidimensional data arrays (tensors) communicated between them. The flexible architecture allows you to deploy computation to one or more CPUs or GPUs in a desktop, server, or mobile device with a single API. TensorFlow was originally developed by researchers and engineers working on the
We Built a Product Recommendation Bot using Python and Tensorflow
We used Dask and Numpy to preprocess our data, and built a recommendation system with scikit-learn. We then used the Tensorflow framework to make it better. Here’s how we did it.
By the Data Engineering Team at Groupe Pouchee
This is a deep dive into the technical aspects of our product recommendation bot that we built for the Groupe Pouchee company. If you want to learn more about the product itself, please check out our Medium publication. We published recently two articles there: one introduces the product and gives a general overview of its functioning, while the second is an in-depth analysis of how we built it.
For this article, I will focus on the technical details about how we engineered this bot. As it is a product based on machine learning techniques (more specifically collaborative filtering), I will start by introducing the concept of recommendations systems, explain why they are useful, and give some practical examples where they can be implemented. I will then focus on collaborative filtering in particular, because this is what we have used for our project. The final part will be a summary of our implementation: what tools we used
I recently took a look at FreeCodeCamp’s curriculum and was really impressed to see that they now have a section on Machine Learning. I think this is great as the recent advances in Deep Learning and NLP have made it possible for hobbyists to get hands-on with some of the most exciting and practical applications of ML, e.g. image recognition and natural language processing.
I wanted to build something cool with one of my favorite technologies, Python, so decided to dive into the curriculum and put together a product recommendation bot! The idea is simple: given a picture of a product, identify what it is and then recommend similar products. For example, if you take a photo of an Adidas shoe, it would recommend other shoes for you to check out.
In this article I will outline how I built the recommendation engine using Python and Tensorflow. We will first train an image classifier using the Inception model architecture on ImageNet data to classify images against 1000 classes (i.e. outputs the probability that an image belongs to any of 1000 classes). Then we will retrain the output layer on images scraped from Amazon using our own classes (i.e. types of products we want to be able to recognize). We will then use
In this post, we will go over how to make a product recommendation bot using TensorFlow and Python. This is a cool little project that makes use of the following technologies:
Amazon AWS Lambda: Allows you to run code without thinking about servers, and you pay only for the compute time you consume – there is no charge when your code is not running.
Amazon AWS API Gateway: Lets you create, publish, maintain, monitor, and secure your APIs at any scale.
Amazon DynamoDB: A fast and flexible NoSQL database with seamless scalability.
Facebook Messenger Platform: A platform to build bots for Facebook Messenger.
TensorFlow: An open-source software library for machine learning.
Today at YHack we are very excited to release our product recommendation bot, powered by deep learning.
We recently published a blog on how you can build a product recommendation engine in python using machine learning. In this series of tutorials, we will be covering the end to end process of creating an NLP based recommendation bot.
We decided to incorporate deep learning using Google’s cutting edge framework Tensorflow and it’s wrapper Keras API. We have also written an extensive deep dive into all the things you need to know about getting started with Tensorflow and Keras.
The current iteration allows you to ask the bot for recommendations for products similar to any product of your choice. We have currently trained the model on 3 datasets: shoes, electronics and food.
Best part is that the entire code is open sourced on Github so feel free to fork it and send PRs if you want to add some cool features or train it on other domains!
You can try out the demo here : https://www.youtube.com/watch?v=lH3g0mXF1NE
The Python ecosystem is a powerful platform for building data analysis applications. In this post we will be introducing the Tensorflow machine learning library, which is an open source machine learning library developed by Google. The project aims to make machine learning accessible to a broad audience of artists, creative coders, and students through the easy of use of its API. We will be highlighting one of the many possible uses of Tensorflow: product recommendation.
In this post we will be building our own product recommendation system using Tensorflow and some consumer purchase data from kaggle.com. The source code for this project can be found here – https://github.com/TheRealQuentic/Product-Recommendation-Bot.
Tensorflow Product Recommendation Bot
Tensorflow Project Overview
The first thing that we need when building a product recommendation bot is a data set to train it on. For this purpose I used the Instacart Online Grocery Shopping Dataset from Kaggle (https://www.kaggle.com/c/instacart-market-basket-analysis). This data set contains 3 million consumer orders over 200,000 products across 6 years of Instacart orders and includes information about item ordered, quantity
Last year, I wrote this blog post about building recommendation systems in Python. At the time, I didn’t know how to use Tensorflow, and so I used a library called Vowpal Wabbit (VW) which works really well for large-scale learning tasks. Since then, I’ve taken a few Tensorflow courses on Udacity and built a few projects using it.
In this guide, we’ll see how to build a product recommendation system using Tensorflow by using an example of recommending movies on Netflix. This is just meant to be a simple example of implementing collaborative filtering with Tensorflow, but you can use the same techniques for other kinds of recommendation systems as well.
Recall that in collaborative filtering, we try to predict user’s ratings based on ratings from other users who have rated the same items. Through this process, we can recommend items that are likely to be interesting to users because they are similar to what other similar users have liked in the past.