Python Machine Learning Case Studies Five Case Studies for the Data Scientist — Danish Haroon Python Machine Learning Case Studies Five Case Studies for the Data Scientist Danish Haroon Python Machine Learning Case Studies Danish Haroon Karachi, Pakistan ISBN-13 (pbk): 978-1-4842-2822-7 ISBN-13 (electronic): 978-1-4842-2823-4 DOI 10.1007/978-1-4842-2823-4 Library of Congress Control Number: 2017957234 Copyright © 2017 by Danish Haroon This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein. Cover image by Freepik (www.freepik.com) Managing Director: Welmoed Spahr Editorial Director: Todd Green Acquisitions Editor: Celestin Suresh John Development Editor: Matthew Moodie Technical Reviewer: Somil Asthana Coordinating Editor: Sanchita Mandal Copy Editor: Lori Jacobs Compositor: SPi Global Indexer: SPi Global Artist: SPi Global Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail [email protected], or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation. For information on translations, please e-mail [email protected], or visit http://www.apress.com/rights-permissions. Apress titles may be purchased in bulk for academic, corporate, or promotional use. eBook versions and licenses are also available for most titles. For more information, reference our Print and eBook Bulk Sales web page at http://www.apress.com/bulk-sales. Any source code or other supplementary material referenced by the author in this book is available to readers on GitHub via the book’s product page, located at www.apress.com/978-1-4842-2822-7. For more detailed information, please visit http://www.apress.com/source-code. Printed on acid-free paper Contents at a Glance About the Author ������������������������������������������������������������������������������xi About the Technical Reviewer ��������������������������������������������������������xiii Acknowledgments ���������������������������������������������������������������������������xv Introduction �����������������������������������������������������������������������������������xvii ■ Chapter 1: Statistics and Probability ����������������������������������������������1 ■ Chapter 2: Regression ������������������������������������������������������������������45 ■ Chapter 3: Time Series �����������������������������������������������������������������95 ■ Chapter 4: Clustering ������������������������������������������������������������������129 ■ Chapter 5: Classification ������������������������������������������������������������161 ■ Appendix A: Chart types and when to use them �������������������������197 Index ����������������������������������������������������������������������������������������������201 iii Contents About the Author ������������������������������������������������������������������������������xi About the Technical Reviewer ��������������������������������������������������������xiii Acknowledgments ���������������������������������������������������������������������������xv Introduction �����������������������������������������������������������������������������������xvii ■ Chapter 1: Statistics and Probability ����������������������������������������������1 Case Study: Cycle Sharing Scheme—Determining Brand Persona ��������1 Performing Exploratory Data Analysis �����������������������������������������������������4 Feature Exploration���������������������������������������������������������������������������������������������������4 Types of variables �����������������������������������������������������������������������������������������������������6 Univariate Analysis ���������������������������������������������������������������������������������������������������9 Multivariate Analysis ����������������������������������������������������������������������������������������������14 Time Series Components ����������������������������������������������������������������������������������������18 Measuring Center of Measure ���������������������������������������������������������������20 Mean �����������������������������������������������������������������������������������������������������������������������20 Median ��������������������������������������������������������������������������������������������������������������������22 Mode �����������������������������������������������������������������������������������������������������������������������22 Variance ������������������������������������������������������������������������������������������������������������������22 Standard Deviation �������������������������������������������������������������������������������������������������23 Changes in Measure of Center Statistics due to Presence of Constants ����������������23 The Normal Distribution ������������������������������������������������������������������������������������������25 v ■ Contents Correlation ���������������������������������������������������������������������������������������������34 Pearson R Correlation ���������������������������������������������������������������������������������������������34 Kendall Rank Correlation ����������������������������������������������������������������������������������������34 Spearman Rank Correlation ������������������������������������������������������������������������������������35 Hypothesis Testing: Comparing Two Groups ������������������������������������������37 t-Statistics ��������������������������������������������������������������������������������������������������������������37 t-Distributions and Sample Size �����������������������������������������������������������������������������38 Central Limit Theorem ���������������������������������������������������������������������������40 Case Study Findings ������������������������������������������������������������������������������41 Applications of Statistics and Probability ����������������������������������������������42 Actuarial Science ����������������������������������������������������������������������������������������������������42 Biostatistics ������������������������������������������������������������������������������������������������������������42 Astrostatistics ���������������������������������������������������������������������������������������������������������42 Business Analytics ��������������������������������������������������������������������������������������������������42 Econometrics ����������������������������������������������������������������������������������������������������������43 Machine Learning ���������������������������������������������������������������������������������������������������43 Statistical Signal Processing ����������������������������������������������������������������������������������43 Elections �����������������������������������������������������������������������������������������������������������������43 ■ Chapter 2: Regression ������������������������������������������������������������������45 Case Study: Removing Inconsistencies in Concrete Compressive Strength ���������������������������������������������������������������������������45 Concepts of Regression�������������������������������������������������������������������������48 Interpolation and Extrapolation�������������������������������������������������������������������������������48 Linear Regression ���������������������������������������������������������������������������������������������������49 Least Squares Regression Line of y on x ����������������������������������������������������������������50 Multiple Regression ������������������������������������������������������������������������������������������������51 Stepwise Regression ����������������������������������������������������������������������������������������������52 Polynomial Regression �������������������������������������������������������������������������������������������53 vi ■ Contents Assumptions of Regressions �����������������������������������������������������������������54 Number of Cases ����������������������������������������������������������������������������������������������������55 Missing Data �����������������������������������������������������������������������������������������������������������55 Multicollinearity and Singularity �����������������������������������������������������������������������������55 Features’ Exploration ����������������������������������������������������������������������������56 Correlation ��������������������������������������������������������������������������������������������������������������58 Overfitting and Underfitting �������������������������������������������������������������������64 Regression Metrics of Evaluation ����������������������������������������������������������67 Explained Variance Score ���������������������������������������������������������������������������������������68 Mean Absolute Error �����������������������������������������������������������������������������������������������68 Mean Squared Error �����������������������������������������������������������������������������������������������68 R2 ����������������������������������������������������������������������������������������������������������������������������69 Residual ������������������������������������������������������������������������������������������������������������������69 Residual Plot �����������������������������������������������������������������������������������������������������������70 Residual Sum of Squares ���������������������������������������������������������������������������������������70 Types of Regression ������������������������������������������������������������������������������70 Linear Regression ���������������������������������������������������������������������������������������������������71 Grid Search �������������������������������������������������������������������������������������������������������������75 Ridge Regression ����������������������������������������������������������������������������������������������������75 Lasso Regression ���������������������������������������������������������������������������������������������������79 ElasticNet ���������������������������������������������������������������������������������������������������������������81 Gradient Boosting Regression ��������������������������������������������������������������������������������82 Support Vector Machines ����������������������������������������������������������������������������������������86 Applications of Regression ��������������������������������������������������������������������89 Predicting Sales ������������������������������������������������������������������������������������������������������89 Predicting Value of Bond �����������������������������������������������������������������������������������������90 Rate of Inflation ������������������������������������������������������������������������������������������������������90 Insurance Companies ���������������������������������������������������������������������������������������������91 Call Center ��������������������������������������������������������������������������������������������������������������91 vii ■ Contents Agriculture ��������������������������������������������������������������������������������������������������������������91 Predicting Salary ����������������������������������������������������������������������������������������������������91 Real Estate Industry������������������������������������������������������������������������������������������������92 ■ Chapter 3: Time Series �����������������������������������������������������������������95 Case Study: Predicting Daily Adjusted Closing Rate of Yahoo ���������������95 Feature Exploration �������������������������������������������������������������������������������97 Time Series Modeling ���������������������������������������������������������������������������������������������98 Evaluating the Stationary Nature of a Time Series Object ���������������������98 Properties of a Time Series Which Is Stationary in Nature �������������������������������������99 Tests to Determine If a Time Series Is Stationary ���������������������������������������������������99 Methods of Making a Time Series Object Stationary ��������������������������������������������102 Tests to Determine If a Time Series Has Autocorrelation ��������������������113 Autocorrelation Function ��������������������������������������������������������������������������������������113 Partial Autocorrelation Function ���������������������������������������������������������������������������114 Measuring Autocorrelation �����������������������������������������������������������������������������������114 Modeling a Time Series �����������������������������������������������������������������������115 Tests to Validate Forecasted Series ����������������������������������������������������������������������116 Deciding Upon the Parameters for Modeling ��������������������������������������������������������116 Auto-Regressive Integrated Moving Averages ������������������������������������119 Auto-Regressive Moving Averages �����������������������������������������������������������������������119 Auto-Regressive ���������������������������������������������������������������������������������������������������120 Moving Average ����������������������������������������������������������������������������������������������������121 Combined Model ���������������������������������������������������������������������������������������������������122 Scaling Back the Forecast �������������������������������������������������������������������123 Applications of Time Series Analysis ���������������������������������������������������127 Sales Forecasting �������������������������������������������������������������������������������������������������127 Weather Forecasting ���������������������������������������������������������������������������������������������127 Unemployment Estimates �������������������������������������������������������������������������������������127 viii ■ Contents Disease Outbreak �������������������������������������������������������������������������������������������������128 Stock Market Prediction ���������������������������������������������������������������������������������������128 ■ Chapter 4: Clustering ������������������������������������������������������������������129 Case Study: Determination of Short Tail Keywords for Marketing �������129 Features’ Exploration ��������������������������������������������������������������������������131 Supervised vs� Unsupervised Learning �����������������������������������������������133 Supervised Learning ���������������������������������������������������������������������������������������������133 Unsupervised Learning �����������������������������������������������������������������������������������������133 Clustering ��������������������������������������������������������������������������������������������134 Data Transformation for Modeling �������������������������������������������������������135 Metrics of Evaluating Clustering Models ��������������������������������������������������������������137 Clustering Models �������������������������������������������������������������������������������137 k-Means Clustering ����������������������������������������������������������������������������������������������137 Applying k-Means Clustering for Optimal Number of Clusters �����������������������������143 Principle Component Analysis ������������������������������������������������������������������������������144 Gaussian Mixture Model ���������������������������������������������������������������������������������������151 Bayesian Gaussian Mixture Model ������������������������������������������������������������������������156 Applications of Clustering �������������������������������������������������������������������159 Identifying Diseases ���������������������������������������������������������������������������������������������159 Document Clustering in Search Engines ��������������������������������������������������������������159 Demographic-Based Customer Segmentation �����������������������������������������������������159 ■ Chapter 5: Classification ������������������������������������������������������������161 Case Study: Ohio Clinic—Meeting Supply and Demand ���������������������161 Features’ Exploration ��������������������������������������������������������������������������164 Performing Data Wrangling �����������������������������������������������������������������168 Performing Exploratory Data Analysis �������������������������������������������������172 Features’ Generation ���������������������������������������������������������������������������178 ix ■ Contents Classification ���������������������������������������������������������������������������������������180 Model Evaluation Techniques �������������������������������������������������������������������������������181 Ensuring Cross-Validation by Splitting the Dataset ����������������������������������������������184 Decision Tree Classification ����������������������������������������������������������������������������������185 Kernel Approximation ��������������������������������������������������������������������������186 SGD Classifier �������������������������������������������������������������������������������������������������������187 Ensemble Methods �����������������������������������������������������������������������������������������������189 Random Forest Classification ��������������������������������������������������������������190 Gradient Boosting �������������������������������������������������������������������������������������������������193 Applications of Classification ��������������������������������������������������������������195 Image Classification ���������������������������������������������������������������������������������������������196 Music Classification ����������������������������������������������������������������������������������������������196 E-mail Spam Filtering �������������������������������������������������������������������������������������������196 Insurance ��������������������������������������������������������������������������������������������������������������196 ■ Appendix A: Chart types and when to use them �������������������������197 Pie chart ����������������������������������������������������������������������������������������������197 Bar graph���������������������������������������������������������������������������������������������198 Histogram ��������������������������������������������������������������������������������������������198 Stem and Leaf plot ������������������������������������������������������������������������������199 Box plot �����������������������������������������������������������������������������������������������199 Index ����������������������������������������������������������������������������������������������201 x
Description: