最近微软因为Windows 10的累积更新频出问题而受到很多网友的抱怨,有人推测这可能和微软使用机器学习算法来部署Windows 10更新推送的举措有关,因为这个过程中没有了人工的核查。今天,微软在官方博客上发文回应了这种观点,微软认为,机器学习算法总体来说是提升了Windows 10的更新体验的。
微软表示,Windows 10 PC的定期更新有助于确保它们免受恶意威胁的侵害,并可以带来最新功能以实现最佳性能和生产力。由于Windows客户可以使用的硬件、设备和应用程序种类繁多,因此每台PC的更新体验可能会略有不同。为了确保所有PC都具有无缝的更新体验(无论它们之间的差异如何),微软也通过使用测试、让合作伙伴密切参与、反馈、诊断数据等方式来管理更新的质量。
因为对更新质量的评估是一项非常复杂的工程,微软正在增加对机器学习(ML)技术的投资。微软表示机器学习可以帮助他们更快地发现潜在问题,并协助确定在Windows 10新版本发布后,更新每台PC的最佳时间。
微软称,Windows 10版本1803(2018年4月更新)是微软第一次大规模使用ML来部署更新,他们从PC运行状况的六个核心领域开始(例如总体可靠性等等),以确定更新过程是否顺利进行。Windows 10版本1903(2019年5月更新),则是微软在更新推送中使用ML的第三次迭代。
“我们现在可以评估PC运行的35种状况,并且这个过程还将继续发展,我们也会采取其他措施来改善您的更新体验。”
微软认为采用ML技术来部署更新是拥有更好的体验的,他们列举了一系列数据来佐证,例如通过ML更新后内核崩溃的数量减少一半,以及更新后的驱动程序问题的数量减少了五倍。
下图给出了机器学习部署Windows 10更新的总体结构:
微软表示机器学习在其中提供了两个关键功能:
它确定了潜在的问题,从而可以及时采取措施保护尚未更新的PC,以便Windows开发人员可以迅速调查和解决这些问题。
它预测并发现那些具有无缝更新体验的PC,从而提供更新。
由于整个过程每天都在重复,因此该模型会不断从最新的更新PC中学习。随着时间的流逝、问题的不断解决,过去那些更新体验较差的PC也将会拥有更好更稳定的更新体验。
另外,微软还谈到,ML驱动推出的过程中,有一个关键要素是具备能够及早发现兼容性问题的能力,这使微软能够建立保护措施,以保护特定PC免受更新的影响。过去,兼容性问题是通过费力的实验室测试、反馈、支持电话和其他渠道检测到的。尽管目前微软仍然使用这些方法,但是将ML应用于生态系统中来自PC的诊断数据,可以让微软更快更准确地识别更新过程中在硬件特性,驱动程序,应用程序等方面的兼容性问题。
为了实现这一点,微软使用了异常检测机制,它可以识别某个特征或模式(两个或多个特征)在什么时候导致的故障率比整体更高。通过使用Microsoft Azure Databricks,微软称可以快速扩展到数百万台PC并建立保护措施,从而防止PC受到与更新相关的潜在问题的干扰。