#### Overview of this book

With computing power increasing exponentially and costs decreasing at the same time, this is the best time to learn machine learning using Python. Machine learning tasks that once required enormous processing power are now possible on desktop machines. Python Machine Learning begins by covering some fundamental libraries used in Python that make machine learning possible. You'll learn how to manipulate arrays of numbers with NumPy and use pandas to deal with tabular data. Once you have a firm foundation in the basics, you'll explore machine learning using Python and the scikit-learn libraries. You'll learn how to visualize data by plotting different types of charts and graphs using the matplotlib library. You'll gain a solid understanding of how the various machine learning algorithms work behind the scenes. The later chapters explore the common machine learning algorithms, such as regression, clustering, and classification, and discuss how to deploy the models that you have built, so that they can be used by client applications running on mobile and desktop devices. By the end of the book, you'll have all the knowledge you need to begin machine learning using Python.
Free Chapter
Cover
Introduction
CHAPTER 1: Introduction to Machine Learning
CHAPTER 2: Extending Python Using NumPy
CHAPTER 3: Manipulating Tabular Data Using Pandas
CHAPTER 4: Data Visualization Using matplotlib
CHAPTER 5: Getting Started with Scikit‐learn for Machine Learning
CHAPTER 6: Supervised Learning—Linear Regression
CHAPTER 7: Supervised Learning—Classification Using Logistic Regression
CHAPTER 8: Supervised Learning—Classification Using Support Vector Machines
CHAPTER 9: Supervised Learning—Classification Using K‐Nearest Neighbors (KNN)
CHAPTER 10: Unsupervised Learning—Clustering Using K‐Means
CHAPTER 11: Using Azure Machine Learning Studio
CHAPTER 12: Deploying Machine Learning Models
Index

# Kernel Trick

Sometimes, the points in a dataset are not always linearly separable. Consider the points shown in Figure 8.11.

You can see that it is not possible to draw a straight line to separate the two sets of points. With some manipulation, however, you can make this set of points linearly separable. This technique is known as the kernel trick. The kernel trick is a technique in machine learning that transforms data into a higher dimension space so that, after the transformation, it has a clear dividing margin between classes of data.

````%matplotlib inline`
` `
`from mpl_toolkits.mplot3d...````