用户定义的筛选器

创建自定义的有限或无限的脉冲响应滤波器

类别: 数据转换/筛选器

注意

仅适用于机器学习 Studio (经典)

可在 Azure 机器学习设计器中获取类似的拖放模块。

模块概述

本文介绍如何使用 机器学习 Studio (经典) 中的用户定义的筛选器模块,通过使用有限脉冲响应 (FIR) 筛选器或 IIR) 筛选器中指定系数的无限脉冲 (响应来定义自定义筛选器。

筛选器是一个传输函数,它采用输入信号,并根据筛选器特征创建输出信号。 有关数字信号处理中筛选器用户的详细信息,请参阅 筛选器。 此模块尤其适用于将一组以前派生的过滤器系数应用于你的数据。

定义满足需求的筛选器后,可以通过将数据集和筛选器连接到 “应用筛选器 ”模块,将筛选器应用于数据。

提示

需要筛选数据集中的数据或删除缺失值? 请改用以下模块:

  • 清理缺失数据:使用此模块删除缺失值或将缺失值替换为占位符。
  • 分区和示例:使用此模块按日期范围、特定值或正则表达式等条件划分或筛选数据集。
  • 剪辑值:使用此模块设置范围,并仅保留该区域中的值。

如何配置User-Defined筛选器

  1. 用户定义的筛选器 模块添加到 Studio 中的试验 (经典) 。 可以在“筛选”类别的“数据转换”下找到此模块。

  2. “属性” 窗格中,选择一种类型的筛选器:FIR 筛选器或 IIR 筛选器。

  3. 提供在筛选器中应用的系数。 系数的要求因选择 FIR 筛选器还是 IIR 筛选器而异。

    • 对于 FIR 过滤器,你可以指定一个具有前馈式系数的矢量。 向量的长度决定了过滤器的顺序。 FIR 过滤器实际上是一种移动平均,因此配置值会通过应用移动平均来筛选数据序列。

    • 对于 IIR 过滤器,你可以应用自定义前馈式系数和后馈式系数。 有关一些提示,请参阅 “示例 ”部分。

  4. 连接应用筛选器的筛选器,并连接数据集。

    使用列选择器指定应应用筛选器的数据集的列。 默认情况下, “应用筛选器” 模块将使用所有选定数值列的筛选器。

  5. 运行试验。

    仅当使用 “应用筛选器”运行试验时,指定的转换才应用于所选数值列。

示例

有关如何在机器学习中使用筛选器的更多示例,请参阅 Azure AI 库

  • 筛选器:演示所有筛选器类型。 该示例使用工程波形数据集来更轻松地说明不同滤波器的效果。

FIR 筛选器示例:指数加权移动平均值

就指数加权移动平均来说,所有系数均小于 1,所有系数之和等于 1。 因此,加权平均的方差将始终小于输入值。

例如,对于需要对指数加权移动平均 (WMA) 进行近似计算的 FIR 过滤器来说,可以提供以逗号分隔的系数列表作为前馈式参数的值:

0.01818182, 0.03636364, 0.05454545, 0.07272727, 0.09090909, 0.10909091, 0.12727273, 0.14545455, 0.16363636, 0.18181818

FIR 筛选器示例:指数加权移动平均值 (Deslauriers-Dubuc 内插)

此 FIR 筛选器近似于三角加权移动平均值 (WMA) 。 通过为馈送转发参数提供逗号分隔的一系列值来定义系数,例如:

0.0625, 0.0625, 0.2500, 0.3750, 0.2500, 0.0625

此自定义 FIR 筛选器中使用的值表示使用有限序列化Deslauriers-Dubuc方法获取的源转发系数的向量。 有关详细信息,请参阅 Dubuc-Deslauriers Subdivision for Finite Sequences and Interpolation Wavelet on an Interval.

IIR 筛选器示例:Notch 筛选器

用户定义的 IIR 筛选器的应用程序的一个好示例是定义 一个不切型筛选器,也称为 带顶筛选器。 所需的声道筛选器会衰减 -3dB 拒绝带 ,fb,以无声道频率居中, fn具有采样频率 fs

在这种情况下,数字无色筛选器可以使用以下公式表示:

custom notch filter example 1

此公式假定:

custom notch filter

在此公式中,我们可以获取源前向系数:

feed forward coefficient for custom notch filter

馈送向后系数如下所示:

feed back coefficient for custom notch filter

IIR 筛选器示例:Notch 筛选器 2

The following example shows a notch filter with a notch frequency of fn =1250 Hz and a -3 dB rejection band of fb =100 Hz, with sampling frequency of fs=10 kHz.

formula for notch filter example 2-1

使用以下公式获取 a2 = 0.93906244a1 = 1.3711242

formulas 2 for notch filter example 2

从此,可以获取以下 (b) 和向后馈送 () 系数:

b= 1.9390624, -2.7422484, 1.9390624

a= 1, -1.3711242, 0.9390624

模块参数

名称 范围 类型 默认 说明
过滤器类型 any ImpulseResponse 指定要自定义的过滤器类型
前进 any String "1.0" 键入一系列前馈式系数
下移 any String "1.0" 键入一系列后馈式过滤器系数

输出

名称 类型 说明
“筛选器” IFilter 接口 过滤器实现

例外

异常 描述
ParameterParsing 如果无法将一个或多个参数从指定类型解析或转换为目标方法所需要的类型,则会发生异常。

有关特定于 Studio (经典) 模块的错误列表,请参阅机器学习错误代码

有关 API 异常的列表,请参阅 机器学习 REST API 错误代码

另请参阅

应用筛选器
A-Z 模块列表