Machine Learning's Role in Windows 10 Upgrades
In a blog post this week, Microsoft data scientists Archana Ramesh and Michael Stephenson detailed how the company uses machine learning algorithms to ensure Windows 10 feature upgrades are rolled out successfully.
Microsoft has explained before that it uses PC "telemetry" information and machine learning to assess the readiness of PCs for Windows 10 feature upgrade releases, which arrive twice per year. A Windows 10 feature upgrade essentially replaces the underlying operating system's bits with a new OS version. The process is called an "in-place upgrade." However, there are lots of potential issues that can arise with each OS upgrade, given the variations in hardware, drivers and software that exist, as well as flaws that may be present in the upgrade itself.
Some Windows 10 upgrade releases have been minor disasters. For instance, some Windows 10 version 1809 users experienced data losses after getting that upgrade. Microsoft responded at the time by halting the update's delivery more broadly after the data losses had become known.
Microsoft recently became more active about publishing information about known issues concerning its feature updates and cumulative updates, which can be found in this "Windows Message Center" page, although it lacks an RSS feed. As of Sept. 26, the Message Center indicated that Windows 10 version 1903, the "May 2019 Update," is now "ready for broad deployment for all users via Windows Update." Arguably, Windows 10 version 1903 was supposed to be ready when it was released back in May, though.
How Machine Learning Is Used
Ramesh and Stephenson explained that the use of machine learning algorithms to estimate the success of a Windows 10 feature upgrades first started with Windows 10 version 1803. Microsoft has since improved the process, they indicated, and its algorithms now check "35 areas of PC health" before determining if a machine can successfully run a new feature upgrade.
PCs get "nominated for updates" via this machine learning approach, they explained. Microsoft uses upgrade information from "early adopters" (Windows Insider Program testers and those "seeking" Windows 10 upgrades) to predict which machines will have a good upgrade experience, and that information gets used in the algorithms.
PC upgrade readiness is assessed based on the success of "similar hardware configurations that have successfully updated." Microsoft took that approach because of the "unique diversity of the Windows ecosystem," with its various hardware and software configurations.
Microsoft's previous approach with assessing upgrade readiness had been more manual, Ramesh and Stephenson explained:
Historically, compatibility issues were detected via laborious lab tests, feedback, support calls, and other channels. While these channels are still used, applying ML to the diagnostic data from the PCs in our broad ecosystem enables us to identify the patterns (in hardware characteristics, drivers, applications, etc.) that are most correlated with any update-related disruption.
Microsoft has been improving this machine learning process. More work will be done to ensure that it's "more automated, and agile enough to catch issues in a few seconds rather than hours," the data scientists promised. The machine learning model was built using the Microsoft Azure Databricks service. Microsoft Power BI is used to further clean the data, Ramesh and Stephenson added.
Need for Telemetry
The blog post didn't describe the ongoing quality assurance issues Microsoft has had with its OS upgrades and cumulative update patches. Possibly, Microsoft may not be getting all of the telemetry information it needs, especially from organizations, to fix issues before releasing Windows 10 feature updates.
This week, Microsoft announced that it is facilitating access to Windows 10 previews for organizations using the Windows Server Update Services management solution with System Center Configuration Manager. Possibly, it'll make it easier for organizations to send back test information to Microsoft, thereby improving the quality of OS upgrade releases.
By design, consumer users of the Windows 10 Home edition are still deemed "guinea pig" testers of new Windows 10 upgrades by Microsoft. Unlike organizations, they have few options for deferring upgrade releases to avoid early problems.
Kurt Mackie is senior news producer for the 1105 Enterprise Computing Group.