微软如何利用机器学习改进Win 10更新体验

微软在 2018 年 4 月 Windows 更新时第一次大规模使用机器学习(ML),ML 通过监测 PC 运行状况的六个核心领域(例如总体可靠性),以确定功能更新过程是否顺利进行。

而在 2019 年 5 月发布的更新推送中,这是微软使用 ML 的第三次迭代,可评估的领域增加到了 35 个,微软计划在未来的更新中进一步扩大覆盖范围。

微软表示,使用 ML 来部署更新拥有更好的更新体验,例如下图,通过 ML 更新后系统启动的卸载数量不到一半、内核崩溃的数量减少一半,以及更新后的驱动程序问题的数量减少了五倍。

640?wx_fmt=png

微软如何设计和构建支持 Windows 10 更新的机器学习模型

最近,微软发布博文介绍了这一技术信息。微软使用的是一个经过动态训练的模型,它通过在最新更新的 PC 机上训练,有区分好的和坏的更新体验的能力。下图是一个详尽的机器学习图,展示了机器学习算法的整体框架。

640?wx_fmt=png

每个 Windows 10 更新版本都先推给早期使用者(比如 Windows 内部人员和主动寻求更新的人)。有了这些体验者,微软开发人员就可以通过诊断数据(例如内核模式崩溃、异常关闭和驱动程序问题)来监控他们的更新体验。

机器学习在其中提供了两个关键功能:

  • 它确定了一些有安全隐患的问题,从而可以及时采取措施保护尚未更新的 PC,以便 Windows 开发人员能够及时调查和解决这些问题

  • 它预测和发现那些可以顺利进行更新的 PC,从而提供更新

每天都重复这样一个过程,使模型不断地从最近更新的 PC 机中获得学习。然后随着时间的推移和不断解决问题,相比之下,过去那些更新了的 PC 就又有了缺陷,而现在学习到的更好的经验就会重新对他们进行更新。

微软使用 Azure Databricks 构建 ML 模型,评估那些准备升级的 PC(准备数据,创建单个模型,并计算出分数):

640?wx_fmt=png

微软表示,ML 驱动的推出过程中,一个关键因素就是具有能够及早发现兼容性问题的能力,使他们能够建立保护措施,以保护其他的 PC 不进行本次的更新。而以往来说,兼容性问题是通过实验室艰苦测试、反馈和其他渠道检测到的。

虽然这些手段仍在使用,但在微软复杂的生态系统中,将 ML 应用到 PC 的诊断数据,将使微软能够更快识别与任何更新相关的兼容性信息,如硬件特性、驱动程序、应用程序等方面。

为了发现兼容性问题,他们使用异常检测,以发现某些特征或模式在什么时候导致的故障率会比整体的预期高。通过使用 Azure Databricks,就可以快速扩展到数百万台 PC,并建立保护措施,以防止 PC 被更新相关的潜在问题干扰。

下图显示了某个功能或模式的失败率为 82%,而基准失败率约为 3%。从而确定需要保护的位置,以防止其他 PC 遇到类似问题:

640?wx_fmt=png

微软表示,目前的机器学习方案还不够完善,接下来会进一步发展 ML,以确保 ML 是全面的、更自动化的和灵活的,能够在几秒钟内而不是几个小时内解决问题。

640?wx_fmt=jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/313532.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用.NET Core创建Windows服务(一) - 使用官方推荐方式

原文:Creating Windows Services In .NET Core – Part 1 – The “Microsoft” Way创建Windows服务来运行批处理任务或者运行后台任务,是一种非常常见的模式,但是由于云服务(Amazon Lambda, Azure WebJobs以及Azure Functions&am…

Tuple VS ValueTuple

为什么有此文章首先要说的是我们公司内部技术框架是用 abp.vnext 框架整合而来的,我们架构师对于 abp 相关的知识都很了然于胸了。并且这个框架的确很优秀,省了我们前期大量基础工作。架构师把主要的架子搭建好了之后,把应用层与核心层让我们…

关于.NET HttpClient方式获取微信小程序码(二维码

随着微信小程序的火热应用,市面上有关小程序开发的需求也多了起来。近来分析了一项生成有关生成微信小程序码的需求——要求扫码跳转到小程序指定页面(带参数);看了下小程序官方文档,以及网上的例子,未看到…

从零开始使用Skywalking分布式链路追踪系统

当我们用很多服务时,各个服务间的调用关系是怎么样的?各个服务单调用的顺序\时间性能怎么样?服务出错了,到底是哪个服务引起的?这些问题我们用什么方案解决呢,以前的方式是各个系统自己单独做日志,出了问题…

快速排序 (Quick Sort)(Java实现)

快速排序(Quicksort)是对冒泡排序的一种改进,借用了分治的思想,由C. A. R. Hoare在1962年提出。 1、基本思想 快速排序的基本思想:挖坑填数分治法。 首先选一个轴值(pivot,也有叫基准的),通过…

使用.net core3.0 正式版创建Winform程序

前阵子一直期待.net core3.0正式版本的出来,以为这个版本出来,Winform程序又迎来一次新生了,不过9.23日出来的马上下载更新VS,创建新的.net core Winform项目,发现并没有Winform窗体设计器。而微软目前则是通过插件的方…

深入理解 ValueTask

.NET Framework 4 里面的命名空间为 System.Threading.Tasks的 Task 类。这个类以及它派生的 Task<TResult> 早已成为编程的主要部分&#xff0c;在 C#5 中的异步编程模式当作介绍了 async/await。在这篇文章里&#xff0c;我会覆盖新的类 ValueTask / ValueTask<TRes…

谓词筛选表达式的扩展库PredicateLib

PredicateLib是谓词筛选表达式Expression<Func<T, bool>>的一个扩展库&#xff0c;它可以帮你创建一个复杂且灵活的Expression<Func<T, bool>>&#xff0c;以作为EF、MongoDB Driver等ORM框架的查询条件。1 Predicate的创建1.1 true或false Predicatev…

NET Core 3.0 AutoFac替换内置DI的新姿势

.NET Core 3.0 和 以往版本不同&#xff0c;替换AutoFac服务的方式有了一定的变化&#xff0c;在尝试着升级项目的时候出现了一些问题。原来在NET Core 2.1时候&#xff0c;AutoFac返回一个 IServiceProvider 参数注入到ConfigureServices .NET Core 服务中&#xff0c;基本大痣…

XSS(跨站脚本攻击)攻击与防御

一、 XSS攻击原理 XSS原称为CSS(Cross-Site Scripting)&#xff0c;因为和层叠样式表(Cascading Style Sheets)重名&#xff0c;所以改称为XSS(X一般有未知的含义&#xff0c;还有扩展的含义)。XSS攻击涉及到三方&#xff1a;攻击者&#xff0c;用户&#xff0c;web server。用…

asp.net core 使用Mysql和Dapper

序曲&#xff1a;学习编程最好的方式就是敲代码&#xff0c;没有比这个更好的方法&#xff0c;哪怕你看了上百G的视频&#xff0c;都不如你自己敲几行代码更为有效。还有要记得敲完代码然后写一篇随笔来记录一下你所学所想。大家都知道&#xff0c;.netcore是微软一个具有历史意…

CSFR(跨站请求伪造)攻击与防御

一、CSRF是什么&#xff1f; CSRF&#xff08;Cross-site request forgery&#xff09;&#xff0c;中文名称&#xff1a;跨站请求伪造&#xff0c;也被称为&#xff1a;one click attack/session riding&#xff0c;缩写为&#xff1a;CSRF/XSRF。 二、CSRF可以做什么&#…

Vue 3源码公布

10 月 5 日凌晨&#xff0c;Vue.js 框架的作者兼核心开发者尤雨溪公布了尚处于 Pre-Alpha 状态的 Vue 3 源码。说学不动的童鞋抓紧剩余的假期时间撸一遍源码吧 : D作者表示&#xff0c;Vue 3 主要的架构改进、优化和新功能均已完成&#xff0c;剩下的主要任务是完成一些 Vue 2 …

简析web注入攻击

注入攻击是众多攻击之一&#xff0c;在注入攻击中&#xff0c;攻击者给程序提供恶意的输入&#xff0c;解析引擎把恶意输入作为命令或者查询的一部分&#xff0c;顺带着改变了程序执行的流程。 注入是web程序最古老的和最危险的攻击之一&#xff0c;它们能导致数据被偷&#x…

在副业刚需的时代,如何掌握副业的正确姿势?

前言近期&#xff0c;伴随着“副业刚需”这个词语的流行&#xff0c;关于“职场人要不要发展副业”的话题再一次被炒得沸沸扬扬。有人认为副业是刚需&#xff0c;是抵御中年危机的锦囊妙计&#xff0c;甚至是中年人该有的自觉&#xff0c;没有副业的人不足以谈人生&#xff0c;…

使用.NET Core创建Windows服务(二) - 使用Topshelf方式

原文&#xff1a;Creating Windows Services In .NET Core – Part 2 – The “Topshelf” Way作者&#xff1a;Dotnet Core Tutorials译者&#xff1a;Lamond Lu译文&#xff1a;使用.NET Core创建Windows服务&#xff08;二&#xff09; - 使用Topshelf方式使用.NET Core创建…

常用加密算法(Java实现)总结

1、Java的安全体系架构 Java中为安全框架提供类和接口。JDK 安全 API 是 Java 编程语言的核心 API&#xff0c;位于 java.security 包&#xff08;及其子包&#xff09;&#xff0c;以及sun.securityAPI包&#xff08;及其子包&#xff09;中。设计用于帮助开发人员在程序中同…

怎样的项目才能称为“成功项目”?

作者&#xff1a;邹溪源&#xff0c;长沙资深互联网从业者&#xff0c;架构师社区合伙人&#xff01;引子这个故事讲的是一家拥有百年历史的制造业大厂的信息化转型过程中的波折。这家企业拥有超过三万名员工&#xff0c;它是某行业的领先品牌&#xff0c;但是在信息化程度上却…

彩虹表

一、简介 彩虹表就是一个庞大的、针对各种可能的字母组合预先计算好的哈希值的集合&#xff0c;不一定是针对MD5算法的&#xff0c;各种算法的都有&#xff0c;有了它可以快速的破解各类密码。越是复杂的密码&#xff0c;需要的彩虹表就越大&#xff0c;现在主流的彩虹表都是1…

深入Dapper.NET源码

经过业界前辈、StackOverflow多年推广,「Dapper搭配Entity Framework」成为一种功能强大的组合,它满足「安全、方便、高效、好维护」需求。但目前中文网路文章,虽然有很多关于Dapper的文章但都停留在如何使用,没人系统性解说底层原理。所以有了此篇「深入Dapper源码」想带大家进…