How ML.NET is used in real life

ML.NET is a very powerful yet relatively unknown set of machine learning tools in the .NET ecosystem. It can train many different types of models, ranging from a simple classification to something more advanced, such as product recommendation engines. It even supports deep-learning tasks such as image analysis, object detection, and natural language processing. Yes, you can use it to build your own intelligent chatbot or a smart camera!

The biggest feature of ML.NET is that it’s incredibly easy to use. You can be completely inexperienced in machine learning or data science. You can have zero Python knowledge. Yet, you can still use it. Of course, in order to use it, you will need to have a rudimentary understanding of how machine learning works. However, the knowledge required is so basic that it’s something you can probably learn in an hour.

So, if you are a C# programmer who wants to get into machine learning, ML.NET is a perfect tool for that. However, there is one problem that keeps C# programmers hesitant. The objection I keep hearing all the time is this:

Yes, ML.NET is nice. But does anyone actually use it in the real world? What’s the point of investing my time into it if nobody cares about it?

Well, as a matter of fact, yes! It’s unfortunate that it’s not very well publicized, but ML.NET is indeed being actively used by many real-life organizations, including Microsoft. I used it in real-life projects too.

So, today, I will tell you how I used it. Then, I will give you some noteworthy examples of how other organizations are using it.

My own experience with ML.NET

One of the types of machine learning models you can train with ML.NET is anomaly detection. Well, technically, you don’t even “train” such a model, as it’s a type of so-called unsupervised learning. You show data to the model and the model itself makes sense of it. Your control of the process is limited to, pretty much, adjusting the model’s sensitivity and setting some other global operational parameters for it.

Anomaly detection works with time-series data such as telemetry coming from a deployed software component. This may include the number of errors over time, the number of active users over time, and so on. These metrics can be plotted on a graph that looks similar to this:

So, what can ML.NET do with this data? It can detect anomalies in it. That, in turn, will allow you to address issues in your system proactively before you get bombarded with support requests from your customers. The problem is you can’t keep watching this data all the time. You can, of course, configure various alerts to fire when certain metrics exceed certain thresholds. However, this is usually done after you’ve already dealt with an incident affecting your customers.

You can’t always figure out in advance what metrics at what threshold will show you a problem. You can only know for certain when you examine your metrics once the incident happened.

But with ML.NET, you can do it all in advance. And that’s exactly what I did with ML.NET in one of the projects I’ve been involved in. It doesn’t have to know anything about the data. All it knows is that this specific value here looks out of place. So you can get alerted as soon as something strange happens. Then, it’s up to you whether you want to adjust the sensitivity of your anomaly detection tool or proactively fix the problem.

While I can’t go into too much detail about the project, what I can say is that adopting ML.NET for anomaly detection in metrics significantly reduced the number of support calls.

Organizations that use ML.NET

As a creator of ML.NET, Microsoft uses it in several of its internal projects. In particular, the company’s Real Estate and Security (RE&S) group relies on ML.NET for managing a highly complex facility infrastructure, which relies on over a hundred data centers across the globe.

At Microsoft’s headquarters alone, a sprawling network of over 100 buildings relies on more than 33,000 pieces of Heating, Ventilation, and Air Conditioning (HVAC) equipment. Every day, IoT-enabled devices generate approximately 49 million fault signals, feeding telemetry data into third-party building management systems (BMS). From there, relevant IoT faults are forwarded to Dynamics 365 Connected Field Service, where they become alerts—and the most critical alerts are converted into work orders. These work orders ensure that maintenance and repairs are scheduled efficiently for building assets.

When the RE&S group first integrated BMS with Dynamics 365, each Energy Smart building was generating around 2,000 faults per day from HVAC systems. Scaling this across all 100+ buildings meant potentially dealing with 200,000 faults daily—a volume that would overwhelm the database and create an unmanageable flood of alerts for technicians.

The team needed a smarter approach to identify the most actionable faults—ones that were likely to require work orders—while filtering out the noise. To tackle this challenge, the RE&S group used ML.NET to implement a machine learning model designed to intelligently prioritize faults with a high probability of becoming work orders. By leveraging machine learning, they could drastically reduce unnecessary alerts while ensuring that critical issues received attention.

The results have been transformative. With ML.NET models achieving ~99% accuracy, the team has successfully reduced IoT alerts in Dynamics 365 by 70-80%. This optimization has allowed them to onboard more buildings, cut down on alert fatigue, and ensure that technicians focus only on the most critical maintenance tasks. By embracing ML.NET, Microsoft’s RE&S group has not only streamlined operations but also set a new standard for intelligent building management.

How ML.NET helps Power BI identify key influencers

Power BI is a popular business analytics platform built by Microsoft. It enables users to transform raw data into compelling visual stories. Power BI uses interactive charts, graphs, or gauges. It’s designed to make it easy to create reports, share insights across an organization, or seamlessly embed analytics into apps.

However, Power BI is more than just a visualization tool. It’s evolving with machine learning to simplify complex analysis, allowing anyone in an organization to harness AI for smarter decision-making.

For any business, success depends on identifying and understanding the key influencers – the factors that drive performance, customer behavior, and outcomes. Businesses rely on this analysis to make strategic decisions, prioritize improvements, and gain a competitive edge. For example, companies might ask what factors lead customers to leave negative reviews or what influences house prices to rise.

While these insights are invaluable, traditional data analysis for key influencers and customer segmentation is time-consuming and complex. It often requires coding statistical functions, running significance tests, and ranking results, all of which demand both expertise and effort. To simplify this, Power BI turned to machine learning to help users gain insights faster without writing complex code. This is where ML.NET came to the rescue.

Here’s how this solution worked:

Users select a key performance indicator (KPI)—such as retention rate or click-through rate—for analysis.

Key Influencers applies ML.NET algorithms to determine which factors have the greatest impact on the chosen metric.

The results are ranked and visualized, showing key influencers and top segments for further investigation.

Other organizations that rely on ML.NET

Besides Microsoft and its subsidiary companies, several other organizations embraced ML.NET. One such example is H&R Block, a tax preparation company. As a company that serves many customers and handles a lot of data, it was inevitable that it would one day embrace an ML solution. Therefore, it started using ML.NET, OpenAI, and various AI tools available in Azure.

SigParser, an email signing company, is another consumer of ML.NET. It uses the tool to detect non-human emails. This capability has many useful applications, such as deciding whether or not to save the sender’s contacts in a CRM.

Another noteworthy user of ML.NET is Asgard Systems, a high-end software consultancy company based in Romania. It uses ML.NET to develop a solution that allows its retail clients to significantly reduce food wastage.

Wrapping up

As it happens, I am currently in the process of writing a book about ML.NET. It’s currently available in early access with most chapters completed.

If you like what I do and want to support me or if you simply want to learn how to use ML.NET, you can find the book via the link below:

Machine Learning for C#: Developers Build smart applications with ML.NET