ML & AI for Software Developers - Part 13
Recommender Systems

Another branch of machine learning that has proven its mettle in recent years is recommender systems – systems that recommend products or services to customers. Amazon’s recommender system reportedly drives 35% of its sales. The good news is that you don’t have to be Amazon to benefit from a recommender system, nor do you have…

ML & AI for Software Developers - Part 12
PCA-Based Anomaly Detection

Anomaly detection is a branch of machine learning that seeks to identify anomalies in datasets or data streams. Airbus uses it to predict failures in jet engines and detect anomalies in telemetry data beamed down from the International Space Station. Credit-card companies use it to detect credit-card fraud. The goal of anomaly detection is to…

ML & AI for Software Developers - Part 11
Principal Component Analysis

Principal Component Analysis, or PCA, is one of the minor miracles of machine learning. It’s a dimensionality-reduction technique that reduces the number of dimensions in a dataset without sacrificing a commensurate amount of information. While that might seem underwhelming on the face of it, it has profound implications for engineers and software developers working to…

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…

Moving to ASP.NET Core: Replacing HTML Helpers that have Dependencies

Moving to ASP.NET Core: Replacing HTML Helpers that have Dependencies The HTML Helper is born To make it easier to add content to a view, you can take advantage of something called an HTML Helper. You can use HTML Helpers to generate standard HTML elements such as textboxes, links, dropdown lists, and list boxes. They…
Windows 11

Windows 11 — Initial Reactions and Thoughts

Windows 11 made a big splash with the announcement of the new version of the OS that was supposed to never have another version again. In any case, as part of the Windows Insider Program (WIP), I got my hands on the latest preview version of the OS, installed it, and poked around in it…

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…

Azure Migrations - Part 3
App Services Migration Assistant Assessment Report

Azure App Services is a popular choice for migrating apps to Azure because it gets users out of the business of managing servers. But with App Services, some limitations might mean reconfiguring or refactoring an application. The Migration Assistant utility can provide a quick report that shows you things you need to consider before moving…

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…