Building an Airbnb Chatbot using ML and NLP
Anand B Pillai (~pythonhacker) |
Chatbots have evolved from simple helpers which understand and answer simple questions to complex agents that can respond to a variety of questions in different contexts by using natural language processing (NLP) and Machine Learning (ML) or Deep Learning (DL).
In this workshop, we take you through a chatbot we have written by using the data exposed by Airbnb of their bookings such as reviews, ratings, listings etc to answer questions about a specific Airbnb property or region, to help you with researching your Airbnb bookings.
Topics covered in this workshop are,
- A walk-through over the Airbnb dataset
- Structuring the data to create a representation for training
- Using ML algorithms to train the chatbot
- Solving the NLP problem
- Chatbot APIs
- Chatbot Demo
We will be using the following libraries/tools for this.
pandas, nltk, sPacy, scikit-learn
- Knowledge/experience with chatbots is useful.
- Basic knowledge of Machine Learning algorithms and experience with tools like scikit-learn.
- A fundamental knowledge of NLP is useful.
Anand B Pillai is a technology professional with 20 years of software development, design and architecture. He has worked in a number of companies over the years in fields ranging from Security, Search Engines, Large Scale Web Portals and Big Data. He is the founder of the Bangalore Python User's Group and the author of Software Architecture with Python (PacktPub, April 2017). He most recently talked about Large Scale web crawling using Python in PyCon India 2018. Anand is the Founder and Director of Anvetsu Technologies Pvt Ltd, a consulting software company specializing in areas like Web Crawling, Machine Learning and Domain Specific Languages (DSL) with an expertise in Python and Clojure. He blogs at https://blog.anvetsu.com
Rajesh Mathew is a Machine Learning , AI enthusiast and practitioner . He has over 18 years experience working as a Programmer, Architect and Analyst consulting and developing Opensource technologies for industries like HealthCare, IT, Banking , Telco and Govt Agencies. He specialises in technologies like Python, Numpy, Pandas, NLP, Machine Learning, Scikit-learn, SQLAlchemy, Java, Hadoop, Spark and Presto.