Recommendation Systems with Python
Recommendation Systems with Python
Build your recommendation engine step-by-step with python
About the Book
This book will teaches you how to build recommendation engine using Python. It starts by providing you with some the knowledge you need about the recommendation engine and it's types. After that this book will give you the knowledge about relevant data mining and machine learning concepts that used in recommendation engines and how to deal with data and all the steps needed for data analysis and munging. Then, it shows how to build and optimize recommendation models using Python and gives you the knowledge to evaluate and optimize your recommendation engine. In the end, it shows a practical use case. After reading this book, you will know how to build a new recommendation engine on your own.
Parts of the Book.
Part 1: Introduction and Background. This part will give you a good introduction about the recommendation engines and how it works, what its types. Not only that, this chapter will prepare you too, by showing you how to build the environment needed to work on real-life project, and a crash course on pre-requisites, to get ready before starting learning about recommendations.
Part 2: Techniques and Theories of Recommendation Engines. This part covers almost all the required algorithms to build any type of recommendation engine. Also, we covers these algorithms not only in a Technical manner, but also the Theoretical too.
Part 3: Evaluation and Applications. In this part, we will end the book with how to evaluate your recommendation engine, and test it. Also, we will give some applications for you to experience how to build a recommendation system, with the steps covered in this book.
Chapters of the Book.
Chapter 1: Getting Started with Recommender Systems. In this chapter, will be the introduction to the recommendation systems, why we need these types of systems. This chapter will be a refresher to you and an introduction to the beginners of recommendation engines. This chapter introduces the need, taxonomy of recommendation engines, and popular recommendation engines that people use in their day-to-day lives. Popular recommendation engine approaches available along with their pros and cons are covered.
Chapter 2: Environment Setup and Prerequisites. After introducing and giving the differences of the recommendation engines and its types, we need to go a bit technical before we can get started. We will start with environment setup, how to prepare your environment setup for developing, building and evaluating a recommendation engine. Then we need to test if you have all prerequisites, and to be sure, we will take a tour through all what you need from python to pandas to all Machine Learning libraries you will use in this book.
Chapter 3: Build a Tiny Recommendation Engine. In this chapter, we will show the audience the big picture of recommendation engines by building a tiny one, this short chapter about how to build movies recommendation engine to give a head start for us to learn the steps of building engines before we take off into the world of recommendation engines.
Chapter 4: Understanding Data. Before you start studying the recommendation algorithms, and how to apply them. You need to learn about the data, as understanding data is one step through solving the problem. Here we will elaborate the data you are going to deal with in multiple point-of-views, showing a comparison between data types and how to deal with each type.
Chapter 5: Collaborative Recommendation. This chapter is about how to build collaborative filtering in both ways user-based and item-based collaborative filtering. We’ll illustrate each type in detail with examples, also we will talk about ratings and how it controls and models the shape and distribution of data. Finally we will talk about some approaches used in collaborative recommendations.
Chapter 6: Content-based Recommendation. In this chapter, we will continue illustrating recommendation engine types with the Content-based recommender systems, which try to match users to items that are similar to what they have liked in the past. In this chapter, we will prove that similarity is not necessarily based on rating correlations across users. But also, on the basis of the attributes of the objects liked by the user.
Chapter 7: Knowledge-based recommendation. Both content-based and collaborative recommendation engines require a significant amount of data about past buying and rating experiences. And if we have a lack of data, then we will face a problem called cold-start. So in this chapter, we will describe a new type of recommendation engine that can handle a problem like this, by applying new approaches on the limited data that we have.
Chapter 8: Hybrid recommendation approaches. In the previous chapter, we described different types of recommendation engines, but they are all similar in one thing, every one of these recommender classes have a leak. All these models seem rather restrictive in isolation, especially when multiple sources of data are available. In general, one would like to make use of all the knowledge available in different data sources and also use the algorithmic power of various recommender systems to make robust inferences. Hybrid recommender systems have been designed to explore these possibilities.
Chapter 9: Data Mining Techniques Used in Recommender Systems. By ending this part, we have discussed many recommender system types, we illustrated the techniques of building these classes. So, in this chapter we will show you more of these techniques, approaches to build each type of recommender systems.
Chapter 10: Explanations in recommender systems. One of things that recommendations should show to us --the users-- is to explain why these recommendations appeared on our screens. This is not an easy-to-monitor task, most companies when they tend to build a recommendation engine, they tend to escape explaining to users why. This chapter will explain a type of recommendations that recommend and explain to users why these items are recommended and based on what criteria.
Chapter 11: Evaluating recommender systems. In this chapter we review the process of evaluating a recommendation system. We discuss three different types of experiments; offline, user studies and online experiment. Also, this chapter shows how to measure the performance of a recommender and how to optimize it.
Chapter 12: Evaluating Techniques. In this chapter, we will show you almost all the evaluation techniques that are used in real-life problems and projects, continuing to show to you how to measure the performance of a recommendation and how to optimize it using these techniques.
Chapter 13: Case Study -- Building Large Recommendation Engine. Finally, we will show to you in this chapter how to solve a business challenge by building and optimizing a recommender engine. Giving an example to help you to sharpen the skills you have earned along with this book.
- PART I: Introduction
1. Getting Started with Recommender Systems
- 1.1 What is Recommendation engine?
- 1.2 Need for recommender systems
- 1.3 Framework of recommendation systems
- 1.4 Types of Recommender systems
- 1.5 Evaluation techniques
- 1.6 Summary
2. Environment Setup and Prerequisites
- 2.1 What is your Environment?
- 2.2 Essential Python Libraries.
- 2.3 Installation and Setup.
- 2.4 Getting Started with Pandas.
- 2.5 Summary
- 3. Build a Tiny Recommendation Engine
- 3.1 Basic Steps for Efficient Recommender System.
- 3.2 Building our basic recommendation engine.
- 3.3 Summary
- PART II: Techniques and Theories of Recommendation Engines
4. Understanding Data
- 4.1 Why Should You Read This Chapter?
- 4.2 Structured, Semi-structured and Unstructured Data.
- 4.3 Quantitative versus Qualitative Data.
- 4.4 Making a Checkpoint.
- 4.5 The Four Levels of Data.
- 4.6 The Nominal Level.
- 4.7 The Ordinal Level.
- 4.8 The Interval Level.
- 4.9 The Ratio Level.
- 4.10 Properties of Ratings.
- 4.11 Summary.
5. Collaborative Recommendation
- 5.1 Understanding Ratings and Rating Data.
- 5.2 User-based Nearest-neighbor Recommendation.
- 5.3 Item-based Nearest neighbor Recommendation.
- 5.4 Further Model-based and Rreprocessing-based Approaches.
- 5.5 Comparing User-Based and Item-Based Recommendations.
- 5.6 Strengths and Weaknesses of Collaborative Filtering.
- 5.7 Summary.
6. Content-based Recommendation
- 6.1 Introduction.
- 6.2 Content Representation and Content Similarity.
- 6.3 Preprocessing and Feature Extraction.
- 6.4 Similarity-based Retrieval.
- 6.5 Learning User Profiles and Filtering.
- 6.6 Content-Based vs. Collaborative Recommendations.
- 6.7 Summary.
7. Knowledge-based Recommendation
- 7.1 Introduction.
- 7.2 Knowledge Representation and Reasoning.
- 7.3 Interacting with Constraint-based Recommenders.
- 7.4 Interacting with Case-based Recommenders.
- 7.5 Example Applications.
- 7.6 Summary.
8. Hybrid Recommendation Approaches
- 8.1 Introduction.
- 8.2 Ensemble Methods in Machine Learning.
- 8.3 Weighted Hybrid Systems.
- 8.4 Cascade Hybrid Systems.
- 8.5 Feature Augmentation Hybrid Systems.
- 8.6 Mixed Hybrid Systems.
- 8.7 Summary.
9. Data Mining Techniques Used in Recommender Systems
- 9.1 Introduction.
- 9.2 Steps for Solving Any Data Problems.
- 9.3 Data Preprocessing Techniques.
- 9.4 Similarity Measures.
- 9.5 Dimensionality Reduction.
- 9.6 Data Mining Techniques.
- 9.7 Evaluating Data-mining Algorithms.
- 9.8 Summary.
10. Explanations in Recommender Systems
- 10.1 Introduction.
- 10.2 Explanations in Constraint-based Recommenders.
- 10.3 Explanations in Case-based Recommenders.
- 10.4 Explanations in Collaborative Filtering Recommenders.
- 10.5 Summary.
- PART III: Evaluation and Applications
11. Evaluating Recommender Systems
- 11.1 Introduction.
- 11.2 Evaluation Paradigms.
- 11.3 General Goals of Evaluation Design.
- 11.4 Design Issues in Offline Recommender Evaluation.
- 11.5 Summary.
12. Evaluating Recommendation Systems
- 12.1 Introduction.
- 12.2 Preparing the Test Data To Evaluate the Models.
- 12.3 Evaluating Recommender Techniques.
- 12.4 Accuracy Metrics.
- 12.5 Summary.
13. Case Study — Building Deep Learning Recommendation Engine
- 13.1 Introduction to Deep Learning.
- 13.2 AutoRec: Rating Prediction with Autoencoders.
- 13.3 Summary.
The Leanpub 60 Day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.
You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!
So, there's no reason not to click the Add to Cart button, is there?
See full terms...
80% Royalties. Earn $16 on a $20 book.
We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $12 millionwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.