CN110019419A - 在统计模型中自动检测和管理异常 - Google Patents

在统计模型中自动检测和管理异常 Download PDF

Info

Publication number
CN110019419A
CN110019419A CN201810067258.1A CN201810067258A CN110019419A CN 110019419 A CN110019419 A CN 110019419A CN 201810067258 A CN201810067258 A CN 201810067258A CN 110019419 A CN110019419 A CN 110019419A
Authority
CN
China
Prior art keywords
statistical model
version
performance
distribution
edition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN201810067258.1A
Other languages
English (en)
Inventor
A·穆拉里达兰
马一鸣
F·劳迪斯
甄毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN110019419A publication Critical patent/CN110019419A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Operations Research (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Tourism & Hospitality (AREA)
  • Evolutionary Biology (AREA)
  • Development Economics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Fuzzy Systems (AREA)
  • Computational Linguistics (AREA)
  • Algebra (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Debugging And Monitoring (AREA)

Abstract

所公开的实施例提供了一种用于管理统计模型的执行的系统。在操作期间,系统跟踪与统计模型的第一版本的性能相关的一个或多个度量的分布。当检测到分布中的偏差时,系统输出统计模型性能异常警报。系统还会触发到统计模型的第二版本的回滚。

Description

在统计模型中自动检测和管理异常
技术领域
所公开的实施例涉及数据分析。更具体地,所公开的实施例涉及用于在统计模型中自动检测和管理异常的技术。
背景技术
分析可用于发现与大量复杂的、互连的和/或多维数据相关的趋势、模式、关系和/或其他属性。反过来,所发现的信息可以用来获得洞察和/或指导与数据相关的决策和/或动作。例如,可以使用业务分析来评估过去的性能、指导业务规划和/或识别可以改善未来性能的动作。
为了收集这样的洞察,可以使用回归模型、人工神经网络、支持向量机、决策树、朴素贝叶斯分类器和/或其它类型的统计模型来分析大规模的特征数据集。然后可以使用所发现的信息来指导决策和/或执行与数据相关的动作。例如,可以使用统计模型的输出来指导营销决策、评估风险、检测欺诈、预测行为和/或定制或优化应用或网站的使用。
因此,分析中的统计模型的创建和使用可以通过用于改进特征和/或统计模型的剖析、管理、共享和重用的机制来促进。
附图说明
图1示出了根据所公开的实施例的系统的示意图。
图2示出了根据所公开的实施例的用于监视和管理统计模型的执行的系统。
图3示出了图示根据所公开的实施例的监视和管理统计模型的执行的过程的流程图。
图4示出了根据所公开的实施例的计算机系统。
在附图中,相似的附图标记指代相同的附图元素。
具体实施方式
呈现以下描述以使得本领域任何技术人员能够制造和使用实施例,并且在特定应用及其要求的上下文中提供以下描述。对于本领域技术人员而言,对所公开的实施例的各种修改将是显而易见的,并且可将本文中定义的一般原理应用于其他实施例和应用,而不背离本公开的精神和范围。因此,本发明不限于所示出的实施例,而是应被赋予与本文公开的原理和特征一致的最宽范围。
在该详细描述中描述的数据结构和代码通常存储于计算机可读存储介质上,计算机可读存储介质可以是能够存储供计算机系统使用的代码和/或数据的任何设备或介质。计算机可读存储介质包括但不限于易失性存储器,非易失性存储器,诸如磁盘驱动器、磁带、CD(光盘)、DVD(数字通用盘或数字视频盘)的磁和光存储设备,或现在已知或以后开发的能够存储代码和/或数据的其他介质。
详细描述部分中描述的方法和过程可以体现为可以存储在如上所述的计算机可读存储介质中的代码和/或数据。当计算机系统读取并执行存储在计算机可读存储介质上的代码和/或数据时,计算机系统执行体现为数据结构和代码并存储在计算机可读存储介质内的方法和过程。
此外,本文描述的方法和过程可以包含于硬件模块或装置中。这些模块或装置可以包括但不限于专用集成电路(ASIC)芯片,现场可编程门阵列(FPGA),在特定时间执行特定软件模块或代码段的专用或共享处理器,和/或现在已知或以后开发的其他可编程逻辑设备。当硬件模块或装置被激活时,它们执行包含于其中的方法和过程。
所公开的实施例提供了用于监视和/或管理统计模型的执行的方法、装置和系统。如图1所示,监视系统112可以监视一组统计模型114的执行,例如回归模型、人工神经网络、支持向量机、决策树、朴素贝叶斯分类器、贝叶斯网络、随机森林、梯度提升树、层级模型和/或组合模型。
统计模型114可以与应用110一起使用和/或在应用110内执行,一组电子设备102-108通过网络120访问应用110。例如,应用110可以是本地应用、web应用、移动应用的一个或多个部件、和/或通过网络120访问的另一类型的客户端-服务器应用。反过来,电子设备102-108可以是个人计算机(PC)、膝上型计算机、平板计算机、移动电话、便携式媒体播放器、工作站、游戏控制台、和/或能够以一种或多种形式执行应用110的其他支持网络的计算设备。
在使用应用110期间,电子设备102-108的用户可以生成和/或提供用作统计模型114的输入的数据。统计模型114可以分析所述数据以发现数据中的关系、模式和/或趋势;从输入数据中获得洞察;和/或指导与数据相关的决策或动作。
例如,用户可以使用应用110来访问在线职业网络和/或另一类型的社交网络。在使用应用110期间,用户可以执行任务,例如建立和维护职业连接;接收用户的网络、职业或行业中的更新并与其进行交互;列出教育、工作和社区经验;认可和/或推荐彼此;列出、搜索和/或申请工作;寻找或联系应聘者;提供业务或公司相关的更新;和/或进行销售、市场营销和/或广告活动。结果,输入到统计模型114中的数据可以包括但不限于:简档更新,简档视图,连接,认可,邀请,跟随,帖子,评论,喜好,共享,搜索,点击,转换,消息,与群组的交互,地址簿交互,对推荐的响应,购买,和/或来自用户的其他隐式或显式反馈。反过来,统计模型114可以生成包括以下的输出:分数(例如,连接强度分数,信誉分数,资历分数等),分类(例如,将用户分类为求职者或以特定角色被雇用),推荐(例如,内容推荐,工作推荐,技能推荐,连接推荐等),估计(例如,开支估计),预测(例如,预测分数,购买倾向,流失倾向,退订倾向等),和/或其他推论或性质。
在另一方面,随着输入到统计模型114中的特征的分布、可用性、存在和/或质量随时间变化,统计模型114的性能可能偏离或退化。例如,响应于输入到统计模型中的特征的分布的漂移和/或与生成特征相关联的误差,统计模型的性能可能下降。统计模型114中的这种退化或次优性能可能不利地影响用户对应用110和/或应用110的功能的体验。
在一个或多个实施例中,监视系统112包括自动检测和管理统计模型114的性能中的异常116的功能。更具体地,监视系统112可以将统计模型114的输出和与输出相关联的结果和/或标签进行比较,以产生一组性能度量122。例如,可以使用平均值、中值、方差、计数、总和、百分比和/或其他汇总统计来随时间跟踪由每个统计模型输出的值的分布。在另一示例中,可以将来自每个统计模型的推荐、预测动作和/或其他输出与用户对推荐的响应、用户的实际动作和/或另一结果进行组合,以计算接收器操作特性(ROC)曲线下面积(AUC)、观察/预期(O/E)比和/或统计模型的其他性能度量。
接下来,监视系统112可以使用性能度量122来检测异常116,并基于异常116来执行补救动作118。如图2所示,用于监视和管理统计模型的执行的系统(例如,图1的监视系统112)可以包括分析装置202、管理装置204和交互装置206。这些部件中的每一个在下文进一步详述。
分析装置202可以分析统计模型的一个或多个版本的性能。版本可以包括当前版本230,用于在实时、接近实时和/或离线的基础上生成分数、预测、分类、估计、推荐和/或其它推断。反过来,当前版本230的输出可用于补充或执行现实世界的任务,例如管理应用的执行、个性化用户体验、管理关系、做出临床决策、执行事务、操作自主车辆或机器和/或分析度量或测量。
版本还可以包括统计模型的一个或多个先前版本228。先前版本228可以包括在当前版本230之前生成和/或使用的统计模型的版本。因此,可以使用比当前版本230更旧的数据和/或技术和/或使用来自当前版本230的不同特征来训练先前版本228。
版本可以可选地包括比当前版本230新的一个或多个版本。例如,这些版本可以包括统计模型的试验版本和/或在当前版本230之后产生并且经受训练、验证和/或测试的版本。
虽然统计模型的给定版本(例如,当前版本230)被用于现场、制作或现实世界的环境中,但版本的输出可被收集并存储在数据库、数据存储库、分布式文件系统、消息传送服务和/或另一类型的数据仓库234中。与当前版本230的输出相关和/或用于验证该输出的结果、标签和/或其他测量值也可以存储在数据仓库234中和/或另一数据存储库中。
分析装置202使用当前版本230的输出和对应的结果来随时间评估统计模型的性能。更具体地,分析装置202根据输出和对应结果生成一个或多个性能度量122。
例如,分析装置202可以将在指定时间段(例如,15分钟,一个小时,一天等)从统计模型收集的输出倾向分数的值桶化(bucketize)为预先定义数量的“箱块(bin)”。每个倾向分数可以表示给定用户与给定项目(例如,内容项目、推荐、广告等)交互(例如,点击或观看)的可能性。可以使用布尔值来指定与倾向分数相关联的结果,当用户不与项目交互时将布尔值设置为0,而当用户与项目交互时将布尔值设置为1。对于每个箱块k,分析装置202可以使用以下公式来计算作为O/E比的性能度量:
在上面的公式中,n表示k中的结果数目,i表示箱块中给定的布尔结果,“Meanscore”表示k中平均倾向分数。
继续上述示例,代替或除了O/E比之外,分析装置202还将性能度量计算为分数分布。为了生成分数分布,分析装置202在同一时间段内对每个箱块内的倾向分数的数目进行计数,以产生箱块内倾向分数的频率的直方图。
接下来,分析装置202通过将性能度量122聚集到一个或多个时间序列210中,来跟踪性能度量122随时间的分布。例如,分析装置202可以使用O/E比、分数分布和/或在每个15分钟时段内计算出的其他性能度量122,来产生跨越同一时间段的性能度量122的平均值、方差、百分比、计数、总和和/或其他汇总统计。
分析装置202然后分析时间序列210的一个或多个特性212以检测性能度量122的分布中的偏差214。例如,分析装置202可以将每个时间序列210分解成特性212,例如趋势分量、周期分量、季节分量和/或不规则分量。分析装置202可以将各个分量和/或时间序列作为整体进行分析,以检测分布之外的偏差214。偏差可以包括但不限于异常值(例如,位于分布之外的个体值),平均偏移(例如,分布平均值的显著变化),方差变化(例如,分布方差的显著变化)和/或趋势变化(例如,时间序列的趋势分量的显著变化)。
更具体地,分析装置202可以将性能度量122和/或时间序列210的近期值与性能度量122和/或时间序列210的历史或基线值进行比较,以检测偏差214。例如,可以在当前版本230的A/B测试和/或统计模型升级到当前版本230期间,生成性能度量122和/或时间序列210的初始集合。初始集合可以用作当前版本230的性能的“基线”,性能度量122和/或时间序列210的后续值与所述基线进行比较。随着当前版本230继续执行,最新的性能度量122和/或时间系列210与较旧的值(例如,来自最后一天、一周、两周、一个月、一年等)进行比较,以检测偏差214,偏差214为落在性能度量122和/或时间序列122的历史或基线分布之外的值。
在一个实施例中,当发现当前版本230的性能偏差时,管理装置204使用较新的一组特征自动触发当前版本230的重新训练226。管理装置204可以同时触发和/或执行到统计模型的一个或多个先前版本228的一个或多个回滚224,同时执行对当前版本230的重新训练226。例如,管理装置204可以使用来自数据仓库234和/或另一仓库的历史性能度量122,来选择具有最佳历史性能的先前版本以与从当前版本230回滚统计模型一起使用。
管理装置204还可以或者替代地测试统计模型的多个先前版本228的性能,并且为了与回滚一起使用而选择在先前版本228集合中具有最佳性能的先前版本。例如,管理装置204可以使用多臂强盗实验(multi-armed bandit experiment)、A/B测试和/或其他顺序分析或假设测试技术,来使用现场或最新用户业务和/或其他输入特征来比较一组先前版本228的性能。在实验和/或测试结束时,管理装置204可以选择性能最好的先前版本以用于回滚。
可以基于在线(例如,使用实时、现场和/或生产数据在生产环境中进行推断)和/或在离线设置中(例如通过与版本一起“重放”历史数据来识别高性能版本的子集)执行实验或测试。例如,可以使用离线实验来从统计模型的所有先前版本228中选择使用最近收集的输入数据执行最佳的预先指定数目的先前版本。在离线实验中识别出最佳执行的先前版本的子集之后,可以使用在线实验或测试,来基于从现场或最新输入特征生成的性能度量122从所述子集中选择单个最佳执行模型,用于回滚。
在执行从当前版本230回滚到选择的先前版本之后,分析装置202监视与先前版本相关联的性能度量122、时间序列210和/或特性212。分析装置202可以使用所监视的数据来比较先前版本的性能与当前版本230的过去性能(例如,在检测到异常或偏差之前)和/或其他先前版本228的历史性能。例如,分析装置202可以使用O/E比、ROC AUC和/或灵敏度、特异性、准确度、精确度和/或统计模型性能的另一测量,来确定回滚之后所选的先前版本比当前版本230和/或先前执行的其他先前版本228表现更好还是更差。
如果先前版本的性能比当前版本的过去性能和/或先前版本和/或其它先前版本228的历史性能差,则管理装置204可执行统计模型的到另一先前版本的额外回滚。例如,管理装置204可以为统计模型的下一回滚选择具有次高历史性能的第二先前版本。在另一示例中,管理装置204可以根据多臂强盗实验、A/B测试和/或先前用于选择在第一次回滚中使用的第一先前版本的其序列分析或假设测试技术,选择第二最佳执行版本。在第三示例中,管理装置204可以运行另一实验和/或测试,以从统计模型的其余先前版本228中选择用于下一回滚的新的最佳执行版本。
分析装置202和管理装置204可以在当前版本230的重新训练226期间,继续监视与回滚224相关联的先前版本228的性能和/或基于所监视的性能执行额外的回滚224。在完成重新训练226之后,可以重新部署经重新训练的当前版本230,并且可以监视性能度量122、时间序列210和特性212,以检测在重新部署的当前版本230中的偏差214和/或退化的性能。如果当前版本230继续呈现异常和/或比一个或多个先前版本228执行更差时,可以在更持久的基础上(例如,直到可以创建统计模型的新版本)执行到更好执行的先前版本的回滚。
类似地,由于缺少输入特征和/或模型重新训练系统的不可用性,当前版本230的重新训练226可能不可用。在这种情况下,也可以在更持久的基础上执行到一个或多个先前版本228的回滚。
当分析装置202和管理装置204监视和管理统计模型的性能时,交互装置206生成与分析装置202、管理装置204和/或系统的其他部件的操作相关的输出。在一个实施例中,输出包括与性能度量122、时间序列210、特性212、偏差214和/或由分析装置202和/或管理装置204生成或维护的其他数据相关联的一个或多个可视化218。例如,可视化218可以包括与性能度量122、时间序列210、特性212、回滚224和/或模型重新训练226有关的数据的表格、电子表单、折线图、条形图、直方图、饼图和/或其他表示。
还可以基于一个或多个参数220来生成和/或更新可视化218。例如,交互装置206可以通过与性能度量122、时间序列210、特性212、偏差214、先前版本228和/或当前版本230相关联值和/或值的范围对可视化218中的数据进行过滤、排序和/或分组。
最后,交互装置206生成和/或输出与偏差214、回滚224、当前版本230和/或先前版本228相关的警报222。可以经由电子邮件、通知、消息和/或其他通信机制将警报222发送给管理员、开发人员、数据科学家、研究人员和/或与开发和/或维护统计模型的其他用户和/或使用或依赖统计模型的任何应用。
首先,每当在统计模型的当前部署或回滚版本的性能度量122、时间序列210和/或特性212中检测到偏差214和/或退化时,交互装置206可以输出统计模型中的异常的警报。所述警报可以包括与异常相关联的值和/或属性,例如偏差的类型(例如,平均偏移、方差变化、趋势变化、异常值等),偏差的幅度(例如,偏差与“正常”或期望值相差的量),和/或每个偏差的时间帧(例如,偏差的开始和/或结束时间)。
其次,交互装置206可以在检测到模型的部署版本中的异常或退化之后执行的每个回滚、测试和/或实验的一个或多个警报。警报可以包括回滚、测试和/或实验的原因(例如,触发回滚的模型版本或退化类型);参与回滚、测试和/或实验的模型版本;回滚、测试和/或实验的开始和/或结束时间;和/或回滚、测试或实验的结果。
第三,交互装置206可以输出跨一系列统计模型版本(例如,当前版本230和/或在回滚224中使用的一个或多个先前版本228)的退化性能的警报。警报可以标识受影响的统计模型版本,检测到退化性能的一个或多个时间段,和/或退化的类型或幅度。
第四,在当前版本230和/或先前版本228超过预先定义的年龄(例如,特定数目的天、星期等)时,交互装置206可以输出警报。反过来,接收警报可以启动统计模型的一个或多个版本的手动重新训练226和/或生成统计模型的新版本。
通过连续监视统计模型的在线、离线和/或近线版本的输出和/或性能,分析装置202可以快速检测统计模型中的退化和/或异常,而不需要手动用户干预或分析。同时,管理装置204可以自动执行诸如重新训练226和/或回滚224之类的补救动作,以减轻或解决这样的退化或异常,并且交互装置206可以生成输出以便于随后的人为规划、分析或干预。因此,图2的系统可以提高统计模型和/或应用、分布式系统和/或使用或利用统计模型的其他技术的性能和使用。
本领域技术人员将会理解,可以以各种方式实现图2的系统。首先,分析装置202、管理装置204、交互装置206和/或数据仓库234可由单个物理机、多个计算机系统、一个或多个虚拟机、网格、一个或多个数据库、一个或多个文件系统和/或云计算系统提供。分析装置202、管理装置204和交互装置206可以额外地由一个或多个硬件和/或软件部件和/或层来实现在一起和/或分开实现。此外,系统的各种部件可以被配置为以离线、在线和/或近线的方式执行,以执行与统计模型的异常检测、管理、监视,重新训练和/或回滚相关的不同类型的处理。
其次,不同类型的性能度量122可被跟踪并用于检测和管理统计模型的当前版本230和/或先前版本228中的异常。例如,性能度量122可以包括分数偏差、ROC AUC、归一化均方差、Brier分数和/或统计模型性能或输出的其他度量。
第三,可以使用多种技术来识别统计模型中的偏差214、退化和/或异常。例如,分析装置202可以使用符号测试、学生t测试、z统计和/或另一统计假设测试,来根据对应的基线和/或历史值检测性能度量122和/或时间序列210的分布和/方差中的偏差214。在另一示例中,可以使用统计技术(例如,支持向量机、神经网络和/或聚类技术)来识别性能度量122和/或时间序列210中的偏差214和/或异常。
图3示出了图示根据所公开实施例的监视和管理统计模型的执行的过程的流程图。在一个或多个实施例中,可以省略、重复和/或以不同次序执行一个或多个步骤。相应地,图3中所示的步骤的特定布置不应该被解释为限制该技术的范围。
最初,跟踪与统计模型的版本的性能相关的一个或多个度量的分布(操作302)。例如,度量可以包括O/E比、分数分布和/或统计模型的输出、精确度、准确度、灵敏度、特异性和/或性能的其他测量。可以使用诸如平均值、方差、百分位数、计数和/或总和之类的汇总统计将度量聚合成时间序列。随后可以分析时间序列的一个或多个特征和/或分量(例如,趋势、季节性、周期性和/或不规则分量)以表征度量随着时间的分布。
在跟踪分布期间,可以检测到分布的偏差(操作304)。例如,可以将偏差检测为时间序列中的平均偏移、方差变化、趋势变化和/或异常值。反过来,偏差可以指示统计模型的性能变化(减少或增加)。如果没有检测到偏差,则可以继续跟踪分布(操作302)。
一旦检测到分布中的偏差,输出统计模型的性能中的异常的警报(操作306),并且触发版本的重新训练(操作308)。在重新训练发生的同时,执行到统计模型的先前版本的回滚。可以通过可选地测试统计模型的先前版本集合的性能,来启动回滚(操作310)。例如,基于用统计模型的最近输入特征和/或先前版本的历史性能对先前版本的性能的离线分析,可以选择统计模型的先前版本和/或附加版本的子集,以包括在A/B测试和/或多臂强盗实验中。然后可以进行A/B测试和/或多臂强盗实验,以确定在现场和/或真实世界设置中的先前版本的所选子集的性能(例如,通过在所选版本中分裂用户或网络业务)。
接下来,基于先前版本的历史和/或当前性能,选择统计模型的另一版本用于回滚(操作312)。继续前面的例子,可以在实验和/或测试结束时选择在实验和/或测试中最佳执行的版本。在替代例子中,可以选择在先前版本集合中具有最佳历史性能的版本,而不需要使用统计假设测试和/或序列分析技术来识别最佳执行先前版本。
在选择统计模型的先前版本以用于回滚之后,触发到所选版本的回滚(操作314)。例如,所选版本可被部署在生产环境中,并且网络业务和/或其他输入数据可被引导到所选版本。在另一示例中,可以在离线或批处理环境中使用所选版本来生成基于每小时、每日、每周和/或其他周期性基础与生产应用一起使用的分数、估计、预测和/或其他推论。还可以生成回滚警报。
在执行回滚之后,可以针对退化监视所选版本的性能(操作316)。例如,可以监视所选版本的性能度量,并将其与当前版本的近期异常前性能和/或统计模型的其他先前版本的历史性能进行比较。当所选版本的当前性能低于当前版本的近期性能和/或其他先前版本的历史性能时,可以检测到所选版本的退化性能。
如果回滚版本的性能退化,则可以执行到统计模型的不同先前版本的另一回滚(操作310-314),并且可以针对退化监视回滚中使用的版本的性能(操作316)。因此,可以继续监视和使用统计模型的先前版本,直到当前版本的重新训练完成(操作318)并且重新部署当前版本(操作320)。
可以在使用统计模型以在现场、生产和/或真实世界设置中执行推断期间继续统计模型的一般监视(操作322)。例如,可以在使用统计模型期间继续监视和管理统计模型的性能,以生成与用户、学校、公司、连接、工作、技能、行业和/或在线职业网络中的其他特征或属性相关的分数、推荐、预测、估计和/或推论。
在统计模型的监视期间,跟踪统计模型的给定版本的性能度量的分布(操作302)以检测分布中的偏差(操作304)。如果发现偏差,则输出统计模型的性能异常的警报(操作306),并且触发版本的重新训练(操作308)。还执行统计模型到一个或多个先前版本的回滚(操作310-314)和监视该回滚(操作316),直到重新训练完成(操作318),并且重新部署经重新训练的版本(操作320)。可以在统计模型中执行这种异常的自动监视和管理,直到不再使用统计模型。
图4示出了根据所公开的实施例的计算机系统400。计算机系统400包括处理器402,存储器404,存储设备406和/或在电子计算设备中发现的其他部件。处理器402可以支持与计算机系统400中的其他处理器的并行处理和/或多线程操作。计算机系统400还可以包括输入/输出(I/O)设备,例如键盘408、鼠标410和显示器412。
计算机系统400可以包括执行本实施例的各种部件的功能。具体地,计算机系统400可以包括操作系统(未示出),用于协调计算机系统400上的硬件和软件资源的使用;以及一个或多个应用,用于执行针对用户的专门任务。为了为用户执行任务,应用可以从操作系统获得计算机系统400上的硬件资源的使用,并且通过由操作系统提供的硬件和/或软件框架与用户交互。
在一个或多个实施例中,计算机系统400提供用于管理统计模型的执行的系统。该系统可以包括分析装置、交互装置和管理装置,其中的一个或多个替代地被称为或实现为模块、机构或其他类型的系统部件。分析装置可以跟踪与统计模型的第一版本的性能相关的一个或多个度量的分布。当检测到分布中的偏差时,交互装置可以输出统计模型的性能中的异常的警报。管理装置还可以触发到统计模型的第二版本的回滚和/或对第一版本的重新训练。
另外,计算机系统400的一个或多个部件可以位于远程,并通过网络连接到其他部件。本实施例的各部分(例如,分析装置、管理装置、交互装置、数据仓库等)也可以位于实现实施例的分布式系统的不同节点上。例如,可以使用检测和管理一组远程统计模型中的异常的云计算系统来实现本实施例。
仅出于说明和描述的目的呈现了对各种实施例的前述描述。它们不旨在是穷尽的或将本发明限制于所公开的形式。因此,对于本领域技术人员而言,许多修改和变化将是显而易见的。另外,上述公开内容并不意图限制本发明。

Claims (20)

1.一种方法,包括:
通过计算机系统跟踪与统计模型的第一版本的性能相关的一个或多个度量的分布;以及
基于所述分布中的偏差,确定所述统计模型的所述第一版本的性能的变化;
响应于确定当前版本的所述性能的所述变化,从所述统计模型的额外版本集合中选择所述统计模型的第二版本;以及
触发到所述统计模型的所述第二版本的回滚。
2.根据权利要求1所述的方法,还包括:
在所述回滚被执行之后,跟踪与所述统计模型的所述第二版本的所述性能相关的所述一个或多个度量的额外分布;以及
当所述额外分布指示先前的所述第一版本的所述性能的退化时,触发到所述统计模型的第三版本的额外回滚。
3.根据权利要求2所述的方法,还包括:
输出所述回滚、所述额外回滚以及所述统计模型的所述第一版本和所述第二版本的所述性能的警报。
4.根据权利要求1所述的方法,还包括:
基于所述第二版本的历史性能,选择所述统计模型的所述第二版本。
5.根据权利要求1所述的方法,还包括:
在所述分布中的所述偏差被检测到之后,测试所述统计模型的先前版本集合的所述性能;以及
在所述先前版本集合中选择所述统计模型的具有最佳性能的所述第二版本。
6.根据权利要求1所述的方法,其中跟踪所述一个或多个度量的所述分布包括:
将所述一个或多个度量聚集成时间序列;以及
分析所述时间序列的一个或多个特性。
7.根据权利要求6所述的方法,其中所述时间序列包括以下中的至少一个:
平均值;
方差;
百分比;
计数;以及
总和。
8.根据权利要求6所述的方法,其中所述时间序列的所述一个或多个特性包括以下中的至少一个:
趋势分量;
季节分量;
循环分量;以及
不规则分量。
9.根据权利要求1所述的方法,其中所述分布中的所述偏差包括以下中的至少一个:
平均偏移;
方差变化;
趋势变化;以及
异常值。
10.根据权利要求1所述的方法,还包括:
在所述分布中的所述偏差被检测到之后,触发对所述统计模型的所述第一版本的重新训练;以及
在所述重新训练完成之后,重新部署所述统计模型的所述第一版本。
11.根据权利要求1所述的方法,其中所述一个或多个度量包括观察/预期(O/E)比。
12.根据权利要求1所述的方法,其中所述一个或多个度量包括分数分布。
13.一种装置,包括:
一个或多个处理器;以及
存储指令的存储器,所述指令在由所述一个或多个处理器执行时使所述装置:
跟踪与统计模型的第一版本的性能相关的一个或多个度量的分布;
基于所述分布中的偏差,确定所述统计模型的所述第一版本的性能的变化;
响应于确定当前版本的所述性能的所述变化,从所述统计模型的额外版本集合中选择所述统计模型的第二版本;以及
触发到所述统计模型的第二版本的回滚。
14.根据权利要求13所述的装置,其中所述存储器还存储指令,所述指令在由所述一个或多个处理器执行时进一步使得所述装置:
在所述回滚被执行之后,跟踪与所述统计模型的所述第二版本的所述性能相关的所述一个或多个度量的额外分布;以及
当所述额外分布指示先前的所述第一版本的所述性能的退化时,触发到所述统计模型的第三版本的额外回滚。
15.根据权利要求13所述的装置,其中所述存储器还存储指令,所述指令在由所述一个或多个处理器执行时进一步使得所述装置:
基于所述第二版本的历史性能,选择所述统计模型的所述第二版本。
16.根据权利要求13所述的装置,其中所述存储器还存储指令,所述指令在由所述一个或多个处理器执行时进一步使得所述装置:
在所述分布中的所述偏差被检测到之后,测试所述统计模型的先前版本集合的所述性能;以及
在所述先前版本集合中选择所述统计模型的具有最佳性能的所述第二版本。
17.根据权利要求13所述的装置,其中跟踪所述一个或多个度量的所述分布包括:
将所述一个或多个度量聚集成时间序列;以及
分析所述时间序列的一个或多个特性。
18.根据权利要求13所述的装置,其中所述存储器还存储指令,所述指令在由所述一个或多个处理器执行时进一步使得所述装置:
在所述分布中的所述偏差被检测到之后,触发对所述统计模型的所述第一版本的重新训练;以及
在所述重新训练完成之后,重新部署所述统计模型的所述第一版本。
19.一种存储指令的非瞬态计算机可读存储介质,所述指令在由计算机执行时使得所述计算机执行方法,所述方法包括:
跟踪与统计模型的第一版本的性能相关的一个或多个度量的分布;以及
基于所述分布中的偏差,确定所述统计模型的所述第一版本的性能的变化;
响应于确定当前版本的所述性能的所述变化,从所述统计模型的额外版本集合中选择所述统计模型的第二版本;以及
触发到所述统计模型的所述第二版本的回滚。
20.根据权利要求19所述的非瞬态计算机可读存储介质,所述方法还包括:
在所述分布中的所述偏差被检测到之后,触发对所述统计模型的所述第一版本的重新训练;以及
在所述重新训练完成之后,重新部署所述统计模型的所述第一版本。
CN201810067258.1A 2017-09-29 2018-01-24 在统计模型中自动检测和管理异常 Withdrawn CN110019419A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/721,359 US20190102361A1 (en) 2017-09-29 2017-09-29 Automatically detecting and managing anomalies in statistical models
US15/721,359 2017-09-29

Publications (1)

Publication Number Publication Date
CN110019419A true CN110019419A (zh) 2019-07-16

Family

ID=65896694

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810067258.1A Withdrawn CN110019419A (zh) 2017-09-29 2018-01-24 在统计模型中自动检测和管理异常

Country Status (2)

Country Link
US (1) US20190102361A1 (zh)
CN (1) CN110019419A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866328A (zh) * 2019-10-12 2020-03-06 中国平安财产保险股份有限公司 数据模型的替换方法、装置、计算机设备及存储介质
CN112561332A (zh) * 2020-12-16 2021-03-26 北京百度网讯科技有限公司 模型管理方法、装置、电子设备、存储介质和程序产品
CN116745783A (zh) * 2021-01-21 2023-09-12 斯诺弗雷克公司 机器学习应用中系统特性漂移的处理

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10360214B2 (en) * 2017-10-19 2019-07-23 Pure Storage, Inc. Ensuring reproducibility in an artificial intelligence infrastructure
US11157346B2 (en) * 2018-09-26 2021-10-26 Palo Alto Rsearch Center Incorporated System and method for binned inter-quartile range analysis in anomaly detection of a data series
US10896116B1 (en) 2018-10-19 2021-01-19 Waymo Llc Detecting performance regressions in software for controlling autonomous vehicles
US11930024B2 (en) 2019-04-18 2024-03-12 Oracle International Corporation Detecting behavior anomalies of cloud users
CN110311833B (zh) * 2019-06-27 2021-06-15 北京创鑫旅程网络技术有限公司 供应商服务的检测方法、装置、电子设备和存储介质
US11810013B2 (en) * 2019-11-14 2023-11-07 International Business Machines Corporation Systems and methods for alerting to model degradation based on survival analysis
US11768917B2 (en) 2019-11-14 2023-09-26 International Business Machines Corporation Systems and methods for alerting to model degradation based on distribution analysis
US11256597B2 (en) 2019-11-14 2022-02-22 International Business Machines Corporation Ensemble approach to alerting to model degradation
US11455561B2 (en) 2019-11-14 2022-09-27 International Business Machines Corporation Alerting to model degradation based on distribution analysis using risk tolerance ratings
WO2021119087A1 (en) * 2019-12-10 2021-06-17 Arthur AI, Inc. Machine learning monitoring systems and methods
US11727284B2 (en) * 2019-12-12 2023-08-15 Business Objects Software Ltd Interpretation of machine learning results using feature analysis
US11475328B2 (en) * 2020-03-13 2022-10-18 Cisco Technology, Inc. Decomposed machine learning model evaluation system
KR102358841B1 (ko) * 2020-09-16 2022-02-07 서울대학교병원 수술 전 데이터에 기반하여 인공관절 치환 수술 부작용 증상을 예측하는 전자 장치 및 그 동작 방법
US20210325861A1 (en) * 2021-04-30 2021-10-21 Intel Corporation Methods and apparatus to automatically update artificial intelligence models for autonomous factories
US11971796B2 (en) * 2021-05-18 2024-04-30 International Business Machines Corporation Goal seek analysis based on status models
US11902309B1 (en) * 2021-06-25 2024-02-13 Amazon Technologies, Inc. Anomaly prediction for electronic resources
US20230004857A1 (en) * 2021-06-30 2023-01-05 Armis Security Ltd. Techniques for validating machine learning models
JP2023021573A (ja) * 2021-08-02 2023-02-14 株式会社日立製作所 データ分析装置及びモデル管理方法
US11961084B1 (en) * 2021-11-22 2024-04-16 Rsa Security Llc Machine learning models for fraud detection

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866328A (zh) * 2019-10-12 2020-03-06 中国平安财产保险股份有限公司 数据模型的替换方法、装置、计算机设备及存储介质
CN112561332A (zh) * 2020-12-16 2021-03-26 北京百度网讯科技有限公司 模型管理方法、装置、电子设备、存储介质和程序产品
CN112561332B (zh) * 2020-12-16 2023-07-25 北京百度网讯科技有限公司 模型管理方法、装置、电子设备、存储介质和程序产品
CN116745783A (zh) * 2021-01-21 2023-09-12 斯诺弗雷克公司 机器学习应用中系统特性漂移的处理

Also Published As

Publication number Publication date
US20190102361A1 (en) 2019-04-04

Similar Documents

Publication Publication Date Title
CN110019419A (zh) 在统计模型中自动检测和管理异常
Hohman et al. Understanding and visualizing data iteration in machine learning
Pachidi et al. Understanding users’ behavior with software operation data mining
Goyal et al. Applications of data mining in higher education
US20230081051A1 (en) Systems and methods using inventory data to measure and predict availability of products and optimize assortment
US11295328B2 (en) Intelligent prospect assessment
Brando et al. Uncertainty modelling in deep networks: Forecasting short and noisy series
Tripathi et al. Machine learning models for evaluating the benefits of business intelligence systems
US20200302396A1 (en) Earning Code Classification
Sergue Customer churn analysis and prediction using machine learning for a B2B SaaS company
Fernández-Loría et al. Observational vs experimental data when making automated decisions using machine learning
US20230259883A1 (en) System and method of dynamically recommending online actions
Thorström Applying machine learning to key performance indicators
Lahindah Classification Approach To Predict Customer Decision Between Product Brands Based on Customer Profile and Transaction
Zhang et al. A Real-time, Scalable Monitoring and User Analytics Solution for Microservices-based Software Applications
Norlin et al. Identifying New Customers Using Machine Learning: A case study on B2B-sales in the Swedish IT-consulting sector
CN112633936A (zh) 一种供应商隐藏费用预测方法、装置、服务器及存储介质
Patel et al. Unbundling CRM–A RFMC Perspective
Bai et al. Startup Investment Decision Support: Application of Venture Capital Scorecards Using Machine Learning Approaches. Systems 2021, 9, 55
Severeyn et al. Neural Networks for Customer Classification Through Clickstream Analysis
US20230059500A1 (en) Method and system for identifying actions to improve customer experience
Pereira Assessing Budget Risk with Monte Carlo and Time Series Bootstrap
US20240046181A1 (en) Intelligent training course recommendations based on employee attrition risk
Rezgui et al. KPI-based decision impact evaluation system for adaptive business intelligence.
US11436633B2 (en) Machine learning predictive deviation and remediation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20190716

WW01 Invention patent application withdrawn after publication