You are previewing Advanced Machine Learning with Python.
O'Reilly logo
Advanced Machine Learning with Python

Book Description

Solve challenging data science problems by mastering cutting-edge machine learning techniques in Python

About This Book

  • Resolve complex machine learning problems and explore deep learning

  • Learn to use Python code for implementing a range of machine learning algorithms and techniques

  • A practical tutorial that tackles real-world computing problems through a rigorous and effective approach

  • Who This Book Is For

    This title is for Python developers and analysts or data scientists who are looking to add to their existing skills by accessing some of the most powerful recent trends in data science. If you’ve ever considered building your own image or text-tagging solution, or of entering a Kaggle contest for instance, this book is for you!

    Prior experience of Python and grounding in some of the core concepts of machine learning would be helpful.

    What You Will Learn

  • Compete with top data scientists by gaining a practical and theoretical understanding of cutting-edge deep learning algorithms

  • Apply your new found skills to solve real problems, through clearly-explained code for every technique and test

  • Automate large sets of complex data and overcome time-consuming practical challenges

  • Improve the accuracy of models and your existing input data using powerful feature engineering techniques

  • Use multiple learning techniques together to improve the consistency of results

  • Understand the hidden structure of datasets using a range of unsupervised techniques

  • Gain insight into how the experts solve challenging data problems with an effective, iterative, and validation-focused approach

  • Improve the effectiveness of your deep learning models further by using powerful ensembling techniques to strap multiple models together

  • In Detail

    Designed to take you on a guided tour of the most relevant and powerful machine learning techniques in use today by top data scientists, this book is just what you need to push your Python algorithms to maximum potential. Clear examples and detailed code samples demonstrate deep learning techniques, semi-supervised learning, and more - all whilst working with real-world applications that include image, music, text, and financial data.

    The machine learning techniques covered in this book are at the forefront of commercial practice. They are applicable now for the first time in contexts such as image recognition, NLP and web search, computational creativity, and commercial/financial data modeling. Deep Learning algorithms and ensembles of models are in use by data scientists at top tech and digital companies, but the skills needed to apply them successfully, while in high demand, are still scarce.

    This book is designed to take the reader on a guided tour of the most relevant and powerful machine learning techniques. Clear descriptions of how techniques work and detailed code examples demonstrate deep learning techniques, semi-supervised learning and more, in real world applications. We will also learn about NumPy and Theano.

    By this end of this book, you will learn a set of advanced Machine Learning techniques and acquire a broad set of powerful skills in the area of feature selection & feature engineering.

    Style and approach

    This book focuses on clarifying the theory and code behind complex algorithms to make them practical, useable, and well-understood. Each topic is described with real-world applications, providing both broad contextual coverage and detailed guidance.

    Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the code file.

    Table of Contents

    1. Advanced Machine Learning with Python
      1. Table of Contents
      2. Advanced Machine Learning with Python
      3. Credits
      4. About the Author
      5. About the Reviewers
      6. www.PacktPub.com
        1. eBooks, discount offers, and more
          1. Why subscribe?
      7. Preface
        1. What is advanced machine learning?
        2. What should you expect from this book?
        3. What this book covers
        4. What you need for this book
        5. Who this book is for
        6. Conventions
        7. Reader feedback
        8. Customer support
          1. Downloading the example code
          2. Downloading the color images of this book
          3. Errata
          4. Piracy
          5. Questions
      8. 1. Unsupervised Machine Learning
        1. Principal component analysis
          1. PCA – a primer
          2. Employing PCA
        2. Introducing k-means clustering
          1. Clustering – a primer
          2. Kick-starting clustering analysis
          3. Tuning your clustering configurations
        3. Self-organizing maps
          1. SOM – a primer
          2. Employing SOM
        4. Further reading
        5. Summary
      9. 2. Deep Belief Networks
        1. Neural networks – a primer
          1. The composition of a neural network
          2. Network topologies
        2. Restricted Boltzmann Machine
          1. Introducing the RBM
            1. Topology
            2. Training
          2. Applications of the RBM
          3. Further applications of the RBM
        3. Deep belief networks
          1. Training a DBN
          2. Applying the DBN
          3. Validating the DBN
        4. Further reading
        5. Summary
      10. 3. Stacked Denoising Autoencoders
        1. Autoencoders
          1. Introducing the autoencoder
            1. Topology
            2. Training
          2. Denoising autoencoders
          3. Applying a dA
        2. Stacked Denoising Autoencoders
          1. Applying the SdA
          2. Assessing SdA performance
        3. Further reading
        4. Summary
      11. 4. Convolutional Neural Networks
        1. Introducing the CNN
          1. Understanding the convnet topology
            1. Understanding convolution layers
            2. Understanding pooling layers
            3. Training a convnet
            4. Putting it all together
          2. Applying a CNN
        2. Further Reading
        3. Summary
      12. 5. Semi-Supervised Learning
        1. Introduction
        2. Understanding semi-supervised learning
        3. Semi-supervised algorithms in action
          1. Self-training
            1. Implementing self-training
            2. Finessing your self-training implementation
              1. Improving the selection process
          2. Contrastive Pessimistic Likelihood Estimation
        4. Further reading
        5. Summary
      13. 6. Text Feature Engineering
        1. Introduction
        2. Text feature engineering
          1. Cleaning text data
            1. Text cleaning with BeautifulSoup
            2. Managing punctuation and tokenizing
            3. Tagging and categorising words
              1. Tagging with NLTK
              2. Sequential tagging
              3. Backoff tagging
          2. Creating features from text data
            1. Stemming
            2. Bagging and random forests
          3. Testing our prepared data
        3. Further reading
        4. Summary
      14. 7. Feature Engineering Part II
        1. Introduction
        2. Creating a feature set
          1. Engineering features for ML applications
            1. Using rescaling techniques to improve the learnability of features
            2. Creating effective derived variables
            3. Reinterpreting non-numeric features
          2. Using feature selection techniques
            1. Performing feature selection
              1. Correlation
              2. LASSO
              3. Recursive Feature Elimination
              4. Genetic models
        3. Feature engineering in practice
          1. Acquiring data via RESTful APIs
            1. Testing the performance of our model
            2. Twitter
              1. Translink Twitter
              2. Consumer comments
              3. The Bing Traffic API
            3. Deriving and selecting variables using feature engineering techniques
              1. The weather API
        4. Further reading
        5. Summary
      15. 8. Ensemble Methods
        1. Introducing ensembles
          1. Understanding averaging ensembles
            1. Using bagging algorithms
            2. Using random forests
          2. Applying boosting methods
            1. Using XGBoost
          3. Using stacking ensembles
            1. Applying ensembles in practice
        2. Using models in dynamic applications
          1. Understanding model robustness
            1. Identifying modeling risk factors
          2. Strategies to managing model robustness
        3. Further reading
        4. Summary
      16. 9. Additional Python Machine Learning Tools
        1. Alternative development tools
          1. Introduction to Lasagne
            1. Getting to know Lasagne
          2. Introduction to TensorFlow
            1. Getting to know TensorFlow
            2. Using TensorFlow to iteratively improve our models
          3. Knowing when to use these libraries
        2. Further reading
        3. Summary
      17. A. Chapter Code Requirements
      18. Index