ML & AI for Software Developers - Part 10
Support-Vector Machines

Support-vector machines, also known as SVMs, represent the cutting edge of statistical machine learning. They are typically used for classification problems, although they can be used for regression, too. SVMs often succeed at finding separation between classes when other models – that is, other learning algorithms – do not. Scikit-learn makes building SVMs easy with…

ML & AI for Software Developers - Part 9
Multiclass Classification

The three previous posts in this series introduced binary classification and provided working examples of its use, including sentiment analysis and spam filtering. Now it’s time to tackle multiclass classification, in which there are n possible outcomes rather than just two. A great example of multiclass classification is performing optical character recognition: examining a hand-written…

ML & AI for Software Developers - Part 8
Binary Classification: Spam Filtering

My previous post introduced a machine-learning model that used logistic regression to predict whether text input to it expresses positive or negative sentiment. We used the probability that the text expresses positive sentiment as a sentiment score, and saw that expressions such as “The long lines and poor customer service really turned me off” score…

ML & AI for Software Developers - Part 6
Binary Classification

The machine-learning model featured in my previous post was a regression model that predicted taxi fares based on distance traveled, the day of the week, and the time of day. Now it’s time to tackle classification models, which predict categorical outcomes such as what type of flower a set of measurements represent or whether a…

ML & AI for Software Developers - Part 5
Regression Modeling

When you build a machine-learning model, the first and most important decision you make is what learning algorithm to use to fit the model to the training data. In my previous post, I introduced some of the most widely used learning algorithms for regression models: linear regression, decision trees, random forests, gradient-boosting machines (GBMs), and…

ML & AI for Software Developers - Part 4
Regression Algorithms

Supervised-learning models come in two varieties: regression models and classification models. Regression models predict numeric outcomes, such as the price of a car. Classification models predict classes, such as the breed of a dog in a photo. When you build a machine-learning model, the first and most important decision you make is what learning algorithm…

ML & AI for Software Developers - Part 3
Supervised Learning with k-Nearest Neighbors

Most machine-learning models fall into one of two categories. Supervised-learning models make predictions. For example, they predict whether a credit-card transaction is fraudulent or a flight will arrive on time. Unsupervised-learning models don’t make predictions; they provide insights into existing data. The previous post in this series introduced unsupervised learning and used a popular algorithm…

ML & AI for Software Developers - Part 2
Unsupervised Learning with k-Means Clustering

Machine-learning models fall into two broad categories: supervised-learning models and unsupervised-learning models. The purpose of supervised learning is to make predictions. The purpose of unsupervised learning is to glean insights from existing data. One example of unsupervised learning is examining data regarding products purchased from your company and the customers who purchased them to determine…

Machine Learning and AI for Software Developers – Part I

Machine learning (ML) and artificial intelligence (AI) are transforming the way software is written and, more importantly, what software is capable of. Developers are accustomed to writing code that solves problems algorithmically. It’s not difficult to write an app that hashes a password or queries a database. It’s another proposition altogether to write code that…
Device In The Box

Project Santa Cruz Part 1: Unboxing and First Impressions

I started down the rabbit hole of AI a few years back when the idea of AI was coming to the forefront of computing rather than being relegated to a niche corner. I remember building my first AI models base on the MNIST dataset, which is often used as a benchmark for testing various classification…

Fundamentals of Deep Learning

Deep learning is a subset of machine learning that relies on deep neural networks. It is how computers identify objects in images, translate speech in real-time, generate artwork and music, and perform other tasks that would have been impossible just a few short years ago. Learn what neural networks are, how they work, and how…