什么是自动化机器学习 (AutoML)?What is automated machine learning (AutoML)?

自动化机器学习也称为自动化 ML 或 AutoML,是将机器学习模型开发过程中耗时的反复性任务自动化的过程。Automated machine learning, also referred to as automated ML or AutoML, is the process of automating the time consuming, iterative tasks of machine learning model development. 数据科学家、分析师和开发人员可以使用它来生成高度可缩放、高效且高产能的 ML 模型,同时保证模型的质量。It allows data scientists, analysts, and developers to build ML models with high scale, efficiency, and productivity all while sustaining model quality. 自动化 ML 基于 Microsoft Research 部门的突破性技术。Automated ML is based on a breakthrough from our Microsoft Research division.

传统的机器学习模型开发是资源密集型的,需要具备丰富的领域知识,并需要花费大量的时间来生成和比较数十个模型。Traditional machine learning model development is resource-intensive, requiring significant domain knowledge and time to produce and compare dozens of models. 使用自动化机器学习可以缩减生成生产就绪型 ML 模型所需的时间,同时使工作变得更轻松高效。With automated machine learning, you'll accelerate the time it takes to get production-ready ML models with great ease and efficiency.

何时使用 AutoML:分类、回归和预测When to use AutoML: classify, regression, & forecast

想要通过 Azure 机器学习使用指定的目标指标训练和优化模型时,可以运用自动化 ML。Apply automated ML when you want Azure Machine Learning to train and tune a model for you using the target metric you specify. 自动化 ML 可将机器学习模型开发过程标准化,并使其用户(无论是否具备数据科学知识)能够在端到端的机器学习管道中识别任何问题。Automated ML democratizes the machine learning model development process, and empowers its users, no matter their data science expertise, to identify an end-to-end machine learning pipeline for any problem.

跨行业的数据科学家、分析师和开发人员可以使用自动化 ML 来实现以下目的:Data scientists, analysts, and developers across industries can use automated ML to:

  • 无需丰富的编程知识,即可实现机器学习解决方案Implement ML solutions without extensive programming knowledge
  • 节省时间和资源Save time and resources
  • 利用数据科学最佳做法Leverage data science best practices
  • 提供灵活的问题解决方法Provide agile problem-solving

分类Classification

分类是一个常见的机器学习任务。Classification is a common machine learning task. 分类是一种监督式学习,其中的模型使用训练数据进行学习,并将学习所得应用于新数据。Classification is a type of supervised learning in which models learn using training data, and apply those learnings to new data. Azure 机器学习为这些任务专门提供特征化,例如用于分类的深度神经网络文本特征化器。Azure Machine Learning offers featurizations specifically for these tasks, such as deep neural network text featurizers for classification. 详细了解特征化选项Learn more about featurization options.

分类模型的主要目标是根据从其训练数据中获得的经验,预测新数据将属于哪些类别。The main goal of classification models is to predict which categories new data will fall into based on learnings from its training data. 常见分类示例包括欺诈检测、手写识别和对象检测。Common classification examples include fraud detection, handwriting recognition, and object detection. 详细了解使用自动化 ML 创建分类模型并查看其示例。Learn more and see an example at Create a classification model with automated ML.

参阅以下 Python 笔记本中的分类和自动化机器学习示例:欺诈检测营销预测新闻组数据分类See examples of classification and automated machine learning in these Python notebooks: Fraud Detection, Marketing Prediction, and Newsgroup Data Classification

回归Regression

类似于分类,回归任务也是常见的监督式学习任务。Similar to classification, regression tasks are also a common supervised learning task. Azure 机器学习专门为这些任务提供特征化Azure Machine Learning offers featurizations specifically for these tasks.

不同于分类(其中的预测输出值是分类的),回归模型基于独立的预测器预测数字输出值。Different from classification where predicted output values are categorical, regression models predict numerical output values based on independent predictors. 在回归中,目标是通过估计一个变量对其他变量的影响,帮助建立这些独立预测因子变量之间的关系。In regression, the objective is to help establish the relationship among those independent predictor variables by estimating how one variable impacts the others. 例如,基于每英里耗油量、安全评级等特征预测汽车价格。For example, automobile price based on features like, gas mileage, safety rating, etc. 详细了解使用自动化机器学习进行回归并查看示例。Learn more and see an example of regression with automated machine learning.

参阅以下 Python 笔记本中用于预测的回归和自动化机器学习示例:CPU 性能预测See examples of regression and automated machine learning for predictions in these Python notebooks: CPU Performance Prediction,

时序预测Time-series forecasting

生成预测是任何业务(无论是收入、库存、销售还是客户需求)中不可或缺的组成部分。Building forecasts is an integral part of any business, whether it's revenue, inventory, sales, or customer demand. 可以使用自动化 ML 来合并多种技术和方法,获得推荐的高质量时序预测结果。You can use automated ML to combine techniques and approaches and get a recommended, high-quality time-series forecast. 在以下操作指南中了解详细信息:用于时序预测的自动化机器学习Learn more with this how-to: automated machine learning for time series forecasting.

自动化时序试验被视为多元回归问题。An automated time-series experiment is treated as a multivariate regression problem. 将“透视”过去的时序值,使其成为回归量与其他预测指标的附加维度。Past time-series values are "pivoted" to become additional dimensions for the regressor together with other predictors. 与传统时序方法不同,这种方法的优点是,在训练过程中自然包含多个上下文变量及其相互关系。This approach, unlike classical time series methods, has an advantage of naturally incorporating multiple contextual variables and their relationship to one another during training. 自动化 ML 会针对数据集和预测时间范围内的所有项目,习得通常有内部分支的单个模型。Automated ML learns a single, but often internally branched model for all items in the dataset and prediction horizons. 这样就可以使用更多的数据来估计模型参数,使得未知系列的泛化成为可能。More data is thus available to estimate model parameters and generalization to unseen series becomes possible.

高级预测配置包括:Advanced forecasting configuration includes:

  • 假日检测和特征化holiday detection and featurization
  • 时序和 DNN 教学器(Auto-ARIMA、Prophet、ForecastTCN)time-series and DNN learners (Auto-ARIMA, Prophet, ForecastTCN)
  • 通过分组实现的多模型支持many models support through grouping
  • 滚动原点交叉验证rolling-origin cross validation
  • 可配置滞后configurable lags
  • 滚动窗口聚合特征rolling window aggregate features

参阅以下 Python 笔记本中用于预测的回归和自动化机器学习示例:销售预测需求预测饮料生产预测See examples of regression and automated machine learning for predictions in these Python notebooks: Sales Forecasting, Demand Forecasting, and Beverage Production Forecast.

AutoML 的工作原理How AutoML works

在训练期间,Azure 机器学习会创建多个尝试不同算法和参数的并行管道。During training, Azure Machine Learning creates a number of pipelines in parallel that try different algorithms and parameters for you. 该服务将迭代与特征选择配对的 ML 算法,每次迭代都会生成带有训练评分的模型。The service iterates through ML algorithms paired with feature selections, where each iteration produces a model with a training score. 模型的评分越高,则认为它可以更好地“拟合”数据。The higher the score, the better the model is considered to "fit" your data. 一旦达到试验中定义的退出条件,机器学习就会停止。It will stop once it hits the exit criteria defined in the experiment.

使用 Azure 机器学习 可以通过以下步骤设计和运行自动化 ML 训练试验:Using Azure Machine Learning, you can design and run your automated ML training experiments with these steps:

  1. 识别要解决的 ML 问题:分类、预测或回归Identify the ML problem to be solved: classification, forecasting, or regression

  2. 选择是要使用 Python SDK 还是工作室 Web 体验:了解 Python SDK 与工作室 Web 体验之间的搭配用法。Choose whether you want to use the Python SDK or the studio web experience: Learn about the parity between the Python SDK and studio web experience.

  3. 指定已标记训练数据的源和格式:Numpy 数组或 Pandas 数据帧Specify the source and format of the labeled training data: Numpy arrays or Pandas dataframe

  4. 配置模型训练的计算目标,例如 本地计算机、Azure 机器学习计算、远程 VM 或 Azure DatabricksConfigure the compute target for model training, such as your local computer, Azure Machine Learning Computes, remote VMs, or Azure Databricks. 了解如何对远程资源进行自动训练。Learn about automated training on a remote resource.

  5. 配置自动化机器学习参数,用于确定要对不同模型运行的迭代次数、超参数设置、高级预处理/特征化,以及在确定最佳模型时要查看的具体指标。Configure the automated machine learning parameters that determine how many iterations over different models, hyperparameter settings, advanced preprocessing/featurization, and what metrics to look at when determining the best model.

  6. 提交训练运行。Submit the training run.

  7. 查看结果Review the results

下图演示了此过程。The following diagram illustrates this process. 自动化机器学习Automated Machine learning

还可以检查记录的运行信息,其中包含的指标是在运行期间收集的。You can also inspect the logged run information, which contains metrics gathered during the run. 训练运行会生成一个包含模型和数据预处理的 Python 序列化对象(.pkl 文件)。The training run produces a Python serialized object (.pkl file) that contains the model and data preprocessing.

模型生成是自动化的,同时,你也可以了解特征对于生成的模型而言如何重要或者彼此相关While model building is automated, you can also learn how important or relevant features are to the generated models.

了解如何使用远程计算目标Learn how to use a remote compute target.

特性工程Feature engineering

特征工程是使用数据领域知识创建有助于优化机器学习算法学习效果的特征的过程。Feature engineering is the process of using domain knowledge of the data to create features that help ML algorithms learn better. 在 Azure 机器学习中,应用缩放和规范化技术来简化特征工程。In Azure Machine Learning, scaling and normalization techniques are applied to facilitate feature engineering. 这些技术和特征工程统称为特征化。Collectively, these techniques and feature engineering are referred to as featurization.

对于自动机器学习试验,会自动应用特征化,但也可以基于你的数据进行自定义。For automated machine learning experiments, featurization is applied automatically, but can also be customized based on your data. 详细了解包含的功能化Learn more about what featurization is included.

备注

自动化机器学习特征化步骤(特征规范化、处理缺失数据,将文本转换为数字等)成为了基础模型的一部分。Automated machine learning featurization steps (feature normalization, handling missing data, converting text to numeric, etc.) become part of the underlying model. 使用模型进行预测时,将自动向输入数据应用在训练期间应用的相同特征化步骤。When using the model for predictions, the same featurization steps applied during training are applied to your input data automatically.

自动特征化(标准)Automatic featurization (standard)

在每个自动化机器学习试验中,数据将自动缩放或规范化,以帮助确保算法的良好性能。In every automated machine learning experiment, your data is automatically scaled or normalized to help algorithms perform well. 在模型训练过程中,将对每个模型应用以下缩放或规范化技术之一。During model training, one of the following scaling or normalization techniques will be applied to each model. 了解 AutoML 如何帮助防止模型中出现过度拟合与数据不平衡Learn how AutoML helps prevent over-fitting and imbalanced data in your models.

缩放和规范化Scaling & normalization 说明Description
StandardScaleWrapperStandardScaleWrapper 通过删除平均值并缩放到单位差异来标准化特征Standardize features by removing the mean and scaling to unit variance
MinMaxScalarMinMaxScalar 通过按该列的最小值和最大值缩放每个特征来转换特征Transforms features by scaling each feature by that column's minimum and maximum
MaxAbsScalerMaxAbsScaler 按特征的最大绝对值缩放每个特征Scale each feature by its maximum absolute value
RobustScalarRobustScalar 按特征的分位数范围缩放特征This Scaler features by their quantile range
PCAPCA 使用数据的单值分解进行线性维度化简,以将其投影到低维空间Linear dimensionality reduction using Singular Value Decomposition of the data to project it to a lower dimensional space
TruncatedSVDWrapperTruncatedSVDWrapper 此转换器通过截断的单值分解 (SVD) 执行线性维度化简。This transformer performs linear dimensionality reduction by means of truncated singular value decomposition (SVD). 与 PCA 相反,此估算器在计算单值分解之前不会将数据居中,这意味着它可以有效地处理 scipy.sparse 矩阵Contrary to PCA, this estimator does not center the data before computing the singular value decomposition, which means it can work with scipy.sparse matrices efficiently
SparseNormalizerSparseNormalizer 重新缩放至少包含一个非零成分的每个样本(即,数据矩阵的每个行),而不管其他样本如何,使其范数(l1 或 l2)等于 1Each sample (that is, each row of the data matrix) with at least one non-zero component is rescaled independently of other samples so that its norm (l1 or l2) equals one

自定义特征化Customize featurization

还提供了其他特征工程技术,例如编码和转换。Additional feature engineering techniques such as, encoding and transforms are also available.

可通过以下方式启用此设置:Enable this setting with:

  • Azure 机器学习工作室:通过以下步骤在“查看其他配置”部分中启用“自动特征化”。Azure Machine Learning studio: Enable Automatic featurization in the View additional configuration section with these steps.

  • Python SDK:在 AutoMLConfig 对象中指定 "feauturization": 'auto' / 'off' / 'FeaturizationConfig'Python SDK: Specify "feauturization": 'auto' / 'off' / 'FeaturizationConfig' in your AutoMLConfig object. 详细了解如何启用特征化Learn more about enabling featurization.

系综模型Ensemble models

自动化机器学习支持默认已启用的系综模型。Automated machine learning supports ensemble models, which are enabled by default. 系综学习通过组合多个模型而不是使用单个模型,来改善机器学习结果和预测性能。Ensemble learning improves machine learning results and predictive performance by combining multiple models as opposed to using single models. 系综迭代显示为运行的最后一个迭代。The ensemble iterations appear as the final iterations of your run. 自动化机器学习使用投票和堆叠系综方法来组合模型:Automated machine learning uses both voting and stacking ensemble methods for combining models:

  • 投票:根据预测类概率(对于分类任务)或预测回归目标(对于回归任务)的加权平均值进行预测。Voting: predicts based on the weighted average of predicted class probabilities (for classification tasks) or predicted regression targets (for regression tasks).
  • 堆叠:堆叠方法组合异构的模型,并根据各个模型的输出训练元模型。Stacking: stacking combines heterogenous models and trains a meta-model based on the output from the individual models. 当前的默认元模型是 LogisticRegression(对于分类任务)和 ElasticNet(对于回归/预测任务)。The current default meta-models are LogisticRegression for classification tasks and ElasticNet for regression/forecasting tasks.

提供排序系综初始化的 Caruana 系综选择算法用于决定要在系综中使用的模型。The Caruana ensemble selection algorithm with sorted ensemble initialization is used to decide which models to use within the ensemble. 从较高层面看,此算法使用个体评分最高的最多五个模型来初始化集成,并验证这些模型是否在最佳评分的 5% 阈值范围内,以避免初始系综不佳。At a high level, this algorithm initializes the ensemble with up to five models with the best individual scores, and verifies that these models are within 5% threshold of the best score to avoid a poor initial ensemble. 然后,对于每个系综迭代,会将一个新模型添加到现有系综,并计算最终评分。Then for each ensemble iteration, a new model is added to the existing ensemble and the resulting score is calculated. 如果新模型改善了现有的系综评分,则会更新系综以包含新模型。If a new model improved the existing ensemble score, the ensemble is updated to include the new model.

请参阅操作指南,了解如何在自动化机器学习中更改默认系综设置。See the how-to for changing default ensemble settings in automated machine learning.

有关本地和远程托管 ML 计算目标的指导Guidance on local vs. remote managed ML compute targets

自动化 ML 的 Web 界面始终使用远程计算目标The web interface for automated ML always uses a remote compute target. 但使用 Python SDK 时,可以选择本地计算或远程计算目标进行自动化 ML 训练。But when you use the Python SDK, you will choose either a local compute or a remote compute target for automated ML training.

  • 本地计算:训练在本地便携式计算机或 VM 计算中发生。Local compute: Training occurs on your local laptop or VM compute.
  • 远程计算:训练在机器学习计算群集中发生。Remote compute: Training occurs on Machine Learning compute clusters.

选择计算目标Choose compute target

选择计算目标时请考虑以下因素:Consider these factors when choosing your compute target:

  • 选择本地计算:如果你的方案涉及到使用小数据和短训练(即,每个子运行持续几秒或几分钟)进行初始探索或演示,则可能更适合在本地计算机上进行训练。Choose a local compute: If your scenario is about initial explorations or demos using small data and short trains (i.e. seconds or a couple of minutes per child run), training on your local computer might be a better choice. 这样就无需进行设置,并且可以直接使用基础结构资源(电脑或 VM)。There is no setup time, the infrastructure resources (your PC or VM) are directly available.
  • 选择远程 ML 计算群集:如果使用较大的数据集进行训练(例如,在生产训练中创建需要较长时间训练的模型),则远程计算可以提供好得多的端到端时间性能,因为 AutoML 会在群集节点之间并行化训练。Chose a remote ML compute cluster: If you are training with larger datasets like in production training creating models which need longer trains, remote compute will provide much better end-to-end time performance because AutoML will parallelize trains across the cluster's nodes. 在远程计算上,内部基础结构的启动时间大约会根据每个子运行增加 1.5 分钟,如果 VM 尚未启动并运行,则群集基础结构的启动时间也会额外增加几分钟。On a remote compute, the start up time for the internal infrastructure will add around 1.5 minutes per child run, plus additional minutes for the cluster infrastructure if the VMs are not yet up and running.

优点和缺点Pros and cons

选择是要使用本地还是远程计算时,请考虑两者的以下优点和缺点。Consider these pros and cons when choosing to use local vs. remote.

优点(优势)Pros (Advantages) 缺点(劣势)Cons (Handicaps)
本地计算目标Local compute target
  • 无需花费时间来启动环境No environment start up time
  • 特征子集Subset of features
  • 无法并行化运行Can't parallelize runs
  • 对于大数据表现较差。Worse for large data.
  • 训练时无数据流式处理No data streaming while training
  • 没有基于 DNN 的特征化No DNN-based featurization
  • 仅限 Python SDKPython SDK only
  • 远程 ML 计算群集Remote ML compute clusters
  • 完整的特征集Full set of features
  • 并行化子运行Parallelize child runs
  • 大数据支持Large data support
  • 基于 DNN 的特征化DNN-based featurization
  • 计算群集的按需动态可伸缩性Dynamic scalability of compute cluster on demand
  • 还提供无代码体验 (Web UI)No-code experience (web UI) also available
  • 需要花费时间来启动群集节点Start up time for cluster nodes
  • 需要花费时间来启动每个子运行Start up time for each child run
  • 功能可用性Feature availability

    使用远程计算时,有更多的功能可用,如下表中所示。More features are available when you use the remote compute, as shown in the table below.

    功能Feature RemoteRemote LocalLocal
    数据流式处理(最高 100 GB 的大数据支持)Data streaming (Large data support, up to 100 GB)
    基于 DNN-BERT 的文本特征化和训练DNN-BERT-based text featurization and training
    现成的 GPU 支持(训练和推理)Out-of-the-box GPU support (training and inference)
    图像分类和标记支持Image Classification and Labeling support
    用于预测的 Auto-ARIMA、Prophet 和 ForecastTCN 模型Auto-ARIMA, Prophet and ForecastTCN models for forecasting
    并行执行多个运行/迭代Multiple runs/iterations in parallel
    在 AutoML 工作室 Web 体验 UI 中创建具有可解释性的模型Create models with interpretability in AutoML studio web experience UI
    工作室 Web 体验 UI 中的特征工程自定义Feature engineering customization in studio web experience UI
    Azure ML 超参数优化Azure ML hyperparameter tuning
    Azure ML 管道工作流支持Azure ML Pipeline workflow support
    继续运行Continue a run
    预测Forecasting
    在笔记本中创建和运行试验Create and run experiments in notebooks
    在 UI 中注册和可视化试验的信息与指标Register and visualize experiment's info and metrics in UI
    数据护栏Data guardrails

    多模型Many models

    多模型解决方案加速器(预览版)构建在 Azure 机器学习的基础之上,可让你使用自动化 ML 来训练、操作和管理数百甚至数千个机器学习模型。The Many Models Solution Accelerator (preview) builds on Azure Machine Learning and enables you to use automated ML to train, operate, and manage hundreds or even thousands of machine learning models.

    例如,在下面的方案中为每个实例或个体生成模型可以改善结果:For example, building a model for each instance or individual in the following scenarios can lead to improved results:

    • 预测每家店铺的销售额Predicting sales for each individual store
    • 对数百口油井进行预测性维护Predictive maintenance for hundreds of oil wells
    • 为个人用户定制体验。Tailoring an experience for individual users.

    Azure 机器学习中的 AutoMLAutoML in Azure Machine Learning

    Azure 机器学习提供了两种使用自动化 ML 的体验方式:Azure Machine Learning offers two experiences for working with automated ML:

    试验设置Experiment settings

    可以使用以下设置来配置自动化 ML 试验。The following settings allow you to configure your automated ML experiment.

    Python SDKThe Python SDK 工作室 Web 体验The studio web experience
    将数据拆分为训练/验证集Split data into train/validation sets
    支持 ML 任务:分类、回归和预测Supports ML tasks: classification, regression, and forecasting
    基于主要指标进行优化Optimizes based on primary metric
    支持将 Azure ML 计算作为计算目标Supports Azure ML compute as compute target
    配置预测范围、目标滞后和滚动窗口Configure forecast horizon, target lags & rolling window
    设置退出条件Set exit criteria
    设置并发迭代数Set concurrent iterations
    删除列Drop columns
    块算法Block algorithms
    交叉验证Cross validation
    支持在 Azure Databricks 群集上训练Supports training on Azure Databricks clusters
    查看工程特征名称View engineered feature names
    特征化摘要Featurization summary
    假日特征化Featurization for holidays
    日志文件详细级别Log file verbosity levels

    模型设置Model settings

    可将这些设置应用到自动化 ML 试验生成的最佳模型。These settings can be applied to the best model as a result of your automated ML experiment.

    Python SDKThe Python SDK 工作室 Web 体验The studio web experience
    最佳模型注册、部署、可解释性Best model registration, deployment, explainability
    启用投票集成和堆栈集成模型Enable voting ensemble & stack ensemble models
    显示基于非主要指标的最佳模型Show best model based on non-primary metric
    启用/禁用 ONNX 模型兼容性Enable/disable ONNX model compatibility
    测试模型Test the model

    运行控制设置Run control settings

    使用这些设置可以查看和控制试验运行及其子运行。These settings allow you to review and control your experiment runs and its child runs.

    Python SDKThe Python SDK 工作室 Web 体验The studio web experience
    运行摘要表Run summary table
    取消运行和子运行Cancel runs & child runs
    获取护栏Get guardrails
    暂停和恢复运行Pause & resume runs

    AutoML 和 ONNXAutoML & ONNX

    借助 Azure 机器学习,可以使用自动化 ML 来生成 Python 模型并将其转换为 ONNX 格式。With Azure Machine Learning, you can use automated ML to build a Python model and have it converted to the ONNX format. 在模型采用 ONNX 格式后,可以在各种平台和设备上运行这些模型。Once the models are in the ONNX format, they can be run on a variety of platforms and devices. 详细了解如何使用 ONNX 加速 ML 模型Learn more about accelerating ML models with ONNX.

    在此 Jupyter 笔记本示例中了解如何转换为 ONNX 格式。See how to convert to ONNX format in this Jupyter notebook example. 了解 ONNX 支持的算法Learn which algorithms are supported in ONNX.

    ONNX 运行时还支持 C#。因此,你可以在 C# 应用中使用自动生成的模型,而无需重新编写代码,同时可避免 REST 终结点造成的任何网络延迟。The ONNX runtime also supports C#, so you can use the model built automatically in your C# apps without any need for recoding or any of the network latencies that REST endpoints introduce. 详细了解在带有 ML.NET 的 .NET 应用程序中使用 AutoML ONNX 模型使用 ONNX 运行时 C# API 推断 ONNX 模型Learn more about using an AutoML ONNX model in a .NET application with ML.NET and inferencing ONNX models with the ONNX runtime C# API.

    后续步骤Next steps

    有多种资源可帮助你启动并运行 AutoML。There are multiple resources to get you up and running with AutoML.

    教程/操作指南Tutorials/ how-tos

    教程是 AutoML 方案的端到端介绍性示例。Tutorials are end-to-end introductory examples of AutoML scenarios.

    操作指南文章提供了 AutoML 所提供功能的更多详细信息。How to articles provide additional detail into what functionality AutoML offers. 例如,For example,

    Jupyter 笔记本示例Jupyter notebook samples

    查看自动化机器学习示例的 Github 笔记本存储库中的详细代码示例和用例。Review detailed code examples and use cases in the Github notebook repository for automated machine learning samples.

    Python SDK 参考Python SDK reference

    阅读 AutoML 类参考文档,加深你对 SDK 设计模式和类规范的专业知识的理解。Deepen your expertise of SDK design patterns and class specifications with the AutoML class reference documentation.

    备注

    自动化机器学习功能也可以在其他 Microsoft 解决方案(例如 ML.NETHDInsightPower BISQL Server)中使用Automated machine learning capabilities are also available in other Microsoft solutions such as, ML.NET, HDInsight, Power BI and SQL Server