机器学习特征推荐的制作方法

文档序号:33507501发布日期:2023-03-18 05:31阅读:157来源:国知局
机器学习特征推荐


背景技术:

1.当与人工分类相比时,使用机器学习的自动分类的使用可以显著减少人工工作和错误。执行自动分类的一种方法涉及使用机器学习来预测用于输入数据的类别。例如,使用机器学习,可以自动地对传入任务、事件和案例进行类别化并且将其路由到被分配的一方。典型地,使用机器学习的自动分类要求包括过去经验的训练数据。一旦被训练,机器学习模型就可以被应用于新数据以推断分类结果。例如,新报告的事件可以被自动地分类、分配和路由到负责方。然而,创建准确的机器学习模型是重大的投资,并且可能是典型地要求主题专业知识的困难并且耗时的任务。例如,选择造成准确的模型的输入特征典型地要求对数据集以及特征如何影响预测结果的深入理解。
附图说明
2.在以下详细描述和随附附图中公开了本发明的各种实施例。
3.图1是图示用于创建和利用机器学习模型的网络环境的示例的框图。
4.图2是图示用于创建机器学习解决方案的处理的实施例的流程图。
5.图3是图示用于自动识别用于机器学习模型的推荐特征的处理的实施例的流程图。
6.图4是图示用于自动识别用于机器学习模型的推荐特征的处理的实施例的流程图。
7.图5是图示用于自动识别用于机器学习模型的推荐特征的评估处理的实施例的流程图。
8.图6是图示用于创建用于确定特征的性能度量的离线模型的处理的实施例的流程图。
具体实施方式
9.本发明可以以多种方式实施,包括作为方法;装置;系统;物体组成部;在计算机可读存储介质上体现的计算机程序产品;和/或处理器,诸如被配置为执行存储在耦合到处理器的存储器上和/或由耦合到处理器的存储器提供的指令的处理器。在本说明书中,这些实现或者本发明可以采取的任何其它形式可以被称为技术。一般而言,在本发明的范围内,可以更改所公开的处理的步骤的顺序。除非另外声明,否则被描述为被配置为执行任务的诸如处理器或存储器的组件可以被实现为临时配置为在给定时间执行任务的通用组件或被制造为执行任务的特定组件。如在此使用的那样,术语“处理器”指代被配置为处理诸如计算机程序指令之类的数据的一个或多个设备、电路和/或处理核。
10.下面连同图示本发明的原理的随附各图一起提供本发明的一个或多个实施例的详细描述。与这样的实施例有关地描述本发明,但是本发明不限制于任何实施例。本发明的范围仅受权利要求限制,并且本发明涵盖许多替换、修改和等同物。在以下描述中阐述了许多具体细节,以便提供对本发明的透彻理解。这些细节是出于示例的目的而提供的,并且本
发明可以是在没有这些具体细节中的一些或全部的情况下根据权利要求实践的。为了清楚的目的,没有详细描述与本发明相关的技术领域中已知的技术材料,从而不会不必要地模糊本发明。
11.公开了用于选择机器学习特征的技术。当构建机器学习模型时,特征选择可以显著地影响模型的准确度和可用性。然而,在没有主题专业知识和对机器学习问题的深入理解的情况下,适当地选择改进模型的准确度的特征可能是挑战。使用所公开的技术,机器学习特征可以被自动推荐和选择,这造成机器学习模型的预测准确度上的显著改进。此外,几乎乃至根本不要求主题专业知识。例如,具有对输入数据集的最小理解的用户可以成功地生成可以准确预测分类结果的机器学习模型。在一些实施例中,用户可以经由诸如软件即服务web应用之类的软件服务来利用机器学习平台。用户向机器学习平台提供输入数据集,诸如识别一个或多个数据库表。所提供的数据集包括多个合格特征。合格特征可以包括在准确地预测机器学习结果中有用的特征以及对于准确地预测机器学习结果无用或具有较小影响的特征。准确地识别有用特征可以造成高度准确的模型并且改进资源使用和性能。例如,训练具有无用特征的模型可能是显著的资源消耗,其可以通过准确地识别和忽略无用特征来避免。在各种实施例中,用户指定合期望的目标字段以进行预测,并且使用所公开的技术的机器学习平台可以从所提供的输入数据集生成一组推荐的机器学习特征以用于在建立机器学习模型中使用。在一些实施例中,通过将一系列评估应用于合格特征以过滤无用特征并且识别有用特征来确定推荐的机器学习特征。一旦确定了一组推荐的特征,就可以将其呈现给用户。例如,在一些实施例中,按对预测结果的改进的顺序对特征进行排序。在一些实施例中,使用由用户基于推荐的特征选择的特征来训练机器学习模型。例如,可以使用通过对预测结果的改进而自动识别和排序的推荐特征来自动训练模型。
12.在一些实施例中,接收对用于机器学习预测的合期望的目标字段的指定和存储机器学习训练数据的一个或多个表。例如,软件即服务平台的客户指定一个或多个客户数据库表。表可以包括来自过去的经验的数据,诸如已被分类的传入任务、事件和案例。例如,分类可以包括对任务、事件或案件的类型进行类别化,以及分配要负责解决问题的适当的一方。在一些实施例中,机器学习数据被存储在不同于数据库的另外的适当的数据结构中。在各种实施例中,合期望的目标字段是分类结果,其可以是所接收的表之一中的列。由于所接收的数据库表数据未必被准备为训练数据,因此数据可以包括用于预测分类结果的有用的和无用的字段。在一些实施例中,在一个或多个表内识别用于建立机器学习模型以执行针对合期望的目标字段的预测的合格机器学习特征。例如,从数据库数据中,将字段识别为用于训练机器学习模型的潜在特征或合格特征。在一些实施例中,合格特征基于表的列。使用不同评估的管线来评估合格的机器学习特征,以相继地过滤掉合格的机器学习特征中的一个或多个,以在合格的机器学习特征中识别一组推荐的机器学习特征。通过从合格特征中相继地过滤掉特征,剔除了对模型预测准确度具有较小影响的特征。余下的特征是具有预测值的推荐特征。过滤管线的每个步骤识别没有帮助的附加特征(以及可能有帮助的特征)。例如,在一些实施例中,一个过滤步骤移除其中特征数据不必要或超出范围的特征。稀疏地布居在其相应的数据库表中的特征或者其中特征的所有值相同(例如,是常数)的特征可以被过滤掉。在一些实施例中,非标称列被过滤掉。在一些实施例中,过滤步骤计算用于每个合格特征的影响得分。可以从推荐中移除具有低于特定阈值的影响得分的特征。在一
些实施例中,针对每个合格特征评估性能度量。例如,关于特定特征,可以评估在查准率-查全率曲线(auprc)下模型面积上的增加。在一些实施例中,模型被离线训练以通过评估针对机器学习问题的大横截面的特征选择来将影响得分转换为性能度量。然后模型可以被应用于特定的客户的机器学习问题,以确定可以被用于对合格特征进行排序的性能度量。一旦被识别,就提供一组推荐的机器学习特征以用于在建立机器学习模型中使用。例如,客户可以从推荐的特征中进行选择,并且请求使用所提供的数据和所选择的特征来训练机器学习模型。然后可以将模型合并到客户的工作流程中,以预测合期望的目标字段。例如,在数据集以及机器学习这两者中,在几乎很少乃至任何主题专业知识的情况下,可以为可以用于推断目标字段的机器学习模型自动推荐(和选择)特征。
13.图1是图示用于创建和利用机器学习模型的网络环境的示例的框图。在所示出的示例中,客户端101、103和105经由网络111访问服务器121上的服务。服务包括利用机器学习的预测服务。例如,服务可以包括使用推荐的特征生成机器学习模型的能力以及用于应用所生成的模型来预测诸如分类结果之类的结果的服务这两者。网络111可以是公共或专用网络。在一些实施例中,网络111是诸如因特网的公共网络。在各种实施例中,客户端101、103和105是网络客户端,诸如用于访问由服务器121提供的服务的web浏览器。在一些实施例中,服务器121提供包括用于利用机器学习平台的web应用的服务。服务器121可以是一个或多个服务器,包括用于识别用于训练机器学习模型的推荐特征的服务器。服务器121可以利用数据库123来提供某些服务和/或用于存储与用户关联的数据。例如,数据库123可以是由服务器121使用的配置管理数据库(cmdb),用于提供客户服务和存储客户数据。在一些实施例中,数据库123存储与客户任务、事件和案例等相关的客户数据。数据库123还可以被用于存储与用于训练机器学习模型的特征选择有关的信息。在一些实施例中,数据库123可以存储与被管理的资产有关的客户配置信息,诸如相关的硬件和/或软件配置。
14.在一些实施例中,客户端101、103和105中的每个可以访问服务器121以创建定制机器学习模型。例如,客户端101、103和105可以表示一个或多个不同的客户,每个客户想要创建可以被应用于预测结果的机器学习模型。在一些实施例中,服务器121向诸如客户端101、103和105之类的客户端提供用于选择和/或确认用于训练机器学习模型的特征选择的交互式工具。例如,软件即服务平台的客户经由诸如客户端101、103和105的客户端向服务器121提供诸如客户数据的相关训练数据作为训练数据。所提供的客户数据可以是存储在数据库123的一个或多个表中的数据。连同所提供的训练数据一起,客户选择合期望的目标字段,诸如所提供的表的表列之一。使用所提供的数据和合期望的目标字段,服务器121推荐以高准确度预测合期望的目标字段的一组特征。客户可以选择推荐的特征的子集,从该子集来训练机器学习模型。在一些实施例中,使用所提供的客户数据来训练模型。在一些实施例中,作为特征选择处理的一部分,向客户提供每个推荐特征的性能度量。性能度量向客户提供与特定特征改进模型的预测准确度的程度有关的量化值。在一些实施例中,基于对预测准确度的影响来对推荐的特征进行排序。
15.在一些实施例中,经训练的机器学习模型被合并到应用中以推断合期望的目标字段。例如,应用可以接收支持事件事态的传入报告并且预测用于该事件的类别和/或将所报告的事件事态分配给负责方。支持事件应用可以由服务器121托管,并且由诸如客户端101、103和105的客户端访问。在一些实施例中,客户端101、103和105中的每个可以是在包括膝
上型计算机、台式计算机、移动设备、平板计算机、信息站、智能电视等的许多不同计算设备之一上运行的网络客户端。
16.虽然为了使图简化而已经示出了一些组件的单个实例,但是可以存在图1中示出的任何组件的附加实例。例如,服务器121可以包括一个或多个服务器。服务器121中的一些服务器可以是web应用服务器、训练服务器和/或干扰服务器。如在图1中示出那样,服务器被简化为单个服务器121。类似地,数据库123可以不直接连接到服务器121,可以是多于一个的数据库,和/或可以是跨多个组件复制或分布的。例如,数据库123可以包括用于每个客户的一个或多个不同的服务器。作为另一示例,客户端101、103和105只是对于服务器121来说的潜在客户端的几个示例。更少或更多的客户端可以连接到服务器121。在一些实施例中,也可以存在图1中未示出的组件。
17.图2是图示用于创建机器学习解决方案的处理的实施例的流程图。例如,使用图2的处理,用户可以请求对问题的机器学习解决方案。用户可以识别用于预测的合期望的目标字段,并且提供对可以用作训练数据的数据的参考。分析所提供的数据并且推荐输入特征以用于训练机器学习模型。向用户提供推荐的特征,并且可以基于用户选择的特征来训练机器学习模型。将经训练的模型合并到机器学习解决方案中以预测用户的合期望的目标字段。在一些实施例中,用于创建机器学习解决方案的机器学习平台被托管为软件即服务web应用。在一些实施例中,用户经由诸如图1的客户端101、103和/或105之类的客户端请求解决方案。在一些实施例中,包括所创建的机器学习解决方案的机器学习平台被托管在图1的服务器121上。
18.在201处,请求机器学习解决方案。例如,客户可能想要使用机器学习解决方案自动预测针对传入的支持事件事态报告的负责方。在一些实施例中,用户经由web应用请求机器学习解决方案。在请求解决方案时,用户可以指定用户想要预测的目标字段并且提供相关的训练数据。在一些实施例中,所提供的训练数据是历史客户数据。客户数据可以被存储在客户数据库中。在一些实施例中,用户提供一个或多个数据库表作为训练数据。数据库表还可以包括合期望的目标字段。在一些实施例中,用户指定多个目标字段。在期望针对多个字段的预测的情况下,用户可以一起指定多个字段和/或请求多个不同的机器学习解决方案。在一些实施例中,用户还指定机器学习解决方案的其它性质,除了其它方面之外还诸如处理语言、停止词、用于所提供的数据的过滤器、以及合期望的模型名称和描述。
19.在203处,确定推荐的输入特征。例如,确定基于所请求的机器学习解决方案的一组合格的机器学习特征。从合格的特征中识别一组推荐的特征。在一些实施例中,通过使用不同评估的管线评估合格的机器学习特征来识别推荐特征。在管线的每个阶段处,可以相继地过滤掉合格的机器学习特征中的一个或多个。在管线的末端处,识别一组推荐的特征。在一些实施例中,推荐特征的识别包括确定与特征关联的一个或多个度量,诸如影响得分或性能度量。例如,离线训练的模型可以被应用于每个特征以确定性能度量,性能度量量化该特征将使利用该特征训练的模型的查准率-查全率曲线(auprc)下的面积增加多少。在一些实施例中,可以针对每个度量利用适当的阈值以确定特征是否被推荐用于在训练中使用。
20.在一些实施例中,合格的机器学习特征基于由用户提供的输入数据。例如,在一些实施例中,用户提供一个或多个数据库表或另外的适当的数据结构作为训练数据。在提供
数据库表的情况下,合格的机器学习特征可以基于表的列。在一些实施例中,确定每个列的数据类型,并且将具有标称数据类型的列识别为合格特征。在一些实施例中,如果列数据不可能帮助预测,则可以排除来自某些列的数据。例如,可以基于数据是多稀疏地布居的、停止词的出现、用于列的不同值的相对分布等来移除列。
21.在205处,基于推荐的输入特征选择特征。例如,使用交互式用户界面,向用户呈现用于在建立机器学习模型中使用的一组推荐的机器学习特征。在一些实施例中,示例用户界面被实现为web应用或web服务。用户可以从所显示的推荐特征中进行选择以确定用于训练机器学习模型的一组特征。在一些实施例中,在203处确定的推荐输入特征被自动选择为用于训练的默认特征。对于选择推荐的输入特征而言可以不要求用户输入。在一些实施例中,可以基于每个推荐的输入特征如何影响模型的预测准确度来以排序顺序呈现推荐的输入特征。例如,最相关的输入特征被排序在第一位。在各种实施例中,推荐的特征与影响得分和/或性能度量一起显示。例如,影响得分可以度量特征对模型准确度有多大影响。性能度量可以量化在特征被用于训练的情况下模型将改进多少。例如,在一些实施例中,所显示的性能度量基于当使用特征时机器学习模型的查准率-查全率曲线(auprc)下的面积上的增加量。可以适当地使用其它性能度量。通过对不同特征进行排序和量化,具有很少的任何主题专业知识的用户可以容易地选择适当的输入特征来训练高准确度的模型。
22.在207处,使用所选择的特征来训练机器学习模型。例如,使用在205处选择的特征,准备训练数据集并且将其用于训练机器学习模型。模型预测在201处指定的合期望的目标字段。在一些实施例中,训练数据基于在201处接收的客户数据。客户数据可以被剥离掉对于训练而言无用的数据,诸如来自对应于在205处未被选择的特征的表列的数据。例如,从用于训练机器学习模型的数据集中排除对应于与被识别为对预测的准确度具有很小乃至没有影响的特征关联的列的数据。
23.在209处,托管机器学习解决方案。例如,应用服务器和机器学习平台托管用以将经训练的机器学习模型应用于输入数据的服务。例如,web服务应用经训练的模型以自动地对传入事件报告进行类别化。类别化可以包括识别事件的类型和负责方。一旦被类别化,托管的解决方案就可以将事件分配并且路由到预测的负责方。在一些实施例中,托管的应用是用于软件即服务平台的客户的定制机器学习解决方案。在一些实施例中,解决方案被托管在图1的服务器121上。
24.图3是图示用于自动识别用于机器学习模型的推荐特征的处理的实施例的流程图。使用图3的处理,用户可以通过利用从潜在的训练数据识别的推荐特征来自动化机器学习模型的创建。用户指定合期望的目标字段并且供给潜在的训练数据。机器学习平台从所供给的数据中识别推荐字段,以用于创建机器学习模型来预测合期望的目标字段。在一些实施例中,图3的处理在图2的201处执行。在一些实施例中,图3的处理在图1的服务器121处的机器学习平台上执行。
25.在301处,启动模型创建。例如,客户经由web服务应用启动机器学习模型的创建。在一些实施例中,客户通过经由用于创建自动工作流的软件即服务平台访问模型创建网页来启动模型创建。服务可以是允许用户合并经训练的模型以预测结果的更大的机器学习平台的一部分。在一些实施例中,预测结果可以被用于自动化工作流处理,诸如一旦使用训练模型自动预测了适当的一方,就将事件报告路由到被分配的一方。
26.在303处,识别训练数据。例如,用户指明数据作为潜在的训练数据。在一些实施例中,用户指向来自客户数据库或存储潜在训练数据的另外的适当数据结构的一个或多个数据库表。数据可以是历史客户数据。例如,历史客户数据可以包括存储在一个或多个数据库表中的传入事件报告以及它们的分配的负责方。在一些实施例中,所识别的训练数据包括大量潜在的输入特征,并且可能未被适当地准备为高质量训练数据。例如,某些数据列可能是被稀疏地布居的或者仅包含相同的常数值。作为另一示例,列的数据类型可能被不正确地配置。例如,标称或数字数据值可以被作为文本存储在所识别的数据库表中。在各种实施例中,在所识别的训练数据可以被有效地用作训练数据之前,要求对所识别的训练数据进行准备。例如,移除来自一个或多个列的对模型预测准确度具有很小影响乃至没有影响的数据。
27.在305处,选择合期望的目标字段。例如,用户指明用于机器学习预测的合期望的目标字段。在一些实施例中,用户从在303处识别的数据中选择列字段。例如,用户可以选择用于事件报告的类别类型来表达用户期望创建机器学习模型以预测传入事件报告的类别类型。在一些实施例中,用户可以从在303处提供的训练数据的潜在输入特征中进行选择。在一些实施例中,用户选择被一起预测的多个合期望的目标字段。
28.在307处完成模型配置。例如,用户可以提供附加的配置选项,诸如模型名称和描述。在一些实施例中,用户可以指定可选的停止词。例如,可以供给停止词以准备训练数据。在一些实施例中,从所提供的数据中移除停止词。在一些实施例中,用户可以指定用于所提供的数据的处理语言和/或附加的过滤器。例如,可以默认或建议添加用于指定语言的停止词。关于指定的附加过滤器,可以应用条件过滤器来从在303处识别的训练数据创建所表示的数据集。在一些实施例中,可以通过应用一个或多个指定的条件过滤器来从训练数据中移除所提供的表的行。例如,表可以包含具有可能值“新的”、“进行中”、“保持”和“已解决”的“状态”列。可以指定条件以仅将其中“状态”字段具有值“已解决”的行用作训练数据。作为另一示例,可以指定条件以仅利用在指定日期或时间框之后创建的行作为训练数据。
29.图4是图示用于自动识别用于机器学习模型的推荐特征的处理的实施例的流程图。例如,使用图4的特征选择管线,可以实时评估数据集的合格特征以确定每个潜在特征将如何影响用于预测合期望的目标字段的机器学习模型。在各种实施例中,确定一组推荐特征,并且可以从该组推荐特征中进行选择以训练机器学习模型。推荐的特征是基于它们在预测合期望的目标字段中的准确度来选择的。例如,不推荐无用的特征。在一些实施例中,图4的处理在图2的203处执行。在一些实施例中,图4的处理在图1的服务器121处的机器学习平台上执行。
30.在401处,从数据库表检索数据。例如,用户识别存储在一个或多个识别的数据库表中的潜在训练数据集,并且检索关联的数据。在一些实施例中,在检索数据之前(或之后)将条件过滤器应用于关联的数据。例如,基于条件过滤器,仅可以检索数据库表的某些行。作为另一示例,从检索到的数据中移除停止词。在一些实施例中,数据被从所识别的表检索到机器学习训练服务器。
31.在403处,识别列数据类型。例如,识别每列数据的数据类型。在一些实施例中,在数据库表中配置的列数据类型不具体到足以用于评估关联的特征。例如,标称值可以作为文本或二进制大对象(blob)值存储在数据库表中。作为另一示例,数字或日期类型也可以
被存储为文本(或串)数据类型。在各种实施例中,在403处,在没有用户干预的情况下自动识别列数据类型。
32.在一些实施例中,通过首先扫描通过列的所有不同值并且分析扫描结果来识别数据类型。列的性质可以被用于确定列值的有效数据类型。例如,文本数据可以是至少部分地由空格的数量和列字段中的文本长度变化的量来识别的。作为另一示例,在存储在列字段中的实际值中存在很少变化或没有变化的情况下,列数据类型可以被确定为标称数据类型。例如,具有五个离散值但是被存储为串值的列可以被识别为标称类型。在一些实施例中,值类型的分布被用作识别数据类型中的因素。例如,如果列中的高百分比的值是数字,则那么该列可以被分类为数字数据类型。
33.在405处,对数据列执行预处理。在一些实施例中,应用一组预处理规则以移除无用列。例如,移除具有稀疏地布居的字段的列。在一些实施例中,利用阈值来确定列被稀疏地布居并且是用于移除的候选与否。例如,在一些实施例中,使用20%的阈值。其中布居有少于20%的数据的列是不必要的列并且可以被移除。作为另一示例,移除其中所有值是常数的列。在一些实施例中,移除如下的列:其中一个值支配其它值,例如,支配值在多余80%(或另外的阈值量)的记录中出现。其中每个值是唯一的或者是id的列也可以被移除。在一些实施例中,移除非标称列。例如,可以移除具有二进制数据或文本串的列。在各种实施例中,预处理步骤仅将所有合格特征的子集从作为推荐的输入特征的考虑中消除。
34.在407处,评估合格的机器学习特征。例如,针对对训练准确的机器学习模型的影响来评估合格的机器学习特征。在一些实施例中,使用评估管线来评估合格的机器学习特征,以按在预测合期望的目标值方面的有用性来相继地过滤特征。例如,在一些实施例中,第一评估步骤可以确定影响得分,诸如过滤式选择得分,以识别列对分类模型带来的区别。可以从推荐中移除具有低于阈值的过滤式选择得分的列。作为另一示例,在一些实施例中,第二评估步骤可以确定影响得分,诸如针对列的信息增益或加权信息增益。使用所选择的特征和合期望的目标字段,可以通过如下来确定影响得分:通过在考虑特征时使用信息熵的改变来比较特征的改进。可以从推荐中移除具有低于阈值的信息增益或加权信息增益得分的列。在一些实施例中,第三评估设定可以确定用于每个特征的性能度量。例如,模型被离线创建以将影响得分(诸如信息增益或加权信息增益得分)转换为性能度量(诸如基于用于模型的查准率-查全率曲线(auprc)下的面积的增加的性能度量)。在各种实施例中,将经训练的模型应用于影响得分以确定用于每个余下的合格特征的基于auprc的性能度量。使用所确定的性能度量,可以从推荐中移除具有低于阈值的性能度量的列。虽然上面描述了三个评估步骤,但是基于针对一组推荐的特征的合期望的结果,可以适当地利用更少的或附加的步骤。例如,除了所述描述的评估步骤之外或者替代所描述的评估步骤,可以应用一个或多个不同的评估技术,以进一步减少合格特征的数量。
35.在各种实施例中,通过应用相继的评估步骤,识别用于建立机器学习模型的一组推荐的机器学习特征。在一些实施例中,相继的评估步骤对于确定哪些特征造成准确的模型是必要的。任何一个评估步骤单独地可能是不够的,并且可能不正确地识别对于训练而言不良的特征以用于推荐。例如,特征可以具有高的过滤式选择得分,但是具有低的加权信息增益得分。低的加权信息增益得分指示特征不应当被用于训练。在一些实施例中,关键字或类似的标识符列是对于训练而言不良的特征,因为其具有很少的预测值。当被在评估步
骤之一下评估时列可能具有高的影响得分,但是将被从由相继的评估步骤推荐中过滤掉。
36.在409处,提供推荐的特征。例如,余下的特征被推荐作为输入特征。在一些实施例中,经由web应用的图形用户界面向用户提供一组推荐的特征。推荐的特征可以被提供有与每个特征对模型准确度具有多少影响有关的量化度量。在一些实施例中,特征是以排序顺序提供的,允许用户选择最有影响的特征以用于训练机器学习模型。
37.在一些实施例中,无用的特征也被连同推荐特征一起提供。例如,用户被提供有被识别为无用的或对模型准确度具有较小影响的一组特征。该信息可以有助于用户获得对机器学习问题和解决方案的更好理解。
38.图5是图示用于自动识别用于机器学习模型的推荐特征的评估处理的实施例的流程图。在一些实施例中,评估处理是用以从合格的机器学习特征中相继地过滤特征以识别一组推荐的机器学习特征的多步骤处理。处理利用作为从其识别合格的机器学习特征的潜在训练数据提供的数据并且可以被实时地执行。虽然关于图5利用特定的评估步骤进行了描述,但是评估处理的替换实施例可以利用更少或更多的评估步骤,并且可以合并不同的评估技术。在一些实施例中,图5的处理是在图2的203处和/或在图4的407处执行的。在一些实施例中,图5的处理是在图1的服务器121处的机器学习平台上执行的。
39.在501处,使用确定的过滤式选择得分评估特征。在各种实施例中,在501处确定使用基于过滤式选择的技术的影响得分,并且影响得分被用于过滤一个或多个合格的机器学习特征以识别一组推荐的机器学习特征。例如,确定基于针对每个特征的过滤式选择得分的影响得分。可以从推荐中移除具有低于阈值的过滤式选择得分的列。在一些实施例中,过滤式选择得分对应于列在区分不同的分类结果方面具有的影响。在各种实施例中,针对每个特征,选择多个邻近的行。除了用于当前被评估的列的值之外基于具有类似的值(或在数学上接近或邻近的值)来选择行。例如,对于具有三个列a、b和c的表而言,通过选择具有用于对应的列b和c的类似值的行(即,对于所有选择的行而言用于列b的值是类似的,并且对于所有选择的行而言用于列c的值是类似的)来评估列a。该影响得分将利用所选择的行来确定列a对合期望的目标字段有多少影响。在示例中,目标字段可以对应于列b或列c中的一个。使用所选择的邻近的行,针对每个合格的特征计算影响得分或过滤式选择得分。可以将得分归一化并且与阈值进行比较。具有落在阈值之下的过滤式选择得分的特征被识别为无用的列,并且可以被从作为推荐输入特征的进一步考虑中排除。具有满足阈值的过滤式选择得分的特征将在503处被进一步评估以用于作为推荐输入特征的考虑。在一些实施例中,合格特征被按确定的过滤式选择得分排序,并且如果特征未被排序得足够高则可以将该特征从作为推荐输入特征的考虑中移除。例如,在一些实施例中,仅保留基于排序的最大数量的特征(诸如前十个合格特征或前10%的合格特征)以用于在503处进一步评估。
40.在503处,使用加权信息得分来评估特征。在各种实施例中,在503处确定使用信息增益技术的影响得分,并且该影响得分被用于过滤一个或多个合格的机器学习特征以识别一组推荐的机器学习特征。例如,确定基于用于每个特征的加权信息增益得分的影响得分。可以从推荐中移除具有低于阈值的加权信息增益得分的列。在一些实施例中,当特征的值已知时,特征的加权信息增益得分对应于信息熵上的改变。加权信息增益得分是信息增益度量,其被由用于特征的不同的已知值的目标分布加权。在一些实施例中,加权与给定目标值的频率成比例。在一些实施例中,非加权的信息得分可以被用作替换的影响得分。
41.在各种实施例中,合格的特征被按所确定的加权信息增益得分排序,并且如果特征未被排序得够高则可以将该特征从作为推荐输入特征的考虑中移除。例如,在一些实施例中,仅保留基于排序的最大数量的特征(诸如前十个合格特征或前10%的合格特征)以用于在505处进一步评估。
42.在505处,针对特征确定性能度量。在各种实施例中,使用在503处确定的特征的对应影响得分来针对余下的合格特征中的每个确定性能度量。性能度量被用于过滤一个或多个合格的机器学习特征以识别一组推荐的机器学习特征。例如,加权信息增益得分(或者对于一些实施例而言非加权信息增益得分)例如是通过应用已经离线创建的模型而转换成性能度量的。在一些实施例中,模型是回归模型和/或经训练的机器学习模型,用于预测作为加权信息增益得分的函数的查准率-查全率曲线(auprc)下的面积上的增加。在各种实施例中,离线模型被应用于来自步骤503的影响得分以在利用被评估的特征时推断用于模型的诸如基于auprc的性能度量的性能度量。针对每个余下的合格特征确定的基于auprc的性能度量可以被用于对余下的特征进行排序,并且过滤掉不满足特定阈值或落入特定阈值范围内的那些特征。在一些实施例中,合格的特征被按所确定的基于auprc的性能度量排序,并且如果特征未被排序得足够高则可以将该特征从作为推荐输入特征的考虑中移除。例如,在一些实施例中,仅保留基于排序的最大数量的特征(诸如前十个合格特征或前10%的合格特征)以用于在507处的后处理。
43.在一些实施例中,诸如基于auprc的性能度量的性能度量的准确确定可能是耗时的并且资源密集的。通过利用离线准备的模型(诸如转换模型)来从加权信息增益得分确定性能度量,可以实时地确定性能度量。时间和资源密集的任务被从图5的处理并且特别是从步骤505转移到转换模型的创建,转换模型可以被预先计算并且应用于多个机器学习问题。例如,一旦创建了转换模型,就可以跨多个机器学习问题并且针对多个不同的客户和数据集来应用模型。
44.在507处,对合格的特征执行后处理。例如,余下的合格特征被处理以用于作为推荐机器学习特征的考虑。在一些实施例中,在507处执行的后处理包括对余下的合格特征的最终过滤。后处理步骤可以被用于基于预测的模型性能来确定余下的合格特征的最终排序。在一些实施例中,最终排序基于在505处确定的性能度量。例如,具有最高预期改进的特征被基于其性能度量排序在第一位。在各种实施例中,不满足最终阈值或落在最终阈值范围或有序排序之外的特征可以被从推荐中移除。在一些实施例中,余下的合格特征中没有一个满足用于推荐的最终阈值。例如,即使排序最靠前的特征也不显著地改进在朴素模型上的预测准确度。在这种情形下,可以不推荐余下的合格特征。在各种实施例中,在最终过滤之后的余下的合格特征是一组推荐的机器学习特征,并且每个包括性能度量和关联的排序。在一些实施例中,还创建一组非推荐的特征。例如,基于评估处理被确定为不显著改进模型预测准确度的任何特征被识别为无用的。
45.图6是图示用于创建用于确定特征的性能度量的离线模型的处理的实施例的流程图。使用图6的处理,创建离线模型以将特征的影响得分转换成性能度量。例如,加权信息增益得分(或对于一些实施例而言非加权信息增益得分)被用于预测查准率-查全率曲线(auprc)性能度量下的面积上的增加。性能度量可以被用于评估特征在改进模型预测的准确度方面具有的预期改进。在各种实施例中,模型是作为离线处理的一部分创建的并且在
用于特征推荐的实时处理期间被应用。在一些实施例中,所创建的离线模型是机器学习模型。在一些实施例中,在图2的203处、图4的407处和/或图5的505处利用使用图6的处理创建的离线模型。在一些实施例中,在图1的服务器121处的机器学习平台上创建模型。
46.在601处,接收数据集。例如,接收多个数据集以用于建立离线模型。在一些实施例中,利用数百个数据集来建立准确的离线模型。所接收的数据集可以是存储在一个或多个数据库表中的客户数据集。
47.在603处,识别数据集的相关特征。例如,针对相关的特征处理所接收的数据集的列,并且移除与数据集的非相关列对应的特征。在一些实施例中,数据被预处理以识别列数据类型,并且非标称列被过滤掉以识别相关特征。在各种实施例中,仅利用相关特征来训练离线模型。
48.在605处,针对数据集的所识别的特征确定影响得分。例如,针对每个识别的特征确定影响得分。在一些实施例中,影响得分是加权信息增益得分。在一些实施例中,非加权信息增益得分被用作替换的影响得分。在确定影响得分时,可以选择一对识别的特征,其中一个作为输入并且另一个作为目标。可以使用所选择的对来计算影响得分以计算加权信息增益得分。可以针对每个数据集的每个所识别的特征确定加权信息增益得分。在一些实施例中,使用关于图5的步骤503描述的技术来确定影响得分。
49.在607处,针对每个识别的特征建立比较模型。例如,使用每个所识别的特征来训练机器学习模型,并且创建对应的模型作为基线模型。在一些实施例中,基线模型是朴素模型。例如,基线模型可以是朴素的基于概率的分类器。在一些实施例中,基线模型可以通过总是预测最可能的结果、通过随机选择结果、或通过使用另外的适当的朴素分类技术来预测结果。经训练的模型和基线模型一起是用于所识别的特征的比较模型。经训练的模型是将所识别的特征用于预测的机器学习模型,并且基线模型表示其中特征不被用于预测的模型。
50.在609处,使用比较模型确定性能度量。通过针对每个识别的特征比较两个比较模型的预测结果和准确度,可以针对特征确定性能度量。例如,对于每个识别的特征而言,可以针对训练模型和基线模型来评估查准率-查全率曲线(auprc)下的面积。在一些实施例中,两个auprc结果之间的差异是特征的性能度量。例如,特征的性能度量可以被表达为比较模型之间auprc的增加。对于每个所识别的特征而言,性能度量与影响得分关联。例如,auprc上的增加与加权信息增益得分关联。
51.在611处,建立回归模型以预测性能度量。使用分别在605处和609处确定的影响得分和性能度量对,创建回归模型以从影响得分预测性能度量。例如,创建回归模型以预测作为特征的加权信息增益得分的函数的特征在查准率-查全率曲线(auprc)下的面积上的增加。在一些实施例中,回归模型是使用在605处和609处确定的影响得分和性能度量对作为训练数据来训练的机器学习模型。在各种实施例中,一旦确定了影响得分,经训练的模型可以被实时地应用以预测特征的性能度量。例如,经训练的模型可以在图5的步骤505处被应用以确定特征的性能度量以用于评估与特征关联的模型质量上的预期改进。
52.虽然为了清楚理解的目的已经在一些细节上描述了前述实施例,但是本发明不限制于所提供的细节。存在许多实现本发明的替换方法。所公开的实施例是说明性的而不是限制性的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1