Author Archives: jamesdmccaffrey

My Favorite Disney Animated Film From Each Decade

Disney was a huge part of my life. Growing up in Anaheim, in the late 1950s and early 1960s (shortly after Disneyland opened), the Matterhorn was visible from my house, and the Park was an immediate influence. In those days, … Continue reading

Posted in Top Ten | Leave a comment

“Quadratic Regression with Pseudo-Inverse Training Using C#” in Visual Studio Magazine

I wrote an article titled “Quadratic Regression with Pseudo-Inverse Training Using C#” in the May 2026 edition of Microsoft Visual Studio Magazine. See https://visualstudiomagazine.com/articles/2026/05/01/quadratic-regression-with-pseudo-inverse-training-using-csharp.aspx. The goal of a machine learning regression problem is to predict a single numeric value. For … Continue reading

Posted in Machine Learning | Leave a comment

AdaBoost Regression Using C# Applied to the Diabetes Dataset – Poor Results As Expected

I write code almost every day. Like many skills, writing code is something that must be practiced, and anyway, I just enjoy writing code. One morning before work, I figured I’d run the well-known Diabetes Dataset through an AdaBoost regression … Continue reading

Posted in Machine Learning | Leave a comment

Ridge Regression From Scratch Using Python With SGD Training

One morning before work, I noticed that it had been several months since I last implemented linear ridge regression, from scratch, using Python. I figured I’d do so, using the style of the scikit-learn Ridge module. Ridge regression (sometimes called … Continue reading

Posted in Machine Learning, Scikit | 1 Comment

Matrix Left Pseudo-Inverse Via Normal Equations (Cholesky) – Refactor and Test Using C#

In machine learning, to train a linear model (linear regression, quadratic regression, etc.) you can use several techniques including stochastic gradient descent (SGD), L-BFGS optimization, and pseudo-inverse. There are two main categories of pseudo-inverse algorithms for machine learning scenarios where … Continue reading

Posted in Machine Learning | Leave a comment

I Play Four Interesting Chess Games in a Tournament

When I was in high school (Servite High School in Anaheim, California), I was on the school chess team. Our team — Bob Smith, Tom Law, Tom Quackenbush, Dan Musser, Ed Hernandez, Dan Musser, Dennis Michel, and Mike Ventriglia — … Continue reading

Posted in Miscellaneous | Leave a comment

Two Reasons Why Drop-First Encoding for Linear Regression Categorical Predictor Variables is Preferable to One-Hot Encoding

Bottom line: When using linear regression on data that has categorical predictor variables, you must use drop-first encoding instead of one-hot encoding if you train the model using a closed form pseudo-inverse technique (left pseudo-inverse, Moore-Penrose pseudo-inverse). If you use … Continue reading

Posted in Machine Learning | Leave a comment

Random Forest Regression Using C# Applied to the Diabetes Dataset – Poor Results As Expected

I write code almost every day. Like many activities, writing code is a skill that must be practiced, plus I just enjoy writing code. And in the emerging world of AI-generated software, it’s still important to write code by hand … Continue reading

Posted in Machine Learning | Leave a comment

Four Different Techniques to Train a Linear Regression Model Using C#

The goal of a machine learning regression model is to predict a single numeric value. For example, you might want to predict a person’s credit score based on age, annual income, bank account balance, and so on. Common regression techniques … Continue reading

Posted in Machine Learning | Leave a comment

Matrix Pseudo-Inverse via Normal Equations (Left Pseudo-Inverse) Using C#

One Sunday morning, I figured I’d refactor one of my implementations of matrix pseudo-inverse via normal equations, sometimes called the left pseudo-inverse. The technique is not a general purpose pseudo-inverse such as the Moore-Penrose pseudo-inverse — it is used in … Continue reading

Posted in Machine Learning | Leave a comment